| ofs | hex dump | ascii |
|---|
| 0000 | 54 49 54 4c 45 20 20 20 52 45 43 4f 56 45 52 20 4d 65 73 73 61 67 65 73 0d 0a 46 41 4c 53 45 20 | TITLE...RECOVER.Messages..FALSE. |
| 0020 | 20 20 45 51 55 20 20 20 20 20 30 0d 0a 54 52 55 45 20 20 20 20 45 51 55 20 20 20 20 20 4e 4f 54 | ..EQU.....0..TRUE....EQU.....NOT |
| 0040 | 20 46 41 4c 53 45 0d 0a 0d 0a 0d 0a 62 64 6f 73 20 20 20 20 65 71 75 20 20 20 20 20 32 31 68 0d | .FALSE......bdos....equ.....21h. |
| 0060 | 0a 62 6f 6f 74 20 20 20 20 65 71 75 20 20 20 20 20 32 30 68 0d 0a 61 72 65 61 64 20 20 20 65 71 | .boot....equ.....20h..aread...eq |
| 0080 | 75 20 20 20 20 20 32 35 68 0d 0a 61 77 72 69 74 65 20 20 65 71 75 20 20 20 20 20 32 36 68 0d 0a | u.....25h..awrite..equ.....26h.. |
| 00a0 | 0d 0a 0d 0a 2e 78 6c 69 73 74 0d 0a 2e 78 63 72 65 66 0d 0a 20 20 20 20 20 20 20 20 49 4e 43 4c | .....xlist...xcref..........INCL |
| 00c0 | 55 44 45 20 44 4f 53 53 59 4d 2e 41 53 4d 0d 0a 3b 54 68 65 20 44 4f 53 54 3a 20 70 72 65 66 69 | UDE.DOSSYM.ASM..;The.DOST:.prefi |
| 00e0 | 78 20 69 73 20 61 20 44 45 43 20 54 4f 50 53 2f 32 30 20 64 69 72 65 63 74 6f 72 79 20 70 72 65 | x.is.a.DEC.TOPS/20.directory.pre |
| 0100 | 66 69 78 2e 20 52 65 6d 6f 76 65 20 69 74 20 66 6f 72 0d 0a 3b 20 20 20 61 73 73 65 6d 62 6c 79 | fix..Remove.it.for..;...assembly |
| 0120 | 20 69 6e 20 4d 53 2d 44 4f 53 20 61 73 73 65 6d 62 6c 79 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 73 | .in.MS-DOS.assembly.environments |
| 0140 | 20 75 73 69 6e 67 20 4d 41 53 4d 2e 20 54 68 65 20 44 4f 53 53 59 4d 2e 41 53 4d 0d 0a 3b 20 20 | .using.MASM..The.DOSSYM.ASM..;.. |
| 0160 | 20 66 69 6c 65 20 6d 75 73 74 20 65 78 69 73 74 20 74 68 6f 75 67 68 2c 20 69 74 20 69 73 20 69 | .file.must.exist.though,.it.is.i |
| 0180 | 6e 63 6c 75 64 65 64 20 77 69 74 68 20 4f 45 4d 20 64 69 73 74 72 69 62 75 74 69 6f 6e 2e 0d 0a | ncluded.with.OEM.distribution... |
| 01a0 | 2e 63 72 65 66 0d 0a 2e 6c 69 73 74 0d 0a 0d 0a 63 6f 64 65 20 20 20 20 73 65 67 6d 65 6e 74 20 | .cref...list....code....segment. |
| 01c0 | 70 75 62 6c 69 63 0d 0a 63 6f 64 65 20 20 20 20 65 6e 64 73 0d 0a 0d 0a 63 6f 6e 73 74 20 20 20 | public..code....ends....const... |
| 01e0 | 73 65 67 6d 65 6e 74 20 70 75 62 6c 69 63 20 62 79 74 65 0d 0a 63 6f 6e 73 74 20 20 20 65 6e 64 | segment.public.byte..const...end |
| 0200 | 73 0d 0a 0d 0a 64 61 74 61 20 20 20 20 73 65 67 6d 65 6e 74 20 70 75 62 6c 69 63 20 62 79 74 65 | s....data....segment.public.byte |
| 0220 | 0d 0a 20 20 20 20 20 20 20 20 45 58 54 52 4e 20 20 20 66 69 6c 73 69 7a 3a 57 4f 52 44 0d 0a 64 | ..........EXTRN...filsiz:WORD..d |
| 0240 | 61 74 61 20 20 20 20 65 6e 64 73 0d 0a 0d 0a 0d 0a 64 67 20 20 20 20 20 20 67 72 6f 75 70 20 20 | ata....ends......dg......group.. |
| 0260 | 20 63 6f 64 65 2c 63 6f 6e 73 74 2c 64 61 74 61 0d 0a 0d 0a 63 72 20 20 20 20 20 20 65 71 75 20 | .code,const,data....cr......equ. |
| 0280 | 20 20 20 20 30 64 68 0d 0a 6c 66 20 20 20 20 20 20 65 71 75 20 20 20 20 20 30 61 68 0d 0a 0d 0a | ....0dh..lf......equ.....0ah.... |
| 02a0 | 63 6f 64 65 20 20 20 20 73 65 67 6d 65 6e 74 20 70 75 62 6c 69 63 20 62 79 74 65 0d 0a 20 20 20 | code....segment.public.byte..... |
| 02c0 | 20 20 20 20 20 61 73 73 75 6d 65 20 20 63 73 3a 64 67 2c 64 73 3a 64 67 2c 65 73 3a 64 67 2c 73 | .....assume..cs:dg,ds:dg,es:dg,s |
| 02e0 | 73 3a 64 67 0d 0a 0d 0a 20 20 20 20 20 20 20 20 45 58 54 52 4e 20 20 20 50 43 52 4c 46 3a 4e 45 | s:dg............EXTRN...PCRLF:NE |
| 0300 | 41 52 2c 50 52 49 4e 54 3a 4e 45 41 52 2c 49 4e 54 5f 32 33 3a 4e 45 41 52 2c 43 4f 4e 56 45 52 | AR,PRINT:NEAR,INT_23:NEAR,CONVER |
| 0320 | 54 3a 4e 45 41 52 0d 0a 20 20 20 20 20 20 20 20 50 55 42 4c 49 43 20 20 64 73 6b 77 72 74 2c 64 | T:NEAR..........PUBLIC..dskwrt,d |
| 0340 | 73 6b 72 64 2c 44 53 4b 45 52 52 2c 72 65 70 6f 72 74 0d 0a 0d 0a 68 65 63 6f 64 65 20 20 64 62 | skrd,DSKERR,report....hecode..db |
| 0360 | 20 20 20 20 20 20 30 0d 0a 0d 0a 64 73 6b 77 72 74 3a 20 70 75 73 68 20 20 20 20 61 78 0d 0a 20 | ......0....dskwrt:.push....ax... |
| 0380 | 20 20 20 20 20 20 20 70 75 73 68 20 20 20 20 62 78 0d 0a 20 20 20 20 20 20 20 20 70 75 73 68 20 | .......push....bx..........push. |
| 03a0 | 20 20 20 63 78 0d 0a 20 20 20 20 20 20 20 20 70 75 73 68 20 20 20 20 64 78 0d 0a 20 20 20 20 20 | ...cx..........push....dx....... |
| 03c0 | 20 20 20 69 6e 74 20 20 20 20 20 61 77 72 69 74 65 0d 0a 20 20 20 20 20 20 20 20 6d 6f 76 20 20 | ...int.....awrite..........mov.. |
| 03e0 | 20 20 20 5b 68 65 63 6f 64 65 5d 2c 61 6c 0d 0a 20 20 20 20 20 20 20 20 69 6e 63 20 20 20 20 20 | ...[hecode],al..........inc..... |
| 0400 | 73 70 0d 0a 20 20 20 20 20 20 20 20 69 6e 63 20 20 20 20 20 73 70 20 20 20 20 20 20 3b 63 6c 65 | sp..........inc.....sp......;cle |
| 0420 | 61 6e 20 75 70 20 73 74 61 63 6b 0d 0a 20 20 20 20 20 20 20 20 70 6f 70 20 20 20 20 20 64 78 0d | an.up.stack..........pop.....dx. |
| 0440 | 0a 20 20 20 20 20 20 20 20 70 6f 70 20 20 20 20 20 63 78 0d 0a 20 20 20 20 20 20 20 20 70 6f 70 | .........pop.....cx..........pop |
| 0460 | 20 20 20 20 20 62 78 0d 0a 20 20 20 20 20 20 20 20 70 6f 70 20 20 20 20 20 61 78 0d 0a 20 20 20 | .....bx..........pop.....ax..... |
| 0480 | 20 20 20 20 20 6a 6e 63 20 20 20 20 20 70 72 65 74 0d 0a 20 20 20 20 20 20 20 20 6d 6f 76 20 20 | .....jnc.....pret..........mov.. |
| 04a0 | 20 20 20 73 69 2c 6f 66 66 73 65 74 20 64 67 3a 20 77 72 69 74 69 6e 67 0d 0a 20 20 20 20 20 20 | ...si,offset.dg:.writing........ |
| 04c0 | 20 20 63 61 6c 6c 20 20 20 20 64 73 6b 65 72 72 0d 0a 20 20 20 20 20 20 20 20 6a 7a 20 20 20 20 | ..call....dskerr..........jz.... |
| 04e0 | 20 20 64 73 6b 77 72 74 0d 0a 20 20 20 20 20 20 20 20 63 6c 63 0d 0a 70 72 65 74 3a 20 20 20 72 | ..dskwrt..........clc..pret:...r |
| 0500 | 65 74 0d 0a 0d 0a 64 73 6b 72 64 3a 20 20 70 75 73 68 20 20 20 20 61 78 0d 0a 20 20 20 20 20 20 | et....dskrd:..push....ax........ |
| 0520 | 20 20 70 75 73 68 20 20 20 20 62 78 0d 0a 20 20 20 20 20 20 20 20 70 75 73 68 20 20 20 20 63 78 | ..push....bx..........push....cx |
| 0540 | 0d 0a 20 20 20 20 20 20 20 20 70 75 73 68 20 20 20 20 64 78 0d 0a 20 20 20 20 20 20 20 20 69 6e | ..........push....dx..........in |
| 0560 | 74 20 20 20 20 20 61 72 65 61 64 0d 0a 20 20 20 20 20 20 20 20 6d 6f 76 20 20 20 20 20 5b 68 65 | t.....aread..........mov.....[he |
| 0580 | 63 6f 64 65 5d 2c 61 6c 0d 0a 20 20 20 20 20 20 20 20 69 6e 63 20 20 20 20 20 73 70 0d 0a 20 20 | code],al..........inc.....sp.... |
| 05a0 | 20 20 20 20 20 20 69 6e 63 20 20 20 20 20 73 70 20 20 20 20 20 20 3b 63 6c 65 61 6e 20 75 70 20 | ......inc.....sp......;clean.up. |
| 05c0 | 73 74 61 63 6b 0d 0a 20 20 20 20 20 20 20 20 70 6f 70 20 20 20 20 20 64 78 0d 0a 20 20 20 20 20 | stack..........pop.....dx....... |
| 05e0 | 20 20 20 70 6f 70 20 20 20 20 20 63 78 0d 0a 20 20 20 20 20 20 20 20 70 6f 70 20 20 20 20 20 62 | ...pop.....cx..........pop.....b |
| 0600 | 78 0d 0a 20 20 20 20 20 20 20 20 70 6f 70 20 20 20 20 20 61 78 0d 0a 20 20 20 20 20 20 20 20 6a | x..........pop.....ax..........j |
| 0620 | 6e 63 20 20 20 20 20 70 72 65 74 0d 0a 20 20 20 20 20 20 20 20 6d 6f 76 20 20 20 20 20 73 69 2c | nc.....pret..........mov.....si, |
| 0640 | 6f 66 66 73 65 74 20 64 67 3a 20 72 65 61 64 69 6e 67 0d 0a 20 20 20 20 20 20 20 20 63 61 6c 6c | offset.dg:.reading..........call |
| 0660 | 20 20 20 20 64 73 6b 65 72 72 0d 0a 20 20 20 20 20 20 20 20 6a 7a 20 20 20 20 20 20 64 73 6b 72 | ....dskerr..........jz......dskr |
| 0680 | 64 0d 0a 20 20 20 20 20 20 20 20 63 6c 63 0d 0a 20 20 20 20 20 20 20 20 72 65 74 0d 0a 0d 0a 44 | d..........clc..........ret....D |
| 06a0 | 53 4b 45 52 52 3a 0d 0a 20 20 20 20 20 20 20 20 50 55 53 48 20 20 20 20 41 58 0d 0a 20 20 20 20 | SKERR:..........PUSH....AX...... |
| 06c0 | 20 20 20 20 50 55 53 48 20 20 20 20 42 58 0d 0a 20 20 20 20 20 20 20 20 50 55 53 48 20 20 20 20 | ....PUSH....BX..........PUSH.... |
| 06e0 | 43 58 0d 0a 20 20 20 20 20 20 20 20 50 55 53 48 20 20 20 20 44 58 0d 0a 20 20 20 20 20 20 20 20 | CX..........PUSH....DX.......... |
| 0700 | 50 55 53 48 20 20 20 20 44 49 0d 0a 20 20 20 20 20 20 20 20 50 55 53 48 20 20 20 20 45 53 0d 0a | PUSH....DI..........PUSH....ES.. |
| 0720 | 20 20 20 20 20 20 20 20 43 41 4c 4c 20 20 20 20 50 43 52 4c 46 0d 0a 20 20 20 20 20 20 20 20 4d | ........CALL....PCRLF..........M |
| 0740 | 4f 56 20 20 20 20 20 41 4c 2c 5b 48 45 43 4f 44 45 5d 0d 0a 20 20 20 20 20 20 20 20 43 4d 50 20 | OV.....AL,[HECODE]..........CMP. |
| 0760 | 20 20 20 20 41 4c 2c 31 32 0d 0a 20 20 20 20 20 20 20 20 4a 42 45 20 20 20 20 20 48 41 56 43 4f | ....AL,12..........JBE.....HAVCO |
| 0780 | 44 0d 0a 20 20 20 20 20 20 20 20 4d 4f 56 20 20 20 20 20 41 4c 2c 31 32 0d 0a 48 41 56 43 4f 44 | D..........MOV.....AL,12..HAVCOD |
| 07a0 | 3a 0d 0a 20 20 20 20 20 20 20 20 58 4f 52 20 20 20 20 20 41 48 2c 41 48 0d 0a 20 20 20 20 20 20 | :..........XOR.....AH,AH........ |
| 07c0 | 20 20 4d 4f 56 20 20 20 20 20 44 49 2c 41 58 0d 0a 20 20 20 20 20 20 20 20 53 48 4c 20 20 20 20 | ..MOV.....DI,AX..........SHL.... |
| 07e0 | 20 44 49 2c 31 0d 0a 20 20 20 20 20 20 20 20 4d 4f 56 20 20 20 20 20 44 58 2c 57 4f 52 44 20 50 | .DI,1..........MOV.....DX,WORD.P |
| 0800 | 54 52 20 5b 44 49 2b 4d 45 53 42 41 53 5d 20 3b 20 47 65 74 20 70 6f 69 6e 74 65 72 20 74 6f 20 | TR.[DI+MESBAS].;.Get.pointer.to. |
| 0820 | 65 72 72 6f 72 20 6d 65 73 73 61 67 65 0d 0a 20 20 20 20 20 20 20 20 43 41 4c 4c 20 20 20 20 50 | error.message..........CALL....P |
| 0840 | 52 49 4e 54 20 20 20 20 20 20 20 20 20 20 3b 20 50 72 69 6e 74 20 65 72 72 6f 72 20 74 79 70 65 | RINT..........;.Print.error.type |
| 0860 | 0d 0a 20 20 20 20 20 20 20 20 4d 4f 56 20 20 20 20 20 44 58 2c 4f 46 46 53 45 54 20 44 47 3a 45 | ..........MOV.....DX,OFFSET.DG:E |
| 0880 | 52 52 4d 45 53 0d 0a 20 20 20 20 20 20 20 20 43 41 4c 4c 20 20 20 20 50 52 49 4e 54 0d 0a 20 20 | RRMES..........CALL....PRINT.... |
| 08a0 | 20 20 20 20 20 20 4d 4f 56 20 20 20 20 20 44 58 2c 53 49 0d 0a 20 20 20 20 20 20 20 20 43 41 4c | ......MOV.....DX,SI..........CAL |
| 08c0 | 4c 20 20 20 20 50 52 49 4e 54 0d 0a 20 20 20 20 20 20 20 20 4d 4f 56 20 20 20 20 20 44 58 2c 4f | L....PRINT..........MOV.....DX,O |
| 08e0 | 46 46 53 45 54 20 44 47 3a 44 52 56 4d 45 53 0d 0a 20 20 20 20 20 20 20 20 43 41 4c 4c 20 20 20 | FFSET.DG:DRVMES..........CALL... |
| 0900 | 20 50 52 49 4e 54 0d 0a 41 53 4b 3a 0d 0a 20 20 20 20 20 20 20 20 4d 4f 56 20 20 20 20 20 44 58 | .PRINT..ASK:..........MOV.....DX |
| 0920 | 2c 4f 46 46 53 45 54 20 44 47 3a 52 45 51 55 45 53 54 0d 0a 20 20 20 20 20 20 20 20 43 41 4c 4c | ,OFFSET.DG:REQUEST..........CALL |
| 0940 | 20 20 20 20 50 52 49 4e 54 0d 0a 20 20 20 20 20 20 20 20 4d 4f 56 20 20 20 20 20 41 58 2c 28 53 | ....PRINT..........MOV.....AX,(S |
| 0960 | 54 44 5f 43 4f 4e 5f 49 4e 50 55 54 5f 46 4c 55 53 48 20 53 48 4c 20 38 29 2b 53 54 44 5f 43 4f | TD_CON_INPUT_FLUSH.SHL.8)+STD_CO |
| 0980 | 4e 5f 49 4e 50 55 54 0d 0a 20 20 20 20 20 20 20 20 49 4e 54 20 20 20 20 20 32 31 48 20 20 20 20 | N_INPUT..........INT.....21H.... |
| 09a0 | 20 20 20 20 20 20 20 20 20 3b 20 47 65 74 20 72 65 73 70 6f 6e 73 65 0d 0a 20 20 20 20 20 20 20 | .........;.Get.response......... |
| 09c0 | 20 50 55 53 48 20 20 20 20 41 58 0d 0a 20 20 20 20 20 20 20 20 43 41 4c 4c 20 20 20 20 50 43 52 | .PUSH....AX..........CALL....PCR |
| 09e0 | 4c 46 0d 0a 20 20 20 20 20 20 20 20 50 4f 50 20 20 20 20 20 41 58 0d 0a 20 20 20 20 20 20 20 20 | LF..........POP.....AX.......... |
| 0a00 | 4f 52 20 20 20 20 20 20 41 4c 2c 32 30 48 20 20 20 20 20 20 20 20 20 20 3b 20 43 6f 6e 76 65 72 | OR......AL,20H..........;.Conver |
| 0a20 | 74 20 74 6f 20 6c 6f 77 65 72 20 63 61 73 65 0d 0a 20 20 20 20 20 20 20 20 43 4d 50 20 20 20 20 | t.to.lower.case..........CMP.... |
| 0a40 | 20 41 4c 2c 22 69 22 20 20 20 20 20 20 20 20 20 20 3b 20 49 67 6e 6f 72 65 3f 0d 0a 20 20 20 20 | .AL,"i"..........;.Ignore?...... |
| 0a60 | 20 20 20 20 4a 5a 20 20 20 20 20 20 45 45 58 49 54 4e 5a 0d 0a 20 20 20 20 20 20 20 20 43 4d 50 | ....JZ......EEXITNZ..........CMP |
| 0a80 | 20 20 20 20 20 41 4c 2c 22 72 22 20 20 20 20 20 20 20 20 20 20 3b 20 52 65 74 72 79 3f 0d 0a 20 | .....AL,"r"..........;.Retry?... |
| 0aa0 | 20 20 20 20 20 20 20 4a 5a 20 20 20 20 20 20 45 45 58 49 54 0d 0a 20 20 20 20 20 20 20 20 43 4d | .......JZ......EEXIT..........CM |
| 0ac0 | 50 20 20 20 20 20 41 4c 2c 22 61 22 20 20 20 20 20 20 20 20 20 20 3b 20 41 62 6f 72 74 3f 0d 0a | P.....AL,"a"..........;.Abort?.. |
| 0ae0 | 20 20 20 20 20 20 20 20 4a 4e 5a 20 20 20 20 20 41 53 4b 0d 0a 20 20 20 20 20 20 20 20 4a 4d 50 | ........JNZ.....ASK..........JMP |
| 0b00 | 20 20 20 20 20 49 4e 54 5f 32 33 0d 0a 0d 0a 45 45 58 49 54 4e 5a 3a 0d 0a 20 20 20 20 20 20 20 | .....INT_23....EEXITNZ:......... |
| 0b20 | 20 4f 52 20 20 20 20 20 20 41 4c 2c 41 4c 20 20 20 20 20 20 20 20 20 20 20 3b 20 52 65 73 65 74 | .OR......AL,AL...........;.Reset |
| 0b40 | 73 20 7a 65 72 6f 20 66 6c 61 67 0d 0a 45 45 58 49 54 3a 0d 0a 20 20 20 20 20 20 20 20 50 4f 50 | s.zero.flag..EEXIT:..........POP |
| 0b60 | 20 20 20 20 20 45 53 0d 0a 20 20 20 20 20 20 20 20 50 4f 50 20 20 20 20 20 44 49 0d 0a 20 20 20 | .....ES..........POP.....DI..... |
| 0b80 | 20 20 20 20 20 50 4f 50 20 20 20 20 20 44 58 0d 0a 20 20 20 20 20 20 20 20 50 4f 50 20 20 20 20 | .....POP.....DX..........POP.... |
| 0ba0 | 20 43 58 0d 0a 20 20 20 20 20 20 20 20 50 4f 50 20 20 20 20 20 42 58 0d 0a 20 20 20 20 20 20 20 | .CX..........POP.....BX......... |
| 0bc0 | 20 50 4f 50 20 20 20 20 20 41 58 0d 0a 20 20 20 20 20 20 20 20 52 45 54 0d 0a 0d 0a 3b 2a 2a 2a | .POP.....AX..........RET....;*** |
| 0be0 | 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a | ******************************** |
| 0c00 | 2a 2a 2a 2a 2a 2a 2a 0d 0a 3b 20 50 72 69 6e 74 73 20 74 68 65 20 58 58 58 20 6f 66 20 59 59 59 | *******..;.Prints.the.XXX.of.YYY |
| 0c20 | 20 62 79 74 65 73 20 72 65 63 6f 76 65 72 65 64 20 6d 65 73 73 61 67 65 2e 0d 0a 3b 20 54 68 65 | .bytes.recovered.message...;.The |
| 0c40 | 20 58 58 58 20 76 61 6c 75 65 20 69 73 20 61 20 64 77 6f 72 64 20 61 74 20 64 69 2b 31 36 20 6f | .XXX.value.is.a.dword.at.di+16.o |
| 0c60 | 6e 20 65 6e 74 72 79 2e 0d 0a 3b 20 54 68 65 20 59 59 59 20 76 61 6c 75 65 20 69 73 20 61 20 64 | n.entry...;.The.YYY.value.is.a.d |
| 0c80 | 77 6f 72 64 20 28 64 65 63 6c 61 72 65 64 20 61 73 20 61 20 77 6f 72 64 29 20 61 74 20 66 69 6c | word.(declared.as.a.word).at.fil |
| 0ca0 | 73 69 7a 2e 0d 0a 3b 20 4e 6f 74 65 3a 0d 0a 3b 20 20 20 20 20 20 20 49 66 20 69 74 20 69 73 20 | siz...;.Note:..;.......If.it.is. |
| 0cc0 | 64 65 73 69 72 65 64 20 74 6f 20 70 72 69 6e 74 20 61 20 6d 65 73 73 61 67 65 20 62 65 66 6f 72 | desired.to.print.a.message.befor |
| 0ce0 | 65 20 74 68 65 20 66 69 72 73 74 20 6e 75 6d 62 65 72 2c 0d 0a 3b 20 20 20 20 20 20 20 20 20 20 | e.the.first.number,..;.......... |
| 0d00 | 70 6f 69 6e 74 20 61 74 20 74 68 65 20 6d 65 73 73 61 67 65 20 77 69 74 68 20 44 58 20 61 6e 64 | point.at.the.message.with.DX.and |
| 0d20 | 20 63 61 6c 6c 20 50 52 49 4e 54 2e 0d 0a 0d 0a 72 65 70 6f 72 74 3a 0d 0a 20 20 20 20 20 20 20 | .call.PRINT.....report:......... |
| 0d40 | 20 6d 6f 76 20 20 20 20 20 73 69 2c 5b 64 69 2b 31 36 5d 20 20 20 20 20 20 3b 47 65 74 20 74 68 | .mov.....si,[di+16]......;Get.th |
| 0d60 | 65 20 58 58 58 20 76 61 6c 75 65 0d 0a 20 20 20 20 20 20 20 20 6d 6f 76 20 20 20 20 20 64 69 2c | e.XXX.value..........mov.....di, |
| 0d80 | 5b 64 69 2b 31 38 5d 0d 0a 20 20 20 20 20 20 20 20 6d 6f 76 20 20 20 20 20 62 78 2c 6f 66 66 73 | [di+18]..........mov.....bx,offs |
| 0da0 | 65 74 20 64 67 3a 20 6f 66 6d 73 67 0d 0a 20 20 20 20 20 20 20 20 63 61 6c 6c 20 20 20 20 63 6f | et.dg:.ofmsg..........call....co |
| 0dc0 | 6e 76 65 72 74 20 20 20 20 20 20 20 20 20 3b 50 72 69 6e 74 20 22 58 58 58 20 6f 66 20 22 20 20 | nvert.........;Print."XXX.of.".. |
| 0de0 | 28 44 49 3a 53 49 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 6d 65 73 73 61 67 65 0d 0a 20 20 20 20 | (DI:SI.followed.by.message...... |
| 0e00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 20 20 20 | ............................;... |
| 0e20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 69 6e 74 65 64 20 74 6f 20 62 79 20 42 58 29 | ...............pointed.to.by.BX) |
| 0e40 | 0d 0a 20 20 20 20 20 20 20 20 6d 6f 76 20 20 20 20 20 73 69 2c 66 69 6c 73 69 7a 20 20 20 20 20 | ..........mov.....si,filsiz..... |
| 0e60 | 20 20 3b 47 65 74 20 74 68 65 20 59 59 59 20 76 61 6c 75 65 0d 0a 20 20 20 20 20 20 20 20 6d 6f | ..;Get.the.YYY.value..........mo |
| 0e80 | 76 20 20 20 20 20 64 69 2c 66 69 6c 73 69 7a 2b 32 0d 0a 20 20 20 20 20 20 20 20 6d 6f 76 20 20 | v.....di,filsiz+2..........mov.. |
| 0ea0 | 20 20 20 62 78 2c 6f 66 66 73 65 74 20 64 67 3a 20 65 6e 64 6d 73 67 0d 0a 20 20 20 20 20 20 20 | ...bx,offset.dg:.endmsg......... |
| 0ec0 | 20 63 61 6c 6c 20 20 20 20 63 6f 6e 76 65 72 74 20 20 20 20 20 20 20 20 20 3b 50 72 69 6e 74 20 | .call....convert.........;Print. |
| 0ee0 | 22 59 59 59 20 62 79 74 65 73 20 72 65 63 6f 76 65 72 65 64 20 43 52 20 4c 46 22 0d 0a 20 20 20 | "YYY.bytes.recovered.CR.LF"..... |
| 0f00 | 20 20 20 20 20 72 65 74 0d 0a 0d 0a 63 6f 64 65 20 20 20 20 65 6e 64 73 0d 0a 0d 0a 63 6f 6e 73 | .....ret....code....ends....cons |
| 0f20 | 74 20 20 20 73 65 67 6d 65 6e 74 20 70 75 62 6c 69 63 20 62 79 74 65 0d 0a 0d 0a 20 20 20 20 20 | t...segment.public.byte......... |
| 0f40 | 20 20 20 50 55 42 4c 49 43 20 20 42 41 44 56 45 52 2c 61 73 6b 6d 73 67 2c 64 72 76 6c 65 74 2c | ...PUBLIC..BADVER,askmsg,drvlet, |
| 0f60 | 44 52 56 4c 45 54 31 2c 64 69 72 6d 73 67 2c 72 65 63 6d 73 67 5f 70 72 65 0d 0a 20 20 20 20 20 | DRVLET1,dirmsg,recmsg_pre....... |
| 0f80 | 20 20 20 50 55 42 4c 49 43 20 20 63 72 6c 66 2c 64 72 76 65 72 72 2c 62 61 64 64 72 76 2c 6f 70 | ...PUBLIC..crlf,drverr,baddrv,op |
| 0fa0 | 6e 65 72 72 2c 72 65 63 6d 73 67 5f 70 6f 73 74 0d 0a 0d 0a 4d 45 53 42 41 53 20 20 44 57 20 20 | nerr,recmsg_post....MESBAS..DW.. |
| 0fc0 | 20 20 20 20 4f 46 46 53 45 54 20 44 47 3a 45 52 52 30 0d 0a 20 20 20 20 20 20 20 20 44 57 20 20 | ....OFFSET.DG:ERR0..........DW.. |
| 0fe0 | 20 20 20 20 4f 46 46 53 45 54 20 44 47 3a 45 52 52 31 0d 0a 20 20 20 20 20 20 20 20 44 57 20 20 | ....OFFSET.DG:ERR1..........DW.. |
| 1000 | 20 20 20 20 4f 46 46 53 45 54 20 44 47 3a 45 52 52 32 0d 0a 20 20 20 20 20 20 20 20 44 57 20 20 | ....OFFSET.DG:ERR2..........DW.. |
| 1020 | 20 20 20 20 4f 46 46 53 45 54 20 44 47 3a 45 52 52 33 0d 0a 20 20 20 20 20 20 20 20 44 57 20 20 | ....OFFSET.DG:ERR3..........DW.. |
| 1040 | 20 20 20 20 4f 46 46 53 45 54 20 44 47 3a 45 52 52 34 0d 0a 20 20 20 20 20 20 20 20 44 57 20 20 | ....OFFSET.DG:ERR4..........DW.. |
| 1060 | 20 20 20 20 4f 46 46 53 45 54 20 44 47 3a 45 52 52 35 0d 0a 20 20 20 20 20 20 20 20 44 57 20 20 | ....OFFSET.DG:ERR5..........DW.. |
| 1080 | 20 20 20 20 4f 46 46 53 45 54 20 44 47 3a 45 52 52 36 0d 0a 20 20 20 20 20 20 20 20 44 57 20 20 | ....OFFSET.DG:ERR6..........DW.. |
| 10a0 | 20 20 20 20 4f 46 46 53 45 54 20 44 47 3a 45 52 52 37 0d 0a 20 20 20 20 20 20 20 20 44 57 20 20 | ....OFFSET.DG:ERR7..........DW.. |
| 10c0 | 20 20 20 20 4f 46 46 53 45 54 20 44 47 3a 45 52 52 38 0d 0a 20 20 20 20 20 20 20 20 44 57 20 20 | ....OFFSET.DG:ERR8..........DW.. |
| 10e0 | 20 20 20 20 4f 46 46 53 45 54 20 44 47 3a 45 52 52 39 0d 0a 20 20 20 20 20 20 20 20 44 57 20 20 | ....OFFSET.DG:ERR9..........DW.. |
| 1100 | 20 20 20 20 4f 46 46 53 45 54 20 44 47 3a 45 52 52 31 30 0d 0a 20 20 20 20 20 20 20 20 44 57 20 | ....OFFSET.DG:ERR10..........DW. |
| 1120 | 20 20 20 20 20 4f 46 46 53 45 54 20 44 47 3a 45 52 52 31 31 0d 0a 20 20 20 20 20 20 20 20 44 57 | .....OFFSET.DG:ERR11..........DW |
| 1140 | 20 20 20 20 20 20 4f 46 46 53 45 54 20 44 47 3a 45 52 52 31 32 0d 0a 0d 0a 52 45 41 44 49 4e 47 | ......OFFSET.DG:ERR12....READING |
| 1160 | 20 44 42 20 20 20 20 20 20 22 72 65 61 64 24 22 0d 0a 57 52 49 54 49 4e 47 20 44 42 20 20 20 20 | .DB......"read$"..WRITING.DB.... |
| 1180 | 20 20 22 77 72 69 74 24 22 0d 0a 45 52 52 4d 45 53 20 20 44 42 20 20 20 20 20 20 22 20 65 72 72 | .."writ$"..ERRMES..DB......".err |
| 11a0 | 6f 72 20 24 22 0d 0a 44 52 56 4d 45 53 20 20 44 42 20 20 20 20 20 20 22 69 6e 67 20 64 72 69 76 | or.$"..DRVMES..DB......"ing.driv |
| 11c0 | 65 20 22 0d 0a 44 52 56 4c 45 54 31 20 44 42 20 20 20 20 20 20 22 41 22 2c 31 33 2c 31 30 2c 22 | e."..DRVLET1.DB......"A",13,10," |
| 11e0 | 24 22 0d 0a 52 45 51 55 45 53 54 20 44 42 20 20 20 20 20 20 22 41 62 6f 72 74 2c 20 52 65 74 72 | $"..REQUEST.DB......"Abort,.Retr |
| 1200 | 79 2c 20 49 67 6e 6f 72 65 3f 20 24 22 0d 0a 0d 0a 45 52 52 30 20 20 20 20 44 42 20 20 20 20 20 | y,.Ignore?.$"....ERR0....DB..... |
| 1220 | 20 22 57 72 69 74 65 20 70 72 6f 74 65 63 74 24 22 0d 0a 45 52 52 31 20 20 20 20 44 42 20 20 20 | ."Write.protect$"..ERR1....DB... |
| 1240 | 20 20 20 22 42 61 64 20 75 6e 69 74 24 22 0d 0a 45 52 52 32 20 20 20 20 44 42 20 20 20 20 20 20 | ..."Bad.unit$"..ERR2....DB...... |
| 1260 | 22 4e 6f 74 20 72 65 61 64 79 24 22 0d 0a 45 52 52 33 20 20 20 20 44 42 20 20 20 20 20 20 22 42 | "Not.ready$"..ERR3....DB......"B |
| 1280 | 61 64 20 63 6f 6d 6d 61 6e 64 24 22 0d 0a 45 52 52 34 20 20 20 20 44 42 20 20 20 20 20 20 22 44 | ad.command$"..ERR4....DB......"D |
| 12a0 | 61 74 61 24 22 0d 0a 45 52 52 35 20 20 20 20 44 42 20 20 20 20 20 20 22 42 61 64 20 63 61 6c 6c | ata$"..ERR5....DB......"Bad.call |
| 12c0 | 20 66 6f 72 6d 61 74 24 22 0d 0a 45 52 52 36 20 20 20 20 44 42 20 20 20 20 20 20 22 53 65 65 6b | .format$"..ERR6....DB......"Seek |
| 12e0 | 24 22 0d 0a 45 52 52 37 20 20 20 20 44 42 20 20 20 20 20 20 22 4e 6f 6e 2d 44 4f 53 20 64 69 73 | $"..ERR7....DB......"Non-DOS.dis |
| 1300 | 6b 24 22 0d 0a 45 52 52 38 20 20 20 20 44 42 20 20 20 20 20 20 22 53 65 63 74 6f 72 20 6e 6f 74 | k$"..ERR8....DB......"Sector.not |
| 1320 | 20 66 6f 75 6e 64 24 22 0d 0a 45 52 52 39 20 20 20 20 44 42 20 20 20 20 20 20 22 4e 6f 20 70 61 | .found$"..ERR9....DB......"No.pa |
| 1340 | 70 65 72 24 22 0d 0a 45 52 52 31 30 20 20 20 44 42 20 20 20 20 20 20 22 57 72 69 74 65 20 66 61 | per$"..ERR10...DB......"Write.fa |
| 1360 | 75 6c 74 24 22 0d 0a 45 52 52 31 31 20 20 20 44 42 20 20 20 20 20 20 22 52 65 61 64 20 66 61 75 | ult$"..ERR11...DB......"Read.fau |
| 1380 | 6c 74 24 22 0d 0a 45 52 52 31 32 20 20 20 44 42 20 20 20 20 20 20 22 44 69 73 6b 24 22 0d 0a 0d | lt$"..ERR12...DB......"Disk$"... |
| 13a0 | 0a 3b 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | .;------------------------------ |
| 13c0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
| 13e0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 3b 0d 0a 0d 0a 42 41 44 56 45 52 20 20 44 42 20 20 20 20 20 20 22 49 | ---------;....BADVER..DB......"I |
| 1400 | 6e 63 6f 72 72 65 63 74 20 44 4f 53 20 76 65 72 73 69 6f 6e 22 0d 0a 63 72 6c 66 20 20 20 20 64 | ncorrect.DOS.version"..crlf....d |
| 1420 | 62 20 20 20 20 20 20 63 72 2c 6c 66 2c 27 24 27 0d 0a 61 73 6b 6d 73 67 20 20 64 62 20 20 20 20 | b......cr,lf,'$'..askmsg..db.... |
| 1440 | 20 20 63 72 2c 6c 66 2c 27 50 72 65 73 73 20 61 6e 79 20 6b 65 79 20 74 6f 20 62 65 67 69 6e 20 | ..cr,lf,'Press.any.key.to.begin. |
| 1460 | 72 65 63 6f 76 65 72 79 20 6f 66 20 74 68 65 27 0d 0a 20 20 20 20 20 20 20 20 64 62 20 20 20 20 | recovery.of.the'..........db.... |
| 1480 | 20 20 63 72 2c 6c 66 2c 27 66 69 6c 65 28 73 29 20 6f 6e 20 64 72 69 76 65 20 27 0d 0a 64 72 76 | ..cr,lf,'file(s).on.drive.'..drv |
| 14a0 | 6c 65 74 20 20 64 62 20 20 20 20 20 20 27 41 3a 20 27 2c 63 72 2c 6c 66 2c 63 72 2c 6c 66 2c 27 | let..db......'A:.',cr,lf,cr,lf,' |
| 14c0 | 24 27 0d 0a 64 69 72 6d 73 67 20 20 64 62 20 20 20 20 20 20 63 72 2c 6c 66 2c 27 57 61 72 6e 69 | $'..dirmsg..db......cr,lf,'Warni |
| 14e0 | 6e 67 20 2d 20 64 69 72 65 63 74 6f 72 79 20 66 75 6c 6c 27 2c 63 72 2c 6c 66 2c 27 24 27 0d 0a | ng.-.directory.full',cr,lf,'$'.. |
| 1500 | 0d 0a 3b 22 72 65 63 6d 73 67 5f 70 72 65 3c 6e 75 6d 62 65 72 20 6f 66 20 66 69 6c 65 73 20 72 | ..;"recmsg_pre<number.of.files.r |
| 1520 | 65 63 6f 76 65 72 65 64 3e 72 65 63 6d 73 67 5f 70 6f 73 74 22 0d 0a 72 65 63 6d 73 67 5f 70 6f | ecovered>recmsg_post"..recmsg_po |
| 1540 | 73 74 20 20 20 20 20 64 62 20 20 20 20 20 20 27 20 66 69 6c 65 28 73 29 20 72 65 63 6f 76 65 72 | st.....db......'.file(s).recover |
| 1560 | 65 64 27 2c 63 72 2c 6c 66 0d 0a 72 65 63 6d 73 67 5f 70 72 65 20 20 20 20 20 20 64 62 20 20 20 | ed',cr,lf..recmsg_pre......db... |
| 1580 | 20 20 20 27 24 27 0d 0a 0d 0a 6f 66 6d 73 67 20 20 20 64 62 20 20 20 20 20 20 27 20 6f 66 20 24 | ...'$'....ofmsg...db......'.of.$ |
| 15a0 | 27 0d 0a 65 6e 64 6d 73 67 20 20 64 62 20 20 20 20 20 20 27 20 62 79 74 65 73 20 72 65 63 6f 76 | '..endmsg..db......'.bytes.recov |
| 15c0 | 65 72 65 64 27 2c 31 33 2c 31 30 2c 22 24 22 0d 0a 0d 0a 64 72 76 65 72 72 20 20 64 62 20 20 20 | ered',13,10,"$"....drverr..db... |
| 15e0 | 20 20 20 27 49 6e 76 61 6c 69 64 20 6e 75 6d 62 65 72 20 6f 66 20 70 61 72 61 6d 65 74 65 72 73 | ...'Invalid.number.of.parameters |
| 1600 | 24 27 0d 0a 62 61 64 64 72 76 20 20 64 62 20 20 20 20 20 20 27 49 6e 76 61 6c 69 64 20 64 72 69 | $'..baddrv..db......'Invalid.dri |
| 1620 | 76 65 20 6f 72 20 66 69 6c 65 20 6e 61 6d 65 24 27 0d 0a 6f 70 6e 65 72 72 20 20 64 62 20 20 20 | ve.or.file.name$'..opnerr..db... |
| 1640 | 20 20 20 27 46 69 6c 65 20 6e 6f 74 20 66 6f 75 6e 64 24 27 0d 0a 0d 0a 0d 0a 63 6f 6e 73 74 20 | ...'File.not.found$'......const. |
| 1660 | 20 20 65 6e 64 73 0d 0a 20 20 20 20 20 20 20 20 65 6e 64 0d 0a 00 00 00 00 00 00 00 00 00 00 00 | ..ends..........end............. |