Subversion Repositories SvarDOS

Rev

Rev 1066 | Rev 1071 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1066 Rev 1068
Line 102... Line 102...
102
  }
102
  }
103
 
103
 
104
  _asm {
104
  _asm {
105
    push ax
105
    push ax
106
    push bx
106
    push bx
-
 
107
    push cx
-
 
108
    mov ah, 0x30   /* Get DOS version number */
-
 
109
    int 0x21       /* AL=maj_ver_num  AH=min_ver_num  BX,CX=OEM */
-
 
110
    mov [maj], al
-
 
111
    mov [min], ah
-
 
112
    pop cx
-
 
113
    pop bx
-
 
114
    pop ax
-
 
115
  }
-
 
116
 
-
 
117
  sprintf(buff, svarlang_str(20,1), maj, min); /* "DOS kernel version %u.%u" */
-
 
118
  outputnl(buff);
-
 
119
 
-
 
120
  if (maj >= 5) {
-
 
121
    _asm {
-
 
122
      push ax
-
 
123
      push bx
107
    push dx
124
      push dx
108
 
125
  
109
    mov ax, 0x3306 /* Get true DOS version number */
126
      mov ax, 0x3306 /* Get true DOS version number */
110
    int 0x21       /* BL=maj_ver_num  BH=min_ver_num  DL=revision  DH=kernel_memory_area */
127
      int 0x21       /* BL=maj_ver_num  BH=min_ver_num  DL=revision  DH=kernel_memory_area */
111
    mov [maj], bl
128
      mov [maj], bl
Line 116... Line 133...
116
    pop dx
133
      pop dx
117
    pop bx
134
      pop bx
118
    pop ax
135
      pop ax
119
  }
136
    }
120
 
137
  
121
  sprintf(buff, svarlang_str(20,1), maj, min); /* "DOS kernel version %u.%u" */
138
    sprintf(buff, svarlang_str(20,10), maj, min); /* "True version %u.%u" */
122
  outputnl(buff);
139
    outputnl(buff);
123
 
140
  
124
  sprintf(buff, svarlang_str(20,5), 'A' + rev); /* Revision %c */
141
    sprintf(buff, svarlang_str(20,5), 'A' + rev); /* Revision %c */
125
  outputnl(buff);
142
    outputnl(buff);
126
 
143
  
Line 129... Line 146...
129
    if (verflags & 16) loc = svarlang_str(20,8); /* HMA */
146
      if (verflags & 16) loc = svarlang_str(20,8); /* HMA */
130
    if (verflags & 8) loc = svarlang_str(20,9);  /* ROM */
147
      if (verflags & 8) loc = svarlang_str(20,9);  /* ROM */
131
    sprintf(buff, svarlang_str(20,6), loc);      /* DOS is in %s */
148
      sprintf(buff, svarlang_str(20,6), loc);      /* DOS is in %s */
132
    outputnl(buff);
149
      outputnl(buff);
133
  }
150
    }
-
 
151
  }
134
 
152
 
135
  outputnl("");
153
  outputnl("");
136
  nls_output(20,2); /* "SvarCOM shell ver" */
154
  nls_output(20,2); /* "SvarCOM shell ver" */
137
  outputnl(" " PVER);
155
  outputnl(" " PVER);
138
 
156