home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / zsys / simtel20 / z3lib / zlib2.lbr < prev    next >
LBR Archive  |  1986-02-07  |  77.0 KB

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: LBR Archive (archive/lbr).

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert LBR Archive (archive/lbr) magic Supported
1% dexvert Micro Focus Cobol library (other/microFocusCobolLibrary) ext Unsupported
1% dexvert Micro Focus COBOL Library (other/microFocusCOBOLLibrary) ext Unsupported
100% file LBR archive data default
99% file data default
87% TrID LU library default
12% TrID C64 Hires bitmap default (weak)
100% lsar LBR default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 20 20 20 20 20 20 20 | 20 20 20 20 00 00 0d 00 |. | ....|
|00000010| 2d 42 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |-B......|........|
|00000020| 00 5a 33 4d 53 47 31 20 | 20 5a 38 30 0d 00 04 00 |.Z3MSG1 | Z80....|
|00000030| 81 f9 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 5a 33 4d 53 47 32 20 | 20 5a 38 30 11 00 04 00 |.Z3MSG2 | Z80....|
|00000050| 4f 99 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |O.......|........|
|00000060| 00 5a 33 4d 53 47 33 20 | 20 5a 38 30 15 00 04 00 |.Z3MSG3 | Z80....|
|00000070| cd 7b 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.{......|........|
|00000080| 00 5a 33 4d 53 47 34 20 | 20 5a 38 30 19 00 04 00 |.Z3MSG4 | Z80....|
|00000090| 54 d9 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |T.......|........|
|000000a0| 00 5a 33 4d 53 47 35 20 | 20 5a 38 30 1d 00 04 00 |.Z3MSG5 | Z80....|
|000000b0| 0e 78 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.x......|........|
|000000c0| 00 5a 33 4d 53 47 36 20 | 20 5a 38 30 21 00 05 00 |.Z3MSG6 | Z80!...|
|000000d0| a9 78 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.x......|........|
|000000e0| 00 5a 33 4d 53 47 37 20 | 20 5a 38 30 26 00 06 00 |.Z3MSG7 | Z80&...|
|000000f0| 5c 1e 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |\.......|........|
|00000100| 00 5a 33 4d 53 47 38 20 | 20 5a 38 30 2c 00 05 00 |.Z3MSG8 | Z80,...|
|00000110| bd bd 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000120| 00 5a 33 4d 53 47 39 20 | 20 5a 38 30 31 00 07 00 |.Z3MSG9 | Z801...|
|00000130| 20 b3 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 | .......|........|
|00000140| 00 5a 33 4d 53 47 41 20 | 20 5a 38 30 38 00 04 00 |.Z3MSGA | Z808...|
|00000150| 79 8c 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |y.......|........|
|00000160| 00 5a 33 4d 53 47 42 20 | 20 5a 38 30 3c 00 08 00 |.Z3MSGB | Z80<...|
|00000170| c0 2b 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.+......|........|
|00000180| 00 5a 33 4d 53 47 43 20 | 20 5a 38 30 44 00 06 00 |.Z3MSGC | Z80D...|
|00000190| 1f eb 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001a0| 00 5a 33 4d 53 47 44 20 | 20 5a 38 30 4a 00 06 00 |.Z3MSGD | Z80J...|
|000001b0| 69 d8 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |i.......|........|
|000001c0| 00 5a 33 4d 53 47 45 20 | 20 5a 38 30 50 00 05 00 |.Z3MSGE | Z80P...|
|000001d0| 80 26 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.&......|........|
|000001e0| 00 5a 33 4d 53 47 46 20 | 20 5a 38 30 55 00 06 00 |.Z3MSGF | Z80U...|
|000001f0| 97 dd 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000200| 00 5a 33 4d 53 47 47 20 | 20 5a 38 30 5b 00 06 00 |.Z3MSGG | Z80[...|
|00000210| 00 99 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000220| 00 5a 33 4d 53 47 48 20 | 20 5a 38 30 61 00 06 00 |.Z3MSGH | Z80a...|
|00000230| a0 01 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000240| 00 5a 33 50 43 4c 20 20 | 20 5a 38 30 67 00 13 00 |.Z3PCL | Z80g...|
|00000250| 4f cf 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |O.......|........|
|00000260| 00 5a 33 50 43 52 54 20 | 20 5a 38 30 7a 00 06 00 |.Z3PCRT | Z80z...|
|00000270| 34 06 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |4.......|........|
|00000280| 00 5a 33 50 44 55 4f 4b | 20 5a 38 30 80 00 04 00 |.Z3PDUOK| Z80....|
|00000290| 28 23 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |(#......|........|
|000002a0| 00 5a 33 50 46 49 4e 44 | 20 5a 38 30 84 00 21 00 |.Z3PFIND| Z80..!.|
|000002b0| 60 25 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |`%......|........|
|000002c0| 00 5a 33 50 46 4e 58 20 | 20 5a 38 30 a5 00 09 00 |.Z3PFNX | Z80....|
|000002d0| 14 f9 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002e0| 00 5a 33 50 4d 44 49 53 | 4b 5a 38 30 ae 00 04 00 |.Z3PMDIS|KZ80....|
|000002f0| 48 a5 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |H.......|........|
|00000300| 00 5a 33 50 4d 55 53 45 | 52 5a 38 30 b2 00 04 00 |.Z3PMUSE|RZ80....|
|00000310| ff 4c 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.L......|........|
|00000320| 00 5a 33 50 50 52 54 20 | 20 5a 38 30 b6 00 06 00 |.Z3PPRT | Z80....|
|00000330| 96 68 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.h......|........|
|00000340| 00 5a 33 50 51 55 49 45 | 54 5a 38 30 bc 00 04 00 |.Z3PQUIE|TZ80....|
|00000350| ee fb 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000360| 00 5a 33 50 52 47 4c 44 | 20 5a 38 30 c0 00 14 00 |.Z3PRGLD| Z80....|
|00000370| f2 b1 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000380| 00 5a 33 50 52 53 31 20 | 20 5a 38 30 d4 00 70 00 |.Z3PRS1 | Z80..p.|
|00000390| a9 5a 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.Z......|........|
|000003a0| 00 5a 33 50 52 53 32 20 | 20 5a 38 30 44 01 52 00 |.Z3PRS2 | Z80D.R.|
|000003b0| 8f 07 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003c0| 00 5a 33 50 52 53 33 20 | 20 5a 38 30 96 01 33 00 |.Z3PRS3 | Z80..3.|
|000003d0| d5 a0 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003e0| 00 5a 33 50 53 50 45 45 | 44 5a 38 30 c9 01 04 00 |.Z3PSPEE|DZ80....|
|000003f0| c5 98 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000400| 00 5a 33 50 57 48 4c 20 | 20 5a 38 30 cd 01 05 00 |.Z3PWHL | Z80....|
|00000410| 01 91 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000420| 00 5a 33 50 5a 4e 43 20 | 20 5a 38 30 d2 01 08 00 |.Z3PZNC | Z80....|
|00000430| e0 af 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000440| 00 5a 33 50 5a 52 20 20 | 20 5a 38 30 da 01 07 00 |.Z3PZR | Z80....|
|00000450| 4d 26 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |M&......|........|
|00000460| 00 5a 33 51 43 4f 55 54 | 20 5a 38 30 e1 01 04 00 |.Z3QCOUT| Z80....|
|00000470| cf 50 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.P......|........|
|00000480| 00 5a 33 51 43 52 4c 46 | 20 5a 38 30 e5 01 04 00 |.Z3QCRLF| Z80....|
|00000490| 14 65 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.e......|........|
|000004a0| 00 5a 33 51 4e 44 52 20 | 20 5a 38 30 e9 01 12 00 |.Z3QNDR | Z80....|
|000004b0| 91 c2 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000004c0| 00 5a 33 51 4f 55 54 20 | 20 5a 38 30 fb 01 04 00 |.Z3QOUT | Z80....|
|000004d0| a9 81 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000004e0| 00 5a 33 51 50 52 49 4e | 54 5a 38 30 ff 01 06 00 |.Z3QPRIN|TZ80....|
|000004f0| b5 33 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.3......|........|
|00000500| 00 5a 33 51 50 53 54 52 | 20 5a 38 30 05 02 04 00 |.Z3QPSTR| Z80....|
|00000510| 63 d8 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |c.......|........|
|00000520| 00 5a 33 52 4f 4f 54 20 | 20 5a 38 30 09 02 08 00 |.Z3ROOT | Z80....|
|00000530| e6 f5 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000540| 00 5a 33 53 48 45 4d 50 | 54 5a 38 30 11 02 04 00 |.Z3SHEMP|TZ80....|
|00000550| f1 a4 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000560| 00 5a 33 53 48 46 55 4c | 4c 5a 38 30 15 02 08 00 |.Z3SHFUL|LZ80....|
|00000570| 89 49 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.I......|........|
|00000580| 00 5a 33 53 48 50 4f 50 | 20 5a 38 30 1d 02 0d 00 |.Z3SHPOP| Z80....|
|00000590| cb 1e 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000005a0| 00 5a 33 53 48 50 55 53 | 48 5a 38 30 2a 02 16 00 |.Z3SHPUS|HZ80*...|
|000005b0| a7 0c 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000005c0| 00 5a 33 53 4e 44 52 20 | 20 5a 38 30 40 02 14 00 |.Z3SNDR | Z80@...|
|000005d0| 7f ce 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000005e0| 00 5a 33 57 31 20 20 20 | 20 5a 38 30 54 02 07 00 |.Z3W1 | Z80T...|
|000005f0| b3 c2 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000600| 00 5a 33 57 32 20 20 20 | 20 5a 38 30 5b 02 06 00 |.Z3W2 | Z80[...|
|00000610| 2f fb 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |/.......|........|
|00000620| 00 5a 33 57 33 20 20 20 | 20 5a 38 30 61 02 07 00 |.Z3W3 | Z80a...|
|00000630| af c5 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000640| ff 20 20 20 20 20 20 20 | 20 20 20 20 00 00 00 00 |. | ....|
|00000650| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000660| ff 20 20 20 20 20 20 20 | 20 20 20 20 00 00 00 00 |. | ....|
|00000670| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000680| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00000690| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 31 0d |e Name: | Z3MSG1.|
|000006a0| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|000006b0| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|000006c0| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|000006d0| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|000006e0| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|000006f0| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00000700| 69 63 09 67 65 74 65 72 | 31 0d 0a 0d 0a 09 65 78 |ic.geter|1.....ex|
|00000710| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|00000720| 09 47 45 54 45 52 31 20 | 72 65 74 75 72 6e 73 20 |.GETER1 |returns |
|00000730| 74 68 65 20 65 72 72 6f | 72 20 66 6c 61 67 20 6d |the erro|r flag m|
|00000740| 65 73 73 61 67 65 20 69 | 6e 20 41 2e 20 20 5a 65 |essage i|n A. Ze|
|00000750| 72 6f 20 46 6c 61 67 20 | 69 73 20 73 65 74 0d 0a |ro Flag |is set..|
|00000760| 3b 20 61 63 63 6f 72 64 | 69 6e 67 6c 79 2e 0d 0a |; accord|ingly...|
|00000770| 3b 0d 0a 67 65 74 65 72 | 31 3a 0d 0a 09 70 75 73 |;..geter|1:...pus|
|00000780| 68 09 68 6c 09 09 3b 73 | 61 76 65 20 48 4c 0d 0a |h.hl..;s|ave HL..|
|00000790| 09 63 61 6c 6c 09 67 65 | 74 6d 73 67 09 09 3b 67 |.call.ge|tmsg..;g|
|000007a0| 65 74 20 70 74 72 20 74 | 6f 20 6d 65 73 73 61 67 |et ptr t|o messag|
|000007b0| 65 73 0d 0a 09 6c 64 09 | 61 2c 28 68 6c 29 09 09 |es...ld.|a,(hl)..|
|000007c0| 3b 67 65 74 20 65 72 72 | 6f 72 20 66 6c 61 67 0d |;get err|or flag.|
|000007d0| 0a 09 70 6f 70 09 68 6c | 0d 0a 09 6f 72 09 61 09 |..pop.hl|...or.a.|
|000007e0| 09 3b 73 65 74 20 5a 20 | 66 6c 61 67 20 61 63 63 |.;set Z |flag acc|
|000007f0| 6f 72 64 69 6e 67 20 74 | 6f 20 65 72 72 6f 72 20 |ording t|o error |
|00000800| 66 6c 61 67 0d 0a 09 72 | 65 74 0d 0a 0d 0a 09 65 |flag...r|et.....e|
|00000810| 6e 64 0d 0a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |nd......|........|
|00000820| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000830| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000840| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000850| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000860| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000870| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000880| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00000890| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 32 0d |e Name: | Z3MSG2.|
|000008a0| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|000008b0| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|000008c0| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|000008d0| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|000008e0| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|000008f0| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00000900| 69 63 09 70 75 74 65 72 | 31 0d 0a 0d 0a 09 65 78 |ic.puter|1.....ex|
|00000910| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|00000920| 09 50 55 54 45 52 31 20 | 73 65 74 73 20 74 68 65 |.PUTER1 |sets the|
|00000930| 20 65 72 72 6f 72 20 66 | 6c 61 67 20 6d 65 73 73 | error f|lag mess|
|00000940| 61 67 65 20 69 6e 20 41 | 2e 20 20 4e 6f 20 72 65 |age in A|. No re|
|00000950| 67 69 73 74 65 72 73 20 | 61 72 65 20 61 66 66 65 |gisters |are affe|
|00000960| 63 74 65 64 2e 0d 0a 3b | 0d 0a 70 75 74 65 72 31 |cted...;|..puter1|
|00000970| 3a 0d 0a 09 70 75 73 68 | 09 68 6c 09 09 3b 73 61 |:...push|.hl..;sa|
|00000980| 76 65 20 48 4c 0d 0a 09 | 70 75 73 68 09 61 66 09 |ve HL...|push.af.|
|00000990| 09 3b 73 61 76 65 20 50 | 53 57 0d 0a 09 63 61 6c |.;save P|SW...cal|
|000009a0| 6c 09 67 65 74 6d 73 67 | 09 09 3b 67 65 74 20 70 |l.getmsg|..;get p|
|000009b0| 74 72 20 74 6f 20 6d 65 | 73 73 61 67 65 73 0d 0a |tr to me|ssages..|
|000009c0| 09 70 6f 70 09 61 66 09 | 09 3b 67 65 74 20 50 53 |.pop.af.|.;get PS|
|000009d0| 57 0d 0a 09 6c 64 09 28 | 68 6c 29 2c 61 09 09 3b |W...ld.(|hl),a..;|
|000009e0| 73 74 6f 72 65 20 6d 65 | 73 73 61 67 65 0d 0a 09 |store me|ssage...|
|000009f0| 70 6f 70 09 68 6c 0d 0a | 09 72 65 74 0d 0a 0d 0a |pop.hl..|.ret....|
|00000a00| 09 65 6e 64 0d 0a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |.end....|........|
|00000a10| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000a20| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000a30| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000a40| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000a50| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000a60| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000a70| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000a80| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00000a90| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 33 0d |e Name: | Z3MSG3.|
|00000aa0| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|00000ab0| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|00000ac0| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|00000ad0| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|00000ae0| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|00000af0| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00000b00| 69 63 09 67 65 74 65 72 | 32 0d 0a 0d 0a 09 65 78 |ic.geter|2.....ex|
|00000b10| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|00000b20| 09 47 45 54 45 52 32 20 | 72 65 74 75 72 6e 73 20 |.GETER2 |returns |
|00000b30| 74 68 65 20 65 72 72 6f | 72 20 63 6f 64 65 20 6d |the erro|r code m|
|00000b40| 65 73 73 61 67 65 20 69 | 6e 20 41 2e 20 20 41 3d |essage i|n A. A=|
|00000b50| 30 20 61 6e 64 20 5a 65 | 72 6f 20 46 6c 61 67 20 |0 and Ze|ro Flag |
|00000b60| 53 65 74 0d 0a 3b 20 69 | 66 20 4e 6f 20 45 72 72 |Set..; i|f No Err|
|00000b70| 6f 72 2e 0d 0a 3b 0d 0a | 67 65 74 65 72 32 3a 0d |or...;..|geter2:.|
|00000b80| 0a 09 70 75 73 68 09 68 | 6c 09 09 3b 73 61 76 65 |..push.h|l..;save|
|00000b90| 20 48 4c 0d 0a 09 70 75 | 73 68 09 64 65 09 09 3b | HL...pu|sh.de..;|
|00000ba0| 73 61 76 65 20 44 45 0d | 0a 09 63 61 6c 6c 09 67 |save DE.|..call.g|
|00000bb0| 65 74 6d 73 67 09 09 3b | 67 65 74 20 70 74 72 20 |etmsg..;|get ptr |
|00000bc0| 74 6f 20 6d 65 73 73 61 | 67 65 73 0d 0a 09 6c 64 |to messa|ges...ld|
|00000bd0| 09 64 65 2c 36 09 09 3b | 6f 66 66 73 65 74 20 74 |.de,6..;|offset t|
|00000be0| 6f 20 63 6f 64 65 0d 0a | 09 61 64 64 09 68 6c 2c |o code..|.add.hl,|
|00000bf0| 64 65 0d 0a 09 6c 64 09 | 61 2c 28 68 6c 29 09 09 |de...ld.|a,(hl)..|
|00000c00| 3b 67 65 74 20 65 72 72 | 6f 72 20 66 6c 61 67 0d |;get err|or flag.|
|00000c10| 0a 09 70 6f 70 09 64 65 | 09 09 3b 67 65 74 20 44 |..pop.de|..;get D|
|00000c20| 45 0d 0a 09 70 6f 70 09 | 68 6c 09 09 3b 67 65 74 |E...pop.|hl..;get|
|00000c30| 20 48 4c 0d 0a 09 6f 72 | 09 61 09 09 3b 73 65 74 | HL...or|.a..;set|
|00000c40| 20 66 6c 61 67 20 61 63 | 63 6f 72 64 69 6e 67 6c | flag ac|cordingl|
|00000c50| 79 0d 0a 09 72 65 74 0d | 0a 0d 0a 09 65 6e 64 0d |y...ret.|....end.|
|00000c60| 0a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000c70| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000c80| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00000c90| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 34 0d |e Name: | Z3MSG4.|
|00000ca0| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|00000cb0| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|00000cc0| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|00000cd0| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|00000ce0| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|00000cf0| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00000d00| 69 63 09 70 75 74 65 72 | 32 0d 0a 0d 0a 09 65 78 |ic.puter|2.....ex|
|00000d10| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|00000d20| 09 50 55 54 45 52 32 20 | 73 65 74 73 20 74 68 65 |.PUTER2 |sets the|
|00000d30| 20 65 72 72 6f 72 20 63 | 6f 64 65 20 6d 65 73 73 | error c|ode mess|
|00000d40| 61 67 65 20 69 6e 20 41 | 2e 20 20 4e 6f 20 72 65 |age in A|. No re|
|00000d50| 67 69 73 74 65 72 73 20 | 61 72 65 20 61 66 66 65 |gisters |are affe|
|00000d60| 63 74 65 64 2e 0d 0a 3b | 0d 0a 70 75 74 65 72 32 |cted...;|..puter2|
|00000d70| 3a 0d 0a 09 70 75 73 68 | 09 68 6c 09 09 3b 73 61 |:...push|.hl..;sa|
|00000d80| 76 65 20 48 4c 0d 0a 09 | 70 75 73 68 09 64 65 09 |ve HL...|push.de.|
|00000d90| 09 3b 73 61 76 65 20 44 | 45 0d 0a 09 70 75 73 68 |.;save D|E...push|
|00000da0| 09 61 66 09 09 3b 73 61 | 76 65 20 50 53 57 0d 0a |.af..;sa|ve PSW..|
|00000db0| 09 63 61 6c 6c 09 67 65 | 74 6d 73 67 09 09 3b 67 |.call.ge|tmsg..;g|
|00000dc0| 65 74 20 70 74 72 20 74 | 6f 20 6d 65 73 73 61 67 |et ptr t|o messag|
|00000dd0| 65 73 0d 0a 09 6c 64 09 | 64 65 2c 36 09 09 3b 6f |es...ld.|de,6..;o|
|00000de0| 66 66 73 65 74 20 74 6f | 20 63 6f 64 65 0d 0a 09 |ffset to| code...|
|00000df0| 61 64 64 09 68 6c 2c 64 | 65 0d 0a 09 70 6f 70 09 |add.hl,d|e...pop.|
|00000e00| 61 66 09 09 3b 67 65 74 | 20 50 53 57 0d 0a 09 6c |af..;get| PSW...l|
|00000e10| 64 09 28 68 6c 29 2c 61 | 09 09 3b 73 74 6f 72 65 |d.(hl),a|..;store|
|00000e20| 20 6d 65 73 73 61 67 65 | 0d 0a 09 70 6f 70 09 64 | message|...pop.d|
|00000e30| 65 0d 0a 09 70 6f 70 09 | 68 6c 0d 0a 09 72 65 74 |e...pop.|hl...ret|
|00000e40| 0d 0a 0d 0a 09 65 6e 64 | 0d 0a 1a 1a 1a 1a 1a 1a |.....end|........|
|00000e50| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000e60| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000e70| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00000e80| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00000e90| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 35 0d |e Name: | Z3MSG5.|
|00000ea0| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|00000eb0| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|00000ec0| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|00000ed0| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|00000ee0| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|00000ef0| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00000f00| 69 63 09 67 65 74 63 73 | 74 0d 0a 0d 0a 09 65 78 |ic.getcs|t.....ex|
|00000f10| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|00000f20| 09 47 45 54 43 53 54 20 | 72 65 74 75 72 6e 73 20 |.GETCST |returns |
|00000f30| 74 68 65 20 5a 43 50 52 | 33 20 63 6f 6d 6d 61 6e |the ZCPR|3 comman|
|00000f40| 64 20 73 74 61 74 75 73 | 20 6d 65 73 73 61 67 65 |d status| message|
|00000f50| 20 69 6e 20 41 2e 20 20 | 41 3d 30 20 61 6e 64 20 | in A. |A=0 and |
|00000f60| 5a 65 72 6f 0d 0a 3b 20 | 46 6c 61 67 20 53 65 74 |Zero..; |Flag Set|
|00000f70| 20 69 66 20 63 6f 6d 6d | 61 6e 64 20 73 74 61 74 | if comm|and stat|
|00000f80| 75 73 20 69 73 20 6e 6f | 72 6d 61 6c 2e 0d 0a 3b |us is no|rmal...;|
|00000f90| 0d 0a 67 65 74 63 73 74 | 3a 0d 0a 09 70 75 73 68 |..getcst|:...push|
|00000fa0| 09 68 6c 09 09 3b 73 61 | 76 65 20 48 4c 0d 0a 09 |.hl..;sa|ve HL...|
|00000fb0| 63 61 6c 6c 09 67 65 74 | 6d 73 67 09 09 3b 67 65 |call.get|msg..;ge|
|00000fc0| 74 20 70 74 72 20 74 6f | 20 6d 65 73 73 61 67 65 |t ptr to| message|
|00000fd0| 73 0d 0a 09 69 6e 63 09 | 68 6c 09 09 3b 6f 66 66 |s...inc.|hl..;off|
|00000fe0| 73 65 74 20 6f 66 20 33 | 0d 0a 09 69 6e 63 09 68 |set of 3|...inc.h|
|00000ff0| 6c 0d 0a 09 69 6e 63 09 | 68 6c 0d 0a 09 6c 64 09 |l...inc.|hl...ld.|
|00001000| 61 2c 28 68 6c 29 09 09 | 3b 67 65 74 20 63 6f 6d |a,(hl)..|;get com|
|00001010| 6d 61 6e 64 20 73 74 61 | 74 75 73 20 6d 65 73 73 |mand sta|tus mess|
|00001020| 61 67 65 0d 0a 09 70 6f | 70 09 68 6c 0d 0a 09 6f |age...po|p.hl...o|
|00001030| 72 09 61 09 09 3b 73 65 | 74 20 7a 65 72 6f 20 66 |r.a..;se|t zero f|
|00001040| 6c 61 67 20 61 63 63 6f | 72 64 69 6e 67 6c 79 0d |lag acco|rdingly.|
|00001050| 0a 09 72 65 74 0d 0a 0d | 0a 09 65 6e 64 0d 0a 1a |..ret...|..end...|
|00001060| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001070| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001080| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00001090| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 36 0d |e Name: | Z3MSG6.|
|000010a0| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|000010b0| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|000010c0| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|000010d0| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|000010e0| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|000010f0| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00001100| 69 63 09 71 73 68 65 6c | 6c 0d 0a 0d 0a 09 65 78 |ic.qshel|l.....ex|
|00001110| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|00001120| 09 51 53 48 45 4c 4c 20 | 72 65 74 75 72 6e 73 20 |.QSHELL |returns |
|00001130| 74 68 65 20 5a 43 50 52 | 33 20 63 6f 6d 6d 61 6e |the ZCPR|3 comman|
|00001140| 64 20 73 74 61 74 75 73 | 20 6d 65 73 73 61 67 65 |d status| message|
|00001150| 20 69 6e 20 41 20 61 6e | 64 20 74 68 65 0d 0a 3b | in A an|d the..;|
|00001160| 20 5a 65 72 6f 20 46 6c | 61 67 20 53 65 74 20 28 | Zero Fl|ag Set (|
|00001170| 5a 29 20 69 66 20 74 68 | 69 73 20 6d 65 73 73 61 |Z) if th|is messa|
|00001180| 67 65 20 69 6e 64 69 63 | 61 74 65 73 20 74 68 61 |ge indic|ates tha|
|00001190| 74 20 61 20 53 68 65 6c | 6c 20 68 61 73 20 62 65 |t a Shel|l has be|
|000011a0| 65 6e 0d 0a 3b 20 69 6e | 76 6f 6b 65 64 2e 20 20 |en..; in|voked. |
|000011b0| 4f 6e 6c 79 20 74 68 65 | 20 50 53 57 20 69 73 20 |Only the| PSW is |
|000011c0| 61 66 66 65 63 74 65 64 | 2e 0d 0a 3b 0d 0a 71 73 |affected|...;..qs|
|000011d0| 68 65 6c 6c 3a 0d 0a 09 | 70 75 73 68 09 68 6c 09 |hell:...|push.hl.|
|000011e0| 09 3b 73 61 76 65 20 48 | 4c 0d 0a 09 63 61 6c 6c |.;save H|L...call|
|000011f0| 09 67 65 74 6d 73 67 09 | 09 3b 67 65 74 20 70 74 |.getmsg.|.;get pt|
|00001200| 72 20 74 6f 20 6d 65 73 | 73 61 67 65 73 0d 0a 09 |r to mes|sages...|
|00001210| 69 6e 63 09 68 6c 09 09 | 3b 6f 66 66 73 65 74 20 |inc.hl..|;offset |
|00001220| 6f 66 20 33 0d 0a 09 69 | 6e 63 09 68 6c 0d 0a 09 |of 3...i|nc.hl...|
|00001230| 69 6e 63 09 68 6c 0d 0a | 09 6c 64 09 61 2c 28 68 |inc.hl..|.ld.a,(h|
|00001240| 6c 29 09 09 3b 67 65 74 | 20 63 6f 6d 6d 61 6e 64 |l)..;get| command|
|00001250| 20 73 74 61 74 75 73 20 | 6d 65 73 73 61 67 65 0d | status |message.|
|00001260| 0a 09 70 6f 70 09 68 6c | 0d 0a 09 63 70 09 31 09 |..pop.hl|...cp.1.|
|00001270| 09 3b 73 65 74 20 5a 20 | 66 6c 61 67 20 69 66 20 |.;set Z |flag if |
|00001280| 73 68 65 6c 6c 0d 0a 09 | 72 65 74 0d 0a 0d 0a 09 |shell...|ret.....|
|00001290| 65 6e 64 0d 0a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |end.....|........|
|000012a0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000012b0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000012c0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000012d0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000012e0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000012f0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001300| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00001310| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 37 0d |e Name: | Z3MSG7.|
|00001320| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|00001330| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|00001340| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|00001350| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|00001360| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|00001370| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00001380| 69 63 09 71 65 72 72 6f | 72 0d 0a 0d 0a 09 65 78 |ic.qerro|r.....ex|
|00001390| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|000013a0| 09 51 45 52 52 4f 52 20 | 72 65 74 75 72 6e 73 20 |.QERROR |returns |
|000013b0| 74 68 65 20 5a 43 50 52 | 33 20 63 6f 6d 6d 61 6e |the ZCPR|3 comman|
|000013c0| 64 20 73 74 61 74 75 73 | 20 6d 65 73 73 61 67 65 |d status| message|
|000013d0| 20 69 6e 20 41 20 61 6e | 64 20 74 68 65 0d 0a 3b | in A an|d the..;|
|000013e0| 20 5a 65 72 6f 20 46 6c | 61 67 20 53 65 74 20 28 | Zero Fl|ag Set (|
|000013f0| 5a 29 20 69 66 20 74 68 | 69 73 20 6d 65 73 73 61 |Z) if th|is messa|
|00001400| 67 65 20 69 6e 64 69 63 | 61 74 65 73 20 74 68 61 |ge indic|ates tha|
|00001410| 74 20 61 6e 20 45 72 72 | 6f 72 20 68 61 73 20 62 |t an Err|or has b|
|00001420| 65 65 6e 0d 0a 3b 20 65 | 6e 63 6f 75 6e 74 65 72 |een..; e|ncounter|
|00001430| 65 64 2e 20 20 49 66 20 | 73 75 63 68 20 69 73 20 |ed. If |such is |
|00001440| 74 68 65 20 63 61 73 65 | 2c 20 48 4c 20 63 6f 6e |the case|, HL con|
|00001450| 74 61 69 6e 73 20 74 68 | 65 20 61 64 64 72 65 73 |tains th|e addres|
|00001460| 73 20 6f 66 20 74 68 65 | 0d 0a 3b 20 66 69 72 73 |s of the|..; firs|
|00001470| 74 20 63 68 61 72 61 63 | 74 65 72 20 6f 66 20 74 |t charac|ter of t|
|00001480| 68 65 20 65 72 72 6f 72 | 20 6c 69 6e 65 2e 20 20 |he error| line. |
|00001490| 54 68 65 20 50 53 57 20 | 61 6e 64 20 48 4c 20 61 |The PSW |and HL a|
|000014a0| 72 65 20 61 66 66 65 63 | 74 65 64 2e 0d 0a 3b 0d |re affec|ted...;.|
|000014b0| 0a 71 65 72 72 6f 72 3a | 0d 0a 09 63 61 6c 6c 09 |.qerror:|...call.|
|000014c0| 67 65 74 6d 73 67 09 09 | 3b 67 65 74 20 70 74 72 |getmsg..|;get ptr|
|000014d0| 20 74 6f 20 6d 65 73 73 | 61 67 65 73 0d 0a 09 69 | to mess|ages...i|
|000014e0| 6e 63 09 68 6c 09 09 3b | 6f 66 66 73 65 74 20 6f |nc.hl..;|offset o|
|000014f0| 66 20 33 0d 0a 09 69 6e | 63 09 68 6c 0d 0a 09 69 |f 3...in|c.hl...i|
|00001500| 6e 63 09 68 6c 0d 0a 09 | 6c 64 09 61 2c 28 68 6c |nc.hl...|ld.a,(hl|
|00001510| 29 09 09 3b 67 65 74 20 | 63 6f 6d 6d 61 6e 64 20 |)..;get |command |
|00001520| 73 74 61 74 75 73 20 6d | 65 73 73 61 67 65 0d 0a |status m|essage..|
|00001530| 09 70 75 73 68 09 61 66 | 0d 0a 09 69 6e 63 09 68 |.push.af|...inc.h|
|00001540| 6c 09 09 3b 70 74 20 74 | 6f 20 65 72 72 6f 72 20 |l..;pt t|o error |
|00001550| 61 64 64 72 65 73 73 0d | 0a 09 6c 64 09 61 2c 28 |address.|..ld.a,(|
|00001560| 68 6c 29 0d 0a 09 69 6e | 63 09 68 6c 0d 0a 09 6c |hl)...in|c.hl...l|
|00001570| 64 09 68 2c 28 68 6c 29 | 0d 0a 09 6c 64 09 6c 2c |d.h,(hl)|...ld.l,|
|00001580| 61 09 09 3b 48 4c 20 63 | 6f 6e 74 61 69 6e 73 20 |a..;HL c|ontains |
|00001590| 65 72 72 6f 72 20 61 64 | 64 72 65 73 73 0d 0a 09 |error ad|dress...|
|000015a0| 70 6f 70 09 61 66 0d 0a | 09 63 70 09 32 09 09 3b |pop.af..|.cp.2..;|
|000015b0| 73 65 74 20 5a 20 66 6c | 61 67 20 69 66 20 65 72 |set Z fl|ag if er|
|000015c0| 72 6f 72 0d 0a 09 72 65 | 74 0d 0a 0d 0a 09 65 6e |ror...re|t.....en|
|000015d0| 64 0d 0a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |d.......|........|
|000015e0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000015f0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001600| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00001610| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 38 0d |e Name: | Z3MSG8.|
|00001620| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|00001630| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|00001640| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|00001650| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|00001660| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|00001670| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00001680| 69 63 09 67 65 74 7a 65 | 78 0d 0a 0d 0a 09 65 78 |ic.getze|x.....ex|
|00001690| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|000016a0| 09 47 45 54 5a 45 58 20 | 72 65 74 75 72 6e 73 20 |.GETZEX |returns |
|000016b0| 74 68 65 20 5a 45 58 20 | 6d 65 73 73 61 67 65 20 |the ZEX |message |
|000016c0| 62 79 74 65 20 69 6e 20 | 41 2e 20 20 41 3d 30 20 |byte in |A. A=0 |
|000016d0| 61 6e 64 20 5a 65 72 6f | 20 46 6c 61 67 20 53 65 |and Zero| Flag Se|
|000016e0| 74 0d 0a 3b 20 69 66 20 | 5a 45 58 20 69 73 20 72 |t..; if |ZEX is r|
|000016f0| 75 6e 6e 69 6e 67 20 6e | 6f 72 6d 61 6c 6c 79 20 |unning n|ormally |
|00001700| 28 69 6e 74 65 72 63 65 | 70 74 69 6e 67 20 63 68 |(interce|pting ch|
|00001710| 61 72 73 29 2e 0d 0a 3b | 0d 0a 67 65 74 7a 65 78 |ars)...;|..getzex|
|00001720| 3a 0d 0a 09 70 75 73 68 | 09 68 6c 09 09 3b 73 61 |:...push|.hl..;sa|
|00001730| 76 65 20 48 4c 0d 0a 09 | 70 75 73 68 09 64 65 09 |ve HL...|push.de.|
|00001740| 09 3b 73 61 76 65 20 44 | 45 0d 0a 09 63 61 6c 6c |.;save D|E...call|
|00001750| 09 67 65 74 6d 73 67 09 | 09 3b 67 65 74 20 70 74 |.getmsg.|.;get pt|
|00001760| 72 20 74 6f 20 6d 65 73 | 73 61 67 65 73 0d 0a 09 |r to mes|sages...|
|00001770| 6c 64 09 64 65 2c 37 09 | 09 3b 6f 66 66 73 65 74 |ld.de,7.|.;offset|
|00001780| 20 74 6f 20 6d 65 73 73 | 61 67 65 20 62 79 74 65 | to mess|age byte|
|00001790| 0d 0a 09 61 64 64 09 68 | 6c 2c 64 65 0d 0a 09 6c |...add.h|l,de...l|
|000017a0| 64 09 61 2c 28 68 6c 29 | 09 09 3b 67 65 74 20 6d |d.a,(hl)|..;get m|
|000017b0| 65 73 73 61 67 65 20 62 | 79 74 65 0d 0a 09 70 6f |essage b|yte...po|
|000017c0| 70 09 64 65 09 09 3b 67 | 65 74 20 44 45 0d 0a 09 |p.de..;g|et DE...|
|000017d0| 70 6f 70 09 68 6c 09 09 | 3b 67 65 74 20 48 4c 0d |pop.hl..|;get HL.|
|000017e0| 0a 09 6f 72 09 61 09 09 | 3b 73 65 74 20 66 6c 61 |..or.a..|;set fla|
|000017f0| 67 20 61 63 63 6f 72 64 | 69 6e 67 6c 79 0d 0a 09 |g accord|ingly...|
|00001800| 72 65 74 0d 0a 0d 0a 09 | 65 6e 64 0d 0a 1a 1a 1a |ret.....|end.....|
|00001810| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001820| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001830| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001840| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001850| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001860| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001870| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001880| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00001890| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 39 0d |e Name: | Z3MSG9.|
|000018a0| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|000018b0| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|000018c0| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|000018d0| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|000018e0| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|000018f0| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00001900| 69 63 09 73 74 6f 70 7a | 65 78 2c 73 74 72 74 7a |ic.stopz|ex,strtz|
|00001910| 65 78 2c 70 75 74 7a 65 | 78 0d 0a 0d 0a 09 65 78 |ex,putze|x.....ex|
|00001920| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|00001930| 09 53 54 4f 50 5a 45 58 | 20 73 75 73 70 65 6e 64 |.STOPZEX| suspend|
|00001940| 73 20 5a 45 58 20 70 72 | 6f 63 65 73 73 69 6e 67 |s ZEX pr|ocessing|
|00001950| 2e 20 20 4e 6f 20 72 65 | 67 69 73 74 65 72 73 20 |. No re|gisters |
|00001960| 61 72 65 20 61 66 66 65 | 63 74 65 64 2e 0d 0a 3b |are affe|cted...;|
|00001970| 0d 0a 73 74 6f 70 7a 65 | 78 3a 0d 0a 09 70 75 73 |..stopze|x:...pus|
|00001980| 68 09 61 66 0d 0a 09 6c | 64 09 61 2c 32 09 09 3b |h.af...l|d.a,2..;|
|00001990| 73 75 73 70 65 6e 64 20 | 5a 45 58 0d 0a 09 63 61 |suspend |ZEX...ca|
|000019a0| 6c 6c 09 70 75 74 7a 65 | 78 0d 0a 09 70 6f 70 09 |ll.putze|x...pop.|
|000019b0| 61 66 0d 0a 09 72 65 74 | 0d 0a 0d 0a 3b 0d 0a 3b |af...ret|....;..;|
|000019c0| 09 53 54 52 54 5a 45 58 | 20 72 65 73 75 6d 65 73 |.STRTZEX| resumes|
|000019d0| 20 5a 45 58 20 70 72 6f | 63 65 73 73 69 6e 67 2e | ZEX pro|cessing.|
|000019e0| 20 20 4e 6f 20 72 65 67 | 69 73 74 65 72 73 20 61 | No reg|isters a|
|000019f0| 72 65 20 61 66 66 65 63 | 74 65 64 2e 0d 0a 3b 0d |re affec|ted...;.|
|00001a00| 0a 73 74 72 74 7a 65 78 | 3a 0d 0a 09 70 75 73 68 |.strtzex|:...push|
|00001a10| 09 61 66 0d 0a 09 78 6f | 72 09 61 09 09 3b 41 3d |.af...xo|r.a..;A=|
|00001a20| 30 20 6d 65 61 6e 73 20 | 74 6f 20 72 65 73 75 6d |0 means |to resum|
|00001a30| 65 20 5a 45 58 20 70 72 | 6f 63 65 73 73 69 6e 67 |e ZEX pr|ocessing|
|00001a40| 0d 0a 09 63 61 6c 6c 09 | 70 75 74 7a 65 78 0d 0a |...call.|putzex..|
|00001a50| 09 70 6f 70 09 61 66 0d | 0a 09 72 65 74 0d 0a 0d |.pop.af.|..ret...|
|00001a60| 0a 3b 0d 0a 3b 09 50 55 | 54 5a 45 58 20 73 65 74 |.;..;.PU|TZEX set|
|00001a70| 73 20 74 68 65 20 5a 45 | 58 20 6d 65 73 73 61 67 |s the ZE|X messag|
|00001a80| 65 20 62 79 74 65 20 69 | 6e 20 41 2e 20 20 4e 6f |e byte i|n A. No|
|00001a90| 20 72 65 67 69 73 74 65 | 72 73 20 61 72 65 20 61 | registe|rs are a|
|00001aa0| 66 66 65 63 74 65 64 2e | 0d 0a 3b 0d 0a 70 75 74 |ffected.|..;..put|
|00001ab0| 7a 65 78 3a 0d 0a 09 70 | 75 73 68 09 68 6c 09 09 |zex:...p|ush.hl..|
|00001ac0| 3b 73 61 76 65 20 48 4c | 0d 0a 09 70 75 73 68 09 |;save HL|...push.|
|00001ad0| 64 65 09 09 3b 73 61 76 | 65 20 44 45 0d 0a 09 70 |de..;sav|e DE...p|
|00001ae0| 75 73 68 09 61 66 09 09 | 3b 73 61 76 65 20 50 53 |ush.af..|;save PS|
|00001af0| 57 0d 0a 09 63 61 6c 6c | 09 67 65 74 6d 73 67 09 |W...call|.getmsg.|
|00001b00| 09 3b 67 65 74 20 70 74 | 72 20 74 6f 20 6d 65 73 |.;get pt|r to mes|
|00001b10| 73 61 67 65 73 0d 0a 09 | 6c 64 09 64 65 2c 37 09 |sages...|ld.de,7.|
|00001b20| 09 3b 6f 66 66 73 65 74 | 20 74 6f 20 6d 65 73 73 |.;offset| to mess|
|00001b30| 61 67 65 20 62 79 74 65 | 0d 0a 09 61 64 64 09 68 |age byte|...add.h|
|00001b40| 6c 2c 64 65 0d 0a 09 70 | 6f 70 09 61 66 09 09 3b |l,de...p|op.af..;|
|00001b50| 67 65 74 20 50 53 57 0d | 0a 09 6c 64 09 28 68 6c |get PSW.|..ld.(hl|
|00001b60| 29 2c 61 09 09 3b 73 74 | 6f 72 65 20 6d 65 73 73 |),a..;st|ore mess|
|00001b70| 61 67 65 0d 0a 09 70 6f | 70 09 64 65 0d 0a 09 70 |age...po|p.de...p|
|00001b80| 6f 70 09 68 6c 0d 0a 09 | 72 65 74 0d 0a 0d 0a 09 |op.hl...|ret.....|
|00001b90| 65 6e 64 0d 0a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |end.....|........|
|00001ba0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001bb0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001bc0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001bd0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001be0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001bf0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001c00| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00001c10| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 41 0d |e Name: | Z3MSGA.|
|00001c20| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|00001c30| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|00001c40| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|00001c50| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|00001c60| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|00001c70| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00001c80| 69 63 09 67 65 74 65 72 | 63 0d 0a 0d 0a 09 65 78 |ic.geter|c.....ex|
|00001c90| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|00001ca0| 09 47 45 54 45 52 43 20 | 72 65 74 75 72 6e 73 20 |.GETERC |returns |
|00001cb0| 74 68 65 20 61 64 64 72 | 65 73 73 20 6f 66 20 74 |the addr|ess of t|
|00001cc0| 68 65 20 65 72 72 6f 72 | 20 63 6f 6d 6d 61 6e 64 |he error| command|
|00001cd0| 20 6c 69 6e 65 20 69 6e | 20 48 4c 20 61 6e 64 0d | line in| HL and.|
|00001ce0| 0a 3b 20 41 3d 30 20 61 | 6e 64 20 5a 65 72 6f 20 |.; A=0 a|nd Zero |
|00001cf0| 46 6c 61 67 20 53 65 74 | 20 69 66 20 6e 6f 20 65 |Flag Set| if no e|
|00001d00| 6e 74 72 79 20 69 6e 20 | 63 6f 6d 6d 61 6e 64 20 |ntry in |command |
|00001d10| 6c 69 6e 65 2e 20 20 48 | 4c 20 61 6e 64 20 50 53 |line. H|L and PS|
|00001d20| 57 20 61 66 66 65 63 74 | 65 64 2e 0d 0a 3b 0d 0a |W affect|ed...;..|
|00001d30| 67 65 74 65 72 63 3a 0d | 0a 09 70 75 73 68 09 64 |geterc:.|..push.d|
|00001d40| 65 09 09 3b 73 61 76 65 | 20 44 45 0d 0a 09 63 61 |e..;save| DE...ca|
|00001d50| 6c 6c 09 67 65 74 6d 73 | 67 09 09 3b 67 65 74 20 |ll.getms|g..;get |
|00001d60| 70 74 72 20 74 6f 20 6d | 65 73 73 61 67 65 73 0d |ptr to m|essages.|
|00001d70| 0a 09 6c 64 09 64 65 2c | 31 30 68 09 09 3b 6f 66 |..ld.de,|10h..;of|
|00001d80| 66 73 65 74 20 74 6f 20 | 62 75 66 66 65 72 0d 0a |fset to |buffer..|
|00001d90| 09 61 64 64 09 68 6c 2c | 64 65 0d 0a 09 6c 64 09 |.add.hl,|de...ld.|
|00001da0| 61 2c 28 68 6c 29 09 09 | 3b 67 65 74 20 66 69 72 |a,(hl)..|;get fir|
|00001db0| 73 74 20 63 68 61 72 0d | 0a 09 70 6f 70 09 64 65 |st char.|..pop.de|
|00001dc0| 09 09 3b 67 65 74 20 44 | 45 0d 0a 09 6f 72 09 61 |..;get D|E...or.a|
|00001dd0| 09 09 3b 73 65 74 20 66 | 6c 61 67 0d 0a 09 72 65 |..;set f|lag...re|
|00001de0| 74 0d 0a 0d 0a 09 65 6e | 64 0d 0a 1a 1a 1a 1a 1a |t.....en|d.......|
|00001df0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00001e00| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00001e10| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 42 0d |e Name: | Z3MSGB.|
|00001e20| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|00001e30| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|00001e40| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|00001e50| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|00001e60| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|00001e70| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00001e80| 69 63 09 70 75 74 65 72 | 63 0d 0a 0d 0a 09 65 78 |ic.puter|c.....ex|
|00001e90| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|00001ea0| 09 50 55 54 45 52 43 20 | 73 74 6f 72 65 73 20 74 |.PUTERC |stores t|
|00001eb0| 68 65 20 73 74 72 69 6e | 67 20 70 74 65 64 20 74 |he strin|g pted t|
|00001ec0| 6f 20 62 79 20 48 4c 20 | 69 6e 74 6f 20 74 68 65 |o by HL |into the|
|00001ed0| 20 65 72 72 6f 72 20 63 | 6f 6d 6d 61 6e 64 20 6c | error c|ommand l|
|00001ee0| 69 6e 65 0d 0a 3b 20 62 | 75 66 66 65 72 2e 20 20 |ine..; b|uffer. |
|00001ef0| 52 65 74 75 72 6e 20 77 | 69 74 68 20 41 3d 30 20 |Return w|ith A=0 |
|00001f00| 61 6e 64 20 5a 65 72 6f | 20 46 6c 61 67 20 53 65 |and Zero| Flag Se|
|00001f10| 74 20 28 5a 29 20 69 66 | 20 73 74 72 69 6e 67 20 |t (Z) if| string |
|00001f20| 28 69 6e 63 6c 20 65 6e | 64 69 6e 67 20 30 29 0d |(incl en|ding 0).|
|00001f30| 0a 3b 20 6c 6f 6e 67 65 | 72 20 74 68 61 6e 20 33 |.; longe|r than 3|
|00001f40| 32 20 62 79 74 65 73 2e | 20 20 41 66 66 65 63 74 |2 bytes.| Affect|
|00001f50| 20 6f 6e 6c 79 20 50 53 | 57 2e 0d 0a 3b 0d 0a 70 | only PS|W...;..p|
|00001f60| 75 74 65 72 63 3a 0d 0a | 09 70 75 73 68 09 68 6c |uterc:..|.push.hl|
|00001f70| 09 09 3b 73 61 76 65 20 | 48 4c 0d 0a 09 70 75 73 |..;save |HL...pus|
|00001f80| 68 09 64 65 09 09 3b 73 | 61 76 65 20 44 45 0d 0a |h.de..;s|ave DE..|
|00001f90| 09 70 75 73 68 09 68 6c | 09 09 3b 73 61 76 65 20 |.push.hl|..;save |
|00001fa0| 70 74 72 20 74 6f 20 73 | 74 72 69 6e 67 0d 0a 09 |ptr to s|tring...|
|00001fb0| 6c 64 09 62 2c 33 32 09 | 09 3b 63 68 65 63 6b 20 |ld.b,32.|.;check |
|00001fc0| 73 69 7a 65 0d 0a 70 75 | 74 31 3a 0d 0a 09 6c 64 |size..pu|t1:...ld|
|00001fd0| 09 61 2c 28 68 6c 29 09 | 09 3b 67 65 74 20 63 68 |.a,(hl).|.;get ch|
|00001fe0| 61 72 0d 0a 09 6f 72 09 | 61 09 09 3b 7a 65 72 6f |ar...or.|a..;zero|
|00001ff0| 20 3d 20 64 6f 6e 65 0d | 0a 09 6a 70 09 7a 2c 70 | = done.|..jp.z,p|
|00002000| 75 74 32 0d 0a 09 69 6e | 63 09 68 6c 09 09 3b 70 |ut2...in|c.hl..;p|
|00002010| 74 20 74 6f 20 6e 65 78 | 74 0d 0a 09 64 65 63 09 |t to nex|t...dec.|
|00002020| 62 09 09 3b 63 6f 75 6e | 74 20 64 6f 77 6e 0d 0a |b..;coun|t down..|
|00002030| 09 6a 70 09 6e 7a 2c 70 | 75 74 31 0d 0a 09 70 6f |.jp.nz,p|ut1...po|
|00002040| 70 09 68 6c 09 09 3b 63 | 6c 65 61 72 20 73 74 61 |p.hl..;c|lear sta|
|00002050| 63 6b 20 61 6e 64 20 72 | 65 74 75 72 6e 20 65 72 |ck and r|eturn er|
|00002060| 72 6f 72 20 63 6f 64 65 | 0d 0a 09 70 6f 70 09 64 |ror code|...pop.d|
|00002070| 65 0d 0a 09 70 6f 70 09 | 68 6c 0d 0a 09 78 6f 72 |e...pop.|hl...xor|
|00002080| 09 61 09 09 3b 72 65 74 | 75 72 6e 20 5a 0d 0a 09 |.a..;ret|urn Z...|
|00002090| 72 65 74 0d 0a 70 75 74 | 32 3a 0d 0a 09 63 61 6c |ret..put|2:...cal|
|000020a0| 6c 09 67 65 74 6d 73 67 | 09 09 3b 67 65 74 20 70 |l.getmsg|..;get p|
|000020b0| 74 72 20 74 6f 20 6d 65 | 73 73 61 67 65 73 0d 0a |tr to me|ssages..|
|000020c0| 09 6c 64 09 64 65 2c 31 | 30 68 09 09 3b 6f 66 66 |.ld.de,1|0h..;off|
|000020d0| 73 65 74 20 74 6f 20 63 | 6f 64 65 0d 0a 09 61 64 |set to c|ode...ad|
|000020e0| 64 09 68 6c 2c 64 65 0d | 0a 09 70 6f 70 09 64 65 |d.hl,de.|..pop.de|
|000020f0| 09 09 3b 67 65 74 20 70 | 74 72 20 74 6f 20 73 74 |..;get p|tr to st|
|00002100| 72 69 6e 67 0d 0a 70 75 | 74 33 3a 0d 0a 09 6c 64 |ring..pu|t3:...ld|
|00002110| 09 61 2c 28 64 65 29 09 | 09 3b 63 6f 70 79 20 73 |.a,(de).|.;copy s|
|00002120| 74 72 69 6e 67 20 69 6e | 74 6f 20 62 75 66 66 65 |tring in|to buffe|
|00002130| 72 0d 0a 09 6c 64 09 28 | 68 6c 29 2c 61 0d 0a 09 |r...ld.(|hl),a...|
|00002140| 69 6e 63 09 68 6c 09 09 | 3b 70 74 20 74 6f 20 6e |inc.hl..|;pt to n|
|00002150| 65 78 74 0d 0a 09 69 6e | 63 09 64 65 0d 0a 09 6f |ext...in|c.de...o|
|00002160| 72 09 61 09 09 3b 64 6f | 6e 65 3f 0d 0a 09 6a 70 |r.a..;do|ne?...jp|
|00002170| 09 6e 7a 2c 70 75 74 33 | 0d 0a 09 70 6f 70 09 64 |.nz,put3|...pop.d|
|00002180| 65 09 09 3b 72 65 73 74 | 6f 72 65 20 72 65 67 73 |e..;rest|ore regs|
|00002190| 0d 0a 09 70 6f 70 09 68 | 6c 0d 0a 09 78 6f 72 09 |...pop.h|l...xor.|
|000021a0| 61 09 09 3b 4f 4b 20 72 | 65 74 75 72 6e 0d 0a 09 |a..;OK r|eturn...|
|000021b0| 64 65 63 09 61 09 09 3b | 72 65 74 75 72 6e 20 4e |dec.a..;|return N|
|000021c0| 5a 0d 0a 09 72 65 74 0d | 0a 0d 0a 09 65 6e 64 0d |Z...ret.|....end.|
|000021d0| 0a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000021e0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000021f0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002200| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00002210| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 43 0d |e Name: | Z3MSGC.|
|00002220| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|00002230| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|00002240| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|00002250| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|00002260| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|00002270| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00002280| 69 63 09 67 65 74 72 65 | 67 0d 0a 0d 0a 09 65 78 |ic.getre|g.....ex|
|00002290| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|000022a0| 09 47 45 54 52 45 47 20 | 72 65 74 75 72 6e 73 20 |.GETREG |returns |
|000022b0| 74 68 65 20 76 61 6c 75 | 65 20 6f 66 20 74 68 65 |the valu|e of the|
|000022c0| 20 72 65 67 69 73 74 65 | 72 20 73 70 65 63 69 66 | registe|r specif|
|000022d0| 69 65 64 20 69 6e 20 42 | 2e 20 20 54 68 69 73 0d |ied in B|. This.|
|000022e0| 0a 3b 20 76 61 6c 75 65 | 20 69 73 20 72 65 74 75 |.; value| is retu|
|000022f0| 72 6e 65 64 20 69 6e 20 | 74 68 65 20 41 20 72 65 |rned in |the A re|
|00002300| 67 69 73 74 65 72 2e 20 | 20 5a 65 72 6f 20 46 6c |gister. | Zero Fl|
|00002310| 61 67 20 69 73 20 73 65 | 74 20 61 63 63 6f 72 64 |ag is se|t accord|
|00002320| 69 6e 67 6c 79 2e 0d 0a | 3b 20 4f 6e 6c 79 20 50 |ingly...|; Only P|
|00002330| 53 57 20 69 73 20 61 66 | 66 65 63 74 65 64 2e 0d |SW is af|fected..|
|00002340| 0a 3b 0d 0a 67 65 74 72 | 65 67 3a 0d 0a 09 70 75 |.;..getr|eg:...pu|
|00002350| 73 68 09 68 6c 09 09 3b | 73 61 76 65 20 48 4c 0d |sh.hl..;|save HL.|
|00002360| 0a 09 70 75 73 68 09 64 | 65 09 09 3b 73 61 76 65 |..push.d|e..;save|
|00002370| 20 44 45 0d 0a 09 63 61 | 6c 6c 09 67 65 74 6d 73 | DE...ca|ll.getms|
|00002380| 67 09 09 3b 67 65 74 20 | 70 74 72 20 74 6f 20 6d |g..;get |ptr to m|
|00002390| 65 73 73 61 67 65 73 0d | 0a 09 6c 64 09 64 65 2c |essages.|..ld.de,|
|000023a0| 33 30 68 09 09 3b 6f 66 | 66 73 65 74 20 74 6f 20 |30h..;of|fset to |
|000023b0| 72 65 67 69 73 74 65 72 | 73 0d 0a 09 61 64 64 09 |register|s...add.|
|000023c0| 68 6c 2c 64 65 0d 0a 09 | 6c 64 09 61 2c 62 09 09 |hl,de...|ld.a,b..|
|000023d0| 3b 67 65 74 20 72 65 67 | 69 73 74 65 72 20 6e 75 |;get reg|ister nu|
|000023e0| 6d 62 65 72 0d 0a 09 61 | 64 64 09 61 2c 6c 09 09 |mber...a|dd.a,l..|
|000023f0| 3b 6d 61 6b 65 20 48 4c | 20 70 74 20 74 6f 20 72 |;make HL| pt to r|
|00002400| 65 67 69 73 74 65 72 0d | 0a 09 6c 64 09 6c 2c 61 |egister.|..ld.l,a|
|00002410| 0d 0a 09 6c 64 09 61 2c | 68 0d 0a 09 61 64 63 09 |...ld.a,|h...adc.|
|00002420| 61 2c 30 0d 0a 09 6c 64 | 09 68 2c 61 0d 0a 09 6c |a,0...ld|.h,a...l|
|00002430| 64 09 61 2c 28 68 6c 29 | 09 09 3b 67 65 74 20 72 |d.a,(hl)|..;get r|
|00002440| 65 67 69 73 74 65 72 20 | 76 61 6c 75 65 0d 0a 09 |egister |value...|
|00002450| 70 6f 70 09 64 65 09 09 | 3b 67 65 74 20 44 45 0d |pop.de..|;get DE.|
|00002460| 0a 09 70 6f 70 09 68 6c | 09 09 3b 67 65 74 20 48 |..pop.hl|..;get H|
|00002470| 4c 0d 0a 09 6f 72 09 61 | 09 09 3b 73 65 74 20 66 |L...or.a|..;set f|
|00002480| 6c 61 67 73 0d 0a 09 72 | 65 74 0d 0a 0d 0a 09 65 |lags...r|et.....e|
|00002490| 6e 64 0d 0a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |nd......|........|
|000024a0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000024b0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000024c0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000024d0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000024e0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000024f0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002500| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00002510| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 44 0d |e Name: | Z3MSGD.|
|00002520| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|00002530| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|00002540| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|00002550| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|00002560| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|00002570| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00002580| 69 63 09 70 75 74 72 65 | 67 0d 0a 0d 0a 09 65 78 |ic.putre|g.....ex|
|00002590| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|000025a0| 09 50 55 54 52 45 47 20 | 73 65 74 73 20 74 68 65 |.PUTREG |sets the|
|000025b0| 20 76 61 6c 75 65 20 6f | 66 20 74 68 65 20 72 65 | value o|f the re|
|000025c0| 67 69 73 74 65 72 20 73 | 70 65 63 69 66 69 65 64 |gister s|pecified|
|000025d0| 20 69 6e 20 42 2e 20 20 | 54 68 69 73 0d 0a 3b 20 | in B. |This..; |
|000025e0| 76 61 6c 75 65 20 69 73 | 20 69 6e 70 75 74 20 69 |value is| input i|
|000025f0| 6e 20 74 68 65 20 41 20 | 72 65 67 69 73 74 65 72 |n the A |register|
|00002600| 2e 20 20 4e 6f 20 72 65 | 67 69 73 74 65 72 73 20 |. No re|gisters |
|00002610| 61 72 65 20 61 66 66 65 | 63 74 65 64 2e 0d 0a 3b |are affe|cted...;|
|00002620| 0d 0a 70 75 74 72 65 67 | 3a 0d 0a 09 70 75 73 68 |..putreg|:...push|
|00002630| 09 68 6c 09 09 3b 73 61 | 76 65 20 48 4c 0d 0a 09 |.hl..;sa|ve HL...|
|00002640| 70 75 73 68 09 64 65 09 | 09 3b 73 61 76 65 20 44 |push.de.|.;save D|
|00002650| 45 0d 0a 09 70 75 73 68 | 09 61 66 09 09 3b 73 61 |E...push|.af..;sa|
|00002660| 76 65 20 76 61 6c 75 65 | 0d 0a 09 63 61 6c 6c 09 |ve value|...call.|
|00002670| 67 65 74 6d 73 67 09 09 | 3b 67 65 74 20 70 74 72 |getmsg..|;get ptr|
|00002680| 20 74 6f 20 6d 65 73 73 | 61 67 65 73 0d 0a 09 6c | to mess|ages...l|
|00002690| 64 09 64 65 2c 33 30 68 | 09 09 3b 6f 66 66 73 65 |d.de,30h|..;offse|
|000026a0| 74 20 74 6f 20 72 65 67 | 69 73 74 65 72 73 0d 0a |t to reg|isters..|
|000026b0| 09 61 64 64 09 68 6c 2c | 64 65 0d 0a 09 6c 64 09 |.add.hl,|de...ld.|
|000026c0| 61 2c 62 09 09 3b 67 65 | 74 20 72 65 67 69 73 74 |a,b..;ge|t regist|
|000026d0| 65 72 20 6e 75 6d 62 65 | 72 0d 0a 09 61 64 64 09 |er numbe|r...add.|
|000026e0| 61 2c 6c 09 09 3b 6d 61 | 6b 65 20 48 4c 20 70 74 |a,l..;ma|ke HL pt|
|000026f0| 20 74 6f 20 72 65 67 69 | 73 74 65 72 0d 0a 09 6c | to regi|ster...l|
|00002700| 64 09 6c 2c 61 0d 0a 09 | 6c 64 09 61 2c 68 0d 0a |d.l,a...|ld.a,h..|
|00002710| 09 61 64 63 09 61 2c 30 | 0d 0a 09 6c 64 09 68 2c |.adc.a,0|...ld.h,|
|00002720| 61 0d 0a 09 70 6f 70 09 | 61 66 09 09 3b 67 65 74 |a...pop.|af..;get|
|00002730| 20 76 61 6c 75 65 0d 0a | 09 6c 64 09 28 68 6c 29 | value..|.ld.(hl)|
|00002740| 2c 61 09 09 3b 70 75 74 | 20 72 65 67 69 73 74 65 |,a..;put| registe|
|00002750| 72 20 76 61 6c 75 65 0d | 0a 09 70 6f 70 09 64 65 |r value.|..pop.de|
|00002760| 09 09 3b 67 65 74 20 44 | 45 0d 0a 09 70 6f 70 09 |..;get D|E...pop.|
|00002770| 68 6c 09 09 3b 67 65 74 | 20 48 4c 0d 0a 09 72 65 |hl..;get| HL...re|
|00002780| 74 0d 0a 0d 0a 09 65 6e | 64 0d 0a 1a 1a 1a 1a 1a |t.....en|d.......|
|00002790| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000027a0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000027b0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000027c0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000027d0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000027e0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000027f0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002800| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00002810| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 45 0d |e Name: | Z3MSGE.|
|00002820| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|00002830| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|00002840| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|00002850| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|00002860| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|00002870| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00002880| 69 63 09 65 72 72 61 64 | 72 0d 0a 0d 0a 09 65 78 |ic.errad|r.....ex|
|00002890| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|000028a0| 09 45 52 52 41 44 52 20 | 72 65 74 75 72 6e 73 20 |.ERRADR |returns |
|000028b0| 74 68 65 20 61 64 64 72 | 65 73 73 20 6f 66 20 74 |the addr|ess of t|
|000028c0| 68 65 20 66 69 72 73 74 | 20 63 68 61 72 20 6f 66 |he first| char of|
|000028d0| 20 74 68 65 20 63 6f 6d | 6d 61 6e 64 20 6c 69 6e | the com|mand lin|
|000028e0| 65 0d 0a 3b 20 69 6e 20 | 65 72 72 6f 72 20 77 68 |e..; in |error wh|
|000028f0| 69 63 68 20 5a 43 50 52 | 33 20 61 74 74 65 6d 70 |ich ZCPR|3 attemp|
|00002900| 74 65 64 20 74 6f 20 70 | 72 6f 63 65 73 73 2e 20 |ted to p|rocess. |
|00002910| 20 48 4c 20 61 66 66 65 | 63 74 65 64 2e 0d 0a 3b | HL affe|cted...;|
|00002920| 0d 0a 65 72 72 61 64 72 | 3a 0d 0a 09 70 75 73 68 |..erradr|:...push|
|00002930| 09 61 66 09 09 3b 73 61 | 76 65 20 50 53 57 0d 0a |.af..;sa|ve PSW..|
|00002940| 09 70 75 73 68 09 64 65 | 09 09 3b 73 61 76 65 20 |.push.de|..;save |
|00002950| 44 45 0d 0a 09 63 61 6c | 6c 09 67 65 74 6d 73 67 |DE...cal|l.getmsg|
|00002960| 09 09 3b 67 65 74 20 70 | 74 72 20 74 6f 20 6d 65 |..;get p|tr to me|
|00002970| 73 73 61 67 65 73 0d 0a | 09 6c 64 09 64 65 2c 34 |ssages..|.ld.de,4|
|00002980| 09 09 3b 6f 66 66 73 65 | 74 20 74 6f 20 62 75 66 |..;offse|t to buf|
|00002990| 66 65 72 0d 0a 09 61 64 | 64 09 68 6c 2c 64 65 0d |fer...ad|d.hl,de.|
|000029a0| 0a 09 6c 64 09 61 2c 28 | 68 6c 29 09 09 3b 67 65 |..ld.a,(|hl)..;ge|
|000029b0| 74 20 61 64 64 72 65 73 | 73 0d 0a 09 69 6e 63 09 |t addres|s...inc.|
|000029c0| 68 6c 0d 0a 09 6c 64 09 | 68 2c 28 68 6c 29 0d 0a |hl...ld.|h,(hl)..|
|000029d0| 09 6c 64 09 6c 2c 61 09 | 09 3b 48 4c 20 3d 20 61 |.ld.l,a.|.;HL = a|
|000029e0| 64 64 72 65 73 73 0d 0a | 09 70 6f 70 09 64 65 09 |ddress..|.pop.de.|
|000029f0| 09 3b 67 65 74 20 44 45 | 0d 0a 09 70 6f 70 09 61 |.;get DE|...pop.a|
|00002a00| 66 0d 0a 09 72 65 74 0d | 0a 0d 0a 09 65 6e 64 0d |f...ret.|....end.|
|00002a10| 0a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002a20| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002a30| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002a40| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002a50| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002a60| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002a70| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002a80| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00002a90| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 46 0d |e Name: | Z3MSGF.|
|00002aa0| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|00002ab0| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|00002ac0| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|00002ad0| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|00002ae0| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|00002af0| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00002b00| 69 63 09 70 75 74 63 73 | 74 0d 0a 0d 0a 09 65 78 |ic.putcs|t.....ex|
|00002b10| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|00002b20| 09 50 55 54 43 53 54 20 | 73 65 74 73 20 74 68 65 |.PUTCST |sets the|
|00002b30| 20 5a 43 50 52 33 20 63 | 6f 6d 6d 61 6e 64 20 73 | ZCPR3 c|ommand s|
|00002b40| 74 61 74 75 73 20 6d 65 | 73 73 61 67 65 20 74 6f |tatus me|ssage to|
|00002b50| 20 74 68 65 20 76 61 6c | 75 65 20 69 6e 20 41 2e | the val|ue in A.|
|00002b60| 0d 0a 3b 20 4e 6f 20 72 | 65 67 69 73 74 65 72 73 |..; No r|egisters|
|00002b70| 20 61 72 65 20 61 66 66 | 65 63 74 65 64 2e 0d 0a | are aff|ected...|
|00002b80| 3b 0d 0a 3b 09 50 55 54 | 43 53 54 20 69 73 20 69 |;..;.PUT|CST is i|
|00002b90| 6e 74 65 6e 64 65 64 20 | 74 6f 20 62 65 20 75 73 |ntended |to be us|
|00002ba0| 65 64 20 62 79 20 53 68 | 65 6c 6c 73 20 74 6f 20 |ed by Sh|ells to |
|00002bb0| 69 6e 64 69 63 61 74 65 | 20 74 68 61 74 20 74 68 |indicate| that th|
|00002bc0| 65 20 63 6f 6d 6d 61 6e | 64 0d 0a 3b 20 74 68 65 |e comman|d..; the|
|00002bd0| 79 20 61 72 65 20 70 61 | 73 73 69 6e 67 20 69 73 |y are pa|ssing is|
|00002be0| 20 61 20 22 6e 6f 72 6d | 61 6c 22 20 63 6f 6d 6d | a "norm|al" comm|
|00002bf0| 61 6e 64 20 6f 72 20 77 | 68 61 74 65 76 65 72 20 |and or w|hatever |
|00002c00| 74 79 70 65 20 6f 66 20 | 63 6f 6d 6d 61 6e 64 0d |type of |command.|
|00002c10| 0a 3b 20 28 6e 6f 72 6d | 61 6c 2c 20 73 68 65 6c |.; (norm|al, shel|
|00002c20| 6c 2c 20 6f 72 20 65 72 | 72 6f 72 29 20 69 73 20 |l, or er|ror) is |
|00002c30| 64 65 73 69 72 65 64 2e | 0d 0a 3b 0d 0a 70 75 74 |desired.|..;..put|
|00002c40| 63 73 74 3a 0d 0a 09 70 | 75 73 68 09 68 6c 09 09 |cst:...p|ush.hl..|
|00002c50| 3b 73 61 76 65 20 48 4c | 0d 0a 09 70 75 73 68 09 |;save HL|...push.|
|00002c60| 61 66 09 09 3b 73 61 76 | 65 20 41 0d 0a 09 63 61 |af..;sav|e A...ca|
|00002c70| 6c 6c 09 67 65 74 6d 73 | 67 09 09 3b 67 65 74 20 |ll.getms|g..;get |
|00002c80| 70 74 72 20 74 6f 20 6d | 65 73 73 61 67 65 73 0d |ptr to m|essages.|
|00002c90| 0a 09 69 6e 63 09 68 6c | 09 09 3b 6f 66 66 73 65 |..inc.hl|..;offse|
|00002ca0| 74 20 6f 66 20 33 0d 0a | 09 69 6e 63 09 68 6c 0d |t of 3..|.inc.hl.|
|00002cb0| 0a 09 69 6e 63 09 68 6c | 0d 0a 09 70 6f 70 09 61 |..inc.hl|...pop.a|
|00002cc0| 66 09 09 3b 67 65 74 20 | 63 6f 64 65 0d 0a 09 6c |f..;get |code...l|
|00002cd0| 64 09 28 68 6c 29 2c 61 | 09 09 3b 73 65 74 20 63 |d.(hl),a|..;set c|
|00002ce0| 6f 6d 6d 61 6e 64 20 73 | 74 61 74 75 73 20 6d 65 |ommand s|tatus me|
|00002cf0| 73 73 61 67 65 0d 0a 09 | 70 6f 70 09 68 6c 0d 0a |ssage...|pop.hl..|
|00002d00| 09 72 65 74 0d 0a 0d 0a | 09 65 6e 64 0d 0a 1a 1a |.ret....|.end....|
|00002d10| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002d20| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002d30| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002d40| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002d50| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002d60| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002d70| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00002d80| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00002d90| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 47 0d |e Name: | Z3MSGG.|
|00002da0| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|00002db0| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|00002dc0| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|00002dd0| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|00002de0| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|00002df0| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00002e00| 69 63 09 67 65 74 73 68 | 6d 0d 0a 0d 0a 09 65 78 |ic.getsh|m.....ex|
|00002e10| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|00002e20| 09 47 45 54 53 48 4d 20 | 72 65 74 75 72 6e 73 20 |.GETSHM |returns |
|00002e30| 74 68 65 20 76 61 6c 75 | 65 20 6f 66 20 74 68 65 |the valu|e of the|
|00002e40| 20 73 68 65 6c 6c 20 6d | 65 73 73 61 67 65 20 73 | shell m|essage s|
|00002e50| 70 65 63 69 66 69 65 64 | 20 69 6e 20 42 2e 20 20 |pecified| in B. |
|00002e60| 54 68 69 73 0d 0a 3b 20 | 76 61 6c 75 65 20 69 73 |This..; |value is|
|00002e70| 20 72 65 74 75 72 6e 65 | 64 20 69 6e 20 74 68 65 | returne|d in the|
|00002e80| 20 41 20 72 65 67 69 73 | 74 65 72 2e 20 20 5a 65 | A regis|ter. Ze|
|00002e90| 72 6f 20 46 6c 61 67 20 | 69 73 20 73 65 74 20 61 |ro Flag |is set a|
|00002ea0| 63 63 6f 72 64 69 6e 67 | 6c 79 2e 0d 0a 3b 20 4f |ccording|ly...; O|
|00002eb0| 6e 6c 79 20 50 53 57 20 | 69 73 20 61 66 66 65 63 |nly PSW |is affec|
|00002ec0| 74 65 64 2e 20 20 54 68 | 65 72 65 20 61 72 65 20 |ted. Th|ere are |
|00002ed0| 6f 6e 6c 79 20 74 68 72 | 65 65 20 73 68 65 6c 6c |only thr|ee shell|
|00002ee0| 20 6d 65 73 73 61 67 65 | 73 2c 20 73 6f 20 30 20 | message|s, so 0 |
|00002ef0| 3c 3d 20 42 20 3c 3d 20 | 32 2e 0d 0a 3b 0d 0a 67 |<= B <= |2...;..g|
|00002f00| 65 74 73 68 6d 3a 0d 0a | 09 70 75 73 68 09 68 6c |etshm:..|.push.hl|
|00002f10| 09 09 3b 73 61 76 65 20 | 48 4c 0d 0a 09 70 75 73 |..;save |HL...pus|
|00002f20| 68 09 64 65 09 09 3b 73 | 61 76 65 20 44 45 0d 0a |h.de..;s|ave DE..|
|00002f30| 09 63 61 6c 6c 09 67 65 | 74 6d 73 67 09 09 3b 67 |.call.ge|tmsg..;g|
|00002f40| 65 74 20 70 74 72 20 74 | 6f 20 6d 65 73 73 61 67 |et ptr t|o messag|
|00002f50| 65 73 0d 0a 09 6c 64 09 | 64 65 2c 31 33 09 09 3b |es...ld.|de,13..;|
|00002f60| 6f 66 66 73 65 74 20 74 | 6f 20 72 65 67 69 73 74 |offset t|o regist|
|00002f70| 65 72 73 0d 0a 09 61 64 | 64 09 68 6c 2c 64 65 0d |ers...ad|d.hl,de.|
|00002f80| 0a 09 6c 64 09 61 2c 62 | 09 09 3b 67 65 74 20 72 |..ld.a,b|..;get r|
|00002f90| 65 67 69 73 74 65 72 20 | 6e 75 6d 62 65 72 0d 0a |egister |number..|
|00002fa0| 09 61 64 64 09 61 2c 6c | 09 09 3b 6d 61 6b 65 20 |.add.a,l|..;make |
|00002fb0| 48 4c 20 70 74 20 74 6f | 20 72 65 67 69 73 74 65 |HL pt to| registe|
|00002fc0| 72 0d 0a 09 6c 64 09 6c | 2c 61 0d 0a 09 6c 64 09 |r...ld.l|,a...ld.|
|00002fd0| 61 2c 68 0d 0a 09 61 64 | 63 09 61 2c 30 0d 0a 09 |a,h...ad|c.a,0...|
|00002fe0| 6c 64 09 68 2c 61 0d 0a | 09 6c 64 09 61 2c 28 68 |ld.h,a..|.ld.a,(h|
|00002ff0| 6c 29 09 09 3b 67 65 74 | 20 72 65 67 69 73 74 65 |l)..;get| registe|
|00003000| 72 20 76 61 6c 75 65 0d | 0a 09 70 6f 70 09 64 65 |r value.|..pop.de|
|00003010| 09 09 3b 67 65 74 20 44 | 45 0d 0a 09 70 6f 70 09 |..;get D|E...pop.|
|00003020| 68 6c 09 09 3b 67 65 74 | 20 48 4c 0d 0a 09 6f 72 |hl..;get| HL...or|
|00003030| 09 61 09 09 3b 73 65 74 | 20 66 6c 61 67 73 0d 0a |.a..;set| flags..|
|00003040| 09 72 65 74 0d 0a 0d 0a | 09 65 6e 64 0d 0a 1a 1a |.ret....|.end....|
|00003050| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00003060| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00003070| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00003080| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00003090| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 4d 53 47 48 0d |e Name: | Z3MSGH.|
|000030a0| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|000030b0| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|000030c0| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|000030d0| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|000030e0| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|000030f0| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00003100| 69 63 09 70 75 74 73 68 | 6d 0d 0a 0d 0a 09 65 78 |ic.putsh|m.....ex|
|00003110| 74 09 67 65 74 6d 73 67 | 0d 0a 0d 0a 3b 0d 0a 3b |t.getmsg|....;..;|
|00003120| 09 50 55 54 53 48 4d 20 | 73 65 74 73 20 74 68 65 |.PUTSHM |sets the|
|00003130| 20 76 61 6c 75 65 20 6f | 66 20 74 68 65 20 73 68 | value o|f the sh|
|00003140| 65 6c 6c 20 6d 65 73 73 | 61 67 65 20 73 70 65 63 |ell mess|age spec|
|00003150| 69 66 69 65 64 20 69 6e | 20 42 2e 20 20 54 68 69 |ified in| B. Thi|
|00003160| 73 0d 0a 3b 20 76 61 6c | 75 65 20 69 73 20 69 6e |s..; val|ue is in|
|00003170| 70 75 74 20 69 6e 20 74 | 68 65 20 41 20 72 65 67 |put in t|he A reg|
|00003180| 69 73 74 65 72 2e 20 20 | 4e 6f 20 72 65 67 69 73 |ister. |No regis|
|00003190| 74 65 72 73 20 61 72 65 | 20 61 66 66 65 63 74 65 |ters are| affecte|
|000031a0| 64 2e 20 20 54 68 65 72 | 65 20 61 72 65 0d 0a 3b |d. Ther|e are..;|
|000031b0| 20 6f 6e 6c 79 20 74 68 | 72 65 65 20 73 68 65 6c | only th|ree shel|
|000031c0| 6c 20 6d 65 73 73 61 67 | 65 73 2c 20 73 6f 20 30 |l messag|es, so 0|
|000031d0| 20 3c 3d 20 42 20 3c 3d | 20 32 2e 0d 0a 3b 0d 0a | <= B <=| 2...;..|
|000031e0| 70 75 74 73 68 6d 3a 0d | 0a 09 70 75 73 68 09 68 |putshm:.|..push.h|
|000031f0| 6c 09 09 3b 73 61 76 65 | 20 48 4c 0d 0a 09 70 75 |l..;save| HL...pu|
|00003200| 73 68 09 64 65 09 09 3b | 73 61 76 65 20 44 45 0d |sh.de..;|save DE.|
|00003210| 0a 09 70 75 73 68 09 61 | 66 09 09 3b 73 61 76 65 |..push.a|f..;save|
|00003220| 20 76 61 6c 75 65 0d 0a | 09 63 61 6c 6c 09 67 65 | value..|.call.ge|
|00003230| 74 6d 73 67 09 09 3b 67 | 65 74 20 70 74 72 20 74 |tmsg..;g|et ptr t|
|00003240| 6f 20 6d 65 73 73 61 67 | 65 73 0d 0a 09 6c 64 09 |o messag|es...ld.|
|00003250| 64 65 2c 31 33 09 09 3b | 6f 66 66 73 65 74 20 74 |de,13..;|offset t|
|00003260| 6f 20 72 65 67 69 73 74 | 65 72 73 0d 0a 09 61 64 |o regist|ers...ad|
|00003270| 64 09 68 6c 2c 64 65 0d | 0a 09 6c 64 09 61 2c 62 |d.hl,de.|..ld.a,b|
|00003280| 09 09 3b 67 65 74 20 72 | 65 67 69 73 74 65 72 20 |..;get r|egister |
|00003290| 6e 75 6d 62 65 72 0d 0a | 09 61 64 64 09 61 2c 6c |number..|.add.a,l|
|000032a0| 09 09 3b 6d 61 6b 65 20 | 48 4c 20 70 74 20 74 6f |..;make |HL pt to|
|000032b0| 20 72 65 67 69 73 74 65 | 72 0d 0a 09 6c 64 09 6c | registe|r...ld.l|
|000032c0| 2c 61 0d 0a 09 6c 64 09 | 61 2c 68 0d 0a 09 61 64 |,a...ld.|a,h...ad|
|000032d0| 63 09 61 2c 30 0d 0a 09 | 6c 64 09 68 2c 61 0d 0a |c.a,0...|ld.h,a..|
|000032e0| 09 70 6f 70 09 61 66 09 | 09 3b 67 65 74 20 76 61 |.pop.af.|.;get va|
|000032f0| 6c 75 65 0d 0a 09 6c 64 | 09 28 68 6c 29 2c 61 09 |lue...ld|.(hl),a.|
|00003300| 09 3b 70 75 74 20 72 65 | 67 69 73 74 65 72 20 76 |.;put re|gister v|
|00003310| 61 6c 75 65 0d 0a 09 70 | 6f 70 09 64 65 09 09 3b |alue...p|op.de..;|
|00003320| 67 65 74 20 44 45 0d 0a | 09 70 6f 70 09 68 6c 09 |get DE..|.pop.hl.|
|00003330| 09 3b 67 65 74 20 48 4c | 0d 0a 09 72 65 74 0d 0a |.;get HL|...ret..|
|00003340| 0d 0a 09 65 6e 64 0d 0a | 1a 1a 1a 1a 1a 1a 1a 1a |...end..|........|
|00003350| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00003360| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00003370| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00003380| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00003390| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 50 43 4c 0d 0a |e Name: | Z3PCL..|
|000033a0| 3b 20 41 75 74 68 6f 72 | 3a 20 20 52 69 63 68 61 |; Author|: Richa|
|000033b0| 72 64 20 43 6f 6e 6e 0d | 0a 3b 20 5a 33 4c 49 42 |rd Conn.|.; Z3LIB|
|000033c0| 20 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 | Versio|n Number|
|000033d0| 3a 20 20 31 2e 33 0d 0a | 3b 20 4d 6f 64 75 6c 65 |: 1.3..|; Module|
|000033e0| 20 56 65 72 73 69 6f 6e | 20 4e 75 6d 62 65 72 3a | Version| Number:|
|000033f0| 20 20 31 2e 31 0d 0a 3b | 0d 0a 09 70 75 62 6c 69 | 1.1..;|...publi|
|00003400| 63 09 70 75 74 63 6c 0d | 0a 0d 0a 09 65 78 74 09 |c.putcl.|....ext.|
|00003410| 67 65 74 63 6c 31 2c 67 | 65 74 63 6c 32 0d 0a 0d |getcl1,g|etcl2...|
|00003420| 0a 3b 0d 0a 3b 20 4d 61 | 63 72 6f 73 0d 0a 3b 0d |.;..; Ma|cros..;.|
|00003430| 0a 70 75 74 72 67 09 6d | 61 63 72 6f 0d 0a 09 70 |.putrg.m|acro...p|
|00003440| 75 73 68 09 62 63 0d 0a | 09 70 75 73 68 09 64 65 |ush.bc..|.push.de|
|00003450| 0d 0a 09 70 75 73 68 09 | 68 6c 0d 0a 09 65 6e 64 |...push.|hl...end|
|00003460| 6d 0d 0a 0d 0a 67 65 74 | 72 67 09 6d 61 63 72 6f |m....get|rg.macro|
|00003470| 0d 0a 09 70 6f 70 09 68 | 6c 0d 0a 09 70 6f 70 09 |...pop.h|l...pop.|
|00003480| 64 65 0d 0a 09 70 6f 70 | 09 62 63 0d 0a 09 65 6e |de...pop|.bc...en|
|00003490| 64 6d 0d 0a 0d 0a 3b 0d | 0a 3b 09 5a 33 50 43 4c |dm....;.|.;.Z3PCL|
|000034a0| 20 73 74 6f 72 65 73 20 | 61 20 63 6f 6d 6d 61 6e | stores |a comman|
|000034b0| 64 20 6c 69 6e 65 20 69 | 6e 20 74 68 65 20 5a 43 |d line i|n the ZC|
|000034c0| 50 52 33 20 63 6f 6d 6d | 61 6e 64 20 6c 69 6e 65 |PR3 comm|and line|
|000034d0| 20 62 75 66 66 65 72 2e | 0d 0a 3b 20 54 68 69 73 | buffer.|..; This|
|000034e0| 20 63 6f 6d 6d 61 6e 64 | 20 6c 69 6e 65 20 69 73 | command| line is|
|000034f0| 20 70 74 65 64 20 74 6f | 20 62 79 20 48 4c 2e 20 | pted to| by HL. |
|00003500| 20 4f 6e 20 72 65 74 75 | 72 6e 2c 20 41 3d 30 20 | On retu|rn, A=0 |
|00003510| 61 6e 64 20 5a 65 72 6f | 20 46 6c 61 67 20 53 65 |and Zero| Flag Se|
|00003520| 74 0d 0a 3b 20 69 66 20 | 63 6f 6d 6d 61 6e 64 20 |t..; if |command |
|00003530| 6c 69 6e 65 20 6f 76 65 | 72 66 6c 6f 77 20 69 73 |line ove|rflow is|
|00003540| 20 70 6f 73 73 69 62 6c | 65 20 28 6e 6f 20 63 68 | possibl|e (no ch|
|00003550| 61 6e 67 65 20 74 6f 20 | 63 6f 6d 6d 61 6e 64 20 |ange to |command |
|00003560| 6c 69 6e 65 29 2e 0d 0a | 3b 0d 0a 70 75 74 63 6c |line)...|;..putcl|
|00003570| 3a 0d 0a 09 70 75 74 72 | 67 09 09 09 3b 73 61 76 |:...putr|g...;sav|
|00003580| 65 20 72 65 67 69 73 74 | 65 72 73 0d 0a 09 65 78 |e regist|ers...ex|
|00003590| 09 64 65 2c 68 6c 09 09 | 3b 44 45 20 70 74 73 20 |.de,hl..|;DE pts |
|000035a0| 74 6f 20 6e 65 77 20 6c | 69 6e 65 0d 0a 09 63 61 |to new l|ine...ca|
|000035b0| 6c 6c 09 67 65 74 63 6c | 31 09 09 3b 69 73 20 63 |ll.getcl|1..;is c|
|000035c0| 6f 6d 6d 61 6e 64 20 6c | 69 6e 65 20 61 76 61 69 |ommand l|ine avai|
|000035d0| 6c 61 62 6c 65 3f 0d 0a | 09 6a 70 09 6e 7a 2c 70 |lable?..|.jp.nz,p|
|000035e0| 63 6c 31 0d 0a 3b 0d 0a | 3b 20 45 72 72 6f 72 20 |cl1..;..|; Error |
|000035f0| 52 65 74 75 72 6e 0d 0a | 3b 0d 0a 6e 6f 63 6c 3a |Return..|;..nocl:|
|00003600| 0d 0a 09 67 65 74 72 67 | 09 09 09 3b 72 65 73 74 |...getrg|...;rest|
|00003610| 6f 72 65 20 72 65 67 69 | 73 74 65 72 73 0d 0a 09 |ore regi|sters...|
|00003620| 78 6f 72 09 61 09 09 3b | 72 65 74 20 5a 0d 0a 09 |xor.a..;|ret Z...|
|00003630| 72 65 74 0d 0a 3b 0d 0a | 3b 20 50 72 6f 63 65 73 |ret..;..|; Proces|
|00003640| 73 20 43 6f 6d 6d 61 6e | 64 20 4c 69 6e 65 0d 0a |s Comman|d Line..|
|00003650| 3b 0d 0a 70 63 6c 31 3a | 0d 0a 09 6c 64 09 62 2c |;..pcl1:|...ld.b,|
|00003660| 61 09 09 3b 63 68 61 72 | 20 63 6f 75 6e 74 20 69 |a..;char| count i|
|00003670| 6e 20 42 0d 0a 09 65 78 | 09 64 65 2c 68 6c 09 09 |n B...ex|.de,hl..|
|00003680| 3b 48 4c 20 70 74 73 20 | 74 6f 20 6e 65 77 20 6c |;HL pts |to new l|
|00003690| 69 6e 65 0d 0a 09 70 75 | 73 68 09 68 6c 09 09 3b |ine...pu|sh.hl..;|
|000036a0| 73 61 76 65 20 70 74 72 | 20 74 6f 20 6e 65 77 20 |save ptr| to new |
|000036b0| 6c 69 6e 65 0d 0a 70 63 | 6c 32 3a 0d 0a 09 6c 64 |line..pc|l2:...ld|
|000036c0| 09 61 2c 28 68 6c 29 09 | 09 3b 67 6f 20 74 6f 20 |.a,(hl).|.;go to |
|000036d0| 65 6e 64 20 6f 66 20 6c | 69 6e 65 0d 0a 09 6f 72 |end of l|ine...or|
|000036e0| 09 61 09 09 3b 61 74 20 | 65 6e 64 3f 0d 0a 09 6a |.a..;at |end?...j|
|000036f0| 70 09 7a 2c 70 63 6c 33 | 0d 0a 09 69 6e 63 09 68 |p.z,pcl3|...inc.h|
|00003700| 6c 09 09 3b 70 74 20 74 | 6f 20 6e 65 78 74 0d 0a |l..;pt t|o next..|
|00003710| 09 64 65 63 09 62 09 09 | 3b 63 6f 75 6e 74 20 64 |.dec.b..|;count d|
|00003720| 6f 77 6e 0d 0a 09 6a 70 | 09 6e 7a 2c 70 63 6c 32 |own...jp|.nz,pcl2|
|00003730| 0d 0a 09 70 6f 70 09 68 | 6c 09 09 3b 63 6c 65 61 |...pop.h|l..;clea|
|00003740| 72 20 73 74 61 63 6b 0d | 0a 09 6a 70 09 6e 6f 63 |r stack.|..jp.noc|
|00003750| 6c 09 09 3b 63 6f 6d 6d | 61 6e 64 20 6c 69 6e 65 |l..;comm|and line|
|00003760| 20 74 6f 6f 20 6c 6f 6e | 67 0d 0a 3b 0d 0a 3b 20 | too lon|g..;..; |
|00003770| 41 74 20 45 6e 64 20 6f | 66 20 4e 65 77 20 43 6f |At End o|f New Co|
|00003780| 6d 6d 61 6e 64 20 4c 69 | 6e 65 20 28 70 74 72 20 |mmand Li|ne (ptr |
|00003790| 6f 6e 20 73 74 61 63 6b | 29 0d 0a 3b 09 50 74 72 |on stack|)..;.Ptr|
|000037a0| 20 74 6f 20 66 69 72 73 | 74 20 63 68 61 72 20 6f | to firs|t char o|
|000037b0| 66 20 6e 65 77 20 63 6f | 6d 6d 61 6e 64 20 6c 69 |f new co|mmand li|
|000037c0| 6e 65 20 6f 6e 20 73 74 | 61 63 6b 0d 0a 3b 09 48 |ne on st|ack..;.H|
|000037d0| 4c 20 70 74 73 20 74 6f | 20 65 6e 64 69 6e 67 20 |L pts to| ending |
|000037e0| 30 20 6f 66 20 6e 65 77 | 20 63 6f 6d 6d 61 6e 64 |0 of new| command|
|000037f0| 20 6c 69 6e 65 0d 0a 3b | 09 42 20 3d 20 6e 75 6d | line..;|.B = num|
|00003800| 62 65 72 20 6f 66 20 63 | 68 61 72 73 20 72 65 6d |ber of c|hars rem|
|00003810| 61 69 6e 69 6e 67 20 62 | 65 66 6f 72 65 20 6f 76 |aining b|efore ov|
|00003820| 65 72 66 6c 6f 77 20 6f | 66 20 5a 33 20 63 6f 6d |erflow o|f Z3 com|
|00003830| 6d 61 6e 64 20 6c 69 6e | 65 0d 0a 3b 0d 0a 70 63 |mand lin|e..;..pc|
|00003840| 6c 33 3a 0d 0a 09 65 78 | 09 64 65 2c 68 6c 09 09 |l3:...ex|.de,hl..|
|00003850| 3b 44 45 20 70 74 73 20 | 74 6f 20 6c 61 73 74 20 |;DE pts |to last |
|00003860| 62 79 74 65 0d 0a 09 70 | 75 73 68 09 64 65 09 09 |byte...p|ush.de..|
|00003870| 3b 73 61 76 65 20 70 74 | 72 20 74 6f 20 6c 61 73 |;save pt|r to las|
|00003880| 74 20 62 79 74 65 20 69 | 6e 20 63 61 73 65 20 6f |t byte i|n case o|
|00003890| 66 20 65 72 72 6f 72 0d | 0a 09 63 61 6c 6c 09 67 |f error.|..call.g|
|000038a0| 65 74 63 6c 32 09 09 3b | 70 74 20 74 6f 20 74 61 |etcl2..;|pt to ta|
|000038b0| 69 6c 20 6f 66 20 63 6f | 6d 6d 61 6e 64 20 6c 69 |il of co|mmand li|
|000038c0| 6e 65 20 62 75 66 66 65 | 72 0d 0a 09 6c 64 09 61 |ne buffe|r...ld.a|
|000038d0| 2c 28 68 6c 29 09 09 3b | 67 65 74 20 66 69 72 73 |,(hl)..;|get firs|
|000038e0| 74 20 63 68 61 72 20 6f | 66 20 74 61 69 6c 0d 0a |t char o|f tail..|
|000038f0| 09 63 70 09 27 3b 27 09 | 09 3b 63 6f 6e 74 69 6e |.cp.';'.|.;contin|
|00003900| 75 61 74 69 6f 6e 3f 0d | 0a 09 6a 70 09 7a 2c 70 |uation?.|..jp.z,p|
|00003910| 63 6c 34 0d 0a 09 6f 72 | 09 61 09 09 3b 64 6f 6e |cl4...or|.a..;don|
|00003920| 65 3f 0d 0a 09 6a 70 09 | 7a 2c 70 63 6c 34 0d 0a |e?...jp.|z,pcl4..|
|00003930| 09 6c 64 09 61 2c 27 3b | 27 09 09 3b 73 65 74 20 |.ld.a,';|'..;set |
|00003940| 63 6f 6e 74 69 6e 75 61 | 74 69 6f 6e 20 63 68 61 |continua|tion cha|
|00003950| 72 0d 0a 09 6c 64 09 28 | 64 65 29 2c 61 0d 0a 09 |r...ld.(|de),a...|
|00003960| 69 6e 63 09 64 65 0d 0a | 09 64 65 63 09 62 09 09 |inc.de..|.dec.b..|
|00003970| 3b 63 6f 75 6e 74 20 64 | 6f 77 6e 0d 0a 09 6a 70 |;count d|own...jp|
|00003980| 09 7a 2c 70 63 6c 35 09 | 09 3b 6f 76 65 72 66 6c |.z,pcl5.|.;overfl|
|00003990| 6f 77 0d 0a 3b 0d 0a 3b | 20 43 6f 70 79 20 74 61 |ow..;..;| Copy ta|
|000039a0| 69 6c 20 6f 6e 74 6f 20 | 65 6e 64 20 6f 66 20 6e |il onto |end of n|
|000039b0| 65 77 20 63 6f 6d 6d 61 | 6e 64 20 6c 69 6e 65 0d |ew comma|nd line.|
|000039c0| 0a 3b 0d 0a 70 63 6c 34 | 3a 0d 0a 09 6c 64 09 61 |.;..pcl4|:...ld.a|
|000039d0| 2c 28 68 6c 29 09 09 3b | 67 65 74 20 6e 65 78 74 |,(hl)..;|get next|
|000039e0| 20 63 68 61 72 0d 0a 09 | 6c 64 09 28 64 65 29 2c | char...|ld.(de),|
|000039f0| 61 09 09 3b 73 74 6f 72 | 65 20 69 74 0d 0a 09 69 |a..;stor|e it...i|
|00003a00| 6e 63 09 68 6c 09 09 3b | 70 74 20 74 6f 20 6e 65 |nc.hl..;|pt to ne|
|00003a10| 78 74 0d 0a 09 69 6e 63 | 09 64 65 0d 0a 09 6f 72 |xt...inc|.de...or|
|00003a20| 09 61 09 09 3b 64 6f 6e | 65 3f 0d 0a 09 6a 70 09 |.a..;don|e?...jp.|
|00003a30| 7a 2c 70 63 6c 36 0d 0a | 09 64 65 63 09 62 09 09 |z,pcl6..|.dec.b..|
|00003a40| 3b 63 6f 75 6e 74 20 64 | 6f 77 6e 0d 0a 09 6a 70 |;count d|own...jp|
|00003a50| 09 6e 7a 2c 70 63 6c 34 | 0d 0a 3b 0d 0a 3b 20 43 |.nz,pcl4|..;..; C|
|00003a60| 6f 6d 6d 61 6e 64 20 4c | 69 6e 65 20 74 6f 6f 20 |ommand L|ine too |
|00003a70| 4c 6f 6e 67 0d 0a 3b 0d | 0a 70 63 6c 35 3a 0d 0a |Long..;.|.pcl5:..|
|00003a80| 09 70 6f 70 09 68 6c 09 | 09 3b 67 65 74 20 70 74 |.pop.hl.|.;get pt|
|00003a90| 72 20 74 6f 20 65 6e 64 | 20 6f 66 20 6f 6c 64 20 |r to end| of old |
|00003aa0| 6c 69 6e 65 0d 0a 09 6c | 64 09 28 68 6c 29 2c 30 |line...l|d.(hl),0|
|00003ab0| 09 09 3b 73 74 6f 72 65 | 20 65 6e 64 69 6e 67 20 |..;store| ending |
|00003ac0| 30 0d 0a 09 70 6f 70 09 | 61 66 09 09 3b 63 6c 65 |0...pop.|af..;cle|
|00003ad0| 61 72 20 73 74 61 63 6b | 0d 0a 09 6a 70 09 6e 6f |ar stack|...jp.no|
|00003ae0| 63 6c 0d 0a 3b 0d 0a 3b | 20 4e 65 77 20 43 6f 6d |cl..;..;| New Com|
|00003af0| 6d 61 6e 64 20 4c 69 6e | 65 20 4f 4b 0d 0a 3b 0d |mand Lin|e OK..;.|
|00003b00| 0a 70 63 6c 36 3a 0d 0a | 09 70 6f 70 09 61 66 09 |.pcl6:..|.pop.af.|
|00003b10| 09 3b 63 6c 65 61 72 20 | 73 74 61 63 6b 0d 0a 09 |.;clear |stack...|
|00003b20| 63 61 6c 6c 09 67 65 74 | 63 6c 31 09 09 3b 67 65 |call.get|cl1..;ge|
|00003b30| 74 20 70 74 72 20 74 6f | 20 62 75 66 66 65 72 0d |t ptr to| buffer.|
|00003b40| 0a 09 6c 64 09 64 65 2c | 34 09 09 3b 70 74 20 74 |..ld.de,|4..;pt t|
|00003b50| 6f 20 66 69 72 73 74 20 | 63 68 61 72 20 69 6e 20 |o first |char in |
|00003b60| 62 75 66 66 65 72 0d 0a | 09 65 78 09 64 65 2c 68 |buffer..|.ex.de,h|
|00003b70| 6c 0d 0a 09 61 64 64 09 | 68 6c 2c 64 65 0d 0a 09 |l...add.|hl,de...|
|00003b80| 65 78 09 64 65 2c 68 6c | 0d 0a 09 6c 64 09 28 68 |ex.de,hl|...ld.(h|
|00003b90| 6c 29 2c 65 09 09 3b 73 | 74 6f 72 65 20 61 64 64 |l),e..;s|tore add|
|00003ba0| 72 65 73 73 0d 0a 09 69 | 6e 63 09 68 6c 0d 0a 09 |ress...i|nc.hl...|
|00003bb0| 6c 64 09 28 68 6c 29 2c | 64 09 09 3b 44 45 20 70 |ld.(hl),|d..;DE p|
|00003bc0| 74 73 20 74 6f 20 66 69 | 72 73 74 20 63 68 61 72 |ts to fi|rst char|
|00003bd0| 20 6f 66 20 62 75 66 66 | 65 72 0d 0a 09 70 6f 70 | of buff|er...pop|
|00003be0| 09 68 6c 09 09 3b 48 4c | 20 70 74 73 20 74 6f 20 |.hl..;HL| pts to |
|00003bf0| 66 69 72 73 74 20 63 68 | 61 72 20 6f 66 20 6e 65 |first ch|ar of ne|
|00003c00| 77 20 6c 69 6e 65 0d 0a | 3b 0d 0a 3b 20 43 6f 70 |w line..|;..; Cop|
|00003c10| 79 20 4e 65 77 20 43 6f | 6d 6d 61 6e 64 20 4c 69 |y New Co|mmand Li|
|00003c20| 6e 65 20 69 6e 74 6f 20 | 42 75 66 66 65 72 0d 0a |ne into |Buffer..|
|00003c30| 3b 0d 0a 70 63 6c 37 3a | 0d 0a 09 6c 64 09 61 2c |;..pcl7:|...ld.a,|
|00003c40| 28 68 6c 29 09 09 3b 63 | 6f 70 79 0d 0a 09 6c 64 |(hl)..;c|opy...ld|
|00003c50| 09 28 64 65 29 2c 61 0d | 0a 09 69 6e 63 09 68 6c |.(de),a.|..inc.hl|
|00003c60| 0d 0a 09 69 6e 63 09 64 | 65 0d 0a 09 6f 72 09 61 |...inc.d|e...or.a|
|00003c70| 09 09 3b 45 4f 4c 3f 0d | 0a 09 6a 70 09 6e 7a 2c |..;EOL?.|..jp.nz,|
|00003c80| 70 63 6c 37 0d 0a 3b 0d | 0a 3b 20 45 78 69 74 20 |pcl7..;.|.; Exit |
|00003c90| 77 69 74 68 20 4f 4b 20 | 43 6f 64 65 0d 0a 3b 0d |with OK |Code..;.|
|00003ca0| 0a 09 67 65 74 72 67 09 | 09 09 3b 72 65 73 74 6f |..getrg.|..;resto|
|00003cb0| 72 65 20 72 65 67 73 0d | 0a 09 78 6f 72 09 61 09 |re regs.|..xor.a.|
|00003cc0| 09 3b 73 65 74 20 4e 5a | 0d 0a 09 64 65 63 09 61 |.;set NZ|...dec.a|
|00003cd0| 0d 0a 09 72 65 74 0d 0a | 0d 0a 09 65 6e 64 0d 0a |...ret..|...end..|
|00003ce0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00003cf0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00003d00| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00003d10| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 50 43 52 54 0d |e Name: | Z3PCRT.|
|00003d20| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|00003d30| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|00003d40| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|00003d50| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|00003d60| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|00003d70| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00003d80| 69 63 09 70 75 74 63 72 | 74 0d 0a 0d 0a 09 65 78 |ic.putcr|t.....ex|
|00003d90| 74 09 65 6e 76 70 74 72 | 0d 0a 0d 0a 3b 0d 0a 3b |t.envptr|....;..;|
|00003da0| 09 50 55 54 43 52 54 20 | 73 74 6f 72 65 73 20 74 |.PUTCRT |stores t|
|00003db0| 68 65 20 73 65 6c 65 63 | 74 69 6f 6e 20 6f 66 20 |he selec|tion of |
|00003dc0| 30 20 6f 72 20 31 20 69 | 6e 20 74 68 65 20 43 52 |0 or 1 i|n the CR|
|00003dd0| 54 20 53 65 6c 65 63 74 | 69 6f 6e 20 62 75 66 66 |T Select|ion buff|
|00003de0| 65 72 0d 0a 3b 20 69 6e | 20 74 68 65 20 45 6e 76 |er..; in| the Env|
|00003df0| 69 72 6f 6e 6d 65 6e 74 | 20 44 65 73 63 72 69 70 |ironment| Descrip|
|00003e00| 74 6f 72 2e 0d 0a 3b 09 | 4f 6e 20 65 78 69 74 2c |tor...;.|On exit,|
|00003e10| 20 41 3d 30 20 61 6e 64 | 20 5a 65 72 6f 20 46 6c | A=0 and| Zero Fl|
|00003e20| 61 67 20 53 65 74 20 69 | 66 20 69 6e 76 61 6c 69 |ag Set i|f invali|
|00003e30| 64 20 73 65 6c 65 63 74 | 69 6f 6e 20 76 61 6c 75 |d select|ion valu|
|00003e40| 65 20 28 6e 6f 74 20 30 | 20 6f 72 20 31 29 0d 0a |e (not 0| or 1)..|
|00003e50| 3b 0d 0a 70 75 74 63 72 | 74 3a 0d 0a 09 70 75 73 |;..putcr|t:...pus|
|00003e60| 68 09 68 6c 09 09 3b 73 | 61 76 65 20 72 65 67 73 |h.hl..;s|ave regs|
|00003e70| 0d 0a 09 70 75 73 68 09 | 64 65 0d 0a 09 63 70 09 |...push.|de...cp.|
|00003e80| 32 09 09 3b 72 61 6e 67 | 65 20 63 68 65 63 6b 0d |2..;rang|e check.|
|00003e90| 0a 09 6a 70 09 6e 63 2c | 70 63 65 72 72 6f 72 0d |..jp.nc,|pcerror.|
|00003ea0| 0a 09 70 75 73 68 09 61 | 66 09 09 3b 73 61 76 65 |..push.a|f..;save|
|00003eb0| 20 73 65 6c 65 63 74 69 | 6f 6e 0d 0a 09 6c 64 09 | selecti|on...ld.|
|00003ec0| 68 6c 2c 28 65 6e 76 70 | 74 72 29 09 3b 70 74 20 |hl,(envp|tr).;pt |
|00003ed0| 74 6f 20 65 6e 76 69 72 | 6f 6e 6d 65 6e 74 0d 0a |to envir|onment..|
|00003ee0| 09 6c 64 09 64 65 2c 32 | 66 68 09 09 3b 70 74 20 |.ld.de,2|fh..;pt |
|00003ef0| 74 6f 20 65 6e 74 72 79 | 0d 0a 09 61 64 64 09 68 |to entry|...add.h|
|00003f00| 6c 2c 64 65 0d 0a 09 70 | 6f 70 09 61 66 09 09 3b |l,de...p|op.af..;|
|00003f10| 67 65 74 20 73 65 6c 65 | 63 74 69 6f 6e 0d 0a 09 |get sele|ction...|
|00003f20| 6c 64 09 28 68 6c 29 2c | 61 09 09 3b 73 74 6f 72 |ld.(hl),|a..;stor|
|00003f30| 65 20 73 65 6c 65 63 74 | 69 6f 6e 0d 0a 09 70 6f |e select|ion...po|
|00003f40| 70 09 64 65 09 09 3b 67 | 65 74 20 72 65 67 73 0d |p.de..;g|et regs.|
|00003f50| 0a 09 70 6f 70 09 68 6c | 0d 0a 09 6f 72 09 30 66 |..pop.hl|...or.0f|
|00003f60| 66 68 09 09 3b 73 65 74 | 20 4e 5a 20 66 6f 72 20 |fh..;set| NZ for |
|00003f70| 4f 4b 0d 0a 09 72 65 74 | 0d 0a 70 63 65 72 72 6f |OK...ret|..pcerro|
|00003f80| 72 3a 0d 0a 09 70 6f 70 | 09 64 65 09 09 3b 72 65 |r:...pop|.de..;re|
|00003f90| 73 74 6f 72 65 20 72 65 | 67 69 73 74 65 72 73 0d |store re|gisters.|
|00003fa0| 0a 09 70 6f 70 09 68 6c | 0d 0a 09 78 6f 72 09 61 |..pop.hl|...xor.a|
|00003fb0| 09 09 3b 65 72 72 6f 72 | 20 72 65 74 75 72 6e 0d |..;error| return.|
|00003fc0| 0a 09 72 65 74 0d 0a 0d | 0a 09 65 6e 64 0d 0a 1a |..ret...|..end...|
|00003fd0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00003fe0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00003ff0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00004000| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00004010| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 50 44 55 4f 4b |e Name: | Z3PDUOK|
|00004020| 0d 0a 3b 20 41 75 74 68 | 6f 72 3a 20 20 52 69 63 |..; Auth|or: Ric|
|00004030| 68 61 72 64 20 43 6f 6e | 6e 0d 0a 3b 20 5a 33 4c |hard Con|n..; Z3L|
|00004040| 49 42 20 20 56 65 72 73 | 69 6f 6e 20 4e 75 6d 62 |IB Vers|ion Numb|
|00004050| 65 72 3a 20 20 31 2e 33 | 0d 0a 3b 20 4d 6f 64 75 |er: 1.3|..; Modu|
|00004060| 6c 65 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |le Versi|on Numbe|
|00004070| 72 3a 20 20 31 2e 31 0d | 0a 3b 0d 0a 09 70 75 62 |r: 1.1.|.;...pub|
|00004080| 6c 69 63 09 70 75 74 64 | 75 6f 6b 0d 0a 0d 0a 09 |lic.putd|uok.....|
|00004090| 65 78 74 09 65 6e 76 70 | 74 72 0d 0a 0d 0a 3b 0d |ext.envp|tr....;.|
|000040a0| 0a 3b 09 50 55 54 44 55 | 4f 4b 20 73 65 74 73 20 |.;.PUTDU|OK sets |
|000040b0| 74 68 65 20 44 55 20 4f | 4b 20 62 79 74 65 20 66 |the DU O|K byte f|
|000040c0| 72 6f 6d 20 41 2e 0d 0a | 3b 09 4e 6f 20 72 65 67 |rom A...|;.No reg|
|000040d0| 69 73 74 65 72 73 20 61 | 72 65 20 61 66 66 65 63 |isters a|re affec|
|000040e0| 74 65 64 2e 0d 0a 3b 0d | 0a 70 75 74 64 75 6f 6b |ted...;.|.putduok|
|000040f0| 3a 0d 0a 09 70 75 73 68 | 09 68 6c 09 09 3b 73 61 |:...push|.hl..;sa|
|00004100| 76 65 20 72 65 67 73 0d | 0a 09 70 75 73 68 09 64 |ve regs.|..push.d|
|00004110| 65 0d 0a 09 70 75 73 68 | 09 61 66 0d 0a 09 6c 64 |e...push|.af...ld|
|00004120| 09 68 6c 2c 28 65 6e 76 | 70 74 72 29 09 3b 70 74 |.hl,(env|ptr).;pt|
|00004130| 20 74 6f 20 65 6e 76 69 | 72 6f 6e 6d 65 6e 74 0d | to envi|ronment.|
|00004140| 0a 09 6c 64 09 64 65 2c | 32 65 68 09 09 3b 70 74 |..ld.de,|2eh..;pt|
|00004150| 20 74 6f 20 62 79 74 65 | 20 61 64 64 72 65 73 73 | to byte| address|
|00004160| 0d 0a 09 61 64 64 09 68 | 6c 2c 64 65 0d 0a 09 70 |...add.h|l,de...p|
|00004170| 6f 70 09 61 66 09 09 3b | 67 65 74 20 76 61 6c 75 |op.af..;|get valu|
|00004180| 65 0d 0a 09 6c 64 09 28 | 68 6c 29 2c 61 09 09 3b |e...ld.(|hl),a..;|
|00004190| 70 75 74 20 62 79 74 65 | 20 69 6e 20 41 0d 0a 09 |put byte| in A...|
|000041a0| 70 6f 70 09 64 65 09 09 | 3b 72 65 73 74 6f 72 65 |pop.de..|;restore|
|000041b0| 20 72 65 67 73 0d 0a 09 | 70 6f 70 09 68 6c 0d 0a | regs...|pop.hl..|
|000041c0| 09 72 65 74 0d 0a 0d 0a | 09 65 6e 64 0d 0a 1a 1a |.ret....|.end....|
|000041d0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000041e0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000041f0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00004200| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00004210| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 50 46 49 4e 44 |e Name: | Z3PFIND|
|00004220| 0d 0a 3b 20 41 75 74 68 | 6f 72 3a 20 20 52 69 63 |..; Auth|or: Ric|
|00004230| 68 61 72 64 20 43 6f 6e | 6e 0d 0a 3b 20 5a 33 4c |hard Con|n..; Z3L|
|00004240| 49 42 20 20 56 65 72 73 | 69 6f 6e 20 4e 75 6d 62 |IB Vers|ion Numb|
|00004250| 65 72 3a 20 20 31 2e 33 | 0d 0a 3b 20 4d 6f 64 75 |er: 1.3|..; Modu|
|00004260| 6c 65 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |le Versi|on Numbe|
|00004270| 72 3a 20 20 31 2e 31 0d | 0a 3b 0d 0a 09 70 75 62 |r: 1.1.|.;...pub|
|00004280| 6c 69 63 09 70 66 69 6e | 64 0d 0a 0d 0a 09 45 58 |lic.pfin|d.....EX|
|00004290| 54 09 47 45 54 50 41 54 | 48 0d 0a 0d 0a 3b 0d 0a |T.GETPAT|H....;..|
|000042a0| 3b 20 20 45 51 55 41 54 | 45 53 0d 0a 3b 0d 0a 42 |; EQUAT|ES..;..B|
|000042b0| 44 4f 53 09 45 51 55 09 | 35 0d 0a 0d 0a 3b 0d 0a |DOS.EQU.|5....;..|
|000042c0| 3b 20 20 49 4e 54 45 52 | 4e 41 4c 20 42 55 46 46 |; INTER|NAL BUFF|
|000042d0| 45 52 53 0d 0a 3b 0d 0a | 43 55 52 45 4c 54 3a 0d |ERS..;..|CURELT:.|
|000042e0| 0a 09 44 53 09 31 09 3b | 20 4c 4f 57 2d 4f 52 44 |..DS.1.;| LOW-ORD|
|000042f0| 45 52 20 50 54 52 20 54 | 4f 20 43 55 52 52 45 4e |ER PTR T|O CURREN|
|00004300| 54 20 50 41 54 48 20 45 | 4c 45 4d 45 4e 54 0d 0a |T PATH E|LEMENT..|
|00004310| 53 45 41 52 43 55 52 3a | 0d 0a 09 44 53 09 31 09 |SEARCUR:|...DS.1.|
|00004320| 3b 20 30 3d 44 4f 4e 27 | 54 20 53 45 41 52 43 48 |; 0=DON'|T SEARCH|
|00004330| 20 43 55 52 52 45 4e 54 | 20 44 49 52 0d 0a 43 44 | CURRENT| DIR..CD|
|00004340| 49 53 4b 3a 0d 0a 09 44 | 53 09 31 09 3b 20 43 55 |ISK:...D|S.1.; CU|
|00004350| 52 52 45 4e 54 20 44 49 | 53 4b 20 4e 55 4d 42 45 |RRENT DI|SK NUMBE|
|00004360| 52 0d 0a 43 55 53 45 52 | 3a 0d 0a 09 44 53 09 31 |R..CUSER|:...DS.1|
|00004370| 09 3b 20 43 55 52 52 45 | 4e 54 20 55 53 45 52 20 |.; CURRE|NT USER |
|00004380| 4e 55 4d 42 45 52 0d 0a | 54 44 49 53 4b 3a 0d 0a |NUMBER..|TDISK:..|
|00004390| 09 44 53 09 31 09 3b 20 | 54 45 4d 50 20 44 49 53 |.DS.1.; |TEMP DIS|
|000043a0| 4b 20 4e 55 4d 42 45 52 | 0d 0a 54 55 53 45 52 3a |K NUMBER|..TUSER:|
|000043b0| 0d 0a 09 44 53 09 31 09 | 3b 20 54 45 4d 50 20 55 |...DS.1.|; TEMP U|
|000043c0| 53 45 52 20 4e 55 4d 42 | 45 52 0d 0a 0d 0a 3b 0d |SER NUMB|ER....;.|
|000043d0| 0a 3b 20 20 50 46 49 4e | 44 20 2d 2d 20 4c 4f 4f |.; PFIN|D -- LOO|
|000043e0| 4b 20 46 4f 52 20 46 49 | 4c 45 20 57 48 4f 53 45 |K FOR FI|LE WHOSE|
|000043f0| 20 46 43 42 20 49 53 20 | 50 54 45 44 20 54 4f 20 | FCB IS |PTED TO |
|00004400| 42 59 20 44 45 20 41 4c | 4f 4e 47 20 50 41 54 48 |BY DE AL|ONG PATH|
|00004410| 0d 0a 3b 09 49 46 20 46 | 49 4c 45 20 46 4f 55 4e |..;.IF F|ILE FOUN|
|00004420| 44 2c 20 52 45 54 55 52 | 4e 20 44 49 53 4b 20 4e |D, RETUR|N DISK N|
|00004430| 55 4d 42 45 52 20 49 4e | 20 42 2c 20 55 53 45 52 |UMBER IN| B, USER|
|00004440| 20 4e 55 4d 42 45 52 20 | 49 4e 20 43 2c 20 41 4e | NUMBER |IN C, AN|
|00004450| 44 0d 0a 3b 09 5a 45 52 | 4f 20 46 4c 41 47 20 43 |D..;.ZER|O FLAG C|
|00004460| 4c 45 41 52 20 28 4e 5a | 29 20 57 49 54 48 20 41 |LEAR (NZ|) WITH A|
|00004470| 3d 30 46 46 48 3b 20 49 | 46 20 4e 4f 54 20 46 4f |=0FFH; I|F NOT FO|
|00004480| 55 4e 44 2c 20 52 45 54 | 55 52 4e 20 57 49 54 48 |UND, RET|URN WITH|
|00004490| 20 5a 45 52 4f 20 46 4c | 41 47 0d 0a 3b 09 53 45 | ZERO FL|AG..;.SE|
|000044a0| 54 20 28 5a 29 20 41 4e | 44 20 41 3d 30 3b 20 49 |T (Z) AN|D A=0; I|
|000044b0| 46 20 45 52 52 4f 52 2c | 20 52 45 54 55 52 4e 20 |F ERROR,| RETURN |
|000044c0| 57 49 54 48 20 45 52 52 | 4f 52 20 43 4f 44 45 20 |WITH ERR|OR CODE |
|000044d0| 28 31 2c 32 2c 33 29 20 | 41 4e 44 20 4e 5a 0d 0a |(1,2,3) |AND NZ..|
|000044e0| 3b 0d 0a 3b 09 49 4e 50 | 55 54 53 3a 20 20 44 45 |;..;.INP|UTS: DE|
|000044f0| 20 50 54 53 20 54 4f 20 | 46 43 42 2c 20 41 20 49 | PTS TO |FCB, A I|
|00004500| 53 20 46 4c 41 47 3a 20 | 41 3d 30 20 49 46 20 4e |S FLAG: |A=0 IF N|
|00004510| 4f 20 43 55 52 52 45 4e | 54 20 53 45 41 52 43 48 |O CURREN|T SEARCH|
|00004520| 20 41 4c 53 4f 2c 0d 0a | 3b 09 09 09 09 09 09 3c | ALSO,..|;......<|
|00004530| 3e 30 20 49 46 20 43 55 | 52 52 45 4e 54 20 53 45 |>0 IF CU|RRENT SE|
|00004540| 41 52 43 48 0d 0a 3b 09 | 4f 55 54 50 55 54 53 3a |ARCH..;.|OUTPUTS:|
|00004550| 20 20 42 3d 44 49 53 4b | 2c 20 43 3d 55 53 45 52 | B=DISK|, C=USER|
|00004560| 20 49 46 20 46 4f 55 4e | 44 0d 0a 3b 09 09 09 5a | IF FOUN|D..;...Z|
|00004570| 45 52 4f 20 46 4c 41 47 | 20 53 45 54 20 28 5a 29 |ERO FLAG| SET (Z)|
|00004580| 20 49 46 20 4e 4f 54 20 | 46 4f 55 4e 44 0d 0a 3b | IF NOT |FOUND..;|
|00004590| 09 09 09 5a 45 52 4f 20 | 46 4c 41 47 20 43 4c 45 |...ZERO |FLAG CLE|
|000045a0| 41 52 20 28 4e 5a 29 20 | 49 46 20 46 4f 55 4e 44 |AR (NZ) |IF FOUND|
|000045b0| 0d 0a 3b 0d 0a 50 46 49 | 4e 44 3a 0d 0a 09 50 55 |..;..PFI|ND:...PU|
|000045c0| 53 48 09 48 4c 09 09 3b | 20 53 41 56 45 20 52 45 |SH.HL..;| SAVE RE|
|000045d0| 47 53 0d 0a 09 50 55 53 | 48 09 44 45 0d 0a 09 4c |GS...PUS|H.DE...L|
|000045e0| 44 09 28 53 45 41 52 43 | 55 52 29 2c 41 09 3b 20 |D.(SEARC|UR),A.; |
|000045f0| 53 45 54 20 46 4c 41 47 | 20 54 4f 20 53 45 41 52 |SET FLAG| TO SEAR|
|00004600| 43 48 20 43 55 52 52 45 | 4e 54 0d 0a 09 58 4f 52 |CH CURRE|NT...XOR|
|00004610| 09 41 09 09 3b 20 53 45 | 54 20 44 49 53 4b 20 4e |.A..; SE|T DISK N|
|00004620| 55 4d 42 45 52 20 54 4f | 20 43 55 52 52 45 4e 54 |UMBER TO| CURRENT|
|00004630| 0d 0a 09 4c 44 09 28 44 | 45 29 2c 41 09 09 3b 20 |...LD.(D|E),A..; |
|00004640| 43 48 41 4e 47 45 20 46 | 43 42 0d 0a 09 50 55 53 |CHANGE F|CB...PUS|
|00004650| 48 09 44 45 09 09 3b 20 | 53 41 56 45 20 46 43 42 |H.DE..; |SAVE FCB|
|00004660| 20 50 54 52 0d 0a 09 4c | 44 09 43 2c 32 35 09 09 | PTR...L|D.C,25..|
|00004670| 3b 20 47 45 54 20 43 55 | 52 52 45 4e 54 20 44 49 |; GET CU|RRENT DI|
|00004680| 53 4b 0d 0a 09 43 41 4c | 4c 09 42 44 4f 53 48 0d |SK...CAL|L.BDOSH.|
|00004690| 0a 09 4c 44 09 28 43 44 | 49 53 4b 29 2c 41 09 3b |..LD.(CD|ISK),A.;|
|000046a0| 20 53 41 56 45 20 43 55 | 52 52 45 4e 54 20 44 49 | SAVE CU|RRENT DI|
|000046b0| 53 4b 0d 0a 09 4c 44 09 | 28 54 44 49 53 4b 29 2c |SK...LD.|(TDISK),|
|000046c0| 41 09 3b 20 53 45 54 20 | 54 45 4d 50 20 44 49 53 |A.; SET |TEMP DIS|
|000046d0| 4b 0d 0a 09 4c 44 09 43 | 2c 33 32 09 09 3b 20 47 |K...LD.C|,32..; G|
|000046e0| 45 54 20 43 55 52 52 45 | 4e 54 20 55 53 45 52 0d |ET CURRE|NT USER.|
|000046f0| 0a 09 4c 44 09 45 2c 30 | 46 46 48 0d 0a 09 43 41 |..LD.E,0|FFH...CA|
|00004700| 4c 4c 09 42 44 4f 53 48 | 0d 0a 09 4c 44 09 28 43 |LL.BDOSH|...LD.(C|
|00004710| 55 53 45 52 29 2c 41 09 | 3b 20 53 41 56 45 20 43 |USER),A.|; SAVE C|
|00004720| 55 52 52 45 4e 54 20 55 | 53 45 52 0d 0a 09 4c 44 |URRENT U|SER...LD|
|00004730| 09 28 54 55 53 45 52 29 | 2c 41 09 3b 20 53 41 56 |.(TUSER)|,A.; SAV|
|00004740| 45 20 54 45 4d 50 20 55 | 53 45 52 0d 0a 09 50 4f |E TEMP U|SER...PO|
|00004750| 50 09 44 45 09 09 3b 20 | 47 45 54 20 46 43 42 20 |P.DE..; |GET FCB |
|00004760| 50 54 52 0d 0a 09 43 41 | 4c 4c 09 47 45 54 50 41 |PTR...CA|LL.GETPA|
|00004770| 54 48 09 09 3b 20 47 45 | 54 20 41 44 44 52 45 53 |TH..; GE|T ADDRES|
|00004780| 53 20 4f 46 20 45 58 54 | 45 52 4e 41 4c 20 50 41 |S OF EXT|ERNAL PA|
|00004790| 54 48 20 49 4e 20 48 4c | 0d 0a 09 4c 44 09 41 2c |TH IN HL|...LD.A,|
|000047a0| 28 53 45 41 52 43 55 52 | 29 09 3b 20 53 45 41 52 |(SEARCUR|).; SEAR|
|000047b0| 43 48 20 43 55 52 52 45 | 4e 54 3f 0d 0a 09 4f 52 |CH CURRE|NT?...OR|
|000047c0| 09 41 09 09 3b 20 30 3d | 4e 4f 0d 0a 09 4a 50 09 |.A..; 0=|NO...JP.|
|000047d0| 5a 2c 50 46 31 0d 0a 3b | 0d 0a 3b 20 4c 4f 4f 4b |Z,PF1..;|..; LOOK|
|000047e0| 20 46 4f 52 20 46 49 4c | 45 20 57 48 4f 53 45 20 | FOR FIL|E WHOSE |
|000047f0| 46 43 42 20 49 53 20 50 | 54 45 44 20 54 4f 20 42 |FCB IS P|TED TO B|
|00004800| 59 20 44 45 0d 0a 3b 0d | 0a 50 46 30 3a 0d 0a 09 |Y DE..;.|.PF0:...|
|00004810| 4c 44 09 43 2c 31 37 09 | 09 3b 20 53 45 41 52 43 |LD.C,17.|.; SEARC|
|00004820| 48 20 46 4f 52 20 46 49 | 52 53 54 0d 0a 09 43 41 |H FOR FI|RST...CA|
|00004830| 4c 4c 09 42 44 4f 53 48 | 0d 0a 09 49 4e 43 09 41 |LL.BDOSH|...INC.A|
|00004840| 09 09 3b 20 46 49 4c 45 | 20 46 4f 55 4e 44 3f 0d |..; FILE| FOUND?.|
|00004850| 0a 09 4a 50 09 4e 5a 2c | 50 46 46 4e 44 0d 0a 3b |..JP.NZ,|PFFND..;|
|00004860| 0d 0a 3b 20 41 44 56 41 | 4e 43 45 20 54 4f 20 4e |..; ADVA|NCE TO N|
|00004870| 45 58 54 20 45 4c 45 4d | 45 4e 54 20 49 4e 20 50 |EXT ELEM|ENT IN P|
|00004880| 41 54 48 0d 0a 3b 0d 0a | 50 46 31 3a 0d 0a 09 4c |ATH..;..|PF1:...L|
|00004890| 44 09 41 2c 28 48 4c 29 | 09 09 3b 20 47 45 54 20 |D.A,(HL)|..; GET |
|000048a0| 44 52 49 56 45 20 4e 55 | 4d 42 45 52 20 46 52 4f |DRIVE NU|MBER FRO|
|000048b0| 4d 20 50 41 54 48 0d 0a | 09 4f 52 09 41 09 09 3b |M PATH..|.OR.A..;|
|000048c0| 20 30 3d 44 4f 4e 45 3d | 46 49 4c 45 20 4e 4f 54 | 0=DONE=|FILE NOT|
|000048d0| 20 46 4f 55 4e 44 0d 0a | 09 4a 50 09 5a 2c 50 46 | FOUND..|.JP.Z,PF|
|000048e0| 4e 46 4e 44 0d 0a 09 43 | 41 4c 4c 09 47 45 54 44 |NFND...C|ALL.GETD|
|000048f0| 55 09 09 3b 20 47 45 54 | 20 44 55 20 49 4e 20 42 |U..; GET| DU IN B|
|00004900| 43 0d 0a 09 43 41 4c 4c | 09 43 4b 44 55 50 09 09 |C...CALL|.CKDUP..|
|00004910| 3b 20 43 48 45 43 4b 20 | 46 4f 52 20 44 55 50 4c |; CHECK |FOR DUPL|
|00004920| 49 43 41 54 49 4f 4e 20 | 4f 46 20 50 41 54 48 20 |ICATION |OF PATH |
|00004930| 45 4e 54 52 59 0d 0a 09 | 49 4e 43 09 48 4c 09 09 |ENTRY...|INC.HL..|
|00004940| 3b 20 50 54 20 54 4f 20 | 4e 45 58 54 20 50 41 54 |; PT TO |NEXT PAT|
|00004950| 48 20 45 4e 54 52 59 0d | 0a 09 49 4e 43 09 48 4c |H ENTRY.|..INC.HL|
|00004960| 0d 0a 09 4a 50 09 5a 2c | 50 46 31 09 09 3b 20 43 |...JP.Z,|PF1..; C|
|00004970| 4f 4e 54 49 4e 55 45 20 | 49 46 20 44 55 50 4c 49 |ONTINUE |IF DUPLI|
|00004980| 43 41 54 49 4f 4e 20 4f | 46 20 50 41 54 48 20 45 |CATION O|F PATH E|
|00004990| 4e 54 52 59 0d 0a 09 50 | 55 53 48 09 44 45 09 09 |NTRY...P|USH.DE..|
|000049a0| 3b 20 53 41 56 45 20 46 | 43 42 20 50 54 52 0d 0a |; SAVE F|CB PTR..|
|000049b0| 09 50 55 53 48 09 42 43 | 09 09 3b 20 53 41 56 45 |.PUSH.BC|..; SAVE|
|000049c0| 20 42 43 0d 0a 09 4c 44 | 09 41 2c 42 09 09 3b 20 | BC...LD|.A,B..; |
|000049d0| 53 45 54 20 44 49 53 4b | 0d 0a 09 4c 44 09 28 54 |SET DISK|...LD.(T|
|000049e0| 44 49 53 4b 29 2c 41 0d | 0a 09 4c 44 09 45 2c 41 |DISK),A.|..LD.E,A|
|000049f0| 0d 0a 09 4c 44 09 43 2c | 31 34 09 09 3b 20 53 45 |...LD.C,|14..; SE|
|00004a00| 4c 45 43 54 20 44 49 53 | 4b 0d 0a 09 43 41 4c 4c |LECT DIS|K...CALL|
|00004a10| 09 42 44 4f 53 48 0d 0a | 09 50 4f 50 09 42 43 09 |.BDOSH..|.POP.BC.|
|00004a20| 09 3b 20 47 45 54 20 42 | 43 0d 0a 09 4c 44 09 41 |.; GET B|C...LD.A|
|00004a30| 2c 43 09 09 3b 20 53 45 | 54 20 55 53 45 52 0d 0a |,C..; SE|T USER..|
|00004a40| 09 4c 44 09 28 54 55 53 | 45 52 29 2c 41 0d 0a 09 |.LD.(TUS|ER),A...|
|00004a50| 4c 44 09 45 2c 41 0d 0a | 09 4c 44 09 43 2c 33 32 |LD.E,A..|.LD.C,32|
|00004a60| 09 09 3b 20 53 45 4c 45 | 43 54 20 55 53 45 52 0d |..; SELE|CT USER.|
|00004a70| 0a 09 43 41 4c 4c 09 42 | 44 4f 53 48 0d 0a 09 50 |..CALL.B|DOSH...P|
|00004a80| 4f 50 09 44 45 09 09 3b | 20 47 45 54 20 46 43 42 |OP.DE..;| GET FCB|
|00004a90| 20 50 54 52 0d 0a 09 4a | 50 09 50 46 30 09 09 3b | PTR...J|P.PF0..;|
|00004aa0| 20 43 4f 4e 54 49 4e 55 | 45 20 53 45 41 52 43 48 | CONTINU|E SEARCH|
|00004ab0| 0d 0a 3b 0d 0a 3b 20 20 | 46 49 4c 45 20 46 4f 55 |..;..; |FILE FOU|
|00004ac0| 4e 44 20 46 4c 41 47 20 | 53 45 54 54 49 4e 47 0d |ND FLAG |SETTING.|
|00004ad0| 0a 3b 0d 0a 50 46 46 4e | 44 3a 0d 0a 09 58 4f 52 |.;..PFFN|D:...XOR|
|00004ae0| 09 41 09 09 3b 20 46 4f | 55 4e 44 20 52 45 54 55 |.A..; FO|UND RETU|
|00004af0| 52 4e 20 43 4f 44 45 0d | 0a 09 44 45 43 09 41 09 |RN CODE.|..DEC.A.|
|00004b00| 09 3b 20 53 45 54 20 4e | 5a 0d 0a 09 4a 50 09 46 |.; SET N|Z...JP.F|
|00004b10| 4e 44 45 58 49 54 0d 0a | 3b 0d 0a 3b 20 20 46 49 |NDEXIT..|;..; FI|
|00004b20| 4c 45 20 4e 4f 54 20 46 | 4f 55 4e 44 20 45 52 52 |LE NOT F|OUND ERR|
|00004b30| 4f 52 0d 0a 3b 0d 0a 50 | 46 4e 46 4e 44 3a 0d 0a |OR..;..P|FNFND:..|
|00004b40| 09 58 4f 52 09 41 09 09 | 3b 20 46 49 4c 45 20 4e |.XOR.A..|; FILE N|
|00004b50| 4f 54 20 46 4f 55 4e 44 | 0d 0a 46 4e 44 45 58 49 |OT FOUND|..FNDEXI|
|00004b60| 54 3a 0d 0a 09 50 55 53 | 48 09 41 46 09 09 3b 20 |T:...PUS|H.AF..; |
|00004b70| 53 41 56 45 20 52 45 54 | 55 52 4e 20 43 4f 44 45 |SAVE RET|URN CODE|
|00004b80| 0d 0a 09 4c 44 09 41 2c | 28 43 44 49 53 4b 29 09 |...LD.A,|(CDISK).|
|00004b90| 3b 20 52 45 53 54 4f 52 | 45 20 43 55 52 52 45 4e |; RESTOR|E CURREN|
|00004ba0| 54 20 44 49 53 4b 0d 0a | 09 4c 44 09 45 2c 41 09 |T DISK..|.LD.E,A.|
|00004bb0| 09 3b 20 53 41 56 45 20 | 49 4e 20 45 0d 0a 09 4c |.; SAVE |IN E...L|
|00004bc0| 44 09 43 2c 31 34 09 09 | 3b 20 53 45 4c 45 43 54 |D.C,14..|; SELECT|
|00004bd0| 20 44 49 53 4b 20 49 4e | 20 45 0d 0a 09 43 41 4c | DISK IN| E...CAL|
|00004be0| 4c 09 42 44 4f 53 0d 0a | 09 4c 44 09 41 2c 28 43 |L.BDOS..|.LD.A,(C|
|00004bf0| 55 53 45 52 29 09 3b 20 | 52 45 53 54 4f 52 45 20 |USER).; |RESTORE |
|00004c00| 43 55 52 52 45 4e 54 20 | 55 53 45 52 0d 0a 09 4c |CURRENT |USER...L|
|00004c10| 44 09 45 2c 41 09 09 3b | 20 53 41 56 45 20 49 4e |D.E,A..;| SAVE IN|
|00004c20| 20 45 0d 0a 09 4c 44 09 | 43 2c 33 32 09 09 3b 20 | E...LD.|C,32..; |
|00004c30| 53 45 4c 45 43 54 20 55 | 53 45 52 20 49 4e 20 45 |SELECT U|SER IN E|
|00004c40| 0d 0a 09 43 41 4c 4c 09 | 42 44 4f 53 0d 0a 09 4c |...CALL.|BDOS...L|
|00004c50| 44 09 41 2c 28 54 44 49 | 53 4b 29 09 3b 20 53 45 |D.A,(TDI|SK).; SE|
|00004c60| 54 20 46 4f 55 4e 44 20 | 44 49 53 4b 0d 0a 09 4c |T FOUND |DISK...L|
|00004c70| 44 09 42 2c 41 0d 0a 09 | 4c 44 09 41 2c 28 54 55 |D.B,A...|LD.A,(TU|
|00004c80| 53 45 52 29 09 3b 20 53 | 45 54 20 46 4f 55 4e 44 |SER).; S|ET FOUND|
|00004c90| 20 55 53 45 52 0d 0a 09 | 4c 44 09 43 2c 41 0d 0a | USER...|LD.C,A..|
|00004ca0| 09 50 4f 50 09 41 46 09 | 09 3b 20 47 45 54 20 52 |.POP.AF.|.; GET R|
|00004cb0| 45 54 55 52 4e 20 43 4f | 44 45 0d 0a 09 50 4f 50 |ETURN CO|DE...POP|
|00004cc0| 09 44 45 09 09 3b 20 52 | 45 53 54 4f 52 45 20 52 |.DE..; R|ESTORE R|
|00004cd0| 45 47 53 0d 0a 09 50 4f | 50 09 48 4c 0d 0a 09 52 |EGS...PO|P.HL...R|
|00004ce0| 45 54 0d 0a 0d 0a 3b 0d | 0a 3b 20 20 43 48 45 43 |ET....;.|.; CHEC|
|00004cf0| 4b 20 41 4c 4f 4e 47 20 | 50 41 54 48 20 46 4f 52 |K ALONG |PATH FOR|
|00004d00| 20 44 55 50 4c 49 43 41 | 54 49 4f 4e 20 4f 46 20 | DUPLICA|TION OF |
|00004d10| 45 4e 54 52 59 0d 0a 3b | 20 20 20 20 52 45 54 55 |ENTRY..;| RETU|
|00004d20| 52 4e 20 57 49 54 48 20 | 5a 20 49 46 20 53 4f 0d |RN WITH |Z IF SO.|
|00004d30| 0a 3b 0d 0a 43 4b 44 55 | 50 3a 0d 0a 09 50 55 53 |.;..CKDU|P:...PUS|
|00004d40| 48 09 48 4c 09 09 3b 20 | 53 41 56 45 20 50 54 52 |H.HL..; |SAVE PTR|
|00004d50| 53 0d 0a 09 50 55 53 48 | 09 44 45 09 09 3b 20 53 |S...PUSH|.DE..; S|
|00004d60| 41 56 45 20 46 43 42 0d | 0a 09 50 55 53 48 09 42 |AVE FCB.|..PUSH.B|
|00004d70| 43 09 09 3b 20 53 41 56 | 45 20 44 55 0d 0a 09 4c |C..; SAV|E DU...L|
|00004d80| 44 09 41 2c 4c 09 09 3b | 20 53 41 56 45 20 4c 4f |D.A,L..;| SAVE LO|
|00004d90| 57 2d 4f 52 44 45 52 20 | 41 44 44 52 45 53 53 0d |W-ORDER |ADDRESS.|
|00004da0| 0a 09 4c 44 09 28 43 55 | 52 45 4c 54 29 2c 41 0d |..LD.(CU|RELT),A.|
|00004db0| 0a 09 43 41 4c 4c 09 47 | 45 54 50 41 54 48 09 09 |..CALL.G|ETPATH..|
|00004dc0| 3b 20 50 54 20 54 4f 20 | 46 49 52 53 54 20 45 4c |; PT TO |FIRST EL|
|00004dd0| 45 4d 45 4e 54 20 4f 46 | 20 50 41 54 48 0d 0a 43 |EMENT OF| PATH..C|
|00004de0| 4b 44 55 50 31 3a 0d 0a | 09 4c 44 09 41 2c 28 43 |KDUP1:..|.LD.A,(C|
|00004df0| 55 52 45 4c 54 29 09 3b | 20 47 45 54 20 43 55 52 |URELT).;| GET CUR|
|00004e00| 52 45 4e 54 20 45 4c 45 | 4d 45 4e 54 0d 0a 09 43 |RENT ELE|MENT...C|
|00004e10| 50 09 4c 09 09 3b 20 41 | 52 45 20 57 45 20 54 48 |P.L..; A|RE WE TH|
|00004e20| 45 52 45 3f 0d 0a 09 4a | 50 09 5a 2c 4e 4f 44 55 |ERE?...J|P.Z,NODU|
|00004e30| 50 0d 0a 09 43 41 4c 4c | 09 47 45 54 44 55 09 09 |P...CALL|.GETDU..|
|00004e40| 3b 20 47 45 54 20 45 4c | 45 4d 45 4e 54 20 49 4e |; GET EL|EMENT IN|
|00004e50| 20 42 43 0d 0a 09 49 4e | 43 09 48 4c 09 09 3b 20 | BC...IN|C.HL..; |
|00004e60| 50 54 20 54 4f 20 4e 45 | 58 54 20 50 41 54 48 20 |PT TO NE|XT PATH |
|00004e70| 45 4c 45 4d 45 4e 54 0d | 0a 09 49 4e 43 09 48 4c |ELEMENT.|..INC.HL|
|00004e80| 0d 0a 09 50 4f 50 09 44 | 45 09 09 3b 20 47 45 54 |...POP.D|E..; GET|
|00004e90| 20 43 55 52 52 45 4e 54 | 20 44 55 20 49 4e 20 44 | CURRENT| DU IN D|
|00004ea0| 45 0d 0a 09 50 55 53 48 | 09 44 45 09 09 3b 20 53 |E...PUSH|.DE..; S|
|00004eb0| 41 56 45 20 49 54 20 41 | 47 41 49 4e 0d 0a 09 4c |AVE IT A|GAIN...L|
|00004ec0| 44 09 41 2c 42 09 09 3b | 20 43 4f 4d 50 41 52 45 |D.A,B..;| COMPARE|
|00004ed0| 20 41 47 41 49 4e 53 54 | 20 50 41 54 48 20 45 4c | AGAINST| PATH EL|
|00004ee0| 45 4d 45 4e 54 0d 0a 09 | 43 50 09 44 0d 0a 09 4a |EMENT...|CP.D...J|
|00004ef0| 50 09 4e 5a 2c 43 4b 44 | 55 50 31 0d 0a 09 4c 44 |P.NZ,CKD|UP1...LD|
|00004f00| 09 41 2c 43 0d 0a 09 43 | 50 09 45 0d 0a 09 4a 50 |.A,C...C|P.E...JP|
|00004f10| 09 4e 5a 2c 43 4b 44 55 | 50 31 09 3b 20 4e 4f 20 |.NZ,CKDU|P1.; NO |
|00004f20| 4d 41 54 43 48 2c 20 53 | 4f 20 43 4f 4e 54 49 4e |MATCH, S|O CONTIN|
|00004f30| 55 45 0d 0a 3b 0d 0a 3b | 20 20 57 45 20 48 41 56 |UE..;..;| WE HAV|
|00004f40| 45 20 41 20 44 55 50 4c | 49 43 41 54 45 20 2d 20 |E A DUPL|ICATE - |
|00004f50| 52 45 54 55 52 4e 20 5a | 0d 0a 3b 0d 0a 09 50 4f |RETURN Z|..;...PO|
|00004f60| 50 09 42 43 09 09 3b 20 | 52 45 53 54 4f 52 45 20 |P.BC..; |RESTORE |
|00004f70| 52 45 47 53 0d 0a 09 50 | 4f 50 09 44 45 0d 0a 09 |REGS...P|OP.DE...|
|00004f80| 50 4f 50 09 48 4c 0d 0a | 09 58 4f 52 09 41 09 09 |POP.HL..|.XOR.A..|
|00004f90| 3b 20 53 45 54 20 5a 0d | 0a 09 52 45 54 0d 0a 3b |; SET Z.|..RET..;|
|00004fa0| 0d 0a 3b 20 20 4e 4f 20 | 44 55 50 4c 49 43 41 54 |..; NO |DUPLICAT|
|00004fb0| 45 53 20 2d 20 52 45 54 | 55 52 4e 20 4e 5a 0d 0a |ES - RET|URN NZ..|
|00004fc0| 3b 0d 0a 4e 4f 44 55 50 | 3a 0d 0a 09 50 4f 50 09 |;..NODUP|:...POP.|
|00004fd0| 42 43 09 09 3b 20 52 45 | 53 54 4f 52 45 20 52 45 |BC..; RE|STORE RE|
|00004fe0| 47 53 0d 0a 09 50 4f 50 | 09 44 45 0d 0a 09 50 4f |GS...POP|.DE...PO|
|00004ff0| 50 09 48 4c 0d 0a 09 58 | 4f 52 09 41 09 09 3b 20 |P.HL...X|OR.A..; |
|00005000| 53 45 54 20 4e 5a 0d 0a | 09 44 45 43 09 41 0d 0a |SET NZ..|.DEC.A..|
|00005010| 09 52 45 54 0d 0a 0d 0a | 3b 0d 0a 3b 20 20 52 45 |.RET....|;..; RE|
|00005020| 54 55 52 4e 20 44 55 20 | 49 4e 20 42 43 20 46 4f |TURN DU |IN BC FO|
|00005030| 52 20 43 55 52 52 45 4e | 54 20 50 41 54 48 20 45 |R CURREN|T PATH E|
|00005040| 4c 45 4d 45 4e 54 20 50 | 54 45 44 20 54 4f 20 42 |LEMENT P|TED TO B|
|00005050| 59 20 48 4c 0d 0a 3b 0d | 0a 47 45 54 44 55 3a 0d |Y HL..;.|.GETDU:.|
|00005060| 0a 09 4c 44 09 41 2c 28 | 48 4c 29 09 09 3b 20 47 |..LD.A,(|HL)..; G|
|00005070| 45 54 20 44 49 53 4b 0d | 0a 09 43 50 09 27 24 27 |ET DISK.|..CP.'$'|
|00005080| 09 09 3b 20 43 55 52 52 | 45 4e 54 3f 0d 0a 09 4a |..; CURR|ENT?...J|
|00005090| 50 09 4e 5a 2c 47 45 54 | 44 55 31 0d 0a 09 4c 44 |P.NZ,GET|DU1...LD|
|000050a0| 09 41 2c 28 43 44 49 53 | 4b 29 09 3b 20 53 45 4c |.A,(CDIS|K).; SEL|
|000050b0| 45 43 54 20 43 55 52 52 | 45 4e 54 20 44 49 53 4b |ECT CURR|ENT DISK|
|000050c0| 0d 0a 09 49 4e 43 09 41 | 09 09 3b 20 41 44 4a 55 |...INC.A|..; ADJU|
|000050d0| 53 54 0d 0a 47 45 54 44 | 55 31 3a 0d 0a 09 44 45 |ST..GETD|U1:...DE|
|000050e0| 43 09 41 09 09 3b 20 53 | 45 54 20 44 49 53 4b 20 |C.A..; S|ET DISK |
|000050f0| 46 4f 52 20 41 3d 30 0d | 0a 09 4c 44 09 42 2c 41 |FOR A=0.|..LD.B,A|
|00005100| 09 09 3b 20 44 49 53 4b | 20 49 4e 20 42 0d 0a 09 |..; DISK| IN B...|
|00005110| 49 4e 43 09 48 4c 09 09 | 3b 20 50 54 20 54 4f 20 |INC.HL..|; PT TO |
|00005120| 55 53 45 52 0d 0a 09 4c | 44 09 41 2c 28 48 4c 29 |USER...L|D.A,(HL)|
|00005130| 09 09 3b 20 47 45 54 20 | 55 53 45 52 0d 0a 09 44 |..; GET |USER...D|
|00005140| 45 43 09 48 4c 09 09 3b | 20 50 54 20 42 41 43 4b |EC.HL..;| PT BACK|
|00005150| 20 54 4f 20 44 49 53 4b | 0d 0a 09 43 50 09 27 24 | TO DISK|...CP.'$|
|00005160| 27 09 09 3b 20 43 55 52 | 52 45 4e 54 3f 0d 0a 09 |'..; CUR|RENT?...|
|00005170| 4a 50 09 4e 5a 2c 47 45 | 54 44 55 32 0d 0a 09 4c |JP.NZ,GE|TDU2...L|
|00005180| 44 09 41 2c 28 43 55 53 | 45 52 29 09 3b 20 47 45 |D.A,(CUS|ER).; GE|
|00005190| 54 20 43 55 52 52 45 4e | 54 20 55 53 45 52 0d 0a |T CURREN|T USER..|
|000051a0| 47 45 54 44 55 32 3a 0d | 0a 09 4c 44 09 43 2c 41 |GETDU2:.|..LD.C,A|
|000051b0| 09 09 3b 20 55 53 45 52 | 20 49 4e 20 43 0d 0a 09 |..; USER| IN C...|
|000051c0| 52 45 54 0d 0a 0d 0a 3b | 0d 0a 3b 20 20 43 41 4c |RET....;|..; CAL|
|000051d0| 4c 20 42 44 4f 53 20 41 | 4e 44 20 4e 4f 54 20 43 |L BDOS A|ND NOT C|
|000051e0| 48 41 4e 47 45 20 48 4c | 0d 0a 3b 0d 0a 42 44 4f |HANGE HL|..;..BDO|
|000051f0| 53 48 3a 0d 0a 09 50 55 | 53 48 09 48 4c 09 09 3b |SH:...PU|SH.HL..;|
|00005200| 20 43 41 4c 4c 20 42 44 | 4f 53 2c 20 42 55 54 20 | CALL BD|OS, BUT |
|00005210| 53 41 56 45 20 48 4c 0d | 0a 09 50 55 53 48 09 44 |SAVE HL.|..PUSH.D|
|00005220| 45 0d 0a 09 43 41 4c 4c | 09 42 44 4f 53 0d 0a 09 |E...CALL|.BDOS...|
|00005230| 50 4f 50 09 44 45 0d 0a | 09 50 4f 50 09 48 4c 0d |POP.DE..|.POP.HL.|
|00005240| 0a 09 52 45 54 0d 0a 0d | 0a 09 45 4e 44 0d 0a 1a |..RET...|..END...|
|00005250| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00005260| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00005270| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00005280| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00005290| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 50 46 4e 58 0d |e Name: | Z3PFNX.|
|000052a0| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|000052b0| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|000052c0| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|000052d0| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|000052e0| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|000052f0| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00005300| 69 63 09 70 75 74 66 6e | 78 0d 0a 0d 0a 09 65 78 |ic.putfn|x.....ex|
|00005310| 74 09 65 6e 76 70 74 72 | 0d 0a 0d 0a 3b 0d 0a 3b |t.envptr|....;..;|
|00005320| 09 50 55 54 46 4e 58 20 | 73 65 74 73 20 74 68 65 |.PUTFNX |sets the|
|00005330| 20 6e 74 68 20 66 69 6c | 65 6e 61 6d 65 2e 74 79 | nth fil|ename.ty|
|00005340| 70 20 74 6f 20 74 68 65 | 20 46 43 42 2d 65 6e 74 |p to the| FCB-ent|
|00005350| 72 79 20 70 74 65 64 20 | 74 6f 20 62 79 20 48 4c |ry pted |to by HL|
|00005360| 0d 0a 3b 20 28 46 43 42 | 2b 31 20 69 73 20 70 6f |..; (FCB|+1 is po|
|00005370| 69 6e 74 65 64 20 74 6f | 20 62 79 20 48 4c 29 2e |inted to| by HL).|
|00005380| 20 20 4f 6e 20 69 6e 70 | 75 74 2c 20 41 3d 31 20 | On inp|ut, A=1 |
|00005390| 74 6f 20 34 20 61 6e 64 | 20 48 4c 20 70 74 73 20 |to 4 and| HL pts |
|000053a0| 74 6f 20 46 43 42 2b 31 | 2e 0d 0a 3b 20 4f 6e 20 |to FCB+1|...; On |
|000053b0| 6f 75 74 70 75 74 2c 20 | 41 3d 30 20 61 6e 64 20 |output, |A=0 and |
|000053c0| 5a 65 72 6f 20 46 6c 61 | 67 20 73 65 74 20 69 66 |Zero Fla|g set if|
|000053d0| 20 69 6e 70 75 74 20 41 | 20 77 61 73 20 6f 75 74 | input A| was out|
|000053e0| 20 6f 66 20 72 61 6e 67 | 65 2e 0d 0a 3b 0d 0a 70 | of rang|e...;..p|
|000053f0| 75 74 66 6e 78 3a 0d 0a | 09 64 65 63 09 61 09 09 |utfnx:..|.dec.a..|
|00005400| 3b 63 68 65 63 6b 20 72 | 61 6e 67 65 0d 0a 09 63 |;check r|ange...c|
|00005410| 70 09 34 09 09 3b 30 20 | 74 6f 20 33 20 69 73 20 |p.4..;0 |to 3 is |
|00005420| 76 61 6c 69 64 0d 0a 09 | 6a 70 09 6e 63 2c 70 66 |valid...|jp.nc,pf|
|00005430| 6e 78 65 72 72 0d 0a 09 | 69 6e 63 09 61 09 09 3b |nxerr...|inc.a..;|
|00005440| 73 65 74 20 6f 66 66 73 | 65 74 20 74 6f 20 31 2d |set offs|et to 1-|
|00005450| 34 20 61 67 61 69 6e 0d | 0a 09 70 75 73 68 09 64 |4 again.|..push.d|
|00005460| 65 0d 0a 09 70 75 73 68 | 09 68 6c 0d 0a 09 70 75 |e...push|.hl...pu|
|00005470| 73 68 09 61 66 09 09 3b | 73 61 76 65 20 41 0d 0a |sh.af..;|save A..|
|00005480| 09 6c 64 09 68 6c 2c 28 | 65 6e 76 70 74 72 29 09 |.ld.hl,(|envptr).|
|00005490| 3b 70 74 20 74 6f 20 65 | 6e 76 69 72 6f 6e 6d 65 |;pt to e|nvironme|
|000054a0| 6e 74 0d 0a 09 6c 64 09 | 64 65 2c 35 32 68 09 09 |nt...ld.|de,52h..|
|000054b0| 3b 70 74 20 74 6f 20 66 | 69 6c 65 20 6e 61 6d 65 |;pt to f|ile name|
|000054c0| 20 65 6e 74 72 79 0d 0a | 09 61 64 64 09 68 6c 2c | entry..|.add.hl,|
|000054d0| 64 65 0d 0a 09 6c 64 09 | 64 65 2c 31 31 09 09 3b |de...ld.|de,11..;|
|000054e0| 6f 66 66 73 65 74 20 74 | 6f 20 6e 65 78 74 20 6e |offset t|o next n|
|000054f0| 61 6d 65 0d 0a 09 70 6f | 70 09 61 66 09 09 3b 67 |ame...po|p.af..;g|
|00005500| 65 74 20 41 0d 0a 70 66 | 6e 78 31 3a 0d 0a 09 64 |et A..pf|nx1:...d|
|00005510| 65 63 09 61 09 09 3b 63 | 6f 75 6e 74 20 64 6f 77 |ec.a..;c|ount dow|
|00005520| 6e 0d 0a 09 6a 70 09 7a | 2c 70 66 6e 78 32 0d 0a |n...jp.z|,pfnx2..|
|00005530| 09 61 64 64 09 68 6c 2c | 64 65 09 09 3b 70 74 20 |.add.hl,|de..;pt |
|00005540| 74 6f 20 6e 65 78 74 0d | 0a 09 6a 70 09 70 66 6e |to next.|..jp.pfn|
|00005550| 78 31 0d 0a 70 66 6e 78 | 32 3a 0d 0a 09 70 6f 70 |x1..pfnx|2:...pop|
|00005560| 09 64 65 09 09 3b 67 65 | 74 20 70 74 72 20 74 6f |.de..;ge|t ptr to|
|00005570| 20 46 43 42 2b 31 0d 0a | 09 70 75 73 68 09 64 65 | FCB+1..|.push.de|
|00005580| 0d 0a 09 70 75 73 68 09 | 62 63 09 09 3b 73 61 76 |...push.|bc..;sav|
|00005590| 65 20 42 43 0d 0a 09 6c | 64 09 62 2c 31 31 09 09 |e BC...l|d.b,11..|
|000055a0| 3b 31 31 20 62 79 74 65 | 73 20 66 72 6f 6d 20 44 |;11 byte|s from D|
|000055b0| 45 20 74 6f 20 48 4c 0d | 0a 70 66 6e 78 33 3a 0d |E to HL.|.pfnx3:.|
|000055c0| 0a 09 6c 64 09 61 2c 28 | 64 65 29 09 09 3b 63 6f |..ld.a,(|de)..;co|
|000055d0| 70 79 0d 0a 09 6c 64 09 | 28 68 6c 29 2c 61 0d 0a |py...ld.|(hl),a..|
|000055e0| 09 69 6e 63 09 68 6c 09 | 09 3b 70 74 20 74 6f 20 |.inc.hl.|.;pt to |
|000055f0| 6e 65 78 74 0d 0a 09 69 | 6e 63 09 64 65 0d 0a 09 |next...i|nc.de...|
|00005600| 64 65 63 09 62 09 09 3b | 63 6f 75 6e 74 20 64 6f |dec.b..;|count do|
|00005610| 77 6e 0d 0a 09 6a 70 09 | 6e 7a 2c 70 66 6e 78 33 |wn...jp.|nz,pfnx3|
|00005620| 0d 0a 09 70 6f 70 09 62 | 63 09 09 3b 72 65 73 74 |...pop.b|c..;rest|
|00005630| 6f 72 65 20 72 65 67 73 | 0d 0a 09 70 6f 70 09 68 |ore regs|...pop.h|
|00005640| 6c 0d 0a 09 70 6f 70 09 | 64 65 0d 0a 09 6f 72 09 |l...pop.|de...or.|
|00005650| 30 66 66 68 09 09 3b 73 | 65 74 20 4e 5a 20 66 6f |0ffh..;s|et NZ fo|
|00005660| 72 20 4f 4b 0d 0a 09 72 | 65 74 0d 0a 70 66 6e 78 |r OK...r|et..pfnx|
|00005670| 65 72 72 3a 0d 0a 09 78 | 6f 72 09 61 09 09 3b 65 |err:...x|or.a..;e|
|00005680| 72 72 6f 72 0d 0a 09 72 | 65 74 0d 0a 0d 0a 09 65 |rror...r|et.....e|
|00005690| 6e 64 0d 0a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |nd......|........|
|000056a0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000056b0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000056c0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000056d0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000056e0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000056f0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00005700| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00005710| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 50 4d 44 49 53 |e Name: | Z3PMDIS|
|00005720| 4b 0d 0a 3b 20 41 75 74 | 68 6f 72 3a 20 20 52 69 |K..; Aut|hor: Ri|
|00005730| 63 68 61 72 64 20 43 6f | 6e 6e 0d 0a 3b 20 5a 33 |chard Co|nn..; Z3|
|00005740| 4c 49 42 20 20 56 65 72 | 73 69 6f 6e 20 4e 75 6d |LIB Ver|sion Num|
|00005750| 62 65 72 3a 20 20 31 2e | 33 0d 0a 3b 20 4d 6f 64 |ber: 1.|3..; Mod|
|00005760| 75 6c 65 20 56 65 72 73 | 69 6f 6e 20 4e 75 6d 62 |ule Vers|ion Numb|
|00005770| 65 72 3a 20 20 31 2e 31 | 0d 0a 3b 0d 0a 09 70 75 |er: 1.1|..;...pu|
|00005780| 62 6c 69 63 09 70 75 74 | 6d 64 69 73 6b 0d 0a 0d |blic.put|mdisk...|
|00005790| 0a 09 65 78 74 09 65 6e | 76 70 74 72 0d 0a 0d 0a |..ext.en|vptr....|
|000057a0| 3b 0d 0a 3b 09 50 55 54 | 4d 44 49 53 4b 20 73 65 |;..;.PUT|MDISK se|
|000057b0| 74 73 20 74 68 65 20 6d | 61 78 69 6d 75 6d 20 64 |ts the m|aximum d|
|000057c0| 69 73 6b 20 69 6e 20 41 | 20 28 64 69 73 6b 20 41 |isk in A| (disk A|
|000057d0| 20 3d 20 31 29 2e 0d 0a | 3b 09 4e 6f 20 72 65 67 | = 1)...|;.No reg|
|000057e0| 69 73 74 65 72 73 20 61 | 72 65 20 61 66 66 65 63 |isters a|re affec|
|000057f0| 74 65 64 2e 0d 0a 3b 0d | 0a 70 75 74 6d 64 69 73 |ted...;.|.putmdis|
|00005800| 6b 3a 0d 0a 09 70 75 73 | 68 09 68 6c 09 09 3b 73 |k:...pus|h.hl..;s|
|00005810| 61 76 65 20 72 65 67 73 | 0d 0a 09 70 75 73 68 09 |ave regs|...push.|
|00005820| 64 65 0d 0a 09 70 75 73 | 68 09 61 66 0d 0a 09 6c |de...pus|h.af...l|
|00005830| 64 09 68 6c 2c 28 65 6e | 76 70 74 72 29 09 3b 70 |d.hl,(en|vptr).;p|
|00005840| 74 20 74 6f 20 65 6e 76 | 69 72 6f 6e 6d 65 6e 74 |t to env|ironment|
|00005850| 0d 0a 09 6c 64 09 64 65 | 2c 32 63 68 09 09 3b 70 |...ld.de|,2ch..;p|
|00005860| 74 20 74 6f 20 62 79 74 | 65 20 61 64 64 72 65 73 |t to byt|e addres|
|00005870| 73 0d 0a 09 61 64 64 09 | 68 6c 2c 64 65 0d 0a 09 |s...add.|hl,de...|
|00005880| 70 6f 70 09 61 66 09 09 | 3b 67 65 74 20 76 61 6c |pop.af..|;get val|
|00005890| 75 65 0d 0a 09 6c 64 09 | 28 68 6c 29 2c 61 09 09 |ue...ld.|(hl),a..|
|000058a0| 3b 70 75 74 20 76 61 6c | 75 65 0d 0a 09 70 6f 70 |;put val|ue...pop|
|000058b0| 09 64 65 09 09 3b 72 65 | 73 74 6f 72 65 20 72 65 |.de..;re|store re|
|000058c0| 67 73 0d 0a 09 70 6f 70 | 09 68 6c 0d 0a 09 72 65 |gs...pop|.hl...re|
|000058d0| 74 0d 0a 0d 0a 09 65 6e | 64 0d 0a 1a 1a 1a 1a 1a |t.....en|d.......|
|000058e0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|000058f0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00005900| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00005910| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 50 4d 55 53 45 |e Name: | Z3PMUSE|
|00005920| 52 0d 0a 3b 20 41 75 74 | 68 6f 72 3a 20 20 52 69 |R..; Aut|hor: Ri|
|00005930| 63 68 61 72 64 20 43 6f | 6e 6e 0d 0a 3b 20 5a 33 |chard Co|nn..; Z3|
|00005940| 4c 49 42 20 20 56 65 72 | 73 69 6f 6e 20 4e 75 6d |LIB Ver|sion Num|
|00005950| 62 65 72 3a 20 20 31 2e | 33 0d 0a 3b 20 4d 6f 64 |ber: 1.|3..; Mod|
|00005960| 75 6c 65 20 56 65 72 73 | 69 6f 6e 20 4e 75 6d 62 |ule Vers|ion Numb|
|00005970| 65 72 3a 20 20 31 2e 31 | 0d 0a 3b 0d 0a 09 70 75 |er: 1.1|..;...pu|
|00005980| 62 6c 69 63 09 70 75 74 | 6d 75 73 65 72 0d 0a 0d |blic.put|muser...|
|00005990| 0a 09 65 78 74 09 65 6e | 76 70 74 72 0d 0a 0d 0a |..ext.en|vptr....|
|000059a0| 3b 0d 0a 3b 09 50 55 54 | 4d 55 53 45 52 20 73 65 |;..;.PUT|MUSER se|
|000059b0| 74 73 20 74 68 65 20 6d | 61 78 69 6d 75 6d 20 75 |ts the m|aximum u|
|000059c0| 73 65 72 20 69 6e 20 41 | 2e 0d 0a 3b 09 4e 6f 20 |ser in A|...;.No |
|000059d0| 72 65 67 69 73 74 65 72 | 73 20 61 72 65 20 61 66 |register|s are af|
|000059e0| 66 65 63 74 65 64 2e 0d | 0a 3b 0d 0a 70 75 74 6d |fected..|.;..putm|
|000059f0| 75 73 65 72 3a 0d 0a 09 | 70 75 73 68 09 68 6c 09 |user:...|push.hl.|
|00005a00| 09 3b 73 61 76 65 20 72 | 65 67 73 0d 0a 09 70 75 |.;save r|egs...pu|
|00005a10| 73 68 09 64 65 0d 0a 09 | 70 75 73 68 09 61 66 0d |sh.de...|push.af.|
|00005a20| 0a 09 6c 64 09 68 6c 2c | 28 65 6e 76 70 74 72 29 |..ld.hl,|(envptr)|
|00005a30| 09 3b 70 74 20 74 6f 20 | 65 6e 76 69 72 6f 6e 6d |.;pt to |environm|
|00005a40| 65 6e 74 0d 0a 09 6c 64 | 09 64 65 2c 32 64 68 09 |ent...ld|.de,2dh.|
|00005a50| 09 3b 70 74 20 74 6f 20 | 62 79 74 65 20 61 64 64 |.;pt to |byte add|
|00005a60| 72 65 73 73 0d 0a 09 61 | 64 64 09 68 6c 2c 64 65 |ress...a|dd.hl,de|
|00005a70| 0d 0a 09 70 6f 70 09 61 | 66 09 09 3b 67 65 74 20 |...pop.a|f..;get |
|00005a80| 76 61 6c 75 65 0d 0a 09 | 6c 64 09 28 68 6c 29 2c |value...|ld.(hl),|
|00005a90| 61 09 09 3b 70 75 74 20 | 76 61 6c 75 65 0d 0a 09 |a..;put |value...|
|00005aa0| 70 6f 70 09 64 65 09 09 | 3b 72 65 73 74 6f 72 65 |pop.de..|;restore|
|00005ab0| 20 72 65 67 73 0d 0a 09 | 70 6f 70 09 68 6c 0d 0a | regs...|pop.hl..|
|00005ac0| 09 72 65 74 0d 0a 0d 0a | 09 65 6e 64 0d 0a 1a 1a |.ret....|.end....|
|00005ad0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00005ae0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00005af0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00005b00| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00005b10| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 50 50 52 54 0d |e Name: | Z3PPRT.|
|00005b20| 0a 3b 20 41 75 74 68 6f | 72 3a 20 20 52 69 63 68 |.; Autho|r: Rich|
|00005b30| 61 72 64 20 43 6f 6e 6e | 0d 0a 3b 20 5a 33 4c 49 |ard Conn|..; Z3LI|
|00005b40| 42 20 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |B Versi|on Numbe|
|00005b50| 72 3a 20 20 31 2e 33 0d | 0a 3b 20 4d 6f 64 75 6c |r: 1.3.|.; Modul|
|00005b60| 65 20 56 65 72 73 69 6f | 6e 20 4e 75 6d 62 65 72 |e Versio|n Number|
|00005b70| 3a 20 20 31 2e 31 0d 0a | 3b 0d 0a 09 70 75 62 6c |: 1.1..|;...publ|
|00005b80| 69 63 09 70 75 74 70 72 | 74 0d 0a 0d 0a 09 65 78 |ic.putpr|t.....ex|
|00005b90| 74 09 65 6e 76 70 74 72 | 0d 0a 0d 0a 3b 0d 0a 3b |t.envptr|....;..;|
|00005ba0| 09 50 55 54 50 52 54 20 | 73 74 6f 72 65 73 20 74 |.PUTPRT |stores t|
|00005bb0| 68 65 20 73 65 6c 65 63 | 74 69 6f 6e 20 6f 66 20 |he selec|tion of |
|00005bc0| 30 20 74 6f 20 33 20 69 | 6e 20 74 68 65 20 50 52 |0 to 3 i|n the PR|
|00005bd0| 54 20 53 65 6c 65 63 74 | 69 6f 6e 20 62 75 66 66 |T Select|ion buff|
|00005be0| 65 72 0d 0a 3b 20 69 6e | 20 74 68 65 20 45 6e 76 |er..; in| the Env|
|00005bf0| 69 72 6f 6e 6d 65 6e 74 | 20 44 65 73 63 72 69 70 |ironment| Descrip|
|00005c00| 74 6f 72 2e 0d 0a 3b 09 | 4f 6e 20 65 78 69 74 2c |tor...;.|On exit,|
|00005c10| 20 41 3d 30 20 61 6e 64 | 20 5a 65 72 6f 20 46 6c | A=0 and| Zero Fl|
|00005c20| 61 67 20 53 65 74 20 69 | 66 20 69 6e 76 61 6c 69 |ag Set i|f invali|
|00005c30| 64 20 73 65 6c 65 63 74 | 69 6f 6e 20 76 61 6c 75 |d select|ion valu|
|00005c40| 65 20 28 6e 6f 74 20 30 | 20 74 6f 20 33 29 0d 0a |e (not 0| to 3)..|
|00005c50| 3b 0d 0a 70 75 74 70 72 | 74 3a 0d 0a 09 70 75 73 |;..putpr|t:...pus|
|00005c60| 68 09 68 6c 09 09 3b 73 | 61 76 65 20 72 65 67 73 |h.hl..;s|ave regs|
|00005c70| 0d 0a 09 70 75 73 68 09 | 64 65 0d 0a 09 63 70 09 |...push.|de...cp.|
|00005c80| 34 09 09 3b 72 61 6e 67 | 65 20 63 68 65 63 6b 0d |4..;rang|e check.|
|00005c90| 0a 09 6a 70 09 6e 63 2c | 70 70 65 72 72 6f 72 0d |..jp.nc,|pperror.|
|00005ca0| 0a 09 70 75 73 68 09 61 | 66 09 09 3b 73 61 76 65 |..push.a|f..;save|
|00005cb0| 20 73 65 6c 65 63 74 69 | 6f 6e 0d 0a 09 6c 64 09 | selecti|on...ld.|
|00005cc0| 68 6c 2c 28 65 6e 76 70 | 74 72 29 09 3b 70 74 20 |hl,(envp|tr).;pt |
|00005cd0| 74 6f 20 65 6e 76 69 72 | 6f 6e 6d 65 6e 74 0d 0a |to envir|onment..|
|00005ce0| 09 6c 64 09 64 65 2c 33 | 30 68 09 09 3b 70 74 20 |.ld.de,3|0h..;pt |
|00005cf0| 74 6f 20 65 6e 74 72 79 | 0d 0a 09 61 64 64 09 68 |to entry|...add.h|
|00005d00| 6c 2c 64 65 0d 0a 09 70 | 6f 70 09 61 66 09 09 3b |l,de...p|op.af..;|
|00005d10| 67 65 74 20 73 65 6c 65 | 63 74 69 6f 6e 0d 0a 09 |get sele|ction...|
|00005d20| 6c 64 09 28 68 6c 29 2c | 61 09 09 3b 73 74 6f 72 |ld.(hl),|a..;stor|
|00005d30| 65 20 73 65 6c 65 63 74 | 69 6f 6e 0d 0a 09 70 6f |e select|ion...po|
|00005d40| 70 09 64 65 09 09 3b 67 | 65 74 20 72 65 67 73 0d |p.de..;g|et regs.|
|00005d50| 0a 09 70 6f 70 09 68 6c | 0d 0a 09 6f 72 09 30 66 |..pop.hl|...or.0f|
|00005d60| 66 68 09 09 3b 73 65 74 | 20 4e 5a 20 66 6f 72 20 |fh..;set| NZ for |
|00005d70| 4f 4b 0d 0a 09 72 65 74 | 0d 0a 70 70 65 72 72 6f |OK...ret|..pperro|
|00005d80| 72 3a 0d 0a 09 70 6f 70 | 09 64 65 09 09 3b 72 65 |r:...pop|.de..;re|
|00005d90| 73 74 6f 72 65 20 72 65 | 67 69 73 74 65 72 73 0d |store re|gisters.|
|00005da0| 0a 09 70 6f 70 09 68 6c | 0d 0a 09 78 6f 72 09 61 |..pop.hl|...xor.a|
|00005db0| 09 09 3b 65 72 72 6f 72 | 20 72 65 74 75 72 6e 0d |..;error| return.|
|00005dc0| 0a 09 72 65 74 0d 0a 0d | 0a 09 65 6e 64 0d 0a 1a |..ret...|..end...|
|00005dd0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00005de0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00005df0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00005e00| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00005e10| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 50 51 55 49 45 |e Name: | Z3PQUIE|
|00005e20| 54 0d 0a 3b 20 41 75 74 | 68 6f 72 3a 20 20 52 69 |T..; Aut|hor: Ri|
|00005e30| 63 68 61 72 64 20 43 6f | 6e 6e 0d 0a 3b 20 5a 33 |chard Co|nn..; Z3|
|00005e40| 4c 49 42 20 20 56 65 72 | 73 69 6f 6e 20 4e 75 6d |LIB Ver|sion Num|
|00005e50| 62 65 72 3a 20 20 31 2e | 33 0d 0a 3b 20 4d 6f 64 |ber: 1.|3..; Mod|
|00005e60| 75 6c 65 20 56 65 72 73 | 69 6f 6e 20 4e 75 6d 62 |ule Vers|ion Numb|
|00005e70| 65 72 3a 20 20 31 2e 31 | 0d 0a 3b 0d 0a 09 70 75 |er: 1.1|..;...pu|
|00005e80| 62 6c 69 63 09 70 75 74 | 71 75 69 65 74 0d 0a 0d |blic.put|quiet...|
|00005e90| 0a 09 65 78 74 09 65 6e | 76 70 74 72 0d 0a 0d 0a |..ext.en|vptr....|
|00005ea0| 3b 0d 0a 3b 09 50 55 54 | 51 55 49 45 54 20 73 65 |;..;.PUT|QUIET se|
|00005eb0| 74 73 20 74 68 65 20 71 | 75 69 65 74 20 62 79 74 |ts the q|uiet byt|
|00005ec0| 65 20 69 6e 20 41 2e 0d | 0a 3b 09 4e 6f 20 72 65 |e in A..|.;.No re|
|00005ed0| 67 69 73 74 65 72 73 20 | 61 72 65 20 61 66 66 65 |gisters |are affe|
|00005ee0| 63 74 65 64 2e 0d 0a 3b | 0d 0a 70 75 74 71 75 69 |cted...;|..putqui|
|00005ef0| 65 74 3a 0d 0a 09 70 75 | 73 68 09 68 6c 09 09 3b |et:...pu|sh.hl..;|
|00005f00| 73 61 76 65 20 72 65 67 | 73 0d 0a 09 70 75 73 68 |save reg|s...push|
|00005f10| 09 64 65 0d 0a 09 70 75 | 73 68 09 61 66 0d 0a 09 |.de...pu|sh.af...|
|00005f20| 6c 64 09 68 6c 2c 28 65 | 6e 76 70 74 72 29 09 3b |ld.hl,(e|nvptr).;|
|00005f30| 70 74 20 74 6f 20 65 6e | 76 69 72 6f 6e 6d 65 6e |pt to en|vironmen|
|00005f40| 74 0d 0a 09 6c 64 09 64 | 65 2c 32 38 68 09 09 3b |t...ld.d|e,28h..;|
|00005f50| 70 74 20 74 6f 20 62 79 | 74 65 20 61 64 64 72 65 |pt to by|te addre|
|00005f60| 73 73 0d 0a 09 61 64 64 | 09 68 6c 2c 64 65 0d 0a |ss...add|.hl,de..|
|00005f70| 09 70 6f 70 09 61 66 09 | 09 3b 67 65 74 20 76 61 |.pop.af.|.;get va|
|00005f80| 6c 75 65 0d 0a 09 6c 64 | 09 28 68 6c 29 2c 61 09 |lue...ld|.(hl),a.|
|00005f90| 09 3b 70 75 74 20 76 61 | 6c 75 65 0d 0a 09 70 6f |.;put va|lue...po|
|00005fa0| 70 09 64 65 09 09 3b 72 | 65 73 74 6f 72 65 20 72 |p.de..;r|estore r|
|00005fb0| 65 67 73 0d 0a 09 70 6f | 70 09 68 6c 0d 0a 09 72 |egs...po|p.hl...r|
|00005fc0| 65 74 0d 0a 0d 0a 09 65 | 6e 64 0d 0a 1a 1a 1a 1a |et.....e|nd......|
|00005fd0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00005fe0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00005ff0| 1a 1a 1a 1a 1a 1a 1a 1a | 1a 1a 1a 1a 1a 1a 1a 1a |........|........|
|00006000| 3b 0d 0a 3b 20 5a 33 4c | 49 42 20 4d 6f 64 75 6c |;..; Z3L|IB Modul|
|00006010| 65 20 4e 61 6d 65 3a 20 | 20 5a 33 50 52 47 4c 44 |e Name: | Z3PRGLD|
|00006020| 0d 0a 3b 20 41 75 74 68 | 6f 72 3a 20 20 52 69 63 |..; Auth|or: Ric|
|00006030| 68 61 72 64 20 43 6f 6e | 6e 0d 0a 3b 20 5a 33 4c |hard Con|n..; Z3L|
|00006040| 49 42 20 20 56 65 72 73 | 69 6f 6e 20 4e 75 6d 62 |IB Vers|ion Numb|
|00006050| 65 72 3a 20 20 31 2e 33 | 0d 0a 3b 20 4d 6f 64 75 |er: 1.3|..; Modu|
|00006060| 6c 65 20 56 65 72 73 69 | 6f 6e 20 4e 75 6d 62 65 |le Versi|on Numbe|
|00006070| 72 3a 20 20 31 2e 31 0d | 0a 3b 0d 0a 09 70 75 62 |r: 1.1.|.;...pub|
|00006080| 6c 69 63 09 70 72 67 6c | 6f 61 64 0d 0a 0d 0a 3b |lic.prgl|oad....;|
|00006090| 0d 0a 3b 20 4f 53 20 45 | 71 75 61 74 65 73 0d 0a |..; OS E|quates..|
|000060a0| 3b 0d 0a 62 64 6f 73 09 | 65 71 75 09 35 0d 0a 74 |;..bdos.|equ.5..t|
|000060b0| 70 61 09 65 71 75 09 31 | 30 30 68 0d 0a 0d 0a 3b |pa.equ.1|00h....;|
|000060c0| 0d 0a 3b 09 50 52 47 4c | 4f 41 44 20 6c 6f 61 64 |..;.PRGL|OAD load|
|000060d0| 73 20 74 68 65 20 70 72 | 6f 67 72 61 6d 20 69 6e |s the pr|ogram in|
|000060e0| 64 69 63 61 74 65 64 20 | 62 79 20 74 68 65 20 66 |dicated |by the f|
|000060f0| 69 72 73 74 20 31 32 20 | 62 79 74 65 73 20 70 74 |irst 12 |bytes pt|
|00006100| 65 64 20 74 6f 0d 0a 3b | 20 62 79 20 44 45 20 69 |ed to..;| by DE i|
|00006110| 6e 74 6f 20 6d 65 6d 6f | 72 79 20 61 74 20 31 30 |nto memo|ry at 10|
|00006120| 30 48 20 61 6e 64 20 74 | 72 61 6e 73 66 65 72 73 |0H and t|ransfers|
|00006130| 20 63 6f 6e 74 72 6f 6c | 20 74 6f 20 69 74 2e 0d | control| to it..|
|00006140| 0a 3b 09 49 66 20 66 69 | 6c 65 20 64 6f 65 73 20 |.;.If fi|le does |
|00006150| 6e 6f 74 20 65 78 69 73 | 74 2c 20 50 52 47 4c 4f |not exis|t, PRGLO|
|00006160| 41 44 20 72 65 74 75 72 | 6e 73 3b 20 69 66 20 66 |AD retur|ns; if f|
|00006170| 69 6c 65 20 64 6f 65 73 | 20 65 78 69 73 74 2c 20 |ile does| exist, |
|00006180| 50 52 47 4c 4f 41 44 0d | 0a 3b 20 63 6c 65 61 72 |PRGLOAD.|.; clear|
|00006190| 73 20 74 68 65 20 73 74 | 61 63 6b 20 6f 66 20 69 |s the st|ack of i|
|000061a0| 74 73 20 72 65 74 75 72 | 6e 20 61 64 64 72 65 73 |ts retur|n addres|
|000061b0| 73 20 61 6e 64 20 74 72 | 61 6e 73 66 65 72 73 20 |s and tr|ansfers |
|000061c0| 63 6f 6e 74 72 6f 6c 20 | 74 6f 20 74 68 65 20 70 |control |to the p|
|000061d0| 72 6f 67 72 61 6d 0d 0a | 3b 20 61 66 74 65 72 20 |rogram..|; after |
|000061e0| 6c 6f 61 64 69 6e 67 20 | 69 74 20 77 69 74 68 20 |loading |it with |
|000061f0| 74 68 65 20 63 6c 65 61 | 72 65 64 20 73 74 61 63 |the clea|red stac|
|00006200| 6b 20 61 73 20 74 68 65 | 20 70 72 6f 67 72 61 6d |k as the| program|
|00006210| 27 73 20 73 74 61 63 6b | 2e 0d 0a 3b 0d 0a 70 72 |'s stack|...;..pr|
|00006220| 67 6c 6f 61 64 3a 0d 0a | 09 70 75 73 68 09 64 65 |gload:..|.push.de|
|00006230| 09 09 3b 73 61 76 65 20 | 70 74 72 20 74 6f 20 46 |..;save |ptr to F|
|00006240| 43 42 20 28 44 45 29 0d | 0a 09 6c 64 09 68 6c 2c |CB (DE).|..ld.hl,|
|00006250| 28 62 64 6f 73 2b 31 29 | 09 3b 67 65 74 20 62 61 |(bdos+1)|.;get ba|
|00006260| 73 65 20 61 64 64 72 65 | 73 73 20 6f 66 20 42 44 |se addre|ss of BD|
|00006270| 4f 53 0d 0a 09 6c 64 09 | 61 2c 68 09 09 3b 39 20 |OS...ld.|a,h..;9 |
|00006280| 70 61 67 65 73 20 62 65 | 6c 6f 77 20 42 44 4f 53 |pages be|low BDOS|
|00006290| 20 28 31 73 74 20 70 61 | 67 65 20 62 65 6c 6f 77 | (1st pa|ge below|
|000062a0| 20 43 43 50 29 0d 0a 09 | 73 75 62 09 39 0d 0a 09 | CCP)...|sub.9...|
|000062b0| 6c 64 09 68 2c 61 0d 0a | 09 6c 64 09 6c 2c 38 30 |ld.h,a..|.ld.l,80|
|000062c0| 68 09 09 3b 48 4c 20 70 | 74 73 20 74 6f 20 6c 6f |h..;HL p|ts to lo|
|000062d0| 61 64 20 61 64 64 72 65 | 73 73 0d 0a 09 6c 64 09 |ad addre|ss...ld.|
|000062e0| 28 6c 64 61 64 72 29 2c | 68 6c 09 3b 73 65 74 20 |(ldadr),|hl.;set |
|000062f0| 6c 6f 61 64 20 61 64 64 | 72 65 73 73 0d 0a 09 6c |load add|ress...l|
|00006300| 64 09 64 65 2c 34 30 68 | 09 09 3b 73 65 74 20 46 |d.de,40h|..;set F|
|00006310| 43 42 20 61 64 64 72 65 | 73 73 0d 0a 09 61 64 64 |CB addre|ss...add|
|00006320| 09 68 6c 2c 64 65 0d 0a | 09 6c 64 09 28 6c 64 66 |.hl,de..|.ld.(ldf|
|00006330| 63 62 29 2c 68 6c 09 3b | 61 64 64 72 65 73 73 20 |cb),hl.;|address |
|00006340| 6f 66 20 46 43 42 0d 0a | 09 70 6f 70 09 64 65 09 |of FCB..|.pop.de.|
|00006350| 09 3b 70 74 20 74 6f 20 | 6f 72 69 67 69 6e 61 6c |.;pt to |original|
|00006360| 20 46 43 42 0d 0a 09 6c | 64 09 28 68 6c 29 2c 30 | FCB...l|d.(hl),0|
|00006370| 09 09 3b 73 65 74 20 66 | 69 72 73 74 20 62 79 74 |..;set f|irst byt|
|00006380| 65 20 74 6f 20 30 20 28 | 63 75 72 72 65 6e 74 20 |e to 0 (|current |
|00006390| 64 69 73 6b 29 0d 0a 09 | 69 6e 63 09 68 6c 09 09 |disk)...|inc.hl..|
|000063a0| 3b 70 74 20 74 6f 20 6e | 61 6d 65 0d 0a 09 69 6e |;pt to n|ame...in|
|000063b0| 63 09 64 65 09 09 3b 70 | 74 20 74 6f 20 6e 61 6d |c.de..;p|t to nam|
|000063c0| 65 0d 0a 09 6c 64 09 62 | 2c 31 31 09 09 3b 31 31 |e...ld.b|,11..;11|
|000063d0| 20 62 79 74 65 73 0d 0a | 09 63 61 6c 6c 09 6d 6f | bytes..|.call.mo|
|000063e0| 76 65 62 09 09 3b 64 6f | 20 63 6f 70 79 0d 0a 09 |veb..;do| copy...|
|000063f0| 6c 64 09 62 2c 32 34 09 | 09 3b 66 69 6c 6c 20 6e |ld.b,24.|.;fill n|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.