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 PUBLIC _tabstops DD 4
\r
58 PUBLIC _fDisplay DD 0
\r
59 PUBLIC _fBinary DD 0
\r
61 L_lit DB 80,114,105,110,116,105,110,103,0,73,110,118,97,108,105,100
\r
62 DB 32,115,119,105,116,99,104,0,80,114,105,110,116,32,70,105
\r
63 DB 108,101,44,32,86,101,114,115,105,111,110,32,49,44,48,13
\r
64 DB 10,0,85,115,97,103,101,58,32,70,105,108,101,110,97,109
\r
65 DB 101,32,47,49,32,47,50,32,47,52,32,47,56,32,47,70
\r
66 DB 32,47,68,32,47,66,13,10,0,47,49,32,47,50,32,47
\r
67 DB 52,32,47,56,32,45,32,84,97,98,32,115,116,111,112,32
\r
68 DB 116,114,97,110,115,108,97,116,105,111,110,32,118,97,108,117
\r
69 DB 101,13,10,0,47,70,32,32,110,111,32,70,111,114,109,70
\r
70 DB 101,101,100,32,97,116,32,101,110,100,32,111,102,32,102,105
\r
71 DB 108,101,13,10,0,47,68,32,32,68,105,115,112,108,97,121
\r
72 DB 32,102,105,108,101,32,119,104,105,108,101,32,112,114,105,110
\r
73 DB 116,105,110,103,13,10,0,47,66,32,32,66,105,110,97,114
\r
74 DB 121,32,112,114,105,110,116,46,32,78,79,32,116,114,97,110
\r
75 DB 115,108,97,116,105,111,110,44,32,110,111,32,70,70,13,10
\r
76 DB 10,0,69,114,114,111,114,58,32,83,111,117,114,99,101,32
\r
77 DB 102,105,108,101,110,97,109,101,32,114,101,113,117,105,114,101
\r
78 DB 100,13,10,0,69,114,114,111,114,32,103,101,116,116,105,110
\r
79 DB 103,32,76,80,84,32,68,101,118,105,99,101,32,83,116,97
\r
80 DB 116,117,115,58,32,37,100,13,10,0,79,112,101,110,76,80
\r
81 DB 84,32,69,82,82,79,82,58,32,37,100,32,13,10,0,80
\r
82 DB 114,105,110,116,105,110,103,32,37,115,32,46,46,46,13,10
\r
83 DB 0,114,0,67,97,110,39,116,32,111,112,101,110,58,32,37
\r
84 DB 115,13,10,0,13,10,0,32,0,32,0,37,99,0,69,114
\r
85 DB 114,111,114,32,87,114,105,116,105,110,103,32,66,121,116,101
\r
86 DB 58,32,37,100,13,10,0,12,0,67,97,110,39,116,32,99
\r
87 DB 108,111,115,101,32,76,80,84,46,32,69,114,114,111,114,58
\r
88 DB 32,37,100,13,10,0,68,111,110,101,13,10,0
\r
90 PUBLIC _name DB 80 DUP(0)
\r
92 PUBLIC _lpt DB 61 DUP(0)
\r
104 EXTRN _printf: NEAR
\r
105 EXTRN _sprintf: NEAR
\r
106 EXTRN _fprintf: NEAR
\r
108 EXTRN _rewind: NEAR
\r
111 EXTRN _fwrite: NEAR
\r
112 EXTRN _iscntrl: NEAR
\r
113 EXTRN _isspace: NEAR
\r
114 EXTRN _isdigit: NEAR
\r
115 EXTRN _isupper: NEAR
\r
116 EXTRN _islower: NEAR
\r
117 EXTRN _ispunct: NEAR
\r
118 EXTRN _isalpha: NEAR
\r
119 EXTRN _isxdigit: NEAR
\r
120 EXTRN _isalnum: NEAR
\r
121 EXTRN _isgraph: NEAR
\r
122 EXTRN _toupper: NEAR
\r
123 EXTRN _tolower: NEAR
\r
124 EXTRN _strcpy: NEAR
\r
125 EXTRN _strncpy: NEAR
\r
126 EXTRN _strcat: NEAR
\r
127 EXTRN _strncat: NEAR
\r
128 EXTRN _strcmp: NEAR
\r
129 EXTRN _strncmp: NEAR
\r
130 EXTRN _strlen: NEAR
\r
131 EXTRN _strchr: NEAR
\r
137 PUSH OFFSET L_lit+0
\r
139 CALL FWORD PTR _SetJobName
\r
140 MOV ESI,OFFSET _name
\r
142 MOV BYTE PTR [ESI],AL
\r
144 MOV DWORD PTR [EBP-12],EAX
\r
147 CMP EAX,DWORD PTR [EBP+12]
\r
153 INC DWORD PTR [EBP-12]
\r
159 MOV ESI,DWORD PTR [EBP+8]
\r
161 MOV EAX,DWORD PTR [ESI]
\r
162 MOV DWORD PTR [EBP-23],EAX
\r
163 MOV ESI,DWORD PTR [EBP-23]
\r
164 MOVSX EAX,BYTE PTR [ESI]
\r
169 MOV ESI,DWORD PTR [EBP-23]
\r
170 INC DWORD PTR [EBP-23]
\r
171 MOV EAX,DWORD PTR [ESI]
\r
172 MOV ESI,DWORD PTR [EBP-23]
\r
173 MOVSX EAX,BYTE PTR [ESI]
\r
179 MOV ESI,DWORD PTR [EBP-23]
\r
180 MOVSX EAX,BYTE PTR [ESI]
\r
200 PUSH OFFSET L_lit+9
\r
232 MOV ESI,OFFSET _name
\r
233 MOVSX EAX,BYTE PTR [ESI]
\r
239 MOV ESI,DWORD PTR [EBP+8]
\r
241 PUSH DWORD PTR [ESI]
\r
248 MOV ESI,OFFSET _name
\r
249 MOVSX EAX,BYTE PTR [ESI]
\r
252 PUSH OFFSET L_lit+24
\r
256 PUSH OFFSET L_lit+50
\r
260 PUSH OFFSET L_lit+89
\r
264 PUSH OFFSET L_lit+132
\r
268 PUSH OFFSET L_lit+165
\r
272 PUSH OFFSET L_lit+199
\r
276 PUSH OFFSET L_lit+242
\r
286 LEA EAX,DWORD PTR [EBP-12]
\r
288 CALL FWORD PTR _DeviceStat
\r
289 MOV DWORD PTR [EBP-4],EAX
\r
293 PUSH OFFSET L_lit+276
\r
294 PUSH DWORD PTR [EBP-4]
\r
298 PUSH DWORD PTR [EBP-4]
\r
299 CALL FWORD PTR _ExitJob
\r
307 LEA EAX,DWORD PTR [EBP-12]
\r
309 CALL FWORD PTR _DeviceOp
\r
310 MOV DWORD PTR [EBP-4],EAX
\r
314 PUSH OFFSET L_lit+314
\r
315 PUSH DWORD PTR [EBP-4]
\r
319 PUSH DWORD PTR [EBP-4]
\r
320 CALL FWORD PTR _ExitJob
\r
322 PUSH OFFSET L_lit+335
\r
328 PUSH OFFSET L_lit+353
\r
339 LEA EAX,DWORD PTR [EBP-12]
\r
341 CALL FWORD PTR _DeviceOp
\r
342 MOV DWORD PTR [EBP-4],EAX
\r
343 PUSH OFFSET L_lit+355
\r
348 PUSH DWORD PTR [EBP-4]
\r
349 CALL FWORD PTR _ExitJob
\r
354 MOV DWORD PTR [EBP-12],EAX
\r
356 MOV BYTE PTR [EBP-17],AL
\r
358 MOV BYTE PTR [EBP-19],AL
\r
360 MOVSX EAX,BYTE PTR [EBP-19]
\r
372 INC DWORD PTR [EBP-12]
\r
375 MOV DWORD PTR [EBP-16],EAX
\r
377 MOV AL,BYTE PTR [EBP-17]
\r
378 MOV BYTE PTR [EBP-18],AL
\r
381 MOV BYTE PTR [EBP-17],AL
\r
388 MOV BYTE PTR [EBP-19],AL
\r
399 LEA EAX,BYTE PTR [EBP-18]
\r
401 CALL FWORD PTR _DeviceOp
\r
402 MOV DWORD PTR [EBP-4],EAX
\r
406 MOV AL,BYTE PTR [EBP-17]
\r
414 LEA EAX,BYTE PTR [EBP-17]
\r
416 CALL FWORD PTR _DeviceOp
\r
417 MOV DWORD PTR [EBP-4],EAX
\r
421 MOV AL,BYTE PTR [EBP-18]
\r
427 MOV BYTE PTR [EBP-18],AL
\r
433 LEA EAX,BYTE PTR [EBP-18]
\r
435 CALL FWORD PTR _DeviceOp
\r
436 MOV DWORD PTR [EBP-4],EAX
\r
443 LEA EAX,BYTE PTR [EBP-17]
\r
445 CALL FWORD PTR _DeviceOp
\r
446 MOV DWORD PTR [EBP-4],EAX
\r
450 PUSH OFFSET L_lit+372
\r
452 MOV AL,BYTE PTR [EBP-18]
\r
468 PUSH OFFSET L_lit+375
\r
469 CALL FWORD PTR _DeviceOp
\r
470 MOV DWORD PTR [EBP-4],EAX
\r
476 PUSH OFFSET L_lit+377
\r
495 PUSH OFFSET L_lit+379
\r
497 MOV AL,BYTE PTR [EBP-17]
\r
510 LEA EAX,BYTE PTR [EBP-17]
\r
512 CALL FWORD PTR _DeviceOp
\r
513 MOV DWORD PTR [EBP-4],EAX
\r
517 PUSH OFFSET L_lit+382
\r
518 PUSH DWORD PTR [EBP-4]
\r
547 CALL FWORD PTR _ReadKbd
\r
548 MOV DWORD PTR [EBP-8],EAX
\r
556 MOV BYTE PTR [EBP-19],AL
\r
558 MOV DWORD PTR [EBP-4],EAX
\r
580 PUSH OFFSET L_lit+407
\r
581 CALL FWORD PTR _DeviceOp
\r
582 MOV DWORD PTR [EBP-4],EAX
\r
592 LEA EAX,DWORD PTR [EBP-12]
\r
594 CALL FWORD PTR _DeviceOp
\r
595 MOV DWORD PTR [EBP-4],EAX
\r
599 PUSH OFFSET L_lit+409
\r
600 PUSH DWORD PTR [EBP-4]
\r
605 PUSH OFFSET L_lit+438
\r
609 PUSH DWORD PTR [EBP-4]
\r
610 CALL FWORD PTR _ExitJob
\r