3 EXTRN _InitDevDr FWORD
\r
4 EXTRN _DeviceOp FWORD
\r
5 EXTRN _DeviceStat FWORD
\r
6 EXTRN _DeviceInit FWORD
\r
7 EXTRN _UnMaskIRQ FWORD
\r
9 EXTRN _SetIRQVector FWORD
\r
10 EXTRN _EndOfIRQ FWORD
\r
11 EXTRN _GetpJCB FWORD
\r
12 EXTRN _GetJobNum FWORD
\r
13 EXTRN _LoadNewJob FWORD
\r
15 EXTRN _ExitJob FWORD
\r
16 EXTRN _KillJob FWORD
\r
17 EXTRN _SetUserName FWORD
\r
18 EXTRN _GetUserName FWORD
\r
19 EXTRN _SetCmdLine FWORD
\r
20 EXTRN _GetCmdLine FWORD
\r
21 EXTRN _SetPath FWORD
\r
22 EXTRN _GetPath FWORD
\r
23 EXTRN _SetExitJob FWORD
\r
24 EXTRN _GetExitJob FWORD
\r
25 EXTRN _SetSysIn FWORD
\r
26 EXTRN _GetSysIn FWORD
\r
27 EXTRN _SetSysOut FWORD
\r
28 EXTRN _GetSysOut FWORD
\r
29 EXTRN _SetJobName FWORD
\r
30 EXTRN _RegisterSvc FWORD
\r
31 EXTRN _UnRegisterSvc FWORD
\r
32 EXTRN _GetSystemDisk FWORD
\r
33 EXTRN _ReadKbd FWORD
\r
35 EXTRN _KillAlarm FWORD
\r
37 EXTRN _MicroDelay FWORD
\r
38 EXTRN _GetCMOSTime FWORD
\r
39 EXTRN _GetCMOSDate FWORD
\r
40 EXTRN _GetTimerTick FWORD
\r
43 EXTRN _SetVidOwner FWORD
\r
44 EXTRN _SetNormVid FWORD
\r
45 EXTRN _GetNormVid FWORD
\r
47 EXTRN _GetVidChar FWORD
\r
49 EXTRN _PutVidAttrs FWORD
\r
50 EXTRN _PutVidChars FWORD
\r
51 EXTRN _GetVidOwner FWORD
\r
53 EXTRN _ScrollVid FWORD
\r
55 EXTRN _EditLine FWORD
\r
56 L_lit DB 32,32,32,32,32,84,101,114,109,105,110,97,108,108,121,32
\r
57 DB 68,85,77,66,44,32,68,117,109,98,32,84,101,114,109,105
\r
58 DB 110,97,108,32,80,114,111,103,114,97,109,13,10,0,32,32
\r
59 DB 32,32,32,32,40,77,77,85,82,84,76,32,67,111,109,109
\r
60 DB 115,32,68,101,118,105,99,101,32,68,114,105,118,101,114,32
\r
61 DB 100,101,109,111,41,32,13,10,0,69,114,114,111,114,32,111
\r
62 DB 110,32,68,101,118,105,99,101,32,83,116,97,116,58,32,37
\r
63 DB 100,13,10,0,73,82,81,78,117,109,58,32,37,100,13,10
\r
64 DB 0,73,79,66,97,115,101,58,32,37,100,13,10,0,115,88
\r
65 DB 66,117,102,58,32,32,37,100,13,10,0,115,82,66,117,102
\r
66 DB 58,32,32,37,100,13,10,0,82,84,105,109,101,79,58,32
\r
67 DB 37,100,13,10,0,88,84,105,109,101,79,58,32,37,100,13
\r
68 DB 10,0,69,114,114,111,114,32,111,110,32,68,101,118,105,99
\r
69 DB 101,32,73,110,105,116,58,32,37,100,13,10,0,79,112,101
\r
70 DB 110,67,111,109,109,67,32,69,82,82,79,82,58,32,37,100
\r
71 DB 32,13,10,0,67,111,109,109,117,110,105,99,97,116,105,111
\r
72 DB 110,115,32,80,111,114,116,32,73,110,105,116,105,97,108,105
\r
73 DB 122,101,100,46,13,10,0,87,114,105,116,101,66,121,116,101
\r
74 DB 67,69,114,114,111,114,58,32,37,100,32,13,10,0,10,0
\r
76 PUBLIC _com DB 64 DUP(0)
\r
89 EXTRN _sprintf: NEAR
\r
90 EXTRN _fprintf: NEAR
\r
96 EXTRN _iscntrl: NEAR
\r
97 EXTRN _isspace: NEAR
\r
98 EXTRN _isdigit: NEAR
\r
99 EXTRN _isupper: NEAR
\r
100 EXTRN _islower: NEAR
\r
101 EXTRN _ispunct: NEAR
\r
102 EXTRN _isalpha: NEAR
\r
103 EXTRN _isxdigit: NEAR
\r
104 EXTRN _isalnum: NEAR
\r
105 EXTRN _isgraph: NEAR
\r
106 EXTRN _toupper: NEAR
\r
107 EXTRN _tolower: NEAR
\r
108 EXTRN _strcpy: NEAR
\r
109 EXTRN _strncpy: NEAR
\r
110 EXTRN _strcat: NEAR
\r
111 EXTRN _strncat: NEAR
\r
112 EXTRN _strcmp: NEAR
\r
113 EXTRN _strncmp: NEAR
\r
114 EXTRN _strlen: NEAR
\r
115 EXTRN _strchr: NEAR
\r
121 CALL FWORD PTR _SetNormVid
\r
122 CALL FWORD PTR _ClrScr
\r
123 PUSH OFFSET L_lit+0
\r
127 PUSH OFFSET L_lit+46
\r
134 LEA EAX,WORD PTR [EBP-4]
\r
136 CALL FWORD PTR _DeviceStat
\r
137 MOV WORD PTR [EBP-2],AX
\r
138 MOVSX EAX,WORD PTR [EBP-2]
\r
142 CALL FWORD PTR _SetNormVid
\r
143 CALL FWORD PTR _ClrScr
\r
144 PUSH OFFSET L_lit+89
\r
145 MOVSX EAX,WORD PTR [EBP-2]
\r
150 MOVSX EAX,WORD PTR [EBP-2]
\r
152 CALL FWORD PTR _ExitJob
\r
154 MOV ESI,OFFSET _com
\r
156 MOV DWORD PTR [ESI+12],EAX
\r
157 MOV ESI,OFFSET _com
\r
159 MOV BYTE PTR [ESI+16],AL
\r
160 MOV ESI,OFFSET _com
\r
162 MOV BYTE PTR [ESI+17],AL
\r
163 MOV ESI,OFFSET _com
\r
165 MOV BYTE PTR [ESI+18],AL
\r
166 PUSH OFFSET L_lit+116
\r
167 MOV ESI,OFFSET _com
\r
169 MOV AL,BYTE PTR [ESI+19]
\r
174 PUSH OFFSET L_lit+129
\r
175 MOV ESI,OFFSET _com
\r
176 PUSH DWORD PTR [ESI+20]
\r
180 PUSH OFFSET L_lit+142
\r
181 MOV ESI,OFFSET _com
\r
182 PUSH DWORD PTR [ESI+24]
\r
186 PUSH OFFSET L_lit+155
\r
187 MOV ESI,OFFSET _com
\r
188 PUSH DWORD PTR [ESI+28]
\r
192 PUSH OFFSET L_lit+168
\r
193 MOV ESI,OFFSET _com
\r
194 PUSH DWORD PTR [ESI+36]
\r
198 PUSH OFFSET L_lit+181
\r
199 MOV ESI,OFFSET _com
\r
200 PUSH DWORD PTR [ESI+32]
\r
207 CALL FWORD PTR _DeviceInit
\r
208 MOV WORD PTR [EBP-2],AX
\r
209 MOVSX EAX,WORD PTR [EBP-2]
\r
213 CALL FWORD PTR _SetNormVid
\r
214 CALL FWORD PTR _ClrScr
\r
215 PUSH OFFSET L_lit+194
\r
216 MOVSX EAX,WORD PTR [EBP-2]
\r
221 MOVSX EAX,WORD PTR [EBP-2]
\r
223 CALL FWORD PTR _ExitJob
\r
231 LEA EAX,WORD PTR [EBP-4]
\r
233 CALL FWORD PTR _DeviceOp
\r
234 MOV WORD PTR [EBP-2],AX
\r
235 MOVSX EAX,WORD PTR [EBP-2]
\r
239 CALL FWORD PTR _SetNormVid
\r
240 CALL FWORD PTR _ClrScr
\r
241 PUSH OFFSET L_lit+221
\r
242 MOVSX EAX,WORD PTR [EBP-2]
\r
247 MOVSX EAX,WORD PTR [EBP-2]
\r
249 CALL FWORD PTR _ExitJob
\r
251 PUSH OFFSET L_lit+244
\r
256 MOV BYTE PTR [EBP-7],AL
\r
258 MOVSX EAX,BYTE PTR [EBP-7]
\r
264 CALL FWORD PTR _ReadKbd
\r
269 MOV BYTE PTR [EBP-5],AL
\r
274 MOV AL,BYTE PTR [EBP-5]
\r
285 LEA EAX,WORD PTR [EBP-4]
\r
287 CALL FWORD PTR _DeviceOp
\r
288 MOV WORD PTR [EBP-2],AX
\r
290 CALL FWORD PTR _SetNormVid
\r
291 CALL FWORD PTR _ClrScr
\r
292 MOVSX EAX,WORD PTR [EBP-2]
\r
294 CALL FWORD PTR _ExitJob
\r
311 LEA EAX,BYTE PTR [EBP-5]
\r
313 CALL FWORD PTR _DeviceOp
\r
314 MOV WORD PTR [EBP-2],AX
\r
315 MOVSX EAX,WORD PTR [EBP-2]
\r
318 PUSH OFFSET L_lit+279
\r
319 MOVSX EAX,WORD PTR [EBP-2]
\r
327 MOV AL,BYTE PTR [EBP-5]
\r
333 MOV BYTE PTR [EBP-5],AL
\r
340 LEA EAX,BYTE PTR [EBP-5]
\r
342 CALL FWORD PTR _DeviceOp
\r
343 MOV WORD PTR [EBP-2],AX
\r
354 LEA EAX,BYTE PTR [EBP-5]
\r
356 CALL FWORD PTR _DeviceOp
\r
357 MOV WORD PTR [EBP-2],AX
\r
358 MOVSX EAX,WORD PTR [EBP-2]
\r
361 LEA EAX,BYTE PTR [EBP-5]
\r
365 CALL FWORD PTR _TTYOut
\r
367 MOV AL,BYTE PTR [EBP-6]
\r
373 MOV AL,BYTE PTR [EBP-5]
\r
379 PUSH OFFSET L_lit+302
\r
382 CALL FWORD PTR _TTYOut
\r
385 MOV AL,BYTE PTR [EBP-5]
\r
386 MOV BYTE PTR [EBP-6],AL
\r