000000: 45 58 54 45 4E 44 45 44 20 43 50 43 20 44 53 4B EXTENDED CPC DSK
000010: 20 46 69 6C 65 0D 0A 44 69 73 6B 2D 49 6E 66 6F File..Disk-Info
000020: 0D 0A 53 41 4D 64 69 73 6B 31 39 30 31 32 32 00 ..SAMdisk190122.
000030: 28 01 00 00 13 13 13 13 13 13 13 13 13 13 13 13 (...............
000040: 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 ................
000050: 13 13 13 13 13 13 13 13 13 13 13 13 00 00 00 00 ................
000060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0000F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000100: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
000110: 00 00 01 00 02 09 4E E5 00 00 C1 02 00 00 00 02 ......N.........
000120: 00 00 C6 02 00 00 00 02 00 00 C2 02 00 00 00 02 ................
000130: 00 00 C7 02 00 00 00 02 00 00 C3 02 00 00 00 02 ................
000140: 00 00 C8 02 00 00 00 02 00 00 C4 02 00 00 00 02 ................
000150: 00 00 C9 02 00 00 00 02 00 00 C5 02 00 00 00 02 ................
000160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000200: 00 42 41 4E 4B 53 20 20 20 20 20 20 00 00 00 05 .BANKS ....
000210: 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000220: 00 43 52 43 20 20 20 20 20 20 20 20 00 00 00 03 .CRC ....
000230: 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000240: 00 44 49 56 49 44 45 20 20 20 20 20 00 00 00 04 .DIVIDE ....
000250: 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000260: 00 48 45 58 49 4E 50 31 20 20 20 20 00 00 00 03 .HEXINP1 ....
000270: 05 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000280: 00 48 45 58 49 4E 50 32 20 20 20 20 00 00 00 0C .HEXINP2 ....
000290: 06 07 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0002A0: 00 49 4E 4C 49 4E 45 20 20 20 20 20 00 00 00 03 .INLINE ....
0002B0: 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0002C0: 00 49 4E 50 55 54 46 20 20 20 20 20 00 00 00 05 .INPUTF ....
0002D0: 09 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0002E0: 00 49 4E 56 45 52 54 20 20 20 20 20 00 00 00 03 .INVERT ....
0002F0: 0A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000300: 00 4D 4B 24 50 41 52 41 4D 20 20 20 00 00 00 04 .MK$PARAM ....
000310: 0B 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000320: 00 4D 4F 44 45 31 54 4F 32 20 20 20 00 00 00 03 .MODE1TO2 ....
000330: 0C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000340: 00 4D 55 4C 54 49 20 20 20 20 20 20 00 00 00 01 .MULTI ....
000350: 0D 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000360: 00 50 44 45 43 41 20 20 20 20 20 20 00 00 00 02 .PDECA ....
000370: 0E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000380: 00 50 44 45 43 41 20 20 20 53 50 43 00 00 00 03 .PDECA SPC....
000390: 0F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0003A0: 00 50 44 45 43 48 4C 20 20 20 20 20 00 00 00 03 .PDECHL ....
0003B0: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0003C0: 00 50 48 45 58 20 20 20 20 20 20 20 00 00 00 04 .PHEX ....
0003D0: 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0003E0: 00 50 53 54 52 49 4E 47 20 20 20 20 00 00 00 01 .PSTRING ....
0003F0: 12 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000400: 0A 09 70 6F 70 20 68 6C 3A 20 70 6F 70 20 62 63 ..pop hl: pop bc
000410: 0D 0A 09 72 65 74 0D 0A 0D 0A 2E 6C 64 68 6C 61 ...ret.....ldhla
000420: 69 09 63 61 6C 6C 20 6C 64 68 6C 61 0D 0A 09 69 i.call ldhla...i
000430: 6E 63 20 68 6C 3A 20 72 65 74 0D 0A 1A 20 26 38 nc hl: ret... &8
000440: 30 30 30 0D 0A 09 77 72 69 74 65 20 22 65 64 69 000...write "edi
000450: 74 2E 62 69 6E 22 0D 0A 09 6E 6F 6C 69 73 74 0D t.bin"...nolist.
000460: 0A 0D 0A 66 76 65 72 73 09 65 71 75 20 32 0D 0A ...fvers.equ 2..
000470: 0D 0A 09 3B 2A 2A 2A 20 52 4F 55 54 09 49 6E 69 ...;*** ROUT.Ini
000480: 64 20 61 2C 68 3A 20 61 6E 64 20 26 33 46 3A 20 d a,h: and &3F:
000490: 6F 72 20 26 34 30 3A 20 6C 64 20 68 2C 61 0D 0A or &40: ld h,a..
0004A0: 09 20 6C 64 20 61 2C 62 3A 20 6C 64 20 62 2C 26 . ld a,b: ld b,&
0004B0: 37 46 0D 0A 09 20 6F 75 74 20 28 63 29 2C 63 3A 7F... out (c),c:
0004C0: 20 6C 64 20 61 2C 28 68 6C 29 0D 0A 09 20 6C 64 ld a,(hl)... ld
0004D0: 20 63 2C 26 43 30 3A 20 6F 75 74 20 28 63 29 2C c,&C0: out (c),
0004E0: 63 0D 0A 09 70 6F 70 20 68 6C 3A 20 70 6F 70 20 c...pop hl: pop
0004F0: 62 63 0D 0A 09 72 65 74 0D 0A 0D 0A 2E 6C 64 61 bc...ret.....lda
000500: 68 6C 69 09 63 61 6C 6C 20 6C 64 61 68 6C 0D 0A hli.call ldahl..
000510: 09 69 6E 63 20 68 6C 3A 20 72 65 74 0D 0A 0D 0A .inc hl: ret....
000520: 09 3B 2A 2A 2A 20 53 55 42 52 09 4C 44 20 28 48 .;*** SUBR.LD (H
000530: 4C 29 2C 41 20 2D 20 65 78 74 72 61 20 62 61 6E L),A - extra ban
000540: 6B 73 0D 0A 0D 0A 2E 6C 64 68 6C 61 09 70 75 73 ks.....ldhla.pus
000550: 68 20 62 63 3A 20 70 75 73 68 20 68 6C 0D 0A 09 h bc: push hl...
000560: 20 6C 64 20 62 2C 61 3A 20 6C 64 20 61 2C 68 3A ld b,a: ld a,h:
000570: 20 61 6E 64 20 26 43 30 0D 0A 09 20 72 6C 63 61 and &C0... rlca
000580: 3A 20 72 6C 63 61 3A 20 61 64 64 20 26 43 34 0D : rlca: add &C4.
000590: 0A 09 20 6C 64 20 63 2C 61 0D 0A 09 20 6C 64 20 .. ld c,a... ld
0005A0: 61 2C 68 3A 20 61 6E 64 20 26 33 46 3A 20 6F 72 a,h: and &3F: or
0005B0: 20 26 34 30 3A 20 6C 64 20 68 2C 61 0D 0A 09 20 &40: ld h,a...
0005C0: 6C 64 20 61 2C 62 3A 20 6C 64 20 62 2C 26 37 46 ld a,b: ld b,&7F
0005D0: 0D 0A 09 20 6F 75 74 20 28 63 29 2C 63 3A 20 6C ... out (c),c: l
0005E0: 64 20 28 68 6C 29 2C 61 0D 0A 09 20 6C 64 20 63 d (hl),a... ld c
0005F0: 2C 26 43 30 3A 20 6F 75 74 20 28 63 29 2C 63 0D ,&C0: out (c),c.
000600: 00 53 50 45 43 43 4F 4E 56 20 20 20 00 00 00 06 .SPECCONV ....
000610: 13 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000620: 00 55 43 41 53 45 20 20 20 20 20 20 00 00 00 01 .UCASE ....
000630: 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000640: 00 57 49 4E 4C 4F 41 44 20 20 20 20 00 00 00 05 .WINLOAD ....
000650: 15 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000660: 00 43 52 54 43 20 20 20 20 20 20 20 00 00 00 01 .CRTC ....
000670: 16 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000680: 00 46 41 44 45 4C 32 48 20 20 20 20 00 00 00 03 .FADEL2H ....
000690: 17 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0006A0: 00 46 41 44 45 53 43 52 20 20 20 20 00 00 00 02 .FADESCR ....
0006B0: 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0006C0: 00 4B 45 59 53 43 41 4E 20 20 20 20 00 00 00 09 .KEYSCAN ....
0006D0: 19 1A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0006E0: 00 2D 52 45 41 44 20 20 20 4D 45 20 00 00 00 0C .-READ ME ....
0006F0: 1B 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 . ..............
000700: 00 4E 4C 49 4E 45 20 20 20 20 20 20 00 00 00 01 .NLINE ....
000710: 1C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000720: 00 50 53 47 20 20 20 20 20 20 20 20 00 00 00 03 .PSG ....
000730: 1D 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000740: 00 52 45 41 44 52 45 47 20 20 20 20 00 00 00 05 .READREG ....
000750: 1E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000760: 00 53 50 43 53 43 41 4E 20 20 20 20 00 00 00 04 .SPCSCAN ....
000770: 1F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000780: 01 45 44 49 54 20 20 20 20 53 52 43 00 00 00 47 .EDIT SRC...G
000790: 21 22 23 24 25 26 27 28 29 00 00 00 00 00 00 00 !"#$%&'().......
0007A0: 01 47 52 41 50 48 49 43 53 53 52 43 00 00 00 41 .GRAPHICSSRC...A
0007B0: 2A 2B 2C 2D 2E 2F 30 31 32 00 00 00 00 00 00 00 *+,-./012.......
0007C0: 01 50 52 4F 2D 45 58 54 20 53 52 43 00 00 00 7B .PRO-EXT SRC...{
0007D0: 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F 40 41 42 3456789:;<=>?@AB
0007E0: 01 42 42 53 20 20 20 20 20 4D 4F 44 00 00 00 41 .BBS MOD...A
0007F0: 43 44 45 46 47 48 49 4A 4B 00 00 00 00 00 00 00 CDEFGHIJK.......
000800: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 55 70 64 ...;*** SUBR.Upd
000810: 61 74 65 20 31 36 2D 62 69 74 20 43 52 43 20 69 ate 16-bit CRC i
000820: 6E 20 48 4C 0D 0A 09 3B 09 09 4F 6E 20 65 6E 74 n HL...;..On ent
000830: 72 79 2C 20 63 75 72 72 65 6E 74 20 62 79 74 65 ry, current byte
000840: 20 69 6E 20 45 0D 0A 0D 0A 2E 63 72 63 09 6C 64 in E.....crc.ld
000850: 20 62 2C 38 09 09 09 09 3B 73 68 69 66 74 20 38 b,8....;shift 8
000860: 20 74 69 6D 65 73 0D 0A 2E 75 70 64 6C 70 09 72 times...updlp.r
000870: 6C 63 20 65 09 09 09 09 3B 73 68 69 66 74 20 69 lc e....;shift i
000880: 6E 70 75 74 0D 0A 09 61 64 63 20 68 6C 2C 68 6C nput...adc hl,hl
000890: 09 09 09 3B 73 68 69 66 74 20 63 72 63 0D 0A 09 ...;shift crc...
0008A0: 6A 72 20 6E 63 2C 73 6B 69 70 69 74 09 09 09 3B jr nc,skipit...;
0008B0: 6A 75 6D 70 20 69 66 20 6E 6F 20 63 61 72 72 79 jump if no carry
0008C0: 0D 0A 09 6C 64 20 61 2C 68 3A 20 78 6F 72 20 26 ...ld a,h: xor &
0008D0: 31 30 3A 20 6C 64 20 68 2C 61 09 09 3B 78 6F 72 10: ld h,a..;xor
0008E0: 20 77 69 74 68 20 26 31 30 32 31 0D 0A 09 6C 64 with &1021...ld
0008F0: 20 61 2C 6C 3A 20 78 6F 72 20 26 32 31 3A 20 6C a,l: xor &21: l
000900: 64 20 6C 2C 61 0D 0A 2E 73 6B 69 70 69 74 09 64 d l,a...skipit.d
000910: 6A 6E 7A 20 75 70 64 6C 70 09 09 09 3B 64 6F 6E jnz updlp...;don
000920: 65 3F 0D 0A 09 72 65 74 0D 0A 1A 0A 2E 63 72 63 e?...ret.....crc
000930: 20 20 20 20 6C 64 20 62 2C 38 09 09 09 09 3B 73 ld b,8....;s
000940: 68 69 66 74 20 38 20 74 69 6D 65 73 0D 0A 2E 75 hift 8 times...u
000950: 70 64 6C 70 20 20 72 6C 63 20 65 09 09 09 09 3B pdlp rlc e....;
000960: 73 68 69 66 74 20 69 6E 70 75 74 0D 0A 09 61 64 shift input...ad
000970: 63 20 68 6C 2C 68 6C 09 09 09 3B 73 68 69 66 74 c hl,hl...;shift
000980: 3A 20 72 6C 63 61 3A 20 61 64 64 20 26 43 34 0D : rlca: add &C4.
000990: 0A 09 20 6C 64 20 63 2C 61 0D 0A 09 20 6C 64 20 .. ld c,a... ld
0009A0: 61 2C 68 3A 20 61 6E 64 20 26 33 46 3A 20 6F 72 a,h: and &3F: or
0009B0: 20 26 34 30 3A 20 6C 64 20 68 2C 61 0D 0A 09 20 &40: ld h,a...
0009C0: 6C 64 20 61 2C 62 3A 20 6C 64 20 62 2C 26 37 46 ld a,b: ld b,&7F
0009D0: 0D 0A 09 20 6F 75 74 20 28 63 29 2C 63 3A 20 6C ... out (c),c: l
0009E0: 64 20 28 68 6C 29 2C 61 0D 0A 09 20 6C 64 20 63 d (hl),a... ld c
0009F0: 2C 26 43 30 3A 20 6F 75 74 20 28 63 29 2C 63 0D ,&C0: out (c),c.
000A00: 01 43 4F 4D 4D 53 20 20 20 53 52 43 00 00 00 36 .COMMS SRC...6
000A10: 4C 4D 4E 4F 50 51 52 00 00 00 00 00 00 00 00 00 LMNOPQR.........
000A20: 01 43 4F 4E 54 52 4F 4C 20 4D 4F 44 00 00 00 20 .CONTROL MOD...
000A30: 53 54 55 56 00 00 00 00 00 00 00 00 00 00 00 00 STUV............
000A40: 01 46 49 4C 45 20 20 20 20 4D 4F 44 00 00 00 80 .FILE MOD....
000A50: 57 58 59 5A 5B 5C 5D 5E 5F 60 61 62 63 64 65 66 WXYZ[\]^_`abcdef
000A60: 01 46 49 4C 45 20 20 20 20 4D 4F 44 01 00 00 18 .FILE MOD....
000A70: 67 68 69 00 00 00 00 00 00 00 00 00 00 00 00 00 ghi.............
000A80: 01 4C 49 42 52 41 52 59 20 4D 4F 44 00 00 00 14 .LIBRARY MOD....
000A90: 6A 6B 6C 00 00 00 00 00 00 00 00 00 00 00 00 00 jkl.............
000AA0: 01 53 49 4F 20 20 20 20 20 4D 4F 44 00 00 00 4F .SIO MOD...O
000AB0: 6D 6E 6F 70 71 72 73 74 75 76 00 00 00 00 00 00 mnopqrstuv......
000AC0: 01 53 55 42 52 4F 55 54 20 4D 4F 44 00 00 00 40 .SUBROUT MOD...@
000AD0: 77 78 79 7A 7B 7C 7D 7E 00 00 00 00 00 00 00 00 wxyz{|}~........
000AE0: 01 54 45 52 4D 49 4E 41 4C 4D 4F 44 00 00 00 80 .TERMINALMOD....
000AF0: 7F 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E ................
000B00: 01 54 45 52 4D 49 4E 41 4C 4D 4F 44 01 00 00 0E .TERMINALMOD....
000B10: 8F 90 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000B20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000B30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000B40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000B50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000B60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000B70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000B80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000B90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000BA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000BB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000BC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000BD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000BE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000BF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000C00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000C10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000C20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000C30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000C40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000C50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000C60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000C70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000C80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000C90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000CA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000CB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000CC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000CD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000CE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000CF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000D00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000D10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000D20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000D30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000D40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000D50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000D60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000D70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000D80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000D90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000DA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000DB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000DC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000DD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000DE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000DF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000E00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000E10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000E20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000E30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000E40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000E50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000E60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000E70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000E80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000E90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000EA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000EB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000EC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000ED0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000EE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000EF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000F00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000F10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000F20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000F30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000F40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000F50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000F60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000F70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000F80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000F90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000FA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000FB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000FC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000FD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000FE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000FF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001000: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 44 69 76 ...;*** SUBR.Div
001010: 69 64 65 20 48 4C 20 62 79 20 42 43 0D 0A 09 3B ide HL by BC...;
001020: 09 09 72 65 74 75 72 6E 20 72 6F 75 6E 64 65 64 ..return rounded
001030: 20 72 65 73 75 6C 74 20 69 6E 20 44 45 0D 0A 0D result in DE...
001040: 0A 2E 64 69 76 69 64 65 09 6C 64 20 64 65 2C 30 ..divide.ld de,0
001050: 0D 0A 2E 64 69 76 5F 6C 70 09 6F 72 20 61 3A 20 ...div_lp.or a:
001060: 73 62 63 20 68 6C 2C 62 63 3A 20 6A 72 20 63 2C sbc hl,bc: jr c,
001070: 64 69 76 5F 61 64 09 09 3B 41 64 6A 75 73 74 6D div_ad..;Adjustm
001080: 65 6E 74 20 69 66 20 63 61 72 72 79 0D 0A 09 69 ent if carry...i
001090: 6E 63 20 64 65 3A 20 72 65 74 20 7A 09 09 09 09 nc de: ret z....
0010A0: 3B 52 65 74 75 72 6E 20 69 66 20 65 78 61 63 74 ;Return if exact
0010B0: 6C 79 20 72 69 67 68 74 0D 0A 09 6A 72 20 64 69 ly right...jr di
0010C0: 76 5F 6C 70 09 09 09 09 3B 45 6C 73 65 20 6C 6F v_lp....;Else lo
0010D0: 6F 70 0D 0A 0D 0A 2E 64 69 76 5F 61 64 09 61 64 op.....div_ad.ad
0010E0: 64 20 68 6C 2C 62 63 09 09 09 09 3B 52 65 73 74 d hl,bc....;Rest
0010F0: 6F 72 65 20 74 6F 20 70 72 65 76 69 6F 75 73 20 ore to previous
001100: 76 61 6C 75 65 0D 0A 09 6F 72 20 61 3A 20 72 72 value...or a: rr
001110: 20 62 3A 20 72 72 20 63 09 09 09 3B 48 61 6C 76 b: rr c...;Halv
001120: 65 20 42 43 0D 0A 09 6F 72 20 61 3A 20 73 62 63 e BC...or a: sbc
001130: 20 68 6C 2C 62 63 09 09 09 09 3B 41 6E 64 20 63 hl,bc....;And c
001140: 6F 6D 70 61 72 65 20 77 69 74 68 20 48 4C 0D 0A ompare with HL..
001150: 09 72 65 74 20 63 3A 20 69 6E 63 20 64 65 3A 20 .ret c: inc de:
001160: 72 65 74 09 09 09 3B 49 6E 63 72 65 61 73 65 20 ret...;Increase
001170: 44 45 20 69 66 20 48 4C 20 30 20 6F 72 20 6D 6F DE if HL 0 or mo
001180: 72 65 0D 0A 1A 49 44 45 20 20 24 24 24 FF 00 FF re...IDE $$$...
001190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0011A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0011B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0011C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0011D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0011E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0011F0: 00 00 00 00 00 00 06 00 40 00 01 00 1A 29 2C 61 ........@....),a
001200: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 4C 44 20 ...;*** SUBR.LD
001210: 41 2C 28 48 4C 29 20 2D 20 65 78 74 72 61 20 62 A,(HL) - extra b
001220: 61 6E 6B 73 0D 0A 0D 0A 2E 6C 64 61 68 6C 09 70 anks.....ldahl.p
001230: 75 73 68 20 62 63 3A 20 70 75 73 68 20 68 6C 0D ush bc: push hl.
001240: 0A 09 20 6C 64 20 62 2C 61 3A 20 6C 64 20 61 2C .. ld b,a: ld a,
001250: 68 3A 20 61 6E 64 20 26 43 30 0D 0A 09 20 72 6C h: and &C0... rl
001260: 63 61 3A 20 72 6C 63 61 3A 20 61 64 64 20 26 43 ca: rlca: add &C
001270: 34 0D 0A 09 20 6C 64 20 63 2C 61 0D 0A 09 20 6C 4... ld c,a... l
001280: 64 20 61 2C 68 3A 20 61 6E 64 20 26 33 46 3A 20 d a,h: and &3F:
001290: 6F 72 20 26 34 30 3A 20 6C 64 20 68 2C 61 0D 0A or &40: ld h,a..
0012A0: 09 20 6C 64 20 61 2C 62 3A 20 6C 64 20 62 2C 26 . ld a,b: ld b,&
0012B0: 37 46 0D 0A 09 20 6F 75 74 20 28 63 29 2C 63 3A 7F... out (c),c:
0012C0: 20 6C 64 20 61 2C 28 68 6C 29 0D 0A 09 20 6C 64 ld a,(hl)... ld
0012D0: 20 63 2C 26 43 30 3A 20 6F 75 74 20 28 63 29 2C c,&C0: out (c),
0012E0: 63 0D 0A 09 70 6F 70 20 68 6C 3A 20 70 6F 70 20 c...pop hl: pop
0012F0: 62 63 0D 0A 09 72 65 74 0D 0A 0D 0A 2E 6C 64 61 bc...ret.....lda
001300: 68 6C 69 09 63 61 6C 6C 20 6C 64 61 68 6C 0D 0A hli.call ldahl..
001310: 09 69 6E 63 20 68 6C 3A 20 72 65 74 0D 0A 0D 0A .inc hl: ret....
001320: 09 3B 2A 2A 2A 20 53 55 42 52 09 4C 44 20 28 48 .;*** SUBR.LD (H
001330: 4C 29 2C 41 20 2D 20 65 78 74 72 61 20 62 61 6E L),A - extra ban
001340: 6B 73 0D 0A 0D 0A 2E 6C 64 68 6C 61 09 70 75 73 ks.....ldhla.pus
001350: 68 20 62 63 3A 20 70 75 73 68 20 68 6C 0D 0A 09 h bc: push hl...
001360: 20 6C 64 20 62 2C 61 3A 20 6C 64 20 61 2C 68 3A ld b,a: ld a,h:
001370: 20 61 6E 64 20 26 43 30 0D 0A 09 20 72 6C 63 61 and &C0... rlca
001380: 3A 20 72 6C 63 61 3A 20 61 64 64 20 26 43 34 0D : rlca: add &C4.
001390: 0A 09 20 6C 64 20 63 2C 61 0D 0A 09 20 6C 64 20 .. ld c,a... ld
0013A0: 61 2C 68 3A 20 61 6E 64 20 26 33 46 3A 20 6F 72 a,h: and &3F: or
0013B0: 20 26 34 30 3A 20 6C 64 20 68 2C 61 0D 0A 09 20 &40: ld h,a...
0013C0: 6C 64 20 61 2C 62 3A 20 6C 64 20 62 2C 26 37 46 ld a,b: ld b,&7F
0013D0: 0D 0A 09 20 6F 75 74 20 28 63 29 2C 63 3A 20 6C ... out (c),c: l
0013E0: 64 20 28 68 6C 29 2C 61 0D 0A 09 20 6C 64 20 63 d (hl),a... ld c
0013F0: 2C 26 43 30 3A 20 6F 75 74 20 28 63 29 2C 63 0D ,&C0: out (c),c.
001400: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
001410: 01 00 01 00 02 09 4E E5 01 00 C4 02 00 00 00 02 ......N.........
001420: 01 00 C9 02 00 00 00 02 01 00 C5 02 00 00 00 02 ................
001430: 01 00 C1 02 00 00 00 02 01 00 C6 02 00 00 00 02 ................
001440: 01 00 C2 02 00 00 00 02 01 00 C7 02 00 00 00 02 ................
001450: 01 00 C3 02 00 00 00 02 01 00 C8 02 00 00 00 02 ................
001460: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
001470: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
001480: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
001490: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0014A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0014B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0014C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0014D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0014E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0014F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
001500: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 32 2D 62 ...;*** SUBR.2-b
001510: 79 74 65 20 68 65 78 20 69 6E 70 75 74 20 73 75 yte hex input su
001520: 62 72 6F 75 74 69 6E 65 0D 0A 0D 0A 2E 68 65 78 broutine.....hex
001530: 69 6E 70 09 6C 64 20 68 6C 2C 26 41 46 34 30 09 inp.ld hl,&AF40.
001540: 09 09 3B 69 6E 70 75 74 20 62 75 66 66 65 72 0D ..;input buffer.
001550: 0A 09 6C 64 20 62 2C 30 09 09 09 09 3B 63 68 61 ..ld b,0....;cha
001560: 72 61 63 74 65 72 73 20 74 79 70 65 64 20 69 6E racters typed in
001570: 0D 0A 09 63 61 6C 6C 20 26 42 42 38 31 09 09 09 ...call &BB81...
001580: 3B 63 75 72 73 6F 72 20 6F 6E 0D 0A 0D 0A 2E 77 ;cursor on.....w
001590: 61 69 74 63 68 09 63 61 6C 6C 20 26 42 42 30 36 aitch.call &BB06
0015A0: 09 09 09 3B 77 61 69 74 20 66 6F 72 20 63 68 61 ...;wait for cha
0015B0: 72 61 63 74 65 72 0D 0A 09 63 70 20 26 46 43 3A racter...cp &FC:
0015C0: 20 6A 70 20 7A 2C 26 42 42 38 34 09 09 3B 45 53 jp z,&BB84..;ES
0015D0: 43 41 50 45 3F 20 73 65 74 20 7A 65 72 6F 2C 20 CAPE? set zero,
0015E0: 69 6E 64 69 63 61 74 65 73 20 45 53 43 20 70 72 indicates ESC pr
0015F0: 65 73 73 65 64 0D 0A 09 63 70 20 31 33 3A 20 20 essed...cp 13:
001600: 6A 72 20 7A 2C 65 78 68 69 6E 70 09 09 3B 52 45 jr z,exhinp..;RE
001610: 54 55 52 4E 3F 0D 0A 09 63 70 20 26 37 46 3A 20 TURN?...cp &7F:
001620: 6A 72 20 6E 7A 2C 6E 6F 74 64 65 6C 09 09 3B 44 jr nz,notdel..;D
001630: 45 4C 3F 0D 0A 0D 0A 09 6C 64 20 61 2C 62 3A 20 EL?.....ld a,b:
001640: 6F 72 20 61 0D 0A 09 6A 72 20 7A 2C 77 61 69 74 or a...jr z,wait
001650: 63 68 09 09 09 3B 64 6F 6E 27 74 20 64 65 6C 65 ch...;don't dele
001660: 74 65 20 69 66 20 6E 6F 20 69 6E 70 75 74 20 79 te if no input y
001670: 65 74 21 0D 0A 0D 0A 09 64 65 63 20 68 6C 3A 20 et!.....dec hl:
001680: 64 65 63 20 62 09 09 09 3B 64 65 63 72 65 6D 65 dec b...;decreme
001690: 6E 74 20 63 68 61 72 20 63 6F 75 6E 74 20 61 6E nt char count an
0016A0: 64 20 6C 6F 63 61 74 69 6F 6E 0D 0A 09 6C 64 20 d location...ld
0016B0: 61 2C 38 3A 20 63 61 6C 6C 20 26 42 42 35 41 09 a,8: call &BB5A.
0016C0: 09 3B 62 61 63 6B 73 70 61 63 65 2E 2E 2E 0D 0A .;backspace.....
0016D0: 09 6C 64 20 61 2C 33 32 3A 20 63 61 6C 6C 20 26 .ld a,32: call &
0016E0: 42 42 35 41 09 09 3B 53 50 41 43 45 20 6F 76 65 BB5A..;SPACE ove
0016F0: 72 20 74 68 65 20 63 68 61 72 61 63 74 65 72 2E r the character.
001700: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001710: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001720: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001730: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001740: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001750: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001760: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001770: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001780: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001790: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0017A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0017B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0017C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0017D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0017E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0017F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001800: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001810: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001820: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001830: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001840: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001850: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001860: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001870: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001880: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001890: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0018A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0018B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0018C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0018D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0018E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0018F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001900: 2E 2E 0D 0A 09 6C 64 20 61 2C 38 3A 20 63 61 6C .....ld a,8: cal
001910: 6C 20 26 42 42 35 41 09 09 3B 61 6E 64 20 62 61 l &BB5A..;and ba
001920: 63 6B 73 70 61 63 65 20 61 67 61 69 6E 0D 0A 09 ckspace again...
001930: 6A 72 20 77 61 69 74 63 68 0D 0A 0D 0A 2E 6E 6F jr waitch.....no
001940: 74 64 65 6C 09 63 61 6C 6C 20 75 63 61 73 65 0D tdel.call ucase.
001950: 0A 09 63 70 20 22 46 22 2B 31 3A 20 6A 72 20 6E ..cp "F"+1: jr n
001960: 63 2C 77 61 69 74 63 68 09 09 3B 67 65 74 20 61 c,waitch..;get a
001970: 6E 6F 74 68 65 72 20 63 68 61 72 61 63 74 65 72 nother character
001980: 20 69 66 20 6F 76 65 72 20 22 46 22 0D 0A 09 63 if over "F"...c
001990: 70 20 22 30 22 3A 20 20 20 6A 72 20 63 2C 77 61 p "0": jr c,wa
0019A0: 69 74 63 68 09 09 3B 67 65 74 20 61 6E 6F 74 68 itch..;get anoth
0019B0: 65 72 20 63 68 61 72 61 63 74 65 72 20 69 66 20 er character if
0019C0: 62 65 6C 6F 77 20 22 30 22 0D 0A 09 63 70 20 22 below "0"...cp "
0019D0: 41 22 3A 20 20 20 6A 72 20 6E 63 2C 6F 6B 63 68 A": jr nc,okch
0019E0: 09 09 3B 6F 6B 20 69 66 20 22 41 22 20 6F 72 20 ..;ok if "A" or
0019F0: 61 62 6F 76 65 0D 0A 09 63 70 20 22 39 22 2B 31 above...cp "9"+1
001A00: 3A 20 6A 72 20 6E 63 2C 77 61 69 74 63 68 09 09 : jr nc,waitch..
001A10: 3B 67 65 74 20 61 6E 6F 74 68 65 72 20 63 68 61 ;get another cha
001A20: 72 61 63 74 65 72 20 69 66 20 61 62 6F 76 65 20 racter if above
001A30: 22 39 22 0D 0A 2E 6F 6B 63 68 09 6C 64 20 28 68 "9"...okch.ld (h
001A40: 6C 29 2C 61 3A 20 69 6E 63 20 68 6C 3A 20 69 6E l),a: inc hl: in
001A50: 63 20 62 0D 0A 09 63 61 6C 6C 20 26 42 42 35 41 c b...call &BB5A
001A60: 0D 0A 09 62 69 74 20 32 2C 62 3A 20 6A 72 20 7A ...bit 2,b: jr z
001A70: 2C 77 61 69 74 63 68 09 09 3B 34 20 63 68 61 72 ,waitch..;4 char
001A80: 61 63 74 65 72 73 20 79 65 74 3F 0D 0A 0D 0A 2E acters yet?.....
001A90: 65 78 68 69 6E 70 09 63 61 6C 6C 20 26 42 42 38 exhinp.call &BB8
001AA0: 34 09 09 09 3B 63 75 72 73 6F 72 20 6F 66 66 0D 4...;cursor off.
001AB0: 0A 09 6C 64 20 61 2C 62 3A 20 6F 72 20 61 3A 20 ..ld a,b: or a:
001AC0: 6A 72 20 7A 2C 6E 6F 68 69 6E 70 09 3B 6E 6F 74 jr z,nohinp.;not
001AD0: 68 69 6E 67 20 69 6E 70 75 74 21 0D 0A 09 6C 64 hing input!...ld
001AE0: 20 64 65 2C 30 0D 0A 09 6C 64 20 68 6C 2C 26 41 de,0...ld hl,&A
001AF0: 46 34 30 0D 0A 0D 0A 2E 68 63 6C 6F 6F 70 09 65 F40.....hcloop.e
001B00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001B10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001B20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001B30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001B40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001B50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001B60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001B70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001B80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001B90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001BA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001BB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001BC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001BD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001BE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001BF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001C00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001C10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001C20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001C30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001C40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001C50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001C60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001C70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001C80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001C90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001CA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001CB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001CC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001CD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001CE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001CF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
001D00: 78 20 64 65 2C 68 6C 0D 0A 09 20 61 64 64 20 68 x de,hl... add h
001D10: 6C 2C 68 6C 3A 20 61 64 64 20 68 6C 2C 68 6C 0D l,hl: add hl,hl.
001D20: 0A 09 20 61 64 64 20 68 6C 2C 68 6C 3A 20 61 64 .. add hl,hl: ad
001D30: 64 20 68 6C 2C 68 6C 0D 0A 09 65 78 20 64 65 2C d hl,hl...ex de,
001D40: 68 6C 0D 0A 09 6C 64 20 61 2C 28 68 6C 29 0D 0A hl...ld a,(hl)..
001D50: 09 63 70 20 22 41 22 3A 20 6A 72 20 6E 63 2C 6C .cp "A": jr nc,l
001D60: 65 74 74 65 72 0D 0A 09 73 75 62 20 34 38 3A 20 etter...sub 48:
001D70: 6A 72 20 61 64 64 32 64 65 0D 0A 2E 6C 65 74 74 jr add2de...lett
001D80: 65 72 09 73 75 62 20 35 35 0D 0A 2E 61 64 64 32 er.sub 55...add2
001D90: 64 65 09 70 75 73 68 20 62 63 0D 0A 09 20 6C 64 de.push bc... ld
001DA0: 20 63 2C 61 3A 20 6C 64 20 62 2C 30 0D 0A 09 20 c,a: ld b,0...
001DB0: 65 78 20 68 6C 2C 64 65 3A 20 61 64 64 20 68 6C ex hl,de: add hl
001DC0: 2C 62 63 3A 20 65 78 20 68 6C 2C 64 65 0D 0A 09 ,bc: ex hl,de...
001DD0: 70 6F 70 20 62 63 0D 0A 09 69 6E 63 20 68 6C 3A pop bc...inc hl:
001DE0: 20 64 6A 6E 7A 20 68 63 6C 6F 6F 70 0D 0A 0D 0A djnz hcloop....
001DF0: 09 65 78 20 68 6C 2C 64 65 0D 0A 09 6C 64 20 61 .ex hl,de...ld a
001E00: 2C 31 3A 20 6F 72 20 61 09 09 09 3B 7A 65 72 6F ,1: or a...;zero
001E10: 20 30 20 63 61 72 72 79 20 30 2C 20 69 6E 64 69 0 carry 0, indi
001E20: 63 61 74 65 73 20 6E 75 6D 62 65 72 20 69 6E 20 cates number in
001E30: 48 4C 0D 0A 09 72 65 74 0D 0A 0D 0A 2E 6E 6F 68 HL...ret.....noh
001E40: 69 6E 70 09 6C 64 20 61 2C 31 3A 20 6F 72 20 61 inp.ld a,1: or a
001E50: 3A 20 73 63 66 09 09 3B 7A 65 72 6F 20 30 20 63 : scf..;zero 0 c
001E60: 61 72 72 79 20 31 2C 20 69 6E 64 69 63 61 74 65 arry 1, indicate
001E70: 73 20 6E 6F 20 69 6E 70 75 74 0D 0A 09 72 65 74 s no input...ret
001E80: 0D 0A 1A 45 58 49 4E 50 32 20 24 24 24 FF 00 FF ...EXINP2 $$$...
001E90: 32 2D 62 79 74 65 20 68 65 78 20 69 6E 70 75 74 2-byte hex input
001EA0: 20 73 75 62 72 6F 75 74 69 6E 65 0D 0A 0D 0A 2E subroutine.....
001EB0: 68 65 78 69 6E 70 20 6C 64 20 68 6C 2C 26 41 46 hexinp ld hl,&AF
001EC0: 34 30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 40
001ED0: 20 20 20 20 20 20 20 3B 69 6E 70 75 74 20 62 75 ;input bu
001EE0: 66 66 65 72 0D 0A 20 20 20 20 20 20 20 20 6C 64 ffer.. ld
001EF0: 20 62 2C 30 20 20 20 20 20 20 20 20 20 20 20 20 b,0
001F00: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 31 2D 62 ...;*** SUBR.1-b
001F10: 79 74 65 20 68 65 78 20 69 6E 70 75 74 20 73 75 yte hex input su
001F20: 62 72 6F 75 74 69 6E 65 0D 0A 0D 0A 2E 6F 6E 65 broutine.....one
001F30: 68 65 78 09 63 61 6C 6C 20 67 65 74 69 70 31 3A hex.call getip1:
001F40: 20 6A 72 20 6E 63 2C 6F 6E 65 68 65 78 0D 0A 09 jr nc,onehex...
001F50: 72 6C 63 61 3A 20 72 6C 63 61 3A 20 72 6C 63 61 rlca: rlca: rlca
001F60: 3A 20 72 6C 63 61 3A 20 6C 64 20 63 2C 61 0D 0A : rlca: ld c,a..
001F70: 09 63 61 6C 6C 20 67 65 74 69 70 31 3A 20 6A 72 .call getip1: jr
001F80: 20 63 2C 6E 64 65 6C 31 0D 0A 09 6C 64 20 61 2C c,ndel1...ld a,
001F90: 38 3A 20 20 20 20 20 20 63 61 6C 6C 20 26 42 42 8: call &BB
001FA0: 35 41 0D 0A 09 6C 64 20 61 2C 31 36 3A 20 20 20 5A...ld a,16:
001FB0: 20 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A 09 6A call &BB5A...j
001FC0: 72 20 6F 6E 65 68 65 78 0D 0A 2E 6E 64 65 6C 31 r onehex...ndel1
001FD0: 09 6F 72 20 63 3A 20 20 20 20 20 20 20 20 6A 70 .or c: jp
001FE0: 20 26 42 42 38 34 0D 0A 0D 0A 2E 67 65 74 69 70 &BB84.....getip
001FF0: 31 09 63 61 6C 6C 20 26 42 42 38 31 0D 0A 09 63 1.call &BB81...c
002000: 61 6C 6C 20 26 42 42 30 36 0D 0A 09 63 61 6C 6C all &BB06...call
002010: 20 75 63 61 73 65 3A 20 20 63 70 20 26 37 46 3A ucase: cp &7F:
002020: 20 72 65 74 20 7A 0D 0A 09 63 61 6C 6C 20 63 68 ret z...call ch
002030: 6B 68 65 78 3A 20 6A 72 20 6E 63 2C 67 65 74 69 khex: jr nc,geti
002040: 70 31 0D 0A 09 63 61 6C 6C 20 26 42 42 35 41 3A p1...call &BB5A:
002050: 20 20 6C 64 20 61 2C 65 0D 0A 09 72 65 74 0D 0A ld a,e...ret..
002060: 0D 0A 1A 61 3A 20 72 6C 63 61 3A 20 72 6C 63 61 ...a: rlca: rlca
002070: 3A 20 6C 64 20 63 2C 61 0D 0A 20 20 20 20 20 20 : ld c,a..
002080: 72 65 0D 0A 1A 49 44 45 20 20 24 24 24 FF 00 FF re...IDE $$$...
002090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0020A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0020B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0020C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0020D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0020E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0020F0: 00 00 00 00 00 00 06 00 40 00 01 00 1A 29 2C 61 ........@....),a
002100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0021A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0021B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0021C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0021D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0021E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0021F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002200: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002210: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002220: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002230: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002240: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002250: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002260: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002270: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002280: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002290: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0022A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0022B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0022C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0022D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0022E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0022F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002300: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002310: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002320: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002330: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002340: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002350: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002360: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002370: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002380: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002390: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0023A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0023B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0023C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0023D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0023E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0023F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002400: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002410: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002420: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002430: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002440: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002450: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002460: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002470: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002480: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002490: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0024A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0024B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0024C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0024D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0024E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0024F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002500: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 49 6E 2D ...;*** SUBR.In-
002510: 6C 69 6E 65 20 73 74 72 69 6E 67 20 70 72 69 6E line string prin
002520: 74 20 73 75 62 72 6F 75 74 69 6E 65 0D 0A 09 3B t subroutine...;
002530: 09 09 66 6F 6C 6C 6F 77 20 22 43 41 4C 4C 20 69 ..follow "CALL i
002540: 6E 6C 69 6E 65 22 20 77 69 74 68 20 22 53 54 52 nline" with "STR
002550: 20 6D 65 73 73 61 67 65 22 0D 0A 0D 0A 2E 69 6E message".....in
002560: 6C 69 6E 65 09 6C 64 20 28 68 6C 73 74 29 2C 68 line.ld (hlst),h
002570: 6C 0D 0A 09 70 6F 70 20 68 6C 3A 20 70 75 73 68 l...pop hl: push
002580: 20 61 66 0D 0A 2E 67 69 6E 63 68 72 09 6C 64 20 af...ginchr.ld
002590: 61 2C 28 68 6C 29 0D 0A 09 62 69 74 20 37 2C 61 a,(hl)...bit 7,a
0025A0: 3A 20 72 65 73 20 37 2C 61 0D 0A 09 63 61 6C 6C : res 7,a...call
0025B0: 20 26 42 42 35 41 3A 20 69 6E 63 20 68 6C 0D 0A &BB5A: inc hl..
0025C0: 09 6A 72 20 7A 2C 67 69 6E 63 68 72 0D 0A 09 70 .jr z,ginchr...p
0025D0: 6F 70 20 61 66 3A 20 70 75 73 68 20 68 6C 0D 0A op af: push hl..
0025E0: 09 6C 64 20 68 6C 2C 28 68 6C 73 74 29 0D 0A 09 .ld hl,(hlst)...
0025F0: 72 65 74 0D 0A 0D 0A 2E 68 6C 73 74 09 64 77 20 ret.....hlst.dw
002600: 30 0D 0A 1A 4C 49 4E 45 20 20 24 24 24 FF 00 FF 0...LINE $$$...
002610: 72 69 6E 67 20 70 72 69 6E 74 20 73 75 62 72 6F ring print subro
002620: 75 74 69 6E 65 20 28 43 41 4C 4C 20 69 6E 6C 69 utine (CALL inli
002630: 6E 65 20 2D 20 53 54 52 20 6D 65 73 73 61 67 65 ne - STR message
002640: 29 0D 0A 0D 0A 2E 69 6E 6C 69 6E 65 09 6C 64 20 ).....inline.ld
002650: 28 68 6C 73 74 29 2C 68 6C 0D 0A 09 70 6F 70 20 (hlst),hl...pop
002660: 68 6C 3A 20 70 75 73 68 20 61 66 0D 0A 2E 67 69 hl: push af...gi
002670: 6E 63 68 72 09 6C 64 20 61 2C 28 68 6C 29 0D 0A nchr.ld a,(hl)..
002680: 0D 0A 1A 45 58 49 4E 50 32 20 24 24 24 FF 00 FF ...EXINP2 $$$...
002690: 32 2D 62 79 74 65 20 68 65 78 20 69 6E 70 75 74 2-byte hex input
0026A0: 20 73 75 62 72 6F 75 74 69 6E 65 0D 0A 0D 0A 2E subroutine.....
0026B0: 68 65 78 69 6E 70 20 6C 64 20 68 6C 2C 26 41 46 hexinp ld hl,&AF
0026C0: 34 30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 40
0026D0: 20 20 20 20 20 20 20 3B 69 6E 70 75 74 20 62 75 ;input bu
0026E0: 66 66 65 72 0D 0A 20 20 20 20 20 20 20 20 6C 64 ffer.. ld
0026F0: 20 62 2C 30 20 20 20 20 20 20 20 20 20 20 20 20 b,0
002700: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
002710: 02 00 01 00 02 09 4E E5 02 00 C7 02 00 00 00 02 ......N.........
002720: 02 00 C3 02 00 00 00 02 02 00 C8 02 00 00 00 02 ................
002730: 02 00 C4 02 00 00 00 02 02 00 C9 02 00 00 00 02 ................
002740: 02 00 C5 02 00 00 00 02 02 00 C1 02 00 00 00 02 ................
002750: 02 00 C6 02 00 00 00 02 02 00 C2 02 00 00 00 02 ................
002760: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
002770: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
002780: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
002790: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0027A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0027B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0027C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0027D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0027E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0027F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
002800: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 43 6F 6E ...;*** SUBR.Con
002810: 76 65 72 74 20 4D 4F 44 45 20 31 20 73 63 72 65 vert MODE 1 scre
002820: 65 6E 20 74 6F 20 4D 4F 44 45 20 32 0D 0A 0D 0A en to MODE 2....
002830: 2E 6D 31 74 6F 32 09 6C 64 20 68 6C 2C 26 43 30 .m1to2.ld hl,&C0
002840: 30 30 0D 0A 2E 6D 6C 6F 6F 70 09 6C 64 20 63 2C 00...mloop.ld c,
002850: 28 68 6C 29 3A 20 63 61 6C 6C 20 72 6F 75 74 6E (hl): call routn
002860: 65 0D 0A 09 6C 64 20 28 68 6C 29 2C 64 3A 20 69 e...ld (hl),d: i
002870: 6E 63 20 68 6C 0D 0A 09 6C 64 20 61 2C 68 3A 20 nc hl...ld a,h:
002880: 6F 72 20 61 3A 20 6A 72 20 6E 7A 2C 6D 6C 6F 6F or a: jr nz,mloo
002890: 70 3A 20 72 65 74 0D 0A 0D 0A 2E 72 6F 75 74 6E p: ret.....routn
0028A0: 65 09 6C 64 20 64 2C 30 3A 20 6C 64 20 62 2C 34 e.ld d,0: ld b,4
0028B0: 0D 0A 0D 0A 2E 6C 6F 6F 70 09 6C 64 20 61 2C 63 .....loop.ld a,c
0028C0: 0D 0A 09 61 6E 64 20 31 37 3A 20 72 72 63 20 63 ...and 17: rrc c
0028D0: 0D 0A 0D 0A 09 6F 72 20 61 3A 20 20 20 6A 72 20 .....or a: jr
0028E0: 7A 2C 61 73 65 74 0D 0A 09 63 70 20 31 36 3A 20 z,aset...cp 16:
0028F0: 20 6A 72 20 6E 7A 2C 6E 6F 74 31 36 0D 0A 09 6C jr nz,not16...l
002900: 64 20 61 2C 33 3A 20 6A 72 20 61 73 65 74 0D 0A d a,3: jr aset..
002910: 0D 0A 2E 6E 6F 74 31 36 09 63 70 20 31 3A 20 20 ...not16.cp 1:
002920: 20 6A 72 20 7A 2C 61 73 65 74 0D 0A 09 6C 64 20 jr z,aset...ld
002930: 61 2C 32 0D 0A 0D 0A 2E 61 73 65 74 09 6F 72 20 a,2.....aset.or
002940: 64 3A 20 72 72 63 61 3A 20 72 72 63 61 0D 0A 09 d: rrca: rrca...
002950: 6C 64 20 64 2C 61 3A 20 64 6A 6E 7A 20 6C 6F 6F ld d,a: djnz loo
002960: 70 0D 0A 09 72 65 74 0D 0A 1A 20 63 2C 28 68 6C p...ret... c,(hl
002970: 29 0D 0A 20 20 20 20 20 20 20 20 63 61 6C 6C 20 ).. call
002980: 49 66 20 66 69 6C 65 6E 61 6D 65 20 6C 65 6E 67 If filename leng
002990: 74 68 20 30 2C 20 72 65 74 75 72 6E 0D 0A 09 6C th 0, return...l
0029A0: 64 20 61 2C 31 3A 20 72 65 74 09 09 09 3B 52 65 d a,1: ret...;Re
0029B0: 74 75 72 6E 20 77 69 74 68 20 6F 6E 65 20 70 61 turn with one pa
0029C0: 72 61 6D 65 74 65 72 0D 0A 0D 0A 1A 78 2C 26 41 rameter.....x,&A
0029D0: 46 30 30 0D 0A 20 20 20 20 20 20 20 20 6C 64 20 F00.. ld
0029E0: 28 69 78 2B 30 29 2C 26 30 32 3A 20 6C 64 20 28 (ix+0),&02: ld (
0029F0: 69 78 2B 31 29 2C 26 41 46 0D 0A 20 20 20 20 20 ix+1),&AF..
002A00: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 48 69 67 ...;*** SUBR.Hig
002A10: 68 6C 69 67 68 74 20 62 61 72 20 61 74 20 73 63 hlight bar at sc
002A20: 72 65 65 6E 20 61 64 64 72 65 73 73 20 48 4C 2C reen address HL,
002A30: 20 42 20 63 68 61 72 61 63 74 65 72 73 20 6C 6F B characters lo
002A40: 6E 67 0D 0A 0D 0A 2E 69 6E 76 65 72 74 09 70 75 ng.....invert.pu
002A50: 73 68 20 61 66 3A 20 72 6C 63 20 62 3A 20 6C 64 sh af: rlc b: ld
002A60: 20 63 2C 62 0D 0A 2E 69 6E 76 5F 6F 6C 09 20 70 c,b...inv_ol. p
002A70: 75 73 68 20 68 6C 3A 20 6C 64 20 62 2C 63 0D 0A ush hl: ld b,c..
002A80: 2E 69 6E 76 5F 6C 70 09 20 20 6C 64 20 61 2C 28 .inv_lp. ld a,(
002A90: 68 6C 29 3A 20 78 6F 72 20 32 35 35 0D 0A 09 20 hl): xor 255...
002AA0: 20 6C 64 20 28 68 6C 29 2C 61 3A 20 69 6E 63 20 ld (hl),a: inc
002AB0: 68 6C 3A 20 64 6A 6E 7A 20 69 6E 76 5F 6C 70 0D hl: djnz inv_lp.
002AC0: 0A 09 20 70 6F 70 20 68 6C 0D 0A 09 20 6C 64 20 .. pop hl... ld
002AD0: 61 2C 38 3A 20 61 64 64 20 68 0D 0A 09 20 6C 64 a,8: add h... ld
002AE0: 20 68 2C 61 3A 20 6A 72 20 6E 63 2C 69 6E 76 5F h,a: jr nc,inv_
002AF0: 6F 6C 0D 0A 09 70 6F 70 20 61 66 3A 20 72 65 74 ol...pop af: ret
002B00: 0D 0A 0D 0A 1A 45 52 54 20 20 24 24 24 FF 00 FF .....ERT $$$...
002B10: 69 67 68 74 20 62 61 72 20 61 74 20 48 4C 2C 20 ight bar at HL,
002B20: 42 20 63 68 61 72 61 63 74 65 72 73 20 6C 6F 6E B characters lon
002B30: 67 0D 0A 0D 0A 2E 69 6E 76 65 72 74 09 70 75 73 g.....invert.pus
002B40: 68 20 61 66 3A 20 72 6C 63 20 62 3A 20 6C 64 20 h af: rlc b: ld
002B50: 63 2C 62 0D 0A 2E 69 6E 76 5F 6F 6C 09 20 70 75 c,b...inv_ol. pu
002B60: 73 68 20 68 6C 3A 20 6C 64 20 62 2C 63 0D 0A 2E sh hl: ld b,c...
002B70: 69 6E 76 5F 6C 70 09 20 20 6C 64 20 61 2C 28 68 inv_lp. ld a,(h
002B80: 61 6C 6C 20 26 42 42 35 41 3A 20 6C 64 20 61 2C all &BB5A: ld a,
002B90: 33 32 3A 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A 32: call &BB5A..
002BA0: 09 20 6C 64 20 61 2C 38 3A 20 63 61 6C 6C 20 26 . ld a,8: call &
002BB0: 42 42 35 41 3A 20 6A 72 20 67 69 6E 6B 65 79 0D BB5A: jr ginkey.
002BC0: 0A 2E 65 69 6E 70 66 09 20 6C 64 20 28 68 6C 29 ..einpf. ld (hl)
002BD0: 2C 30 0D 0A 09 70 6F 70 20 68 6C 0D 0A 09 70 75 ,0...pop hl...pu
002BE0: 73 68 20 61 66 3A 20 63 61 6C 6C 20 26 42 42 38 sh af: call &BB8
002BF0: 34 3A 20 70 6F 70 20 61 66 0D 0A 09 63 70 20 26 4: pop af...cp &
002C00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002C10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002C20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002C30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002C40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002C50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002C60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002C70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002C80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002C90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002CA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002CB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002CC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002CD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002CE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002CF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002D00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002D10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002D20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002D30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002D40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002D50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002D60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002D70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002D80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002D90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002DA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002DB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002DC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002DD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002DE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002DF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002E00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002E10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002E20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002E30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002E40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002E50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002E60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002E70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002E80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002E90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002EA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002EB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002EC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002ED0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002EE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002EF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002F00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002F10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002F20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002F30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002F40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002F50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002F60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002F70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002F80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002F90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002FA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002FB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002FC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002FD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002FE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
002FF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003000: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 4D 75 6C ...;*** SUBR.Mul
003010: 74 69 70 6C 79 20 48 4C 20 62 79 20 41 0D 0A 0D tiply HL by A...
003020: 0A 2E 6D 75 6C 74 69 09 6C 64 20 64 2C 68 3A 20 ..multi.ld d,h:
003030: 6C 64 20 65 2C 6C 3A 20 6C 64 20 68 6C 2C 30 0D ld e,l: ld hl,0.
003040: 0A 2E 6D 75 6C 74 69 6C 09 6F 72 20 61 3A 20 72 ..multil.or a: r
003050: 65 74 20 7A 0D 0A 09 61 64 64 20 68 6C 2C 64 65 et z...add hl,de
003060: 3A 20 64 65 63 20 61 3A 20 6A 72 20 6D 75 6C 74 : dec a: jr mult
003070: 69 6C 0D 0A 1A 65 20 22 23 54 52 41 43 4B 2E 42 il...e "#TRACK.B
003080: 6F 72 20 61 3A 20 6A 72 20 6E 7A 2C 6D 6C 6F 6F or a: jr nz,mloo
003090: 70 3A 20 72 65 74 0D 0A 0D 0A 2E 72 6F 75 74 6E p: ret.....routn
0030A0: 65 09 6C 64 20 64 2C 30 3A 20 6C 64 20 62 2C 34 e.ld d,0: ld b,4
0030B0: 0D 0A 0D 0A 2E 6C 6F 6F 70 09 6C 64 20 61 2C 63 .....loop.ld a,c
0030C0: 0D 0A 09 61 6E 64 20 31 37 3A 20 72 72 63 20 63 ...and 17: rrc c
0030D0: 0D 0A 0D 0A 09 6F 72 20 61 3A 20 20 20 6A 72 20 .....or a: jr
0030E0: 7A 2C 61 73 65 74 0D 0A 09 63 70 20 31 36 3A 20 z,aset...cp 16:
0030F0: 20 6A 72 20 6E 7A 2C 6E 6F 74 31 36 0D 0A 09 6C jr nz,not16...l
003100: 64 20 61 2C 33 3A 20 6A 72 20 61 73 65 74 0D 0A d a,3: jr aset..
003110: 0D 0A 2E 6E 6F 74 31 36 09 63 70 20 31 3A 20 20 ...not16.cp 1:
003120: 20 6A 72 20 7A 2C 61 73 65 74 0D 0A 09 6C 64 20 jr z,aset...ld
003130: 61 2C 32 0D 0A 0D 0A 2E 61 73 65 74 09 6F 72 20 a,2.....aset.or
003140: 64 3A 20 72 72 63 61 3A 20 72 72 63 61 0D 0A 09 d: rrca: rrca...
003150: 6C 64 20 64 2C 61 3A 20 64 6A 6E 7A 20 6C 6F 6F ld d,a: djnz loo
003160: 70 0D 0A 09 72 65 74 0D 0A 1A 20 63 2C 28 68 6C p...ret... c,(hl
003170: 29 0D 0A 20 20 20 20 20 20 20 20 63 61 6C 6C 20 ).. call
003180: 49 66 20 66 69 6C 65 6E 61 6D 65 20 6C 65 6E 67 If filename leng
003190: 74 68 20 30 2C 20 72 65 74 75 72 6E 0D 0A 09 6C th 0, return...l
0031A0: 64 20 61 2C 31 3A 20 72 65 74 09 09 09 3B 52 65 d a,1: ret...;Re
0031B0: 74 75 72 6E 20 77 69 74 68 20 6F 6E 65 20 70 61 turn with one pa
0031C0: 72 61 6D 65 74 65 72 0D 0A 0D 0A 1A 78 2C 26 41 rameter.....x,&A
0031D0: 46 30 30 0D 0A 20 20 20 20 20 20 20 20 6C 64 20 F00.. ld
0031E0: 28 69 78 2B 30 29 2C 26 30 32 3A 20 6C 64 20 28 (ix+0),&02: ld (
0031F0: 69 78 2B 31 29 2C 26 41 46 0D 0A 20 20 20 20 20 ix+1),&AF..
003200: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 49 6E 70 ...;*** SUBR.Inp
003210: 75 74 20 66 69 6C 65 6E 61 6D 65 20 69 66 20 6E ut filename if n
003220: 6F 74 20 70 72 6F 76 69 64 65 64 20 74 6F 20 52 ot provided to R
003230: 53 58 0D 0A 0D 0A 2E 6E 6F 6E 61 6D 09 70 75 73 SX.....nonam.pus
003240: 68 20 68 6C 0D 0A 09 20 6C 64 20 69 78 2C 26 41 h hl... ld ix,&A
003250: 46 30 30 0D 0A 09 20 6C 64 20 28 69 78 2B 30 29 F00... ld (ix+0)
003260: 2C 26 30 32 3A 20 6C 64 20 28 69 78 2B 31 29 2C ,&02: ld (ix+1),
003270: 26 41 46 0D 0A 09 20 6C 64 20 28 69 78 2B 33 29 &AF... ld (ix+3)
003280: 2C 26 30 35 3A 20 6C 64 20 28 69 78 2B 34 29 2C ,&05: ld (ix+4),
003290: 26 41 46 09 3B 53 74 72 69 6E 67 20 64 65 73 63 &AF.;String desc
0032A0: 72 69 70 74 6F 72 20 62 6C 6F 63 6B 20 40 20 26 riptor block @ &
0032B0: 41 46 30 34 0D 0A 09 20 6C 64 20 68 6C 2C 66 74 AF04... ld hl,ft
0032C0: 65 78 74 3A 20 63 61 6C 6C 20 73 74 72 69 6E 67 ext: call string
0032D0: 0D 0A 09 20 6C 64 20 68 6C 2C 26 41 46 30 35 3A ... ld hl,&AF05:
0032E0: 20 63 61 6C 6C 20 69 6E 70 75 74 66 0D 0A 09 20 call inputf...
0032F0: 6C 64 20 61 2C 31 30 3A 20 63 61 6C 6C 20 26 42 ld a,10: call &B
003300: 42 35 41 0D 0A 09 20 6C 64 20 61 2C 31 33 3A 20 B5A... ld a,13:
003310: 63 61 6C 6C 20 26 42 42 35 41 0D 0A 09 70 6F 70 call &BB5A...pop
003320: 20 68 6C 0D 0A 09 6C 64 20 28 69 78 2B 32 29 2C hl...ld (ix+2),
003330: 62 0D 0A 09 6C 64 20 61 2C 30 3A 20 72 65 74 20 b...ld a,0: ret
003340: 7A 09 09 09 3B 4E 6F 20 70 61 72 61 6D 65 74 65 z...;No paramete
003350: 72 20 70 61 73 73 65 64 20 66 6F 72 20 45 53 43 r passed for ESC
003360: 2F 52 45 54 55 52 4E 0D 0A 09 6C 64 20 61 2C 62 /RETURN...ld a,b
003370: 3A 20 6F 72 20 61 3A 20 72 65 74 20 7A 09 09 3B : or a: ret z..;
003380: 49 66 20 66 69 6C 65 6E 61 6D 65 20 6C 65 6E 67 If filename leng
003390: 74 68 20 30 2C 20 72 65 74 75 72 6E 0D 0A 09 6C th 0, return...l
0033A0: 64 20 61 2C 31 3A 20 72 65 74 09 09 09 3B 52 65 d a,1: ret...;Re
0033B0: 74 75 72 6E 20 77 69 74 68 20 6F 6E 65 20 70 61 turn with one pa
0033C0: 72 61 6D 65 74 65 72 0D 0A 0D 0A 1A 78 2C 26 41 rameter.....x,&A
0033D0: 46 30 30 0D 0A 20 20 20 20 20 20 20 20 6C 64 20 F00.. ld
0033E0: 28 69 78 2B 30 29 2C 26 30 32 3A 20 6C 64 20 28 (ix+0),&02: ld (
0033F0: 69 78 2B 31 29 2C 26 41 46 0D 0A 20 20 20 20 20 ix+1),&AF..
003400: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 49 6E 70 ...;*** SUBR.Inp
003410: 75 74 20 66 69 6C 65 6E 61 6D 65 20 74 6F 20 62 ut filename to b
003420: 75 66 66 65 72 20 61 74 20 48 4C 20 28 72 65 74 uffer at HL (ret
003430: 75 72 6E 73 20 6C 65 6E 67 74 68 20 69 6E 20 42 urns length in B
003440: 29 0D 0A 0D 0A 2E 69 6E 70 75 74 66 09 70 75 73 ).....inputf.pus
003450: 68 20 68 6C 3A 20 63 61 6C 6C 20 26 42 42 38 31 h hl: call &BB81
003460: 0D 0A 09 20 6C 64 20 62 2C 30 0D 0A 2E 67 69 6E ... ld b,0...gin
003470: 6B 65 79 09 20 63 61 6C 6C 20 26 42 42 31 38 0D key. call &BB18.
003480: 0A 09 20 63 70 20 26 46 43 3A 20 6A 72 20 7A 2C .. cp &FC: jr z,
003490: 65 69 6E 70 66 0D 0A 09 20 63 70 20 31 33 3A 20 einpf... cp 13:
0034A0: 6A 72 20 7A 2C 65 69 6E 70 66 0D 0A 09 20 63 70 jr z,einpf... cp
0034B0: 20 33 32 3A 20 6A 72 20 63 2C 67 69 6E 6B 65 79 32: jr c,ginkey
0034C0: 0D 0A 09 20 63 70 20 31 32 37 3A 20 6A 72 20 7A ... cp 127: jr z
0034D0: 2C 64 65 6C 65 74 65 3A 20 6A 72 20 6E 63 2C 67 ,delete: jr nc,g
0034E0: 69 6E 6B 65 79 0D 0A 09 20 62 69 74 20 34 2C 62 inkey... bit 4,b
0034F0: 3A 20 6A 72 20 6E 7A 2C 67 69 6E 6B 65 79 0D 0A : jr nz,ginkey..
003500: 09 20 63 61 6C 6C 20 26 42 42 35 41 3A 20 6C 64 . call &BB5A: ld
003510: 20 28 68 6C 29 2C 61 3A 20 69 6E 63 20 68 6C 0D (hl),a: inc hl.
003520: 0A 09 20 69 6E 63 20 62 3A 20 6A 72 20 67 69 6E .. inc b: jr gin
003530: 6B 65 79 0D 0A 2E 64 65 6C 65 74 65 09 20 6C 64 key...delete. ld
003540: 20 61 2C 62 3A 20 6F 72 20 61 3A 20 6A 72 20 7A a,b: or a: jr z
003550: 2C 67 69 6E 6B 65 79 0D 0A 09 20 64 65 63 20 62 ,ginkey... dec b
003560: 3A 20 64 65 63 20 68 6C 3A 20 6C 64 20 28 68 6C : dec hl: ld (hl
003570: 29 2C 30 0D 0A 09 20 6C 64 20 61 2C 38 3A 20 63 ),0... ld a,8: c
003580: 61 6C 6C 20 26 42 42 35 41 3A 20 6C 64 20 61 2C all &BB5A: ld a,
003590: 33 32 3A 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A 32: call &BB5A..
0035A0: 09 20 6C 64 20 61 2C 38 3A 20 63 61 6C 6C 20 26 . ld a,8: call &
0035B0: 42 42 35 41 3A 20 6A 72 20 67 69 6E 6B 65 79 0D BB5A: jr ginkey.
0035C0: 0A 2E 65 69 6E 70 66 09 20 6C 64 20 28 68 6C 29 ..einpf. ld (hl)
0035D0: 2C 30 0D 0A 09 70 6F 70 20 68 6C 0D 0A 09 70 75 ,0...pop hl...pu
0035E0: 73 68 20 61 66 3A 20 63 61 6C 6C 20 26 42 42 38 sh af: call &BB8
0035F0: 34 3A 20 70 6F 70 20 61 66 0D 0A 09 63 70 20 26 4: pop af...cp &
003600: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003610: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003620: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003630: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003640: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003650: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003660: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003670: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003680: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003690: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0036A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0036B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0036C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0036D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0036E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0036F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003700: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003710: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003720: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003730: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003740: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003750: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003760: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003770: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003780: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003790: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0037A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0037B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0037C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0037D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0037E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0037F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003800: 46 43 3A 20 72 65 74 0D 0A 1A 24 24 24 FF 00 FF FC: ret...$$$...
003810: 2C 38 3A 20 63 61 6C 6C 20 26 42 42 35 41 3A 20 ,8: call &BB5A:
003820: 6A 72 20 67 69 6E 6B 65 79 0D 0A 2E 65 69 6E 70 jr ginkey...einp
003830: 66 09 20 6C 64 20 28 68 6C 29 2C 30 0D 0A 09 70 f. ld (hl),0...p
003840: 6F 70 20 68 6C 0D 0A 09 70 75 73 68 20 61 66 3A op hl...push af:
003850: 20 63 61 6C 6C 20 26 42 42 38 34 3A 20 70 6F 70 call &BB84: pop
003860: 20 61 66 0D 0A 09 63 70 20 26 46 43 3A 20 72 65 af...cp &FC: re
003870: 74 0D 0A 1A 20 20 63 70 20 26 46 43 3A 20 6A 72 t... cp &FC: jr
003880: 0A 09 20 63 70 20 26 46 43 3A 20 6A 72 20 7A 2C .. cp &FC: jr z,
003890: 65 69 6E 70 66 0D 0A 09 20 63 70 20 31 33 3A 20 einpf... cp 13:
0038A0: 6A 72 20 7A 2C 65 69 6E 70 66 0D 0A 09 20 63 70 jr z,einpf... cp
0038B0: 20 33 32 3A 20 6A 72 20 63 2C 67 69 6E 6B 65 79 32: jr c,ginkey
0038C0: 0D 0A 09 20 63 70 20 31 32 37 3A 20 6A 72 20 7A ... cp 127: jr z
0038D0: 2C 64 65 6C 65 74 65 3A 20 6A 72 20 6E 63 2C 67 ,delete: jr nc,g
0038E0: 69 6E 6B 65 79 0D 0A 09 20 62 69 74 20 34 2C 62 inkey... bit 4,b
0038F0: 3A 20 6A 72 20 6E 7A 2C 67 69 6E 6B 65 79 0D 0A : jr nz,ginkey..
003900: 09 20 63 61 6C 6C 20 26 42 42 35 41 3A 20 6C 64 . call &BB5A: ld
003910: 20 28 68 6C 29 2C 61 3A 20 69 6E 63 20 68 6C 0D (hl),a: inc hl.
003920: 0A 09 20 69 6E 63 20 62 3A 20 6A 72 20 67 69 6E .. inc b: jr gin
003930: 6B 65 79 0D 0A 2E 64 65 6C 65 74 65 09 20 6C 64 key...delete. ld
003940: 20 61 2C 62 3A 20 6F 72 20 61 3A 20 6A 72 20 7A a,b: or a: jr z
003950: 2C 67 69 6E 6B 65 79 0D 0A 09 20 64 65 63 20 62 ,ginkey... dec b
003960: 3A 20 64 65 63 20 68 6C 3A 20 6C 64 20 28 68 6C : dec hl: ld (hl
003970: 29 2C 30 0D 0A 09 20 6C 64 20 61 2C 38 3A 20 63 ),0... ld a,8: c
003980: 61 6C 6C 20 26 42 42 35 41 3A 20 6C 64 20 61 2C all &BB5A: ld a,
003990: 33 32 3A 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A 32: call &BB5A..
0039A0: 09 20 6C 64 20 61 2C 38 3A 20 63 61 6C 6C 20 26 . ld a,8: call &
0039B0: 42 42 35 41 3A 20 6A 72 20 67 69 6E 6B 65 79 0D BB5A: jr ginkey.
0039C0: 0A 2E 65 69 6E 70 66 09 20 6C 64 20 28 68 6C 29 ..einpf. ld (hl)
0039D0: 2C 30 0D 0A 09 70 6F 70 20 68 6C 0D 0A 09 70 75 ,0...pop hl...pu
0039E0: 73 68 20 61 66 3A 20 63 61 6C 6C 20 26 42 42 38 sh af: call &BB8
0039F0: 34 3A 20 70 6F 70 20 61 66 0D 0A 09 63 70 20 26 4: pop af...cp &
003A00: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
003A10: 03 00 01 00 02 09 4E E5 03 00 C1 02 00 00 00 02 ......N.........
003A20: 03 00 C6 02 00 00 00 02 03 00 C2 02 00 00 00 02 ................
003A30: 03 00 C7 02 00 00 00 02 03 00 C3 02 00 00 00 02 ................
003A40: 03 00 C8 02 00 00 00 02 03 00 C4 02 00 00 00 02 ................
003A50: 03 00 C9 02 00 00 00 02 03 00 C5 02 00 00 00 02 ................
003A60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
003A70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
003A80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
003A90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
003AA0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
003AB0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
003AC0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
003AD0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
003AE0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
003AF0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
003B00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003B10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003B20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003B30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003B40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003B50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003B60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003B70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003B80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003B90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003BA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003BB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003BC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003BD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003BE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003BF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003C00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003C10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003C20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003C30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003C40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003C50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003C60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003C70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003C80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003C90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003CA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003CB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003CC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003CD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003CE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003CF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
003D00: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 50 72 69 ...;*** SUBR.Pri
003D10: 6E 74 20 48 4C 20 61 73 20 28 75 70 20 74 6F 29 nt HL as (up to)
003D20: 20 35 2D 64 69 67 69 74 20 64 65 63 69 6D 61 6C 5-digit decimal
003D30: 0D 0A 0D 0A 2E 70 72 5F 68 6C 09 6C 64 20 63 2C .....pr_hl.ld c,
003D40: 30 0D 0A 09 6C 64 20 64 65 2C 31 30 30 30 30 3A 0...ld de,10000:
003D50: 20 63 61 6C 6C 20 70 72 68 6C 72 0D 0A 09 6C 64 call prhlr...ld
003D60: 20 64 65 2C 31 30 30 30 3A 20 63 61 6C 6C 20 70 de,1000: call p
003D70: 72 68 6C 72 0D 0A 09 6C 64 20 64 65 2C 31 30 30 rhlr...ld de,100
003D80: 3A 20 63 61 6C 6C 20 70 72 68 6C 72 0D 0A 09 6C : call prhlr...l
003D90: 64 20 64 65 2C 31 30 3A 20 63 61 6C 6C 20 70 72 d de,10: call pr
003DA0: 68 6C 72 0D 0A 09 6C 64 20 63 2C 31 3A 20 6C 64 hlr...ld c,1: ld
003DB0: 20 64 65 2C 31 0D 0A 2E 70 72 68 6C 72 09 78 6F de,1...prhlr.xo
003DC0: 72 20 61 0D 0A 2E 70 72 68 6C 6C 70 09 73 63 66 r a...prhllp.scf
003DD0: 3A 20 63 63 66 3A 20 73 62 63 20 68 6C 2C 64 65 : ccf: sbc hl,de
003DE0: 3A 20 6A 72 20 63 2C 70 72 68 6C 6F 0D 0A 09 69 : jr c,prhlo...i
003DF0: 6E 63 20 61 3A 20 6A 72 20 70 72 68 6C 6C 70 0D nc a: jr prhllp.
003E00: 0A 2E 70 72 68 6C 6F 09 61 64 64 20 68 6C 2C 64 ..prhlo.add hl,d
003E10: 65 3A 20 6F 72 20 61 3A 20 6A 72 20 6E 7A 2C 70 e: or a: jr nz,p
003E20: 72 68 6C 79 3A 20 63 70 20 63 3A 20 72 65 74 20 rhly: cp c: ret
003E30: 7A 0D 0A 2E 70 72 68 6C 79 09 6C 64 20 63 2C 31 z...prhly.ld c,1
003E40: 3A 20 61 64 64 20 26 33 30 3A 20 63 61 6C 6C 20 : add &30: call
003E50: 26 42 42 35 41 3A 20 72 65 74 0D 0A 1A 61 6C 6C &BB5A: ret...all
003E60: 20 70 72 68 6C 72 0D 0A 20 20 20 20 20 20 20 20 prhlr..
003E70: 6C 64 20 64 65 2C 31 30 30 30 3A 20 63 61 6C 6C ld de,1000: call
003E80: 49 66 20 66 69 6C 65 6E 61 6D 65 20 6C 65 6E 67 If filename leng
003E90: 74 68 20 30 2C 20 72 65 74 75 72 6E 0D 0A 09 6C th 0, return...l
003EA0: 64 20 61 2C 31 3A 20 72 65 74 09 09 09 3B 52 65 d a,1: ret...;Re
003EB0: 74 75 72 6E 20 77 69 74 68 20 6F 6E 65 20 70 61 turn with one pa
003EC0: 72 61 6D 65 74 65 72 0D 0A 0D 0A 1A 78 2C 26 41 rameter.....x,&A
003ED0: 46 30 30 0D 0A 20 20 20 20 20 20 20 20 6C 64 20 F00.. ld
003EE0: 28 69 78 2B 30 29 2C 26 30 32 3A 20 6C 64 20 28 (ix+0),&02: ld (
003EF0: 69 78 2B 31 29 2C 26 41 46 0D 0A 20 20 20 20 20 ix+1),&AF..
003F00: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 50 72 69 ...;*** SUBR.Pri
003F10: 6E 74 20 41 20 61 73 20 33 2D 64 69 67 69 74 20 nt A as 3-digit
003F20: 64 65 63 69 6D 61 6C 0D 0A 0D 0A 2E 70 72 5F 61 decimal.....pr_a
003F30: 09 6C 64 20 64 2C 31 30 30 3A 20 63 61 6C 6C 20 .ld d,100: call
003F40: 70 73 5F 63 68 72 0D 0A 09 6C 64 20 64 2C 31 30 ps_chr...ld d,10
003F50: 3A 20 63 61 6C 6C 20 70 73 5F 63 68 72 0D 0A 09 : call ps_chr...
003F60: 6C 64 20 64 2C 31 0D 0A 0D 0A 2E 70 73 5F 63 68 ld d,1.....ps_ch
003F70: 72 09 6C 64 20 63 2C 30 0D 0A 2E 70 73 5F 6C 6F r.ld c,0...ps_lo
003F80: 70 09 73 75 62 20 64 3A 20 6A 72 20 63 2C 70 73 p.sub d: jr c,ps
003F90: 5F 66 69 6E 0D 0A 09 69 6E 63 20 63 3A 20 6A 72 _fin...inc c: jr
003FA0: 20 70 73 5F 6C 6F 70 0D 0A 0D 0A 2E 70 73 5F 66 ps_lop.....ps_f
003FB0: 69 6E 09 61 64 64 20 64 0D 0A 09 70 75 73 68 20 in.add d...push
003FC0: 61 66 0D 0A 09 20 6C 64 20 61 2C 63 3A 20 61 64 af... ld a,c: ad
003FD0: 64 20 34 38 3A 20 63 61 6C 6C 20 26 42 42 35 41 d 48: call &BB5A
003FE0: 0D 0A 09 70 6F 70 20 61 66 3A 20 72 65 74 0D 0A ...pop af: ret..
003FF0: 1A 2C 30 0D 0A 2E 70 73 5F 6C 6F 70 09 73 75 62 .,0...ps_lop.sub
004000: 64 20 61 2C 33 3A 20 6A 72 20 61 73 65 74 0D 0A d a,3: jr aset..
004010: 0D 0A 2E 6E 6F 74 31 36 09 63 70 20 31 3A 20 20 ...not16.cp 1:
004020: 20 6A 72 20 7A 2C 61 73 65 74 0D 0A 09 6C 64 20 jr z,aset...ld
004030: 61 2C 32 0D 0A 0D 0A 2E 61 73 65 74 09 6F 72 20 a,2.....aset.or
004040: 64 3A 20 72 72 63 61 3A 20 72 72 63 61 0D 0A 09 d: rrca: rrca...
004050: 6C 64 20 64 2C 61 3A 20 64 6A 6E 7A 20 6C 6F 6F ld d,a: djnz loo
004060: 70 0D 0A 09 72 65 74 0D 0A 1A 20 63 2C 28 68 6C p...ret... c,(hl
004070: 29 0D 0A 20 20 20 20 20 20 20 20 63 61 6C 6C 20 ).. call
004080: 49 66 20 66 69 6C 65 6E 61 6D 65 20 6C 65 6E 67 If filename leng
004090: 74 68 20 30 2C 20 72 65 74 75 72 6E 0D 0A 09 6C th 0, return...l
0040A0: 64 20 61 2C 31 3A 20 72 65 74 09 09 09 3B 52 65 d a,1: ret...;Re
0040B0: 74 75 72 6E 20 77 69 74 68 20 6F 6E 65 20 70 61 turn with one pa
0040C0: 72 61 6D 65 74 65 72 0D 0A 0D 0A 1A 78 2C 26 41 rameter.....x,&A
0040D0: 46 30 30 0D 0A 20 20 20 20 20 20 20 20 6C 64 20 F00.. ld
0040E0: 28 69 78 2B 30 29 2C 26 30 32 3A 20 6C 64 20 28 (ix+0),&02: ld (
0040F0: 69 78 2B 31 29 2C 26 41 46 0D 0A 20 20 20 20 20 ix+1),&AF..
004100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0041A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0041B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0041C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0041D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0041E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0041F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004200: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004210: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004220: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004230: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004240: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004250: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004260: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004270: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004280: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004290: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0042A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0042B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0042C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0042D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0042E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0042F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004300: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004310: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004320: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004330: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004340: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004350: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004360: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004370: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004380: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004390: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0043A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0043B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0043C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0043D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0043E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0043F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004400: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004410: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004420: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004430: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004440: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004450: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004460: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004470: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004480: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004490: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0044A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0044B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0044C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0044D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0044E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0044F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004500: 0A 20 20 20 20 20 20 20 20 3B 2A 2A 2A 20 32 2D . ;*** 2-
004510: 62 79 74 65 20 68 65 78 20 70 72 69 6E 74 20 5B byte hex print [
004520: 48 4C 5D 0D 0A 0D 0A 2E 74 62 74 68 65 78 20 6C HL].....tbthex l
004530: 64 20 61 2C 68 3A 20 63 61 6C 6C 20 68 65 78 70 d a,h: call hexp
004540: 72 74 0D 0A 20 20 20 20 20 20 20 20 6C 64 20 61 rt.. ld a
004550: 2C 6C 3A 20 63 61 6C 6C 20 68 65 78 70 72 74 0D ,l: call hexprt.
004560: 0A 20 20 20 20 20 20 20 20 72 65 74 0D 0A 0D 0A . ret....
004570: 20 20 20 20 20 20 20 20 3B 2A 2A 2A 20 31 2D 62 ;*** 1-b
004580: 79 74 65 20 68 65 78 20 70 72 69 6E 74 20 5B 41 yte hex print [A
004590: 5D 0D 0A 0D 0A 2E 68 65 78 70 72 74 20 6C 64 20 ].....hexprt ld
0045A0: 62 2C 32 0D 0A 20 20 20 20 20 20 20 20 6C 64 20 b,2.. ld
0045B0: 63 2C 61 0D 0A 20 20 20 20 20 20 20 20 72 72 61 c,a.. rra
0045C0: 3A 20 72 72 61 0D 0A 20 20 20 20 20 20 20 20 72 : rra.. r
0045D0: 72 61 3A 20 72 72 61 0D 0A 0D 0A 2E 68 65 78 6D ra: rra.....hexm
0045E0: 73 6B 20 61 6E 64 20 26 46 0D 0A 20 20 20 20 20 sk and &F..
0045F0: 20 20 20 63 70 20 31 30 3A 20 6A 72 20 6E 63 2C cp 10: jr nc,
004600: 68 65 78 67 72 74 0D 0A 20 20 20 20 20 20 20 20 hexgrt..
004610: 61 64 64 20 61 2C 34 38 3A 20 63 61 6C 6C 20 26 add a,48: call &
004620: 42 42 35 41 20 20 20 20 20 20 20 20 20 20 20 20 BB5A
004630: 3B 30 2D 39 0D 0A 20 20 20 20 20 20 20 20 6A 72 ;0-9.. jr
004640: 20 68 65 78 62 79 65 0D 0A 0D 0A 2E 68 65 78 67 hexbye.....hexg
004650: 72 74 20 61 64 64 20 61 2C 35 35 3A 20 63 61 6C rt add a,55: cal
004660: 6C 20 26 42 42 35 41 20 20 20 20 20 20 20 20 20 l &BB5A
004670: 20 20 20 3B 41 2D 46 0D 0A 0D 0A 2E 68 65 78 62 ;A-F.....hexb
004680: 79 65 20 6C 64 20 61 2C 63 0D 0A 20 20 20 20 20 ye ld a,c..
004690: 20 20 20 64 6A 6E 7A 20 68 65 78 6D 73 6B 0D 0A djnz hexmsk..
0046A0: 20 20 20 20 20 20 20 20 72 65 74 0D 0A 0D 1A 68 ret....h
0046B0: 20 30 2C 20 72 65 74 75 72 6E 0D 0A 20 20 20 20 0, return..
0046C0: 20 20 20 20 6C 64 20 61 2C 31 3A 20 72 65 74 20 ld a,1: ret
0046D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0046E0: 20 20 20 20 3B 72 65 74 75 72 6E 2C 20 6F 6E 65 ;return, one
0046F0: 20 70 61 72 61 6D 65 74 65 72 0D 0A 0D 1A 64 62 parameter....db
004700: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 50 72 69 ...;*** SUBR.Pri
004710: 6E 74 20 41 20 61 73 20 73 70 61 63 65 64 20 33 nt A as spaced 3
004720: 2D 64 69 67 69 74 20 64 65 63 69 6D 61 6C 0D 0A -digit decimal..
004730: 0D 0A 2E 70 72 5F 61 09 6C 64 20 62 2C 30 0D 0A ...pr_a.ld b,0..
004740: 09 6C 64 20 64 2C 31 30 30 3A 20 63 61 6C 6C 20 .ld d,100: call
004750: 70 73 5F 63 68 72 0D 0A 09 6C 64 20 64 2C 31 30 ps_chr...ld d,10
004760: 3A 20 63 61 6C 6C 20 70 73 5F 63 68 72 0D 0A 09 : call ps_chr...
004770: 6C 64 20 62 2C 31 3A 20 6C 64 20 64 2C 31 0D 0A ld b,1: ld d,1..
004780: 0D 0A 2E 70 73 5F 63 68 72 09 6C 64 20 63 2C 30 ...ps_chr.ld c,0
004790: 0D 0A 2E 70 73 5F 6C 6F 70 09 73 75 62 20 64 3A ...ps_lop.sub d:
0047A0: 20 6A 72 20 63 2C 70 73 5F 66 69 6E 0D 0A 09 69 jr c,ps_fin...i
0047B0: 6E 63 20 63 3A 20 6A 72 20 70 73 5F 6C 6F 70 0D nc c: jr ps_lop.
0047C0: 0A 0D 0A 2E 70 73 5F 66 69 6E 09 61 64 64 20 61 ....ps_fin.add a
0047D0: 2C 64 0D 0A 09 70 75 73 68 20 61 66 3A 20 6C 64 ,d...push af: ld
0047E0: 20 61 2C 63 3A 20 6F 72 20 61 3A 20 6A 72 20 6E a,c: or a: jr n
0047F0: 7A 2C 70 73 5F 6E 73 70 0D 0A 09 20 62 69 74 20 z,ps_nsp... bit
004800: 30 2C 62 3A 20 6A 72 20 7A 2C 70 73 5F 73 70 63 0,b: jr z,ps_spc
004810: 0D 0A 2E 70 73 5F 6E 73 70 09 20 61 64 64 20 34 ...ps_nsp. add 4
004820: 38 3A 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A 09 8: call &BB5A...
004830: 20 6C 64 20 62 2C 31 0D 0A 09 70 6F 70 20 61 66 ld b,1...pop af
004840: 3A 20 72 65 74 0D 0A 2E 70 73 5F 73 70 63 09 20 : ret...ps_spc.
004850: 6C 64 20 61 2C 33 32 3A 20 63 61 6C 6C 20 26 42 ld a,32: call &B
004860: 42 35 41 0D 0A 09 70 6F 70 20 61 66 3A 20 72 65 B5A...pop af: re
004870: 74 0D 0A 1A 64 20 64 2C 31 0D 0A 0D 0A 2E 70 73 t...d d,1.....ps
004880: 49 66 20 66 69 6C 65 6E 61 6D 65 20 6C 65 6E 67 If filename leng
004890: 74 68 20 30 2C 20 72 65 74 75 72 6E 0D 0A 09 6C th 0, return...l
0048A0: 64 20 61 2C 31 3A 20 72 65 74 09 09 09 3B 52 65 d a,1: ret...;Re
0048B0: 74 75 72 6E 20 77 69 74 68 20 6F 6E 65 20 70 61 turn with one pa
0048C0: 72 61 6D 65 74 65 72 0D 0A 0D 0A 1A 78 2C 26 41 rameter.....x,&A
0048D0: 46 30 30 0D 0A 20 20 20 20 20 20 20 20 6C 64 20 F00.. ld
0048E0: 28 69 78 2B 30 29 2C 26 30 32 3A 20 6C 64 20 28 (ix+0),&02: ld (
0048F0: 69 78 2B 31 29 2C 26 41 46 0D 0A 20 20 20 20 20 ix+1),&AF..
004900: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004910: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004920: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004930: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004940: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004950: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004960: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004970: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004980: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004990: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0049A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0049B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0049C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0049D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0049E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0049F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004A00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004A10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004A20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004A30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004A40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004A50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004A60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004A70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004A80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004A90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004AA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004AB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004AC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004AD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004AE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004AF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004B00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004B10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004B20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004B30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004B40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004B50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004B60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004B70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004B80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004B90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004BA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004BB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004BC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004BD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004BE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004BF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004C00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004C10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004C20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004C30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004C40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004C50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004C60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004C70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004C80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004C90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004CA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004CB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004CC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004CD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004CE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004CF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
004D00: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
004D10: 04 00 01 00 02 09 4E E5 04 00 C4 02 00 00 00 02 ......N.........
004D20: 04 00 C9 02 00 00 00 02 04 00 C5 02 00 00 00 02 ................
004D30: 04 00 C1 02 00 00 00 02 04 00 C6 02 00 00 00 02 ................
004D40: 04 00 C2 02 00 00 00 02 04 00 C7 02 00 00 00 02 ................
004D50: 04 00 C3 02 00 00 00 02 04 00 C8 02 00 00 00 02 ................
004D60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
004D70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
004D80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
004D90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
004DA0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
004DB0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
004DC0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
004DD0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
004DE0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
004DF0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
004E00: 63 3A 20 65 78 20 64 65 2C 68 6C 0D 0A 0D 0A 09 c: ex de,hl.....
004E10: 64 65 63 20 61 0D 0A 09 6A 70 20 6E 7A 2C 6C 6E dec a...jp nz,ln
004E20: 6C 6F 6F 70 0D 0A 0D 0A 09 6C 64 20 62 63 2C 35 loop.....ld bc,5
004E30: 31 32 3A 20 61 64 64 20 68 6C 2C 62 63 3A 20 65 12: add hl,bc: e
004E40: 78 20 64 65 2C 68 6C 0D 0A 09 6C 64 20 62 63 2C x de,hl...ld bc,
004E50: 31 32 38 3A 20 61 64 64 20 68 6C 2C 62 63 3A 20 128: add hl,bc:
004E60: 65 78 20 64 65 2C 68 6C 0D 0A 0D 0A 09 6C 64 20 ex de,hl.....ld
004E70: 61 2C 64 3A 20 6F 72 20 65 3A 20 6A 70 20 6E 7A a,d: or e: jp nz
004E80: 2C 6F 6C 6C 6F 6F 70 0D 0A 09 72 65 74 0D 0A 1A ,olloop...ret...
004E90: 72 74 20 53 70 65 63 74 72 75 6D 2D 73 69 7A 65 rt Spectrum-size
004EA0: 64 20 73 63 72 65 65 6E 20 66 72 6F 6D 20 26 34 d screen from &4
004EB0: 30 30 30 20 74 6F 20 26 43 30 30 30 20 28 4D 4F 000 to &C000 (MO
004EC0: 44 45 20 31 29 0D 0A 0D 0A 20 20 20 20 20 20 20 DE 1)....
004ED0: 20 6F 72 67 20 26 38 30 30 30 0D 0A 20 20 20 20 org &8000..
004EE0: 20 20 20 20 6E 6F 6C 69 73 74 0D 0A 0D 0A 20 20 nolist....
004EF0: 20 20 20 20 20 20 6C 64 20 68 6C 2C 26 43 30 30 ld hl,&C00
004F00: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 :ldi:ldi:ldi:ldi
004F10: 3A 6C 64 69 3A 6C 64 69 0D 0A 09 6C 64 69 3A 6C :ldi:ldi...ldi:l
004F20: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
004F30: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
004F40: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
004F50: 64 69 3A 6C 64 69 3A 6C 64 69 0D 0A 09 6C 64 69 di:ldi:ldi...ldi
004F60: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 :ldi:ldi:ldi:ldi
004F70: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 :ldi:ldi:ldi:ldi
004F80: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 :ldi:ldi:ldi:ldi
004F90: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 0D 0A 09 6C :ldi:ldi:ldi...l
004FA0: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
004FB0: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
004FC0: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
004FD0: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 0D 0A di:ldi:ldi:ldi..
004FE0: 0D 0A 09 6C 64 20 62 63 2C 31 36 0D 0A 09 65 78 ...ld bc,16...ex
004FF0: 20 64 65 2C 68 6C 3A 20 61 64 64 20 68 6C 2C 62 de,hl: add hl,b
005000: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 43 52 54 ...;*** SUBR.CRT
005010: 43 20 72 65 67 69 73 74 65 72 20 73 65 74 0D 0A C register set..
005020: 0D 0A 2E 63 72 74 63 09 6C 64 20 61 2C 62 0D 0A ...crtc.ld a,b..
005030: 09 6C 64 20 62 2C 26 42 43 3A 20 6F 75 74 20 28 .ld b,&BC: out (
005040: 63 29 2C 61 0D 0A 09 6C 64 20 62 2C 26 42 44 3A c),a...ld b,&BD:
005050: 20 6F 75 74 20 28 63 29 2C 63 0D 0A 09 72 65 74 out (c),c...ret
005060: 0D 0A 1A 20 20 6C 64 20 62 2C 26 42 44 3A 20 6F ... ld b,&BD: o
005070: 75 74 20 28 63 29 2C 63 0D 0A 20 20 20 20 20 20 ut (c),c..
005080: 6C 64 20 61 2C 32 3A 20 63 61 6C 6C 20 26 42 43 ld a,2: call &BC
005090: 30 45 0D 0A 09 6C 64 20 68 6C 2C 26 34 30 30 30 0E...ld hl,&4000
0050A0: 3A 20 63 61 6C 6C 20 26 42 43 38 33 3A 20 63 61 : call &BC83: ca
0050B0: 6C 6C 20 26 42 43 37 41 0D 0A 09 6C 64 20 68 6C ll &BC7A...ld hl
0050C0: 2C 26 33 46 46 42 2B 33 3A 20 6C 64 20 64 65 2C ,&3FFB+3: ld de,
0050D0: 28 68 65 69 67 68 74 29 0D 0A 09 61 64 64 20 68 (height)...add h
0050E0: 6C 2C 64 65 0D 0A 09 6C 64 20 65 2C 28 68 6C 29 l,de...ld e,(hl)
0050F0: 3A 20 6C 64 20 64 2C 30 3A 20 6C 64 20 62 63 2C : ld d,0: ld bc,
005100: 30 0D 0A 09 64 65 63 20 68 6C 3A 20 64 65 63 20 0...dec hl: dec
005110: 68 6C 3A 20 64 65 63 20 68 6C 3A 20 72 65 73 20 hl: dec hl: res
005120: 36 2C 68 0D 0A 2E 64 69 76 5F 6C 70 09 6F 72 20 6,h...div_lp.or
005130: 61 3A 20 73 62 63 20 68 6C 2C 64 65 3A 20 69 6E a: sbc hl,de: in
005140: 63 20 62 63 0D 0A 09 6A 72 20 6E 7A 2C 64 69 76 c bc...jr nz,div
005150: 5F 6C 70 0D 0A 09 6C 64 20 61 2C 65 0D 0A 0D 0A _lp...ld a,e....
005160: 09 6C 64 20 64 65 2C 26 43 30 30 30 3A 20 6C 64 .ld de,&C000: ld
005170: 20 68 6C 2C 26 34 30 30 30 0D 0A 2E 6D 77 6C 6F hl,&4000...mwlo
005180: 6F 70 09 70 75 73 68 20 61 66 0D 0A 09 20 70 75 op.push af... pu
005190: 73 68 20 20 62 63 3A 20 70 75 73 68 20 64 65 3A sh bc: push de:
0051A0: 20 6C 64 69 72 0D 0A 09 20 70 6F 70 20 20 20 64 ldir... pop d
0051B0: 65 3A 20 70 6F 70 20 20 62 63 0D 0A 09 20 65 78 e: pop bc... ex
0051C0: 20 64 65 2C 68 6C 3A 20 63 61 6C 6C 20 6E 6C 69 de,hl: call nli
0051D0: 6E 65 3A 20 65 78 20 64 65 2C 68 6C 0D 0A 09 70 ne: ex de,hl...p
0051E0: 6F 70 20 61 66 0D 0A 09 64 65 63 20 61 3A 20 6A op af...dec a: j
0051F0: 72 20 6E 7A 2C 6D 77 6C 6F 6F 70 3A 20 72 65 74 r nz,mwloop: ret
005200: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 43 6F 6E ...;*** SUBR.Con
005210: 76 65 72 74 20 41 20 74 6F 20 75 70 70 65 72 20 vert A to upper
005220: 63 61 73 65 0D 0A 0D 0A 2E 75 63 61 73 65 09 63 case.....ucase.c
005230: 70 20 22 61 22 3A 20 72 65 74 20 63 0D 0A 09 63 p "a": ret c...c
005240: 70 20 22 7B 22 3A 20 72 65 74 20 6E 63 0D 0A 09 p "{": ret nc...
005250: 73 75 62 20 33 32 3A 20 72 65 74 0D 0A 1A 20 20 sub 32: ret...
005260: 20 20 20 20 61 64 64 20 26 45 30 3A 20 72 65 74 add &E0: ret
005270: 0D 0A 0D 1A 74 61 69 6C 73 0D 0A 0D 0A 09 64 62 ....tails.....db
005280: 2C 6F 6C 6C 6F 6F 70 0D 0A 09 72 65 74 0D 0A 1A ,olloop...ret...
005290: 72 74 20 53 70 65 63 74 72 75 6D 2D 73 69 7A 65 rt Spectrum-size
0052A0: 64 20 73 63 72 65 65 6E 20 66 72 6F 6D 20 26 34 d screen from &4
0052B0: 30 30 30 20 74 6F 20 26 43 30 30 30 20 28 4D 4F 000 to &C000 (MO
0052C0: 44 45 20 31 29 0D 0A 0D 0A 20 20 20 20 20 20 20 DE 1)....
0052D0: 20 6F 72 67 20 26 38 30 30 30 0D 0A 20 20 20 20 org &8000..
0052E0: 20 20 20 20 6E 6F 6C 69 73 74 0D 0A 0D 0A 20 20 nolist....
0052F0: 20 20 20 20 20 20 6C 64 20 68 6C 2C 26 43 30 30 ld hl,&C00
005300: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 :ldi:ldi:ldi:ldi
005310: 3A 6C 64 69 3A 6C 64 69 0D 0A 09 6C 64 69 3A 6C :ldi:ldi...ldi:l
005320: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
005330: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
005340: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
005350: 64 69 3A 6C 64 69 3A 6C 64 69 0D 0A 09 6C 64 69 di:ldi:ldi...ldi
005360: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 :ldi:ldi:ldi:ldi
005370: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 :ldi:ldi:ldi:ldi
005380: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 :ldi:ldi:ldi:ldi
005390: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 0D 0A 09 6C :ldi:ldi:ldi...l
0053A0: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
0053B0: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
0053C0: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
0053D0: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 0D 0A di:ldi:ldi:ldi..
0053E0: 0D 0A 09 6C 64 20 62 63 2C 31 36 0D 0A 09 65 78 ...ld bc,16...ex
0053F0: 20 64 65 2C 68 6C 3A 20 61 64 64 20 68 6C 2C 62 de,hl: add hl,b
005400: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 50 72 69 ...;*** SUBR.Pri
005410: 6E 74 20 6E 75 6C 6C 2D 74 65 72 6D 69 6E 61 74 nt null-terminat
005420: 65 64 20 73 74 72 69 6E 67 20 66 72 6F 6D 20 48 ed string from H
005430: 4C 0D 0A 0D 0A 2E 73 74 72 69 6E 67 09 6C 64 20 L.....string.ld
005440: 61 2C 28 68 6C 29 20 3A 20 6F 72 20 61 3A 20 72 a,(hl) : or a: r
005450: 65 74 20 7A 0D 0A 09 63 61 6C 6C 20 26 42 42 35 et z...call &BB5
005460: 41 3A 20 69 6E 63 20 68 6C 3A 20 6A 72 20 73 74 A: inc hl: jr st
005470: 72 69 6E 67 0D 0A 0D 0A 1A 20 20 20 20 20 20 20 ring.....
005480: 79 74 65 20 68 65 78 20 70 72 69 6E 74 20 5B 41 yte hex print [A
005490: 5D 0D 0A 0D 0A 2E 68 65 78 70 72 74 20 6C 64 20 ].....hexprt ld
0054A0: 62 2C 32 0D 0A 20 20 20 20 20 20 20 20 6C 64 20 b,2.. ld
0054B0: 63 2C 61 0D 0A 20 20 20 20 20 20 20 20 72 72 61 c,a.. rra
0054C0: 3A 20 72 72 61 0D 0A 20 20 20 20 20 20 20 20 72 : rra.. r
0054D0: 72 61 3A 20 72 72 61 0D 0A 0D 0A 2E 68 65 78 6D ra: rra.....hexm
0054E0: 73 6B 20 61 6E 64 20 26 46 0D 0A 20 20 20 20 20 sk and &F..
0054F0: 20 20 20 63 70 20 31 30 3A 20 6A 72 20 6E 63 2C cp 10: jr nc,
005500: 68 65 78 67 72 74 0D 0A 20 20 20 20 20 20 20 20 hexgrt..
005510: 61 64 64 20 61 2C 34 38 3A 20 63 61 6C 6C 20 26 add a,48: call &
005520: 42 42 35 41 20 20 20 20 20 20 20 20 20 20 20 20 BB5A
005530: 3B 30 2D 39 0D 0A 20 20 20 20 20 20 20 20 6A 72 ;0-9.. jr
005540: 20 68 65 78 62 79 65 0D 0A 0D 0A 2E 68 65 78 67 hexbye.....hexg
005550: 72 74 20 61 64 64 20 61 2C 35 35 3A 20 63 61 6C rt add a,55: cal
005560: 6C 20 26 42 42 35 41 20 20 20 20 20 20 20 20 20 l &BB5A
005570: 20 20 20 3B 41 2D 46 0D 0A 0D 0A 2E 68 65 78 62 ;A-F.....hexb
005580: 79 65 20 6C 64 20 61 2C 63 0D 0A 20 20 20 20 20 ye ld a,c..
005590: 20 20 20 64 6A 6E 7A 20 68 65 78 6D 73 6B 0D 0A djnz hexmsk..
0055A0: 20 20 20 20 20 20 20 20 72 65 74 0D 0A 0D 1A 68 ret....h
0055B0: 20 30 2C 20 72 65 74 75 72 6E 0D 0A 20 20 20 20 0, return..
0055C0: 20 20 20 20 6C 64 20 61 2C 31 3A 20 72 65 74 20 ld a,1: ret
0055D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0055E0: 20 20 20 20 3B 72 65 74 75 72 6E 2C 20 6F 6E 65 ;return, one
0055F0: 20 70 61 72 61 6D 65 74 65 72 0D 0A 0D 1A 64 62 parameter....db
005600: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005610: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005620: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005630: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005640: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005650: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005660: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005670: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005680: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005690: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0056A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0056B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0056C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0056D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0056E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0056F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005700: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005710: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005720: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005730: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005740: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005750: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005760: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005770: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005780: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005790: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0057A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0057B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0057C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0057D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0057E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0057F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005800: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005810: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005820: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005830: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005840: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005850: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005860: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005870: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005880: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005890: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0058A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0058B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0058C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0058D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0058E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0058F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005900: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005910: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005920: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005930: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005940: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005950: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005960: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005970: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005980: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005990: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0059A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0059B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0059C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0059D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0059E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0059F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
005A00: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 4C 6F 61 ...;*** SUBR.Loa
005A10: 64 20 41 64 76 61 6E 63 65 64 20 41 72 74 20 53 d Advanced Art S
005A20: 74 75 64 69 6F 20 28 75 6E 63 6F 6D 70 72 65 73 tudio (uncompres
005A30: 73 65 64 29 20 77 69 6E 64 6F 77 0D 0A 09 3B 09 sed) window...;.
005A40: 09 66 69 6C 65 20 6D 75 73 74 20 61 6C 72 65 61 .file must alrea
005A50: 64 79 20 62 65 20 6F 70 65 6E 0D 0A 09 3B 09 09 dy be open...;..
005A60: 75 73 65 73 20 26 34 30 30 30 20 61 73 20 62 75 uses &4000 as bu
005A70: 66 66 65 72 0D 0A 0D 0A 2E 77 69 6E 6C 6F 64 09 ffer.....winlod.
005A80: 6C 64 20 61 2C 32 3A 20 63 61 6C 6C 20 26 42 43 ld a,2: call &BC
005A90: 30 45 0D 0A 09 6C 64 20 68 6C 2C 26 34 30 30 30 0E...ld hl,&4000
005AA0: 3A 20 63 61 6C 6C 20 26 42 43 38 33 3A 20 63 61 : call &BC83: ca
005AB0: 6C 6C 20 26 42 43 37 41 0D 0A 09 6C 64 20 68 6C ll &BC7A...ld hl
005AC0: 2C 26 33 46 46 42 2B 33 3A 20 6C 64 20 64 65 2C ,&3FFB+3: ld de,
005AD0: 28 68 65 69 67 68 74 29 0D 0A 09 61 64 64 20 68 (height)...add h
005AE0: 6C 2C 64 65 0D 0A 09 6C 64 20 65 2C 28 68 6C 29 l,de...ld e,(hl)
005AF0: 3A 20 6C 64 20 64 2C 30 3A 20 6C 64 20 62 63 2C : ld d,0: ld bc,
005B00: 30 0D 0A 09 64 65 63 20 68 6C 3A 20 64 65 63 20 0...dec hl: dec
005B10: 68 6C 3A 20 64 65 63 20 68 6C 3A 20 72 65 73 20 hl: dec hl: res
005B20: 36 2C 68 0D 0A 2E 64 69 76 5F 6C 70 09 6F 72 20 6,h...div_lp.or
005B30: 61 3A 20 73 62 63 20 68 6C 2C 64 65 3A 20 69 6E a: sbc hl,de: in
005B40: 63 20 62 63 0D 0A 09 6A 72 20 6E 7A 2C 64 69 76 c bc...jr nz,div
005B50: 5F 6C 70 0D 0A 09 6C 64 20 61 2C 65 0D 0A 0D 0A _lp...ld a,e....
005B60: 09 6C 64 20 64 65 2C 26 43 30 30 30 3A 20 6C 64 .ld de,&C000: ld
005B70: 20 68 6C 2C 26 34 30 30 30 0D 0A 2E 6D 77 6C 6F hl,&4000...mwlo
005B80: 6F 70 09 70 75 73 68 20 61 66 0D 0A 09 20 70 75 op.push af... pu
005B90: 73 68 20 20 62 63 3A 20 70 75 73 68 20 64 65 3A sh bc: push de:
005BA0: 20 6C 64 69 72 0D 0A 09 20 70 6F 70 20 20 20 64 ldir... pop d
005BB0: 65 3A 20 70 6F 70 20 20 62 63 0D 0A 09 20 65 78 e: pop bc... ex
005BC0: 20 64 65 2C 68 6C 3A 20 63 61 6C 6C 20 6E 6C 69 de,hl: call nli
005BD0: 6E 65 3A 20 65 78 20 64 65 2C 68 6C 0D 0A 09 70 ne: ex de,hl...p
005BE0: 6F 70 20 61 66 0D 0A 09 64 65 63 20 61 3A 20 6A op af...dec a: j
005BF0: 72 20 6E 7A 2C 6D 77 6C 6F 6F 70 3A 20 72 65 74 r nz,mwloop: ret
005C00: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 43 6F 6E ...;*** SUBR.Con
005C10: 76 65 72 74 20 53 70 65 63 74 72 75 6D 2D 73 69 vert Spectrum-si
005C20: 7A 65 64 20 73 63 72 65 65 6E 0D 0A 09 3B 09 09 zed screen...;..
005C30: 66 72 6F 6D 20 26 34 30 30 30 20 74 6F 20 26 43 from &4000 to &C
005C40: 30 30 30 20 28 4D 4F 44 45 20 31 29 0D 0A 0D 0A 000 (MODE 1)....
005C50: 09 6C 64 20 68 6C 2C 26 43 30 30 30 0D 0A 09 6C .ld hl,&C000...l
005C60: 64 20 64 65 2C 26 34 30 30 30 0D 0A 09 6C 64 20 d de,&4000...ld
005C70: 62 63 2C 26 34 30 30 30 0D 0A 09 70 75 73 68 20 bc,&4000...push
005C80: 64 65 3A 20 70 75 73 68 20 68 6C 0D 0A 09 20 6C de: push hl... l
005C90: 64 69 72 0D 0A 09 20 6C 64 20 61 2C 31 3A 20 63 dir... ld a,1: c
005CA0: 61 6C 6C 20 26 42 43 30 45 0D 0A 09 70 6F 70 20 all &BC0E...pop
005CB0: 64 65 3A 20 70 6F 70 20 68 6C 0D 0A 0D 0A 2E 6F de: pop hl.....o
005CC0: 6C 6C 6F 6F 70 09 6C 64 20 61 2C 32 34 0D 0A 0D lloop.ld a,24...
005CD0: 0A 2E 6C 6E 6C 6F 6F 70 09 6C 64 69 3A 6C 64 69 ..lnloop.ldi:ldi
005CE0: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 :ldi:ldi:ldi:ldi
005CF0: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 :ldi:ldi:ldi:ldi
005D00: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 :ldi:ldi:ldi:ldi
005D10: 3A 6C 64 69 3A 6C 64 69 0D 0A 09 6C 64 69 3A 6C :ldi:ldi...ldi:l
005D20: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
005D30: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
005D40: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
005D50: 64 69 3A 6C 64 69 3A 6C 64 69 0D 0A 09 6C 64 69 di:ldi:ldi...ldi
005D60: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 :ldi:ldi:ldi:ldi
005D70: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 :ldi:ldi:ldi:ldi
005D80: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 :ldi:ldi:ldi:ldi
005D90: 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 0D 0A 09 6C :ldi:ldi:ldi...l
005DA0: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
005DB0: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
005DC0: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C di:ldi:ldi:ldi:l
005DD0: 64 69 3A 6C 64 69 3A 6C 64 69 3A 6C 64 69 0D 0A di:ldi:ldi:ldi..
005DE0: 0D 0A 09 6C 64 20 62 63 2C 31 36 0D 0A 09 65 78 ...ld bc,16...ex
005DF0: 20 64 65 2C 68 6C 3A 20 61 64 64 20 68 6C 2C 62 de,hl: add hl,b
005E00: 0D 0A 1A 49 4E 4C 4F 41 44 20 24 24 24 FF 00 FF ...INLOAD $$$...
005E10: 20 41 64 76 61 6E 63 65 64 20 41 72 74 20 53 74 Advanced Art St
005E20: 75 64 69 6F 20 77 69 6E 64 6F 77 0D 0A 20 20 20 udio window..
005E30: 20 20 20 20 20 3B 66 69 6C 65 20 6D 75 73 74 20 ;file must
005E40: 61 6C 72 65 61 64 79 20 62 65 20 6F 70 65 6E 0D already be open.
005E50: 0A 20 20 20 20 20 20 20 20 3B 6C 6F 61 64 73 20 . ;loads
005E60: 66 69 6C 65 20 61 74 20 26 34 30 30 30 0D 0A 0D file at &4000...
005E70: 0A 2E 77 69 6E 6C 6F 64 20 6C 64 20 61 2C 32 3A ..winlod ld a,2:
005E80: 6C 64 20 61 2C 32 3A 20 63 61 6C 6C 20 26 42 43 ld a,2: call &BC
005E90: 30 45 0D 0A 09 6C 64 20 68 6C 2C 26 34 30 30 30 0E...ld hl,&4000
005EA0: 3A 20 63 61 6C 6C 20 26 42 43 38 33 3A 20 63 61 : call &BC83: ca
005EB0: 6C 6C 20 26 42 43 37 41 0D 0A 09 6C 64 20 68 6C ll &BC7A...ld hl
005EC0: 2C 26 33 46 46 42 2B 33 3A 20 6C 64 20 64 65 2C ,&3FFB+3: ld de,
005ED0: 28 68 65 69 67 68 74 29 0D 0A 09 61 64 64 20 68 (height)...add h
005EE0: 6C 2C 64 65 0D 0A 09 6C 64 20 65 2C 28 68 6C 29 l,de...ld e,(hl)
005EF0: 3A 20 6C 64 20 64 2C 30 3A 20 6C 64 20 62 63 2C : ld d,0: ld bc,
005F00: 30 0D 0A 09 64 65 63 20 68 6C 3A 20 64 65 63 20 0...dec hl: dec
005F10: 68 6C 3A 20 64 65 63 20 68 6C 3A 20 72 65 73 20 hl: dec hl: res
005F20: 36 2C 68 0D 0A 2E 64 69 76 5F 6C 70 09 6F 72 20 6,h...div_lp.or
005F30: 61 3A 20 73 62 63 20 68 6C 2C 64 65 3A 20 69 6E a: sbc hl,de: in
005F40: 63 20 62 63 0D 0A 09 6A 72 20 6E 7A 2C 64 69 76 c bc...jr nz,div
005F50: 5F 6C 70 0D 0A 09 6C 64 20 61 2C 65 0D 0A 0D 0A _lp...ld a,e....
005F60: 09 6C 64 20 64 65 2C 26 43 30 30 30 3A 20 6C 64 .ld de,&C000: ld
005F70: 20 68 6C 2C 26 34 30 30 30 0D 0A 2E 6D 77 6C 6F hl,&4000...mwlo
005F80: 6F 70 09 70 75 73 68 20 61 66 0D 0A 09 20 70 75 op.push af... pu
005F90: 73 68 20 20 62 63 3A 20 70 75 73 68 20 64 65 3A sh bc: push de:
005FA0: 20 6C 64 69 72 0D 0A 09 20 70 6F 70 20 20 20 64 ldir... pop d
005FB0: 65 3A 20 70 6F 70 20 20 62 63 0D 0A 09 20 65 78 e: pop bc... ex
005FC0: 20 64 65 2C 68 6C 3A 20 63 61 6C 6C 20 6E 6C 69 de,hl: call nli
005FD0: 6E 65 3A 20 65 78 20 64 65 2C 68 6C 0D 0A 09 70 ne: ex de,hl...p
005FE0: 6F 70 20 61 66 0D 0A 09 64 65 63 20 61 3A 20 6A op af...dec a: j
005FF0: 72 20 6E 7A 2C 6D 77 6C 6F 6F 70 3A 20 72 65 74 r nz,mwloop: ret
006000: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
006010: 05 00 01 00 02 09 4E E5 05 00 C7 02 00 00 00 02 ......N.........
006020: 05 00 C3 02 00 00 00 02 05 00 C8 02 00 00 00 02 ................
006030: 05 00 C4 02 00 00 00 02 05 00 C9 02 00 00 00 02 ................
006040: 05 00 C5 02 00 00 00 02 05 00 C1 02 00 00 00 02 ................
006050: 05 00 C6 02 00 00 00 02 05 00 C2 02 00 00 00 02 ................
006060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
006070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
006080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
006090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0060A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0060B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0060C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0060D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0060E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0060F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
006100: 65 74 20 36 2C 63 09 09 3B 42 43 31 20 73 65 74 et 6,c..;BC1 set
006110: 20 28 72 65 61 64 20 72 65 67 69 73 74 65 72 29 (read register)
006120: 0D 0A 0D 0A 2E 6B 6C 6F 6F 70 09 20 6C 64 20 62 .....kloop. ld b
006130: 2C 26 46 36 20 20 3A 20 6F 75 74 20 28 63 29 2C ,&F6 : out (c),
006140: 63 09 3B 53 65 6E 64 20 22 72 65 61 64 20 72 65 c.;Send "read re
006150: 67 69 73 74 65 72 20 63 6F 6E 74 65 6E 74 73 22 gister contents"
006160: 20 73 69 67 6E 61 6C 20 74 6F 20 70 6F 72 74 20 signal to port
006170: 43 0D 0A 09 20 6C 64 20 62 2C 26 46 34 20 20 3A C... ld b,&F4 :
006180: 20 69 6E 20 61 2C 28 63 29 09 3B 47 65 74 20 74 in a,(c).;Get t
006190: 68 65 20 63 6F 6E 74 65 6E 74 73 20 6F 66 66 20 he contents off
0061A0: 70 6F 72 74 20 41 0D 0A 09 20 6C 64 20 28 68 6C port A... ld (hl
0061B0: 29 2C 61 09 09 3B 50 75 74 20 69 6E 20 62 75 66 ),a..;Put in buf
0061C0: 66 65 72 0D 0A 09 20 69 6E 63 20 68 6C 20 20 20 fer... inc hl
0061D0: 20 3A 20 69 6E 63 20 63 09 3B 47 6F 20 74 6F 20 : inc c.;Go to
0061E0: 6E 65 78 74 20 6B 65 79 20 62 6C 6F 63 6B 0D 0A next key block..
0061F0: 09 20 6C 64 20 61 2C 63 20 20 20 20 3A 20 61 6E . ld a,c : an
006200: 64 20 31 35 0D 0A 09 20 63 70 20 31 30 20 20 20 d 15... cp 10
006210: 20 20 3A 20 6A 72 20 6E 7A 2C 6B 6C 6F 6F 70 3B : jr nz,kloop;
006220: 4C 61 73 74 20 6B 65 79 20 62 6C 6F 63 6B 20 62 Last key block b
006230: 65 65 6E 20 72 65 61 63 68 65 64 20 79 65 74 3F een reached yet?
006240: 0D 0A 09 70 6F 70 20 62 63 09 09 09 3B 47 65 74 ...pop bc...;Get
006250: 20 6F 6C 64 20 73 74 61 74 75 73 20 6F 66 20 70 old status of p
006260: 6F 72 74 20 43 0D 0A 09 6C 64 20 61 2C 26 38 32 ort C...ld a,&82
006270: 20 20 20 3A 20 6F 75 74 20 28 63 29 2C 61 09 3B : out (c),a.;
006280: 52 65 73 74 6F 72 65 20 63 6F 6E 74 72 6F 6C 20 Restore control
006290: 70 6F 72 74 0D 0A 09 64 65 63 20 62 20 20 20 20 port...dec b
0062A0: 20 20 3A 20 6F 75 74 20 28 63 29 2C 63 09 3B 52 : out (c),c.;R
0062B0: 65 73 74 6F 72 65 20 70 6F 72 74 20 43 0D 0A 0D estore port C...
0062C0: 0A 09 6C 64 20 61 2C 28 6B 65 79 62 75 66 2B 35 ..ld a,(keybuf+5
0062D0: 29 09 09 3B 47 65 74 20 6B 65 79 20 64 61 74 61 )..;Get key data
0062E0: 20 66 72 6F 6D 20 62 6C 6F 63 6B 20 35 20 6F 66 from block 5 of
0062F0: 20 6B 65 79 62 6F 61 72 64 20 62 75 66 66 65 72 keyboard buffer
006300: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006310: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006320: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006330: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006340: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006350: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006360: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006370: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006380: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006390: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0063A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0063B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0063C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0063D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0063E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0063F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006400: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006410: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006420: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006430: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006440: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006450: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006460: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006470: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006480: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006490: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0064A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0064B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0064C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0064D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0064E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0064F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006500: 0D 0A 09 63 70 20 26 37 46 09 09 09 3B 53 65 74 ...cp &7F...;Set
006510: 20 7A 65 72 6F 20 69 66 20 73 70 61 63 65 20 6B zero if space k
006520: 65 79 0D 0A 09 72 65 74 0D 0A 0D 0A 2E 6B 65 79 ey...ret.....key
006530: 62 75 66 09 64 73 20 31 30 0D 0A 1A 6B 65 79 73 buf.ds 10...keys
006540: 63 20 20 6C 64 20 68 6C 2C 6B 65 79 62 75 66 66 c ld hl,keybuff
006550: 20 20 20 20 20 20 20 20 20 20 20 3B 61 64 64 72 ;addr
006560: 65 73 73 20 6F 66 20 62 75 66 66 65 72 20 66 6F ess of buffer fo
006570: 72 20 6B 65 79 62 6F 61 72 64 20 62 6C 6F 63 6B r keyboard block
006580: 20 69 6E 20 61 2C 28 63 29 09 3B 47 65 74 20 74 in a,(c).;Get t
006590: 68 65 20 63 6F 6E 74 65 6E 74 73 20 6F 66 66 20 he contents off
0065A0: 70 6F 72 74 20 41 0D 0A 09 20 6C 64 20 28 68 6C port A... ld (hl
0065B0: 29 2C 61 09 09 3B 50 75 74 20 69 6E 20 62 75 66 ),a..;Put in buf
0065C0: 66 65 72 0D 0A 09 20 69 6E 63 20 68 6C 20 20 20 fer... inc hl
0065D0: 20 3A 20 69 6E 63 20 63 09 3B 47 6F 20 74 6F 20 : inc c.;Go to
0065E0: 6E 65 78 74 20 6B 65 79 20 62 6C 6F 63 6B 0D 0A next key block..
0065F0: 09 20 6C 64 20 61 2C 63 20 20 20 20 3A 20 61 6E . ld a,c : an
006600: 64 20 31 35 0D 0A 09 20 63 70 20 31 30 20 20 20 d 15... cp 10
006610: 20 20 3A 20 6A 72 20 6E 7A 2C 6B 6C 6F 6F 70 3B : jr nz,kloop;
006620: 4C 61 73 74 20 6B 65 79 20 62 6C 6F 63 6B 20 62 Last key block b
006630: 65 65 6E 20 72 65 61 63 68 65 64 20 79 65 74 3F een reached yet?
006640: 0D 0A 09 70 6F 70 20 62 63 09 09 09 3B 47 65 74 ...pop bc...;Get
006650: 20 6F 6C 64 20 73 74 61 74 75 73 20 6F 66 20 70 old status of p
006660: 6F 72 74 20 43 0D 0A 09 6C 64 20 61 2C 26 38 32 ort C...ld a,&82
006670: 20 20 20 3A 20 6F 75 74 20 28 63 29 2C 61 09 3B : out (c),a.;
006680: 52 65 73 74 6F 72 65 20 63 6F 6E 74 72 6F 6C 20 Restore control
006690: 70 6F 72 74 0D 0A 09 64 65 63 20 62 20 20 20 20 port...dec b
0066A0: 20 20 3A 20 6F 75 74 20 28 63 29 2C 63 09 3B 52 : out (c),c.;R
0066B0: 65 73 74 6F 72 65 20 70 6F 72 74 20 43 0D 0A 0D estore port C...
0066C0: 0A 09 6C 64 20 61 2C 28 6B 65 79 62 75 66 2B 35 ..ld a,(keybuf+5
0066D0: 29 09 09 3B 47 65 74 20 6B 65 79 20 64 61 74 61 )..;Get key data
0066E0: 20 66 72 6F 6D 20 62 6C 6F 63 6B 20 35 20 6F 66 from block 5 of
0066F0: 20 6B 65 79 62 6F 61 72 64 20 62 75 66 66 65 72 keyboard buffer
006700: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 46 61 64 ...;*** SUBR.Fad
006710: 65 20 73 63 72 65 65 6E 0D 0A 0D 0A 2E 66 61 64 e screen.....fad
006720: 65 09 6C 64 20 68 6C 2C 26 43 30 30 30 0D 0A 2E e.ld hl,&C000...
006730: 66 61 64 65 6F 6C 09 6C 64 20 62 63 2C 32 33 34 fadeol.ld bc,234
006740: 30 3A 20 6C 64 20 64 65 2C 37 0D 0A 09 70 75 73 0: ld de,7...pus
006750: 68 20 68 6C 0D 0A 2E 66 61 64 65 6C 70 09 20 6C h hl...fadelp. l
006760: 64 20 28 68 6C 29 2C 30 3A 20 61 64 64 20 68 6C d (hl),0: add hl
006770: 2C 64 65 0D 0A 09 20 64 65 63 20 62 63 3A 20 6C ,de... dec bc: l
006780: 64 20 61 2C 62 3A 20 6F 72 20 63 0D 0A 09 20 6A d a,b: or c... j
006790: 72 20 6E 7A 2C 66 61 64 65 6C 70 0D 0A 09 70 6F r nz,fadelp...po
0067A0: 70 20 68 6C 0D 0A 09 69 6E 63 20 68 6C 3A 20 6C p hl...inc hl: l
0067B0: 64 20 61 2C 6C 0D 0A 09 63 70 20 37 3A 20 6A 72 d a,l...cp 7: jr
0067C0: 20 6E 7A 2C 66 61 64 65 6F 6C 0D 0A 09 72 65 74 nz,fadeol...ret
0067D0: 0D 0A 1A 20 20 70 75 73 68 20 68 6C 0D 0A 2E 66 ... push hl...f
0067E0: 61 64 65 6C 70 20 20 6C 64 20 28 68 6C 29 2C 30 adelp ld (hl),0
0067F0: 3A 20 61 64 64 20 68 6C 2C 64 65 0D 0A 20 20 20 : add hl,de..
006800: 0D 0A 09 72 65 74 0D 0A 1A 20 24 24 24 FF 00 FF ...ret... $$$...
006810: 20 6C 6F 77 20 73 63 72 65 65 6E 20 74 6F 20 68 low screen to h
006820: 69 67 68 20 73 63 72 65 65 6E 0D 0A 0D 0A 2E 66 igh screen.....f
006830: 64 65 6C 32 68 20 6C 64 20 68 6C 2C 26 43 30 30 del2h ld hl,&C00
006840: 30 0D 0A 2E 66 64 65 32 6F 6C 20 6C 64 20 62 63 0...fde2ol ld bc
006850: 2C 32 33 34 30 3A 20 6C 64 20 64 65 2C 37 0D 0A ,2340: ld de,7..
006860: 20 20 20 20 20 20 20 20 70 75 73 68 20 68 6C 0D push hl.
006870: 0A 2E 66 64 65 32 6C 70 20 20 72 65 73 20 37 2C ..fde2lp res 7,
006880: 6F 70 09 70 75 73 68 20 61 66 0D 0A 09 20 70 75 op.push af... pu
006890: 73 68 20 20 62 63 3A 20 70 75 73 68 20 64 65 3A sh bc: push de:
0068A0: 20 6C 64 69 72 0D 0A 09 20 70 6F 70 20 20 20 64 ldir... pop d
0068B0: 65 3A 20 70 6F 70 20 20 62 63 0D 0A 09 20 65 78 e: pop bc... ex
0068C0: 20 64 65 2C 68 6C 3A 20 63 61 6C 6C 20 6E 6C 69 de,hl: call nli
0068D0: 6E 65 3A 20 65 78 20 64 65 2C 68 6C 0D 0A 09 70 ne: ex de,hl...p
0068E0: 6F 70 20 61 66 0D 0A 09 64 65 63 20 61 3A 20 6A op af...dec a: j
0068F0: 72 20 6E 7A 2C 6D 77 6C 6F 6F 70 3A 20 72 65 74 r nz,mwloop: ret
006900: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006910: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006920: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006930: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006940: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006950: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006960: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006970: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006980: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006990: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0069A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0069B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0069C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0069D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0069E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0069F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006A00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006A10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006A20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006A30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006A40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006A50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006A60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006A70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006A80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006A90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006AA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006AB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006AC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006AD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006AE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006AF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006B00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006B10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006B20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006B30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006B40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006B50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006B60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006B70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006B80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006B90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006BA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006BB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006BC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006BD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006BE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006BF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006C00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006C10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006C20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006C30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006C40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006C50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006C60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006C70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006C80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006C90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006CA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006CB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006CC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006CD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006CE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006CF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006D00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006D10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006D20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006D30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006D40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006D50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006D60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006D70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006D80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006D90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006DA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006DB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006DC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006DD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006DE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006DF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006E00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006E10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006E20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006E30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006E40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006E50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006E60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006E70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006E80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006E90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006EA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006EB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006EC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006ED0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006EE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006EF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
006F00: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 48 61 72 ...;*** SUBR.Har
006F10: 64 77 61 72 65 20 6B 65 79 73 63 61 6E 0D 0A 0D dware keyscan...
006F20: 0A 2E 6B 65 79 73 63 09 6C 64 20 68 6C 2C 6B 65 ..keysc.ld hl,ke
006F30: 79 62 75 66 09 09 3B 41 64 64 72 65 73 73 20 6F ybuf..;Address o
006F40: 66 20 62 75 66 66 65 72 20 66 6F 72 20 6B 65 79 f buffer for key
006F50: 62 6F 61 72 64 20 62 6C 6F 63 6B 20 64 61 74 61 board block data
006F60: 0D 0A 09 6C 64 20 62 63 2C 26 46 34 30 45 3A 20 ...ld bc,&F40E:
006F70: 6F 75 74 20 28 63 29 2C 63 09 3B 50 75 74 20 31 out (c),c.;Put 1
006F80: 34 20 6F 6E 20 50 50 49 20 70 6F 72 74 20 41 0D 4 on PPI port A.
006F90: 0A 09 6C 64 20 62 2C 26 46 36 20 20 20 3A 20 69 ..ld b,&F6 : i
006FA0: 6E 20 20 61 2C 28 63 29 09 3B 47 65 74 20 63 75 n a,(c).;Get cu
006FB0: 72 72 65 6E 74 20 73 74 61 74 75 73 20 6F 66 20 rrent status of
006FC0: 70 6F 72 74 20 43 0D 0A 09 61 6E 64 20 26 33 30 port C...and &30
006FD0: 09 09 09 3B 50 72 65 73 65 72 76 65 20 73 74 61 ...;Preserve sta
006FE0: 74 75 73 20 6F 66 20 63 61 73 73 65 74 74 65 0D tus of cassette.
006FF0: 0A 09 6C 64 20 63 2C 61 09 09 09 3B 20 7C 20 61 ..ld c,a...; | a
007000: 6E 64 20 70 6C 61 63 65 20 76 61 6C 75 65 20 69 nd place value i
007010: 6E 20 43 20 72 65 67 69 73 74 65 72 0D 0A 09 6F n C register...o
007020: 72 20 26 43 30 20 20 20 20 20 3A 20 6F 75 74 20 r &C0 : out
007030: 28 63 29 2C 61 09 3B 57 72 69 74 65 20 72 65 67 (c),a.;Write reg
007040: 69 73 74 65 72 0D 0A 09 09 20 20 20 20 20 6F 75 ister.... ou
007050: 74 20 28 63 29 2C 63 09 3B 20 7C 20 61 6E 64 20 t (c),c.; | and
007060: 71 75 69 63 6B 6C 79 20 72 65 73 74 6F 72 65 20 quickly restore
007070: 6F 6C 64 20 73 74 61 74 75 73 20 28 4E 42 20 31 old status (NB 1
007080: 30 6E 73 29 0D 0A 09 69 6E 63 20 62 0D 0A 09 6C 0ns)...inc b...l
007090: 64 20 61 2C 26 39 32 20 20 20 3A 20 6F 75 74 20 d a,&92 : out
0070A0: 28 63 29 2C 61 09 3B 43 6F 6E 74 72 6F 6C 20 77 (c),a.;Control w
0070B0: 6F 72 64 20 2D 20 70 6F 72 74 20 41 20 69 6E 70 ord - port A inp
0070C0: 75 74 2C 20 70 6F 72 74 20 42 20 69 6E 70 75 74 ut, port B input
0070D0: 0D 0A 09 70 75 73 68 20 62 63 09 09 09 3B 50 72 ...push bc...;Pr
0070E0: 65 73 65 72 76 65 20 6F 6C 64 20 73 74 61 74 75 eserve old statu
0070F0: 73 20 6F 66 20 70 6F 72 74 20 43 0D 0A 09 20 73 s of port C... s
007100: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 46 61 64 ...;*** SUBR.Fad
007110: 65 20 6C 6F 77 20 73 63 72 65 65 6E 20 74 6F 20 e low screen to
007120: 68 69 67 68 20 73 63 72 65 65 6E 0D 0A 0D 0A 2E high screen.....
007130: 66 64 65 6C 32 68 09 6C 64 20 68 6C 2C 26 43 30 fdel2h.ld hl,&C0
007140: 30 30 0D 0A 2E 66 64 65 32 6F 6C 09 6C 64 20 62 00...fde2ol.ld b
007150: 63 2C 32 33 34 30 3A 20 6C 64 20 64 65 2C 37 0D c,2340: ld de,7.
007160: 0A 09 70 75 73 68 20 68 6C 0D 0A 2E 66 64 65 32 ..push hl...fde2
007170: 6C 70 09 20 72 65 73 20 37 2C 68 3A 20 6C 64 20 lp. res 7,h: ld
007180: 61 2C 28 68 6C 29 0D 0A 09 20 73 65 74 20 37 2C a,(hl)... set 7,
007190: 68 3A 20 6C 64 20 28 68 6C 29 2C 61 0D 0A 09 20 h: ld (hl),a...
0071A0: 61 64 64 20 68 6C 2C 64 65 3A 20 64 65 63 20 62 add hl,de: dec b
0071B0: 63 0D 0A 09 20 6C 64 20 61 2C 62 3A 20 6F 72 20 c... ld a,b: or
0071C0: 63 0D 0A 09 20 6A 72 20 6E 7A 2C 66 64 65 32 6C c... jr nz,fde2l
0071D0: 70 0D 0A 09 70 6F 70 20 68 6C 0D 0A 09 69 6E 63 p...pop hl...inc
0071E0: 20 68 6C 3A 20 6C 64 20 61 2C 6C 0D 0A 09 63 70 hl: ld a,l...cp
0071F0: 20 37 3A 20 6A 72 20 6E 7A 2C 66 64 65 32 6F 6C 7: jr nz,fde2ol
007200: 0D 0A 09 72 65 74 0D 0A 1A 20 24 24 24 FF 00 FF ...ret... $$$...
007210: 20 6C 6F 77 20 73 63 72 65 65 6E 20 74 6F 20 68 low screen to h
007220: 69 67 68 20 73 63 72 65 65 6E 0D 0A 0D 0A 2E 66 igh screen.....f
007230: 64 65 6C 32 68 20 6C 64 20 68 6C 2C 26 43 30 30 del2h ld hl,&C00
007240: 30 0D 0A 2E 66 64 65 32 6F 6C 20 6C 64 20 62 63 0...fde2ol ld bc
007250: 2C 32 33 34 30 3A 20 6C 64 20 64 65 2C 37 0D 0A ,2340: ld de,7..
007260: 20 20 20 20 20 20 20 20 70 75 73 68 20 68 6C 0D push hl.
007270: 0A 2E 66 64 65 32 6C 70 20 20 72 65 73 20 37 2C ..fde2lp res 7,
007280: 6F 70 09 70 75 73 68 20 61 66 0D 0A 09 20 70 75 op.push af... pu
007290: 73 68 20 20 62 63 3A 20 70 75 73 68 20 64 65 3A sh bc: push de:
0072A0: 20 6C 64 69 72 0D 0A 09 20 70 6F 70 20 20 20 64 ldir... pop d
0072B0: 65 3A 20 70 6F 70 20 20 62 63 0D 0A 09 20 65 78 e: pop bc... ex
0072C0: 20 64 65 2C 68 6C 3A 20 63 61 6C 6C 20 6E 6C 69 de,hl: call nli
0072D0: 6E 65 3A 20 65 78 20 64 65 2C 68 6C 0D 0A 09 70 ne: ex de,hl...p
0072E0: 6F 70 20 61 66 0D 0A 09 64 65 63 20 61 3A 20 6A op af...dec a: j
0072F0: 72 20 6E 7A 2C 6D 77 6C 6F 6F 70 3A 20 72 65 74 r nz,mwloop: ret
007300: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
007310: 06 00 01 00 02 09 4E E5 06 00 C1 02 00 00 00 02 ......N.........
007320: 06 00 C6 02 00 00 00 02 06 00 C2 02 00 00 00 02 ................
007330: 06 00 C7 02 00 00 00 02 06 00 C3 02 00 00 00 02 ................
007340: 06 00 C8 02 00 00 00 02 06 00 C4 02 00 00 00 02 ................
007350: 06 00 C9 02 00 00 00 02 06 00 C5 02 00 00 00 02 ................
007360: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
007370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
007380: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
007390: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0073A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0073B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0073C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0073D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0073E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0073F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
007400: 53 75 62 72 6F 75 74 69 6E 65 73 0D 0A 7E 7E 7E Subroutines..~~~
007410: 7E 7E 7E 7E 7E 7E 7E 7E 0D 0A 54 68 69 73 20 73 ~~~~~~~~..This s
007420: 69 64 65 20 63 6F 6E 74 61 69 6E 73 20 61 20 73 ide contains a s
007430: 65 6C 65 63 74 69 6F 6E 20 6F 66 20 73 75 62 72 election of subr
007440: 6F 75 74 69 6E 65 73 20 49 20 66 72 65 71 75 65 outines I freque
007450: 6E 74 6C 79 20 63 61 6C 6C 20 75 70 6F 6E 20 0D ntly call upon .
007460: 8A 66 6F 72 20 6D 61 63 68 69 6E 65 20 63 6F 64 .for machine cod
007470: 65 20 70 72 6F 67 72 61 6D 73 2E 20 4D 61 6E 79 e programs. Many
007480: 20 6F 66 20 74 68 65 6D 20 61 72 65 20 66 61 72 of them are far
007490: 20 66 72 6F 6D 20 74 68 65 20 71 75 69 63 6B 65 from the quicke
0074A0: 73 74 20 0D 8A 72 6F 75 74 69 6E 65 73 20 70 6F st ..routines po
0074B0: 73 73 69 62 6C 65 20 66 6F 72 20 73 75 63 68 20 ssible for such
0074C0: 74 61 73 6B 73 3A 20 74 68 65 20 64 69 76 69 73 tasks: the divis
0074D0: 69 6F 6E 20 61 6E 64 20 6D 75 6C 74 69 70 6C 69 ion and multipli
0074E0: 63 61 74 69 6F 6E 20 0D 8A 73 75 62 72 6F 75 74 cation ..subrout
0074F0: 69 6E 65 73 20 61 72 65 20 70 61 72 74 69 63 75 ines are particu
007500: 6C 61 72 6C 79 20 68 65 61 76 79 2D 68 61 6E 64 larly heavy-hand
007510: 65 64 2C 20 66 6F 72 20 65 78 61 6D 70 6C 65 2C ed, for example,
007520: 20 77 68 69 6C 65 20 65 76 65 6E 20 74 68 65 20 while even the
007530: 0D 8A 6E 65 78 74 20 73 63 72 65 65 6E 20 6C 69 ..next screen li
007540: 6E 65 20 72 6F 75 74 69 6E 65 20 69 73 20 71 75 ne routine is qu
007550: 69 74 65 20 73 6C 6F 77 2E 0D 0A 0D 0A 48 6F 77 ite slow.....How
007560: 65 76 65 72 2C 20 74 68 65 79 20 66 6F 72 6D 20 ever, they form
007570: 61 20 74 69 6D 65 2D 73 61 76 69 6E 67 20 70 72 a time-saving pr
007580: 6F 67 72 61 6D 6D 69 6E 67 20 72 65 73 6F 75 72 ogramming resour
007590: 63 65 2C 20 61 6E 64 20 49 20 68 6F 70 65 20 79 ce, and I hope y
0075A0: 6F 75 20 0D 8A 77 69 6C 6C 20 66 69 6E 64 20 74 ou ..will find t
0075B0: 68 65 6D 20 61 73 20 75 73 65 66 75 6C 20 61 73 hem as useful as
0075C0: 20 49 20 68 61 76 65 2E 20 59 6F 75 20 61 72 65 I have. You are
0075D0: 20 77 65 6C 63 6F 6D 65 20 74 6F 20 75 73 65 20 welcome to use
0075E0: 74 68 65 6D 20 69 6E 20 0D 8A 79 6F 75 72 20 6F them in ..your o
0075F0: 77 6E 20 70 72 6F 67 72 61 6D 73 3A 20 61 6E 20 wn programs: an
007600: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007610: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007620: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007630: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007640: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007650: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007660: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007670: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007680: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007690: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0076A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0076B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0076C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0076D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0076E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0076F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007700: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007710: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007720: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007730: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007740: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007750: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007760: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007770: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007780: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007790: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0077A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0077B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0077C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0077D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0077E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0077F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
007800: 61 63 6B 6E 6F 77 6C 65 64 67 65 6D 65 6E 74 20 acknowledgement
007810: 74 68 61 74 20 6D 79 20 63 6F 64 65 20 68 61 73 that my code has
007820: 20 62 65 65 6E 20 75 73 65 64 20 77 6F 75 6C 64 been used would
007830: 20 0D 8A 62 65 20 77 65 6C 63 6F 6D 65 2E 0D 0A ..be welcome...
007840: 0D 0A 52 69 63 68 61 72 64 20 46 61 69 72 68 75 ..Richard Fairhu
007850: 72 73 74 2C 20 4F 63 74 6F 62 65 72 20 31 39 39 rst, October 199
007860: 37 0D 0A 0D 0A 0D 0A 46 69 6C 65 6E 61 6D 65 09 7......Filename.
007870: 50 75 72 70 6F 73 65 0D 0A 0D 0A 42 41 4E 4B 53 Purpose....BANKS
007880: 20 20 20 2E 09 52 65 61 64 2F 77 72 69 74 65 20 ..Read/write
007890: 62 79 74 65 20 74 6F 20 65 78 74 72 61 20 6D 65 byte to extra me
0078A0: 6D 6F 72 79 0D 0A 43 52 43 20 20 20 20 20 2E 09 mory..CRC ..
0078B0: 43 52 43 20 63 61 6C 63 75 6C 61 74 69 6F 6E 20 CRC calculation
0078C0: 72 6F 75 74 69 6E 65 0D 0A 43 52 54 43 20 20 20 routine..CRTC
0078D0: 20 2E 09 53 65 74 20 43 52 54 43 20 72 65 67 69 ..Set CRTC regi
0078E0: 73 74 65 72 0D 0A 44 49 56 49 44 45 20 20 2E 09 ster..DIVIDE ..
0078F0: 44 69 76 69 64 65 20 48 4C 20 62 79 20 42 43 2C Divide HL by BC,
007900: 20 72 65 74 75 72 6E 69 6E 67 20 72 6F 75 6E 64 returning round
007910: 65 64 20 72 65 73 75 6C 74 20 69 6E 20 44 45 0D ed result in DE.
007920: 0A 46 41 44 45 4C 32 48 20 2E 09 46 61 64 65 20 .FADEL2H ..Fade
007930: 6C 6F 77 20 73 63 72 65 65 6E 20 74 6F 20 68 69 low screen to hi
007940: 67 68 20 73 63 72 65 65 6E 0D 0A 46 41 44 45 53 gh screen..FADES
007950: 43 52 20 2E 09 46 61 64 65 20 68 69 67 68 20 73 CR ..Fade high s
007960: 63 72 65 65 6E 20 74 6F 20 62 61 63 6B 67 72 6F creen to backgro
007970: 75 6E 64 0D 0A 48 45 58 49 4E 50 31 20 2E 09 49 und..HEXINP1 ..I
007980: 6E 70 75 74 20 31 20 68 65 78 20 62 79 74 65 0D nput 1 hex byte.
007990: 0A 48 45 58 49 4E 50 32 20 2E 09 49 6E 70 75 74 .HEXINP2 ..Input
0079A0: 20 32 20 68 65 78 20 62 79 74 65 73 0D 0A 49 4E 2 hex bytes..IN
0079B0: 50 55 54 46 20 20 2E 09 49 6E 70 75 74 20 66 69 PUTF ..Input fi
0079C0: 6C 65 6E 61 6D 65 0D 0A 4B 45 59 53 43 41 4E 20 lename..KEYSCAN
0079D0: 2E 09 53 63 61 6E 20 61 6C 6C 20 6B 65 79 73 20 ..Scan all keys
0079E0: 6F 6E 20 6B 65 79 62 6F 61 72 64 0D 0A 4D 4F 44 on keyboard..MOD
0079F0: 45 31 54 4F 32 2E 09 43 6F 6E 76 65 72 74 20 4D E1TO2..Convert M
007A00: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 52 65 61 ...;*** SUBR.Rea
007A10: 64 20 50 53 47 20 72 65 67 69 73 74 65 72 20 43 d PSG register C
007A20: 20 69 6E 74 6F 20 44 0D 0A 09 3B 09 09 63 6F 72 into D...;..cor
007A30: 72 75 70 74 73 20 41 46 2C 20 42 43 0D 0A 0D 0A rupts AF, BC....
007A40: 2E 72 72 65 67 09 64 69 0D 0A 09 6C 64 20 62 2C .rreg.di...ld b,
007A50: 26 46 34 3A 20 6F 75 74 20 28 63 29 2C 63 09 3B &F4: out (c),c.;
007A60: 50 75 74 20 72 65 67 69 73 74 65 72 20 6F 6E 20 Put register on
007A70: 70 6F 72 74 20 41 0D 0A 09 6C 64 20 62 2C 26 46 port A...ld b,&F
007A80: 36 3A 20 69 6E 20 61 2C 28 63 29 09 3B 47 65 74 6: in a,(c).;Get
007A90: 20 70 6F 72 74 20 43 20 73 74 61 74 75 73 0D 0A port C status..
007AA0: 09 61 6E 64 20 26 33 30 3A 20 20 6C 64 20 63 2C .and &30: ld c,
007AB0: 61 0D 0A 09 6F 72 20 26 43 30 3A 20 20 20 6F 75 a...or &C0: ou
007AC0: 74 20 28 63 29 2C 61 09 3B 22 57 72 69 74 65 20 t (c),a.;"Write
007AD0: 72 65 67 69 73 74 65 72 22 20 74 6F 20 70 6F 72 register" to por
007AE0: 74 20 43 0D 0A 09 09 20 20 6F 75 74 20 28 63 29 t C.... out (c)
007AF0: 2C 63 09 3B 52 65 73 74 6F 72 65 20 6F 6C 64 20 ,c.;Restore old
007B00: 73 74 61 74 75 73 20 77 69 74 68 69 6E 20 31 30 status within 10
007B10: 6E 73 0D 0A 09 69 6E 63 20 62 0D 0A 09 6C 64 20 ns...inc b...ld
007B20: 61 2C 26 39 32 3A 20 6F 75 74 20 28 63 29 2C 61 a,&92: out (c),a
007B30: 09 3B 53 65 74 20 63 6F 6E 74 72 6F 6C 20 74 6F .;Set control to
007B40: 20 70 6F 72 74 20 41 20 69 6E 70 75 74 2C 20 70 port A input, p
007B50: 6F 72 74 20 42 20 69 6E 70 75 74 0D 0A 09 70 75 ort B input...pu
007B60: 73 68 20 62 63 20 3A 20 73 65 74 20 36 2C 63 0D sh bc : set 6,c.
007B70: 0A 09 20 6C 64 20 62 2C 26 46 36 3A 20 6F 75 74 .. ld b,&F6: out
007B80: 20 28 63 29 2C 63 09 3B 53 65 74 20 42 43 31 2F (c),c.;Set BC1/
007B90: 42 44 49 52 20 74 6F 20 22 72 65 61 64 20 72 65 BDIR to "read re
007BA0: 67 69 73 74 65 72 20 63 6F 6E 74 65 6E 74 73 22 gister contents"
007BB0: 0D 0A 09 20 6C 64 20 62 2C 26 46 34 3A 20 69 6E ... ld b,&F4: in
007BC0: 20 64 2C 28 63 29 09 3B 47 65 74 20 63 6F 6E 74 d,(c).;Get cont
007BD0: 65 6E 74 73 0D 0A 09 70 6F 70 20 62 63 0D 0A 09 ents...pop bc...
007BE0: 6C 64 20 61 2C 26 38 32 3A 20 6F 75 74 20 28 63 ld a,&82: out (c
007BF0: 29 2C 61 09 3B 52 65 73 74 6F 72 65 20 63 6F 6E ),a.;Restore con
007C00: 0D 0A 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 4E .....;*** SUBR.N
007C10: 65 78 74 20 6C 69 6E 65 20 64 6F 77 6E 20 66 72 ext line down fr
007C20: 6F 6D 20 48 4C 0D 0A 0D 0A 2E 6E 6C 69 6E 65 09 om HL.....nline.
007C30: 6C 64 20 61 2C 38 3A 20 61 64 64 20 68 3A 20 6C ld a,8: add h: l
007C40: 64 20 68 2C 61 0D 0A 09 61 6E 64 20 36 34 3A 20 d h,a...and 64:
007C50: 72 65 74 20 6E 7A 0D 0A 09 6C 64 20 62 63 2C 31 ret nz...ld bc,1
007C60: 36 33 30 34 3A 20 73 62 63 20 68 6C 2C 62 63 0D 6304: sbc hl,bc.
007C70: 0A 09 72 65 74 0D 0A 0D 0A 1A 20 68 6C 2C 62 63 ..ret..... hl,bc
007C80: 65 2C 31 36 33 30 34 3A 20 6F 72 20 61 3A 20 73 e,16304: or a: s
007C90: 62 63 20 68 6C 2C 64 65 0D 0A 20 20 20 20 20 20 bc hl,de..
007CA0: 20 20 70 6F 70 20 64 65 3A 20 72 65 74 0D 0A 0D pop de: ret...
007CB0: 1A 65 20 63 6F 64 65 20 73 6F 75 72 63 65 20 28 .e code source (
007CC0: 63 29 20 52 69 63 68 61 72 64 20 46 61 69 72 68 c) Richard Fairh
007CD0: 75 72 73 74 20 31 39 39 33 0D 0A 0D 0A 09 6F 72 urst 1993.....or
007CE0: 67 20 26 39 30 30 30 0D 0A 09 77 72 69 74 65 20 g &9000...write
007CF0: 22 67 72 61 70 68 69 63 73 2E 62 69 6E 22 0D 0A "graphics.bin"..
007D00: 64 20 31 35 0D 0A 09 20 63 70 20 31 30 20 20 20 d 15... cp 10
007D10: 20 20 3A 20 6A 72 20 6E 7A 2C 6B 6C 6F 6F 70 3B : jr nz,kloop;
007D20: 4C 61 73 74 20 6B 65 79 20 62 6C 6F 63 6B 20 62 Last key block b
007D30: 65 65 6E 20 72 65 61 63 68 65 64 20 79 65 74 3F een reached yet?
007D40: 0D 0A 09 70 6F 70 20 62 63 09 09 09 3B 47 65 74 ...pop bc...;Get
007D50: 20 6F 6C 64 20 73 74 61 74 75 73 20 6F 66 20 70 old status of p
007D60: 6F 72 74 20 43 0D 0A 09 6C 64 20 61 2C 26 38 32 ort C...ld a,&82
007D70: 20 20 20 3A 20 6F 75 74 20 28 63 29 2C 61 09 3B : out (c),a.;
007D80: 52 65 73 74 6F 72 65 20 63 6F 6E 74 72 6F 6C 20 Restore control
007D90: 70 6F 72 74 0D 0A 09 64 65 63 20 62 20 20 20 20 port...dec b
007DA0: 20 20 3A 20 6F 75 74 20 28 63 29 2C 63 09 3B 52 : out (c),c.;R
007DB0: 65 73 74 6F 72 65 20 70 6F 72 74 20 43 0D 0A 0D estore port C...
007DC0: 0A 09 6C 64 20 61 2C 28 6B 65 79 62 75 66 2B 35 ..ld a,(keybuf+5
007DD0: 29 09 09 3B 47 65 74 20 6B 65 79 20 64 61 74 61 )..;Get key data
007DE0: 20 66 72 6F 6D 20 62 6C 6F 63 6B 20 35 20 6F 66 from block 5 of
007DF0: 20 6B 65 79 62 6F 61 72 64 20 62 75 66 66 65 72 keyboard buffer
007E00: 74 72 6F 6C 20 70 6F 72 74 0D 0A 09 64 65 63 20 trol port...dec
007E10: 62 20 20 20 3A 20 6F 75 74 20 28 63 29 2C 63 09 b : out (c),c.
007E20: 3B 52 65 73 74 6F 72 65 20 70 6F 72 74 20 43 0D ;Restore port C.
007E30: 0A 09 72 65 73 20 34 2C 64 20 3A 20 65 69 3A 20 ..res 4,d : ei:
007E40: 72 65 74 0D 0A 1A 65 72 20 69 6E 20 43 0D 0A 20 ret...er in C..
007E50: 20 20 20 20 20 20 20 3B 6F 6E 20 65 78 69 74 20 ;on exit
007E60: 20 2D 20 63 6F 6E 74 65 6E 74 73 20 69 6E 20 44 - contents in D
007E70: 0D 0A 20 20 20 20 20 20 20 20 3B 63 6F 72 72 75 .. ;corru
007E80: 36 3A 20 69 6E 20 61 2C 28 63 29 09 3B 47 65 74 6: in a,(c).;Get
007E90: 20 70 6F 72 74 20 43 20 73 74 61 74 75 73 0D 0A port C status..
007EA0: 09 61 6E 64 20 26 33 30 3A 20 20 6C 64 20 63 2C .and &30: ld c,
007EB0: 61 0D 0A 09 6F 72 20 26 43 30 3A 20 20 20 6F 75 a...or &C0: ou
007EC0: 74 20 28 63 29 2C 61 09 3B 22 57 72 69 74 65 20 t (c),a.;"Write
007ED0: 72 65 67 69 73 74 65 72 22 20 74 6F 20 70 6F 72 register" to por
007EE0: 74 20 43 0D 0A 09 09 20 20 6F 75 74 20 28 63 29 t C.... out (c)
007EF0: 2C 63 09 3B 52 65 73 74 6F 72 65 20 6F 6C 64 20 ,c.;Restore old
007F00: 73 74 61 74 75 73 20 77 69 74 68 69 6E 20 31 30 status within 10
007F10: 6E 73 0D 0A 09 69 6E 63 20 62 0D 0A 09 6C 64 20 ns...inc b...ld
007F20: 61 2C 26 39 32 3A 20 6F 75 74 20 28 63 29 2C 61 a,&92: out (c),a
007F30: 09 3B 53 65 74 20 63 6F 6E 74 72 6F 6C 20 74 6F .;Set control to
007F40: 20 70 6F 72 74 20 41 20 69 6E 70 75 74 2C 20 70 port A input, p
007F50: 6F 72 74 20 42 20 69 6E 70 75 74 0D 0A 09 70 75 ort B input...pu
007F60: 73 68 20 62 63 20 3A 20 73 65 74 20 36 2C 63 0D sh bc : set 6,c.
007F70: 0A 09 20 6C 64 20 62 2C 26 46 36 3A 20 6F 75 74 .. ld b,&F6: out
007F80: 20 28 63 29 2C 63 09 3B 53 65 74 20 42 43 31 2F (c),c.;Set BC1/
007F90: 42 44 49 52 20 74 6F 20 22 72 65 61 64 20 72 65 BDIR to "read re
007FA0: 67 69 73 74 65 72 20 63 6F 6E 74 65 6E 74 73 22 gister contents"
007FB0: 0D 0A 09 20 6C 64 20 62 2C 26 46 34 3A 20 69 6E ... ld b,&F4: in
007FC0: 20 64 2C 28 63 29 09 3B 47 65 74 20 63 6F 6E 74 d,(c).;Get cont
007FD0: 65 6E 74 73 0D 0A 09 70 6F 70 20 62 63 0D 0A 09 ents...pop bc...
007FE0: 6C 64 20 61 2C 26 38 32 3A 20 6F 75 74 20 28 63 ld a,&82: out (c
007FF0: 29 2C 61 09 3B 52 65 73 74 6F 72 65 20 63 6F 6E ),a.;Restore con
008000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0080A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0080B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0080C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0080D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0080E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0080F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0081A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0081B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0081C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0081D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0081E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0081F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008200: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 48 61 72 ...;*** SUBR.Har
008210: 64 77 61 72 65 20 6B 65 79 73 63 61 6E 20 2D 20 dware keyscan -
008220: 73 70 61 63 65 20 62 61 72 20 6F 6E 6C 79 0D 0A space bar only..
008230: 0D 0A 2E 6B 65 79 73 63 09 6C 64 20 62 63 2C 26 ...keysc.ld bc,&
008240: 46 34 30 45 3A 20 6F 75 74 20 28 63 29 2C 63 09 F40E: out (c),c.
008250: 09 3B 50 6F 72 74 20 41 20 20 2D 20 72 65 67 69 .;Port A - regi
008260: 73 74 65 72 20 31 34 0D 0A 09 6C 64 20 62 63 2C ster 14...ld bc,
008270: 26 46 36 34 35 3A 20 6C 64 20 61 2C 26 43 35 09 &F645: ld a,&C5.
008280: 09 3B 50 6F 72 74 20 43 20 20 2D 20 77 72 69 74 .;Port C - writ
008290: 65 20 7D 0D 0A 09 6F 75 74 20 28 63 29 2C 61 20 e }...out (c),a
0082A0: 20 3A 20 6F 75 74 20 28 63 29 2C 63 09 09 3B 50 : out (c),c..;P
0082B0: 6F 72 74 20 43 20 20 2D 20 72 65 61 64 20 20 7D ort C - read }
0082C0: 0D 0A 09 6C 64 20 62 63 2C 26 46 37 39 32 3A 20 ...ld bc,&F792:
0082D0: 6F 75 74 20 28 63 29 2C 63 09 09 3B 43 6F 6E 74 out (c),c..;Cont
0082E0: 72 6F 6C 20 2D 20 70 6F 72 74 20 41 20 69 6E 70 rol - port A inp
0082F0: 75 74 0D 0A 09 6C 64 20 62 63 2C 26 46 36 34 35 ut...ld bc,&F645
008300: 3A 20 6F 75 74 20 28 63 29 2C 63 09 09 3B 50 6F : out (c),c..;Po
008310: 72 74 20 43 20 20 2D 20 72 65 61 64 20 63 6F 6E rt C - read con
008320: 74 65 6E 74 73 0D 0A 09 6C 64 20 62 20 2C 26 46 tents...ld b ,&F
008330: 34 20 20 3A 20 69 6E 20 61 2C 28 63 29 09 09 3B 4 : in a,(c)..;
008340: 50 6F 72 74 20 41 20 20 2D 20 72 65 61 64 0D 0A Port A - read..
008350: 09 6C 64 20 62 63 2C 26 46 37 38 32 3A 20 6F 75 .ld bc,&F782: ou
008360: 74 20 28 63 29 2C 63 09 09 3B 43 6F 6E 74 72 6F t (c),c..;Contro
008370: 6C 20 2D 20 70 6F 72 74 20 41 20 6F 75 74 70 75 l - port A outpu
008380: 74 0D 0A 09 63 70 20 26 37 46 3A 20 72 65 74 0D t...cp &7F: ret.
008390: 0A 0D 0A 1A 0A 2E 6B 65 79 73 63 09 6C 64 20 62 ......keysc.ld b
0083A0: 63 2C 26 46 34 30 45 3A 20 6F 75 74 20 28 63 29 c,&F40E: out (c)
0083B0: 2C 63 09 3B 70 6F 72 74 20 41 20 20 2D 20 72 65 ,c.;port A - re
0083C0: 67 69 73 74 65 72 20 31 34 0D 0A 09 6C 64 20 62 gister 14...ld b
0083D0: 63 2C 26 46 36 34 35 3A 20 6C 64 20 61 2C 26 43 c,&F645: ld a,&C
0083E0: 35 09 3B 70 6F 72 74 20 43 20 20 2D 20 77 72 69 5.;port C - wri
0083F0: 74 65 20 7D 0D 0A 09 6F 75 74 20 28 63 29 2C 61 te }...out (c),a
008400: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 09 57 72 69 ...;*** SUBR.Wri
008410: 74 65 20 50 53 47 20 72 65 67 69 73 74 65 72 0D te PSG register.
008420: 0A 0D 0A 2E 70 73 67 09 6C 64 20 62 2C 26 46 34 ....psg.ld b,&F4
008430: 3A 20 6F 75 74 20 28 63 29 2C 61 09 3B 53 65 74 : out (c),a.;Set
008440: 20 75 70 20 72 65 67 69 73 74 65 72 0D 0A 09 6C up register...l
008450: 64 20 62 2C 26 46 36 3A 20 69 6E 20 20 61 2C 28 d b,&F6: in a,(
008460: 63 29 09 3B 20 7C 0D 0A 09 6F 72 20 26 43 30 20 c).; |...or &C0
008470: 20 3A 20 6F 75 74 20 28 63 29 2C 61 09 3B 20 7C : out (c),a.; |
008480: 0D 0A 09 61 6E 64 20 26 33 46 20 3A 20 6F 75 74 ...and &3F : out
008490: 20 28 63 29 2C 61 09 3B 20 7C 0D 0A 0D 0A 09 6C (c),a.; |.....l
0084A0: 64 20 62 2C 26 46 34 3A 20 6F 75 74 20 28 63 29 d b,&F4: out (c)
0084B0: 2C 63 09 3B 53 65 6E 64 20 64 61 74 61 0D 0A 09 ,c.;Send data...
0084C0: 6C 64 20 62 2C 26 46 36 3A 20 6C 64 20 63 2C 61 ld b,&F6: ld c,a
0084D0: 09 3B 20 7C 0D 0A 09 6F 72 20 26 38 30 20 20 3A .; |...or &80 :
0084E0: 20 6F 75 74 20 28 63 29 2C 61 09 3B 20 7C 0D 0A out (c),a.; |..
0084F0: 09 09 20 20 6F 75 74 20 28 63 29 2C 63 09 3B 20 .. out (c),c.;
008500: 7C 0D 0A 09 72 65 74 0D 0A 1A 24 24 24 FF 00 FF |...ret...$$$...
008510: 00 00 0A 00 00 72 01 00 E6 00 00 00 00 00 00 00 .....r..........
008520: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
008530: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
008540: E6 00 00 33 04 69 73 74 65 72 0D 0A 0D 0A 09 6C ...3.ister.....l
008550: 64 20 62 2C 26 46 34 3A 20 6F 75 74 20 28 63 29 d b,&F4: out (c)
008560: 2C 63 0D 0A 09 6C 64 20 62 2C 26 46 36 3A 20 6C ,c...ld b,&F6: l
008570: 64 20 63 2C 61 0D 0A 09 6F 72 20 26 38 30 20 20 d c,a...or &80
008580: 52 65 73 74 6F 72 65 20 63 6F 6E 74 72 6F 6C 20 Restore control
008590: 70 6F 72 74 0D 0A 09 64 65 63 20 62 20 20 20 20 port...dec b
0085A0: 20 20 3A 20 6F 75 74 20 28 63 29 2C 63 09 3B 52 : out (c),c.;R
0085B0: 65 73 74 6F 72 65 20 70 6F 72 74 20 43 0D 0A 0D estore port C...
0085C0: 0A 09 6C 64 20 61 2C 28 6B 65 79 62 75 66 2B 35 ..ld a,(keybuf+5
0085D0: 29 09 09 3B 47 65 74 20 6B 65 79 20 64 61 74 61 )..;Get key data
0085E0: 20 66 72 6F 6D 20 62 6C 6F 63 6B 20 35 20 6F 66 from block 5 of
0085F0: 20 6B 65 79 62 6F 61 72 64 20 62 75 66 66 65 72 keyboard buffer
008600: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
008610: 07 00 01 00 02 09 4E E5 07 00 C4 02 00 00 00 02 ......N.........
008620: 07 00 C9 02 00 00 00 02 07 00 C5 02 00 00 00 02 ................
008630: 07 00 C1 02 00 00 00 02 07 00 C6 02 00 00 00 02 ................
008640: 07 00 C2 02 00 00 00 02 07 00 C7 02 00 00 00 02 ................
008650: 07 00 C3 02 00 00 00 02 07 00 C8 02 00 00 00 02 ................
008660: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
008670: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
008680: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
008690: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0086A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0086B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0086C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0086D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0086E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0086F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
008700: 0D 0A 09 3B 50 72 6F 2D 45 78 74 20 76 31 2E 35 ...;Pro-Ext v1.5
008710: 30 0D 0A 09 3B 61 20 52 65 61 6C 57 6F 72 6C 64 0...;a RealWorld
008720: 20 43 6F 64 69 6E 67 20 70 72 6F 64 75 63 74 69 Coding producti
008730: 6F 6E 20 66 6F 72 20 53 65 6E 74 69 6E 65 6C 0D on for Sentinel.
008740: 0A 09 3B 66 6F 6E 74 20 65 64 69 74 6F 72 20 52 ..;font editor R
008750: 53 58 20 6C 69 62 72 61 72 79 0D 0A 0D 0A 09 3B SX library.....;
008760: 76 31 2E 30 20 20 20 20 20 20 32 31 20 4D 61 72 v1.0 21 Mar
008770: 63 68 20 31 39 39 33 0D 0A 0D 0A 09 6F 72 67 20 ch 1993.....org
008780: 26 38 30 30 30 0D 0A 09 77 72 69 74 65 20 22 65 &8000...write "e
008790: 64 69 74 2E 62 69 6E 22 0D 0A 09 6E 6F 6C 69 73 dit.bin"...nolis
0087A0: 74 0D 0A 0D 0A 09 3B 2A 2A 2A 20 49 6E 69 74 69 t.....;*** Initi
0087B0: 61 6C 69 73 65 20 52 53 58 73 0D 0A 0D 0A 09 6C alise RSXs.....l
0087C0: 64 20 62 63 2C 63 6F 6D 5F 74 0D 0A 09 6C 64 20 d bc,com_t...ld
0087D0: 68 6C 2C 77 6B 73 70 0D 0A 09 6A 70 20 26 42 43 hl,wksp...jp &BC
0087E0: 44 31 0D 0A 0D 0A 2E 77 6B 73 70 09 64 73 20 34 D1.....wksp.ds 4
0087F0: 0D 0A 0D 0A 2E 63 6F 6D 5F 74 09 64 77 20 20 6E .....com_t.dw n
008800: 61 6D 65 5F 74 0D 0A 09 6A 70 20 20 67 72 69 64 ame_t...jp grid
008810: 5F 69 3A 09 6A 70 20 20 69 6E 76 5F 5F 69 0D 0A _i:.jp inv__i..
008820: 09 6A 70 20 20 6C 6F 61 64 5F 69 3A 09 6A 70 20 .jp load_i:.jp
008830: 20 73 61 76 65 5F 69 0D 0A 09 6A 70 20 20 73 65 save_i...jp se
008840: 74 5F 5F 69 3A 09 6A 70 20 20 67 65 74 5F 5F 69 t__i:.jp get__i
008850: 0D 0A 09 6A 70 20 20 63 6F 70 79 5F 69 3A 09 6A ...jp copy_i:.j
008860: 70 20 20 77 69 64 74 5F 69 0D 0A 09 6A 70 20 20 p widt_i...jp
008870: 72 65 64 6F 5F 69 3A 09 6A 70 20 20 6E 65 77 5F redo_i:.jp new_
008880: 5F 69 0D 0A 09 6A 70 20 20 70 6C 6F 74 5F 69 3A _i...jp plot_i:
008890: 09 6A 70 20 20 72 73 78 6F 5F 69 0D 0A 0D 0A 2E .jp rsxo_i.....
0088A0: 6E 61 6D 65 5F 74 09 73 74 72 20 22 47 52 49 44 name_t.str "GRID
0088B0: 22 3A 09 73 74 72 20 22 49 4E 56 45 52 54 22 0D ":.str "INVERT".
0088C0: 0A 09 73 74 72 20 22 4C 4F 41 44 22 3A 09 73 74 ..str "LOAD":.st
0088D0: 72 20 22 53 41 56 45 22 0D 0A 09 73 74 72 20 22 r "SAVE"...str "
0088E0: 53 45 54 22 20 3A 09 73 74 72 20 22 47 45 54 22 SET" :.str "GET"
0088F0: 0D 0A 09 73 74 72 20 22 43 4F 50 59 22 3A 09 73 ...str "COPY":.s
008900: 6F 6F 70 09 20 6C 64 20 68 6C 2C 67 70 61 74 74 oop. ld hl,gpatt
008910: 09 09 09 09 3B 6E 65 77 20 63 6F 6C 75 6D 6E 0D ....;new column.
008920: 0A 2E 63 72 6C 6F 6F 70 09 20 20 6C 64 20 61 2C ..crloop. ld a,
008930: 28 68 6C 29 3A 20 6C 64 20 28 64 65 29 2C 61 3A (hl): ld (de),a:
008940: 20 69 6E 63 20 68 6C 3A 20 69 6E 63 20 64 65 09 inc hl: inc de.
008950: 3B 6E 65 77 20 72 6F 77 20 69 6E 20 63 68 61 72 ;new row in char
008960: 61 63 74 65 72 0D 0A 09 20 20 6C 64 20 61 2C 28 acter... ld a,(
008970: 68 6C 29 3A 20 6C 64 20 28 64 65 29 2C 61 3A 20 hl): ld (de),a:
008980: 69 6E 63 20 68 6C 3A 20 64 65 63 20 64 65 0D 0A inc hl: dec de..
008990: 09 20 20 6C 64 20 61 2C 38 3A 20 61 64 64 20 64 . ld a,8: add d
0089A0: 3A 20 6C 64 20 64 2C 61 0D 0A 09 20 20 62 69 74 : ld d,a... bit
0089B0: 20 37 2C 64 3A 20 6A 72 20 6E 7A 2C 63 72 6C 6F 7,d: jr nz,crlo
0089C0: 6F 70 0D 0A 09 20 6C 64 20 61 2C 26 43 30 3A 20 op... ld a,&C0:
0089D0: 61 64 64 20 64 3A 20 6C 64 20 64 2C 61 0D 0A 09 add d: ld d,a...
0089E0: 20 69 6E 63 20 64 65 3A 20 69 6E 63 20 64 65 3A inc de: inc de:
0089F0: 20 64 6A 6E 7A 20 63 63 6C 6F 6F 70 0D 0A 09 6C djnz ccloop...l
008A00: 64 20 68 6C 2C 33 32 3A 20 61 64 64 20 68 6C 2C d hl,32: add hl,
008A10: 64 65 3A 20 65 78 20 64 65 2C 68 6C 0D 0A 09 64 de: ex de,hl...d
008A20: 65 63 20 63 3A 20 6A 72 20 6E 7A 2C 63 6F 6C 6F ec c: jr nz,colo
008A30: 6F 70 0D 0A 0D 0A 09 6C 64 20 68 6C 2C 26 43 30 op.....ld hl,&C0
008A40: 30 30 3A 20 6C 64 20 62 63 2C 34 38 3A 20 6C 64 00: ld bc,48: ld
008A50: 69 72 09 09 3B 63 6F 70 79 20 6C 69 6E 65 20 74 ir..;copy line t
008A60: 6F 20 62 6F 74 74 6F 6D 0D 0A 0D 0A 09 6C 64 20 o bottom.....ld
008A70: 68 6C 2C 26 43 30 30 30 3A 20 6C 64 20 62 2C 31 hl,&C000: ld b,1
008A80: 39 33 0D 0A 2E 63 70 6C 6F 6F 70 09 70 75 73 68 93...cploop.push
008A90: 20 68 6C 3A 20 6C 64 20 61 2C 28 68 6C 29 0D 0A hl: ld a,(hl)..
008AA0: 09 20 6C 64 20 64 65 2C 34 38 3A 20 61 64 64 20 . ld de,48: add
008AB0: 68 6C 2C 64 65 0D 0A 09 20 61 6E 64 20 31 32 38 hl,de... and 128
008AC0: 3A 20 20 6C 64 20 28 68 6C 29 2C 61 0D 0A 09 70 : ld (hl),a...p
008AD0: 6F 70 20 68 6C 3A 20 63 61 6C 6C 20 26 42 43 32 op hl: call &BC2
008AE0: 36 0D 0A 09 64 6A 6E 7A 20 63 70 6C 6F 6F 70 0D 6...djnz cploop.
008AF0: 0A 09 72 65 74 0D 0A 0D 0A 09 3B 2A 2A 2A 20 7C ..ret.....;*** |
008B00: 74 72 20 22 57 49 44 54 48 22 0D 0A 09 73 74 72 tr "WIDTH"...str
008B10: 20 22 52 45 44 4F 22 3A 09 73 74 72 20 22 4E 45 "REDO":.str "NE
008B20: 57 22 0D 0A 09 73 74 72 20 22 50 4C 4F 54 22 3A W"...str "PLOT":
008B30: 09 73 74 72 20 22 52 53 58 4F 46 46 22 0D 0A 09 .str "RSXOFF"...
008B40: 64 62 20 30 0D 0A 0D 0A 09 3B 2A 2A 2A 20 7C 49 db 0.....;*** |I
008B50: 4E 56 45 52 54 2C 77 69 64 74 68 2C 68 65 69 67 NVERT,width,heig
008B60: 68 74 0D 0A 0D 0A 2E 69 6E 76 5F 5F 69 09 6C 64 ht.....inv__i.ld
008B70: 20 68 6C 2C 33 39 38 3A 20 6C 64 20 61 2C 28 67 hl,398: ld a,(g
008B80: 73 69 7A 65 29 0D 0A 09 6C 64 20 65 2C 28 69 78 size)...ld e,(ix
008B90: 2B 30 29 3A 20 6C 64 20 64 2C 28 69 78 2B 31 29 +0): ld d,(ix+1)
008BA0: 0D 0A 09 6F 72 20 61 3A 20 72 6C 20 64 3A 20 72 ...or a: rl d: r
008BB0: 6C 20 65 0D 0A 09 6F 72 20 61 3A 20 73 62 63 20 l e...or a: sbc
008BC0: 68 6C 2C 64 65 0D 0A 09 6F 72 20 61 3A 20 73 62 hl,de...or a: sb
008BD0: 63 20 68 6C 2C 64 65 3A 20 63 70 20 34 3A 20 6A c hl,de: cp 4: j
008BE0: 72 20 7A 2C 69 6E 76 5F 67 79 0D 0A 09 6F 72 20 r z,inv_gy...or
008BF0: 61 3A 20 73 62 63 20 68 6C 2C 64 65 0D 0A 09 6F a: sbc hl,de...o
008C00: 72 20 61 3A 20 73 62 63 20 68 6C 2C 64 65 3A 20 r a: sbc hl,de:
008C10: 63 70 20 32 3A 20 6A 72 20 7A 2C 69 6E 76 5F 67 cp 2: jr z,inv_g
008C20: 79 0D 0A 09 6F 72 20 61 3A 20 73 62 63 20 68 6C y...or a: sbc hl
008C30: 2C 64 65 3A 20 6F 72 20 61 3A 20 73 62 63 20 68 ,de: or a: sbc h
008C40: 6C 2C 64 65 0D 0A 09 6F 72 20 61 3A 20 73 62 63 l,de...or a: sbc
008C50: 20 68 6C 2C 64 65 3A 20 6F 72 20 61 3A 20 73 62 hl,de: or a: sb
008C60: 63 20 68 6C 2C 64 65 0D 0A 0D 0A 2E 69 6E 76 5F c hl,de.....inv_
008C70: 67 79 09 70 75 73 68 20 68 6C 0D 0A 09 20 6C 64 gy.push hl... ld
008C80: 20 6C 2C 28 69 78 2B 32 29 3A 20 6C 64 20 68 2C l,(ix+2): ld h,
008C90: 28 69 78 2B 33 29 0D 0A 09 20 61 64 64 20 68 6C (ix+3)... add hl
008CA0: 2C 68 6C 0D 0A 09 20 61 64 64 20 68 6C 2C 68 6C ,hl... add hl,hl
008CB0: 3A 20 63 70 20 34 3A 20 6A 72 20 7A 2C 69 6E 76 : cp 4: jr z,inv
008CC0: 5F 67 78 0D 0A 09 20 61 64 64 20 68 6C 2C 68 6C _gx... add hl,hl
008CD0: 3A 20 63 70 20 32 3A 20 6A 72 20 7A 2C 69 6E 76 : cp 2: jr z,inv
008CE0: 5F 67 78 0D 0A 09 20 61 64 64 20 68 6C 2C 68 6C _gx... add hl,hl
008CF0: 0D 0A 2E 69 6E 76 5F 67 78 09 20 65 78 20 64 65 ...inv_gx. ex de
008D00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008D10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008D20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008D30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008D40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008D50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008D60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008D70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008D80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008D90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008DA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008DB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008DC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008DD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008DE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008DF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008E00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008E10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008E20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008E30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008E40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008E50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008E60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008E70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008E80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008E90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008EA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008EB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008EC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008ED0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008EE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008EF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
008F00: 2C 68 6C 0D 0A 09 70 6F 70 20 68 6C 0D 0A 09 70 ,hl...pop hl...p
008F10: 75 73 68 20 64 65 3A 20 70 75 73 68 20 68 6C 0D ush de: push hl.
008F20: 0A 09 20 63 61 6C 6C 20 26 42 42 43 30 0D 0A 09 .. call &BBC0...
008F30: 20 6C 64 20 64 65 2C 31 3A 20 6C 64 20 68 6C 2C ld de,1: ld hl,
008F40: 26 46 46 46 45 3A 20 63 61 6C 6C 20 26 42 42 46 &FFFE: call &BBF
008F50: 33 09 3B 47 65 74 20 63 75 72 72 65 6E 74 20 73 3.;Get current s
008F60: 74 61 74 65 20 28 54 45 53 54 52 20 31 2C 2D 32 tate (TESTR 1,-2
008F70: 29 0D 0A 09 20 70 75 73 68 20 61 66 3A 20 6C 64 )... push af: ld
008F80: 20 64 65 2C 26 46 46 46 46 3A 20 6C 64 20 68 6C de,&FFFF: ld hl
008F90: 2C 32 3A 20 63 61 6C 6C 20 26 42 42 43 33 0D 0A ,2: call &BBC3..
008FA0: 09 20 70 6F 70 20 61 66 3A 20 78 6F 72 20 31 3A . pop af: xor 1:
008FB0: 20 63 61 6C 6C 20 26 42 42 44 45 09 09 3B 61 6E call &BBDE..;an
008FC0: 64 20 69 6E 76 65 72 74 20 70 65 6E 20 61 63 63 d invert pen acc
008FD0: 6F 72 64 69 6E 67 6C 79 0D 0A 09 20 63 61 6C 6C ordingly... call
008FE0: 20 73 71 75 61 72 65 09 09 09 09 3B 64 72 61 77 square....;draw
008FF0: 20 73 71 75 61 72 65 0D 0A 09 70 6F 70 20 68 6C square...pop hl
009000: 3A 20 70 6F 70 20 64 65 0D 0A 09 72 72 20 68 3A : pop de...rr h:
009010: 20 72 72 20 6C 0D 0A 09 63 61 6C 6C 20 26 42 43 rr l...call &BC
009020: 31 44 3A 20 72 65 73 20 30 2C 6C 09 09 09 3B 66 1D: res 0,l...;f
009030: 69 6E 64 20 73 63 72 65 65 6E 20 61 64 64 72 65 ind screen addre
009040: 73 73 0D 0A 0D 0A 09 6C 64 20 64 65 2C 67 70 61 ss.....ld de,gpa
009050: 74 74 3A 20 6C 64 20 62 2C 38 0D 0A 2E 69 6E 76 tt: ld b,8...inv
009060: 5F 63 6C 09 6C 64 20 61 2C 28 64 65 29 3A 20 6F _cl.ld a,(de): o
009070: 72 20 28 68 6C 29 3A 20 6C 64 20 28 68 6C 29 2C r (hl): ld (hl),
009080: 61 3A 20 69 6E 63 20 68 6C 3A 20 69 6E 63 20 64 a: inc hl: inc d
009090: 65 0D 0A 09 6C 64 20 61 2C 28 64 65 29 3A 20 6F e...ld a,(de): o
0090A0: 72 20 28 68 6C 29 3A 20 6C 64 20 28 68 6C 29 2C r (hl): ld (hl),
0090B0: 61 3A 20 64 65 63 20 68 6C 3A 20 69 6E 63 20 64 a: dec hl: inc d
0090C0: 65 0D 0A 09 63 61 6C 6C 20 26 42 43 32 36 3A 20 e...call &BC26:
0090D0: 64 6A 6E 7A 20 69 6E 76 5F 63 6C 0D 0A 09 72 65 djnz inv_cl...re
0090E0: 74 0D 0A 0D 0A 09 3B 53 75 62 72 6F 75 74 69 6E t.....;Subroutin
0090F0: 65 20 74 6F 20 64 72 61 77 20 73 71 75 61 72 65 e to draw square
009100: 4F 44 45 20 31 20 73 63 72 65 65 6E 20 74 6F 20 ODE 1 screen to
009110: 4D 4F 44 45 20 32 0D 0A 4D 4B 24 50 41 52 41 4D MODE 2..MK$PARAM
009120: 2E 09 4D 61 6B 65 20 73 74 72 69 6E 67 20 70 61 ..Make string pa
009130: 72 61 6D 65 74 65 72 20 66 6F 72 20 52 53 58 0D rameter for RSX.
009140: 0A 4D 55 4C 54 49 20 20 20 2E 09 4D 75 6C 74 69 .MULTI ..Multi
009150: 70 6C 79 20 48 4C 20 62 79 20 41 0D 0A 4E 4C 49 ply HL by A..NLI
009160: 4E 45 20 20 20 2E 09 47 6F 20 74 6F 20 6E 65 78 NE ..Go to nex
009170: 74 20 70 69 78 65 6C 20 6C 69 6E 65 20 64 6F 77 t pixel line dow
009180: 6E 0D 0A 50 44 45 43 41 20 20 20 2E 53 50 43 09 n..PDECA .SPC.
009190: 50 72 69 6E 74 20 41 20 61 73 20 73 70 61 63 65 Print A as space
0091A0: 64 20 64 65 63 69 6D 61 6C 0D 0A 50 44 45 43 48 d decimal..PDECH
0091B0: 4C 20 20 2E 09 50 72 69 6E 74 20 48 4C 20 61 73 L ..Print HL as
0091C0: 20 75 6E 73 70 61 63 65 64 20 64 65 63 69 6D 61 unspaced decima
0091D0: 6C 0D 0A 50 48 45 58 20 20 20 20 2E 09 50 72 69 l..PHEX ..Pri
0091E0: 6E 74 20 41 20 6F 72 20 48 4C 20 61 73 20 68 65 nt A or HL as he
0091F0: 78 0D 0A 50 53 47 20 20 20 20 20 2E 09 53 65 6E x..PSG ..Sen
009200: 64 20 73 6F 75 6E 64 20 63 68 69 70 20 72 65 67 d sound chip reg
009210: 69 73 74 65 72 0D 0A 50 53 54 52 49 4E 47 20 2E ister..PSTRING .
009220: 09 50 72 69 6E 74 20 73 74 72 69 6E 67 0D 0A 52 .Print string..R
009230: 45 41 44 52 45 47 20 2E 09 52 65 61 64 20 73 6F EADREG ..Read so
009240: 75 6E 64 20 63 68 69 70 20 72 65 67 69 73 74 65 und chip registe
009250: 72 0D 0A 53 50 43 53 43 41 4E 20 2E 09 53 63 61 r..SPCSCAN ..Sca
009260: 6E 20 6B 65 79 62 6F 61 72 64 20 66 6F 72 20 73 n keyboard for s
009270: 70 61 63 65 20 62 61 72 20 6F 6E 6C 79 0D 0A 53 pace bar only..S
009280: 50 45 43 43 4F 4E 56 2E 09 43 6F 6E 76 65 72 74 PECCONV..Convert
009290: 20 53 70 65 63 74 72 75 6D 2D 73 69 7A 65 64 20 Spectrum-sized
0092A0: 73 63 72 65 65 6E 0D 0A 55 43 41 53 45 20 20 20 screen..UCASE
0092B0: 2E 09 43 6F 6E 76 65 72 74 20 41 20 74 6F 20 75 ..Convert A to u
0092C0: 70 70 65 72 20 63 61 73 65 0D 0A 57 49 4E 4C 4F pper case..WINLO
0092D0: 41 44 20 2E 09 4C 6F 61 64 20 41 64 76 61 6E 63 AD ..Load Advanc
0092E0: 65 64 20 41 72 74 20 53 74 75 64 69 6F 20 77 69 ed Art Studio wi
0092F0: 6E 64 6F 77 0D 0A 1A 43 6F 6E 76 65 72 74 20 41 ndow...Convert A
009300: 20 62 6F 78 0D 0A 0D 0A 2E 73 71 75 61 72 65 09 box.....square.
009310: 6C 64 20 61 2C 28 67 6E 65 78 74 29 3A 20 6C 64 ld a,(gnext): ld
009320: 20 62 2C 61 3A 20 72 72 63 20 62 3A 20 72 72 63 b,a: rrc b: rrc
009330: 20 62 0D 0A 09 64 65 63 20 61 3A 20 6C 64 20 28 b...dec a: ld (
009340: 64 69 6D 65 6E 31 29 2C 61 0D 0A 09 6E 65 67 20 dimen1),a...neg
009350: 20 3A 20 6C 64 20 28 64 69 6D 65 6E 32 29 2C 61 : ld (dimen2),a
009360: 0D 0A 2E 73 71 6C 6F 6F 70 09 70 75 73 68 20 62 ...sqloop.push b
009370: 63 0D 0A 09 20 6C 64 20 64 65 2C 28 64 69 6D 65 c... ld de,(dime
009380: 6E 31 29 3A 20 6C 64 20 68 6C 2C 30 3A 20 63 61 n1): ld hl,0: ca
009390: 6C 6C 20 26 42 42 46 39 0D 0A 09 20 6C 64 20 64 ll &BBF9... ld d
0093A0: 65 2C 30 3A 20 6C 64 20 68 6C 2C 26 46 46 46 45 e,0: ld hl,&FFFE
0093B0: 3A 20 63 61 6C 6C 20 26 42 42 43 33 0D 0A 09 20 : call &BBC3...
0093C0: 6C 64 20 64 65 2C 28 64 69 6D 65 6E 32 29 3A 20 ld de,(dimen2):
0093D0: 6C 64 20 68 6C 2C 30 3A 20 63 61 6C 6C 20 26 42 ld hl,0: call &B
0093E0: 42 46 39 0D 0A 09 20 6C 64 20 64 65 2C 30 3A 20 BF9... ld de,0:
0093F0: 6C 64 20 68 6C 2C 26 46 46 46 45 3A 20 63 61 6C ld hl,&FFFE: cal
009400: 6C 20 26 42 42 43 33 0D 0A 09 70 6F 70 20 62 63 l &BBC3...pop bc
009410: 0D 0A 09 64 6A 6E 7A 20 73 71 6C 6F 6F 70 3A 20 ...djnz sqloop:
009420: 72 65 74 0D 0A 0D 0A 2E 64 69 6D 65 6E 31 09 64 ret.....dimen1.d
009430: 77 20 26 30 30 30 30 0D 0A 2E 64 69 6D 65 6E 32 w &0000...dimen2
009440: 09 64 77 20 26 46 46 30 30 0D 0A 0D 0A 09 3B 2A .dw &FF00.....;*
009450: 2A 2A 20 7C 47 52 49 44 2C 77 69 64 74 68 2C 68 ** |GRID,width,h
009460: 65 69 67 68 74 0D 0A 0D 0A 09 3B 53 69 7A 65 73 eight.....;Sizes
009470: 2E 2E 2E 09 63 68 61 72 61 63 74 65 72 20 09 6D ....character .m
009480: 61 78 69 6D 75 6D 20 64 69 6D 65 6E 73 69 6F 6E aximum dimension
009490: 0D 0A 09 3B 09 09 31 78 31 09 09 32 34 0D 0A 09 ...;..1x1..24...
0094A0: 3B 09 09 32 78 32 09 09 34 38 0D 0A 09 3B 09 09 ;..2x2..48...;..
0094B0: 34 78 34 09 09 39 36 0D 0A 0D 0A 2E 67 72 69 64 4x4..96.....grid
0094C0: 5F 69 09 6C 64 20 6C 2C 28 69 78 2B 30 29 3A 20 _i.ld l,(ix+0):
0094D0: 6C 64 20 68 2C 28 69 78 2B 31 29 0D 0A 09 6C 64 ld h,(ix+1)...ld
0094E0: 20 65 2C 28 69 78 2B 32 29 3A 20 6C 64 20 64 2C e,(ix+2): ld d,
0094F0: 28 69 78 2B 33 29 0D 0A 09 70 75 73 68 20 68 6C (ix+3)...push hl
009500: 50 45 43 43 4F 4E 56 2E 09 43 6F 6E 76 65 72 74 PECCONV..Convert
009510: 20 53 70 65 63 74 72 75 6D 2D 73 69 7A 65 64 20 Spectrum-sized
009520: 73 63 72 65 65 6E 0D 0A 55 43 41 53 45 20 20 20 screen..UCASE
009530: 2E 09 43 6F 6E 76 65 72 74 20 41 20 74 6F 20 75 ..Convert A to u
009540: 70 70 65 72 20 63 61 73 65 0D 0A 57 49 4E 4C 4F pper case..WINLO
009550: 41 44 20 2E 09 4C 6F 61 64 20 41 64 76 61 6E 63 AD ..Load Advanc
009560: 65 64 20 41 72 74 20 53 74 75 64 69 6F 20 77 69 ed Art Studio wi
009570: 6E 64 6F 77 0D 0A 1A 52 20 2E 09 46 61 64 65 20 ndow...R ..Fade
009580: 4F 44 45 20 31 20 73 63 72 65 65 6E 20 74 6F 20 ODE 1 screen to
009590: 4D 4F 44 45 20 32 0D 0A 4D 4B 24 50 41 52 41 4D MODE 2..MK$PARAM
0095A0: 2E 09 4D 61 6B 65 20 73 74 72 69 6E 67 20 70 61 ..Make string pa
0095B0: 72 61 6D 65 74 65 72 20 66 6F 72 20 52 53 58 0D rameter for RSX.
0095C0: 0A 4D 55 4C 54 49 20 20 20 2E 09 4D 75 6C 74 69 .MULTI ..Multi
0095D0: 70 6C 79 20 48 4C 20 62 79 20 41 0D 0A 4E 4C 49 ply HL by A..NLI
0095E0: 4E 45 20 20 20 2E 09 47 6F 20 74 6F 20 6E 65 78 NE ..Go to nex
0095F0: 74 20 70 69 78 65 6C 20 6C 69 6E 65 20 64 6F 77 t pixel line dow
009600: 6E 0D 0A 50 44 45 43 41 20 20 20 2E 53 50 43 09 n..PDECA .SPC.
009610: 50 72 69 6E 74 20 41 20 61 73 20 73 70 61 63 65 Print A as space
009620: 64 20 64 65 63 69 6D 61 6C 0D 0A 50 44 45 43 48 d decimal..PDECH
009630: 4C 20 20 2E 09 50 72 69 6E 74 20 48 4C 20 61 73 L ..Print HL as
009640: 20 75 6E 73 70 61 63 65 64 20 64 65 63 69 6D 61 unspaced decima
009650: 6C 0D 0A 50 48 45 58 20 20 20 20 2E 09 50 72 69 l..PHEX ..Pri
009660: 6E 74 20 41 20 6F 72 20 48 4C 20 61 73 20 68 65 nt A or HL as he
009670: 78 0D 0A 50 53 47 20 20 20 20 20 2E 09 53 65 6E x..PSG ..Sen
009680: 64 20 73 6F 75 6E 64 20 63 68 69 70 20 72 65 67 d sound chip reg
009690: 69 73 74 65 72 0D 0A 50 53 54 52 49 4E 47 20 2E ister..PSTRING .
0096A0: 09 50 72 69 6E 74 20 73 74 72 69 6E 67 0D 0A 52 .Print string..R
0096B0: 45 41 44 52 45 47 20 2E 09 52 65 61 64 20 73 6F EADREG ..Read so
0096C0: 75 6E 64 20 63 68 69 70 20 72 65 67 69 73 74 65 und chip registe
0096D0: 72 0D 0A 53 50 43 53 43 41 4E 20 2E 09 53 63 61 r..SPCSCAN ..Sca
0096E0: 6E 20 6B 65 79 62 6F 61 72 64 20 66 6F 72 20 73 n keyboard for s
0096F0: 70 61 63 65 20 62 61 72 20 6F 6E 6C 79 0D 0A 53 pace bar only..S
009700: 3A 20 73 62 63 20 68 6C 2C 64 65 3A 20 70 6F 70 : sbc hl,de: pop
009710: 20 68 6C 0D 0A 09 6A 72 20 6E 63 2C 67 6F 74 62 hl...jr nc,gotb
009720: 69 67 0D 0A 09 65 78 20 64 65 2C 68 6C 0D 0A 0D ig...ex de,hl...
009730: 0A 2E 67 6F 74 62 69 67 09 64 65 63 20 68 6C 3A ..gotbig.dec hl:
009740: 20 6C 64 20 64 65 2C 32 34 09 09 09 3B 48 4C 20 ld de,24...;HL
009750: 6E 6F 77 20 63 6F 6E 74 61 69 6E 73 20 6C 61 72 now contains lar
009760: 67 65 73 74 0D 0A 09 73 62 63 20 68 6C 2C 64 65 gest...sbc hl,de
009770: 3A 20 6A 72 20 63 2C 63 68 31 78 31 0D 0A 09 73 : jr c,ch1x1...s
009780: 62 63 20 68 6C 2C 64 65 3A 20 6A 72 20 63 2C 63 bc hl,de: jr c,c
009790: 68 32 78 32 0D 0A 2E 63 68 34 78 34 09 6C 64 20 h2x2...ch4x4.ld
0097A0: 61 2C 34 3A 20 6C 64 20 28 67 73 69 7A 65 29 2C a,4: ld (gsize),
0097B0: 61 0D 0A 09 6C 64 20 61 2C 34 3A 20 6C 64 20 28 a...ld a,4: ld (
0097C0: 67 6E 65 78 74 29 2C 61 0D 0A 09 6C 64 20 68 6C gnext),a...ld hl
0097D0: 2C 70 61 74 34 78 34 3A 20 6A 72 20 67 6F 74 63 ,pat4x4: jr gotc
0097E0: 68 0D 0A 2E 63 68 32 78 32 09 6C 64 20 61 2C 32 h...ch2x2.ld a,2
0097F0: 3A 20 6C 64 20 28 67 73 69 7A 65 29 2C 61 0D 0A : ld (gsize),a..
009800: 09 6C 64 20 61 2C 38 3A 20 6C 64 20 28 67 6E 65 .ld a,8: ld (gne
009810: 78 74 29 2C 61 0D 0A 09 6C 64 20 68 6C 2C 70 61 xt),a...ld hl,pa
009820: 74 32 78 32 3A 20 6A 72 20 67 6F 74 63 68 0D 0A t2x2: jr gotch..
009830: 2E 63 68 31 78 31 09 6C 64 20 61 2C 31 3A 20 6C .ch1x1.ld a,1: l
009840: 64 20 28 67 73 69 7A 65 29 2C 61 0D 0A 09 6C 64 d (gsize),a...ld
009850: 20 61 2C 31 36 3A 20 6C 64 20 28 67 6E 65 78 74 a,16: ld (gnext
009860: 29 2C 61 0D 0A 09 6C 64 20 68 6C 2C 70 61 74 31 ),a...ld hl,pat1
009870: 78 31 3A 20 6A 72 20 67 6F 74 63 68 0D 0A 0D 0A x1: jr gotch....
009880: 2E 67 6F 74 63 68 09 6C 64 20 64 65 2C 67 70 61 .gotch.ld de,gpa
009890: 74 74 09 09 09 09 3B 73 74 6F 72 65 20 61 70 70 tt....;store app
0098A0: 72 6F 70 72 69 61 74 65 20 70 61 74 74 65 72 6E ropriate pattern
0098B0: 0D 0A 09 6C 64 20 62 63 2C 31 36 3A 20 6C 64 69 ...ld bc,16: ldi
0098C0: 72 0D 0A 0D 0A 09 6C 64 20 64 65 2C 26 43 30 30 r.....ld de,&C00
0098D0: 30 3A 20 6C 64 20 63 2C 26 31 38 0D 0A 2E 63 6F 0: ld c,&18...co
0098E0: 6C 6F 6F 70 09 6C 64 20 62 2C 26 31 38 09 09 09 loop.ld b,&18...
0098F0: 09 3B 6E 65 77 20 6C 69 6E 65 0D 0A 2E 63 63 6C .;new line...ccl
009900: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
009910: 08 00 01 00 02 09 4E E5 08 00 C7 02 00 00 00 02 ......N.........
009920: 08 00 C3 02 00 00 00 02 08 00 C8 02 00 00 00 02 ................
009930: 08 00 C4 02 00 00 00 02 08 00 C9 02 00 00 00 02 ................
009940: 08 00 C5 02 00 00 00 02 08 00 C1 02 00 00 00 02 ................
009950: 08 00 C6 02 00 00 00 02 08 00 C2 02 00 00 00 02 ................
009960: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
009970: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
009980: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
009990: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0099A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0099B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0099C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0099D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0099E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0099F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
009A00: 0D 0A 09 20 63 61 6C 6C 20 69 6E 76 5F 5F 69 0D ... call inv__i.
009A10: 0A 09 20 6C 64 20 6C 2C 28 69 78 2B 32 29 3A 20 .. ld l,(ix+2):
009A20: 6C 64 20 68 2C 28 69 78 2B 33 29 3A 20 61 64 64 ld h,(ix+3): add
009A30: 20 68 6C 2C 68 6C 0D 0A 09 20 6C 64 20 64 65 2C hl,hl... ld de,
009A40: 33 39 32 3A 20 61 64 64 20 68 6C 2C 64 65 0D 0A 392: add hl,de..
009A50: 09 20 70 75 73 68 20 68 6C 0D 0A 09 20 20 6C 64 . push hl... ld
009A60: 20 65 2C 28 69 78 2B 30 29 3A 20 6C 64 20 64 2C e,(ix+0): ld d,
009A70: 28 69 78 2B 31 29 3A 20 6F 72 20 61 0D 0A 09 20 (ix+1): or a...
009A80: 20 6C 64 20 68 6C 2C 31 39 30 3A 20 73 62 63 20 ld hl,190: sbc
009A90: 68 6C 2C 64 65 3A 20 73 62 63 20 68 6C 2C 64 65 hl,de: sbc hl,de
009AA0: 0D 0A 09 20 70 6F 70 20 64 65 3A 20 63 61 6C 6C ... pop de: call
009AB0: 20 26 42 42 45 41 0D 0A 09 20 6C 64 20 64 65 2C &BBEA... ld de,
009AC0: 31 3A 20 6C 64 20 68 6C 2C 30 3A 20 63 61 6C 6C 1: ld hl,0: call
009AD0: 20 26 42 42 45 44 0D 0A 0D 0A 2E 70 6C 6F 74 5F &BBED.....plot_
009AE0: 30 09 20 6C 64 20 6C 2C 28 69 78 2B 32 29 3A 20 0. ld l,(ix+2):
009AF0: 6C 64 20 68 2C 28 69 78 2B 33 29 3A 20 64 65 63 ld h,(ix+3): dec
009B00: 20 68 6C 0D 0A 09 20 6C 64 20 28 69 78 2B 32 29 hl... ld (ix+2)
009B10: 2C 6C 3A 20 6C 64 20 28 69 78 2B 33 29 2C 68 3A ,l: ld (ix+3),h:
009B20: 20 6C 64 20 61 2C 68 3A 20 61 6E 64 20 6C 0D 0A ld a,h: and l..
009B30: 09 20 63 70 20 26 46 46 3A 20 6A 70 20 6E 7A 2C . cp &FF: jp nz,
009B40: 70 6C 6F 74 5F 6C 0D 0A 09 70 6F 70 20 68 6C 0D plot_l...pop hl.
009B50: 0A 09 6C 64 20 28 69 78 2B 32 29 2C 6C 3A 20 6C ..ld (ix+2),l: l
009B60: 64 20 28 69 78 2B 33 29 2C 68 0D 0A 09 6C 64 20 d (ix+3),h...ld
009B70: 6C 2C 28 69 78 2B 30 29 3A 20 6C 64 20 68 2C 28 l,(ix+0): ld h,(
009B80: 69 78 2B 31 29 3A 20 64 65 63 20 68 6C 0D 0A 09 ix+1): dec hl...
009B90: 6C 64 20 28 69 78 2B 30 29 2C 6C 3A 20 6C 64 20 ld (ix+0),l: ld
009BA0: 28 69 78 2B 31 29 2C 68 3A 20 6C 64 20 61 2C 68 (ix+1),h: ld a,h
009BB0: 3A 20 61 6E 64 20 6C 0D 0A 09 63 70 20 26 46 46 : and l...cp &FF
009BC0: 3A 20 6A 70 20 6E 7A 2C 70 6C 6F 74 5F 69 0D 0A : jp nz,plot_i..
009BD0: 09 72 65 74 0D 0A 0D 0A 09 3B 2A 2A 2A 20 7C 53 .ret.....;*** |S
009BE0: 45 54 2C 63 68 61 72 2C 78 2C 79 2C 6E 25 0D 0A ET,char,x,y,n%..
009BF0: 0D 0A 2E 73 65 74 5F 5F 69 09 63 61 6C 6C 20 63 ...set__i.call c
009C00: 0A 2E 72 6C 69 5F 6F 6C 09 6C 64 20 64 2C 30 0D ..rli_ol.ld d,0.
009C10: 0A 2E 72 6C 69 5F 6C 31 09 70 75 73 68 20 62 63 ..rli_l1.push bc
009C20: 3A 20 63 61 6C 6C 20 67 62 62 79 74 65 3A 20 70 : call gbbyte: p
009C30: 6F 70 20 62 63 0D 0A 09 6C 64 20 28 69 79 29 2C op bc...ld (iy),
009C40: 61 3A 20 69 6E 63 20 69 79 3A 20 69 6E 63 20 68 a: inc iy: inc h
009C50: 6C 0D 0A 09 69 6E 63 20 64 3A 20 6C 64 20 61 2C l...inc d: ld a,
009C60: 64 3A 20 63 70 20 65 3A 20 6A 72 20 6E 7A 2C 72 d: cp e: jr nz,r
009C70: 6C 69 5F 6C 31 0D 0A 2E 72 6C 69 5F 6C 32 09 6C li_l1...rli_l2.l
009C80: 64 20 28 69 79 29 2C 30 3A 20 69 6E 63 20 69 79 d (iy),0: inc iy
009C90: 0D 0A 09 69 6E 63 20 64 3A 20 6C 64 20 61 2C 64 ...inc d: ld a,d
009CA0: 3A 20 63 70 20 28 69 78 2B 32 29 3A 20 6A 72 20 : cp (ix+2): jr
009CB0: 6E 7A 2C 72 6C 69 5F 6C 32 0D 0A 09 64 65 63 20 nz,rli_l2...dec
009CC0: 63 3A 20 6A 72 20 6E 7A 2C 72 6C 69 5F 6F 6C 0D c: jr nz,rli_ol.
009CD0: 0A 09 6A 70 20 63 6F 70 79 5F 65 0D 0A 0D 0A 09 ..jp copy_e.....
009CE0: 3B 2A 2A 2A 20 7C 53 41 56 45 0D 0A 09 3B 20 20 ;*** |SAVE...;
009CF0: 20 20 66 69 6C 65 20 6D 75 73 74 20 61 6C 72 65 file must alre
009D00: 61 64 79 20 62 65 20 6F 70 65 6E 0D 0A 0D 0A 2E ady be open.....
009D10: 73 61 76 65 5F 69 09 70 75 73 68 20 69 78 3A 20 save_i.push ix:
009D20: 70 6F 70 20 69 79 0D 0A 0D 0A 09 6C 64 20 68 6C pop iy.....ld hl
009D30: 2C 66 69 6C 65 69 64 3A 20 6C 64 20 62 2C 31 30 ,fileid: ld b,10
009D40: 0D 0A 2E 73 63 68 6B 6C 70 09 6C 64 20 61 2C 28 ...schklp.ld a,(
009D50: 68 6C 29 3A 20 63 61 6C 6C 20 26 42 43 39 35 0D hl): call &BC95.
009D60: 0A 09 69 6E 63 20 68 6C 3A 20 64 6A 6E 7A 20 73 ..inc hl: djnz s
009D70: 63 68 6B 6C 70 0D 0A 0D 0A 09 6C 64 20 61 2C 28 chklp.....ld a,(
009D80: 68 65 69 67 68 74 29 3A 20 63 61 6C 6C 20 26 42 height): call &B
009D90: 43 39 35 0D 0A 09 6C 64 20 61 2C 28 6C 61 73 74 C95...ld a,(last
009DA0: 6C 66 29 3A 20 63 61 6C 6C 20 26 42 43 39 35 0D lf): call &BC95.
009DB0: 0A 0D 0A 09 6C 64 20 62 2C 33 32 0D 0A 2E 73 74 ....ld b,32...st
009DC0: 72 73 6C 70 09 70 75 73 68 20 62 63 0D 0A 09 20 rslp.push bc...
009DD0: 6C 64 20 61 2C 62 3A 20 63 61 6C 6C 20 73 74 61 ld a,b: call sta
009DE0: 64 64 72 09 09 09 3B 66 69 6E 64 20 73 74 61 72 ddr...;find star
009DF0: 74 20 61 64 64 72 65 73 73 0D 0A 09 20 63 61 6C t address... cal
009E00: 61 6C 63 78 79 3A 20 6C 64 20 63 2C 61 0D 0A 09 alcxy: ld c,a...
009E10: 6C 64 20 61 2C 28 69 78 29 3A 20 6F 72 20 61 3A ld a,(ix): or a:
009E20: 20 6A 72 20 6E 7A 2C 73 65 74 31 0D 0A 09 6C 64 jr nz,set1...ld
009E30: 20 61 2C 64 3A 20 63 70 6C 3A 20 61 6E 64 20 63 a,d: cpl: and c
009E40: 3A 20 6A 70 20 70 62 62 79 74 65 0D 0A 2E 73 65 : jp pbbyte...se
009E50: 74 31 09 6C 64 20 61 2C 64 3A 20 20 20 20 20 20 t1.ld a,d:
009E60: 6F 72 20 20 63 3A 20 6A 70 20 70 62 62 79 74 65 or c: jp pbbyte
009E70: 0D 0A 0D 0A 09 3B 2A 2A 2A 20 7C 47 45 54 2C 63 .....;*** |GET,c
009E80: 68 61 72 2C 78 2C 79 2C 40 6E 25 0D 0A 0D 0A 2E har,x,y,@n%.....
009E90: 67 65 74 5F 5F 69 09 63 61 6C 6C 20 63 61 6C 63 get__i.call calc
009EA0: 78 79 0D 0A 09 6C 64 20 6C 2C 28 69 78 29 3A 20 xy...ld l,(ix):
009EB0: 6C 64 20 68 2C 28 69 78 2B 31 29 0D 0A 09 61 6E ld h,(ix+1)...an
009EC0: 64 20 64 3A 20 6A 72 20 7A 2C 70 69 78 65 6C 30 d d: jr z,pixel0
009ED0: 0D 0A 09 6C 64 20 28 68 6C 29 2C 31 3A 20 69 6E ...ld (hl),1: in
009EE0: 63 20 68 6C 3A 20 6C 64 20 28 68 6C 29 2C 30 3A c hl: ld (hl),0:
009EF0: 20 72 65 74 09 3B 50 75 74 20 69 6E 74 6F 20 76 ret.;Put into v
009F00: 61 72 69 61 62 6C 65 0D 0A 2E 70 69 78 65 6C 30 ariable...pixel0
009F10: 09 6C 64 20 28 68 6C 29 2C 30 3A 20 69 6E 63 20 .ld (hl),0: inc
009F20: 68 6C 3A 20 6C 64 20 28 68 6C 29 2C 30 3A 20 72 hl: ld (hl),0: r
009F30: 65 74 0D 0A 0D 0A 09 3B 2B 2B 2B 20 53 75 62 72 et.....;+++ Subr
009F40: 6F 75 74 69 6E 65 20 74 6F 20 63 61 6C 63 75 6C outine to calcul
009F50: 61 74 65 20 78 79 70 6F 73 20 28 72 65 74 75 72 ate xypos (retur
009F60: 6E 73 20 61 64 64 72 20 48 4C 2C 20 76 61 6C 75 ns addr HL, valu
009F70: 65 20 41 2C 20 6D 61 73 6B 20 44 29 0D 0A 0D 0A e A, mask D)....
009F80: 2E 63 61 6C 63 78 79 09 6C 64 20 61 2C 28 69 78 .calcxy.ld a,(ix
009F90: 2B 36 29 0D 0A 09 63 61 6C 6C 20 73 74 61 64 64 +6)...call stadd
009FA0: 72 3A 20 63 61 6C 6C 20 67 62 62 79 74 65 0D 0A r: call gbbyte..
009FB0: 09 6C 64 20 65 2C 61 3A 20 6C 64 20 64 2C 30 0D .ld e,a: ld d,0.
009FC0: 0A 09 69 6E 63 20 68 6C 3A 20 6C 64 20 61 2C 28 ..inc hl: ld a,(
009FD0: 69 78 2B 32 29 0D 0A 0D 0A 2E 67 65 74 69 79 6C ix+2).....getiyl
009FE0: 09 63 70 20 37 3A 20 6A 72 20 63 2C 67 65 74 69 .cp 7: jr c,geti
009FF0: 73 63 09 09 3B 46 69 6E 64 20 73 74 61 72 74 20 sc..;Find start
00A000: 6C 20 67 62 62 79 74 65 3A 20 6C 64 20 64 2C 61 l gbbyte: ld d,a
00A010: 3A 20 63 61 6C 6C 20 26 42 43 39 35 09 3B 63 6F : call &BC95.;co
00A020: 70 79 20 22 77 69 64 74 68 22 20 62 79 74 65 0D py "width" byte.
00A030: 0A 0D 0A 09 20 6C 64 20 61 2C 28 68 65 69 67 68 .... ld a,(heigh
00A040: 74 29 3A 20 6C 64 20 62 2C 61 0D 0A 2E 73 74 6F t): ld b,a...sto
00A050: 73 6C 70 09 20 6C 64 20 63 2C 64 0D 0A 2E 73 74 slp. ld c,d...st
00A060: 62 73 6C 70 09 20 69 6E 63 20 68 6C 09 09 09 09 bslp. inc hl....
00A070: 09 3B 63 6F 70 79 20 65 61 63 68 20 63 68 61 72 .;copy each char
00A080: 61 63 74 65 72 0D 0A 09 20 70 75 73 68 20 62 63 acter... push bc
00A090: 0D 0A 09 20 20 63 61 6C 6C 20 67 62 62 79 74 65 ... call gbbyte
00A0A0: 3A 20 63 61 6C 6C 20 26 42 43 39 35 0D 0A 09 20 : call &BC95...
00A0B0: 70 6F 70 20 62 63 0D 0A 09 20 64 65 63 20 63 3A pop bc... dec c:
00A0C0: 20 6A 72 20 6E 7A 2C 73 74 62 73 6C 70 0D 0A 09 jr nz,stbslp...
00A0D0: 20 64 6A 6E 7A 20 73 74 6F 73 6C 70 0D 0A 09 70 djnz stoslp...p
00A0E0: 6F 70 20 62 63 0D 0A 09 69 6E 63 20 62 3A 20 6C op bc...inc b: l
00A0F0: 64 20 61 2C 31 32 33 09 09 09 09 3B 72 65 70 65 d a,123....;repe
00A100: 61 74 20 75 6E 74 69 6C 20 66 69 6E 69 73 68 65 at until finishe
00A110: 64 2E 2E 2E 21 0D 0A 09 63 70 20 62 3A 20 6A 72 d...!...cp b: jr
00A120: 20 6E 7A 2C 73 74 72 73 6C 70 0D 0A 0D 0A 09 63 nz,strslp.....c
00A130: 61 6C 6C 20 26 42 43 38 46 09 09 09 09 3B 63 6C all &BC8F....;cl
00A140: 6F 73 65 20 6F 75 74 70 75 74 20 66 69 6C 65 0D ose output file.
00A150: 0A 09 72 65 74 0D 0A 0D 0A 09 3B 2A 2A 2A 20 7C ..ret.....;*** |
00A160: 4C 4F 41 44 2C 40 68 65 69 67 68 74 0D 0A 09 3B LOAD,@height...;
00A170: 20 20 20 20 66 69 6C 65 20 6D 75 73 74 20 61 6C file must al
00A180: 72 65 61 64 79 20 62 65 20 6F 70 65 6E 0D 0A 0D ready be open...
00A190: 0A 2E 6C 6F 61 64 5F 69 09 70 75 73 68 20 69 78 ..load_i.push ix
00A1A0: 3A 20 70 6F 70 20 69 79 0D 0A 0D 0A 09 6C 64 20 : pop iy.....ld
00A1B0: 63 2C 32 35 35 3A 20 6C 64 20 62 2C 31 30 0D 0A c,255: ld b,10..
00A1C0: 2E 63 68 6B 6C 70 09 63 61 6C 6C 20 26 42 43 38 .chklp.call &BC8
00A1D0: 30 0D 0A 09 78 6F 72 20 63 3A 20 6C 64 20 63 2C 0...xor c: ld c,
00A1E0: 61 0D 0A 09 64 6A 6E 7A 20 63 68 6B 6C 70 0D 0A a...djnz chklp..
00A1F0: 0D 0A 09 6C 64 20 61 2C 63 3A 20 6C 64 20 63 2C ...ld a,c: ld c,
00A200: 61 64 64 72 65 73 73 20 28 79 29 0D 0A 09 73 75 address (y)...su
00A210: 62 20 37 3A 20 61 64 64 20 68 6C 2C 64 65 3A 20 b 7: add hl,de:
00A220: 6A 72 20 67 65 74 69 79 6C 0D 0A 0D 0A 2E 67 65 jr getiyl.....ge
00A230: 74 69 73 63 09 6C 64 20 65 2C 28 69 78 2B 34 29 tisc.ld e,(ix+4)
00A240: 3A 20 6C 64 20 64 2C 28 69 78 2B 35 29 09 3B 46 : ld d,(ix+5).;F
00A250: 69 6E 64 20 73 74 61 72 74 20 61 64 64 72 65 73 ind start addres
00A260: 73 20 28 79 2B 78 29 0D 0A 09 61 64 64 20 68 6C s (y+x)...add hl
00A270: 2C 64 65 0D 0A 09 6C 64 20 64 2C 36 34 09 09 09 ,de...ld d,64...
00A280: 09 3B 43 61 6C 63 75 6C 61 74 65 20 62 69 74 77 .;Calculate bitw
00A290: 69 73 65 20 76 61 6C 75 65 0D 0A 2E 63 6C 63 62 ise value...clcb
00A2A0: 69 74 09 6F 72 20 61 3A 20 6A 72 20 7A 2C 67 6F it.or a: jr z,go
00A2B0: 74 62 69 74 0D 0A 09 72 72 63 20 64 3A 20 64 65 tbit...rrc d: de
00A2C0: 63 20 61 3A 20 6A 72 20 63 6C 63 62 69 74 0D 0A c a: jr clcbit..
00A2D0: 0D 0A 2E 67 6F 74 62 69 74 09 6A 70 20 67 62 62 ...gotbit.jp gbb
00A2E0: 79 74 65 09 09 09 3B 47 65 74 20 62 79 74 65 0D yte...;Get byte.
00A2F0: 0A 0D 0A 09 3B 2A 2A 2A 20 7C 52 53 58 4F 46 46 ....;*** |RSXOFF
00A300: 0D 0A 0D 0A 2E 72 73 78 6F 5F 69 09 6C 64 20 68 .....rsxo_i.ld h
00A310: 6C 2C 28 26 42 43 44 32 29 3A 20 72 65 73 20 37 l,(&BCD2): res 7
00A320: 2C 68 0D 0A 09 63 61 6C 6C 20 26 42 39 30 36 09 ,h...call &B906.
00A330: 09 09 3B 6C 6F 77 65 72 20 52 4F 4D 20 6F 6E 0D ..;lower ROM on.
00A340: 0A 09 69 6E 63 20 68 6C 3A 20 69 6E 63 20 68 6C ..inc hl: inc hl
00A350: 3A 20 69 6E 63 20 68 6C 0D 0A 09 6C 64 20 65 2C : inc hl...ld e,
00A360: 28 68 6C 29 3A 20 69 6E 63 20 68 6C 0D 0A 09 6C (hl): inc hl...l
00A370: 64 20 64 2C 28 68 6C 29 3A 20 70 75 73 68 20 64 d d,(hl): push d
00A380: 65 3A 20 65 78 20 64 65 2C 68 6C 09 3B 48 4C 3D e: ex de,hl.;HL=
00A390: 77 6F 72 6B 73 70 61 63 65 20 70 6F 69 6E 74 65 workspace pointe
00A3A0: 72 0D 0A 09 20 6C 64 20 65 2C 28 68 6C 29 3A 20 r... ld e,(hl):
00A3B0: 69 6E 63 20 68 6C 0D 0A 09 20 6C 64 20 64 2C 28 inc hl... ld d,(
00A3C0: 68 6C 29 3A 20 65 78 20 64 65 2C 68 6C 09 09 3B hl): ex de,hl..;
00A3D0: 48 4C 3D 61 64 64 72 65 73 73 20 6F 66 20 52 53 HL=address of RS
00A3E0: 58 20 77 6F 72 6B 73 70 61 63 65 0D 0A 09 20 6C X workspace... l
00A3F0: 64 20 65 2C 28 68 6C 29 3A 20 69 6E 63 20 68 6C d e,(hl): inc hl
00A400: 31 0D 0A 09 63 70 20 32 34 30 3A 20 6A 70 20 6E 1...cp 240: jp n
00A410: 7A 2C 6C 64 65 72 72 0D 0A 0D 0A 09 63 61 6C 6C z,lderr.....call
00A420: 20 26 42 43 38 30 3A 20 6C 64 20 28 68 65 69 67 &BC80: ld (heig
00A430: 68 74 29 2C 61 0D 0A 09 63 61 6C 6C 20 26 42 43 ht),a...call &BC
00A440: 38 30 3A 20 6C 64 20 28 6C 61 73 74 6C 66 29 2C 80: ld (lastlf),
00A450: 61 0D 0A 0D 0A 09 6C 64 20 62 2C 33 32 0D 0A 0D a.....ld b,32...
00A460: 0A 2E 73 74 72 5F 6C 70 09 70 75 73 68 20 62 63 ..str_lp.push bc
00A470: 0D 0A 09 20 6C 64 20 61 2C 62 3A 20 63 61 6C 6C ... ld a,b: call
00A480: 20 73 74 61 64 64 72 09 09 3B 66 69 6E 64 20 73 staddr..;find s
00A490: 74 61 72 74 20 61 64 64 72 65 73 73 0D 0A 09 20 tart address...
00A4A0: 63 61 6C 6C 20 26 42 43 38 30 3A 20 63 61 6C 6C call &BC80: call
00A4B0: 20 70 62 62 79 74 65 09 3B 70 75 74 20 62 79 74 pbbyte.;put byt
00A4C0: 65 0D 0A 09 20 6C 64 20 64 2C 61 0D 0A 0D 0A 09 e... ld d,a.....
00A4D0: 20 6C 64 20 61 2C 28 68 65 69 67 68 74 29 3A 20 ld a,(height):
00A4E0: 6C 64 20 62 2C 61 0D 0A 2E 73 74 6F 5F 6C 70 09 ld b,a...sto_lp.
00A4F0: 20 6C 64 20 63 2C 64 0D 0A 2E 73 74 62 5F 6C 70 ld c,d...stb_lp
00A500: 09 20 69 6E 63 20 68 6C 0D 0A 09 20 70 75 73 68 . inc hl... push
00A510: 20 62 63 3A 20 63 61 6C 6C 20 26 42 43 38 30 3A bc: call &BC80:
00A520: 20 63 61 6C 6C 20 70 62 62 79 74 65 3A 20 70 6F call pbbyte: po
00A530: 70 20 62 63 0D 0A 09 20 64 65 63 20 63 3A 20 6A p bc... dec c: j
00A540: 72 20 6E 7A 2C 73 74 62 5F 6C 70 0D 0A 09 20 64 r nz,stb_lp... d
00A550: 6A 6E 7A 20 73 74 6F 5F 6C 70 0D 0A 0D 0A 09 70 jnz sto_lp.....p
00A560: 6F 70 20 62 63 0D 0A 09 69 6E 63 20 62 3A 20 6C op bc...inc b: l
00A570: 64 20 61 2C 31 32 33 0D 0A 09 63 70 20 62 20 3A d a,123...cp b :
00A580: 20 6A 72 20 6E 7A 2C 73 74 72 5F 6C 70 0D 0A 09 jr nz,str_lp...
00A590: 63 61 6C 6C 20 26 42 43 37 41 09 09 09 3B 63 6C call &BC7A...;cl
00A5A0: 6F 73 65 20 69 6E 70 75 74 20 66 69 6C 65 0D 0A ose input file..
00A5B0: 0D 0A 09 6C 64 20 68 6C 2C 30 3A 20 6C 64 20 61 ...ld hl,0: ld a
00A5C0: 2C 28 68 65 69 67 68 74 29 09 09 3B 63 61 6C 63 ,(height)..;calc
00A5D0: 75 6C 61 74 65 20 68 65 69 67 68 74 0D 0A 09 64 ulate height...d
00A5E0: 65 63 20 61 20 20 3A 20 6A 72 20 7A 2C 6C 61 73 ec a : jr z,las
00A5F0: 74 68 74 0D 0A 09 6C 64 20 65 2C 61 20 3A 20 6C tht...ld e,a : l
00A600: 4E 45 57 2C 68 65 69 67 68 74 2C 6C 61 73 74 6C NEW,height,lastl
00A610: 66 2C 63 68 61 72 0D 0A 0D 0A 2E 6E 65 77 5F 5F f,char.....new__
00A620: 69 09 6C 64 20 61 2C 28 69 78 2B 34 29 20 3A 20 i.ld a,(ix+4) :
00A630: 6C 64 20 28 68 65 69 67 68 74 29 2C 61 0D 0A 09 ld (height),a...
00A640: 6C 64 20 61 2C 28 69 78 2B 32 29 20 3A 20 6C 64 ld a,(ix+2) : ld
00A650: 20 28 6C 61 73 74 6C 66 29 2C 61 0D 0A 09 6C 64 (lastlf),a...ld
00A660: 20 68 6C 2C 62 75 66 66 65 72 3A 20 6C 64 20 64 hl,buffer: ld d
00A670: 65 2C 62 75 66 66 65 72 2B 31 0D 0A 09 6C 64 20 e,buffer+1...ld
00A680: 62 63 2C 35 31 31 20 20 20 3A 20 6C 64 20 28 68 bc,511 : ld (h
00A690: 6C 29 2C 30 3A 20 6C 64 69 72 0D 0A 09 6C 64 20 l),0: ldir...ld
00A6A0: 68 6C 2C 62 75 66 66 65 72 3A 20 6C 64 20 28 68 hl,buffer: ld (h
00A6B0: 6C 29 2C 34 0D 0A 09 6A 72 20 63 6F 70 79 5F 65 l),4...jr copy_e
00A6C0: 0D 0A 0D 0A 09 3B 2A 2A 2A 20 7C 43 4F 50 59 2C .....;*** |COPY,
00A6D0: 66 72 6F 6D 2C 74 6F 0D 0A 0D 0A 2E 63 6F 70 79 from,to.....copy
00A6E0: 5F 69 09 6C 64 20 61 2C 28 69 78 2B 32 29 3A 20 _i.ld a,(ix+2):
00A6F0: 63 61 6C 6C 20 73 74 61 64 64 72 0D 0A 09 6C 64 call staddr...ld
00A700: 20 61 2C 68 3A 20 72 6C 63 61 3A 20 72 6C 63 61 a,h: rlca: rlca
00A710: 3A 20 61 6E 64 20 33 3A 20 61 64 64 20 26 43 34 : and 3: add &C4
00A720: 0D 0A 09 6C 64 20 62 2C 26 37 46 3A 20 6F 75 74 ...ld b,&7F: out
00A730: 20 28 63 29 2C 61 3A 20 72 65 73 20 37 2C 68 3A (c),a: res 7,h:
00A740: 20 73 65 74 20 36 2C 68 0D 0A 09 6C 64 20 64 65 set 6,h...ld de
00A750: 2C 62 75 66 66 65 72 3A 20 6C 64 20 62 63 2C 35 ,buffer: ld bc,5
00A760: 31 32 3A 20 6C 64 69 72 0D 0A 0D 0A 2E 63 6F 70 12: ldir.....cop
00A770: 79 5F 65 09 6C 64 20 61 2C 28 69 78 2B 30 29 3A y_e.ld a,(ix+0):
00A780: 20 63 61 6C 6C 20 73 74 61 64 64 72 0D 0A 09 6C call staddr...l
00A790: 64 20 61 2C 68 3A 20 72 6C 63 61 3A 20 72 6C 63 d a,h: rlca: rlc
00A7A0: 61 3A 20 61 6E 64 20 33 3A 20 61 64 64 20 26 43 a: and 3: add &C
00A7B0: 34 0D 0A 09 6C 64 20 62 2C 26 37 46 3A 20 6F 75 4...ld b,&7F: ou
00A7C0: 74 20 28 63 29 2C 61 3A 20 72 65 73 20 37 2C 68 t (c),a: res 7,h
00A7D0: 3A 20 73 65 74 20 36 2C 68 0D 0A 09 65 78 20 64 : set 6,h...ex d
00A7E0: 65 2C 68 6C 3A 20 6C 64 20 68 6C 2C 62 75 66 66 e,hl: ld hl,buff
00A7F0: 65 72 3A 20 6C 64 20 62 63 2C 35 31 32 3A 20 6C er: ld bc,512: l
00A800: 64 20 64 2C 30 0D 0A 09 6C 64 20 62 2C 37 0D 0A d d,0...ld b,7..
00A810: 2E 6D 75 6C 74 5F 6C 09 61 64 64 20 68 6C 2C 64 .mult_l.add hl,d
00A820: 65 0D 0A 09 64 6A 6E 7A 20 6D 75 6C 74 5F 6C 0D e...djnz mult_l.
00A830: 0A 0D 0A 2E 6C 61 73 74 68 74 09 6C 64 20 61 2C ....lastht.ld a,
00A840: 28 6C 61 73 74 6C 66 29 0D 0A 09 6C 64 20 65 2C (lastlf)...ld e,
00A850: 61 3A 20 6C 64 20 64 2C 30 3A 20 61 64 64 20 68 a: ld d,0: add h
00A860: 6C 2C 64 65 0D 0A 09 65 78 20 64 65 2C 68 6C 0D l,de...ex de,hl.
00A870: 0A 09 6C 64 20 6C 2C 28 69 79 29 3A 20 6C 64 20 ..ld l,(iy): ld
00A880: 68 2C 28 69 79 2B 31 29 09 09 3B 70 6C 61 63 65 h,(iy+1)..;place
00A890: 20 69 6E 20 76 61 72 69 61 62 6C 65 0D 0A 09 6C in variable...l
00A8A0: 64 20 28 68 6C 29 2C 65 3A 20 69 6E 63 20 68 6C d (hl),e: inc hl
00A8B0: 0D 0A 09 6C 64 20 28 68 6C 29 2C 64 3A 20 72 65 ...ld (hl),d: re
00A8C0: 74 0D 0A 0D 0A 2E 6C 64 65 72 72 09 63 61 6C 6C t.....lderr.call
00A8D0: 20 26 42 43 37 44 3A 20 72 65 74 0D 0A 0D 0A 09 &BC7D: ret.....
00A8E0: 3B 2A 2A 2A 20 7C 57 49 44 54 48 2C 63 68 61 72 ;*** |WIDTH,char
00A8F0: 2C 40 6E 25 0D 0A 0D 0A 2E 77 69 64 74 5F 69 09 ,@n%.....widt_i.
00A900: 6C 64 20 61 2C 28 69 78 2B 32 29 0D 0A 09 63 61 ld a,(ix+2)...ca
00A910: 6C 6C 20 73 74 61 64 64 72 3A 20 63 61 6C 6C 20 ll staddr: call
00A920: 67 62 62 79 74 65 0D 0A 09 6C 64 20 6C 2C 28 69 gbbyte...ld l,(i
00A930: 78 2B 30 29 3A 20 6C 64 20 68 2C 28 69 78 2B 31 x+0): ld h,(ix+1
00A940: 29 0D 0A 09 6C 64 20 28 68 6C 29 2C 61 20 20 3A )...ld (hl),a :
00A950: 20 69 6E 63 20 68 6C 0D 0A 09 6C 64 20 28 68 6C inc hl...ld (hl
00A960: 29 2C 30 20 20 3A 20 72 65 74 0D 0A 0D 0A 09 3B ),0 : ret.....;
00A970: 2A 2A 2A 20 7C 50 4C 4F 54 2C 63 68 61 72 2C 78 *** |PLOT,char,x
00A980: 2C 79 0D 0A 0D 0A 2E 70 6C 6F 74 5F 69 09 6C 64 ,y.....plot_i.ld
00A990: 20 6C 2C 28 69 78 2B 32 29 3A 20 6C 64 20 68 2C l,(ix+2): ld h,
00A9A0: 28 69 78 2B 33 29 0D 0A 09 70 75 73 68 20 68 6C (ix+3)...push hl
00A9B0: 0D 0A 2E 70 6C 6F 74 5F 6C 09 20 64 65 63 20 69 ...plot_l. dec i
00A9C0: 78 3A 20 64 65 63 20 69 78 3A 20 63 61 6C 6C 20 x: dec ix: call
00A9D0: 63 61 6C 63 78 79 0D 0A 09 20 69 6E 63 20 69 78 calcxy... inc ix
00A9E0: 3A 20 69 6E 63 20 69 78 0D 0A 09 20 61 6E 64 20 : inc ix... and
00A9F0: 64 3A 20 6A 72 20 7A 2C 70 6C 6F 74 5F 30 0D 0A d: jr z,plot_0..
00AA00: 64 69 72 0D 0A 0D 0A 09 6C 64 20 62 63 2C 26 37 dir.....ld bc,&7
00AA10: 46 43 30 3A 20 6F 75 74 20 28 63 29 2C 63 3A 20 FC0: out (c),c:
00AA20: 72 65 74 0D 0A 0D 0A 09 3B 2A 2A 2A 20 7C 52 45 ret.....;*** |RE
00AA30: 44 4F 2C 77 69 64 74 68 2C 63 68 61 72 61 63 74 DO,width,charact
00AA40: 65 72 0D 0A 0D 0A 2E 72 65 64 6F 5F 69 09 6C 64 er.....redo_i.ld
00AA50: 20 69 79 2C 62 75 66 66 65 72 3A 20 6C 64 20 61 iy,buffer: ld a
00AA60: 2C 28 69 78 2B 32 29 0D 0A 09 6C 64 20 28 69 79 ,(ix+2)...ld (iy
00AA70: 29 2C 61 3A 20 69 6E 63 20 69 79 0D 0A 0D 0A 09 ),a: inc iy.....
00AA80: 6C 64 20 61 2C 28 69 78 2B 30 29 3A 20 63 61 6C ld a,(ix+0): cal
00AA90: 6C 20 73 74 61 64 64 72 0D 0A 09 63 61 6C 6C 20 l staddr...call
00AAA0: 67 62 62 79 74 65 3A 20 69 6E 63 20 68 6C 0D 0A gbbyte: inc hl..
00AAB0: 09 63 70 20 28 69 78 2B 32 29 3A 20 72 65 74 20 .cp (ix+2): ret
00AAC0: 7A 09 09 3B 52 65 74 75 72 6E 20 69 66 20 77 69 z..;Return if wi
00AAD0: 64 74 68 20 74 68 65 20 73 61 6D 65 0D 0A 09 6A dth the same...j
00AAE0: 72 20 63 2C 6C 61 72 67 65 72 0D 0A 0D 0A 09 6C r c,larger.....l
00AAF0: 64 20 62 63 2C 28 68 65 69 67 68 74 29 09 09 09 d bc,(height)...
00AB00: 3B 4E 65 77 20 6F 6E 65 20 73 6D 61 6C 6C 65 72 ;New one smaller
00AB10: 0D 0A 09 6C 64 20 65 2C 61 3A 20 6C 64 20 64 2C ...ld e,a: ld d,
00AB20: 30 0D 0A 2E 72 73 69 5F 6F 6C 09 70 75 73 68 20 0...rsi_ol.push
00AB30: 68 6C 0D 0A 09 20 6C 64 20 62 2C 28 69 78 2B 32 hl... ld b,(ix+2
00AB40: 29 0D 0A 2E 72 73 69 5F 6C 70 09 20 70 75 73 68 )...rsi_lp. push
00AB50: 20 62 63 3A 20 63 61 6C 6C 20 67 62 62 79 74 65 bc: call gbbyte
00AB60: 3A 20 70 6F 70 20 62 63 0D 0A 09 20 6C 64 20 28 : pop bc... ld (
00AB70: 69 79 29 2C 61 3A 20 69 6E 63 20 69 79 3A 20 69 iy),a: inc iy: i
00AB80: 6E 63 20 68 6C 0D 0A 09 20 64 6A 6E 7A 20 72 73 nc hl... djnz rs
00AB90: 69 5F 6C 70 0D 0A 09 70 6F 70 20 68 6C 3A 20 61 i_lp...pop hl: a
00ABA0: 64 64 20 68 6C 2C 64 65 0D 0A 09 64 65 63 20 63 dd hl,de...dec c
00ABB0: 3A 20 6A 72 20 6E 7A 2C 72 73 69 5F 6F 6C 0D 0A : jr nz,rsi_ol..
00ABC0: 09 6A 70 20 63 6F 70 79 5F 65 0D 0A 0D 0A 2E 6C .jp copy_e.....l
00ABD0: 61 72 67 65 72 09 6C 64 20 62 63 2C 28 68 65 69 arger.ld bc,(hei
00ABE0: 67 68 74 29 09 09 09 3B 4E 65 77 20 6F 6E 65 20 ght)...;New one
00ABF0: 6C 61 72 67 65 72 0D 0A 09 6C 64 20 65 2C 61 0D larger...ld e,a.
00AC00: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
00AC10: 09 00 01 00 02 09 4E E5 09 00 C1 02 00 00 00 02 ......N.........
00AC20: 09 00 C6 02 00 00 00 02 09 00 C2 02 00 00 00 02 ................
00AC30: 09 00 C7 02 00 00 00 02 09 00 C3 02 00 00 00 02 ................
00AC40: 09 00 C8 02 00 00 00 02 09 00 C4 02 00 00 00 02 ................
00AC50: 09 00 C9 02 00 00 00 02 09 00 C5 02 00 00 00 02 ................
00AC60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00AC70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00AC80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00AC90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00ACA0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00ACB0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00ACC0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00ACD0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00ACE0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00ACF0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00AD00: 0D 0A 09 6C 64 20 64 2C 28 68 6C 29 3A 20 70 6F ...ld d,(hl): po
00AD10: 70 20 69 78 09 09 3B 44 45 3D 61 64 64 72 65 73 p ix..;DE=addres
00AD20: 73 20 6F 66 20 6E 65 78 74 20 52 53 58 20 77 6F s of next RSX wo
00AD30: 72 6B 73 70 61 63 65 0D 0A 09 6C 64 20 28 69 78 rkspace...ld (ix
00AD40: 29 2C 65 3A 20 6C 64 20 28 69 78 2B 31 29 2C 64 ),e: ld (ix+1),d
00AD50: 09 09 3B 75 70 64 61 74 65 20 77 6F 72 6B 73 70 ..;update worksp
00AD60: 61 63 65 20 70 6F 69 6E 74 65 72 0D 0A 09 63 61 ace pointer...ca
00AD70: 6C 6C 20 26 42 39 30 43 09 09 09 3B 72 65 73 74 ll &B90C...;rest
00AD80: 6F 72 65 20 52 4F 4D 20 73 74 61 74 65 0D 0A 09 ore ROM state...
00AD90: 72 65 74 0D 0A 0D 0A 09 3B 2A 2A 2A 20 53 75 62 ret.....;*** Sub
00ADA0: 72 6F 75 74 69 6E 65 73 0D 0A 0D 0A 09 3B 2B 2B routines.....;++
00ADB0: 2B 20 47 65 74 20 62 79 74 65 20 66 72 6F 6D 20 + Get byte from
00ADC0: 48 4C 20 69 6E 20 73 65 63 6F 6E 64 20 36 34 6B HL in second 64k
00ADD0: 20 28 63 6F 72 72 75 70 74 73 20 42 43 29 0D 0A (corrupts BC)..
00ADE0: 0D 0A 2E 67 62 62 79 74 65 09 70 75 73 68 20 68 ...gbbyte.push h
00ADF0: 6C 0D 0A 0D 0A 09 20 6C 64 20 61 2C 68 0D 0A 09 l..... ld a,h...
00AE00: 20 72 6C 63 61 3A 20 72 6C 63 61 0D 0A 09 20 61 rlca: rlca... a
00AE10: 6E 64 20 33 3A 20 61 64 64 20 26 43 34 0D 0A 0D nd 3: add &C4...
00AE20: 0A 09 20 6C 64 20 62 2C 26 37 46 0D 0A 09 20 6F .. ld b,&7F... o
00AE30: 75 74 20 28 63 29 2C 61 0D 0A 0D 0A 09 20 72 65 ut (c),a..... re
00AE40: 73 20 37 2C 68 3A 20 73 65 74 20 36 2C 68 0D 0A s 7,h: set 6,h..
00AE50: 09 20 6C 64 20 61 2C 28 68 6C 29 0D 0A 0D 0A 09 . ld a,(hl).....
00AE60: 70 6F 70 20 68 6C 0D 0A 09 6C 64 20 62 63 2C 26 pop hl...ld bc,&
00AE70: 37 46 43 30 3A 20 6F 75 74 20 28 63 29 2C 63 0D 7FC0: out (c),c.
00AE80: 0A 09 72 65 74 0D 0A 0D 0A 09 3B 2B 2B 2B 20 50 ..ret.....;+++ P
00AE90: 75 74 20 62 79 74 65 20 74 6F 20 48 4C 20 69 6E ut byte to HL in
00AEA0: 20 73 65 63 6F 6E 64 20 36 34 6B 20 28 63 6F 72 second 64k (cor
00AEB0: 72 75 70 74 73 20 42 43 29 0D 0A 0D 0A 2E 70 62 rupts BC).....pb
00AEC0: 62 79 74 65 09 70 75 73 68 20 68 6C 3A 20 70 75 byte.push hl: pu
00AED0: 73 68 20 61 66 0D 0A 09 20 6C 64 20 61 2C 68 0D sh af... ld a,h.
00AEE0: 0A 09 20 72 6C 63 61 3A 20 72 6C 63 61 0D 0A 09 .. rlca: rlca...
00AEF0: 20 61 6E 64 20 33 3A 20 61 64 64 20 26 43 34 0D and 3: add &C4.
00AF00: 33 3A 20 6A 70 20 7A 2C 6D 72 69 67 68 74 0D 0A 3: jp z,mright..
00AF10: 09 63 70 20 32 34 34 3A 20 6A 70 20 7A 2C 6C 75 .cp 244: jp z,lu
00AF20: 70 0D 0A 09 63 70 20 32 34 35 3A 20 6A 70 20 7A p...cp 245: jp z
00AF30: 2C 6C 64 6F 77 6E 0D 0A 09 63 70 20 32 34 36 3A ,ldown...cp 246:
00AF40: 20 6A 70 20 7A 2C 6C 6C 65 66 74 0D 0A 09 63 70 jp z,lleft...cp
00AF50: 20 32 34 37 3A 20 6A 70 20 7A 2C 6C 72 69 67 68 247: jp z,lrigh
00AF60: 74 0D 0A 09 6A 70 20 65 64 69 74 6C 70 0D 0A 0D t...jp editlp...
00AF70: 0A 2E 6D 64 6F 77 6E 09 6C 64 20 68 6C 2C 28 65 ..mdown.ld hl,(e
00AF80: 74 6F 70 29 3A 09 64 65 63 20 68 6C 3A 09 64 65 top):.dec hl:.de
00AF90: 63 20 68 6C 3A 09 63 61 6C 6C 20 74 63 68 65 63 c hl:.call tchec
00AFA0: 6B 3A 20 6C 64 20 28 65 74 6F 70 29 2C 68 6C 3A k: ld (etop),hl:
00AFB0: 20 20 20 6A 70 20 76 62 6C 69 6E 65 0D 0A 2E 6D jp vbline...m
00AFC0: 75 70 09 6C 64 20 68 6C 2C 28 65 62 6F 74 74 6D up.ld hl,(ebottm
00AFD0: 29 3A 09 69 6E 63 20 68 6C 3A 09 69 6E 63 20 68 ):.inc hl:.inc h
00AFE0: 6C 3A 09 63 61 6C 6C 20 62 63 68 65 63 6B 3A 20 l:.call bcheck:
00AFF0: 6C 64 20 28 65 62 6F 74 74 6D 29 2C 68 6C 3A 20 ld (ebottm),hl:
00B000: 6A 70 20 76 62 6C 69 6E 65 0D 0A 2E 6D 72 69 67 jp vbline...mrig
00B010: 68 74 09 6C 64 20 64 65 2C 28 65 6C 65 66 74 29 ht.ld de,(eleft)
00B020: 3A 09 69 6E 63 20 64 65 3A 09 09 63 61 6C 6C 20 :.inc de:..call
00B030: 6C 63 68 65 63 6B 3A 20 6C 64 20 28 65 6C 65 66 lcheck: ld (elef
00B040: 74 29 2C 64 65 3A 20 20 6A 70 20 68 62 6C 69 6E t),de: jp hblin
00B050: 65 0D 0A 2E 6D 6C 65 66 74 09 6C 64 20 64 65 2C e...mleft.ld de,
00B060: 28 65 72 69 67 68 74 29 3A 09 64 65 63 20 64 65 (eright):.dec de
00B070: 3A 09 09 63 61 6C 6C 20 72 63 68 65 63 6B 3A 20 :..call rcheck:
00B080: 6C 64 20 28 65 72 69 67 68 74 29 2C 64 65 3A 20 ld (eright),de:
00B090: 6A 70 20 68 62 6C 69 6E 65 0D 0A 0D 0A 2E 6C 64 jp hbline.....ld
00B0A0: 6F 77 6E 09 6C 64 20 68 6C 2C 28 65 74 6F 70 29 own.ld hl,(etop)
00B0B0: 3A 09 69 6E 63 20 68 6C 3A 09 69 6E 63 20 68 6C :.inc hl:.inc hl
00B0C0: 3A 09 63 61 6C 6C 20 74 63 68 65 63 6B 3A 20 6C :.call tcheck: l
00B0D0: 64 20 28 65 74 6F 70 29 2C 68 6C 3A 20 20 20 64 d (etop),hl: d
00B0E0: 65 63 20 68 6C 3A 20 64 65 63 20 68 6C 3A 20 6A ec hl: dec hl: j
00B0F0: 70 20 76 72 6C 69 6E 65 0D 0A 2E 6C 75 70 09 6C p vrline...lup.l
00B100: 0A 09 20 6C 64 20 62 2C 26 37 46 3A 20 6F 75 74 .. ld b,&7F: out
00B110: 20 28 63 29 2C 61 0D 0A 09 20 72 65 73 20 37 2C (c),a... res 7,
00B120: 68 3A 20 73 65 74 20 36 2C 68 0D 0A 09 70 6F 70 h: set 6,h...pop
00B130: 20 61 66 3A 20 6C 64 20 28 68 6C 29 2C 61 3A 20 af: ld (hl),a:
00B140: 70 6F 70 20 68 6C 0D 0A 09 6C 64 20 62 63 2C 26 pop hl...ld bc,&
00B150: 37 46 43 30 3A 20 6F 75 74 20 28 63 29 2C 63 0D 7FC0: out (c),c.
00B160: 0A 09 72 65 74 0D 0A 0D 0A 09 3B 2B 2B 2B 20 46 ..ret.....;+++ F
00B170: 69 6E 64 20 73 74 61 72 74 20 61 64 64 72 65 73 ind start addres
00B180: 73 20 6F 66 20 63 68 61 72 61 63 74 65 72 20 41 s of character A
00B190: 20 69 6E 20 48 4C 20 28 63 6F 72 72 75 70 74 73 in HL (corrupts
00B1A0: 20 41 29 0D 0A 0D 0A 2E 73 74 61 64 64 72 09 73 A).....staddr.s
00B1B0: 75 62 20 33 32 0D 0A 09 6C 64 20 6C 2C 61 3A 20 ub 32...ld l,a:
00B1C0: 6C 64 20 68 2C 30 0D 0A 09 61 64 64 20 68 6C 2C ld h,0...add hl,
00B1D0: 68 6C 3A 20 61 64 64 20 68 6C 2C 68 6C 3A 20 61 hl: add hl,hl: a
00B1E0: 64 64 20 68 6C 2C 68 6C 3A 20 61 64 64 20 68 6C dd hl,hl: add hl
00B1F0: 2C 68 6C 0D 0A 09 61 64 64 20 68 6C 2C 68 6C 3A ,hl...add hl,hl:
00B200: 20 61 64 64 20 68 6C 2C 68 6C 3A 20 61 64 64 20 add hl,hl: add
00B210: 68 6C 2C 68 6C 3A 20 61 64 64 20 68 6C 2C 68 6C hl,hl: add hl,hl
00B220: 0D 0A 09 61 64 64 20 68 6C 2C 68 6C 0D 0A 09 72 ...add hl,hl...r
00B230: 65 74 0D 0A 0D 0A 09 3B 2A 2A 2A 20 44 61 74 61 et.....;*** Data
00B240: 0D 0A 0D 0A 2E 66 69 6C 65 69 64 09 64 62 20 22 .....fileid.db "
00B250: 46 6F 6E 74 20 66 69 6C 65 22 2C 32 36 0D 0A 0D Font file",26...
00B260: 0A 09 3B 2B 2B 2B 20 50 61 74 74 65 72 6E 20 64 ..;+++ Pattern d
00B270: 61 74 61 0D 0A 0D 0A 2E 70 61 74 31 78 31 09 64 ata.....pat1x1.d
00B280: 62 20 31 33 36 2C 31 33 36 2C 30 2C 30 2C 31 32 b 136,136,0,0,12
00B290: 38 2C 30 30 30 2C 30 2C 30 2C 31 32 38 2C 30 30 8,000,0,0,128,00
00B2A0: 30 2C 30 2C 30 2C 31 32 38 2C 30 30 30 2C 30 2C 0,0,0,128,000,0,
00B2B0: 30 0D 0A 2E 70 61 74 32 78 32 09 64 62 20 31 33 0...pat2x2.db 13
00B2C0: 36 2C 31 33 36 2C 30 2C 30 2C 31 32 38 2C 31 32 6,136,0,0,128,12
00B2D0: 38 2C 30 2C 30 2C 31 33 36 2C 31 33 36 2C 30 2C 8,0,0,136,136,0,
00B2E0: 30 2C 31 32 38 2C 31 32 38 2C 30 2C 30 0D 0A 2E 0,128,128,0,0...
00B2F0: 70 61 74 34 78 34 09 64 62 20 31 33 36 2C 31 33 pat4x4.db 136,13
00B300: 64 20 68 6C 2C 28 65 62 6F 74 74 6D 29 3A 09 64 d hl,(ebottm):.d
00B310: 65 63 20 68 6C 3A 09 64 65 63 20 68 6C 3A 09 63 ec hl:.dec hl:.c
00B320: 61 6C 6C 20 62 63 68 65 63 6B 3A 20 6C 64 20 28 all bcheck: ld (
00B330: 65 62 6F 74 74 6D 29 2C 68 6C 3A 20 69 6E 63 20 ebottm),hl: inc
00B340: 68 6C 3A 20 69 6E 63 20 68 6C 3A 20 6A 70 20 76 hl: inc hl: jp v
00B350: 72 6C 69 6E 65 0D 0A 2E 6C 72 69 67 68 74 09 6C rline...lright.l
00B360: 64 20 64 65 2C 28 65 6C 65 66 74 29 3A 09 64 65 d de,(eleft):.de
00B370: 63 20 64 65 3A 09 09 63 61 6C 6C 20 6C 63 68 65 c de:..call lche
00B380: 63 6B 3A 20 6C 64 20 28 65 6C 65 66 74 29 2C 64 ck: ld (eleft),d
00B390: 65 3A 20 20 69 6E 63 20 64 65 3A 20 20 20 20 20 e: inc de:
00B3A0: 20 20 20 20 6A 70 20 68 72 6C 69 6E 65 0D 0A 2E jp hrline...
00B3B0: 6C 6C 65 66 74 09 6C 64 20 64 65 2C 28 65 72 69 lleft.ld de,(eri
00B3C0: 67 68 74 29 3A 09 69 6E 63 20 64 65 3A 09 09 63 ght):.inc de:..c
00B3D0: 61 6C 6C 20 72 63 68 65 63 6B 3A 20 6C 64 20 28 all rcheck: ld (
00B3E0: 65 72 69 67 68 74 29 2C 64 65 3A 20 64 65 63 20 eright),de: dec
00B3F0: 64 65 3A 20 20 20 20 20 20 20 20 20 6A 70 20 68 de: jp h
00B400: 72 6C 69 6E 65 0D 0A 0D 0A 2E 76 62 6C 69 6E 65 rline.....vbline
00B410: 09 6C 64 20 64 65 2C 28 65 6C 65 66 74 29 3A 20 .ld de,(eleft):
00B420: 20 70 75 73 68 20 68 6C 3A 20 63 61 6C 6C 20 26 push hl: call &
00B430: 42 42 43 30 3A 20 70 6F 70 20 68 6C 0D 0A 09 6C BBC0: pop hl...l
00B440: 64 20 64 65 2C 28 65 72 69 67 68 74 29 3A 20 63 d de,(eright): c
00B450: 61 6C 6C 20 26 42 42 46 36 3A 20 6A 70 20 65 64 all &BBF6: jp ed
00B460: 69 74 6C 70 0D 0A 2E 68 62 6C 69 6E 65 09 6C 64 itlp...hbline.ld
00B470: 20 68 6C 2C 28 65 74 6F 70 29 0D 0A 09 70 75 73 hl,(etop)...pus
00B480: 68 20 68 6C 3A 20 63 61 6C 6C 20 26 42 42 43 30 h hl: call &BBC0
00B490: 3A 20 70 6F 70 20 64 65 0D 0A 09 6C 64 20 68 6C : pop de...ld hl
00B4A0: 2C 28 65 62 6F 74 74 6D 29 3A 20 6F 72 20 61 3A ,(ebottm): or a:
00B4B0: 20 73 62 63 20 68 6C 2C 64 65 0D 0A 09 6C 64 20 sbc hl,de...ld
00B4C0: 64 65 2C 30 3A 20 63 61 6C 6C 20 26 42 42 46 39 de,0: call &BBF9
00B4D0: 3A 20 6A 70 20 65 64 69 74 6C 70 0D 0A 0D 0A 2E : jp editlp.....
00B4E0: 76 72 6C 69 6E 65 09 70 75 73 68 20 68 6C 0D 0A vrline.push hl..
00B4F0: 09 20 6C 64 20 64 65 2C 30 3A 20 73 72 6C 20 68 . ld de,0: srl h
00B500: 36 2C 30 2C 30 2C 31 33 36 2C 31 33 36 2C 30 2C 6,0,0,136,136,0,
00B510: 30 2C 31 33 36 2C 31 33 36 2C 30 2C 30 2C 31 33 0,136,136,0,0,13
00B520: 36 2C 31 33 36 2C 30 2C 30 0D 0A 0D 0A 09 3B 2A 6,136,0,0.....;*
00B530: 2A 2A 20 56 61 72 69 61 62 6C 65 73 0D 0A 0D 0A ** Variables....
00B540: 2E 67 73 69 7A 65 09 64 62 20 31 09 09 09 09 09 .gsize.db 1.....
00B550: 3B 67 72 69 64 20 73 69 7A 65 20 28 31 2C 32 2C ;grid size (1,2,
00B560: 34 29 0D 0A 2E 67 6E 65 78 74 09 64 62 20 38 09 4)...gnext.db 8.
00B570: 09 09 09 09 3B 61 64 64 69 74 69 6F 6E 20 66 6F ....;addition fo
00B580: 72 20 6E 65 78 74 20 70 6F 73 69 74 69 6F 6E 0D r next position.
00B590: 0A 2E 67 70 61 74 74 09 64 73 20 31 36 09 09 09 ..gpatt.ds 16...
00B5A0: 09 09 3B 70 61 74 74 65 72 6E 20 64 61 74 61 0D ..;pattern data.
00B5B0: 0A 2E 68 65 69 67 68 74 09 64 62 20 30 09 09 09 ..height.db 0...
00B5C0: 09 09 3B 68 65 69 67 68 74 20 44 49 56 20 37 0D ..;height DIV 7.
00B5D0: 0A 2E 6C 61 73 74 6C 66 09 64 62 20 30 09 09 09 ..lastlf.db 0...
00B5E0: 09 09 3B 68 65 69 67 68 74 20 4D 4F 44 20 37 0D ..;height MOD 7.
00B5F0: 0A 2E 62 75 66 66 65 72 09 64 73 20 35 31 32 09 ..buffer.ds 512.
00B600: 09 09 09 09 3B 63 6F 70 79 20 63 68 61 72 61 63 ....;copy charac
00B610: 74 65 72 20 62 75 66 66 65 72 0D 0A 1A 72 6C 64 ter buffer...rld
00B620: 20 43 6F 64 69 6E 67 20 70 72 6F 64 75 63 74 69 Coding producti
00B630: 6F 6E 20 66 6F 72 20 53 65 6E 74 69 6E 65 6C 0D on for Sentinel.
00B640: 0A 09 3B 66 6F 6E 74 20 65 64 69 74 6F 72 20 52 ..;font editor R
00B650: 53 58 20 6C 69 62 72 61 72 79 0D 0A 0D 0A 09 3B SX library.....;
00B660: 76 31 2E 30 20 20 20 20 20 20 32 31 20 4D 61 72 v1.0 21 Mar
00B670: 63 68 20 31 39 39 33 0D 0A 0D 0A 09 6F 72 67 20 ch 1993.....org
00B680: 62 20 31 33 36 2C 31 33 36 2C 30 2C 30 2C 31 32 b 136,136,0,0,12
00B690: 38 2C 30 30 30 2C 30 2C 30 2C 31 32 38 2C 30 30 8,000,0,0,128,00
00B6A0: 30 2C 30 2C 30 2C 31 32 38 2C 30 30 30 2C 30 2C 0,0,0,128,000,0,
00B6B0: 30 0D 0A 2E 70 61 74 32 78 32 09 64 62 20 31 33 0...pat2x2.db 13
00B6C0: 36 2C 31 33 36 2C 30 2C 30 2C 31 32 38 2C 31 32 6,136,0,0,128,12
00B6D0: 38 2C 30 2C 30 2C 31 33 36 2C 31 33 36 2C 30 2C 8,0,0,136,136,0,
00B6E0: 30 2C 31 32 38 2C 31 32 38 2C 30 2C 30 0D 0A 2E 0,128,128,0,0...
00B6F0: 70 61 74 34 78 34 09 64 62 20 31 33 36 2C 31 33 pat4x4.db 136,13
00B700: 3A 20 72 72 20 6C 3A 20 63 61 6C 6C 20 26 42 43 : rr l: call &BC
00B710: 31 44 3A 20 70 75 73 68 20 68 6C 3A 20 70 6F 70 1D: push hl: pop
00B720: 20 64 65 0D 0A 09 20 72 65 73 20 37 2C 68 3A 20 de... res 7,h:
00B730: 6C 64 20 62 63 2C 38 30 3A 20 6C 64 69 72 0D 0A ld bc,80: ldir..
00B740: 09 70 6F 70 20 68 6C 0D 0A 09 6C 64 20 64 65 2C .pop hl...ld de,
00B750: 26 46 46 46 46 3A 09 70 75 73 68 20 68 6C 3A 20 &FFFF:.push hl:
00B760: 63 61 6C 6C 20 26 42 42 43 30 3A 20 70 6F 70 20 call &BBC0: pop
00B770: 68 6C 0D 0A 09 6C 64 20 64 65 2C 28 65 6C 65 66 hl...ld de,(elef
00B780: 74 29 3A 09 70 75 73 68 20 68 6C 3A 20 63 61 6C t):.push hl: cal
00B790: 6C 20 26 42 42 46 36 3A 20 70 6F 70 20 68 6C 0D l &BBF6: pop hl.
00B7A0: 0A 09 6C 64 20 64 65 2C 28 65 72 69 67 68 74 29 ..ld de,(eright)
00B7B0: 3A 09 70 75 73 68 20 68 6C 3A 20 63 61 6C 6C 20 :.push hl: call
00B7C0: 26 42 42 43 30 3A 20 70 6F 70 20 68 6C 0D 0A 09 &BBC0: pop hl...
00B7D0: 6C 64 20 64 65 2C 36 34 30 3A 09 63 61 6C 6C 20 ld de,640:.call
00B7E0: 26 42 42 46 36 0D 0A 09 6A 70 20 65 64 69 74 6C &BBF6...jp editl
00B7F0: 70 0D 0A 0D 0A 2E 68 72 6C 69 6E 65 09 6C 64 20 p.....hrline.ld
00B800: 68 6C 2C 28 65 74 6F 70 29 3A 20 73 72 6C 20 68 hl,(etop): srl h
00B810: 3A 20 72 72 20 6C 3A 20 64 65 63 20 68 6C 0D 0A : rr l: dec hl..
00B820: 09 70 75 73 68 20 64 65 0D 0A 09 20 6C 64 20 64 .push de... ld d
00B830: 65 2C 28 65 62 6F 74 74 6D 29 3A 20 73 72 6C 20 e,(ebottm): srl
00B840: 64 3A 20 72 72 20 65 0D 0A 09 20 70 75 73 68 20 d: rr e... push
00B850: 68 6C 0D 0A 09 20 20 6F 72 20 61 3A 20 73 62 63 hl... or a: sbc
00B860: 20 68 6C 2C 64 65 0D 0A 09 20 20 6C 64 20 61 2C hl,de... ld a,
00B870: 6C 0D 0A 09 20 20 6F 72 20 61 3A 20 6A 70 20 7A l... or a: jp z
00B880: 2C 63 68 66 61 69 32 0D 0A 09 20 70 6F 70 20 68 ,chfai2... pop h
00B890: 6C 0D 0A 09 70 6F 70 20 64 65 0D 0A 09 70 75 73 l...pop de...pus
00B8A0: 68 20 61 66 0D 0A 09 20 63 61 6C 6C 20 26 42 43 h af... call &BC
00B8B0: 31 44 0D 0A 09 20 6C 64 20 61 2C 63 0D 0A 09 70 1D... ld a,c...p
00B8C0: 6F 70 20 62 63 0D 0A 09 6C 64 20 63 2C 61 0D 0A op bc...ld c,a..
00B8D0: 2E 68 72 6C 6E 6C 70 09 72 65 73 20 37 2C 68 3A .hrlnlp.res 7,h:
00B8E0: 20 6C 64 20 61 2C 28 68 6C 29 3A 20 61 6E 64 20 ld a,(hl): and
00B8F0: 63 0D 0A 09 73 65 74 20 37 2C 68 3A 20 6A 72 20 c...set 7,h: jr
00B900: 0D 0A 09 3B 50 72 6F 2D 45 78 74 20 67 72 61 70 ...;Pro-Ext grap
00B910: 68 69 63 73 20 63 6F 6E 76 65 72 73 69 6F 6E 20 hics conversion
00B920: 75 74 69 6C 69 74 79 0D 0A 09 3B 4D 61 63 68 69 utility...;Machi
00B930: 6E 65 20 63 6F 64 65 20 73 6F 75 72 63 65 20 28 ne code source (
00B940: 63 29 20 52 69 63 68 61 72 64 20 46 61 69 72 68 c) Richard Fairh
00B950: 75 72 73 74 20 31 39 39 33 0D 0A 0D 0A 09 6F 72 urst 1993.....or
00B960: 67 20 26 39 30 30 30 0D 0A 09 77 72 69 74 65 20 g &9000...write
00B970: 22 67 72 61 70 68 69 63 73 2E 62 69 6E 22 0D 0A "graphics.bin"..
00B980: 09 6E 6F 6C 69 73 74 0D 0A 0D 0A 09 6C 64 20 68 .nolist.....ld h
00B990: 6C 2C 77 6B 73 70 09 09 09 3B 53 65 74 20 75 70 l,wksp...;Set up
00B9A0: 20 52 53 58 73 0D 0A 09 6C 64 20 62 63 2C 63 6F RSXs...ld bc,co
00B9B0: 6D 5F 74 0D 0A 09 6A 70 20 26 42 43 44 31 0D 0A m_t...jp &BCD1..
00B9C0: 0D 0A 2E 77 6B 73 70 09 64 73 20 34 09 09 09 09 ...wksp.ds 4....
00B9D0: 3B 43 68 61 69 6E 20 6C 69 6E 6B 20 77 6F 72 6B ;Chain link work
00B9E0: 73 70 61 63 65 0D 0A 0D 0A 2E 63 6F 6D 5F 74 09 space.....com_t.
00B9F0: 64 77 20 6E 61 6D 65 5F 74 09 09 09 3B 43 6F 6D dw name_t...;Com
00BA00: 6D 61 6E 64 20 74 61 62 6C 65 0D 0A 09 6A 70 20 mand table...jp
00BA10: 77 72 63 75 74 0D 0A 09 6A 70 20 6D 31 74 6F 32 wrcut...jp m1to2
00BA20: 0D 0A 09 6A 70 20 63 70 79 68 32 6C 0D 0A 09 6A ...jp cpyh2l...j
00BA30: 70 20 63 70 79 6C 32 68 0D 0A 09 6A 70 20 77 69 p cpyl2h...jp wi
00BA40: 6E 6C 6F 64 0D 0A 09 6A 70 20 73 63 72 6C 6F 64 nlod...jp scrlod
00BA50: 0D 0A 09 6A 70 20 6D 66 63 6C 6F 64 0D 0A 09 6A ...jp mfclod...j
00BA60: 70 20 66 61 64 65 0D 0A 09 6A 70 20 66 64 65 6C p fade...jp fdel
00BA70: 32 68 0D 0A 09 6A 70 20 65 64 69 74 0D 0A 09 6A 2h...jp edit...j
00BA80: 70 20 63 61 74 0D 0A 09 6A 70 20 6F 70 65 6E 6F p cat...jp openo
00BA90: 69 0D 0A 09 6A 70 20 6F 70 65 6E 69 69 0D 0A 09 i...jp openii...
00BAA0: 6A 70 20 72 73 78 6F 66 66 0D 0A 0D 0A 2E 6E 61 jp rsxoff.....na
00BAB0: 6D 65 5F 74 09 73 74 72 20 22 57 52 43 55 54 22 me_t.str "WRCUT"
00BAC0: 09 09 09 3B 4E 61 6D 65 20 74 61 62 6C 65 0D 0A ...;Name table..
00BAD0: 09 73 74 72 20 22 4D 4F 44 45 31 54 4F 32 22 0D .str "MODE1TO2".
00BAE0: 0A 09 73 74 72 20 22 43 4F 50 59 48 32 4C 22 0D ..str "COPYH2L".
00BAF0: 0A 09 73 74 72 20 22 43 4F 50 59 4C 32 48 22 0D ..str "COPYL2H".
00BB00: 6E 7A 2C 6E 70 62 79 74 65 0D 0A 09 6C 64 20 61 nz,npbyte...ld a
00BB10: 2C 63 3A 20 63 70 6C 3A 20 61 6E 64 20 28 68 6C ,c: cpl: and (hl
00BB20: 29 0D 0A 09 6C 64 20 28 68 6C 29 2C 61 0D 0A 2E )...ld (hl),a...
00BB30: 6E 70 62 79 74 65 09 63 61 6C 6C 20 6E 6C 69 6E npbyte.call nlin
00BB40: 65 0D 0A 09 64 6A 6E 7A 20 68 72 6C 6E 6C 70 0D e...djnz hrlnlp.
00BB50: 0A 09 6A 70 20 65 64 69 74 6C 70 0D 0A 0D 0A 2E ..jp editlp.....
00BB60: 74 63 68 65 63 6B 09 6C 64 20 64 65 2C 28 65 62 tcheck.ld de,(eb
00BB70: 6F 74 74 6D 29 0D 0A 09 6C 64 20 61 2C 68 3A 20 ottm)...ld a,h:
00BB80: 63 70 20 26 30 31 3A 20 6A 72 20 6E 7A 2C 74 63 cp &01: jr nz,tc
00BB90: 6E 6F 6C 6D 3A 20 6C 64 20 61 2C 6C 3A 20 63 70 nolm: ld a,l: cp
00BBA0: 20 26 39 32 3A 20 6A 72 20 7A 2C 63 68 66 61 69 &92: jr z,chfai
00BBB0: 6C 0D 0A 2E 74 63 6E 6F 6C 6D 09 6C 64 20 61 2C l...tcnolm.ld a,
00BBC0: 68 3A 20 63 70 20 64 3A 20 20 20 72 65 74 20 6E h: cp d: ret n
00BBD0: 7A 3A 20 20 20 20 20 20 20 6C 64 20 61 2C 6C 3A z: ld a,l:
00BBE0: 20 63 70 20 65 3A 20 20 20 72 65 74 20 6E 7A 0D cp e: ret nz.
00BBF0: 0A 09 6A 72 20 63 68 66 61 69 6C 0D 0A 0D 0A 2E ..jr chfail.....
00BC00: 62 63 68 65 63 6B 09 6C 64 20 64 65 2C 28 65 74 bcheck.ld de,(et
00BC10: 6F 70 29 0D 0A 09 6C 64 20 61 2C 68 3A 20 63 70 op)...ld a,h: cp
00BC20: 20 26 46 46 3A 20 6A 72 20 6E 7A 2C 62 63 6E 6F &FF: jr nz,bcno
00BC30: 6C 6D 3A 20 6C 64 20 61 2C 6C 3A 20 63 70 20 26 lm: ld a,l: cp &
00BC40: 46 43 3A 20 6A 72 20 7A 2C 63 68 66 61 69 6C 0D FC: jr z,chfail.
00BC50: 0A 2E 62 63 6E 6F 6C 6D 09 6C 64 20 61 2C 68 3A ..bcnolm.ld a,h:
00BC60: 20 63 70 20 64 3A 20 20 20 72 65 74 20 6E 7A 3A cp d: ret nz:
00BC70: 20 20 20 20 20 20 20 6C 64 20 61 2C 6C 3A 20 63 ld a,l: c
00BC80: 70 20 65 3A 20 20 20 72 65 74 20 6E 7A 0D 0A 09 p e: ret nz...
00BC90: 6A 72 20 63 68 66 61 69 6C 0D 0A 0D 0A 2E 6C 63 jr chfail.....lc
00BCA0: 68 65 63 6B 09 6C 64 20 68 6C 2C 28 65 72 69 67 heck.ld hl,(erig
00BCB0: 68 74 29 0D 0A 09 6C 64 20 61 2C 64 3A 20 63 70 ht)...ld a,d: cp
00BCC0: 20 26 46 46 3A 20 6A 72 20 6E 7A 2C 6C 63 6E 6F &FF: jr nz,lcno
00BCD0: 6C 6D 3A 20 6C 64 20 61 2C 65 3A 20 63 70 20 26 lm: ld a,e: cp &
00BCE0: 46 45 3A 20 6A 72 20 7A 2C 63 68 66 61 69 6C 0D FE: jr z,chfail.
00BCF0: 0A 2E 6C 63 6E 6F 6C 6D 09 6C 64 20 61 2C 64 3A ..lcnolm.ld a,d:
00BD00: 0A 09 73 74 72 20 22 57 49 4E 4C 4F 41 44 22 0D ..str "WINLOAD".
00BD10: 0A 09 73 74 72 20 22 53 43 52 4C 4F 41 44 22 0D ..str "SCRLOAD".
00BD20: 0A 09 73 74 72 20 22 4D 46 43 4C 4F 41 44 22 0D ..str "MFCLOAD".
00BD30: 0A 09 73 74 72 20 22 46 41 44 45 53 43 52 22 0D ..str "FADESCR".
00BD40: 0A 09 73 74 72 20 22 46 41 44 45 4C 32 48 22 0D ..str "FADEL2H".
00BD50: 0A 09 73 74 72 20 22 45 44 49 54 22 0D 0A 09 73 ..str "EDIT"...s
00BD60: 74 72 20 22 43 41 54 22 0D 0A 09 73 74 72 20 22 tr "CAT"...str "
00BD70: 4F 50 45 4E 4F 55 54 22 0D 0A 09 73 74 72 20 22 OPENOUT"...str "
00BD80: 4F 50 45 4E 49 4E 22 0D 0A 09 73 74 72 20 22 52 OPENIN"...str "R
00BD90: 53 58 4F 46 46 22 0D 0A 09 64 62 20 30 0D 0A 0D SXOFF"...db 0...
00BDA0: 0A 09 3B 7C 45 44 49 54 2C 40 6C 65 66 74 2C 40 ..;|EDIT,@left,@
00BDB0: 72 69 67 68 74 2C 40 74 6F 70 2C 40 62 6F 74 74 right,@top,@bott
00BDC0: 6F 6D 0D 0A 0D 0A 2E 65 64 69 74 09 6C 64 20 68 om.....edit.ld h
00BDD0: 6C 2C 26 46 46 46 46 3A 20 6C 64 20 28 65 6C 65 l,&FFFF: ld (ele
00BDE0: 66 74 29 20 2C 68 6C 0D 0A 09 6C 64 20 68 6C 2C ft) ,hl...ld hl,
00BDF0: 36 34 30 3A 20 20 20 6C 64 20 28 65 72 69 67 68 640: ld (erigh
00BE00: 74 29 2C 68 6C 0D 0A 09 6C 64 20 68 6C 2C 34 30 t),hl...ld hl,40
00BE10: 30 3A 20 20 20 6C 64 20 28 65 74 6F 70 29 20 20 0: ld (etop)
00BE20: 2C 68 6C 0D 0A 09 6C 64 20 68 6C 2C 26 46 46 46 ,hl...ld hl,&FFF
00BE30: 45 3A 20 6C 64 20 28 65 62 6F 74 74 6D 29 2C 68 E: ld (ebottm),h
00BE40: 6C 0D 0A 0D 0A 09 6C 64 20 61 2C 31 3A 20 63 61 l.....ld a,1: ca
00BE50: 6C 6C 20 26 42 42 44 45 09 0D 0A 09 6C 64 20 61 ll &BBDE....ld a
00BE60: 2C 32 3A 20 63 61 6C 6C 20 26 42 43 30 45 0D 0A ,2: call &BC0E..
00BE70: 09 63 61 6C 6C 20 66 64 65 6C 32 68 0D 0A 0D 0A .call fdel2h....
00BE80: 2E 65 64 69 74 6C 70 09 63 61 6C 6C 20 26 42 42 .editlp.call &BB
00BE90: 31 38 0D 0A 09 63 70 20 32 32 34 3A 09 6A 70 20 18...cp 224:.jp
00BEA0: 7A 2C 65 65 78 69 74 0D 0A 09 63 70 20 31 33 3A z,eexit...cp 13:
00BEB0: 09 6A 70 20 7A 2C 65 65 78 69 74 0D 0A 09 63 70 .jp z,eexit...cp
00BEC0: 20 32 34 30 3A 20 6A 70 20 7A 2C 6D 75 70 0D 0A 240: jp z,mup..
00BED0: 09 63 70 20 32 34 31 3A 20 6A 70 20 7A 2C 6D 64 .cp 241: jp z,md
00BEE0: 6F 77 6E 0D 0A 09 63 70 20 32 34 32 3A 20 6A 70 own...cp 242: jp
00BEF0: 20 7A 2C 6D 6C 65 66 74 0D 0A 09 63 70 20 32 34 z,mleft...cp 24
00BF00: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
00BF10: 0A 00 01 00 02 09 4E E5 0A 00 C4 02 00 00 00 02 ......N.........
00BF20: 0A 00 C9 02 00 00 00 02 0A 00 C5 02 00 00 00 02 ................
00BF30: 0A 00 C1 02 00 00 00 02 0A 00 C6 02 00 00 00 02 ................
00BF40: 0A 00 C2 02 00 00 00 02 0A 00 C7 02 00 00 00 02 ................
00BF50: 0A 00 C3 02 00 00 00 02 0A 00 C8 02 00 00 00 02 ................
00BF60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00BF70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00BF80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00BF90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00BFA0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00BFB0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00BFC0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00BFD0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00BFE0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00BFF0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00C000: 26 42 43 38 33 3A 20 63 61 6C 6C 20 26 34 30 30 &BC83: call &400
00C010: 30 09 3B 63 6F 6D 70 72 65 73 73 65 64 0D 0A 09 0.;compressed...
00C020: 6A 70 20 26 42 43 37 41 0D 0A 0D 0A 09 3B 7C 4D jp &BC7A.....;|M
00C030: 46 43 4C 4F 41 44 2C 40 72 65 73 75 6C 74 25 2C FCLOAD,@result%,
00C040: 66 69 6C 65 6E 61 6D 65 24 0D 0A 0D 0A 2E 6D 66 filename$.....mf
00C050: 63 6C 6F 64 09 63 61 6C 6C 20 6F 70 65 6E 69 6E clod.call openin
00C060: 0D 0A 0D 0A 09 65 78 20 64 65 2C 68 6C 3A 20 63 .....ex de,hl: c
00C070: 61 6C 6C 20 26 42 43 38 33 3A 20 63 61 6C 6C 20 all &BC83: call
00C080: 26 42 43 37 41 0D 0A 09 6C 64 20 61 2C 32 3A 20 &BC7A...ld a,2:
00C090: 63 61 6C 6C 20 26 42 43 30 45 0D 0A 09 63 61 6C call &BC0E...cal
00C0A0: 6C 20 26 38 30 30 30 0D 0A 09 6C 64 20 61 2C 28 l &8000...ld a,(
00C0B0: 26 38 30 38 38 29 3A 20 61 6E 64 20 33 3A 20 63 &8088): and 3: c
00C0C0: 70 20 32 0D 0A 09 72 65 74 20 7A 0D 0A 09 64 69 p 2...ret z...di
00C0D0: 3A 20 65 78 78 0D 0A 09 20 72 65 73 20 30 2C 63 : exx... res 0,c
00C0E0: 3A 20 73 65 74 20 31 2C 63 0D 0A 09 65 78 78 3A : set 1,c...exx:
00C0F0: 20 65 69 0D 0A 09 63 61 6C 6C 20 6D 31 74 6F 32 ei...call m1to2
00C100: 0D 0A 09 72 65 74 0D 0A 0D 0A 09 3B 7C 57 52 43 ...ret.....;|WRC
00C110: 55 54 2C 77 69 64 74 68 2C 64 65 70 74 68 2C 40 UT,width,depth,@
00C120: 72 65 73 75 6C 74 25 2C 66 69 6C 65 6E 61 6D 65 result%,filename
00C130: 24 0D 0A 0D 0A 2E 77 72 63 75 74 09 63 61 6C 6C $.....wrcut.call
00C140: 20 6F 70 65 6E 6F 0D 0A 0D 0A 09 6C 64 20 6C 2C openo.....ld l,
00C150: 28 69 78 2B 34 29 3A 20 6C 64 20 68 2C 28 69 78 (ix+4): ld h,(ix
00C160: 2B 35 29 0D 0A 09 6C 64 20 65 2C 28 69 78 2B 36 +5)...ld e,(ix+6
00C170: 29 3A 20 6C 64 20 64 2C 28 69 78 2B 37 29 0D 0A ): ld d,(ix+7)..
00C180: 0D 0A 09 64 65 63 20 68 6C 0D 0A 09 6C 64 20 28 ...dec hl...ld (
00C190: 64 65 70 74 68 29 2C 68 6C 0D 0A 09 64 65 63 20 depth),hl...dec
00C1A0: 68 6C 3A 20 64 65 63 20 68 6C 0D 0A 0D 0A 09 6C hl: dec hl.....l
00C1B0: 64 20 61 2C 6C 3A 20 63 61 6C 6C 20 26 42 43 39 d a,l: call &BC9
00C1C0: 35 0D 0A 09 6C 64 20 61 2C 68 3A 20 63 61 6C 6C 5...ld a,h: call
00C1D0: 20 26 42 43 39 35 0D 0A 0D 0A 09 70 75 73 68 20 &BC95.....push
00C1E0: 64 65 0D 0A 09 20 64 65 63 20 64 65 3A 20 64 65 de... dec de: de
00C1F0: 63 20 64 65 0D 0A 09 20 6C 64 20 61 2C 65 3A 20 c de... ld a,e:
00C200: 73 74 6F 72 65 20 52 4F 4D 20 73 74 61 74 65 0D store ROM state.
00C210: 0A 09 72 65 74 0D 0A 0D 0A 09 3B 2A 2A 2A 20 4F ..ret.....;*** O
00C220: 70 65 6E 20 6F 75 74 70 75 74 20 66 69 6C 65 20 pen output file
00C230: 28 73 68 6F 75 6C 64 20 62 65 20 66 69 72 73 74 (should be first
00C240: 20 43 41 4C 4C 29 0D 0A 09 3B 72 65 73 75 6C 74 CALL)...;result
00C250: 20 69 73 20 30 20 69 66 20 75 6E 73 75 63 63 65 is 0 if unsucce
00C260: 73 73 66 75 6C 2C 20 31 20 69 66 20 6F 6B 0D 0A ssful, 1 if ok..
00C270: 0D 0A 2E 6F 70 65 6E 6F 69 09 63 61 6C 6C 20 6F ...openoi.call o
00C280: 70 65 6E 6F 0D 0A 09 72 65 74 0D 0A 0D 0A 2E 6F peno...ret.....o
00C290: 70 65 6E 6F 09 63 61 6C 6C 20 26 42 43 39 32 0D peno.call &BC92.
00C2A0: 0A 0D 0A 09 6C 64 20 6C 2C 28 69 78 29 3A 20 6C ....ld l,(ix): l
00C2B0: 64 20 68 2C 28 69 78 2B 31 29 0D 0A 09 6C 64 20 d h,(ix+1)...ld
00C2C0: 62 2C 28 68 6C 29 3A 20 69 6E 63 20 68 6C 0D 0A b,(hl): inc hl..
00C2D0: 09 6C 64 20 65 2C 28 68 6C 29 3A 20 69 6E 63 20 .ld e,(hl): inc
00C2E0: 68 6C 0D 0A 09 6C 64 20 64 2C 28 68 6C 29 3A 20 hl...ld d,(hl):
00C2F0: 65 78 20 64 65 2C 68 6C 0D 0A 09 6C 64 20 64 65 ex de,hl...ld de
00C300: 2C 62 75 66 66 3A 20 70 75 73 68 20 69 78 0D 0A ,buff: push ix..
00C310: 09 63 61 6C 6C 20 26 42 43 38 43 3A 20 70 6F 70 .call &BC8C: pop
00C320: 20 69 78 0D 0A 0D 0A 09 6A 72 20 63 2C 73 75 63 ix.....jr c,suc
00C330: 63 0D 0A 09 6C 64 20 6C 2C 28 69 78 2B 32 29 3A c...ld l,(ix+2):
00C340: 20 6C 64 20 68 2C 28 69 78 2B 33 29 0D 0A 09 6C ld h,(ix+3)...l
00C350: 64 20 28 68 6C 29 2C 30 3A 20 69 6E 63 20 68 6C d (hl),0: inc hl
00C360: 0D 0A 09 6C 64 20 28 68 6C 29 2C 30 3A 20 70 6F ...ld (hl),0: po
00C370: 70 20 68 6C 0D 0A 09 72 65 74 0D 0A 0D 0A 2E 6F p hl...ret.....o
00C380: 73 75 63 63 09 6C 64 20 6C 2C 28 69 78 2B 32 29 succ.ld l,(ix+2)
00C390: 3A 20 6C 64 20 68 2C 28 69 78 2B 33 29 0D 0A 09 : ld h,(ix+3)...
00C3A0: 6C 64 20 28 68 6C 29 2C 31 3A 20 69 6E 63 20 68 ld (hl),1: inc h
00C3B0: 6C 0D 0A 09 6C 64 20 28 68 6C 29 2C 30 3A 20 72 l...ld (hl),0: r
00C3C0: 65 74 0D 0A 0D 0A 0D 0A 09 3B 2A 2A 2A 20 4F 70 et.......;*** Op
00C3D0: 65 6E 20 69 6E 70 75 74 20 66 69 6C 65 20 28 73 en input file (s
00C3E0: 68 6F 75 6C 64 20 62 65 20 66 69 72 73 74 20 43 hould be first C
00C3F0: 41 4C 4C 29 0D 0A 09 3B 72 65 73 75 6C 74 20 69 ALL)...;result i
00C400: 63 61 6C 6C 20 26 42 43 39 35 0D 0A 09 20 6C 64 call &BC95... ld
00C410: 20 61 2C 64 3A 20 63 61 6C 6C 20 26 42 43 39 35 a,d: call &BC95
00C420: 0D 0A 09 70 6F 70 20 64 65 0D 0A 0D 0A 09 6C 64 ...pop de.....ld
00C430: 20 61 2C 64 0D 0A 09 20 61 6E 64 20 33 0D 0A 09 a,d... and 3...
00C440: 20 73 6C 61 20 61 3A 20 73 6C 61 20 61 3A 20 73 sla a: sla a: s
00C450: 6C 61 20 61 0D 0A 09 20 73 6C 61 20 61 3A 20 73 la a... sla a: s
00C460: 6C 61 20 61 0D 0A 09 6C 64 20 64 2C 61 0D 0A 0D la a...ld d,a...
00C470: 0A 09 6C 64 20 61 2C 65 0D 0A 09 20 73 72 6C 20 ..ld a,e... srl
00C480: 61 3A 20 73 72 6C 20 61 3A 20 73 72 6C 20 61 0D a: srl a: srl a.
00C490: 0A 09 20 6F 72 20 64 0D 0A 09 6C 64 20 62 2C 61 .. or d...ld b,a
00C4A0: 0D 0A 09 69 6E 63 20 62 0D 0A 0D 0A 09 63 61 6C ...inc b.....cal
00C4B0: 6C 20 26 42 42 43 36 0D 0A 09 6C 64 20 28 78 70 l &BBC6...ld (xp
00C4C0: 6F 73 29 2C 64 65 0D 0A 09 6C 64 20 28 79 70 6F os),de...ld (ypo
00C4D0: 73 29 2C 68 6C 0D 0A 09 6C 64 20 28 6C 65 6E 67 s),hl...ld (leng
00C4E0: 74 68 29 2C 62 63 0D 0A 0D 0A 2E 6F 6C 6F 6F 70 th),bc.....oloop
00C4F0: 09 70 75 73 68 20 62 63 0D 0A 09 20 64 65 63 20 .push bc... dec
00C500: 64 65 0D 0A 09 20 63 61 6C 6C 20 26 42 42 43 30 de... call &BBC0
00C510: 0D 0A 09 70 6F 70 20 62 63 0D 0A 0D 0A 2E 69 6C ...pop bc.....il
00C520: 6F 6F 70 09 70 75 73 68 20 62 63 0D 0A 09 20 6C oop.push bc... l
00C530: 64 20 62 2C 38 0D 0A 2E 74 6C 6F 6F 70 09 20 6C d b,8...tloop. l
00C540: 64 20 64 65 2C 31 3A 20 6C 64 20 68 6C 2C 30 0D d de,1: ld hl,0.
00C550: 0A 09 20 70 75 73 68 20 62 63 0D 0A 09 20 20 70 .. push bc... p
00C560: 75 73 68 20 61 66 0D 0A 09 20 20 20 63 61 6C 6C ush af... call
00C570: 20 26 42 42 46 33 3A 20 6C 64 20 63 2C 61 0D 0A &BBF3: ld c,a..
00C580: 09 20 20 70 6F 70 20 61 66 0D 0A 09 20 20 73 6C . pop af... sl
00C590: 61 20 61 3A 20 6F 72 20 63 0D 0A 09 20 70 6F 70 a a: or c... pop
00C5A0: 20 62 63 0D 0A 09 20 64 6A 6E 7A 20 74 6C 6F 6F bc... djnz tloo
00C5B0: 70 0D 0A 09 20 63 61 6C 6C 20 26 42 43 39 35 0D p... call &BC95.
00C5C0: 0A 0D 0A 09 70 6F 70 20 62 63 0D 0A 09 64 6A 6E ....pop bc...djn
00C5D0: 7A 20 69 6C 6F 6F 70 0D 0A 0D 0A 09 6C 64 20 64 z iloop.....ld d
00C5E0: 65 2C 28 78 70 6F 73 29 0D 0A 09 20 6C 64 20 68 e,(xpos)... ld h
00C5F0: 6C 2C 28 79 70 6F 73 29 0D 0A 09 20 64 65 63 20 l,(ypos)... dec
00C600: 20 63 70 20 68 3A 20 20 20 72 65 74 20 6E 7A 3A cp h: ret nz:
00C610: 20 20 20 20 20 20 20 6C 64 20 61 2C 65 3A 20 63 ld a,e: c
00C620: 70 20 6C 3A 20 20 20 72 65 74 20 6E 7A 0D 0A 09 p l: ret nz...
00C630: 6A 72 20 63 68 66 61 69 6C 0D 0A 0D 0A 2E 72 63 jr chfail.....rc
00C640: 68 65 63 6B 09 6C 64 20 68 6C 2C 28 65 6C 65 66 heck.ld hl,(elef
00C650: 74 29 0D 0A 09 6C 64 20 61 2C 64 3A 20 63 70 20 t)...ld a,d: cp
00C660: 26 30 32 3A 20 6A 72 20 6E 7A 2C 72 63 6E 6F 6C &02: jr nz,rcnol
00C670: 6D 3A 20 6C 64 20 61 2C 65 3A 20 63 70 20 26 38 m: ld a,e: cp &8
00C680: 31 3A 20 6A 72 20 7A 2C 63 68 66 61 69 6C 0D 0A 1: jr z,chfail..
00C690: 2E 72 63 6E 6F 6C 6D 09 6C 64 20 61 2C 64 3A 20 .rcnolm.ld a,d:
00C6A0: 63 70 20 68 3A 20 20 20 72 65 74 20 6E 7A 3A 20 cp h: ret nz:
00C6B0: 20 20 20 20 20 20 6C 64 20 61 2C 65 3A 20 63 70 ld a,e: cp
00C6C0: 20 6C 3A 20 20 20 72 65 74 20 6E 7A 0D 0A 09 6A l: ret nz...j
00C6D0: 72 20 63 68 66 61 69 6C 0D 0A 0D 0A 2E 63 68 66 r chfail.....chf
00C6E0: 61 69 32 09 70 6F 70 20 68 6C 0D 0A 2E 63 68 66 ai2.pop hl...chf
00C6F0: 61 69 6C 09 70 6F 70 20 68 6C 3A 20 6A 70 20 65 ail.pop hl: jp e
00C700: 64 69 74 6C 70 0D 0A 0D 0A 2E 65 65 78 69 74 09 ditlp.....eexit.
00C710: 6C 64 20 64 65 2C 28 65 6C 65 66 74 29 3A 09 69 ld de,(eleft):.i
00C720: 6E 63 20 64 65 3A 20 09 6C 64 20 6C 2C 28 69 78 nc de: .ld l,(ix
00C730: 2B 36 29 3A 20 6C 64 20 68 2C 28 69 78 2B 37 29 +6): ld h,(ix+7)
00C740: 3A 20 6C 64 20 28 68 6C 29 2C 65 3A 20 69 6E 63 : ld (hl),e: inc
00C750: 20 68 6C 3A 20 6C 64 20 28 68 6C 29 2C 64 0D 0A hl: ld (hl),d..
00C760: 09 6C 64 20 64 65 2C 28 65 72 69 67 68 74 29 3A .ld de,(eright):
00C770: 09 64 65 63 20 64 65 3A 20 09 6C 64 20 6C 2C 28 .dec de: .ld l,(
00C780: 69 78 2B 34 29 3A 20 6C 64 20 68 2C 28 69 78 2B ix+4): ld h,(ix+
00C790: 35 29 3A 20 6C 64 20 28 68 6C 29 2C 65 3A 20 69 5): ld (hl),e: i
00C7A0: 6E 63 20 68 6C 3A 20 6C 64 20 28 68 6C 29 2C 64 nc hl: ld (hl),d
00C7B0: 0D 0A 09 6C 64 20 64 65 2C 28 65 74 6F 70 29 3A ...ld de,(etop):
00C7C0: 09 64 65 63 20 64 65 3A 09 64 65 63 20 64 65 3A .dec de:.dec de:
00C7D0: 09 6C 64 20 6C 2C 28 69 78 2B 32 29 3A 20 6C 64 .ld l,(ix+2): ld
00C7E0: 20 68 2C 28 69 78 2B 33 29 3A 20 6C 64 20 28 68 h,(ix+3): ld (h
00C7F0: 6C 29 2C 65 3A 20 69 6E 63 20 68 6C 3A 20 6C 64 l),e: inc hl: ld
00C800: 68 6C 3A 20 64 65 63 20 68 6C 0D 0A 09 20 6C 64 hl: dec hl... ld
00C810: 20 28 79 70 6F 73 29 2C 68 6C 0D 0A 09 6C 64 20 (ypos),hl...ld
00C820: 62 63 2C 28 6C 65 6E 67 74 68 29 0D 0A 09 6C 64 bc,(length)...ld
00C830: 20 68 6C 2C 28 64 65 70 74 68 29 0D 0A 09 64 65 hl,(depth)...de
00C840: 63 20 68 6C 0D 0A 09 6C 64 20 61 2C 68 3A 20 6F c hl...ld a,h: o
00C850: 72 20 6C 3A 20 6A 72 20 7A 2C 71 77 72 63 75 74 r l: jr z,qwrcut
00C860: 0D 0A 09 64 65 63 20 68 6C 0D 0A 09 6C 64 20 28 ...dec hl...ld (
00C870: 64 65 70 74 68 29 2C 68 6C 0D 0A 09 6C 64 20 61 depth),hl...ld a
00C880: 2C 68 3A 20 6F 72 20 6C 0D 0A 09 6C 64 20 68 6C ,h: or l...ld hl
00C890: 2C 28 79 70 6F 73 29 0D 0A 09 6A 72 20 6E 7A 2C ,(ypos)...jr nz,
00C8A0: 6F 6C 6F 6F 70 0D 0A 2E 71 77 72 63 75 74 09 6A oloop...qwrcut.j
00C8B0: 70 20 26 42 43 38 46 0D 0A 0D 0A 2E 78 70 6F 73 p &BC8F.....xpos
00C8C0: 09 64 77 20 30 0D 0A 2E 79 70 6F 73 09 64 77 20 .dw 0...ypos.dw
00C8D0: 30 0D 0A 2E 6C 65 6E 67 74 68 09 64 77 20 30 0D 0...length.dw 0.
00C8E0: 0A 2E 64 65 70 74 68 09 64 77 20 30 0D 0A 0D 0A ..depth.dw 0....
00C8F0: 09 3B 7C 4D 4F 44 45 31 54 4F 32 0D 0A 0D 0A 2E .;|MODE1TO2.....
00C900: 6D 31 74 6F 32 09 6C 64 20 68 6C 2C 26 43 30 30 m1to2.ld hl,&C00
00C910: 30 0D 0A 0D 0A 09 3B 2B 2B 2B 20 4D 61 69 6E 20 0.....;+++ Main
00C920: 6C 6F 6F 70 0D 0A 0D 0A 2E 6D 6C 6F 6F 70 09 6C loop.....mloop.l
00C930: 64 20 63 2C 28 68 6C 29 0D 0A 09 63 61 6C 6C 20 d c,(hl)...call
00C940: 72 6F 75 74 6E 65 0D 0A 09 6C 64 20 28 68 6C 29 routne...ld (hl)
00C950: 2C 64 0D 0A 0D 0A 09 69 6E 63 20 68 6C 0D 0A 09 ,d.....inc hl...
00C960: 6C 64 20 61 2C 68 3A 20 6F 72 20 61 3A 20 6A 72 ld a,h: or a: jr
00C970: 20 6E 7A 2C 6D 6C 6F 6F 70 0D 0A 09 72 65 74 0D nz,mloop...ret.
00C980: 0A 0D 0A 09 3B 2B 2B 2B 20 53 75 62 72 6F 75 74 ....;+++ Subrout
00C990: 69 6E 65 0D 0A 0D 0A 2E 72 6F 75 74 6E 65 09 6C ine.....routne.l
00C9A0: 64 20 64 2C 30 0D 0A 09 6C 64 20 62 2C 34 0D 0A d d,0...ld b,4..
00C9B0: 0D 0A 2E 6C 6F 6F 70 09 6C 64 20 61 2C 63 0D 0A ...loop.ld a,c..
00C9C0: 09 61 6E 64 20 31 37 0D 0A 09 72 72 63 20 63 0D .and 17...rrc c.
00C9D0: 0A 0D 0A 09 6F 72 20 61 3A 20 20 6A 72 20 7A 2C ....or a: jr z,
00C9E0: 61 73 65 74 0D 0A 0D 0A 09 63 70 20 31 36 3A 20 aset.....cp 16:
00C9F0: 6A 72 20 6E 7A 2C 6E 6F 74 31 36 0D 0A 09 6C 64 jr nz,not16...ld
00CA00: 20 28 68 6C 29 2C 64 0D 0A 09 6C 64 20 64 65 2C (hl),d...ld de,
00CA10: 28 65 62 6F 74 74 6D 29 3A 09 69 6E 63 20 64 65 (ebottm):.inc de
00CA20: 3A 20 69 6E 63 20 64 65 3A 09 6C 64 20 6C 2C 28 : inc de:.ld l,(
00CA30: 69 78 2B 30 29 3A 20 6C 64 20 68 2C 28 69 78 2B ix+0): ld h,(ix+
00CA40: 31 29 3A 20 6C 64 20 28 68 6C 29 2C 65 3A 20 69 1): ld (hl),e: i
00CA50: 6E 63 20 68 6C 3A 20 6C 64 20 28 68 6C 29 2C 64 nc hl: ld (hl),d
00CA60: 0D 0A 09 72 65 74 0D 0A 0D 0A 2E 65 6C 65 66 74 ...ret.....eleft
00CA70: 09 64 77 20 30 0D 0A 2E 65 72 69 67 68 74 09 64 .dw 0...eright.d
00CA80: 77 20 30 0D 0A 2E 65 74 6F 70 09 64 77 20 30 0D w 0...etop.dw 0.
00CA90: 0A 2E 65 62 6F 74 74 6D 09 64 77 20 30 0D 0A 0D ..ebottm.dw 0...
00CAA0: 0A 0D 0A 09 3B 7C 43 41 54 0D 0A 0D 0A 2E 63 61 ....;|CAT.....ca
00CAB0: 74 09 6C 64 20 64 65 2C 62 75 66 66 0D 0A 09 6A t.ld de,buff...j
00CAC0: 70 20 26 42 43 39 42 0D 0A 0D 0A 09 3B 7C 43 4F p &BC9B.....;|CO
00CAD0: 50 59 48 32 4C 0D 0A 0D 0A 2E 63 70 79 68 32 6C PYH2L.....cpyh2l
00CAE0: 09 6C 64 20 64 65 2C 26 34 30 30 30 0D 0A 09 6C .ld de,&4000...l
00CAF0: 64 20 68 6C 2C 26 43 30 30 30 0D 0A 09 6C 64 20 d hl,&C000...ld
00CB00: 62 63 2C 26 34 30 30 30 0D 0A 09 6C 64 69 72 3A bc,&4000...ldir:
00CB10: 09 72 65 74 0D 0A 0D 0A 09 3B 7C 43 4F 50 59 4C .ret.....;|COPYL
00CB20: 32 48 0D 0A 0D 0A 2E 63 70 79 6C 32 68 09 6C 64 2H.....cpyl2h.ld
00CB30: 20 64 65 2C 26 43 30 30 30 0D 0A 09 6C 64 20 68 de,&C000...ld h
00CB40: 6C 2C 26 34 30 30 30 0D 0A 09 6C 64 20 62 63 2C l,&4000...ld bc,
00CB50: 26 34 30 30 30 0D 0A 09 6C 64 69 72 3A 09 72 65 &4000...ldir:.re
00CB60: 74 0D 0A 0D 0A 09 3B 7C 46 41 44 45 4C 32 48 0D t.....;|FADEL2H.
00CB70: 0A 0D 0A 2E 66 64 65 6C 32 68 09 6C 64 20 68 6C ....fdel2h.ld hl
00CB80: 2C 26 43 30 30 30 0D 0A 2E 66 64 65 32 6F 6C 09 ,&C000...fde2ol.
00CB90: 6C 64 20 62 63 2C 32 33 34 30 3A 20 6C 64 20 64 ld bc,2340: ld d
00CBA0: 65 2C 37 0D 0A 09 70 75 73 68 20 68 6C 0D 0A 2E e,7...push hl...
00CBB0: 66 64 65 32 6C 70 09 20 72 65 73 20 37 2C 68 3A fde2lp. res 7,h:
00CBC0: 20 6C 64 20 61 2C 28 68 6C 29 0D 0A 09 20 73 65 ld a,(hl)... se
00CBD0: 74 20 37 2C 68 3A 20 6C 64 20 28 68 6C 29 2C 61 t 7,h: ld (hl),a
00CBE0: 0D 0A 09 20 61 64 64 20 68 6C 2C 64 65 3A 20 64 ... add hl,de: d
00CBF0: 65 63 20 62 63 0D 0A 09 20 6C 64 20 61 2C 62 3A ec bc... ld a,b:
00CC00: 20 61 2C 33 0D 0A 09 6A 72 20 61 73 65 74 0D 0A a,3...jr aset..
00CC10: 0D 0A 2E 6E 6F 74 31 36 09 63 70 20 31 3A 20 20 ...not16.cp 1:
00CC20: 6A 72 20 7A 2C 61 73 65 74 0D 0A 09 6C 64 20 61 jr z,aset...ld a
00CC30: 2C 32 0D 0A 0D 0A 2E 61 73 65 74 09 6F 72 20 64 ,2.....aset.or d
00CC40: 0D 0A 09 72 72 63 61 3A 20 72 72 63 61 0D 0A 09 ...rrca: rrca...
00CC50: 6C 64 20 64 2C 61 0D 0A 09 64 6A 6E 7A 20 6C 6F ld d,a...djnz lo
00CC60: 6F 70 0D 0A 0D 0A 09 72 65 74 0D 0A 0D 0A 09 3B op.....ret.....;
00CC70: 7C 57 49 4E 4C 4F 41 44 2C 40 72 65 73 75 6C 74 |WINLOAD,@result
00CC80: 25 2C 66 69 6C 65 6E 61 6D 65 24 0D 0A 0D 0A 2E %,filename$.....
00CC90: 77 69 6E 6C 6F 64 09 63 61 6C 6C 20 6F 70 65 6E winlod.call open
00CCA0: 69 6E 0D 0A 0D 0A 09 6C 64 20 61 2C 32 3A 20 63 in.....ld a,2: c
00CCB0: 61 6C 6C 20 26 42 43 30 45 0D 0A 09 6C 64 20 68 all &BC0E...ld h
00CCC0: 6C 2C 26 34 30 30 30 3A 20 63 61 6C 6C 20 26 42 l,&4000: call &B
00CCD0: 43 38 33 3A 20 63 61 6C 6C 20 26 42 43 37 41 0D C83: call &BC7A.
00CCE0: 0A 09 6C 64 20 68 6C 2C 26 33 46 46 42 2B 33 3A ..ld hl,&3FFB+3:
00CCF0: 20 6C 64 20 64 65 2C 28 68 65 69 67 68 74 29 0D ld de,(height).
00CD00: 0A 09 61 64 64 20 68 6C 2C 64 65 0D 0A 09 6C 64 ..add hl,de...ld
00CD10: 20 65 2C 28 68 6C 29 3A 20 6C 64 20 64 2C 30 3A e,(hl): ld d,0:
00CD20: 20 6C 64 20 62 63 2C 30 0D 0A 09 64 65 63 20 68 ld bc,0...dec h
00CD30: 6C 3A 20 64 65 63 20 68 6C 3A 20 64 65 63 20 68 l: dec hl: dec h
00CD40: 6C 3A 20 72 65 73 20 36 2C 68 0D 0A 2E 64 69 76 l: res 6,h...div
00CD50: 5F 6C 70 09 6F 72 20 61 3A 20 73 62 63 20 68 6C _lp.or a: sbc hl
00CD60: 2C 64 65 3A 20 69 6E 63 20 62 63 0D 0A 09 6A 72 ,de: inc bc...jr
00CD70: 20 6E 7A 2C 64 69 76 5F 6C 70 0D 0A 09 6C 64 20 nz,div_lp...ld
00CD80: 61 2C 65 0D 0A 0D 0A 09 6C 64 20 64 65 2C 26 43 a,e.....ld de,&C
00CD90: 30 30 30 3A 20 6C 64 20 68 6C 2C 26 34 30 30 30 000: ld hl,&4000
00CDA0: 0D 0A 2E 6D 77 6C 6F 6F 70 09 70 75 73 68 20 61 ...mwloop.push a
00CDB0: 66 0D 0A 09 20 70 75 73 68 20 62 63 3A 20 70 75 f... push bc: pu
00CDC0: 73 68 20 64 65 0D 0A 09 20 20 6C 64 69 72 0D 0A sh de... ldir..
00CDD0: 09 20 70 6F 70 20 64 65 3A 20 70 6F 70 20 62 63 . pop de: pop bc
00CDE0: 0D 0A 09 20 65 78 20 64 65 2C 68 6C 09 09 09 3B ... ex de,hl...;
00CDF0: 6E 65 78 74 20 73 63 72 65 65 6E 20 6C 69 6E 65 next screen line
00CE00: 20 6F 72 20 63 0D 0A 09 20 6A 72 20 6E 7A 2C 66 or c... jr nz,f
00CE10: 64 65 32 6C 70 0D 0A 09 70 6F 70 20 68 6C 0D 0A de2lp...pop hl..
00CE20: 09 69 6E 63 20 68 6C 3A 20 6C 64 20 61 2C 6C 0D .inc hl: ld a,l.
00CE30: 0A 09 63 70 20 37 3A 20 6A 72 20 6E 7A 2C 66 64 ..cp 7: jr nz,fd
00CE40: 65 32 6F 6C 0D 0A 09 72 65 74 0D 0A 0D 0A 09 3B e2ol...ret.....;
00CE50: 7C 46 41 44 45 53 43 52 20 2D 20 6A 75 73 74 20 |FADESCR - just
00CE60: 66 6F 72 20 66 75 6E 21 0D 0A 0D 0A 2E 66 61 64 for fun!.....fad
00CE70: 65 09 6C 64 20 68 6C 2C 26 43 30 30 30 0D 0A 2E e.ld hl,&C000...
00CE80: 66 61 64 65 6F 6C 09 6C 64 20 62 63 2C 32 33 34 fadeol.ld bc,234
00CE90: 30 3A 20 6C 64 20 64 65 2C 37 0D 0A 09 70 75 73 0: ld de,7...pus
00CEA0: 68 20 68 6C 0D 0A 2E 66 61 64 65 6C 70 09 20 6C h hl...fadelp. l
00CEB0: 64 20 28 68 6C 29 2C 30 3A 20 61 64 64 20 68 6C d (hl),0: add hl
00CEC0: 2C 64 65 0D 0A 09 20 64 65 63 20 62 63 3A 20 6C ,de... dec bc: l
00CED0: 64 20 61 2C 62 3A 20 6F 72 20 63 0D 0A 09 20 6A d a,b: or c... j
00CEE0: 72 20 6E 7A 2C 66 61 64 65 6C 70 0D 0A 09 70 6F r nz,fadelp...po
00CEF0: 70 20 68 6C 0D 0A 09 69 6E 63 20 68 6C 3A 20 6C p hl...inc hl: l
00CF00: 64 20 61 2C 6C 0D 0A 09 63 70 20 37 3A 20 6A 72 d a,l...cp 7: jr
00CF10: 20 6E 7A 2C 66 61 64 65 6F 6C 0D 0A 09 72 65 74 nz,fadeol...ret
00CF20: 0D 0A 0D 0A 09 3B 7C 53 43 52 4C 4F 41 44 2C 40 .....;|SCRLOAD,@
00CF30: 72 65 73 75 6C 74 25 2C 66 69 6C 65 6E 61 6D 65 result%,filename
00CF40: 24 0D 0A 0D 0A 2E 73 63 72 6C 6F 64 09 63 61 6C $.....scrlod.cal
00CF50: 6C 20 6F 70 65 6E 69 6E 0D 0A 0D 0A 09 70 75 73 l openin.....pus
00CF60: 68 20 62 63 0D 0A 09 20 6C 64 20 61 2C 32 3A 20 h bc... ld a,2:
00CF70: 63 61 6C 6C 20 26 42 43 30 45 0D 0A 09 70 6F 70 call &BC0E...pop
00CF80: 20 68 6C 0D 0A 09 6C 64 20 64 65 2C 31 36 32 35 hl...ld de,1625
00CF90: 36 3A 20 6F 72 20 61 3A 20 73 62 63 20 68 6C 2C 6: or a: sbc hl,
00CFA0: 64 65 0D 0A 09 6A 72 20 63 2C 73 63 6F 6D 70 72 de...jr c,scompr
00CFB0: 0D 0A 09 6C 64 20 68 6C 2C 26 43 30 30 30 3A 20 ...ld hl,&C000:
00CFC0: 63 61 6C 6C 20 26 42 43 38 33 3A 20 6A 70 20 26 call &BC83: jp &
00CFD0: 42 43 37 41 09 3B 6E 6F 74 20 63 6F 6D 70 72 65 BC7A.;not compre
00CFE0: 73 73 65 64 0D 0A 2E 73 63 6F 6D 70 72 09 6C 64 ssed...scompr.ld
00CFF0: 20 68 6C 2C 26 34 30 30 30 3A 20 63 61 6C 6C 20 hl,&4000: call
00D000: 20 70 6C 65 61 73 65 0D 0A 09 20 20 63 61 6C 6C please... call
00D010: 20 6E 6C 69 6E 65 0D 0A 09 20 65 78 20 64 65 2C nline... ex de,
00D020: 68 6C 0D 0A 09 70 6F 70 20 61 66 0D 0A 09 64 65 hl...pop af...de
00D030: 63 20 61 3A 20 6A 72 20 6E 7A 2C 6D 77 6C 6F 6F c a: jr nz,mwloo
00D040: 70 0D 0A 09 72 65 74 0D 0A 0D 0A 09 3B 7C 52 53 p...ret.....;|RS
00D050: 58 4F 46 46 0D 0A 09 3B 28 63 29 20 43 52 54 43 XOFF...;(c) CRTC
00D060: 20 6F 66 20 44 69 73 63 6F 76 65 72 79 20 66 6F of Discovery fo
00D070: 72 20 52 65 61 6C 57 6F 72 6C 64 20 43 6F 64 69 r RealWorld Codi
00D080: 6E 67 0D 0A 0D 0A 2E 72 73 78 6F 66 66 09 6C 64 ng.....rsxoff.ld
00D090: 20 68 6C 2C 28 26 42 43 44 32 29 3A 20 72 65 73 hl,(&BCD2): res
00D0A0: 20 37 2C 68 0D 0A 09 63 61 6C 6C 20 26 42 39 30 7,h...call &B90
00D0B0: 36 09 09 09 3B 6C 6F 77 65 72 20 52 4F 4D 20 6F 6...;lower ROM o
00D0C0: 6E 0D 0A 09 69 6E 63 20 68 6C 3A 20 69 6E 63 20 n...inc hl: inc
00D0D0: 68 6C 3A 20 69 6E 63 20 68 6C 0D 0A 09 6C 64 20 hl: inc hl...ld
00D0E0: 65 2C 28 68 6C 29 3A 20 69 6E 63 20 68 6C 0D 0A e,(hl): inc hl..
00D0F0: 09 6C 64 20 64 2C 28 68 6C 29 3A 20 70 75 73 68 .ld d,(hl): push
00D100: 20 64 65 3A 20 65 78 20 64 65 2C 68 6C 09 3B 48 de: ex de,hl.;H
00D110: 4C 3D 77 6F 72 6B 73 70 61 63 65 20 70 6F 69 6E L=workspace poin
00D120: 74 65 72 0D 0A 09 20 6C 64 20 65 2C 28 68 6C 29 ter... ld e,(hl)
00D130: 3A 20 69 6E 63 20 68 6C 0D 0A 09 20 6C 64 20 64 : inc hl... ld d
00D140: 2C 28 68 6C 29 3A 20 65 78 20 64 65 2C 68 6C 09 ,(hl): ex de,hl.
00D150: 09 3B 48 4C 3D 61 64 64 72 65 73 73 20 6F 66 20 .;HL=address of
00D160: 52 53 58 20 77 6F 72 6B 73 70 61 63 65 0D 0A 09 RSX workspace...
00D170: 20 6C 64 20 65 2C 28 68 6C 29 3A 20 69 6E 63 20 ld e,(hl): inc
00D180: 68 6C 0D 0A 09 6C 64 20 64 2C 28 68 6C 29 3A 20 hl...ld d,(hl):
00D190: 70 6F 70 20 69 78 09 09 3B 44 45 3D 61 64 64 72 pop ix..;DE=addr
00D1A0: 65 73 73 20 6F 66 20 6E 65 78 74 20 52 53 58 20 ess of next RSX
00D1B0: 77 6F 72 6B 73 70 61 63 65 0D 0A 09 6C 64 20 28 workspace...ld (
00D1C0: 69 78 29 2C 65 3A 20 6C 64 20 28 69 78 2B 31 29 ix),e: ld (ix+1)
00D1D0: 2C 64 09 09 3B 75 70 64 61 74 65 20 77 6F 72 6B ,d..;update work
00D1E0: 73 70 61 63 65 20 70 6F 69 6E 74 65 72 0D 0A 09 space pointer...
00D1F0: 63 61 6C 6C 20 26 42 39 30 43 09 09 09 3B 72 65 call &B90C...;re
00D200: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
00D210: 0B 00 01 00 02 09 4E E5 0B 00 C7 02 00 00 00 02 ......N.........
00D220: 0B 00 C3 02 00 00 00 02 0B 00 C8 02 00 00 00 02 ................
00D230: 0B 00 C4 02 00 00 00 02 0B 00 C9 02 00 00 00 02 ................
00D240: 0B 00 C5 02 00 00 00 02 0B 00 C1 02 00 00 00 02 ................
00D250: 0B 00 C6 02 00 00 00 02 0B 00 C2 02 00 00 00 02 ................
00D260: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00D270: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00D280: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00D290: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00D2A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00D2B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00D2C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00D2D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00D2E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00D2F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00D300: 30 3A 20 6F 75 74 20 28 63 29 2C 63 0D 0A 09 70 0: out (c),c...p
00D310: 6F 70 20 62 63 3A 20 72 65 74 0D 0A 0D 0A 0D 0A op bc: ret......
00D320: 09 3B 50 72 69 6E 74 20 6D 65 73 73 61 67 65 20 .;Print message
00D330: 28 61 6C 6C 20 72 6F 77 73 29 0D 0A 0D 0A 2E 70 (all rows).....p
00D340: 72 69 6E 74 09 6C 64 20 61 2C 28 68 65 69 67 68 rint.ld a,(heigh
00D350: 74 29 3A 20 6C 64 20 6C 2C 61 0D 0A 09 6C 64 20 t): ld l,a...ld
00D360: 61 2C 28 6C 61 73 74 6C 66 29 3A 20 61 64 64 20 a,(lastlf): add
00D370: 61 2C 6C 0D 0A 09 6C 64 20 68 6C 2C 6E 6F 66 74 a,l...ld hl,noft
00D380: 78 74 0D 0A 09 6F 72 20 61 3A 20 6A 70 20 7A 2C xt...or a: jp z,
00D390: 73 74 72 69 6E 67 0D 0A 0D 0A 09 6C 64 20 61 2C string.....ld a,
00D3A0: 28 70 62 6C 6F 6E 67 29 0D 0A 09 6C 64 20 68 6C (pblong)...ld hl
00D3B0: 2C 70 61 72 74 78 74 0D 0A 09 6F 72 20 61 3A 20 ,partxt...or a:
00D3C0: 6A 70 20 7A 2C 73 74 72 69 6E 67 0D 0A 0D 0A 09 jp z,string.....
00D3D0: 6C 64 20 61 2C 31 33 3A 20 63 61 6C 6C 20 70 63 ld a,13: call pc
00D3E0: 68 61 72 0D 0A 09 6C 64 20 61 2C 30 3A 20 6C 64 har...ld a,0: ld
00D3F0: 20 28 72 6F 77 29 2C 61 0D 0A 0D 0A 2E 70 72 61 (row),a.....pra
00D400: 5F 6C 70 09 70 75 73 68 20 62 63 0D 0A 09 20 62 _lp.push bc... b
00D410: 69 74 20 30 2C 62 3A 20 63 61 6C 6C 20 6E 7A 2C it 0,b: call nz,
00D420: 63 74 61 62 0D 0A 09 20 63 61 6C 6C 20 70 72 69 ctab... call pri
00D430: 6E 74 31 0D 0A 0D 0A 09 20 6C 64 20 61 2C 31 33 nt1..... ld a,13
00D440: 3A 20 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A 09 : call pchar...
00D450: 20 6C 64 20 61 2C 65 73 63 3A 20 63 61 6C 6C 20 ld a,esc: call
00D460: 70 63 68 61 72 0D 0A 09 20 6C 64 20 61 2C 22 4A pchar... ld a,"J
00D470: 22 3A 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A 0D ": call pchar...
00D480: 0A 09 20 6C 64 20 61 2C 28 68 65 69 67 68 74 29 .. ld a,(height)
00D490: 0D 0A 09 20 64 65 63 20 61 0D 0A 09 20 6C 64 20 ... dec a... ld
00D4A0: 68 6C 2C 72 6F 77 0D 0A 09 20 69 6E 63 20 28 68 hl,row... inc (h
00D4B0: 6C 29 0D 0A 09 20 63 70 20 28 68 6C 29 3A 20 6A l)... cp (hl): j
00D4C0: 72 20 6E 63 2C 64 6F 5F 37 6C 66 0D 0A 0D 0A 09 r nc,do_7lf.....
00D4D0: 20 3B 49 66 20 6C 61 73 74 20 74 69 6D 65 20 61 ;If last time a
00D4E0: 72 6F 75 6E 64 0D 0A 0D 0A 09 20 6C 64 20 61 2C round..... ld a,
00D4F0: 28 70 74 79 70 65 29 0D 0A 09 20 6F 72 20 61 3A (ptype)... or a:
00D500: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D510: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D520: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D530: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D540: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D550: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D560: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D570: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D580: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D590: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D5A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D5B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D5C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D5D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D5E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D5F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D600: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D610: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D620: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D630: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D640: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D650: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D660: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D670: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D680: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D690: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D6A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D6B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D6C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D6D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D6E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D6F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
00D700: 20 6A 72 20 7A 2C 6C 64 72 61 66 74 0D 0A 0D 0A jr z,ldraft....
00D710: 2E 6C 6E 6C 71 09 20 6C 64 20 68 6C 2C 72 6F 77 .lnlq. ld hl,row
00D720: 09 09 3B 6C 61 73 74 20 74 69 6D 65 2C 20 4E 4C ..;last time, NL
00D730: 51 0D 0A 09 20 64 65 63 20 28 68 6C 29 0D 0A 0D Q... dec (hl)...
00D740: 0A 09 20 6C 64 20 61 2C 31 3A 20 63 61 6C 6C 20 .. ld a,1: call
00D750: 70 63 68 61 72 0D 0A 09 70 6F 70 20 62 63 0D 0A pchar...pop bc..
00D760: 09 62 69 74 20 30 2C 62 3A 20 63 61 6C 6C 20 6E .bit 0,b: call n
00D770: 7A 2C 63 74 61 62 0D 0A 09 63 61 6C 6C 20 70 72 z,ctab...call pr
00D780: 69 6E 74 31 0D 0A 0D 0A 09 6C 64 20 61 2C 31 33 int1.....ld a,13
00D790: 3A 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A 09 6C : call pchar...l
00D7A0: 64 20 61 2C 65 73 63 3A 20 63 61 6C 6C 20 70 63 d a,esc: call pc
00D7B0: 68 61 72 0D 0A 09 6C 64 20 61 2C 22 4A 22 3A 20 har...ld a,"J":
00D7C0: 63 61 6C 6C 20 70 63 68 61 72 0D 0A 09 6C 64 20 call pchar...ld
00D7D0: 61 2C 28 6C 61 73 74 6C 66 29 3A 20 64 65 63 20 a,(lastlf): dec
00D7E0: 61 3A 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A 09 a: call pchar...
00D7F0: 72 65 74 0D 0A 0D 0A 2E 6C 64 72 61 66 74 09 6C ret.....ldraft.l
00D800: 64 20 61 2C 28 6C 61 73 74 6C 66 29 0D 0A 09 63 d a,(lastlf)...c
00D810: 61 6C 6C 20 70 63 68 61 72 09 09 3B 6C 61 73 74 all pchar..;last
00D820: 20 74 69 6D 65 2C 20 64 72 61 66 74 0D 0A 09 70 time, draft...p
00D830: 6F 70 20 62 63 3A 20 72 65 74 0D 0A 0D 0A 09 20 op bc: ret.....
00D840: 3B 49 66 20 6E 6F 74 20 6C 61 73 74 20 74 69 6D ;If not last tim
00D850: 65 0D 0A 0D 0A 2E 64 6F 5F 37 6C 66 09 20 6C 64 e.....do_7lf. ld
00D860: 20 61 2C 28 70 74 79 70 65 29 0D 0A 09 20 6F 72 a,(ptype)... or
00D870: 20 61 3A 20 6A 72 20 7A 2C 64 72 61 66 74 09 3B a: jr z,draft.;
00D880: 64 72 61 66 74 20 6F 72 20 4E 4C 51 3F 0D 0A 0D draft or NLQ?...
00D890: 0A 2E 6E 6C 71 09 20 6C 64 20 68 6C 2C 72 6F 77 ..nlq. ld hl,row
00D8A0: 09 09 3B 4E 4C 51 2C 0D 0A 09 20 64 65 63 20 28 ..;NLQ,... dec (
00D8B0: 68 6C 29 09 09 3B 73 6F 20 67 6F 20 62 61 63 6B hl)..;so go back
00D8C0: 20 74 6F 20 72 6F 77 20 6A 75 73 74 20 64 6F 6E to row just don
00D8D0: 65 0D 0A 0D 0A 09 20 6C 64 20 61 2C 31 3A 20 63 e..... ld a,1: c
00D8E0: 61 6C 6C 20 70 63 68 61 72 0D 0A 09 70 6F 70 20 all pchar...pop
00D8F0: 62 63 3A 20 70 75 73 68 20 62 63 0D 0A 09 20 62 bc: push bc... b
00D900: 09 0D 0A 09 3B 50 72 6F 2D 45 78 74 20 76 31 2E ....;Pro-Ext v1.
00D910: 35 30 20 72 6F 75 74 69 6E 65 73 0D 0A 09 3B 28 50 routines...;(
00D920: 63 29 20 31 39 39 33 20 52 69 63 68 61 72 64 20 c) 1993 Richard
00D930: 46 61 69 72 68 75 72 73 74 0D 0A 0D 0A 09 6F 72 Fairhurst.....or
00D940: 67 20 26 39 34 30 30 0D 0A 09 77 72 69 74 65 20 g &9400...write
00D950: 22 70 72 6F 2D 65 78 74 2E 62 69 6E 22 0D 0A 09 "pro-ext.bin"...
00D960: 6E 6F 6C 69 73 74 0D 0A 0D 0A 65 73 63 09 65 71 nolist....esc.eq
00D970: 75 20 32 37 0D 0A 0D 0A 09 3B 49 6E 69 74 69 61 u 27.....;Initia
00D980: 6C 69 73 65 20 73 79 73 74 65 6D 0D 0A 0D 0A 2E lise system.....
00D990: 69 6E 69 74 09 6C 64 20 61 2C 28 26 42 44 32 42 init.ld a,(&BD2B
00D9A0: 29 0D 0A 09 63 70 20 26 43 33 0D 0A 09 72 65 74 )...cp &C3...ret
00D9B0: 20 7A 09 09 09 3B 72 65 74 75 72 6E 20 69 66 20 z...;return if
00D9C0: 61 6C 72 65 61 64 79 20 69 6E 69 74 69 61 6C 69 already initiali
00D9D0: 73 65 64 0D 0A 0D 0A 09 6C 64 20 69 78 2C 26 42 sed.....ld ix,&B
00D9E0: 44 32 42 09 09 3B 72 65 64 69 72 65 63 74 20 70 D2B..;redirect p
00D9F0: 72 69 6E 74 65 72 20 6A 75 6D 70 0D 0A 09 6C 64 rinter jump...ld
00DA00: 20 69 79 2C 6F 72 69 67 0D 0A 09 6C 64 20 68 6C iy,orig...ld hl
00DA10: 2C 70 72 65 64 72 0D 0A 0D 0A 09 6C 64 20 61 2C ,predr.....ld a,
00DA20: 28 69 78 29 3A 20 20 20 6C 64 20 65 2C 28 69 78 (ix): ld e,(ix
00DA30: 2B 31 29 3A 20 6C 64 20 64 2C 28 69 78 2B 32 29 +1): ld d,(ix+2)
00DA40: 0D 0A 09 6C 64 20 28 69 79 29 2C 61 3A 20 20 20 ...ld (iy),a:
00DA50: 6C 64 20 28 69 79 2B 31 29 2C 65 3A 20 6C 64 20 ld (iy+1),e: ld
00DA60: 28 69 79 2B 32 29 2C 64 0D 0A 09 6C 64 20 28 69 (iy+2),d...ld (i
00DA70: 78 29 2C 26 43 33 3A 20 6C 64 20 28 69 78 2B 31 x),&C3: ld (ix+1
00DA80: 29 2C 6C 3A 20 6C 64 20 28 69 78 2B 32 29 2C 68 ),l: ld (ix+2),h
00DA90: 0D 0A 0D 0A 09 6C 64 20 68 6C 2C 77 6B 73 70 0D .....ld hl,wksp.
00DAA0: 0A 09 6C 64 20 62 63 2C 63 6F 6D 5F 74 0D 0A 09 ..ld bc,com_t...
00DAB0: 6A 70 20 26 42 43 44 31 09 09 3B 69 6E 69 74 69 jp &BCD1..;initi
00DAC0: 61 6C 69 73 65 20 52 53 58 0D 0A 0D 0A 09 3B 52 alise RSX.....;R
00DAD0: 53 58 20 63 6F 6D 6D 61 6E 64 20 74 61 62 6C 65 SX command table
00DAE0: 0D 0A 0D 0A 2E 63 6F 6D 5F 74 09 64 77 20 6E 61 .....com_t.dw na
00DAF0: 6D 65 5F 74 0D 0A 09 6A 70 20 70 78 68 65 6C 70 me_t...jp pxhelp
00DB00: 69 74 20 30 2C 62 3A 20 63 61 6C 6C 20 6E 7A 2C it 0,b: call nz,
00DB10: 63 74 61 62 0D 0A 09 20 63 61 6C 6C 20 70 72 69 ctab... call pri
00DB20: 6E 74 31 09 09 3B 64 6F 20 69 74 20 61 67 61 69 nt1..;do it agai
00DB30: 6E 0D 0A 0D 0A 09 20 6C 64 20 68 6C 2C 72 6F 77 n..... ld hl,row
00DB40: 0D 0A 09 20 69 6E 63 20 28 68 6C 29 09 09 3B 61 ... inc (hl)..;a
00DB50: 6E 64 20 6F 6E 74 6F 20 6E 65 78 74 20 72 6F 77 nd onto next row
00DB60: 21 0D 0A 0D 0A 09 20 6C 64 20 61 2C 31 33 3A 20 !..... ld a,13:
00DB70: 63 61 6C 6C 20 70 63 68 61 72 0D 0A 09 20 6C 64 call pchar... ld
00DB80: 20 61 2C 65 73 63 3A 20 63 61 6C 6C 20 70 63 68 a,esc: call pch
00DB90: 61 72 0D 0A 09 20 6C 64 20 61 2C 22 4A 22 3A 20 ar... ld a,"J":
00DBA0: 63 61 6C 6C 20 70 63 68 61 72 0D 0A 09 20 6C 64 call pchar... ld
00DBB0: 20 61 2C 32 30 3A 20 63 61 6C 6C 20 70 63 68 61 a,20: call pcha
00DBC0: 72 09 3B 64 6F 20 74 68 65 20 4C 46 20 62 69 74 r.;do the LF bit
00DBD0: 0D 0A 09 70 6F 70 20 62 63 0D 0A 09 6A 70 20 70 ...pop bc...jp p
00DBE0: 72 61 5F 6C 70 09 09 3B 61 6E 64 20 6C 6F 6F 70 ra_lp..;and loop
00DBF0: 0D 0A 0D 0A 2E 64 72 61 66 74 09 6C 64 20 61 2C .....draft.ld a,
00DC00: 32 31 3A 20 63 61 6C 6C 20 70 63 68 61 72 09 3B 21: call pchar.;
00DC10: 69 66 20 64 72 61 66 74 20 71 75 61 6C 69 74 79 if draft quality
00DC20: 0D 0A 09 70 6F 70 20 62 63 0D 0A 09 6A 70 20 70 ...pop bc...jp p
00DC30: 72 61 5F 6C 70 09 09 3B 6C 6F 6F 70 0D 0A 0D 0A ra_lp..;loop....
00DC40: 09 3B 50 72 69 6E 74 20 6D 65 73 73 61 67 65 20 .;Print message
00DC50: 66 72 6F 6D 20 70 61 72 61 6D 65 74 65 72 20 62 from parameter b
00DC60: 6C 6F 63 6B 20 28 6F 6E 65 20 72 6F 77 29 0D 0A lock (one row)..
00DC70: 0D 0A 2E 70 72 69 6E 74 31 09 63 61 6C 6C 20 63 ...print1.call c
00DC80: 61 6C 63 6C 6E 3A 20 78 6F 72 20 61 0D 0A 09 62 alcln: xor a...b
00DC90: 69 74 20 37 2C 6C 3A 20 6A 72 20 7A 2C 6E 6F 70 it 7,l: jr z,nop
00DCA0: 72 6F 62 0D 0A 09 6C 64 20 61 2C 32 3A 20 72 65 rob...ld a,2: re
00DCB0: 73 20 37 2C 6C 0D 0A 0D 0A 2E 6E 6F 70 72 6F 62 s 7,l.....noprob
00DCC0: 09 6C 64 20 28 78 74 36 34 29 2C 61 0D 0A 09 6C .ld (xt64),a...l
00DCD0: 64 20 28 63 6F 6C 75 6D 6E 29 2C 68 6C 0D 0A 0D d (column),hl...
00DCE0: 0A 09 6C 64 20 61 2C 65 73 63 3A 20 20 20 20 20 ..ld a,esc:
00DCF0: 20 20 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A 09 call pchar...
00DD00: 0D 0A 0D 0A 2E 6E 61 6D 65 5F 74 09 73 74 72 20 .....name_t.str
00DD10: 22 50 58 48 45 4C 50 22 0D 0A 09 64 62 20 30 0D "PXHELP"...db 0.
00DD20: 0A 0D 0A 09 3B 4C 6F 61 64 20 66 6F 6E 74 20 69 ....;Load font i
00DD30: 6E 74 6F 20 6D 65 6D 6F 72 79 0D 0A 0D 0A 2E 6C nto memory.....l
00DD40: 6F 61 64 09 6C 64 20 68 6C 2C 70 62 6C 6F 63 6B oad.ld hl,pblock
00DD50: 0D 0A 09 6C 64 20 61 2C 28 70 62 6C 6F 6E 67 29 ...ld a,(pblong)
00DD60: 3A 20 6C 64 20 62 2C 61 0D 0A 09 6C 64 20 64 65 : ld b,a...ld de
00DD70: 2C 26 34 30 30 30 0D 0A 09 63 61 6C 6C 20 73 5F ,&4000...call s_
00DD80: 42 43 37 37 09 09 3B 6F 70 65 6E 20 66 69 6C 65 BC77..;open file
00DD90: 0D 0A 09 6A 70 20 6E 63 2C 6C 64 65 72 72 0D 0A ...jp nc,lderr..
00DDA0: 0D 0A 09 6C 64 20 63 2C 32 35 35 0D 0A 09 6C 64 ...ld c,255...ld
00DDB0: 20 62 2C 31 30 0D 0A 2E 63 68 6B 6C 70 09 63 61 b,10...chklp.ca
00DDC0: 6C 6C 20 73 5F 42 43 38 30 0D 0A 09 78 6F 72 20 ll s_BC80...xor
00DDD0: 63 3A 20 6C 64 20 63 2C 61 0D 0A 09 64 6A 6E 7A c: ld c,a...djnz
00DDE0: 20 63 68 6B 6C 70 0D 0A 0D 0A 09 6C 64 20 61 2C chklp.....ld a,
00DDF0: 63 3A 20 6C 64 20 63 2C 31 0D 0A 09 63 70 20 32 c: ld c,1...cp 2
00DE00: 34 30 3A 20 6A 70 20 6E 7A 2C 6C 64 65 72 72 0D 40: jp nz,lderr.
00DE10: 0A 0D 0A 09 63 61 6C 6C 20 73 5F 42 43 38 30 0D ....call s_BC80.
00DE20: 0A 09 6C 64 20 28 68 65 69 67 68 74 29 2C 61 0D ..ld (height),a.
00DE30: 0A 0D 0A 09 63 61 6C 6C 20 73 5F 42 43 38 30 0D ....call s_BC80.
00DE40: 0A 09 6C 64 20 62 2C 61 0D 0A 09 61 64 64 20 61 ..ld b,a...add a
00DE50: 2C 61 3A 20 61 64 64 20 61 2C 62 09 3B 61 3D 61 ,a: add a,b.;a=a
00DE60: 2A 33 0D 0A 09 6C 64 20 28 6C 61 73 74 6C 66 29 *3...ld (lastlf)
00DE70: 2C 61 0D 0A 0D 0A 09 6C 64 20 62 2C 33 32 0D 0A ,a.....ld b,32..
00DE80: 0D 0A 2E 73 74 72 5F 6C 70 09 70 75 73 68 20 62 ...str_lp.push b
00DE90: 63 0D 0A 0D 0A 09 20 6C 64 20 61 2C 62 0D 0A 09 c..... ld a,b...
00DEA0: 20 63 61 6C 6C 20 73 74 61 64 64 72 09 09 3B 66 call staddr..;f
00DEB0: 69 6E 64 20 73 74 61 72 74 20 61 64 64 72 65 73 ind start addres
00DEC0: 73 0D 0A 09 20 63 61 6C 6C 20 73 5F 42 43 38 30 s... call s_BC80
00DED0: 0D 0A 09 20 63 61 6C 6C 20 70 62 62 79 74 65 09 ... call pbbyte.
00DEE0: 09 3B 70 75 74 20 62 79 74 65 0D 0A 09 20 6C 64 .;put byte... ld
00DEF0: 20 64 2C 61 0D 0A 0D 0A 09 20 6C 64 20 61 2C 28 d,a..... ld a,(
00DF00: 73 20 30 20 69 66 20 75 6E 73 75 63 63 65 73 73 s 0 if unsuccess
00DF10: 66 75 6C 2C 20 31 20 69 66 20 6F 6B 0D 0A 0D 0A ful, 1 if ok....
00DF20: 2E 6F 70 65 6E 69 69 09 63 61 6C 6C 20 6F 70 65 .openii.call ope
00DF30: 6E 69 6E 0D 0A 09 72 65 74 0D 0A 0D 0A 2E 6F 70 nin...ret.....op
00DF40: 65 6E 69 6E 09 63 61 6C 6C 20 26 42 43 37 44 0D enin.call &BC7D.
00DF50: 0A 0D 0A 09 6C 64 20 6C 2C 28 69 78 29 3A 20 6C ....ld l,(ix): l
00DF60: 64 20 68 2C 28 69 78 2B 31 29 0D 0A 09 6C 64 20 d h,(ix+1)...ld
00DF70: 62 2C 28 68 6C 29 3A 20 69 6E 63 20 68 6C 0D 0A b,(hl): inc hl..
00DF80: 09 6C 64 20 65 2C 28 68 6C 29 3A 20 69 6E 63 20 .ld e,(hl): inc
00DF90: 68 6C 0D 0A 09 6C 64 20 64 2C 28 68 6C 29 3A 20 hl...ld d,(hl):
00DFA0: 65 78 20 64 65 2C 68 6C 0D 0A 09 6C 64 20 64 65 ex de,hl...ld de
00DFB0: 2C 62 75 66 66 3A 20 70 75 73 68 20 69 78 0D 0A ,buff: push ix..
00DFC0: 09 63 61 6C 6C 20 26 42 43 37 37 3A 20 70 6F 70 .call &BC77: pop
00DFD0: 20 69 78 0D 0A 0D 0A 09 6A 72 20 63 2C 73 75 63 ix.....jr c,suc
00DFE0: 63 0D 0A 09 6C 64 20 6C 2C 28 69 78 2B 32 29 3A c...ld l,(ix+2):
00DFF0: 20 6C 64 20 68 2C 28 69 78 2B 33 29 0D 0A 09 6C ld h,(ix+3)...l
00E000: 64 20 28 68 6C 29 2C 30 3A 20 69 6E 63 20 68 6C d (hl),0: inc hl
00E010: 0D 0A 09 6C 64 20 28 68 6C 29 2C 30 3A 20 70 6F ...ld (hl),0: po
00E020: 70 20 68 6C 0D 0A 09 72 65 74 0D 0A 0D 0A 2E 73 p hl...ret.....s
00E030: 75 63 63 09 6C 64 20 28 68 65 69 67 68 74 29 2C ucc.ld (height),
00E040: 62 63 0D 0A 09 6C 64 20 6C 2C 28 69 78 2B 32 29 bc...ld l,(ix+2)
00E050: 3A 20 6C 64 20 68 2C 28 69 78 2B 33 29 0D 0A 09 : ld h,(ix+3)...
00E060: 6C 64 20 28 68 6C 29 2C 31 3A 20 69 6E 63 20 68 ld (hl),1: inc h
00E070: 6C 0D 0A 09 6C 64 20 28 68 6C 29 2C 30 3A 20 72 l...ld (hl),0: r
00E080: 65 74 0D 0A 0D 0A 09 3B 2A 2A 2A 20 4E 65 78 74 et.....;*** Next
00E090: 20 6C 69 6E 65 20 64 6F 77 6E 20 66 72 6F 6D 20 line down from
00E0A0: 48 4C 0D 0A 0D 0A 2E 6E 6C 69 6E 65 09 6C 64 20 HL.....nline.ld
00E0B0: 61 2C 38 3A 20 61 64 64 20 68 3A 20 6C 64 20 68 a,8: add h: ld h
00E0C0: 2C 61 0D 0A 09 62 69 74 20 36 2C 61 3A 20 72 65 ,a...bit 6,a: re
00E0D0: 74 20 6E 7A 0D 0A 09 70 75 73 68 20 64 65 0D 0A t nz...push de..
00E0E0: 09 20 6C 64 20 64 65 2C 31 36 33 30 34 3A 20 6F . ld de,16304: o
00E0F0: 72 20 61 3A 20 73 62 63 20 68 6C 2C 64 65 0D 0A r a: sbc hl,de..
00E100: 68 65 69 67 68 74 29 0D 0A 09 20 6C 64 20 62 2C height)... ld b,
00E110: 61 0D 0A 0D 0A 2E 73 74 6F 5F 6C 70 09 20 6C 64 a.....sto_lp. ld
00E120: 20 63 2C 64 0D 0A 2E 73 74 62 5F 6C 70 09 20 69 c,d...stb_lp. i
00E130: 6E 63 20 68 6C 0D 0A 09 20 70 75 73 68 20 62 63 nc hl... push bc
00E140: 0D 0A 09 20 20 63 61 6C 6C 20 73 5F 42 43 38 30 ... call s_BC80
00E150: 0D 0A 09 20 20 63 61 6C 6C 20 70 62 62 79 74 65 ... call pbbyte
00E160: 0D 0A 09 20 70 6F 70 20 62 63 0D 0A 09 20 64 65 ... pop bc... de
00E170: 63 20 63 0D 0A 09 20 6A 72 20 6E 7A 2C 73 74 62 c c... jr nz,stb
00E180: 5F 6C 70 0D 0A 09 20 64 6A 6E 7A 20 73 74 6F 5F _lp... djnz sto_
00E190: 6C 70 0D 0A 0D 0A 09 70 6F 70 20 62 63 0D 0A 09 lp.....pop bc...
00E1A0: 69 6E 63 20 62 0D 0A 09 6C 64 20 61 2C 31 32 33 inc b...ld a,123
00E1B0: 0D 0A 09 63 70 20 62 0D 0A 09 6A 72 20 6E 7A 2C ...cp b...jr nz,
00E1C0: 73 74 72 5F 6C 70 0D 0A 0D 0A 09 63 61 6C 6C 20 str_lp.....call
00E1D0: 73 5F 42 43 37 41 09 09 09 3B 63 6C 6F 73 65 20 s_BC7A...;close
00E1E0: 69 6E 70 75 74 20 66 69 6C 65 0D 0A 09 72 65 74 input file...ret
00E1F0: 0D 0A 0D 0A 2E 73 5F 42 43 37 37 09 70 75 73 68 .....s_BC77.push
00E200: 20 62 63 3A 20 6C 64 20 62 63 2C 26 37 46 43 37 bc: ld bc,&7FC7
00E210: 3A 20 6F 75 74 20 28 63 29 2C 63 3A 20 70 6F 70 : out (c),c: pop
00E220: 20 62 63 0D 0A 09 63 61 6C 6C 20 26 42 43 37 37 bc...call &BC77
00E230: 0D 0A 09 70 75 73 68 20 62 63 3A 20 6C 64 20 62 ...push bc: ld b
00E240: 63 2C 26 37 46 43 30 3A 20 6F 75 74 20 28 63 29 c,&7FC0: out (c)
00E250: 2C 63 3A 20 70 6F 70 20 62 63 0D 0A 09 72 65 74 ,c: pop bc...ret
00E260: 0D 0A 2E 73 5F 42 43 37 41 09 70 75 73 68 20 62 ...s_BC7A.push b
00E270: 63 0D 0A 09 6C 64 20 62 63 2C 26 37 46 43 37 3A c...ld bc,&7FC7:
00E280: 20 6F 75 74 20 28 63 29 2C 63 3A 20 63 61 6C 6C out (c),c: call
00E290: 20 26 42 43 37 41 0D 0A 09 6C 64 20 62 63 2C 26 &BC7A...ld bc,&
00E2A0: 37 46 43 30 3A 20 6F 75 74 20 28 63 29 2C 63 0D 7FC0: out (c),c.
00E2B0: 0A 09 70 6F 70 20 62 63 3A 20 72 65 74 0D 0A 2E ..pop bc: ret...
00E2C0: 73 5F 42 43 38 30 09 70 75 73 68 20 62 63 0D 0A s_BC80.push bc..
00E2D0: 09 6C 64 20 62 63 2C 26 37 46 43 37 3A 20 6F 75 .ld bc,&7FC7: ou
00E2E0: 74 20 28 63 29 2C 63 3A 20 63 61 6C 6C 20 26 42 t (c),c: call &B
00E2F0: 43 38 30 0D 0A 09 6C 64 20 62 63 2C 26 37 46 43 C80...ld bc,&7FC
00E300: 09 70 6F 70 20 64 65 3A 20 72 65 74 0D 0A 0D 0A .pop de: ret....
00E310: 2E 68 65 69 67 68 74 09 64 77 20 30 09 09 09 09 .height.dw 0....
00E320: 3B 48 65 69 67 68 74 0D 0A 2E 62 75 66 66 09 64 ;Height...buff.d
00E330: 73 20 32 30 34 38 09 09 09 09 3B 46 69 6C 65 20 s 2048....;File
00E340: 62 75 66 66 65 72 0D 0A 1A 64 20 46 61 69 72 68 buffer...d Fairh
00E350: 75 72 73 74 20 31 39 39 33 0D 0A 0D 0A 09 6F 72 urst 1993.....or
00E360: 67 20 26 39 30 30 30 0D 0A 09 77 72 69 74 65 20 g &9000...write
00E370: 22 67 72 61 70 68 69 63 73 2E 62 69 6E 22 0D 0A "graphics.bin"..
00E380: 09 6C 64 20 65 2C 28 68 6C 29 3A 20 69 6E 63 20 .ld e,(hl): inc
00E390: 68 6C 0D 0A 09 6C 64 20 64 2C 28 68 6C 29 3A 20 hl...ld d,(hl):
00E3A0: 65 78 20 64 65 2C 68 6C 0D 0A 09 6C 64 20 64 65 ex de,hl...ld de
00E3B0: 2C 62 75 66 66 3A 20 70 75 73 68 20 69 78 0D 0A ,buff: push ix..
00E3C0: 09 63 61 6C 6C 20 26 42 43 37 37 3A 20 70 6F 70 .call &BC77: pop
00E3D0: 20 69 78 0D 0A 0D 0A 09 6A 72 20 63 2C 73 75 63 ix.....jr c,suc
00E3E0: 63 0D 0A 09 6C 64 20 6C 2C 28 69 78 2B 32 29 3A c...ld l,(ix+2):
00E3F0: 20 6C 64 20 68 2C 28 69 78 2B 33 29 0D 0A 09 6C ld h,(ix+3)...l
00E400: 64 20 28 68 6C 29 2C 30 3A 20 69 6E 63 20 68 6C d (hl),0: inc hl
00E410: 0D 0A 09 6C 64 20 28 68 6C 29 2C 30 3A 20 70 6F ...ld (hl),0: po
00E420: 70 20 68 6C 0D 0A 09 72 65 74 0D 0A 0D 0A 2E 73 p hl...ret.....s
00E430: 75 63 63 09 6C 64 20 28 68 65 69 67 68 74 29 2C ucc.ld (height),
00E440: 62 63 0D 0A 09 6C 64 20 6C 2C 28 69 78 2B 32 29 bc...ld l,(ix+2)
00E450: 3A 20 6C 64 20 68 2C 28 69 78 2B 33 29 0D 0A 09 : ld h,(ix+3)...
00E460: 6C 64 20 28 68 6C 29 2C 31 3A 20 69 6E 63 20 68 ld (hl),1: inc h
00E470: 6C 0D 0A 09 6C 64 20 28 68 6C 29 2C 30 3A 20 72 l...ld (hl),0: r
00E480: 65 74 0D 0A 0D 0A 09 3B 2A 2A 2A 20 4E 65 78 74 et.....;*** Next
00E490: 20 6C 69 6E 65 20 64 6F 77 6E 20 66 72 6F 6D 20 line down from
00E4A0: 48 4C 0D 0A 0D 0A 2E 6E 6C 69 6E 65 09 6C 64 20 HL.....nline.ld
00E4B0: 61 2C 38 3A 20 61 64 64 20 68 3A 20 6C 64 20 68 a,8: add h: ld h
00E4C0: 2C 61 0D 0A 09 62 69 74 20 36 2C 61 3A 20 72 65 ,a...bit 6,a: re
00E4D0: 74 20 6E 7A 0D 0A 09 70 75 73 68 20 64 65 0D 0A t nz...push de..
00E4E0: 09 20 6C 64 20 64 65 2C 31 36 33 30 34 3A 20 6F . ld de,16304: o
00E4F0: 72 20 61 3A 20 73 62 63 20 68 6C 2C 64 65 0D 0A r a: sbc hl,de..
00E500: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
00E510: 0C 00 01 00 02 09 4E E5 0C 00 C1 02 00 00 00 02 ......N.........
00E520: 0C 00 C6 02 00 00 00 02 0C 00 C2 02 00 00 00 02 ................
00E530: 0C 00 C7 02 00 00 00 02 0C 00 C3 02 00 00 00 02 ................
00E540: 0C 00 C8 02 00 00 00 02 0C 00 C4 02 00 00 00 02 ................
00E550: 0C 00 C9 02 00 00 00 02 0C 00 C5 02 00 00 00 02 ................
00E560: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00E570: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00E580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00E590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00E5A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00E5B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00E5C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00E5D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00E5E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00E5F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00E600: 6C 64 20 61 2C 28 70 67 6D 6F 64 65 29 3A 20 20 ld a,(pgmode):
00E610: 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A 09 6C 64 call pchar...ld
00E620: 20 61 2C 28 63 6F 6C 75 6D 6E 29 3A 20 20 20 63 a,(column): c
00E630: 61 6C 6C 20 70 63 68 61 72 0D 0A 09 6C 64 20 61 all pchar...ld a
00E640: 2C 28 63 6F 6C 75 6D 6E 2B 31 29 3A 20 63 61 6C ,(column+1): cal
00E650: 6C 20 70 63 68 61 72 0D 0A 0D 0A 09 6C 64 20 69 l pchar.....ld i
00E660: 78 2C 70 62 6C 6F 63 6B 0D 0A 09 6C 64 20 61 2C x,pblock...ld a,
00E670: 28 70 62 6C 6F 6E 67 29 3A 20 6C 64 20 62 2C 61 (pblong): ld b,a
00E680: 0D 0A 0D 0A 2E 6F 70 63 5F 6C 70 09 70 75 73 68 .....opc_lp.push
00E690: 20 62 63 0D 0A 0D 0A 09 20 6C 64 20 61 2C 28 72 bc..... ld a,(r
00E6A0: 6F 77 29 3A 20 6C 64 20 62 2C 61 0D 0A 09 20 6C ow): ld b,a... l
00E6B0: 64 20 61 2C 28 69 78 29 0D 0A 09 20 63 61 6C 6C d a,(ix)... call
00E6C0: 20 73 74 72 61 64 64 0D 0A 0D 0A 2E 70 63 6C 6F stradd.....pclo
00E6D0: 6F 70 09 20 63 61 6C 6C 20 67 62 62 79 74 65 0D op. call gbbyte.
00E6E0: 0A 09 20 63 61 6C 6C 20 70 72 62 79 74 65 0D 0A .. call prbyte..
00E6F0: 09 20 69 6E 63 20 68 6C 0D 0A 09 20 64 65 63 20 . inc hl... dec
00E700: 65 3A 20 6A 72 20 6E 7A 2C 70 63 6C 6F 6F 70 0D e: jr nz,pcloop.
00E710: 0A 0D 0A 09 70 6F 70 20 62 63 0D 0A 09 69 6E 63 ....pop bc...inc
00E720: 20 69 78 0D 0A 09 64 6A 6E 7A 20 6F 70 63 5F 6C ix...djnz opc_l
00E730: 70 0D 0A 0D 0A 09 72 65 74 0D 0A 0D 0A 09 3B 50 p.....ret.....;P
00E740: 72 69 6E 74 20 62 79 74 65 0D 0A 0D 0A 2E 70 72 rint byte.....pr
00E750: 62 79 74 65 09 70 75 73 68 20 68 6C 3A 20 70 75 byte.push hl: pu
00E760: 73 68 20 61 66 0D 0A 09 20 6C 64 20 68 6C 2C 28 sh af... ld hl,(
00E770: 63 6F 6C 75 6D 6E 29 0D 0A 09 20 64 65 63 20 68 column)... dec h
00E780: 6C 0D 0A 09 20 6C 64 20 61 2C 68 3A 20 61 6E 64 l... ld a,h: and
00E790: 20 6C 0D 0A 09 20 63 70 20 26 46 46 3A 20 6A 72 l... cp &FF: jr
00E7A0: 20 6E 7A 2C 75 70 64 63 6F 6C 0D 0A 0D 0A 09 20 nz,updcol.....
00E7B0: 6C 64 20 61 2C 65 73 63 3A 09 63 61 6C 6C 20 70 ld a,esc:.call p
00E7C0: 63 68 61 72 0D 0A 09 20 6C 64 20 61 2C 28 70 67 char... ld a,(pg
00E7D0: 6D 6F 64 65 29 3A 09 63 61 6C 6C 20 70 63 68 61 mode):.call pcha
00E7E0: 72 0D 0A 09 20 6C 64 20 61 2C 36 34 3A 09 63 61 r... ld a,64:.ca
00E7F0: 6C 6C 20 70 63 68 61 72 0D 0A 09 20 6C 64 20 61 ll pchar... ld a
00E800: 66 20 70 61 72 61 6D 65 74 65 72 20 62 6C 6F 63 f parameter bloc
00E810: 6B 3F 0D 0A 0D 0A 09 70 75 73 68 20 61 66 0D 0A k?.....push af..
00E820: 09 20 6C 64 20 61 2C 28 77 63 68 61 72 29 0D 0A . ld a,(wchar)..
00E830: 09 20 6F 72 20 61 3A 20 6A 72 20 6E 7A 2C 63 68 . or a: jr nz,ch
00E840: 6B 77 61 69 09 3B 77 61 69 74 69 6E 67 20 66 6F kwai.;waiting fo
00E850: 72 20 63 68 61 72 61 63 74 65 72 3F 0D 0A 09 70 r character?...p
00E860: 6F 70 20 61 66 0D 0A 09 6A 70 20 6F 72 69 67 0D op af...jp orig.
00E870: 0A 0D 0A 2E 63 68 6B 77 61 69 09 20 6C 64 20 28 ....chkwai. ld (
00E880: 63 70 61 63 68 72 2B 31 29 2C 61 09 3B 20 3C 3C cpachr+1),a.; <<
00E890: 3C 3C 3C 3C 20 43 68 65 63 6B 20 69 66 20 63 68 <<<< Check if ch
00E8A0: 61 72 61 63 74 65 72 20 69 73 20 22 65 78 70 65 aracter is "expe
00E8B0: 63 74 65 64 22 21 0D 0A 09 70 6F 70 20 61 66 0D cted"!...pop af.
00E8C0: 0A 2E 63 70 61 63 68 72 09 63 70 20 26 46 46 09 ..cpachr.cp &FF.
00E8D0: 09 09 3B 63 6F 6D 70 61 72 65 20 77 69 74 68 20 ..;compare with
00E8E0: 63 68 61 72 61 63 74 65 72 20 62 65 69 6E 67 20 character being
00E8F0: 77 61 69 74 65 64 20 66 6F 72 0D 0A 09 6A 72 20 waited for...jr
00E900: 7A 2C 67 6F 74 77 61 69 09 09 3B 74 68 65 20 73 z,gotwai..;the s
00E910: 61 6D 65 3F 0D 0A 09 70 75 73 68 20 61 66 0D 0A ame?...push af..
00E920: 09 20 78 6F 72 20 61 3A 20 6C 64 20 28 77 63 68 . xor a: ld (wch
00E930: 61 72 29 2C 61 09 3B 69 66 20 6E 6F 74 2C 20 63 ar),a.;if not, c
00E940: 61 6E 63 65 6C 20 77 61 69 74 0D 0A 09 70 6F 70 ancel wait...pop
00E950: 20 61 66 0D 0A 09 6A 70 20 6F 72 69 67 09 09 09 af...jp orig...
00E960: 3B 61 6E 64 20 67 6F 20 61 6E 64 20 70 72 69 6E ;and go and prin
00E970: 74 20 63 68 61 72 61 63 74 65 72 0D 0A 0D 0A 2E t character.....
00E980: 67 6F 74 77 61 69 09 63 70 20 31 33 09 09 09 3B gotwai.cp 13...;
00E990: 43 52 3F 0D 0A 09 6A 72 20 7A 2C 67 6F 74 63 72 CR?...jr z,gotcr
00E9A0: 0D 0A 09 78 6F 72 20 61 3A 20 6C 64 20 28 77 63 ...xor a: ld (wc
00E9B0: 68 61 72 29 2C 61 0D 0A 09 73 63 66 3A 20 72 65 har),a...scf: re
00E9C0: 74 0D 0A 0D 0A 2E 67 6F 74 63 72 09 6C 64 20 61 t.....gotcr.ld a
00E9D0: 2C 31 30 3A 20 6C 64 20 28 77 63 68 61 72 29 2C ,10: ld (wchar),
00E9E0: 61 09 3B 6E 6F 77 20 77 61 69 74 20 66 6F 72 20 a.;now wait for
00E9F0: 4C 46 21 0D 0A 09 73 63 66 3A 20 72 65 74 0D 0A LF!...scf: ret..
00EA00: 2C 30 3A 09 63 61 6C 6C 20 70 63 68 61 72 0D 0A ,0:.call pchar..
00EA10: 09 20 6C 64 20 68 6C 2C 36 33 0D 0A 0D 0A 2E 75 . ld hl,63.....u
00EA20: 70 64 63 6F 6C 09 20 6C 64 20 28 63 6F 6C 75 6D pdcol. ld (colum
00EA30: 6E 29 2C 68 6C 0D 0A 09 70 6F 70 20 61 66 3A 20 n),hl...pop af:
00EA40: 63 61 6C 6C 20 70 63 68 61 72 3A 20 70 6F 70 20 call pchar: pop
00EA50: 68 6C 0D 0A 09 72 65 74 0D 0A 0D 0A 09 3B 4C 6F hl...ret.....;Lo
00EA60: 61 64 20 66 69 6C 65 20 65 72 72 6F 72 20 72 6F ad file error ro
00EA70: 75 74 69 6E 65 0D 0A 0D 0A 2E 6C 64 65 72 72 09 utine.....lderr.
00EA80: 6C 64 20 68 6C 2C 6C 64 65 74 78 74 0D 0A 09 6A ld hl,ldetxt...j
00EA90: 70 20 73 74 72 69 6E 67 0D 0A 0D 0A 09 3B 47 65 p string.....;Ge
00EAA0: 74 20 62 79 74 65 20 66 72 6F 6D 20 48 4C 20 69 t byte from HL i
00EAB0: 6E 20 73 65 63 6F 6E 64 20 36 34 6B 20 28 63 6F n second 64k (co
00EAC0: 72 72 75 70 74 73 20 42 43 29 0D 0A 0D 0A 2E 67 rrupts BC).....g
00EAD0: 62 62 79 74 65 09 70 75 73 68 20 68 6C 0D 0A 0D bbyte.push hl...
00EAE0: 0A 09 20 6C 64 20 61 2C 68 0D 0A 09 20 72 6C 63 .. ld a,h... rlc
00EAF0: 61 3A 20 72 6C 63 61 0D 0A 09 20 61 6E 64 20 33 a: rlca... and 3
00EB00: 3A 20 61 64 64 20 26 43 34 0D 0A 0D 0A 09 20 6C : add &C4..... l
00EB10: 64 20 62 2C 26 37 46 0D 0A 09 20 6F 75 74 20 28 d b,&7F... out (
00EB20: 63 29 2C 61 0D 0A 0D 0A 09 20 72 65 73 20 37 2C c),a..... res 7,
00EB30: 68 3A 20 73 65 74 20 36 2C 68 0D 0A 09 20 6C 64 h: set 6,h... ld
00EB40: 20 61 2C 28 68 6C 29 0D 0A 0D 0A 09 70 6F 70 20 a,(hl).....pop
00EB50: 68 6C 0D 0A 09 6A 70 20 72 73 74 62 6E 6B 0D 0A hl...jp rstbnk..
00EB60: 0D 0A 09 3B 50 75 74 20 62 79 74 65 20 74 6F 20 ...;Put byte to
00EB70: 48 4C 20 69 6E 20 73 65 63 6F 6E 64 20 36 34 6B HL in second 64k
00EB80: 20 28 63 6F 72 72 75 70 74 73 20 42 43 29 0D 0A (corrupts BC)..
00EB90: 0D 0A 2E 70 62 62 79 74 65 09 70 75 73 68 20 68 ...pbbyte.push h
00EBA0: 6C 3A 20 70 75 73 68 20 61 66 0D 0A 09 20 6C 64 l: push af... ld
00EBB0: 20 61 2C 68 0D 0A 09 20 72 6C 63 61 3A 20 72 6C a,h... rlca: rl
00EBC0: 63 61 0D 0A 09 20 61 6E 64 20 33 3A 20 61 64 64 ca... and 3: add
00EBD0: 20 26 43 34 0D 0A 09 20 6C 64 20 62 2C 26 37 46 &C4... ld b,&7F
00EBE0: 3A 20 6F 75 74 20 28 63 29 2C 61 0D 0A 09 20 72 : out (c),a... r
00EBF0: 65 73 20 37 2C 68 3A 20 73 65 74 20 36 2C 68 0D es 7,h: set 6,h.
00EC00: 0D 0A 2E 61 64 64 62 6C 63 09 70 6F 70 20 61 66 ...addblc.pop af
00EC10: 09 09 3B 20 3C 3C 3C 3C 3C 3C 20 41 64 64 20 74 ..; <<<<<< Add t
00EC20: 6F 20 70 61 72 61 6D 65 74 65 72 20 62 6C 6F 63 o parameter bloc
00EC30: 6B 0D 0A 09 63 70 20 31 32 39 0D 0A 09 6A 70 20 k...cp 129...jp
00EC40: 7A 2C 64 6F 63 6F 6D 09 09 3B 45 6E 64 20 6F 66 z,docom..;End of
00EC50: 20 70 61 72 61 6D 65 74 65 72 73 3F 0D 0A 09 70 parameters?...p
00EC60: 75 73 68 20 68 6C 0D 0A 09 20 6C 64 20 68 6C 2C ush hl... ld hl,
00EC70: 28 70 62 6C 6F 63 29 3A 20 6C 64 20 28 68 6C 29 (pbloc): ld (hl)
00EC80: 2C 61 09 3B 53 74 6F 72 65 20 63 68 61 72 61 63 ,a.;Store charac
00EC90: 74 65 72 20 69 6E 20 70 61 72 61 6D 65 74 65 72 ter in parameter
00ECA0: 20 62 6C 6F 63 6B 0D 0A 09 20 69 6E 63 20 68 6C block... inc hl
00ECB0: 3A 20 20 6C 64 20 28 70 62 6C 6F 63 29 2C 68 6C : ld (pbloc),hl
00ECC0: 0D 0A 0D 0A 09 20 6C 64 20 61 2C 28 70 62 6C 6F ..... ld a,(pblo
00ECD0: 6E 67 29 3A 20 69 6E 63 20 61 09 09 3B 49 6E 63 ng): inc a..;Inc
00ECE0: 72 65 61 73 65 20 70 61 72 61 6D 65 74 65 72 20 rease parameter
00ECF0: 62 6C 6F 63 6B 20 6C 65 6E 67 74 68 0D 0A 09 20 block length...
00ED00: 63 70 20 26 38 31 3A 20 6A 72 20 6E 7A 2C 6E 6F cp &81: jr nz,no
00ED10: 74 6F 76 72 0D 0A 09 20 6C 64 20 68 6C 2C 6F 76 tovr... ld hl,ov
00ED20: 72 74 78 74 3A 20 63 61 6C 6C 20 73 74 72 69 6E rtxt: call strin
00ED30: 67 09 3B 22 4F 76 65 72 66 6C 6F 77 22 20 65 72 g.;"Overflow" er
00ED40: 72 6F 72 0D 0A 09 20 78 6F 72 20 61 3A 20 6C 64 ror... xor a: ld
00ED50: 20 28 69 6E 6F 70 29 2C 61 09 09 3B 53 74 6F 70 (inop),a..;Stop
00ED60: 20 63 61 70 74 75 72 69 6E 67 21 0D 0A 2E 6E 6F capturing!...no
00ED70: 74 6F 76 72 09 20 6C 64 20 28 70 62 6C 6F 6E 67 tovr. ld (pblong
00ED80: 29 2C 61 0D 0A 09 70 6F 70 20 68 6C 0D 0A 09 73 ),a...pop hl...s
00ED90: 63 66 3A 20 72 65 74 0D 0A 0D 0A 2E 6C 65 74 73 cf: ret.....lets
00EDA0: 67 6F 09 6C 64 20 61 2C 31 09 09 3B 20 3C 3C 3C go.ld a,1..; <<<
00EDB0: 3C 3C 3C 20 53 74 61 72 74 20 63 61 70 74 75 72 <<< Start captur
00EDC0: 69 6E 67 20 63 68 61 72 61 63 74 65 72 73 0D 0A ing characters..
00EDD0: 09 6C 64 20 28 69 6E 6F 70 29 2C 61 0D 0A 09 6C .ld (inop),a...l
00EDE0: 64 20 61 2C 30 3A 20 6C 64 20 28 70 62 6C 6F 6E d a,0: ld (pblon
00EDF0: 67 29 2C 61 0D 0A 09 70 75 73 68 20 68 6C 0D 0A g),a...push hl..
00EE00: 0A 09 70 6F 70 20 61 66 3A 20 6C 64 20 28 68 6C ..pop af: ld (hl
00EE10: 29 2C 61 3A 20 70 6F 70 20 68 6C 0D 0A 09 6A 70 ),a: pop hl...jp
00EE20: 20 72 73 74 62 6E 6B 0D 0A 0D 0A 09 3B 52 65 73 rstbnk.....;Res
00EE30: 74 6F 72 65 20 62 61 6E 6B 73 20 28 63 6F 72 72 tore banks (corr
00EE40: 75 70 74 73 20 42 43 29 0D 0A 0D 0A 2E 72 73 74 upts BC).....rst
00EE50: 62 6E 6B 09 6C 64 20 62 63 2C 26 37 46 43 30 0D bnk.ld bc,&7FC0.
00EE60: 0A 09 6F 75 74 20 28 63 29 2C 63 3A 20 72 65 74 ..out (c),c: ret
00EE70: 0D 0A 0D 0A 09 3B 46 69 6E 64 20 73 74 61 72 74 .....;Find start
00EE80: 20 61 64 64 72 65 73 73 20 6F 66 20 63 68 61 72 address of char
00EE90: 61 63 74 65 72 20 41 20 69 6E 20 48 4C 20 28 63 acter A in HL (c
00EEA0: 6F 72 72 75 70 74 73 20 41 29 0D 0A 0D 0A 2E 73 orrupts A).....s
00EEB0: 74 61 64 64 72 09 73 75 62 20 33 32 0D 0A 09 6C taddr.sub 32...l
00EEC0: 64 20 6C 2C 61 3A 20 6C 64 20 68 2C 30 0D 0A 09 d l,a: ld h,0...
00EED0: 61 64 64 20 68 6C 2C 68 6C 3A 20 61 64 64 20 68 add hl,hl: add h
00EEE0: 6C 2C 68 6C 3A 20 61 64 64 20 68 6C 2C 68 6C 3A l,hl: add hl,hl:
00EEF0: 20 61 64 64 20 68 6C 2C 68 6C 0D 0A 09 61 64 64 add hl,hl...add
00EF00: 20 68 6C 2C 68 6C 3A 20 61 64 64 20 68 6C 2C 68 hl,hl: add hl,h
00EF10: 6C 3A 20 61 64 64 20 68 6C 2C 68 6C 3A 20 61 64 l: add hl,hl: ad
00EF20: 64 20 68 6C 2C 68 6C 0D 0A 09 61 64 64 20 68 6C d hl,hl...add hl
00EF30: 2C 68 6C 0D 0A 09 72 65 74 0D 0A 0D 0A 09 3B 46 ,hl...ret.....;F
00EF40: 69 6E 64 20 73 74 61 72 74 20 61 64 64 72 65 73 ind start addres
00EF50: 73 20 6F 66 20 63 68 61 72 61 63 74 65 72 20 41 s of character A
00EF60: 2C 20 72 6F 77 20 42 2C 20 69 6E 20 48 4C 20 28 , row B, in HL (
00EF70: 77 69 64 74 68 20 69 6E 20 44 45 29 0D 0A 0D 0A width in DE)....
00EF80: 2E 73 74 72 61 64 64 09 63 61 6C 6C 20 73 74 61 .stradd.call sta
00EF90: 64 64 72 0D 0A 09 70 75 73 68 20 62 63 0D 0A 09 ddr...push bc...
00EFA0: 20 63 61 6C 6C 20 67 62 62 79 74 65 0D 0A 09 70 call gbbyte...p
00EFB0: 6F 70 20 62 63 0D 0A 09 69 6E 63 20 68 6C 0D 0A op bc...inc hl..
00EFC0: 09 6C 64 20 65 2C 61 3A 20 6C 64 20 64 2C 30 0D .ld e,a: ld d,0.
00EFD0: 0A 09 6C 64 20 61 2C 62 0D 0A 09 6F 72 20 61 3A ..ld a,b...or a:
00EFE0: 20 72 65 74 20 7A 0D 0A 2E 6D 6F 76 65 6F 6E 09 ret z...moveon.
00EFF0: 61 64 64 20 68 6C 2C 64 65 0D 0A 09 64 6A 6E 7A add hl,de...djnz
00F000: 09 20 6C 64 20 68 6C 2C 70 62 6C 6F 63 6B 3A 20 . ld hl,pblock:
00F010: 6C 64 20 28 70 62 6C 6F 63 29 2C 68 6C 0D 0A 09 ld (pbloc),hl...
00F020: 70 6F 70 20 68 6C 0D 0A 09 73 63 66 3A 20 72 65 pop hl...scf: re
00F030: 74 09 0D 0A 0D 0A 2E 64 6F 63 6F 6D 09 6C 64 20 t......docom.ld
00F040: 61 2C 32 09 09 3B 20 3C 3C 3C 3C 3C 3C 20 44 6F a,2..; <<<<<< Do
00F050: 20 63 6F 6D 6D 61 6E 64 20 6E 65 78 74 20 74 69 command next ti
00F060: 6D 65 0D 0A 09 6C 64 20 28 69 6E 6F 70 29 2C 61 me...ld (inop),a
00F070: 0D 0A 09 73 63 66 3A 20 72 65 74 0D 0A 0D 0A 2E ...scf: ret.....
00F080: 65 78 65 63 6F 6D 09 78 6F 72 20 61 09 09 3B 20 execom.xor a..;
00F090: 3C 3C 3C 3C 3C 3C 20 45 78 65 63 75 74 65 20 63 <<<<<< Execute c
00F0A0: 6F 6D 6D 61 6E 64 0D 0A 09 6C 64 20 28 69 6E 6F ommand...ld (ino
00F0B0: 70 29 2C 61 0D 0A 09 70 6F 70 20 61 66 0D 0A 09 p),a...pop af...
00F0C0: 63 70 20 22 46 22 3A 20 6A 70 20 7A 2C 63 5F 6C cp "F": jp z,c_l
00F0D0: 6F 61 64 0D 0A 09 63 70 20 22 48 22 3A 20 6A 70 oad...cp "H": jp
00F0E0: 20 7A 2C 63 5F 68 65 61 64 0D 0A 09 63 70 20 22 z,c_head...cp "
00F0F0: 68 22 3A 20 6A 70 20 7A 2C 63 5F 68 64 65 6E 0D h": jp z,c_hden.
00F100: 0A 09 63 70 20 22 43 22 3A 20 6A 70 20 7A 2C 63 ..cp "C": jp z,c
00F110: 5F 68 65 61 63 0D 0A 09 63 70 20 22 41 22 3A 20 _heac...cp "A":
00F120: 6A 70 20 7A 2C 63 5F 63 6C 69 70 0D 0A 09 63 70 jp z,c_clip...cp
00F130: 20 22 61 22 3A 20 6A 70 20 7A 2C 63 5F 63 6C 6F "a": jp z,c_clo
00F140: 70 0D 0A 09 63 70 20 22 52 22 3A 20 6A 70 20 7A p...cp "R": jp z
00F150: 2C 63 5F 72 6C 6C 6E 0D 0A 09 63 70 20 22 72 22 ,c_rlln...cp "r"
00F160: 3A 20 6A 70 20 7A 2C 63 5F 72 6C 6F 70 0D 0A 09 : jp z,c_rlop...
00F170: 63 70 20 22 50 22 3A 20 6A 70 20 7A 2C 63 5F 70 cp "P": jp z,c_p
00F180: 61 67 65 0D 0A 0D 0A 09 70 75 73 68 20 68 6C 0D age.....push hl.
00F190: 0A 09 20 6C 64 20 68 6C 2C 75 6B 63 74 78 74 3A .. ld hl,ukctxt:
00F1A0: 20 63 61 6C 6C 20 73 74 72 69 6E 67 09 3B 22 55 call string.;"U
00F1B0: 6E 6B 6E 6F 77 6E 20 63 6F 6D 6D 61 6E 64 22 21 nknown command"!
00F1C0: 0D 0A 09 70 6F 70 20 68 6C 0D 0A 09 73 63 66 3A ...pop hl...scf:
00F1D0: 20 72 65 74 0D 0A 0D 0A 2E 63 5F 6C 6F 61 64 09 ret.....c_load.
00F1E0: 70 75 73 68 20 62 63 3A 20 70 75 73 68 20 64 65 push bc: push de
00F1F0: 09 3B 3E 3E 3E 20 22 46 22 20 2D 20 4C 6F 61 64 .;>>> "F" - Load
00F200: 20 6D 6F 76 65 6F 6E 0D 0A 09 72 65 74 0D 0A 0D moveon...ret...
00F210: 0A 09 3B 43 61 6C 63 75 6C 61 74 65 20 6C 65 6E ..;Calculate len
00F220: 67 74 68 20 6F 66 20 73 74 72 69 6E 67 20 69 6E gth of string in
00F230: 74 6F 20 48 4C 0D 0A 0D 0A 2E 63 61 6C 63 6C 6E to HL.....calcln
00F240: 09 6C 64 20 68 6C 2C 30 0D 0A 09 6C 64 20 69 78 .ld hl,0...ld ix
00F250: 2C 70 62 6C 6F 63 6B 0D 0A 09 6C 64 20 61 2C 28 ,pblock...ld a,(
00F260: 70 62 6C 6F 6E 67 29 3A 20 6C 64 20 62 2C 61 0D pblong): ld b,a.
00F270: 0A 0D 0A 2E 63 6C 63 5F 6C 70 09 6C 64 20 61 2C ....clc_lp.ld a,
00F280: 28 69 78 29 0D 0A 09 70 75 73 68 20 68 6C 3A 20 (ix)...push hl:
00F290: 70 75 73 68 20 62 63 0D 0A 09 20 6C 64 20 62 2C push bc... ld b,
00F2A0: 30 3A 20 63 61 6C 6C 20 73 74 72 61 64 64 0D 0A 0: call stradd..
00F2B0: 09 70 6F 70 20 62 63 3A 20 70 6F 70 20 68 6C 0D .pop bc: pop hl.
00F2C0: 0A 09 61 64 64 20 68 6C 2C 64 65 0D 0A 0D 0A 09 ..add hl,de.....
00F2D0: 69 6E 63 20 69 78 0D 0A 09 64 6A 6E 7A 20 63 6C inc ix...djnz cl
00F2E0: 63 5F 6C 70 0D 0A 09 72 65 74 0D 0A 0D 0A 09 3B c_lp...ret.....;
00F2F0: 43 65 6E 74 72 65 20 73 70 61 63 69 6E 67 0D 0A Centre spacing..
00F300: 0D 0A 2E 63 74 61 62 09 63 61 6C 6C 20 63 61 6C ...ctab.call cal
00F310: 63 6C 6E 0D 0A 09 65 78 20 68 6C 2C 64 65 3A 20 cln...ex hl,de:
00F320: 6C 64 20 68 6C 2C 38 34 30 0D 0A 09 73 62 63 20 ld hl,840...sbc
00F330: 68 6C 2C 64 65 3A 20 73 72 6C 20 68 3A 20 72 72 hl,de: srl h: rr
00F340: 20 6C 0D 0A 09 6A 70 20 64 6F 63 74 61 62 0D 0A l...jp doctab..
00F350: 0D 0A 2E 64 6F 63 74 61 62 09 62 69 74 20 37 2C ...doctab.bit 7,
00F360: 6C 3A 20 6A 72 20 7A 2C 63 74 61 62 6F 6B 0D 0A l: jr z,ctabok..
00F370: 09 6C 64 20 61 2C 65 73 63 3A 20 63 61 6C 6C 20 .ld a,esc: call
00F380: 70 63 68 61 72 0D 0A 09 6C 64 20 61 2C 22 59 22 pchar...ld a,"Y"
00F390: 3A 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A 09 6C : call pchar...l
00F3A0: 64 20 61 2C 31 32 37 3A 20 63 61 6C 6C 20 70 63 d a,127: call pc
00F3B0: 68 61 72 0D 0A 09 6C 64 20 61 2C 30 3A 20 20 20 har...ld a,0:
00F3C0: 63 61 6C 6C 20 70 63 68 61 72 0D 0A 09 6C 64 20 call pchar...ld
00F3D0: 62 2C 31 32 37 0D 0A 2E 63 74 61 62 36 6C 09 78 b,127...ctab6l.x
00F3E0: 6F 72 20 61 3A 20 63 61 6C 6C 20 70 63 68 61 72 or a: call pchar
00F3F0: 0D 0A 09 64 6A 6E 7A 20 63 74 61 62 36 6C 0D 0A ...djnz ctab6l..
00F400: 20 68 65 61 64 6C 69 6E 65 20 66 6F 6E 74 0D 0A headline font..
00F410: 09 70 75 73 68 20 68 6C 3A 20 70 75 73 68 20 69 .push hl: push i
00F420: 78 0D 0A 09 20 63 61 6C 6C 20 6C 6F 61 64 0D 0A x... call load..
00F430: 09 70 6F 70 20 69 78 3A 20 70 6F 70 20 68 6C 0D .pop ix: pop hl.
00F440: 0A 09 70 6F 70 20 64 65 3A 20 70 6F 70 20 62 63 ..pop de: pop bc
00F450: 0D 0A 09 6A 70 20 61 62 73 6F 72 62 0D 0A 0D 0A ...jp absorb....
00F460: 2E 63 5F 68 65 61 64 09 70 75 73 68 20 62 63 3A .c_head.push bc:
00F470: 20 70 75 73 68 20 64 65 09 3B 3E 3E 3E 20 22 48 push de.;>>> "H
00F480: 22 20 2D 20 50 72 69 6E 74 20 68 65 61 64 6C 69 " - Print headli
00F490: 6E 65 0D 0A 09 70 75 73 68 20 68 6C 3A 20 70 75 ne...push hl: pu
00F4A0: 73 68 20 69 78 0D 0A 09 20 6C 64 20 62 2C 30 3A sh ix... ld b,0:
00F4B0: 20 63 61 6C 6C 20 70 72 69 6E 74 0D 0A 09 70 6F call print...po
00F4C0: 70 20 69 78 3A 20 70 6F 70 20 68 6C 0D 0A 09 70 p ix: pop hl...p
00F4D0: 6F 70 20 64 65 3A 20 70 6F 70 20 62 63 0D 0A 09 op de: pop bc...
00F4E0: 6A 70 20 61 62 73 6F 72 62 0D 0A 0D 0A 2E 63 5F jp absorb.....c_
00F4F0: 68 65 61 63 09 70 75 73 68 20 62 63 3A 20 70 75 heac.push bc: pu
00F500: 73 68 20 64 65 09 3B 3E 3E 3E 20 22 43 22 20 2D sh de.;>>> "C" -
00F510: 20 50 72 69 6E 74 20 63 65 6E 74 72 65 64 20 68 Print centred h
00F520: 65 61 64 6C 69 6E 65 0D 0A 09 70 75 73 68 20 68 eadline...push h
00F530: 6C 3A 20 70 75 73 68 20 69 78 0D 0A 09 20 6C 64 l: push ix... ld
00F540: 20 61 2C 28 70 67 6D 6F 64 65 29 0D 0A 09 20 70 a,(pgmode)... p
00F550: 75 73 68 20 61 66 0D 0A 09 20 20 6C 64 20 61 2C ush af... ld a,
00F560: 22 4C 22 3A 20 6C 64 20 28 70 67 6D 6F 64 65 29 "L": ld (pgmode)
00F570: 2C 61 0D 0A 09 20 20 6C 64 20 62 2C 31 3A 20 63 ,a... ld b,1: c
00F580: 61 6C 6C 20 70 72 69 6E 74 0D 0A 09 20 70 6F 70 all print... pop
00F590: 20 61 66 0D 0A 09 20 6C 64 20 28 70 67 6D 6F 64 af... ld (pgmod
00F5A0: 65 29 2C 61 0D 0A 09 70 6F 70 20 69 78 3A 20 70 e),a...pop ix: p
00F5B0: 6F 70 20 68 6C 0D 0A 09 70 6F 70 20 64 65 3A 20 op hl...pop de:
00F5C0: 70 6F 70 20 62 63 0D 0A 09 6A 70 20 61 62 73 6F pop bc...jp abso
00F5D0: 72 62 0D 0A 0D 0A 2E 63 5F 68 64 65 6E 09 70 75 rb.....c_hden.pu
00F5E0: 73 68 20 61 66 3A 20 70 75 73 68 20 62 63 09 3B sh af: push bc.;
00F5F0: 3E 3E 3E 20 22 68 22 20 2D 20 53 65 74 20 68 65 >>> "h" - Set he
00F600: 09 72 65 73 20 37 2C 6C 0D 0A 0D 0A 2E 63 74 61 .res 7,l.....cta
00F610: 62 6F 6B 09 6C 64 20 61 2C 65 73 63 3A 20 63 61 bok.ld a,esc: ca
00F620: 6C 6C 20 70 63 68 61 72 0D 0A 09 6C 64 20 61 2C ll pchar...ld a,
00F630: 22 59 22 3A 20 63 61 6C 6C 20 70 63 68 61 72 0D "Y": call pchar.
00F640: 0A 09 6C 64 20 61 2C 6C 3A 20 20 20 63 61 6C 6C ..ld a,l: call
00F650: 20 70 63 68 61 72 0D 0A 09 6C 64 20 61 2C 68 3A pchar...ld a,h:
00F660: 20 20 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A 2E call pchar...
00F670: 63 74 61 62 6F 6C 09 78 6F 72 20 61 3A 20 63 61 ctabol.xor a: ca
00F680: 6C 6C 20 70 63 68 61 72 0D 0A 09 64 65 63 20 68 ll pchar...dec h
00F690: 6C 3A 20 6C 64 20 61 2C 68 3A 20 6F 72 20 6C 0D l: ld a,h: or l.
00F6A0: 0A 09 6A 72 20 6E 7A 2C 63 74 61 62 6F 6C 0D 0A ..jr nz,ctabol..
00F6B0: 09 72 65 74 0D 0A 0D 0A 09 3B 50 72 69 6E 74 20 .ret.....;Print
00F6C0: 63 68 61 72 61 63 74 65 72 0D 0A 0D 0A 2E 70 63 character.....pc
00F6D0: 68 61 72 09 70 75 73 68 20 62 63 0D 0A 09 20 6C har.push bc... l
00F6E0: 64 20 63 2C 61 0D 0A 2E 70 63 68 61 72 6C 09 20 d c,a...pcharl.
00F6F0: 63 61 6C 6C 20 6F 72 69 67 0D 0A 09 20 6C 64 20 call orig... ld
00F700: 61 2C 63 3A 20 6A 72 20 6E 63 2C 70 63 68 61 72 a,c: jr nc,pchar
00F710: 6C 0D 0A 09 70 6F 70 20 62 63 0D 0A 09 72 65 74 l...pop bc...ret
00F720: 0D 0A 0D 0A 09 3B 4F 72 69 67 69 6E 61 6C 20 26 .....;Original &
00F730: 42 44 32 42 20 63 61 6C 6C 0D 0A 0D 0A 2E 6F 72 BD2B call.....or
00F740: 69 67 09 64 73 20 33 0D 0A 0D 0A 09 3B 50 72 69 ig.ds 3.....;Pri
00F750: 6E 74 20 63 68 61 72 61 63 74 65 72 20 72 65 64 nt character red
00F760: 69 72 65 63 74 69 6F 6E 0D 0A 0D 0A 2E 70 72 65 irection.....pre
00F770: 64 72 09 70 75 73 68 20 61 66 0D 0A 09 20 6C 64 dr.push af... ld
00F780: 20 61 2C 28 69 6E 6F 70 29 0D 0A 09 20 63 70 20 a,(inop)... cp
00F790: 31 3A 20 6A 72 20 7A 2C 61 64 64 62 6C 63 09 3B 1: jr z,addblc.;
00F7A0: 61 64 64 20 74 6F 20 70 61 72 61 6D 65 74 65 72 add to parameter
00F7B0: 20 62 6C 6F 63 6B 3F 0D 0A 09 20 63 70 20 32 3A block?... cp 2:
00F7C0: 20 6A 72 20 7A 2C 65 78 65 63 6F 6D 09 3B 63 6F jr z,execom.;co
00F7D0: 6D 6D 61 6E 64 3F 0D 0A 09 70 6F 70 20 61 66 0D mmand?...pop af.
00F7E0: 0A 0D 0A 09 63 70 20 31 32 38 3A 20 6A 70 20 7A ....cp 128: jp z
00F7F0: 2C 6C 65 74 73 67 6F 09 3B 73 74 61 72 74 20 6F ,letsgo.;start o
00F800: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
00F810: 0D 00 01 00 02 09 4E E5 0D 00 C4 02 00 00 00 02 ......N.........
00F820: 0D 00 C9 02 00 00 00 02 0D 00 C5 02 00 00 00 02 ................
00F830: 0D 00 C1 02 00 00 00 02 0D 00 C6 02 00 00 00 02 ................
00F840: 0D 00 C2 02 00 00 00 02 0D 00 C7 02 00 00 00 02 ................
00F850: 0D 00 C3 02 00 00 00 02 0D 00 C8 02 00 00 00 02 ................
00F860: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00F870: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00F880: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00F890: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00F8A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00F8B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00F8C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00F8D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00F8E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00F8F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00F900: 61 72 0D 0A 09 64 65 63 20 68 6C 3A 20 64 65 63 ar...dec hl: dec
00F910: 20 64 65 0D 0A 09 6C 64 20 61 2C 64 3A 20 6F 72 de...ld a,d: or
00F920: 20 65 0D 0A 09 6A 72 20 6E 7A 2C 70 6D 6C 5F 6C e...jr nz,pml_l
00F930: 70 0D 0A 0D 0A 2E 70 6C 62 5F 6C 70 09 6C 64 20 p.....plb_lp.ld
00F940: 61 2C 30 3A 20 63 61 6C 6C 20 70 63 68 61 72 0D a,0: call pchar.
00F950: 0A 09 64 65 63 20 68 6C 0D 0A 09 6C 64 20 61 2C ..dec hl...ld a,
00F960: 68 3A 20 6F 72 20 6C 0D 0A 09 6A 72 20 6E 7A 2C h: or l...jr nz,
00F970: 70 6C 62 5F 6C 70 0D 0A 0D 0A 09 6C 64 20 61 2C plb_lp.....ld a,
00F980: 31 33 3A 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A 13: call pchar..
00F990: 09 73 63 66 3A 20 72 65 74 0D 0A 0D 0A 2E 63 5F .scf: ret.....c_
00F9A0: 70 61 67 65 09 6C 64 20 61 2C 31 31 3A 20 63 61 page.ld a,11: ca
00F9B0: 6C 6C 20 70 63 68 61 72 09 3B 3E 3E 3E 20 22 50 ll pchar.;>>> "P
00F9C0: 22 20 2D 20 50 61 67 65 20 62 72 65 61 6B 0D 0A " - Page break..
00F9D0: 09 6C 64 20 68 6C 2C 28 70 62 6C 6F 63 29 3A 20 .ld hl,(pbloc):
00F9E0: 64 65 63 20 68 6C 0D 0A 09 6C 64 20 61 2C 28 68 dec hl...ld a,(h
00F9F0: 6C 29 0D 0A 09 62 69 74 20 30 2C 61 3A 20 63 61 l)...bit 0,a: ca
00FA00: 6C 6C 20 6E 7A 2C 62 6C 69 6E 65 0D 0A 0D 0A 09 ll nz,bline.....
00FA10: 6C 64 20 68 6C 2C 70 62 6C 6F 63 6B 0D 0A 09 6C ld hl,pblock...l
00FA20: 64 20 61 2C 28 70 62 6C 6F 6E 67 29 3A 20 6C 64 d a,(pblong): ld
00FA30: 20 62 2C 61 0D 0A 2E 70 6E 6F 5F 6C 70 09 6C 64 b,a...pno_lp.ld
00FA40: 20 61 2C 28 68 6C 29 3A 20 63 61 6C 6C 20 70 63 a,(hl): call pc
00FA50: 68 61 72 0D 0A 09 69 6E 63 20 68 6C 3A 20 64 6A har...inc hl: dj
00FA60: 6E 7A 20 70 6E 6F 5F 6C 70 0D 0A 0D 0A 09 6C 64 nz pno_lp.....ld
00FA70: 20 68 6C 2C 28 70 62 6C 6F 63 29 3A 20 64 65 63 hl,(pbloc): dec
00FA80: 20 68 6C 0D 0A 09 6C 64 20 61 2C 28 68 6C 29 0D hl...ld a,(hl).
00FA90: 0A 09 62 69 74 20 30 2C 61 3A 20 63 61 6C 6C 20 ..bit 0,a: call
00FAA0: 7A 2C 62 6C 69 6E 65 32 0D 0A 0D 0A 09 6C 64 20 z,bline2.....ld
00FAB0: 61 2C 31 32 3A 20 63 61 6C 6C 20 70 63 68 61 72 a,12: call pchar
00FAC0: 0D 0A 09 6A 70 20 61 62 73 6F 72 62 0D 0A 0D 0A ...jp absorb....
00FAD0: 2E 62 6C 69 6E 65 09 6C 64 20 61 2C 65 73 63 3A .bline.ld a,esc:
00FAE0: 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A 09 6C 64 call pchar...ld
00FAF0: 20 61 2C 22 2D 22 3A 20 63 61 6C 6C 20 70 63 68 a,"-": call pch
00FB00: 0D 0A 09 6C 64 20 61 2C 22 4A 22 3A 20 63 61 6C ...ld a,"J": cal
00FB10: 6C 20 70 63 68 61 72 0D 0A 09 6C 64 20 61 2C 28 l pchar...ld a,(
00FB20: 63 6C 67 61 70 29 3A 20 63 61 6C 6C 20 70 63 68 clgap): call pch
00FB30: 61 72 0D 0A 09 6C 64 20 61 2C 31 33 3A 20 63 61 ar...ld a,13: ca
00FB40: 6C 6C 20 70 63 68 61 72 0D 0A 09 63 61 6C 6C 20 ll pchar...call
00FB50: 64 6F 6D 61 72 67 0D 0A 09 6A 72 20 73 6C 6F 6F domarg...jr sloo
00FB60: 70 0D 0A 0D 0A 09 3B 50 6C 6F 74 20 70 6F 69 6E p.....;Plot poin
00FB70: 74 20 69 66 20 6E 6F 74 20 61 74 20 65 6E 64 20 t if not at end
00FB80: 6F 66 20 6C 69 6E 65 0D 0A 0D 0A 2E 70 6C 6F 74 of line.....plot
00FB90: 09 64 65 63 20 64 65 0D 0A 09 70 75 73 68 20 61 .dec de...push a
00FBA0: 66 0D 0A 09 20 6C 64 20 61 2C 64 3A 20 6F 72 20 f... ld a,d: or
00FBB0: 65 3A 20 6A 72 20 6E 7A 2C 73 61 6D 65 0D 0A 09 e: jr nz,same...
00FBC0: 20 78 6F 72 20 61 3A 20 6C 64 20 28 6E 65 77 6C xor a: ld (newl
00FBD0: 69 6E 65 29 2C 61 0D 0A 09 20 6C 64 20 64 65 2C ine),a... ld de,
00FBE0: 31 0D 0A 09 70 6F 70 20 61 66 0D 0A 09 72 65 73 1...pop af...res
00FBF0: 20 37 2C 61 0D 0A 09 70 75 73 68 20 61 66 0D 0A 7,a...push af..
00FC00: 0D 0A 2E 73 61 6D 65 09 20 63 61 6C 6C 20 71 75 ...same. call qu
00FC10: 61 64 63 0D 0A 09 70 6F 70 20 61 66 0D 0A 09 70 adc...pop af...p
00FC20: 75 73 68 20 62 63 0D 0A 09 20 6C 64 20 63 2C 30 ush bc... ld c,0
00FC30: 0D 0A 09 20 72 6C 20 61 3A 20 6A 72 20 6E 63 2C ... rl a: jr nc,
00FC40: 64 6F 73 65 6E 64 0D 0A 2E 69 73 5F 31 09 20 6C dosend...is_1. l
00FC50: 64 20 62 63 2C 28 62 69 74 70 61 74 29 09 09 09 d bc,(bitpat)...
00FC60: 3B 3D 20 6C 64 20 63 2C 28 62 69 74 70 61 74 29 ;= ld c,(bitpat)
00FC70: 0D 0A 2E 64 6F 73 65 6E 64 09 20 70 75 73 68 20 ...dosend. push
00FC80: 61 66 0D 0A 09 20 20 6C 64 20 61 2C 63 0D 0A 09 af... ld a,c...
00FC90: 20 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A 09 20 call pchar...
00FCA0: 70 6F 70 20 61 66 0D 0A 09 70 6F 70 20 62 63 0D pop af...pop bc.
00FCB0: 0A 09 72 65 74 0D 0A 0D 0A 2E 71 75 61 64 63 09 ..ret.....quadc.
00FCC0: 6C 64 20 61 2C 28 62 63 6F 75 6E 74 29 3A 20 63 ld a,(bcount): c
00FCD0: 70 20 36 34 0D 0A 09 6A 72 20 6E 7A 2C 69 62 63 p 64...jr nz,ibc
00FCE0: 6E 74 0D 0A 0D 0A 09 6C 64 20 61 2C 65 73 63 3A nt.....ld a,esc:
00FCF0: 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A 09 6C 64 call pchar...ld
00FD00: 61 72 0D 0A 09 6C 64 20 61 2C 31 3A 20 20 20 63 ar...ld a,1: c
00FD10: 61 6C 6C 20 70 63 68 61 72 0D 0A 0D 0A 09 6C 64 all pchar.....ld
00FD20: 20 61 2C 28 70 62 6C 6F 6E 67 29 3A 20 6C 64 20 a,(pblong): ld
00FD30: 62 2C 61 0D 0A 09 6C 64 20 61 2C 37 30 3A 20 73 b,a...ld a,70: s
00FD40: 75 62 20 62 3A 20 6C 64 20 62 2C 61 0D 0A 2E 62 ub b: ld b,a...b
00FD50: 6C 6C 6F 6F 70 09 6C 64 20 61 2C 33 32 3A 20 63 lloop.ld a,32: c
00FD60: 61 6C 6C 20 70 63 68 61 72 0D 0A 09 64 6A 6E 7A all pchar...djnz
00FD70: 20 62 6C 6C 6F 6F 70 0D 0A 0D 0A 09 6C 64 20 61 blloop.....ld a
00FD80: 2C 65 73 63 3A 20 63 61 6C 6C 20 70 63 68 61 72 ,esc: call pchar
00FD90: 0D 0A 09 6C 64 20 61 2C 22 2D 22 3A 20 63 61 6C ...ld a,"-": cal
00FDA0: 6C 20 70 63 68 61 72 0D 0A 09 6C 64 20 61 2C 30 l pchar...ld a,0
00FDB0: 3A 20 20 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A : call pchar..
00FDC0: 0D 0A 09 6C 64 20 61 2C 65 73 63 3A 20 63 61 6C ...ld a,esc: cal
00FDD0: 6C 20 70 63 68 61 72 0D 0A 09 6C 64 20 61 2C 22 l pchar...ld a,"
00FDE0: 4A 22 3A 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A J": call pchar..
00FDF0: 09 6C 64 20 61 2C 31 32 3A 20 20 63 61 6C 6C 20 .ld a,12: call
00FE00: 70 63 68 61 72 0D 0A 09 72 65 74 0D 0A 0D 0A 2E pchar...ret.....
00FE10: 62 6C 69 6E 65 32 09 6C 64 20 61 2C 28 70 62 6C bline2.ld a,(pbl
00FE20: 6F 6E 67 29 0D 0A 09 6C 64 20 68 2C 30 3A 20 6C ong)...ld h,0: l
00FE30: 64 20 6C 2C 61 0D 0A 09 61 64 64 20 68 6C 2C 68 d l,a...add hl,h
00FE40: 6C 3A 20 61 64 64 20 68 6C 2C 68 6C 0D 0A 09 6C l: add hl,hl...l
00FE50: 64 20 64 2C 68 3A 20 6C 64 20 65 2C 6C 3A 20 61 d d,h: ld e,l: a
00FE60: 64 64 20 68 6C 2C 68 6C 0D 0A 09 61 64 64 20 68 dd hl,hl...add h
00FE70: 6C 2C 64 65 3A 20 65 78 20 68 6C 2C 64 65 0D 0A l,de: ex hl,de..
00FE80: 09 6C 64 20 68 6C 2C 38 34 30 3A 20 73 62 63 20 .ld hl,840: sbc
00FE90: 68 6C 2C 64 65 0D 0A 0D 0A 09 62 69 74 20 37 2C hl,de.....bit 7,
00FEA0: 6C 3A 20 6A 72 20 7A 2C 62 32 6F 6B 37 0D 0A 09 l: jr z,b2ok7...
00FEB0: 6C 64 20 61 2C 65 73 63 3A 20 63 61 6C 6C 20 70 ld a,esc: call p
00FEC0: 63 68 61 72 0D 0A 09 6C 64 20 61 2C 22 59 22 3A char...ld a,"Y":
00FED0: 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A 09 6C 64 call pchar...ld
00FEE0: 20 61 2C 31 32 37 3A 20 63 61 6C 6C 20 70 63 68 a,127: call pch
00FEF0: 61 72 0D 0A 09 6C 64 20 61 2C 30 3A 20 20 20 63 ar...ld a,0: c
00FF00: 61 64 6C 69 6E 65 20 6F 70 74 69 6F 6E 73 20 28 adline options (
00FF10: 31 3D 77 69 64 74 68 2C 20 32 3D 4E 4C 51 29 0D 1=width, 2=NLQ).
00FF20: 0A 09 70 75 73 68 20 64 65 3A 20 70 75 73 68 20 ..push de: push
00FF30: 68 6C 0D 0A 09 20 63 61 6C 6C 20 63 70 61 72 61 hl... call cpara
00FF40: 6D 0D 0A 09 20 6C 64 20 61 2C 28 70 73 74 6F 72 m... ld a,(pstor
00FF50: 65 29 0D 0A 09 20 63 70 20 31 3A 20 6A 72 20 7A e)... cp 1: jr z
00FF60: 2C 73 6E 67 77 64 74 68 0D 0A 09 20 6C 64 20 61 ,sngwdth... ld a
00FF70: 2C 22 4B 22 3A 20 6A 72 20 70 75 74 64 65 6E 0D ,"K": jr putden.
00FF80: 0A 2E 73 6E 67 77 64 74 68 20 6C 64 20 61 2C 22 ..sngwdth ld a,"
00FF90: 4C 22 0D 0A 2E 70 75 74 64 65 6E 09 20 6C 64 20 L"...putden. ld
00FFA0: 28 70 67 6D 6F 64 65 29 2C 61 0D 0A 0D 0A 09 20 (pgmode),a.....
00FFB0: 6C 64 20 61 2C 28 70 73 74 6F 72 65 2B 31 29 0D ld a,(pstore+1).
00FFC0: 0A 09 20 61 6E 64 20 31 0D 0A 09 20 6C 64 20 28 .. and 1... ld (
00FFD0: 70 74 79 70 65 29 2C 61 0D 0A 09 70 6F 70 20 68 ptype),a...pop h
00FFE0: 6C 3A 20 70 6F 70 20 64 65 0D 0A 09 70 6F 70 20 l: pop de...pop
00FFF0: 62 63 3A 20 70 6F 70 20 61 66 0D 0A 09 6A 70 20 bc: pop af...jp
010000: 61 62 73 6F 72 62 0D 0A 0D 0A 2E 63 5F 63 6C 69 absorb.....c_cli
010010: 70 09 70 75 73 68 20 62 63 09 09 09 3B 3E 3E 3E p.push bc...;>>>
010020: 20 22 41 22 20 2D 20 50 72 69 6E 74 20 63 6C 69 "A" - Print cli
010030: 70 20 61 72 74 0D 0A 09 70 75 73 68 20 64 65 3A p art...push de:
010040: 20 70 75 73 68 20 68 6C 0D 0A 09 70 75 73 68 20 push hl...push
010050: 69 78 3A 20 70 75 73 68 20 69 79 0D 0A 09 20 63 ix: push iy... c
010060: 61 6C 6C 20 63 6C 69 70 0D 0A 09 70 6F 70 20 69 all clip...pop i
010070: 79 3A 20 70 6F 70 20 69 78 0D 0A 09 70 6F 70 20 y: pop ix...pop
010080: 68 6C 3A 20 70 6F 70 20 64 65 0D 0A 09 70 6F 70 hl: pop de...pop
010090: 20 62 63 0D 0A 09 6A 70 20 61 62 73 6F 72 62 0D bc...jp absorb.
0100A0: 0A 0D 0A 2E 63 5F 63 6C 6F 70 09 70 75 73 68 20 ....c_clop.push
0100B0: 62 63 09 09 09 3B 3E 3E 3E 20 22 61 22 20 2D 20 bc...;>>> "a" -
0100C0: 53 65 74 20 63 6C 69 70 20 61 72 74 20 6F 70 74 Set clip art opt
0100D0: 69 6F 6E 73 0D 0A 09 70 75 73 68 20 64 65 3A 20 ions...push de:
0100E0: 70 75 73 68 20 68 6C 0D 0A 09 20 63 61 6C 6C 20 push hl... call
0100F0: 63 70 61 72 61 6D 0D 0A 09 20 6C 64 20 61 2C 28 cparam... ld a,(
010100: 61 6C 6C 20 70 63 68 61 72 0D 0A 09 6C 64 20 62 all pchar...ld b
010110: 2C 31 32 37 0D 0A 2E 62 32 5F 6C 70 09 6C 64 20 ,127...b2_lp.ld
010120: 61 2C 38 3A 20 63 61 6C 6C 20 70 63 68 61 72 0D a,8: call pchar.
010130: 0A 09 64 6A 6E 7A 20 62 32 5F 6C 70 0D 0A 09 72 ..djnz b2_lp...r
010140: 65 73 20 37 2C 6C 0D 0A 0D 0A 2E 62 32 6F 6B 37 es 7,l.....b2ok7
010150: 09 6C 64 20 61 2C 65 73 63 3A 20 63 61 6C 6C 20 .ld a,esc: call
010160: 70 63 68 61 72 0D 0A 09 6C 64 20 61 2C 22 59 22 pchar...ld a,"Y"
010170: 3A 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A 09 6C : call pchar...l
010180: 64 20 61 2C 6C 3A 20 20 20 63 61 6C 6C 20 70 63 d a,l: call pc
010190: 68 61 72 0D 0A 09 6C 64 20 61 2C 68 3A 20 20 20 har...ld a,h:
0101A0: 63 61 6C 6C 20 70 63 68 61 72 0D 0A 2E 62 32 6F call pchar...b2o
0101B0: 5F 6C 70 09 6C 64 20 61 2C 38 3A 20 63 61 6C 6C _lp.ld a,8: call
0101C0: 20 70 63 68 61 72 0D 0A 09 64 65 63 20 68 6C 3A pchar...dec hl:
0101D0: 20 6C 64 20 61 2C 68 3A 20 6F 72 20 6C 0D 0A 09 ld a,h: or l...
0101E0: 6A 72 20 6E 7A 2C 62 32 6F 5F 6C 70 0D 0A 09 72 jr nz,b2o_lp...r
0101F0: 65 74 0D 0A 0D 0A 0D 0A 0D 0A 09 3B 41 62 73 6F et.........;Abso
010200: 72 62 20 6E 65 78 74 20 43 52 2F 4C 46 20 61 6E rb next CR/LF an
010210: 64 20 72 65 74 75 72 6E 0D 0A 0D 0A 2E 61 62 73 d return.....abs
010220: 6F 72 62 09 6C 64 20 61 2C 31 33 0D 0A 09 6C 64 orb.ld a,13...ld
010230: 20 28 77 63 68 61 72 29 2C 61 0D 0A 09 73 63 66 (wchar),a...scf
010240: 3A 20 72 65 74 0D 0A 0D 0A 0D 0A 0D 0A 09 3B 50 : ret.........;P
010250: 72 69 6E 74 20 53 74 6F 70 20 50 72 65 73 73 20 rint Stop Press
010260: 63 6C 69 70 20 61 72 74 20 66 69 6C 65 0D 0A 0D clip art file...
010270: 0A 2E 63 6C 69 70 09 6C 64 20 68 6C 2C 70 62 6C ..clip.ld hl,pbl
010280: 6F 63 6B 0D 0A 09 6C 64 20 61 2C 28 70 62 6C 6F ock...ld a,(pblo
010290: 6E 67 29 3A 20 6C 64 20 62 2C 61 0D 0A 09 6C 64 ng): ld b,a...ld
0102A0: 20 64 65 2C 26 34 30 30 30 0D 0A 09 63 61 6C 6C de,&4000...call
0102B0: 20 73 5F 42 43 37 37 09 09 3B 6F 70 65 6E 20 66 s_BC77..;open f
0102C0: 69 6C 65 0D 0A 09 6A 70 20 6E 63 2C 6C 64 65 72 ile...jp nc,lder
0102D0: 72 0D 0A 0D 0A 09 63 61 6C 6C 20 73 5F 42 43 38 r.....call s_BC8
0102E0: 30 3A 20 6C 64 20 6C 2C 61 0D 0A 09 63 61 6C 6C 0: ld l,a...call
0102F0: 20 73 5F 42 43 38 30 3A 20 6C 64 20 68 2C 61 0D s_BC80: ld h,a.
010300: 70 73 74 6F 72 65 29 0D 0A 09 20 63 70 20 31 3A pstore)... cp 1:
010310: 20 6A 72 20 7A 2C 61 73 6E 67 77 74 68 0D 0A 09 jr z,asngwth...
010320: 20 63 70 20 32 3A 20 6A 72 20 7A 2C 61 64 62 6C cp 2: jr z,adbl
010330: 77 74 68 0D 0A 09 20 63 70 20 34 3A 20 6A 72 20 wth... cp 4: jr
010340: 7A 2C 61 71 75 61 77 74 68 0D 0A 2E 61 73 6E 67 z,aquawth...asng
010350: 77 74 68 20 6C 64 20 61 2C 22 5A 22 3A 20 6A 72 wth ld a,"Z": jr
010360: 20 61 70 75 74 77 74 68 0D 0A 2E 61 64 62 6C 77 aputwth...adblw
010370: 74 68 20 6C 64 20 61 2C 22 4C 22 3A 20 6A 72 20 th ld a,"L": jr
010380: 61 70 75 74 77 74 68 0D 0A 2E 61 71 75 61 77 74 aputwth...aquawt
010390: 68 20 6C 64 20 61 2C 22 4B 22 3A 20 6A 72 20 61 h ld a,"K": jr a
0103A0: 70 75 74 77 74 68 0D 0A 2E 61 70 75 74 77 74 68 putwth...aputwth
0103B0: 20 6C 64 20 28 63 6C 74 79 70 65 29 2C 61 0D 0A ld (cltype),a..
0103C0: 0D 0A 09 20 6C 64 20 61 2C 28 70 73 74 6F 72 65 ... ld a,(pstore
0103D0: 2B 31 29 0D 0A 09 20 61 64 64 20 61 0D 0A 09 20 +1)... add a...
0103E0: 6C 64 20 28 63 6C 67 61 70 29 2C 61 0D 0A 0D 0A ld (clgap),a....
0103F0: 09 20 6C 64 20 61 2C 28 70 73 74 6F 72 65 2B 32 . ld a,(pstore+2
010400: 29 0D 0A 09 20 6C 64 20 28 62 69 74 70 61 74 29 )... ld (bitpat)
010410: 2C 61 0D 0A 0D 0A 09 20 6C 64 20 61 2C 28 70 73 ,a..... ld a,(ps
010420: 74 6F 72 65 2B 33 29 0D 0A 09 20 6C 64 20 28 6D tore+3)... ld (m
010430: 61 72 67 69 6E 29 2C 61 0D 0A 09 70 6F 70 20 68 argin),a...pop h
010440: 6C 3A 20 70 6F 70 20 64 65 0D 0A 09 70 6F 70 20 l: pop de...pop
010450: 62 63 0D 0A 09 73 63 66 3A 20 72 65 74 0D 0A 0D bc...scf: ret...
010460: 0A 2E 63 5F 72 6C 6F 70 09 70 75 73 68 20 62 63 ..c_rlop.push bc
010470: 09 09 09 3B 3E 3E 3E 20 22 72 22 20 2D 20 53 65 ...;>>> "r" - Se
010480: 74 20 72 75 6C 65 72 20 6C 69 6E 65 20 6F 70 74 t ruler line opt
010490: 69 6F 6E 73 0D 0A 09 70 75 73 68 20 64 65 3A 20 ions...push de:
0104A0: 70 75 73 68 20 68 6C 0D 0A 09 20 63 61 6C 6C 20 push hl... call
0104B0: 63 70 61 72 61 6D 0D 0A 09 20 6C 64 20 61 2C 28 cparam... ld a,(
0104C0: 70 73 74 6F 72 65 29 0D 0A 09 20 6C 64 20 28 72 pstore)... ld (r
0104D0: 6C 77 69 64 29 2C 61 0D 0A 09 20 6C 64 20 61 2C lwid),a... ld a,
0104E0: 28 70 73 74 6F 72 65 2B 31 29 0D 0A 09 20 6C 64 (pstore+1)... ld
0104F0: 20 28 72 6C 62 69 74 29 2C 61 0D 0A 09 70 6F 70 (rlbit),a...pop
010500: 0A 09 73 72 6C 20 68 3A 20 72 72 20 6C 09 09 3B ..srl h: rr l..;
010510: 64 69 76 69 64 65 20 62 79 20 32 0D 0A 09 69 6E divide by 2...in
010520: 63 20 68 6C 3A 09 69 6E 63 20 68 6C 0D 0A 09 63 c hl:.inc hl...c
010530: 61 6C 6C 20 61 72 74 70 6D 73 09 09 3B 73 65 74 all artpms..;set
010540: 20 75 70 20 70 72 6F 67 72 65 73 73 20 6D 65 74 up progress met
010550: 65 72 0D 0A 09 70 75 73 68 20 68 6C 09 09 09 3B er...push hl...;
010560: 77 69 6C 6C 20 62 65 20 72 65 74 72 69 65 76 65 will be retrieve
010570: 64 20 6C 61 74 65 72 20 62 79 20 22 70 6F 70 20 d later by "pop
010580: 69 79 22 0D 0A 09 20 63 61 6C 6C 20 73 5F 42 43 iy"... call s_BC
010590: 38 30 3A 20 6C 64 20 65 2C 61 0D 0A 09 20 63 61 80: ld e,a... ca
0105A0: 6C 6C 20 73 5F 42 43 38 30 3A 20 6C 64 20 64 2C ll s_BC80: ld d,
0105B0: 61 0D 0A 09 20 69 6E 63 20 64 65 3A 20 69 6E 63 a... inc de: inc
0105C0: 20 64 65 3A 20 69 6E 63 20 64 65 0D 0A 09 70 6F de: inc de...po
0105D0: 70 20 69 79 0D 0A 09 6C 64 20 61 2C 31 33 3A 20 p iy...ld a,13:
0105E0: 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A 0D 0A 2E call pchar.....
0105F0: 73 6C 6F 6F 70 09 70 75 73 68 20 64 65 0D 0A 09 sloop.push de...
010600: 20 6C 64 20 61 2C 36 34 3A 20 6C 64 20 28 62 63 ld a,64: ld (bc
010610: 6F 75 6E 74 29 2C 61 09 09 09 3B 73 65 6E 74 20 ount),a...;sent
010620: 36 34 20 62 79 74 65 73 20 2D 3E 20 73 65 6E 64 64 bytes -> send
010630: 20 45 53 43 20 63 6F 64 65 0D 0A 0D 0A 2E 6C 6F ESC code.....lo
010640: 6F 70 09 20 63 61 6C 6C 20 73 5F 42 43 38 30 0D op. call s_BC80.
010650: 0A 09 20 6C 64 20 62 2C 38 0D 0A 2E 70 6C 6F 6F .. ld b,8...ploo
010660: 70 09 20 63 61 6C 6C 20 70 6C 6F 74 3A 20 64 6A p. call plot: dj
010670: 6E 7A 20 70 6C 6F 6F 70 0D 0A 09 20 6C 64 20 61 nz ploop... ld a
010680: 2C 28 6E 65 77 6C 69 6E 65 29 3A 20 6F 72 20 61 ,(newline): or a
010690: 3A 20 6A 72 20 6E 7A 2C 6C 6F 6F 70 09 3B 6C 6F : jr nz,loop.;lo
0106A0: 6F 70 20 69 66 20 6E 65 77 20 6C 69 6E 65 20 6E op if new line n
0106B0: 6F 74 20 6E 65 65 64 65 64 0D 0A 0D 0A 09 20 3B ot needed..... ;
0106C0: 4E 65 77 20 6C 69 6E 65 20 6E 65 65 64 65 64 2E New line needed.
0106D0: 2E 2E 20 66 69 6E 69 73 68 20 6F 66 66 20 67 72 .. finish off gr
0106E0: 61 70 68 69 63 73 20 63 6F 6D 6D 61 6E 64 20 77 aphics command w
0106F0: 69 74 68 20 7A 65 72 6F 73 0D 0A 0D 0A 09 20 6C ith zeros..... l
010700: 20 68 6C 3A 20 70 6F 70 20 64 65 0D 0A 09 70 6F hl: pop de...po
010710: 70 20 62 63 0D 0A 09 73 63 66 3A 20 72 65 74 0D p bc...scf: ret.
010720: 0A 0D 0A 2E 63 5F 72 6C 6C 6E 09 6C 64 20 61 2C ....c_rlln.ld a,
010730: 65 73 63 3A 20 63 61 6C 6C 20 70 63 68 61 72 09 esc: call pchar.
010740: 3B 3E 3E 3E 20 22 52 22 20 2D 20 50 72 69 6E 74 ;>>> "R" - Print
010750: 20 72 75 6C 65 72 20 6C 69 6E 65 0D 0A 09 6C 64 ruler line...ld
010760: 20 61 2C 22 59 22 3A 20 63 61 6C 6C 20 70 63 68 a,"Y": call pch
010770: 61 72 0D 0A 09 6C 64 20 61 2C 26 34 38 3A 20 63 ar...ld a,&48: c
010780: 61 6C 6C 20 70 63 68 61 72 0D 0A 09 6C 64 20 61 all pchar...ld a
010790: 2C 26 30 33 3A 20 63 61 6C 6C 20 70 63 68 61 72 ,&03: call pchar
0107A0: 0D 0A 0D 0A 09 6C 64 20 68 6C 2C 38 34 30 0D 0A .....ld hl,840..
0107B0: 0D 0A 09 70 75 73 68 20 68 6C 0D 0A 09 20 6C 64 ...push hl... ld
0107C0: 20 61 2C 28 72 6C 77 69 64 29 3A 20 6C 64 20 6C a,(rlwid): ld l
0107D0: 2C 61 3A 20 6C 64 20 68 2C 30 0D 0A 09 20 61 64 ,a: ld h,0... ad
0107E0: 64 20 68 6C 2C 68 6C 3A 20 61 64 64 20 68 6C 2C d hl,hl: add hl,
0107F0: 68 6C 0D 0A 09 20 65 78 20 68 6C 2C 64 65 3A 20 hl... ex hl,de:
010800: 6C 64 20 68 6C 2C 38 34 30 0D 0A 09 20 73 62 63 ld hl,840... sbc
010810: 20 68 6C 2C 64 65 3A 20 65 78 20 68 6C 2C 64 65 hl,de: ex hl,de
010820: 0D 0A 09 20 73 72 6C 20 64 3A 20 72 72 20 65 0D ... srl d: rr e.
010830: 0A 09 70 6F 70 20 68 6C 0D 0A 0D 0A 2E 70 6F 62 ..pop hl.....pob
010840: 5F 6C 70 09 6C 64 20 61 2C 30 3A 20 63 61 6C 6C _lp.ld a,0: call
010850: 20 70 63 68 61 72 0D 0A 09 64 65 63 20 68 6C 3A pchar...dec hl:
010860: 20 64 65 63 20 64 65 0D 0A 09 6C 64 20 61 2C 64 dec de...ld a,d
010870: 3A 20 6F 72 20 65 0D 0A 09 6A 72 20 6E 7A 2C 70 : or e...jr nz,p
010880: 6F 62 5F 6C 70 0D 0A 0D 0A 09 70 75 73 68 20 68 ob_lp.....push h
010890: 6C 0D 0A 09 20 6C 64 20 61 2C 28 72 6C 77 69 64 l... ld a,(rlwid
0108A0: 29 3A 20 6C 64 20 6C 2C 61 3A 20 6C 64 20 68 2C ): ld l,a: ld h,
0108B0: 30 0D 0A 09 20 61 64 64 20 68 6C 2C 68 6C 3A 20 0... add hl,hl:
0108C0: 61 64 64 20 68 6C 2C 68 6C 0D 0A 09 20 65 78 20 add hl,hl... ex
0108D0: 68 6C 2C 64 65 0D 0A 09 70 6F 70 20 68 6C 0D 0A hl,de...pop hl..
0108E0: 0D 0A 2E 70 6D 6C 5F 6C 70 09 6C 64 20 61 2C 28 ...pml_lp.ld a,(
0108F0: 72 6C 62 69 74 29 3A 20 63 61 6C 6C 20 70 63 68 rlbit): call pch
010900: 64 20 61 2C 28 62 63 6F 75 6E 74 29 0D 0A 2E 66 d a,(bcount)...f
010910: 62 75 66 66 72 09 20 63 70 20 36 34 3A 20 6A 72 buffr. cp 64: jr
010920: 20 7A 2C 61 6C 6C 73 6E 74 0D 0A 09 20 70 75 73 z,allsnt... pus
010930: 68 20 61 66 0D 0A 09 20 20 78 6F 72 20 61 3A 20 h af... xor a:
010940: 63 61 6C 6C 20 70 63 68 61 72 0D 0A 09 20 70 6F call pchar... po
010950: 70 20 61 66 3A 20 69 6E 63 20 61 0D 0A 09 20 6A p af: inc a... j
010960: 72 20 66 62 75 66 66 72 0D 0A 0D 0A 2E 61 6C 6C r fbuffr.....all
010970: 73 6E 74 09 20 6C 64 20 61 2C 32 35 35 3A 20 6C snt. ld a,255: l
010980: 64 20 28 6E 65 77 6C 69 6E 65 29 2C 61 09 09 3B d (newline),a..;
010990: 64 6F 6E 27 74 20 6E 65 65 64 20 6E 65 77 20 6C don't need new l
0109A0: 69 6E 65 0D 0A 0D 0A 09 20 6C 64 20 61 2C 28 61 ine..... ld a,(a
0109B0: 72 74 63 6E 74 29 3A 20 6F 72 20 61 3A 20 6A 72 rtcnt): or a: jr
0109C0: 20 6E 7A 2C 6E 6F 70 63 68 72 09 3B 70 72 6F 67 nz,nopchr.;prog
0109D0: 72 65 73 73 20 6D 65 74 65 72 20 68 61 6E 64 6C ress meter handl
0109E0: 69 6E 67 0D 0A 09 20 6C 64 20 61 2C 31 34 33 3A ing... ld a,143:
0109F0: 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A 09 20 78 call &BB5A... x
010A00: 6F 72 20 61 0D 0A 2E 6E 6F 70 63 68 72 09 20 69 or a...nopchr. i
010A10: 6E 63 20 61 3A 20 61 6E 64 20 37 3A 20 6C 64 20 nc a: and 7: ld
010A20: 28 61 72 74 63 6E 74 29 2C 61 0D 0A 0D 0A 09 20 (artcnt),a.....
010A30: 64 65 63 20 69 79 0D 0A 09 20 64 62 20 26 46 44 dec iy... db &FD
010A40: 3A 20 6C 64 20 61 2C 68 0D 0A 09 20 64 62 20 26 : ld a,h... db &
010A50: 46 44 3A 20 6F 72 20 6C 0D 0A 09 70 6F 70 20 64 FD: or l...pop d
010A60: 65 3A 20 6A 72 20 6E 7A 2C 6E 6F 74 66 69 6E 09 e: jr nz,notfin.
010A70: 09 09 3B 46 69 6E 69 73 68 65 64 20 77 68 6F 6C ..;Finished whol
010A80: 65 20 6C 6F 74 20 79 65 74 3F 0D 0A 09 6C 64 20 e lot yet?...ld
010A90: 61 2C 31 30 3A 20 63 61 6C 6C 20 26 42 42 35 41 a,10: call &BB5A
010AA0: 09 09 09 3B 59 65 73 20 2D 20 43 52 2C 20 63 6C ...;Yes - CR, cl
010AB0: 6F 73 65 20 66 69 6C 65 2C 20 71 75 69 74 0D 0A ose file, quit..
010AC0: 09 6C 64 20 61 2C 31 33 3A 20 63 61 6C 6C 20 26 .ld a,13: call &
010AD0: 42 42 35 41 0D 0A 09 6A 70 20 73 5F 42 43 37 41 BB5A...jp s_BC7A
010AE0: 0D 0A 0D 0A 2E 6E 6F 74 66 69 6E 09 6C 64 20 61 .....notfin.ld a
010AF0: 2C 65 73 63 3A 20 63 61 6C 6C 20 70 63 68 61 72 ,esc: call pchar
010B00: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
010B10: 0E 00 01 00 02 09 4E E5 0E 00 C7 02 00 00 00 02 ......N.........
010B20: 0E 00 C3 02 00 00 00 02 0E 00 C8 02 00 00 00 02 ................
010B30: 0E 00 C4 02 00 00 00 02 0E 00 C9 02 00 00 00 02 ................
010B40: 0E 00 C5 02 00 00 00 02 0E 00 C1 02 00 00 00 02 ................
010B50: 0E 00 C6 02 00 00 00 02 0E 00 C2 02 00 00 00 02 ................
010B60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
010B70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
010B80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
010B90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
010BA0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
010BB0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
010BC0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
010BD0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
010BE0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
010BF0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
010C00: 67 20 6E 75 6D 62 65 72 20 6F 66 20 70 61 72 61 g number of para
010C10: 6D 65 74 65 72 73 22 2C 31 33 2C 31 30 2C 30 0D meters",13,10,0.
010C20: 0A 2E 6F 76 72 74 78 74 09 64 62 20 22 50 52 4F ..ovrtxt.db "PRO
010C30: 2D 45 58 54 3A 20 70 61 72 61 6D 65 74 65 72 20 -EXT: parameter
010C40: 6F 76 65 72 66 6C 6F 77 22 2C 31 33 2C 31 30 2C overflow",13,10,
010C50: 30 0D 0A 2E 61 72 74 74 78 74 09 64 62 20 22 50 0...arttxt.db "P
010C60: 52 4F 2D 45 58 54 3A 20 70 72 69 6E 74 69 6E 67 RO-EXT: printing
010C70: 20 63 6C 69 70 20 61 72 74 20 20 22 2C 30 0D 0A clip art ",0..
010C80: 0D 0A 2E 68 65 6C 70 62 67 09 64 62 20 34 2C 32 ...helpbg.db 4,2
010C90: 2C 22 50 52 4F 2D 45 58 54 20 76 31 2E 35 30 20 ,"PRO-EXT v1.50
010CA0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
010CB0: 20 20 20 20 20 20 20 22 2C 31 36 34 2C 22 31 39 ",164,"19
010CC0: 39 33 20 52 69 63 68 61 72 64 20 46 61 69 72 68 93 Richard Fairh
010CD0: 75 72 73 74 22 2C 31 30 2C 31 33 2C 31 30 2C 30 urst",10,13,10,0
010CE0: 0D 0A 2E 68 65 6C 70 65 6E 09 64 62 20 31 30 2C ...helpen.db 10,
010CF0: 22 46 6F 72 20 61 20 6C 69 73 74 20 6F 66 20 63 "For a list of c
010D00: 6F 6D 6D 61 6E 64 73 2C 20 74 79 70 65 20 50 58 ommands, type PX
010D10: 48 45 4C 50 2E 22 2C 31 33 2C 31 30 2C 31 30 2C HELP.",13,10,10,
010D20: 30 0D 0A 1A 63 68 61 72 64 20 46 61 69 72 68 75 0...chard Fairhu
010D30: 72 73 74 0D 0A 0D 0A 09 6F 72 67 20 26 39 34 30 rst.....org &940
010D40: 30 0D 0A 09 77 72 69 74 65 20 22 70 72 6F 2D 65 0...write "pro-e
010D50: 78 74 2E 62 69 6E 22 0D 0A 09 6E 6F 6C 69 73 74 xt.bin"...nolist
010D60: 0D 0A 0D 0A 65 73 63 09 65 71 75 20 32 37 0D 0A ....esc.equ 27..
010D70: 0D 0A 09 3B 49 6E 69 74 69 61 6C 69 73 65 20 73 ...;Initialise s
010D80: 2C 30 0D 0A 2E 75 6B 63 74 78 74 09 64 62 20 22 ,0...ukctxt.db "
010D90: 50 52 4F 2D 45 58 54 3A 20 75 6E 6B 6E 6F 77 6E PRO-EXT: unknown
010DA0: 20 63 6F 6D 6D 61 6E 64 22 2C 31 33 2C 31 30 2C command",13,10,
010DB0: 30 0D 0A 2E 6E 6F 66 74 78 74 09 64 62 20 22 50 0...noftxt.db "P
010DC0: 52 4F 2D 45 58 54 3A 20 66 6F 6E 74 20 66 69 6C RO-EXT: font fil
010DD0: 65 20 6E 6F 74 20 6C 6F 61 64 65 64 22 2C 31 33 e not loaded",13
010DE0: 2C 31 30 2C 30 0D 0A 2E 70 61 72 74 78 74 09 64 ,10,0...partxt.d
010DF0: 62 20 22 50 52 4F 2D 45 58 54 3A 20 77 72 6F 6E b "PRO-EXT: wron
010E00: 64 69 73 70 09 6C 64 20 68 6C 2C 68 65 6C 70 65 disp.ld hl,helpe
010E10: 6E 3A 20 63 61 6C 6C 20 73 74 72 69 6E 67 0D 0A n: call string..
010E20: 2E 71 6E 64 69 73 70 09 6C 64 20 62 63 2C 26 37 .qndisp.ld bc,&7
010E30: 46 43 30 3A 20 6F 75 74 20 28 63 29 2C 63 0D 0A FC0: out (c),c..
010E40: 09 72 65 74 0D 0A 0D 0A 2E 68 6E 66 6F 75 6E 09 .ret.....hnfoun.
010E50: 6C 64 20 62 63 2C 26 37 46 43 30 3A 20 6F 75 74 ld bc,&7FC0: out
010E60: 20 28 63 29 2C 63 0D 0A 09 6C 64 20 68 6C 2C 75 (c),c...ld hl,u
010E70: 6B 63 74 78 74 3A 20 6A 70 20 73 74 72 69 6E 67 kctxt: jp string
010E80: 0D 0A 0D 0A 09 3B 50 72 69 6E 74 20 73 74 72 69 .....;Print stri
010E90: 6E 67 20 6F 6E 20 73 63 72 65 65 6E 0D 0A 0D 0A ng on screen....
010EA0: 2E 73 74 72 69 6E 67 09 6C 64 20 61 2C 28 68 6C .string.ld a,(hl
010EB0: 29 3A 20 6F 72 20 61 3A 20 72 65 74 20 7A 0D 0A ): or a: ret z..
010EC0: 09 63 61 6C 6C 20 26 42 42 35 41 3A 20 69 6E 63 .call &BB5A: inc
010ED0: 20 68 6C 3A 20 6A 72 20 73 74 72 69 6E 67 0D 0A hl: jr string..
010EE0: 0D 0A 09 3B 43 6F 6E 76 65 72 74 20 70 61 72 61 ...;Convert para
010EF0: 6D 65 74 65 72 73 20 66 72 6F 6D 20 22 70 62 6C meters from "pbl
010F00: 6F 63 6B 22 20 28 41 53 43 49 49 29 20 69 6E 74 ock" (ASCII) int
010F10: 6F 20 22 70 73 74 6F 72 65 22 20 28 76 61 6C 75 o "pstore" (valu
010F20: 65 73 29 0D 0A 0D 0A 2E 63 70 61 72 61 6D 09 6C es).....cparam.l
010F30: 64 20 61 2C 28 70 62 6C 6F 6E 67 29 3A 20 6C 64 d a,(pblong): ld
010F40: 20 62 2C 61 0D 0A 09 6C 64 20 68 6C 2C 70 62 6C b,a...ld hl,pbl
010F50: 6F 63 6B 3A 20 6C 64 20 64 65 2C 70 73 74 6F 72 ock: ld de,pstor
010F60: 65 0D 0A 09 6C 64 20 63 2C 30 0D 0A 0D 0A 2E 63 e...ld c,0.....c
010F70: 70 72 6D 6C 70 09 6C 64 20 61 2C 28 68 6C 29 0D prmlp.ld a,(hl).
010F80: 0A 09 63 70 20 22 2C 22 3A 20 6A 72 20 7A 2C 20 ..cp ",": jr z,
010F90: 70 75 74 63 68 72 0D 0A 09 63 70 20 22 30 22 3A putchr...cp "0":
010FA0: 20 6A 72 20 63 2C 20 6E 78 74 63 68 72 0D 0A 09 jr c, nxtchr...
010FB0: 63 70 20 22 3A 22 3A 20 6A 72 20 6E 63 2C 6E 78 cp ":": jr nc,nx
010FC0: 74 63 68 72 0D 0A 09 72 6C 63 20 63 3A 20 6C 64 tchr...rlc c: ld
010FD0: 20 61 2C 63 0D 0A 09 72 6C 63 20 63 3A 20 72 6C a,c...rlc c: rl
010FE0: 63 20 63 0D 0A 09 61 64 64 20 63 3A 20 6C 64 20 c c...add c: ld
010FF0: 63 2C 61 09 09 3B 43 3D 43 2A 31 30 0D 0A 0D 0A c,a..;C=C*10....
011000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0110A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0110B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0110C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0110D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0110E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0110F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0111A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0111B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0111C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0111D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0111E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0111F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
011200: 09 6C 64 20 61 2C 28 68 6C 29 3A 20 73 75 62 20 .ld a,(hl): sub
011210: 34 38 0D 0A 09 61 64 64 20 63 3A 20 6C 64 20 63 48...add c: ld c
011220: 2C 61 0D 0A 0D 0A 2E 6E 78 74 63 68 72 09 69 6E ,a.....nxtchr.in
011230: 63 20 68 6C 3A 20 64 6A 6E 7A 20 63 70 72 6D 6C c hl: djnz cprml
011240: 70 09 3B 6E 65 78 74 20 63 68 61 72 61 63 74 65 p.;next characte
011250: 72 20 61 6E 64 20 6C 6F 6F 70 0D 0A 09 6C 64 20 r and loop...ld
011260: 61 2C 63 3A 20 6C 64 20 28 64 65 29 2C 61 3A 20 a,c: ld (de),a:
011270: 72 65 74 09 3B 69 66 20 72 75 6E 20 6F 75 74 2C ret.;if run out,
011280: 20 70 75 74 20 6C 61 73 74 20 70 61 72 61 6D 65 put last parame
011290: 74 65 72 20 69 6E 20 61 6E 64 20 65 6E 64 21 0D ter in and end!.
0112A0: 0A 0D 0A 2E 70 75 74 63 68 72 09 6C 64 20 61 2C ....putchr.ld a,
0112B0: 63 3A 20 6C 64 20 63 2C 30 09 09 3B 73 74 6F 72 c: ld c,0..;stor
0112C0: 65 20 76 61 6C 75 65 20 61 6E 64 20 62 6C 61 6E e value and blan
0112D0: 6B 20 69 74 20 66 6F 72 20 6E 65 78 74 20 74 69 k it for next ti
0112E0: 6D 65 0D 0A 09 6C 64 20 28 64 65 29 2C 61 3A 20 me...ld (de),a:
0112F0: 69 6E 63 20 64 65 09 3B 20 7C 0D 0A 09 69 6E 63 inc de.; |...inc
011300: 20 68 6C 3A 20 64 6A 6E 7A 20 63 70 72 6D 6C 70 hl: djnz cprmlp
011310: 09 3B 67 6F 20 6F 6E 74 6F 20 6E 65 78 74 20 63 .;go onto next c
011320: 68 61 72 61 63 74 65 72 0D 0A 09 72 65 74 09 09 haracter...ret..
011330: 09 3B 75 6E 6C 65 73 73 20 61 6C 6C 20 63 68 61 .;unless all cha
011340: 72 61 63 74 65 72 73 20 75 73 65 64 0D 0A 0D 0A racters used....
011350: 09 3B 44 61 74 61 0D 0A 0D 0A 2E 70 62 6C 6F 63 .;Data.....pbloc
011360: 6B 09 64 62 20 22 4F 46 46 49 43 45 2E 46 4E 54 k.db "OFFICE.FNT
011370: 22 3A 20 64 73 20 26 37 34 09 3B 31 32 38 2D 62 ": ds &74.;128-b
011380: 79 74 65 20 70 61 72 61 6D 65 74 65 72 20 62 6C yte parameter bl
011390: 6F 63 6B 0D 0A 2E 70 62 6C 6F 6E 67 09 64 62 20 ock...pblong.db
0113A0: 31 30 09 09 09 3B 6C 65 6E 67 74 68 20 6F 66 20 10...;length of
0113B0: 70 61 72 61 6D 65 74 65 72 20 62 6C 6F 63 6B 0D parameter block.
0113C0: 0A 2E 70 62 6C 6F 63 09 64 77 20 70 62 6C 6F 63 ..pbloc.dw pbloc
0113D0: 6B 09 09 3B 6C 6F 63 61 74 69 6F 6E 20 69 6E 20 k..;location in
0113E0: 70 61 72 61 6D 65 74 65 72 20 62 6C 6F 63 6B 0D parameter block.
0113F0: 0A 2E 69 6E 6F 70 09 64 62 20 30 09 09 09 3B 70 ..inop.db 0...;p
011400: 0D 0A 09 3B 2A 2A 2A 20 42 42 53 2E 4D 4F 44 20 ...;*** BBS.MOD
011410: 2A 2A 2A 0D 0A 0D 0A 09 3B 3E 3E 3E 20 53 43 41 ***.....;>>> SCA
011420: 4E 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 73 63 N command.....sc
011430: 61 6E 5F 69 09 63 61 6C 6C 20 62 75 66 66 5F 63 an_i.call buff_c
011440: 0D 0A 09 6C 64 20 63 2C 32 0D 0A 09 63 70 20 33 ...ld c,2...cp 3
011450: 0D 0A 09 6A 70 20 63 2C 65 72 72 6F 72 0D 0A 0D ...jp c,error...
011460: 0A 09 64 65 63 20 61 3A 20 64 65 63 20 61 0D 0A ..dec a: dec a..
011470: 09 63 61 6C 6C 20 72 66 6E 61 6D 65 0D 0A 0D 0A .call rfname....
011480: 09 6C 64 20 6C 2C 28 69 78 29 3A 20 6C 64 20 68 .ld l,(ix): ld h
011490: 2C 28 69 78 2B 31 29 0D 0A 09 6C 64 20 61 2C 28 ,(ix+1)...ld a,(
0114A0: 69 79 2B 37 32 29 09 09 09 3B 66 69 6C 65 73 20 iy+72)...;files
0114B0: 74 6F 20 73 65 6E 64 0D 0A 09 6C 64 20 28 68 6C to send...ld (hl
0114C0: 29 2C 61 0D 0A 09 69 6E 63 20 68 6C 3A 20 6C 64 ),a...inc hl: ld
0114D0: 20 28 68 6C 29 2C 30 0D 0A 0D 0A 09 6C 64 20 6C (hl),0.....ld l
0114E0: 2C 28 69 78 2B 32 29 3A 20 6C 64 20 68 2C 28 69 ,(ix+2): ld h,(i
0114F0: 78 2B 33 29 0D 0A 09 6C 64 20 65 2C 28 69 79 2B x+3)...ld e,(iy+
011500: 37 33 29 3A 20 6C 64 20 64 2C 28 69 79 2B 37 34 73): ld d,(iy+74
011510: 29 09 3B 6B 20 74 6F 20 73 65 6E 64 0D 0A 09 6C ).;k to send...l
011520: 64 20 28 68 6C 29 2C 65 0D 0A 09 69 6E 63 20 68 d (hl),e...inc h
011530: 6C 3A 20 6C 64 20 28 68 6C 29 2C 64 0D 0A 09 72 l: ld (hl),d...r
011540: 65 74 0D 0A 0D 0A 09 3B 3E 3E 3E 20 42 43 4C 45 et.....;>>> BCLE
011550: 41 52 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 62 AR command.....b
011560: 63 6C 72 5F 69 09 6C 64 20 61 2C 26 43 34 0D 0A clr_i.ld a,&C4..
011570: 2E 62 63 6C 72 6C 70 09 6C 64 20 62 2C 26 37 46 .bclrlp.ld b,&7F
011580: 0D 0A 09 6F 75 74 20 28 63 29 2C 61 0D 0A 09 6C ...out (c),a...l
011590: 64 20 68 6C 2C 26 34 30 30 30 0D 0A 09 6C 64 20 d hl,&4000...ld
0115A0: 64 65 2C 26 34 30 30 31 0D 0A 09 6C 64 20 62 63 de,&4001...ld bc
0115B0: 2C 26 33 66 66 66 0D 0A 09 6C 64 20 28 68 6C 29 ,&3fff...ld (hl)
0115C0: 2C 30 3A 20 6C 64 69 72 0D 0A 09 69 6E 63 20 61 ,0: ldir...inc a
0115D0: 3A 20 63 70 20 26 43 38 0D 0A 09 6A 72 20 6E 7A : cp &C8...jr nz
0115E0: 2C 62 63 6C 72 6C 70 0D 0A 09 63 61 6C 6C 20 72 ,bclrlp...call r
0115F0: 73 74 62 6E 6B 0D 0A 0D 0A 09 78 6F 72 20 61 0D stbnk.....xor a.
011600: 61 72 61 6D 65 74 65 72 20 62 6C 6F 63 6B 20 69 arameter block i
011610: 6E 20 6F 70 65 72 61 74 69 6F 6E 3F 20 28 31 2F n operation? (1/
011620: 32 29 0D 0A 2E 68 65 69 67 68 74 09 64 62 20 30 2)...height.db 0
011630: 09 09 09 3B 68 65 69 67 68 74 20 6F 66 20 63 68 ...;height of ch
011640: 61 72 61 63 74 65 72 73 0D 0A 2E 6C 61 73 74 6C aracters...lastl
011650: 66 09 64 62 20 30 09 09 09 3B 6E 75 6D 62 65 72 f.db 0...;number
011660: 20 74 6F 20 6C 69 6E 65 20 66 65 65 64 20 61 74 to line feed at
011670: 20 6C 61 73 74 20 4C 46 0D 0A 2E 72 6F 77 09 64 last LF...row.d
011680: 62 20 30 09 09 09 3B 63 75 72 72 65 6E 74 20 63 b 0...;current c
011690: 68 61 72 61 63 74 65 72 20 72 6F 77 0D 0A 2E 78 haracter row...x
0116A0: 74 36 34 09 64 62 20 30 09 09 09 3B 65 78 74 72 t64.db 0...;extr
0116B0: 61 20 36 34 2D 62 79 74 65 20 62 6C 6F 63 6B 73 a 64-byte blocks
0116C0: 20 74 6F 20 73 65 6E 64 0D 0A 2E 63 6F 6C 75 6D to send...colum
0116D0: 6E 09 64 77 20 30 09 09 09 3B 6E 75 6D 62 65 72 n.dw 0...;number
0116E0: 20 6F 66 20 63 6F 6C 75 6D 6E 73 20 74 6F 20 73 of columns to s
0116F0: 65 6E 64 0D 0A 2E 70 67 6D 6F 64 65 09 64 62 20 end...pgmode.db
011700: 22 4C 22 09 09 09 3B 64 6F 75 62 6C 65 20 64 65 "L"...;double de
011710: 6E 73 69 74 79 20 66 6F 72 20 66 6F 6E 74 73 0D nsity for fonts.
011720: 0A 2E 70 74 79 70 65 09 64 62 20 30 09 09 09 3B ..ptype.db 0...;
011730: 64 72 61 66 74 20 28 30 29 20 6F 72 20 4E 4C 51 draft (0) or NLQ
011740: 20 28 31 29 20 66 6F 6E 74 0D 0A 2E 63 6C 67 61 (1) font...clga
011750: 70 09 64 62 20 32 09 09 09 3B 32 20 6C 69 6E 65 p.db 2...;2 line
011760: 20 66 65 65 64 20 66 6F 72 20 63 6C 69 70 20 61 feed for clip a
011770: 72 74 0D 0A 2E 63 6C 74 79 70 65 09 64 62 20 22 rt...cltype.db "
011780: 5A 22 09 09 09 3B 71 75 61 64 20 64 65 6E 73 69 Z"...;quad densi
011790: 74 79 20 66 6F 72 20 63 6C 69 70 20 61 72 74 0D ty for clip art.
0117A0: 0A 2E 62 69 74 70 61 74 09 64 62 20 31 09 09 09 ..bitpat.db 1...
0117B0: 3B 62 69 74 20 70 61 74 74 65 72 6E 20 66 6F 72 ;bit pattern for
0117C0: 20 63 6C 69 70 20 61 72 74 0D 0A 2E 6D 61 72 67 clip art...marg
0117D0: 69 6E 09 64 62 20 30 09 09 09 3B 6D 61 72 67 69 in.db 0...;margi
0117E0: 6E 20 66 6F 72 20 63 6C 69 70 20 61 72 74 0D 0A n for clip art..
0117F0: 2E 72 6C 62 69 74 09 64 62 20 25 31 30 31 30 30 .rlbit.db %10100
011800: 20 61 2C 28 63 6C 74 79 70 65 29 3A 20 63 61 6C a,(cltype): cal
011810: 6C 20 70 63 68 61 72 0D 0A 09 6C 64 20 61 2C 36 l pchar...ld a,6
011820: 34 3A 20 20 63 61 6C 6C 20 70 63 68 61 72 0D 0A 4: call pchar..
011830: 09 6C 64 20 61 2C 30 3A 20 20 20 63 61 6C 6C 20 .ld a,0: call
011840: 70 63 68 61 72 0D 0A 0D 0A 09 78 6F 72 20 61 0D pchar.....xor a.
011850: 0A 0D 0A 2E 69 62 63 6E 74 09 69 6E 63 20 61 3A ....ibcnt.inc a:
011860: 20 6C 64 20 28 62 63 6F 75 6E 74 29 2C 61 3A 20 ld (bcount),a:
011870: 72 65 74 0D 0A 0D 0A 09 3B 43 6C 69 70 20 61 72 ret.....;Clip ar
011880: 74 20 6D 61 72 67 69 6E 0D 0A 0D 0A 2E 64 6F 6D t margin.....dom
011890: 61 72 67 09 6C 64 20 61 2C 28 6D 61 72 67 69 6E arg.ld a,(margin
0118A0: 29 0D 0A 09 6F 72 20 61 3A 20 72 65 74 20 7A 0D )...or a: ret z.
0118B0: 0A 2E 64 6F 6D 61 6C 70 09 70 75 73 68 20 61 66 ..domalp.push af
0118C0: 0D 0A 09 20 6C 64 20 61 2C 33 32 3A 20 63 61 6C ... ld a,32: cal
0118D0: 6C 20 70 63 68 61 72 0D 0A 09 70 6F 70 20 61 66 l pchar...pop af
0118E0: 0D 0A 09 64 65 63 20 61 3A 20 6A 72 20 6E 7A 2C ...dec a: jr nz,
0118F0: 64 6F 6D 61 6C 70 0D 0A 09 72 65 74 0D 0A 0D 0A domalp...ret....
011900: 09 3B 43 6C 69 70 20 61 72 74 20 70 72 6F 67 72 .;Clip art progr
011910: 65 73 73 20 6D 65 74 65 72 20 2D 20 73 65 74 20 ess meter - set
011920: 75 70 0D 0A 0D 0A 2E 61 72 74 70 6D 73 09 70 75 up.....artpms.pu
011930: 73 68 20 68 6C 0D 0A 09 20 6C 64 20 68 6C 2C 61 sh hl... ld hl,a
011940: 72 74 74 78 74 3A 20 63 61 6C 6C 20 73 74 72 69 rttxt: call stri
011950: 6E 67 0D 0A 09 70 6F 70 20 68 6C 0D 0A 09 6C 64 ng...pop hl...ld
011960: 20 61 2C 32 30 37 3A 20 63 61 6C 6C 20 61 72 74 a,207: call art
011970: 70 6D 38 0D 0A 09 6C 64 20 61 2C 38 20 20 3A 20 pm8...ld a,8 :
011980: 63 61 6C 6C 20 61 72 74 70 6D 38 0D 0A 09 78 6F call artpm8...xo
011990: 72 20 61 3A 20 6C 64 20 28 61 72 74 63 6E 74 29 r a: ld (artcnt)
0119A0: 2C 61 0D 0A 09 72 65 74 0D 0A 0D 0A 2E 61 72 74 ,a...ret.....art
0119B0: 70 6D 38 09 70 75 73 68 20 68 6C 0D 0A 2E 61 72 pm8.push hl...ar
0119C0: 74 70 6D 6C 09 20 63 61 6C 6C 20 26 42 42 35 41 tpml. call &BB5A
0119D0: 0D 0A 09 20 6F 72 20 61 3A 20 6C 64 20 64 65 2C ... or a: ld de,
0119E0: 38 3A 20 73 62 63 20 68 6C 2C 64 65 0D 0A 09 20 8: sbc hl,de...
0119F0: 6A 72 20 6E 63 2C 61 72 74 70 6D 6C 0D 0A 09 70 jr nc,artpml...p
011A00: 09 09 3B 70 61 74 74 65 72 6E 20 66 6F 72 20 72 ..;pattern for r
011A10: 75 6C 65 72 20 6C 69 6E 65 0D 0A 2E 72 6C 77 69 uler line...rlwi
011A20: 64 09 64 62 20 31 30 30 09 09 09 3B 72 75 6C 65 d.db 100...;rule
011A30: 72 20 77 69 64 74 68 0D 0A 2E 77 63 68 61 72 09 r width...wchar.
011A40: 64 62 20 30 09 09 09 3B 63 68 61 72 61 63 74 65 db 0...;characte
011A50: 72 20 74 6F 20 77 61 69 74 20 66 6F 72 0D 0A 2E r to wait for...
011A60: 70 73 74 6F 72 65 09 64 73 20 36 09 09 09 3B 73 pstore.ds 6...;s
011A70: 74 6F 72 61 67 65 20 6F 66 20 63 68 61 72 61 63 torage of charac
011A80: 74 65 72 73 20 6E 75 6D 65 72 69 63 61 6C 6C 79 ters numerically
011A90: 0D 0A 2E 61 72 74 63 6E 74 09 64 62 20 30 09 09 ...artcnt.db 0..
011AA0: 09 3B 63 6F 75 6E 74 65 72 20 66 6F 72 20 70 72 .;counter for pr
011AB0: 6F 67 72 65 73 73 20 6D 65 74 65 72 0D 0A 0D 0A ogress meter....
011AC0: 2E 6E 65 77 6C 69 6E 65 20 64 62 20 32 35 35 09 .newline db 255.
011AD0: 09 09 3B 30 20 69 66 20 61 20 6E 65 77 20 6C 69 ..;0 if a new li
011AE0: 6E 65 20 69 73 20 6E 65 65 64 65 64 2C 20 6E 6F ne is needed, no
011AF0: 6E 2D 7A 65 72 6F 20 6F 74 68 65 72 77 69 73 65 n-zero otherwise
011B00: 0D 0A 2E 62 63 6F 75 6E 74 09 64 62 20 30 09 09 ...bcount.db 0..
011B10: 09 3B 62 79 74 65 73 20 73 65 6E 74 20 63 6F 75 .;bytes sent cou
011B20: 6E 74 0D 0A 0D 0A 2E 77 6B 73 70 09 64 73 20 34 nt.....wksp.ds 4
011B30: 09 09 09 3B 52 53 58 20 77 6F 72 6B 73 70 61 63 ...;RSX workspac
011B40: 65 0D 0A 0D 0A 09 3B 54 65 78 74 0D 0A 0D 0A 2E e.....;Text.....
011B50: 6C 64 65 74 78 74 09 64 62 20 22 50 52 4F 2D 45 ldetxt.db "PRO-E
011B60: 58 54 3A 20 65 72 72 6F 72 20 69 6E 20 6C 6F 61 XT: error in loa
011B70: 64 69 6E 67 20 66 69 6C 65 22 2C 31 33 2C 31 30 ding file",13,10
011B80: 2C 30 0D 0A 2E 75 6B 63 74 78 74 09 64 62 20 22 ,0...ukctxt.db "
011B90: 50 52 4F 2D 45 58 54 3A 20 75 6E 6B 6E 6F 77 6E PRO-EXT: unknown
011BA0: 20 63 6F 6D 6D 61 6E 64 22 2C 31 33 2C 31 30 2C command",13,10,
011BB0: 30 0D 0A 2E 6E 6F 66 74 78 74 09 64 62 20 22 50 0...noftxt.db "P
011BC0: 52 4F 2D 45 58 54 3A 20 66 6F 6E 74 20 66 69 6C RO-EXT: font fil
011BD0: 65 20 6E 6F 74 20 6C 6F 61 64 65 64 22 2C 31 33 e not loaded",13
011BE0: 2C 31 30 2C 30 0D 0A 2E 70 61 72 74 78 74 09 64 ,10,0...partxt.d
011BF0: 62 20 22 50 52 4F 2D 45 58 54 3A 20 77 72 6F 6E b "PRO-EXT: wron
011C00: 6F 70 20 68 6C 3A 20 72 65 74 0D 0A 0D 0A 09 3B op hl: ret.....;
011C10: 4F 6E 6C 69 6E 65 20 68 65 6C 70 20 73 79 73 74 Online help syst
011C20: 65 6D 20 76 31 2E 30 0D 0A 09 3B 28 63 29 39 33 em v1.0...;(c)93
011C30: 20 43 52 54 43 20 6F 66 20 44 69 73 63 6F 76 65 CRTC of Discove
011C40: 72 79 0D 0A 0D 0A 2E 70 78 68 65 6C 70 09 6F 72 ry.....pxhelp.or
011C50: 20 61 3A 20 6A 72 20 6E 7A 2C 73 70 65 63 0D 0A a: jr nz,spec..
011C60: 09 6C 64 20 61 2C 33 31 3A 20 6A 72 20 67 73 70 .ld a,31: jr gsp
011C70: 65 63 0D 0A 0D 0A 2E 73 70 65 63 09 6C 64 20 6C ec.....spec.ld l
011C80: 2C 28 69 78 29 3A 20 6C 64 20 68 2C 28 69 78 2B ,(ix): ld h,(ix+
011C90: 31 29 0D 0A 09 69 6E 63 20 68 6C 3A 20 6C 64 20 1)...inc hl: ld
011CA0: 65 2C 28 68 6C 29 0D 0A 09 69 6E 63 20 68 6C 3A e,(hl)...inc hl:
011CB0: 20 6C 64 20 64 2C 28 68 6C 29 0D 0A 09 6C 64 20 ld d,(hl)...ld
011CC0: 61 2C 28 64 65 29 0D 0A 0D 0A 2E 67 73 70 65 63 a,(de).....gspec
011CD0: 09 6C 64 20 62 63 2C 26 37 46 43 37 3A 20 6F 75 .ld bc,&7FC7: ou
011CE0: 74 20 28 63 29 2C 63 0D 0A 09 6C 64 20 68 6C 2C t (c),c...ld hl,
011CF0: 26 34 38 30 30 3A 20 6C 64 20 63 2C 61 0D 0A 2E &4800: ld c,a...
011D00: 67 73 70 65 63 6C 09 6C 64 20 61 2C 28 68 6C 29 gspecl.ld a,(hl)
011D10: 3A 20 69 6E 63 20 68 6C 0D 0A 09 63 70 20 39 3A : inc hl...cp 9:
011D20: 20 6A 72 20 7A 2C 68 6E 66 6F 75 6E 0D 0A 09 63 jr z,hnfoun...c
011D30: 70 20 36 3A 20 6A 72 20 6E 7A 2C 67 73 70 65 63 p 6: jr nz,gspec
011D40: 6C 0D 0A 09 6C 64 20 61 2C 28 68 6C 29 3A 20 69 l...ld a,(hl): i
011D50: 6E 63 20 68 6C 0D 0A 09 63 70 20 63 3A 20 6A 72 nc hl...cp c: jr
011D60: 20 6E 7A 2C 67 73 70 65 63 6C 0D 0A 0D 0A 09 70 nz,gspecl.....p
011D70: 75 73 68 20 68 6C 0D 0A 09 20 6C 64 20 68 6C 2C ush hl... ld hl,
011D80: 68 65 6C 70 62 67 3A 20 63 61 6C 6C 20 73 74 72 helpbg: call str
011D90: 69 6E 67 0D 0A 09 70 6F 70 20 68 6C 0D 0A 0D 0A ing...pop hl....
011DA0: 2E 70 68 65 6C 70 6C 09 6C 64 20 61 2C 28 68 6C .phelpl.ld a,(hl
011DB0: 29 3A 20 69 6E 63 20 68 6C 0D 0A 09 63 70 20 37 ): inc hl...cp 7
011DC0: 3A 20 6A 72 20 7A 2C 71 6E 64 69 73 70 0D 0A 09 : jr z,qndisp...
011DD0: 63 70 20 38 3A 20 6A 72 20 7A 2C 71 79 64 69 73 cp 8: jr z,qydis
011DE0: 70 0D 0A 09 63 61 6C 6C 20 26 42 42 35 41 3A 20 p...call &BB5A:
011DF0: 6A 72 20 70 68 65 6C 70 6C 0D 0A 0D 0A 2E 71 79 jr phelpl.....qy
011E00: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
011E10: 0F 00 01 00 02 09 4E E5 0F 00 C1 02 00 00 00 02 ......N.........
011E20: 0F 00 C6 02 00 00 00 02 0F 00 C2 02 00 00 00 02 ................
011E30: 0F 00 C7 02 00 00 00 02 0F 00 C3 02 00 00 00 02 ................
011E40: 0F 00 C8 02 00 00 00 02 0F 00 C4 02 00 00 00 02 ................
011E50: 0F 00 C9 02 00 00 00 02 0F 00 C5 02 00 00 00 02 ................
011E60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
011E70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
011E80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
011E90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
011EA0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
011EB0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
011EC0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
011ED0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
011EE0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
011EF0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
011F00: 0A 09 6C 64 20 28 69 79 2B 31 33 29 2C 61 3A 20 ..ld (iy+13),a:
011F10: 6C 64 20 28 69 79 2B 31 34 29 2C 61 3A 20 6C 64 ld (iy+14),a: ld
011F20: 20 28 69 79 2B 31 35 29 2C 61 3A 20 6C 64 20 28 (iy+15),a: ld (
011F30: 69 79 2B 31 36 29 2C 61 3A 20 6C 64 20 28 69 79 iy+16),a: ld (iy
011F40: 2B 31 37 29 2C 61 0D 0A 09 6C 64 20 28 69 79 2B +17),a...ld (iy+
011F50: 31 38 29 2C 61 3A 20 6C 64 20 28 69 79 2B 31 39 18),a: ld (iy+19
011F60: 29 2C 61 3A 20 6C 64 20 28 69 79 2B 32 30 29 2C ),a: ld (iy+20),
011F70: 61 3A 20 6C 64 20 28 69 79 2B 32 31 29 2C 61 3A a: ld (iy+21),a:
011F80: 20 6C 64 20 28 69 79 2B 32 32 29 2C 61 0D 0A 09 ld (iy+22),a...
011F90: 6C 64 20 28 69 79 2B 32 33 29 2C 61 0D 0A 09 72 ld (iy+23),a...r
011FA0: 65 74 0D 0A 0D 0A 09 3B 3E 3E 3E 20 42 4F 50 45 et.....;>>> BOPE
011FB0: 4E 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 62 6F N command.....bo
011FC0: 70 6E 5F 69 09 6C 64 20 63 2C 32 0D 0A 09 63 70 pn_i.ld c,2...cp
011FD0: 20 31 0D 0A 09 6A 70 20 6E 7A 2C 65 72 72 6F 72 1...jp nz,error
011FE0: 09 09 09 3B 45 72 72 6F 72 20 69 66 20 3C 20 32 ...;Error if < 2
011FF0: 20 70 61 72 61 6D 65 74 65 72 73 0D 0A 0D 0A 09 parameters.....
012000: 6C 64 20 61 2C 28 69 79 2B 31 37 29 0D 0A 09 6C ld a,(iy+17)...l
012010: 64 20 63 2C 31 36 0D 0A 09 6F 72 20 61 0D 0A 09 d c,16...or a...
012020: 6A 70 20 6E 7A 2C 65 72 72 6F 72 09 09 09 3B 45 jp nz,error...;E
012030: 72 72 6F 72 20 69 66 20 61 6C 72 65 61 64 79 20 rror if already
012040: 6F 70 65 6E 0D 0A 0D 0A 09 6C 64 20 6C 2C 28 69 open.....ld l,(i
012050: 78 29 3A 20 6C 64 20 68 2C 28 69 78 2B 31 29 0D x): ld h,(ix+1).
012060: 0A 09 70 75 73 68 20 68 6C 3A 20 70 6F 70 20 69 ..push hl: pop i
012070: 78 09 09 09 3B 49 58 20 63 6F 6E 74 61 69 6E 73 x...;IX contains
012080: 20 61 64 64 72 65 73 73 20 6F 66 20 70 61 72 61 address of para
012090: 6D 65 74 65 72 0D 0A 0D 0A 09 63 61 6C 6C 20 66 meter.....call f
0120A0: 6C 61 73 74 72 09 09 09 3B 47 65 74 20 6C 61 73 lastr...;Get las
0120B0: 74 20 6C 6F 63 61 74 69 6F 6E 0D 0A 0D 0A 09 6C t location.....l
0120C0: 64 20 28 69 79 2B 32 30 29 2C 6C 3A 20 6C 64 20 d (iy+20),l: ld
0120D0: 28 69 79 2B 32 31 29 2C 68 09 3B 53 74 61 72 74 (iy+21),h.;Start
0120E0: 20 70 75 74 74 69 6E 67 20 74 68 69 6E 67 73 20 putting things
0120F0: 68 65 72 65 0D 0A 09 64 65 63 20 68 6C 3A 20 64 here...dec hl: d
012100: 20 63 2C 31 37 0D 0A 09 65 78 20 64 65 2C 68 6C c,17...ex de,hl
012110: 0D 0A 09 63 70 20 28 68 6C 29 0D 0A 09 6A 72 20 ...cp (hl)...jr
012120: 7A 2C 62 6C 69 73 6F 6B 09 09 3B 4F 6B 20 69 66 z,blisok..;Ok if
012130: 20 73 61 6D 65 20 6C 65 6E 67 74 68 0D 0A 09 6A same length...j
012140: 72 20 63 2C 62 6C 69 73 6F 6B 09 09 3B 6F 72 20 r c,blisok..;or
012150: 69 66 20 73 74 72 69 6E 67 20 69 73 20 6C 6F 6E if string is lon
012160: 67 65 72 0D 0A 09 6A 70 20 62 6E 6B 61 62 32 09 ger...jp bnkab2.
012170: 09 3B 6F 74 68 65 72 77 69 73 65 20 65 72 72 6F .;otherwise erro
012180: 72 20 31 37 0D 0A 0D 0A 2E 62 6C 69 73 6F 6B 09 r 17.....blisok.
012190: 6C 64 20 28 68 6C 29 2C 61 3A 20 6C 64 20 62 2C ld (hl),a: ld b,
0121A0: 61 09 3B 50 75 74 20 72 65 61 6C 20 6C 65 6E 67 a.;Put real leng
0121B0: 74 68 20 69 6E 74 6F 20 73 74 72 69 6E 67 0D 0A th into string..
0121C0: 09 69 6E 63 20 68 6C 3A 20 6C 64 20 65 2C 28 68 .inc hl: ld e,(h
0121D0: 6C 29 0D 0A 09 69 6E 63 20 68 6C 3A 20 6C 64 20 l)...inc hl: ld
0121E0: 64 2C 28 68 6C 29 0D 0A 0D 0A 09 6C 64 20 61 2C d,(hl).....ld a,
0121F0: 62 3A 20 6F 72 20 61 3A 20 6A 72 20 7A 2C 65 78 b: or a: jr z,ex
012200: 62 67 74 73 0D 0A 0D 0A 2E 62 67 74 73 6C 70 09 bgts.....bgtslp.
012210: 70 75 73 68 20 62 63 3A 20 63 61 6C 6C 20 62 6E push bc: call bn
012220: 6B 67 69 6E 3A 20 70 6F 70 20 62 63 0D 0A 09 6C kgin: pop bc...l
012230: 64 20 28 64 65 29 2C 61 3A 20 69 6E 63 20 64 65 d (de),a: inc de
012240: 0D 0A 09 64 6A 6E 7A 20 62 67 74 73 6C 70 0D 0A ...djnz bgtslp..
012250: 0D 0A 2E 65 78 62 67 74 73 09 72 65 74 0D 0A 0D ...exbgts.ret...
012260: 0A 09 3B 3E 3E 3E 20 42 47 45 54 49 20 63 6F 6D ..;>>> BGETI com
012270: 6D 61 6E 64 0D 0A 0D 0A 2E 62 67 74 69 5F 69 09 mand.....bgti_i.
012280: 6C 64 20 63 2C 32 0D 0A 09 63 70 20 31 0D 0A 09 ld c,2...cp 1...
012290: 6A 70 20 6E 7A 2C 65 72 72 6F 72 0D 0A 0D 0A 09 jp nz,error.....
0122A0: 6C 64 20 65 2C 28 69 78 29 3A 20 6C 64 20 64 2C ld e,(ix): ld d,
0122B0: 28 69 78 2B 31 29 0D 0A 09 63 61 6C 6C 20 62 6E (ix+1)...call bn
0122C0: 6B 67 69 6E 09 09 3B 47 65 74 20 74 79 70 65 0D kgin..;Get type.
0122D0: 0A 0D 0A 09 6C 64 20 63 2C 31 35 0D 0A 09 63 70 ....ld c,15...cp
0122E0: 20 26 31 41 3A 20 6A 70 20 7A 2C 62 6E 6B 61 62 &1A: jp z,bnkab
0122F0: 6F 09 3B 45 6E 64 20 6F 66 20 44 61 74 61 3F 0D o.;End of Data?.
012300: 65 63 20 68 6C 0D 0A 09 6C 64 20 28 69 79 2B 32 ec hl...ld (iy+2
012310: 32 29 2C 6C 3A 20 6C 64 20 28 69 79 2B 32 33 29 2),l: ld (iy+23)
012320: 2C 68 09 3B 41 64 64 72 65 73 73 20 74 6F 20 70 ,h.;Address to p
012330: 75 74 20 6C 65 6E 67 74 68 20 61 74 0D 0A 0D 0A ut length at....
012340: 09 6C 64 20 6C 2C 28 69 79 2B 31 38 29 3A 20 6C .ld l,(iy+18): l
012350: 64 20 68 2C 28 69 79 2B 31 39 29 0D 0A 09 69 6E d h,(iy+19)...in
012360: 63 20 68 6C 09 09 09 09 3B 49 6E 63 72 65 61 73 c hl....;Increas
012370: 65 20 22 6C 61 73 74 20 6D 73 67 22 20 63 6F 75 e "last msg" cou
012380: 6E 74 65 72 0D 0A 09 6C 64 20 28 69 79 2B 31 38 nter...ld (iy+18
012390: 29 2C 6C 3A 20 6C 64 20 28 69 79 2B 31 39 29 2C ),l: ld (iy+19),
0123A0: 68 0D 0A 09 6C 64 20 28 69 78 29 2C 6C 3A 20 6C h...ld (ix),l: l
0123B0: 64 20 28 69 78 2B 31 29 2C 68 09 09 3B 61 6E 64 d (ix+1),h..;and
0123C0: 20 70 75 74 20 69 74 20 69 6E 74 6F 20 70 61 73 put it into pas
0123D0: 73 65 64 20 76 61 72 69 61 62 6C 65 0D 0A 0D 0A sed variable....
0123E0: 09 6C 64 20 61 2C 26 46 46 0D 0A 09 6C 64 20 28 .ld a,&FF...ld (
0123F0: 69 79 2B 31 37 29 2C 61 09 09 09 3B 52 65 63 6F iy+17),a...;Reco
012400: 72 64 20 6E 6F 77 20 6F 70 65 6E 0D 0A 09 72 65 rd now open...re
012410: 74 0D 0A 0D 0A 09 3B 3E 3E 3E 20 42 43 4C 4F 53 t.....;>>> BCLOS
012420: 45 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 62 63 E command.....bc
012430: 73 65 5F 69 09 6C 64 20 63 2C 31 33 0D 0A 09 6C se_i.ld c,13...l
012440: 64 20 61 2C 28 69 79 2B 31 37 29 0D 0A 09 6F 72 d a,(iy+17)...or
012450: 20 61 0D 0A 09 6A 70 20 7A 2C 65 72 72 6F 72 0D a...jp z,error.
012460: 0A 0D 0A 09 6C 64 20 61 2C 26 31 41 0D 0A 09 63 ....ld a,&1A...c
012470: 61 6C 6C 20 62 6E 6B 70 69 6E 09 09 3B 50 75 74 all bnkpin..;Put
012480: 20 69 6E 20 22 45 6E 64 20 6F 66 20 44 61 74 61 in "End of Data
012490: 22 20 6D 61 72 6B 65 72 0D 0A 0D 0A 09 6C 64 20 " marker.....ld
0124A0: 6C 2C 28 69 79 2B 32 30 29 3A 20 6C 64 20 68 2C l,(iy+20): ld h,
0124B0: 28 69 79 2B 32 31 29 0D 0A 09 6C 64 20 65 2C 28 (iy+21)...ld e,(
0124C0: 69 79 2B 32 32 29 3A 20 6C 64 20 64 2C 28 69 79 iy+22): ld d,(iy
0124D0: 2B 32 33 29 0D 0A 09 73 62 63 20 68 6C 2C 64 65 +23)...sbc hl,de
0124E0: 0D 0A 09 64 65 63 20 68 6C 3A 20 64 65 63 20 68 ...dec hl: dec h
0124F0: 6C 0D 0A 09 65 78 20 68 6C 2C 64 65 0D 0A 09 6C l...ex hl,de...l
012500: 0A 09 6C 64 20 63 2C 31 34 0D 0A 09 63 70 20 26 ..ld c,14...cp &
012510: 32 35 3A 20 6A 70 20 6E 7A 2C 62 6E 6B 61 62 6F 25: jp nz,bnkabo
012520: 09 3B 49 6E 74 65 67 65 72 20 76 61 72 69 61 62 .;Integer variab
012530: 6C 65 20 74 79 70 65 3F 0D 0A 0D 0A 09 63 61 6C le type?.....cal
012540: 6C 20 62 6E 6B 67 69 6E 0D 0A 09 6C 64 20 28 64 l bnkgin...ld (d
012550: 65 29 2C 61 3A 20 69 6E 63 20 64 65 09 3B 47 65 e),a: inc de.;Ge
012560: 74 20 6C 6F 77 20 62 79 74 65 20 61 6E 64 20 73 t low byte and s
012570: 74 6F 72 65 0D 0A 0D 0A 09 63 61 6C 6C 20 62 6E tore.....call bn
012580: 6B 67 69 6E 0D 0A 09 6C 64 20 28 64 65 29 2C 61 kgin...ld (de),a
012590: 3A 20 69 6E 63 20 64 65 09 3B 47 65 74 20 68 69 : inc de.;Get hi
0125A0: 67 68 20 62 79 74 65 20 61 6E 64 20 73 74 6F 72 gh byte and stor
0125B0: 65 0D 0A 09 72 65 74 0D 0A 0D 0A 09 3B 3E 3E 3E e...ret.....;>>>
0125C0: 20 42 44 45 4C 45 54 45 20 63 6F 6D 6D 61 6E 64 BDELETE command
0125D0: 0D 0A 0D 0A 2E 62 64 65 6C 5F 69 09 6C 64 20 63 .....bdel_i.ld c
0125E0: 2C 32 0D 0A 09 63 70 20 31 0D 0A 09 6A 70 20 6E ,2...cp 1...jp n
0125F0: 7A 2C 65 72 72 6F 72 09 09 3B 65 72 72 6F 72 20 z,error..;error
012600: 69 66 20 6E 6F 74 20 6F 6E 65 20 70 61 72 61 6D if not one param
012610: 65 74 65 72 0D 0A 0D 0A 09 6C 64 20 63 2C 31 38 eter.....ld c,18
012620: 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 31 37 29 0D ...ld a,(iy+17).
012630: 0A 09 6F 72 20 61 0D 0A 09 6A 70 20 6E 7A 2C 65 ..or a...jp nz,e
012640: 72 72 6F 72 09 09 3B 65 72 72 6F 72 20 69 66 20 rror..;error if
012650: 72 65 63 6F 72 64 20 63 75 72 72 65 6E 74 6C 79 record currently
012660: 20 6F 70 65 6E 0D 0A 0D 0A 09 6C 64 20 63 2C 28 open.....ld c,(
012670: 69 78 29 3A 20 6C 64 20 62 2C 28 69 78 2B 31 29 ix): ld b,(ix+1)
012680: 09 3B 67 65 74 20 70 61 72 61 6D 65 74 65 72 20 .;get parameter
012690: 69 6E 74 6F 20 42 43 0D 0A 0D 0A 09 6C 64 20 61 into BC.....ld a
0126A0: 2C 62 3A 20 6F 72 20 63 0D 0A 09 6A 72 20 7A 2C ,b: or c...jr z,
0126B0: 6E 6F 74 72 63 64 09 09 3B 65 72 72 6F 72 20 69 notrcd..;error i
0126C0: 66 20 6D 65 73 73 61 67 65 20 30 0D 0A 09 6C 64 f message 0...ld
0126D0: 20 6C 2C 28 69 79 2B 31 38 29 3A 20 6C 64 20 68 l,(iy+18): ld h
0126E0: 2C 28 69 79 2B 31 39 29 0D 0A 09 73 62 63 20 68 ,(iy+19)...sbc h
0126F0: 6C 2C 62 63 3A 20 6A 72 20 6E 63 2C 72 63 64 6F l,bc: jr nc,rcdo
012700: 64 20 6C 2C 28 69 79 2B 32 32 29 3A 20 6C 64 20 d l,(iy+22): ld
012710: 68 2C 28 69 79 2B 32 33 29 0D 0A 09 6C 64 20 61 h,(iy+23)...ld a
012720: 2C 65 3A 20 63 61 6C 6C 20 70 62 62 79 74 65 0D ,e: call pbbyte.
012730: 0A 09 69 6E 63 20 68 6C 0D 0A 09 6C 64 20 61 2C ..inc hl...ld a,
012740: 64 3A 20 63 61 6C 6C 20 70 62 62 79 74 65 0D 0A d: call pbbyte..
012750: 09 63 61 6C 6C 20 72 73 74 62 6E 6B 0D 0A 0D 0A .call rstbnk....
012760: 09 78 6F 72 20 61 3A 20 6C 64 20 28 69 79 2B 31 .xor a: ld (iy+1
012770: 37 29 2C 61 09 3B 52 65 63 6F 72 64 20 63 6C 6F 7),a.;Record clo
012780: 73 65 64 21 0D 0A 09 72 65 74 0D 0A 0D 0A 09 3B sed!...ret.....;
012790: 3E 3E 3E 20 42 47 4F 54 4F 20 63 6F 6D 6D 61 6E >>> BGOTO comman
0127A0: 64 0D 0A 0D 0A 2E 62 67 74 6F 5F 69 09 6C 64 20 d.....bgto_i.ld
0127B0: 63 2C 32 0D 0A 09 63 70 20 31 0D 0A 09 6A 70 20 c,2...cp 1...jp
0127C0: 6E 7A 2C 65 72 72 6F 72 0D 0A 0D 0A 09 6C 64 20 nz,error.....ld
0127D0: 63 2C 28 69 78 29 3A 20 6C 64 20 62 2C 28 69 78 c,(ix): ld b,(ix
0127E0: 2B 31 29 0D 0A 0D 0A 09 6C 64 20 61 2C 62 3A 20 +1).....ld a,b:
0127F0: 6F 72 20 63 3A 20 6A 72 20 7A 2C 6E 6F 74 72 63 or c: jr z,notrc
012800: 0D 0A 09 6C 64 20 6C 2C 28 69 79 2B 31 38 29 3A ...ld l,(iy+18):
012810: 20 6C 64 20 68 2C 28 69 79 2B 31 39 29 3A 20 73 ld h,(iy+19): s
012820: 62 63 20 68 6C 2C 62 63 3A 20 6A 72 20 63 2C 6E bc hl,bc: jr c,n
012830: 6F 74 72 63 0D 0A 09 6A 72 20 72 63 6F 6B 0D 0A otrc...jr rcok..
012840: 2E 6E 6F 74 72 63 09 6C 64 20 63 2C 31 32 3A 20 .notrc.ld c,12:
012850: 6A 70 20 65 72 72 6F 72 0D 0A 0D 0A 2E 72 63 6F jp error.....rco
012860: 6B 09 63 61 6C 6C 20 67 72 65 63 62 63 0D 0A 09 k.call grecbc...
012870: 63 61 6C 6C 20 72 73 74 62 6E 6B 0D 0A 0D 0A 09 call rstbnk.....
012880: 6C 64 20 28 69 79 2B 31 35 29 2C 65 3A 20 6C 64 ld (iy+15),e: ld
012890: 20 28 69 79 2B 31 36 29 2C 64 0D 0A 09 6C 64 20 (iy+16),d...ld
0128A0: 28 69 79 2B 31 33 29 2C 6C 3A 20 6C 64 20 28 69 (iy+13),l: ld (i
0128B0: 79 2B 31 34 29 2C 68 0D 0A 09 72 65 74 0D 0A 0D y+14),h...ret...
0128C0: 0A 09 3B 3E 3E 3E 20 42 43 48 45 43 4B 20 63 6F ..;>>> BCHECK co
0128D0: 6D 6D 61 6E 64 0D 0A 0D 0A 2E 62 63 68 6B 5F 69 mmand.....bchk_i
0128E0: 09 6C 64 20 63 2C 32 0D 0A 09 63 70 20 63 0D 0A .ld c,2...cp c..
0128F0: 09 6A 70 20 6E 7A 2C 65 72 72 6F 72 0D 0A 0D 0A .jp nz,error....
012900: 6B 09 3B 6F 6B 20 69 66 20 3C 3D 20 6C 61 73 74 k.;ok if <= last
012910: 20 6D 65 73 73 61 67 65 0D 0A 2E 6E 6F 74 72 63 message...notrc
012920: 64 09 6C 64 20 63 2C 31 32 3A 20 6A 70 20 65 72 d.ld c,12: jp er
012930: 72 6F 72 09 3B 65 6C 73 65 20 65 72 72 6F 72 0D ror.;else error.
012940: 0A 0D 0A 2E 72 63 64 6F 6B 09 63 61 6C 6C 20 67 ....rcdok.call g
012950: 72 65 63 62 63 09 09 3B 66 69 6E 64 20 61 64 64 recbc..;find add
012960: 72 65 73 73 20 6F 66 20 72 65 63 6F 72 64 0D 0A ress of record..
012970: 0D 0A 09 70 75 73 68 20 68 6C 0D 0A 09 61 64 64 ...push hl...add
012980: 20 68 6C 2C 64 65 0D 0A 09 70 6F 70 20 64 65 0D hl,de...pop de.
012990: 0A 09 64 65 63 20 64 65 3A 20 64 65 63 20 64 65 ..dec de: dec de
0129A0: 09 09 3B 44 45 20 63 6F 6E 74 61 69 6E 73 20 73 ..;DE contains s
0129B0: 74 61 72 74 2C 20 48 4C 20 63 6F 6E 74 61 69 6E tart, HL contain
0129C0: 73 20 73 74 61 72 74 20 6F 66 20 6E 65 78 74 0D s start of next.
0129D0: 0A 0D 0A 09 6C 64 20 61 2C 68 3A 20 63 70 6C 3A ....ld a,h: cpl:
0129E0: 20 6C 64 20 62 2C 61 0D 0A 09 6C 64 20 61 2C 6C ld b,a...ld a,l
0129F0: 3A 20 63 70 6C 3A 20 6C 64 20 63 2C 61 0D 0A 09 : cpl: ld c,a...
012A00: 64 65 63 20 62 09 09 09 3B 42 43 20 63 6F 6E 74 dec b...;BC cont
012A10: 61 69 6E 73 20 6C 65 6E 67 74 68 20 74 6F 20 74 ains length to t
012A20: 72 61 6E 73 66 65 72 0D 0A 0D 0A 09 6C 64 20 61 ransfer.....ld a
012A30: 2C 28 26 46 46 46 46 29 0D 0A 09 6C 64 20 69 78 ,(&FFFF)...ld ix
012A40: 2C 28 26 46 46 46 33 29 09 09 3B 74 68 65 73 65 ,(&FFF3)..;these
012A50: 20 62 69 74 73 20 6F 66 20 74 68 65 20 73 63 72 bits of the scr
012A60: 65 65 6E 20 67 65 74 20 63 6F 72 72 75 70 74 65 een get corrupte
012A70: 64 21 0D 0A 0D 0A 09 70 75 73 68 20 61 66 3A 20 d!.....push af:
012A80: 70 75 73 68 20 69 78 0D 0A 0D 0A 09 70 75 73 68 push ix.....push
012A90: 20 64 65 0D 0A 09 70 75 73 68 20 68 6C 0D 0A 09 de...push hl...
012AA0: 70 75 73 68 20 62 63 09 09 09 3B 73 74 6F 72 65 push bc...;store
012AB0: 20 76 61 72 69 61 62 6C 65 73 20 66 6F 72 20 4C variables for L
012AC0: 44 49 52 0D 0A 0D 0A 09 6C 64 20 62 63 2C 26 37 DIR.....ld bc,&7
012AD0: 46 43 37 0D 0A 09 6F 75 74 20 28 63 29 2C 63 09 FC7...out (c),c.
012AE0: 09 3B 73 77 69 74 63 68 20 74 6F 70 20 31 36 6B .;switch top 16k
012AF0: 20 69 6E 74 6F 20 26 34 30 30 30 0D 0A 0D 0A 09 into &4000.....
012B00: 09 6C 64 20 6C 2C 28 69 78 2B 32 29 3A 20 6C 64 .ld l,(ix+2): ld
012B10: 20 68 2C 28 69 78 2B 33 29 0D 0A 09 6C 64 20 61 h,(ix+3)...ld a
012B20: 2C 28 69 79 2B 32 30 29 3A 20 6C 64 20 28 68 6C ,(iy+20): ld (hl
012B30: 29 2C 61 3A 20 69 6E 63 20 68 6C 0D 0A 09 6C 64 ),a: inc hl...ld
012B40: 20 61 2C 28 69 79 2B 32 31 29 3A 20 6C 64 20 28 a,(iy+21): ld (
012B50: 68 6C 29 2C 61 0D 0A 0D 0A 09 6C 64 20 6C 2C 28 hl),a.....ld l,(
012B60: 69 78 29 3A 20 6C 64 20 68 2C 28 69 78 2B 31 29 ix): ld h,(ix+1)
012B70: 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 31 38 29 3A ...ld a,(iy+18):
012B80: 20 6C 64 20 28 68 6C 29 2C 61 3A 20 69 6E 63 20 ld (hl),a: inc
012B90: 68 6C 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 31 39 hl...ld a,(iy+19
012BA0: 29 3A 20 6C 64 20 28 68 6C 29 2C 61 0D 0A 09 72 ): ld (hl),a...r
012BB0: 65 74 0D 0A 0D 0A 09 3B 3E 3E 3E 20 42 50 55 54 et.....;>>> BPUT
012BC0: 53 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 62 70 S command.....bp
012BD0: 74 73 5F 69 09 6C 64 20 63 2C 32 0D 0A 09 63 70 ts_i.ld c,2...cp
012BE0: 20 31 0D 0A 09 6A 70 20 6E 7A 2C 65 72 72 6F 72 1...jp nz,error
012BF0: 0D 0A 0D 0A 09 6C 64 20 6C 2C 28 69 78 29 3A 20 .....ld l,(ix):
012C00: 6C 64 20 68 2C 28 69 78 2B 31 29 0D 0A 09 6C 64 ld h,(ix+1)...ld
012C10: 20 62 2C 28 68 6C 29 3A 20 69 6E 63 20 68 6C 0D b,(hl): inc hl.
012C20: 0A 09 6C 64 20 65 2C 28 68 6C 29 3A 20 69 6E 63 ..ld e,(hl): inc
012C30: 20 68 6C 0D 0A 09 6C 64 20 64 2C 28 68 6C 29 0D hl...ld d,(hl).
012C40: 0A 0D 0A 09 70 75 73 68 20 62 63 0D 0A 09 6C 64 ....push bc...ld
012C50: 20 61 2C 26 32 34 3A 20 63 61 6C 6C 20 62 6E 6B a,&24: call bnk
012C60: 70 69 6E 09 3B 53 74 72 69 6E 67 20 6D 61 72 6B pin.;String mark
012C70: 65 72 0D 0A 09 70 6F 70 20 62 63 0D 0A 0D 0A 09 er...pop bc.....
012C80: 70 75 73 68 20 62 63 0D 0A 09 6C 64 20 61 2C 62 push bc...ld a,b
012C90: 3A 20 63 61 6C 6C 20 62 6E 6B 70 69 6E 09 3B 4C : call bnkpin.;L
012CA0: 65 6E 67 74 68 20 6F 66 20 73 74 72 69 6E 67 0D ength of string.
012CB0: 0A 09 70 6F 70 20 62 63 0D 0A 0D 0A 09 6C 64 20 ..pop bc.....ld
012CC0: 61 2C 62 3A 20 6F 72 20 61 3A 20 6A 72 20 7A 2C a,b: or a: jr z,
012CD0: 65 78 62 70 74 73 0D 0A 0D 0A 2E 62 70 74 73 6C exbpts.....bptsl
012CE0: 70 09 6C 64 20 61 2C 28 64 65 29 0D 0A 09 70 75 p.ld a,(de)...pu
012CF0: 73 68 20 62 63 3A 20 63 61 6C 6C 20 62 6E 6B 70 sh bc: call bnkp
012D00: 6C 64 20 64 65 2C 26 37 46 46 35 0D 0A 09 6C 64 ld de,&7FF5...ld
012D10: 20 68 6C 2C 6C 64 69 64 74 61 0D 0A 09 6C 64 20 hl,ldidta...ld
012D20: 62 63 2C 31 30 0D 0A 09 6C 64 69 72 09 09 09 3B bc,10...ldir...;
012D30: 63 6F 70 79 20 63 6F 64 65 20 66 6F 72 20 4C 44 copy code for LD
012D40: 49 52 20 69 6E 74 6F 20 74 6F 70 20 6F 66 20 74 IR into top of t
012D50: 6F 70 20 31 36 6B 0D 0A 0D 0A 09 70 6F 70 20 62 op 16k.....pop b
012D60: 63 0D 0A 09 6C 64 20 28 26 37 46 46 36 29 2C 62 c...ld (&7FF6),b
012D70: 63 09 09 3B 6C 6F 61 64 20 74 68 65 20 6C 65 6E c..;load the len
012D80: 67 74 68 20 69 6E 74 6F 20 72 69 67 68 74 20 70 gth into right p
012D90: 6C 61 63 65 20 69 6E 20 4C 44 49 52 20 63 6F 64 lace in LDIR cod
012DA0: 65 0D 0A 0D 0A 09 6C 64 20 61 2C 26 43 39 3A 20 e.....ld a,&C9:
012DB0: 6C 64 20 28 26 46 46 46 46 29 2C 61 09 3B 52 45 ld (&FFFF),a.;RE
012DC0: 54 20 69 6E 74 6F 20 6C 61 73 74 20 6C 6F 63 61 T into last loca
012DD0: 74 69 6F 6E 20 28 62 61 63 6B 20 69 6E 20 66 69 tion (back in fi
012DE0: 72 73 74 20 36 34 6B 29 0D 0A 09 6C 64 20 68 6C rst 64k)...ld hl
012DF0: 2C 26 34 39 45 44 0D 0A 09 6C 64 20 28 26 46 46 ,&49ED...ld (&FF
012E00: 46 33 29 2C 68 6C 09 09 3B 61 6E 64 20 28 61 67 F3),hl..;and (ag
012E10: 61 69 6E 20 69 6E 20 66 69 72 73 74 20 36 34 6B ain in first 64k
012E20: 29 20 73 65 74 20 75 70 20 74 68 65 20 62 61 6E ) set up the ban
012E30: 6B 73 0D 0A 0D 0A 09 70 6F 70 20 68 6C 3A 20 70 ks.....pop hl: p
012E40: 6F 70 20 64 65 09 09 3B 67 65 74 20 76 61 72 69 op de..;get vari
012E50: 61 62 6C 65 73 20 66 6F 72 20 4C 44 49 52 20 62 ables for LDIR b
012E60: 61 63 6B 20 61 67 61 69 6E 0D 0A 0D 0A 09 64 69 ack again.....di
012E70: 09 09 09 3B 69 6E 74 65 72 72 75 70 74 73 20 6D ...;interrupts m
012E80: 75 73 74 20 62 65 20 64 69 73 61 62 6C 65 64 20 ust be disabled
012E90: 28 6E 6F 20 73 74 61 63 6B 20 65 74 63 2E 21 29 (no stack etc.!)
012EA0: 0D 0A 09 6C 64 20 62 63 2C 26 37 46 43 32 0D 0A ...ld bc,&7FC2..
012EB0: 09 63 61 6C 6C 20 26 46 46 46 33 09 09 3B 64 6F .call &FFF3..;do
012EC0: 20 74 68 65 20 42 61 72 74 6D 61 6E 2C 20 77 68 the Bartman, wh
012ED0: 6F 6F 70 73 2C 20 4C 44 49 52 0D 0A 09 65 69 0D oops, LDIR...ei.
012EE0: 0A 0D 0A 09 70 6F 70 20 69 78 3A 20 70 6F 70 20 ....pop ix: pop
012EF0: 61 66 0D 0A 09 6C 64 20 28 26 46 46 46 33 29 2C af...ld (&FFF3),
012F00: 69 6E 3A 20 70 6F 70 20 62 63 0D 0A 09 69 6E 63 in: pop bc...inc
012F10: 20 64 65 3A 20 64 6A 6E 7A 20 62 70 74 73 6C 70 de: djnz bptslp
012F20: 0D 0A 0D 0A 2E 65 78 62 70 74 73 09 72 65 74 0D .....exbpts.ret.
012F30: 0A 0D 0A 09 3B 3E 3E 3E 20 42 50 55 54 49 20 63 ....;>>> BPUTI c
012F40: 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 62 70 74 69 5F ommand.....bpti_
012F50: 69 09 6C 64 20 63 2C 32 0D 0A 09 63 70 20 31 0D i.ld c,2...cp 1.
012F60: 0A 09 6A 70 20 6E 7A 2C 65 72 72 6F 72 0D 0A 0D ..jp nz,error...
012F70: 0A 09 6C 64 20 6C 2C 28 69 78 29 3A 20 6C 64 20 ..ld l,(ix): ld
012F80: 68 2C 28 69 78 2B 31 29 0D 0A 09 65 78 20 64 65 h,(ix+1)...ex de
012F90: 2C 68 6C 0D 0A 0D 0A 09 6C 64 20 61 2C 26 32 35 ,hl.....ld a,&25
012FA0: 3A 20 63 61 6C 6C 20 62 6E 6B 70 69 6E 09 3B 49 : call bnkpin.;I
012FB0: 6E 74 65 67 65 72 20 6D 61 72 6B 65 72 0D 0A 09 nteger marker...
012FC0: 6C 64 20 61 2C 65 3A 20 63 61 6C 6C 20 62 6E 6B ld a,e: call bnk
012FD0: 70 69 6E 09 3B 4C 6F 77 20 62 79 74 65 0D 0A 09 pin.;Low byte...
012FE0: 6C 64 20 61 2C 64 3A 20 63 61 6C 6C 20 62 6E 6B ld a,d: call bnk
012FF0: 70 69 6E 09 3B 48 69 67 68 20 62 79 74 65 0D 0A pin.;High byte..
013000: 09 72 65 74 0D 0A 0D 0A 09 3B 3E 3E 3E 20 42 47 .ret.....;>>> BG
013010: 45 54 53 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E ETS command.....
013020: 62 67 74 73 5F 69 09 6C 64 20 63 2C 32 0D 0A 09 bgts_i.ld c,2...
013030: 63 70 20 31 0D 0A 09 6A 70 20 6E 7A 2C 65 72 72 cp 1...jp nz,err
013040: 6F 72 0D 0A 0D 0A 09 6C 64 20 65 2C 28 69 78 29 or.....ld e,(ix)
013050: 3A 20 6C 64 20 64 2C 28 69 78 2B 31 29 0D 0A 09 : ld d,(ix+1)...
013060: 63 61 6C 6C 20 62 6E 6B 67 69 6E 09 09 3B 47 65 call bnkgin..;Ge
013070: 74 20 74 79 70 65 0D 0A 0D 0A 09 6C 64 20 63 2C t type.....ld c,
013080: 31 35 0D 0A 09 63 70 20 26 31 41 3A 20 6A 70 20 15...cp &1A: jp
013090: 7A 2C 62 6E 6B 61 62 6F 09 3B 45 6E 64 20 6F 66 z,bnkabo.;End of
0130A0: 20 44 61 74 61 3F 0D 0A 09 6C 64 20 63 2C 31 34 Data?...ld c,14
0130B0: 0D 0A 09 63 70 20 26 32 34 3A 20 6A 70 20 6E 7A ...cp &24: jp nz
0130C0: 2C 62 6E 6B 61 62 6F 09 3B 53 74 72 69 6E 67 20 ,bnkabo.;String
0130D0: 76 61 72 69 61 62 6C 65 20 74 79 70 65 3F 0D 0A variable type?..
0130E0: 0D 0A 09 63 61 6C 6C 20 62 6E 6B 67 69 6E 09 09 ...call bnkgin..
0130F0: 3B 47 65 74 20 6C 65 6E 67 74 68 0D 0A 09 6C 64 ;Get length...ld
013100: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
013110: 10 00 01 00 02 09 4E E5 10 00 C4 02 00 00 00 02 ......N.........
013120: 10 00 C9 02 00 00 00 02 10 00 C5 02 00 00 00 02 ................
013130: 10 00 C1 02 00 00 00 02 10 00 C6 02 00 00 00 02 ................
013140: 10 00 C2 02 00 00 00 02 10 00 C7 02 00 00 00 02 ................
013150: 10 00 C3 02 00 00 00 02 10 00 C8 02 00 00 00 02 ................
013160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
013170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
013180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
013190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0131A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0131B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0131C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0131D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0131E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0131F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
013200: 0D 0A 09 72 65 74 0D 0A 0D 0A 0D 0A 09 3B 2A 2A ...ret.......;**
013210: 2A 20 42 42 53 20 53 55 42 52 4F 55 54 49 4E 45 * BBS SUBROUTINE
013220: 53 20 2A 2A 2A 0D 0A 0D 0A 09 3B 47 65 74 20 62 S ***.....;Get b
013230: 79 74 65 20 66 72 6F 6D 20 48 4C 20 69 6E 20 73 yte from HL in s
013240: 65 63 6F 6E 64 20 36 34 6B 20 28 63 6F 72 72 75 econd 64k (corru
013250: 70 74 73 20 42 43 2C 20 64 6F 65 73 20 6E 6F 74 pts BC, does not
013260: 20 72 65 73 74 6F 72 65 20 62 61 6E 6B 73 29 0D restore banks).
013270: 0A 0D 0A 2E 67 62 62 79 74 65 09 70 75 73 68 20 ....gbbyte.push
013280: 68 6C 0D 0A 0D 0A 09 6C 64 20 61 2C 68 0D 0A 09 hl.....ld a,h...
013290: 72 6C 63 61 3A 20 72 6C 63 61 0D 0A 09 61 6E 64 rlca: rlca...and
0132A0: 20 33 3A 20 61 64 64 20 26 43 34 0D 0A 0D 0A 09 3: add &C4.....
0132B0: 6C 64 20 62 2C 26 37 46 0D 0A 09 6F 75 74 20 28 ld b,&7F...out (
0132C0: 63 29 2C 61 0D 0A 0D 0A 09 72 65 73 20 37 2C 68 c),a.....res 7,h
0132D0: 3A 20 73 65 74 20 36 2C 68 0D 0A 09 6C 64 20 61 : set 6,h...ld a
0132E0: 2C 28 68 6C 29 0D 0A 0D 0A 09 70 6F 70 20 68 6C ,(hl).....pop hl
0132F0: 0D 0A 09 72 65 74 0D 0A 0D 0A 09 3B 50 75 74 20 ...ret.....;Put
013300: 62 79 74 65 20 74 6F 20 48 4C 20 69 6E 20 73 65 byte to HL in se
013310: 63 6F 6E 64 20 36 34 6B 20 28 63 6F 72 72 75 70 cond 64k (corrup
013320: 74 73 20 42 43 2C 20 64 6F 65 73 20 6E 6F 74 20 ts BC, does not
013330: 72 65 73 74 6F 72 65 20 62 61 6E 6B 73 29 0D 0A restore banks)..
013340: 0D 0A 2E 70 62 62 79 74 65 09 70 75 73 68 20 68 ...pbbyte.push h
013350: 6C 0D 0A 09 70 75 73 68 20 61 66 0D 0A 0D 0A 09 l...push af.....
013360: 6C 64 20 61 2C 68 0D 0A 09 72 6C 63 61 3A 20 72 ld a,h...rlca: r
013370: 6C 63 61 0D 0A 09 61 6E 64 20 33 3A 20 61 64 64 lca...and 3: add
013380: 20 26 43 34 0D 0A 0D 0A 09 6C 64 20 62 2C 26 37 &C4.....ld b,&7
013390: 46 0D 0A 09 6F 75 74 20 28 63 29 2C 61 0D 0A 0D F...out (c),a...
0133A0: 0A 09 72 65 73 20 37 2C 68 3A 20 73 65 74 20 36 ..res 7,h: set 6
0133B0: 2C 68 0D 0A 09 70 6F 70 20 61 66 0D 0A 09 6C 64 ,h...pop af...ld
0133C0: 20 28 68 6C 29 2C 61 0D 0A 0D 0A 09 70 6F 70 20 (hl),a.....pop
0133D0: 68 6C 0D 0A 09 72 65 74 0D 0A 0D 0A 09 3B 52 65 hl...ret.....;Re
0133E0: 73 74 6F 72 65 20 62 61 6E 6B 73 20 28 63 6F 72 store banks (cor
0133F0: 72 75 70 74 73 20 42 43 29 0D 0A 0D 0A 2E 72 73 rupts BC).....rs
013400: 09 6E 6F 6C 69 73 74 0D 0A 09 70 72 69 6E 74 3A .nolist...print:
013410: 20 69 66 31 3A 20 70 72 69 6E 74 20 22 50 61 73 if1: print "Pas
013420: 73 20 31 22 3A 20 65 6C 73 65 3A 20 70 72 69 6E s 1": else: prin
013430: 74 20 22 50 61 73 73 20 32 22 3A 20 65 6E 64 69 t "Pass 2": endi
013440: 66 3A 20 70 72 69 6E 74 0D 0A 0D 0A 09 3B 43 68 f: print.....;Ch
013450: 61 72 6C 65 79 27 73 20 43 6F 6D 6D 73 20 52 4F arley's Comms RO
013460: 4D 0D 0A 09 3B 64 65 76 65 6C 6F 70 6D 65 6E 74 M...;development
013470: 20 76 65 72 73 69 6F 6E 0D 0A 0D 0A 09 6F 72 67 version.....org
013480: 20 26 43 30 30 30 0D 0A 09 77 72 69 74 65 20 22 &C000...write "
013490: 63 6F 6D 6D 73 2E 62 69 6E 22 0D 0A 0D 0A 6B 64 comms.bin"....kd
0134A0: 73 09 65 71 75 20 31 0D 0A 0D 0A 69 66 20 6B 64 s.equ 1....if kd
0134B0: 73 0D 0A 20 64 61 74 6F 75 74 09 65 71 75 20 26 s.. datout.equ &
0134C0: 46 42 45 44 0D 0A 20 64 61 74 69 6E 09 65 71 75 FBED.. datin.equ
0134D0: 20 26 46 42 45 46 0D 0A 20 63 6F 6E 6F 75 74 09 &FBEF.. conout.
0134E0: 65 71 75 20 26 46 42 45 43 0D 0A 20 63 6F 6E 69 equ &FBEC.. coni
0134F0: 6E 09 65 71 75 20 26 46 42 45 45 0D 0A 20 73 70 n.equ &FBEE.. sp
013500: 65 64 30 09 65 71 75 20 26 46 42 45 38 0D 0A 20 ed0.equ &FBE8..
013510: 73 70 65 64 31 09 65 71 75 20 26 46 42 45 39 0D sped1.equ &FBE9.
013520: 0A 20 77 6D 6F 64 09 65 71 75 20 26 46 42 45 42 . wmod.equ &FBEB
013530: 0D 0A 65 6C 73 65 0D 0A 20 64 61 74 70 6F 72 74 ..else.. datport
013540: 20 65 71 75 20 26 46 41 44 43 0D 0A 20 63 6F 6E equ &FADC.. con
013550: 70 6F 72 74 20 65 71 75 20 26 46 41 44 44 0D 0A port equ &FADD..
013560: 20 73 70 65 64 30 09 65 71 75 20 26 46 42 44 43 sped0.equ &FBDC
013570: 0D 0A 20 73 70 65 64 31 09 65 71 75 20 26 46 42 .. sped1.equ &FB
013580: 44 44 0D 0A 20 77 6D 6F 64 09 65 71 75 20 26 46 DD.. wmod.equ &F
013590: 42 44 46 0D 0A 65 6E 64 69 66 0D 0A 0D 0A 09 64 BDF..endif.....d
0135A0: 62 20 31 09 09 09 09 3B 42 61 63 6B 67 72 6F 75 b 1....;Backgrou
0135B0: 6E 64 20 52 4F 4D 0D 0A 09 64 62 20 31 2C 30 2C nd ROM...db 1,0,
0135C0: 30 09 09 09 3B 76 31 2E 30 30 0D 0A 0D 0A 2E 63 0...;v1.00.....c
0135D0: 6F 6D 5F 74 09 64 77 20 6E 61 6D 65 5F 74 0D 0A om_t.dw name_t..
0135E0: 0D 0A 09 6A 70 20 69 6E 69 74 5F 69 0D 0A 09 6A ...jp init_i...j
0135F0: 70 20 62 61 75 64 5F 69 3A 20 6A 70 20 77 6F 72 p baud_i: jp wor
013600: 74 62 6E 6B 09 6C 64 20 62 63 2C 26 37 46 43 30 tbnk.ld bc,&7FC0
013610: 0D 0A 09 6F 75 74 20 28 63 29 2C 63 3A 20 72 65 ...out (c),c: re
013620: 74 0D 0A 0D 0A 09 3B 50 75 74 20 62 79 74 65 20 t.....;Put byte
013630: 41 20 69 6E 74 6F 20 65 78 74 72 61 20 36 34 6B A into extra 64k
013640: 20 28 63 6F 72 72 75 70 74 73 20 48 4C 2C 20 42 (corrupts HL, B
013650: 43 29 0D 0A 0D 0A 2E 62 6E 6B 70 69 6E 09 6C 64 C).....bnkpin.ld
013660: 20 6C 2C 28 69 79 2B 32 30 29 3A 20 6C 64 20 68 l,(iy+20): ld h
013670: 2C 28 69 79 2B 32 31 29 0D 0A 09 63 61 6C 6C 20 ,(iy+21)...call
013680: 70 62 62 79 74 65 0D 0A 09 69 6E 63 20 68 6C 3A pbbyte...inc hl:
013690: 20 6C 64 20 28 69 79 2B 32 30 29 2C 6C 3A 20 6C ld (iy+20),l: l
0136A0: 64 20 28 69 79 2B 32 31 29 2C 68 0D 0A 09 6A 70 d (iy+21),h...jp
0136B0: 20 72 73 74 62 6E 6B 0D 0A 0D 0A 09 3B 47 65 74 rstbnk.....;Get
0136C0: 20 62 79 74 65 20 41 20 66 72 6F 6D 20 65 78 74 byte A from ext
0136D0: 72 61 20 36 34 6B 20 28 63 6F 72 72 75 70 74 73 ra 64k (corrupts
0136E0: 20 48 4C 2C 42 43 29 0D 0A 0D 0A 2E 62 6E 6B 67 HL,BC).....bnkg
0136F0: 69 6E 09 6C 64 20 6C 2C 28 69 79 2B 31 33 29 3A in.ld l,(iy+13):
013700: 20 6C 64 20 68 2C 28 69 79 2B 31 34 29 0D 0A 09 ld h,(iy+14)...
013710: 63 61 6C 6C 20 67 62 62 79 74 65 0D 0A 09 69 6E call gbbyte...in
013720: 63 20 68 6C 3A 20 6C 64 20 28 69 79 2B 31 33 29 c hl: ld (iy+13)
013730: 2C 6C 3A 20 6C 64 20 28 69 79 2B 31 34 29 2C 68 ,l: ld (iy+14),h
013740: 0D 0A 09 6A 70 20 72 73 74 62 6E 6B 0D 0A 0D 0A ...jp rstbnk....
013750: 09 3B 52 65 74 75 72 6E 20 74 77 6F 20 62 79 74 .;Return two byt
013760: 65 73 20 61 6E 64 20 6A 75 6D 70 20 74 6F 20 65 es and jump to e
013770: 72 72 6F 72 0D 0A 0D 0A 2E 62 6E 6B 61 62 32 09 rror.....bnkab2.
013780: 6C 64 20 6C 2C 28 69 79 2B 31 33 29 3A 20 6C 64 ld l,(iy+13): ld
013790: 20 68 2C 28 69 79 2B 31 34 29 0D 0A 09 64 65 63 h,(iy+14)...dec
0137A0: 20 68 6C 3A 20 6C 64 20 28 69 79 2B 31 33 29 2C hl: ld (iy+13),
0137B0: 6C 3A 20 6C 64 20 28 69 79 2B 31 34 29 2C 6C 0D l: ld (iy+14),l.
0137C0: 0A 0D 0A 09 3B 52 65 74 75 72 6E 20 6F 6E 65 20 ....;Return one
0137D0: 62 79 74 65 20 61 6E 64 20 6A 75 6D 70 20 74 6F byte and jump to
0137E0: 20 65 72 72 6F 72 0D 0A 0D 0A 2E 62 6E 6B 61 62 error.....bnkab
0137F0: 6F 09 6C 64 20 6C 2C 28 69 79 2B 31 33 29 3A 20 o.ld l,(iy+13):
013800: 69 78 0D 0A 09 6C 64 20 28 26 46 46 46 46 29 2C ix...ld (&FFFF),
013810: 61 09 09 09 3B 72 65 73 74 6F 72 65 20 63 6F 72 a...;restore cor
013820: 72 75 70 74 65 64 20 62 79 74 65 73 20 6F 6E 20 rupted bytes on
013830: 73 63 72 65 65 6E 0D 0A 0D 0A 09 6C 64 20 6C 2C screen.....ld l,
013840: 28 69 79 2B 31 38 29 3A 20 6C 64 20 68 2C 28 69 (iy+18): ld h,(i
013850: 79 2B 31 39 29 0D 0A 09 64 65 63 20 68 6C 0D 0A y+19)...dec hl..
013860: 09 6C 64 20 28 69 79 2B 31 38 29 2C 6C 3A 20 6C .ld (iy+18),l: l
013870: 64 20 28 69 79 2B 31 39 29 2C 68 09 3B 64 65 63 d (iy+19),h.;dec
013880: 72 65 61 73 65 20 22 6C 61 73 74 20 72 65 63 6F rease "last reco
013890: 72 64 22 20 63 6F 75 6E 74 65 72 0D 0A 0D 0A 09 rd" counter.....
0138A0: 6C 64 20 68 6C 2C 30 0D 0A 09 6C 64 20 28 69 79 ld hl,0...ld (iy
0138B0: 2B 31 33 29 2C 6C 3A 20 6C 64 20 28 69 79 2B 31 +13),l: ld (iy+1
0138C0: 34 29 2C 68 0D 0A 09 6C 64 20 28 69 79 2B 31 35 4),h...ld (iy+15
0138D0: 29 2C 6C 3A 20 6C 64 20 28 69 79 2B 31 36 29 2C ),l: ld (iy+16),
0138E0: 68 09 3B 70 72 65 76 65 6E 74 20 72 65 61 64 69 h.;prevent readi
0138F0: 6E 67 20 75 6E 74 69 6C 20 6E 65 77 20 7C 42 47 ng until new |BG
013900: 4F 54 4F 0D 0A 0D 0A 09 72 65 74 0D 0A 0D 0A 2E OTO.....ret.....
013910: 6C 64 69 64 74 61 09 6C 64 20 62 63 2C 26 30 30 ldidta.ld bc,&00
013920: 30 30 09 09 3B 74 68 69 73 20 63 6F 64 65 20 67 00..;this code g
013930: 6F 65 73 20 69 6E 20 74 6F 70 20 31 36 6B 20 6F oes in top 16k o
013940: 66 20 65 78 74 72 61 20 62 61 6E 6B 73 0D 0A 09 f extra banks...
013950: 6C 64 69 72 0D 0A 09 6C 64 20 62 63 2C 26 37 46 ldir...ld bc,&7F
013960: 43 30 0D 0A 09 6F 75 74 20 28 63 29 2C 63 0D 0A C0...out (c),c..
013970: 0D 0A 09 3B 3E 3E 3E 20 42 53 41 56 45 20 63 6F ...;>>> BSAVE co
013980: 6D 6D 61 6E 64 0D 0A 0D 0A 2E 62 73 76 65 5F 69 mmand.....bsve_i
013990: 09 6C 64 20 63 2C 32 0D 0A 09 63 70 20 31 0D 0A .ld c,2...cp 1..
0139A0: 09 6A 70 20 6E 7A 2C 65 72 72 6F 72 0D 0A 0D 0A .jp nz,error....
0139B0: 09 63 61 6C 6C 20 62 75 66 66 5F 63 0D 0A 0D 0A .call buff_c....
0139C0: 09 6C 64 20 6C 2C 28 69 78 29 3A 20 6C 64 20 68 .ld l,(ix): ld h
0139D0: 2C 28 69 78 2B 31 29 0D 0A 09 6C 64 20 62 2C 28 ,(ix+1)...ld b,(
0139E0: 68 6C 29 3A 20 69 6E 63 20 68 6C 0D 0A 09 6C 64 hl): inc hl...ld
0139F0: 20 65 2C 28 68 6C 29 3A 20 69 6E 63 20 68 6C 0D e,(hl): inc hl.
013A00: 6C 64 20 68 2C 28 69 79 2B 31 34 29 0D 0A 09 64 ld h,(iy+14)...d
013A10: 65 63 20 68 6C 3A 20 6C 64 20 28 69 79 2B 31 33 ec hl: ld (iy+13
013A20: 29 2C 6C 3A 20 6C 64 20 28 69 79 2B 31 34 29 2C ),l: ld (iy+14),
013A30: 6C 0D 0A 09 6A 70 20 65 72 72 6F 72 0D 0A 0D 0A l...jp error....
013A40: 09 3B 47 6F 20 74 6F 20 72 65 63 6F 72 64 20 68 .;Go to record h
013A50: 65 6C 64 20 69 6E 20 42 43 20 28 6F 6E 20 65 78 eld in BC (on ex
013A60: 69 74 2C 20 48 4C 3D 61 64 64 72 65 73 73 20 6F it, HL=address o
013A70: 66 20 72 65 63 6F 72 64 20 44 41 54 41 2C 20 44 f record DATA, D
013A80: 45 3D 73 69 7A 65 29 0D 0A 09 3B 44 6F 65 73 20 E=size)...;Does
013A90: 6E 6F 74 20 72 65 73 65 74 20 62 61 6E 6B 73 21 not reset banks!
013AA0: 0D 0A 0D 0A 2E 67 72 65 63 62 63 09 6C 64 20 68 .....grecbc.ld h
013AB0: 6C 2C 30 3A 20 6C 64 20 64 65 2C 30 0D 0A 0D 0A l,0: ld de,0....
013AC0: 2E 67 62 63 6C 6F 70 09 61 64 64 20 68 6C 2C 64 .gbclop.add hl,d
013AD0: 65 0D 0A 09 70 75 73 68 20 62 63 0D 0A 09 63 61 e...push bc...ca
013AE0: 6C 6C 20 67 62 62 79 74 65 3A 20 6C 64 20 65 2C ll gbbyte: ld e,
013AF0: 61 3A 20 69 6E 63 20 68 6C 0D 0A 09 63 61 6C 6C a: inc hl...call
013B00: 20 67 62 62 79 74 65 3A 20 6C 64 20 64 2C 61 3A gbbyte: ld d,a:
013B10: 20 69 6E 63 20 68 6C 0D 0A 09 70 6F 70 20 62 63 inc hl...pop bc
013B20: 0D 0A 0D 0A 09 64 65 63 20 62 63 0D 0A 09 6C 64 .....dec bc...ld
013B30: 20 61 2C 62 3A 20 6F 72 20 63 3A 20 6A 72 20 6E a,b: or c: jr n
013B40: 7A 2C 67 62 63 6C 6F 70 0D 0A 09 72 65 74 0D 0A z,gbclop...ret..
013B50: 0D 0A 09 3B 46 69 6E 64 20 6C 61 73 74 20 72 65 ...;Find last re
013B60: 63 6F 72 64 0D 0A 0D 0A 2E 66 6C 61 73 74 72 09 cord.....flastr.
013B70: 6C 64 20 68 6C 2C 30 09 09 09 3B 43 75 72 72 65 ld hl,0...;Curre
013B80: 6E 74 20 6D 65 6D 6F 72 79 20 6C 6F 63 61 74 69 nt memory locati
013B90: 6F 6E 20 69 6E 20 65 78 74 72 61 20 36 34 6B 0D on in extra 64k.
013BA0: 0A 0D 0A 2E 67 74 62 6C 65 6E 09 63 61 6C 6C 20 ....gtblen.call
013BB0: 67 62 62 79 74 65 3A 20 6C 64 20 65 2C 61 3A 20 gbbyte: ld e,a:
013BC0: 69 6E 63 20 68 6C 0D 0A 09 63 61 6C 6C 20 67 62 inc hl...call gb
013BD0: 62 79 74 65 3A 20 6C 64 20 64 2C 61 3A 20 69 6E byte: ld d,a: in
013BE0: 63 20 68 6C 0D 0A 0D 0A 09 6C 64 20 61 2C 64 3A c hl.....ld a,d:
013BF0: 20 6F 72 20 65 0D 0A 09 6A 72 20 7A 2C 66 73 70 or e...jr z,fsp
013C00: 0A 09 6C 64 20 64 2C 28 68 6C 29 3A 20 65 78 20 ..ld d,(hl): ex
013C10: 64 65 2C 68 6C 0D 0A 0D 0A 09 6C 64 20 65 2C 28 de,hl.....ld e,(
013C20: 69 79 2B 37 29 3A 20 6C 64 20 64 2C 28 69 79 2B iy+7): ld d,(iy+
013C30: 38 29 0D 0A 09 69 6E 63 20 64 3A 20 69 6E 63 20 8)...inc d: inc
013C40: 64 3A 20 69 6E 63 20 64 3A 20 69 6E 63 20 64 0D d: inc d: inc d.
013C50: 0A 0D 0A 09 63 61 6C 6C 20 26 42 43 38 43 0D 0A ....call &BC8C..
013C60: 09 6C 64 20 63 2C 39 3A 20 6A 70 20 6E 63 2C 65 .ld c,9: jp nc,e
013C70: 72 72 6F 72 0D 0A 0D 0A 09 6C 64 20 6C 2C 28 69 rror.....ld l,(i
013C80: 79 2B 31 38 29 3A 20 6C 64 20 68 2C 28 69 79 2B y+18): ld h,(iy+
013C90: 31 39 29 0D 0A 09 6C 64 20 61 2C 6C 3A 20 63 61 19)...ld a,l: ca
013CA0: 6C 6C 20 26 42 43 39 35 0D 0A 09 6C 64 20 61 2C ll &BC95...ld a,
013CB0: 68 3A 20 63 61 6C 6C 20 26 42 43 39 35 09 3B 57 h: call &BC95.;W
013CC0: 72 69 74 65 20 6C 61 73 74 20 72 65 63 6F 72 64 rite last record
013CD0: 20 6E 75 6D 62 65 72 0D 0A 09 63 61 6C 6C 20 66 number...call f
013CE0: 6C 61 73 74 72 0D 0A 09 6C 64 20 61 2C 6C 3A 20 lastr...ld a,l:
013CF0: 63 61 6C 6C 20 26 42 43 39 35 0D 0A 09 6C 64 20 call &BC95...ld
013D00: 61 2C 68 3A 20 63 61 6C 6C 20 26 42 43 39 35 09 a,h: call &BC95.
013D10: 3B 57 72 69 74 65 20 6C 65 6E 67 74 68 20 6F 66 ;Write length of
013D20: 20 72 65 63 6F 72 64 73 0D 0A 0D 0A 2E 62 73 76 records.....bsv
013D30: 65 6C 70 09 64 65 63 20 68 6C 0D 0A 0D 0A 09 63 elp.dec hl.....c
013D40: 61 6C 6C 20 67 62 62 79 74 65 09 09 3B 47 65 74 all gbbyte..;Get
013D50: 20 63 68 61 72 61 63 74 65 72 2E 2E 2E 0D 0A 09 character......
013D60: 63 61 6C 6C 20 72 73 74 62 6E 6B 0D 0A 09 63 61 call rstbnk...ca
013D70: 6C 6C 20 26 42 43 39 35 09 09 3B 61 6E 64 20 77 ll &BC95..;and w
013D80: 72 69 74 65 20 74 6F 20 64 69 73 63 0D 0A 0D 0A rite to disc....
013D90: 09 6C 64 20 61 2C 68 3A 20 6F 72 20 6C 0D 0A 09 .ld a,h: or l...
013DA0: 6A 72 20 6E 7A 2C 62 73 76 65 6C 70 0D 0A 09 63 jr nz,bsvelp...c
013DB0: 61 6C 6C 20 26 42 43 38 46 09 09 3B 43 6C 6F 73 all &BC8F..;Clos
013DC0: 65 20 66 69 6C 65 0D 0A 09 72 65 74 0D 0A 0D 0A e file...ret....
013DD0: 09 3B 3E 3E 3E 20 42 4C 4F 41 44 20 63 6F 6D 6D .;>>> BLOAD comm
013DE0: 61 6E 64 0D 0A 0D 0A 2E 62 6C 6F 64 5F 69 09 6C and.....blod_i.l
013DF0: 64 20 63 2C 32 0D 0A 09 63 70 20 31 0D 0A 09 6A d c,2...cp 1...j
013E00: 61 63 65 09 09 3B 49 66 20 72 65 61 63 68 65 64 ace..;If reached
013E10: 20 74 68 65 20 65 6E 64 2C 20 71 75 69 74 0D 0A the end, quit..
013E20: 09 61 64 64 20 68 6C 2C 64 65 3A 20 6A 72 20 67 .add hl,de: jr g
013E30: 74 62 6C 65 6E 09 3B 47 6F 20 74 6F 20 6E 65 78 tblen.;Go to nex
013E40: 74 20 61 64 64 72 65 73 73 0D 0A 0D 0A 2E 66 73 t address.....fs
013E50: 70 61 63 65 09 63 61 6C 6C 20 72 73 74 62 6E 6B pace.call rstbnk
013E60: 09 09 3B 42 61 63 6B 20 74 6F 20 6E 6F 72 6D 61 ..;Back to norma
013E70: 6C 20 6D 65 6D 6F 72 79 0D 0A 09 72 65 74 0D 0A l memory...ret..
013E80: 45 3D 73 69 7A 65 29 0D 0A 09 3B 44 6F 65 73 20 E=size)...;Does
013E90: 6E 6F 74 20 72 65 73 65 74 20 62 61 6E 6B 73 21 not reset banks!
013EA0: 0D 0A 0D 0A 2E 67 72 65 63 62 63 09 6C 64 20 68 .....grecbc.ld h
013EB0: 6C 2C 30 3A 20 6C 64 20 64 65 2C 30 0D 0A 0D 0A l,0: ld de,0....
013EC0: 2E 67 62 63 6C 6F 70 09 61 64 64 20 68 6C 2C 64 .gbclop.add hl,d
013ED0: 65 0D 0A 09 70 75 73 68 20 62 63 0D 0A 09 63 61 e...push bc...ca
013EE0: 6C 6C 20 67 62 62 79 74 65 3A 20 6C 64 20 65 2C ll gbbyte: ld e,
013EF0: 61 3A 20 69 6E 63 20 68 6C 0D 0A 09 63 61 6C 6C a: inc hl...call
013F00: 20 67 62 62 79 74 65 3A 20 6C 64 20 64 2C 61 3A gbbyte: ld d,a:
013F10: 20 69 6E 63 20 68 6C 0D 0A 09 70 6F 70 20 62 63 inc hl...pop bc
013F20: 0D 0A 0D 0A 09 64 65 63 20 62 63 0D 0A 09 6C 64 .....dec bc...ld
013F30: 20 61 2C 62 3A 20 6F 72 20 63 3A 20 6A 72 20 6E a,b: or c: jr n
013F40: 7A 2C 67 62 63 6C 6F 70 0D 0A 09 72 65 74 0D 0A z,gbclop...ret..
013F50: 0D 0A 09 3B 46 69 6E 64 20 6C 61 73 74 20 72 65 ...;Find last re
013F60: 63 6F 72 64 0D 0A 0D 0A 2E 66 6C 61 73 74 72 09 cord.....flastr.
013F70: 6C 64 20 68 6C 2C 30 09 09 09 3B 43 75 72 72 65 ld hl,0...;Curre
013F80: 6E 74 20 6D 65 6D 6F 72 79 20 6C 6F 63 61 74 69 nt memory locati
013F90: 6F 6E 20 69 6E 20 65 78 74 72 61 20 36 34 6B 0D on in extra 64k.
013FA0: 0A 0D 0A 2E 67 74 62 6C 65 6E 09 63 61 6C 6C 20 ....gtblen.call
013FB0: 67 62 62 79 74 65 3A 20 6C 64 20 65 2C 61 3A 20 gbbyte: ld e,a:
013FC0: 69 6E 63 20 68 6C 0D 0A 09 63 61 6C 6C 20 67 62 inc hl...call gb
013FD0: 62 79 74 65 3A 20 6C 64 20 64 2C 61 3A 20 69 6E byte: ld d,a: in
013FE0: 63 20 68 6C 0D 0A 0D 0A 09 6C 64 20 61 2C 64 3A c hl.....ld a,d:
013FF0: 20 6F 72 20 65 0D 0A 09 6A 72 20 7A 2C 66 73 70 or e...jr z,fsp
014000: 70 20 6E 7A 2C 65 72 72 6F 72 0D 0A 0D 0A 09 63 p nz,error.....c
014010: 61 6C 6C 20 62 75 66 66 5F 63 0D 0A 0D 0A 09 6C all buff_c.....l
014020: 64 20 6C 2C 28 69 78 29 3A 20 6C 64 20 68 2C 28 d l,(ix): ld h,(
014030: 69 78 2B 31 29 0D 0A 09 6C 64 20 62 2C 28 68 6C ix+1)...ld b,(hl
014040: 29 3A 20 69 6E 63 20 68 6C 0D 0A 09 6C 64 20 65 ): inc hl...ld e
014050: 2C 28 68 6C 29 3A 20 69 6E 63 20 68 6C 0D 0A 09 ,(hl): inc hl...
014060: 6C 64 20 64 2C 28 68 6C 29 3A 20 65 78 20 64 65 ld d,(hl): ex de
014070: 2C 68 6C 0D 0A 0D 0A 09 6C 64 20 65 2C 28 69 79 ,hl.....ld e,(iy
014080: 2B 37 29 3A 20 6C 64 20 64 2C 28 69 79 2B 38 29 +7): ld d,(iy+8)
014090: 0D 0A 09 69 6E 63 20 64 3A 20 69 6E 63 20 64 3A ...inc d: inc d:
0140A0: 20 69 6E 63 20 64 3A 20 69 6E 63 20 64 0D 0A 0D inc d: inc d...
0140B0: 0A 09 63 61 6C 6C 20 26 42 43 37 37 0D 0A 09 6C ..call &BC77...l
0140C0: 64 20 63 2C 39 3A 20 6A 70 20 6E 63 2C 65 72 72 d c,9: jp nc,err
0140D0: 6F 72 0D 0A 0D 0A 09 63 61 6C 6C 20 26 42 43 38 or.....call &BC8
0140E0: 30 3A 20 6C 64 20 28 69 79 2B 31 38 29 2C 61 0D 0: ld (iy+18),a.
0140F0: 0A 09 63 61 6C 6C 20 26 42 43 38 30 3A 20 6C 64 ..call &BC80: ld
014100: 20 28 69 79 2B 31 39 29 2C 61 09 3B 4C 61 73 74 (iy+19),a.;Last
014110: 20 72 65 63 6F 72 64 20 6E 75 6D 62 65 72 0D 0A record number..
014120: 09 63 61 6C 6C 20 26 42 43 38 30 3A 20 6C 64 20 .call &BC80: ld
014130: 6C 2C 61 0D 0A 09 63 61 6C 6C 20 26 42 43 38 30 l,a...call &BC80
014140: 3A 20 6C 64 20 68 2C 61 09 09 3B 54 6F 74 61 6C : ld h,a..;Total
014150: 20 6C 65 6E 67 74 68 20 6F 66 20 72 65 63 6F 72 length of recor
014160: 64 73 0D 0A 0D 0A 2E 62 6C 6F 64 6C 70 09 64 65 ds.....blodlp.de
014170: 63 20 68 6C 0D 0A 0D 0A 09 63 61 6C 6C 20 26 42 c hl.....call &B
014180: 43 38 30 09 09 3B 47 65 74 20 63 68 61 72 61 63 C80..;Get charac
014190: 74 65 72 2E 2E 2E 0D 0A 09 63 61 6C 6C 20 70 62 ter......call pb
0141A0: 62 79 74 65 09 09 3B 61 6E 64 20 70 75 74 20 69 byte..;and put i
0141B0: 6E 20 6D 65 6D 6F 72 79 0D 0A 09 63 61 6C 6C 20 n memory...call
0141C0: 72 73 74 62 6E 6B 0D 0A 0D 0A 09 6C 64 20 61 2C rstbnk.....ld a,
0141D0: 68 3A 20 6F 72 20 6C 0D 0A 09 6A 72 20 6E 7A 2C h: or l...jr nz,
0141E0: 62 6C 6F 64 6C 70 0D 0A 09 63 61 6C 6C 20 26 42 blodlp...call &B
0141F0: 43 37 41 09 09 3B 43 6C 6F 73 65 20 66 69 6C 65 C7A..;Close file
014200: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014210: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014220: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014230: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014240: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014250: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014260: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014270: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014280: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014290: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0142A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0142B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0142C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0142D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0142E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0142F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014300: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014310: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014320: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014330: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014340: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014350: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014360: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014370: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014380: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014390: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0143A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0143B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0143C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0143D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0143E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0143F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
014400: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
014410: 11 00 01 00 02 09 4E E5 11 00 C7 02 00 00 00 02 ......N.........
014420: 11 00 C3 02 00 00 00 02 11 00 C8 02 00 00 00 02 ................
014430: 11 00 C4 02 00 00 00 02 11 00 C9 02 00 00 00 02 ................
014440: 11 00 C5 02 00 00 00 02 11 00 C1 02 00 00 00 02 ................
014450: 11 00 C6 02 00 00 00 02 11 00 C2 02 00 00 00 02 ................
014460: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
014470: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
014480: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
014490: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0144A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0144B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0144C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0144D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0144E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0144F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
014500: 65 6E 22 2C 31 33 2C 31 30 2C 31 30 2C 30 09 09 en",13,10,10,0..
014510: 3B 31 33 0D 0A 09 64 62 20 22 3A 20 64 61 74 61 ;13...db ": data
014520: 20 77 72 6F 6E 67 20 74 79 70 65 22 2C 31 33 2C wrong type",13,
014530: 31 30 2C 31 30 2C 30 09 09 3B 31 34 0D 0A 09 64 10,10,0..;14...d
014540: 62 20 22 3A 20 65 6E 64 20 6F 66 20 64 61 74 61 b ": end of data
014550: 20 6D 65 74 22 2C 31 33 2C 31 30 2C 31 30 2C 30 met",13,10,10,0
014560: 09 09 3B 31 35 0D 0A 09 64 62 20 22 3A 20 72 65 ..;15...db ": re
014570: 63 6F 72 64 20 61 6C 72 65 61 64 79 20 6F 70 65 cord already ope
014580: 6E 22 2C 31 33 2C 31 30 2C 31 30 2C 30 09 09 3B n",13,10,10,0..;
014590: 31 36 0D 0A 09 64 62 20 22 3A 20 73 74 72 69 6E 16...db ": strin
0145A0: 67 20 74 6F 6F 20 6C 6F 6E 67 22 2C 31 33 2C 31 g too long",13,1
0145B0: 30 2C 31 30 2C 30 09 09 3B 31 37 0D 0A 09 64 62 0,10,0..;17...db
0145C0: 20 22 3A 20 72 65 63 6F 72 64 20 6E 6F 74 20 63 ": record not c
0145D0: 6C 6F 73 65 64 22 2C 31 33 2C 31 30 2C 31 30 2C losed",13,10,10,
0145E0: 30 09 09 3B 31 38 0D 0A 09 64 62 20 22 3A 20 69 0..;18...db ": i
0145F0: 6E 63 6F 6D 70 61 74 69 62 6C 65 20 76 65 72 73 ncompatible vers
014600: 69 6F 6E 22 2C 31 33 2C 31 30 2C 31 30 2C 30 09 ion",13,10,10,0.
014610: 09 3B 31 39 0D 0A 0D 0A 09 3B 4D 65 73 73 61 67 .;19.....;Messag
014620: 65 20 74 65 78 74 0D 0A 0D 0A 2E 79 6D 74 65 78 e text.....ymtex
014630: 74 09 64 62 20 31 33 2C 31 30 2C 22 59 4D 6F 64 t.db 13,10,"YMod
014640: 65 6D 3A 20 22 2C 30 0D 0A 2E 63 6C 74 65 78 74 em: ",0...cltext
014650: 09 64 62 20 22 63 6C 6F 73 69 6E 67 22 2C 30 0D .db "closing",0.
014660: 0A 2E 61 62 72 74 78 74 09 64 62 20 22 61 62 6F ..abrtxt.db "abo
014670: 72 74 69 6E 67 22 2C 30 0D 0A 2E 63 72 63 74 78 rting",0...crctx
014680: 74 09 64 62 20 31 33 2C 31 30 2C 22 58 4D 6F 64 t.db 13,10,"XMod
014690: 65 6D 2D 43 52 43 3A 22 2C 30 0D 0A 2E 63 68 6B em-CRC:",0...chk
0146A0: 74 78 74 09 64 62 20 31 33 2C 31 30 2C 22 58 4D txt.db 13,10,"XM
0146B0: 6F 64 65 6D 3A 20 22 2C 30 0D 0A 2E 6F 6E 65 74 odem: ",0...onet
0146C0: 78 74 09 64 62 20 31 33 2C 31 30 2C 22 58 4D 6F xt.db 13,10,"XMo
0146D0: 64 65 6D 2D 31 6B 3A 20 22 2C 30 0D 0A 2E 6C 62 dem-1k: ",0...lb
0146E0: 72 74 78 74 09 64 62 20 31 30 2C 31 33 2C 22 4C rtxt.db 10,13,"L
0146F0: 69 62 72 61 72 79 3A 20 22 2C 30 0D 0A 2E 6C 61 ibrary: ",0...la
014700: 43 4C 4F 53 45 22 0D 0A 09 73 74 72 20 22 42 43 CLOSE"...str "BC
014710: 48 45 43 4B 22 2C 22 42 47 4F 54 4F 22 2C 22 42 HECK","BGOTO","B
014720: 47 45 54 53 22 2C 22 42 47 45 54 49 22 0D 0A 09 GETS","BGETI"...
014730: 73 74 72 20 22 42 50 55 54 53 22 2C 22 42 50 55 str "BPUTS","BPU
014740: 54 49 22 2C 22 42 44 45 4C 45 54 45 22 2C 22 42 TI","BDELETE","B
014750: 53 41 56 45 22 0D 0A 09 73 74 72 20 22 42 4C 4F SAVE"...str "BLO
014760: 41 44 22 0D 0A 09 6E 6F 70 0D 0A 0D 0A 2E 69 6E AD"...nop.....in
014770: 69 74 5F 69 09 70 75 73 68 20 64 65 0D 0A 09 6C it_i.push de...l
014780: 64 20 62 2C 30 0D 0A 2E 69 6E 69 74 5F 6C 09 6C d b,0...init_l.l
014790: 64 20 28 68 6C 29 2C 30 3A 20 64 65 63 20 68 6C d (hl),0: dec hl
0147A0: 3A 20 6C 64 20 28 68 6C 29 2C 30 3A 20 64 65 63 : ld (hl),0: dec
0147B0: 20 68 6C 3A 20 64 6A 6E 7A 20 69 6E 69 74 5F 6C hl: djnz init_l
0147C0: 0D 0A 09 70 75 73 68 20 68 6C 3A 20 70 75 73 68 ...push hl: push
0147D0: 20 69 78 3A 20 70 75 73 68 20 69 79 0D 0A 0D 0A ix: push iy....
0147E0: 09 70 75 73 68 20 68 6C 3A 20 70 6F 70 20 69 79 .push hl: pop iy
0147F0: 3A 20 69 6E 63 20 69 79 09 09 09 3B 49 59 20 3D : inc iy...;IY =
014800: 20 77 6F 72 6B 73 70 61 63 65 0D 0A 0D 0A 09 6C workspace.....l
014810: 64 20 68 6C 2C 73 69 67 6E 6F 6E 3A 20 63 61 6C d hl,signon: cal
014820: 6C 20 73 74 72 69 6E 67 09 09 3B 70 72 69 6E 74 l string..;print
014830: 20 63 6F 70 79 72 69 67 68 74 20 6D 65 73 73 61 copyright messa
014840: 67 65 0D 0A 0D 0A 09 70 75 73 68 20 69 79 3A 20 ge.....push iy:
014850: 70 6F 70 20 68 6C 3A 20 6C 64 20 64 65 2C 33 33 pop hl: ld de,33
014860: 3A 20 61 64 64 20 68 6C 2C 64 65 0D 0A 09 65 78 : add hl,de...ex
014870: 20 64 65 2C 68 6C 3A 20 6C 64 20 68 6C 2C 26 42 de,hl: ld hl,&B
014880: 44 46 31 3A 20 6C 64 69 3A 20 6C 64 69 3A 20 6C DF1: ldi: ldi: l
014890: 64 69 09 3B 70 72 65 73 65 72 76 65 20 26 42 44 di.;preserve &BD
0148A0: 46 31 0D 0A 0D 0A 09 70 75 73 68 20 69 79 3A 20 F1.....push iy:
0148B0: 70 6F 70 20 68 6C 3A 20 6C 64 20 64 65 2C 33 37 pop hl: ld de,37
0148C0: 32 3A 20 61 64 64 20 68 6C 2C 64 65 0D 0A 09 65 2: add hl,de...e
0148D0: 78 20 64 65 2C 68 6C 3A 20 6C 64 20 68 6C 2C 72 x de,hl: ld hl,r
0148E0: 65 64 69 72 3A 20 6C 64 20 62 63 2C 31 34 3A 20 edir: ld bc,14:
0148F0: 6C 64 69 72 09 3B 63 6F 70 79 20 72 65 64 69 72 ldir.;copy redir
014900: 73 74 63 72 09 64 62 20 31 30 2C 31 30 2C 31 33 stcr.db 10,10,13
014910: 2C 30 0D 0A 2E 74 74 73 65 6E 64 09 64 62 20 31 ,0...ttsend.db 1
014920: 33 2C 31 30 2C 22 4E 6F 2E 20 6F 66 20 66 69 6C 3,10,"No. of fil
014930: 65 73 20 74 6F 20 73 65 6E 64 3A 20 22 2C 30 0D es to send: ",0.
014940: 0A 2E 74 74 6B 6D 65 73 09 64 62 20 22 20 28 22 ..ttkmes.db " ("
014950: 2C 30 0D 0A 2E 74 74 6B 63 6C 6F 09 64 62 20 22 ,0...ttkclo.db "
014960: 6B 29 22 2C 31 30 2C 31 33 2C 30 0D 0A 2E 61 62 k)",10,13,0...ab
014970: 72 72 65 71 09 64 62 20 22 61 62 6F 72 74 22 2C rreq.db "abort",
014980: 31 30 2C 31 30 2C 31 33 2C 30 0D 0A 2E 73 69 67 10,10,13,0...sig
014990: 6E 6F 6E 09 64 62 20 22 20 43 48 41 52 4C 45 59 non.db " CHARLEY
0149A0: 27 53 20 43 4F 4D 4D 53 20 22 2C 31 36 34 2C 22 'S COMMS ",164,"
0149B0: 31 39 39 32 20 52 69 63 68 61 72 64 20 46 61 69 1992 Richard Fai
0149C0: 72 68 75 72 73 74 22 2C 31 30 2C 30 0D 0A 0D 0A rhurst",10,0....
0149D0: 09 3B 42 61 75 64 20 72 61 74 65 2F 38 32 35 33 .;Baud rate/8253
0149E0: 20 63 6F 6E 76 65 72 73 69 6F 6E 20 64 61 74 61 conversion data
0149F0: 0D 0A 0D 0A 2E 74 62 38 32 35 33 09 64 77 20 33 .....tb8253.dw 3
014A00: 31 32 35 30 2C 26 34 2C 31 39 32 30 30 2C 26 37 1250,&4,19200,&7
014A10: 2C 39 36 30 30 2C 26 44 2C 37 32 30 30 2C 26 31 ,9600,&D,7200,&1
014A20: 31 2C 34 38 30 30 2C 26 31 41 0D 0A 09 64 77 20 1,4800,&1A...dw
014A30: 33 36 30 30 2C 26 32 33 2C 32 34 30 30 2C 26 33 3600,&23,2400,&3
014A40: 34 2C 32 30 30 30 2C 26 33 46 2C 31 38 30 30 2C 4,2000,&3F,1800,
014A50: 26 34 35 2C 31 32 30 30 2C 26 36 38 0D 0A 09 64 &45,1200,&68...d
014A60: 77 20 36 30 30 2C 26 44 30 2C 33 30 30 2C 26 31 w 600,&D0,300,&1
014A70: 41 30 2C 32 30 30 2C 26 32 37 31 2C 31 35 30 2C A0,200,&271,150,
014A80: 26 33 34 31 2C 31 31 30 2C 26 34 37 30 0D 0A 09 &341,110,&470...
014A90: 64 77 20 37 35 2C 26 36 38 33 2C 35 30 2C 26 39 dw 75,&683,50,&9
014AA0: 43 34 2C 34 35 2C 26 41 44 39 2C 30 2C 30 0D 0A C4,45,&AD9,0,0..
014AB0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 3B 2A ...... ;*
014AC0: 2A 2A 20 56 61 72 69 61 62 6C 65 73 20 2A 2A 2A ** Variables ***
014AD0: 0D 0A 0D 0A 3B 64 6F 5F 65 72 72 09 64 62 20 31 ....;do_err.db 1
014AE0: 09 09 3B 2B 30 09 72 65 70 6F 72 74 20 65 72 72 ..;+0.report err
014AF0: 6F 72 73 20 6F 6E 2F 6F 66 66 0D 0A 3B 6C 65 63 ors on/off..;lec
014B00: 65 63 74 69 6F 6E 20 74 6F 20 49 59 2B 33 37 32 ection to IY+372
014B10: 0D 0A 0D 0A 09 70 75 73 68 20 69 79 3A 20 70 6F .....push iy: po
014B20: 70 20 68 6C 3A 20 6C 64 20 64 65 2C 33 37 35 3A p hl: ld de,375:
014B30: 20 61 64 64 20 68 6C 2C 64 65 0D 0A 09 63 61 6C add hl,de...cal
014B40: 6C 20 26 42 39 31 32 3A 20 6C 64 20 28 68 6C 29 l &B912: ld (hl)
014B50: 2C 61 09 09 09 3B 69 6E 73 65 72 74 20 52 4F 4D ,a...;insert ROM
014B60: 20 6E 6F 2E 20 66 6F 72 20 46 41 52 20 50 43 48 no. for FAR PCH
014B70: 4C 0D 0A 0D 0A 09 6C 64 20 28 26 42 41 46 44 29 L.....ld (&BAFD)
014B80: 2C 69 79 09 09 09 09 3B 26 42 41 46 44 3D 70 61 ,iy....;&BAFD=pa
014B90: 72 61 6D 65 74 65 72 73 0D 0A 09 70 75 73 68 20 rameters...push
014BA0: 69 79 3A 20 70 6F 70 20 68 6C 3A 20 6C 64 20 64 iy: pop hl: ld d
014BB0: 65 2C 39 30 3A 20 61 64 64 20 68 6C 2C 64 65 09 e,90: add hl,de.
014BC0: 3B 65 76 65 6E 74 20 62 6C 6F 63 6B 0D 0A 09 63 ;event block...c
014BD0: 61 6C 6C 20 26 42 39 31 32 3A 20 6C 64 20 63 2C all &B912: ld c,
014BE0: 61 3A 20 6C 64 20 62 2C 26 31 31 0D 0A 09 6C 64 a: ld b,&11...ld
014BF0: 20 64 65 2C 66 63 6F 75 6E 74 3A 20 63 61 6C 6C de,fcount: call
014C00: 20 26 42 43 44 37 0D 0A 09 70 75 73 68 20 69 79 &BCD7...push iy
014C10: 3A 20 70 6F 70 20 68 6C 3A 20 63 61 6C 6C 20 72 : pop hl: call r
014C20: 65 73 65 74 0D 0A 0D 0A 09 70 6F 70 20 69 79 3A eset.....pop iy:
014C30: 20 70 6F 70 20 69 78 3A 20 70 6F 70 20 68 6C 3A pop ix: pop hl:
014C40: 20 70 6F 70 20 64 65 0D 0A 09 73 63 66 3A 20 72 pop de...scf: r
014C50: 65 74 0D 0A 0D 0A 09 70 72 69 6E 74 20 22 20 52 et.....print " R
014C60: 65 61 64 69 6E 67 20 69 6E 20 43 4F 4E 54 52 4F eading in CONTRO
014C70: 4C 20 2E 4D 4F 44 22 3A 20 72 65 61 64 20 22 43 L .MOD": read "C
014C80: 4F 4E 54 52 4F 4C 20 2E 4D 4F 44 22 0D 0A 09 70 ONTROL .MOD"...p
014C90: 72 69 6E 74 20 22 20 52 65 61 64 69 6E 67 20 69 rint " Reading i
014CA0: 6E 20 53 49 4F 20 20 20 20 20 2E 4D 4F 44 22 3A n SIO .MOD":
014CB0: 20 72 65 61 64 20 22 53 49 4F 20 20 20 20 20 2E read "SIO .
014CC0: 4D 4F 44 22 0D 0A 09 70 72 69 6E 74 20 22 20 52 MOD"...print " R
014CD0: 65 61 64 69 6E 67 20 69 6E 20 46 49 4C 45 20 20 eading in FILE
014CE0: 20 20 2E 4D 4F 44 22 3A 20 72 65 61 64 20 22 46 .MOD": read "F
014CF0: 49 4C 45 20 20 20 20 2E 4D 4F 44 22 0D 0A 09 70 ILE .MOD"...p
014D00: 68 6F 09 64 62 20 30 09 09 3B 2B 31 09 6C 6F 63 ho.db 0..;+1.loc
014D10: 61 6C 20 65 63 68 6F 20 6F 6E 2F 6F 66 66 0D 0A al echo on/off..
014D20: 3B 63 75 72 73 74 09 64 62 20 30 09 09 3B 2B 32 ;curst.db 0..;+2
014D30: 09 63 75 72 73 6F 72 20 6F 6E 2F 6F 66 66 0D 0A .cursor on/off..
014D40: 3B 63 72 09 64 62 20 31 09 09 3B 2B 33 09 43 52 ;cr.db 1..;+3.CR
014D50: 20 6F 6E 2F 6F 66 66 0D 0A 3B 78 6F 6E 63 09 64 on/off..;xonc.d
014D60: 62 20 30 09 09 3B 2B 34 09 58 4F 4E 20 66 6C 6F b 0..;+4.XON flo
014D70: 77 20 63 6F 6E 74 72 6F 6C 20 6F 6E 2F 6F 66 66 w control on/off
014D80: 0D 0A 3B 66 63 6D 6F 64 65 09 64 62 20 30 09 09 ..;fcmode.db 0..
014D90: 3B 2B 35 09 66 69 6C 65 20 63 61 70 74 75 72 65 ;+5.file capture
014DA0: 20 6D 6F 64 65 0D 0A 3B 72 65 64 72 63 74 09 64 mode..;redrct.d
014DB0: 62 20 30 09 09 3B 2B 36 09 72 65 64 69 72 65 63 b 0..;+6.redirec
014DC0: 74 20 64 6F 77 6E 2D 6C 69 6E 65 20 66 6F 72 20 t down-line for
014DD0: 73 6F 6D 65 20 63 6F 6D 6D 61 6E 64 73 3F 0D 0A some commands?..
014DE0: 3B 66 62 61 64 64 72 09 64 77 20 30 09 09 3B 2B ;fbaddr.dw 0..;+
014DF0: 37 09 66 69 6C 65 20 62 75 66 66 65 72 20 61 64 7.file buffer ad
014E00: 64 72 65 73 73 0D 0A 3B 74 69 6D 65 73 74 09 64 dress..;timest.d
014E10: 77 20 30 09 09 3B 2B 39 09 74 69 6D 65 2D 6F 75 w 0..;+9.time-ou
014E20: 74 20 6C 65 6E 67 74 68 0D 0A 0D 0A 69 66 20 6B t length....if k
014E30: 64 73 0D 0A 20 3B 63 72 65 67 09 64 62 20 25 31 ds.. ;creg.db %1
014E40: 30 31 30 31 30 31 30 09 3B 2B 31 31 09 63 6F 6E 0101010.;+11.con
014E50: 74 72 6F 6C 20 72 65 67 69 73 74 65 72 20 64 65 trol register de
014E60: 66 61 75 6C 74 0D 0A 09 64 73 20 31 0D 0A 65 6C fault...ds 1..el
014E70: 73 65 0D 0A 20 3B 72 65 67 33 09 64 62 20 25 31 se.. ;reg3.db %1
014E80: 31 31 30 30 30 30 31 09 3B 2B 31 31 09 72 65 67 1100001.;+11.reg
014E90: 69 73 74 65 72 20 33 20 64 65 66 61 75 6C 74 0D ister 3 default.
014EA0: 0A 20 3B 72 65 67 35 09 64 62 20 25 31 31 31 30 . ;reg5.db %1110
014EB0: 31 30 31 30 09 3B 2B 31 32 09 72 65 67 69 73 74 1010.;+12.regist
014EC0: 65 72 20 35 20 64 65 66 61 75 6C 74 0D 0A 65 6E er 5 default..en
014ED0: 64 69 66 0D 0A 0D 0A 3B 62 6E 6B 67 65 74 09 64 dif....;bnkget.d
014EE0: 77 20 30 09 09 3B 2B 31 33 09 77 68 65 72 65 20 w 0..;+13.where
014EF0: 74 6F 20 67 65 74 20 66 72 6F 6D 0D 0A 3B 62 6E to get from..;bn
014F00: 72 69 6E 74 20 22 20 52 65 61 64 69 6E 67 20 69 rint " Reading i
014F10: 6E 20 54 45 52 4D 49 4E 41 4C 2E 4D 4F 44 22 3A n TERMINAL.MOD":
014F20: 20 72 65 61 64 20 22 54 45 52 4D 49 4E 41 4C 2E read "TERMINAL.
014F30: 4D 4F 44 22 0D 0A 09 70 72 69 6E 74 20 22 20 52 MOD"...print " R
014F40: 65 61 64 69 6E 67 20 69 6E 20 4C 49 42 52 41 52 eading in LIBRAR
014F50: 59 20 2E 4D 4F 44 22 3A 20 72 65 61 64 20 22 4C Y .MOD": read "L
014F60: 49 42 52 41 52 59 20 2E 4D 4F 44 22 0D 0A 09 70 IBRARY .MOD"...p
014F70: 72 69 6E 74 20 22 20 52 65 61 64 69 6E 67 20 69 rint " Reading i
014F80: 6E 20 42 42 53 20 20 20 20 20 2E 4D 4F 44 22 3A n BBS .MOD":
014F90: 20 72 65 61 64 20 22 42 42 53 20 20 20 20 20 2E read "BBS .
014FA0: 4D 4F 44 22 0D 0A 09 70 72 69 6E 74 20 22 20 52 MOD"...print " R
014FB0: 65 61 64 69 6E 67 20 69 6E 20 53 55 42 52 4F 55 eading in SUBROU
014FC0: 54 20 2E 4D 4F 44 22 3A 20 72 65 61 64 20 22 53 T .MOD": read "S
014FD0: 55 42 52 4F 55 54 20 2E 4D 4F 44 22 0D 0A 09 70 UBROUT .MOD"...p
014FE0: 72 69 6E 74 20 22 20 41 73 73 65 6D 62 6C 69 6E rint " Assemblin
014FF0: 67 20 63 6F 6D 6D 6F 6E 20 64 61 74 61 22 0D 0A g common data"..
015000: 0D 0A 09 3B 2A 2A 2A 20 44 61 74 61 20 2A 2A 2A ...;*** Data ***
015010: 0D 0A 0D 0A 2E 6F 6B 63 68 61 72 09 64 62 20 22 .....okchar.db "
015020: 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 ABCDEFGHIJKLMNOP
015030: 51 52 53 54 55 56 57 58 59 5A 30 31 32 33 34 35 QRSTUVWXYZ012345
015040: 36 37 38 39 21 22 2C 33 34 2C 22 23 24 25 26 2B 6789!",34,"#$%&+
015050: 2D 40 5E 2A 3F 2E 60 7B 7D 7E 20 22 2C 30 0D 0A -@^*?.`{}~ ",0..
015060: 2E 66 66 66 66 09 64 62 20 30 2C 36 2C 35 2C 35 .ffff.db 0,6,5,5
015070: 2C 33 2C 36 0D 0A 0D 0A 2E 76 74 35 32 73 74 09 ,3,6.....vt52st.
015080: 64 62 20 22 33 22 2C 34 2C 22 48 22 2C 33 30 2C db "3",4,"H",30,
015090: 22 49 22 2C 31 31 2C 22 4A 22 2C 32 30 2C 22 4B "I",11,"J",20,"K
0150A0: 22 2C 31 38 2C 22 64 22 2C 31 39 2C 22 65 22 2C ",18,"d",19,"e",
0150B0: 33 2C 22 66 22 2C 32 2C 22 6F 22 2C 31 37 2C 30 3,"f",2,"o",17,0
0150C0: 0D 0A 0D 0A 09 3B 45 72 72 6F 72 20 74 65 78 74 .....;Error text
0150D0: 0D 0A 0D 0A 2E 63 65 5F 74 78 74 09 64 62 20 31 .....ce_txt.db 1
0150E0: 33 2C 31 30 2C 22 43 6F 6D 6D 73 20 65 72 72 6F 3,10,"Comms erro
0150F0: 72 20 22 2C 30 0D 0A 0D 0A 2E 65 72 72 5F 74 78 r ",0.....err_tx
015100: 64 5F 69 3A 20 6A 70 20 73 65 6E 64 5F 69 3A 20 d_i: jp send_i:
015110: 6A 70 20 67 65 74 5F 69 0D 0A 09 6A 70 20 67 72 jp get_i...jp gr
015120: 61 62 5F 69 3A 20 6A 70 20 77 72 74 5F 69 20 3A ab_i: jp wrt_i :
015130: 20 6A 70 20 70 72 6F 67 5F 69 3A 20 6A 70 20 72 jp prog_i: jp r
015140: 65 61 64 5F 69 0D 0A 09 6A 70 20 63 6F 6D 5F 69 ead_i...jp com_i
015150: 20 3A 20 6A 70 20 77 61 69 74 5F 69 3A 20 6A 70 : jp wait_i: jp
015160: 20 69 6E 70 5F 69 20 3A 20 6A 70 20 73 65 72 5F inp_i : jp ser_
015170: 69 0D 0A 09 6A 70 20 6D 61 5F 5F 69 20 0A 2E 6A i...jp ma__i ..j
015180: 70 20 63 75 72 73 5F 69 3A 20 6A 70 20 73 64 63 p curs_i: jp sdc
015190: 72 5F 69 3A 20 6A 70 20 73 68 6B 65 5F 69 0D 0A r_i: jp shke_i..
0151A0: 09 6A 70 20 62 72 6B 5F 69 20 3A 20 6A 70 20 65 .jp brk_i : jp e
0151B0: 72 72 73 5F 69 3A 20 6A 70 20 63 61 70 74 5F 69 rrs_i: jp capt_i
0151C0: 3A 20 6A 70 20 63 6C 6F 73 5F 69 0D 0A 09 6A 70 : jp clos_i...jp
0151D0: 20 78 6F 6E 5F 69 20 3A 20 6A 70 20 65 63 68 6F xon_i : jp echo
0151E0: 5F 69 3A 20 6A 70 20 75 70 6C 64 5F 69 3A 20 6A _i: jp upld_i: j
0151F0: 70 20 64 6E 6C 64 5F 69 0D 0A 09 6A 70 20 70 72 p dnld_i...jp pr
015200: 6F 74 5F 69 3A 20 6A 70 20 62 75 66 66 5F 69 3A ot_i: jp buff_i:
015210: 20 6A 70 20 74 79 70 65 5F 69 3A 20 6A 70 20 74 jp type_i: jp t
015220: 6F 75 74 5F 69 0D 0A 09 6A 70 20 74 65 72 6D 5F out_i...jp term_
015230: 69 3A 20 6A 70 20 74 6D 33 5F 69 20 3A 20 6A 70 i: jp tm3_i : jp
015240: 20 74 6D 37 35 5F 69 3A 20 6A 70 20 74 6D 31 32 tm75_i: jp tm12
015250: 5F 69 0D 0A 09 6A 70 20 74 6D 32 34 5F 69 3A 20 _i...jp tm24_i:
015260: 6A 70 20 74 6D 34 38 5F 69 3A 20 6A 70 20 6C 6F jp tm48_i: jp lo
015270: 63 6C 5F 69 3A 20 6A 70 20 72 74 73 5F 69 0D 0A cl_i: jp rts_i..
015280: 09 6A 70 20 64 63 64 5F 69 20 3A 20 6A 70 20 63 .jp dcd_i : jp c
015290: 74 73 5F 69 20 3A 20 6A 70 20 64 74 72 5F 69 20 ts_i : jp dtr_i
0152A0: 3A 20 6A 70 20 6C 64 69 72 5F 69 0D 0A 09 6A 70 : jp ldir_i...jp
0152B0: 20 73 63 61 6E 5F 69 3A 20 6A 70 20 62 63 6C 72 scan_i: jp bclr
0152C0: 5F 69 3A 20 6A 70 20 62 6F 70 6E 5F 69 3A 20 6A _i: jp bopn_i: j
0152D0: 70 20 62 63 73 65 5F 69 0D 0A 09 6A 70 20 62 63 p bcse_i...jp bc
0152E0: 68 6B 5F 69 3A 20 6A 70 20 62 67 74 6F 5F 69 3A hk_i: jp bgto_i:
0152F0: 20 6A 70 20 62 67 74 73 5F 69 3A 20 6A 70 20 62 jp bgts_i: jp b
015300: 74 20 64 62 20 22 3A 20 69 6C 6C 65 67 61 6C 20 t db ": illegal
015310: 70 61 72 61 6D 65 74 65 72 22 2C 31 33 2C 31 30 parameter",13,10
015320: 2C 31 30 2C 30 09 09 3B 31 0D 0A 09 64 62 20 22 ,10,0..;1...db "
015330: 3A 20 62 61 64 20 61 72 67 75 6D 65 6E 74 20 63 : bad argument c
015340: 6F 75 6E 74 22 2C 31 33 2C 31 30 2C 31 30 2C 30 ount",13,10,10,0
015350: 09 09 3B 32 0D 0A 09 64 62 20 22 3A 20 69 6C 6C ..;2...db ": ill
015360: 65 67 61 6C 20 66 69 6C 65 6E 61 6D 65 22 2C 31 egal filename",1
015370: 33 2C 31 30 2C 31 30 2C 30 09 09 3B 33 0D 0A 09 3,10,10,0..;3...
015380: 64 62 20 22 3A 20 6E 6F 20 66 69 6C 65 73 20 74 db ": no files t
015390: 6F 20 73 65 6E 64 22 2C 31 33 2C 31 30 2C 31 30 o send",13,10,10
0153A0: 2C 30 09 09 3B 34 0D 0A 09 64 62 20 22 3A 20 74 ,0..;4...db ": t
0153B0: 6F 6F 20 6D 61 6E 79 20 66 69 6C 65 73 22 2C 31 oo many files",1
0153C0: 33 2C 31 30 2C 31 30 2C 30 09 09 3B 35 0D 0A 09 3,10,10,0..;5...
0153D0: 64 62 20 22 3A 20 6E 6F 20 66 69 6C 65 20 62 75 db ": no file bu
0153E0: 66 66 65 72 22 2C 31 33 2C 31 30 2C 31 30 2C 30 ffer",13,10,10,0
0153F0: 09 09 3B 36 0D 0A 09 64 62 20 22 3A 20 58 4D 6F ..;6...db ": XMo
015400: 64 65 6D 20 6F 6E 65 20 66 69 6C 65 20 6F 6E 6C dem one file onl
015410: 79 22 2C 31 33 2C 31 30 2C 31 30 2C 30 09 09 3B y",13,10,10,0..;
015420: 37 0D 0A 09 64 62 20 22 3A 20 66 69 6C 65 20 62 7...db ": file b
015430: 75 66 66 65 72 20 69 6E 20 75 73 65 22 2C 31 33 uffer in use",13
015440: 2C 31 30 2C 31 30 2C 30 09 09 3B 38 0D 0A 09 64 ,10,10,0..;8...d
015450: 62 20 22 3A 20 64 69 73 63 20 65 72 72 6F 72 22 b ": disc error"
015460: 2C 31 33 2C 31 30 2C 31 30 2C 30 09 09 09 3B 39 ,13,10,10,0...;9
015470: 0D 0A 09 64 62 20 22 3A 20 63 61 70 74 75 72 65 ...db ": capture
015480: 20 6E 6F 74 20 61 63 74 69 76 65 22 2C 31 33 2C not active",13,
015490: 31 30 2C 31 30 2C 30 09 09 3B 31 30 0D 0A 09 64 10,10,0..;10...d
0154A0: 62 20 22 3A 20 74 69 6D 65 64 20 6F 75 74 22 2C b ": timed out",
0154B0: 31 33 2C 31 30 2C 31 30 2C 30 09 09 09 3B 31 31 13,10,10,0...;11
0154C0: 0D 0A 09 64 62 20 22 3A 20 72 65 63 6F 72 64 20 ...db ": record
0154D0: 6E 6F 74 20 66 6F 75 6E 64 22 2C 31 33 2C 31 30 not found",13,10
0154E0: 2C 31 30 2C 30 09 09 3B 31 32 0D 0A 09 64 62 20 ,10,0..;12...db
0154F0: 22 3A 20 72 65 63 6F 72 64 20 6E 6F 74 20 6F 70 ": record not op
015500: 67 74 69 5F 69 0D 0A 09 6A 70 20 62 70 74 73 5F gti_i...jp bpts_
015510: 69 3A 20 6A 70 20 62 70 74 69 5F 69 3A 20 6A 70 i: jp bpti_i: jp
015520: 20 62 64 65 6C 5F 69 3A 20 6A 70 20 62 73 76 65 bdel_i: jp bsve
015530: 5F 69 0D 0A 09 6A 70 20 62 6C 6F 64 5F 69 0D 0A _i...jp blod_i..
015540: 0D 0A 2E 6E 61 6D 65 5F 74 09 73 74 72 20 22 43 ...name_t.str "C
015550: 48 41 52 4C 45 59 27 53 20 43 4F 4D 4D 53 22 0D HARLEY'S COMMS".
015560: 0A 09 73 74 72 20 22 42 41 55 44 22 2C 22 57 4F ..str "BAUD","WO
015570: 52 44 22 2C 22 53 45 4E 44 22 2C 22 47 45 54 22 RD","SEND","GET"
015580: 0D 0A 09 73 74 72 20 22 47 52 41 42 22 2C 22 57 ...str "GRAB","W
015590: 52 49 54 45 22 2C 22 50 52 4F 47 52 41 4D 22 2C RITE","PROGRAM",
0155A0: 22 52 45 41 44 22 0D 0A 09 73 74 72 20 22 43 4F "READ"...str "CO
0155B0: 4D 22 2C 22 57 41 49 54 22 2C 22 49 4E 50 55 54 M","WAIT","INPUT
0155C0: 22 2C 22 53 45 52 49 41 4C 22 0D 0A 09 73 74 72 ","SERIAL"...str
0155D0: 20 22 50 41 52 41 4C 4C 45 4C 22 2C 22 43 55 52 "PARALLEL","CUR
0155E0: 53 4F 52 22 2C 22 43 52 22 2C 22 48 57 53 48 41 SOR","CR","HWSHA
0155F0: 4B 45 22 0D 0A 09 73 74 72 20 22 42 52 45 41 4B KE"...str "BREAK
015600: 22 2C 22 45 52 52 4F 52 22 2C 22 43 41 50 54 55 ","ERROR","CAPTU
015610: 52 45 22 2C 22 43 4C 4F 53 45 22 0D 0A 09 73 74 RE","CLOSE"...st
015620: 72 20 22 58 4F 4E 22 2C 22 45 43 48 4F 22 2C 22 r "XON","ECHO","
015630: 55 50 4C 4F 41 44 22 2C 22 44 4F 57 4E 4C 4F 41 UPLOAD","DOWNLOA
015640: 44 22 0D 0A 09 73 74 72 20 22 50 52 4F 54 4F 43 D"...str "PROTOC
015650: 4F 4C 22 2C 22 42 55 46 46 45 52 22 2C 22 54 59 OL","BUFFER","TY
015660: 50 45 22 2C 22 54 49 4D 45 4F 55 54 22 0D 0A 09 PE","TIMEOUT"...
015670: 73 74 72 20 22 54 45 52 4D 49 4E 41 4C 22 2C 22 str "TERMINAL","
015680: 54 45 52 4D 33 22 2C 22 54 45 52 4D 31 32 37 35 TERM3","TERM1275
015690: 22 2C 22 54 45 52 4D 31 32 22 0D 0A 09 73 74 72 ","TERM12"...str
0156A0: 20 22 54 45 52 4D 32 34 22 2C 22 54 45 52 4D 34 "TERM24","TERM4
0156B0: 38 22 2C 22 4C 4F 43 41 4C 22 2C 22 52 54 53 22 8","LOCAL","RTS"
0156C0: 0D 0A 09 73 74 72 20 22 44 43 44 22 2C 22 43 54 ...str "DCD","CT
0156D0: 53 22 2C 22 44 54 52 22 2C 22 4C 44 49 52 22 0D S","DTR","LDIR".
0156E0: 0A 09 73 74 72 20 22 53 43 41 4E 22 2C 22 42 43 ..str "SCAN","BC
0156F0: 4C 45 41 52 22 2C 22 42 4F 50 45 4E 22 2C 22 42 LEAR","BOPEN","B
015700: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
015710: 12 00 01 00 02 09 4E E5 12 00 C1 02 00 00 00 02 ......N.........
015720: 12 00 C6 02 00 00 00 02 12 00 C2 02 00 00 00 02 ................
015730: 12 00 C7 02 00 00 00 02 12 00 C3 02 00 00 00 02 ................
015740: 12 00 C8 02 00 00 00 02 12 00 C4 02 00 00 00 02 ................
015750: 12 00 C9 02 00 00 00 02 12 00 C5 02 00 00 00 02 ................
015760: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
015770: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
015780: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
015790: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0157A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0157B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0157C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0157D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0157E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0157F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
015800: 6B 73 69 7A 09 64 77 20 30 09 09 3B 2B 31 35 09 ksiz.dw 0..;+15.
015810: 61 6E 64 20 73 69 7A 65 20 6F 66 20 74 68 61 74 and size of that
015820: 20 72 65 63 6F 72 64 0D 0A 3B 62 6E 6B 6F 70 6E record..;bnkopn
015830: 09 64 62 20 30 09 09 3B 2B 31 37 09 72 65 63 6F .db 0..;+17.reco
015840: 72 64 20 6F 70 65 6E 3F 0D 0A 3B 62 6E 6B 6C 73 rd open?..;bnkls
015850: 74 09 64 77 20 30 09 09 3B 2B 31 38 09 6C 61 73 t.dw 0..;+18.las
015860: 74 20 72 65 63 6F 72 64 0D 0A 3B 62 6E 6B 70 6F t record..;bnkpo
015870: 73 09 64 77 20 30 09 09 3B 2B 32 30 09 70 6F 73 s.dw 0..;+20.pos
015880: 69 74 69 6F 6E 20 69 6E 20 62 61 6E 6B 73 0D 0A ition in banks..
015890: 3B 62 6E 6B 6F 72 67 09 64 77 20 30 09 09 3B 2B ;bnkorg.dw 0..;+
0158A0: 32 32 09 70 6F 73 69 74 69 6F 6E 20 74 6F 20 77 22.position to w
0158B0: 72 69 74 65 20 74 6F 0D 0A 0D 0A 3B 62 6C 6F 63 rite to....;bloc
0158C0: 6B 09 64 73 20 39 09 09 3B 2B 32 34 09 73 70 61 k.ds 9..;+24.spa
0158D0: 63 65 20 66 6F 72 20 66 61 73 74 20 74 69 63 6B ce for fast tick
0158E0: 65 72 20 62 6C 6F 63 6B 0D 0A 3B 70 73 74 6F 72 er block..;pstor
0158F0: 65 09 64 73 20 33 09 09 3B 2B 33 33 09 73 74 6F e.ds 3..;+33.sto
015900: 72 65 20 66 6F 72 20 4D 43 20 57 41 49 54 20 50 re for MC WAIT P
015910: 52 49 4E 54 45 52 20 72 65 64 69 72 65 63 74 69 RINTER redirecti
015920: 6F 6E 0D 0A 0D 0A 3B 62 73 74 6F 66 66 09 64 77 on....;bstoff.dw
015930: 20 30 09 09 3B 2B 33 36 09 62 75 66 66 65 72 20 0..;+36.buffer
015940: 73 74 6F 72 65 20 6F 66 66 73 65 74 0D 0A 3B 62 store offset..;b
015950: 67 74 6F 66 66 09 64 77 20 30 09 09 3B 2B 33 38 gtoff.dw 0..;+38
015960: 09 62 75 66 66 65 72 20 67 65 74 20 6F 66 66 73 .buffer get offs
015970: 65 74 0D 0A 0D 0A 3B 66 62 73 63 6E 74 09 64 77 et....;fbscnt.dw
015980: 20 30 09 09 3B 2B 34 30 09 66 69 6C 65 20 62 79 0..;+40.file by
015990: 74 65 73 20 63 6F 75 6E 74 0D 0A 0D 0A 3B 6E 70 tes count....;np
0159A0: 61 72 61 6D 09 64 62 20 30 09 09 3B 2B 34 32 09 aram.db 0..;+42.
0159B0: 6E 75 6D 62 65 72 20 6F 66 20 70 61 72 61 6D 65 number of parame
0159C0: 74 65 72 73 0D 0A 3B 70 62 6C 6F 63 6B 09 64 77 ters..;pblock.dw
0159D0: 20 30 09 09 3B 2B 34 33 09 61 64 64 72 65 73 73 0..;+43.address
0159E0: 20 6F 66 20 70 61 72 61 6D 65 74 65 72 73 0D 0A of parameters..
0159F0: 3B 66 6E 61 6D 65 09 64 62 20 22 44 4F 57 4E 4C ;fname.db "DOWNL
015A00: 20 20 20 20 4E 20 4F 20 45 0D 0A 0D 0A 2E 77 6F N O E.....wo
015A10: 72 64 5F 69 09 69 66 20 6B 64 73 0D 0A 0D 0A 09 rd_i.if kds.....
015A20: 6C 64 20 63 2C 32 3A 20 63 70 20 33 3A 20 6A 70 ld c,2: cp 3: jp
015A30: 20 6E 7A 2C 65 72 72 6F 72 0D 0A 09 70 75 73 68 nz,error...push
015A40: 20 69 79 3A 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 iy: pop hl...ld
015A50: 20 64 65 2C 31 31 3A 20 61 64 64 20 68 6C 2C 64 de,11: add hl,d
015A60: 65 09 09 3B 48 4C 20 3D 20 49 59 2B 31 31 20 28 e..;HL = IY+11 (
015A70: 4B 44 53 20 63 6F 6E 74 72 6F 6C 20 72 65 67 69 KDS control regi
015A80: 73 74 65 72 29 0D 0A 0D 0A 09 6C 64 20 69 79 2C ster).....ld iy,
015A90: 6B 77 74 62 6C 3A 20 6C 64 20 62 2C 38 0D 0A 0D kwtbl: ld b,8...
015AA0: 0A 2E 6B 77 73 5F 6C 70 09 6C 64 20 61 2C 28 69 ..kws_lp.ld a,(i
015AB0: 78 2B 34 29 3A 20 63 70 20 28 69 79 2B 30 29 3A x+4): cp (iy+0):
015AC0: 20 6A 72 20 6E 7A 2C 6E 6F 74 73 6D 0D 0A 09 6C jr nz,notsm...l
015AD0: 64 20 61 2C 28 69 78 2B 32 29 3A 20 63 70 20 28 d a,(ix+2): cp (
015AE0: 69 79 2B 31 29 3A 20 6A 72 20 6E 7A 2C 6E 6F 74 iy+1): jr nz,not
015AF0: 73 6D 0D 0A 09 6C 64 20 61 2C 28 69 78 2B 30 29 sm...ld a,(ix+0)
015B00: 3A 20 63 70 20 28 69 79 2B 32 29 3A 20 6A 72 20 : cp (iy+2): jr
015B10: 6E 7A 2C 6E 6F 74 73 6D 0D 0A 09 6C 64 20 63 2C nz,notsm...ld c,
015B20: 28 69 79 2B 33 29 3A 20 6C 64 20 61 2C 28 68 6C (iy+3): ld a,(hl
015B30: 29 0D 0A 09 61 6E 64 20 31 39 39 3A 20 6F 72 20 )...and 199: or
015B40: 63 3A 20 6C 64 20 28 68 6C 29 2C 61 0D 0A 09 6A c: ld (hl),a...j
015B50: 70 20 70 72 65 67 0D 0A 0D 0A 2E 6E 6F 74 73 6D p preg.....notsm
015B60: 09 69 6E 63 20 69 79 3A 20 69 6E 63 20 69 79 3A .inc iy: inc iy:
015B70: 20 69 6E 63 20 69 79 3A 20 69 6E 63 20 69 79 0D inc iy: inc iy.
015B80: 0A 09 64 6A 6E 7A 20 6B 77 73 5F 6C 70 0D 0A 0D ..djnz kws_lp...
015B90: 0A 09 6C 64 20 63 2C 31 3A 20 6A 70 20 65 72 72 ..ld c,1: jp err
015BA0: 6F 72 09 09 3B 6C 65 67 61 6C 20 76 61 6C 75 65 or..;legal value
015BB0: 20 6E 6F 74 20 66 6F 75 6E 64 21 0D 0A 0D 0A 2E not found!.....
015BC0: 6B 77 74 62 6C 09 64 62 20 37 2C 32 2C 32 2C 25 kwtbl.db 7,2,2,%
015BD0: 30 30 30 30 30 30 0D 0A 09 64 62 20 37 2C 31 2C 000000...db 7,1,
015BE0: 32 2C 25 31 30 30 30 30 30 0D 0A 09 64 62 20 37 2,%100000...db 7
015BF0: 2C 32 2C 31 2C 25 30 31 30 30 30 30 0D 0A 09 64 ,2,1,%010000...d
015C00: 4F 41 44 3B 40 22 2C 30 20 3B 2B 34 34 09 66 69 OAD;@",0 ;+44.fi
015C10: 6C 65 6E 61 6D 65 20 28 72 65 63 65 69 76 65 29 lename (receive)
015C20: 0D 0A 0D 0A 3B 74 6E 61 6D 65 09 64 62 20 22 20 ....;tname.db "
015C30: 20 20 20 20 20 20 20 20 20 20 20 22 2C 30 3B 2B ",0;+
015C40: 35 35 09 66 69 6C 65 6E 61 6D 65 20 28 73 65 6E 55.filename (sen
015C50: 64 29 0D 0A 3B 63 63 68 61 72 09 64 62 20 30 09 d)..;cchar.db 0.
015C60: 09 3B 2B 36 38 09 63 75 72 72 65 6E 74 20 63 68 .;+68.current ch
015C70: 61 72 61 63 74 65 72 20 70 6F 73 69 74 69 6F 6E aracter position
015C80: 0D 0A 3B 73 74 6D 6F 64 65 09 64 62 20 22 20 22 ..;stmode.db " "
015C90: 09 09 3B 2B 36 39 09 66 69 6C 6C 65 72 20 63 68 ..;+69.filler ch
015CA0: 61 72 61 63 74 65 72 0D 0A 3B 63 6E 61 64 64 72 aracter..;cnaddr
015CB0: 09 64 77 20 30 09 09 3B 2B 37 30 09 63 75 72 72 .dw 0..;+70.curr
015CC0: 65 6E 74 20 6E 61 6D 65 20 61 64 64 72 65 73 73 ent name address
015CD0: 0D 0A 3B 66 74 73 65 6E 64 09 64 62 20 30 09 09 ..;ftsend.db 0..
015CE0: 3B 2B 37 32 09 66 69 6C 65 73 20 74 6F 20 73 65 ;+72.files to se
015CF0: 6E 64 0D 0A 3B 6B 74 73 65 6E 64 09 64 77 20 30 nd..;ktsend.dw 0
015D00: 09 09 3B 2B 37 33 09 6B 69 6C 6F 62 79 74 65 73 ..;+73.kilobytes
015D10: 20 74 6F 20 73 65 6E 64 0D 0A 3B 66 6C 6F 6E 67 to send..;flong
015D20: 09 64 73 20 33 09 09 3B 2B 37 35 09 66 69 6C 65 .ds 3..;+75.file
015D30: 20 6C 65 6E 67 74 68 20 28 33 2D 62 79 74 65 29 length (3-byte)
015D40: 0D 0A 3B 66 64 65 63 09 64 73 20 36 09 09 3B 2B ..;fdec.ds 6..;+
015D50: 37 38 09 64 65 63 69 6D 61 6C 20 6F 66 20 22 66 78.decimal of "f
015D60: 6C 6F 6E 67 22 0D 0A 3B 72 65 61 64 69 6E 09 64 long"..;readin.d
015D70: 77 20 30 09 09 3B 2B 38 34 09 62 79 74 65 73 20 w 0..;+84.bytes
015D80: 72 65 61 64 20 69 6E 0D 0A 0D 0A 3B 63 75 72 64 read in....;curd
015D90: 69 72 09 64 62 20 30 09 09 3B 2B 38 36 09 63 75 ir.db 0..;+86.cu
015DA0: 72 72 65 6E 74 20 66 69 6C 65 20 64 69 72 65 63 rrent file direc
015DB0: 74 6F 72 79 0D 0A 0D 0A 3B 63 6F 75 6E 74 09 64 tory....;count.d
015DC0: 77 20 30 09 09 3B 2B 38 37 09 35 30 2F 73 65 63 w 0..;+87.50/sec
015DD0: 20 63 6F 75 6E 74 0D 0A 3B 64 6F 6E 65 09 64 62 count..;done.db
015DE0: 20 30 09 09 3B 2B 38 39 09 35 30 2F 73 65 63 20 0..;+89.50/sec
015DF0: 2D 20 64 6F 6E 65 20 6F 72 20 6E 6F 74 3F 0D 0A - done or not?..
015E00: 62 20 37 2C 31 2C 31 2C 25 31 31 30 30 30 30 0D b 7,1,1,%110000.
015E10: 0A 09 64 62 20 38 2C 30 2C 32 2C 25 30 30 31 30 ..db 8,0,2,%0010
015E20: 30 30 0D 0A 09 64 62 20 38 2C 30 2C 31 2C 25 31 00...db 8,0,1,%1
015E30: 30 31 30 30 30 0D 0A 09 64 62 20 38 2C 32 2C 31 01000...db 8,2,1
015E40: 2C 25 30 31 31 30 30 30 0D 0A 09 64 62 20 38 2C ,%011000...db 8,
015E50: 31 2C 31 2C 25 31 31 31 30 30 30 0D 0A 0D 0A 09 1,1,%111000.....
015E60: 65 6C 73 65 0D 0A 0D 0A 09 6C 64 20 63 2C 32 3A else.....ld c,2:
015E70: 20 63 70 20 33 3A 20 6A 70 20 6E 7A 2C 65 72 72 cp 3: jp nz,err
015E80: 6F 72 09 3B 33 20 70 61 72 61 6D 65 74 65 72 73 or.;3 parameters
015E90: 3F 0D 0A 0D 0A 09 6C 64 20 61 2C 28 69 78 2B 34 ?.....ld a,(ix+4
015EA0: 29 3A 20 6C 64 20 63 2C 31 3A 20 73 75 62 20 35 ): ld c,1: sub 5
015EB0: 09 3B 64 61 74 61 20 62 69 74 73 20 35 2D 38 3F .;data bits 5-8?
015EC0: 0D 0A 09 6C 64 20 62 2C 61 3A 20 61 6E 64 20 33 ...ld b,a: and 3
015ED0: 3A 20 63 70 20 62 3A 20 6A 70 20 6E 7A 2C 65 72 : cp b: jp nz,er
015EE0: 72 6F 72 0D 0A 0D 0A 09 6C 64 20 61 2C 28 69 78 ror.....ld a,(ix
015EF0: 29 3A 20 6F 72 20 61 3A 20 6A 70 20 7A 2C 65 72 ): or a: jp z,er
015F00: 72 6F 72 09 3B 73 74 6F 70 20 62 69 74 73 20 31 ror.;stop bits 1
015F10: 2D 33 3F 0D 0A 09 63 70 20 34 3A 20 6A 70 20 6E -3?...cp 4: jp n
015F20: 63 2C 65 72 72 6F 72 0D 0A 0D 0A 09 6C 64 20 61 c,error.....ld a
015F30: 2C 28 69 78 2B 32 29 3A 20 6C 64 20 65 2C 61 3A ,(ix+2): ld e,a:
015F40: 20 61 6E 64 20 33 0D 0A 09 63 70 20 65 3A 20 6A and 3...cp e: j
015F50: 70 20 6E 7A 2C 65 72 72 6F 72 09 09 3B 70 61 72 p nz,error..;par
015F60: 69 74 79 20 30 2D 33 3F 0D 0A 0D 0A 09 6C 64 20 ity 0-3?.....ld
015F70: 61 2C 28 69 78 2B 34 29 3A 20 73 75 62 20 35 09 a,(ix+4): sub 5.
015F80: 09 3B 64 61 74 61 20 62 69 74 73 20 3D 20 30 2D .;data bits = 0-
015F90: 33 0D 0A 09 72 6C 63 61 3A 20 72 6C 63 61 3A 20 3...rlca: rlca:
015FA0: 72 6C 63 61 3A 20 72 6C 63 61 3A 20 72 6C 63 61 rlca: rlca: rlca
015FB0: 09 3B 70 6F 73 69 74 69 6F 6E 20 62 69 74 73 20 .;position bits
015FC0: 35 2F 36 0D 0A 09 6C 64 20 65 2C 61 0D 0A 09 6C 5/6...ld e,a...l
015FD0: 64 20 68 6C 2C 72 65 67 35 3A 20 6C 64 20 61 2C d hl,reg5: ld a,
015FE0: 26 39 46 3A 20 61 6E 64 20 28 68 6C 29 09 3B 67 &9F: and (hl).;g
015FF0: 65 74 20 72 65 67 69 73 74 65 72 20 35 20 61 6E et register 5 an
016000: 3B 66 63 65 62 6C 09 64 73 20 31 30 09 09 3B 2B ;fcebl.ds 10..;+
016010: 39 30 09 65 76 65 6E 74 20 62 6C 6F 63 6B 0D 0A 90.event block..
016020: 0D 0A 3B 66 65 72 72 09 64 62 20 30 09 09 3B 2B ..;ferr.db 0..;+
016030: 31 30 30 09 66 69 6C 65 20 65 72 72 6F 72 3F 0D 100.file error?.
016040: 0A 3B 66 62 6C 6F 63 6B 09 64 62 20 30 09 09 3B .;fblock.db 0..;
016050: 2B 31 30 31 09 65 78 70 65 63 74 65 64 20 62 6C +101.expected bl
016060: 6F 63 6B 0D 0A 3B 62 6C 6F 63 6B 6C 09 64 77 20 ock..;blockl.dw
016070: 30 09 09 3B 2B 31 30 32 09 62 6C 6F 63 6B 20 6C 0..;+102.block l
016080: 65 6E 67 74 68 20 28 31 32 38 2F 31 30 32 34 29 ength (128/1024)
016090: 0D 0A 3B 6E 63 72 09 64 62 20 26 31 35 09 09 3B ..;ncr.db &15..;
0160A0: 2B 31 30 34 09 4E 41 4B 20 6F 72 20 22 43 22 0D +104.NAK or "C".
0160B0: 0A 3B 70 73 74 61 74 09 64 62 20 30 09 09 3B 2B .;pstat.db 0..;+
0160C0: 31 30 35 09 70 72 69 6E 74 65 64 20 43 52 43 2F 105.printed CRC/
0160D0: 63 68 65 63 6B 73 75 6D 3F 0D 0A 3B 79 6D 6F 64 checksum?..;ymod
0160E0: 65 6D 09 64 62 20 30 09 09 3B 2B 31 30 36 09 75 em.db 0..;+106.u
0160F0: 73 69 6E 67 20 59 4D 6F 64 65 6D 2D 62 61 74 63 sing YModem-batc
016100: 68 3F 0D 0A 3B 73 70 65 63 70 09 64 62 20 30 09 h?..;specp.db 0.
016110: 09 3B 2B 31 30 37 09 73 70 65 63 69 66 69 65 64 .;+107.specified
016120: 20 70 72 6F 74 6F 63 6F 6C 20 28 30 20 58 4D 6F protocol (0 XMo
016130: 64 65 6D 2C 20 31 20 58 2D 31 6B 2C 20 32 20 59 dem, 1 X-1k, 2 Y
016140: 4D 6F 64 65 6D 29 0D 0A 0D 0A 3B 76 74 35 32 69 Modem)....;vt52i
016150: 09 64 62 20 30 09 09 3B 2B 31 30 38 09 56 54 35 .db 0..;+108.VT5
016160: 32 20 63 6F 6E 74 72 6F 6C 20 63 6F 64 65 73 20 2 control codes
016170: 6C 65 66 74 20 74 6F 20 72 65 63 65 69 76 65 0D left to receive.
016180: 0A 3B 76 74 6D 6F 64 65 09 64 62 20 30 09 09 3B .;vtmode.db 0..;
016190: 2B 31 30 39 09 77 2D 69 6E 64 6F 77 2F 63 2D 75 +109.w-indow/c-u
0161A0: 72 73 6F 72 20 74 6F 20 62 65 20 73 65 74 3F 0D rsor to be set?.
0161B0: 0A 3B 76 74 63 73 74 09 64 77 20 26 31 30 31 09 .;vtcst.dw &101.
0161C0: 09 3B 2B 31 31 30 09 63 75 72 73 6F 72 20 73 61 .;+110.cursor sa
0161D0: 76 69 6E 67 20 70 6F 73 69 74 69 6F 6E 0D 0A 3B ving position..;
0161E0: 76 74 74 6D 70 09 64 73 20 34 09 09 3B 2B 31 31 vttmp.ds 4..;+11
0161F0: 32 09 74 65 6D 70 6F 72 61 72 79 20 76 61 72 69 2.temporary vari
016200: 64 20 73 74 72 69 70 20 6F 75 74 20 64 61 74 61 d strip out data
016210: 20 62 69 74 73 0D 0A 09 6F 72 20 65 3A 20 6C 64 bits...or e: ld
016220: 20 28 68 6C 29 2C 61 09 09 09 3B 70 75 74 20 69 (hl),a...;put i
016230: 6E 20 6E 65 77 20 64 61 74 61 20 62 69 74 73 0D n new data bits.
016240: 0A 09 6C 64 20 64 2C 35 3A 20 63 61 6C 6C 20 70 ..ld d,5: call p
016250: 72 65 67 09 09 3B 61 6E 64 20 70 72 6F 67 72 61 reg..;and progra
016260: 6D 0D 0A 0D 0A 09 6C 64 20 61 2C 65 3A 20 72 6C m.....ld a,e: rl
016270: 63 61 09 09 09 3B 70 6F 73 69 74 69 6F 6E 20 62 ca...;position b
016280: 69 74 73 20 36 2F 37 0D 0A 09 6C 64 20 65 2C 61 its 6/7...ld e,a
016290: 0D 0A 09 6C 64 20 68 6C 2C 72 65 67 33 3A 20 6C ...ld hl,reg3: l
0162A0: 64 20 61 2C 26 33 46 3A 20 61 6E 64 20 28 68 6C d a,&3F: and (hl
0162B0: 29 09 3B 67 65 74 20 72 65 67 69 73 74 65 72 20 ).;get register
0162C0: 33 20 61 6E 64 20 73 74 72 69 70 20 6F 75 74 20 3 and strip out
0162D0: 64 61 74 61 20 62 69 74 73 0D 0A 09 6F 72 20 65 data bits...or e
0162E0: 3A 20 6C 64 20 28 68 6C 29 2C 61 09 09 09 3B 70 : ld (hl),a...;p
0162F0: 75 74 20 69 6E 20 6E 65 77 20 64 61 74 61 20 62 ut in new data b
016300: 69 74 73 0D 0A 09 6C 64 20 64 2C 33 3A 20 63 61 its...ld d,3: ca
016310: 6C 6C 20 70 72 65 67 09 09 3B 61 6E 64 20 70 72 ll preg..;and pr
016320: 6F 67 72 61 6D 0D 0A 0D 0A 09 6C 64 20 61 2C 28 ogram.....ld a,(
016330: 69 78 29 3A 20 72 6C 63 61 3A 20 72 6C 63 61 09 ix): rlca: rlca.
016340: 09 3B 62 69 74 73 20 32 2F 33 20 6E 6F 77 20 73 .;bits 2/3 now s
016350: 74 6F 70 20 62 69 74 73 0D 0A 09 6F 72 20 28 69 top bits...or (i
016360: 78 2B 32 29 09 09 09 3B 62 69 74 73 20 30 2F 31 x+2)...;bits 0/1
016370: 20 6E 6F 77 20 70 61 72 69 74 79 0D 0A 09 73 65 now parity...se
016380: 74 20 36 2C 61 09 09 09 09 3B 73 65 74 20 62 69 t 6,a....;set bi
016390: 74 20 36 20 28 22 63 6C 6F 63 6B 20 6D 6F 64 65 t 6 ("clock mode
0163A0: 22 21 29 0D 0A 09 6C 64 20 64 2C 34 3A 20 6A 70 "!)...ld d,4: jp
0163B0: 20 70 72 65 67 09 09 09 3B 70 72 6F 67 72 61 6D preg...;program
0163C0: 20 72 65 67 69 73 74 65 72 20 34 0D 0A 0D 0A 09 register 4.....
0163D0: 65 6E 64 69 66 0D 0A 0D 0A 09 3B 3E 3E 3E 20 50 endif.....;>>> P
0163E0: 52 4F 47 52 41 4D 20 63 6F 6D 6D 61 6E 64 0D 0A ROGRAM command..
0163F0: 0D 0A 2E 70 72 6F 67 5F 69 09 69 66 20 6B 64 73 ...prog_i.if kds
016400: 61 62 6C 65 20 73 70 61 63 65 0D 0A 0D 0A 3B 62 able space....;b
016410: 75 66 66 65 72 09 64 73 20 32 35 36 09 09 3B 2B uffer.ds 256..;+
016420: 31 31 36 09 69 6E 74 65 72 72 75 70 74 20 62 75 116.interrupt bu
016430: 66 66 65 72 0D 0A 0D 0A 3B 61 63 72 65 64 09 64 ffer....;acred.d
016440: 73 20 36 09 09 3B 2B 33 37 32 09 61 63 74 75 61 s 6..;+372.actua
016450: 6C 20 72 65 64 69 72 65 63 74 69 6F 6E 20 63 6F l redirection co
016460: 64 65 0D 0A 09 09 09 3B 2B 33 38 36 09 65 6E 64 de.....;+386.end
016470: 20 6F 66 20 76 61 72 69 61 62 6C 65 20 73 70 61 of variable spa
016480: 63 65 0D 0A 1A 4D 53 20 20 20 24 24 24 FF 00 FF ce...MS $$$...
016490: 20 69 66 31 3A 20 70 72 69 6E 74 20 22 50 61 73 if1: print "Pas
0164A0: 73 20 31 22 3A 20 65 6C 73 65 3A 20 70 72 69 6E s 1": else: prin
0164B0: 74 20 22 50 61 73 73 20 32 22 3A 20 65 6E 64 69 t "Pass 2": endi
0164C0: 66 3A 20 70 72 69 6E 74 0D 0A 0D 0A 09 3B 43 68 f: print.....;Ch
0164D0: 61 72 6C 65 79 27 73 20 43 6F 6D 6D 73 20 52 4F arley's Comms RO
0164E0: 4D 0D 0A 09 3B 64 65 76 65 6C 6F 70 6D 65 6E 74 M...;development
0164F0: 20 76 65 72 73 69 6F 6E 0D 0A 0D 0A 09 6F 72 67 version.....org
016500: 68 3F 0D 0A 3B 73 70 65 63 70 09 64 62 20 30 09 h?..;specp.db 0.
016510: 09 3B 2B 31 30 37 09 73 70 65 63 69 66 69 65 64 .;+107.specified
016520: 20 70 72 6F 74 6F 63 6F 6C 20 28 30 20 58 4D 6F protocol (0 XMo
016530: 64 65 6D 2C 20 31 20 58 2D 31 6B 2C 20 32 20 59 dem, 1 X-1k, 2 Y
016540: 4D 6F 64 65 6D 29 0D 0A 0D 0A 3B 76 74 35 32 69 Modem)....;vt52i
016550: 09 64 62 20 30 09 09 3B 2B 31 30 38 09 56 54 35 .db 0..;+108.VT5
016560: 32 20 63 6F 6E 74 72 6F 6C 20 63 6F 64 65 73 20 2 control codes
016570: 6C 65 66 74 20 74 6F 20 72 65 63 65 69 76 65 0D left to receive.
016580: 0A 3B 76 74 6D 6F 64 65 09 64 62 20 30 09 09 3B .;vtmode.db 0..;
016590: 2B 31 30 39 09 77 2D 69 6E 64 6F 77 2F 63 2D 75 +109.w-indow/c-u
0165A0: 72 73 6F 72 20 74 6F 20 62 65 20 73 65 74 3F 0D rsor to be set?.
0165B0: 0A 3B 76 74 63 73 74 09 64 77 20 26 31 30 31 09 .;vtcst.dw &101.
0165C0: 09 3B 2B 31 31 30 09 63 75 72 73 6F 72 20 73 61 .;+110.cursor sa
0165D0: 76 69 6E 67 20 70 6F 73 69 74 69 6F 6E 0D 0A 3B ving position..;
0165E0: 76 74 74 6D 70 09 64 73 20 34 09 09 3B 2B 31 31 vttmp.ds 4..;+11
0165F0: 32 09 74 65 6D 70 6F 72 61 72 79 20 76 61 72 69 2.temporary vari
016600: 3A 09 6C 64 20 63 2C 32 3A 20 63 70 20 31 3A 20 :.ld c,2: cp 1:
016610: 6A 70 20 6E 7A 2C 65 72 72 6F 72 0D 0A 09 65 6C jp nz,error...el
016620: 73 65 3A 09 6C 64 20 63 2C 32 3A 20 63 70 20 32 se:.ld c,2: cp 2
016630: 3A 20 6A 70 20 6E 7A 2C 65 72 72 6F 72 20 3B 65 : jp nz,error ;e
016640: 72 72 6F 72 20 32 20 69 66 20 77 72 6F 6E 67 20 rror 2 if wrong
016650: 6E 6F 2E 20 6F 66 20 70 61 72 61 6D 65 74 65 72 no. of parameter
016660: 73 0D 0A 09 09 64 65 63 20 63 3A 20 6C 64 20 64 s....dec c: ld d
016670: 2C 28 69 78 2B 32 29 0D 0A 09 09 6C 64 20 61 2C ,(ix+2)....ld a,
016680: 35 3A 20 63 70 20 64 3A 20 6A 70 20 6D 2C 65 72 5: cp d: jp m,er
016690: 72 6F 72 20 20 3B 65 72 72 6F 72 20 31 20 69 66 ror ;error 1 if
0166A0: 20 6E 6F 74 20 30 2D 35 20 28 41 6D 73 74 72 61 not 0-5 (Amstra
0166B0: 64 29 0D 0A 09 65 6E 64 69 66 3A 09 6C 64 20 61 d)...endif:.ld a
0166C0: 2C 28 69 78 29 3A 20 6A 70 20 70 72 65 67 0D 0A ,(ix): jp preg..
0166D0: 0D 0A 09 3B 3E 3E 3E 20 52 45 41 44 20 63 6F 6D ...;>>> READ com
0166E0: 6D 61 6E 64 0D 0A 0D 0A 2E 72 65 61 64 5F 69 09 mand.....read_i.
0166F0: 69 66 20 6B 64 73 3A 09 6C 64 20 63 2C 32 3A 20 if kds:.ld c,2:
016700: 63 70 20 31 3A 20 6A 70 20 6E 7A 2C 65 72 72 6F cp 1: jp nz,erro
016710: 72 0D 0A 09 65 6C 73 65 3A 09 6C 64 20 63 2C 32 r...else:.ld c,2
016720: 3A 20 63 70 20 32 3A 20 6A 70 20 6E 7A 2C 65 72 : cp 2: jp nz,er
016730: 72 6F 72 20 3B 65 72 72 6F 72 20 32 20 69 66 20 ror ;error 2 if
016740: 77 72 6F 6E 67 20 6E 6F 2E 20 6F 66 20 70 61 72 wrong no. of par
016750: 61 6D 65 74 65 72 73 0D 0A 09 09 64 65 63 20 63 ameters....dec c
016760: 3A 20 6C 64 20 64 2C 28 69 78 2B 32 29 0D 0A 09 : ld d,(ix+2)...
016770: 09 6C 64 20 61 2C 32 3A 20 63 70 20 64 3A 20 6A .ld a,2: cp d: j
016780: 70 20 6D 2C 65 72 72 6F 72 20 20 3B 65 72 72 6F p m,error ;erro
016790: 72 20 31 20 69 66 20 6E 6F 74 20 30 2D 32 20 28 r 1 if not 0-2 (
0167A0: 41 6D 73 74 72 61 64 29 0D 0A 09 65 6E 64 69 66 Amstrad)...endif
0167B0: 0D 0A 0D 0A 09 63 61 6C 6C 20 72 72 65 67 0D 0A .....call rreg..
0167C0: 09 6C 64 20 6C 2C 28 69 78 29 3A 20 6C 64 20 68 .ld l,(ix): ld h
0167D0: 2C 28 69 78 2B 31 29 0D 0A 09 6C 64 20 28 68 6C ,(ix+1)...ld (hl
0167E0: 29 2C 61 3A 20 72 65 74 0D 0A 0D 0A 09 3B 3E 3E ),a: ret.....;>>
0167F0: 3E 20 53 45 52 49 41 4C 20 63 6F 6D 6D 61 6E 64 > SERIAL command
016800: 0D 0A 09 3B 2A 2A 2A 20 43 4F 4E 54 52 4F 4C 2E ...;*** CONTROL.
016810: 4D 4F 44 20 2A 2A 2A 0D 0A 0D 0A 09 3B 3E 3E 3E MOD ***.....;>>>
016820: 20 42 41 55 44 20 63 6F 6D 6D 61 6E 64 0D 0A 0D BAUD command...
016830: 0A 2E 62 61 75 64 5F 69 09 6C 64 20 6C 2C 28 69 ..baud_i.ld l,(i
016840: 78 29 3A 20 6C 64 20 68 2C 28 69 78 2B 31 29 0D x): ld h,(ix+1).
016850: 0A 09 6C 64 20 63 2C 32 3A 20 63 70 20 63 3A 20 ..ld c,2: cp c:
016860: 6A 70 20 7A 2C 67 65 74 72 78 0D 0A 09 63 70 20 jp z,getrx...cp
016870: 31 3A 20 6A 70 20 6E 7A 2C 65 72 72 6F 72 0D 0A 1: jp nz,error..
016880: 09 6C 64 20 65 2C 6C 3A 20 6C 64 20 64 2C 68 3A .ld e,l: ld d,h:
016890: 20 6A 70 20 67 6F 74 62 70 0D 0A 2E 67 65 74 72 jp gotbp...getr
0168A0: 78 09 6C 64 20 65 2C 28 69 78 2B 32 29 3A 20 6C x.ld e,(ix+2): l
0168B0: 64 20 64 2C 28 69 78 2B 33 29 0D 0A 2E 67 6F 74 d d,(ix+3)...got
0168C0: 62 70 09 63 61 6C 6C 20 62 63 6F 6E 76 3A 20 65 bp.call bconv: e
0168D0: 78 20 64 65 2C 68 6C 3A 20 63 61 6C 6C 20 62 63 x de,hl: call bc
0168E0: 6F 6E 76 0D 0A 09 64 69 3A 20 6C 64 20 62 63 2C onv...di: ld bc,
0168F0: 77 6D 6F 64 3A 20 6C 64 20 61 2C 26 37 36 3A 20 wmod: ld a,&76:
016900: 6F 75 74 20 28 63 29 2C 61 0D 0A 09 6C 64 20 62 out (c),a...ld b
016910: 63 2C 73 70 65 64 31 3A 20 6F 75 74 20 28 63 29 c,sped1: out (c)
016920: 2C 65 3A 20 6F 75 74 20 28 63 29 2C 64 0D 0A 09 ,e: out (c),d...
016930: 6C 64 20 62 63 2C 77 6D 6F 64 3A 20 6C 64 20 61 ld bc,wmod: ld a
016940: 2C 26 33 36 3A 20 6F 75 74 20 28 63 29 2C 61 0D ,&36: out (c),a.
016950: 0A 09 6C 64 20 62 63 2C 73 70 65 64 30 3A 20 6F ..ld bc,sped0: o
016960: 75 74 20 28 63 29 2C 6C 3A 20 6F 75 74 20 28 63 ut (c),l: out (c
016970: 29 2C 68 0D 0A 09 65 69 3A 20 72 65 74 0D 0A 0D ),h...ei: ret...
016980: 0A 0D 0A 09 3B 3E 3E 3E 20 57 4F 52 44 20 63 6F ....;>>> WORD co
016990: 6D 6D 61 6E 64 0D 0A 09 3B 20 20 20 20 28 7C 57 mmand...; (|W
0169A0: 4F 52 44 2C 64 61 74 61 2C 70 61 72 69 74 79 2C ORD,data,parity,
0169B0: 73 74 6F 70 29 0D 0A 09 3B 20 20 20 20 20 20 20 stop)...;
0169C0: 20 20 20 20 20 7C 20 20 20 20 7C 20 20 20 20 20 | |
0169D0: 20 7C 0D 0A 09 3B 20 20 20 20 20 20 20 20 20 20 |...;
0169E0: 20 37 2F 38 20 20 30 2F 31 2F 32 20 20 31 2F 32 7/8 0/1/2 1/2
0169F0: 0D 0A 09 3B 20 20 20 20 20 20 20 20 20 20 20 20 ...;
016A00: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
016A10: 13 00 01 00 02 09 4E E5 13 00 C4 02 00 00 00 02 ......N.........
016A20: 13 00 C9 02 00 00 00 02 13 00 C5 02 00 00 00 02 ................
016A30: 13 00 C1 02 00 00 00 02 13 00 C6 02 00 00 00 02 ................
016A40: 13 00 C2 02 00 00 00 02 13 00 C7 02 00 00 00 02 ................
016A50: 13 00 C3 02 00 00 00 02 13 00 C8 02 00 00 00 02 ................
016A60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
016A70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
016A80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
016A90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
016AA0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
016AB0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
016AC0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
016AD0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
016AE0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
016AF0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
016B00: 0D 0A 09 3B 2A 2A 2A 20 46 49 4C 45 2E 4D 4F 44 ...;*** FILE.MOD
016B10: 20 2A 2A 2A 0D 0A 0D 0A 09 3B 3E 3E 3E 20 44 4F ***.....;>>> DO
016B20: 57 4E 4C 4F 41 44 20 63 6F 6D 6D 61 6E 64 0D 0A WNLOAD command..
016B30: 0D 0A 2E 64 6E 6C 64 5F 69 09 63 61 6C 6C 20 62 ...dnld_i.call b
016B40: 75 66 66 5F 63 0D 0A 09 6C 64 20 28 69 79 2B 34 uff_c...ld (iy+4
016B50: 32 29 2C 61 09 09 09 3B 6E 75 6D 62 65 72 20 6F 2),a...;number o
016B60: 66 20 70 61 72 61 6D 65 74 65 72 73 0D 0A 09 6C f parameters...l
016B70: 64 20 6C 2C 61 3A 20 6C 64 20 68 2C 30 3A 20 61 d l,a: ld h,0: a
016B80: 64 64 20 68 6C 2C 68 6C 3A 20 65 78 20 64 65 2C dd hl,hl: ex de,
016B90: 68 6C 0D 0A 09 61 64 64 20 69 78 2C 64 65 09 09 hl...add ix,de..
016BA0: 09 3B 49 58 20 70 6F 69 6E 74 73 20 74 6F 20 31 .;IX points to 1
016BB0: 73 74 20 70 61 72 61 6D 65 74 65 72 0D 0A 09 70 st parameter...p
016BC0: 75 73 68 20 69 78 3A 20 70 6F 70 20 68 6C 0D 0A ush ix: pop hl..
016BD0: 09 6C 64 20 28 69 79 2B 34 33 29 2C 6C 3A 20 6C .ld (iy+43),l: l
016BE0: 64 20 28 69 79 2B 34 34 29 2C 68 09 3B 49 58 20 d (iy+44),h.;IX
016BF0: 3D 3E 20 61 64 64 72 65 73 73 20 6F 66 20 70 61 => address of pa
016C00: 72 61 6D 65 74 65 72 73 0D 0A 0D 0A 09 63 61 6C rameters.....cal
016C10: 6C 20 67 66 6E 61 6D 65 0D 0A 09 6A 72 20 6E 7A l gfname...jr nz
016C20: 2C 69 6E 69 74 09 09 09 3B 69 66 20 66 69 6C 65 ,init...;if file
016C30: 6E 61 6D 65 20 73 70 65 63 69 66 69 65 64 20 75 name specified u
016C40: 73 65 20 74 68 61 74 0D 0A 0D 0A 09 70 75 73 68 se that.....push
016C50: 20 69 79 3A 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 iy: pop hl...ld
016C60: 20 64 65 2C 34 35 3A 20 61 64 64 20 68 6C 2C 64 de,45: add hl,d
016C70: 65 09 09 3B 65 6C 73 65 20 75 73 65 20 22 44 4F e..;else use "DO
016C80: 57 4E 4C 4F 41 44 2E 22 0D 0A 09 6C 64 20 62 2C WNLOAD."...ld b,
016C90: 39 0D 0A 0D 0A 2E 69 6E 69 74 09 78 6F 72 20 61 9.....init.xor a
016CA0: 0D 0A 09 6C 64 20 28 69 79 2B 31 30 36 29 2C 61 ...ld (iy+106),a
016CB0: 09 09 09 3B 59 4D 6F 64 65 6D 20 6F 66 66 20 61 ...;YModem off a
016CC0: 73 20 64 65 66 61 75 6C 74 0D 0A 09 6C 64 20 28 s default...ld (
016CD0: 69 79 2B 31 30 35 29 2C 61 09 09 09 3B 43 52 43 iy+105),a...;CRC
016CE0: 2F 63 68 65 63 6B 73 75 6D 20 6E 6F 74 20 70 72 /checksum not pr
016CF0: 69 6E 74 65 64 20 79 65 74 0D 0A 0D 0A 2E 6F 70 inted yet.....op
016D00: 0A 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 31 30 34 ....ld a,(iy+104
016D10: 29 3A 20 63 70 20 26 31 35 3A 20 6A 72 20 7A 2C ): cp &15: jr z,
016D20: 63 68 6B 63 68 6B 09 3B 43 52 43 2F 63 68 6B 3F chkchk.;CRC/chk?
016D30: 0D 0A 0D 0A 09 63 61 6C 6C 20 67 65 74 62 74 09 .....call getbt.
016D40: 09 09 3B 67 65 74 20 43 52 43 0D 0A 09 6C 64 20 ..;get CRC...ld
016D50: 65 2C 61 3A 20 63 61 6C 6C 20 63 72 63 0D 0A 0D e,a: call crc...
016D60: 0A 09 63 61 6C 6C 20 67 65 74 62 74 09 09 09 3B ..call getbt...;
016D70: 61 6E 64 20 63 68 65 63 6B 20 61 67 61 69 6E 73 and check agains
016D80: 74 20 6F 75 72 20 76 61 6C 75 65 0D 0A 09 6C 64 t our value...ld
016D90: 20 65 2C 61 3A 20 63 61 6C 6C 20 63 72 63 0D 0A e,a: call crc..
016DA0: 0D 0A 09 6C 64 20 61 2C 68 3A 20 6F 72 20 6C 3A ...ld a,h: or l:
016DB0: 20 63 61 6C 6C 20 6E 7A 2C 73 66 65 72 72 09 3B call nz,sferr.;
016DC0: 65 72 72 6F 72 3F 0D 0A 09 6A 72 20 61 63 74 6F error?...jr acto
016DD0: 6E 0D 0A 0D 0A 2E 63 68 6B 63 68 6B 09 63 61 6C n.....chkchk.cal
016DE0: 6C 20 67 65 74 62 74 09 09 09 3B 63 68 65 63 6B l getbt...;check
016DF0: 20 63 68 65 63 6B 73 75 6D 21 0D 0A 09 63 70 20 checksum!...cp
016E00: 68 3A 20 63 61 6C 6C 20 6E 7A 2C 73 66 65 72 72 h: call nz,sferr
016E10: 0D 0A 0D 0A 2E 61 63 74 6F 6E 09 6C 64 20 61 2C .....acton.ld a,
016E20: 28 69 79 2B 31 30 35 29 09 09 09 3B 2A 2A 2A 20 (iy+105)...;***
016E30: 70 72 69 6E 74 20 62 6C 6F 63 6B 20 6E 75 6D 62 print block numb
016E40: 65 72 2C 20 64 65 74 61 69 6C 73 0D 0A 09 6F 72 er, details...or
016E50: 20 28 69 79 2B 31 30 36 29 3A 20 6A 72 20 6E 7A (iy+106): jr nz
016E60: 2C 6E 70 73 74 61 74 20 09 3B 64 6F 20 77 65 20 ,npstat .;do we
016E70: 6E 65 65 64 20 74 6F 20 70 72 69 6E 74 20 74 65 need to print te
016E80: 78 74 3F 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 31 xt?...ld a,(iy+1
016E90: 30 34 29 0D 0A 09 6C 64 20 68 6C 2C 63 68 6B 74 04)...ld hl,chkt
016EA0: 78 74 0D 0A 09 63 70 20 22 43 22 3A 20 6A 72 20 xt...cp "C": jr
016EB0: 6E 7A 2C 70 70 73 74 72 0D 0A 09 6C 64 20 68 6C nz,ppstr...ld hl
016EC0: 2C 63 72 63 74 78 74 0D 0A 2E 70 70 73 74 72 09 ,crctxt...ppstr.
016ED0: 63 61 6C 6C 20 73 74 72 69 6E 67 09 09 09 3B 69 call string...;i
016EE0: 66 20 73 6F 2C 20 74 68 65 6E 20 70 72 69 6E 74 f so, then print
016EF0: 20 43 52 43 2F 63 68 65 63 6B 73 75 6D 20 74 65 CRC/checksum te
016F00: 5F 6F 75 74 09 6C 64 20 65 2C 28 69 79 2B 37 29 _out.ld e,(iy+7)
016F10: 3A 20 6C 64 20 64 2C 28 69 79 2B 38 29 09 3B 2A : ld d,(iy+8).;*
016F20: 2A 2A 20 6F 70 65 6E 20 66 69 72 73 74 20 6F 75 ** open first ou
016F30: 74 70 75 74 20 66 69 6C 65 0D 0A 09 70 75 73 68 tput file...push
016F40: 20 68 6C 3A 20 6C 64 20 68 6C 2C 31 30 32 34 3A hl: ld hl,1024:
016F50: 20 61 64 64 20 68 6C 2C 64 65 3A 20 65 78 20 64 add hl,de: ex d
016F60: 65 2C 68 6C 0D 0A 09 70 6F 70 20 68 6C 09 09 09 e,hl...pop hl...
016F70: 09 3B 44 45 20 63 6F 6E 74 61 69 6E 73 20 62 75 .;DE contains bu
016F80: 66 66 65 72 20 61 64 64 72 65 73 73 2C 20 48 4C ffer address, HL
016F90: 20 66 69 6C 65 6E 61 6D 65 20 61 64 64 72 65 73 filename addres
016FA0: 73 0D 0A 09 63 61 6C 6C 20 26 42 43 38 43 09 09 s...call &BC8C..
016FB0: 09 3B 43 41 53 20 4F 55 54 20 4F 50 45 4E 0D 0A .;CAS OUT OPEN..
016FC0: 09 63 61 6C 6C 20 6E 63 2C 63 61 6E 79 65 73 09 .call nc,canyes.
016FD0: 09 09 3B 61 62 6F 72 74 20 69 66 20 65 72 72 6F ..;abort if erro
016FE0: 72 0D 0A 0D 0A 2E 72 62 6C 6F 63 6B 20 6C 64 20 r.....rblock ld
016FF0: 61 2C 31 3A 20 6C 64 20 28 69 79 2B 31 30 31 29 a,1: ld (iy+101)
017000: 2C 61 09 09 3B 73 65 74 20 62 6C 6F 63 6B 20 74 ,a..;set block t
017010: 6F 20 31 0D 0A 0D 0A 2E 73 74 72 61 6E 73 20 78 o 1.....strans x
017020: 6F 72 20 61 3A 20 6C 64 20 28 69 79 2B 31 30 30 or a: ld (iy+100
017030: 29 2C 61 09 09 3B 6E 6F 20 66 69 6C 65 20 65 72 ),a..;no file er
017040: 72 6F 72 0D 0A 0D 0A 09 6C 64 20 6C 2C 37 09 09 ror.....ld l,7..
017050: 09 09 3B 37 20 72 65 74 72 69 65 73 20 62 65 66 ..;7 retries bef
017060: 6F 72 65 20 73 77 69 74 63 68 69 6E 67 20 74 6F ore switching to
017070: 20 4E 41 4B 0D 0A 0D 0A 09 6C 64 20 61 2C 22 43 NAK.....ld a,"C
017080: 22 3A 20 6C 64 20 28 69 79 2B 31 30 34 29 2C 61 ": ld (iy+104),a
017090: 09 09 3B 64 65 66 61 75 6C 74 20 69 73 20 43 20 ..;default is C
0170A0: 5B 43 52 43 5D 0D 0A 0D 0A 2E 73 6E 64 6E 61 6B [CRC].....sndnak
0170B0: 09 64 65 63 20 6C 3A 20 6A 72 20 6E 7A 2C 6E 6F .dec l: jr nz,no
0170C0: 73 6E 61 6B 0D 0A 09 6C 64 20 61 2C 26 31 35 3A snak...ld a,&15:
0170D0: 20 6C 64 20 28 69 79 2B 31 30 34 29 2C 61 0D 0A ld (iy+104),a..
0170E0: 0D 0A 2E 6E 6F 73 6E 61 6B 09 6C 64 20 61 2C 28 ...nosnak.ld a,(
0170F0: 69 79 2B 31 30 34 29 3A 20 63 61 6C 6C 20 73 65 iy+104): call se
017100: 0D 0A 0D 0A 2E 73 65 72 5F 69 09 70 75 73 68 20 .....ser_i.push
017110: 69 79 3A 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 20 iy: pop hl...ld
017120: 64 65 2C 33 37 32 3A 20 61 64 64 20 68 6C 2C 64 de,372: add hl,d
017130: 65 0D 0A 0D 0A 09 6C 64 20 69 78 2C 26 42 44 46 e.....ld ix,&BDF
017140: 31 0D 0A 09 6C 64 20 28 69 78 29 2C 26 43 33 0D 1...ld (ix),&C3.
017150: 0A 09 6C 64 20 28 69 78 2B 31 29 2C 6C 0D 0A 09 ..ld (ix+1),l...
017160: 6C 64 20 28 69 78 2B 32 29 2C 68 0D 0A 09 72 65 ld (ix+2),h...re
017170: 74 0D 0A 0D 0A 09 3B 3E 3E 3E 20 50 41 52 41 4C t.....;>>> PARAL
017180: 4C 45 4C 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E LEL command.....
017190: 70 61 72 5F 69 09 70 75 73 68 20 69 79 3A 20 70 par_i.push iy: p
0171A0: 6F 70 20 68 6C 0D 0A 09 6C 64 20 64 65 2C 33 33 op hl...ld de,33
0171B0: 3A 20 61 64 64 20 68 6C 2C 64 65 0D 0A 09 6C 64 : add hl,de...ld
0171C0: 20 64 65 2C 26 42 44 46 31 0D 0A 09 6C 64 69 3A de,&BDF1...ldi:
0171D0: 20 6C 64 69 3A 20 6C 64 69 0D 0A 09 72 65 74 0D ldi: ldi...ret.
0171E0: 0A 0D 0A 09 3B 3E 3E 3E 20 43 55 52 53 4F 52 20 ....;>>> CURSOR
0171F0: 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 63 75 72 73 command.....curs
017200: 5F 69 09 70 75 73 68 20 69 79 3A 20 70 6F 70 20 _i.push iy: pop
017210: 68 6C 0D 0A 09 69 6E 63 20 68 6C 3A 20 69 6E 63 hl...inc hl: inc
017220: 20 68 6C 09 09 09 3B 48 4C 20 3D 20 49 59 2B 32 hl...;HL = IY+2
017230: 20 3D 20 63 75 72 73 74 0D 0A 2E 6F 6E 5F 6F 66 = curst...on_of
017240: 66 09 6C 64 20 63 2C 32 0D 0A 09 63 70 20 31 3A f.ld c,2...cp 1:
017250: 20 6A 70 20 6E 7A 2C 65 72 72 6F 72 0D 0A 09 64 jp nz,error...d
017260: 65 63 20 63 0D 0A 09 6C 64 20 61 2C 28 69 78 29 ec c...ld a,(ix)
017270: 0D 0A 09 6F 72 20 61 3A 20 6A 70 20 7A 2C 63 73 ...or a: jp z,cs
017280: 6F 6B 0D 0A 09 63 70 20 31 3A 20 6A 70 20 6E 7A ok...cp 1: jp nz
017290: 2C 65 72 72 6F 72 0D 0A 2E 63 73 6F 6B 09 6C 64 ,error...csok.ld
0172A0: 20 28 68 6C 29 2C 61 0D 0A 09 72 65 74 0D 0A 0D (hl),a...ret...
0172B0: 0A 09 3B 3E 3E 3E 20 43 52 20 63 6F 6D 6D 61 6E ..;>>> CR comman
0172C0: 64 0D 0A 0D 0A 2E 73 64 63 72 5F 69 09 70 75 73 d.....sdcr_i.pus
0172D0: 68 20 69 79 3A 20 70 6F 70 20 68 6C 0D 0A 09 69 h iy: pop hl...i
0172E0: 6E 63 20 68 6C 3A 20 69 6E 63 20 68 6C 3A 20 69 nc hl: inc hl: i
0172F0: 6E 63 20 68 6C 09 09 3B 48 4C 20 3D 20 49 59 2B nc hl..;HL = IY+
017300: 6E 64 62 74 09 3B 4E 41 4B 20 5B 63 68 65 63 6B ndbt.;NAK [check
017310: 73 75 6D 5D 20 2F 20 43 20 5B 43 52 43 5D 0D 0A sum] / C [CRC]..
017320: 0D 0A 09 6C 64 20 64 65 2C 31 35 30 3A 20 63 61 ...ld de,150: ca
017330: 6C 6C 20 77 61 69 74 62 74 09 09 3B 2A 2A 2A 20 ll waitbt..;***
017340: 77 61 69 74 20 66 6F 72 20 72 65 73 70 6F 6E 73 wait for respons
017350: 65 0D 0A 0D 0A 09 63 70 20 32 3A 20 6A 72 20 7A e.....cp 2: jr z
017360: 2C 73 62 6C 6F 63 6B 09 09 3B 53 54 58 3F 20 5B ,sblock..;STX? [
017370: 58 4D 6F 64 65 6D 2D 31 6B 5D 0D 0A 09 63 70 20 XModem-1k]...cp
017380: 31 3A 20 6A 72 20 7A 2C 73 62 6C 6F 63 6B 09 09 1: jr z,sblock..
017390: 3B 53 4F 48 3F 20 5B 58 4D 6F 64 65 6D 2D 31 32 ;SOH? [XModem-12
0173A0: 38 5D 0D 0A 09 63 70 20 26 31 38 3A 20 63 61 6C 8]...cp &18: cal
0173B0: 6C 20 7A 2C 63 61 6E 79 65 73 09 09 3B 43 41 4E l z,canyes..;CAN
0173C0: 3F 20 5B 61 62 6F 72 74 5D 0D 0A 09 65 78 20 64 ? [abort]...ex d
0173D0: 65 2C 68 6C 3A 20 63 61 6C 6C 20 63 68 6B 63 61 e,hl: call chkca
0173E0: 6E 3A 20 65 78 20 64 65 2C 68 6C 09 3B 45 53 43 n: ex de,hl.;ESC
0173F0: 20 70 72 65 73 73 65 64 3F 20 5B 61 62 6F 72 74 pressed? [abort
017400: 5D 0D 0A 0D 0A 09 6A 72 20 73 6E 64 6E 61 6B 0D ].....jr sndnak.
017410: 0A 0D 0A 2E 73 62 6C 6F 63 6B 09 6C 64 20 62 63 ....sblock.ld bc
017420: 2C 31 30 32 34 09 09 09 3B 2A 2A 2A 20 73 74 61 ,1024...;*** sta
017430: 72 74 20 6F 66 20 72 65 63 65 69 76 69 6E 67 20 rt of receiving
017440: 62 6C 6F 63 6B 0D 0A 09 63 70 20 31 3A 20 6A 72 block...cp 1: jr
017450: 20 6E 7A 2C 6E 6F 74 31 32 38 0D 0A 09 6C 64 20 nz,not128...ld
017460: 62 63 2C 31 32 38 09 09 09 3B 63 61 6C 63 75 6C bc,128...;calcul
017470: 61 74 65 20 6C 65 6E 67 74 68 20 6F 66 20 62 6C ate length of bl
017480: 6F 63 6B 0D 0A 2E 6E 6F 74 31 32 38 09 6C 64 20 ock...not128.ld
017490: 28 69 79 2B 31 30 32 29 2C 63 3A 20 6C 64 20 28 (iy+102),c: ld (
0174A0: 69 79 2B 31 30 33 29 2C 62 09 3B 73 74 6F 72 65 iy+103),b.;store
0174B0: 20 62 6C 6F 63 6B 20 6C 65 6E 67 74 68 0D 0A 0D block length...
0174C0: 0A 09 63 61 6C 6C 20 67 65 74 62 74 09 09 09 3B ..call getbt...;
0174D0: 67 65 74 20 62 6C 6F 63 6B 20 6E 75 6D 62 65 72 get block number
0174E0: 0D 0A 0D 0A 09 6C 64 20 63 2C 61 3A 20 6C 64 20 .....ld c,a: ld
0174F0: 61 2C 28 69 79 2B 31 30 31 29 09 09 3B 41 20 3D a,(iy+101)..;A =
017500: 33 20 3D 20 63 72 0D 0A 09 6A 70 20 6F 6E 5F 6F 3 = cr...jp on_o
017510: 66 66 0D 0A 0D 0A 09 3B 3E 3E 3E 20 45 52 52 4F ff.....;>>> ERRO
017520: 52 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 65 72 R command.....er
017530: 72 73 5F 69 09 70 75 73 68 20 69 79 3A 20 70 6F rs_i.push iy: po
017540: 70 20 68 6C 09 09 09 3B 48 4C 20 3D 20 49 59 2B p hl...;HL = IY+
017550: 30 20 3D 20 64 6F 5F 65 72 72 0D 0A 09 6A 70 20 0 = do_err...jp
017560: 6F 6E 5F 6F 66 66 0D 0A 0D 0A 09 3B 3E 3E 3E 20 on_off.....;>>>
017570: 48 57 53 48 41 4B 45 20 63 6F 6D 6D 61 6E 64 0D HWSHAKE command.
017580: 0A 0D 0A 2E 73 68 6B 65 5F 69 09 69 66 20 6B 64 ....shke_i.if kd
017590: 73 3A 09 6C 64 20 63 2C 31 39 3A 20 6A 70 20 65 s:.ld c,19: jp e
0175A0: 72 72 6F 72 0D 0A 09 65 6C 73 65 3A 09 6C 64 20 rror...else:.ld
0175B0: 63 2C 32 3A 20 63 70 20 31 3A 20 6A 70 20 6E 7A c,2: cp 1: jp nz
0175C0: 2C 65 72 72 6F 72 0D 0A 09 09 64 65 63 20 63 0D ,error....dec c.
0175D0: 0A 09 09 6C 64 20 61 2C 28 69 78 29 3A 20 6F 72 ...ld a,(ix): or
0175E0: 20 61 3A 20 6A 72 20 7A 2C 68 77 6F 6B 0D 0A 09 a: jr z,hwok...
0175F0: 09 63 70 20 63 3A 20 6A 70 20 6E 7A 2C 65 72 72 .cp c: jp nz,err
017600: 6F 72 0D 0A 2E 68 77 6F 6B 09 09 72 6C 63 61 3A or...hwok..rlca:
017610: 20 72 6C 63 61 3A 20 72 6C 63 61 3A 20 72 6C 63 rlca: rlca: rlc
017620: 61 3A 20 72 6C 63 61 0D 0A 09 09 6C 64 20 63 2C a: rlca....ld c,
017630: 28 69 79 2B 31 31 29 09 09 3B 72 65 67 33 0D 0A (iy+11)..;reg3..
017640: 09 09 72 65 73 20 35 2C 63 0D 0A 09 09 6F 72 20 ..res 5,c....or
017650: 63 0D 0A 09 09 6C 64 20 28 69 79 2B 31 31 29 2C c....ld (iy+11),
017660: 61 0D 0A 09 09 6C 64 20 64 2C 33 3A 20 6A 70 20 a....ld d,3: jp
017670: 70 72 65 67 0D 0A 09 65 6E 64 69 66 0D 0A 0D 0A preg...endif....
017680: 09 3B 3E 3E 3E 20 42 52 45 41 4B 20 63 6F 6D 6D .;>>> BREAK comm
017690: 61 6E 64 0D 0A 0D 0A 2E 62 72 6B 5F 69 09 63 61 and.....brk_i.ca
0176A0: 6C 6C 20 26 42 44 31 39 0D 0A 09 69 66 20 6B 64 ll &BD19...if kd
0176B0: 73 3A 09 6C 64 20 61 2C 28 69 79 2B 31 31 29 3A s:.ld a,(iy+11):
0176C0: 20 6F 72 20 36 0D 0A 09 65 6C 73 65 3A 09 6C 64 or 6...else:.ld
0176D0: 20 61 2C 28 69 79 2B 31 32 29 3A 20 73 65 74 20 a,(iy+12): set
0176E0: 34 2C 61 3A 20 6C 64 20 64 2C 35 0D 0A 09 65 6E 4,a: ld d,5...en
0176F0: 64 69 66 3A 09 63 61 6C 6C 20 70 72 65 67 0D 0A dif:.call preg..
017700: 20 65 78 70 65 63 74 65 64 20 62 6C 6F 63 6B 0D expected block.
017710: 0A 09 63 70 20 63 09 09 09 09 3B 72 69 67 68 74 ..cp c....;right
017720: 20 62 6C 6F 63 6B 3F 0D 0A 09 6A 72 20 7A 2C 62 block?...jr z,b
017730: 6C 5F 6F 6B 0D 0A 0D 0A 09 63 70 20 31 09 09 09 l_ok.....cp 1...
017740: 09 3B 6F 74 68 65 72 77 69 73 65 2C 20 62 6C 6F .;otherwise, blo
017750: 63 6B 20 31 20 65 78 70 65 63 74 65 64 3F 0D 0A ck 1 expected?..
017760: 09 63 61 6C 6C 20 6E 7A 2C 73 66 65 72 72 3A 20 .call nz,sferr:
017770: 6A 72 20 6E 7A 2C 62 6C 5F 6F 6B 09 3B 69 66 20 jr nz,bl_ok.;if
017780: 6E 6F 74 2C 20 74 68 65 6E 20 74 68 65 72 65 27 not, then there'
017790: 73 20 61 6E 20 65 72 72 6F 72 0D 0A 0D 0A 09 6C s an error.....l
0177A0: 64 20 61 2C 63 3A 20 6F 72 20 61 09 09 09 3B 62 d a,c: or a...;b
0177B0: 6C 6F 63 6B 20 30 20 72 65 63 65 69 76 65 64 3F lock 0 received?
0177C0: 0D 0A 09 63 61 6C 6C 20 6E 7A 2C 73 66 65 72 72 ...call nz,sferr
0177D0: 3A 20 6A 72 20 6E 7A 2C 62 6C 5F 6F 6B 09 3B 69 : jr nz,bl_ok.;i
0177E0: 66 20 6E 6F 74 2C 20 74 68 65 6E 20 74 68 65 72 f not, then ther
0177F0: 65 27 73 20 61 6E 20 65 72 72 6F 72 0D 0A 0D 0A e's an error....
017800: 09 6C 64 20 28 69 79 2B 31 30 31 29 2C 61 09 09 .ld (iy+101),a..
017810: 09 3B 59 4D 6F 64 65 6D 20 62 6C 6F 63 6B 20 30 .;YModem block 0
017820: 0D 0A 09 6C 64 20 61 2C 31 3A 20 6C 64 20 28 69 ...ld a,1: ld (i
017830: 79 2B 31 30 36 29 2C 61 09 09 3B 73 65 74 20 59 y+106),a..;set Y
017840: 4D 6F 64 65 6D 20 74 6F 20 62 65 20 75 73 65 64 Modem to be used
017850: 0D 0A 0D 0A 2E 62 6C 5F 6F 6B 09 63 61 6C 6C 20 .....bl_ok.call
017860: 67 65 74 62 74 09 09 09 3B 67 65 74 20 63 6F 6D getbt...;get com
017870: 70 6C 65 6D 65 6E 74 20 6F 66 20 62 6C 6F 63 6B plement of block
017880: 20 6E 75 6D 62 65 72 0D 0A 0D 0A 09 63 70 6C 3A number.....cpl:
017890: 20 6C 64 20 63 2C 61 3A 20 6C 64 20 61 2C 28 69 ld c,a: ld a,(i
0178A0: 79 2B 31 30 31 29 09 3B 63 6F 6D 70 6C 65 6D 65 y+101).;compleme
0178B0: 6E 74 20 77 68 61 74 20 77 65 27 76 65 20 67 6F nt what we've go
0178C0: 74 0D 0A 09 63 70 20 63 3A 20 63 61 6C 6C 20 6E t...cp c: call n
0178D0: 7A 2C 73 66 65 72 72 09 09 3B 69 66 20 64 69 66 z,sferr..;if dif
0178E0: 66 65 72 65 6E 74 2C 20 74 68 65 72 65 27 73 20 ferent, there's
0178F0: 61 6E 20 65 72 72 6F 72 0D 0A 0D 0A 09 6C 64 20 an error.....ld
017900: 09 63 61 6C 6C 20 26 42 44 31 39 0D 0A 09 69 66 .call &BD19...if
017910: 20 6B 64 73 3A 09 6C 64 20 61 2C 28 69 79 2B 31 kds:.ld a,(iy+1
017920: 31 29 0D 0A 09 65 6C 73 65 3A 09 72 65 73 20 34 1)...else:.res 4
017930: 2C 61 0D 0A 09 65 6E 64 69 66 3A 09 6A 70 20 70 ,a...endif:.jp p
017940: 72 65 67 0D 0A 0D 0A 09 3B 3E 3E 3E 20 58 4F 4E reg.....;>>> XON
017950: 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 78 6F 6E command.....xon
017960: 5F 69 09 70 75 73 68 20 69 79 3A 20 70 6F 70 20 _i.push iy: pop
017970: 68 6C 0D 0A 09 69 6E 63 20 68 6C 3A 20 69 6E 63 hl...inc hl: inc
017980: 20 68 6C 3A 20 69 6E 63 20 68 6C 3A 20 69 6E 63 hl: inc hl: inc
017990: 20 68 6C 09 3B 48 4C 20 3D 20 49 59 2B 34 20 3D hl.;HL = IY+4 =
0179A0: 20 78 6F 6E 63 0D 0A 09 6A 70 20 6F 6E 5F 6F 66 xonc...jp on_of
0179B0: 66 0D 0A 0D 0A 09 3B 3E 3E 3E 20 4C 4F 43 41 4C f.....;>>> LOCAL
0179C0: 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 6C 6F 63 command.....loc
0179D0: 6C 5F 69 09 70 75 73 68 20 69 79 3A 20 70 6F 70 l_i.push iy: pop
0179E0: 20 68 6C 0D 0A 09 69 6E 63 20 68 6C 09 09 09 09 hl...inc hl....
0179F0: 3B 48 4C 20 3D 20 49 59 2B 31 20 3D 20 6C 65 63 ;HL = IY+1 = lec
017A00: 68 6F 0D 0A 09 6A 70 20 6F 6E 5F 6F 66 66 0D 0A ho...jp on_off..
017A10: 0D 0A 09 3B 3E 3E 3E 20 54 49 4D 45 4F 55 54 20 ...;>>> TIMEOUT
017A20: 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 74 6F 75 74 command.....tout
017A30: 5F 69 09 6C 64 20 63 2C 32 3A 20 63 70 20 31 3A _i.ld c,2: cp 1:
017A40: 20 6A 70 20 6E 7A 2C 65 72 72 6F 72 0D 0A 09 6C jp nz,error...l
017A50: 64 20 6C 2C 28 69 78 29 3A 20 6C 64 20 68 2C 28 d l,(ix): ld h,(
017A60: 69 78 2B 31 29 0D 0A 09 6C 64 20 28 69 79 2B 39 ix+1)...ld (iy+9
017A70: 29 2C 6C 3A 20 6C 64 20 28 69 79 2B 31 30 29 2C ),l: ld (iy+10),
017A80: 68 3A 20 72 65 74 09 3B 74 69 6D 65 73 74 1A FF h: ret.;timest..
017A90: 4D 4F 44 20 2A 2A 2A 0D 0A 0D 0A 09 3B 3E 3E 3E MOD ***.....;>>>
017AA0: 20 42 41 55 44 20 63 6F 6D 6D 61 6E 64 0D 0A 0D BAUD command...
017AB0: 0A 2E 62 61 75 64 5F 69 09 6C 64 20 6C 2C 28 69 ..baud_i.ld l,(i
017AC0: 78 29 3A 20 6C 64 20 68 2C 28 69 78 2B 31 29 0D x): ld h,(ix+1).
017AD0: 0A 09 6C 64 20 63 2C 32 3A 20 63 70 20 63 3A 20 ..ld c,2: cp c:
017AE0: 6A 70 20 7A 2C 67 65 74 72 78 0D 0A 09 63 70 20 jp z,getrx...cp
017AF0: 31 3A 20 6A 70 20 6E 7A 2C 65 72 72 6F 72 0D 0A 1: jp nz,error..
017B00: 6C 2C 28 69 79 2B 37 29 3A 20 6C 64 20 68 2C 28 l,(iy+7): ld h,(
017B10: 69 79 2B 38 29 0D 0A 09 70 75 73 68 20 68 6C 3A iy+8)...push hl:
017B20: 20 70 6F 70 20 69 78 09 09 09 3B 49 58 20 3D 20 pop ix...;IX =
017B30: 62 75 66 66 65 72 20 61 64 64 72 65 73 73 0D 0A buffer address..
017B40: 09 6C 64 20 63 2C 28 69 79 2B 31 30 32 29 3A 20 .ld c,(iy+102):
017B50: 6C 64 20 62 2C 28 69 79 2B 31 30 33 29 09 3B 42 ld b,(iy+103).;B
017B60: 43 20 3D 20 6E 75 6D 62 65 72 20 6F 66 20 62 79 C = number of by
017B70: 74 65 73 0D 0A 09 6C 64 20 68 6C 2C 30 09 09 09 tes...ld hl,0...
017B80: 09 3B 48 4C 20 3D 20 43 52 43 2D 31 36 20 2F 20 .;HL = CRC-16 /
017B90: 63 68 65 63 6B 73 75 6D 20 64 61 74 61 0D 0A 0D checksum data...
017BA0: 0A 2E 72 63 6C 6F 6F 70 09 70 75 73 68 20 62 63 ..rcloop.push bc
017BB0: 09 09 09 09 3B 2A 2A 2A 20 72 65 63 65 69 76 65 ....;*** receive
017BC0: 20 6D 61 69 6E 20 64 61 74 61 20 62 6C 6F 63 6B main data block
017BD0: 0D 0A 09 63 61 6C 6C 20 67 65 74 62 74 09 09 09 ...call getbt...
017BE0: 3B 67 65 74 20 64 61 74 61 20 62 79 74 65 0D 0A ;get data byte..
017BF0: 09 6C 64 20 28 69 78 29 2C 61 3A 20 69 6E 63 20 .ld (ix),a: inc
017C00: 69 78 09 09 3B 61 6E 64 20 73 74 6F 72 65 20 69 ix..;and store i
017C10: 74 0D 0A 09 6C 64 20 65 2C 61 3A 20 6C 64 20 61 t...ld e,a: ld a
017C20: 2C 28 69 79 2B 31 30 34 29 0D 0A 09 63 70 20 26 ,(iy+104)...cp &
017C30: 31 35 3A 20 6A 72 20 7A 2C 63 68 6B 73 75 6D 09 15: jr z,chksum.
017C40: 09 3B 43 52 43 20 6F 72 20 63 68 65 63 6B 73 75 .;CRC or checksu
017C50: 6D 3F 0D 0A 0D 0A 09 63 61 6C 6C 20 63 72 63 3A m?.....call crc:
017C60: 20 6A 72 20 6D 67 6C 6F 6F 70 09 09 3B 63 61 6C jr mgloop..;cal
017C70: 63 75 6C 61 74 65 20 43 52 43 0D 0A 0D 0A 2E 63 culate CRC.....c
017C80: 68 6B 73 75 6D 09 6C 64 20 61 2C 65 3A 20 61 64 hksum.ld a,e: ad
017C90: 64 20 61 2C 68 3A 20 6C 64 20 68 2C 61 09 09 3B d a,h: ld h,a..;
017CA0: 63 61 6C 63 75 6C 61 74 65 20 63 68 65 63 6B 73 calculate checks
017CB0: 75 6D 0D 0A 0D 0A 2E 6D 67 6C 6F 6F 70 09 70 6F um.....mgloop.po
017CC0: 70 20 62 63 3A 20 64 65 63 20 62 63 0D 0A 09 6C p bc: dec bc...l
017CD0: 64 20 61 2C 62 3A 20 6F 72 20 63 3A 20 6A 72 20 d a,b: or c: jr
017CE0: 6E 7A 2C 72 63 6C 6F 6F 70 09 3B 6C 6F 6F 70 20 nz,rcloop.;loop
017CF0: 69 66 20 6E 6F 74 20 66 69 6E 69 73 68 65 64 0D if not finished.
017D00: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
017D10: 14 00 01 00 02 09 4E E5 14 00 C7 02 00 00 00 02 ......N.........
017D20: 14 00 C3 02 00 00 00 02 14 00 C8 02 00 00 00 02 ................
017D30: 14 00 C4 02 00 00 00 02 14 00 C9 02 00 00 00 02 ................
017D40: 14 00 C5 02 00 00 00 02 14 00 C1 02 00 00 00 02 ................
017D50: 14 00 C6 02 00 00 00 02 14 00 C2 02 00 00 00 02 ................
017D60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
017D70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
017D80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
017D90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
017DA0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
017DB0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
017DC0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
017DD0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
017DE0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
017DF0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
017E00: 63 70 20 26 46 43 3A 20 72 65 74 20 6E 7A 09 09 cp &FC: ret nz..
017E10: 09 3B 45 53 43 3F 0D 0A 2E 63 61 6E 79 65 73 09 .;ESC?...canyes.
017E20: 70 6F 70 20 68 6C 09 09 09 09 3B 72 65 6D 6F 76 pop hl....;remov
017E30: 65 20 43 41 4C 4C 0D 0A 0D 0A 09 63 61 6C 6C 20 e CALL.....call
017E40: 73 38 63 61 6E 73 09 09 09 3B 73 65 6E 64 20 38 s8cans...;send 8
017E50: 2A 43 41 4E 0D 0A 0D 0A 09 6C 64 20 68 6C 2C 79 *CAN.....ld hl,y
017E60: 6D 74 65 78 74 0D 0A 09 6C 64 20 61 2C 28 69 79 mtext...ld a,(iy
017E70: 2B 31 30 36 29 3A 20 6F 72 20 61 3A 20 20 6A 72 +106): or a: jr
017E80: 20 6E 7A 2C 67 6F 74 6D 73 67 09 3B 59 4D 6F 64 nz,gotmsg.;YMod
017E90: 65 6D 3F 0D 0A 09 6C 64 20 68 6C 2C 63 72 63 74 em?...ld hl,crct
017EA0: 78 74 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 31 30 xt...ld a,(iy+10
017EB0: 34 29 3A 20 63 70 20 22 43 22 3A 20 6A 72 20 7A 4): cp "C": jr z
017EC0: 2C 67 6F 74 6D 73 67 09 3B 58 4D 6F 64 65 6D 2D ,gotmsg.;XModem-
017ED0: 43 52 43 3F 0D 0A 09 6C 64 20 68 6C 2C 63 68 6B CRC?...ld hl,chk
017EE0: 74 78 74 0D 0A 0D 0A 2E 67 6F 74 6D 73 67 09 63 txt.....gotmsg.c
017EF0: 61 6C 6C 20 73 74 72 69 6E 67 09 09 09 3B 50 72 all string...;Pr
017F00: 69 6E 74 20 61 70 70 72 6F 70 72 69 61 74 65 20 int appropriate
017F10: 74 65 78 74 0D 0A 09 6C 64 20 61 2C 32 32 3A 20 text...ld a,22:
017F20: 63 61 6C 6C 20 26 42 42 36 46 0D 0A 09 6C 64 20 call &BB6F...ld
017F30: 68 6C 2C 61 62 72 74 78 74 3A 20 63 61 6C 6C 20 hl,abrtxt: call
017F40: 73 74 72 69 6E 67 09 3B 66 6F 6C 6C 6F 77 65 64 string.;followed
017F50: 20 62 79 20 22 61 62 6F 72 74 65 64 22 0D 0A 09 by "aborted"...
017F60: 6C 64 20 68 6C 2C 6C 61 73 74 63 72 3A 20 63 61 ld hl,lastcr: ca
017F70: 6C 6C 20 73 74 72 69 6E 67 0D 0A 09 63 61 6C 6C ll string...call
017F80: 20 26 42 42 34 38 3A 20 63 61 6C 6C 20 26 42 42 &BB48: call &BB
017F90: 31 42 09 09 3B 72 65 6D 6F 76 65 20 62 72 65 61 1B..;remove brea
017FA0: 6B 3F 0D 0A 09 63 61 6C 6C 20 26 42 43 37 44 3A k?...call &BC7D:
017FB0: 20 6A 70 20 26 42 43 39 32 09 09 3B 61 62 61 6E jp &BC92..;aban
017FC0: 64 6F 6E 20 66 69 6C 65 73 0D 0A 0D 0A 0D 0A 0D don files.......
017FD0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
017FE0: 0A 0D 0A 0D 0A 0D 0A 09 3B 3E 3E 3E 20 55 50 4C ........;>>> UPL
017FF0: 4F 41 44 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E OAD command.....
018000: 72 20 7A 2C 6D 65 74 30 09 3B 66 69 6E 64 20 6C r z,met0.;find l
018010: 65 6E 67 74 68 20 6F 66 20 66 69 6C 65 6E 61 6D ength of filenam
018020: 65 0D 0A 09 69 6E 63 20 68 6C 3A 20 69 6E 63 20 e...inc hl: inc
018030: 62 3A 20 6A 72 20 66 6C 6C 0D 0A 0D 0A 2E 6D 65 b: jr fll.....me
018040: 74 30 09 64 65 63 20 68 6C 3A 20 65 78 20 64 65 t0.dec hl: ex de
018050: 2C 68 6C 3A 20 70 6F 70 20 68 6C 09 3B 66 69 6C ,hl: pop hl.;fil
018060: 65 6E 61 6D 65 20 65 78 74 65 6E 64 73 20 66 72 ename extends fr
018070: 6F 6D 20 48 4C 20 74 6F 20 44 45 0D 0A 09 6C 64 om HL to DE...ld
018080: 20 61 2C 31 32 3A 20 63 70 20 62 3A 20 63 61 6C a,12: cp b: cal
018090: 6C 20 63 2C 63 6F 6E 76 09 3B 63 6F 6E 76 65 72 l c,conv.;conver
0180A0: 74 20 74 6F 20 43 50 43 20 66 69 6C 65 6E 61 6D t to CPC filenam
0180B0: 65 20 69 66 20 74 6F 6F 20 6C 6F 6E 67 65 72 0D e if too longer.
0180C0: 0A 0D 0A 09 78 6F 72 20 61 3A 20 63 70 20 62 3A ....xor a: cp b:
0180D0: 20 6A 72 20 7A 2C 65 79 6D 09 09 3B 59 4D 6F 64 jr z,eym..;YMod
0180E0: 65 6D 20 6E 75 6C 6C 20 62 6C 6F 63 6B 20 28 3D em null block (=
0180F0: 45 4F 54 29 3F 0D 0A 09 6C 64 20 61 2C 28 69 79 EOT)?...ld a,(iy
018100: 2B 34 32 29 09 09 09 3B 41 20 3D 20 6E 75 6D 62 +42)...;A = numb
018110: 65 72 20 6F 66 20 70 61 72 61 6D 65 74 65 72 73 er of parameters
018120: 0D 0A 09 6F 72 20 61 3A 20 63 61 6C 6C 20 6E 7A ...or a: call nz
018130: 2C 67 66 6E 61 6D 65 09 09 3B 67 65 74 20 66 69 ,gfname..;get fi
018140: 6C 65 6E 61 6D 65 20 69 66 20 70 72 6F 76 69 64 lename if provid
018150: 65 64 20 62 79 20 52 53 58 0D 0A 0D 0A 09 70 75 ed by RSX.....pu
018160: 73 68 20 62 63 3A 20 70 75 73 68 20 68 6C 0D 0A sh bc: push hl..
018170: 2E 70 66 6C 6F 6F 70 09 6C 64 20 61 2C 28 68 6C .pfloop.ld a,(hl
018180: 29 3A 20 63 61 6C 6C 20 26 42 42 35 41 09 09 3B ): call &BB5A..;
018190: 70 72 69 6E 74 20 66 69 6C 65 6E 61 6D 65 20 74 print filename t
0181A0: 6F 20 73 63 72 65 65 6E 0D 0A 09 69 6E 63 20 68 o screen...inc h
0181B0: 6C 3A 20 64 6A 6E 7A 20 70 66 6C 6F 6F 70 0D 0A l: djnz pfloop..
0181C0: 09 70 6F 70 20 68 6C 0D 0A 0D 0A 09 6C 64 20 61 .pop hl.....ld a
0181D0: 2C 36 3A 20 63 61 6C 6C 20 73 65 6E 64 62 74 09 ,6: call sendbt.
0181E0: 09 3B 41 43 4B 20 74 6F 20 73 61 79 20 22 6F 6B .;ACK to say "ok
0181F0: 22 0D 0A 09 70 6F 70 20 62 63 3A 20 6A 70 20 6F "...pop bc: jp o
018200: 75 70 6C 64 5F 69 20 63 61 6C 6C 20 62 75 66 66 upld_i call buff
018210: 5F 63 0D 0A 09 6C 64 20 63 2C 32 0D 0A 09 6F 72 _c...ld c,2...or
018220: 20 61 3A 20 6A 70 20 7A 2C 65 72 72 6F 72 0D 0A a: jp z,error..
018230: 0D 0A 09 63 61 6C 6C 20 72 66 6E 61 6D 65 0D 0A ...call rfname..
018240: 20 20 20 20 20 20 20 20 0D 0A 09 6C 64 20 63 2C ...ld c,
018250: 34 3A 20 6C 64 20 61 2C 28 69 79 2B 37 32 29 09 4: ld a,(iy+72).
018260: 09 3B 41 20 3D 20 66 69 6C 65 73 20 74 6F 20 73 .;A = files to s
018270: 65 6E 64 0D 0A 09 6F 72 20 61 3A 20 6A 70 20 7A end...or a: jp z
018280: 2C 65 72 72 6F 72 0D 0A 0D 0A 09 6C 64 20 6C 2C ,error.....ld l,
018290: 28 69 79 2B 37 30 29 3A 20 6C 64 20 68 2C 28 69 (iy+70): ld h,(i
0182A0: 79 2B 37 31 29 09 3B 48 4C 20 3D 20 63 75 72 72 y+71).;HL = curr
0182B0: 65 6E 74 20 6E 61 6D 65 20 61 64 64 72 65 73 73 ent name address
0182C0: 0D 0A 09 6C 64 20 28 68 6C 29 2C 30 0D 0A 0D 0A ...ld (hl),0....
0182D0: 09 6C 64 20 61 2C 28 69 79 2B 31 30 37 29 3A 20 .ld a,(iy+107):
0182E0: 63 70 20 32 3A 20 6A 72 20 7A 2C 6E 78 71 75 65 cp 2: jr z,nxque
0182F0: 72 3B 41 20 3D 20 73 70 65 63 69 66 69 65 64 20 r;A = specified
018300: 70 72 6F 74 6F 63 6F 6C 20 28 30 2F 31 2F 32 29 protocol (0/1/2)
018310: 0D 0A 09 6C 64 20 63 2C 37 0D 0A 09 6C 64 20 61 ...ld c,7...ld a
018320: 2C 28 69 79 2B 37 32 29 3A 20 63 70 20 31 3A 20 ,(iy+72): cp 1:
018330: 6A 70 20 6E 7A 2C 65 72 72 6F 72 09 3B 58 4D 6F jp nz,error.;XMo
018340: 64 65 6D 20 73 69 6E 67 6C 65 20 66 69 6C 65 20 dem single file
018350: 6F 6E 6C 79 20 28 69 74 27 73 20 43 52 41 50 29 only (it's CRAP)
018360: 0D 0A 0D 0A 2E 6E 78 71 75 65 72 09 6C 64 20 68 .....nxquer.ld h
018370: 6C 2C 74 74 73 65 6E 64 3A 20 20 63 61 6C 6C 20 l,ttsend: call
018380: 73 74 72 69 6E 67 09 3B 66 75 63 6B 20 79 6F 75 string.;fuck you
018390: 2C 20 50 69 63 74 21 20 28 77 65 20 70 69 73 73 , Pict! (we piss
0183A0: 20 6F 6E 20 4C 6F 67 6F 6E 29 0D 0A 09 6C 64 20 on Logon)...ld
0183B0: 61 2C 28 69 79 2B 37 32 29 3A 20 20 63 61 6C 6C a,(iy+72): call
0183C0: 20 70 72 5F 64 65 63 09 3B 6E 75 6D 62 65 72 20 pr_dec.;number
0183D0: 6F 66 20 66 69 6C 65 73 20 74 6F 20 73 65 6E 64 of files to send
0183E0: 0D 0A 09 6C 64 20 68 6C 2C 74 74 6B 6D 65 73 3A ...ld hl,ttkmes:
0183F0: 20 20 63 61 6C 6C 20 73 74 72 69 6E 67 09 3B 66 call string.;f
018400: 70 5F 6F 75 74 0D 0A 0D 0A 2E 65 79 6D 09 6C 64 p_out.....eym.ld
018410: 20 68 6C 2C 63 6C 74 65 78 74 3A 20 63 61 6C 6C hl,cltext: call
018420: 20 73 74 72 69 6E 67 09 3B 2A 2A 2A 20 45 6E 64 string.;*** End
018430: 20 6F 66 20 59 4D 6F 64 65 6D 20 74 72 61 6E 73 of YModem trans
018440: 6D 69 73 73 69 6F 6E 0D 0A 09 78 6F 72 20 61 3A mission...xor a:
018450: 20 6C 64 20 28 69 79 2B 31 30 36 29 2C 61 09 09 ld (iy+106),a..
018460: 3B 63 61 6E 63 65 6C 20 59 4D 6F 64 65 6D 0D 0A ;cancel YModem..
018470: 09 6A 72 20 65 74 72 61 6E 73 09 09 09 3B 65 6E .jr etrans...;en
018480: 64 20 74 72 61 6E 73 6D 69 73 73 69 6F 6E 0D 0A d transmission..
018490: 0D 0A 2E 6F 63 74 72 6C 09 6C 64 20 61 2C 33 32 ...octrl.ld a,32
0184A0: 3A 20 63 61 6C 6C 20 26 42 42 35 41 09 09 3B 2A : call &BB5A..;*
0184B0: 2A 2A 20 53 65 6E 64 20 62 6C 6F 63 6B 20 74 6F ** Send block to
0184C0: 20 64 69 73 63 0D 0A 0D 0A 2E 6F 6C 6F 6F 70 09 disc.....oloop.
0184D0: 6C 64 20 61 2C 28 68 6C 29 3A 20 63 61 6C 6C 20 ld a,(hl): call
0184E0: 26 42 43 39 35 09 09 3B 43 41 53 20 4F 55 54 20 &BC95..;CAS OUT
0184F0: 43 48 41 52 0D 0A 09 63 61 6C 6C 20 6E 63 2C 63 CHAR...call nc,c
018500: 61 6E 79 65 73 09 09 09 3B 69 66 20 64 69 73 63 anyes...;if disc
018510: 20 65 72 72 6F 72 0D 0A 09 69 6E 63 20 68 6C 3A error...inc hl:
018520: 20 64 65 63 20 62 63 0D 0A 09 6C 64 20 61 2C 62 dec bc...ld a,b
018530: 3A 20 6F 72 20 63 3A 20 6A 72 20 6E 7A 2C 6F 6C : or c: jr nz,ol
018540: 6F 6F 70 0D 0A 0D 0A 2E 69 62 6C 6F 63 6B 09 6C oop.....iblock.l
018550: 64 20 61 2C 28 69 79 2B 31 30 31 29 3A 20 69 6E d a,(iy+101): in
018560: 63 20 61 09 09 3B 49 6E 63 72 65 61 73 65 20 62 c a..;Increase b
018570: 6C 6F 63 6B 20 6E 75 6D 62 65 72 0D 0A 09 6C 64 lock number...ld
018580: 20 28 69 79 2B 31 30 31 29 2C 61 0D 0A 0D 0A 2E (iy+101),a.....
018590: 77 74 73 6F 68 62 09 63 61 6C 6C 20 63 68 6B 63 wtsohb.call chkc
0185A0: 61 6E 09 09 09 3B 43 68 65 63 6B 20 66 6F 72 20 an...;Check for
0185B0: 61 62 6F 72 74 0D 0A 0D 0A 09 6C 64 20 61 2C 36 abort.....ld a,6
0185C0: 3A 20 63 61 6C 6C 20 73 65 6E 64 62 74 09 09 3B : call sendbt..;
0185D0: 41 43 4B 6E 6F 77 6C 65 64 67 65 20 73 75 63 63 ACKnowledge succ
0185E0: 65 73 73 66 75 6C 20 72 65 63 65 69 70 74 0D 0A essful receipt..
0185F0: 09 6C 64 20 64 65 2C 35 30 30 3A 20 63 61 6C 6C .ld de,500: call
018600: 75 63 6B 20 79 6F 75 2C 20 4F 62 69 21 20 28 77 uck you, Obi! (w
018610: 65 20 70 69 73 73 20 6F 6E 20 74 68 65 20 67 6F e piss on the go
018620: 6F 6E 73 29 0D 0A 09 6C 64 20 6C 2C 28 69 79 2B ons)...ld l,(iy+
018630: 37 33 29 3A 20 6C 64 20 68 2C 28 69 79 2B 37 34 73): ld h,(iy+74
018640: 29 0D 0A 09 09 20 20 20 20 20 20 20 63 61 6C 6C ).... call
018650: 20 70 72 5F 68 6C 09 3B 6E 75 6D 62 65 72 20 6F pr_hl.;number o
018660: 66 20 6B 20 74 6F 20 73 65 6E 64 0D 0A 09 6C 64 f k to send...ld
018670: 20 68 6C 2C 74 74 6B 63 6C 6F 3A 20 20 63 61 6C hl,ttkclo: cal
018680: 6C 20 73 74 72 69 6E 67 0D 0A 0D 0A 09 78 6F 72 l string.....xor
018690: 20 61 3A 20 6C 64 20 28 69 79 2B 31 30 34 29 2C a: ld (iy+104),
0186A0: 61 09 09 3B 4E 41 4B 20 6F 72 20 43 20 6E 6F 74 a..;NAK or C not
0186B0: 20 72 65 63 65 69 76 65 64 0D 0A 0D 0A 09 6C 64 received.....ld
0186C0: 20 6C 2C 28 69 79 2B 37 29 3A 20 6C 64 20 68 2C l,(iy+7): ld h,
0186D0: 28 69 79 2B 38 29 09 3B 48 4C 20 3D 20 66 69 6C (iy+8).;HL = fil
0186E0: 65 20 62 75 66 66 65 72 20 61 64 64 72 65 73 73 e buffer address
0186F0: 0D 0A 09 6C 64 20 28 69 79 2B 37 30 29 2C 6C 3A ...ld (iy+70),l:
018700: 20 6C 64 20 28 69 79 2B 37 31 29 2C 68 09 3B 70 ld (iy+71),h.;p
018710: 75 74 20 69 6E 74 6F 20 63 75 72 72 65 6E 74 20 ut into current
018720: 6E 61 6D 65 20 61 64 64 72 65 73 73 0D 0A 0D 0A name address....
018730: 2E 67 6E 78 74 79 75 09 70 75 73 68 20 69 79 3A .gnxtyu.push iy:
018740: 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 20 64 65 2C pop hl...ld de,
018750: 31 31 36 2B 31 32 39 3A 20 61 64 64 20 68 6C 2C 116+129: add hl,
018760: 64 65 0D 0A 09 6C 64 20 28 68 6C 29 2C 30 09 09 de...ld (hl),0..
018770: 09 3B 6E 6F 20 68 65 61 64 65 72 0D 0A 0D 0A 09 .;no header.....
018780: 6C 64 20 6C 2C 28 69 79 2B 37 30 29 3A 20 6C 64 ld l,(iy+70): ld
018790: 20 68 2C 28 69 79 2B 37 31 29 09 3B 63 75 72 72 h,(iy+71).;curr
0187A0: 65 6E 74 20 6E 61 6D 65 20 61 64 64 72 65 73 73 ent name address
0187B0: 0D 0A 09 6C 64 20 61 2C 28 68 6C 29 0D 0A 09 6F ...ld a,(hl)...o
0187C0: 72 20 61 3A 20 6A 70 20 7A 2C 65 78 75 70 6C 09 r a: jp z,exupl.
0187D0: 09 3B 65 6E 64 20 6F 66 20 75 70 6C 6F 61 64 73 .;end of uploads
0187E0: 0D 0A 0D 0A 09 70 75 73 68 20 68 6C 0D 0A 09 20 .....push hl...
0187F0: 70 75 73 68 20 69 79 3A 20 70 6F 70 20 68 6C 0D push iy: pop hl.
018800: 20 77 61 69 74 62 74 0D 0A 0D 0A 09 63 70 20 31 waitbt.....cp 1
018810: 3A 20 6A 70 20 7A 2C 73 62 6C 6F 63 6B 09 09 3B : jp z,sblock..;
018820: 53 4F 48 3F 20 5B 58 4D 6F 64 65 6D 2D 31 32 38 SOH? [XModem-128
018830: 5D 0D 0A 09 63 70 20 32 3A 20 6A 70 20 7A 2C 73 ]...cp 2: jp z,s
018840: 62 6C 6F 63 6B 09 09 3B 53 54 58 3F 20 5B 58 4D block..;STX? [XM
018850: 6F 64 65 6D 2D 31 6B 5D 0D 0A 09 63 70 20 26 31 odem-1k]...cp &1
018860: 38 3A 20 63 61 6C 6C 20 7A 2C 63 61 6E 79 65 73 8: call z,canyes
018870: 09 09 3B 43 41 4E 3F 20 5B 41 62 6F 72 74 5D 0D ..;CAN? [Abort].
018880: 0A 09 63 70 20 34 3A 20 6A 70 20 6E 7A 2C 77 74 ..cp 4: jp nz,wt
018890: 73 6F 68 62 09 09 3B 45 4F 54 3F 20 5B 45 6E 64 sohb..;EOT? [End
0188A0: 20 6F 66 20 74 72 61 6E 73 6D 69 73 73 69 6F 6E of transmission
0188B0: 5D 0D 0A 0D 0A 2E 65 74 72 61 6E 73 09 6C 64 20 ].....etrans.ld
0188C0: 61 2C 36 3A 20 63 61 6C 6C 20 73 65 6E 64 62 74 a,6: call sendbt
0188D0: 09 09 3B 69 66 20 45 4F 54 2C 20 74 68 65 6E 20 ..;if EOT, then
0188E0: 41 43 4B 6E 6F 77 6C 65 64 67 65 20 69 74 0D 0A ACKnowledge it..
0188F0: 09 63 61 6C 6C 20 26 42 43 38 46 09 09 09 3B 61 .call &BC8F...;a
018900: 6E 64 20 63 6C 6F 73 65 20 64 69 73 63 20 66 69 nd close disc fi
018910: 6C 65 0D 0A 0D 0A 09 6C 64 20 61 2C 28 69 79 2B le.....ld a,(iy+
018920: 31 30 36 29 3A 20 6F 72 20 61 3A 20 6A 70 20 6E 106): or a: jp n
018930: 7A 2C 72 62 6C 6F 63 6B 20 3B 69 66 20 59 4D 6F z,rblock ;if YMo
018940: 64 65 6D 2C 20 6E 65 78 74 20 66 69 6C 65 20 70 dem, next file p
018950: 6C 65 61 73 65 0D 0A 09 6C 64 20 68 6C 2C 6C 61 lease...ld hl,la
018960: 73 74 63 72 3A 20 6A 70 20 73 74 72 69 6E 67 09 stcr: jp string.
018970: 09 3B 6F 74 68 65 72 77 69 73 65 20 43 52 2F 4C .;otherwise CR/L
018980: 46 20 6F 75 74 20 61 6E 64 20 72 65 74 75 72 6E F out and return
018990: 21 0D 0A 0D 0A 2E 73 66 65 72 72 09 6C 64 20 28 !.....sferr.ld (
0189A0: 69 79 2B 31 30 30 29 2C 31 3A 20 72 65 74 09 09 iy+100),1: ret..
0189B0: 3B 2A 2A 2A 20 53 75 62 72 6F 75 74 69 6E 65 20 ;*** Subroutine
0189C0: 2D 20 73 65 74 20 66 69 6C 65 20 65 72 72 6F 72 - set file error
0189D0: 0D 0A 0D 0A 2E 67 66 6E 61 6D 65 09 6C 64 20 61 .....gfname.ld a
0189E0: 2C 28 69 79 2B 34 32 29 09 09 09 3B 2A 2A 2A 20 ,(iy+42)...;***
0189F0: 53 75 62 72 6F 75 74 69 6E 65 20 2D 20 67 65 74 Subroutine - get
018A00: 78 74 0D 0A 09 6C 64 20 61 2C 31 3A 20 6C 64 20 xt...ld a,1: ld
018A10: 28 69 79 2B 31 30 35 29 2C 61 09 09 3B 61 6E 64 (iy+105),a..;and
018A20: 20 73 65 74 20 69 74 20 74 6F 20 22 70 72 69 6E set it to "prin
018A30: 74 65 64 20 61 6C 72 65 61 64 79 22 0D 0A 0D 0A ted already"....
018A40: 2E 6E 70 73 74 61 74 09 6C 64 20 61 2C 32 32 3A .npstat.ld a,22:
018A50: 20 63 61 6C 6C 20 26 42 42 36 46 0D 0A 09 6C 64 call &BB6F...ld
018A60: 20 61 2C 28 69 79 2B 31 30 31 29 3A 20 6F 72 20 a,(iy+101): or
018A70: 61 0D 0A 09 6A 72 20 7A 2C 63 68 6B 65 72 72 09 a...jr z,chkerr.
018A80: 09 09 3B 64 6F 6E 27 74 20 70 72 69 6E 74 20 62 ..;don't print b
018A90: 6C 6F 63 6B 20 30 0D 0A 09 63 61 6C 6C 20 70 72 lock 0...call pr
018AA0: 5F 64 65 63 09 09 09 3B 6F 74 68 65 72 77 69 73 _dec...;otherwis
018AB0: 65 2C 20 70 72 69 6E 74 20 62 6C 6F 63 6B 20 6E e, print block n
018AC0: 75 6D 62 65 72 0D 0A 0D 0A 2E 63 68 6B 65 72 72 umber.....chkerr
018AD0: 09 6C 64 20 61 2C 28 69 79 2B 31 30 30 29 3A 20 .ld a,(iy+100):
018AE0: 6F 72 20 61 3A 20 6A 70 20 7A 2C 6E 6F 65 72 72 or a: jp z,noerr
018AF0: 09 3B 62 6C 6F 63 6B 20 72 65 63 65 69 76 65 64 .;block received
018B00: 20 6F 6B 3F 0D 0A 0D 0A 09 6C 64 20 61 2C 22 3F ok?.....ld a,"?
018B10: 22 3A 20 63 61 6C 6C 20 26 42 42 35 41 09 09 3B ": call &BB5A..;
018B20: 65 6C 73 65 20 70 72 69 6E 74 20 22 3F 22 20 66 else print "?" f
018B30: 6F 72 20 65 72 72 6F 72 0D 0A 09 78 6F 72 20 61 or error...xor a
018B40: 3A 20 6C 64 20 28 69 79 2B 31 30 30 29 2C 61 09 : ld (iy+100),a.
018B50: 09 3B 61 6E 64 20 63 61 6E 63 65 6C 20 74 68 65 .;and cancel the
018B60: 20 65 72 72 6F 72 0D 0A 09 6C 64 20 61 2C 26 31 error...ld a,&1
018B70: 35 3A 20 63 61 6C 6C 20 73 65 6E 64 62 74 09 09 5: call sendbt..
018B80: 3B 4E 41 4B 20 66 6F 72 20 65 72 72 6F 72 0D 0A ;NAK for error..
018B90: 2E 63 65 72 5F 6C 70 09 6C 64 20 64 65 2C 31 35 .cer_lp.ld de,15
018BA0: 30 3A 20 63 61 6C 6C 20 77 61 69 74 62 74 09 09 0: call waitbt..
018BB0: 3B 77 61 69 74 20 66 6F 72 20 72 65 73 70 6F 6E ;wait for respon
018BC0: 73 65 0D 0A 09 63 70 20 32 3A 20 6A 70 20 7A 2C se...cp 2: jp z,
018BD0: 73 62 6C 6F 63 6B 09 09 3B 53 54 58 3F 20 5B 58 sblock..;STX? [X
018BE0: 4D 6F 64 65 6D 2D 31 6B 2C 20 67 65 74 20 62 6C Modem-1k, get bl
018BF0: 6F 63 6B 20 61 67 61 69 6E 5D 0D 0A 09 63 70 20 ock again]...cp
018C00: 20 66 69 6C 65 6E 61 6D 65 0D 0A 09 6F 72 20 61 filename...or a
018C10: 3A 20 72 65 74 20 7A 09 09 09 3B 41 20 3D 20 6E : ret z...;A = n
018C20: 75 6D 62 65 72 20 6F 66 20 70 61 72 61 6D 65 74 umber of paramet
018C30: 65 72 73 0D 0A 0D 0A 09 6C 64 20 6C 2C 28 69 79 ers.....ld l,(iy
018C40: 2B 34 33 29 3A 20 6C 64 20 68 2C 28 69 79 2B 34 +43): ld h,(iy+4
018C50: 34 29 09 3B 48 4C 20 3D 20 70 61 72 61 6D 65 74 4).;HL = paramet
018C60: 65 72 20 62 6C 6F 63 6B 20 61 64 64 72 65 73 73 er block address
018C70: 0D 0A 09 64 65 63 20 68 6C 3A 20 64 65 63 20 68 ...dec hl: dec h
018C80: 6C 09 09 09 3B 67 65 74 20 70 72 6F 76 69 64 65 l...;get provide
018C90: 64 20 66 69 6C 65 6E 61 6D 65 0D 0A 09 6C 64 20 d filename...ld
018CA0: 28 69 79 2B 34 33 29 2C 6C 3A 20 6C 64 20 28 69 (iy+43),l: ld (i
018CB0: 79 2B 34 34 29 2C 68 0D 0A 09 70 75 73 68 20 68 y+44),h...push h
018CC0: 6C 3A 20 70 6F 70 20 69 78 0D 0A 0D 0A 09 6C 64 l: pop ix.....ld
018CD0: 20 6C 2C 28 69 78 29 3A 20 6C 64 20 68 2C 28 69 l,(ix): ld h,(i
018CE0: 78 2B 31 29 0D 0A 09 6C 64 20 62 2C 28 68 6C 29 x+1)...ld b,(hl)
018CF0: 3A 20 69 6E 63 20 68 6C 0D 0A 09 6C 64 20 65 2C : inc hl...ld e,
018D00: 28 68 6C 29 3A 20 69 6E 63 20 68 6C 0D 0A 09 6C (hl): inc hl...l
018D10: 64 20 64 2C 28 68 6C 29 3A 20 65 78 20 64 65 2C d d,(hl): ex de,
018D20: 68 6C 0D 0A 09 64 65 63 20 61 3A 20 6C 64 20 28 hl...dec a: ld (
018D30: 69 79 2B 34 32 29 2C 61 09 09 3B 41 20 3D 3E 20 iy+42),a..;A =>
018D40: 6E 75 6D 62 65 72 20 6F 66 20 70 61 72 61 6D 65 number of parame
018D50: 74 65 72 73 0D 0A 09 6C 64 20 61 2C 31 3A 20 6F ters...ld a,1: o
018D60: 72 20 61 09 09 09 3B 73 65 74 20 6E 7A 20 28 69 r a...;set nz (i
018D70: 2E 65 2E 20 66 6F 75 6E 64 20 66 69 6C 65 6E 61 .e. found filena
018D80: 6D 65 29 0D 0A 09 72 65 74 0D 0A 0D 0A 09 3B 53 me)...ret.....;S
018D90: 75 62 72 6F 75 74 69 6E 65 20 2D 20 43 68 65 63 ubroutine - Chec
018DA0: 6B 20 66 6F 72 20 45 53 43 2F 43 54 52 4C 2D 58 k for ESC/CTRL-X
018DB0: 0D 0A 0D 0A 2E 63 68 6B 63 61 6E 09 63 61 6C 6C .....chkcan.call
018DC0: 20 26 42 42 31 42 3A 20 72 65 74 20 6E 63 09 09 &BB1B: ret nc..
018DD0: 3B 6B 65 79 20 70 72 65 73 73 65 64 3F 0D 0A 09 ;key pressed?...
018DE0: 63 70 20 26 31 38 3A 20 6A 72 20 7A 2C 63 61 6E cp &18: jr z,can
018DF0: 79 65 73 09 09 3B 43 54 52 4C 2D 58 3F 0D 0A 09 yes..;CTRL-X?...
018E00: 31 3A 20 6A 70 20 7A 2C 73 62 6C 6F 63 6B 09 09 1: jp z,sblock..
018E10: 3B 53 4F 48 3F 20 5B 58 6D 6F 64 65 6D 2D 31 32 ;SOH? [Xmodem-12
018E20: 38 2C 20 67 65 74 20 62 6C 6F 63 6B 20 61 67 61 8, get block aga
018E30: 69 6E 5D 0D 0A 09 63 70 20 26 31 38 3A 20 63 61 in]...cp &18: ca
018E40: 6C 6C 20 7A 2C 63 61 6E 79 65 73 09 09 3B 43 41 ll z,canyes..;CA
018E50: 4E 3F 20 5B 61 62 6F 72 74 5D 0D 0A 09 63 61 6C N? [abort]...cal
018E60: 6C 20 63 68 6B 63 61 6E 3A 20 6A 72 20 63 65 72 l chkcan: jr cer
018E70: 5F 6C 70 09 09 3B 45 53 43 20 70 72 65 73 73 65 _lp..;ESC presse
018E80: 64 3F 20 5B 61 62 6F 72 74 5D 0D 0A 0D 0A 2E 6E d? [abort].....n
018E90: 6F 65 72 72 09 6C 64 20 6C 2C 28 69 79 2B 37 29 oerr.ld l,(iy+7)
018EA0: 3A 20 6C 64 20 68 2C 28 69 79 2B 38 29 09 3B 2A : ld h,(iy+8).;*
018EB0: 2A 2A 20 62 6C 6F 63 6B 20 72 65 63 65 69 76 65 ** block receive
018EC0: 64 20 6F 6B 0D 0A 09 6C 64 20 63 2C 28 69 79 2B d ok...ld c,(iy+
018ED0: 31 30 32 29 3A 20 6C 64 20 62 2C 28 69 79 2B 31 102): ld b,(iy+1
018EE0: 30 33 29 09 3B 48 4C 20 3D 20 66 69 6C 65 20 62 03).;HL = file b
018EF0: 75 66 66 65 72 20 61 64 64 72 2C 20 42 43 20 3D uffer addr, BC =
018F00: 20 62 6C 6F 63 6B 20 6C 65 6E 0D 0A 0D 0A 09 6C block len.....l
018F10: 64 20 61 2C 28 69 79 2B 31 30 31 29 3A 20 6F 72 d a,(iy+101): or
018F20: 20 61 3A 20 6A 72 20 6E 7A 2C 6F 63 74 72 6C 3B a: jr nz,octrl;
018F30: 77 72 69 74 65 20 74 6F 20 64 69 73 63 20 69 66 write to disc if
018F40: 20 6E 6F 74 20 62 6C 6F 63 6B 20 30 0D 0A 0D 0A not block 0....
018F50: 09 70 75 73 68 20 68 6C 09 09 09 09 3B 2A 2A 2A .push hl....;***
018F60: 20 59 4D 6F 64 65 6D 20 68 65 61 64 65 72 0D 0A YModem header..
018F70: 09 63 61 6C 6C 20 26 42 43 39 32 09 09 09 3B 61 .call &BC92...;a
018F80: 62 61 6E 64 6F 6E 20 63 75 72 72 65 6E 74 20 66 bandon current f
018F90: 69 6C 65 0D 0A 09 6C 64 20 68 6C 2C 79 6D 74 65 ile...ld hl,ymte
018FA0: 78 74 3A 20 63 61 6C 6C 20 73 74 72 69 6E 67 09 xt: call string.
018FB0: 3B 61 6E 64 20 70 72 69 6E 74 20 22 59 4D 6F 64 ;and print "YMod
018FC0: 65 6D 22 20 6F 6E 20 73 63 72 65 65 6E 0D 0A 09 em" on screen...
018FD0: 70 6F 70 20 68 6C 3A 20 70 75 73 68 20 68 6C 3A pop hl: push hl:
018FE0: 20 6C 64 20 62 2C 30 0D 0A 2E 66 6C 6C 09 6C 64 ld b,0...fll.ld
018FF0: 20 61 2C 28 68 6C 29 3A 20 6F 72 20 61 3A 20 6A a,(hl): or a: j
019000: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
019010: 15 00 01 00 02 09 4E E5 15 00 C1 02 00 00 00 02 ......N.........
019020: 15 00 C6 02 00 00 00 02 15 00 C2 02 00 00 00 02 ................
019030: 15 00 C7 02 00 00 00 02 15 00 C3 02 00 00 00 02 ................
019040: 15 00 C8 02 00 00 00 02 15 00 C4 02 00 00 00 02 ................
019050: 15 00 C9 02 00 00 00 02 15 00 C5 02 00 00 00 02 ................
019060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
019070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
019080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
019090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0190A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0190B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0190C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0190D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0190E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0190F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
019100: 0A 09 20 6C 64 20 64 65 2C 35 35 3A 20 61 64 64 .. ld de,55: add
019110: 20 68 6C 2C 64 65 0D 0A 09 20 65 78 20 64 65 2C hl,de... ex de,
019120: 68 6C 3A 20 70 6F 70 20 68 6C 09 09 3B 44 45 20 hl: pop hl..;DE
019130: 3D 20 73 65 6E 64 20 66 69 6C 65 6E 61 6D 65 20 = send filename
019140: 28 64 65 73 74 69 6E 61 74 69 6F 6E 29 0D 0A 09 (destination)...
019150: 70 75 73 68 20 64 65 09 09 09 09 3B 50 55 53 48 push de....;PUSH
019160: 20 66 69 6C 65 6E 61 6D 65 20 66 6F 72 20 72 65 filename for re
019170: 74 72 69 65 76 61 6C 20 6C 61 74 65 72 0D 0A 09 trieval later...
019180: 6C 64 20 62 63 2C 38 3A 20 6C 64 69 72 0D 0A 09 ld bc,8: ldir...
019190: 6C 64 20 61 2C 22 2E 22 0D 0A 09 6C 64 20 28 64 ld a,"."...ld (d
0191A0: 65 29 2C 61 3A 20 69 6E 63 20 64 65 0D 0A 09 6C e),a: inc de...l
0191B0: 64 20 62 63 2C 33 3A 20 6C 64 69 72 0D 0A 09 70 d bc,3: ldir...p
0191C0: 75 73 68 20 68 6C 0D 0A 09 20 70 75 73 68 20 69 ush hl... push i
0191D0: 79 3A 20 70 6F 70 20 68 6C 0D 0A 09 20 6C 64 20 y: pop hl... ld
0191E0: 64 65 2C 37 35 3A 20 61 64 64 20 68 6C 2C 64 65 de,75: add hl,de
0191F0: 0D 0A 09 20 65 78 20 64 65 2C 68 6C 3A 20 70 6F ... ex de,hl: po
019200: 70 20 68 6C 09 09 3B 44 45 20 3D 20 66 69 6C 65 p hl..;DE = file
019210: 20 6C 65 6E 67 74 68 20 62 79 74 65 73 20 28 64 length bytes (d
019220: 65 73 74 69 6E 61 74 69 6F 6E 29 0D 0A 09 6C 64 estination)...ld
019230: 69 3A 20 6C 64 69 0D 0A 09 6C 64 20 28 69 79 2B i: ldi...ld (iy+
019240: 37 30 29 2C 6C 3A 20 6C 64 20 28 69 79 2B 37 31 70),l: ld (iy+71
019250: 29 2C 68 09 3B 48 4C 20 3D 3E 20 63 75 72 72 65 ),h.;HL => curre
019260: 6E 74 20 6E 61 6D 65 20 61 64 64 72 65 73 73 0D nt name address.
019270: 0A 0D 0A 09 6C 64 20 6C 2C 28 69 79 2B 37 29 3A ....ld l,(iy+7):
019280: 20 6C 64 20 68 2C 28 69 79 2B 38 29 09 3B 48 4C ld h,(iy+8).;HL
019290: 20 3D 20 66 69 6C 65 20 62 75 66 66 65 72 0D 0A = file buffer..
0192A0: 09 6C 64 20 64 65 2C 31 30 32 34 3A 20 61 64 64 .ld de,1024: add
0192B0: 20 68 6C 2C 64 65 0D 0A 09 65 78 20 64 65 2C 68 hl,de...ex de,h
0192C0: 6C 0D 0A 09 70 6F 70 20 68 6C 3A 20 6C 64 20 62 l...pop hl: ld b
0192D0: 2C 31 32 09 09 09 3B 50 4F 50 20 66 69 6C 65 6E ,12...;POP filen
0192E0: 61 6D 65 20 66 72 6F 6D 20 61 62 6F 76 65 0D 0A ame from above..
0192F0: 09 63 61 6C 6C 20 26 42 43 37 37 09 09 09 3B 43 .call &BC77...;C
019300: 64 20 64 65 2C 31 31 36 2B 31 32 38 3A 20 61 64 d de,116+128: ad
019310: 64 20 68 6C 2C 64 65 0D 0A 09 20 6C 64 20 61 2C d hl,de... ld a,
019320: 28 68 6C 29 20 09 09 09 3B 6C 64 20 61 2C 28 62 (hl) ...;ld a,(b
019330: 75 66 66 65 72 2B 31 32 39 29 0D 0A 09 70 6F 70 uffer+129)...pop
019340: 20 68 6C 09 09 09 09 3B 61 6E 64 20 67 65 74 20 hl....;and get
019350: 48 4C 20 62 61 63 6B 20 61 67 61 69 6E 0D 0A 09 HL back again...
019360: 6C 64 20 28 69 79 2B 31 30 32 29 2C 6C 3A 20 6C ld (iy+102),l: l
019370: 64 20 28 69 79 2B 31 30 33 29 2C 68 09 3B 62 6C d (iy+103),h.;bl
019380: 6F 63 6B 20 6C 65 6E 67 74 68 0D 0A 09 6F 72 20 ock length...or
019390: 61 3A 20 6A 72 20 6E 7A 2C 6E 72 69 09 09 09 3B a: jr nz,nri...;
0193A0: 44 6F 20 77 65 20 6E 65 65 64 20 74 6F 20 74 72 Do we need to tr
0193B0: 61 6E 73 6D 69 74 20 74 68 65 20 68 65 61 64 65 ansmit the heade
0193C0: 72 3F 0D 0A 0D 0A 09 6C 64 20 65 2C 28 69 79 2B r?.....ld e,(iy+
0193D0: 38 34 29 3A 20 6C 64 20 64 2C 28 69 79 2B 38 35 84): ld d,(iy+85
0193E0: 29 09 3B 44 45 20 3D 20 62 79 74 65 73 20 72 65 ).;DE = bytes re
0193F0: 61 64 20 69 6E 0D 0A 09 73 63 66 3A 20 63 63 66 ad in...scf: ccf
019400: 3A 20 73 62 63 20 68 6C 2C 64 65 0D 0A 09 6A 72 : sbc hl,de...jr
019410: 20 7A 2C 6E 72 69 09 09 09 3B 53 6B 69 70 20 69 z,nri...;Skip i
019420: 66 20 61 6C 6C 20 72 65 61 64 20 69 6E 20 61 6C f all read in al
019430: 72 65 61 64 79 0D 0A 0D 0A 2E 72 69 5F 6C 70 09 ready.....ri_lp.
019440: 63 61 6C 6C 20 26 42 43 38 30 0D 0A 09 64 65 63 call &BC80...dec
019450: 20 68 6C 3A 20 6C 64 20 61 2C 68 3A 20 6F 72 20 hl: ld a,h: or
019460: 6C 0D 0A 09 6A 72 20 6E 7A 2C 72 69 5F 6C 70 09 l...jr nz,ri_lp.
019470: 09 09 3B 52 65 61 64 20 74 68 65 20 62 79 74 65 ..;Read the byte
019480: 73 20 69 6E 21 0D 0A 0D 0A 2E 6E 72 69 09 6C 64 s in!.....nri.ld
019490: 20 61 2C 63 3A 20 63 61 6C 6C 20 73 65 6E 64 62 a,c: call sendb
0194A0: 74 09 09 3B 3C 3C 3C 20 42 79 74 65 73 20 61 72 t..;<<< Bytes ar
0194B0: 65 20 6E 6F 77 20 69 6E 20 70 6C 61 63 65 0D 0A e now in place..
0194C0: 09 6C 64 20 61 2C 28 69 79 2B 31 30 31 29 3A 20 .ld a,(iy+101):
0194D0: 63 61 6C 6C 20 73 65 6E 64 62 74 09 3B 41 20 3D call sendbt.;A =
0194E0: 20 62 6C 6F 63 6B 0D 0A 09 6C 64 20 61 2C 28 69 block...ld a,(i
0194F0: 79 2B 31 30 31 29 3A 20 63 70 6C 3A 20 63 61 6C y+101): cpl: cal
019500: 41 53 20 49 4E 20 4F 50 45 4E 0D 0A 0D 0A 09 63 AS IN OPEN.....c
019510: 70 20 26 31 36 3A 20 6A 72 20 7A 2C 6E 6F 68 65 p &16: jr z,nohe
019520: 61 64 09 09 3B 53 6B 69 70 20 69 66 20 74 68 65 ad..;Skip if the
019530: 72 65 20 69 73 20 6E 6F 20 68 65 61 64 65 72 0D re is no header.
019540: 0A 0D 0A 09 70 75 73 68 20 62 63 3A 20 70 75 73 ....push bc: pus
019550: 68 20 64 65 3A 20 70 75 73 68 20 68 6C 0D 0A 09 h de: push hl...
019560: 70 75 73 68 20 69 79 3A 20 70 6F 70 20 68 6C 0D push iy: pop hl.
019570: 0A 09 6C 64 20 64 65 2C 31 31 36 3A 20 61 64 64 ..ld de,116: add
019580: 20 68 6C 2C 64 65 3A 20 65 78 20 64 65 2C 68 6C hl,de: ex de,hl
019590: 09 3B 44 45 20 3D 20 62 75 66 66 65 72 20 61 64 .;DE = buffer ad
0195A0: 64 72 65 73 73 0D 0A 09 70 6F 70 20 68 6C 3A 20 dress...pop hl:
0195B0: 70 75 73 68 20 68 6C 0D 0A 09 6C 64 20 62 63 2C push hl...ld bc,
0195C0: 31 32 38 3A 20 6C 64 69 72 09 09 09 3B 43 6F 70 128: ldir...;Cop
0195D0: 79 20 68 65 61 64 65 72 20 74 6F 20 73 74 6F 72 y header to stor
0195E0: 65 0D 0A 09 6C 64 20 61 2C 31 0D 0A 09 6C 64 20 e...ld a,1...ld
0195F0: 28 64 65 29 2C 61 09 09 09 3B 61 6E 64 20 73 74 (de),a...;and st
019600: 6F 72 65 20 74 68 61 74 20 74 68 65 72 65 20 69 ore that there i
019610: 73 20 61 20 68 65 61 64 65 72 0D 0A 09 70 6F 70 s a header...pop
019620: 20 68 6C 3A 20 70 6F 70 20 64 65 3A 20 70 6F 70 hl: pop de: pop
019630: 20 62 63 0D 0A 0D 0A 09 6C 64 20 61 2C 62 3A 20 bc.....ld a,b:
019640: 6F 72 20 63 0D 0A 09 6A 72 20 7A 2C 6E 6F 68 65 or c...jr z,nohe
019650: 61 64 09 09 09 3B 69 66 20 66 69 6C 65 20 6C 65 ad...;if file le
019660: 6E 67 74 68 20 30 2C 20 63 61 6C 63 75 6C 61 74 ngth 0, calculat
019670: 65 20 69 74 0D 0A 0D 0A 09 6C 64 20 68 6C 2C 31 e it.....ld hl,1
019680: 32 38 3A 20 61 64 64 20 68 6C 2C 62 63 09 09 3B 28: add hl,bc..;
019690: 61 64 64 20 68 65 61 64 65 72 0D 0A 09 6C 64 20 add header...ld
0196A0: 28 69 79 2B 37 35 29 2C 6C 3A 20 6C 64 20 28 69 (iy+75),l: ld (i
0196B0: 79 2B 37 36 29 2C 68 0D 0A 09 6C 64 20 28 69 79 y+76),h...ld (iy
0196C0: 2B 37 37 29 2C 30 09 09 09 3B 73 74 6F 72 65 20 +77),0...;store
0196D0: 66 69 6C 65 20 6C 65 6E 67 74 68 0D 0A 09 6A 72 file length...jr
0196E0: 20 63 6C 63 64 75 6E 0D 0A 0D 0A 2E 6E 6F 68 65 clcdun.....nohe
0196F0: 61 64 09 6C 64 20 6C 2C 28 69 79 2B 37 35 29 3A ad.ld l,(iy+75):
019700: 6C 20 73 65 6E 64 62 74 0D 0A 09 6C 64 20 63 2C l sendbt...ld c,
019710: 28 69 79 2B 31 30 32 29 3A 20 6C 64 20 62 2C 28 (iy+102): ld b,(
019720: 69 79 2B 31 30 33 29 09 3B 42 43 20 3D 20 62 6C iy+103).;BC = bl
019730: 6F 63 6B 20 6C 65 6E 67 74 68 0D 0A 0D 0A 09 70 ock length.....p
019740: 75 73 68 20 69 79 3A 20 70 6F 70 20 68 6C 0D 0A ush iy: pop hl..
019750: 09 6C 64 20 64 65 2C 31 31 36 2B 31 32 38 3A 20 .ld de,116+128:
019760: 61 64 64 20 68 6C 2C 64 65 0D 0A 09 6C 64 20 61 add hl,de...ld a
019770: 2C 28 68 6C 29 09 09 09 3B 6C 64 20 61 2C 28 62 ,(hl)...;ld a,(b
019780: 75 66 66 65 72 2B 31 32 38 29 0D 0A 09 6F 72 20 uffer+128)...or
019790: 61 3A 20 6A 72 20 6E 7A 2C 68 65 61 64 72 65 0D a: jr nz,headre.
0197A0: 0A 0D 0A 09 6C 64 20 6C 2C 28 69 79 2B 34 33 29 ....ld l,(iy+43)
0197B0: 3A 20 6C 64 20 68 2C 28 69 79 2B 34 34 29 0D 0A : ld h,(iy+44)..
0197C0: 09 70 75 73 68 20 68 6C 3A 20 70 6F 70 20 69 78 .push hl: pop ix
0197D0: 09 09 09 3B 6C 64 20 69 78 2C 28 70 62 6C 6F 63 ...;ld ix,(pbloc
0197E0: 6B 29 20 2D 20 6E 6F 20 68 65 61 64 65 72 0D 0A k) - no header..
0197F0: 09 6C 64 20 68 6C 2C 30 0D 0A 09 6A 72 20 73 6E .ld hl,0...jr sn
019800: 64 6C 62 74 0D 0A 0D 0A 2E 68 65 61 64 72 65 09 dlbt.....headre.
019810: 70 75 73 68 20 69 79 3A 20 70 6F 70 20 69 78 09 push iy: pop ix.
019820: 09 09 3B 3C 3C 3C 20 53 65 74 20 75 70 20 74 6F ..;<<< Set up to
019830: 20 72 65 61 64 20 68 65 61 64 65 72 0D 0A 09 6C read header...l
019840: 64 20 64 65 2C 31 31 36 3A 20 61 64 64 20 69 78 d de,116: add ix
019850: 2C 64 65 09 09 3B 49 58 20 3D 20 62 75 66 66 65 ,de..;IX = buffe
019860: 72 20 28 68 65 61 64 65 72 20 61 64 64 72 65 73 r (header addres
019870: 73 21 29 0D 0A 09 6C 64 20 68 6C 2C 30 0D 0A 0D s!)...ld hl,0...
019880: 0A 2E 73 6E 64 6C 62 74 09 70 75 73 68 20 62 63 ..sndlbt.push bc
019890: 3A 20 6C 64 20 61 2C 28 69 78 29 0D 0A 09 6C 64 : ld a,(ix)...ld
0198A0: 20 65 2C 61 3A 20 63 61 6C 6C 20 73 65 6E 64 62 e,a: call sendb
0198B0: 74 0D 0A 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 31 t.....ld a,(iy+1
0198C0: 30 34 29 3A 20 63 70 20 26 31 35 3A 20 6A 72 20 04): cp &15: jr
0198D0: 6E 7A 2C 73 6E 64 63 72 63 0D 0A 09 6C 64 20 61 nz,sndcrc...ld a
0198E0: 2C 65 3A 20 61 64 64 20 61 2C 6C 3A 20 6C 64 20 ,e: add a,l: ld
0198F0: 6C 2C 61 3A 20 6A 72 20 73 6E 64 6D 6C 70 0D 0A l,a: jr sndmlp..
019900: 20 6C 64 20 68 2C 28 69 79 2B 37 36 29 09 3B 48 ld h,(iy+76).;H
019910: 4C 20 3D 20 66 69 6C 65 20 6C 65 6E 67 74 68 0D L = file length.
019920: 0A 09 78 6F 72 20 61 3A 20 6C 64 20 62 2C 31 30 ..xor a: ld b,10
019930: 0D 0A 2E 61 64 31 30 32 34 09 73 6C 61 20 6C 3A ...ad1024.sla l:
019940: 20 72 6C 20 68 3A 20 72 6C 20 61 0D 0A 09 64 6A rl h: rl a...dj
019950: 6E 7A 20 61 64 31 30 32 34 0D 0A 09 6C 64 20 28 nz ad1024...ld (
019960: 69 79 2B 37 35 29 2C 6C 3A 20 6C 64 20 28 69 79 iy+75),l: ld (iy
019970: 2B 37 36 29 2C 68 09 3B 73 74 6F 72 65 20 66 69 +76),h.;store fi
019980: 6C 65 20 6C 65 6E 67 74 68 0D 0A 09 6C 64 20 28 le length...ld (
019990: 69 79 2B 37 37 29 2C 30 0D 0A 0D 0A 2E 63 6C 63 iy+77),0.....clc
0199A0: 64 75 6E 09 6C 64 20 6C 2C 28 69 79 2B 37 29 3A dun.ld l,(iy+7):
0199B0: 20 6C 64 20 68 2C 28 69 79 2B 38 29 0D 0A 09 6C ld h,(iy+8)...l
0199C0: 64 20 64 65 2C 31 30 32 34 3A 20 61 64 64 20 68 d de,1024: add h
0199D0: 6C 2C 64 65 0D 0A 09 6C 64 20 28 69 79 2B 34 33 l,de...ld (iy+43
0199E0: 29 2C 6C 3A 20 6C 64 20 28 69 79 2B 34 34 29 2C ),l: ld (iy+44),
0199F0: 68 09 3B 48 4C 20 3D 3E 20 70 62 6C 6F 63 6B 0D h.;HL => pblock.
019A00: 0A 09 6C 64 20 62 63 2C 30 0D 0A 09 6C 64 20 28 ..ld bc,0...ld (
019A10: 69 79 2B 38 34 29 2C 63 3A 20 6C 64 20 28 69 79 iy+84),c: ld (iy
019A20: 2B 38 35 29 2C 62 09 3B 42 43 20 3D 3E 20 62 79 +85),b.;BC => by
019A30: 74 65 73 20 72 65 61 64 20 69 6E 0D 0A 0D 0A 2E tes read in.....
019A40: 63 66 62 6C 6B 09 6C 64 20 63 2C 31 3A 20 6C 64 cfblk.ld c,1: ld
019A50: 20 61 2C 28 69 79 2B 31 30 37 29 3A 20 63 70 20 a,(iy+107): cp
019A60: 32 3A 20 6A 72 20 6E 7A 2C 78 6D 73 65 6E 64 09 2: jr nz,xmsend.
019A70: 3B 41 20 3D 20 73 70 65 63 2E 70 72 6F 74 6F 63 ;A = spec.protoc
019A80: 6F 6C 0D 0A 09 6C 64 20 63 2C 30 0D 0A 2E 78 6D ol...ld c,0...xm
019A90: 73 65 6E 64 09 6C 64 20 61 2C 63 3A 20 6C 64 20 send.ld a,c: ld
019AA0: 28 69 79 2B 31 30 31 29 2C 61 09 09 3B 62 6C 6F (iy+101),a..;blo
019AB0: 63 6B 20 6E 6F 2E 0D 0A 0D 0A 09 6C 64 20 61 2C ck no......ld a,
019AC0: 28 69 79 2B 31 30 37 29 3A 20 6F 72 20 61 3A 20 (iy+107): or a:
019AD0: 6A 72 20 6E 7A 2C 6E 6F 74 62 78 6D 0D 0A 09 6C jr nz,notbxm...l
019AE0: 64 20 68 6C 2C 63 68 6B 74 78 74 3A 20 6A 72 20 d hl,chktxt: jr
019AF0: 70 74 79 70 65 0D 0A 2E 6E 6F 74 62 78 6D 09 63 ptype...notbxm.c
019B00: 2E 73 6E 64 63 72 63 09 63 61 6C 6C 20 63 72 63 .sndcrc.call crc
019B10: 0D 0A 2E 73 6E 64 6D 6C 70 09 69 6E 63 20 69 78 ...sndmlp.inc ix
019B20: 3A 20 70 6F 70 20 62 63 3A 20 64 65 63 20 62 63 : pop bc: dec bc
019B30: 3A 20 6C 64 20 61 2C 62 3A 20 6F 72 20 63 0D 0A : ld a,b: or c..
019B40: 09 6A 72 20 6E 7A 2C 73 6E 64 6C 62 74 0D 0A 09 .jr nz,sndlbt...
019B50: 6A 72 20 73 63 66 76 65 72 0D 0A 0D 0A 2E 79 6D jr scfver.....ym
019B60: 68 65 61 64 09 6C 64 20 61 2C 31 3A 09 63 61 6C head.ld a,1:.cal
019B70: 6C 20 73 65 6E 64 62 74 09 09 09 3B 73 65 6E 64 l sendbt...;send
019B80: 20 53 4F 48 0D 0A 09 78 6F 72 20 61 3A 09 63 61 SOH...xor a:.ca
019B90: 6C 6C 20 73 65 6E 64 62 74 09 09 09 3B 73 65 6E ll sendbt...;sen
019BA0: 64 20 62 6C 6F 63 6B 20 6E 6F 2E 0D 0A 09 78 6F d block no....xo
019BB0: 72 20 61 3A 20 20 63 70 6C 3A 20 63 61 6C 6C 20 r a: cpl: call
019BC0: 73 65 6E 64 62 74 09 09 3B 63 6F 6D 70 6C 65 6D sendbt..;complem
019BD0: 65 6E 74 65 64 0D 0A 0D 0A 09 70 75 73 68 20 69 ented.....push i
019BE0: 79 3A 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 20 62 y: pop hl...ld b
019BF0: 63 2C 35 35 3A 20 61 64 64 20 68 6C 2C 62 63 3A c,55: add hl,bc:
019C00: 20 70 75 73 68 20 68 6C 3A 20 70 6F 70 20 69 78 push hl: pop ix
019C10: 09 3B 49 58 20 3D 20 66 69 6C 65 6E 61 6D 65 0D .;IX = filename.
019C20: 0A 09 6C 64 20 68 6C 2C 30 3A 20 6C 64 20 63 2C ..ld hl,0: ld c,
019C30: 31 32 38 3A 20 6C 64 20 62 2C 31 32 0D 0A 2E 79 128: ld b,12...y
019C40: 6D 68 5F 6C 70 09 6C 64 20 61 2C 28 69 78 29 3A mh_lp.ld a,(ix):
019C50: 20 63 70 20 26 32 30 3A 20 63 61 6C 6C 20 6E 7A cp &20: call nz
019C60: 2C 79 6D 68 5F 73 63 0D 0A 09 69 6E 63 20 69 78 ,ymh_sc...inc ix
019C70: 3A 20 64 6A 6E 7A 20 79 6D 68 5F 6C 70 0D 0A 0D : djnz ymh_lp...
019C80: 0A 09 78 6F 72 20 61 3A 20 63 61 6C 6C 20 79 6D ..xor a: call ym
019C90: 68 5F 73 63 0D 0A 0D 0A 09 63 61 6C 6C 20 73 6E h_sc.....call sn
019CA0: 64 5F 74 62 0D 0A 0D 0A 2E 79 6D 68 5F 30 73 09 d_tb.....ymh_0s.
019CB0: 78 6F 72 20 61 3A 20 63 61 6C 6C 20 79 6D 68 5F xor a: call ymh_
019CC0: 73 63 0D 0A 09 6A 72 20 6E 7A 2C 79 6D 68 5F 30 sc...jr nz,ymh_0
019CD0: 73 0D 0A 09 6A 72 20 73 63 66 76 65 72 0D 0A 0D s...jr scfver...
019CE0: 0A 2E 79 6D 68 5F 73 63 09 70 75 73 68 20 62 63 ..ymh_sc.push bc
019CF0: 3A 20 6C 64 20 65 2C 61 3A 20 63 61 6C 6C 20 73 : ld e,a: call s
019D00: 70 20 31 3A 20 6A 72 20 6E 7A 2C 6E 6F 74 6F 6E p 1: jr nz,noton
019D10: 65 0D 0A 09 6C 64 20 68 6C 2C 6F 6E 65 74 78 74 e...ld hl,onetxt
019D20: 3A 20 6A 72 20 70 74 79 70 65 0D 0A 2E 6E 6F 74 : jr ptype...not
019D30: 6F 6E 65 09 6C 64 20 68 6C 2C 79 6D 74 65 78 74 one.ld hl,ymtext
019D40: 3A 20 63 61 6C 6C 20 73 74 72 69 6E 67 0D 0A 09 : call string...
019D50: 70 75 73 68 20 69 79 3A 20 70 6F 70 20 68 6C 3A push iy: pop hl:
019D60: 20 6C 64 20 64 65 2C 35 35 3A 20 61 64 64 20 68 ld de,55: add h
019D70: 6C 2C 64 65 09 09 3B 66 69 6C 65 6E 61 6D 65 0D l,de..;filename.
019D80: 0A 2E 70 74 79 70 65 09 63 61 6C 6C 20 73 74 72 ..ptype.call str
019D90: 69 6E 67 0D 0A 0D 0A 2E 77 63 68 6D 74 64 09 6C ing.....wchmtd.l
019DA0: 64 20 64 65 2C 35 30 3A 20 63 61 6C 6C 20 77 61 d de,50: call wa
019DB0: 69 74 62 74 0D 0A 09 63 70 20 22 43 22 3A 20 6A itbt...cp "C": j
019DC0: 72 20 7A 2C 73 73 65 6E 64 62 0D 0A 09 63 70 20 r z,ssendb...cp
019DD0: 26 31 35 3A 20 6A 72 20 7A 2C 73 73 65 6E 64 62 &15: jr z,ssendb
019DE0: 0D 0A 09 63 70 20 26 31 38 3A 20 6A 70 20 7A 2C ...cp &18: jp z,
019DF0: 61 62 6F 72 74 0D 0A 09 63 61 6C 6C 20 63 68 6B abort...call chk
019E00: 63 6E 75 0D 0A 09 6A 72 20 77 63 68 6D 74 64 0D cnu...jr wchmtd.
019E10: 0A 0D 0A 2E 73 73 65 6E 64 62 09 6C 64 20 28 69 ....ssendb.ld (i
019E20: 79 2B 31 30 34 29 2C 61 3A 20 78 6F 72 20 61 09 y+104),a: xor a.
019E30: 09 3B 4E 41 4B 2F 43 20 73 65 6E 74 3F 0D 0A 0D .;NAK/C sent?...
019E40: 0A 2E 73 74 73 62 6C 6B 09 6C 64 20 61 2C 28 69 ..stsblk.ld a,(i
019E50: 79 2B 31 30 31 29 3A 20 6F 72 20 61 3A 20 6A 72 y+101): or a: jr
019E60: 20 7A 2C 74 72 6E 62 6C 6B 20 20 3B 62 6C 6F 63 z,trnblk ;bloc
019E70: 6B 20 6E 6F 2E 0D 0A 09 6C 64 20 61 2C 31 33 3A k no....ld a,13:
019E80: 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A 09 6C 64 call &BB5A...ld
019E90: 20 61 2C 32 32 3A 20 63 61 6C 6C 20 26 42 42 36 a,22: call &BB6
019EA0: 46 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 31 30 31 F...ld a,(iy+101
019EB0: 29 3A 20 63 61 6C 6C 20 70 72 5F 64 65 63 0D 0A ): call pr_dec..
019EC0: 09 6C 64 20 61 2C 33 32 3A 20 63 61 6C 6C 20 26 .ld a,32: call &
019ED0: 42 42 35 41 0D 0A 09 6C 64 20 61 2C 38 3A 20 63 BB5A...ld a,8: c
019EE0: 61 6C 6C 20 26 42 42 35 41 0D 0A 0D 0A 2E 74 72 all &BB5A.....tr
019EF0: 6E 62 6C 6B 09 6C 64 20 61 2C 28 69 79 2B 31 30 nblk.ld a,(iy+10
019F00: 65 6E 64 62 74 09 3B 59 4D 6F 64 65 6D 20 68 65 endbt.;YModem he
019F10: 61 64 65 72 2C 20 73 65 6E 64 20 63 68 61 72 61 ader, send chara
019F20: 63 74 65 72 0D 0A 09 6C 64 20 61 2C 28 69 79 2B cter...ld a,(iy+
019F30: 31 30 34 29 3A 20 63 70 20 26 31 35 0D 0A 09 6A 104): cp &15...j
019F40: 72 20 6E 7A 2C 79 73 63 5F 63 63 0D 0A 09 6C 64 r nz,ysc_cc...ld
019F50: 20 61 2C 65 3A 20 61 64 64 20 61 2C 6C 3A 20 6C a,e: add a,l: l
019F60: 64 20 6C 2C 61 3A 20 6A 72 20 79 73 63 5F 70 6C d l,a: jr ysc_pl
019F70: 0D 0A 2E 79 73 63 5F 63 63 09 63 61 6C 6C 20 63 ...ysc_cc.call c
019F80: 72 63 0D 0A 2E 79 73 63 5F 70 6C 09 70 6F 70 20 rc...ysc_pl.pop
019F90: 62 63 3A 20 64 65 63 20 63 3A 20 72 65 74 0D 0A bc: dec c: ret..
019FA0: 0D 0A 2E 73 63 66 76 65 72 09 6C 64 20 61 2C 28 ...scfver.ld a,(
019FB0: 69 79 2B 31 30 34 29 3A 20 63 70 20 26 31 35 3A iy+104): cp &15:
019FC0: 20 6A 72 20 7A 2C 73 63 6F 6C 0D 0A 09 6C 64 20 jr z,scol...ld
019FD0: 65 2C 30 3A 20 63 61 6C 6C 20 63 72 63 3A 20 63 e,0: call crc: c
019FE0: 61 6C 6C 20 63 72 63 0D 0A 09 6C 64 20 61 2C 68 all crc...ld a,h
019FF0: 3A 20 63 61 6C 6C 20 73 65 6E 64 62 74 0D 0A 2E : call sendbt...
01A000: 73 63 6F 6C 09 6C 64 20 61 2C 6C 3A 20 63 61 6C scol.ld a,l: cal
01A010: 6C 20 73 65 6E 64 62 74 0D 0A 0D 0A 2E 77 34 72 l sendbt.....w4r
01A020: 73 6C 74 09 6C 64 20 64 65 2C 35 30 3A 20 63 61 slt.ld de,50: ca
01A030: 6C 6C 20 77 61 69 74 62 74 0D 0A 09 63 70 20 36 ll waitbt...cp 6
01A040: 3A 20 6A 72 20 7A 2C 62 6C 73 6F 6B 0D 0A 09 63 : jr z,blsok...c
01A050: 70 20 26 31 38 3A 20 6A 70 20 7A 2C 61 62 6F 72 p &18: jp z,abor
01A060: 74 0D 0A 09 63 70 20 26 31 35 3A 20 6A 72 20 7A t...cp &15: jr z
01A070: 2C 65 72 69 6E 75 70 0D 0A 09 63 61 6C 6C 20 63 ,erinup...call c
01A080: 68 6B 63 6E 75 3A 20 6A 72 20 77 34 72 73 6C 74 hkcnu: jr w4rslt
01A090: 0D 0A 2E 65 72 69 6E 75 70 09 6C 64 20 61 2C 22 ...erinup.ld a,"
01A0A0: 3F 22 3A 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A ?": call &BB5A..
01A0B0: 09 6C 64 20 61 2C 38 3A 20 20 20 63 61 6C 6C 20 .ld a,8: call
01A0C0: 26 42 42 35 41 0D 0A 09 6C 64 20 6C 2C 28 69 79 &BB5A...ld l,(iy
01A0D0: 2B 31 30 32 29 3A 20 6C 64 20 68 2C 28 69 79 2B +102): ld h,(iy+
01A0E0: 31 30 33 29 09 09 3B 48 4C 20 3D 20 62 6C 6F 63 103)..;HL = bloc
01A0F0: 6B 20 6C 65 6E 67 74 68 0D 0A 09 6C 64 20 28 69 k length...ld (i
01A100: 31 29 3A 20 6F 72 20 61 3A 20 6A 70 20 7A 2C 79 1): or a: jp z,y
01A110: 6D 68 65 61 64 20 20 3B 62 6C 6F 63 6B 20 30 3F mhead ;block 0?
01A120: 0D 0A 0D 0A 09 6C 64 20 68 6C 2C 31 30 32 34 3A .....ld hl,1024:
01A130: 20 6C 64 20 63 2C 32 09 09 3B 44 65 66 61 75 6C ld c,2..;Defaul
01A140: 74 20 31 6B 2E 2E 2E 0D 0A 0D 0A 09 6C 64 20 61 t 1k........ld a
01A150: 2C 28 69 79 2B 31 30 37 29 09 09 09 3B 31 32 38 ,(iy+107)...;128
01A160: 2D 62 79 74 65 20 70 72 6F 74 6F 63 6F 6C 3F 0D -byte protocol?.
01A170: 0A 09 6F 72 20 61 3A 20 6A 72 20 7A 2C 62 6C 31 ..or a: jr z,bl1
01A180: 32 38 0D 0A 0D 0A 09 70 75 73 68 20 68 6C 0D 0A 28.....push hl..
01A190: 09 70 75 73 68 20 69 79 3A 20 70 6F 70 20 68 6C .push iy: pop hl
01A1A0: 0D 0A 09 6C 64 20 64 65 2C 31 31 36 2B 31 32 38 ...ld de,116+128
01A1B0: 3A 20 61 64 64 20 68 6C 2C 64 65 0D 0A 09 6C 64 : add hl,de...ld
01A1C0: 20 61 2C 28 68 6C 29 3A 20 70 6F 70 20 68 6C 09 a,(hl): pop hl.
01A1D0: 09 3B 6C 64 20 61 2C 28 62 75 66 66 65 72 2B 31 .;ld a,(buffer+1
01A1E0: 32 38 29 0D 0A 09 6F 72 20 61 3A 20 6A 72 20 6E 28)...or a: jr n
01A1F0: 7A 2C 62 6C 31 32 38 09 09 3B 4E 65 65 64 20 74 z,bl128..;Need t
01A200: 6F 20 74 72 61 6E 73 6D 69 74 20 68 65 61 64 65 o transmit heade
01A210: 72 3F 0D 0A 0D 0A 09 6C 64 20 61 2C 28 69 79 2B r?.....ld a,(iy+
01A220: 37 37 29 09 09 09 3B 4D 6F 72 65 20 74 68 61 6E 77)...;More than
01A230: 20 31 6B 20 6C 65 66 74 3F 20 5B 66 69 6C 65 20 1k left? [file
01A240: 6C 65 6E 67 74 68 5D 0D 0A 09 6F 72 20 61 3A 20 length]...or a:
01A250: 6A 72 20 6E 7A 2C 62 6C 64 65 63 0D 0A 0D 0A 09 jr nz,bldec.....
01A260: 6C 64 20 61 2C 28 69 79 2B 37 36 29 0D 0A 09 63 ld a,(iy+76)...c
01A270: 70 20 34 3A 20 6A 72 20 6E 63 2C 62 6C 64 65 63 p 4: jr nc,bldec
01A280: 09 09 3B 4D 6F 72 65 20 74 68 61 6E 20 35 31 32 ..;More than 512
01A290: 20 62 79 74 65 73 20 6C 65 66 74 3F 0D 0A 0D 0A bytes left?....
01A2A0: 2E 62 6C 31 32 38 09 6C 64 20 68 6C 2C 31 32 38 .bl128.ld hl,128
01A2B0: 3A 20 6C 64 20 63 2C 31 0D 0A 0D 0A 2E 62 6C 64 : ld c,1.....bld
01A2C0: 65 63 09 70 75 73 68 20 68 6C 09 09 09 09 3B 53 ec.push hl....;S
01A2D0: 74 6F 72 65 20 48 4C 20 61 67 61 69 6E 73 74 20 tore HL against
01A2E0: 49 59 20 63 61 6C 63 73 0D 0A 09 20 70 75 73 68 IY calcs... push
01A2F0: 20 69 79 3A 20 70 6F 70 20 68 6C 0D 0A 09 20 6C iy: pop hl... l
01A300: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
01A310: 16 00 01 00 02 09 4E E5 16 00 C4 02 00 00 00 02 ......N.........
01A320: 16 00 C9 02 00 00 00 02 16 00 C5 02 00 00 00 02 ................
01A330: 16 00 C1 02 00 00 00 02 16 00 C6 02 00 00 00 02 ................
01A340: 16 00 C2 02 00 00 00 02 16 00 C7 02 00 00 00 02 ................
01A350: 16 00 C3 02 00 00 00 02 16 00 C8 02 00 00 00 02 ................
01A360: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01A370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01A380: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01A390: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01A3A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01A3B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01A3C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01A3D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01A3E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01A3F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01A400: 62 6C 09 78 6F 72 20 61 3A 20 63 61 6C 6C 20 79 bl.xor a: call y
01A410: 6D 68 5F 73 63 0D 0A 09 6A 72 20 6E 7A 2C 6E 75 mh_sc...jr nz,nu
01A420: 6C 62 6C 0D 0A 0D 0A 09 6C 64 20 61 2C 28 69 79 lbl.....ld a,(iy
01A430: 2B 31 30 34 29 3A 20 63 70 20 26 31 35 3A 20 6A +104): cp &15: j
01A440: 72 20 7A 2C 6E 63 6F 6C 0D 0A 09 78 6F 72 20 61 r z,ncol...xor a
01A450: 3A 20 63 61 6C 6C 20 63 72 63 3A 20 63 61 6C 6C : call crc: call
01A460: 20 63 72 63 0D 0A 09 6C 64 20 61 2C 68 3A 20 63 crc...ld a,h: c
01A470: 61 6C 6C 20 73 65 6E 64 62 74 0D 0A 2E 6E 63 6F all sendbt...nco
01A480: 6C 09 6C 64 20 61 2C 6C 3A 20 63 61 6C 6C 20 73 l.ld a,l: call s
01A490: 65 6E 64 62 74 0D 0A 0D 0A 2E 61 66 6C 63 70 20 endbt.....aflcp
01A4A0: 09 6C 64 20 64 65 2C 35 30 3A 20 63 61 6C 6C 20 .ld de,50: call
01A4B0: 77 61 69 74 62 74 0D 0A 09 63 70 20 26 31 35 3A waitbt...cp &15:
01A4C0: 20 6A 72 20 7A 2C 72 73 78 62 0D 0A 09 63 70 20 jr z,rsxb...cp
01A4D0: 36 3A 20 6A 72 20 7A 2C 62 79 65 62 79 65 0D 0A 6: jr z,byebye..
01A4E0: 09 63 61 6C 6C 20 63 68 6B 63 6E 75 3A 20 6A 72 .call chkcnu: jr
01A4F0: 20 61 66 6C 63 70 0D 0A 2E 62 79 65 62 79 65 09 aflcp...byebye.
01A500: 6C 64 20 68 6C 2C 6C 61 73 74 63 72 3A 20 6A 70 ld hl,lastcr: jp
01A510: 20 73 74 72 69 6E 67 0D 0A 0D 0A 2E 61 62 6F 72 string.....abor
01A520: 74 09 6C 64 20 61 2C 31 33 3A 20 63 61 6C 6C 20 t.ld a,13: call
01A530: 26 42 42 35 41 0D 0A 09 6C 64 20 61 2C 32 32 3A &BB5A...ld a,22:
01A540: 20 63 61 6C 6C 20 26 42 42 36 46 0D 0A 09 6C 64 call &BB6F...ld
01A550: 20 68 6C 2C 61 62 72 72 65 71 3A 20 63 61 6C 6C hl,abrreq: call
01A560: 20 73 74 72 69 6E 67 0D 0A 09 6A 70 20 26 42 43 string...jp &BC
01A570: 37 44 0D 0A 0D 0A 2E 73 6E 64 5F 74 62 09 70 75 7D.....snd_tb.pu
01A580: 73 68 20 62 63 3A 20 70 75 73 68 20 68 6C 09 09 sh bc: push hl..
01A590: 3B 53 65 6E 64 20 33 20 62 79 74 65 20 6C 65 6E ;Send 3 byte len
01A5A0: 67 74 68 20 61 73 20 64 65 63 69 6D 61 6C 0D 0A gth as decimal..
01A5B0: 09 70 75 73 68 20 69 79 3A 20 70 6F 70 20 69 78 .push iy: pop ix
01A5C0: 0D 0A 09 6C 64 20 62 63 2C 37 39 3A 20 61 64 64 ...ld bc,79: add
01A5D0: 20 69 78 2C 62 63 0D 0A 09 78 6F 72 20 61 3A 20 ix,bc...xor a:
01A5E0: 6C 64 20 28 69 79 2B 37 38 29 2C 61 3A 20 6C 64 ld (iy+78),a: ld
01A5F0: 20 6C 2C 28 69 79 2B 37 35 29 3A 20 6C 64 20 68 l,(iy+75): ld h
01A600: 31 42 09 09 3B 72 65 6D 6F 76 65 20 62 72 65 61 1B..;remove brea
01A610: 6B 3F 0D 0A 09 63 61 6C 6C 20 26 42 43 37 44 3A k?...call &BC7D:
01A620: 20 6A 70 20 26 42 43 39 32 09 09 3B 61 62 61 6E jp &BC92..;aban
01A630: 64 6F 6E 20 66 69 6C 65 73 0D 0A 0D 0A 0D 0A 0D don files.......
01A640: 0A 09 3B 3E 3E 3E 20 42 55 46 46 45 52 20 63 6F ..;>>> BUFFER co
01A650: 6D 6D 61 6E 64 0D 0A 0D 0A 2E 62 75 66 66 5F 69 mmand.....buff_i
01A660: 09 6C 64 20 63 2C 32 0D 0A 09 63 70 20 31 3A 20 .ld c,2...cp 1:
01A670: 6A 70 20 6E 7A 2C 65 72 72 6F 72 0D 0A 0D 0A 09 jp nz,error.....
01A680: 6C 64 20 6C 2C 28 69 78 29 3A 20 6C 64 20 68 2C ld l,(ix): ld h,
01A690: 28 69 78 2B 31 29 0D 0A 09 6C 64 20 28 69 79 2B (ix+1)...ld (iy+
01A6A0: 37 29 2C 6C 3A 20 6C 64 20 28 69 79 2B 38 29 2C 7),l: ld (iy+8),
01A6B0: 68 0D 0A 09 72 65 74 0D 0A 0D 0A 0D 0A 0D 0A 09 h...ret.........
01A6C0: 3B 3E 3E 3E 20 50 52 4F 54 4F 43 4F 4C 20 63 6F ;>>> PROTOCOL co
01A6D0: 6D 6D 61 6E 64 0D 0A 0D 0A 2E 70 72 6F 74 5F 69 mmand.....prot_i
01A6E0: 09 6C 64 20 63 2C 32 0D 0A 09 63 70 20 31 3A 20 .ld c,2...cp 1:
01A6F0: 6A 70 20 6E 7A 2C 65 72 72 6F 72 0D 0A 0D 0A 09 jp nz,error.....
01A700: 64 65 63 20 63 0D 0A 09 6C 64 20 61 2C 28 69 78 dec c...ld a,(ix
01A710: 29 3A 20 63 70 20 33 3A 20 6A 70 20 6E 63 2C 65 ): cp 3: jp nc,e
01A720: 72 72 6F 72 0D 0A 09 6C 64 20 28 69 79 2B 31 30 rror...ld (iy+10
01A730: 37 29 2C 61 3A 20 72 65 74 0D 0A 0D 0A 0D 0A 0D 7),a: ret.......
01A740: 0A 09 3B 2A 2A 2A 20 46 49 4C 45 20 53 55 42 52 ..;*** FILE SUBR
01A750: 4F 55 54 49 4E 45 53 20 2A 2A 2A 0D 0A 0D 0A 09 OUTINES ***.....
01A760: 3B 3E 3E 3E 20 52 65 61 64 20 66 69 6C 65 6E 61 ;>>> Read filena
01A770: 6D 65 73 20 69 6E 74 6F 20 62 75 66 66 65 72 0D mes into buffer.
01A780: 0A 0D 0A 2E 72 66 6E 61 6D 65 09 6C 64 20 28 69 ....rfname.ld (i
01A790: 79 2B 34 32 29 2C 61 09 09 09 3B 6E 75 6D 62 65 y+42),a...;numbe
01A7A0: 72 20 6F 66 20 70 61 72 61 6D 65 74 65 72 73 0D r of parameters.
01A7B0: 0A 09 6C 64 20 6C 2C 28 69 79 2B 37 29 3A 20 6C ..ld l,(iy+7): l
01A7C0: 64 20 68 2C 28 69 79 2B 38 29 09 3B 66 69 6C 65 d h,(iy+8).;file
01A7D0: 20 62 75 66 66 65 72 20 61 64 64 72 65 73 73 0D buffer address.
01A7E0: 0A 09 6C 64 20 28 69 79 2B 37 30 29 2C 6C 3A 20 ..ld (iy+70),l:
01A7F0: 6C 64 20 28 69 79 2B 37 31 29 2C 68 09 3B 63 75 ld (iy+71),h.;cu
01A800: 2C 28 69 79 2B 37 36 29 0D 0A 09 6C 64 20 64 65 ,(iy+76)...ld de
01A810: 2C 31 30 30 30 30 3A 20 63 61 6C 6C 20 73 74 68 ,10000: call sth
01A820: 6C 72 0D 0A 09 6C 64 20 64 65 2C 31 30 30 30 3A lr...ld de,1000:
01A830: 20 63 61 6C 6C 20 73 74 68 6C 72 0D 0A 09 6C 64 call sthlr...ld
01A840: 20 64 65 2C 31 30 30 3A 20 63 61 6C 6C 20 73 74 de,100: call st
01A850: 68 6C 72 0D 0A 09 6C 64 20 64 65 2C 31 30 3A 20 hlr...ld de,10:
01A860: 63 61 6C 6C 20 73 74 68 6C 72 0D 0A 09 6C 64 20 call sthlr...ld
01A870: 64 65 2C 31 3A 20 63 61 6C 6C 20 73 74 68 6C 72 de,1: call sthlr
01A880: 0D 0A 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 37 37 .....ld a,(iy+77
01A890: 29 3A 20 6C 64 20 65 2C 61 0D 0A 2E 63 63 61 5F ): ld e,a...cca_
01A8A0: 6F 6C 09 20 70 75 73 68 20 69 79 3A 20 70 6F 70 ol. push iy: pop
01A8B0: 20 69 78 0D 0A 09 20 6C 64 20 62 63 2C 38 33 3A ix... ld bc,83:
01A8C0: 20 61 64 64 20 69 78 2C 62 63 09 09 3B 49 58 20 add ix,bc..;IX
01A8D0: 3D 20 66 64 65 63 2B 35 0D 0A 09 6C 64 20 68 6C = fdec+5...ld hl
01A8E0: 2C 66 66 66 66 2B 35 0D 0A 09 78 6F 72 20 61 3A ,ffff+5...xor a:
01A8F0: 20 63 70 20 65 3A 20 6A 72 20 7A 2C 6E 6F 76 68 cp e: jr z,novh
01A900: 62 3A 20 6C 64 20 62 63 2C 26 36 30 30 0D 0A 2E b: ld bc,&600...
01A910: 63 63 61 5F 6C 70 09 6C 64 20 61 2C 63 3A 20 61 cca_lp.ld a,c: a
01A920: 64 64 20 61 2C 28 69 78 29 3A 20 61 64 64 20 61 dd a,(ix): add a
01A930: 2C 28 68 6C 29 0D 0A 09 6C 64 20 63 2C 30 3A 20 ,(hl)...ld c,0:
01A940: 63 70 20 31 30 3A 20 6A 72 20 63 2C 65 78 63 63 cp 10: jr c,excc
01A950: 0D 0A 2E 63 63 61 72 72 79 09 73 75 62 20 31 30 ...ccarry.sub 10
01A960: 3A 20 69 6E 63 20 63 3A 20 63 70 20 31 30 3A 20 : inc c: cp 10:
01A970: 6A 72 20 6E 63 2C 63 63 61 72 72 79 0D 0A 2E 65 jr nc,ccarry...e
01A980: 78 63 63 09 6C 64 20 28 69 78 29 2C 61 3A 20 64 xcc.ld (ix),a: d
01A990: 65 63 20 69 78 3A 20 64 65 63 20 68 6C 3A 20 64 ec ix: dec hl: d
01A9A0: 6A 6E 7A 20 63 63 61 5F 6C 70 0D 0A 09 64 65 63 jnz cca_lp...dec
01A9B0: 20 65 3A 20 6A 72 20 6E 7A 2C 63 63 61 5F 6F 6C e: jr nz,cca_ol
01A9C0: 0D 0A 0D 0A 2E 6E 6F 76 68 62 09 70 75 73 68 20 .....novhb.push
01A9D0: 69 79 3A 20 70 6F 70 20 69 78 0D 0A 09 6C 64 20 iy: pop ix...ld
01A9E0: 62 63 2C 37 38 3A 20 61 64 64 20 69 78 2C 62 63 bc,78: add ix,bc
01A9F0: 09 09 3B 49 58 20 3D 20 66 64 65 63 0D 0A 09 70 ..;IX = fdec...p
01AA00: 79 2B 38 34 29 2C 6C 3A 20 6C 64 20 28 69 79 2B y+84),l: ld (iy+
01AA10: 38 35 29 2C 68 09 09 3B 48 4C 20 3D 3E 20 62 79 85),h..;HL => by
01AA20: 74 65 73 20 72 65 61 64 20 69 6E 0D 0A 09 6A 70 tes read in...jp
01AA30: 20 74 72 6E 62 6C 6B 0D 0A 0D 0A 2E 62 6C 73 6F trnblk.....blso
01AA40: 6B 09 6C 64 20 61 2C 28 69 79 2B 31 30 31 29 3A k.ld a,(iy+101):
01AA50: 20 69 6E 63 20 61 3A 20 6C 64 20 28 69 79 2B 31 inc a: ld (iy+1
01AA60: 30 31 29 2C 61 09 3B 69 6E 63 72 65 61 73 65 20 01),a.;increase
01AA70: 62 6C 6F 63 6B 20 6E 6F 2E 0D 0A 09 63 70 20 31 block no....cp 1
01AA80: 3A 20 6A 70 20 7A 2C 77 63 68 6D 74 64 0D 0A 0D : jp z,wchmtd...
01AA90: 0A 09 6C 64 20 6C 2C 28 69 79 2B 37 35 29 3A 20 ..ld l,(iy+75):
01AAA0: 6C 64 20 68 2C 28 69 79 2B 37 36 29 3A 20 6C 64 ld h,(iy+76): ld
01AAB0: 20 61 2C 28 69 79 2B 37 37 29 20 3B 66 69 6C 65 a,(iy+77) ;file
01AAC0: 20 6C 65 6E 67 74 68 0D 0A 09 6C 64 20 65 2C 28 length...ld e,(
01AAD0: 69 79 2B 31 30 32 29 3A 20 6C 64 20 64 2C 28 69 iy+102): ld d,(i
01AAE0: 79 2B 31 30 33 29 0D 0A 09 73 63 66 3A 20 63 63 y+103)...scf: cc
01AAF0: 66 3A 20 73 62 63 20 68 6C 2C 64 65 3A 20 6A 72 f: sbc hl,de: jr
01AB00: 20 6E 63 2C 6E 64 68 62 6C 09 3B 73 75 62 74 72 nc,ndhbl.;subtr
01AB10: 61 63 74 20 62 6C 6F 63 6B 20 6C 65 6E 67 74 68 act block length
01AB20: 0D 0A 09 64 65 63 20 61 0D 0A 2E 6E 64 68 62 6C ...dec a...ndhbl
01AB30: 09 6C 64 20 28 69 79 2B 37 35 29 2C 6C 3A 20 6C .ld (iy+75),l: l
01AB40: 64 20 28 69 79 2B 37 36 29 2C 68 3A 20 6C 64 20 d (iy+76),h: ld
01AB50: 28 69 79 2B 37 37 29 2C 61 0D 0A 0D 0A 09 63 70 (iy+77),a.....cp
01AB60: 20 26 45 30 3A 20 6A 70 20 6E 63 2C 65 6F 66 75 &E0: jp nc,eofu
01AB70: 74 0D 0A 0D 0A 09 70 75 73 68 20 69 78 3A 20 63 t.....push ix: c
01AB80: 61 6C 6C 20 26 42 43 38 39 3A 20 70 6F 70 20 69 all &BC89: pop i
01AB90: 78 0D 0A 09 6A 72 20 63 2C 65 6F 66 6F 6B 3A 20 x...jr c,eofok:
01ABA0: 6A 72 20 7A 2C 65 6F 66 6F 6B 0D 0A 09 63 70 20 jr z,eofok...cp
01ABB0: 26 30 46 3A 20 6A 70 20 7A 2C 65 6F 66 75 74 0D &0F: jp z,eofut.
01ABC0: 0A 0D 0A 2E 65 6F 66 6F 6B 09 70 75 73 68 20 69 ....eofok.push i
01ABD0: 78 0D 0A 09 20 70 75 73 68 20 69 79 3A 20 70 6F x... push iy: po
01ABE0: 70 20 68 6C 0D 0A 09 20 6C 64 20 64 65 2C 31 31 p hl... ld de,11
01ABF0: 36 2B 31 32 38 3A 20 61 64 64 20 68 6C 2C 64 65 6+128: add hl,de
01AC00: 6F 70 20 68 6C 3A 20 70 6F 70 20 62 63 3A 20 6C op hl: pop bc: l
01AC10: 64 20 62 2C 36 3A 20 6C 64 20 65 2C 30 0D 0A 2E d b,6: ld e,0...
01AC20: 70 6E 6D 5F 6C 70 09 6C 64 20 61 2C 28 69 78 29 pnm_lp.ld a,(ix)
01AC30: 3A 20 6C 64 20 64 2C 61 3A 20 6F 72 20 65 3A 20 : ld d,a: or e:
01AC40: 6C 64 20 61 2C 64 3A 20 6A 72 20 7A 2C 69 61 6C ld a,d: jr z,ial
01AC50: 30 0D 0A 09 6C 64 20 65 2C 32 35 35 3A 20 61 64 0...ld e,255: ad
01AC60: 64 20 26 33 30 3A 20 63 61 6C 6C 20 79 6D 68 5F d &30: call ymh_
01AC70: 73 63 0D 0A 2E 69 61 6C 30 09 69 6E 63 20 69 78 sc...ial0.inc ix
01AC80: 3A 20 64 6A 6E 7A 20 70 6E 6D 5F 6C 70 3A 20 72 : djnz pnm_lp: r
01AC90: 65 74 0D 0A 0D 0A 2E 73 74 68 6C 72 09 78 6F 72 et.....sthlr.xor
01ACA0: 20 61 0D 0A 2E 73 74 68 6C 6C 70 09 73 63 66 3A a...sthllp.scf:
01ACB0: 20 63 63 66 3A 20 73 62 63 20 68 6C 2C 64 65 3A ccf: sbc hl,de:
01ACC0: 20 6A 72 20 63 2C 73 74 68 6C 6F 3A 20 69 6E 63 jr c,sthlo: inc
01ACD0: 20 61 3A 20 6A 72 20 73 74 68 6C 6C 70 0D 0A 2E a: jr sthllp...
01ACE0: 73 74 68 6C 6F 09 61 64 64 20 68 6C 2C 64 65 3A sthlo.add hl,de:
01ACF0: 20 6C 64 20 28 69 78 29 2C 61 3A 20 69 6E 63 20 ld (ix),a: inc
01AD00: 69 78 3A 20 72 65 74 0D 0A 0D 0A 2E 63 68 72 63 ix: ret.....chrc
01AD10: 68 6B 09 63 70 20 39 37 3A 20 6A 72 20 63 2C 6E hk.cp 97: jr c,n
01AD20: 6F 74 6C 6F 77 0D 0A 09 63 70 20 31 32 33 3A 20 otlow...cp 123:
01AD30: 6A 72 20 6E 63 2C 6E 6F 74 6C 6F 77 0D 0A 09 72 jr nc,notlow...r
01AD40: 65 73 20 35 2C 61 0D 0A 2E 6E 6F 74 6C 6F 77 09 es 5,a...notlow.
01AD50: 6C 64 20 68 6C 2C 6F 6B 63 68 61 72 0D 0A 09 6C ld hl,okchar...l
01AD60: 64 20 63 2C 61 0D 0A 2E 63 7A 6C 6F 6F 70 09 6C d c,a...czloop.l
01AD70: 64 20 61 2C 28 68 6C 29 0D 0A 09 6F 72 20 61 0D d a,(hl)...or a.
01AD80: 0A 09 6A 72 20 7A 2C 65 78 69 74 63 6B 0D 0A 09 ..jr z,exitck...
01AD90: 63 70 20 63 0D 0A 09 72 65 74 20 7A 0D 0A 09 69 cp c...ret z...i
01ADA0: 6E 63 20 68 6C 0D 0A 09 6A 72 20 63 7A 6C 6F 6F nc hl...jr czloo
01ADB0: 70 0D 0A 0D 0A 2E 65 78 69 74 63 6B 09 6C 64 20 p.....exitck.ld
01ADC0: 63 2C 33 0D 0A 09 70 6F 70 20 68 6C 09 09 09 09 c,3...pop hl....
01ADD0: 3B 43 41 4C 4C 69 6E 67 20 61 64 64 72 65 73 73 ;CALLing address
01ADE0: 0D 0A 09 70 6F 70 20 68 6C 09 09 09 09 3B 48 4C ...pop hl....;HL
01ADF0: 20 73 61 76 65 64 0D 0A 09 6A 70 20 65 72 72 6F saved...jp erro
01AE00: 0D 0A 09 20 6C 64 20 61 2C 28 68 6C 29 09 09 09 ... ld a,(hl)...
01AE10: 3B 57 61 73 20 69 74 20 61 20 68 65 61 64 65 72 ;Was it a header
01AE20: 3F 0D 0A 09 20 6C 64 20 65 2C 28 69 79 2B 37 29 ?... ld e,(iy+7)
01AE30: 3A 20 6C 64 20 64 2C 28 69 79 2B 38 29 09 3B 44 : ld d,(iy+8).;D
01AE40: 45 20 3D 20 66 69 6C 65 20 62 75 66 66 65 72 20 E = file buffer
01AE50: 61 64 64 72 65 73 73 0D 0A 09 20 70 6F 70 20 68 address... pop h
01AE60: 6C 0D 0A 09 6F 72 20 61 3A 20 6A 72 20 6E 7A 2C l...or a: jr nz,
01AE70: 77 61 73 68 65 64 09 09 3B 49 66 20 73 6F 2C 20 washed..;If so,
01AE80: 6F 6B 2C 20 67 65 74 20 62 6C 6F 63 6B 20 61 64 ok, get block ad
01AE90: 64 72 65 73 73 0D 0A 09 70 75 73 68 20 68 6C 0D dress...push hl.
01AEA0: 0A 09 73 63 66 3A 20 63 63 66 3A 20 73 62 63 20 ..scf: ccf: sbc
01AEB0: 68 6C 2C 64 65 0D 0A 09 6C 64 20 61 2C 26 43 3A hl,de...ld a,&C:
01AEC0: 20 63 70 20 68 09 09 09 3B 33 6B 20 61 62 6F 76 cp h...;3k abov
01AED0: 65 20 66 62 61 64 64 72 20 79 65 74 3F 0D 0A 09 e fbaddr yet?...
01AEE0: 70 6F 70 20 68 6C 0D 0A 09 6A 72 20 6E 7A 2C 6E pop hl...jr nz,n
01AEF0: 6F 76 65 72 09 09 09 3B 4E 6F 2C 20 77 65 27 72 over...;No, we'r
01AF00: 65 20 6F 6B 0D 0A 09 6C 64 20 6C 2C 28 69 79 2B e ok...ld l,(iy+
01AF10: 37 29 3A 20 6C 64 20 68 2C 28 69 79 2B 38 29 0D 7): ld h,(iy+8).
01AF20: 0A 09 6C 64 20 64 65 2C 31 30 32 34 3A 20 61 64 ..ld de,1024: ad
01AF30: 64 20 68 6C 2C 64 65 09 09 3B 6F 74 68 65 72 77 d hl,de..;otherw
01AF40: 69 73 65 20 72 65 73 65 74 20 74 6F 20 31 6B 20 ise reset to 1k
01AF50: 61 62 6F 76 65 0D 0A 09 6A 72 20 6E 6F 76 65 72 above...jr nover
01AF60: 0D 0A 2E 77 61 73 68 65 64 09 70 75 73 68 20 69 ...washed.push i
01AF70: 79 3A 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 20 64 y: pop hl...ld d
01AF80: 65 2C 31 31 36 2B 31 32 38 3A 20 61 64 64 20 68 e,116+128: add h
01AF90: 6C 2C 64 65 0D 0A 09 6C 64 20 28 68 6C 29 2C 30 l,de...ld (hl),0
01AFA0: 09 09 09 3B 4E 6F 74 20 61 20 68 65 61 64 65 72 ...;Not a header
01AFB0: 20 61 6E 79 20 6D 6F 72 65 21 0D 0A 09 6C 64 20 any more!...ld
01AFC0: 6C 2C 28 69 79 2B 34 33 29 3A 20 6C 64 20 68 2C l,(iy+43): ld h,
01AFD0: 28 69 79 2B 34 34 29 0D 0A 2E 6E 6F 76 65 72 09 (iy+44)...nover.
01AFE0: 6C 64 20 28 69 79 2B 34 33 29 2C 6C 3A 20 6C 64 ld (iy+43),l: ld
01AFF0: 20 28 69 79 2B 34 34 29 2C 68 09 3B 48 4C 20 3D (iy+44),h.;HL =
01B000: 72 0D 0A 0D 0A 2E 69 6E 73 65 72 74 09 63 70 20 r.....insert.cp
01B010: 22 2E 22 3A 20 6A 72 20 6E 7A 2C 6E 6F 74 64 6F ".": jr nz,notdo
01B020: 74 0D 0A 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 36 t.....ld a,(iy+6
01B030: 38 29 09 09 09 3B 41 20 3D 20 63 75 72 72 65 6E 8)...;A = curren
01B040: 74 20 63 68 61 72 61 63 74 65 72 20 70 6F 73 69 t character posi
01B050: 74 69 6F 6E 0D 0A 09 63 70 20 30 3A 20 6A 70 20 tion...cp 0: jp
01B060: 7A 2C 65 78 69 74 63 62 0D 0A 0D 0A 2E 64 74 6C z,exitcb.....dtl
01B070: 6F 6F 70 09 63 70 20 38 3A 20 6A 72 20 7A 2C 65 oop.cp 8: jr z,e
01B080: 78 64 74 6C 3A 20 6A 70 20 6E 63 2C 65 78 69 74 xdtl: jp nc,exit
01B090: 63 62 0D 0A 0D 0A 09 6C 64 20 61 2C 28 69 79 2B cb.....ld a,(iy+
01B0A0: 36 39 29 3A 20 6C 64 20 28 68 6C 29 2C 61 3A 20 69): ld (hl),a:
01B0B0: 69 6E 63 20 68 6C 09 3B 41 20 3D 20 66 69 6C 6C inc hl.;A = fill
01B0C0: 65 72 20 63 68 61 72 61 63 74 65 72 0D 0A 0D 0A er character....
01B0D0: 09 6C 64 20 61 2C 28 69 79 2B 36 38 29 3A 20 69 .ld a,(iy+68): i
01B0E0: 6E 63 20 61 3A 20 6C 64 20 28 69 79 2B 36 38 29 nc a: ld (iy+68)
01B0F0: 2C 61 0D 0A 09 6A 72 20 64 74 6C 6F 6F 70 0D 0A ,a...jr dtloop..
01B100: 0D 0A 2E 65 78 64 74 6C 09 6C 64 20 61 2C 22 20 ...exdtl.ld a,"
01B110: 22 3A 20 6C 64 20 28 69 79 2B 36 39 29 2C 61 3A ": ld (iy+69),a:
01B120: 20 72 65 74 0D 0A 0D 0A 2E 6E 6F 74 64 6F 74 09 ret.....notdot.
01B130: 63 70 20 22 20 22 3A 20 72 65 74 20 7A 0D 0A 09 cp " ": ret z...
01B140: 63 70 20 22 2A 22 3A 20 6A 72 20 6E 7A 2C 6E 6F cp "*": jr nz,no
01B150: 74 73 74 61 0D 0A 0D 0A 09 6C 64 20 61 2C 28 69 tsta.....ld a,(i
01B160: 79 2B 36 39 29 3A 20 63 70 20 22 3F 22 3A 20 6A y+69): cp "?": j
01B170: 70 20 7A 2C 65 78 69 74 63 62 0D 0A 09 6C 64 20 p z,exitcb...ld
01B180: 61 2C 22 3F 22 3A 20 6C 64 20 28 69 79 2B 36 39 a,"?": ld (iy+69
01B190: 29 2C 61 3A 20 6A 72 20 70 75 74 63 68 72 0D 0A ),a: jr putchr..
01B1A0: 0D 0A 2E 6E 6F 74 73 74 61 09 6C 64 20 63 2C 61 ...notsta.ld c,a
01B1B0: 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 36 39 29 3A ...ld a,(iy+69):
01B1C0: 20 63 70 20 22 3F 22 3A 20 6C 64 20 61 2C 63 3A cp "?": ld a,c:
01B1D0: 20 6A 70 20 7A 2C 65 78 69 74 63 62 0D 0A 2E 70 jp z,exitcb...p
01B1E0: 75 74 63 68 72 09 6C 64 20 28 68 6C 29 2C 61 3A utchr.ld (hl),a:
01B1F0: 20 69 6E 63 20 68 6C 0D 0A 09 6C 64 20 61 2C 28 inc hl...ld a,(
01B200: 3E 20 70 61 72 61 6D 65 74 65 72 20 62 6C 6F 63 > parameter bloc
01B210: 6B 0D 0A 09 6C 64 20 68 6C 2C 30 0D 0A 09 6C 64 k...ld hl,0...ld
01B220: 20 28 69 79 2B 38 34 29 2C 6C 3A 20 6C 64 20 28 (iy+84),l: ld (
01B230: 69 79 2B 38 35 29 2C 68 09 3B 30 20 62 79 74 65 iy+85),h.;0 byte
01B240: 73 20 72 65 61 64 20 69 6E 0D 0A 09 6A 70 20 73 s read in...jp s
01B250: 74 73 62 6C 6B 0D 0A 0D 0A 2E 65 6F 66 75 74 09 tsblk.....eofut.
01B260: 63 61 6C 6C 20 26 42 43 37 41 0D 0A 09 6C 64 20 call &BC7A...ld
01B270: 61 2C 34 3A 20 63 61 6C 6C 20 73 65 6E 64 62 74 a,4: call sendbt
01B280: 0D 0A 09 6C 64 20 64 65 2C 31 30 30 3A 20 63 61 ...ld de,100: ca
01B290: 6C 6C 20 77 61 69 74 62 74 0D 0A 09 63 70 20 36 ll waitbt...cp 6
01B2A0: 3A 20 6A 72 20 6E 7A 2C 65 6F 66 75 74 0D 0A 0D : jr nz,eofut...
01B2B0: 0A 09 6C 64 20 61 2C 28 69 79 2B 31 30 37 29 09 ..ld a,(iy+107).
01B2C0: 09 09 3B 53 70 65 63 69 66 69 65 64 20 70 72 6F ..;Specified pro
01B2D0: 74 6F 63 6F 6C 0D 0A 09 63 70 20 32 3A 20 6A 72 tocol...cp 2: jr
01B2E0: 20 6E 7A 2C 62 79 65 62 79 65 0D 0A 0D 0A 09 6A nz,byebye.....j
01B2F0: 70 20 67 6E 78 74 79 75 0D 0A 0D 0A 2E 65 78 75 p gnxtyu.....exu
01B300: 70 6C 09 6C 64 20 64 65 2C 35 30 3A 20 63 61 6C pl.ld de,50: cal
01B310: 6C 20 77 61 69 74 62 74 09 09 3B 59 4D 6F 64 65 l waitbt..;YMode
01B320: 6D 20 62 6C 61 6E 6B 20 62 6C 6F 63 6B 21 0D 0A m blank block!..
01B330: 09 63 70 20 22 43 22 3A 20 6A 72 20 7A 2C 67 65 .cp "C": jr z,ge
01B340: 75 66 63 0D 0A 09 63 70 20 26 31 35 3A 20 6A 72 ufc...cp &15: jr
01B350: 20 7A 2C 67 65 75 66 63 0D 0A 09 63 61 6C 6C 20 z,geufc...call
01B360: 63 68 6B 63 6E 75 0D 0A 09 6A 72 20 65 78 75 70 chkcnu...jr exup
01B370: 6C 0D 0A 0D 0A 2E 67 65 75 66 63 09 6C 64 20 28 l.....geufc.ld (
01B380: 69 79 2B 31 30 34 29 2C 61 09 09 09 3B 4E 41 4B iy+104),a...;NAK
01B390: 2F 43 20 73 74 6F 72 65 0D 0A 0D 0A 2E 72 73 78 /C store.....rsx
01B3A0: 62 09 6C 64 20 61 2C 31 3A 20 63 61 6C 6C 20 73 b.ld a,1: call s
01B3B0: 65 6E 64 62 74 0D 0A 09 78 6F 72 20 61 3A 20 63 endbt...xor a: c
01B3C0: 61 6C 6C 20 73 65 6E 64 62 74 0D 0A 09 78 6F 72 all sendbt...xor
01B3D0: 20 61 3A 20 63 70 6C 3A 20 63 61 6C 6C 20 73 65 a: cpl: call se
01B3E0: 6E 64 62 74 0D 0A 0D 0A 09 6C 64 20 68 6C 2C 30 ndbt.....ld hl,0
01B3F0: 3A 20 6C 64 20 63 2C 31 32 38 0D 0A 2E 6E 75 6C : ld c,128...nul
01B400: 69 79 2B 36 38 29 3A 20 69 6E 63 20 61 3A 20 6C iy+68): inc a: l
01B410: 64 20 28 69 79 2B 36 38 29 2C 61 3A 20 72 65 74 d (iy+68),a: ret
01B420: 0D 0A 0D 0A 2E 65 78 69 74 63 62 09 6C 64 20 63 .....exitcb.ld c
01B430: 2C 33 0D 0A 09 70 6F 70 20 68 6C 0D 0A 2E 65 78 ,3...pop hl...ex
01B440: 69 74 70 31 09 70 6F 70 20 68 6C 0D 0A 09 6A 70 itp1.pop hl...jp
01B450: 20 65 72 72 6F 72 0D 0A 0D 0A 09 3B 43 68 65 63 error.....;Chec
01B460: 6B 20 66 6F 72 20 45 53 43 2F 43 54 52 4C 2D 58 k for ESC/CTRL-X
01B470: 0D 0A 0D 0A 2E 63 68 6B 63 6E 75 09 63 61 6C 6C .....chkcnu.call
01B480: 20 26 42 42 31 42 3A 20 72 65 74 20 6E 63 09 09 &BB1B: ret nc..
01B490: 3B 6B 65 79 20 70 72 65 73 73 65 64 3F 0D 0A 09 ;key pressed?...
01B4A0: 63 70 20 26 31 38 3A 20 6A 72 20 7A 2C 63 6E 75 cp &18: jr z,cnu
01B4B0: 79 65 73 09 09 3B 43 54 52 4C 2D 58 3F 0D 0A 09 yes..;CTRL-X?...
01B4C0: 63 70 20 26 46 43 3A 20 72 65 74 20 6E 7A 09 09 cp &FC: ret nz..
01B4D0: 09 3B 45 53 43 3F 0D 0A 2E 63 6E 75 79 65 73 09 .;ESC?...cnuyes.
01B4E0: 70 6F 70 20 68 6C 09 09 09 09 3B 72 65 6D 6F 76 pop hl....;remov
01B4F0: 65 20 43 41 4C 4C 0D 0A 0D 0A 09 63 61 6C 6C 20 e CALL.....call
01B500: 73 38 63 61 6E 73 0D 0A 0D 0A 09 6C 64 20 61 2C s8cans.....ld a,
01B510: 28 69 79 2B 31 30 37 29 0D 0A 09 6C 64 20 68 6C (iy+107)...ld hl
01B520: 2C 79 6D 74 65 78 74 0D 0A 09 63 70 20 32 3A 20 ,ymtext...cp 2:
01B530: 6A 72 20 7A 2C 67 6F 74 6D 73 75 09 09 3B 59 4D jr z,gotmsu..;YM
01B540: 6F 64 65 6D 3F 0D 0A 09 6C 64 20 68 6C 2C 6F 6E odem?...ld hl,on
01B550: 65 74 78 74 0D 0A 09 63 70 20 31 3A 20 6A 72 20 etxt...cp 1: jr
01B560: 7A 2C 67 6F 74 6D 73 75 09 09 3B 58 4D 6F 64 65 z,gotmsu..;XMode
01B570: 6D 2D 31 6B 3F 0D 0A 09 6C 64 20 68 6C 2C 63 68 m-1k?...ld hl,ch
01B580: 6B 74 78 74 0D 0A 0D 0A 2E 67 6F 74 6D 73 75 09 ktxt.....gotmsu.
01B590: 63 61 6C 6C 20 73 74 72 69 6E 67 0D 0A 09 6C 64 call string...ld
01B5A0: 20 68 6C 2C 61 62 72 74 78 74 3A 20 63 61 6C 6C hl,abrtxt: call
01B5B0: 20 73 74 72 69 6E 67 0D 0A 09 6C 64 20 68 6C 2C string...ld hl,
01B5C0: 6C 61 73 74 63 72 3A 20 63 61 6C 6C 20 73 74 72 lastcr: call str
01B5D0: 69 6E 67 0D 0A 09 6C 64 20 61 2C 31 30 3A 20 63 ing...ld a,10: c
01B5E0: 61 6C 6C 20 26 42 42 35 41 0D 0A 09 63 61 6C 6C all &BB5A...call
01B5F0: 20 26 42 42 34 38 3A 20 63 61 6C 6C 20 26 42 42 &BB48: call &BB
01B600: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
01B610: 17 00 01 00 02 09 4E E5 17 00 C7 02 00 00 00 02 ......N.........
01B620: 17 00 C3 02 00 00 00 02 17 00 C8 02 00 00 00 02 ................
01B630: 17 00 C4 02 00 00 00 02 17 00 C9 02 00 00 00 02 ................
01B640: 17 00 C5 02 00 00 00 02 17 00 C1 02 00 00 00 02 ................
01B650: 17 00 C6 02 00 00 00 02 17 00 C2 02 00 00 00 02 ................
01B660: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01B670: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01B680: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01B690: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01B6A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01B6B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01B6C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01B6D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01B6E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01B6F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01B700: 29 3A 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A 09 ): call &BB5A...
01B710: 69 6E 63 20 68 6C 3A 20 64 6A 6E 7A 20 6C 66 6E inc hl: djnz lfn
01B720: 70 72 74 09 3B 70 72 69 6E 74 20 66 69 6C 65 6E prt.;print filen
01B730: 61 6D 65 0D 0A 0D 0A 09 6C 64 20 61 2C 31 33 3A ame.....ld a,13:
01B740: 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A 09 6C 64 call &BB5A...ld
01B750: 20 61 2C 31 30 3A 20 63 61 6C 6C 20 26 42 42 35 a,10: call &BB5
01B760: 41 3A 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A 0D A: call &BB5A...
01B770: 0A 09 63 61 6C 6C 20 26 42 42 36 39 0D 0A 09 6C ..call &BB69...l
01B780: 64 20 61 2C 64 3A 20 73 75 62 20 68 0D 0A 09 69 d a,d: sub h...i
01B790: 6E 63 20 61 3A 20 69 6E 63 20 61 3A 20 69 6E 63 nc a: inc a: inc
01B7A0: 20 61 0D 0A 09 6C 64 20 62 2C 30 0D 0A 2E 66 63 a...ld b,0...fc
01B7B0: 77 5F 6C 70 09 69 6E 63 20 62 3A 20 73 75 62 20 w_lp.inc b: sub
01B7C0: 32 35 3A 20 6A 72 20 6E 63 2C 66 63 77 5F 6C 70 25: jr nc,fcw_lp
01B7D0: 0D 0A 09 64 65 63 20 62 0D 0A 09 6C 64 20 61 2C ...dec b...ld a,
01B7E0: 62 3A 20 6C 64 20 28 69 79 2B 36 38 29 2C 61 09 b: ld (iy+68),a.
01B7F0: 09 3B 63 63 68 61 72 20 20 3D 20 6E 75 6D 62 65 .;cchar = numbe
01B800: 72 20 6F 66 20 63 6F 6C 75 6D 6E 73 0D 0A 0D 0A r of columns....
01B810: 09 6C 64 20 61 2C 31 3A 20 6C 64 20 28 69 79 2B .ld a,1: ld (iy+
01B820: 36 39 29 2C 61 09 09 3B 73 74 6D 6F 64 65 20 3D 69),a..;stmode =
01B830: 20 63 75 72 72 65 6E 74 20 63 6F 6C 75 6D 6E 0D current column.
01B840: 0A 09 6C 64 20 61 2C 30 3A 20 6C 64 20 28 69 79 ..ld a,0: ld (iy
01B850: 2B 34 32 29 2C 61 09 09 3B 6E 70 61 72 61 6D 20 +42),a..;nparam
01B860: 3D 20 6E 75 6D 62 65 72 20 6F 66 20 64 69 72 65 = number of dire
01B870: 63 74 6F 72 79 20 62 6C 6F 63 6B 73 0D 0A 09 70 ctory blocks...p
01B880: 75 73 68 20 69 79 3A 20 70 6F 70 20 68 6C 0D 0A ush iy: pop hl..
01B890: 09 70 75 73 68 20 64 65 3A 20 6C 64 20 64 65 2C .push de: ld de,
01B8A0: 37 32 0D 0A 09 61 64 64 20 68 6C 2C 64 65 3A 20 72...add hl,de:
01B8B0: 70 6F 70 20 64 65 3A 20 6C 64 20 28 68 6C 29 2C pop de: ld (hl),
01B8C0: 61 09 3B 66 74 73 65 6E 64 20 3D 20 6E 75 6D 62 a.;ftsend = numb
01B8D0: 65 72 20 6F 66 20 64 69 72 65 63 74 6F 72 79 20 er of directory
01B8E0: 62 6C 6F 63 6B 73 20 64 6F 6E 65 0D 0A 0D 0A 2E blocks done.....
01B8F0: 67 31 32 38 6C 70 09 69 6E 63 20 28 68 6C 29 0D g128lp.inc (hl).
01B900: 6F 70 20 68 6C 09 09 09 09 3B 44 45 20 3D 20 66 op hl....;DE = f
01B910: 69 6C 65 6E 61 6D 65 0D 0A 09 6C 64 20 62 2C 31 ilename...ld b,1
01B920: 31 0D 0A 2E 63 66 6C 6F 6F 70 09 6C 64 20 63 2C 1...cfloop.ld c,
01B930: 28 68 6C 29 3A 20 78 6F 72 20 61 3A 20 63 70 20 (hl): xor a: cp
01B940: 63 3A 20 6A 72 20 7A 2C 65 78 74 66 6E 0D 0A 09 c: jr z,extfn...
01B950: 6C 64 20 61 2C 28 64 65 29 3A 20 63 70 20 22 3F ld a,(de): cp "?
01B960: 22 3A 20 6A 72 20 7A 2C 77 63 61 72 64 0D 0A 09 ": jr z,wcard...
01B970: 72 65 73 20 37 2C 63 3A 20 63 70 20 63 3A 20 6A res 7,c: cp c: j
01B980: 72 20 6E 7A 2C 65 78 74 66 6E 0D 0A 2E 77 63 61 r nz,extfn...wca
01B990: 72 64 09 69 6E 63 20 68 6C 3A 20 69 6E 63 20 64 rd.inc hl: inc d
01B9A0: 65 0D 0A 09 64 6A 6E 7A 20 63 66 6C 6F 6F 70 0D e...djnz cfloop.
01B9B0: 0A 0D 0A 09 70 6F 70 20 68 6C 3A 20 70 75 73 68 ....pop hl: push
01B9C0: 20 68 6C 0D 0A 09 69 6E 63 20 68 6C 0D 0A 09 6C hl...inc hl...l
01B9D0: 64 20 65 2C 28 69 79 2B 37 30 29 3A 20 6C 64 20 d e,(iy+70): ld
01B9E0: 64 2C 28 69 79 2B 37 31 29 09 3B 6E 61 6D 65 20 d,(iy+71).;name
01B9F0: 61 64 64 72 65 73 73 0D 0A 09 6C 64 20 62 63 2C address...ld bc,
01BA00: 31 33 0D 0A 09 6C 64 69 72 0D 0A 09 64 65 63 20 13...ldir...dec
01BA10: 68 6C 3A 20 64 65 63 20 68 6C 3A 20 64 65 63 20 hl: dec hl: dec
01BA20: 68 6C 3A 20 6C 64 20 28 68 6C 29 2C 63 3A 20 69 hl: ld (hl),c: i
01BA30: 6E 63 20 68 6C 0D 0A 09 6C 64 20 28 69 79 2B 37 nc hl...ld (iy+7
01BA40: 30 29 2C 65 3A 20 6C 64 20 28 69 79 2B 37 31 29 0),e: ld (iy+71)
01BA50: 2C 64 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 37 32 ,d...ld a,(iy+72
01BA60: 29 3A 20 69 6E 63 20 61 3A 20 6C 64 20 28 69 79 ): inc a: ld (iy
01BA70: 2B 37 32 29 2C 61 09 3B 66 69 6C 65 73 20 74 6F +72),a.;files to
01BA80: 20 73 65 6E 64 0D 0A 09 6C 64 20 63 2C 35 3A 20 send...ld c,5:
01BA90: 63 70 20 36 34 3A 20 6A 70 20 7A 2C 65 78 69 74 cp 64: jp z,exit
01BAA0: 70 31 0D 0A 09 6C 64 20 63 2C 28 68 6C 29 3A 20 p1...ld c,(hl):
01BAB0: 69 6E 63 20 68 6C 3A 20 6C 64 20 62 2C 28 68 6C inc hl: ld b,(hl
01BAC0: 29 0D 0A 09 6C 64 20 6C 2C 28 69 79 2B 37 33 29 )...ld l,(iy+73)
01BAD0: 3A 20 6C 64 20 68 2C 28 69 79 2B 37 34 29 3A 20 : ld h,(iy+74):
01BAE0: 61 64 64 20 68 6C 2C 62 63 0D 0A 09 6C 64 20 28 add hl,bc...ld (
01BAF0: 69 79 2B 37 33 29 2C 6C 3A 20 6C 64 20 28 69 79 iy+73),l: ld (iy
01BB00: 0A 09 70 75 73 68 20 68 6C 3A 20 63 61 6C 6C 20 ..push hl: call
01BB10: 6C 64 72 31 32 38 3A 20 70 6F 70 20 68 6C 0D 0A ldr128: pop hl..
01BB20: 09 6C 64 20 61 2C 28 69 79 2B 34 32 29 3A 20 63 .ld a,(iy+42): c
01BB30: 70 20 28 68 6C 29 0D 0A 09 6A 72 20 6E 7A 2C 67 p (hl)...jr nz,g
01BB40: 31 32 38 6C 70 0D 0A 0D 0A 09 6C 64 20 61 2C 28 128lp.....ld a,(
01BB50: 69 79 2B 36 39 29 3A 20 63 70 20 31 0D 0A 09 6C iy+69): cp 1...l
01BB60: 64 20 61 2C 31 30 3A 20 63 61 6C 6C 20 6E 7A 2C d a,10: call nz,
01BB70: 26 42 42 35 41 0D 0A 09 63 61 6C 6C 20 26 42 42 &BB5A...call &BB
01BB80: 35 41 0D 0A 09 6C 64 20 61 2C 31 33 3A 20 63 61 5A...ld a,13: ca
01BB90: 6C 6C 20 26 42 42 35 41 0D 0A 0D 0A 09 63 61 6C ll &BB5A.....cal
01BBA0: 6C 20 26 42 43 37 41 0D 0A 09 72 65 74 0D 0A 0D l &BC7A...ret...
01BBB0: 0A 2E 6C 64 72 31 32 38 09 63 61 6C 6C 20 67 64 ..ldr128.call gd
01BBC0: 6C 62 72 6E 0D 0A 09 63 61 6C 6C 20 67 64 6C 62 lbrn...call gdlb
01BBD0: 72 6E 0D 0A 09 63 61 6C 6C 20 67 64 6C 62 72 6E rn...call gdlbrn
01BBE0: 0D 0A 09 63 61 6C 6C 20 67 64 6C 62 72 6E 0D 0A ...call gdlbrn..
01BBF0: 09 72 65 74 0D 0A 0D 0A 2E 67 64 6C 62 72 6E 09 .ret.....gdlbrn.
01BC00: 63 61 6C 6C 20 26 42 43 38 30 0D 0A 09 6C 64 20 call &BC80...ld
01BC10: 62 2C 33 31 0D 0A 09 63 70 20 26 46 46 3A 20 6A b,31...cp &FF: j
01BC20: 70 20 7A 2C 73 6B 69 70 30 0D 0A 09 63 70 20 26 p z,skip0...cp &
01BC30: 46 45 3A 20 6A 70 20 7A 2C 73 6B 69 70 30 0D 0A FE: jp z,skip0..
01BC40: 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 34 32 29 3A ...ld a,(iy+42):
01BC50: 20 6F 72 20 61 09 3B 68 61 73 20 64 69 72 65 63 or a.;has direc
01BC60: 74 6F 72 79 20 62 6C 6F 63 6B 20 73 69 7A 65 20 tory block size
01BC70: 62 65 65 6E 20 66 6F 75 6E 64 20 79 65 74 3F 0D been found yet?.
01BC80: 0A 09 6A 72 20 6E 7A 2C 6D 70 66 6E 70 74 09 09 ..jr nz,mpfnpt..
01BC90: 3B 69 66 20 73 6F 2C 20 74 68 65 6E 20 64 6F 6E ;if so, then don
01BCA0: 27 74 20 62 6F 74 68 65 72 20 66 69 6E 64 69 6E 't bother findin
01BCB0: 67 20 69 74 21 0D 0A 0D 0A 09 6C 64 20 62 2C 31 g it!.....ld b,1
01BCC0: 33 0D 0A 2E 73 6B 69 70 66 6E 09 70 75 73 68 20 3...skipfn.push
01BCD0: 62 63 3A 20 63 61 6C 6C 20 26 42 43 38 30 3A 20 bc: call &BC80:
01BCE0: 70 6F 70 20 62 63 0D 0A 09 64 6A 6E 7A 20 73 6B pop bc...djnz sk
01BCF0: 69 70 66 6E 09 09 3B 73 6B 69 70 20 28 62 6C 61 ipfn..;skip (bla
01BD00: 2B 37 34 29 2C 68 09 09 3B 6B 20 74 6F 20 73 65 +74),h..;k to se
01BD10: 6E 64 0D 0A 0D 0A 2E 65 78 74 66 6E 09 70 6F 70 nd.....extfn.pop
01BD20: 20 68 6C 0D 0A 09 6C 64 20 64 65 2C 31 34 3A 20 hl...ld de,14:
01BD30: 61 64 64 20 68 6C 2C 64 65 0D 0A 09 6C 64 20 28 add hl,de...ld (
01BD40: 69 79 2B 34 33 29 2C 6C 3A 20 6C 64 20 28 69 79 iy+43),l: ld (iy
01BD50: 2B 34 34 29 2C 68 09 09 3B 70 62 6C 6F 63 6B 0D +44),h..;pblock.
01BD60: 0A 09 6A 72 20 65 78 63 6D 6C 0D 0A 0D 0A 2E 65 ..jr excml.....e
01BD70: 78 73 72 6C 09 69 6E 63 20 69 78 3A 20 69 6E 63 xsrl.inc ix: inc
01BD80: 20 69 78 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 34 ix...ld a,(iy+4
01BD90: 32 29 3A 20 64 65 63 20 61 3A 20 6C 64 20 28 69 2): dec a: ld (i
01BDA0: 79 2B 34 32 29 2C 61 3A 20 6A 70 20 6E 7A 2C 6D y+42),a: jp nz,m
01BDB0: 78 6C 6F 6F 70 09 3B 6E 75 6D 62 65 72 20 6F 66 xloop.;number of
01BDC0: 20 70 61 72 61 6D 65 74 65 72 73 0D 0A 09 72 65 parameters...re
01BDD0: 74 0D 0A 0D 0A 09 3B 3E 3E 3E 20 55 70 64 61 74 t.....;>>> Updat
01BDE0: 65 20 43 52 43 20 69 6E 20 48 4C 20 77 69 74 68 e CRC in HL with
01BDF0: 20 69 6E 70 75 74 20 69 6E 20 45 0D 0A 0D 0A 2E input in E.....
01BE00: 63 72 63 20 20 20 20 6C 64 20 62 2C 38 09 09 09 crc ld b,8...
01BE10: 09 3B 73 68 69 66 74 20 38 20 74 69 6D 65 73 0D .;shift 8 times.
01BE20: 0A 2E 75 70 64 6C 70 20 20 72 6C 63 20 65 09 09 ..updlp rlc e..
01BE30: 09 09 3B 73 68 69 66 74 20 69 6E 70 75 74 0D 0A ..;shift input..
01BE40: 09 61 64 63 20 68 6C 2C 68 6C 09 09 09 3B 73 68 .adc hl,hl...;sh
01BE50: 69 66 74 20 63 72 63 0D 0A 09 6A 72 20 6E 63 2C ift crc...jr nc,
01BE60: 73 6B 69 70 69 74 09 09 09 3B 6A 75 6D 70 20 69 skipit...;jump i
01BE70: 66 20 6E 6F 20 63 61 72 72 79 0D 0A 09 6C 64 20 f no carry...ld
01BE80: 61 2C 68 3A 20 78 6F 72 20 26 31 30 3A 20 6C 64 a,h: xor &10: ld
01BE90: 20 68 2C 61 09 09 3B 78 6F 72 20 77 69 74 68 20 h,a..;xor with
01BEA0: 26 31 30 32 31 0D 0A 09 6C 64 20 61 2C 6C 3A 20 &1021...ld a,l:
01BEB0: 78 6F 72 20 26 32 31 3A 20 6C 64 20 6C 2C 61 0D xor &21: ld l,a.
01BEC0: 0A 2E 73 6B 69 70 69 74 20 64 6A 6E 7A 20 75 70 ..skipit djnz up
01BED0: 64 6C 70 09 09 09 3B 64 6F 6E 65 3F 0D 0A 09 72 dlp...;done?...r
01BEE0: 65 74 0D 0A 0D 0A 09 3B 3E 3E 3E 20 43 6F 6E 76 et.....;>>> Conv
01BEF0: 65 72 74 20 66 69 6C 65 6E 61 6D 65 20 69 66 20 ert filename if
01BF00: 6E 6B 29 20 66 69 6C 65 6E 61 6D 65 20 61 6E 64 nk) filename and
01BF10: 20 69 6E 64 65 78 0D 0A 09 63 61 6C 6C 20 26 42 index...call &B
01BF20: 43 38 30 3A 20 6C 64 20 28 69 79 2B 34 32 29 2C C80: ld (iy+42),
01BF30: 61 0D 0A 09 6C 64 20 62 2C 31 37 3A 20 6A 70 20 a...ld b,17: jp
01BF40: 73 6B 69 70 30 0D 0A 0D 0A 2E 6D 70 66 6E 70 74 skip0.....mpfnpt
01BF50: 09 6C 64 20 62 2C 38 0D 0A 2E 6D 70 66 6E 6C 70 .ld b,8...mpfnlp
01BF60: 09 70 75 73 68 20 62 63 3A 20 63 61 6C 6C 20 26 .push bc: call &
01BF70: 42 43 38 30 3A 20 70 6F 70 20 62 63 0D 0A 09 63 BC80: pop bc...c
01BF80: 61 6C 6C 20 26 42 42 35 41 3A 20 64 6A 6E 7A 20 all &BB5A: djnz
01BF90: 6D 70 66 6E 6C 70 09 3B 70 72 69 6E 74 20 66 69 mpfnlp.;print fi
01BFA0: 72 73 74 20 70 61 72 74 20 6F 66 20 66 69 6C 65 rst part of file
01BFB0: 6E 61 6D 65 0D 0A 0D 0A 09 6C 64 20 61 2C 22 2E name.....ld a,".
01BFC0: 22 3A 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A 09 ": call &BB5A...
01BFD0: 63 61 6C 6C 20 26 42 43 38 30 3A 20 63 61 6C 6C call &BC80: call
01BFE0: 20 26 42 42 35 41 0D 0A 09 63 61 6C 6C 20 26 42 &BB5A...call &B
01BFF0: 43 38 30 3A 20 63 61 6C 6C 20 26 42 42 35 41 0D C80: call &BB5A.
01C000: 0A 09 63 61 6C 6C 20 26 42 43 38 30 3A 20 63 61 ..call &BC80: ca
01C010: 6C 6C 20 26 42 42 35 41 09 3B 70 72 69 6E 74 20 ll &BB5A.;print
01C020: 65 78 74 65 6E 73 69 6F 6E 0D 0A 0D 0A 09 63 61 extension.....ca
01C030: 6C 6C 20 26 42 43 38 30 3A 20 63 61 6C 6C 20 26 ll &BC80: call &
01C040: 42 43 38 30 09 3B 73 6B 69 70 20 22 69 6E 64 65 BC80.;skip "inde
01C050: 78 22 0D 0A 0D 0A 09 6C 64 20 61 2C 22 20 22 3A x".....ld a," ":
01C060: 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A 09 63 61 call &BB5A...ca
01C070: 6C 6C 20 26 42 43 38 30 3A 20 6C 64 20 6C 2C 61 ll &BC80: ld l,a
01C080: 3A 20 70 75 73 68 20 68 6C 0D 0A 09 63 61 6C 6C : push hl...call
01C090: 20 26 42 43 38 30 3A 20 70 6F 70 20 68 6C 3A 20 &BC80: pop hl:
01C0A0: 6C 64 20 68 2C 61 0D 0A 0D 0A 09 6C 64 20 62 2C ld h,a.....ld b,
01C0B0: 33 0D 0A 2E 63 74 6F 6B 09 78 6F 72 20 61 3A 20 3...ctok.xor a:
01C0C0: 72 72 20 68 3A 20 72 72 20 6C 3A 20 64 6A 6E 7A rr h: rr l: djnz
01C0D0: 20 63 74 6F 6B 0D 0A 0D 0A 09 6C 64 20 61 2C 6C ctok.....ld a,l
01C0E0: 3A 20 63 61 6C 6C 20 70 72 5F 61 73 70 0D 0A 09 : call pr_asp...
01C0F0: 6C 64 20 61 2C 22 6B 22 3A 20 63 61 6C 6C 20 26 ld a,"k": call &
01C100: 73 75 62 2D 64 69 72 65 63 74 6F 72 69 65 73 20 sub-directories
01C110: 69 6E 63 6C 75 64 65 64 0D 0A 0D 0A 2E 63 6F 6E included.....con
01C120: 76 09 6C 64 20 62 2C 30 0D 0A 09 65 78 20 64 65 v.ld b,0...ex de
01C130: 2C 68 6C 0D 0A 2E 63 6F 6C 6F 6F 70 09 6C 64 20 ,hl...coloop.ld
01C140: 61 2C 28 68 6C 29 0D 0A 09 63 70 20 22 2F 22 3A a,(hl)...cp "/":
01C150: 20 6A 72 20 7A 2C 65 78 63 6F 6E 76 0D 0A 09 63 jr z,exconv...c
01C160: 70 20 22 5C 22 3A 20 6A 72 20 7A 2C 65 78 63 6F p "\": jr z,exco
01C170: 6E 76 0D 0A 09 64 65 63 20 68 6C 0D 0A 09 69 6E nv...dec hl...in
01C180: 63 20 62 0D 0A 09 6C 64 20 61 2C 31 32 3A 20 63 c b...ld a,12: c
01C190: 70 20 62 0D 0A 09 6A 72 20 6E 7A 2C 63 6F 6C 6F p b...jr nz,colo
01C1A0: 6F 70 0D 0A 2E 65 78 63 6F 6E 76 09 69 6E 63 20 op...exconv.inc
01C1B0: 68 6C 0D 0A 09 78 6F 72 20 61 0D 0A 09 63 70 20 hl...xor a...cp
01C1C0: 62 0D 0A 09 72 65 74 20 6E 7A 0D 0A 0D 0A 09 70 b...ret nz.....p
01C1D0: 75 73 68 20 69 79 3A 20 70 6F 70 20 68 6C 09 09 ush iy: pop hl..
01C1E0: 09 3B 65 6C 73 65 20 61 75 74 6F 6D 61 74 69 63 .;else automatic
01C1F0: 20 22 44 4F 57 4E 4C 4F 41 44 22 0D 0A 09 70 75 "DOWNLOAD"...pu
01C200: 73 68 20 64 65 3A 20 6C 64 20 64 65 2C 34 35 3A sh de: ld de,45:
01C210: 20 61 64 64 20 68 6C 2C 64 65 0D 0A 09 70 6F 70 add hl,de...pop
01C220: 20 64 65 3A 20 6C 64 20 62 2C 31 30 3A 20 72 65 de: ld b,10: re
01C230: 74 0D 0A 0D 0A 09 3B 3E 3E 3E 20 53 65 6E 64 20 t.....;>>> Send
01C240: 38 2A 43 41 4E 2C 20 38 2A 62 61 63 6B 73 70 61 8*CAN, 8*backspa
01C250: 63 65 0D 0A 0D 0A 2E 73 38 63 61 6E 73 09 6C 64 ce.....s8cans.ld
01C260: 20 62 2C 38 3A 20 6C 64 20 61 2C 26 31 38 0D 0A b,8: ld a,&18..
01C270: 2E 63 61 6E 5F 6C 70 09 70 75 73 68 20 62 63 3A .can_lp.push bc:
01C280: 20 63 61 6C 6C 20 73 65 6E 64 62 74 3A 20 70 6F call sendbt: po
01C290: 70 20 62 63 0D 0A 09 64 6A 6E 7A 20 63 61 6E 5F p bc...djnz can_
01C2A0: 6C 70 0D 0A 0D 0A 09 6C 64 20 62 2C 38 3A 20 6C lp.....ld b,8: l
01C2B0: 64 20 61 2C 38 0D 0A 2E 62 73 70 5F 6C 70 09 70 d a,8...bsp_lp.p
01C2C0: 75 73 68 20 62 63 3A 20 63 61 6C 6C 20 73 65 6E ush bc: call sen
01C2D0: 64 62 74 3A 20 70 6F 70 20 62 63 0D 0A 09 64 6A dbt: pop bc...dj
01C2E0: 6E 7A 20 62 73 70 5F 6C 70 0D 0A 09 72 65 74 1A nz bsp_lp...ret.
01C2F0: 64 20 6C 2C 61 3A 20 6C 64 20 68 2C 30 3A 20 61 d l,a: ld h,0: a
01C300: 72 72 65 6E 74 20 6E 61 6D 65 20 61 64 64 72 65 rrent name addre
01C310: 73 73 0D 0A 0D 0A 09 78 6F 72 20 61 0D 0A 09 6C ss.....xor a...l
01C320: 64 20 28 69 79 2B 37 32 29 2C 61 0D 0A 09 6C 64 d (iy+72),a...ld
01C330: 20 28 69 79 2B 37 33 29 2C 61 3A 20 6C 64 20 28 (iy+73),a: ld (
01C340: 69 79 2B 37 34 29 2C 61 09 3B 66 69 6C 65 73 2F iy+74),a.;files/
01C350: 6B 20 74 6F 20 73 65 6E 64 0D 0A 0D 0A 09 70 75 k to send.....pu
01C360: 73 68 20 69 78 0D 0A 09 6C 64 20 64 65 2C 31 30 sh ix...ld de,10
01C370: 32 34 0D 0A 09 61 64 64 20 68 6C 2C 64 65 3A 20 24...add hl,de:
01C380: 65 78 20 64 65 2C 68 6C 0D 0A 09 6C 64 20 68 6C ex de,hl...ld hl
01C390: 2C 26 42 42 35 41 0D 0A 09 6C 64 20 61 2C 28 68 ,&BB5A...ld a,(h
01C3A0: 6C 29 3A 20 6C 64 20 28 68 6C 29 2C 32 30 31 0D l): ld (hl),201.
01C3B0: 0A 09 70 75 73 68 20 68 6C 3A 20 70 75 73 68 20 ..push hl: push
01C3C0: 61 66 0D 0A 09 63 61 6C 6C 20 26 42 43 39 42 09 af...call &BC9B.
01C3D0: 09 09 3B 43 61 74 61 6C 6F 67 75 65 20 69 6E 20 ..;Catalogue in
01C3E0: 66 62 75 66 66 2B 31 30 32 34 2C 20 73 63 72 65 fbuff+1024, scre
01C3F0: 65 6E 20 6F 66 66 0D 0A 09 70 6F 70 20 61 66 3A en off...pop af:
01C400: 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 20 28 68 6C pop hl...ld (hl
01C410: 29 2C 61 0D 0A 09 70 6F 70 20 69 78 0D 0A 0D 0A ),a...pop ix....
01C420: 2E 6D 78 6C 6F 6F 70 09 6C 64 20 64 65 2C 31 30 .mxloop.ld de,10
01C430: 32 34 0D 0A 09 6C 64 20 6C 2C 28 69 79 2B 37 29 24...ld l,(iy+7)
01C440: 3A 20 6C 64 20 68 2C 28 69 79 2B 38 29 09 3B 66 : ld h,(iy+8).;f
01C450: 62 61 64 64 72 0D 0A 09 61 64 64 20 68 6C 2C 64 baddr...add hl,d
01C460: 65 0D 0A 09 6C 64 20 28 69 79 2B 34 33 29 2C 6C e...ld (iy+43),l
01C470: 3A 20 6C 64 20 28 69 79 2B 34 34 29 2C 68 09 3B : ld (iy+44),h.;
01C480: 70 62 6C 6F 63 6B 0D 0A 0D 0A 09 6C 64 20 6C 2C pblock.....ld l,
01C490: 28 69 78 29 3A 20 6C 64 20 68 2C 28 69 78 2B 31 (ix): ld h,(ix+1
01C4A0: 29 0D 0A 09 6C 64 20 62 2C 28 68 6C 29 3A 20 69 )...ld b,(hl): i
01C4B0: 6E 63 20 68 6C 0D 0A 09 6C 64 20 65 2C 28 68 6C nc hl...ld e,(hl
01C4C0: 29 3A 20 69 6E 63 20 68 6C 0D 0A 09 6C 64 20 64 ): inc hl...ld d
01C4D0: 2C 28 68 6C 29 0D 0A 0D 0A 09 78 6F 72 20 61 3A ,(hl).....xor a:
01C4E0: 20 6C 64 20 28 69 79 2B 36 38 29 2C 61 09 09 3B ld (iy+68),a..;
01C4F0: 63 68 61 72 20 70 6F 73 0D 0A 09 6C 64 20 61 2C char pos...ld a,
01C500: 0D 0A 09 3B 2A 2A 2A 20 4C 49 42 52 41 52 59 2E ...;*** LIBRARY.
01C510: 4D 4F 44 20 2A 2A 2A 0D 0A 0D 0A 09 3B 3E 3E 3E MOD ***.....;>>>
01C520: 20 4C 44 49 52 20 63 6F 6D 6D 61 6E 64 0D 0A 0D LDIR command...
01C530: 0A 2E 6C 64 69 72 5F 69 09 63 61 6C 6C 20 62 75 ..ldir_i.call bu
01C540: 66 66 5F 63 0D 0A 0D 0A 09 6C 64 20 63 2C 32 3A ff_c.....ld c,2:
01C550: 20 63 70 20 31 0D 0A 09 6A 70 20 6E 7A 2C 65 72 cp 1...jp nz,er
01C560: 72 6F 72 0D 0A 0D 0A 09 63 61 6C 6C 20 26 42 43 ror.....call &BC
01C570: 37 44 09 09 09 3B 61 62 61 6E 64 6F 6E 20 69 6E 7D...;abandon in
01C580: 70 75 74 20 66 69 6C 65 0D 0A 0D 0A 09 6C 64 20 put file.....ld
01C590: 6C 2C 28 69 78 29 3A 20 6C 64 20 68 2C 28 69 78 l,(ix): ld h,(ix
01C5A0: 2B 31 29 0D 0A 09 6C 64 20 62 2C 28 68 6C 29 3A +1)...ld b,(hl):
01C5B0: 20 69 6E 63 20 68 6C 0D 0A 09 6C 64 20 65 2C 28 inc hl...ld e,(
01C5C0: 68 6C 29 3A 20 69 6E 63 20 68 6C 0D 0A 09 6C 64 hl): inc hl...ld
01C5D0: 20 64 2C 28 68 6C 29 3A 20 65 78 20 64 65 2C 68 d,(hl): ex de,h
01C5E0: 6C 0D 0A 09 6C 64 20 65 2C 28 69 79 2B 37 29 3A l...ld e,(iy+7):
01C5F0: 20 6C 64 20 64 2C 28 69 79 2B 38 29 09 3B 66 69 ld d,(iy+8).;fi
01C600: 6C 65 20 62 75 66 66 65 72 20 61 64 64 72 65 73 le buffer addres
01C610: 73 0D 0A 0D 0A 09 70 75 73 68 20 62 63 3A 20 70 s.....push bc: p
01C620: 75 73 68 20 68 6C 0D 0A 09 63 61 6C 6C 20 26 42 ush hl...call &B
01C630: 43 37 37 0D 0A 09 70 6F 70 20 68 6C 3A 20 70 6F C77...pop hl: po
01C640: 70 20 62 63 0D 0A 09 6A 72 20 63 2C 6C 62 72 69 p bc...jr c,lbri
01C650: 6F 6B 0D 0A 0D 0A 09 62 69 74 20 36 2C 61 3A 20 ok.....bit 6,a:
01C660: 72 65 74 20 6E 7A 0D 0A 09 62 69 74 20 37 2C 61 ret nz...bit 7,a
01C670: 3A 20 72 65 74 20 6E 7A 0D 0A 09 6C 64 20 63 2C : ret nz...ld c,
01C680: 39 3A 20 6A 70 20 65 72 72 6F 72 09 3B 69 66 20 9: jp error.;if
01C690: 6E 6F 74 20 61 6C 72 65 61 64 79 20 72 65 70 6F not already repo
01C6A0: 72 74 65 64 2C 20 63 6F 6D 6D 73 20 65 72 72 6F rted, comms erro
01C6B0: 72 20 39 0D 0A 0D 0A 2E 6C 62 72 69 6F 6B 09 70 r 9.....lbriok.p
01C6C0: 75 73 68 20 68 6C 0D 0A 09 6C 64 20 68 6C 2C 6C ush hl...ld hl,l
01C6D0: 62 72 74 78 74 0D 0A 09 63 61 6C 6C 20 73 74 72 brtxt...call str
01C6E0: 69 6E 67 0D 0A 09 70 6F 70 20 68 6C 0D 0A 0D 0A ing...pop hl....
01C6F0: 2E 6C 66 6E 70 72 74 09 6C 64 20 61 2C 28 68 6C .lfnprt.ld a,(hl
01C700: 22 20 22 3A 20 6C 64 20 28 69 79 2B 36 39 29 2C " ": ld (iy+69),
01C710: 61 09 09 3B 66 69 6C 6C 65 72 20 62 79 74 65 0D a..;filler byte.
01C720: 0A 0D 0A 09 70 75 73 68 20 64 65 0D 0A 09 20 70 ....push de... p
01C730: 75 73 68 20 69 79 3A 20 70 6F 70 20 68 6C 0D 0A ush iy: pop hl..
01C740: 09 20 6C 64 20 64 65 2C 35 35 3A 20 61 64 64 20 . ld de,55: add
01C750: 68 6C 2C 64 65 0D 0A 09 70 6F 70 20 64 65 09 09 hl,de...pop de..
01C760: 09 09 3B 48 4C 20 3D 20 66 69 6C 65 6E 61 6D 65 ..;HL = filename
01C770: 0D 0A 0D 0A 2E 63 70 6C 6F 6F 70 09 6C 64 20 61 .....cploop.ld a
01C780: 2C 28 64 65 29 0D 0A 09 70 75 73 68 20 68 6C 3A ,(de)...push hl:
01C790: 20 63 61 6C 6C 20 63 68 72 63 68 6B 3A 20 70 6F call chrchk: po
01C7A0: 70 20 68 6C 0D 0A 09 63 61 6C 6C 20 69 6E 73 65 p hl...call inse
01C7B0: 72 74 0D 0A 09 69 6E 63 20 64 65 3A 20 64 6A 6E rt...inc de: djn
01C7C0: 7A 20 63 70 6C 6F 6F 70 0D 0A 0D 0A 2E 63 6D 6C z cploop.....cml
01C7D0: 6F 6F 70 09 6C 64 20 61 2C 28 69 79 2B 36 38 29 oop.ld a,(iy+68)
01C7E0: 0D 0A 09 63 70 20 31 31 3A 20 6A 72 20 7A 2C 65 ...cp 11: jr z,e
01C7F0: 78 63 6D 6C 0D 0A 09 6A 70 20 6E 63 2C 65 78 69 xcml...jp nc,exi
01C800: 74 63 6B 0D 0A 0D 0A 09 6C 64 20 61 2C 28 69 79 tck.....ld a,(iy
01C810: 2B 36 39 29 3A 20 6C 64 20 28 68 6C 29 2C 61 3A +69): ld (hl),a:
01C820: 20 69 6E 63 20 68 6C 0D 0A 0D 0A 09 6C 64 20 61 inc hl.....ld a
01C830: 2C 28 69 79 2B 36 38 29 3A 20 69 6E 63 20 61 3A ,(iy+68): inc a:
01C840: 20 6C 64 20 28 69 79 2B 36 38 29 2C 61 0D 0A 09 ld (iy+68),a...
01C850: 6A 72 20 63 6D 6C 6F 6F 70 0D 0A 0D 0A 2E 65 78 jr cmloop.....ex
01C860: 63 6D 6C 09 6C 64 20 6C 2C 28 69 79 2B 34 33 29 cml.ld l,(iy+43)
01C870: 3A 20 6C 64 20 68 2C 28 69 79 2B 34 34 29 09 3B : ld h,(iy+44).;
01C880: 70 62 6C 6F 63 6B 0D 0A 09 6C 64 20 61 2C 28 68 pblock...ld a,(h
01C890: 6C 29 3A 20 63 70 20 32 35 35 3A 20 6A 72 20 6E l): cp 255: jr n
01C8A0: 7A 2C 65 78 73 72 6C 0D 0A 09 70 75 73 68 20 68 z,exsrl...push h
01C8B0: 6C 0D 0A 0D 0A 09 69 6E 63 20 68 6C 0D 0A 09 70 l.....inc hl...p
01C8C0: 75 73 68 20 68 6C 0D 0A 09 20 70 75 73 68 20 69 ush hl... push i
01C8D0: 79 3A 20 70 6F 70 20 68 6C 0D 0A 09 20 6C 64 20 y: pop hl... ld
01C8E0: 64 65 2C 35 35 3A 20 61 64 64 20 68 6C 2C 64 65 de,55: add hl,de
01C8F0: 0D 0A 09 20 65 78 20 64 65 2C 68 6C 0D 0A 09 70 ... ex de,hl...p
01C900: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
01C910: 18 00 01 00 02 09 4E E5 18 00 C1 02 00 00 00 02 ......N.........
01C920: 18 00 C6 02 00 00 00 02 18 00 C2 02 00 00 00 02 ................
01C930: 18 00 C7 02 00 00 00 02 18 00 C3 02 00 00 00 02 ................
01C940: 18 00 C8 02 00 00 00 02 18 00 C4 02 00 00 00 02 ................
01C950: 18 00 C9 02 00 00 00 02 18 00 C5 02 00 00 00 02 ................
01C960: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01C970: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01C980: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01C990: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01C9A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01C9B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01C9C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01C9D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01C9E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01C9F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01CA00: 42 42 35 41 0D 0A 0D 0A 09 6C 64 20 61 2C 22 20 BB5A.....ld a,"
01CA10: 22 3A 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A 09 ": call &BB5A...
01CA20: 63 61 6C 6C 20 26 42 43 38 30 3A 20 6C 64 20 6C call &BC80: ld l
01CA30: 2C 61 3A 20 70 75 73 68 20 68 6C 0D 0A 09 63 61 ,a: push hl...ca
01CA40: 6C 6C 20 26 42 43 38 30 3A 20 70 6F 70 20 68 6C ll &BC80: pop hl
01CA50: 3A 20 6C 64 20 68 2C 61 0D 0A 09 63 61 6C 6C 20 : ld h,a...call
01CA60: 70 72 5F 68 6C 68 0D 0A 0D 0A 09 6C 64 20 61 2C pr_hlh.....ld a,
01CA70: 28 69 79 2B 36 38 29 3A 20 6C 64 20 63 2C 61 0D (iy+68): ld c,a.
01CA80: 0A 09 6C 64 20 61 2C 28 69 79 2B 36 39 29 0D 0A ..ld a,(iy+69)..
01CA90: 09 63 70 20 63 3A 20 6A 72 20 6E 7A 2C 74 68 73 .cp c: jr nz,ths
01CAA0: 70 63 73 0D 0A 0D 0A 09 6C 64 20 61 2C 31 3A 20 pcs.....ld a,1:
01CAB0: 6C 64 20 28 69 79 2B 36 39 29 2C 61 0D 0A 09 6C ld (iy+69),a...l
01CAC0: 64 20 61 2C 31 30 3A 20 63 61 6C 6C 20 26 42 42 d a,10: call &BB
01CAD0: 35 41 0D 0A 09 6C 64 20 61 2C 31 33 3A 20 63 61 5A...ld a,13: ca
01CAE0: 6C 6C 20 26 42 42 35 41 0D 0A 09 6A 72 20 61 66 ll &BB5A...jr af
01CAF0: 74 65 72 33 0D 0A 0D 0A 2E 74 68 73 70 63 73 09 ter3.....thspcs.
01CB00: 69 6E 63 20 61 3A 20 6C 64 20 28 69 79 2B 36 39 inc a: ld (iy+69
01CB10: 29 2C 61 0D 0A 09 6C 64 20 61 2C 33 32 3A 20 63 ),a...ld a,32: c
01CB20: 61 6C 6C 20 26 42 42 35 41 0D 0A 09 63 61 6C 6C all &BB5A...call
01CB30: 20 26 42 42 35 41 0D 0A 09 63 61 6C 6C 20 26 42 &BB5A...call &B
01CB40: 42 35 41 0D 0A 0D 0A 2E 61 66 74 65 72 33 09 6C B5A.....after3.l
01CB50: 64 20 62 2C 31 34 0D 0A 2E 73 6B 69 70 30 09 70 d b,14...skip0.p
01CB60: 75 73 68 20 62 63 3A 20 63 61 6C 6C 20 26 42 43 ush bc: call &BC
01CB70: 38 30 3A 20 70 6F 70 20 62 63 0D 0A 09 64 6A 6E 80: pop bc...djn
01CB80: 7A 20 73 6B 69 70 30 0D 0A 09 72 65 74 0D 0A 1A z skip0...ret...
01CB90: 4D 4F 44 20 2A 2A 2A 0D 0A 0D 0A 09 3B 3E 3E 3E MOD ***.....;>>>
01CBA0: 20 4C 44 49 52 20 63 6F 6D 6D 61 6E 64 0D 0A 0D LDIR command...
01CBB0: 0A 2E 6C 64 69 72 5F 69 09 63 61 6C 6C 20 62 75 ..ldir_i.call bu
01CBC0: 66 66 5F 63 0D 0A 0D 0A 09 6C 64 20 63 2C 32 3A ff_c.....ld c,2:
01CBD0: 20 63 70 20 31 0D 0A 09 6A 70 20 6E 7A 2C 65 72 cp 1...jp nz,er
01CBE0: 72 6F 72 0D 0A 0D 0A 09 63 61 6C 6C 20 26 42 43 ror.....call &BC
01CBF0: 37 44 09 09 09 3B 61 62 61 6E 64 6F 6E 20 69 6E 7D...;abandon in
01CC00: 73 65 6E 64 20 62 79 74 65 0D 0A 09 6C 64 20 61 send byte...ld a
01CC10: 2C 28 69 79 2B 31 29 09 09 09 3B 6C 6F 63 61 6C ,(iy+1)...;local
01CC20: 20 65 63 68 6F 3F 0D 0A 09 6F 72 20 61 3A 20 6A echo?...or a: j
01CC30: 72 20 7A 2C 6E 6F 5F 6B 65 79 0D 0A 09 6C 64 20 r z,no_key...ld
01CC40: 61 2C 65 0D 0A 09 70 75 73 68 20 61 66 3A 20 63 a,e...push af: c
01CC50: 61 6C 6C 20 76 74 35 32 63 3A 20 70 6F 70 20 61 all vt52c: pop a
01CC60: 66 09 3B 69 66 20 73 6F 2C 20 70 72 69 6E 74 20 f.;if so, print
01CC70: 63 68 61 72 61 63 74 65 72 0D 0A 09 63 70 20 31 character...cp 1
01CC80: 33 3A 20 6A 72 20 6E 7A 2C 6E 6F 5F 6B 65 79 09 3: jr nz,no_key.
01CC90: 09 3B 43 52 3F 0D 0A 09 6C 64 20 61 2C 31 30 3A .;CR?...ld a,10:
01CCA0: 20 63 61 6C 6C 20 73 65 6E 64 62 74 09 09 3B 69 call sendbt..;i
01CCB0: 66 20 73 6F 2C 20 61 64 64 20 4C 46 0D 0A 09 6C f so, add LF...l
01CCC0: 64 20 61 2C 31 30 3A 20 63 61 6C 6C 20 76 74 35 d a,10: call vt5
01CCD0: 32 63 0D 0A 0D 0A 09 3B 47 65 74 20 63 68 61 72 2c.....;Get char
01CCE0: 61 63 74 65 72 73 20 66 72 6F 6D 20 69 6E 70 75 acters from inpu
01CCF0: 74 20 62 75 66 66 65 72 20 61 6E 64 20 70 72 69 t buffer and pri
01CD00: 6E 74 0D 0A 0D 0A 2E 6E 6F 5F 6B 65 79 09 63 61 nt.....no_key.ca
01CD10: 6C 6C 20 26 42 44 31 39 0D 0A 09 63 61 6C 6C 20 ll &BD19...call
01CD20: 26 42 42 38 34 09 09 09 3B 63 75 72 73 6F 72 20 &BB84...;cursor
01CD30: 6F 66 66 0D 0A 09 69 66 20 6B 64 73 3A 20 6C 64 off...if kds: ld
01CD40: 20 62 2C 38 09 3B 36 0D 0A 09 65 6C 73 65 3A 20 b,8.;6...else:
01CD50: 20 20 6C 64 20 62 2C 38 0D 0A 09 65 6E 64 69 66 ld b,8...endif
01CD60: 0D 0A 09 6C 64 20 65 2C 28 69 79 2B 33 38 29 3A ...ld e,(iy+38):
01CD70: 20 6C 64 20 64 2C 30 09 09 3B 44 45 20 3D 20 28 ld d,0..;DE = (
01CD80: 62 75 66 66 65 72 20 67 65 74 20 6F 66 66 73 65 buffer get offse
01CD90: 74 29 0D 0A 0D 0A 2E 67 63 6C 6F 6F 70 09 70 75 t).....gcloop.pu
01CDA0: 73 68 20 62 63 0D 0A 0D 0A 09 70 75 73 68 20 69 sh bc.....push i
01CDB0: 79 3A 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 20 62 y: pop hl...ld b
01CDC0: 63 2C 31 31 36 3A 20 61 64 64 20 68 6C 2C 62 63 c,116: add hl,bc
01CDD0: 0D 0A 09 61 64 64 20 68 6C 2C 64 65 09 09 09 3B ...add hl,de...;
01CDE0: 48 4C 20 3D 20 61 64 64 72 65 73 73 20 69 6E 20 HL = address in
01CDF0: 62 75 66 66 65 72 20 74 6F 20 67 65 74 0D 0A 09 buffer to get...
01CE00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CE10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CE20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CE30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CE40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CE50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CE60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CE70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CE80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CE90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CEA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CEB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CEC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CED0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CEE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CEF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CF00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CF10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CF20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CF30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CF40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CF50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CF60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CF70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CF80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CF90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CFA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CFB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CFC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CFD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CFE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01CFF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
01D000: 64 69 3A 20 6C 64 20 61 2C 28 68 6C 29 3A 20 6F di: ld a,(hl): o
01D010: 72 20 61 3A 20 6A 70 20 7A 2C 6E 6F 5F 69 6E 70 r a: jp z,no_inp
01D020: 0D 0A 0D 0A 09 6C 64 20 28 68 6C 29 2C 30 3A 20 .....ld (hl),0:
01D030: 65 69 3A 20 6C 64 20 63 2C 61 0D 0A 09 6C 64 20 ei: ld c,a...ld
01D040: 61 2C 28 69 79 2B 35 29 3A 20 63 70 20 31 3A 20 a,(iy+5): cp 1:
01D050: 63 61 6C 6C 20 7A 2C 63 61 70 70 72 6E 09 3B 66 call z,capprn.;f
01D060: 69 6C 65 20 63 61 70 74 75 72 65 20 6D 6F 64 65 ile capture mode
01D070: 0D 0A 2E 70 63 63 68 61 72 09 6C 64 20 61 2C 63 ...pcchar.ld a,c
01D080: 3A 20 70 75 73 68 20 64 65 3A 20 63 61 6C 6C 20 : push de: call
01D090: 76 74 35 32 63 0D 0A 0D 0A 09 69 66 20 6B 64 73 vt52c.....if kds
01D0A0: 3A 20 64 69 3A 20 63 61 6C 6C 20 66 61 73 74 5F : di: call fast_
01D0B0: 72 3A 20 70 6F 70 20 64 65 09 3B 70 6F 70 20 64 r: pop de.;pop d
01D0C0: 65 0D 0A 09 65 6C 73 65 3A 20 20 20 64 69 3A 20 e...else: di:
01D0D0: 63 61 6C 6C 20 66 61 73 74 5F 72 3A 20 70 6F 70 call fast_r: pop
01D0E0: 20 64 65 0D 0A 09 65 6E 64 69 66 0D 0A 09 69 6E de...endif...in
01D0F0: 63 20 65 0D 0A 0D 0A 2E 6E 6F 5F 69 6E 70 09 65 c e.....no_inp.e
01D100: 69 3A 20 70 6F 70 20 62 63 3A 20 64 6A 6E 7A 20 i: pop bc: djnz
01D110: 67 63 6C 6F 6F 70 0D 0A 09 6C 64 20 28 69 79 2B gcloop...ld (iy+
01D120: 33 38 29 2C 65 09 09 09 3B 28 62 75 66 66 65 72 38),e...;(buffer
01D130: 20 67 65 74 20 6F 66 66 73 65 74 29 20 3D 20 44 get offset) = D
01D140: 45 0D 0A 09 6A 70 20 63 6F 6D 5F 6C 70 0D 0A 0D E...jp com_lp...
01D150: 0A 09 3B 46 69 6C 65 20 63 61 70 74 75 72 65 20 ..;File capture
01D160: 6D 6F 64 65 0D 0A 0D 0A 2E 63 61 70 70 72 6E 09 mode.....capprn.
01D170: 6C 64 20 61 2C 63 3A 20 70 75 73 68 20 64 65 3A ld a,c: push de:
01D180: 20 70 75 73 68 20 68 6C 0D 0A 09 6C 64 20 65 2C push hl...ld e,
01D190: 28 69 79 2B 34 30 29 3A 20 6C 64 20 64 2C 28 69 (iy+40): ld d,(i
01D1A0: 79 2B 34 31 29 09 3B 44 45 20 3D 20 28 66 69 6C y+41).;DE = (fil
01D1B0: 65 20 62 79 74 65 73 20 63 6F 75 6E 74 29 0D 0A e bytes count)..
01D1C0: 09 6C 64 20 6C 2C 28 69 79 2B 37 29 3A 20 6C 64 .ld l,(iy+7): ld
01D1D0: 20 68 2C 28 69 79 2B 38 29 09 3B 48 4C 20 3D 20 h,(iy+8).;HL =
01D1E0: 28 66 69 6C 65 20 62 75 66 66 65 72 20 61 64 64 (file buffer add
01D1F0: 72 65 73 73 29 0D 0A 09 61 64 64 20 68 6C 2C 64 ress)...add hl,d
01D200: 20 0D 0A 09 3B 2A 2A 2A 20 53 49 4F 2E 4D 4F 44 ...;*** SIO.MOD
01D210: 20 2A 2A 2A 0D 0A 0D 0A 09 3B 3E 3E 3E 20 53 45 ***.....;>>> SE
01D220: 4E 44 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 73 ND command.....s
01D230: 65 6E 64 5F 69 09 6C 64 20 63 2C 32 3A 20 6F 72 end_i.ld c,2: or
01D240: 20 61 3A 20 6A 70 20 7A 2C 65 72 72 6F 72 0D 0A a: jp z,error..
01D250: 0D 0A 09 6C 64 20 65 2C 61 3A 20 64 65 63 20 61 ...ld e,a: dec a
01D260: 3A 20 72 6C 63 61 0D 0A 09 6C 64 20 62 2C 30 3A : rlca...ld b,0:
01D270: 20 6C 64 20 63 2C 61 0D 0A 09 64 62 20 26 44 44 ld c,a...db &DD
01D280: 3A 20 73 62 63 20 68 6C 2C 62 63 0D 0A 0D 0A 2E : sbc hl,bc.....
01D290: 73 6C 6F 6F 70 09 6C 64 20 61 2C 28 69 78 29 3A sloop.ld a,(ix):
01D2A0: 20 63 61 6C 6C 20 73 65 6E 64 62 74 0D 0A 09 64 call sendbt...d
01D2B0: 65 63 20 65 3A 20 72 65 74 20 7A 0D 0A 09 69 6E ec e: ret z...in
01D2C0: 63 20 69 78 3A 20 69 6E 63 20 69 78 3A 20 6A 72 c ix: inc ix: jr
01D2D0: 20 73 6C 6F 6F 70 0D 0A 0D 0A 09 3B 3E 3E 3E 20 sloop.....;>>>
01D2E0: 47 45 54 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E GET command.....
01D2F0: 67 65 74 5F 69 09 6C 64 20 63 2C 32 3A 20 63 70 get_i.ld c,2: cp
01D300: 20 31 3A 20 6A 70 20 6E 7A 2C 65 72 72 6F 72 0D 1: jp nz,error.
01D310: 0A 09 6C 64 20 6C 2C 28 69 78 29 3A 20 6C 64 20 ..ld l,(ix): ld
01D320: 68 2C 28 69 78 2B 31 29 0D 0A 09 6C 64 20 65 2C h,(ix+1)...ld e,
01D330: 28 69 79 2B 39 29 3A 20 6C 64 20 64 2C 28 69 79 (iy+9): ld d,(iy
01D340: 2B 31 30 29 09 09 3B 6C 64 20 64 65 2C 28 74 69 +10)..;ld de,(ti
01D350: 6D 65 73 74 29 0D 0A 09 63 61 6C 6C 20 77 61 69 mest)...call wai
01D360: 74 62 74 3A 20 6A 70 20 6E 63 2C 74 69 6D 6F 75 tbt: jp nc,timou
01D370: 74 0D 0A 09 6C 64 20 28 68 6C 29 2C 61 3A 20 72 t...ld (hl),a: r
01D380: 65 74 0D 0A 0D 0A 09 3B 3E 3E 3E 20 47 52 41 42 et.....;>>> GRAB
01D390: 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 67 72 61 command.....gra
01D3A0: 62 5F 69 09 6C 64 20 63 2C 32 3A 20 63 70 20 31 b_i.ld c,2: cp 1
01D3B0: 3A 20 6A 70 20 6E 7A 2C 65 72 72 6F 72 0D 0A 09 : jp nz,error...
01D3C0: 6C 64 20 6C 2C 28 69 78 29 3A 20 6C 64 20 68 2C ld l,(ix): ld h,
01D3D0: 28 69 78 2B 31 29 0D 0A 09 63 61 6C 6C 20 67 72 (ix+1)...call gr
01D3E0: 61 62 62 74 0D 0A 09 6C 64 20 28 68 6C 29 2C 61 abbt...ld (hl),a
01D3F0: 3A 20 72 65 74 0D 0A 0D 0A 09 3B 3E 3E 3E 20 57 : ret.....;>>> W
01D400: 65 3A 20 6C 64 20 28 68 6C 29 2C 61 0D 0A 09 69 e: ld (hl),a...i
01D410: 6E 63 20 64 65 0D 0A 09 6C 64 20 28 69 79 2B 34 nc de...ld (iy+4
01D420: 30 29 2C 65 3A 20 6C 64 20 28 69 79 2B 34 31 29 0),e: ld (iy+41)
01D430: 2C 64 09 3B 28 66 69 6C 65 20 62 79 74 65 73 20 ,d.;(file bytes
01D440: 63 6F 75 6E 74 29 20 3D 20 44 45 0D 0A 09 6C 64 count) = DE...ld
01D450: 20 61 2C 64 3A 20 63 70 20 31 32 3A 20 6A 72 20 a,d: cp 12: jr
01D460: 7A 2C 62 66 69 6C 6C 09 3B 42 75 66 66 65 72 20 z,bfill.;Buffer
01D470: 66 75 6C 6C 3F 0D 0A 09 70 6F 70 20 68 6C 3A 20 full?...pop hl:
01D480: 70 6F 70 20 64 65 3A 20 72 65 74 09 09 3B 49 66 pop de: ret..;If
01D490: 20 6E 6F 74 2C 20 72 65 74 75 72 6E 0D 0A 0D 0A not, return....
01D4A0: 2E 62 66 69 6C 6C 09 70 75 73 68 20 62 63 3A 20 .bfill.push bc:
01D4B0: 63 61 6C 6C 20 73 74 6F 70 09 09 3B 65 6C 73 65 call stop..;else
01D4C0: 20 79 65 6C 6C 20 22 73 74 6F 70 21 21 21 22 0D yell "stop!!!".
01D4D0: 0A 0D 0A 09 70 75 73 68 20 69 79 3A 20 70 6F 70 ....push iy: pop
01D4E0: 20 68 6C 0D 0A 09 6C 64 20 64 65 2C 32 34 3A 20 hl...ld de,24:
01D4F0: 61 64 64 20 68 6C 2C 64 65 0D 0A 09 63 61 6C 6C add hl,de...call
01D500: 20 26 42 43 45 36 09 09 09 3B 74 65 6D 70 6F 72 &BCE6...;tempor
01D510: 61 72 69 6C 79 20 72 65 6D 6F 76 65 20 66 61 73 arily remove fas
01D520: 74 20 74 69 63 6B 65 72 20 62 6C 6F 63 6B 20 0D t ticker block .
01D530: 0A 0D 0A 09 6C 64 20 6C 2C 28 69 79 2B 37 29 3A ....ld l,(iy+7):
01D540: 20 6C 64 20 68 2C 28 69 79 2B 38 29 09 3B 48 4C ld h,(iy+8).;HL
01D550: 20 3D 20 28 66 69 6C 65 20 62 75 66 66 65 72 20 = (file buffer
01D560: 61 64 64 72 65 73 73 29 0D 0A 09 6C 64 20 64 65 address)...ld de
01D570: 2C 31 30 32 34 3A 20 61 64 64 20 68 6C 2C 64 65 ,1024: add hl,de
01D580: 0D 0A 09 6C 64 20 62 63 2C 32 30 34 38 0D 0A 2E ...ld bc,2048...
01D590: 62 66 6C 6F 6F 70 09 6C 64 20 61 2C 28 68 6C 29 bfloop.ld a,(hl)
01D5A0: 3A 20 63 61 6C 6C 20 26 42 43 39 35 09 09 3B 77 : call &BC95..;w
01D5B0: 72 69 74 65 20 74 6F 20 74 68 65 20 64 69 73 63 rite to the disc
01D5C0: 0D 0A 09 6A 72 20 6E 63 2C 63 6D 65 72 72 09 09 ...jr nc,cmerr..
01D5D0: 09 3B 6A 75 6D 70 20 6F 75 74 20 69 66 20 65 72 .;jump out if er
01D5E0: 72 6F 72 0D 0A 09 69 6E 63 20 68 6C 3A 20 64 65 ror...inc hl: de
01D5F0: 63 20 62 63 3A 20 6C 64 20 61 2C 62 3A 20 6F 72 c bc: ld a,b: or
01D600: 52 49 54 45 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A RITE command....
01D610: 2E 77 72 74 5F 69 09 6C 64 20 63 2C 32 0D 0A 09 .wrt_i.ld c,2...
01D620: 6F 72 20 61 3A 20 6A 72 20 7A 2C 73 6E 64 63 72 or a: jr z,sndcr
01D630: 09 3B 69 66 20 6E 6F 20 70 61 72 61 6D 65 74 65 .;if no paramete
01D640: 72 73 2C 20 73 65 6E 64 20 43 52 20 6F 6E 6C 79 rs, send CR only
01D650: 0D 0A 09 63 70 20 31 3A 20 6A 70 20 6E 7A 2C 65 ...cp 1: jp nz,e
01D660: 72 72 6F 72 09 3B 65 72 72 6F 72 20 32 20 69 66 rror.;error 2 if
01D670: 20 6E 6F 74 20 31 20 70 61 72 61 6D 65 74 65 72 not 1 parameter
01D680: 0D 0A 0D 0A 09 6C 64 20 6C 2C 28 69 78 29 0D 0A .....ld l,(ix)..
01D690: 09 6C 64 20 68 2C 28 69 78 2B 31 29 0D 0A 0D 0A .ld h,(ix+1)....
01D6A0: 09 6C 64 20 61 2C 28 68 6C 29 3A 20 69 6E 63 20 .ld a,(hl): inc
01D6B0: 68 6C 0D 0A 09 6C 64 20 65 2C 28 68 6C 29 3A 20 hl...ld e,(hl):
01D6C0: 69 6E 63 20 68 6C 0D 0A 09 6C 64 20 64 2C 28 68 inc hl...ld d,(h
01D6D0: 6C 29 0D 0A 09 65 78 20 64 65 2C 68 6C 0D 0A 09 l)...ex de,hl...
01D6E0: 6F 72 20 61 3A 20 6A 72 20 7A 2C 65 78 69 74 77 or a: jr z,exitw
01D6F0: 72 0D 0A 09 6C 64 20 65 2C 61 0D 0A 0D 0A 2E 77 r...ld e,a.....w
01D700: 72 6C 6F 6F 70 09 6C 64 20 61 2C 28 68 6C 29 3A rloop.ld a,(hl):
01D710: 20 63 61 6C 6C 20 73 65 6E 64 62 74 0D 0A 09 69 call sendbt...i
01D720: 6E 63 20 68 6C 3A 20 64 65 63 20 65 3A 20 6A 72 nc hl: dec e: jr
01D730: 20 6E 7A 2C 77 72 6C 6F 6F 70 0D 0A 0D 0A 2E 65 nz,wrloop.....e
01D740: 78 69 74 77 72 09 6C 64 20 61 2C 28 69 79 2B 33 xitwr.ld a,(iy+3
01D750: 29 3A 20 6F 72 20 61 3A 20 72 65 74 20 7A 09 3B ): or a: ret z.;
01D760: 43 52 20 6F 6E 2F 6F 66 66 0D 0A 0D 0A 2E 73 6E CR on/off.....sn
01D770: 64 63 72 09 6C 64 20 61 2C 31 33 3A 20 6A 70 20 dcr.ld a,13: jp
01D780: 73 65 6E 64 62 74 0D 0A 0D 0A 09 3B 3E 3E 3E 20 sendbt.....;>>>
01D790: 43 4F 4D 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E COM command.....
01D7A0: 63 6F 6D 5F 69 09 63 61 6C 6C 20 63 62 75 66 66 com_i.call cbuff
01D7B0: 72 09 09 09 3B 43 6C 65 61 72 20 74 65 78 74 20 r...;Clear text
01D7C0: 62 75 66 66 65 72 0D 0A 09 63 61 6C 6C 20 63 6B buffer...call ck
01D7D0: 65 79 6F 6E 0D 0A 0D 0A 2E 77 74 63 63 62 09 6C eyon.....wtccb.l
01D7E0: 64 20 62 63 2C 63 6F 6E 69 6E 3A 20 69 6E 20 61 d bc,conin: in a
01D7F0: 2C 28 63 29 3A 20 62 69 74 20 37 2C 61 09 3B 43 ,(c): bit 7,a.;C
01D800: 20 63 3A 20 6A 72 20 6E 7A 2C 62 66 6C 6F 6F 70 c: jr nz,bfloop
01D810: 0D 0A 09 6C 64 20 28 69 79 2B 34 30 29 2C 65 3A ...ld (iy+40),e:
01D820: 20 6C 64 20 28 69 79 2B 34 31 29 2C 64 09 3B 66 ld (iy+41),d.;f
01D830: 69 6C 65 20 62 75 66 66 65 72 20 61 64 64 72 65 ile buffer addre
01D840: 73 73 20 62 61 63 6B 20 74 6F 20 6E 6F 72 6D 61 ss back to norma
01D850: 6C 0D 0A 0D 0A 2E 72 65 73 63 6F 6D 09 70 75 73 l.....rescom.pus
01D860: 68 20 69 79 3A 20 70 6F 70 20 68 6C 0D 0A 09 6C h iy: pop hl...l
01D870: 64 20 64 65 2C 32 34 3A 20 61 64 64 20 68 6C 2C d de,24: add hl,
01D880: 64 65 0D 0A 09 63 61 6C 6C 20 26 42 43 45 33 09 de...call &BCE3.
01D890: 09 09 3B 72 65 70 6C 61 63 65 20 66 61 73 74 20 ..;replace fast
01D8A0: 74 69 63 6B 65 72 20 62 6C 6F 63 6B 0D 0A 0D 0A ticker block....
01D8B0: 09 63 61 6C 6C 20 72 65 73 75 6D 65 09 09 09 3B .call resume...;
01D8C0: 22 63 61 72 72 79 20 6F 6E 21 21 22 0D 0A 09 70 "carry on!!"...p
01D8D0: 6F 70 20 62 63 3A 20 70 6F 70 20 68 6C 3A 20 70 op bc: pop hl: p
01D8E0: 6F 70 20 64 65 3A 20 72 65 74 09 3B 61 6E 64 20 op de: ret.;and
01D8F0: 72 65 74 75 72 6E 0D 0A 0D 0A 2E 63 6D 65 72 72 return.....cmerr
01D900: 09 6C 64 20 28 69 79 2B 35 29 2C 30 09 09 09 3B .ld (iy+5),0...;
01D910: 69 66 20 65 72 72 6F 72 2C 20 63 61 70 74 75 72 if error, captur
01D920: 65 20 6D 6F 64 65 20 4F 46 46 0D 0A 09 63 61 6C e mode OFF...cal
01D930: 6C 20 26 42 43 39 32 09 09 09 3B 61 62 61 6E 64 l &BC92...;aband
01D940: 6F 6E 20 6F 75 74 70 75 74 20 66 69 6C 65 0D 0A on output file..
01D950: 09 6A 72 20 72 65 73 63 6F 6D 09 09 09 3B 72 65 .jr rescom...;re
01D960: 73 75 6D 65 20 63 6F 6D 6D 75 6E 69 63 61 74 69 sume communicati
01D970: 6F 6E 21 0D 0A 0D 0A 09 3B 46 61 73 74 20 74 69 on!.....;Fast ti
01D980: 63 6B 65 72 20 65 76 65 6E 74 0D 0A 0D 0A 2E 66 cker event.....f
01D990: 61 73 74 5F 72 09 70 75 73 68 20 69 79 0D 0A 09 ast_r.push iy...
01D9A0: 6C 64 20 69 79 2C 28 26 42 41 46 44 29 0D 0A 09 ld iy,(&BAFD)...
01D9B0: 6C 64 20 68 6C 2C 28 26 42 41 46 44 29 0D 0A 09 ld hl,(&BAFD)...
01D9C0: 6C 64 20 64 65 2C 31 31 36 3A 20 61 64 64 20 68 ld de,116: add h
01D9D0: 6C 2C 64 65 09 09 3B 48 4C 20 3D 20 62 75 66 66 l,de..;HL = buff
01D9E0: 65 72 20 73 74 61 72 74 0D 0A 09 63 61 6C 6C 20 er start...call
01D9F0: 67 72 61 62 62 74 0D 0A 09 6C 64 20 64 2C 30 3A grabbt...ld d,0:
01DA00: 68 61 72 61 63 74 65 72 20 61 76 61 69 6C 61 62 haracter availab
01DA10: 6C 65 3F 0D 0A 09 6A 72 20 7A 2C 6E 6F 63 63 62 le?...jr z,noccb
01DA20: 0D 0A 09 6C 64 20 62 63 2C 64 61 74 69 6E 3A 20 ...ld bc,datin:
01DA30: 69 6E 20 61 2C 28 63 29 3A 20 6A 72 20 77 74 63 in a,(c): jr wtc
01DA40: 63 62 09 3B 49 66 20 73 6F 2C 20 67 65 74 20 61 cb.;If so, get a
01DA50: 6E 64 20 74 72 79 20 75 6E 74 69 6C 20 6E 6F 74 nd try until not
01DA60: 20 61 76 61 69 6C 61 62 6C 65 0D 0A 0D 0A 2E 6E available.....n
01DA70: 6F 63 63 62 09 63 61 6C 6C 20 26 42 39 31 32 3A occb.call &B912:
01DA80: 20 6C 64 20 63 2C 61 3A 20 6C 64 20 62 2C 26 38 ld c,a: ld b,&8
01DA90: 30 09 3B 53 65 74 20 75 70 20 66 61 73 74 20 74 0.;Set up fast t
01DAA0: 69 63 6B 65 72 20 69 6E 74 65 72 72 75 70 74 0D icker interrupt.
01DAB0: 0A 09 70 75 73 68 20 69 79 3A 20 70 6F 70 20 68 ..push iy: pop h
01DAC0: 6C 0D 0A 09 6C 64 20 64 65 2C 32 34 3A 20 61 64 l...ld de,24: ad
01DAD0: 64 20 68 6C 2C 64 65 0D 0A 09 6C 64 20 64 65 2C d hl,de...ld de,
01DAE0: 66 61 73 74 5F 72 0D 0A 09 63 61 6C 6C 20 26 42 fast_r...call &B
01DAF0: 43 45 30 0D 0A 0D 0A 09 3B 4D 61 69 6E 20 7C 43 CE0.....;Main |C
01DB00: 4F 4D 20 6C 6F 6F 70 0D 0A 0D 0A 2E 63 6F 6D 5F OM loop.....com_
01DB10: 6C 70 20 6C 64 20 61 2C 28 69 79 2B 32 29 3A 20 lp ld a,(iy+2):
01DB20: 6F 72 20 61 0D 0A 09 63 61 6C 6C 20 6E 7A 2C 26 or a...call nz,&
01DB30: 42 42 38 31 09 09 09 3B 43 75 72 73 6F 72 20 6F BB81...;Cursor o
01DB40: 6E 20 69 66 20 73 65 6C 65 63 74 65 64 0D 0A 0D n if selected...
01DB50: 0A 09 3B 47 65 74 20 6B 65 79 20 61 6E 64 20 73 ..;Get key and s
01DB60: 65 6E 64 0D 0A 0D 0A 09 63 61 6C 6C 20 26 42 42 end.....call &BB
01DB70: 30 39 0D 0A 09 6A 70 20 6E 63 2C 6E 6F 5F 6B 65 09...jp nc,no_ke
01DB80: 79 09 09 09 3B 6E 6F 20 6B 65 79 20 70 72 65 73 y...;no key pres
01DB90: 73 65 64 0D 0A 09 63 70 20 26 46 43 3A 20 6A 70 sed...cp &FC: jp
01DBA0: 20 7A 2C 71 75 69 74 09 09 3B 69 66 20 45 53 43 z,quit..;if ESC
01DBB0: 2C 20 71 75 69 74 0D 0A 09 63 70 20 32 32 34 3A , quit...cp 224:
01DBC0: 20 63 61 6C 6C 20 7A 2C 26 42 42 36 30 09 09 3B call z,&BB60..;
01DBD0: 69 66 20 43 4F 50 59 2C 20 63 6F 70 79 20 63 68 if COPY, copy ch
01DBE0: 61 72 61 63 74 65 72 0D 0A 09 6C 64 20 65 2C 61 aracter...ld e,a
01DBF0: 3A 20 63 61 6C 6C 20 73 65 6E 64 62 74 09 09 3B : call sendbt..;
01DC00: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
01DC10: 19 00 01 00 02 09 4E E5 19 00 C4 02 00 00 00 02 ......N.........
01DC20: 19 00 C9 02 00 00 00 02 19 00 C5 02 00 00 00 02 ................
01DC30: 19 00 C1 02 00 00 00 02 19 00 C6 02 00 00 00 02 ................
01DC40: 19 00 C2 02 00 00 00 02 19 00 C7 02 00 00 00 02 ................
01DC50: 19 00 C3 02 00 00 00 02 19 00 C8 02 00 00 00 02 ................
01DC60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01DC70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01DC80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01DC90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01DCA0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01DCB0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01DCC0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01DCD0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01DCE0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01DCF0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01DD00: 65 2C 31 31 36 3A 20 61 64 64 20 69 78 2C 64 65 e,116: add ix,de
01DD10: 09 09 3B 49 58 20 3D 20 62 75 66 66 65 72 0D 0A ..;IX = buffer..
01DD20: 09 6C 64 20 65 2C 28 69 79 2B 39 29 3A 20 6C 64 .ld e,(iy+9): ld
01DD30: 20 64 2C 28 69 79 2B 31 30 29 09 3B 44 45 20 3D d,(iy+10).;DE =
01DD40: 20 74 69 6D 65 6F 75 74 0D 0A 09 63 61 6C 6C 20 timeout...call
01DD50: 77 61 69 74 62 74 3A 20 6A 70 20 6E 63 2C 77 74 waitbt: jp nc,wt
01DD60: 6D 6F 75 74 0D 0A 09 6C 64 20 62 2C 28 69 79 2B mout...ld b,(iy+
01DD70: 34 32 29 09 09 09 3B 42 20 3D 20 6E 75 6D 62 65 42)...;B = numbe
01DD80: 72 20 6F 66 20 70 61 72 61 6D 65 74 65 72 73 0D r of parameters.
01DD90: 0A 0D 0A 2E 63 68 6B 73 6C 70 09 6C 64 20 65 2C ....chkslp.ld e,
01DDA0: 28 69 78 29 3A 20 6C 64 20 64 2C 30 0D 0A 09 6C (ix): ld d,0...l
01DDB0: 64 20 6C 2C 28 69 78 2B 32 29 3A 20 6C 64 20 68 d l,(ix+2): ld h
01DDC0: 2C 28 69 78 2B 33 29 0D 0A 09 61 64 64 20 68 6C ,(ix+3)...add hl
01DDD0: 2C 64 65 0D 0A 09 63 70 20 28 68 6C 29 3A 20 6A ,de...cp (hl): j
01DDE0: 72 20 7A 2C 63 6F 72 72 65 73 0D 0A 09 6C 64 20 r z,corres...ld
01DDF0: 28 69 78 29 2C 30 0D 0A 0D 0A 2E 72 66 63 6B 09 (ix),0.....rfck.
01DE00: 69 6E 63 20 69 78 3A 20 69 6E 63 20 69 78 3A 20 inc ix: inc ix:
01DE10: 69 6E 63 20 69 78 3A 20 69 6E 63 20 69 78 0D 0A inc ix: inc ix..
01DE20: 09 64 6A 6E 7A 20 63 68 6B 73 6C 70 0D 0A 0D 0A .djnz chkslp....
01DE30: 09 70 75 73 68 20 69 79 3A 20 70 6F 70 20 68 6C .push iy: pop hl
01DE40: 0D 0A 09 69 6E 63 20 68 3A 20 64 65 63 20 68 6C ...inc h: dec hl
01DE50: 09 09 09 3B 48 4C 20 3D 20 62 75 66 66 65 72 2B ...;HL = buffer+
01DE60: 32 35 35 0D 0A 09 6C 64 20 28 68 6C 29 2C 61 0D 255...ld (hl),a.
01DE70: 0A 09 6C 64 20 61 2C 28 69 79 2B 35 29 3A 20 6F ..ld a,(iy+5): o
01DE80: 72 20 61 09 09 3B 41 20 3D 20 66 69 6C 65 20 63 r a..;A = file c
01DE90: 61 70 74 75 72 65 20 6D 6F 64 65 0D 0A 09 63 61 apture mode...ca
01DEA0: 6C 6C 20 6E 7A 2C 63 61 70 70 72 6E 0D 0A 09 6A ll nz,capprn...j
01DEB0: 72 20 77 67 6C 6F 6F 70 0D 0A 0D 0A 2E 63 6F 72 r wgloop.....cor
01DEC0: 72 65 73 09 69 6E 63 20 65 3A 20 6C 64 20 28 69 res.inc e: ld (i
01DED0: 78 29 2C 65 0D 0A 09 6C 64 20 61 2C 65 3A 20 63 x),e...ld a,e: c
01DEE0: 70 20 28 69 78 2B 31 29 3A 20 6C 64 20 61 2C 28 p (ix+1): ld a,(
01DEF0: 68 6C 29 0D 0A 09 6A 72 20 6E 7A 2C 72 66 63 6B hl)...jr nz,rfck
01DF00: 0D 0A 0D 0A 09 6A 72 20 63 2C 74 79 70 5F 6F 6B .....jr c,typ_ok
01DF10: 3A 20 6A 70 20 7A 2C 6F 64 65 72 72 3A 20 6C 64 : jp z,oderr: ld
01DF20: 20 63 2C 38 3A 20 6A 70 20 65 72 72 6F 72 0D 0A c,8: jp error..
01DF30: 0D 0A 2E 74 79 70 5F 6F 6B 09 63 61 6C 6C 20 26 ...typ_ok.call &
01DF40: 42 43 38 30 3A 20 6A 72 20 6E 63 2C 71 75 5F 74 BC80: jr nc,qu_t
01DF50: 79 70 0D 0A 09 63 61 6C 6C 20 76 74 35 32 63 0D yp...call vt52c.
01DF60: 0A 09 63 61 6C 6C 20 26 42 42 30 39 3A 20 6A 72 ..call &BB09: jr
01DF70: 20 6E 63 2C 74 79 70 5F 6F 6B 0D 0A 09 63 70 20 nc,typ_ok...cp
01DF80: 26 46 43 3A 20 6A 72 20 7A 2C 71 75 5F 74 79 70 &FC: jr z,qu_typ
01DF90: 3A 20 63 61 6C 6C 20 26 42 42 38 31 3A 20 63 61 : call &BB81: ca
01DFA0: 6C 6C 20 26 42 42 31 38 3A 20 63 61 6C 6C 20 26 ll &BB18: call &
01DFB0: 42 42 38 34 0D 0A 09 6A 72 20 74 79 70 5F 6F 6B BB84...jr typ_ok
01DFC0: 0D 0A 0D 0A 2E 71 75 5F 74 79 70 09 6A 70 20 26 .....qu_typ.jp &
01DFD0: 42 43 37 41 0D 0A 0D 0A 09 3B 3E 3E 3E 20 44 54 BC7A.....;>>> DT
01DFE0: 52 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 64 74 R command.....dt
01DFF0: 72 5F 69 09 69 66 20 6B 64 73 3A 20 6C 64 20 63 r_i.if kds: ld c
01E000: 2C 31 39 3A 20 6A 70 20 65 72 72 6F 72 0D 0A 09 ,19: jp error...
01E010: 65 6C 73 65 3A 09 6C 64 20 63 2C 32 3A 20 63 70 else:.ld c,2: cp
01E020: 20 31 3A 20 6A 70 20 6E 7A 2C 65 72 72 6F 72 0D 1: jp nz,error.
01E030: 0A 09 09 6C 64 20 61 2C 28 69 78 29 0D 0A 09 09 ...ld a,(ix)....
01E040: 6C 64 20 63 2C 31 3A 20 63 70 20 32 3A 20 6A 70 ld c,1: cp 2: jp
01E050: 20 6E 63 2C 65 72 72 6F 72 0D 0A 09 09 72 72 63 nc,error....rrc
01E060: 61 3A 20 70 75 73 68 20 61 66 3A 20 6C 64 20 61 a: push af: ld a
01E070: 2C 28 69 79 2B 31 32 29 3A 20 61 6E 64 20 31 32 ,(iy+12): and 12
01E080: 37 09 3B 75 73 69 6E 67 20 72 65 67 69 73 74 65 7.;using registe
01E090: 72 20 35 0D 0A 09 09 70 6F 70 20 62 63 3A 20 6F r 5....pop bc: o
01E0A0: 72 20 62 3A 20 6C 64 20 28 69 79 2B 31 32 29 2C r b: ld (iy+12),
01E0B0: 61 3A 20 6C 64 20 64 2C 35 0D 0A 09 65 6E 64 69 a: ld d,5...endi
01E0C0: 66 3A 09 6A 70 20 70 72 65 67 0D 0A 0D 0A 09 3B f:.jp preg.....;
01E0D0: 3E 3E 3E 20 52 54 53 20 63 6F 6D 6D 61 6E 64 0D >>> RTS command.
01E0E0: 0A 0D 0A 2E 72 74 73 5F 69 09 6C 64 20 63 2C 32 ....rts_i.ld c,2
01E0F0: 3A 20 63 70 20 31 3A 20 6A 70 20 6E 7A 2C 65 72 : cp 1: jp nz,er
01E100: 0D 0A 0D 0A 2E 77 73 72 76 61 6C 09 6C 64 20 6C .....wsrval.ld l
01E110: 2C 28 69 79 2B 33 38 29 3A 20 6C 64 20 68 2C 28 ,(iy+38): ld h,(
01E120: 69 79 2B 33 39 29 0D 0A 09 70 75 73 68 20 68 6C iy+39)...push hl
01E130: 3A 20 70 6F 70 20 69 78 09 09 09 3B 48 4C 20 3D : pop ix...;HL =
01E140: 20 62 75 66 66 65 72 20 67 65 74 20 6F 66 66 73 buffer get offs
01E150: 65 74 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 34 32 et...ld a,(iy+42
01E160: 29 09 09 09 3B 41 20 3D 20 6E 75 6D 62 65 72 20 )...;A = number
01E170: 6F 66 20 70 61 72 61 6D 65 74 65 72 73 0D 0A 09 of parameters...
01E180: 6C 64 20 65 2C 61 3A 20 6C 64 20 64 2C 30 3A 20 ld e,a: ld d,0:
01E190: 61 64 64 20 69 78 2C 64 65 3A 20 61 64 64 20 69 add ix,de: add i
01E1A0: 78 2C 64 65 0D 0A 09 6C 64 20 6C 2C 28 69 78 29 x,de...ld l,(ix)
01E1B0: 3A 20 6C 64 20 68 2C 28 69 78 2B 31 29 3A 20 6C : ld h,(ix+1): l
01E1C0: 64 20 28 68 6C 29 2C 62 0D 0A 09 72 65 74 0D 0A d (hl),b...ret..
01E1D0: 0D 0A 2E 77 74 6D 6F 75 74 09 6C 64 20 62 2C 30 ...wtmout.ld b,0
01E1E0: 3A 20 63 61 6C 6C 20 77 73 72 76 61 6C 0D 0A 09 : call wsrval...
01E1F0: 6A 70 20 74 69 6D 6F 75 74 0D 0A 0D 0A 09 3B 3E jp timout.....;>
01E200: 3E 3E 20 49 4E 50 55 54 20 63 6F 6D 6D 61 6E 64 >> INPUT command
01E210: 0D 0A 0D 0A 2E 69 6E 70 5F 69 09 6C 64 20 63 2C .....inp_i.ld c,
01E220: 32 0D 0A 09 63 70 20 63 3A 20 6A 72 20 7A 2C 69 2...cp c: jr z,i
01E230: 6E 70 77 0D 0A 09 63 70 20 31 3A 20 6A 70 20 6E npw...cp 1: jp n
01E240: 7A 2C 65 72 72 6F 72 0D 0A 2E 69 6E 70 5F 6F 6B z,error...inp_ok
01E250: 09 6C 64 20 6C 2C 28 69 78 29 0D 0A 09 6C 64 20 .ld l,(ix)...ld
01E260: 68 2C 28 69 78 2B 31 29 0D 0A 09 6C 64 20 61 2C h,(ix+1)...ld a,
01E270: 28 68 6C 29 3A 20 69 6E 63 20 68 6C 0D 0A 09 6C (hl): inc hl...l
01E280: 64 20 65 2C 28 68 6C 29 3A 20 69 6E 63 20 68 6C d e,(hl): inc hl
01E290: 0D 0A 09 6C 64 20 64 2C 28 68 6C 29 0D 0A 09 65 ...ld d,(hl)...e
01E2A0: 78 20 64 65 2C 68 6C 09 09 09 3B 41 20 63 6F 6E x de,hl...;A con
01E2B0: 74 61 69 6E 73 20 6C 65 6E 67 74 68 2C 20 48 4C tains length, HL
01E2C0: 20 61 64 64 72 65 73 73 20 6F 66 20 73 74 72 69 address of stri
01E2D0: 6E 67 0D 0A 09 6C 64 20 62 2C 61 0D 0A 0D 0A 2E ng...ld b,a.....
01E2E0: 69 6E 70 5F 6C 70 09 6C 64 20 65 2C 28 69 79 2B inp_lp.ld e,(iy+
01E2F0: 39 29 3A 20 6C 64 20 64 2C 28 69 79 2B 31 30 29 9): ld d,(iy+10)
01E300: 20 6C 64 20 65 2C 28 69 79 2B 33 36 29 09 09 3B ld e,(iy+36)..;
01E310: 44 45 20 3D 20 62 75 66 66 65 72 20 6F 66 66 73 DE = buffer offs
01E320: 65 74 0D 0A 09 61 64 64 20 68 6C 2C 64 65 0D 0A et...add hl,de..
01E330: 09 6C 64 20 28 68 6C 29 2C 61 3A 20 6F 72 20 61 .ld (hl),a: or a
01E340: 0D 0A 09 6A 70 20 7A 2C 72 65 74 66 72 3A 20 69 ...jp z,retfr: i
01E350: 6E 63 20 65 0D 0A 0D 0A 09 6C 64 20 68 6C 2C 28 nc e.....ld hl,(
01E360: 26 42 41 46 44 29 0D 0A 09 70 75 73 68 20 64 65 &BAFD)...push de
01E370: 0D 0A 09 6C 64 20 64 65 2C 31 31 36 3A 20 61 64 ...ld de,116: ad
01E380: 64 20 68 6C 2C 64 65 09 09 3B 48 4C 20 3D 20 62 d hl,de..;HL = b
01E390: 75 66 66 65 72 20 73 74 61 72 74 0D 0A 09 63 61 uffer start...ca
01E3A0: 6C 6C 20 67 72 61 62 62 74 0D 0A 09 70 6F 70 20 ll grabbt...pop
01E3B0: 64 65 09 09 09 09 3B 44 45 20 3D 20 62 75 66 66 de....;DE = buff
01E3C0: 65 72 20 6F 66 66 73 65 74 0D 0A 09 61 64 64 20 er offset...add
01E3D0: 68 6C 2C 64 65 0D 0A 09 6C 64 20 28 68 6C 29 2C hl,de...ld (hl),
01E3E0: 61 3A 20 6F 72 20 61 0D 0A 09 6A 70 20 7A 2C 72 a: or a...jp z,r
01E3F0: 65 74 66 72 31 3A 20 69 6E 63 20 65 0D 0A 0D 0A etfr1: inc e....
01E400: 2E 72 65 74 66 72 31 09 6C 64 20 28 69 79 2B 33 .retfr1.ld (iy+3
01E410: 36 29 2C 65 09 09 09 3B 62 75 66 66 65 72 20 73 6),e...;buffer s
01E420: 74 6F 72 65 20 6F 66 66 73 65 74 20 3D 20 44 45 tore offset = DE
01E430: 0D 0A 2E 72 65 74 66 72 09 70 6F 70 20 69 79 3A ...retfr.pop iy:
01E440: 20 72 65 74 0D 0A 0D 0A 09 3B 51 75 69 74 20 66 ret.....;Quit f
01E450: 72 6F 6D 20 7C 43 4F 4D 20 6D 6F 64 65 0D 0A 0D rom |COM mode...
01E460: 0A 2E 71 75 69 74 09 63 61 6C 6C 20 26 42 42 34 ..quit.call &BB4
01E470: 38 0D 0A 09 63 61 6C 6C 20 26 42 42 31 42 09 09 8...call &BB1B..
01E480: 09 3B 72 65 6D 6F 76 65 20 62 72 65 61 6B 0D 0A .;remove break..
01E490: 09 63 61 6C 6C 20 26 42 42 38 34 09 09 09 3B 63 .call &BB84...;c
01E4A0: 75 72 73 6F 72 20 6F 66 66 0D 0A 09 70 75 73 68 ursor off...push
01E4B0: 20 69 79 3A 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 iy: pop hl...ld
01E4C0: 20 64 65 2C 32 34 3A 20 61 64 64 20 68 6C 2C 64 de,24: add hl,d
01E4D0: 65 09 09 3B 48 4C 20 3D 20 66 61 73 74 20 74 69 e..;HL = fast ti
01E4E0: 63 6B 65 72 20 62 6C 6F 63 6B 20 61 64 64 72 65 cker block addre
01E4F0: 73 73 0D 0A 09 63 61 6C 6C 20 26 42 43 45 36 0D ss...call &BCE6.
01E500: 09 3B 44 45 20 3D 20 74 69 6D 65 6F 75 74 0D 0A .;DE = timeout..
01E510: 09 70 75 73 68 20 62 63 3A 20 63 61 6C 6C 20 77 .push bc: call w
01E520: 61 69 74 62 74 3A 20 70 6F 70 20 62 63 0D 0A 09 aitbt: pop bc...
01E530: 6A 70 20 6E 63 2C 74 69 6D 6F 75 74 0D 0A 09 6C jp nc,timout...l
01E540: 64 20 28 68 6C 29 2C 61 0D 0A 09 69 6E 63 20 68 d (hl),a...inc h
01E550: 6C 0D 0A 09 64 6A 6E 7A 20 69 6E 70 5F 6C 70 0D l...djnz inp_lp.
01E560: 0A 09 72 65 74 0D 0A 0D 0A 2E 69 6E 70 77 09 6C ..ret.....inpw.l
01E570: 64 20 6C 2C 28 69 78 2B 32 29 0D 0A 09 6C 64 20 d l,(ix+2)...ld
01E580: 68 2C 28 69 78 2B 33 29 0D 0A 09 6C 64 20 61 2C h,(ix+3)...ld a,
01E590: 28 68 6C 29 3A 20 69 6E 63 20 68 6C 0D 0A 09 6C (hl): inc hl...l
01E5A0: 64 20 65 2C 28 68 6C 29 3A 20 69 6E 63 20 68 6C d e,(hl): inc hl
01E5B0: 0D 0A 09 6C 64 20 64 2C 28 68 6C 29 0D 0A 09 65 ...ld d,(hl)...e
01E5C0: 78 20 64 65 2C 68 6C 09 09 09 3B 41 20 63 6F 6E x de,hl...;A con
01E5D0: 74 61 69 6E 73 20 6C 65 6E 67 74 68 2C 20 48 4C tains length, HL
01E5E0: 20 61 64 64 72 65 73 73 20 6F 66 20 73 74 72 69 address of stri
01E5F0: 6E 67 0D 0A 09 6C 64 20 65 2C 61 0D 0A 0D 0A 2E ng...ld e,a.....
01E600: 69 6E 70 77 5F 6C 09 70 75 73 68 20 64 65 3A 20 inpw_l.push de:
01E610: 63 61 6C 6C 20 67 72 61 62 62 74 3A 20 70 6F 70 call grabbt: pop
01E620: 20 64 65 0D 0A 09 6A 70 20 6E 63 2C 69 6E 70 77 de...jp nc,inpw
01E630: 5F 6C 0D 0A 09 6C 64 20 28 68 6C 29 2C 61 0D 0A _l...ld (hl),a..
01E640: 09 63 70 20 28 69 78 29 3A 20 6A 70 20 7A 2C 69 .cp (ix): jp z,i
01E650: 6E 70 77 63 0D 0A 09 69 6E 63 20 68 6C 0D 0A 09 npwc...inc hl...
01E660: 64 65 63 20 65 3A 20 6A 70 20 6E 7A 2C 69 6E 70 dec e: jp nz,inp
01E670: 77 5F 6C 0D 0A 09 72 65 74 0D 0A 0D 0A 2E 69 6E w_l...ret.....in
01E680: 70 77 63 09 6C 64 20 6C 2C 28 69 78 2B 32 29 0D pwc.ld l,(ix+2).
01E690: 0A 09 6C 64 20 68 2C 28 69 78 2B 33 29 0D 0A 09 ..ld h,(ix+3)...
01E6A0: 6C 64 20 61 2C 65 0D 0A 09 64 65 63 20 61 0D 0A ld a,e...dec a..
01E6B0: 2E 69 77 63 5F 6C 09 72 65 74 20 7A 0D 0A 09 64 .iwc_l.ret z...d
01E6C0: 65 63 20 28 68 6C 29 0D 0A 09 64 65 63 20 61 0D ec (hl)...dec a.
01E6D0: 0A 09 6A 70 20 69 77 63 5F 6C 0D 0A 0D 0A 09 3B ..jp iwc_l.....;
01E6E0: 3E 3E 3E 20 43 41 50 54 55 52 45 20 63 6F 6D 6D >>> CAPTURE comm
01E6F0: 61 6E 64 0D 0A 0D 0A 2E 63 61 70 74 5F 69 09 63 and.....capt_i.c
01E700: 0A 0D 0A 09 3B 4B 65 79 20 73 65 74 74 69 6E 67 ....;Key setting
01E710: 73 0D 0A 0D 0A 2E 63 6B 65 79 6F 66 09 63 61 6C s.....ckeyof.cal
01E720: 6C 20 26 42 42 30 30 3A 20 6A 70 20 26 42 42 31 l &BB00: jp &BB1
01E730: 38 0D 0A 0D 0A 2E 63 6B 65 79 6F 6E 09 6C 64 20 8.....ckeyon.ld
01E740: 61 2C 37 39 3A 20 6C 64 20 62 2C 38 3A 20 63 61 a,79: ld b,8: ca
01E750: 6C 6C 20 73 65 74 6B 65 79 0D 0A 09 6C 64 20 61 ll setkey...ld a
01E760: 2C 30 3A 20 6C 64 20 62 2C 31 31 3A 20 63 61 6C ,0: ld b,11: cal
01E770: 6C 20 73 65 74 6B 65 79 0D 0A 09 6C 64 20 61 2C l setkey...ld a,
01E780: 32 3A 20 6C 64 20 62 2C 31 30 3A 20 63 61 6C 6C 2: ld b,10: call
01E790: 20 73 65 74 6B 65 79 0D 0A 09 6C 64 20 61 2C 38 setkey...ld a,8
01E7A0: 3A 20 6C 64 20 62 2C 38 3A 20 63 61 6C 6C 20 73 : ld b,8: call s
01E7B0: 65 74 6B 65 79 0D 0A 09 6C 64 20 61 2C 31 3A 20 etkey...ld a,1:
01E7C0: 6C 64 20 62 2C 39 3A 20 63 61 6C 6C 20 73 65 74 ld b,9: call set
01E7D0: 6B 65 79 0D 0A 09 6C 64 20 61 2C 39 3A 20 6C 64 key...ld a,9: ld
01E7E0: 20 62 2C 32 37 3A 20 63 61 6C 6C 20 73 65 74 6B b,27: call setk
01E7F0: 65 79 0D 0A 09 6C 64 20 61 2C 39 3A 20 6C 64 20 ey...ld a,9: ld
01E800: 62 2C 32 32 34 3A 20 6A 70 20 26 42 42 32 37 0D b,224: jp &BB27.
01E810: 0A 0D 0A 2E 73 65 74 6B 65 79 09 6C 64 20 63 2C ....setkey.ld c,
01E820: 61 3A 20 63 61 6C 6C 20 26 42 42 32 37 09 3B 20 a: call &BB27.;
01E830: 6E 6F 72 6D 61 6C 20 6B 65 79 0D 0A 09 6C 64 20 normal key...ld
01E840: 61 2C 63 3A 20 63 61 6C 6C 20 26 42 42 32 44 09 a,c: call &BB2D.
01E850: 3B 2B 53 48 49 46 54 0D 0A 09 6C 64 20 61 2C 63 ;+SHIFT...ld a,c
01E860: 3A 20 6A 70 20 26 42 42 33 33 09 3B 2B 43 54 52 : jp &BB33.;+CTR
01E870: 4C 0D 0A 0D 0A 0D 0A 09 3B 3E 3E 3E 20 57 41 49 L.......;>>> WAI
01E880: 54 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 77 61 T command.....wa
01E890: 69 74 5F 69 09 6C 64 20 63 2C 32 3A 20 6F 72 20 it_i.ld c,2: or
01E8A0: 61 3A 20 6A 70 20 7A 2C 65 72 72 6F 72 0D 0A 09 a: jp z,error...
01E8B0: 63 70 20 31 3A 20 6A 72 20 6E 7A 2C 77 6E 6F 74 cp 1: jr nz,wnot
01E8C0: 31 0D 0A 09 70 75 73 68 20 69 79 3A 20 70 6F 70 1...push iy: pop
01E8D0: 20 69 78 0D 0A 09 6C 64 20 64 65 2C 31 31 36 2B ix...ld de,116+
01E8E0: 32 35 30 3A 20 61 64 64 20 69 78 2C 64 65 09 3B 250: add ix,de.;
01E8F0: 49 58 20 3D 20 62 75 66 66 65 72 2B 32 35 30 0D IX = buffer+250.
01E900: 61 6C 6C 20 62 75 66 66 5F 63 0D 0A 09 6C 64 20 all buff_c...ld
01E910: 63 2C 32 3A 20 63 70 20 31 3A 20 6A 70 20 6E 7A c,2: cp 1: jp nz
01E920: 2C 65 72 72 6F 72 0D 0A 0D 0A 09 6C 64 20 65 2C ,error.....ld e,
01E930: 28 69 79 2B 37 29 3A 20 6C 64 20 64 2C 28 69 79 (iy+7): ld d,(iy
01E940: 2B 38 29 09 3B 44 45 20 3D 20 66 69 6C 65 20 62 +8).;DE = file b
01E950: 75 66 66 65 72 20 61 64 64 72 65 73 73 0D 0A 09 uffer address...
01E960: 6C 64 20 68 6C 2C 31 30 32 33 3A 20 61 64 64 20 ld hl,1023: add
01E970: 68 6C 2C 64 65 3A 20 65 78 20 64 65 2C 68 6C 0D hl,de: ex de,hl.
01E980: 0A 09 6C 64 20 6C 2C 28 69 78 29 3A 20 6C 64 20 ..ld l,(ix): ld
01E990: 68 2C 28 69 78 2B 31 29 3A 20 70 75 73 68 20 68 h,(ix+1): push h
01E9A0: 6C 3A 20 70 6F 70 20 69 78 0D 0A 09 6C 64 20 62 l: pop ix...ld b
01E9B0: 2C 28 69 78 29 3A 20 6C 64 20 6C 2C 28 69 78 2B ,(ix): ld l,(ix+
01E9C0: 31 29 3A 20 6C 64 20 68 2C 28 69 78 2B 32 29 3A 1): ld h,(ix+2):
01E9D0: 20 63 61 6C 6C 20 26 42 43 38 43 0D 0A 0D 0A 09 call &BC8C.....
01E9E0: 6A 72 20 63 2C 63 6F 70 5F 6F 6B 3A 20 6A 72 20 jr c,cop_ok: jr
01E9F0: 7A 2C 6F 64 65 72 72 3A 20 6C 64 20 63 2C 38 3A z,oderr: ld c,8:
01EA00: 20 6A 70 20 65 72 72 6F 72 0D 0A 2E 6F 64 65 72 jp error...oder
01EA10: 72 09 6C 64 20 63 2C 39 3A 20 6A 70 20 65 72 72 r.ld c,9: jp err
01EA20: 6F 72 0D 0A 0D 0A 2E 63 6F 70 5F 6F 6B 09 6C 64 or.....cop_ok.ld
01EA30: 20 61 2C 31 3A 20 6C 64 20 28 69 79 2B 35 29 2C a,1: ld (iy+5),
01EA40: 61 09 09 3B 41 20 3D 3E 20 66 69 6C 65 20 63 61 a..;A => file ca
01EA50: 70 74 75 72 65 20 6D 6F 64 65 0D 0A 09 6C 64 20 pture mode...ld
01EA60: 68 6C 2C 31 30 32 34 3A 20 6C 64 20 28 69 79 2B hl,1024: ld (iy+
01EA70: 34 30 29 2C 6C 3A 20 6C 64 20 28 69 79 2B 34 31 40),l: ld (iy+41
01EA80: 29 2C 68 09 3B 48 4C 20 3D 3E 20 66 69 6C 65 20 ),h.;HL => file
01EA90: 62 79 74 65 73 20 63 6F 75 6E 74 0D 0A 09 78 6F bytes count...xo
01EAA0: 72 20 61 3A 20 6A 70 20 26 42 43 39 35 0D 0A 0D r a: jp &BC95...
01EAB0: 0A 09 3B 3E 3E 3E 20 43 4C 4F 53 45 20 63 6F 6D ..;>>> CLOSE com
01EAC0: 6D 61 6E 64 0D 0A 0D 0A 2E 63 6C 6F 73 5F 69 09 mand.....clos_i.
01EAD0: 6C 64 20 63 2C 31 30 3A 20 6C 64 20 61 2C 28 69 ld c,10: ld a,(i
01EAE0: 79 2B 35 29 3A 20 6F 72 20 61 3A 20 6A 70 20 7A y+5): or a: jp z
01EAF0: 2C 65 72 72 6F 72 0D 0A 09 78 6F 72 20 61 3A 20 ,error...xor a:
01EB00: 0A 09 70 75 73 68 20 69 78 3A 20 70 6F 70 20 64 ..push ix: pop d
01EB10: 65 0D 0A 09 64 65 63 20 64 65 3A 20 64 65 63 20 e...dec de: dec
01EB20: 64 65 09 09 09 3B 44 45 20 3D 20 62 75 66 66 65 de...;DE = buffe
01EB30: 72 2B 32 34 38 0D 0A 09 6C 64 20 6C 2C 28 69 78 r+248...ld l,(ix
01EB40: 29 3A 20 6C 64 20 68 2C 28 69 78 2B 31 29 0D 0A ): ld h,(ix+1)..
01EB50: 09 6C 64 20 28 69 78 29 2C 6C 3A 20 6C 64 20 28 .ld (ix),l: ld (
01EB60: 69 78 2B 31 29 2C 68 3A 20 6C 64 20 28 69 78 2B ix+1),h: ld (ix+
01EB70: 32 29 2C 65 3A 20 6C 64 20 28 69 78 2B 33 29 2C 2),e: ld (ix+3),
01EB80: 64 0D 0A 09 69 6E 63 20 61 0D 0A 2E 77 6E 6F 74 d...inc a...wnot
01EB90: 31 09 64 65 63 20 61 0D 0A 09 6C 64 20 28 69 79 1.dec a...ld (iy
01EBA0: 2B 34 32 29 2C 61 09 09 09 3B 41 20 3E 3D 20 6E +42),a...;A >= n
01EBB0: 75 6D 62 65 72 20 6F 66 20 70 61 72 61 6D 65 74 umber of paramet
01EBC0: 65 72 73 0D 0A 09 70 75 73 68 20 69 78 3A 20 70 ers...push ix: p
01EBD0: 6F 70 20 64 65 0D 0A 09 6C 64 20 28 69 79 2B 33 op de...ld (iy+3
01EBE0: 38 29 2C 65 3A 20 6C 64 20 28 69 79 2B 33 39 29 8),e: ld (iy+39)
01EBF0: 2C 64 09 3B 62 75 66 66 65 72 20 67 65 74 20 6F ,d.;buffer get o
01EC00: 66 66 73 65 74 20 3D 20 49 58 0D 0A 0D 0A 09 70 ffset = IX.....p
01EC10: 75 73 68 20 68 6C 3A 20 70 75 73 68 20 69 79 3A ush hl: push iy:
01EC20: 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 20 64 65 2C pop hl...ld de,
01EC30: 31 31 36 3A 20 61 64 64 20 68 6C 2C 64 65 3A 20 116: add hl,de:
01EC40: 65 78 20 64 65 2C 68 6C 0D 0A 09 70 6F 70 20 68 ex de,hl...pop h
01EC50: 6C 09 09 09 09 3B 44 45 20 3D 20 62 75 66 66 65 l....;DE = buffe
01EC60: 72 0D 0A 2E 73 74 62 75 66 66 09 65 78 20 64 65 r...stbuff.ex de
01EC70: 2C 68 6C 3A 20 6C 64 20 28 68 6C 29 2C 30 3A 20 ,hl: ld (hl),0:
01EC80: 65 78 20 64 65 2C 68 6C 3A 20 69 6E 63 20 64 65 ex de,hl: inc de
01EC90: 0D 0A 09 6C 64 20 6C 2C 28 69 78 29 3A 20 6C 64 ...ld l,(ix): ld
01ECA0: 20 68 2C 28 69 78 2B 31 29 3A 20 69 6E 63 20 69 h,(ix+1): inc i
01ECB0: 78 3A 20 69 6E 63 20 69 78 0D 0A 09 6C 64 69 3A x: inc ix...ldi:
01ECC0: 20 6C 64 69 3A 20 6C 64 69 3A 20 64 65 63 20 61 ldi: ldi: dec a
01ECD0: 3A 20 6A 72 20 6E 7A 2C 73 74 62 75 66 66 0D 0A : jr nz,stbuff..
01ECE0: 0D 0A 2E 77 67 6C 6F 6F 70 09 70 75 73 68 20 69 ...wgloop.push i
01ECF0: 79 3A 20 70 6F 70 20 69 78 0D 0A 09 6C 64 20 64 y: pop ix...ld d
01ED00: 6C 64 20 28 69 79 2B 35 29 2C 61 09 09 3B 6E 6F ld (iy+5),a..;no
01ED10: 20 66 69 6C 65 20 63 61 70 74 75 72 65 20 6D 6F file capture mo
01ED20: 64 65 0D 0A 09 6C 64 20 6C 2C 28 69 79 2B 37 29 de...ld l,(iy+7)
01ED30: 3A 20 6C 64 20 68 2C 28 69 79 2B 38 29 09 3B 48 : ld h,(iy+8).;H
01ED40: 4C 20 3D 20 66 69 6C 65 20 62 75 66 66 65 72 20 L = file buffer
01ED50: 61 64 64 72 65 73 73 0D 0A 09 6C 64 20 64 65 2C address...ld de,
01ED60: 31 30 32 34 3A 20 61 64 64 20 68 6C 2C 64 65 0D 1024: add hl,de.
01ED70: 0A 09 6C 64 20 63 2C 28 69 79 2B 34 30 29 3A 20 ..ld c,(iy+40):
01ED80: 6C 64 20 62 2C 28 69 79 2B 34 31 29 09 3B 42 43 ld b,(iy+41).;BC
01ED90: 20 3D 20 66 69 6C 65 20 62 79 74 65 73 20 63 6F = file bytes co
01EDA0: 75 6E 74 0D 0A 09 64 65 63 20 62 63 0D 0A 2E 63 unt...dec bc...c
01EDB0: 6C 73 5F 6C 70 09 6C 64 20 61 2C 28 68 6C 29 3A ls_lp.ld a,(hl):
01EDC0: 20 63 61 6C 6C 20 26 42 43 39 35 3A 20 69 6E 63 call &BC95: inc
01EDD0: 20 68 6C 3A 20 64 65 63 20 62 63 3A 20 6C 64 20 hl: dec bc: ld
01EDE0: 61 2C 62 3A 20 63 70 20 33 3A 20 6A 72 20 6E 7A a,b: cp 3: jr nz
01EDF0: 2C 63 6C 73 5F 6C 70 0D 0A 09 6A 70 20 26 42 43 ,cls_lp...jp &BC
01EE00: 38 46 0D 0A 0D 0A 09 3B 3E 3E 3E 20 54 59 50 45 8F.....;>>> TYPE
01EE10: 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 74 79 70 command.....typ
01EE20: 65 5F 69 09 63 61 6C 6C 20 62 75 66 66 5F 63 0D e_i.call buff_c.
01EE30: 0A 09 6C 64 20 63 2C 32 3A 20 63 70 20 31 3A 20 ..ld c,2: cp 1:
01EE40: 6A 70 20 6E 7A 2C 65 72 72 6F 72 0D 0A 0D 0A 09 jp nz,error.....
01EE50: 6C 64 20 65 2C 28 69 79 2B 37 29 3A 20 6C 64 20 ld e,(iy+7): ld
01EE60: 64 2C 28 69 79 2B 38 29 09 3B 44 45 20 3D 20 66 d,(iy+8).;DE = f
01EE70: 69 6C 65 20 62 75 66 66 65 72 20 61 64 64 72 65 ile buffer addre
01EE80: 73 73 0D 0A 09 6C 64 20 68 6C 2C 31 30 32 34 3A ss...ld hl,1024:
01EE90: 20 61 64 64 20 68 6C 2C 64 65 3A 20 65 78 20 64 add hl,de: ex d
01EEA0: 65 2C 68 6C 0D 0A 09 6C 64 20 6C 2C 28 69 78 29 e,hl...ld l,(ix)
01EEB0: 3A 20 6C 64 20 68 2C 28 69 78 2B 31 29 3A 20 70 : ld h,(ix+1): p
01EEC0: 75 73 68 20 68 6C 3A 20 70 6F 70 20 69 78 0D 0A ush hl: pop ix..
01EED0: 09 6C 64 20 62 2C 28 69 78 29 3A 20 6C 64 20 6C .ld b,(ix): ld l
01EEE0: 2C 28 69 78 2B 31 29 3A 20 6C 64 20 68 2C 28 69 ,(ix+1): ld h,(i
01EEF0: 78 2B 32 29 3A 20 63 61 6C 6C 20 26 42 43 37 37 x+2): call &BC77
01EF00: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
01EF10: 1A 00 01 00 02 09 4E E5 1A 00 C7 02 00 00 00 02 ......N.........
01EF20: 1A 00 C3 02 00 00 00 02 1A 00 C8 02 00 00 00 02 ................
01EF30: 1A 00 C4 02 00 00 00 02 1A 00 C9 02 00 00 00 02 ................
01EF40: 1A 00 C5 02 00 00 00 02 1A 00 C1 02 00 00 00 02 ................
01EF50: 1A 00 C6 02 00 00 00 02 1A 00 C2 02 00 00 00 02 ................
01EF60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01EF70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01EF80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01EF90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01EFA0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01EFB0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01EFC0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01EFD0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01EFE0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01EFF0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01F000: 2D 64 69 67 69 74 20 64 65 63 69 6D 61 6C 0D 0A -digit decimal..
01F010: 0D 0A 2E 70 72 5F 64 65 63 09 6C 64 20 64 2C 31 ...pr_dec.ld d,1
01F020: 30 30 3A 20 63 61 6C 6C 20 70 64 5F 63 68 72 0D 00: call pd_chr.
01F030: 0A 09 6C 64 20 64 2C 31 30 3A 20 63 61 6C 6C 20 ..ld d,10: call
01F040: 70 64 5F 63 68 72 0D 0A 09 6C 64 20 64 2C 31 0D pd_chr...ld d,1.
01F050: 0A 0D 0A 2E 70 64 5F 63 68 72 09 6C 64 20 63 2C ....pd_chr.ld c,
01F060: 30 0D 0A 2E 70 64 5F 6C 6F 70 09 73 75 62 20 64 0...pd_lop.sub d
01F070: 3A 20 6A 72 20 63 2C 70 64 5F 66 69 6E 0D 0A 09 : jr c,pd_fin...
01F080: 69 6E 63 20 63 3A 20 6A 72 20 70 64 5F 6C 6F 70 inc c: jr pd_lop
01F090: 0D 0A 0D 0A 2E 70 64 5F 66 69 6E 09 61 64 64 20 .....pd_fin.add
01F0A0: 61 2C 64 0D 0A 09 70 75 73 68 20 61 66 3A 20 6C a,d...push af: l
01F0B0: 64 20 61 2C 63 3A 20 61 64 64 20 26 33 30 3A 20 d a,c: add &30:
01F0C0: 63 61 6C 6C 20 26 42 42 35 41 3A 20 70 6F 70 20 call &BB5A: pop
01F0D0: 61 66 0D 0A 09 72 65 74 0D 0A 0D 0A 09 3B 3E 3E af...ret.....;>>
01F0E0: 3E 20 50 72 69 6E 74 20 41 20 61 73 20 33 2D 64 > Print A as 3-d
01F0F0: 69 67 69 74 20 64 65 63 69 6D 61 6C 2C 20 77 69 igit decimal, wi
01F100: 74 68 20 73 70 61 63 65 73 0D 0A 0D 0A 2E 70 72 th spaces.....pr
01F110: 5F 61 73 70 09 6C 64 20 62 2C 30 0D 0A 09 6C 64 _asp.ld b,0...ld
01F120: 20 64 2C 31 30 30 3A 20 63 61 6C 6C 20 70 73 5F d,100: call ps_
01F130: 63 68 72 0D 0A 09 6C 64 20 64 2C 31 30 3A 20 63 chr...ld d,10: c
01F140: 61 6C 6C 20 70 73 5F 63 68 72 0D 0A 09 6C 64 20 all ps_chr...ld
01F150: 62 2C 31 3A 20 6C 64 20 64 2C 31 0D 0A 0D 0A 2E b,1: ld d,1.....
01F160: 70 73 5F 63 68 72 09 6C 64 20 63 2C 30 0D 0A 2E ps_chr.ld c,0...
01F170: 70 73 5F 6C 6F 70 09 73 75 62 20 64 3A 20 6A 72 ps_lop.sub d: jr
01F180: 20 63 2C 70 73 5F 66 69 6E 0D 0A 09 69 6E 63 20 c,ps_fin...inc
01F190: 63 3A 20 6A 72 20 70 73 5F 6C 6F 70 0D 0A 0D 0A c: jr ps_lop....
01F1A0: 2E 70 73 5F 66 69 6E 09 61 64 64 20 61 2C 64 0D .ps_fin.add a,d.
01F1B0: 0A 09 70 75 73 68 20 61 66 3A 20 6C 64 20 61 2C ..push af: ld a,
01F1C0: 63 3A 20 6F 72 20 62 3A 20 6A 72 20 6E 7A 2C 70 c: or b: jr nz,p
01F1D0: 73 5F 6E 73 70 0D 0A 09 6C 64 20 61 2C 32 34 30 s_nsp...ld a,240
01F1E0: 0D 0A 2E 70 73 5F 6E 73 70 09 61 64 64 20 34 38 ...ps_nsp.add 48
01F1F0: 3A 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A 09 70 : call &BB5A...p
01F200: 65 73 73 0D 0A 09 6C 64 20 68 6C 2C 31 30 32 34 ess...ld hl,1024
01F210: 3A 20 61 64 64 20 68 6C 2C 64 65 3A 20 65 78 20 : add hl,de: ex
01F220: 64 65 2C 68 6C 0D 0A 09 6C 64 20 6C 2C 28 69 78 de,hl...ld l,(ix
01F230: 29 3A 20 6C 64 20 68 2C 28 69 78 2B 31 29 3A 20 ): ld h,(ix+1):
01F240: 70 75 73 68 20 68 6C 3A 20 70 6F 70 20 69 78 0D push hl: pop ix.
01F250: 0A 09 6C 64 20 62 2C 28 69 78 29 3A 20 6C 64 20 ..ld b,(ix): ld
01F260: 6C 2C 28 69 78 2B 31 29 3A 20 6C 64 20 68 2C 28 l,(ix+1): ld h,(
01F270: 69 78 2B 32 29 3A 20 63 61 6C 6C 20 26 42 43 37 ix+2): call &BC7
01F280: 37 0D 0A 0D 0A 09 6A 72 20 63 2C 65 6F 70 5F 6F 7.....jr c,eop_o
01F290: 6B 3A 20 6A 70 20 7A 2C 6F 64 65 72 72 3A 20 6C k: jp z,oderr: l
01F2A0: 64 20 63 2C 38 3A 20 6A 70 20 65 72 72 6F 72 0D d c,8: jp error.
01F2B0: 0A 0D 0A 2E 65 6F 70 5F 6F 6B 09 70 75 73 68 20 ....eop_ok.push
01F2C0: 69 79 3A 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 20 iy: pop hl...ld
01F2D0: 64 65 2C 32 34 3A 20 61 64 64 20 68 6C 2C 64 65 de,24: add hl,de
01F2E0: 09 09 3B 48 4C 20 3D 20 66 61 73 74 20 74 69 63 ..;HL = fast tic
01F2F0: 6B 65 72 20 62 6C 6F 63 6B 0D 0A 09 63 61 6C 6C ker block...call
01F300: 20 26 42 39 31 32 3A 20 6C 64 20 63 2C 61 3A 20 &B912: ld c,a:
01F310: 6C 64 20 62 2C 26 38 30 0D 0A 09 6C 64 20 64 65 ld b,&80...ld de
01F320: 2C 66 61 73 74 5F 72 3A 20 63 61 6C 6C 20 26 42 ,fast_r: call &B
01F330: 43 45 30 09 3B 73 65 74 20 75 70 20 66 61 73 74 CE0.;set up fast
01F340: 20 74 69 63 6B 65 72 20 69 6E 74 65 72 72 75 70 ticker interrup
01F350: 74 0D 0A 0D 0A 2E 65 63 68 6F 6C 70 09 63 61 6C t.....echolp.cal
01F360: 6C 20 26 42 43 38 30 3A 20 6A 70 20 6E 63 2C 65 l &BC80: jp nc,e
01F370: 71 75 69 74 0D 0A 09 63 70 20 31 30 3A 20 6A 72 quit...cp 10: jr
01F380: 20 7A 2C 65 63 68 6F 6C 70 0D 0A 09 63 61 6C 6C z,echolp...call
01F390: 20 73 65 6E 64 62 74 0D 0A 0D 0A 09 6C 64 20 65 sendbt.....ld e
01F3A0: 2C 28 69 79 2B 33 38 29 3A 20 6C 64 20 64 2C 30 ,(iy+38): ld d,0
01F3B0: 09 09 3B 44 45 20 3D 20 62 75 66 66 65 72 20 67 ..;DE = buffer g
01F3C0: 65 74 20 6F 66 66 73 65 74 0D 0A 0D 0A 2E 65 63 et offset.....ec
01F3D0: 6C 6F 6F 70 09 70 75 73 68 20 69 79 3A 20 70 6F loop.push iy: po
01F3E0: 70 20 68 6C 3A 20 61 64 64 20 68 6C 2C 64 65 3A p hl: add hl,de:
01F3F0: 20 70 75 73 68 20 64 65 0D 0A 09 6C 64 20 64 65 push de...ld de
01F400: 6F 70 20 61 66 3A 20 72 65 74 0D 0A 0D 0A 09 3B op af: ret.....;
01F410: 3E 3E 3E 20 50 72 69 6E 74 20 48 4C 20 61 73 20 >>> Print HL as
01F420: 28 75 70 20 74 6F 29 20 35 2D 64 69 67 69 74 20 (up to) 5-digit
01F430: 64 65 63 69 6D 61 6C 0D 0A 0D 0A 2E 70 72 5F 68 decimal.....pr_h
01F440: 6C 09 6C 64 20 63 2C 30 0D 0A 09 6C 64 20 64 65 l.ld c,0...ld de
01F450: 2C 31 30 30 30 30 3A 20 63 61 6C 6C 20 70 72 68 ,10000: call prh
01F460: 6C 72 0D 0A 09 6C 64 20 64 65 2C 31 30 30 30 3A lr...ld de,1000:
01F470: 20 63 61 6C 6C 20 70 72 68 6C 72 0D 0A 09 6C 64 call prhlr...ld
01F480: 20 64 65 2C 31 30 30 3A 20 63 61 6C 6C 20 70 72 de,100: call pr
01F490: 68 6C 72 0D 0A 09 6C 64 20 64 65 2C 31 30 3A 20 hlr...ld de,10:
01F4A0: 63 61 6C 6C 20 70 72 68 6C 72 0D 0A 09 6C 64 20 call prhlr...ld
01F4B0: 63 2C 31 3A 20 6C 64 20 64 65 2C 31 0D 0A 2E 70 c,1: ld de,1...p
01F4C0: 72 68 6C 72 09 78 6F 72 20 61 0D 0A 2E 70 72 68 rhlr.xor a...prh
01F4D0: 6C 6C 70 09 73 63 66 3A 20 63 63 66 3A 20 73 62 llp.scf: ccf: sb
01F4E0: 63 20 68 6C 2C 64 65 3A 20 6A 72 20 63 2C 70 72 c hl,de: jr c,pr
01F4F0: 68 6C 6F 0D 0A 09 69 6E 63 20 61 3A 20 6A 72 20 hlo...inc a: jr
01F500: 70 72 68 6C 6C 70 0D 0A 2E 70 72 68 6C 6F 09 61 prhllp...prhlo.a
01F510: 64 64 20 68 6C 2C 64 65 3A 20 6F 72 20 61 3A 20 dd hl,de: or a:
01F520: 6A 72 20 6E 7A 2C 70 72 68 6C 79 3A 20 63 70 20 jr nz,prhly: cp
01F530: 63 3A 20 72 65 74 20 7A 0D 0A 2E 70 72 68 6C 79 c: ret z...prhly
01F540: 09 6C 64 20 63 2C 31 3A 20 61 64 64 20 26 33 30 .ld c,1: add &30
01F550: 3A 20 63 61 6C 6C 20 26 42 42 35 41 3A 20 72 65 : call &BB5A: re
01F560: 74 0D 0A 0D 0A 09 3B 3E 3E 3E 20 50 72 69 6E 74 t.....;>>> Print
01F570: 20 48 4C 20 61 73 20 34 2D 64 69 67 69 74 20 68 HL as 4-digit h
01F580: 65 78 0D 0A 0D 0A 2E 70 72 5F 68 6C 68 09 6C 64 ex.....pr_hlh.ld
01F590: 20 61 2C 68 3A 20 63 61 6C 6C 20 70 72 5F 61 68 a,h: call pr_ah
01F5A0: 0D 0A 09 6C 64 20 61 2C 6C 3A 20 6A 70 20 70 72 ...ld a,l: jp pr
01F5B0: 5F 61 68 0D 0A 0D 0A 09 3B 3E 3E 3E 20 50 72 69 _ah.....;>>> Pri
01F5C0: 6E 74 20 41 20 61 73 20 32 2D 64 69 67 69 74 20 nt A as 2-digit
01F5D0: 68 65 78 0D 0A 0D 0A 2E 70 72 5F 61 68 09 6C 64 hex.....pr_ah.ld
01F5E0: 20 62 2C 30 3A 20 6C 64 20 63 2C 61 0D 0A 09 72 b,0: ld c,a...r
01F5F0: 72 20 61 3A 20 72 72 20 61 3A 20 72 72 20 61 3A r a: rr a: rr a:
01F600: 2C 31 31 36 3A 20 61 64 64 20 68 6C 2C 64 65 3A ,116: add hl,de:
01F610: 20 70 6F 70 20 64 65 09 3B 48 4C 20 3D 20 70 6F pop de.;HL = po
01F620: 73 69 74 69 6F 6E 20 69 6E 20 62 75 66 66 65 72 sition in buffer
01F630: 0D 0A 09 6C 64 20 61 2C 28 68 6C 29 3A 20 6F 72 ...ld a,(hl): or
01F640: 20 61 3A 20 6A 70 20 7A 2C 65 63 68 6F 6C 70 0D a: jp z,echolp.
01F650: 0A 0D 0A 09 63 61 6C 6C 20 76 74 35 32 63 3A 20 ....call vt52c:
01F660: 6C 64 20 28 68 6C 29 2C 30 0D 0A 0D 0A 09 64 69 ld (hl),0.....di
01F670: 3A 20 70 75 73 68 20 64 65 3A 20 63 61 6C 6C 20 : push de: call
01F680: 66 61 73 74 5F 72 3A 20 70 6F 70 20 64 65 3A 20 fast_r: pop de:
01F690: 65 69 0D 0A 09 69 6E 63 20 65 0D 0A 09 6C 64 20 ei...inc e...ld
01F6A0: 28 69 79 2B 33 38 29 2C 65 09 09 09 3B 44 45 20 (iy+38),e...;DE
01F6B0: 3D 3E 20 62 75 66 66 65 72 20 67 65 74 20 6F 66 => buffer get of
01F6C0: 66 73 65 74 0D 0A 09 6A 72 20 65 63 6C 6F 6F 70 fset...jr ecloop
01F6D0: 0D 0A 0D 0A 2E 65 71 75 69 74 09 70 75 73 68 20 .....equit.push
01F6E0: 69 79 3A 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 20 iy: pop hl...ld
01F6F0: 64 65 2C 32 34 3A 20 61 64 64 20 68 6C 2C 64 65 de,24: add hl,de
01F700: 3A 20 63 61 6C 6C 20 26 42 43 45 36 0D 0A 09 6A : call &BCE6...j
01F710: 70 20 26 42 43 37 41 0D 0A 0D 0A 2E 74 69 6D 6F p &BC7A.....timo
01F720: 75 74 09 6C 64 20 63 2C 31 31 3A 20 6A 70 20 65 ut.ld c,11: jp e
01F730: 72 72 6F 72 0D 0A 1A 64 20 63 2C 32 3A 20 6F 72 rror...d c,2: or
01F740: 20 61 3A 20 6A 70 20 7A 2C 65 72 72 6F 72 0D 0A a: jp z,error..
01F750: 0D 0A 09 6C 64 20 65 2C 61 3A 20 64 65 63 20 61 ...ld e,a: dec a
01F760: 3A 20 72 6C 63 61 0D 0A 09 6C 64 20 62 2C 30 3A : rlca...ld b,0:
01F770: 20 6C 64 20 63 2C 61 0D 0A 09 64 62 20 26 44 44 ld c,a...db &DD
01F780: 20 7A 2C 65 63 68 6F 6C 70 0D 0A 09 63 61 6C 6C z,echolp...call
01F790: 20 73 65 6E 64 62 74 0D 0A 0D 0A 09 6C 64 20 65 sendbt.....ld e
01F7A0: 2C 28 69 79 2B 33 38 29 3A 20 6C 64 20 64 2C 30 ,(iy+38): ld d,0
01F7B0: 09 09 3B 44 45 20 3D 20 62 75 66 66 65 72 20 67 ..;DE = buffer g
01F7C0: 65 74 20 6F 66 66 73 65 74 0D 0A 0D 0A 2E 65 63 et offset.....ec
01F7D0: 6C 6F 6F 70 09 70 75 73 68 20 69 79 3A 20 70 6F loop.push iy: po
01F7E0: 70 20 68 6C 3A 20 61 64 64 20 68 6C 2C 64 65 3A p hl: add hl,de:
01F7F0: 20 70 75 73 68 20 64 65 0D 0A 09 6C 64 20 64 65 push de...ld de
01F800: 20 72 72 20 61 0D 0A 2E 70 72 61 68 69 6C 09 61 rr a...prahil.a
01F810: 6E 64 20 31 35 0D 0A 09 63 70 20 31 30 3A 20 6A nd 15...cp 10: j
01F820: 72 20 6E 63 2C 70 72 61 68 6C 74 0D 0A 09 61 64 r nc,prahlt...ad
01F830: 64 20 61 2C 34 38 0D 0A 09 63 61 6C 6C 20 26 42 d a,48...call &B
01F840: 42 35 41 0D 0A 09 6A 72 20 70 72 61 68 6F 74 0D B5A...jr prahot.
01F850: 0A 2E 70 72 61 68 6C 74 09 61 64 64 20 61 2C 35 ..prahlt.add a,5
01F860: 35 0D 0A 09 63 61 6C 6C 20 26 42 42 35 41 0D 0A 5...call &BB5A..
01F870: 2E 70 72 61 68 6F 74 09 6C 64 20 61 2C 62 0D 0A .prahot.ld a,b..
01F880: 09 63 70 20 31 3A 20 72 65 74 20 7A 0D 0A 09 6C .cp 1: ret z...l
01F890: 64 20 61 2C 63 3A 20 6C 64 20 62 2C 31 0D 0A 09 d a,c: ld b,1...
01F8A0: 6A 72 20 70 72 61 68 69 6C 0D 0A 0D 0A 09 3B 3E jr prahil.....;>
01F8B0: 3E 3E 20 53 65 6E 64 20 62 79 74 65 20 41 20 74 >> Send byte A t
01F8C0: 6F 20 73 65 72 69 61 6C 20 69 6E 74 65 72 66 61 o serial interfa
01F8D0: 63 65 0D 0A 0D 0A 09 69 66 20 6B 64 73 0D 0A 2E ce.....if kds...
01F8E0: 73 65 6E 64 62 74 09 6C 64 20 62 63 2C 63 6F 6E sendbt.ld bc,con
01F8F0: 69 6E 0D 0A 2E 73 65 6C 6F 6F 70 09 69 6E 20 64 in...seloop.in d
01F900: 2C 28 63 29 3A 20 62 69 74 20 36 2C 64 3A 20 6A ,(c): bit 6,d: j
01F910: 72 20 7A 2C 73 65 6C 6F 6F 70 0D 0A 09 63 61 6C r z,seloop...cal
01F920: 6C 20 72 65 76 65 72 73 0D 0A 09 6C 64 20 62 63 l revers...ld bc
01F930: 2C 64 61 74 6F 75 74 3A 20 6F 75 74 20 28 63 29 ,datout: out (c)
01F940: 2C 61 3A 20 72 65 74 0D 0A 09 65 6C 73 65 0D 0A ,a: ret...else..
01F950: 2E 73 65 6E 64 62 74 09 6C 64 20 62 63 2C 63 6F .sendbt.ld bc,co
01F960: 6E 70 6F 72 74 0D 0A 2E 73 65 6C 6F 6F 70 09 69 nport...seloop.i
01F970: 6E 20 64 2C 28 63 29 3A 20 72 72 20 64 3A 20 72 n d,(c): rr d: r
01F980: 72 20 64 3A 20 72 72 20 64 3A 20 6A 72 20 6E 63 r d: rr d: jr nc
01F990: 2C 73 65 6C 6F 6F 70 0D 0A 09 6C 64 20 62 63 2C ,seloop...ld bc,
01F9A0: 64 61 74 70 6F 72 74 3A 20 6F 75 74 20 28 63 29 datport: out (c)
01F9B0: 2C 61 3A 20 72 65 74 0D 0A 09 65 6E 64 69 66 0D ,a: ret...endif.
01F9C0: 0A 0D 0A 09 3B 3E 3E 3E 20 47 65 74 20 62 79 74 ....;>>> Get byt
01F9D0: 65 20 41 20 66 72 6F 6D 20 73 65 72 69 61 6C 20 e A from serial
01F9E0: 69 6E 74 65 72 66 61 63 65 0D 0A 0D 0A 09 69 66 interface.....if
01F9F0: 20 6B 64 73 0D 0A 2E 67 65 74 62 74 09 6C 64 20 kds...getbt.ld
01FA00: 0D 0A 09 3B 2A 2A 2A 20 53 55 42 52 4F 55 54 2E ...;*** SUBROUT.
01FA10: 4D 4F 44 20 2A 2A 2A 0D 0A 0D 0A 09 3B 3E 3E 3E MOD ***.....;>>>
01FA20: 20 43 68 65 63 6B 20 66 6F 72 20 66 69 6C 65 20 Check for file
01FA30: 62 75 66 66 65 72 0D 0A 0D 0A 2E 62 75 66 66 5F buffer.....buff_
01FA40: 63 09 70 75 73 68 20 61 66 3A 20 70 75 73 68 20 c.push af: push
01FA50: 62 63 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 37 29 bc...ld a,(iy+7)
01FA60: 3A 20 6C 64 20 62 2C 61 0D 0A 09 6C 64 20 61 2C : ld b,a...ld a,
01FA70: 28 69 79 2B 38 29 3A 20 6F 72 20 62 0D 0A 09 70 (iy+8): or b...p
01FA80: 6F 70 20 62 63 0D 0A 09 6A 72 20 7A 2C 65 62 75 op bc...jr z,ebu
01FA90: 66 66 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 35 29 ff...ld a,(iy+5)
01FAA0: 3A 20 6F 72 20 61 3A 20 6A 72 20 6E 7A 2C 65 62 : or a: jr nz,eb
01FAB0: 75 66 66 32 0D 0A 09 70 6F 70 20 61 66 3A 20 72 uff2...pop af: r
01FAC0: 65 74 0D 0A 2E 65 62 75 66 66 09 70 6F 70 20 61 et...ebuff.pop a
01FAD0: 66 3A 20 70 6F 70 20 68 6C 3A 20 6C 64 20 63 2C f: pop hl: ld c,
01FAE0: 36 3A 20 6A 70 20 65 72 72 6F 72 0D 0A 2E 65 62 6: jp error...eb
01FAF0: 75 66 66 32 09 70 6F 70 20 61 66 3A 20 70 6F 70 uff2.pop af: pop
01FB00: 20 68 6C 3A 20 6C 64 20 63 2C 38 3A 20 6A 70 20 hl: ld c,8: jp
01FB10: 65 72 72 6F 72 0D 0A 0D 0A 09 3B 3E 3E 3E 20 43 error.....;>>> C
01FB20: 6F 6E 76 65 72 74 20 62 61 75 64 20 72 61 74 65 onvert baud rate
01FB30: 20 48 4C 20 74 6F 20 38 32 35 33 20 76 61 6C 75 HL to 8253 valu
01FB40: 65 0D 0A 0D 0A 2E 62 63 6F 6E 76 09 6C 64 20 69 e.....bconv.ld i
01FB50: 78 2C 74 62 38 32 35 33 0D 0A 2E 62 63 6C 6F 6F x,tb8253...bcloo
01FB60: 70 09 6C 64 20 61 2C 28 69 78 2B 32 29 0D 0A 09 p.ld a,(ix+2)...
01FB70: 6F 72 20 61 3A 20 6A 72 20 7A 2C 62 63 65 72 72 or a: jr z,bcerr
01FB80: 09 3B 72 75 6E 20 6F 75 74 21 0D 0A 09 6C 64 20 .;run out!...ld
01FB90: 61 2C 28 69 78 29 0D 0A 09 63 70 20 6C 3A 20 6A a,(ix)...cp l: j
01FBA0: 72 20 6E 7A 2C 64 69 66 66 09 3B 6C 6F 77 20 62 r nz,diff.;low b
01FBB0: 79 74 65 20 64 69 66 66 65 72 65 6E 74 0D 0A 09 yte different...
01FBC0: 6C 64 20 61 2C 28 69 78 2B 31 29 0D 0A 09 63 70 ld a,(ix+1)...cp
01FBD0: 20 68 3A 20 6A 72 20 6E 7A 2C 64 69 66 66 09 3B h: jr nz,diff.;
01FBE0: 68 69 67 68 20 62 79 74 65 20 64 69 66 66 65 72 high byte differ
01FBF0: 65 6E 74 0D 0A 09 6C 64 20 6C 2C 28 69 78 2B 32 ent...ld l,(ix+2
01FC00: 72 6F 72 0D 0A 09 6C 64 20 61 2C 28 69 78 29 0D ror...ld a,(ix).
01FC10: 0A 09 6C 64 20 63 2C 31 3A 20 63 70 20 32 3A 20 ..ld c,1: cp 2:
01FC20: 6A 70 20 6E 63 2C 65 72 72 6F 72 0D 0A 09 69 66 jp nc,error...if
01FC30: 20 6B 64 73 3A 20 72 6C 63 61 3A 20 72 6C 63 61 kds: rlca: rlca
01FC40: 3A 20 70 75 73 68 20 61 66 0D 0A 09 09 6C 64 20 : push af....ld
01FC50: 61 2C 28 69 79 2B 31 31 29 3A 20 61 6E 64 20 32 a,(iy+11): and 2
01FC60: 34 39 09 09 09 3B 63 6F 6E 74 72 6F 6C 20 72 65 49...;control re
01FC70: 67 69 73 74 65 72 0D 0A 09 09 70 6F 70 20 62 63 gister....pop bc
01FC80: 3A 20 6F 72 20 62 3A 20 6C 64 20 28 69 79 2B 31 : or b: ld (iy+1
01FC90: 31 29 2C 61 0D 0A 09 65 6C 73 65 3A 09 72 6C 63 1),a...else:.rlc
01FCA0: 61 3A 20 70 75 73 68 20 61 66 3A 20 6C 64 20 61 a: push af: ld a
01FCB0: 2C 28 69 79 2B 31 32 29 3A 20 61 6E 64 20 32 35 ,(iy+12): and 25
01FCC0: 33 09 3B 72 35 0D 0A 09 09 70 6F 70 20 62 63 3A 3.;r5....pop bc:
01FCD0: 20 6F 72 20 62 3A 20 6C 64 20 28 69 79 2B 31 32 or b: ld (iy+12
01FCE0: 29 2C 61 3A 20 6C 64 20 64 2C 35 0D 0A 09 65 6E ),a: ld d,5...en
01FCF0: 64 69 66 3A 09 6A 70 20 70 72 65 67 0D 0A 0D 0A dif:.jp preg....
01FD00: 09 3B 3E 3E 3E 20 44 43 44 20 63 6F 6D 6D 61 6E .;>>> DCD comman
01FD10: 64 0D 0A 0D 0A 2E 64 63 64 5F 69 09 6C 64 20 63 d.....dcd_i.ld c
01FD20: 2C 32 3A 20 63 70 20 31 3A 20 6A 70 20 6E 7A 2C ,2: cp 1: jp nz,
01FD30: 65 72 72 6F 72 0D 0A 09 6C 64 20 6C 2C 28 69 78 error...ld l,(ix
01FD40: 29 3A 20 6C 64 20 68 2C 28 69 78 2B 31 29 0D 0A ): ld h,(ix+1)..
01FD50: 09 69 66 20 6B 64 73 3A 20 63 61 6C 6C 20 72 72 .if kds: call rr
01FD60: 65 67 3A 20 61 6E 64 20 33 32 3A 20 78 6F 72 20 eg: and 32: xor
01FD70: 33 32 0D 0A 09 09 72 72 61 3A 20 72 72 61 3A 20 32....rra: rra:
01FD80: 72 72 61 3A 20 72 72 61 3A 20 72 72 61 0D 0A 09 rra: rra: rra...
01FD90: 65 6C 73 65 3A 09 6C 64 20 64 2C 30 3A 20 63 61 else:.ld d,0: ca
01FDA0: 6C 6C 20 72 72 65 67 3A 20 61 6E 64 20 38 0D 0A ll rreg: and 8..
01FDB0: 09 09 72 72 61 3A 20 72 72 61 3A 20 72 72 61 0D ..rra: rra: rra.
01FDC0: 0A 09 65 6E 64 69 66 3A 09 6C 64 20 28 68 6C 29 ..endif:.ld (hl)
01FDD0: 2C 61 0D 0A 09 09 69 6E 63 20 68 6C 3A 20 6C 64 ,a....inc hl: ld
01FDE0: 20 28 68 6C 29 2C 30 3A 20 72 65 74 0D 0A 0D 0A (hl),0: ret....
01FDF0: 09 3B 3E 3E 3E 20 43 54 53 20 63 6F 6D 6D 61 6E .;>>> CTS comman
01FE00: 29 3A 20 6C 64 20 68 2C 28 69 78 2B 33 29 3A 20 ): ld h,(ix+3):
01FE10: 72 65 74 0D 0A 2E 64 69 66 66 09 69 6E 63 20 69 ret...diff.inc i
01FE20: 78 3A 20 69 6E 63 20 69 78 3A 20 69 6E 63 20 69 x: inc ix: inc i
01FE30: 78 3A 20 69 6E 63 20 69 78 3A 20 6A 72 20 62 63 x: inc ix: jr bc
01FE40: 6C 6F 6F 70 0D 0A 2E 62 63 65 72 72 09 70 6F 70 loop...bcerr.pop
01FE50: 20 68 6C 3A 20 6C 64 20 63 2C 31 3A 20 6A 70 20 hl: ld c,1: jp
01FE60: 65 72 72 6F 72 0D 0A 0D 0A 09 3B 3E 3E 3E 20 50 error.....;>>> P
01FE70: 72 69 6E 74 20 65 72 72 6F 72 20 6E 75 6D 62 65 rint error numbe
01FE80: 72 20 43 20 2D 20 63 6F 72 72 75 70 74 73 20 61 r C - corrupts a
01FE90: 6C 6C 20 72 65 67 69 73 74 65 72 73 0D 0A 0D 0A ll registers....
01FEA0: 2E 65 72 72 6F 72 09 6C 64 20 61 2C 28 69 79 2B .error.ld a,(iy+
01FEB0: 30 29 0D 0A 09 6F 72 20 61 3A 20 72 65 74 20 7A 0)...or a: ret z
01FEC0: 0D 0A 09 6C 64 20 62 2C 63 09 09 09 3B 70 72 65 ...ld b,c...;pre
01FED0: 73 65 72 76 65 20 65 72 72 6F 72 20 6E 75 6D 62 serve error numb
01FEE0: 65 72 0D 0A 09 6C 64 20 68 6C 2C 65 72 72 5F 74 er...ld hl,err_t
01FEF0: 78 74 0D 0A 2E 65 5F 74 72 79 09 64 65 63 20 63 xt...e_try.dec c
01FF00: 3A 20 6A 72 20 7A 2C 67 6F 74 5F 69 74 0D 0A 0D : jr z,got_it...
01FF10: 0A 2E 65 5F 6C 6F 6F 70 09 69 6E 63 20 68 6C 3A ..e_loop.inc hl:
01FF20: 20 6C 64 20 61 2C 28 68 6C 29 3A 20 6F 72 20 61 ld a,(hl): or a
01FF30: 3A 20 6A 72 20 6E 7A 2C 65 5F 6C 6F 6F 70 0D 0A : jr nz,e_loop..
01FF40: 09 69 6E 63 20 68 6C 3A 20 6A 72 20 65 5F 74 72 .inc hl: jr e_tr
01FF50: 79 0D 0A 0D 0A 2E 67 6F 74 5F 69 74 09 70 75 73 y.....got_it.pus
01FF60: 68 20 68 6C 0D 0A 09 6C 64 20 68 6C 2C 63 65 5F h hl...ld hl,ce_
01FF70: 74 78 74 0D 0A 09 63 61 6C 6C 20 73 74 72 69 6E txt...call strin
01FF80: 67 09 09 3B 70 72 69 6E 74 20 22 43 6F 6D 6D 73 g..;print "Comms
01FF90: 20 65 72 72 6F 72 20 22 0D 0A 09 6C 64 20 61 2C error "...ld a,
01FFA0: 62 3A 20 63 61 6C 6C 20 70 72 5F 64 65 63 09 3B b: call pr_dec.;
01FFB0: 70 72 69 6E 74 20 65 72 72 6F 72 20 6E 75 6D 62 print error numb
01FFC0: 65 72 0D 0A 09 70 6F 70 20 68 6C 3A 20 6A 70 20 er...pop hl: jp
01FFD0: 73 74 72 69 6E 67 09 3B 70 72 69 6E 74 20 65 72 string.;print er
01FFE0: 72 6F 72 20 73 74 72 69 6E 67 0D 0A 0D 0A 09 3B ror string.....;
01FFF0: 3E 3E 3E 20 50 72 69 6E 74 20 41 20 61 73 20 33 >>> Print A as 3
020000: 64 0D 0A 0D 0A 2E 63 74 73 5F 69 09 6C 64 20 63 d.....cts_i.ld c
020010: 2C 32 3A 20 63 70 20 31 3A 20 6A 70 20 6E 7A 2C ,2: cp 1: jp nz,
020020: 65 72 72 6F 72 0D 0A 09 6C 64 20 6C 2C 28 69 78 error...ld l,(ix
020030: 29 3A 20 6C 64 20 68 2C 28 69 78 2B 31 29 0D 0A ): ld h,(ix+1)..
020040: 09 69 66 20 6B 64 73 3A 09 63 61 6C 6C 20 72 72 .if kds:.call rr
020050: 65 67 3A 20 61 6E 64 20 31 36 0D 0A 09 09 72 72 eg: and 16....rr
020060: 61 3A 20 72 72 61 3A 20 72 72 61 3A 20 72 72 61 a: rra: rra: rra
020070: 0D 0A 09 65 6C 73 65 3A 09 6C 64 20 64 2C 30 3A ...else:.ld d,0:
020080: 20 63 61 6C 6C 20 72 72 65 67 3A 20 61 6E 64 20 call rreg: and
020090: 33 32 0D 0A 09 09 72 6C 63 61 3A 20 72 6C 63 61 32....rlca: rlca
0200A0: 3A 20 72 6C 63 61 0D 0A 09 65 6E 64 69 66 3A 09 : rlca...endif:.
0200B0: 6C 64 20 28 68 6C 29 2C 61 0D 0A 09 09 69 6E 63 ld (hl),a....inc
0200C0: 20 68 6C 3A 20 6C 64 20 28 68 6C 29 2C 30 3A 20 hl: ld (hl),0:
0200D0: 72 65 74 0D 0A 0D 0A 09 3B 3E 3E 3E 20 45 43 48 ret.....;>>> ECH
0200E0: 4F 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 65 63 O command.....ec
0200F0: 68 6F 5F 69 09 63 61 6C 6C 20 62 75 66 66 5F 63 ho_i.call buff_c
020100: 0D 0A 09 6C 64 20 63 2C 32 3A 20 63 70 20 31 3A ...ld c,2: cp 1:
020110: 20 6A 70 20 6E 7A 2C 65 72 72 6F 72 0D 0A 0D 0A jp nz,error....
020120: 2E 77 74 63 63 62 65 09 6C 64 20 62 63 2C 63 6F .wtccbe.ld bc,co
020130: 6E 69 6E 3A 20 69 6E 20 61 2C 28 63 29 3A 20 62 nin: in a,(c): b
020140: 69 74 20 37 2C 61 09 3B 43 68 61 72 61 63 74 65 it 7,a.;Characte
020150: 72 20 61 76 61 69 6C 61 62 6C 65 3F 0D 0A 09 6A r available?...j
020160: 72 20 7A 2C 6E 6F 63 63 62 65 0D 0A 09 6C 64 20 r z,noccbe...ld
020170: 62 63 2C 64 61 74 69 6E 3A 20 69 6E 20 61 2C 28 bc,datin: in a,(
020180: 63 29 3A 20 6A 72 20 77 74 63 63 62 65 20 3B 49 c): jr wtccbe ;I
020190: 66 20 73 6F 2C 20 67 65 74 20 61 6E 64 20 74 72 f so, get and tr
0201A0: 79 20 75 6E 74 69 6C 20 6E 6F 74 20 61 76 61 69 y until not avai
0201B0: 6C 61 62 6C 65 0D 0A 0D 0A 2E 6E 6F 63 63 62 65 lable.....noccbe
0201C0: 09 63 61 6C 6C 20 63 62 75 66 66 72 0D 0A 0D 0A .call cbuffr....
0201D0: 09 6C 64 20 65 2C 28 69 79 2B 37 29 3A 20 6C 64 .ld e,(iy+7): ld
0201E0: 20 64 2C 28 69 79 2B 38 29 09 3B 44 45 20 3D 20 d,(iy+8).;DE =
0201F0: 66 69 6C 65 20 62 75 66 66 65 72 20 61 64 64 72 file buffer addr
020200: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
020210: 1B 00 01 00 02 09 4E E5 1B 00 C1 02 00 00 00 02 ......N.........
020220: 1B 00 C6 02 00 00 00 02 1B 00 C2 02 00 00 00 02 ................
020230: 1B 00 C7 02 00 00 00 02 1B 00 C3 02 00 00 00 02 ................
020240: 1B 00 C8 02 00 00 00 02 1B 00 C4 02 00 00 00 02 ................
020250: 1B 00 C9 02 00 00 00 02 1B 00 C5 02 00 00 00 02 ................
020260: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
020270: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
020280: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
020290: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0202A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0202B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0202C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0202D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0202E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0202F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
020300: 62 63 2C 63 6F 6E 69 6E 0D 0A 2E 67 74 6C 6F 6F bc,conin...gtloo
020310: 70 09 69 6E 20 64 2C 28 63 29 3A 20 62 69 74 20 p.in d,(c): bit
020320: 37 2C 64 3A 20 6A 72 20 7A 2C 67 74 6C 6F 6F 70 7,d: jr z,gtloop
020330: 0D 0A 09 6C 64 20 62 63 2C 64 61 74 69 6E 3A 20 ...ld bc,datin:
020340: 69 6E 20 61 2C 28 63 29 0D 0A 09 6A 70 20 72 65 in a,(c)...jp re
020350: 76 65 72 73 0D 0A 09 65 6C 73 65 0D 0A 2E 67 65 vers...else...ge
020360: 74 62 74 09 6C 64 20 62 63 2C 63 6F 6E 70 6F 72 tbt.ld bc,conpor
020370: 74 0D 0A 2E 67 74 6C 6F 6F 70 09 69 6E 20 64 2C t...gtloop.in d,
020380: 28 63 29 3A 20 72 72 20 64 3A 20 6A 72 20 6E 63 (c): rr d: jr nc
020390: 2C 67 74 6C 6F 6F 70 0D 0A 2E 67 65 74 63 68 72 ,gtloop...getchr
0203A0: 09 6C 64 20 62 63 2C 64 61 74 70 6F 72 74 3A 20 .ld bc,datport:
0203B0: 69 6E 20 61 2C 28 63 29 3A 20 72 65 74 0D 0A 09 in a,(c): ret...
0203C0: 65 6E 64 69 66 0D 0A 0D 0A 09 3B 3E 3E 3E 20 47 endif.....;>>> G
0203D0: 72 61 62 20 62 79 74 65 20 41 20 66 72 6F 6D 20 rab byte A from
0203E0: 73 65 72 69 61 6C 20 69 6E 74 65 72 66 61 63 65 serial interface
0203F0: 20 28 74 72 79 20 6F 6E 63 65 20 6F 6E 6C 79 29 (try once only)
020400: 0D 0A 0D 0A 09 69 66 20 6B 64 73 0D 0A 2E 67 72 .....if kds...gr
020410: 61 62 62 74 09 6C 64 20 62 63 2C 63 6F 6E 6F 75 abbt.ld bc,conou
020420: 74 3A 20 6C 64 20 61 2C 28 69 79 2B 31 31 29 0D t: ld a,(iy+11).
020430: 0A 09 61 6E 64 20 32 35 31 3A 20 6F 75 74 20 28 ..and 251: out (
020440: 63 29 2C 61 09 09 3B 64 72 6F 70 20 52 54 53 0D c),a..;drop RTS.
020450: 0A 0D 0A 09 6C 64 20 62 63 2C 63 6F 6E 69 6E 3A ....ld bc,conin:
020460: 20 69 6E 20 64 2C 28 63 29 0D 0A 09 62 69 74 20 in d,(c)...bit
020470: 37 2C 64 3A 20 6A 72 20 6E 7A 2C 67 72 62 63 68 7,d: jr nz,grbch
020480: 72 09 09 3B 63 68 61 72 61 63 74 65 72 20 72 65 r..;character re
020490: 63 65 69 76 65 64 3F 0D 0A 0D 0A 09 6C 64 20 62 ceived?.....ld b
0204A0: 63 2C 63 6F 6E 6F 75 74 3A 20 6C 64 20 61 2C 28 c,conout: ld a,(
0204B0: 69 79 2B 31 31 29 0D 0A 09 6F 75 74 20 28 63 29 iy+11)...out (c)
0204C0: 2C 61 3A 20 78 6F 72 20 61 3A 20 72 65 74 09 09 ,a: xor a: ret..
0204D0: 3B 69 66 20 6E 6F 74 2C 20 52 54 53 20 68 69 67 ;if not, RTS hig
0204E0: 68 2C 20 41 3D 30 2C 20 52 45 54 0D 0A 0D 0A 2E h, A=0, RET.....
0204F0: 67 72 62 63 68 72 09 6C 64 20 62 63 2C 64 61 74 grbchr.ld bc,dat
020500: 74 63 74 6C 70 09 69 6E 63 20 68 6C 3A 20 6A 72 tctlp.inc hl: jr
020510: 20 76 74 73 74 6C 70 0D 0A 2E 65 78 73 74 6C 70 vtstlp...exstlp
020520: 09 6C 64 20 61 2C 63 3A 20 63 70 20 22 41 22 3A .ld a,c: cp "A":
020530: 20 6A 72 20 7A 2C 76 74 61 3A 20 63 70 20 22 42 jr z,vta: cp "B
020540: 22 3A 20 6A 72 20 7A 2C 76 74 62 3A 20 63 70 20 ": jr z,vtb: cp
020550: 22 43 22 3A 20 6A 72 20 7A 2C 76 74 63 3A 20 63 "C": jr z,vtc: c
020560: 70 20 22 44 22 0D 0A 09 6A 72 20 7A 2C 76 74 64 p "D"...jr z,vtd
020570: 3A 20 63 70 20 22 45 22 3A 20 6A 72 20 7A 2C 76 : cp "E": jr z,v
020580: 74 65 3A 20 63 70 20 22 4C 22 3A 20 6A 72 20 7A te: cp "L": jr z
020590: 2C 76 74 6C 3A 20 63 70 20 22 4D 22 3A 20 6A 70 ,vtl: cp "M": jp
0205A0: 20 7A 2C 76 74 6D 0D 0A 09 63 70 20 22 58 22 3A z,vtm...cp "X":
0205B0: 20 6A 70 20 7A 2C 76 74 78 3A 20 63 70 20 22 59 jp z,vtx: cp "Y
0205C0: 22 3A 20 6A 70 20 7A 2C 76 74 79 3A 20 63 70 20 ": jp z,vty: cp
0205D0: 22 6A 22 3A 20 6A 70 20 7A 2C 76 74 5F 6A 0D 0A "j": jp z,vt_j..
0205E0: 09 63 70 20 22 6B 22 3A 20 6A 70 20 7A 2C 76 74 .cp "k": jp z,vt
0205F0: 5F 6B 3A 20 63 70 20 22 6C 22 3A 20 6A 70 20 7A _k: cp "l": jp z
020600: 2C 76 74 5F 6C 3A 20 63 70 20 22 70 22 0D 0A 09 ,vt_l: cp "p"...
020610: 6A 70 20 7A 2C 76 74 5F 70 3A 20 63 70 20 22 71 jp z,vt_p: cp "q
020620: 22 3A 20 6A 70 20 7A 2C 76 74 5F 71 3A 20 72 65 ": jp z,vt_q: re
020630: 74 0D 0A 0D 0A 2E 76 74 61 09 63 61 6C 6C 20 26 t.....vta.call &
020640: 42 42 37 38 3A 20 6C 64 20 61 2C 31 3A 20 63 70 BB78: ld a,1: cp
020650: 20 6C 3A 20 72 65 74 20 7A 3A 20 6C 64 20 61 2C l: ret z: ld a,
020660: 31 31 3A 20 6A 70 20 26 42 42 35 41 0D 0A 2E 76 11: jp &BB5A...v
020670: 74 62 09 63 61 6C 6C 20 26 42 42 36 39 3A 20 69 tb.call &BB69: i
020680: 6E 63 20 65 3A 20 63 61 6C 6C 20 26 42 42 37 38 nc e: call &BB78
020690: 3A 20 6C 64 20 61 2C 6C 3A 20 63 70 20 65 3A 20 : ld a,l: cp e:
0206A0: 72 65 74 20 7A 3A 20 6C 64 20 61 2C 31 30 3A 20 ret z: ld a,10:
0206B0: 6A 70 20 26 42 42 35 41 0D 0A 2E 76 74 63 09 63 jp &BB5A...vtc.c
0206C0: 61 6C 6C 20 26 42 42 36 39 3A 20 69 6E 63 20 64 all &BB69: inc d
0206D0: 3A 20 63 61 6C 6C 20 26 42 42 37 38 3A 20 6C 64 : call &BB78: ld
0206E0: 20 61 2C 68 3A 20 63 70 20 64 3A 20 72 65 74 20 a,h: cp d: ret
0206F0: 7A 3A 20 6C 64 20 61 2C 39 3A 20 6A 70 20 26 42 z: ld a,9: jp &B
020700: 69 6E 3A 20 69 6E 20 61 2C 28 63 29 3A 20 64 65 in: in a,(c): de
020710: 63 20 63 09 3B 6F 74 68 65 72 77 69 73 65 2C 20 c c.;otherwise,
020720: 67 65 74 20 69 74 0D 0A 2E 67 72 62 6C 70 09 69 get it...grblp.i
020730: 6E 20 64 2C 28 63 29 3A 20 62 69 74 20 37 2C 64 n d,(c): bit 7,d
020740: 3A 20 6A 70 20 6E 7A 2C 67 72 62 6C 70 0D 0A 0D : jp nz,grblp...
020750: 0A 09 6C 64 20 62 63 2C 63 6F 6E 6F 75 74 3A 20 ..ld bc,conout:
020760: 6C 64 20 64 2C 28 69 79 2B 31 31 29 09 3B 52 54 ld d,(iy+11).;RT
020770: 53 20 68 69 67 68 20 61 67 61 69 6E 0D 0A 09 6F S high again...o
020780: 75 74 20 28 63 29 2C 64 3A 20 6A 70 20 72 65 76 ut (c),d: jp rev
020790: 65 72 73 0D 0A 0D 0A 09 65 6C 73 65 0D 0A 2E 67 ers.....else...g
0207A0: 72 61 62 62 74 09 6C 64 20 62 63 2C 63 6F 6E 70 rabbt.ld bc,conp
0207B0: 6F 72 74 3A 20 69 6E 20 64 2C 28 63 29 0D 0A 09 ort: in d,(c)...
0207C0: 72 72 20 64 3A 20 6A 72 20 63 2C 67 72 62 63 68 rr d: jr c,grbch
0207D0: 72 3A 20 78 6F 72 20 61 3A 20 72 65 74 0D 0A 2E r: xor a: ret...
0207E0: 67 72 62 63 68 72 09 6C 64 20 62 63 2C 64 61 74 grbchr.ld bc,dat
0207F0: 70 6F 72 74 3A 20 69 6E 20 61 2C 28 63 29 3A 20 port: in a,(c):
020800: 72 65 74 0D 0A 09 65 6E 64 69 66 0D 0A 0D 0A 0D ret...endif.....
020810: 0A 69 66 20 6B 64 73 3A 09 3B 3E 3E 3E 20 52 65 .if kds:.;>>> Re
020820: 76 65 72 73 65 20 62 79 74 65 20 41 20 28 63 6F verse byte A (co
020830: 72 72 75 70 74 73 20 42 43 29 0D 0A 0D 0A 2E 72 rrupts BC).....r
020840: 65 76 65 72 73 09 6C 64 20 63 2C 30 3A 20 6C 64 evers.ld c,0: ld
020850: 20 62 2C 38 0D 0A 2E 72 65 76 5F 6C 70 09 72 6C b,8...rev_lp.rl
020860: 61 3A 20 72 72 20 63 3A 20 64 6A 6E 7A 20 72 65 a: rr c: djnz re
020870: 76 5F 6C 70 0D 0A 09 6C 64 20 61 2C 63 3A 20 72 v_lp...ld a,c: r
020880: 65 74 3A 20 65 6E 64 69 66 0D 0A 0D 0A 09 3B 3E et: endif.....;>
020890: 3E 3E 20 47 65 74 20 62 79 74 65 20 41 20 66 72 >> Get byte A fr
0208A0: 6F 6D 20 73 65 72 69 61 6C 20 69 6E 74 65 72 66 om serial interf
0208B0: 61 63 65 20 28 77 61 69 74 20 66 6F 72 20 74 69 ace (wait for ti
0208C0: 6D 65 20 69 6E 20 44 45 29 0D 0A 09 3B 3E 3E 3E me in DE)...;>>>
0208D0: 20 43 61 72 72 79 20 69 73 20 73 65 74 20 69 66 Carry is set if
0208E0: 20 6F 6B 2C 20 72 65 73 65 74 20 69 66 20 6E 6F ok, reset if no
0208F0: 74 20 6F 6B 0D 0A 0D 0A 09 69 66 20 6B 64 73 0D t ok.....if kds.
020900: 42 35 41 0D 0A 2E 76 74 64 09 63 61 6C 6C 20 26 B5A...vtd.call &
020910: 42 42 37 38 3A 20 6C 64 20 61 2C 31 3A 20 63 70 BB78: ld a,1: cp
020920: 20 68 3A 20 72 65 74 20 7A 3A 20 6C 64 20 61 2C h: ret z: ld a,
020930: 38 3A 20 6A 70 20 26 42 42 35 41 0D 0A 2E 76 74 8: jp &BB5A...vt
020940: 65 09 63 61 6C 6C 20 26 42 42 37 38 3A 20 70 75 e.call &BB78: pu
020950: 73 68 20 68 6C 3A 20 63 61 6C 6C 20 26 42 42 36 sh hl: call &BB6
020960: 43 3A 20 70 6F 70 20 68 6C 3A 20 6A 70 20 26 42 C: pop hl: jp &B
020970: 42 37 35 0D 0A 2E 76 74 6C 09 63 61 6C 6C 20 26 B75...vtl.call &
020980: 42 42 36 39 3A 20 6C 64 20 63 2C 68 3A 20 63 61 BB69: ld c,h: ca
020990: 6C 6C 20 26 42 42 37 38 3A 20 64 65 63 20 6C 3A ll &BB78: dec l:
0209A0: 20 6C 64 20 68 2C 63 3A 20 6C 64 20 61 2C 30 3A ld h,c: ld a,0:
0209B0: 20 6C 64 20 62 2C 30 3A 20 6A 70 20 26 42 43 35 ld b,0: jp &BC5
0209C0: 30 0D 0A 2E 76 74 6D 09 63 61 6C 6C 20 26 42 42 0...vtm.call &BB
0209D0: 36 39 3A 20 6C 64 20 63 2C 68 3A 20 63 61 6C 6C 69: ld c,h: call
0209E0: 20 26 42 42 37 38 3A 20 64 65 63 20 6C 3A 20 6C &BB78: dec l: l
0209F0: 64 20 68 2C 63 3A 20 6C 64 20 61 2C 30 3A 20 6C d h,c: ld a,0: l
020A00: 64 20 62 2C 31 3A 20 6A 70 20 26 42 43 35 30 0D d b,1: jp &BC50.
020A10: 0A 2E 76 74 78 09 6C 64 20 61 2C 34 3A 20 6C 64 ..vtx.ld a,4: ld
020A20: 20 28 69 79 2B 31 30 38 29 2C 61 3A 20 6C 64 20 (iy+108),a: ld
020A30: 61 2C 22 77 22 3A 20 6C 64 20 28 69 79 2B 31 30 a,"w": ld (iy+10
020A40: 39 29 2C 61 3A 20 72 65 74 0D 0A 2E 76 74 79 09 9),a: ret...vty.
020A50: 6C 64 20 61 2C 32 3A 20 6C 64 20 28 69 79 2B 31 ld a,2: ld (iy+1
020A60: 30 38 29 2C 61 3A 20 6C 64 20 61 2C 22 63 22 3A 08),a: ld a,"c":
020A70: 20 6C 64 20 28 69 79 2B 31 30 39 29 2C 61 3A 20 ld (iy+109),a:
020A80: 72 65 74 0D 0A 2E 76 74 5F 6A 09 63 61 6C 6C 20 ret...vt_j.call
020A90: 26 42 42 37 38 3A 20 6C 64 20 28 69 79 2B 31 31 &BB78: ld (iy+11
020AA0: 30 29 2C 6C 3A 20 6C 64 20 28 69 79 2B 31 31 31 0),l: ld (iy+111
020AB0: 29 2C 68 3A 20 72 65 74 0D 0A 2E 76 74 5F 6B 09 ),h: ret...vt_k.
020AC0: 6C 64 20 6C 2C 28 69 79 2B 31 31 30 29 3A 20 6C ld l,(iy+110): l
020AD0: 64 20 68 2C 28 69 79 2B 31 31 31 29 3A 20 6A 70 d h,(iy+111): jp
020AE0: 20 26 42 42 37 35 0D 0A 2E 76 74 5F 6C 09 63 61 &BB75...vt_l.ca
020AF0: 6C 6C 20 26 42 42 36 39 3A 20 6C 64 20 63 2C 68 ll &BB69: ld c,h
020B00: 0A 2E 77 61 69 74 62 74 09 6C 64 20 28 69 79 2B ..waitbt.ld (iy+
020B10: 38 37 29 2C 65 3A 20 6C 64 20 28 69 79 2B 38 38 87),e: ld (iy+88
020B20: 29 2C 64 3A 20 6C 64 20 62 63 2C 63 6F 6E 69 6E ),d: ld bc,conin
020B30: 3A 20 6C 64 20 61 2C 31 3A 20 6C 64 20 28 69 79 : ld a,1: ld (iy
020B40: 2B 38 39 29 2C 61 0D 0A 2E 77 74 6C 6F 6F 70 09 +89),a...wtloop.
020B50: 69 6E 20 64 2C 28 63 29 3A 20 62 69 74 20 37 2C in d,(c): bit 7,
020B60: 64 3A 20 6A 72 20 6E 7A 2C 77 61 69 74 63 72 0D d: jr nz,waitcr.
020B70: 0A 09 6C 64 20 61 2C 28 69 79 2B 38 39 29 3A 20 ..ld a,(iy+89):
020B80: 6F 72 20 61 3A 20 6A 72 20 6E 7A 2C 77 74 6C 6F or a: jr nz,wtlo
020B90: 6F 70 3A 20 72 65 74 0D 0A 2E 77 61 69 74 63 72 op: ret...waitcr
020BA0: 09 6C 64 20 62 63 2C 64 61 74 69 6E 3A 20 69 6E .ld bc,datin: in
020BB0: 20 61 2C 28 63 29 0D 0A 09 63 61 6C 6C 20 72 65 a,(c)...call re
020BC0: 76 65 72 73 3A 20 73 63 66 3A 20 72 65 74 0D 0A vers: scf: ret..
020BD0: 20 09 65 6C 73 65 0D 0A 2E 77 61 69 74 62 74 09 .else...waitbt.
020BE0: 6C 64 20 28 69 79 2B 38 37 29 2C 65 3A 20 6C 64 ld (iy+87),e: ld
020BF0: 20 28 69 79 2B 38 38 29 2C 64 3A 20 6C 64 20 62 (iy+88),d: ld b
020C00: 63 2C 63 6F 6E 70 6F 72 74 3A 20 6C 64 20 61 2C c,conport: ld a,
020C10: 31 3A 20 6C 64 20 28 69 79 2B 38 39 29 2C 61 0D 1: ld (iy+89),a.
020C20: 0A 2E 77 74 6C 6F 6F 70 09 69 6E 20 64 2C 28 63 ..wtloop.in d,(c
020C30: 29 3A 20 72 72 20 64 3A 20 6A 72 20 63 2C 77 61 ): rr d: jr c,wa
020C40: 69 74 63 72 0D 0A 09 6C 64 20 61 2C 28 69 79 2B itcr...ld a,(iy+
020C50: 38 39 29 3A 20 6F 72 20 61 3A 20 6A 72 20 6E 7A 89): or a: jr nz
020C60: 2C 77 74 6C 6F 6F 70 3A 20 72 65 74 0D 0A 2E 77 ,wtloop: ret...w
020C70: 61 69 74 63 72 09 6C 64 20 62 63 2C 64 61 74 70 aitcr.ld bc,datp
020C80: 6F 72 74 3A 20 69 6E 20 61 2C 28 63 29 3A 20 72 ort: in a,(c): r
020C90: 65 74 0D 0A 09 65 6E 64 69 66 0D 0A 0D 0A 09 3B et...endif.....;
020CA0: 3E 3E 3E 20 4D 43 20 57 41 49 54 20 50 52 49 4E >>> MC WAIT PRIN
020CB0: 54 45 52 20 72 65 64 69 72 65 63 74 69 6F 6E 0D TER redirection.
020CC0: 0A 0D 0A 2E 72 65 64 69 72 09 70 75 73 68 20 64 ....redir.push d
020CD0: 65 3A 20 70 75 73 68 20 68 6C 0D 0A 09 6C 64 20 e: push hl...ld
020CE0: 63 2C 30 3A 20 6C 64 20 68 6C 2C 73 65 6E 64 62 c,0: ld hl,sendb
020CF0: 74 0D 0A 09 63 61 6C 6C 20 26 31 42 09 09 09 3B t...call &1B...;
020D00: 3A 20 63 61 6C 6C 20 26 42 42 37 38 3A 20 64 65 : call &BB78: de
020D10: 63 20 6C 3A 20 6C 64 20 65 2C 6C 3A 20 6C 64 20 c l: ld e,l: ld
020D20: 68 2C 63 3A 20 78 6F 72 20 61 3A 20 6C 64 20 62 h,c: xor a: ld b
020D30: 2C 61 3A 20 6A 70 20 26 42 43 35 30 0D 0A 2E 76 ,a: jp &BC50...v
020D40: 74 5F 70 09 78 6F 72 20 61 3A 20 63 61 6C 6C 20 t_p.xor a: call
020D50: 26 42 42 39 30 3A 20 6C 64 20 61 2C 31 3A 20 6A &BB90: ld a,1: j
020D60: 70 20 26 42 42 39 36 0D 0A 2E 76 74 5F 71 09 78 p &BB96...vt_q.x
020D70: 6F 72 20 61 3A 20 63 61 6C 6C 20 26 42 42 39 36 or a: call &BB96
020D80: 3A 20 6C 64 20 61 2C 31 3A 20 6A 70 20 26 42 42 : ld a,1: jp &BB
020D90: 39 30 0D 0A 0D 0A 2E 65 73 63 73 6E 74 09 6C 64 90.....escsnt.ld
020DA0: 20 61 2C 31 3A 20 6C 64 20 28 69 79 2B 31 30 38 a,1: ld (iy+108
020DB0: 29 2C 61 3A 20 72 65 74 0D 0A 0D 0A 2E 76 74 35 ),a: ret.....vt5
020DC0: 32 61 63 09 63 70 20 22 77 22 3A 20 6C 64 20 61 2ac.cp "w": ld a
020DD0: 2C 28 69 79 2B 31 30 38 29 3A 20 6A 72 20 7A 2C ,(iy+108): jr z,
020DE0: 76 74 35 32 77 73 3A 20 63 70 20 31 3A 20 6A 72 vt52ws: cp 1: jr
020DF0: 20 6E 7A 2C 76 74 64 6F 63 70 3A 20 6C 64 20 61 nz,vtdocp: ld a
020E00: 2C 63 3A 20 73 75 62 20 33 31 0D 0A 09 6C 64 20 ,c: sub 31...ld
020E10: 28 69 79 2B 31 31 32 29 2C 61 3A 20 72 65 74 0D (iy+112),a: ret.
020E20: 0A 2E 76 74 64 6F 63 70 09 6C 64 20 61 2C 63 3A ..vtdocp.ld a,c:
020E30: 20 73 75 62 20 33 31 3A 20 6C 64 20 68 2C 61 3A sub 31: ld h,a:
020E40: 20 6C 64 20 61 2C 28 69 79 2B 31 31 32 29 3A 20 ld a,(iy+112):
020E50: 6C 64 20 6C 2C 61 3A 20 63 61 6C 6C 20 26 42 42 ld l,a: call &BB
020E60: 37 35 3A 20 6A 72 20 76 74 63 6D 0D 0A 2E 76 74 75: jr vtcm...vt
020E70: 35 32 77 73 09 70 75 73 68 20 69 79 3A 20 70 6F 52ws.push iy: po
020E80: 70 20 68 6C 3A 20 6C 64 20 64 65 2C 31 31 32 3A p hl: ld de,112:
020E90: 20 61 64 64 20 68 6C 2C 64 65 3A 20 6C 64 20 65 add hl,de: ld e
020EA0: 2C 61 3A 20 6C 64 20 64 2C 30 0D 0A 09 61 64 64 ,a: ld d,0...add
020EB0: 20 68 6C 2C 64 65 3A 20 6C 64 20 61 2C 63 3A 20 hl,de: ld a,c:
020EC0: 73 75 62 20 33 32 3A 20 6C 64 20 28 68 6C 29 2C sub 32: ld (hl),
020ED0: 61 0D 0A 09 6C 64 20 61 2C 65 3A 20 6F 72 20 61 a...ld a,e: or a
020EE0: 3A 20 72 65 74 20 6E 7A 3A 20 6C 64 20 61 2C 28 : ret nz: ld a,(
020EF0: 69 79 2B 31 31 35 29 3A 20 6C 64 20 65 2C 61 3A iy+115): ld e,a:
020F00: 4B 4C 20 46 41 52 20 50 43 48 4C 0D 0A 09 73 63 KL FAR PCHL...sc
020F10: 66 09 09 09 09 3B 63 61 72 72 79 20 3D 20 6E 6F f....;carry = no
020F20: 20 74 69 6D 65 2D 6F 75 74 0D 0A 09 70 6F 70 20 time-out...pop
020F30: 68 6C 3A 20 70 6F 70 20 64 65 3A 20 72 65 74 0D hl: pop de: ret.
020F40: 0A 0D 0A 09 3B 3E 3E 3E 20 46 72 61 6D 65 20 66 ....;>>> Frame f
020F50: 6C 79 62 61 63 6B 20 65 76 65 6E 74 20 66 6F 72 lyback event for
020F60: 20 63 6F 75 6E 74 65 72 0D 0A 0D 0A 2E 66 63 6F counter.....fco
020F70: 75 6E 74 09 70 75 73 68 20 69 79 3A 20 6C 64 20 unt.push iy: ld
020F80: 69 79 2C 28 26 42 41 46 44 29 0D 0A 09 6C 64 20 iy,(&BAFD)...ld
020F90: 61 2C 28 69 79 2B 38 39 29 3A 20 6F 72 20 61 3A a,(iy+89): or a:
020FA0: 20 6A 72 20 7A 2C 72 65 74 66 63 0D 0A 09 6C 64 jr z,retfc...ld
020FB0: 20 6C 2C 28 69 79 2B 38 37 29 3A 20 6C 64 20 68 l,(iy+87): ld h
020FC0: 2C 28 69 79 2B 38 38 29 3A 20 64 65 63 20 68 6C ,(iy+88): dec hl
020FD0: 0D 0A 09 6C 64 20 28 69 79 2B 38 37 29 2C 6C 3A ...ld (iy+87),l:
020FE0: 20 6C 64 20 28 69 79 2B 38 38 29 2C 68 0D 0A 09 ld (iy+88),h...
020FF0: 6C 64 20 61 2C 68 3A 20 6F 72 20 6C 3A 20 6C 64 ld a,h: or l: ld
021000: 20 28 69 79 2B 38 39 29 2C 61 0D 0A 2E 72 65 74 (iy+89),a...ret
021010: 66 63 09 70 6F 70 20 69 79 3A 20 72 65 74 0D 0A fc.pop iy: ret..
021020: 0D 0A 09 3B 3E 3E 3E 20 50 72 69 6E 74 20 73 74 ...;>>> Print st
021030: 72 69 6E 67 20 61 74 20 48 4C 0D 0A 0D 0A 2E 73 ring at HL.....s
021040: 74 72 69 6E 67 09 6C 64 20 61 2C 28 68 6C 29 3A tring.ld a,(hl):
021050: 20 6F 72 20 61 3A 20 72 65 74 20 7A 3A 20 63 61 or a: ret z: ca
021060: 6C 6C 20 26 42 42 35 41 3A 20 69 6E 63 20 68 6C ll &BB5A: inc hl
021070: 3A 20 6A 72 20 73 74 72 69 6E 67 0D 0A 0D 0A 09 : jr string.....
021080: 3B 3E 3E 3E 20 52 65 67 69 73 74 65 72 20 61 63 ;>>> Register ac
021090: 63 65 73 73 0D 0A 09 3B 3E 3E 3E 20 41 6D 73 74 cess...;>>> Amst
0210A0: 72 61 64 20 2D 20 73 65 6E 64 2F 72 65 61 64 20 rad - send/read
0210B0: 41 2C 20 44 41 52 54 20 72 65 67 69 73 74 65 72 A, DART register
0210C0: 20 44 0D 0A 09 3B 3E 3E 3E 20 4B 44 53 20 2D 20 D...;>>> KDS -
0210D0: 73 65 6E 64 2F 72 65 61 64 20 41 2C 20 36 38 35 send/read A, 685
0210E0: 30 20 63 6F 6E 74 72 6F 6C 20 70 6F 72 74 0D 0A 0 control port..
0210F0: 0D 0A 09 69 66 20 6B 64 73 0D 0A 2E 70 72 65 67 ...if kds...preg
021100: 20 6C 64 20 61 2C 28 69 79 2B 31 31 34 29 3A 20 ld a,(iy+114):
021110: 6C 64 20 64 2C 61 0D 0A 09 6C 64 20 61 2C 28 69 ld d,a...ld a,(i
021120: 79 2B 31 31 33 29 3A 20 61 64 64 20 61 2C 65 3A y+113): add a,e:
021130: 20 6C 64 20 6C 2C 61 3A 20 6C 64 20 61 2C 28 69 ld l,a: ld a,(i
021140: 79 2B 31 31 32 29 3A 20 61 64 64 20 61 2C 64 3A y+112): add a,d:
021150: 20 6C 64 20 68 2C 61 0D 0A 09 63 61 6C 6C 20 26 ld h,a...call &
021160: 42 42 36 36 0D 0A 2E 76 74 63 6D 09 78 6F 72 20 BB66...vtcm.xor
021170: 61 3A 20 6C 64 20 28 69 79 2B 31 30 39 29 2C 61 a: ld (iy+109),a
021180: 3A 20 72 65 74 0D 0A 0D 0A 09 3B 3E 3E 3E 20 53 : ret.....;>>> S
021190: 74 6F 70 20 28 58 4F 46 46 2C 20 64 72 6F 70 20 top (XOFF, drop
0211A0: 52 54 53 29 0D 0A 0D 0A 2E 73 74 6F 70 09 6C 64 RTS).....stop.ld
0211B0: 20 61 2C 28 69 79 2B 34 29 3A 20 6F 72 20 61 3A a,(iy+4): or a:
0211C0: 20 6C 64 20 61 2C 31 39 3A 20 63 61 6C 6C 20 6E ld a,19: call n
0211D0: 7A 2C 73 65 6E 64 62 74 0D 0A 2E 73 74 6F 70 32 z,sendbt...stop2
0211E0: 09 69 66 20 6B 64 73 3A 20 6C 64 20 61 2C 28 69 .if kds: ld a,(i
0211F0: 79 2B 31 31 29 3A 20 61 6E 64 20 32 35 31 3A 20 y+11): and 251:
021200: 6A 70 20 70 72 65 67 0D 0A 09 65 6C 73 65 3A 20 jp preg...else:
021210: 20 20 6C 64 20 61 2C 28 69 79 2B 31 32 29 3A 20 ld a,(iy+12):
021220: 61 6E 64 20 32 35 33 3A 20 6C 64 20 64 2C 35 3A and 253: ld d,5:
021230: 20 6A 70 20 70 72 65 67 0D 0A 09 65 6E 64 69 66 jp preg...endif
021240: 0D 0A 0D 0A 09 3B 3E 3E 3E 20 52 65 73 75 6D 65 .....;>>> Resume
021250: 20 28 58 4F 4E 2C 20 52 54 53 20 68 69 67 68 29 (XON, RTS high)
021260: 0D 0A 0D 0A 2E 72 65 73 75 6D 65 09 6C 64 20 61 .....resume.ld a
021270: 2C 28 69 79 2B 34 29 3A 20 6F 72 20 61 3A 20 6C ,(iy+4): or a: l
021280: 64 20 61 2C 31 37 3A 20 63 61 6C 6C 20 6E 7A 2C d a,17: call nz,
021290: 73 65 6E 64 62 74 0D 0A 2E 72 65 73 75 6D 32 09 sendbt...resum2.
0212A0: 69 66 20 6B 64 73 3A 20 6C 64 20 61 2C 28 69 79 if kds: ld a,(iy
0212B0: 2B 31 31 29 3A 20 6A 70 20 70 72 65 67 0D 0A 09 +11): jp preg...
0212C0: 65 6C 73 65 3A 20 20 20 6C 64 20 61 2C 28 69 79 else: ld a,(iy
0212D0: 2B 31 32 29 3A 20 6C 64 20 64 2C 35 3A 20 6A 70 +12): ld d,5: jp
0212E0: 20 70 72 65 67 0D 0A 09 65 6E 64 69 66 0D 0A 0D preg...endif...
0212F0: 0A 09 3B 3E 3E 3E 20 52 65 73 65 74 20 69 6E 74 ..;>>> Reset int
021300: 09 6C 64 20 62 63 2C 63 6F 6E 6F 75 74 3A 20 6F .ld bc,conout: o
021310: 75 74 20 28 63 29 2C 61 3A 20 72 65 74 0D 0A 2E ut (c),a: ret...
021320: 72 72 65 67 09 6C 64 20 62 63 2C 63 6F 6E 69 6E rreg.ld bc,conin
021330: 3A 20 69 6E 20 61 2C 28 63 29 3A 20 72 65 74 0D : in a,(c): ret.
021340: 0A 09 65 6C 73 65 0D 0A 2E 70 72 65 67 09 6C 64 ..else...preg.ld
021350: 20 62 63 2C 63 6F 6E 70 6F 72 74 3A 20 6F 75 74 bc,conport: out
021360: 20 28 63 29 2C 64 3A 20 6F 75 74 20 28 63 29 2C (c),d: out (c),
021370: 61 3A 20 72 65 74 0D 0A 2E 72 72 65 67 09 6C 64 a: ret...rreg.ld
021380: 20 62 63 2C 63 6F 6E 70 6F 72 74 3A 20 6F 75 74 bc,conport: out
021390: 20 28 63 29 2C 64 3A 20 69 6E 20 61 2C 28 63 29 (c),d: in a,(c)
0213A0: 3A 20 72 65 74 0D 0A 09 65 6E 64 69 66 0D 0A 0D : ret...endif...
0213B0: 0A 09 3B 3E 3E 3E 20 50 72 69 6E 74 20 56 54 35 ..;>>> Print VT5
0213C0: 32 20 63 68 61 72 61 63 74 65 72 20 41 0D 0A 0D 2 character A...
0213D0: 0A 2E 76 74 35 32 63 09 6C 64 20 63 2C 61 3A 20 ..vt52c.ld c,a:
0213E0: 6C 64 20 61 2C 28 69 79 2B 31 30 38 29 3A 20 6F ld a,(iy+108): o
0213F0: 72 20 61 3A 20 6A 70 20 6E 7A 2C 76 74 70 72 3A r a: jp nz,vtpr:
021400: 20 6C 64 20 61 2C 63 0D 0A 09 63 70 20 33 31 3A ld a,c...cp 31:
021410: 20 6A 70 20 6E 63 2C 26 42 42 35 41 3A 20 63 70 jp nc,&BB5A: cp
021420: 20 32 37 3A 20 6A 70 20 7A 2C 65 73 63 73 6E 74 27: jp z,escsnt
021430: 0D 0A 09 63 70 20 37 3A 20 72 65 74 20 63 3A 20 ...cp 7: ret c:
021440: 63 70 20 31 34 3A 20 72 65 74 20 6E 63 3A 20 6A cp 14: ret nc: j
021450: 70 20 26 42 42 35 41 0D 0A 2E 76 74 70 72 09 64 p &BB5A...vtpr.d
021460: 65 63 20 61 3A 20 6C 64 20 28 69 79 2B 31 30 38 ec a: ld (iy+108
021470: 29 2C 61 3A 20 6C 64 20 61 2C 28 69 79 2B 31 30 ),a: ld a,(iy+10
021480: 39 29 3A 20 6F 72 20 61 3A 20 6A 70 20 6E 7A 2C 9): or a: jp nz,
021490: 76 74 35 32 61 63 3A 20 6C 64 20 68 6C 2C 76 74 vt52ac: ld hl,vt
0214A0: 35 32 73 74 0D 0A 2E 76 74 73 74 6C 70 09 6C 64 52st...vtstlp.ld
0214B0: 20 61 2C 28 68 6C 29 3A 20 6F 72 20 61 3A 20 6A a,(hl): or a: j
0214C0: 72 20 7A 2C 65 78 73 74 6C 70 0D 0A 09 69 6E 63 r z,exstlp...inc
0214D0: 20 68 6C 3A 20 63 70 20 63 3A 20 6A 72 20 6E 7A hl: cp c: jr nz
0214E0: 2C 73 74 63 74 6C 70 3A 20 6C 64 20 61 2C 28 68 ,stctlp: ld a,(h
0214F0: 6C 29 3A 20 6A 70 20 26 42 42 35 41 0D 0A 2E 73 l): jp &BB5A...s
021500: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
021510: 1C 00 01 00 02 09 4E E5 1C 00 C4 02 00 00 00 02 ......N.........
021520: 1C 00 C9 02 00 00 00 02 1C 00 C5 02 00 00 00 02 ................
021530: 1C 00 C1 02 00 00 00 02 1C 00 C6 02 00 00 00 02 ................
021540: 1C 00 C2 02 00 00 00 02 1C 00 C7 02 00 00 00 02 ................
021550: 1C 00 C3 02 00 00 00 02 1C 00 C8 02 00 00 00 02 ................
021560: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
021570: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
021580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
021590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0215A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0215B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0215C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0215D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0215E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0215F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
021600: 6D 5F 69 09 63 61 6C 6C 20 72 65 73 65 74 3A 20 m_i.call reset:
021610: 6C 64 20 68 6C 2C 32 34 30 30 3A 20 6C 64 20 64 ld hl,2400: ld d
021620: 65 2C 32 34 30 30 09 3B 32 34 30 30 2F 32 34 30 e,2400.;2400/240
021630: 30 20 62 70 73 0D 0A 2E 74 65 72 6D 5F 78 09 63 0 bps...term_x.c
021640: 61 6C 6C 20 67 6F 74 62 70 0D 0A 09 6C 64 20 61 all gotbp...ld a
021650: 2C 31 3A 20 6C 64 20 28 69 79 2B 32 29 2C 61 09 ,1: ld (iy+2),a.
021660: 09 09 3B 63 75 72 73 6F 72 20 6F 6E 0D 0A 09 6C ..;cursor on...l
021670: 64 20 28 69 79 2B 34 29 2C 61 09 09 09 09 3B 58 d (iy+4),a....;X
021680: 4F 4E 20 66 6C 6F 77 20 63 6F 6E 74 72 6F 6C 20 ON flow control
021690: 6F 6E 0D 0A 09 6C 64 20 68 6C 2C 35 30 30 0D 0A on...ld hl,500..
0216A0: 09 6C 64 20 28 69 79 2B 39 29 2C 6C 3A 20 6C 64 .ld (iy+9),l: ld
0216B0: 20 28 69 79 2B 31 30 29 2C 68 09 09 3B 74 69 6D (iy+10),h..;tim
0216C0: 65 6F 75 74 20 31 30 20 73 65 63 6F 6E 64 73 0D eout 10 seconds.
0216D0: 0A 09 6C 64 20 68 6C 2C 74 66 62 75 66 66 0D 0A ..ld hl,tfbuff..
0216E0: 09 6C 64 20 28 69 79 2B 37 29 2C 6C 3A 20 6C 64 .ld (iy+7),l: ld
0216F0: 20 28 69 79 2B 38 29 2C 68 09 09 3B 66 69 6C 65 (iy+8),h..;file
021700: 20 62 75 66 66 65 72 0D 0A 09 6C 64 20 69 78 2C buffer...ld ix,
021710: 74 70 62 6C 6F 63 6B 3A 20 6C 64 20 28 69 78 29 tpblock: ld (ix)
021720: 2C 31 3A 20 6C 64 20 28 69 78 2B 31 29 2C 30 0D ,1: ld (ix+1),0.
021730: 0A 09 6C 64 20 28 69 78 2B 32 29 2C 30 3A 20 6C ..ld (ix+2),0: l
021740: 64 20 28 69 78 2B 33 29 2C 30 0D 0A 09 6C 64 20 d (ix+3),0...ld
021750: 28 69 78 2B 34 29 2C 38 3A 20 6C 64 20 28 69 78 (ix+4),8: ld (ix
021760: 2B 35 29 2C 30 0D 0A 09 70 75 73 68 20 69 79 0D +5),0...push iy.
021770: 0A 09 6C 64 20 61 2C 33 3A 20 63 61 6C 6C 20 77 ..ld a,3: call w
021780: 6F 72 64 5F 69 09 09 09 3B 73 65 74 20 64 61 74 ord_i...;set dat
021790: 61 20 77 6F 72 64 0D 0A 09 70 6F 70 20 69 79 0D a word...pop iy.
0217A0: 0A 69 66 20 6B 64 73 3A 20 65 6C 73 65 3A 20 6C .if kds: else: l
0217B0: 64 20 61 2C 31 3A 20 63 61 6C 6C 20 68 77 6F 6B d a,1: call hwok
0217C0: 3A 20 65 6E 64 69 66 09 09 3B 73 65 74 20 68 61 : endif..;set ha
0217D0: 72 64 77 61 72 65 20 68 61 6E 64 73 68 61 6B 69 rdware handshaki
0217E0: 6E 67 0D 0A 0D 0A 09 63 61 6C 6C 20 26 42 42 30 ng.....call &BB0
0217F0: 30 3A 20 63 61 6C 6C 20 26 42 42 34 45 3A 20 63 0: call &BB4E: c
021800: 6C 20 67 6F 74 62 70 3A 20 6A 70 20 72 73 6D 6E l gotbp: jp rsmn
021810: 75 0D 0A 0D 0A 2E 77 72 64 6D 6E 75 09 6C 64 20 u.....wrdmnu.ld
021820: 68 6C 2C 74 6D 77 6F 72 64 3A 20 63 61 6C 6C 20 hl,tmword: call
021830: 6D 65 6E 75 3A 20 6A 70 20 7A 2C 72 73 6D 6E 75 menu: jp z,rsmnu
021840: 0D 0A 09 6C 64 20 69 78 2C 74 70 62 6C 6F 63 6B ...ld ix,tpblock
021850: 3A 20 6C 64 20 28 69 78 29 2C 31 3A 20 6C 64 20 : ld (ix),1: ld
021860: 28 69 78 2B 31 29 2C 30 0D 0A 09 63 70 20 31 3A (ix+1),0...cp 1:
021870: 20 6A 72 20 6E 7A 2C 70 61 72 32 0D 0A 09 6C 64 jr nz,par2...ld
021880: 20 28 69 78 2B 32 29 2C 30 3A 20 6C 64 20 28 69 (ix+2),0: ld (i
021890: 78 2B 34 29 2C 38 3A 20 6A 72 20 73 77 72 64 0D x+4),8: jr swrd.
0218A0: 0A 2E 70 61 72 32 09 6C 64 20 28 69 78 2B 32 29 ..par2.ld (ix+2)
0218B0: 2C 32 3A 20 6C 64 20 28 69 78 2B 34 29 2C 37 0D ,2: ld (ix+4),7.
0218C0: 0A 2E 73 77 72 64 09 6C 64 20 28 69 78 2B 33 29 ..swrd.ld (ix+3)
0218D0: 2C 30 3A 20 6C 64 20 28 69 78 2B 35 29 2C 30 0D ,0: ld (ix+5),0.
0218E0: 0A 09 70 75 73 68 20 69 79 3A 20 6C 64 20 61 2C ..push iy: ld a,
0218F0: 33 3A 20 63 61 6C 6C 20 77 6F 72 64 5F 69 0D 0A 3: call word_i..
021900: 09 70 6F 70 20 69 79 3A 20 6A 70 20 72 73 6D 6E .pop iy: jp rsmn
021910: 75 0D 0A 0D 0A 2E 64 6F 62 72 6B 09 63 61 6C 6C u.....dobrk.call
021920: 20 62 72 6B 5F 69 3A 20 6A 70 20 72 73 6D 6E 75 brk_i: jp rsmnu
021930: 0D 0A 0D 0A 2E 64 69 72 6D 6E 75 09 6C 64 20 68 .....dirmnu.ld h
021940: 6C 2C 74 6D 64 69 72 3A 20 63 61 6C 6C 20 6D 65 l,tmdir: call me
021950: 6E 75 3A 20 6A 70 20 7A 2C 6D 61 69 6E 6D 0D 0A nu: jp z,mainm..
021960: 09 6C 64 20 28 69 79 2B 38 36 29 2C 61 09 09 09 .ld (iy+86),a...
021970: 3B 63 75 72 72 65 6E 74 20 64 69 72 65 63 74 6F ;current directo
021980: 72 79 0D 0A 09 6C 64 20 68 6C 2C 63 64 6E 61 6D ry...ld hl,cdnam
021990: 65 3A 20 6C 64 20 64 65 2C 74 70 62 6C 6F 63 6B e: ld de,tpblock
0219A0: 2B 35 31 33 0D 0A 09 6C 64 20 62 63 2C 31 32 3A +513...ld bc,12:
0219B0: 20 6C 64 69 72 0D 0A 09 6C 64 20 68 6C 2C 74 70 ldir...ld hl,tp
0219C0: 62 6C 6F 63 6B 2B 35 32 30 3A 20 61 64 64 20 34 block+520: add 4
0219D0: 38 09 3B 66 69 6C 65 6E 61 6D 65 20 22 43 48 41 8.;filename "CHA
0219E0: 52 4C 45 59 3F 2E 44 49 52 22 0D 0A 09 6C 64 20 RLEY?.DIR"...ld
0219F0: 28 68 6C 29 2C 61 3A 20 63 61 6C 6C 20 26 42 43 (hl),a: call &BC
021A00: 61 6C 6C 20 26 42 42 42 41 3A 20 63 61 6C 6C 20 all &BBBA: call
021A10: 26 42 42 46 46 0D 0A 0D 0A 09 6C 64 20 61 2C 26 &BBFF.....ld a,&
021A20: 34 30 3A 20 63 61 6C 6C 20 26 42 43 30 38 0D 0A 40: call &BC08..
021A30: 09 6C 64 20 61 2C 31 3A 20 20 20 63 61 6C 6C 20 .ld a,1: call
021A40: 26 42 43 30 45 09 09 09 3B 63 6C 65 61 72 20 6C &BC0E...;clear l
021A50: 6F 77 20 73 63 72 65 65 6E 0D 0A 09 6C 64 20 61 ow screen...ld a
021A60: 2C 26 43 30 3A 20 63 61 6C 6C 20 26 42 43 30 38 ,&C0: call &BC08
021A70: 0D 0A 09 6C 64 20 61 2C 32 3A 20 20 20 63 61 6C ...ld a,2: cal
021A80: 6C 20 26 42 43 30 45 09 09 09 3B 63 6C 65 61 72 l &BC0E...;clear
021A90: 20 68 69 67 68 20 73 63 72 65 65 6E 0D 0A 0D 0A high screen....
021AA0: 2E 74 5F 63 6F 6D 09 63 61 6C 6C 20 63 6F 6D 5F .t_com.call com_
021AB0: 69 0D 0A 09 63 61 6C 6C 20 73 74 6F 70 32 09 09 i...call stop2..
021AC0: 09 09 3B 22 4F 79 21 21 21 21 20 48 6F 6C 64 20 ..;"Oy!!!! Hold
021AD0: 6F 6E 21 22 0D 0A 0D 0A 09 63 61 6C 6C 20 26 42 on!".....call &B
021AE0: 42 37 38 3A 20 6C 64 20 28 63 68 61 70 6F 73 29 B78: ld (chapos)
021AF0: 2C 68 6C 09 09 3B 73 74 6F 72 65 20 63 68 61 72 ,hl..;store char
021B00: 61 63 74 65 72 20 70 6F 73 69 74 69 6F 6E 0D 0A acter position..
021B10: 09 63 61 6C 6C 20 26 42 43 30 42 3A 20 6C 64 20 .call &BC0B: ld
021B20: 28 6F 66 66 73 65 74 29 2C 68 6C 09 09 3B 73 74 (offset),hl..;st
021B30: 6F 72 65 20 73 63 72 65 65 6E 20 6F 66 66 73 65 ore screen offse
021B40: 74 0D 0A 0D 0A 09 6C 64 20 61 2C 26 34 30 3A 20 t.....ld a,&40:
021B50: 63 61 6C 6C 20 26 42 43 30 38 0D 0A 2E 6D 73 65 call &BC08...mse
021B60: 74 75 70 09 6C 64 20 61 2C 31 3A 20 63 61 6C 6C tup.ld a,1: call
021B70: 20 26 42 43 30 45 09 09 09 3B 4D 4F 44 45 20 31 &BC0E...;MODE 1
021B80: 0D 0A 09 6C 64 20 62 63 2C 30 3A 20 63 61 6C 6C ...ld bc,0: call
021B90: 20 26 42 43 33 38 09 09 09 3B 62 6F 72 64 65 72 &BC38...;border
021BA0: 20 30 0D 0A 09 6C 64 20 61 2C 30 3A 20 6C 64 20 0...ld a,0: ld
021BB0: 62 63 2C 26 30 30 30 30 3A 20 63 61 6C 6C 20 26 bc,&0000: call &
021BC0: 42 43 33 32 09 09 3B 73 65 74 20 69 6E 6B 73 0D BC32..;set inks.
021BD0: 0A 09 6C 64 20 61 2C 31 3A 20 6C 64 20 62 63 2C ..ld a,1: ld bc,
021BE0: 26 31 41 31 41 3A 20 63 61 6C 6C 20 26 42 43 33 &1A1A: call &BC3
021BF0: 32 09 09 3B 20 5E 0D 0A 09 6C 64 20 61 2C 32 3A 2..; ^...ld a,2:
021C00: 65 72 66 61 63 65 20 61 6E 64 20 76 61 72 69 61 erface and varia
021C10: 62 6C 65 73 0D 0A 0D 0A 2E 72 65 73 65 74 09 69 bles.....reset.i
021C20: 66 20 6B 64 73 3A 20 6C 64 20 61 2C 28 69 79 2B f kds: ld a,(iy+
021C30: 31 31 29 3A 20 6F 72 20 26 43 30 3A 20 63 61 6C 11): or &C0: cal
021C40: 6C 20 70 72 65 67 0D 0A 09 65 6C 73 65 3A 20 20 l preg...else:
021C50: 20 6C 64 20 61 2C 26 31 38 3A 20 6C 64 20 64 2C ld a,&18: ld d,
021C60: 30 3A 20 20 20 20 63 61 6C 6C 20 70 72 65 67 0D 0: call preg.
021C70: 0A 09 65 6E 64 69 66 0D 0A 0D 0A 09 6C 64 20 61 ..endif.....ld a
021C80: 2C 31 3A 20 6C 64 20 28 69 79 2B 30 29 2C 61 0D ,1: ld (iy+0),a.
021C90: 0A 09 6C 64 20 28 69 79 2B 33 29 2C 61 0D 0A 0D ..ld (iy+3),a...
021CA0: 0A 09 6C 64 20 61 2C 30 3A 20 6C 64 20 28 69 79 ..ld a,0: ld (iy
021CB0: 2B 31 29 2C 61 0D 0A 09 6C 64 20 28 69 79 2B 32 +1),a...ld (iy+2
021CC0: 29 2C 61 0D 0A 09 6C 64 20 28 69 79 2B 34 29 2C ),a...ld (iy+4),
021CD0: 61 0D 0A 09 6C 64 20 28 69 79 2B 35 29 2C 61 0D a...ld (iy+5),a.
021CE0: 0A 09 6C 64 20 28 69 79 2B 39 29 2C 61 3A 20 6C ..ld (iy+9),a: l
021CF0: 64 20 28 69 79 2B 31 30 29 2C 61 0D 0A 09 6C 64 d (iy+10),a...ld
021D00: 20 28 69 79 2B 31 30 38 29 2C 61 3A 20 6C 64 20 (iy+108),a: ld
021D10: 28 69 79 2B 31 30 39 29 2C 61 0D 0A 0D 0A 09 6C (iy+109),a.....l
021D20: 64 20 61 2C 32 3A 20 6C 64 20 28 69 79 2B 31 30 d a,2: ld (iy+10
021D30: 37 29 2C 61 0D 0A 0D 0A 09 70 75 73 68 20 69 79 7),a.....push iy
021D40: 3A 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 20 64 65 : pop hl...ld de
021D50: 2C 34 35 3A 20 61 64 64 20 68 6C 2C 64 65 3A 20 ,45: add hl,de:
021D60: 65 78 20 64 65 2C 68 6C 0D 0A 09 6C 64 20 68 6C ex de,hl...ld hl
021D70: 2C 72 73 66 74 78 74 3A 20 6C 64 20 62 63 2C 32 ,rsftxt: ld bc,2
021D80: 33 3A 20 6C 64 69 72 0D 0A 0D 0A 09 69 66 20 6B 3: ldir.....if k
021D90: 64 73 3A 20 6C 64 20 61 2C 25 31 30 31 30 31 31 ds: ld a,%101011
021DA0: 30 30 3A 20 6C 64 20 28 69 79 2B 31 31 29 2C 61 00: ld (iy+11),a
021DB0: 3A 20 63 61 6C 6C 20 70 72 65 67 0D 0A 09 65 6C : call preg...el
021DC0: 73 65 3A 20 20 20 6C 64 20 61 2C 25 31 31 31 30 se: ld a,%1110
021DD0: 30 30 30 31 3A 20 6C 64 20 28 69 79 2B 31 31 29 0001: ld (iy+11)
021DE0: 2C 61 3A 20 6C 64 20 64 2C 33 3A 20 63 61 6C 6C ,a: ld d,3: call
021DF0: 20 70 72 65 67 0D 0A 09 09 6C 64 20 61 2C 25 31 preg....ld a,%1
021E00: 20 6C 64 20 62 63 2C 26 30 32 30 32 3A 20 63 61 ld bc,&0202: ca
021E10: 6C 6C 20 26 42 43 33 32 09 09 3B 20 7C 0D 0A 09 ll &BC32..; |...
021E20: 6C 64 20 61 2C 33 3A 20 6C 64 20 62 63 2C 26 30 ld a,3: ld bc,&0
021E30: 36 30 36 3A 20 63 61 6C 6C 20 26 42 43 33 32 09 606: call &BC32.
021E40: 09 3B 20 7C 0D 0A 0D 0A 09 6C 64 20 68 6C 2C 63 .; |.....ld hl,c
021E50: 63 72 74 78 74 3A 20 63 61 6C 6C 20 73 74 72 69 crtxt: call stri
021E60: 6E 67 0D 0A 09 6C 64 20 64 65 2C 26 30 30 30 34 ng...ld de,&0004
021E70: 3A 20 6C 64 20 68 6C 2C 26 32 37 31 38 0D 0A 09 : ld hl,&2718...
021E80: 63 61 6C 6C 20 26 42 42 36 36 09 09 09 09 3B 73 call &BB66....;s
021E90: 65 74 20 75 70 20 77 69 6E 64 6F 77 0D 0A 2E 6D et up window...m
021EA0: 61 69 6E 6D 09 6C 64 20 68 6C 2C 74 6D 6D 61 69 ainm.ld hl,tmmai
021EB0: 6E 3A 20 63 61 6C 6C 20 6D 65 6E 75 0D 0A 09 6A n: call menu...j
021EC0: 70 20 7A 2C 71 75 63 6F 6D 0D 0A 09 63 70 20 31 p z,qucom...cp 1
021ED0: 3A 20 6A 70 20 7A 2C 72 73 6D 6E 75 0D 0A 09 63 : jp z,rsmnu...c
021EE0: 70 20 32 3A 20 6A 70 20 7A 2C 63 70 74 6D 6E 75 p 2: jp z,cptmnu
021EF0: 0D 0A 09 63 70 20 33 3A 20 6A 70 20 7A 2C 66 69 ...cp 3: jp z,fi
021F00: 6C 6D 6E 75 0D 0A 09 63 70 20 34 3A 20 6A 70 20 lmnu...cp 4: jp
021F10: 7A 2C 64 73 63 6D 6E 75 0D 0A 09 63 70 20 35 3A z,dscmnu...cp 5:
021F20: 20 6A 70 20 7A 2C 64 69 72 6D 6E 75 0D 0A 09 69 jp z,dirmnu...i
021F30: 66 20 6B 64 73 3A 20 65 6C 73 65 0D 0A 09 63 70 f kds: else...cp
021F40: 20 36 3A 20 6A 70 20 7A 2C 68 61 6E 67 75 70 0D 6: jp z,hangup.
021F50: 0A 09 65 6E 64 69 66 0D 0A 0D 0A 2E 72 73 6D 6E ..endif.....rsmn
021F60: 75 09 6C 64 20 68 6C 2C 74 6D 72 73 3A 20 63 61 u.ld hl,tmrs: ca
021F70: 6C 6C 20 6D 65 6E 75 0D 0A 09 6A 72 20 7A 2C 6D ll menu...jr z,m
021F80: 61 69 6E 6D 0D 0A 09 63 70 20 31 3A 20 6A 70 20 ainm...cp 1: jp
021F90: 7A 2C 62 70 73 6D 6E 75 0D 0A 09 63 70 20 32 3A z,bpsmnu...cp 2:
021FA0: 20 6A 70 20 7A 2C 77 72 64 6D 6E 75 0D 0A 69 66 jp z,wrdmnu..if
021FB0: 20 6B 64 73 3A 09 65 6C 73 65 3A 20 63 70 20 36 kds:.else: cp 6
021FC0: 3A 20 6A 70 20 7A 2C 68 68 73 6D 6E 75 0D 0A 65 : jp z,hhsmnu..e
021FD0: 6E 64 69 66 3A 09 63 70 20 33 3A 20 6A 70 20 7A ndif:.cp 3: jp z
021FE0: 2C 64 6F 62 72 6B 0D 0A 09 63 70 20 34 3A 20 6A ,dobrk...cp 4: j
021FF0: 70 20 7A 2C 78 6F 6E 6D 6E 75 0D 0A 09 63 70 20 p z,xonmnu...cp
022000: 31 31 30 31 30 31 30 3A 20 6C 64 20 28 69 79 2B 1101010: ld (iy+
022010: 31 32 29 2C 61 3A 20 6C 64 20 64 2C 35 3A 20 63 12),a: ld d,5: c
022020: 61 6C 6C 20 70 72 65 67 0D 0A 09 65 6E 64 69 66 all preg...endif
022030: 3A 20 20 72 65 74 0D 0A 0D 0A 2E 72 73 66 74 78 : ret.....rsftx
022040: 74 09 64 62 20 22 44 4F 57 4E 4C 4F 41 44 2E 22 t.db "DOWNLOAD."
022050: 2C 30 0D 0A 09 64 62 20 22 20 20 20 20 20 20 20 ,0...db "
022060: 20 20 20 20 20 22 2C 30 0D 0A 0D 0A 09 3B 3E 3E ",0.....;>>
022070: 3E 20 43 6C 65 61 72 20 74 65 78 74 20 62 75 66 > Clear text buf
022080: 66 65 72 0D 0A 0D 0A 2E 63 62 75 66 66 72 09 70 fer.....cbuffr.p
022090: 75 73 68 20 69 79 3A 20 70 6F 70 20 68 6C 0D 0A ush iy: pop hl..
0220A0: 09 6C 64 20 64 65 2C 31 31 36 3A 20 61 64 64 20 .ld de,116: add
0220B0: 68 6C 2C 64 65 09 09 3B 48 4C 20 3D 20 62 75 66 hl,de..;HL = buf
0220C0: 66 65 72 0D 0A 09 6C 64 20 64 2C 68 3A 20 6C 64 fer...ld d,h: ld
0220D0: 20 65 2C 6C 3A 20 69 6E 63 20 64 65 09 09 3B 44 e,l: inc de..;D
0220E0: 45 20 3D 20 62 75 66 66 65 72 2B 31 0D 0A 09 6C E = buffer+1...l
0220F0: 64 20 62 63 2C 32 35 35 0D 0A 09 6C 64 20 28 68 d bc,255...ld (h
022100: 6C 29 2C 30 0D 0A 09 6C 64 69 72 0D 0A 0D 0A 09 l),0...ldir.....
022110: 6C 64 20 68 6C 2C 30 0D 0A 09 6C 64 20 28 69 79 ld hl,0...ld (iy
022120: 2B 33 38 29 2C 6C 3A 20 6C 64 20 28 69 79 2B 33 +38),l: ld (iy+3
022130: 39 29 2C 68 09 3B 62 75 66 66 65 72 20 67 65 74 9),h.;buffer get
022140: 20 6F 66 66 73 65 74 0D 0A 09 6C 64 20 28 69 79 offset...ld (iy
022150: 2B 33 36 29 2C 6C 3A 20 6C 64 20 28 69 79 2B 33 +36),l: ld (iy+3
022160: 37 29 2C 68 09 3B 62 75 66 66 65 72 20 73 74 6F 7),h.;buffer sto
022170: 72 65 20 6F 66 66 73 65 74 0D 0A 09 72 65 74 0D re offset...ret.
022180: 0A 1A 53 55 42 52 4F 55 54 20 24 24 24 FF 00 FF ..SUBROUT $$$...
022190: 4D 4F 44 20 2A 2A 2A 0D 0A 0D 0A 09 3B 3E 3E 3E MOD ***.....;>>>
0221A0: 20 43 68 65 63 6B 20 66 6F 72 20 66 69 6C 65 20 Check for file
0221B0: 62 75 66 66 65 72 0D 0A 0D 0A 2E 62 75 66 66 5F buffer.....buff_
0221C0: 63 09 70 75 73 68 20 61 66 3A 20 70 75 73 68 20 c.push af: push
0221D0: 62 63 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 37 29 bc...ld a,(iy+7)
0221E0: 3A 20 6C 64 20 62 2C 61 0D 0A 09 6C 64 20 61 2C : ld b,a...ld a,
0221F0: 28 69 79 2B 38 29 3A 20 6F 72 20 62 0D 0A 09 70 (iy+8): or b...p
022200: 35 3A 20 6A 70 20 7A 2C 6C 63 6C 6D 6E 75 0D 0A 5: jp z,lclmnu..
022210: 0D 0A 09 3B 74 69 6D 65 6F 75 74 20 2D 20 72 65 ...;timeout - re
022220: 6D 6F 76 65 64 20 66 72 6F 6D 20 70 72 6F 64 75 moved from produ
022230: 63 74 69 6F 6E 20 76 65 72 73 69 6F 6E 0D 0A 0D ction version...
022240: 0A 09 6C 64 20 68 6C 2C 74 6F 73 74 78 74 0D 0A ..ld hl,tostxt..
022250: 09 63 61 6C 6C 20 73 74 72 69 6E 67 0D 0A 0D 0A .call string....
022260: 2E 74 76 64 69 73 70 09 6C 64 20 68 6C 2C 26 30 .tvdisp.ld hl,&0
022270: 42 30 33 3A 20 63 61 6C 6C 20 26 42 42 37 35 0D B03: call &BB75.
022280: 0A 09 6C 64 20 6C 2C 28 69 79 2B 39 29 3A 20 6C ..ld l,(iy+9): l
022290: 64 20 68 2C 28 69 79 2B 31 30 29 3A 20 63 61 6C d h,(iy+10): cal
0222A0: 6C 20 70 72 5F 68 6C 09 3B 70 72 69 6E 74 20 74 l pr_hl.;print t
0222B0: 69 6D 65 2D 6F 75 74 0D 0A 09 6C 64 20 61 2C 33 ime-out...ld a,3
0222C0: 32 3A 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A 0D 2: call &BB5A...
0222D0: 0A 2E 74 76 77 61 69 74 09 63 61 6C 6C 20 26 42 ..tvwait.call &B
0222E0: 42 30 36 0D 0A 09 63 70 20 33 32 3A 20 6A 70 20 B06...cp 32: jp
0222F0: 7A 2C 72 73 6D 6E 75 3A 20 63 70 20 32 32 34 3A z,rsmnu: cp 224:
022300: 20 6A 70 20 7A 2C 72 73 6D 6E 75 3A 20 63 70 20 jp z,rsmnu: cp
022310: 26 46 43 3A 20 6A 70 20 7A 2C 72 73 6D 6E 75 0D &FC: jp z,rsmnu.
022320: 0A 09 6C 64 20 6C 2C 28 69 79 2B 39 29 3A 20 6C ..ld l,(iy+9): l
022330: 64 20 68 2C 28 69 79 2B 31 30 29 0D 0A 09 6C 64 d h,(iy+10)...ld
022340: 20 64 65 2C 32 35 0D 0A 09 63 70 20 32 34 30 3A de,25...cp 240:
022350: 20 6A 72 20 7A 2C 74 76 75 70 0D 0A 09 63 70 20 jr z,tvup...cp
022360: 32 34 31 3A 20 6A 72 20 6E 7A 2C 74 76 77 61 69 241: jr nz,tvwai
022370: 74 0D 0A 09 6C 64 20 61 2C 68 3A 20 63 70 20 64 t...ld a,h: cp d
022380: 3A 20 6A 72 20 6E 7A 2C 74 76 6E 30 0D 0A 09 6C : jr nz,tvn0...l
022390: 64 20 61 2C 6C 3A 20 63 70 20 65 3A 20 6A 72 20 d a,l: cp e: jr
0223A0: 7A 2C 74 76 77 61 69 74 0D 0A 2E 74 76 6E 30 09 z,tvwait...tvn0.
0223B0: 73 63 66 3A 20 63 63 66 3A 20 73 62 63 20 68 6C scf: ccf: sbc hl
0223C0: 2C 64 65 0D 0A 09 6C 64 20 28 69 79 2B 39 29 2C ,de...ld (iy+9),
0223D0: 6C 3A 20 6C 64 20 28 69 79 2B 31 30 29 2C 68 3A l: ld (iy+10),h:
0223E0: 20 6A 72 20 74 76 64 69 73 70 0D 0A 2E 74 76 75 jr tvdisp...tvu
0223F0: 70 09 61 64 64 20 68 6C 2C 64 65 3A 20 6C 64 20 p.add hl,de: ld
022400: 0D 0A 09 3B 2A 2A 2A 20 54 45 52 4D 49 4E 41 4C ...;*** TERMINAL
022410: 2E 4D 4F 44 20 2A 2A 2A 0D 0A 0D 0A 74 66 62 75 .MOD ***....tfbu
022420: 66 66 09 65 71 75 20 26 32 30 30 30 09 09 09 3B ff.equ &2000...;
022430: 74 65 72 6D 69 6E 61 6C 20 66 69 6C 65 20 62 75 terminal file bu
022440: 66 66 65 72 0D 0A 74 70 62 6C 6F 63 6B 09 65 71 ffer..tpblock.eq
022450: 75 20 26 33 30 30 30 09 09 09 3B 74 65 72 6D 69 u &3000...;termi
022460: 6E 61 6C 20 70 61 72 61 6D 65 74 65 72 20 62 6C nal parameter bl
022470: 6F 63 6B 0D 0A 6F 66 66 73 65 74 09 65 71 75 20 ock..offset.equ
022480: 26 33 46 46 45 09 09 09 3B 6F 66 66 73 65 74 20 &3FFE...;offset
022490: 73 74 6F 72 65 20 6C 6F 63 61 74 69 6F 6E 0D 0A store location..
0224A0: 63 68 61 70 6F 73 09 65 71 75 20 26 33 46 46 43 chapos.equ &3FFC
0224B0: 09 09 09 3B 63 68 61 72 61 63 74 65 72 20 70 6F ...;character po
0224C0: 73 69 74 69 6F 6E 20 73 74 6F 72 65 20 6C 6F 63 sition store loc
0224D0: 61 74 69 6F 6E 0D 0A 0D 0A 0D 0A 0D 0A 09 3B 3E ation.........;>
0224E0: 3E 3E 20 54 45 52 4D 78 78 20 63 6F 6D 6D 61 6E >> TERMxx comman
0224F0: 64 73 0D 0A 0D 0A 2E 74 6D 33 5F 69 09 63 61 6C ds.....tm3_i.cal
022500: 6C 20 72 65 73 65 74 3A 20 6C 64 20 68 6C 2C 33 l reset: ld hl,3
022510: 30 30 3A 20 6C 64 20 64 65 2C 33 30 30 3A 20 6A 00: ld de,300: j
022520: 70 20 74 65 72 6D 5F 78 0D 0A 2E 74 6D 37 35 5F p term_x...tm75_
022530: 69 09 63 61 6C 6C 20 72 65 73 65 74 3A 20 6C 64 i.call reset: ld
022540: 20 68 6C 2C 31 32 30 30 3A 20 6C 64 20 64 65 2C hl,1200: ld de,
022550: 37 35 3A 20 6A 70 20 74 65 72 6D 5F 78 0D 0A 2E 75: jp term_x...
022560: 74 6D 31 32 5F 69 09 63 61 6C 6C 20 72 65 73 65 tm12_i.call rese
022570: 74 3A 20 6C 64 20 68 6C 2C 31 32 30 30 3A 20 6C t: ld hl,1200: l
022580: 64 20 64 65 2C 31 32 30 30 3A 20 6A 70 20 74 65 d de,1200: jp te
022590: 72 6D 5F 78 0D 0A 2E 74 6D 32 34 5F 69 09 6A 70 rm_x...tm24_i.jp
0225A0: 20 74 65 72 6D 5F 69 0D 0A 2E 74 6D 34 38 5F 69 term_i...tm48_i
0225B0: 09 63 61 6C 6C 20 72 65 73 65 74 3A 20 6C 64 20 .call reset: ld
0225C0: 68 6C 2C 34 38 30 30 3A 20 6C 64 20 64 65 2C 34 hl,4800: ld de,4
0225D0: 38 30 30 3A 20 6A 70 20 74 65 72 6D 5F 78 0D 0A 800: jp term_x..
0225E0: 0D 0A 09 3B 3E 3E 3E 20 54 45 52 4D 49 4E 41 4C ...;>>> TERMINAL
0225F0: 20 63 6F 6D 6D 61 6E 64 0D 0A 0D 0A 2E 74 65 72 command.....ter
022600: 28 69 79 2B 39 29 2C 6C 3A 20 6C 64 20 28 69 79 (iy+9),l: ld (iy
022610: 2B 31 30 29 2C 68 3A 20 6A 72 20 74 76 64 69 73 +10),h: jr tvdis
022620: 70 0D 0A 0D 0A 69 66 20 6B 64 73 3A 09 65 6C 73 p....if kds:.els
022630: 65 0D 0A 2E 68 68 73 6D 6E 75 09 6C 64 20 68 6C e...hhsmnu.ld hl
022640: 2C 74 6D 68 73 68 6B 3A 20 63 61 6C 6C 20 6D 65 ,tmhshk: call me
022650: 6E 75 3A 20 6A 70 20 7A 2C 72 73 6D 6E 75 0D 0A nu: jp z,rsmnu..
022660: 09 64 65 63 20 61 3A 20 63 61 6C 6C 20 68 77 6F .dec a: call hwo
022670: 6B 3A 20 6A 70 20 72 73 6D 6E 75 3A 20 65 6E 64 k: jp rsmnu: end
022680: 69 66 0D 0A 0D 0A 2E 78 6F 6E 6D 6E 75 09 6C 64 if.....xonmnu.ld
022690: 20 68 6C 2C 74 6D 78 6F 6E 3A 20 63 61 6C 6C 20 hl,tmxon: call
0226A0: 6D 65 6E 75 3A 20 6A 70 20 7A 2C 72 73 6D 6E 75 menu: jp z,rsmnu
0226B0: 0D 0A 09 64 65 63 20 61 3A 20 78 6F 72 20 31 3A ...dec a: xor 1:
0226C0: 20 6C 64 20 28 69 79 2B 34 29 2C 61 3A 20 6A 70 ld (iy+4),a: jp
0226D0: 20 72 73 6D 6E 75 09 3B 58 4F 4E 20 63 6F 6E 74 rsmnu.;XON cont
0226E0: 72 6F 6C 0D 0A 0D 0A 2E 6C 63 6C 6D 6E 75 09 6C rol.....lclmnu.l
0226F0: 64 20 68 6C 2C 74 6D 6C 6F 63 6C 3A 20 63 61 6C d hl,tmlocl: cal
022700: 6C 20 6D 65 6E 75 3A 20 6A 70 20 7A 2C 72 73 6D l menu: jp z,rsm
022710: 6E 75 0D 0A 09 64 65 63 20 61 3A 20 78 6F 72 20 nu...dec a: xor
022720: 31 3A 20 6C 64 20 28 69 79 2B 31 29 2C 61 3A 20 1: ld (iy+1),a:
022730: 6A 70 20 72 73 6D 6E 75 09 3B 4C 6F 63 61 6C 20 jp rsmnu.;Local
022740: 65 63 68 6F 0D 0A 0D 0A 2E 62 70 73 6D 6E 75 09 echo.....bpsmnu.
022750: 6C 64 20 68 6C 2C 74 6D 62 61 75 64 3A 20 63 61 ld hl,tmbaud: ca
022760: 6C 6C 20 6D 65 6E 75 3A 20 6A 70 20 7A 2C 72 73 ll menu: jp z,rs
022770: 6D 6E 75 0D 0A 09 6C 64 20 62 2C 61 3A 20 6C 64 mnu...ld b,a: ld
022780: 20 69 78 2C 74 62 73 65 74 73 0D 0A 2E 62 70 73 ix,tbsets...bps
022790: 67 76 6C 09 6C 64 20 6C 2C 28 69 78 29 3A 20 6C gvl.ld l,(ix): l
0227A0: 64 20 68 2C 28 69 78 2B 31 29 3A 20 6C 64 20 65 d h,(ix+1): ld e
0227B0: 2C 28 69 78 2B 32 29 3A 20 6C 64 20 64 2C 28 69 ,(ix+2): ld d,(i
0227C0: 78 2B 33 29 0D 0A 09 69 6E 63 20 69 78 3A 20 69 x+3)...inc ix: i
0227D0: 6E 63 20 69 78 3A 20 69 6E 63 20 69 78 3A 20 69 nc ix: inc ix: i
0227E0: 6E 63 20 69 78 3A 20 64 6A 6E 7A 20 62 70 73 67 nc ix: djnz bpsg
0227F0: 76 6C 0D 0A 09 6C 64 20 61 2C 32 3A 20 63 61 6C vl...ld a,2: cal
022800: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
022810: 1D 00 01 00 02 09 4E E5 1D 00 C7 02 00 00 00 02 ......N.........
022820: 1D 00 C3 02 00 00 00 02 1D 00 C8 02 00 00 00 02 ................
022830: 1D 00 C4 02 00 00 00 02 1D 00 C9 02 00 00 00 02 ................
022840: 1D 00 C5 02 00 00 00 02 1D 00 C1 02 00 00 00 02 ................
022850: 1D 00 C6 02 00 00 00 02 1D 00 C2 02 00 00 00 02 ................
022860: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
022870: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
022880: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
022890: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0228A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0228B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0228C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0228D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0228E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0228F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
022900: 6C 3A 20 61 64 64 20 68 6C 2C 68 6C 0D 0A 09 61 l: add hl,hl...a
022910: 64 64 20 68 6C 2C 68 6C 3A 20 61 64 64 20 68 6C dd hl,hl: add hl
022920: 2C 68 6C 3A 20 61 64 64 20 68 6C 2C 68 6C 0D 0A ,hl: add hl,hl..
022930: 09 6C 64 20 64 65 2C 74 70 62 6C 6F 63 6B 3A 20 .ld de,tpblock:
022940: 61 64 64 20 68 6C 2C 64 65 09 3B 48 4C 20 3D 20 add hl,de.;HL =
022950: 62 61 73 65 20 61 64 64 72 65 73 73 20 6F 66 20 base address of
022960: 65 6E 74 72 79 0D 0A 09 70 75 73 68 20 68 6C 0D entry...push hl.
022970: 0A 09 6C 64 20 63 2C 32 36 3A 20 63 61 6C 6C 20 ..ld c,26: call
022980: 65 64 69 74 6C 6E 0D 0A 09 6C 64 20 61 2C 33 35 editln...ld a,35
022990: 3A 20 63 61 6C 6C 20 26 42 42 36 46 0D 0A 09 70 : call &BB6F...p
0229A0: 6F 70 20 68 6C 3A 20 6C 64 20 64 65 2C 32 36 0D op hl: ld de,26.
0229B0: 0A 09 61 64 64 20 68 6C 2C 64 65 3A 20 70 75 73 ..add hl,de: pus
0229C0: 68 20 68 6C 09 09 3B 48 4C 20 3D 20 61 64 64 72 h hl..;HL = addr
0229D0: 65 73 73 20 6F 66 20 65 6E 74 72 79 20 74 79 70 ess of entry typ
0229E0: 65 0D 0A 09 69 6E 63 20 68 6C 0D 0A 09 6C 64 20 e...inc hl...ld
0229F0: 61 2C 28 74 70 62 6C 6F 63 6B 2B 35 31 32 29 3A a,(tpblock+512):
022A00: 20 63 70 20 31 37 0D 0A 09 6A 72 20 7A 2C 6E 6F cp 17...jr z,no
022A10: 5F 61 75 74 09 09 09 3B 69 66 20 6D 61 63 72 6F _aut...;if macro
022A20: 2C 20 6E 6F 20 73 65 63 6F 6E 64 61 72 79 20 65 , no secondary e
022A30: 6E 74 72 79 0D 0A 09 6C 64 20 63 2C 35 3A 20 63 ntry...ld c,5: c
022A40: 61 6C 6C 20 65 64 69 74 6C 6E 09 09 3B 65 64 69 all editln..;edi
022A50: 74 20 73 65 63 6F 6E 64 61 72 79 20 65 6E 74 72 t secondary entr
022A60: 79 0D 0A 09 6C 64 20 61 2C 62 3A 20 6F 72 20 61 y...ld a,b: or a
022A70: 3A 20 6A 72 20 6E 7A 2C 6E 6F 74 61 75 74 0D 0A : jr nz,notaut..
022A80: 09 3B 6C 64 20 61 2C 33 35 3A 20 3B 63 61 6C 6C .;ld a,35: ;call
022A90: 20 26 42 42 36 46 0D 0A 09 3B 6C 64 20 68 6C 2C &BB6F...;ld hl,
022AA0: 61 74 6F 74 78 74 3A 20 3B 63 61 6C 6C 20 73 74 atotxt: ;call st
022AB0: 72 69 6E 67 09 3B 70 72 69 6E 74 20 22 61 75 74 ring.;print "aut
022AC0: 6F 22 20 69 66 20 6E 6F 20 74 65 78 74 20 65 6E o" if no text en
022AD0: 74 65 72 65 64 0D 0A 09 3B 6C 64 20 61 2C 31 3A tered...;ld a,1:
022AE0: 20 3B 6A 72 20 70 75 74 61 75 74 09 09 3B 73 65 ;jr putaut..;se
022AF0: 63 6F 6E 64 61 72 79 20 65 6E 74 72 79 20 31 20 condary entry 1
022B00: 20 66 69 6E 69 73 68 65 64 20 64 69 73 70 6C 61 finished displa
022B10: 79 0D 0A 0D 0A 09 6C 64 20 68 6C 2C 26 30 33 31 y.....ld hl,&031
022B20: 31 3A 20 63 61 6C 6C 20 26 42 42 37 35 09 09 3B 1: call &BB75..;
022B30: 63 6F 6C 75 6D 6E 20 33 2C 20 72 6F 77 20 31 37 column 3, row 17
022B40: 0D 0A 09 6C 64 20 61 2C 22 4D 22 3A 20 63 61 6C ...ld a,"M": cal
022B50: 6C 20 26 42 42 35 41 09 09 3B 22 4D 22 20 28 6D l &BB5A..;"M" (m
022B60: 61 63 72 6F 29 0D 0A 09 6C 64 20 61 2C 33 32 3A acro)...ld a,32:
022B70: 20 63 61 6C 6C 20 26 42 42 35 41 3A 20 63 61 6C call &BB5A: cal
022B80: 6C 20 26 42 42 35 41 09 3B 74 77 6F 20 73 70 61 l &BB5A.;two spa
022B90: 63 65 73 0D 0A 09 6C 64 20 61 2C 33 3A 20 63 61 ces...ld a,3: ca
022BA0: 6C 6C 20 26 42 42 39 30 09 09 3B 50 45 4E 20 33 ll &BB90..;PEN 3
022BB0: 0D 0A 09 70 75 73 68 20 69 78 3A 20 70 6F 70 20 ...push ix: pop
022BC0: 68 6C 0D 0A 09 6C 64 20 62 2C 32 36 3A 20 63 61 hl...ld b,26: ca
022BD0: 6C 6C 20 73 74 72 6E 67 32 09 09 3B 64 69 61 6C ll strng2..;dial
022BE0: 6C 69 6E 67 20 73 74 72 69 6E 67 20 66 6F 72 20 ling string for
022BF0: 6D 61 63 72 6F 0D 0A 0D 0A 09 6C 64 20 68 6C 2C macro.....ld hl,
022C00: 73 76 64 74 78 74 3A 20 63 61 6C 6C 20 73 74 72 svdtxt: call str
022C10: 69 6E 67 09 3B 22 53 61 76 65 20 64 69 72 65 63 ing.;"Save direc
022C20: 74 6F 72 79 22 0D 0A 0D 0A 09 6C 64 20 61 2C 33 tory".....ld a,3
022C30: 3A 20 63 61 6C 6C 20 26 42 42 39 30 0D 0A 09 6C : call &BB90...l
022C40: 64 20 68 6C 2C 26 30 31 30 31 0D 0A 2E 64 69 72 d hl,&0101...dir
022C50: 63 6C 70 09 70 75 73 68 20 68 6C 3A 20 63 61 6C clp.push hl: cal
022C60: 6C 20 26 42 42 37 35 3A 20 70 6F 70 20 68 6C 0D l &BB75: pop hl.
022C70: 0A 09 6C 64 20 61 2C 32 34 36 3A 20 63 61 6C 6C ..ld a,246: call
022C80: 20 26 42 42 35 41 0D 0A 09 63 61 6C 6C 20 26 42 &BB5A...call &B
022C90: 42 30 36 0D 0A 09 70 75 73 68 20 61 66 3A 20 70 B06...push af: p
022CA0: 75 73 68 20 68 6C 3A 20 63 61 6C 6C 20 26 42 42 ush hl: call &BB
022CB0: 37 35 0D 0A 09 6C 64 20 61 2C 33 32 3A 20 63 61 75...ld a,32: ca
022CC0: 6C 6C 20 26 42 42 35 41 3A 20 70 6F 70 20 68 6C ll &BB5A: pop hl
022CD0: 3A 20 70 6F 70 20 61 66 0D 0A 09 63 70 20 26 46 : pop af...cp &F
022CE0: 43 3A 20 6A 70 20 7A 2C 64 69 72 6D 6E 75 0D 0A C: jp z,dirmnu..
022CF0: 09 63 70 20 32 34 30 3A 20 6A 72 20 7A 2C 64 69 .cp 240: jr z,di
022D00: 28 61 75 74 6F 64 69 61 6C 29 0D 0A 2E 6E 6F 74 (autodial)...not
022D10: 61 75 74 09 6C 64 20 61 2C 30 3A 20 6A 72 20 70 aut.ld a,0: jr p
022D20: 75 74 61 75 74 09 09 3B 73 65 63 6F 6E 64 61 72 utaut..;secondar
022D30: 79 20 65 6E 74 72 79 20 30 20 28 6E 6F 74 20 61 y entry 0 (not a
022D40: 75 74 6F 64 69 61 6C 29 0D 0A 2E 6E 6F 5F 61 75 utodial)...no_au
022D50: 74 09 70 6F 70 20 68 6C 3A 20 70 75 73 68 20 68 t.pop hl: push h
022D60: 6C 3A 20 6C 64 20 28 68 6C 29 2C 30 09 3B 6E 6F l: ld (hl),0.;no
022D70: 20 73 65 63 6F 6E 64 61 72 79 20 65 6E 74 72 79 secondary entry
022D80: 20 28 6D 61 63 72 6F 29 0D 0A 09 69 6E 63 20 68 (macro)...inc h
022D90: 6C 3A 20 6C 64 20 28 68 6C 29 2C 30 0D 0A 09 69 l: ld (hl),0...i
022DA0: 6E 63 20 68 6C 3A 20 6C 64 20 28 68 6C 29 2C 30 nc hl: ld (hl),0
022DB0: 0D 0A 09 69 6E 63 20 68 6C 3A 20 6C 64 20 28 68 ...inc hl: ld (h
022DC0: 6C 29 2C 30 0D 0A 09 69 6E 63 20 68 6C 3A 20 6C l),0...inc hl: l
022DD0: 64 20 28 68 6C 29 2C 30 0D 0A 09 69 6E 63 20 68 d (hl),0...inc h
022DE0: 6C 3A 20 6C 64 20 28 68 6C 29 2C 30 0D 0A 2E 70 l: ld (hl),0...p
022DF0: 75 74 61 75 74 20 70 6F 70 20 68 6C 3A 20 6C 64 utaut pop hl: ld
022E00: 20 28 68 6C 29 2C 61 0D 0A 09 70 6F 70 20 68 6C (hl),a...pop hl
022E10: 3A 20 6A 70 20 64 69 72 63 6C 70 0D 0A 0D 0A 0D : jp dirclp.....
022E20: 0A 0D 0A 0D 0A 2E 64 69 72 64 69 61 09 09 09 09 ......dirdia....
022E30: 09 3B 64 69 72 65 63 74 20 64 69 61 6C 0D 0A 0D .;direct dial...
022E40: 0A 0D 0A 0D 0A 2E 64 73 63 6D 6E 75 09 6C 64 20 ......dscmnu.ld
022E50: 68 6C 2C 74 6D 64 69 73 63 3A 20 63 61 6C 6C 20 hl,tmdisc: call
022E60: 6D 65 6E 75 3A 20 6A 70 20 7A 2C 6D 61 69 6E 6D menu: jp z,mainm
022E70: 0D 0A 09 63 70 20 31 3A 20 6A 70 20 7A 2C 63 61 ...cp 1: jp z,ca
022E80: 74 64 73 63 0D 0A 09 63 70 20 32 3A 20 6A 70 20 tdsc...cp 2: jp
022E90: 7A 2C 64 72 69 76 65 61 0D 0A 09 63 70 20 33 3A z,drivea...cp 3:
022EA0: 20 6A 70 20 7A 2C 64 72 69 76 65 62 0D 0A 09 63 jp z,driveb...c
022EB0: 70 20 34 3A 20 6A 70 20 7A 2C 65 72 61 73 65 0D p 4: jp z,erase.
022EC0: 0A 09 63 70 20 35 3A 20 6A 70 20 7A 2C 72 65 6E ..cp 5: jp z,ren
022ED0: 61 6D 65 0D 0A 09 63 70 20 36 3A 20 6A 70 20 7A ame...cp 6: jp z
022EE0: 2C 75 73 65 72 0D 0A 0D 0A 09 6C 64 20 68 6C 2C ,user.....ld hl,
022EF0: 74 79 70 74 78 74 3A 20 63 61 6C 6C 20 73 74 72 typtxt: call str
022F00: 72 5F 75 70 0D 0A 09 63 70 20 32 34 31 3A 20 6A r_up...cp 241: j
022F10: 72 20 7A 2C 64 69 72 5F 64 6E 0D 0A 09 63 70 20 r z,dir_dn...cp
022F20: 32 32 34 3A 20 6A 70 20 7A 2C 64 69 72 5F 64 6C 224: jp z,dir_dl
022F30: 0D 0A 09 63 70 20 33 32 3A 20 20 6A 70 20 7A 2C ...cp 32: jp z,
022F40: 64 69 72 5F 64 6C 0D 0A 09 63 70 20 32 34 33 3A dir_dl...cp 243:
022F50: 20 6A 70 20 7A 2C 64 69 72 5F 65 64 0D 0A 09 6A jp z,dir_ed...j
022F60: 72 20 64 69 72 63 6C 70 0D 0A 0D 0A 2E 64 69 72 r dirclp.....dir
022F70: 5F 75 70 09 6C 64 20 61 2C 6C 3A 20 63 70 20 31 _up.ld a,l: cp 1
022F80: 3A 20 6A 72 20 7A 2C 64 69 72 63 6C 70 0D 0A 09 : jr z,dirclp...
022F90: 64 65 63 20 6C 3A 20 63 70 20 31 37 3A 20 6A 72 dec l: cp 17: jr
022FA0: 20 7A 2C 64 65 63 61 67 6E 0D 0A 09 63 70 20 31 z,decagn...cp 1
022FB0: 39 3A 20 6A 72 20 7A 2C 64 65 63 61 67 6E 0D 0A 9: jr z,decagn..
022FC0: 09 6A 72 20 64 69 72 63 6C 70 0D 0A 2E 64 65 63 .jr dirclp...dec
022FD0: 61 67 6E 09 64 65 63 20 6C 3A 20 6A 72 20 64 69 agn.dec l: jr di
022FE0: 72 63 6C 70 0D 0A 0D 0A 2E 64 69 72 5F 64 6E 09 rclp.....dir_dn.
022FF0: 6C 64 20 61 2C 6C 3A 20 63 70 20 31 39 3A 20 6A ld a,l: cp 19: j
023000: 72 20 7A 2C 64 69 72 63 6C 70 0D 0A 09 69 6E 63 r z,dirclp...inc
023010: 20 6C 3A 20 63 70 20 31 35 3A 20 6A 72 20 7A 2C l: cp 15: jr z,
023020: 69 6E 63 61 67 6E 0D 0A 09 63 70 20 31 37 3A 20 incagn...cp 17:
023030: 6A 72 20 7A 2C 69 6E 63 61 67 6E 0D 0A 09 6A 72 jr z,incagn...jr
023040: 20 64 69 72 63 6C 70 0D 0A 2E 69 6E 63 61 67 6E dirclp...incagn
023050: 09 69 6E 63 20 6C 3A 20 6A 72 20 64 69 72 63 6C .inc l: jr dircl
023060: 70 0D 0A 0D 0A 2E 64 69 72 5F 64 6C 09 6C 64 20 p.....dir_dl.ld
023070: 61 2C 6C 09 09 09 09 3B 64 69 61 6C 20 6E 75 6D a,l....;dial num
023080: 62 65 72 0D 0A 09 63 70 20 31 37 3A 20 6A 72 20 ber...cp 17: jr
023090: 7A 2C 64 69 72 63 6C 70 0D 0A 09 63 70 20 31 39 z,dirclp...cp 19
0230A0: 3A 20 6A 72 20 7A 2C 64 69 72 5F 73 76 0D 0A 0D : jr z,dir_sv...
0230B0: 0A 09 64 65 63 20 6C 3A 20 6C 64 20 68 2C 30 3A ..dec l: ld h,0:
0230C0: 20 61 64 64 20 68 6C 2C 68 6C 3A 20 61 64 64 20 add hl,hl: add
0230D0: 68 6C 2C 68 6C 0D 0A 09 61 64 64 20 68 6C 2C 68 hl,hl...add hl,h
0230E0: 6C 3A 20 61 64 64 20 68 6C 2C 68 6C 3A 20 61 64 l: add hl,hl: ad
0230F0: 64 20 68 6C 2C 68 6C 0D 0A 09 6C 64 20 64 65 2C d hl,hl...ld de,
023100: 69 6E 67 0D 0A 09 6C 64 20 68 6C 2C 26 30 42 30 ing...ld hl,&0B0
023110: 33 3A 20 63 61 6C 6C 20 26 42 42 37 35 0D 0A 09 3: call &BB75...
023120: 6C 64 20 68 6C 2C 74 70 62 6C 6F 63 6B 2B 35 3A ld hl,tpblock+5:
023130: 20 63 61 6C 6C 20 69 6E 70 75 74 66 3A 20 6A 70 call inputf: jp
023140: 20 7A 2C 64 73 63 6D 6E 75 0D 0A 09 6C 64 20 61 z,dscmnu...ld a
023150: 2C 62 3A 20 6F 72 20 61 3A 20 6A 70 20 7A 2C 64 ,b: or a: jp z,d
023160: 73 63 6D 6E 75 0D 0A 09 6C 64 20 28 74 70 62 6C scmnu...ld (tpbl
023170: 6F 63 6B 2B 32 29 2C 61 3A 20 6C 64 20 28 74 70 ock+2),a: ld (tp
023180: 62 6C 6F 63 6B 2B 33 29 2C 68 6C 0D 0A 09 6C 64 block+3),hl...ld
023190: 20 61 2C 32 3A 20 63 61 6C 6C 20 26 42 43 30 45 a,2: call &BC0E
0231A0: 3A 20 63 61 6C 6C 20 26 42 43 30 32 0D 0A 09 6C : call &BC02...l
0231B0: 64 20 69 78 2C 74 70 62 6C 6F 63 6B 3A 20 6C 64 d ix,tpblock: ld
0231C0: 20 68 6C 2C 74 70 62 6C 6F 63 6B 2B 32 0D 0A 09 hl,tpblock+2...
0231D0: 6C 64 20 28 69 78 29 2C 6C 3A 20 6C 64 20 28 69 ld (ix),l: ld (i
0231E0: 78 2B 31 29 2C 68 0D 0A 09 6C 64 20 61 2C 31 3A x+1),h...ld a,1:
0231F0: 20 63 61 6C 6C 20 74 79 70 65 5F 69 0D 0A 09 6C call type_i...l
023200: 64 20 68 6C 2C 6B 65 79 74 78 74 3A 20 63 61 6C d hl,keytxt: cal
023210: 6C 20 73 74 72 69 6E 67 0D 0A 09 63 61 6C 6C 20 l string...call
023220: 26 42 42 38 31 3A 20 63 61 6C 6C 20 26 42 42 31 &BB81: call &BB1
023230: 38 3A 20 63 61 6C 6C 20 26 42 42 38 34 0D 0A 09 8: call &BB84...
023240: 6A 70 20 6D 73 65 74 75 70 0D 0A 0D 0A 2E 75 73 jp msetup.....us
023250: 65 72 09 6C 64 20 68 6C 2C 75 73 74 78 74 3A 20 er.ld hl,ustxt:
023260: 63 61 6C 6C 20 73 74 72 69 6E 67 0D 0A 0D 0A 09 call string.....
023270: 6C 64 20 65 2C 30 0D 0A 2E 75 73 64 69 73 70 09 ld e,0...usdisp.
023280: 6C 64 20 68 6C 2C 26 30 42 30 33 3A 20 63 61 6C ld hl,&0B03: cal
023290: 6C 20 26 42 42 37 35 0D 0A 09 6C 64 20 61 2C 65 l &BB75...ld a,e
0232A0: 3A 20 63 61 6C 6C 20 70 72 5F 64 65 63 0D 0A 09 : call pr_dec...
0232B0: 6C 64 20 61 2C 33 32 3A 20 63 61 6C 6C 20 26 42 ld a,32: call &B
0232C0: 42 35 41 0D 0A 2E 75 73 77 61 69 74 09 63 61 6C B5A...uswait.cal
0232D0: 6C 20 26 42 42 30 36 0D 0A 09 63 70 20 33 32 3A l &BB06...cp 32:
0232E0: 20 6A 72 20 7A 2C 65 78 69 74 75 73 3A 20 63 70 jr z,exitus: cp
0232F0: 20 32 32 34 3A 20 6A 72 20 7A 2C 65 78 69 74 75 224: jr z,exitu
023300: 74 70 62 6C 6F 63 6B 3A 20 61 64 64 20 68 6C 2C tpblock: add hl,
023310: 64 65 09 3B 48 4C 20 3D 20 62 61 73 65 20 61 64 de.;HL = base ad
023320: 64 72 65 73 73 20 6F 66 20 65 6E 74 72 79 0D 0A dress of entry..
023330: 0D 0A 09 70 75 73 68 20 68 6C 3A 20 70 6F 70 20 ...push hl: pop
023340: 69 78 0D 0A 09 6C 64 20 61 2C 28 69 78 2B 32 36 ix...ld a,(ix+26
023350: 29 3A 20 63 70 20 31 0D 0A 09 6A 72 20 7A 2C 64 ): cp 1...jr z,d
023360: 69 72 5F 61 75 0D 0A 0D 0A 09 6C 64 20 64 65 2C ir_au.....ld de,
023370: 32 37 3A 20 61 64 64 20 68 6C 2C 64 65 0D 0A 09 27: add hl,de...
023380: 6C 64 20 62 2C 35 3A 20 63 61 6C 6C 20 64 69 72 ld b,5: call dir
023390: 5F 74 73 09 09 3B 73 65 6E 64 20 66 69 72 73 74 _ts..;send first
0233A0: 20 70 61 72 74 20 6F 66 20 65 6E 74 72 79 0D 0A part of entry..
0233B0: 09 70 75 73 68 20 69 78 3A 20 70 6F 70 20 68 6C .push ix: pop hl
0233C0: 0D 0A 09 6C 64 20 62 2C 32 36 3A 20 63 61 6C 6C ...ld b,26: call
0233D0: 20 64 69 72 5F 74 73 09 09 3B 73 65 6E 64 20 6D dir_ts..;send m
0233E0: 61 69 6E 20 70 61 72 74 0D 0A 09 6C 64 20 61 2C ain part...ld a,
0233F0: 31 33 3A 20 63 61 6C 6C 20 73 65 6E 64 62 74 09 13: call sendbt.
023400: 09 3B 43 52 0D 0A 09 6A 70 20 71 75 63 6F 6D 0D .;CR...jp qucom.
023410: 0A 0D 0A 2E 64 69 72 5F 74 73 09 6C 64 20 61 2C ....dir_ts.ld a,
023420: 28 68 6C 29 3A 20 6F 72 20 61 3A 20 72 65 74 20 (hl): or a: ret
023430: 7A 09 09 3B 74 72 61 6E 73 6D 69 74 20 73 74 72 z..;transmit str
023440: 69 6E 67 20 66 72 6F 6D 20 48 4C 2C 20 6D 61 78 ing from HL, max
023450: 2E 6C 65 6E 2E 20 42 0D 0A 09 63 70 20 22 4D 22 .len. B...cp "M"
023460: 3A 20 6A 72 20 7A 2C 6D 61 63 72 6F 0D 0A 09 70 : jr z,macro...p
023470: 75 73 68 20 62 63 3A 20 63 61 6C 6C 20 73 65 6E ush bc: call sen
023480: 64 62 74 3A 20 70 6F 70 20 62 63 0D 0A 2E 61 70 dbt: pop bc...ap
023490: 5F 64 74 73 09 69 6E 63 20 68 6C 3A 20 64 6A 6E _dts.inc hl: djn
0234A0: 7A 20 64 69 72 5F 74 73 0D 0A 09 72 65 74 0D 0A z dir_ts...ret..
0234B0: 0D 0A 2E 6D 61 63 72 6F 09 70 75 73 68 20 68 6C ...macro.push hl
0234C0: 3A 20 70 75 73 68 20 62 63 09 09 3B 6D 61 63 72 : push bc..;macr
0234D0: 6F 20 68 61 6E 64 6C 65 72 0D 0A 09 6C 64 20 68 o handler...ld h
0234E0: 6C 2C 74 70 62 6C 6F 63 6B 2B 26 31 45 30 0D 0A l,tpblock+&1E0..
0234F0: 2E 6D 61 63 6C 70 09 6C 64 20 61 2C 28 68 6C 29 .maclp.ld a,(hl)
023500: 37 44 0D 0A 09 6C 64 20 68 6C 2C 74 70 62 6C 6F 7D...ld hl,tpblo
023510: 63 6B 2B 35 31 33 3A 20 6C 64 20 62 2C 31 32 0D ck+513: ld b,12.
023520: 0A 09 6C 64 20 64 65 2C 74 66 62 75 66 66 3A 20 ..ld de,tfbuff:
023530: 63 61 6C 6C 20 26 42 43 37 37 09 3B 74 72 79 20 call &BC77.;try
023540: 74 6F 20 6F 70 65 6E 20 66 69 6C 65 20 66 6F 72 to open file for
023550: 20 69 6E 70 75 74 0D 0A 09 6A 72 20 63 2C 64 6F input...jr c,do
023560: 70 5F 6F 6B 0D 0A 0D 0A 09 63 61 6C 6C 20 26 42 p_ok.....call &B
023570: 43 37 44 0D 0A 09 6C 64 20 68 6C 2C 74 70 62 6C C7D...ld hl,tpbl
023580: 6F 63 6B 3A 20 6C 64 20 64 65 2C 74 70 62 6C 6F ock: ld de,tpblo
023590: 63 6B 2B 31 0D 0A 09 6C 64 20 28 68 6C 29 2C 30 ck+1...ld (hl),0
0235A0: 3A 20 6C 64 20 62 63 2C 35 31 32 3A 20 6C 64 69 : ld bc,512: ldi
0235B0: 72 09 3B 63 6C 65 61 72 20 62 75 66 66 65 72 0D r.;clear buffer.
0235C0: 0A 09 6A 72 20 64 69 73 70 64 72 0D 0A 0D 0A 2E ..jr dispdr.....
0235D0: 64 6F 70 5F 6F 6B 09 6C 64 20 68 6C 2C 74 70 62 dop_ok.ld hl,tpb
0235E0: 6C 6F 63 6B 3A 20 63 61 6C 6C 20 26 42 43 38 33 lock: call &BC83
0235F0: 09 3B 72 65 61 64 20 66 69 6C 65 20 69 6E 0D 0A .;read file in..
023600: 09 63 61 6C 6C 20 26 42 43 37 41 09 09 09 3B 63 .call &BC7A...;c
023610: 6C 6F 73 65 20 66 69 6C 65 0D 0A 0D 0A 2E 64 69 lose file.....di
023620: 73 70 64 72 09 63 61 6C 6C 20 26 42 42 36 43 0D spdr.call &BB6C.
023630: 0A 09 6C 64 20 61 2C 31 3A 20 63 61 6C 6C 20 26 ..ld a,1: call &
023640: 42 42 39 30 09 09 3B 50 45 4E 20 31 0D 0A 09 6C BB90..;PEN 1...l
023650: 64 20 6C 2C 31 3A 20 6C 64 20 69 78 2C 74 70 62 d l,1: ld ix,tpb
023660: 6C 6F 63 6B 0D 0A 2E 64 64 6C 6F 6F 70 09 70 75 lock...ddloop.pu
023670: 73 68 20 68 6C 0D 0A 09 6C 64 20 68 2C 33 3A 20 sh hl...ld h,3:
023680: 63 61 6C 6C 20 26 42 42 37 35 09 09 3B 63 6F 6C call &BB75..;col
023690: 75 6D 6E 20 33 2C 20 61 70 70 72 6F 70 72 69 61 umn 3, appropria
0236A0: 74 65 20 72 6F 77 0D 0A 09 70 6F 70 20 68 6C 3A te row...pop hl:
0236B0: 20 70 75 73 68 20 68 6C 0D 0A 09 6C 64 20 61 2C push hl...ld a,
0236C0: 6C 3A 20 61 64 64 20 34 38 0D 0A 09 63 70 20 22 l: add 48...cp "
0236D0: 39 22 2B 31 3A 20 6A 72 20 63 2C 64 64 68 6E 6F 9"+1: jr c,ddhno
0236E0: 6B 0D 0A 09 61 64 64 20 37 09 09 09 09 3B 41 2D k...add 7....;A-
0236F0: 46 3F 0D 0A 2E 64 64 68 6E 6F 6B 09 63 61 6C 6C F?...ddhnok.call
023700: 3A 20 6F 72 20 61 3A 20 6A 72 20 7A 2C 65 78 6D : or a: jr z,exm
023710: 61 63 0D 0A 09 63 61 6C 6C 20 73 65 6E 64 62 74 ac...call sendbt
023720: 3A 20 69 6E 63 20 68 6C 0D 0A 09 6A 72 20 6D 61 : inc hl...jr ma
023730: 63 6C 70 0D 0A 2E 65 78 6D 61 63 09 70 6F 70 20 clp...exmac.pop
023740: 62 63 3A 20 70 6F 70 20 68 6C 3A 20 6A 72 20 61 bc: pop hl: jr a
023750: 70 5F 64 74 73 0D 0A 0D 0A 2E 64 69 72 5F 61 75 p_dts.....dir_au
023760: 09 72 65 74 09 09 09 09 3B 2A 2A 2A 2A 2A 2A 2A .ret....;*******
023770: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 0D 0A **************..
023780: 0D 0A 2E 64 69 72 5F 73 76 09 6C 64 20 68 6C 2C ...dir_sv.ld hl,
023790: 74 70 62 6C 6F 63 6B 2B 35 31 33 3A 20 6C 64 20 tpblock+513: ld
0237A0: 62 2C 31 32 0D 0A 09 6C 64 20 64 65 2C 74 66 62 b,12...ld de,tfb
0237B0: 75 66 66 3A 20 63 61 6C 6C 20 26 42 43 38 43 0D uff: call &BC8C.
0237C0: 0A 09 6C 64 20 68 6C 2C 74 70 62 6C 6F 63 6B 3A ..ld hl,tpblock:
0237D0: 20 6C 64 20 64 65 2C 35 31 32 0D 0A 09 6C 64 20 ld de,512...ld
0237E0: 62 63 2C 74 70 62 6C 6F 63 6B 3A 20 6C 64 20 61 bc,tpblock: ld a
0237F0: 2C 32 0D 0A 09 63 61 6C 6C 20 26 42 43 39 38 3A ,2...call &BC98:
023800: 20 63 61 6C 6C 20 26 42 43 38 46 0D 0A 09 6A 70 call &BC8F...jp
023810: 20 64 69 73 70 64 72 0D 0A 0D 0A 2E 64 69 72 5F dispdr.....dir_
023820: 65 64 09 70 75 73 68 20 68 6C 0D 0A 09 6C 64 20 ed.push hl...ld
023830: 61 2C 6C 3A 20 6C 64 20 28 74 70 62 6C 6F 63 6B a,l: ld (tpblock
023840: 2B 35 31 32 29 2C 61 0D 0A 09 6C 64 20 68 2C 35 +512),a...ld h,5
023850: 3A 20 63 61 6C 6C 20 26 42 42 37 35 0D 0A 09 6C : call &BB75...l
023860: 64 20 61 2C 31 38 3A 20 63 61 6C 6C 20 26 42 42 d a,18: call &BB
023870: 35 41 09 09 3B 63 6C 65 61 72 20 72 65 73 74 20 5A..;clear rest
023880: 6F 66 20 6C 69 6E 65 0D 0A 09 6C 64 20 61 2C 33 of line...ld a,3
023890: 3A 20 63 61 6C 6C 20 26 42 42 39 30 09 09 3B 50 : call &BB90..;P
0238A0: 45 4E 20 33 0D 0A 09 70 6F 70 20 68 6C 3A 20 70 EN 3...pop hl: p
0238B0: 75 73 68 20 68 6C 0D 0A 09 6C 64 20 61 2C 6C 3A ush hl...ld a,l:
0238C0: 20 64 65 63 20 6C 0D 0A 09 63 70 20 31 37 3A 20 dec l...cp 17:
0238D0: 6A 72 20 6E 7A 2C 6E 6F 74 6D 61 63 0D 0A 09 6C jr nz,notmac...l
0238E0: 64 20 6C 2C 31 35 0D 0A 2E 6E 6F 74 6D 61 63 09 d l,15...notmac.
0238F0: 6C 64 20 68 2C 30 3A 20 61 64 64 20 68 6C 2C 68 ld h,0: add hl,h
023900: 20 26 42 42 35 41 09 09 09 3B 70 72 69 6E 74 20 &BB5A...;print
023910: 31 2D 39 2C 41 2D 46 20 64 69 67 69 74 0D 0A 09 1-9,A-F digit...
023920: 6C 64 20 61 2C 33 32 3A 20 63 61 6C 6C 20 26 42 ld a,32: call &B
023930: 42 35 41 3A 20 63 61 6C 6C 20 26 42 42 35 41 09 B5A: call &BB5A.
023940: 3B 74 77 6F 20 73 70 61 63 65 73 0D 0A 09 6C 64 ;two spaces...ld
023950: 20 61 2C 33 3A 20 63 61 6C 6C 20 26 42 42 39 30 a,3: call &BB90
023960: 09 09 3B 50 45 4E 20 33 0D 0A 09 70 75 73 68 20 ..;PEN 3...push
023970: 69 78 3A 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 20 ix: pop hl...ld
023980: 62 2C 32 36 3A 20 63 61 6C 6C 20 73 74 72 6E 67 b,26: call strng
023990: 32 09 09 3B 64 69 61 6C 6C 69 6E 67 20 73 74 72 2..;dialling str
0239A0: 69 6E 67 0D 0A 09 6C 64 20 61 2C 33 35 3A 20 63 ing...ld a,35: c
0239B0: 61 6C 6C 20 26 42 42 36 46 09 09 3B 63 6F 6C 75 all &BB6F..;colu
0239C0: 6D 6E 20 33 35 0D 0A 09 6C 64 20 61 2C 28 69 78 mn 35...ld a,(ix
0239D0: 2B 32 36 29 3A 20 6F 72 20 61 0D 0A 09 6A 72 20 +26): or a...jr
0239E0: 6E 7A 2C 61 75 74 6F 64 09 09 09 3B 61 75 74 6F nz,autod...;auto
0239F0: 64 69 61 6C 3F 0D 0A 09 70 75 73 68 20 69 78 3A dial?...push ix:
023A00: 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 20 64 65 2C pop hl...ld de,
023A10: 32 37 3A 20 61 64 64 20 68 6C 2C 64 65 3A 20 6C 27: add hl,de: l
023A20: 64 20 62 2C 35 0D 0A 09 63 61 6C 6C 20 73 74 72 d b,5...call str
023A30: 6E 67 32 09 09 09 3B 69 66 20 6E 6F 74 2C 20 70 ng2...;if not, p
023A40: 72 69 6E 74 20 65 78 74 72 61 20 66 69 65 6C 64 rint extra field
023A50: 0D 0A 09 6A 72 20 64 65 78 74 72 61 0D 0A 2E 61 ...jr dextra...a
023A60: 75 74 6F 64 09 6C 64 20 68 6C 2C 61 74 6F 74 78 utod.ld hl,atotx
023A70: 74 3A 20 63 61 6C 6C 20 73 74 72 69 6E 67 09 3B t: call string.;
023A80: 70 72 69 6E 74 20 22 61 75 74 6F 22 0D 0A 2E 64 print "auto"...d
023A90: 65 78 74 72 61 09 6C 64 20 61 2C 31 3A 20 63 61 extra.ld a,1: ca
023AA0: 6C 6C 20 26 42 42 39 30 0D 0A 09 70 6F 70 20 68 ll &BB90...pop h
023AB0: 6C 0D 0A 09 6C 64 20 64 65 2C 33 32 3A 20 61 64 l...ld de,32: ad
023AC0: 64 20 69 78 2C 64 65 0D 0A 09 69 6E 63 20 6C 3A d ix,de...inc l:
023AD0: 20 6C 64 20 61 2C 6C 0D 0A 09 63 70 20 31 36 3A ld a,l...cp 16:
023AE0: 20 6A 70 20 6E 7A 2C 64 64 6C 6F 6F 70 09 09 3B jp nz,ddloop..;
023AF0: 6C 6F 6F 70 20 62 61 63 6B 20 69 66 20 6E 6F 74 loop back if not
023B00: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
023B10: 1E 00 01 00 02 09 4E E5 1E 00 C1 02 00 00 00 02 ......N.........
023B20: 1E 00 C6 02 00 00 00 02 1E 00 C2 02 00 00 00 02 ................
023B30: 1E 00 C7 02 00 00 00 02 1E 00 C3 02 00 00 00 02 ................
023B40: 1E 00 C8 02 00 00 00 02 1E 00 C4 02 00 00 00 02 ................
023B50: 1E 00 C9 02 00 00 00 02 1E 00 C5 02 00 00 00 02 ................
023B60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
023B70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
023B80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
023B90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
023BA0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
023BB0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
023BC0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
023BD0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
023BE0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
023BF0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
023C00: 73 3A 20 63 70 20 26 46 43 3A 20 6A 72 20 7A 2C s: cp &FC: jr z,
023C10: 65 78 69 74 75 73 0D 0A 09 63 70 20 32 34 30 3A exitus...cp 240:
023C20: 20 6A 72 20 7A 2C 75 73 75 70 0D 0A 09 63 70 20 jr z,usup...cp
023C30: 32 34 31 3A 20 6A 72 20 6E 7A 2C 75 73 77 61 69 241: jr nz,uswai
023C40: 74 0D 0A 09 6C 64 20 61 2C 65 3A 20 6F 72 20 61 t...ld a,e: or a
023C50: 3A 20 20 6A 72 20 7A 2C 75 73 77 61 69 74 3A 20 : jr z,uswait:
023C60: 64 65 63 20 65 3A 20 6A 72 20 75 73 64 69 73 70 dec e: jr usdisp
023C70: 0D 0A 2E 75 73 75 70 09 6C 64 20 61 2C 65 3A 20 ...usup.ld a,e:
023C80: 63 70 20 31 35 3A 20 6A 72 20 7A 2C 75 73 77 61 cp 15: jr z,uswa
023C90: 69 74 3A 20 69 6E 63 20 65 3A 20 6A 72 20 75 73 it: inc e: jr us
023CA0: 64 69 73 70 0D 0A 2E 65 78 69 74 75 73 09 70 75 disp...exitus.pu
023CB0: 73 68 20 64 65 3A 20 6C 64 20 68 6C 2C 75 73 65 sh de: ld hl,use
023CC0: 74 78 74 3A 20 63 61 6C 6C 20 72 73 78 3A 20 6C txt: call rsx: l
023CD0: 64 20 61 2C 32 3A 20 70 6F 70 20 64 65 0D 0A 09 d a,2: pop de...
023CE0: 6C 64 20 69 78 2C 74 70 62 6C 6F 63 6B 3A 20 6C ld ix,tpblock: l
023CF0: 64 20 28 69 78 29 2C 65 3A 20 6C 64 20 28 69 78 d (ix),e: ld (ix
023D00: 2B 31 29 2C 30 3A 20 6C 64 20 61 2C 31 3A 20 63 +1),0: ld a,1: c
023D10: 61 6C 6C 20 26 31 42 3A 20 6A 70 20 64 73 63 6D all &1B: jp dscm
023D20: 6E 75 0D 0A 0D 0A 2E 63 61 74 64 73 63 09 63 61 nu.....catdsc.ca
023D30: 6C 6C 20 63 61 74 6C 6F 67 3A 20 6A 70 20 64 73 ll catlog: jp ds
023D40: 63 6D 6E 75 0D 0A 2E 63 61 74 63 70 74 09 63 61 cmnu...catcpt.ca
023D50: 6C 6C 20 63 61 74 6C 6F 67 3A 20 6A 70 20 63 70 ll catlog: jp cp
023D60: 74 6D 6E 75 0D 0A 2E 63 61 74 66 69 6C 09 63 61 tmnu...catfil.ca
023D70: 6C 6C 20 63 61 74 6C 6F 67 3A 20 6A 70 20 66 69 ll catlog: jp fi
023D80: 6C 6D 6E 75 0D 0A 0D 0A 2E 63 61 74 6C 6F 67 09 lmnu.....catlog.
023D90: 63 61 6C 6C 20 26 42 42 36 43 3A 20 6C 64 20 61 call &BB6C: ld a
023DA0: 2C 31 3A 20 63 61 6C 6C 20 26 42 42 39 30 0D 0A ,1: call &BB90..
023DB0: 09 6C 64 20 6C 2C 28 69 79 2B 37 29 3A 20 6C 64 .ld l,(iy+7): ld
023DC0: 20 68 2C 28 69 79 2B 38 29 3A 20 6C 64 20 64 65 h,(iy+8): ld de
023DD0: 2C 31 30 32 34 3A 20 61 64 64 20 68 6C 2C 64 65 ,1024: add hl,de
023DE0: 0D 0A 09 65 78 20 64 65 2C 68 6C 3A 20 63 61 6C ...ex de,hl: cal
023DF0: 6C 20 26 42 43 39 42 3A 20 63 61 6C 6C 20 26 42 l &BC9B: call &B
023E00: 6E 6D 0D 0A 09 63 70 20 31 3A 20 6A 70 20 7A 2C nm...cp 1: jp z,
023E10: 63 61 74 66 69 6C 0D 0A 09 63 70 20 32 3A 20 6A catfil...cp 2: j
023E20: 70 20 7A 2C 64 6F 77 6E 6C 64 0D 0A 09 63 70 20 p z,downld...cp
023E30: 33 3A 20 6A 70 20 7A 2C 75 70 6C 6F 61 64 0D 0A 3: jp z,upload..
023E40: 0D 0A 2E 73 65 6C 70 72 74 09 6C 64 20 68 6C 2C ...selprt.ld hl,
023E50: 74 6D 70 72 6F 74 3A 20 63 61 6C 6C 20 6D 65 6E tmprot: call men
023E60: 75 3A 20 6A 70 20 7A 2C 66 69 6C 6D 6E 75 0D 0A u: jp z,filmnu..
023E70: 09 64 65 63 20 61 3A 20 6C 64 20 28 69 79 2B 31 .dec a: ld (iy+1
023E80: 30 37 29 2C 61 3A 20 6A 70 20 66 69 6C 6D 6E 75 07),a: jp filmnu
023E90: 09 3B 70 72 6F 74 6F 63 6F 6C 20 73 65 6C 65 63 .;protocol selec
023EA0: 74 69 6F 6E 0D 0A 0D 0A 2E 64 6F 77 6E 6C 64 09 tion.....downld.
023EB0: 6C 64 20 68 6C 2C 64 73 66 74 78 74 3A 20 63 61 ld hl,dsftxt: ca
023EC0: 6C 6C 20 73 74 72 69 6E 67 0D 0A 09 6C 64 20 68 ll string...ld h
023ED0: 6C 2C 74 70 62 6C 6F 63 6B 2B 35 3A 20 63 61 6C l,tpblock+5: cal
023EE0: 6C 20 69 6E 70 75 74 66 3A 20 6A 70 20 7A 2C 66 l inputf: jp z,f
023EF0: 69 6C 6D 6E 75 0D 0A 09 6C 64 20 61 2C 62 3A 20 ilmnu...ld a,b:
023F00: 6F 72 20 61 3A 20 6A 70 20 7A 2C 6E 6F 6E 61 6D or a: jp z,nonam
023F10: 65 0D 0A 09 6C 64 20 28 74 70 62 6C 6F 63 6B 2B e...ld (tpblock+
023F20: 32 29 2C 61 3A 20 6C 64 20 28 74 70 62 6C 6F 63 2),a: ld (tpbloc
023F30: 6B 2B 33 29 2C 68 6C 0D 0A 09 6C 64 20 69 78 2C k+3),hl...ld ix,
023F40: 74 70 62 6C 6F 63 6B 3A 20 6C 64 20 68 6C 2C 74 tpblock: ld hl,t
023F50: 70 62 6C 6F 63 6B 2B 32 0D 0A 09 6C 64 20 28 69 pblock+2...ld (i
023F60: 78 29 2C 6C 3A 20 6C 64 20 28 69 78 2B 31 29 2C x),l: ld (ix+1),
023F70: 68 0D 0A 09 6C 64 20 61 2C 31 3A 20 64 65 63 20 h...ld a,1: dec
023F80: 69 78 3A 20 64 65 63 20 69 78 3A 20 70 75 73 68 ix: dec ix: push
023F90: 20 69 78 3A 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 ix: pop hl...ld
023FA0: 20 28 69 79 2B 37 30 29 2C 6C 3A 20 6C 64 20 28 (iy+70),l: ld (
023FB0: 69 79 2B 37 31 29 2C 68 09 3B 63 75 72 72 65 6E iy+71),h.;curren
023FC0: 74 20 6E 61 6D 65 20 61 64 64 72 65 73 73 0D 0A t name address..
023FD0: 09 6A 72 20 64 6F 64 6E 6C 64 0D 0A 2E 6E 6F 6E .jr dodnld...non
023FE0: 61 6D 65 09 78 6F 72 20 61 0D 0A 2E 64 6F 64 6E ame.xor a...dodn
023FF0: 6C 64 09 6C 64 20 28 69 79 2B 34 32 29 2C 61 3A ld.ld (iy+42),a:
024000: 42 31 38 3A 20 72 65 74 0D 0A 0D 0A 2E 64 72 69 B18: ret.....dri
024010: 76 65 61 09 6C 64 20 61 2C 31 35 3A 20 63 61 6C vea.ld a,15: cal
024020: 6C 20 26 42 42 37 32 3A 20 6C 64 20 68 6C 2C 64 l &BB72: ld hl,d
024030: 72 61 74 78 74 3A 20 63 61 6C 6C 20 72 73 78 3A ratxt: call rsx:
024040: 20 63 61 6C 6C 20 26 31 42 3A 20 6A 70 20 64 73 call &1B: jp ds
024050: 63 6D 6E 75 0D 0A 2E 64 72 69 76 65 62 09 6C 64 cmnu...driveb.ld
024060: 20 61 2C 31 35 3A 20 63 61 6C 6C 20 26 42 42 37 a,15: call &BB7
024070: 32 3A 20 6C 64 20 68 6C 2C 64 72 62 74 78 74 3A 2: ld hl,drbtxt:
024080: 20 63 61 6C 6C 20 72 73 78 3A 20 63 61 6C 6C 20 call rsx: call
024090: 26 31 42 3A 20 6A 70 20 64 73 63 6D 6E 75 0D 0A &1B: jp dscmnu..
0240A0: 0D 0A 2E 65 72 61 73 65 09 6C 64 20 68 6C 2C 65 ...erase.ld hl,e
0240B0: 72 61 74 78 74 3A 20 63 61 6C 6C 20 73 74 72 69 ratxt: call stri
0240C0: 6E 67 0D 0A 09 6C 64 20 68 6C 2C 26 30 42 30 33 ng...ld hl,&0B03
0240D0: 3A 20 63 61 6C 6C 20 26 42 42 37 35 0D 0A 09 6C : call &BB75...l
0240E0: 64 20 68 6C 2C 74 70 62 6C 6F 63 6B 2B 35 3A 20 d hl,tpblock+5:
0240F0: 63 61 6C 6C 20 69 6E 70 75 74 66 3A 20 6A 70 20 call inputf: jp
024100: 7A 2C 64 73 63 6D 6E 75 0D 0A 09 6C 64 20 61 2C z,dscmnu...ld a,
024110: 62 3A 20 6F 72 20 61 3A 20 6A 70 20 7A 2C 64 73 b: or a: jp z,ds
024120: 63 6D 6E 75 0D 0A 09 6C 64 20 28 74 70 62 6C 6F cmnu...ld (tpblo
024130: 63 6B 2B 32 29 2C 61 3A 20 6C 64 20 28 74 70 62 ck+2),a: ld (tpb
024140: 6C 6F 63 6B 2B 33 29 2C 68 6C 0D 0A 09 6C 64 20 lock+3),hl...ld
024150: 68 6C 2C 65 72 63 74 78 74 3A 20 63 61 6C 6C 20 hl,erctxt: call
024160: 72 73 78 0D 0A 09 6C 64 20 61 2C 31 3A 20 6C 64 rsx...ld a,1: ld
024170: 20 69 78 2C 74 70 62 6C 6F 63 6B 3A 20 6C 64 20 ix,tpblock: ld
024180: 64 65 2C 74 70 62 6C 6F 63 6B 2B 32 0D 0A 09 6C de,tpblock+2...l
024190: 64 20 28 69 78 29 2C 65 3A 20 6C 64 20 28 69 78 d (ix),e: ld (ix
0241A0: 2B 31 29 2C 64 0D 0A 09 63 61 6C 6C 20 26 31 42 +1),d...call &1B
0241B0: 3A 20 6A 70 20 64 73 63 6D 6E 75 0D 0A 0D 0A 2E : jp dscmnu.....
0241C0: 72 65 6E 61 6D 65 09 6C 64 20 68 6C 2C 72 65 6E rename.ld hl,ren
0241D0: 74 78 74 3A 20 63 61 6C 6C 20 73 74 72 69 6E 67 txt: call string
0241E0: 0D 0A 09 6C 64 20 68 6C 2C 26 30 42 30 33 3A 20 ...ld hl,&0B03:
0241F0: 63 61 6C 6C 20 26 42 42 37 35 0D 0A 09 6C 64 20 call &BB75...ld
024200: 20 6C 64 20 61 2C 33 3A 20 6C 64 20 28 69 79 2B ld a,3: ld (iy+
024210: 35 29 2C 61 3A 20 6A 70 20 71 75 63 6F 6D 09 3B 5),a: jp qucom.;
024220: 6E 70 61 72 61 6D 2C 20 66 63 6D 6F 64 65 0D 0A nparam, fcmode..
024230: 0D 0A 2E 75 70 6C 6F 61 64 09 6C 64 20 61 2C 28 ...upload.ld a,(
024240: 69 79 2B 31 30 37 29 3A 20 63 70 20 32 3A 20 6A iy+107): cp 2: j
024250: 70 20 6E 7A 2C 73 66 69 6C 65 09 09 3B 73 70 65 p nz,sfile..;spe
024260: 63 70 0D 0A 09 6C 64 20 68 6C 2C 75 66 6E 74 78 cp...ld hl,ufntx
024270: 74 3A 20 63 61 6C 6C 20 73 74 72 69 6E 67 0D 0A t: call string..
024280: 09 78 6F 72 20 61 3A 20 6C 64 20 28 69 79 2B 34 .xor a: ld (iy+4
024290: 32 29 2C 61 0D 0A 09 6C 64 20 68 6C 2C 74 70 62 2),a...ld hl,tpb
0242A0: 6C 6F 63 6B 2B 26 37 45 3A 20 20 6C 64 20 28 69 lock+&7E: ld (i
0242B0: 79 2B 37 30 29 2C 6C 3A 20 6C 64 20 28 69 79 2B y+70),l: ld (iy+
0242C0: 37 31 29 2C 68 09 3B 73 70 61 63 65 20 74 6F 20 71),h.;space to
0242D0: 73 74 6F 72 65 20 70 61 72 61 6D 65 74 65 72 73 store parameters
0242E0: 0D 0A 09 6C 64 20 68 6C 2C 74 70 62 6C 6F 63 6B ...ld hl,tpblock
0242F0: 2B 26 38 30 3A 20 20 6C 64 20 28 69 79 2B 34 33 +&80: ld (iy+43
024300: 29 2C 6C 3A 20 6C 64 20 28 69 79 2B 34 34 29 2C ),l: ld (iy+44),
024310: 68 09 3B 73 70 61 63 65 20 74 6F 20 73 74 6F 72 h.;space to stor
024320: 65 20 64 65 73 63 72 69 70 74 6F 72 73 0D 0A 09 e descriptors...
024330: 6C 64 20 68 6C 2C 74 70 62 6C 6F 63 6B 2B 26 31 ld hl,tpblock+&1
024340: 31 30 3A 20 6C 64 20 28 69 79 2B 34 30 29 2C 6C 10: ld (iy+40),l
024350: 3A 20 6C 64 20 28 69 79 2B 34 31 29 2C 68 09 3B : ld (iy+41),h.;
024360: 73 70 61 63 65 20 74 6F 20 73 74 6F 72 65 20 73 space to store s
024370: 74 72 69 6E 67 73 0D 0A 0D 0A 2E 75 70 66 6C 70 trings.....upflp
024380: 09 6C 64 20 6C 2C 28 69 79 2B 34 30 29 3A 20 6C .ld l,(iy+40): l
024390: 64 20 68 2C 28 69 79 2B 34 31 29 3A 20 63 61 6C d h,(iy+41): cal
0243A0: 6C 20 69 6E 70 75 74 66 0D 0A 09 6A 70 20 7A 2C l inputf...jp z,
0243B0: 66 69 6C 6D 6E 75 09 09 09 09 3B 45 53 43 20 70 filmnu....;ESC p
0243C0: 72 65 73 73 65 64 3F 0D 0A 09 6C 64 20 61 2C 62 ressed?...ld a,b
0243D0: 3A 20 6F 72 20 61 3A 20 6A 70 20 7A 2C 64 6F 75 : or a: jp z,dou
0243E0: 70 6C 64 09 09 3B 6C 61 73 74 20 66 69 6C 65 6E pld..;last filen
0243F0: 61 6D 65 20 65 6E 74 65 72 65 64 3F 0D 0A 09 70 ame entered?...p
024400: 68 6C 2C 74 70 62 6C 6F 63 6B 2B 31 30 3A 20 63 hl,tpblock+10: c
024410: 61 6C 6C 20 69 6E 70 75 74 66 3A 20 6A 70 20 7A all inputf: jp z
024420: 2C 64 73 63 6D 6E 75 0D 0A 09 6C 64 20 61 2C 62 ,dscmnu...ld a,b
024430: 3A 20 6F 72 20 61 3A 20 6A 70 20 7A 2C 64 73 63 : or a: jp z,dsc
024440: 6D 6E 75 0D 0A 09 6C 64 20 28 74 70 62 6C 6F 63 mnu...ld (tpbloc
024450: 6B 2B 34 29 2C 61 3A 20 6C 64 20 28 74 70 62 6C k+4),a: ld (tpbl
024460: 6F 63 6B 2B 35 29 2C 68 6C 0D 0A 09 6C 64 20 68 ock+5),hl...ld h
024470: 6C 2C 72 65 32 74 78 74 3A 20 63 61 6C 6C 20 73 l,re2txt: call s
024480: 74 72 69 6E 67 0D 0A 09 6C 64 20 68 6C 2C 26 30 tring...ld hl,&0
024490: 42 30 37 3A 20 63 61 6C 6C 20 26 42 42 37 35 0D B07: call &BB75.
0244A0: 0A 09 6C 64 20 68 6C 2C 74 70 62 6C 6F 63 6B 2B ..ld hl,tpblock+
0244B0: 26 34 41 3A 20 63 61 6C 6C 20 69 6E 70 75 74 66 &4A: call inputf
0244C0: 3A 20 6A 70 20 7A 2C 64 73 63 6D 6E 75 0D 0A 09 : jp z,dscmnu...
0244D0: 6C 64 20 61 2C 62 3A 20 6F 72 20 61 3A 20 6A 70 ld a,b: or a: jp
0244E0: 20 7A 2C 64 73 63 6D 6E 75 0D 0A 09 6C 64 20 28 z,dscmnu...ld (
0244F0: 74 70 62 6C 6F 63 6B 2B 37 29 2C 61 3A 20 6C 64 tpblock+7),a: ld
024500: 20 28 74 70 62 6C 6F 63 6B 2B 38 29 2C 68 6C 0D (tpblock+8),hl.
024510: 0A 09 6C 64 20 68 6C 2C 72 65 63 74 78 74 3A 20 ..ld hl,rectxt:
024520: 63 61 6C 6C 20 72 73 78 0D 0A 09 6C 64 20 61 2C call rsx...ld a,
024530: 32 3A 20 6C 64 20 69 78 2C 74 70 62 6C 6F 63 6B 2: ld ix,tpblock
024540: 0D 0A 09 6C 64 20 64 65 2C 74 70 62 6C 6F 63 6B ...ld de,tpblock
024550: 2B 34 3A 20 6C 64 20 28 69 78 29 2C 65 3A 20 6C +4: ld (ix),e: l
024560: 64 20 28 69 78 2B 31 29 2C 64 0D 0A 09 6C 64 20 d (ix+1),d...ld
024570: 64 65 2C 74 70 62 6C 6F 63 6B 2B 37 3A 20 6C 64 de,tpblock+7: ld
024580: 20 28 69 78 2B 32 29 2C 65 3A 20 6C 64 20 28 69 (ix+2),e: ld (i
024590: 78 2B 33 29 2C 64 0D 0A 09 63 61 6C 6C 20 26 31 x+3),d...call &1
0245A0: 42 3A 20 6A 70 20 64 73 63 6D 6E 75 0D 0A 0D 0A B: jp dscmnu....
0245B0: 69 66 20 6B 64 73 3A 09 65 6C 73 65 0D 0A 2E 68 if kds:.else...h
0245C0: 61 6E 67 75 70 09 6C 64 20 64 2C 35 3A 20 6C 64 angup.ld d,5: ld
0245D0: 20 61 2C 28 69 79 2B 31 32 29 3A 20 61 6E 64 20 a,(iy+12): and
0245E0: 31 32 37 3A 20 63 61 6C 6C 20 70 72 65 67 09 3B 127: call preg.;
0245F0: 72 35 0D 0A 09 6C 64 20 68 6C 2C 31 30 3A 20 6C r5...ld hl,10: l
024600: 75 73 68 20 68 6C 0D 0A 09 20 6C 64 20 6C 2C 28 ush hl... ld l,(
024610: 69 79 2B 34 33 29 3A 20 6C 64 20 68 2C 28 69 79 iy+43): ld h,(iy
024620: 2B 34 34 29 0D 0A 09 20 70 75 73 68 20 68 6C 3A +44)... push hl:
024630: 20 70 6F 70 20 69 78 0D 0A 09 70 6F 70 20 68 6C pop ix...pop hl
024640: 09 09 09 09 09 3B 49 58 20 3D 20 70 62 6C 6F 63 .....;IX = pbloc
024650: 6B 0D 0A 09 6C 64 20 28 69 78 29 2C 62 3A 20 6C k...ld (ix),b: l
024660: 64 20 28 69 78 2B 31 29 2C 6C 3A 20 6C 64 20 28 d (ix+1),l: ld (
024670: 69 78 2B 32 29 2C 68 09 3B 69 6E 73 65 72 74 20 ix+2),h.;insert
024680: 73 74 72 69 6E 67 20 64 65 73 63 72 69 70 74 6F string descripto
024690: 72 20 62 6C 6F 63 6B 0D 0A 09 6C 64 20 63 2C 62 r block...ld c,b
0246A0: 3A 20 6C 64 20 62 2C 30 0D 0A 09 61 64 64 20 68 : ld b,0...add h
0246B0: 6C 2C 62 63 3A 20 6C 64 20 28 69 79 2B 34 30 29 l,bc: ld (iy+40)
0246C0: 2C 6C 3A 20 6C 64 20 28 69 79 2B 34 31 29 2C 68 ,l: ld (iy+41),h
0246D0: 09 3B 6D 6F 76 65 20 6F 6E 74 6F 20 6E 65 78 74 .;move onto next
0246E0: 20 73 74 72 69 6E 67 20 73 70 61 63 65 0D 0A 0D string space...
0246F0: 0A 09 70 75 73 68 20 69 78 3A 20 70 6F 70 20 68 ..push ix: pop h
024700: 6C 0D 0A 09 70 75 73 68 20 64 65 3A 20 6C 64 20 l...push de: ld
024710: 65 2C 28 69 79 2B 37 30 29 3A 20 6C 64 20 64 2C e,(iy+70): ld d,
024720: 28 69 79 2B 37 31 29 0D 0A 09 70 75 73 68 20 64 (iy+71)...push d
024730: 65 3A 20 70 6F 70 20 69 78 3A 20 70 6F 70 20 64 e: pop ix: pop d
024740: 65 09 09 09 3B 49 58 20 3D 20 63 6E 61 64 64 72 e...;IX = cnaddr
024750: 0D 0A 09 6C 64 20 28 69 78 29 2C 6C 3A 20 6C 64 ...ld (ix),l: ld
024760: 20 28 69 78 2B 31 29 2C 68 09 09 09 3B 61 64 64 (ix+1),h...;add
024770: 20 64 65 73 63 72 69 70 74 6F 72 20 74 6F 20 70 descriptor to p
024780: 61 72 61 6D 20 74 61 62 6C 65 0D 0A 09 64 65 63 aram table...dec
024790: 20 69 78 3A 20 64 65 63 20 69 78 3A 20 09 09 09 ix: dec ix: ...
0247A0: 3B 75 70 64 61 74 65 20 70 61 72 61 6D 65 74 65 ;update paramete
0247B0: 72 20 74 61 62 6C 65 20 70 6F 73 69 74 69 6F 6E r table position
0247C0: 0D 0A 09 70 75 73 68 20 64 65 3A 20 70 75 73 68 ...push de: push
0247D0: 20 69 78 3A 20 70 6F 70 20 64 65 0D 0A 09 6C 64 ix: pop de...ld
0247E0: 20 28 69 79 2B 37 30 29 2C 65 3A 20 6C 64 20 28 (iy+70),e: ld (
0247F0: 69 79 2B 37 31 29 2C 64 3A 20 70 6F 70 20 68 6C iy+71),d: pop hl
024800: 64 20 28 69 79 2B 38 37 29 2C 6C 3A 20 6C 64 20 d (iy+87),l: ld
024810: 28 69 79 2B 38 38 29 2C 68 3A 20 6C 64 20 61 2C (iy+88),h: ld a,
024820: 31 3A 20 6C 64 20 28 69 79 2B 38 39 29 2C 61 0D 1: ld (iy+89),a.
024830: 0A 2E 68 66 66 6C 70 09 6C 64 20 61 2C 28 69 79 ..hfflp.ld a,(iy
024840: 2B 38 39 29 3A 20 6F 72 20 61 3A 20 6A 72 20 6E +89): or a: jr n
024850: 7A 2C 68 66 66 6C 70 0D 0A 09 6C 64 20 64 2C 35 z,hfflp...ld d,5
024860: 3A 20 6C 64 20 61 2C 28 69 79 2B 31 32 29 3A 20 : ld a,(iy+12):
024870: 6F 72 20 31 32 38 3A 20 63 61 6C 6C 20 70 72 65 or 128: call pre
024880: 67 0D 0A 09 6A 70 20 6D 61 69 6E 6D 3A 20 65 6E g...jp mainm: en
024890: 64 69 66 0D 0A 0D 0A 2E 63 70 74 6D 6E 75 09 6C dif.....cptmnu.l
0248A0: 64 20 68 6C 2C 74 6D 63 61 70 74 3A 20 63 61 6C d hl,tmcapt: cal
0248B0: 6C 20 6D 65 6E 75 3A 20 6A 70 20 7A 2C 6D 61 69 l menu: jp z,mai
0248C0: 6E 6D 0D 0A 09 63 70 20 31 3A 20 6A 70 20 7A 2C nm...cp 1: jp z,
0248D0: 63 61 74 63 70 74 0D 0A 09 63 70 20 32 3A 20 6A catcpt...cp 2: j
0248E0: 70 20 7A 2C 6F 70 63 61 70 74 0D 0A 09 63 70 20 p z,opcapt...cp
0248F0: 33 3A 20 6A 70 20 7A 2C 63 6C 63 61 70 74 0D 0A 3: jp z,clcapt..
024900: 0D 0A 2E 64 6F 65 63 68 6F 09 6C 64 20 68 6C 2C ...doecho.ld hl,
024910: 65 63 6F 74 78 74 3A 20 63 61 6C 6C 20 73 74 72 ecotxt: call str
024920: 69 6E 67 0D 0A 09 6C 64 20 68 6C 2C 26 30 42 30 ing...ld hl,&0B0
024930: 33 3A 20 63 61 6C 6C 20 26 42 42 37 35 0D 0A 09 3: call &BB75...
024940: 6C 64 20 68 6C 2C 74 70 62 6C 6F 63 6B 2B 35 3A ld hl,tpblock+5:
024950: 20 63 61 6C 6C 20 69 6E 70 75 74 66 3A 20 6A 70 call inputf: jp
024960: 20 7A 2C 63 70 74 6D 6E 75 0D 0A 09 6C 64 20 61 z,cptmnu...ld a
024970: 2C 62 3A 20 6F 72 20 61 3A 20 6A 70 20 7A 2C 63 ,b: or a: jp z,c
024980: 70 74 6D 6E 75 0D 0A 09 6C 64 20 28 74 70 62 6C ptmnu...ld (tpbl
024990: 6F 63 6B 2B 32 29 2C 61 3A 20 6C 64 20 28 74 70 ock+2),a: ld (tp
0249A0: 62 6C 6F 63 6B 2B 33 29 2C 68 6C 0D 0A 09 6C 64 block+3),hl...ld
0249B0: 20 69 78 2C 74 70 62 6C 6F 63 6B 3A 20 6C 64 20 ix,tpblock: ld
0249C0: 68 6C 2C 74 70 62 6C 6F 63 6B 2B 32 0D 0A 09 6C hl,tpblock+2...l
0249D0: 64 20 28 69 78 29 2C 6C 3A 20 6C 64 20 28 69 78 d (ix),l: ld (ix
0249E0: 2B 31 29 2C 68 0D 0A 09 6C 64 20 61 2C 32 3A 20 +1),h...ld a,2:
0249F0: 6C 64 20 28 69 79 2B 35 29 2C 61 3A 20 6A 70 20 ld (iy+5),a: jp
024A00: 09 3B 49 58 20 3D 3E 20 63 6E 61 64 64 72 0D 0A .;IX => cnaddr..
024A10: 0D 0A 09 69 6E 63 20 68 6C 3A 20 69 6E 63 20 68 ...inc hl: inc h
024A20: 6C 3A 20 69 6E 63 20 68 6C 0D 0A 09 6C 64 20 28 l: inc hl...ld (
024A30: 69 79 2B 34 33 29 2C 6C 3A 20 6C 64 20 28 69 79 iy+43),l: ld (iy
024A40: 2B 34 34 29 2C 68 09 09 3B 75 70 64 61 74 65 20 +44),h..;update
024A50: 64 65 73 63 72 69 70 74 6F 72 20 70 6F 73 69 74 descriptor posit
024A60: 69 6F 6E 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 34 ion...ld a,(iy+4
024A70: 32 29 3A 20 69 6E 63 20 61 3A 20 6C 64 20 28 69 2): inc a: ld (i
024A80: 79 2B 34 32 29 2C 61 09 3B 69 6E 63 72 65 61 73 y+42),a.;increas
024A90: 65 20 6E 75 6D 62 65 72 20 6F 66 20 70 61 72 61 e number of para
024AA0: 6D 65 74 65 72 73 0D 0A 09 62 69 74 20 36 2C 61 meters...bit 6,a
024AB0: 3A 20 6A 70 20 6E 7A 2C 64 6F 75 70 6C 64 09 09 : jp nz,doupld..
024AC0: 09 3B 36 34 20 66 69 6C 65 73 20 79 65 74 3F 0D .;64 files yet?.
024AD0: 0A 09 6C 64 20 61 2C 31 30 3A 20 63 61 6C 6C 20 ..ld a,10: call
024AE0: 26 42 42 35 41 09 09 09 3B 69 66 20 6E 6F 74 2C &BB5A...;if not,
024AF0: 20 6E 65 78 74 20 6C 69 6E 65 0D 0A 09 6C 64 20 next line...ld
024B00: 61 2C 31 31 3A 20 63 61 6C 6C 20 26 42 42 36 46 a,11: call &BB6F
024B10: 09 09 09 3B 61 6E 64 20 63 6F 6C 75 6D 6E 20 31 ...;and column 1
024B20: 31 0D 0A 09 6A 72 20 75 70 66 6C 70 0D 0A 0D 0A 1...jr upflp....
024B30: 2E 64 6F 75 70 6C 64 09 6C 64 20 61 2C 34 3A 20 .doupld.ld a,4:
024B40: 6C 64 20 28 69 79 2B 35 29 2C 61 3A 20 6A 70 20 ld (iy+5),a: jp
024B50: 71 75 63 6F 6D 09 09 3B 66 63 6D 6F 64 65 0D 0A qucom..;fcmode..
024B60: 0D 0A 2E 73 66 69 6C 65 09 6C 64 20 68 6C 2C 75 ...sfile.ld hl,u
024B70: 73 66 74 78 74 3A 20 63 61 6C 6C 20 73 74 72 69 sftxt: call stri
024B80: 6E 67 0D 0A 09 6C 64 20 68 6C 2C 74 70 62 6C 6F ng...ld hl,tpblo
024B90: 63 6B 2B 35 3A 20 63 61 6C 6C 20 69 6E 70 75 74 ck+5: call input
024BA0: 66 3A 20 6A 70 20 7A 2C 66 69 6C 6D 6E 75 0D 0A f: jp z,filmnu..
024BB0: 09 6C 64 20 61 2C 62 3A 20 6F 72 20 61 3A 20 6A .ld a,b: or a: j
024BC0: 70 20 7A 2C 66 69 6C 6D 6E 75 0D 0A 09 6C 64 20 p z,filmnu...ld
024BD0: 28 74 70 62 6C 6F 63 6B 2B 32 29 2C 61 3A 20 6C (tpblock+2),a: l
024BE0: 64 20 28 74 70 62 6C 6F 63 6B 2B 33 29 2C 68 6C d (tpblock+3),hl
024BF0: 0D 0A 09 6C 64 20 69 78 2C 74 70 62 6C 6F 63 6B ...ld ix,tpblock
024C00: 71 75 63 6F 6D 09 3B 66 63 6D 6F 64 65 0D 0A 0D qucom.;fcmode...
024C10: 0A 2E 6F 70 63 61 70 74 09 6C 64 20 68 6C 2C 63 ..opcapt.ld hl,c
024C20: 70 74 74 78 74 3A 20 63 61 6C 6C 20 73 74 72 69 pttxt: call stri
024C30: 6E 67 0D 0A 09 6C 64 20 68 6C 2C 26 30 42 30 33 ng...ld hl,&0B03
024C40: 3A 20 63 61 6C 6C 20 26 42 42 37 35 0D 0A 09 6C : call &BB75...l
024C50: 64 20 68 6C 2C 74 70 62 6C 6F 63 6B 2B 35 3A 20 d hl,tpblock+5:
024C60: 63 61 6C 6C 20 69 6E 70 75 74 66 3A 20 6A 70 20 call inputf: jp
024C70: 7A 2C 63 70 74 6D 6E 75 0D 0A 09 6C 64 20 61 2C z,cptmnu...ld a,
024C80: 62 3A 20 6F 72 20 61 3A 20 6A 70 20 7A 2C 63 70 b: or a: jp z,cp
024C90: 74 6D 6E 75 0D 0A 09 6C 64 20 28 74 70 62 6C 6F tmnu...ld (tpblo
024CA0: 63 6B 2B 32 29 2C 61 3A 20 6C 64 20 28 74 70 62 ck+2),a: ld (tpb
024CB0: 6C 6F 63 6B 2B 33 29 2C 68 6C 0D 0A 09 6C 64 20 lock+3),hl...ld
024CC0: 61 2C 31 3A 20 6C 64 20 69 78 2C 74 70 62 6C 6F a,1: ld ix,tpblo
024CD0: 63 6B 3A 20 6C 64 20 68 6C 2C 74 70 62 6C 6F 63 ck: ld hl,tpbloc
024CE0: 6B 2B 32 0D 0A 09 6C 64 20 28 69 78 29 2C 6C 3A k+2...ld (ix),l:
024CF0: 20 6C 64 20 28 69 78 2B 31 29 2C 68 0D 0A 09 63 ld (ix+1),h...c
024D00: 61 6C 6C 20 63 61 70 74 5F 69 3A 20 6A 70 20 63 all capt_i: jp c
024D10: 70 74 6D 6E 75 0D 0A 0D 0A 2E 63 6C 63 61 70 74 ptmnu.....clcapt
024D20: 09 6C 64 20 61 2C 28 69 79 2B 35 29 3A 20 63 70 .ld a,(iy+5): cp
024D30: 20 31 09 09 3B 66 63 6D 6F 64 65 0D 0A 09 6A 72 1..;fcmode...jr
024D40: 20 6E 7A 2C 63 6E 6F 70 65 6E 0D 0A 09 63 61 6C nz,cnopen...cal
024D50: 6C 20 63 6C 6F 73 5F 69 3A 20 6A 70 20 63 70 74 l clos_i: jp cpt
024D60: 6D 6E 75 0D 0A 2E 63 6E 6F 70 65 6E 09 6C 64 20 mnu...cnopen.ld
024D70: 68 6C 2C 63 6E 6F 74 78 74 3A 20 63 61 6C 6C 20 hl,cnotxt: call
024D80: 73 74 72 69 6E 67 0D 0A 09 6C 64 20 68 6C 2C 6B string...ld hl,k
024D90: 79 32 74 78 74 3A 20 63 61 6C 6C 20 73 74 72 69 y2txt: call stri
024DA0: 6E 67 0D 0A 09 63 61 6C 6C 20 26 42 42 38 31 3A ng...call &BB81:
024DB0: 20 63 61 6C 6C 20 26 42 42 31 38 3A 20 63 61 6C call &BB18: cal
024DC0: 6C 20 26 42 42 38 34 0D 0A 09 6A 70 20 63 70 74 l &BB84...jp cpt
024DD0: 6D 6E 75 0D 0A 0D 0A 2E 66 69 6C 6D 6E 75 09 6C mnu.....filmnu.l
024DE0: 64 20 68 6C 2C 74 6D 66 69 6C 65 3A 20 63 61 6C d hl,tmfile: cal
024DF0: 6C 20 6D 65 6E 75 3A 20 6A 70 20 7A 2C 6D 61 69 l menu: jp z,mai
024E00: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
024E10: 1F 00 01 00 02 09 4E E5 1F 00 C4 02 00 00 00 02 ......N.........
024E20: 1F 00 C9 02 00 00 00 02 1F 00 C5 02 00 00 00 02 ................
024E30: 1F 00 C1 02 00 00 00 02 1F 00 C6 02 00 00 00 02 ................
024E40: 1F 00 C2 02 00 00 00 02 1F 00 C7 02 00 00 00 02 ................
024E50: 1F 00 C3 02 00 00 00 02 1F 00 C8 02 00 00 00 02 ................
024E60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
024E70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
024E80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
024E90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
024EA0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
024EB0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
024EC0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
024ED0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
024EE0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
024EF0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
024F00: 65 74 0D 0A 2E 6D 6E 75 75 70 09 6C 64 20 61 2C et...mnuup.ld a,
024F10: 31 3A 20 63 70 20 6C 3A 20 6A 72 20 7A 2C 6D 6E 1: cp l: jr z,mn
024F20: 75 5F 6C 70 0D 0A 09 64 65 63 20 6C 3A 20 6A 72 u_lp...dec l: jr
024F30: 20 6D 6E 75 5F 6C 70 0D 0A 2E 6D 6E 75 64 77 6E mnu_lp...mnudwn
024F40: 09 6C 64 20 61 2C 62 3A 20 63 70 20 6C 3A 20 6A .ld a,b: cp l: j
024F50: 72 20 7A 2C 6D 6E 75 5F 6C 70 0D 0A 09 69 6E 63 r z,mnu_lp...inc
024F60: 20 6C 3A 20 6A 72 20 6D 6E 75 5F 6C 70 0D 0A 2E l: jr mnu_lp...
024F70: 6D 6E 75 73 65 6C 09 6C 64 20 61 2C 6C 3A 20 6F mnusel.ld a,l: o
024F80: 72 20 61 3A 20 72 65 74 0D 0A 0D 0A 09 3B 3E 3E r a: ret.....;>>
024F90: 3E 20 52 53 58 20 69 6E 76 6F 6B 65 0D 0A 0D 0A > RSX invoke....
024FA0: 2E 72 73 78 09 6C 64 20 64 65 2C 26 41 46 30 30 .rsx.ld de,&AF00
024FB0: 0D 0A 2E 72 73 78 6C 70 09 6C 64 20 61 2C 28 68 ...rsxlp.ld a,(h
024FC0: 6C 29 3A 20 6C 64 20 28 64 65 29 2C 61 0D 0A 09 l): ld (de),a...
024FD0: 69 6E 63 20 68 6C 3A 20 69 6E 63 20 64 65 0D 0A inc hl: inc de..
024FE0: 09 62 69 74 20 37 2C 61 3A 20 6A 72 20 7A 2C 72 .bit 7,a: jr z,r
024FF0: 73 78 6C 70 0D 0A 09 6C 64 20 68 6C 2C 26 41 46 sxlp...ld hl,&AF
025000: 30 30 0D 0A 09 6A 70 20 26 42 43 44 34 0D 0A 0D 00...jp &BCD4...
025010: 0A 09 3B 3E 3E 3E 20 53 74 72 69 6E 67 20 70 72 ..;>>> String pr
025020: 69 6E 74 20 72 6F 75 74 69 6E 65 20 76 32 0D 0A int routine v2..
025030: 0D 0A 2E 73 74 72 6E 67 32 09 6C 64 20 61 2C 28 ...strng2.ld a,(
025040: 68 6C 29 3A 20 6F 72 20 61 3A 20 72 65 74 20 7A hl): or a: ret z
025050: 0D 0A 09 63 61 6C 6C 20 26 42 42 35 41 3A 20 69 ...call &BB5A: i
025060: 6E 63 20 68 6C 0D 0A 09 64 6A 6E 7A 20 73 74 72 nc hl...djnz str
025070: 6E 67 32 3A 20 72 65 74 0D 0A 0D 0A 09 3B 3E 3E ng2: ret.....;>>
025080: 3E 20 45 64 69 74 20 6C 69 6E 65 0D 0A 09 3B 20 > Edit line...;
025090: 20 20 20 28 48 4C 20 69 73 20 62 75 66 66 65 72 (HL is buffer
0250A0: 20 61 64 64 72 65 73 73 2C 20 43 20 69 73 20 6D address, C is m
0250B0: 61 78 69 6D 75 6D 20 6C 65 6E 67 74 68 20 2D 20 aximum length -
0250C0: 72 65 74 75 72 6E 73 20 6C 65 6E 67 74 68 20 69 returns length i
0250D0: 6E 20 42 29 0D 0A 0D 0A 2E 65 64 69 74 6C 6E 09 n B).....editln.
0250E0: 63 61 6C 6C 20 26 42 42 38 31 0D 0A 09 6C 64 20 call &BB81...ld
0250F0: 62 2C 30 0D 0A 2E 65 64 69 74 6C 70 09 63 61 6C b,0...editlp.cal
025100: 0A 2E 74 6D 6D 61 69 6E 09 64 62 20 22 52 53 32 ..tmmain.db "RS2
025110: 33 32 20 73 65 74 74 69 6E 67 73 22 2C 30 0D 0A 32 settings",0..
025120: 09 64 62 20 22 43 61 70 74 75 72 65 2F 65 63 68 .db "Capture/ech
025130: 6F 22 2C 30 0D 0A 09 64 62 20 22 46 69 6C 65 20 o",0...db "File
025140: 74 72 61 6E 73 66 65 72 22 2C 30 0D 0A 09 64 62 transfer",0...db
025150: 20 22 44 69 73 63 20 6F 70 65 72 61 74 69 6F 6E "Disc operation
025160: 73 22 2C 30 0D 0A 09 64 62 20 22 44 69 61 6C 6C s",0...db "Diall
025170: 69 6E 67 20 6D 65 6E 75 22 2C 30 0D 0A 69 66 20 ing menu",0..if
025180: 6B 64 73 3A 09 65 6C 73 65 3A 20 64 62 20 22 48 kds:.else: db "H
025190: 61 6E 67 20 75 70 22 2C 30 0D 0A 65 6E 64 69 66 ang up",0..endif
0251A0: 3A 09 64 62 20 32 35 35 0D 0A 0D 0A 2E 74 6D 64 :.db 255.....tmd
0251B0: 69 72 09 64 62 20 22 44 69 72 65 63 74 6F 72 79 ir.db "Directory
0251C0: 20 31 22 2C 30 2C 22 44 69 72 65 63 74 6F 72 79 1",0,"Directory
0251D0: 20 32 22 2C 30 2C 22 44 69 72 65 63 74 6F 72 79 2",0,"Directory
0251E0: 20 33 22 2C 30 2C 22 44 69 72 65 63 74 6F 72 79 3",0,"Directory
0251F0: 20 34 22 2C 30 0D 0A 09 64 62 20 22 44 69 72 65 4",0...db "Dire
025200: 63 74 6F 72 79 20 35 22 2C 30 2C 22 44 69 72 65 ctory 5",0,"Dire
025210: 63 74 6F 72 79 20 36 22 2C 30 2C 22 44 69 72 65 ctory 6",0,"Dire
025220: 63 74 6F 72 79 20 37 22 2C 30 2C 22 44 69 72 65 ctory 7",0,"Dire
025230: 63 74 6F 72 79 20 38 22 2C 30 0D 0A 09 64 62 20 ctory 8",0...db
025240: 32 35 35 0D 0A 2E 74 6D 64 69 73 63 09 64 62 20 255...tmdisc.db
025250: 22 43 61 74 61 6C 6F 67 75 65 22 2C 30 2C 22 41 "Catalogue",0,"A
025260: 22 2C 30 2C 22 42 22 2C 30 2C 22 45 72 61 73 65 ",0,"B",0,"Erase
025270: 22 2C 30 2C 22 52 65 6E 61 6D 65 22 2C 30 2C 22 ",0,"Rename",0,"
025280: 55 73 65 72 22 2C 30 2C 22 54 79 70 65 22 2C 30 User",0,"Type",0
025290: 2C 32 35 35 0D 0A 2E 74 6D 63 61 70 74 09 64 62 ,255...tmcapt.db
0252A0: 20 22 43 61 74 61 6C 6F 67 75 65 22 2C 30 2C 22 "Catalogue",0,"
0252B0: 4F 70 65 6E 20 63 61 70 74 75 72 65 22 2C 30 2C Open capture",0,
0252C0: 22 43 6C 6F 73 65 20 63 61 70 74 75 72 65 22 2C "Close capture",
0252D0: 30 2C 22 45 63 68 6F 20 66 69 6C 65 22 2C 30 2C 0,"Echo file",0,
0252E0: 32 35 35 0D 0A 2E 74 6D 66 69 6C 65 09 64 62 20 255...tmfile.db
0252F0: 22 43 61 74 61 6C 6F 67 75 65 22 2C 30 2C 22 44 "Catalogue",0,"D
025300: 6C 20 26 42 42 30 36 0D 0A 09 63 70 20 31 33 3A l &BB06...cp 13:
025310: 20 6A 72 20 7A 2C 65 6C 5F 63 72 0D 0A 09 63 70 jr z,el_cr...cp
025320: 20 31 32 37 3A 20 6A 72 20 7A 2C 65 6C 5F 64 65 127: jr z,el_de
025330: 6C 0D 0A 09 6C 64 20 65 2C 61 0D 0A 09 20 6C 64 l...ld e,a... ld
025340: 20 61 2C 62 3A 20 63 70 20 63 3A 20 6A 72 20 7A a,b: cp c: jr z
025350: 2C 65 64 69 74 6C 70 09 3B 6D 61 78 69 6D 75 6D ,editlp.;maximum
025360: 20 6C 65 6E 67 74 68 3F 0D 0A 09 6C 64 20 61 2C length?...ld a,
025370: 65 0D 0A 09 63 70 20 33 32 3A 20 6A 72 20 63 2C e...cp 32: jr c,
025380: 65 64 69 74 6C 70 0D 0A 09 62 69 74 20 37 2C 61 editlp...bit 7,a
025390: 3A 20 6A 72 20 6E 7A 2C 65 64 69 74 6C 70 0D 0A : jr nz,editlp..
0253A0: 09 6C 64 20 28 68 6C 29 2C 61 3A 20 69 6E 63 20 .ld (hl),a: inc
0253B0: 68 6C 3A 20 69 6E 63 20 62 0D 0A 09 63 61 6C 6C hl: inc b...call
0253C0: 20 26 42 42 35 41 3A 20 6A 72 20 65 64 69 74 6C &BB5A: jr editl
0253D0: 70 0D 0A 2E 65 6C 5F 63 72 09 63 61 6C 6C 20 26 p...el_cr.call &
0253E0: 42 42 38 34 09 09 09 3B 63 61 72 72 69 61 67 65 BB84...;carriage
0253F0: 20 72 65 74 75 72 6E 0D 0A 09 6C 64 20 61 2C 62 return...ld a,b
025400: 3A 20 63 70 20 63 3A 20 72 65 74 20 7A 0D 0A 09 : cp c: ret z...
025410: 6C 64 20 28 68 6C 29 2C 30 3A 20 72 65 74 0D 0A ld (hl),0: ret..
025420: 2E 65 6C 5F 64 65 6C 09 6C 64 20 61 2C 62 3A 20 .el_del.ld a,b:
025430: 6F 72 20 61 3A 20 6A 72 20 7A 2C 65 64 69 74 6C or a: jr z,editl
025440: 70 09 3B 63 61 6E 27 74 20 64 65 6C 65 74 65 20 p.;can't delete
025450: 77 69 74 68 20 6E 6F 20 63 68 61 72 61 63 74 65 with no characte
025460: 72 73 21 0D 0A 09 64 65 63 20 68 6C 3A 20 6C 64 rs!...dec hl: ld
025470: 20 28 68 6C 29 2C 30 3A 20 64 65 63 20 62 0D 0A (hl),0: dec b..
025480: 09 6C 64 20 61 2C 38 3A 20 63 61 6C 6C 20 26 42 .ld a,8: call &B
025490: 42 35 41 0D 0A 09 6C 64 20 61 2C 31 36 3A 20 63 B5A...ld a,16: c
0254A0: 61 6C 6C 20 26 42 42 35 41 0D 0A 09 6A 72 20 65 all &BB5A...jr e
0254B0: 64 69 74 6C 70 0D 0A 0D 0A 09 3B 3E 3E 3E 20 49 ditlp.....;>>> I
0254C0: 6E 70 75 74 20 66 69 6C 65 6E 61 6D 65 0D 0A 0D nput filename...
0254D0: 0A 2E 69 6E 70 75 74 66 09 70 75 73 68 20 68 6C ..inputf.push hl
0254E0: 3A 20 63 61 6C 6C 20 26 42 42 38 31 0D 0A 09 6C : call &BB81...l
0254F0: 64 20 62 2C 30 0D 0A 2E 67 69 6E 6B 65 79 09 63 d b,0...ginkey.c
025500: 3A 20 6C 64 20 68 6C 2C 74 70 62 6C 6F 63 6B 2B : ld hl,tpblock+
025510: 32 0D 0A 09 6C 64 20 28 69 78 29 2C 6C 3A 20 6C 2...ld (ix),l: l
025520: 64 20 28 69 78 2B 31 29 2C 68 0D 0A 09 6C 64 20 d (ix+1),h...ld
025530: 61 2C 31 3A 20 6C 64 20 28 69 79 2B 34 32 29 2C a,1: ld (iy+42),
025540: 61 3A 20 64 65 63 20 69 78 3A 20 64 65 63 20 69 a: dec ix: dec i
025550: 78 0D 0A 09 70 75 73 68 20 69 78 3A 20 70 6F 70 x...push ix: pop
025560: 20 68 6C 3A 20 6C 64 20 28 69 79 2B 37 30 29 2C hl: ld (iy+70),
025570: 6C 3A 20 6C 64 20 28 69 79 2B 37 31 29 2C 68 0D l: ld (iy+71),h.
025580: 0A 09 6A 72 20 64 6F 75 70 6C 64 0D 0A 0D 0A 0D ..jr doupld.....
025590: 0A 0D 0A 0D 0A 0D 0A 0D 0A 09 3B 3E 3E 3E 20 51 ..........;>>> Q
0255A0: 75 69 74 20 74 6F 20 43 4F 4D 20 6D 6F 64 65 0D uit to COM mode.
0255B0: 0A 0D 0A 2E 71 75 63 6F 6D 09 6C 64 20 61 2C 32 ....qucom.ld a,2
0255C0: 3A 20 63 61 6C 6C 20 26 42 43 30 45 3A 20 63 61 : call &BC0E: ca
0255D0: 6C 6C 20 26 42 43 30 32 0D 0A 09 6C 64 20 61 2C ll &BC02...ld a,
0255E0: 26 43 30 3A 20 63 61 6C 6C 20 26 42 43 30 38 09 &C0: call &BC08.
0255F0: 09 09 3B 63 6C 65 61 72 20 68 69 67 68 20 73 63 ..;clear high sc
025600: 72 65 65 6E 0D 0A 09 6C 64 20 68 6C 2C 28 6F 66 reen...ld hl,(of
025610: 66 73 65 74 29 3A 20 63 61 6C 6C 20 26 42 43 30 fset): call &BC0
025620: 35 09 09 3B 72 65 73 74 6F 72 65 20 6F 66 66 73 5..;restore offs
025630: 65 74 0D 0A 09 6C 64 20 68 6C 2C 28 63 68 61 70 et...ld hl,(chap
025640: 6F 73 29 3A 20 63 61 6C 6C 20 26 42 42 37 35 09 os): call &BB75.
025650: 09 3B 72 65 73 74 6F 72 65 20 63 68 61 72 61 63 .;restore charac
025660: 74 65 72 20 70 6F 73 69 74 69 6F 6E 0D 0A 09 63 ter position...c
025670: 61 6C 6C 20 72 65 73 75 6D 32 09 09 09 09 3B 22 all resum2....;"
025680: 63 61 72 72 79 20 6F 6E 22 20 74 6F 20 6D 6F 64 carry on" to mod
025690: 65 6D 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 35 29 em...ld a,(iy+5)
0256A0: 3A 20 73 75 62 20 32 3A 20 6A 70 20 63 2C 74 5F : sub 2: jp c,t_
0256B0: 63 6F 6D 0D 0A 0D 0A 09 6A 72 20 7A 2C 71 65 63 com.....jr z,qec
0256C0: 68 6F 0D 0A 09 63 70 20 32 3A 20 6A 72 20 7A 2C ho...cp 2: jr z,
0256D0: 71 75 70 6C 64 0D 0A 0D 0A 2E 71 64 6E 6C 64 09 qupld.....qdnld.
0256E0: 78 6F 72 20 61 3A 20 6C 64 20 28 69 79 2B 35 29 xor a: ld (iy+5)
0256F0: 2C 61 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 34 32 ,a...ld a,(iy+42
025700: 61 6C 6C 20 26 42 42 30 36 0D 0A 09 63 70 20 26 all &BB06...cp &
025710: 46 43 3A 20 6A 72 20 7A 2C 65 69 6E 70 66 0D 0A FC: jr z,einpf..
025720: 09 63 70 20 31 33 3A 20 6A 72 20 7A 2C 65 69 6E .cp 13: jr z,ein
025730: 70 66 0D 0A 09 63 70 20 33 32 3A 20 6A 72 20 63 pf...cp 32: jr c
025740: 2C 67 69 6E 6B 65 79 0D 0A 09 63 70 20 31 32 37 ,ginkey...cp 127
025750: 3A 20 6A 72 20 7A 2C 64 65 6C 65 74 65 3A 20 6A : jr z,delete: j
025760: 72 20 6E 63 2C 67 69 6E 6B 65 79 0D 0A 09 62 69 r nc,ginkey...bi
025770: 74 20 34 2C 62 3A 20 6A 72 20 6E 7A 2C 67 69 6E t 4,b: jr nz,gin
025780: 6B 65 79 0D 0A 09 63 61 6C 6C 20 26 42 42 35 41 key...call &BB5A
025790: 3A 20 6C 64 20 28 68 6C 29 2C 61 3A 20 69 6E 63 : ld (hl),a: inc
0257A0: 20 68 6C 0D 0A 09 69 6E 63 20 62 3A 20 6A 72 20 hl...inc b: jr
0257B0: 67 69 6E 6B 65 79 0D 0A 2E 64 65 6C 65 74 65 09 ginkey...delete.
0257C0: 6C 64 20 61 2C 62 3A 20 6F 72 20 61 3A 20 6A 72 ld a,b: or a: jr
0257D0: 20 7A 2C 67 69 6E 6B 65 79 0D 0A 09 64 65 63 20 z,ginkey...dec
0257E0: 62 3A 20 64 65 63 20 68 6C 3A 20 6C 64 20 28 68 b: dec hl: ld (h
0257F0: 6C 29 2C 30 0D 0A 09 6C 64 20 61 2C 38 3A 20 63 l),0...ld a,8: c
025800: 61 6C 6C 20 26 42 42 35 41 3A 20 6C 64 20 61 2C all &BB5A: ld a,
025810: 33 32 3A 20 63 61 6C 6C 20 26 42 42 35 41 0D 0A 32: call &BB5A..
025820: 09 6C 64 20 61 2C 38 3A 20 63 61 6C 6C 20 26 42 .ld a,8: call &B
025830: 42 35 41 3A 20 6A 72 20 67 69 6E 6B 65 79 0D 0A B5A: jr ginkey..
025840: 2E 65 69 6E 70 66 09 6C 64 20 28 68 6C 29 2C 30 .einpf.ld (hl),0
025850: 3A 20 70 6F 70 20 68 6C 3A 20 70 75 73 68 20 61 : pop hl: push a
025860: 66 3A 20 63 61 6C 6C 20 26 42 42 38 34 3A 20 70 f: call &BB84: p
025870: 6F 70 20 61 66 3A 20 63 70 20 26 46 43 3A 20 72 op af: cp &FC: r
025880: 65 74 0D 0A 0D 0A 09 3B 3E 3E 3E 20 44 61 74 61 et.....;>>> Data
025890: 0D 0A 0D 0A 2E 63 63 72 74 78 74 09 64 62 20 33 .....ccrtxt.db 3
0258A0: 31 2C 31 31 2C 32 2C 20 31 35 2C 31 2C 20 22 43 1,11,2, 15,1, "C
0258B0: 68 61 72 6C 65 79 27 73 20 43 6F 6D 6D 73 20 52 harley's Comms R
0258C0: 4F 4D 22 0D 0A 09 64 62 20 33 31 2C 31 31 2C 33 OM"...db 31,11,3
0258D0: 2C 20 31 35 2C 32 2C 20 32 30 38 2C 32 30 38 2C , 15,2, 208,208,
0258E0: 32 30 38 2C 32 30 38 2C 32 30 38 2C 32 30 38 2C 208,208,208,208,
0258F0: 32 30 38 2C 32 30 38 2C 32 30 38 2C 32 30 38 2C 208,208,208,208,
025900: 29 3A 20 6C 64 20 6C 2C 28 69 79 2B 37 30 29 3A ): ld l,(iy+70):
025910: 20 6C 64 20 68 2C 28 69 79 2B 37 31 29 0D 0A 09 ld h,(iy+71)...
025920: 70 75 73 68 20 68 6C 3A 20 70 6F 70 20 69 78 3A push hl: pop ix:
025930: 20 69 6E 63 20 69 78 3A 20 69 6E 63 20 69 78 0D inc ix: inc ix.
025940: 0A 09 63 61 6C 6C 20 64 6E 6C 64 5F 69 0D 0A 09 ..call dnld_i...
025950: 6A 70 20 74 5F 63 6F 6D 0D 0A 2E 71 75 70 6C 64 jp t_com...qupld
025960: 09 78 6F 72 20 61 3A 20 6C 64 20 28 69 79 2B 35 .xor a: ld (iy+5
025970: 29 2C 61 0D 0A 09 6C 64 20 61 2C 28 69 79 2B 34 ),a...ld a,(iy+4
025980: 32 29 3A 20 6C 64 20 6C 2C 28 69 79 2B 37 30 29 2): ld l,(iy+70)
025990: 3A 20 6C 64 20 68 2C 28 69 79 2B 37 31 29 0D 0A : ld h,(iy+71)..
0259A0: 09 70 75 73 68 20 68 6C 3A 20 70 6F 70 20 69 78 .push hl: pop ix
0259B0: 3A 20 69 6E 63 20 69 78 3A 20 69 6E 63 20 69 78 : inc ix: inc ix
0259C0: 0D 0A 09 63 61 6C 6C 20 75 70 6C 64 5F 69 0D 0A ...call upld_i..
0259D0: 09 6A 70 20 74 5F 63 6F 6D 0D 0A 2E 71 65 63 68 .jp t_com...qech
0259E0: 6F 09 78 6F 72 20 61 3A 20 6C 64 20 28 69 79 2B o.xor a: ld (iy+
0259F0: 35 29 2C 61 0D 0A 09 6C 64 20 61 2C 31 3A 20 63 5),a...ld a,1: c
025A00: 61 6C 6C 20 65 63 68 6F 5F 69 0D 0A 09 6A 70 20 all echo_i...jp
025A10: 74 5F 63 6F 6D 0D 0A 0D 0A 09 3B 3E 3E 3E 20 4D t_com.....;>>> M
025A20: 65 6E 75 20 73 75 62 72 6F 75 74 69 6E 65 0D 0A enu subroutine..
025A30: 0D 0A 2E 6D 65 6E 75 09 6C 64 20 61 2C 31 3A 20 ...menu.ld a,1:
025A40: 70 75 73 68 20 68 6C 3A 20 63 61 6C 6C 20 26 42 push hl: call &B
025A50: 42 39 30 3A 20 63 61 6C 6C 20 26 42 42 36 43 3A B90: call &BB6C:
025A60: 20 70 6F 70 20 68 6C 0D 0A 09 6C 64 20 62 2C 30 pop hl...ld b,0
025A70: 0D 0A 2E 6D 70 5F 6C 70 09 6C 64 20 61 2C 28 68 ...mp_lp.ld a,(h
025A80: 6C 29 0D 0A 09 63 70 20 32 35 35 3A 20 6A 72 20 l)...cp 255: jr
025A90: 7A 2C 73 65 6C 6D 6E 75 0D 0A 09 6C 64 20 61 2C z,selmnu...ld a,
025AA0: 31 31 3A 20 70 75 73 68 20 68 6C 3A 20 63 61 6C 11: push hl: cal
025AB0: 6C 20 26 42 42 36 46 3A 20 70 6F 70 20 68 6C 0D l &BB6F: pop hl.
025AC0: 0A 09 63 61 6C 6C 20 73 74 72 69 6E 67 0D 0A 09 ..call string...
025AD0: 6C 64 20 61 2C 31 30 3A 20 63 61 6C 6C 20 26 42 ld a,10: call &B
025AE0: 42 35 41 0D 0A 09 69 6E 63 20 62 3A 20 69 6E 63 B5A...inc b: inc
025AF0: 20 68 6C 0D 0A 09 6A 72 20 6D 70 5F 6C 70 0D 0A hl...jr mp_lp..
025B00: 32 30 38 2C 32 30 38 2C 32 30 38 0D 0A 09 64 62 208,208,208...db
025B10: 20 32 30 38 2C 32 30 38 2C 32 30 38 2C 32 30 38 208,208,208,208
025B20: 2C 32 30 38 2C 32 30 38 2C 30 0D 0A 0D 0A 2E 75 ,208,208,0.....u
025B30: 73 74 78 74 09 64 62 20 31 32 2C 20 33 31 2C 31 stxt.db 12, 31,1
025B40: 31 2C 31 2C 20 31 35 2C 31 2C 20 22 53 65 6C 65 1,1, 15,1, "Sele
025B50: 63 74 20 75 73 65 72 20 61 72 65 61 3A 22 2C 20 ct user area:",
025B60: 30 0D 0A 2E 74 6F 73 74 78 74 09 64 62 20 31 32 0...tostxt.db 12
025B70: 2C 20 33 31 2C 31 31 2C 31 2C 20 31 35 2C 31 2C , 31,11,1, 15,1,
025B80: 20 22 54 69 6D 65 2D 6F 75 74 20 28 30 2E 30 32 "Time-out (0.02
025B90: 73 29 3A 22 2C 20 30 0D 0A 2E 65 72 61 74 78 74 s):", 0...eratxt
025BA0: 09 64 62 20 31 32 2C 20 33 31 2C 31 31 2C 31 2C .db 12, 31,11,1,
025BB0: 20 31 35 2C 31 2C 20 22 46 69 6C 65 20 74 6F 20 15,1, "File to
025BC0: 65 72 61 73 65 3A 22 2C 20 30 0D 0A 2E 74 79 70 erase:", 0...typ
025BD0: 74 78 74 09 64 62 20 31 32 2C 20 33 31 2C 31 31 txt.db 12, 31,11
025BE0: 2C 31 2C 20 31 35 2C 31 2C 20 22 46 69 6C 65 20 ,1, 15,1, "File
025BF0: 74 6F 20 74 79 70 65 3A 22 2C 20 30 0D 0A 2E 65 to type:", 0...e
025C00: 63 6F 74 78 74 09 64 62 20 31 32 2C 20 33 31 2C cotxt.db 12, 31,
025C10: 31 31 2C 31 2C 20 31 35 2C 31 2C 20 22 46 69 6C 11,1, 15,1, "Fil
025C20: 65 20 74 6F 20 65 63 68 6F 3A 22 2C 20 30 0D 0A e to echo:", 0..
025C30: 2E 63 70 74 74 78 74 09 64 62 20 31 32 2C 20 33 .cpttxt.db 12, 3
025C40: 31 2C 31 31 2C 31 2C 20 31 35 2C 31 2C 20 22 43 1,11,1, 15,1, "C
025C50: 61 70 74 75 72 65 20 66 69 6C 65 6E 61 6D 65 3A apture filename:
025C60: 22 2C 20 30 0D 0A 2E 63 6E 6F 74 78 74 09 64 62 ", 0...cnotxt.db
025C70: 20 31 32 2C 20 33 31 2C 31 31 2C 31 2C 20 31 35 12, 31,11,1, 15
025C80: 2C 31 2C 20 22 43 61 70 74 75 72 65 20 6E 6F 74 ,1, "Capture not
025C90: 20 61 63 74 69 76 65 22 2C 20 30 0D 0A 2E 64 73 active", 0...ds
025CA0: 66 74 78 74 09 64 62 20 31 32 2C 20 33 31 2C 31 ftxt.db 12, 31,1
025CB0: 31 2C 31 2C 20 31 35 2C 31 2C 20 22 46 69 6C 65 1,1, 15,1, "File
025CC0: 20 74 6F 20 64 6F 77 6E 6C 6F 61 64 3A 22 2C 20 to download:",
025CD0: 33 31 2C 31 31 2C 33 2C 20 30 0D 0A 2E 75 66 6E 31,11,3, 0...ufn
025CE0: 74 78 74 09 64 62 20 31 32 2C 20 33 31 2C 31 31 txt.db 12, 31,11
025CF0: 2C 31 2C 20 31 35 2C 31 2C 20 22 46 69 6C 65 73 ,1, 15,1, "Files
025D00: 0D 0A 2E 73 65 6C 6D 6E 75 09 6C 64 20 61 2C 33 ...selmnu.ld a,3
025D10: 3A 20 63 61 6C 6C 20 26 42 42 39 30 0D 0A 09 6C : call &BB90...l
025D20: 64 20 68 6C 2C 26 30 39 30 31 0D 0A 2E 6D 6E 75 d hl,&0901...mnu
025D30: 5F 6C 70 09 70 75 73 68 20 68 6C 3A 20 63 61 6C _lp.push hl: cal
025D40: 6C 20 26 42 42 37 35 3A 20 70 6F 70 20 68 6C 0D l &BB75: pop hl.
025D50: 0A 09 6C 64 20 61 2C 32 34 36 3A 20 63 61 6C 6C ..ld a,246: call
025D60: 20 26 42 42 35 41 0D 0A 09 63 61 6C 6C 20 26 42 &BB5A...call &B
025D70: 42 30 36 0D 0A 09 70 75 73 68 20 61 66 3A 20 70 B06...push af: p
025D80: 75 73 68 20 68 6C 3A 20 63 61 6C 6C 20 26 42 42 ush hl: call &BB
025D90: 37 35 0D 0A 09 6C 64 20 61 2C 33 32 3A 20 63 61 75...ld a,32: ca
025DA0: 6C 6C 20 26 42 42 35 41 3A 20 70 6F 70 20 68 6C ll &BB5A: pop hl
025DB0: 3A 20 70 6F 70 20 61 66 0D 0A 09 63 70 20 26 46 : pop af...cp &F
025DC0: 43 3A 20 6A 72 20 7A 2C 65 73 63 6D 6E 75 09 09 C: jr z,escmnu..
025DD0: 09 3B 45 53 43 0D 0A 09 63 70 20 32 34 30 3A 20 .;ESC...cp 240:
025DE0: 6A 72 20 7A 2C 6D 6E 75 75 70 09 09 09 3B 63 75 jr z,mnuup...;cu
025DF0: 72 73 6F 72 20 75 70 0D 0A 09 63 70 20 32 34 31 rsor up...cp 241
025E00: 3A 20 6A 72 20 7A 2C 6D 6E 75 64 77 6E 09 09 09 : jr z,mnudwn...
025E10: 3B 63 75 72 73 6F 72 20 64 6F 77 6E 0D 0A 09 63 ;cursor down...c
025E20: 70 20 32 32 34 3A 20 6A 72 20 7A 2C 6D 6E 75 73 p 224: jr z,mnus
025E30: 65 6C 09 09 09 3B 43 4F 50 59 0D 0A 09 63 70 20 el...;COPY...cp
025E40: 33 32 3A 20 6A 72 20 7A 2C 6D 6E 75 73 65 6C 09 32: jr z,mnusel.
025E50: 09 09 3B 73 70 61 63 65 0D 0A 09 63 70 20 34 39 ..;space...cp 49
025E60: 3A 20 6A 72 20 63 2C 6D 6E 75 5F 6C 70 09 09 09 : jr c,mnu_lp...
025E70: 3B 6E 6F 74 20 6E 75 6D 65 72 69 63 0D 0A 0D 0A ;not numeric....
025E80: 09 70 75 73 68 20 61 66 0D 0A 09 6C 64 20 61 2C .push af...ld a,
025E90: 62 3A 20 61 64 64 20 34 38 3A 20 6C 64 20 63 2C b: add 48: ld c,
025EA0: 61 0D 0A 09 70 6F 70 20 61 66 0D 0A 09 63 70 20 a...pop af...cp
025EB0: 63 3A 20 6A 72 20 63 2C 6E 75 6D 6F 70 74 3A 20 c: jr c,numopt:
025EC0: 6A 72 20 7A 2C 6E 75 6D 6F 70 74 0D 0A 09 6A 72 jr z,numopt...jr
025ED0: 20 6D 6E 75 5F 6C 70 0D 0A 0D 0A 2E 6E 75 6D 6F mnu_lp.....numo
025EE0: 70 74 09 73 75 62 20 34 38 3A 20 72 65 74 0D 0A pt.sub 48: ret..
025EF0: 2E 65 73 63 6D 6E 75 09 78 6F 72 20 61 3A 20 72 .escmnu.xor a: r
025F00: 20 74 6F 20 75 70 6C 6F 61 64 22 2C 20 33 31 2C to upload", 31,
025F10: 31 31 2C 32 2C 20 22 28 45 4E 54 45 52 20 74 6F 11,2, "(ENTER to
025F20: 20 66 69 6E 69 73 68 29 3A 22 2C 20 33 31 2C 31 finish):", 31,1
025F30: 31 2C 34 2C 20 30 0D 0A 2E 75 73 66 74 78 74 09 1,4, 0...usftxt.
025F40: 64 62 20 31 32 2C 20 33 31 2C 31 31 2C 31 2C 20 db 12, 31,11,1,
025F50: 31 35 2C 31 2C 20 22 46 69 6C 65 20 74 6F 20 75 15,1, "File to u
025F60: 70 6C 6F 61 64 3A 22 2C 20 33 31 2C 31 31 2C 33 pload:", 31,11,3
025F70: 2C 20 30 0D 0A 2E 72 65 6E 74 78 74 09 64 62 20 , 0...rentxt.db
025F80: 31 32 2C 20 33 31 2C 31 31 2C 31 2C 20 31 35 2C 12, 31,11,1, 15,
025F90: 31 2C 20 22 53 6F 75 72 63 65 20 66 69 6C 65 6E 1, "Source filen
025FA0: 61 6D 65 3A 22 2C 20 30 0D 0A 2E 72 65 32 74 78 ame:", 0...re2tx
025FB0: 74 09 64 62 20 33 31 2C 31 31 2C 35 2C 20 22 44 t.db 31,11,5, "D
025FC0: 65 73 74 69 6E 61 74 69 6F 6E 20 66 69 6C 65 6E estination filen
025FD0: 61 6D 65 3A 22 2C 20 30 0D 0A 2E 61 74 6F 74 78 ame:", 0...atotx
025FE0: 74 09 64 62 20 22 61 75 74 6F 22 2C 30 0D 0A 2E t.db "auto",0...
025FF0: 73 76 64 74 78 74 09 64 62 20 33 31 2C 33 2C 31 svdtxt.db 31,3,1
026000: 39 2C 20 31 35 2C 31 2C 20 22 53 61 76 65 20 64 9, 15,1, "Save d
026010: 69 72 65 63 74 6F 72 79 22 2C 30 0D 0A 2E 6B 65 irectory",0...ke
026020: 79 74 78 74 09 64 62 20 31 30 2C 31 30 2C 31 33 ytxt.db 10,10,13
026030: 2C 20 22 50 72 65 73 73 20 61 6E 79 20 6B 65 79 , "Press any key
026040: 3A 20 22 2C 30 0D 0A 2E 6B 79 32 74 78 74 09 64 : ",0...ky2txt.d
026050: 62 20 33 31 2C 31 31 2C 33 2C 20 22 50 72 65 73 b 31,11,3, "Pres
026060: 73 20 61 6E 79 20 6B 65 79 3A 20 22 2C 30 0D 0A s any key: ",0..
026070: 2E 63 64 6E 61 6D 65 09 64 62 20 22 43 48 41 52 .cdname.db "CHAR
026080: 4C 45 59 20 2E 44 49 52 22 0D 0A 2E 64 72 61 74 LEY .DIR"...drat
026090: 78 74 09 64 62 20 22 41 22 2B 31 32 38 0D 0A 2E xt.db "A"+128...
0260A0: 64 72 62 74 78 74 09 64 62 20 22 42 22 2B 31 32 drbtxt.db "B"+12
0260B0: 38 0D 0A 2E 65 72 63 74 78 74 09 64 62 20 22 45 8...erctxt.db "E
0260C0: 52 22 2C 22 41 22 2B 31 32 38 0D 0A 2E 72 65 63 R","A"+128...rec
0260D0: 74 78 74 09 64 62 20 22 52 45 22 2C 22 4E 22 2B txt.db "RE","N"+
0260E0: 31 32 38 0D 0A 2E 75 73 65 74 78 74 09 64 62 20 128...usetxt.db
0260F0: 22 55 53 45 22 2C 22 52 22 2B 31 32 38 0D 0A 0D "USE","R"+128...
026100: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
026110: 20 00 01 00 02 09 4E E5 20 00 C7 02 00 00 00 02 .....N. .......
026120: 20 00 C3 02 00 00 00 02 20 00 C8 02 00 00 00 02 ....... .......
026130: 20 00 C4 02 00 00 00 02 20 00 C9 02 00 00 00 02 ....... .......
026140: 20 00 C5 02 00 00 00 02 20 00 C1 02 00 00 00 02 ....... .......
026150: 20 00 C6 02 00 00 00 02 20 00 C2 02 00 00 00 02 ....... .......
026160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
026170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
026180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
026190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0261A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0261B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0261C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0261D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0261E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0261F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
026200: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026210: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026220: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026230: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026240: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026250: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026260: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026270: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026280: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026290: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0262A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0262B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0262C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0262D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0262E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0262F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026300: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026310: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026320: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026330: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026340: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026350: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026360: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026370: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026380: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026390: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0263A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0263B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0263C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0263D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0263E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0263F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026400: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026410: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026420: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026430: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026440: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026450: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026460: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026470: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026480: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026490: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0264A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0264B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0264C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0264D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0264E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0264F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026500: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026510: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026520: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026530: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026540: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026550: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026560: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026570: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026580: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026590: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0265A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0265B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0265C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0265D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0265E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0265F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026600: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026610: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026620: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026630: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026640: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026650: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026660: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026670: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026680: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026690: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0266A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0266B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0266C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0266D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0266E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0266F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026700: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026710: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026720: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026730: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026740: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026750: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026760: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026770: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026780: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026790: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0267A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0267B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0267C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0267D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0267E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0267F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026800: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026810: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026820: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026830: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026840: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026850: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026860: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026870: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026880: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026890: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0268A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0268B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0268C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0268D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0268E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0268F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026900: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026910: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026920: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026930: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026940: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026950: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026960: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026970: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026980: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026990: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0269A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0269B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0269C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0269D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0269E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0269F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026A00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026A10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026A20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026A30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026A40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026A50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026A60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026A70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026A80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026A90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026AA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026AB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026AC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026AD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026AE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026AF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026B00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026B10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026B20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026B30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026B40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026B50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026B60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026B70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026B80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026B90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026BA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026BB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026BC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026BD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026BE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026BF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026C00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026C10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026C20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026C30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026C40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026C50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026C60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026C70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026C80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026C90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026CA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026CB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026CC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026CD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026CE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026CF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026D00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026D10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026D20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026D30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026D40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026D50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026D60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026D70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026D80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026D90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026DA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026DB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026DC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026DD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026DE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026DF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
026E00: 6F 77 6E 6C 6F 61 64 20 28 72 65 63 65 69 76 65 ownload (receive
026E10: 29 22 2C 30 2C 22 55 70 6C 6F 61 64 20 28 73 65 )",0,"Upload (se
026E20: 6E 64 29 22 2C 30 2C 22 53 65 6C 65 63 74 20 70 nd)",0,"Select p
026E30: 72 6F 74 6F 63 6F 6C 22 2C 30 2C 32 35 35 0D 0A rotocol",0,255..
026E40: 2E 74 6D 72 73 09 64 62 20 22 42 61 75 64 20 72 .tmrs.db "Baud r
026E50: 61 74 65 22 2C 30 2C 22 44 61 74 61 20 77 6F 72 ate",0,"Data wor
026E60: 64 22 2C 30 2C 22 53 65 6E 64 20 62 72 65 61 6B d",0,"Send break
026E70: 22 2C 30 0D 0A 09 64 62 20 22 58 4F 4E 20 63 6F ",0...db "XON co
026E80: 6E 74 72 6F 6C 22 2C 30 2C 22 4C 6F 63 61 6C 20 ntrol",0,"Local
026E90: 65 63 68 6F 22 2C 30 0D 0A 69 66 20 6B 64 73 3A echo",0..if kds:
026EA0: 09 65 6C 73 65 3A 20 64 62 20 22 48 61 72 64 77 .else: db "Hardw
026EB0: 61 72 65 20 68 61 6E 64 73 68 61 6B 65 22 2C 30 are handshake",0
026EC0: 0D 0A 65 6E 64 69 66 3A 09 64 62 20 32 35 35 0D ..endif:.db 255.
026ED0: 0A 0D 0A 2E 74 6D 62 61 75 64 09 64 62 20 22 31 ....tmbaud.db "1
026EE0: 39 32 30 30 22 2C 30 2C 22 39 36 30 30 22 2C 30 9200",0,"9600",0
026EF0: 2C 22 34 38 30 30 22 2C 30 2C 22 32 34 30 30 22 ,"4800",0,"2400"
026F00: 2C 30 2C 22 31 32 30 30 22 2C 30 2C 22 31 32 30 ,0,"1200",0,"120
026F10: 30 2F 37 35 22 2C 30 0D 0A 09 64 62 20 22 37 35 0/75",0...db "75
026F20: 2F 31 32 30 30 22 2C 30 2C 22 36 30 30 22 2C 30 /1200",0,"600",0
026F30: 2C 22 33 30 30 22 2C 30 2C 32 35 35 0D 0A 2E 74 ,"300",0,255...t
026F40: 62 73 65 74 73 09 64 77 20 31 39 32 30 30 2C 31 bsets.dw 19200,1
026F50: 39 32 30 30 2C 39 36 30 30 2C 39 36 30 30 2C 34 9200,9600,9600,4
026F60: 38 30 30 2C 34 38 30 30 2C 32 34 30 30 2C 32 34 800,4800,2400,24
026F70: 30 30 2C 31 32 30 30 2C 31 32 30 30 2C 31 32 30 00,1200,1200,120
026F80: 30 2C 37 35 2C 37 35 2C 31 32 30 30 0D 0A 09 64 0,75,75,1200...d
026F90: 77 20 36 30 30 2C 36 30 30 2C 33 30 30 2C 33 30 w 600,600,300,30
026FA0: 30 0D 0A 2E 74 6D 77 6F 72 64 09 64 62 20 22 38 0...tmword.db "8
026FB0: 4E 31 22 2C 30 2C 22 37 45 31 22 2C 30 2C 32 35 N1",0,"7E1",0,25
026FC0: 35 0D 0A 2E 74 6D 68 73 68 6B 09 64 62 20 22 48 5...tmhshk.db "H
026FD0: 61 6E 64 73 68 61 6B 65 20 6F 6E 22 2C 30 2C 22 andshake on",0,"
026FE0: 48 61 6E 64 73 68 61 6B 65 20 6F 66 66 22 2C 30 Handshake off",0
026FF0: 2C 32 35 35 0D 0A 2E 74 6D 78 6F 6E 09 64 62 20 ,255...tmxon.db
027000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0270A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0270B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0270C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0270D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0270E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0270F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0271A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0271B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0271C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0271D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0271E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0271F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027200: 22 58 4F 4E 20 63 6F 6E 74 72 6F 6C 20 6F 6E 22 "XON control on"
027210: 2C 30 2C 22 58 4F 4E 20 63 6F 6E 74 72 6F 6C 20 ,0,"XON control
027220: 6F 66 66 22 2C 30 2C 32 35 35 0D 0A 2E 74 6D 6C off",0,255...tml
027230: 6F 63 6C 09 64 62 20 22 4C 6F 63 61 6C 20 65 63 ocl.db "Local ec
027240: 68 6F 20 6F 6E 22 2C 30 2C 22 4C 6F 63 61 6C 20 ho on",0,"Local
027250: 65 63 68 6F 20 6F 66 66 22 2C 30 2C 32 35 35 0D echo off",0,255.
027260: 0A 2E 74 6D 70 72 6F 74 09 64 62 20 22 58 4D 6F ..tmprot.db "XMo
027270: 64 65 6D 22 2C 30 2C 22 58 4D 6F 64 65 6D 2D 31 dem",0,"XModem-1
027280: 6B 22 2C 30 2C 22 59 4D 6F 64 65 6D 20 62 61 74 k",0,"YModem bat
027290: 63 68 22 2C 30 2C 32 35 35 1A 0D 0A 74 66 62 75 ch",0,255...tfbu
0272A0: 66 66 09 65 71 75 20 26 32 30 30 30 09 09 09 3B ff.equ &2000...;
0272B0: 74 65 72 6D 69 6E 61 6C 20 66 69 6C 65 20 62 75 terminal file bu
0272C0: 66 66 65 72 0D 0A 74 70 62 6C 6F 63 6B 09 65 71 ffer..tpblock.eq
0272D0: 75 20 26 33 30 30 30 09 09 09 3B 74 65 72 6D 69 u &3000...;termi
0272E0: 6E 61 6C 20 70 61 72 61 6D 65 74 65 72 20 62 6C nal parameter bl
0272F0: 6F 63 6B 0D 0A 6F 66 66 73 65 74 09 65 71 75 20 ock..offset.equ
027300: 2C 30 2C 22 31 32 30 30 22 2C 30 2C 22 31 32 30 ,0,"1200",0,"120
027310: 30 2F 37 35 22 2C 30 0D 0A 09 64 62 20 22 37 35 0/75",0...db "75
027320: 2F 31 32 30 30 22 2C 30 2C 22 36 30 30 22 2C 30 /1200",0,"600",0
027330: 2C 22 33 30 30 22 2C 30 2C 32 35 35 0D 0A 2E 74 ,"300",0,255...t
027340: 62 73 65 74 73 09 64 77 20 31 39 32 30 30 2C 31 bsets.dw 19200,1
027350: 39 32 30 30 2C 39 36 30 30 2C 39 36 30 30 2C 34 9200,9600,9600,4
027360: 38 30 30 2C 34 38 30 30 2C 32 34 30 30 2C 32 34 800,4800,2400,24
027370: 30 30 2C 31 32 30 30 2C 31 32 30 30 2C 31 32 30 00,1200,1200,120
027380: 30 2C 37 35 2C 37 35 2C 31 32 30 30 0D 0A 09 64 0,75,75,1200...d
027390: 77 20 36 30 30 2C 36 30 30 2C 33 30 30 2C 33 30 w 600,600,300,30
0273A0: 30 0D 0A 2E 74 6D 77 6F 72 64 09 64 62 20 22 38 0...tmword.db "8
0273B0: 4E 31 22 2C 30 2C 22 37 45 31 22 2C 30 2C 32 35 N1",0,"7E1",0,25
0273C0: 35 0D 0A 2E 74 6D 68 73 68 6B 09 64 62 20 22 48 5...tmhshk.db "H
0273D0: 61 6E 64 73 68 61 6B 65 20 6F 6E 22 2C 30 2C 22 andshake on",0,"
0273E0: 48 61 6E 64 73 68 61 6B 65 20 6F 66 66 22 2C 30 Handshake off",0
0273F0: 2C 32 35 35 0D 0A 2E 74 6D 78 6F 6E 09 64 62 20 ,255...tmxon.db
027400: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
027410: 21 00 01 00 02 09 4E E5 21 00 C1 02 00 00 00 02 !.....N.!.......
027420: 21 00 C6 02 00 00 00 02 21 00 C2 02 00 00 00 02 !.......!.......
027430: 21 00 C7 02 00 00 00 02 21 00 C3 02 00 00 00 02 !.......!.......
027440: 21 00 C8 02 00 00 00 02 21 00 C4 02 00 00 00 02 !.......!.......
027450: 21 00 C9 02 00 00 00 02 21 00 C5 02 00 00 00 02 !.......!.......
027460: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
027470: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
027480: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
027490: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0274A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0274B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0274C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0274D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0274E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0274F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
027500: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027510: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027520: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027530: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027540: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027550: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027560: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027570: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027580: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027590: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0275A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0275B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0275C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0275D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0275E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0275F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027600: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027610: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027620: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027630: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027640: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027650: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027660: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027670: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027680: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027690: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0276A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0276B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0276C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0276D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0276E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0276F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027700: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027710: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027720: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027730: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027740: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027750: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027760: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027770: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027780: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027790: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0277A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0277B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0277C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0277D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0277E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0277F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027800: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027810: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027820: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027830: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027840: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027850: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027860: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027870: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027880: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027890: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0278A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0278B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0278C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0278D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0278E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0278F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027900: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027910: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027920: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027930: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027940: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027950: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027960: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027970: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027980: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027990: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0279A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0279B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0279C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0279D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0279E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0279F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027A00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027A10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027A20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027A30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027A40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027A50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027A60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027A70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027A80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027A90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027AA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027AB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027AC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027AD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027AE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027AF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027B00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027B10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027B20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027B30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027B40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027B50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027B60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027B70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027B80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027B90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027BA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027BB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027BC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027BD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027BE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027BF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027C00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027C10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027C20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027C30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027C40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027C50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027C60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027C70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027C80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027C90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027CA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027CB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027CC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027CD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027CE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027CF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027D00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027D10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027D20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027D30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027D40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027D50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027D60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027D70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027D80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027D90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027DA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027DB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027DC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027DD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027DE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027DF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027E00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027E10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027E20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027E30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027E40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027E50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027E60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027E70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027E80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027E90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027EA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027EB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027EC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027ED0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027EE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027EF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027F00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027F10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027F20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027F30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027F40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027F50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027F60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027F70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027F80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027F90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027FA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027FB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027FC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027FD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027FE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
027FF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0280A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0280B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0280C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0280D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0280E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0280F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0281A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0281B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0281C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0281D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0281E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0281F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028200: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028210: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028220: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028230: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028240: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028250: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028260: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028270: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028280: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028290: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0282A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0282B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0282C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0282D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0282E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0282F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028300: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028310: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028320: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028330: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028340: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028350: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028360: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028370: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028380: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028390: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0283A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0283B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0283C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0283D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0283E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0283F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028400: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028410: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028420: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028430: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028440: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028450: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028460: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028470: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028480: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028490: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0284A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0284B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0284C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0284D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0284E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0284F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028500: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028510: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028520: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028530: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028540: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028550: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028560: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028570: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028580: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028590: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0285A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0285B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0285C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0285D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0285E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0285F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028600: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028610: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028620: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028630: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028640: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028650: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028660: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028670: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028680: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028690: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0286A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0286B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0286C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0286D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0286E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0286F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028700: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
028710: 22 00 01 00 02 09 4E E5 22 00 C4 02 00 00 00 02 ".....N.".......
028720: 22 00 C9 02 00 00 00 02 22 00 C5 02 00 00 00 02 ".......".......
028730: 22 00 C1 02 00 00 00 02 22 00 C6 02 00 00 00 02 ".......".......
028740: 22 00 C2 02 00 00 00 02 22 00 C7 02 00 00 00 02 ".......".......
028750: 22 00 C3 02 00 00 00 02 22 00 C8 02 00 00 00 02 ".......".......
028760: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
028770: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
028780: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
028790: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0287A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0287B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0287C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0287D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0287E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0287F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
028800: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028810: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028820: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028830: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028840: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028850: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028860: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028870: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028880: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028890: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0288A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0288B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0288C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0288D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0288E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0288F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028900: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028910: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028920: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028930: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028940: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028950: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028960: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028970: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028980: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028990: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0289A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0289B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0289C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0289D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0289E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0289F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028A00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028A10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028A20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028A30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028A40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028A50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028A60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028A70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028A80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028A90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028AA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028AB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028AC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028AD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028AE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028AF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028B00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028B10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028B20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028B30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028B40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028B50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028B60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028B70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028B80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028B90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028BA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028BB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028BC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028BD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028BE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028BF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028C00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028C10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028C20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028C30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028C40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028C50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028C60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028C70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028C80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028C90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028CA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028CB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028CC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028CD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028CE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028CF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028D00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028D10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028D20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028D30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028D40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028D50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028D60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028D70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028D80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028D90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028DA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028DB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028DC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028DD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028DE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028DF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028E00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028E10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028E20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028E30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028E40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028E50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028E60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028E70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028E80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028E90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028EA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028EB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028EC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028ED0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028EE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028EF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028F00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028F10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028F20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028F30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028F40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028F50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028F60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028F70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028F80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028F90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028FA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028FB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028FC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028FD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028FE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
028FF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0290A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0290B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0290C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0290D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0290E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0290F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0291A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0291B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0291C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0291D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0291E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0291F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029200: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029210: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029220: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029230: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029240: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029250: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029260: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029270: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029280: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029290: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0292A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0292B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0292C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0292D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0292E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0292F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029300: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029310: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029320: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029330: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029340: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029350: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029360: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029370: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029380: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029390: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0293A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0293B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0293C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0293D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0293E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0293F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029400: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029410: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029420: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029430: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029440: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029450: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029460: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029470: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029480: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029490: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0294A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0294B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0294C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0294D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0294E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0294F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029500: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029510: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029520: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029530: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029540: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029550: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029560: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029570: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029580: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029590: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0295A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0295B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0295C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0295D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0295E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0295F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029600: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029610: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029620: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029630: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029640: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029650: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029660: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029670: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029680: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029690: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0296A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0296B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0296C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0296D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0296E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0296F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029700: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029710: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029720: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029730: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029740: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029750: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029760: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029770: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029780: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029790: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0297A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0297B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0297C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0297D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0297E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0297F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029800: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029810: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029820: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029830: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029840: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029850: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029860: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029870: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029880: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029890: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0298A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0298B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0298C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0298D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0298E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0298F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029900: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029910: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029920: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029930: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029940: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029950: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029960: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029970: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029980: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029990: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0299A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0299B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0299C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0299D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0299E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0299F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029A00: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
029A10: 23 00 01 00 02 09 4E E5 23 00 C7 02 00 00 00 02 #.....N.#.......
029A20: 23 00 C3 02 00 00 00 02 23 00 C8 02 00 00 00 02 #.......#.......
029A30: 23 00 C4 02 00 00 00 02 23 00 C9 02 00 00 00 02 #.......#.......
029A40: 23 00 C5 02 00 00 00 02 23 00 C1 02 00 00 00 02 #.......#.......
029A50: 23 00 C6 02 00 00 00 02 23 00 C2 02 00 00 00 02 #.......#.......
029A60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
029A70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
029A80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
029A90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
029AA0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
029AB0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
029AC0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
029AD0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
029AE0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
029AF0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
029B00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029B10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029B20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029B30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029B40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029B50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029B60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029B70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029B80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029B90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029BA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029BB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029BC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029BD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029BE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029BF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029C00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029C10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029C20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029C30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029C40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029C50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029C60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029C70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029C80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029C90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029CA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029CB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029CC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029CD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029CE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029CF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029D00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029D10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029D20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029D30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029D40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029D50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029D60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029D70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029D80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029D90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029DA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029DB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029DC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029DD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029DE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029DF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029E00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029E10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029E20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029E30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029E40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029E50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029E60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029E70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029E80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029E90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029EA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029EB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029EC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029ED0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029EE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029EF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029F00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029F10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029F20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029F30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029F40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029F50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029F60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029F70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029F80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029F90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029FA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029FB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029FC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029FD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029FE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
029FF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A0A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A0B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A0C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A0D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A0E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A0F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A1A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A1B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A1C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A1D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A1E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A1F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A200: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A210: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A220: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A230: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A240: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A250: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A260: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A270: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A280: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A290: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A2A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A2B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A2C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A2D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A2E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A2F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A300: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A310: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A320: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A330: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A340: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A350: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A360: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A370: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A380: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A390: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A3A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A3B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A3C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A3D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A3E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A3F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A400: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A410: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A420: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A430: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A440: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A450: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A460: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A470: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A480: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A490: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A4A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A4B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A4C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A4D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A4E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A4F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A500: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A510: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A520: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A530: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A540: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A550: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A560: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A570: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A580: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A590: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A5A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A5B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A5C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A5D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A5E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A5F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A600: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A610: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A620: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A630: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A640: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A650: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A660: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A670: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A680: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A690: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A6A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A6B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A6C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A6D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A6E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A6F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A700: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A710: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A720: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A730: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A740: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A750: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A760: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A770: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A780: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A790: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A7A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A7B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A7C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A7D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A7E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A7F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A800: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A810: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A820: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A830: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A840: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A850: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A860: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A870: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A880: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A890: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A8A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A8B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A8C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A8D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A8E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A8F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A900: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A910: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A920: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A930: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A940: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A950: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A960: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A970: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A980: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A990: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A9A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A9B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A9C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A9D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A9E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02A9F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AA00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AA10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AA20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AA30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AA40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AA50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AA60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AA70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AA80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AA90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AAA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AAB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AAC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AAD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AAE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AAF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AB00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AB10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AB20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AB30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AB40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AB50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AB60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AB70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AB80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AB90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ABA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ABB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ABC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ABD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ABE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ABF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AC00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AC10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AC20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AC30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AC40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AC50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AC60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AC70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AC80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AC90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ACA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ACB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ACC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ACD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ACE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ACF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AD00: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
02AD10: 24 00 01 00 02 09 4E E5 24 00 C1 02 00 00 00 02 $.....N.$.......
02AD20: 24 00 C6 02 00 00 00 02 24 00 C2 02 00 00 00 02 $.......$.......
02AD30: 24 00 C7 02 00 00 00 02 24 00 C3 02 00 00 00 02 $.......$.......
02AD40: 24 00 C8 02 00 00 00 02 24 00 C4 02 00 00 00 02 $.......$.......
02AD50: 24 00 C9 02 00 00 00 02 24 00 C5 02 00 00 00 02 $.......$.......
02AD60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02AD70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02AD80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02AD90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02ADA0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02ADB0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02ADC0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02ADD0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02ADE0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02ADF0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02AE00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AE10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AE20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AE30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AE40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AE50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AE60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AE70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AE80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AE90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AEA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AEB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AEC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AED0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AEE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AEF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AF00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AF10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AF20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AF30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AF40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AF50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AF60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AF70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AF80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AF90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AFA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AFB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AFC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AFD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AFE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02AFF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B0A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B0B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B0C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B0D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B0E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B0F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B1A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B1B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B1C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B1D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B1E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B1F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B200: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B210: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B220: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B230: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B240: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B250: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B260: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B270: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B280: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B290: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B2A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B2B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B2C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B2D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B2E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B2F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B300: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B310: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B320: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B330: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B340: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B350: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B360: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B370: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B380: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B390: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B3A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B3B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B3C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B3D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B3E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B3F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B400: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B410: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B420: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B430: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B440: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B450: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B460: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B470: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B480: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B490: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B4A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B4B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B4C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B4D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B4E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B4F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B500: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B510: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B520: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B530: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B540: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B550: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B560: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B570: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B580: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B590: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B5A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B5B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B5C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B5D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B5E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B5F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B600: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B610: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B620: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B630: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B640: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B650: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B660: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B670: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B680: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B690: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B6A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B6B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B6C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B6D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B6E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B6F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B700: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B710: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B720: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B730: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B740: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B750: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B760: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B770: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B780: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B790: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B7A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B7B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B7C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B7D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B7E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B7F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B800: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B810: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B820: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B830: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B840: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B850: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B860: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B870: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B880: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B890: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B8A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B8B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B8C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B8D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B8E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B8F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B900: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B910: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B920: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B930: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B940: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B950: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B960: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B970: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B980: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B990: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B9A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B9B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B9C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B9D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B9E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02B9F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BA00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BA10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BA20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BA30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BA40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BA50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BA60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BA70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BA80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BA90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BAA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BAB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BAC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BAD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BAE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BAF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BB00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BB10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BB20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BB30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BB40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BB50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BB60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BB70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BB80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BB90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BBA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BBB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BBC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BBD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BBE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BBF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BC00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BC10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BC20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BC30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BC40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BC50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BC60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BC70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BC80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BC90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BCA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BCB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BCC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BCD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BCE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BCF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BD00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BD10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BD20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BD30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BD40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BD50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BD60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BD70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BD80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BD90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BDA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BDB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BDC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BDD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BDE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BDF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BE00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BE10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BE20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BE30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BE40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BE50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BE60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BE70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BE80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BE90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BEA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BEB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BEC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BED0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BEE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BEF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BF00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BF10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BF20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BF30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BF40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BF50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BF60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BF70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BF80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BF90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BFA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BFB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BFC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BFD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BFE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02BFF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C000: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
02C010: 25 00 01 00 02 09 4E E5 25 00 C4 02 00 00 00 02 %.....N.%.......
02C020: 25 00 C9 02 00 00 00 02 25 00 C5 02 00 00 00 02 %.......%.......
02C030: 25 00 C1 02 00 00 00 02 25 00 C6 02 00 00 00 02 %.......%.......
02C040: 25 00 C2 02 00 00 00 02 25 00 C7 02 00 00 00 02 %.......%.......
02C050: 25 00 C3 02 00 00 00 02 25 00 C8 02 00 00 00 02 %.......%.......
02C060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02C070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02C080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02C090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02C0A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02C0B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02C0C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02C0D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02C0E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02C0F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02C100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C1A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C1B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C1C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C1D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C1E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C1F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C200: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C210: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C220: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C230: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C240: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C250: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C260: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C270: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C280: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C290: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C2A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C2B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C2C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C2D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C2E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C2F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C300: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C310: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C320: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C330: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C340: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C350: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C360: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C370: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C380: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C390: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C3A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C3B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C3C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C3D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C3E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C3F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C400: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C410: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C420: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C430: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C440: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C450: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C460: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C470: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C480: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C490: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C4A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C4B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C4C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C4D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C4E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C4F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C500: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C510: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C520: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C530: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C540: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C550: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C560: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C570: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C580: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C590: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C5A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C5B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C5C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C5D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C5E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C5F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C600: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C610: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C620: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C630: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C640: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C650: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C660: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C670: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C680: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C690: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C6A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C6B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C6C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C6D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C6E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C6F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C700: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C710: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C720: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C730: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C740: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C750: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C760: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C770: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C780: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C790: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C7A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C7B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C7C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C7D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C7E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C7F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C800: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C810: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C820: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C830: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C840: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C850: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C860: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C870: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C880: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C890: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C8A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C8B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C8C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C8D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C8E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C8F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C900: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C910: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C920: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C930: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C940: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C950: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C960: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C970: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C980: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C990: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C9A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C9B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C9C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C9D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C9E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02C9F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CA00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CA10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CA20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CA30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CA40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CA50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CA60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CA70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CA80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CA90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CAA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CAB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CAC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CAD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CAE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CAF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CB00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CB10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CB20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CB30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CB40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CB50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CB60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CB70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CB80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CB90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CBA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CBB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CBC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CBD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CBE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CBF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CC00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CC10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CC20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CC30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CC40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CC50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CC60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CC70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CC80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CC90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CCA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CCB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CCC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CCD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CCE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CCF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CD00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CD10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CD20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CD30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CD40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CD50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CD60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CD70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CD80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CD90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CDA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CDB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CDC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CDD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CDE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CDF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CE00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CE10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CE20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CE30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CE40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CE50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CE60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CE70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CE80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CE90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CEA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CEB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CEC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CED0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CEE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CEF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CF00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CF10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CF20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CF30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CF40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CF50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CF60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CF70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CF80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CF90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CFA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CFB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CFC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CFD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CFE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02CFF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D0A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D0B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D0C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D0D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D0E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D0F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D1A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D1B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D1C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D1D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D1E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D1F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D200: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D210: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D220: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D230: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D240: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D250: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D260: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D270: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D280: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D290: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D2A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D2B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D2C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D2D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D2E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D2F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D300: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
02D310: 26 00 01 00 02 09 4E E5 26 00 C7 02 00 00 00 02 &.....N.&.......
02D320: 26 00 C3 02 00 00 00 02 26 00 C8 02 00 00 00 02 &.......&.......
02D330: 26 00 C4 02 00 00 00 02 26 00 C9 02 00 00 00 02 &.......&.......
02D340: 26 00 C5 02 00 00 00 02 26 00 C1 02 00 00 00 02 &.......&.......
02D350: 26 00 C6 02 00 00 00 02 26 00 C2 02 00 00 00 02 &.......&.......
02D360: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02D370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02D380: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02D390: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02D3A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02D3B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02D3C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02D3D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02D3E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02D3F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02D400: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D410: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D420: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D430: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D440: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D450: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D460: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D470: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D480: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D490: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D4A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D4B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D4C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D4D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D4E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D4F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D500: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D510: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D520: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D530: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D540: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D550: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D560: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D570: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D580: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D590: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D5A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D5B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D5C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D5D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D5E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D5F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D600: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D610: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D620: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D630: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D640: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D650: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D660: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D670: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D680: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D690: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D6A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D6B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D6C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D6D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D6E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D6F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D700: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D710: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D720: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D730: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D740: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D750: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D760: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D770: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D780: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D790: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D7A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D7B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D7C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D7D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D7E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D7F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D800: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D810: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D820: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D830: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D840: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D850: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D860: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D870: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D880: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D890: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D8A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D8B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D8C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D8D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D8E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D8F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D900: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D910: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D920: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D930: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D940: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D950: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D960: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D970: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D980: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D990: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D9A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D9B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D9C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D9D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D9E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02D9F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DA00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DA10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DA20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DA30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DA40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DA50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DA60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DA70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DA80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DA90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DAA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DAB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DAC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DAD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DAE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DAF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DB00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DB10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DB20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DB30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DB40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DB50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DB60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DB70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DB80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DB90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DBA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DBB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DBC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DBD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DBE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DBF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DC00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DC10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DC20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DC30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DC40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DC50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DC60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DC70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DC80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DC90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DCA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DCB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DCC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DCD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DCE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DCF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DD00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DD10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DD20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DD30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DD40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DD50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DD60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DD70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DD80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DD90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DDA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DDB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DDC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DDD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DDE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DDF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DE00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DE10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DE20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DE30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DE40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DE50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DE60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DE70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DE80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DE90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DEA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DEB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DEC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DED0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DEE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DEF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DF00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DF10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DF20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DF30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DF40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DF50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DF60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DF70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DF80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DF90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DFA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DFB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DFC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DFD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DFE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02DFF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E0A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E0B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E0C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E0D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E0E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E0F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E1A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E1B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E1C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E1D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E1E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E1F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E200: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E210: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E220: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E230: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E240: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E250: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E260: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E270: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E280: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E290: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E2A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E2B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E2C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E2D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E2E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E2F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E300: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E310: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E320: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E330: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E340: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E350: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E360: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E370: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E380: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E390: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E3A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E3B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E3C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E3D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E3E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E3F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E400: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E410: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E420: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E430: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E440: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E450: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E460: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E470: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E480: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E490: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E4A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E4B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E4C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E4D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E4E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E4F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E500: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E510: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E520: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E530: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E540: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E550: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E560: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E570: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E580: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E590: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E5A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E5B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E5C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E5D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E5E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E5F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E600: 54 72 61 63 6B 2D 49 6E 66 6F 0D 0A 00 00 00 00 Track-Info......
02E610: 27 00 01 00 02 09 4E E5 27 00 C1 02 00 00 00 02 '.....N.'.......
02E620: 27 00 C6 02 00 00 00 02 27 00 C2 02 00 00 00 02 '.......'.......
02E630: 27 00 C7 02 00 00 00 02 27 00 C3 02 00 00 00 02 '.......'.......
02E640: 27 00 C8 02 00 00 00 02 27 00 C4 02 00 00 00 02 '.......'.......
02E650: 27 00 C9 02 00 00 00 02 27 00 C5 02 00 00 00 02 '.......'.......
02E660: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02E670: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02E680: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02E690: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02E6A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02E6B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02E6C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02E6D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02E6E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02E6F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
02E700: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E710: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E720: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E730: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E740: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E750: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E760: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E770: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E780: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E790: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E7A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E7B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E7C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E7D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E7E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E7F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E800: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E810: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E820: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E830: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E840: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E850: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E860: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E870: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E880: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E890: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E8A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E8B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E8C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E8D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E8E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E8F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E900: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E910: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E920: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E930: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E940: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E950: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E960: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E970: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E980: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E990: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E9A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E9B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E9C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E9D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E9E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02E9F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EA00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EA10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EA20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EA30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EA40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EA50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EA60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EA70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EA80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EA90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EAA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EAB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EAC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EAD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EAE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EAF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EB00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EB10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EB20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EB30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EB40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EB50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EB60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EB70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EB80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EB90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EBA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EBB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EBC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EBD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EBE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EBF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EC00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EC10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EC20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EC30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EC40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EC50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EC60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EC70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EC80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EC90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ECA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ECB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ECC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ECD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ECE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ECF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ED00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ED10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ED20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ED30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ED40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ED50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ED60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ED70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ED80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02ED90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EDA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EDB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EDC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EDD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EDE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EDF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EE00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EE10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EE20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EE30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EE40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EE50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EE60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EE70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EE80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EE90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EEA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EEB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EEC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EED0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EEE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EEF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EF00: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EF10: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EF20: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EF30: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EF40: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EF50: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EF60: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EF70: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EF80: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EF90: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EFA0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EFB0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EFC0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EFD0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EFE0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02EFF0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F0A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F0B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F0C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F0D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F0E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F0F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F1A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F1B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F1C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F1D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F1E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F1F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F200: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F210: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F220: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F230: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F240: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F250: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F260: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F270: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F280: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F290: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F2A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F2B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F2C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F2D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F2E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F2F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F300: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F310: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F320: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F330: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F340: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F350: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F360: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F370: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F380: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F390: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F3A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F3B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F3C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F3D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F3E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F3F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F400: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F410: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F420: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F430: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F440: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F450: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F460: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F470: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F480: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F490: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F4A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F4B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F4C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F4D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F4E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F4F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F500: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F510: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F520: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F530: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F540: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F550: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F560: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F570: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F580: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F590: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F5A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F5B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F5C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F5D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F5E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F5F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F600: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F610: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F620: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F630: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F640: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F650: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F660: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F670: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F680: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F690: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F6A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F6B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F6C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F6D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F6E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F6F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F700: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F710: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F720: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F730: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F740: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F750: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F760: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F770: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F780: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F790: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F7A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F7B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F7C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F7D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F7E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F7F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F800: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F810: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F820: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F830: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F840: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F850: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F860: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F870: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F880: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F890: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F8A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F8B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F8C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F8D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F8E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
02F8F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
RESULT OF SEARCH :
PRO=55 CHEA=0 COD=14 MUSI=0 COP=25 GRA=25 WRIT=22 198=0 199=10 STARTER=0 KBI=0 CAAV=0 L.TOURNIER=0
EXTENDED CPC DSK File SAMdisk190122( NBANKS CRC DIVIDE HEXIN
P1 HEXINP2 INLINE INPUTF INVERT MK$PARAM MODE1TO2 MULTI
PDECA PDECA SPCPDECHL PHEX PSTRING pop hl pop bc ret
.ldhlaicall ldhla inc hl ret &8000 write "edit.bin" nolist fversequ 2
*** ROUTInid a,h and &3F or &40 ld h,a ld a,b ld b,&7F out (c),c ld a,(h
l) ld c,&C0 out (c),c pop hl pop bc ret .ldahlicall ldahl inc hl ret
*** SUBRLD (HL),A - extra banks .ldhlapush bc push hl ld b,a ld a,h and &C0
rlca rlca add &C4 ld c,a ld a,h and &3F or &40 ld h,a ld a,b ld b,&7F
out (c),c ld (hl),a ld c,&C0 out (c),c SPECCONV UCASE WINLOAD CRTC
FADEL2H FADESCR KEYSCAN -READ ME NLINE PSG READREG
SPCSCAN EDIT SRCG!"#$%&'()GRAPHICSSRCA*+,-./012PRO-EXT SRC3456789ABBBS
MODACDEFGHIJK *** SUBRUpdate 16-bit CRC in HL On entry, current byte in E
.crcld b,8shift 8 times .updlprlc eshift input adc hl,hlshift crc jr nc,s
kipitjump if no carry ld a,h xor &10 ld h,axor with &1021 ld a,l xor &21 ld l,
a .skipitdjnz updlpdone ret .crc ld b,8shift 8 times .updlp rlc eshift
input adc hl,hlshift rlca add &C4 ld c,a ld a,h and &3F or &40 ld h,a ld
a,b ld b,&7F out (c),c ld (hl),a ld c,&C0 out (c),c COMMS SRC6LMNOPQRCONTR
OL MOD STUVFILE MODWXYZabcdefFILE MODghiLIBRARY MODjklSIO MODOmnopqrst
uvSUBROUT MODwxyzTERMINALMODTERMINALMOD *** SUBRDivide HL by BC return rounded
result in DE .divideld de,0 .divlpor a sbc hl,bc jr c,divadAdjustment if ca
rry inc de ret zReturn if exactly right jr divlpElse loop .divadadd hl,bcRe
store to previous value or a rr b rr cHalve BC or a sbc hl,bcAnd compare with
HL ret c inc de retIncrease DE if HL 0 or more IDE $$$),a *** SUBRLD A,(HL)
- extra banks .ldahlpush bc push hl ld b,a ld a,h and &C0 rlca rlca add &
C4 ld c,a ld a,h and &3F or &40 ld h,a ld a,b ld b,&7F out (c),c ld a,(h
l) ld c,&C0 out (c),c pop hl pop bc ret .ldahlicall ldahl inc hl ret
*** SUBRLD (HL),A - extra banks .ldhlapush bc push hl ld b,a ld a,h and &C0
rlca rlca add &C4 ld c,a ld a,h and &3F or &40 ld h,a ld a,b ld b,&7F
out (c),c ld (hl),a ld c,&C0 out (c),c N *** SUBR2-byte hex input subrouti
ne .hexinpld hl,&AF40input buffer ld b,0characters typed in call &BB81curso
r on .waitchcall &BB06wait for character cp &FC jp z,&BB84ESCAPE set zero, i
ndicates ESC pressed cp 13 jr z,exhinpRETURN cp &7F jr nz,notdelDEL ld a,b
or a jr z,waitchdon't delete if no input yet! dec hl dec bdecrement char co
unt and location ld a,8 call &BB5Abackspace... ld a,32 call &BB5ASPACE over th
e character... ld a,8 call &BB5Aand backspace again jr waitch .notdelcall u
case cp "F"+1 jr nc,waitchget another character if over "F" cp "0" jr c,wait
chget another character if below "0" cp "A" jr nc,okchok if "A" or above cp
"9"+1 jr nc,waitchget another character if above "9" .okchld (hl),a inc hl inc
b call &BB5A bit 2,b jr z,waitch4 characters yet .exhinpcall &BB84cursor of
f ld a,b or a jr z,nohinpnothing input! ld de,0 ld hl,&AF40 .hcloopex de,h
l add hl,hl add hl,hl add hl,hl add hl,hl ex de,hl ld a,(hl) cp "A" jr nc
,letter sub 48 jr add2de .lettersub 55 .add2depush bc ld c,a ld b,0 ex hl
,de add hl,bc ex hl,de pop bc inc hl djnz hcloop ex hl,de ld a,1 or azero
0 carry 0, indicates number in HL ret .nohinpld a,1 or a scfzero 0 carry 1,
indicates no input ret EXINP2 $$$2-byte hex input subroutine .hexinp ld hl,
&AF40 input buffer ld b,0 *** SUBR1-by
te hex input subroutine .onehexcall getip1 jr nc,onehex rlca rlca rlca rlca
ld c,a call getip1 jr c,ndel1 ld a,8 call &BB5A ld a,16 call &BB5A
jr onehex .ndel1or c jp &BB84 .getip1call &BB81 call &BB06 call uca
se cp &7F ret z call chkhex jr nc,getip1 call &BB5A ld a,e ret a rlca rl
ca ld c,a re IDE $$$),a *** SUBRIn-line string print subroutine follo
w "CALL inline" with "STR message" .inlineld (hlst),hl pop hl push af .ginc
hrld a,(hl) bit 7,a res 7,a call &BB5A inc hl jr z,ginchr pop af push hl ld
hl,(hlst) ret .hlstdw 0 LINE $$$ring print subroutine (CALL inline - STR
message) .inlineld (hlst),hl pop hl push af .ginchrld a,(hl) EXINP2 $$$2
-byte hex input subroutine .hexinp ld hl,&AF40 input buff
er ld b,0 N *** SUBRConvert MODE 1 screen to MODE 2 .m
1to2ld hl,&C000 .mloopld c,(hl) call routne ld (hl),d inc hl ld a,h or a jr n
z,mloop ret .routneld d,0 ld b,4 .loopld a,c and 17 rrc c or a jr z,
aset cp 16 jr nz,not16 ld a,3 jr aset .not16cp 1 jr z,aset ld a,2 .a
setor d rrca rrca ld d,a djnz loop ret c,(hl) call If filename leng
th 0, return ld a,1 retReturn with one parameter x,&AF00 ld (ix+0),
&02 ld (ix+1),&AF *** SUBRHighlight bar at screen address HL, B characte
rs long .invertpush af rlc b ld c,b .invol push hl ld b,c .invlp ld a,(hl)
xor 255 ld (hl),a inc hl djnz invlp pop hl ld a,8 add h ld h,a jr nc,i
nvol pop af ret ERT $$$ight bar at HL, B characters long .invertpush af
rlc b ld c,b .invol push hl ld b,c .invlp ld a,(hall &BB5A ld a,32 call &BB5A
ld a,8 call &BB5A jr ginkey .einpf ld (hl),0 pop hl push af call &BB84 pop
af cp & *** SUBRMultiply HL by A .multild d,h ld e,l ld hl,0 .multilor a
ret z add hl,de dec a jr multil e "#TRACK.Bor a jr nz,mloop ret .routneld d
,0 ld b,4 .loopld a,c and 17 rrc c or a jr z,aset cp 16 jr nz,not16
ld a,3 jr aset .not16cp 1 jr z,aset ld a,2 .asetor d rrca rrca ld d,a
djnz loop ret c,(hl) call If filename length 0, return ld a,1 retRe
turn with one parameter x,&AF00 ld (ix+0),&02 ld (ix+1),&AF
*** SUBRInput filename if not provided to RSX .nonampush hl ld ix,&AF00 l
d (ix+0),&02 ld (ix+1),&AF ld (ix+3),&05 ld (ix+4),&AFString descriptor block
&AF04 ld hl,ftext call string ld hl,&AF05 call inputf ld a,10 call &BB5A
ld a,13 call &BB5A pop hl ld (ix+2),b ld a,0 ret zNo parameter passed for E
SC/RETURN ld a,b or a ret zIf filename length 0, return ld a,1 retReturn with
one parameter x,&AF00 ld (ix+0),&02 ld (ix+1),&AF *** SUBRIn
put filename to buffer at HL (returns length in B) .inputfpush hl call &BB81
ld b,0 .ginkey call &BB18 cp &FC jr z,einpf cp 13 jr z,einpf cp 32 jr c
,ginkey cp 127 jr z,delete jr nc,ginkey bit 4,b jr nz,ginkey call &BB5A ld
(hl),a inc hl inc b jr ginkey .delete ld a,b or a jr z,ginkey dec b dec hl
ld (hl),0 ld a,8 call &BB5A ld a,32 call &BB5A ld a,8 call &BB5A jr ginkey
.einpf ld (hl),0 pop hl push af call &BB84 pop af cp &FC ret $$$,8 call &BB
5A jr ginkey .einpf ld (hl),0 pop hl push af call &BB84 pop af cp &FC ret
cp &FC jr cp &FC jr z,einpf cp 13 jr z,einpf cp 32 jr c,ginkey cp 127 jr
z,delete jr nc,ginkey bit 4,b jr nz,ginkey call &BB5A ld (hl),a inc hl in
c b jr ginkey .delete ld a,b or a jr z,ginkey dec b dec hl ld (hl),0 ld a,8
call &BB5A ld a,32 call &BB5A ld a,8 call &BB5A jr ginkey .einpf ld (hl),0
pop hl push af call &BB84 pop af cp & N *** SUBRPrint HL as (up to) 5-digit
decimal .prhlld c,0 ld de,10000 call prhlr ld de,1000 call prhlr ld de,100
call prhlr ld de,10 call prhlr ld c,1 ld de,1 .prhlrxor a .prhllpscf ccf sb
c hl,de jr c,prhlo inc a jr prhllp .prhloadd hl,de or a jr nz,prhly cp c ret z
.prhlyld c,1 add &30 call &BB5A ret all prhlr ld de,1000 callIf file
name length 0, return ld a,1 retReturn with one parameter x,&AF00 l
d (ix+0),&02 ld (ix+1),&AF *** SUBRPrint A as 3-digit decimal .prald
d,100 call pschr ld d,10 call pschr ld d,1 .pschrld c,0 .pslopsub d jr c,p
sfin inc c jr pslop .psfinadd d push af ld a,c add 48 call &BB5A pop af
ret ,0 .pslopsubd a,3 jr aset .not16cp 1 jr z,aset ld a,2 .asetor d r
rca rrca ld d,a djnz loop ret c,(hl) call If filename length 0, ret
urn ld a,1 retReturn with one parameter x,&AF00 ld (ix+0),&02 ld (i
x+1),&AF *** 2-byte hex print HL .tbthex ld a,h call hexprt
ld a,l call hexprt ret *** 1-byte hex print A .hex
prt ld b,2 ld c,a rra rra rra rra .hexmsk and &F
cp 10 jr nc,hexgrt add a,48 call &BB5A 0-9
jr hexbye .hexgrt add a,55 call &BB5A A-F .hexbye ld a,c
djnz hexmsk ret h 0, return ld a,1 ret
return, one parameter db *** SUBRPrint A as spaced 3-digit decimal .pral
d b,0 ld d,100 call pschr ld d,10 call pschr ld b,1 ld d,1 .pschrld c,0 .
pslopsub d jr c,psfin inc c jr pslop .psfinadd a,d push af ld a,c or a jr n
z,psnsp bit 0,b jr z,psspc .psnsp add 48 call &BB5A ld b,1 pop af ret .ps
spc ld a,32 call &BB5A pop af ret d d,1 .psIf filename length 0, return ld
a,1 retReturn with one parameter x,&AF00 ld (ix+0),&02 ld (ix+1),&A
F Nc ex de,hl dec a jp nz,lnloop ld bc,512 add hl,bc ex de,hl ld
bc,128 add hl,bc ex de,hl ld a,d or e jp nz,olloop ret rt Spectrum-sized s
creen from &4000 to &C000 (MODE 1) org &8000 nolist
ld hl,&C00ldildildildildildi ldildildildildildildildildildildildildildildild
i ldildildildildildildildildildildildildildildildi ldildildildildildildildildi
ldildildildildildildi ld bc,16 ex de,hl add hl,b *** SUBRCRTC register set
.crtcld a,b ld b,&BC out (c),a ld b,&BD out (c),c ret ld b,&BD out (c),
c ld a,2 call &BC0E ld hl,&4000 call &BC83 call &BC7A ld hl,&3FFB+3 ld
de,(height) add hl,de ld e,(hl) ld d,0 ld bc,0 dec hl dec hl dec hl res 6,h
.divlpor a sbc hl,de inc bc jr nz,divlp ld a,e ld de,&C000 ld hl,&4000 .mw
looppush af push bc push de ldir pop de pop bc ex de,hl call nline ex
de,hl pop af dec a jr nz,mwloop ret *** SUBRConvert A to upper case .ucase
cp "a" ret c cp "" ret nc sub 32 ret add &E0 ret tails db,olloop
ret rt Spectrum-sized screen from &4000 to &C000 (MODE 1) org &8000
nolist ld hl,&C00ldildildildildildi ldildildildildildildild
ildildildildildildildildi ldildildildildildildildildildildildildildildildi ldi
ldildildildildildildildildildildildildildildi ld bc,16 ex de,hl add hl,b **
* SUBRPrint null-terminated string from HL .stringld a,(hl) or a ret z call
&BB5A inc hl jr string yte hex print A .hexprt ld b,2 ld
c,a rra rra rra rra .hexmsk and &F cp 10 jr nc,hex
grt add a,48 call &BB5A 0-9 jr hexbye .hexgrt ad
d a,55 call &BB5A A-F .hexbye ld a,c djnz hexmsk
ret h 0, return ld a,1 ret return, one parameter
db *** SUBRLoad Advanced Art Studio (uncompressed) window file must already
be open uses &4000 as buffer .winlodld a,2 call &BC0E ld hl,&4000 call &BC
83 call &BC7A ld hl,&3FFB+3 ld de,(height) add hl,de ld e,(hl) ld d,0 ld bc,0
dec hl dec hl dec hl res 6,h .divlpor a sbc hl,de inc bc jr nz,divlp ld a,e
ld de,&C000 ld hl,&4000 .mwlooppush af push bc push de ldir pop de p
op bc ex de,hl call nline ex de,hl pop af dec a jr nz,mwloop ret *** SUBRC
onvert Spectrum-sized screen from &4000 to &C000 (MODE 1) ld hl,&C000 ld de
,&4000 ld bc,&4000 push de push hl ldir ld a,1 call &BC0E pop de pop hl
.olloopld a,24 .lnloopldildildildildildildildildildildildildildildildi ldi
ldildildildildildildildildildildildildildildi ldildildildildildildildildildildi
ldildildildildi ldildildildildildildildildildildildildildildildi ld bc,16 e
x de,hl add hl,b INLOAD $$$ Advanced Art Studio window file must alrea
dy be open loads file at &4000 .winlod ld a,2ld a,2 call &BC0E ld h
l,&4000 call &BC83 call &BC7A ld hl,&3FFB+3 ld de,(height) add hl,de ld e,(hl
) ld d,0 ld bc,0 dec hl dec hl dec hl res 6,h .divlpor a sbc hl,de inc bc jr
nz,divlp ld a,e ld de,&C000 ld hl,&4000 .mwlooppush af push bc push de l
dir pop de pop bc ex de,hl call nline ex de,hl pop af dec a jr nz,mwloo
p ret Net 6,cBC1 set (read register) .kloop ld b,&F6 out (c),cSend "read r
egister contents" signal to port C ld b,&F4 in a,(c)Get the contents off por
t A ld (hl),aPut in buffer inc hl inc cGo to next key block ld a,c
and 15 cp 10 jr nz,kloopLast key block been reached yet pop bcGet old s
tatus of port C ld a,&82 out (c),aRestore control port dec b out (c),
cRestore port C ld a,(keybuf+5)Get key data from block 5 of keyboard buffer
cp &7FSet zero if space key ret .keybufds 10 keysc ld hl,keybuff
address of buffer for keyboard block in a,(c)Get the contents off port A ld (
hl),aPut in buffer inc hl inc cGo to next key block ld a,c and 15
cp 10 jr nz,kloopLast key block been reached yet pop bcGet old status of p
ort C ld a,&82 out (c),aRestore control port dec b out (c),cRestore p
ort C ld a,(keybuf+5)Get key data from block 5 of keyboard buffer *** SUBRFa
de screen .fadeld hl,&C000 .fadeolld bc,2340 ld de,7 push hl .fadelp ld (h
l),0 add hl,de dec bc ld a,b or c jr nz,fadelp pop hl inc hl ld a,l cp 7
jr nz,fadeol ret push hl .fadelp ld (hl),0 add hl,de ret $$$ low s
creen to high screen .fdel2h ld hl,&C000 .fde2ol ld bc,2340 ld de,7
push hl .fde2lp res 7,oppush af push bc push de ldir pop de pop bc
ex de,hl call nline ex de,hl pop af dec a jr nz,mwloop ret *** SUBRHardware k
eyscan .keyscld hl,keybufAddress of buffer for keyboard block data ld bc,&F4
0E out (c),cPut 14 on PPI port A ld b,&F6 in a,(c)Get current status of por
t C and &30Preserve status of cassette ld c,a and place value in C register
or &C0 out (c),aWrite register out (c),c and quickly restore old sta
tus (NB 10ns) inc b ld a,&92 out (c),aControl word - port A input, port B i
nput push bcPreserve old status of port C s *** SUBRFade low screen to high
screen .fdel2hld hl,&C000 .fde2olld bc,2340 ld de,7 push hl .fde2lp res 7,
h ld a,(hl) set 7,h ld (hl),a add hl,de dec bc ld a,b or c jr nz,fde2lp
pop hl inc hl ld a,l cp 7 jr nz,fde2ol ret $$$ low screen to high screen
.fdel2h ld hl,&C000 .fde2ol ld bc,2340 ld de,7 push hl .fde2lp res
7,oppush af push bc push de ldir pop de pop bc ex de,hl call nline ex
de,hl pop af dec a jr nz,mwloop ret NSubroutines This side contains a sel
ection of subroutines I frequently call upon for machine code programs. Many of
them are far from the quickest routines possible for such tasks the division a
nd multiplication subroutines are particularly heavy-handed, for example, while
even the next screen line routine is quite slow. However, they form a time-
saving programming resource, and I hope you will find them as useful as I have.
You are welcome to use them in your own programs an acknowledgement that my co
de has been used would be welcome. Richard Fairhurst, October 1997 File
namePurpose BANKS .Read/write byte to extra memory CRC .CRC calculatio
n routine CRTC .Set CRTC register DIVIDE .Divide HL by BC, returning round
ed result in DE FADEL2H .Fade low screen to high screen FADESCR .Fade high scr
een to background HEXINP1 .Input 1 hex byte HEXINP2 .Input 2 hex bytes INPUTF
.Input filename KEYSCAN .Scan all keys on keyboard MODE1TO2.Convert M *** S
UBRRead PSG register C into D corrupts AF, BC .rregdi ld b,&F4 out (c),cPut
register on port A ld b,&F6 in a,(c)Get port C status and &30 ld c,a or &C0
out (c),a"Write register" to port C out (c),cRestore old status within 10n
s inc b ld a,&92 out (c),aSet control to port A input, port B input push bc
set 6,c ld b,&F6 out (c),cSet BC1/BDIR to "read register contents" ld b,&F4
in d,(c)Get contents pop bc ld a,&82 out (c),aRestore con *** SUBRNext line
down from HL .nlineld a,8 add h ld h,a and 64 ret nz ld bc,16304 sbc hl,bc
ret hl,bce,16304 or a sbc hl,de pop de ret e code source (c) Ri
chard Fairhurst 1993 org &9000 write "graphics.bin" d 15 cp 10 jr nz
,kloopLast key block been reached yet pop bcGet old status of port C ld a,&82
out (c),aRestore control port dec b out (c),cRestore port C ld a,(k
eybuf+5)Get key data from block 5 of keyboard buffertrol port dec b out (c),
cRestore port C res 4,d ei ret er in C on exit - contents in D
corru6 in a,(c)Get port C status and &30 ld c,a or &C0 out (c),a"Write
register" to port C out (c),cRestore old status within 10ns inc b ld a,&92
out (c),aSet control to port A input, port B input push bc set 6,c ld b,&F6
out (c),cSet BC1/BDIR to "read register contents" ld b,&F4 in d,(c)Get conten
ts pop bc ld a,&82 out (c),aRestore con *** SUBRHardware keyscan - space bar
only .keyscld bc,&F40E out (c),cPort A - register 14 ld bc,&F645 ld a,&C5Po
rt C - write out (c),a out (c),cPort C - read ld bc,&F792 out (c),cCont
rol - port A input ld bc,&F645 out (c),cPort C - read contents ld b ,&F4 in
a,(c)Port A - read ld bc,&F782 out (c),cControl - port A output cp &7F ret
.keyscld bc,&F40E out (c),cport A - register 14 ld bc,&F645 ld a,&C5port C
- write out (c),a *** SUBRWrite PSG register .psgld b,&F4 out (c),aSet up
register ld b,&F6 in a,(c) or &C0 out (c),a and &3F out (c),a ld b
,&F4 out (c),cSend data ld b,&F6 ld c,a or &80 out (c),a out (c),c re
t $$$ r3ister ld b,&F4 out (c),c ld b,&F6 ld c,a or &80 Restore control p
ort dec b out (c),cRestore port C ld a,(keybuf+5)Get key data from blo
ck 5 of keyboard buffer N Pro-Ext v1.50 a RealWorld Coding production for Sen
tinel font editor RSX library v1.0 21 March 1993 org &8000 write "e
dit.bin" nolist *** Initialise RSXs ld bc,comt ld hl,wksp jp &BCD1 .
wkspds 4 .comtdw namet jp gridijp invi jp loadijp savei jp setijp g
eti jp copyijp widti jp redoijp newi jp plotijp rsxoi .nametstr "GRI
D"str "INVERT" str "LOAD"str "SAVE" str "SET" str "GET" str "COPY"soop ld hl,
gpattnew column .crloop ld a,(hl) ld (de),a inc hl inc denew row in character
ld a,(hl) ld (de),a inc hl dec de ld a,8 add d ld d,a bit 7,d jr nz,crl
oop ld a,&C0 add d ld d,a inc de inc de djnz ccloop ld hl,32 add hl,de ex d
e,hl dec c jr nz,coloop ld hl,&C000 ld bc,48 ldircopy line to bottom ld h
l,&C000 ld b,193 .cplooppush hl ld a,(hl) ld de,48 add hl,de and 128 ld (h
l),a pop hl call &BC26 djnz cploop ret *** tr "WIDTH" str "REDO"str "NEW"
str "PLOT"str "RSXOFF" db 0 *** INVERT,width,height .invild hl,398 ld a
,(gsize) ld e,(ix+0) ld d,(ix+1) or a rl d rl e or a sbc hl,de or a sbc hl,d
e cp 4 jr z,invgy or a sbc hl,de or a sbc hl,de cp 2 jr z,invgy or a sbc hl,d
e or a sbc hl,de or a sbc hl,de or a sbc hl,de .invgypush hl ld l,(ix+2) l
d h,(ix+3) add hl,hl add hl,hl cp 4 jr z,invgx add hl,hl cp 2 jr z,invgx
add hl,hl .invgx ex de,hl pop hl push de push hl call &BBC0 ld de,1 ld h
l,&FFFE call &BBF3Get current state (TESTR 1,-2) push af ld de,&FFFF ld hl,2 c
all &BBC3 pop af xor 1 call &BBDEand invert pen accordingly call squaredraw
square pop hl pop de rr h rr l call &BC1D res 0,lfind screen address ld de
,gpatt ld b,8 .invclld a,(de) or (hl) ld (hl),a inc hl inc de ld a,(de) or (hl
) ld (hl),a dec hl inc de call &BC26 djnz invcl ret Subroutine to draw squa
reODE 1 screen to MODE 2 MK$PARAM.Make string parameter for RSX MULTI .Multi
ply HL by A NLINE .Go to next pixel line down PDECA .SPCPrint A as spaced
decimal PDECHL .Print HL as unspaced decimal PHEX .Print A or HL as hex P
SG .Send sound chip register PSTRING .Print string READREG .Read sound chi
p register SPCSCAN .Scan keyboard for space bar only SPECCONV.Convert Spectrum
-sized screen UCASE .Convert A to upper case WINLOAD .Load Advanced Art Stud
io window Convert A box .squareld a,(gnext) ld b,a rrc b rrc b dec a ld (di
men1),a neg ld (dimen2),a .sqlooppush bc ld de,(dimen1) ld hl,0 call &BBF9
ld de,0 ld hl,&FFFE call &BBC3 ld de,(dimen2) ld hl,0 call &BBF9 ld de,0
ld hl,&FFFE call &BBC3 pop bc djnz sqloop ret .dimen1dw &0000 .dimen2dw &F
F00 *** GRID,width,height Sizes...character maximum dimension 1x124 2x24
8 4x496 .gridild l,(ix+0) ld h,(ix+1) ld e,(ix+2) ld d,(ix+3) push hlPECCO
NV.Convert Spectrum-sized screen UCASE .Convert A to upper case WINLOAD .Loa
d Advanced Art Studio window R .Fade ODE 1 screen to MODE 2 MK$PARAM.Make stri
ng parameter for RSX MULTI .Multiply HL by A NLINE .Go to next pixel line
down PDECA .SPCPrint A as spaced decimal PDECHL .Print HL as unspaced decim
al PHEX .Print A or HL as hex PSG .Send sound chip register PSTRING .P
rint string READREG .Read sound chip register SPCSCAN .Scan keyboard for space
bar only S sbc hl,de pop hl jr nc,gotbig ex de,hl .gotbigdec hl ld de,24H
L now contains largest sbc hl,de jr c,ch1x1 sbc hl,de jr c,ch2x2 .ch4x4ld a,4
ld (gsize),a ld a,4 ld (gnext),a ld hl,pat4x4 jr gotch .ch2x2ld a,2 ld (gsiz
e),a ld a,8 ld (gnext),a ld hl,pat2x2 jr gotch .ch1x1ld a,1 ld (gsize),a ld
a,16 ld (gnext),a ld hl,pat1x1 jr gotch .gotchld de,gpattstore appropriate p
attern ld bc,16 ldir ld de,&C000 ld c,&18 .coloopld b,&18new line .ccl N
call invi ld l,(ix+2) ld h,(ix+3) add hl,hl ld de,392 add hl,de push hl
ld e,(ix+0) ld d,(ix+1) or a ld hl,190 sbc hl,de sbc hl,de pop de call &
BBEA ld de,1 ld hl,0 call &BBED .plot0 ld l,(ix+2) ld h,(ix+3) dec hl ld
(ix+2),l ld (ix+3),h ld a,h and l cp &FF jp nz,plotl pop hl ld (ix+2),l ld (
ix+3),h ld l,(ix+0) ld h,(ix+1) dec hl ld (ix+0),l ld (ix+1),h ld a,h and l c
p &FF jp nz,ploti ret *** SET,char,x,y,n% .seticall c .rliolld d,0 .rlil
1push bc call gbbyte pop bc ld (iy),a inc iy inc hl inc d ld a,d cp e jr nz,rl
il1 .rlil2ld (iy),0 inc iy inc d ld a,d cp (ix+2) jr nz,rlil2 dec c jr nz,rli
ol jp copye *** SAVE file must already be open .saveipush ix pop iy
ld hl,fileid ld b,10 .schklpld a,(hl) call &BC95 inc hl djnz schklp ld a
,(height) call &BC95 ld a,(lastlf) call &BC95 ld b,32 .strslppush bc ld a
,b call staddrfind start address calalcxy ld c,a ld a,(ix) or a jr nz,set1 l
d a,d cpl and c jp pbbyte .set1ld a,d or c jp pbbyte *** GET,char,x,y,
n% .geticall calcxy ld l,(ix) ld h,(ix+1) and d jr z,pixel0 ld (hl),1 inc
hl ld (hl),0 retPut into variable .pixel0ld (hl),0 inc hl ld (hl),0 ret +++
Subroutine to calculate xypos (returns addr HL, value A, mask D) .calcxyld a,
(ix+6) call staddr call gbbyte ld e,a ld d,0 inc hl ld a,(ix+2) .getiylcp
7 jr c,getiscFind start l gbbyte ld d,a call &BC95copy "width" byte ld a,(he
ight) ld b,a .stoslp ld c,d .stbslp inc hlcopy each character push bc cal
l gbbyte call &BC95 pop bc dec c jr nz,stbslp djnz stoslp pop bc inc b l
d a,123repeat until finished...! cp b jr nz,strslp call &BC8Fclose output fi
le ret *** LOAD,height file must already be open .loadipush ix pop i
y ld c,255 ld b,10 .chklpcall &BC80 xor c ld c,a djnz chklp ld a,c ld c
,address (y) sub 7 add hl,de jr getiyl .getiscld e,(ix+4) ld d,(ix+5)Find st
art address (y+x) add hl,de ld d,64Calculate bitwise value .clcbitor a jr z,g
otbit rrc d dec a jr clcbit .gotbitjp gbbyteGet byte *** RSXOFF .rsxoi
ld hl,(&BCD2) res 7,h call &B906lower ROM on inc hl inc hl inc hl ld e,(hl) i
nc hl ld d,(hl) push de ex de,hlHLworkspace pointer ld e,(hl) inc hl ld d,(
hl) ex de,hlHLaddress of RSX workspace ld e,(hl) inc hl1 cp 240 jp nz,lderr
call &BC80 ld (height),a call &BC80 ld (lastlf),a ld b,32 .strlppush bc
ld a,b call staddrfind start address call &BC80 call pbbyteput byte ld d,
a ld a,(height) ld b,a .stolp ld c,d .stblp inc hl push bc call &BC80 ca
ll pbbyte pop bc dec c jr nz,stblp djnz stolp pop bc inc b ld a,123 cp
b jr nz,strlp call &BC7Aclose input file ld hl,0 ld a,(height)calculate hei
ght dec a jr z,lastht ld e,a lNEW,height,lastlf,char .newild a,(ix+4) l
d (height),a ld a,(ix+2) ld (lastlf),a ld hl,buffer ld de,buffer+1 ld bc,511
ld (hl),0 ldir ld hl,buffer ld (hl),4 jr copye *** COPY,from,to .cop
yild a,(ix+2) call staddr ld a,h rlca rlca and 3 add &C4 ld b,&7F out (c),a re
s 7,h set 6,h ld de,buffer ld bc,512 ldir .copyeld a,(ix+0) call staddr ld
a,h rlca rlca and 3 add &C4 ld b,&7F out (c),a res 7,h set 6,h ex de,hl ld hl,
buffer ld bc,512 ld d,0 ld b,7 .multladd hl,de djnz multl .lasthtld a,(las
tlf) ld e,a ld d,0 add hl,de ex de,hl ld l,(iy) ld h,(iy+1)place in variable
ld (hl),e inc hl ld (hl),d ret .lderrcall &BC7D ret *** WIDTH,char,n%
.widtild a,(ix+2) call staddr call gbbyte ld l,(ix+0) ld h,(ix+1) ld (hl),a
inc hl ld (hl),0 ret *** PLOT,char,x,y .plotild l,(ix+2) ld h,(ix+3)
push hl .plotl dec ix dec ix call calcxy inc ix inc ix and d jr z,plot0 d
ir ld bc,&7FC0 out (c),c ret *** REDO,width,character .redoild iy,buffe
r ld a,(ix+2) ld (iy),a inc iy ld a,(ix+0) call staddr call gbbyte inc hl
cp (ix+2) ret zReturn if width the same jr c,larger ld bc,(height)New one sm
aller ld e,a ld d,0 .rsiolpush hl ld b,(ix+2) .rsilp push bc call gbbyte po
p bc ld (iy),a inc iy inc hl djnz rsilp pop hl add hl,de dec c jr nz,rsiol
jp copye .largerld bc,(height)New one larger ld e,a N ld d,(hl) pop ixD
Eaddress of next RSX workspace ld (ix),e ld (ix+1),dupdate workspace pointer c
all &B90Crestore ROM state ret *** Subroutines +++ Get byte from HL in se
cond 64k (corrupts BC) .gbbytepush hl ld a,h rlca rlca and 3 add &C4
ld b,&7F out (c),a res 7,h set 6,h ld a,(hl) pop hl ld bc,&7FC0
out (c),c ret +++ Put byte to HL in second 64k (corrupts BC) .pbbytepush
hl push af ld a,h rlca rlca and 3 add &C4 3 jp z,mright cp 244 jp z,lup
cp 245 jp z,ldown cp 246 jp z,lleft cp 247 jp z,lright jp editlp .mdownld
hl,(etop)dec hldec hlcall tcheck ld (etop),hl jp vbline .mupld hl,(ebottm)inc
hlinc hlcall bcheck ld (ebottm),hl jp vbline .mrightld de,(eleft)inc decall lc
heck ld (eleft),de jp hbline .mleftld de,(eright)dec decall rcheck ld (eright)
,de jp hbline .ldownld hl,(etop)inc hlinc hlcall tcheck ld (etop),hl dec hl
dec hl jp vrline .lupl ld b,&7F out (c),a res 7,h set 6,h pop af ld (hl),a
pop hl ld bc,&7FC0 out (c),c ret +++ Find start address of character A in
HL (corrupts A) .staddrsub 32 ld l,a ld h,0 add hl,hl add hl,hl add hl,hl a
dd hl,hl add hl,hl add hl,hl add hl,hl add hl,hl add hl,hl ret *** Data
.fileiddb "Font file",26 +++ Pattern data .pat1x1db 136,136,0,0,128,000,0
,0,128,000,0,0,128,000,0,0 .pat2x2db 136,136,0,0,128,128,0,0,136,136,0,0,128,12
8,0,0 .pat4x4db 136,13d hl,(ebottm)dec hldec hlcall bcheck ld (ebottm),hl inc h
l inc hl jp vrline .lrightld de,(eleft)dec decall lcheck ld (eleft),de inc de
jp hrline .lleftld de,(eright)inc decall rcheck ld (eright),de dec de
jp hrline .vblineld de,(eleft) push hl call &BBC0 pop hl ld de,(erig
ht) call &BBF6 jp editlp .hblineld hl,(etop) push hl call &BBC0 pop de ld hl,
(ebottm) or a sbc hl,de ld de,0 call &BBF9 jp editlp .vrlinepush hl ld de,
0 srl h6,0,0,136,136,0,0,136,136,0,0,136,136,0,0 *** Variables .gsizedb 1g
rid size (1,2,4) .gnextdb 8addition for next position .gpattds 16pattern data
.heightdb 0height DIV 7 .lastlfdb 0height MOD 7 .bufferds 512copy character b
uffer rld Coding production for Sentinel font editor RSX library v1.0
21 March 1993 org b 136,136,0,0,128,000,0,0,128,000,0,0,128,000,0,0 .pat2x2d
b 136,136,0,0,128,128,0,0,136,136,0,0,128,128,0,0 .pat4x4db 136,13 rr l call &B
C1D push hl pop de res 7,h ld bc,80 ldir pop hl ld de,&FFFFpush hl call &BBC
0 pop hl ld de,(eleft)push hl call &BBF6 pop hl ld de,(eright)push hl call &BB
C0 pop hl ld de,640call &BBF6 jp editlp .hrlineld hl,(etop) srl h rr l dec
hl push de ld de,(ebottm) srl d rr e push hl or a sbc hl,de ld a,l
or a jp z,chfai2 pop hl pop de push af call &BC1D ld a,c pop bc ld c,
a .hrlnlpres 7,h ld a,(hl) and c set 7,h jr Pro-Ext graphics conversion util
ity Machine code source (c) Richard Fairhurst 1993 org &9000 write "graphic
s.bin" nolist ld hl,wkspSet up RSXs ld bc,comt jp &BCD1 .wkspds 4Chain
link workspace .comtdw nametCommand table jp wrcut jp m1to2 jp cpyh2l jp
cpyl2h jp winlod jp scrlod jp mfclod jp fade jp fdel2h jp edit jp cat jp
openoi jp openii jp rsxoff .nametstr "WRCUT"Name table str "MODE1TO2" st
r "COPYH2L" str "COPYL2H" nz,npbyte ld a,c cpl and (hl) ld (hl),a .npbytecal
l nline djnz hrlnlp jp editlp .tcheckld de,(ebottm) ld a,h cp &01 jr nz,tc
nolm ld a,l cp &92 jr z,chfail .tcnolmld a,h cp d ret nz ld a,l cp e
ret nz jr chfail .bcheckld de,(etop) ld a,h cp &FF jr nz,bcnolm ld a,l cp &
FC jr z,chfail .bcnolmld a,h cp d ret nz ld a,l cp e ret nz jr chfai
l .lcheckld hl,(eright) ld a,d cp &FF jr nz,lcnolm ld a,e cp &FE jr z,chfail
.lcnolmld a,d str "WINLOAD" str "SCRLOAD" str "MFCLOAD" str "FADESCR" str
"FADEL2H" str "EDIT" str "CAT" str "OPENOUT" str "OPENIN" str "RSXOFF" db
0 EDIT,left,right,top,bottom .editld hl,&FFFF ld (eleft) ,hl ld hl,640
ld (eright),hl ld hl,400 ld (etop) ,hl ld hl,&FFFE ld (ebottm),hl ld a,1
call &BBDE ld a,2 call &BC0E call fdel2h .editlpcall &BB18 cp 224jp z,eex
it cp 13jp z,eexit cp 240 jp z,mup cp 241 jp z,mdown cp 242 jp z,mleft cp 2
4 N &BC83 call &4000compressed jp &BC7A MFCLOAD,result%,filename$
.mfclodcall openin ex de,hl call &BC83 call &BC7A ld a,2 call &BC0E call
&8000 ld a,(&8088) and 3 cp 2 ret z di exx res 0,c set 1,c exx ei call m
1to2 ret WRCUT,width,depth,result%,filename$ .wrcutcall openo ld l,(ix
+4) ld h,(ix+5) ld e,(ix+6) ld d,(ix+7) dec hl ld (depth),hl dec hl dec hl
ld a,l call &BC95 ld a,h call &BC95 push de dec de dec de ld a,e sto
re ROM state ret *** Open output file (should be first CALL) result is 0 if
unsuccessful, 1 if ok .openoicall openo ret .openocall &BC92 ld l,(ix
) ld h,(ix+1) ld b,(hl) inc hl ld e,(hl) inc hl ld d,(hl) ex de,hl ld de,buf
f push ix call &BC8C pop ix jr c,succ ld l,(ix+2) ld h,(ix+3) ld (hl),0 in
c hl ld (hl),0 pop hl ret .osuccld l,(ix+2) ld h,(ix+3) ld (hl),1 inc hl
ld (hl),0 ret *** Open input file (should be first CALL) result icall &BC9
5 ld a,d call &BC95 pop de ld a,d and 3 sla a sla a sla a sla a sla
a ld d,a ld a,e srl a srl a srl a or d ld b,a inc b call &BBC6 ld
(xpos),de ld (ypos),hl ld (length),bc .olooppush bc dec de call &BBC0
pop bc .ilooppush bc ld b,8 .tloop ld de,1 ld hl,0 push bc push af
call &BBF3 ld c,a pop af sla a or c pop bc djnz tloop call &BC95
pop bc djnz iloop ld de,(xpos) ld hl,(ypos) dec cp h ret nz l
d a,e cp l ret nz jr chfail .rcheckld hl,(eleft) ld a,d cp &02 jr nz,rcno
lm ld a,e cp &81 jr z,chfail .rcnolmld a,d cp h ret nz ld a,e cp l re
t nz jr chfail .chfai2pop hl .chfailpop hl jp editlp .eexitld de,(eleft)
inc de ld l,(ix+6) ld h,(ix+7) ld (hl),e inc hl ld (hl),d ld de,(eright)dec de
ld l,(ix+4) ld h,(ix+5) ld (hl),e inc hl ld (hl),d ld de,(etop)dec dedec deld l
,(ix+2) ld h,(ix+3) ld (hl),e inc hl ldhl dec hl ld (ypos),hl ld bc,(length)
ld hl,(depth) dec hl ld a,h or l jr z,qwrcut dec hl ld (depth),hl ld a,h o
r l ld hl,(ypos) jr nz,oloop .qwrcutjp &BC8F .xposdw 0 .yposdw 0 .length
dw 0 .depthdw 0 MODE1TO2 .m1to2ld hl,&C000 +++ Main loop .mloopld c
,(hl) call routne ld (hl),d inc hl ld a,h or a jr nz,mloop ret +++ Sub
routine .routneld d,0 ld b,4 .loopld a,c and 17 rrc c or a jr z,ase
t cp 16 jr nz,not16 ld (hl),d ld de,(ebottm)inc de inc deld l,(ix+0) ld h,(
ix+1) ld (hl),e inc hl ld (hl),d ret .eleftdw 0 .erightdw 0 .etopdw 0 .eb
ottmdw 0 CAT .catld de,buff jp &BC9B COPYH2L .cpyh2lld de,&4000
ld hl,&C000 ld bc,&4000 ldirret COPYL2H .cpyl2hld de,&C000 ld hl,&4000
ld bc,&4000 ldirret FADEL2H .fdel2hld hl,&C000 .fde2olld bc,2340 ld de,
7 push hl .fde2lp res 7,h ld a,(hl) set 7,h ld (hl),a add hl,de dec bc l
d a,b a,3 jr aset .not16cp 1 jr z,aset ld a,2 .asetor d rrca rrca ld
d,a djnz loop ret WINLOAD,result%,filename$ .winlodcall openin ld a
,2 call &BC0E ld hl,&4000 call &BC83 call &BC7A ld hl,&3FFB+3 ld de,(height)
add hl,de ld e,(hl) ld d,0 ld bc,0 dec hl dec hl dec hl res 6,h .divlpor a sb
c hl,de inc bc jr nz,divlp ld a,e ld de,&C000 ld hl,&4000 .mwlooppush af
push bc push de ldir pop de pop bc ex de,hlnext screen line or c jr nz
,fde2lp pop hl inc hl ld a,l cp 7 jr nz,fde2ol ret FADESCR - just for fun
! .fadeld hl,&C000 .fadeolld bc,2340 ld de,7 push hl .fadelp ld (hl),0 add
hl,de dec bc ld a,b or c jr nz,fadelp pop hl inc hl ld a,l cp 7 jr nz,fa
deol ret SCRLOAD,result%,filename$ .scrlodcall openin push bc ld a,2
call &BC0E pop hl ld de,16256 or a sbc hl,de jr c,scompr ld hl,&C000 call &
BC83 jp &BC7Anot compressed .scomprld hl,&4000 call please call nline ex
de,hl pop af dec a jr nz,mwloop ret RSXOFF (c) CRTC of Discovery for Real
World Coding .rsxoffld hl,(&BCD2) res 7,h call &B906lower ROM on inc hl inc
hl inc hl ld e,(hl) inc hl ld d,(hl) push de ex de,hlHLworkspace pointer ld
e,(hl) inc hl ld d,(hl) ex de,hlHLaddress of RSX workspace ld e,(hl) inc hl
ld d,(hl) pop ixDEaddress of next RSX workspace ld (ix),e ld (ix+1),dupdate w
orkspace pointer call &B90Cre N0 out (c),c pop bc ret Print message (all
rows) .printld a,(height) ld l,a ld a,(lastlf) add a,l ld hl,noftxt or a
jp z,string ld a,(pblong) ld hl,partxt or a jp z,string ld a,13 call pch
ar ld a,0 ld (row),a .pralppush bc bit 0,b call nz,ctab call print1
ld a,13 call pchar ld a,esc call pchar ld a,"J" call pchar ld a,(height
) dec a ld hl,row inc (hl) cp (hl) jr nc,do7lf If last time around
ld a,(ptype) or a jr z,ldraft .lnlq ld hl,rowlast time, NLQ dec (hl)
ld a,1 call pchar pop bc bit 0,b call nz,ctab call print1 ld a,13 call
pchar ld a,esc call pchar ld a,"J" call pchar ld a,(lastlf) dec a call pchar
ret .ldraftld a,(lastlf) call pcharlast time, draft pop bc ret If not
last time .do7lf ld a,(ptype) or a jr z,draftdraft or NLQ .nlq ld hl,row
NLQ, dec (hl)so go back to row just done ld a,1 call pchar pop bc push bc
b Pro-Ext v1.50 routines (c) 1993 Richard Fairhurst org &9400 write "pr
o-ext.bin" nolist escequ 27 Initialise system .initld a,(&BD2B) cp &C
3 ret zreturn if already initialised ld ix,&BD2Bredirect printer jump ld iy
,orig ld hl,predr ld a,(ix) ld e,(ix+1) ld d,(ix+2) ld (iy),a ld (iy+1)
,e ld (iy+2),d ld (ix),&C3 ld (ix+1),l ld (ix+2),h ld hl,wksp ld bc,comt j
p &BCD1initialise RSX RSX command table .comtdw namet jp pxhelpit 0,b cal
l nz,ctab call print1do it again ld hl,row inc (hl)and onto next row!
ld a,13 call pchar ld a,esc call pchar ld a,"J" call pchar ld a,20 call
pchardo the LF bit pop bc jp pralpand loop .draftld a,21 call pcharif draft
quality pop bc jp pralploop Print message from parameter block (one row)
.print1call calcln xor a bit 7,l jr z,noprob ld a,2 res 7,l .noprobld (xt
64),a ld (column),hl ld a,esc call pchar .nametstr "PXHELP" db
0 Load font into memory .loadld hl,pblock ld a,(pblong) ld b,a ld de,&40
00 call sBC77open file jp nc,lderr ld c,255 ld b,10 .chklpcall sBC80 xor
c ld c,a djnz chklp ld a,c ld c,1 cp 240 jp nz,lderr call sBC80 ld (he
ight),a call sBC80 ld b,a add a,a add a,baa*3 ld (lastlf),a ld b,32
.strlppush bc ld a,b call staddrfind start address call sBC80 call pbb
yteput byte ld d,a ld a,(s 0 if unsuccessful, 1 if ok .openiicall openi
n ret .openincall &BC7D ld l,(ix) ld h,(ix+1) ld b,(hl) inc hl ld e,(hl
) inc hl ld d,(hl) ex de,hl ld de,buff push ix call &BC77 pop ix jr c,succ
ld l,(ix+2) ld h,(ix+3) ld (hl),0 inc hl ld (hl),0 pop hl ret .succld (h
eight),bc ld l,(ix+2) ld h,(ix+3) ld (hl),1 inc hl ld (hl),0 ret *** Next
line down from HL .nlineld a,8 add h ld h,a bit 6,a ret nz push de ld de,
16304 or a sbc hl,de height) ld b,a .stolp ld c,d .stblp inc hl push bc
call sBC80 call pbbyte pop bc dec c jr nz,stblp djnz stolp pop
bc inc b ld a,123 cp b jr nz,strlp call sBC7Aclose input file ret .s
BC77push bc ld bc,&7FC7 out (c),c pop bc call &BC77 push bc ld bc,&7FC0 out (c
),c pop bc ret .sBC7Apush bc ld bc,&7FC7 out (c),c call &BC7A ld bc,&7FC0 ou
t (c),c pop bc ret .sBC80push bc ld bc,&7FC7 out (c),c call &BC80 ld bc,&7FC
pop de ret .heightdw 0Height .buffds 2048File buffer d Fairhurst 1993 or
g &9000 write "graphics.bin" ld e,(hl) inc hl ld d,(hl) ex de,hl ld de,buff
push ix call &BC77 pop ix jr c,succ ld l,(ix+2) ld h,(ix+3) ld (hl),0 inc
hl ld (hl),0 pop hl ret .succld (height),bc ld l,(ix+2) ld h,(ix+3) ld (h
l),1 inc hl ld (hl),0 ret *** Next line down from HL .nlineld a,8 add h l
d h,a bit 6,a ret nz push de ld de,16304 or a sbc hl,de Nld a,(pgmode)
call pchar ld a,(column) call pchar ld a,(column+1) call pchar ld ix,pblo
ck ld a,(pblong) ld b,a .opclppush bc ld a,(row) ld b,a ld a,(ix) ca
ll stradd .pcloop call gbbyte call prbyte inc hl dec e jr nz,pcloop
pop bc inc ix djnz opclp ret Print byte .prbytepush hl push af ld h
l,(column) dec hl ld a,h and l cp &FF jr nz,updcol ld a,esccall pchar
ld a,(pgmode)call pchar ld a,64call pchar ld af parameter block push af
ld a,(wchar) or a jr nz,chkwaiwaiting for character pop af jp orig .ch
kwai ld (cpachr+1),a Check if character is "expected"! pop af .cpachrcp &FFco
mpare with character being waited for jr z,gotwaithe same push af xor a ld (
wchar),aif not, cancel wait pop af jp origand go and print character .gotwa
icp 13CR jr z,gotcr xor a ld (wchar),a scf ret .gotcrld a,10 ld (wchar),an
ow wait for LF! scf ret ,0call pchar ld hl,63 .updcol ld (column),hl pop
af call pchar pop hl ret Load file error routine .lderrld hl,ldetxt jp
string Get byte from HL in second 64k (corrupts BC) .gbbytepush hl ld
a,h rlca rlca and 3 add &C4 ld b,&7F out (c),a res 7,h set 6,h l
d a,(hl) pop hl jp rstbnk Put byte to HL in second 64k (corrupts BC) .
pbbytepush hl push af ld a,h rlca rlca and 3 add &C4 ld b,&7F out (c),a
res 7,h set 6,h .addblcpop af Add to parameter block cp 129 jp z,docomEnd
of parameters push hl ld hl,(pbloc) ld (hl),aStore character in parameter bl
ock inc hl ld (pbloc),hl ld a,(pblong) inc aIncrease parameter block leng
th cp &81 jr nz,notovr ld hl,ovrtxt call string"Overflow" error xor a ld (
inop),aStop capturing! .notovr ld (pblong),a pop hl scf ret .letsgold a,1
Start capturing characters ld (inop),a ld a,0 ld (pblong),a push hl pop af
ld (hl),a pop hl jp rstbnk Restore banks (corrupts BC) .rstbnkld bc,&7FC
0 out (c),c ret Find start address of character A in HL (corrupts A) .sta
ddrsub 32 ld l,a ld h,0 add hl,hl add hl,hl add hl,hl add hl,hl add hl,hl add
hl,hl add hl,hl add hl,hl add hl,hl ret Find start address of character A,
row B, in HL (width in DE) .straddcall staddr push bc call gbbyte pop bc
inc hl ld e,a ld d,0 ld a,b or a ret z .moveonadd hl,de djnz ld hl,pblock
ld (pbloc),hl pop hl scf ret .docomld a,2 Do command next time ld (inop)
,a scf ret .execomxor a Execute command ld (inop),a pop af cp "F" jp z,c
load cp "H" jp z,chead cp "h" jp z,chden cp "C" jp z,cheac cp "A" jp z,cclip
cp "a" jp z,cclop cp "R" jp z,crlln cp "r" jp z,crlop cp "P" jp z,cpage
push hl ld hl,ukctxt call string"Unknown command"! pop hl scf ret .cloadp
ush bc push de "F" - Load moveon ret Calculate length of string into HL .
calclnld hl,0 ld ix,pblock ld a,(pblong) ld b,a .clclpld a,(ix) push hl pu
sh bc ld b,0 call stradd pop bc pop hl add hl,de inc ix djnz clclp ret
Centre spacing .ctabcall calcln ex hl,de ld hl,840 sbc hl,de srl h rr l
jp doctab .doctabbit 7,l jr z,ctabok ld a,esc call pchar ld a,"Y" call pch
ar ld a,127 call pchar ld a,0 call pchar ld b,127 .ctab6lxor a call pchar
djnz ctab6l headline font push hl push ix call load pop ix pop hl pop de
pop bc jp absorb .cheadpush bc push de "H" - Print headline push hl push i
x ld b,0 call print pop ix pop hl pop de pop bc jp absorb .cheacpush bc
push de "C" - Print centred headline push hl push ix ld a,(pgmode) push af
ld a,"L" ld (pgmode),a ld b,1 call print pop af ld (pgmode),a pop ix
pop hl pop de pop bc jp absorb .chdenpush af push bc "h" - Set heres 7,l
.ctabokld a,esc call pchar ld a,"Y" call pchar ld a,l call pchar ld a,h
call pchar .ctabolxor a call pchar dec hl ld a,h or l jr nz,ctabol ret Pr
int character .pcharpush bc ld c,a .pcharl call orig ld a,c jr nc,pcharl
pop bc ret Original &BD2B call .origds 3 Print character redirection
.predrpush af ld a,(inop) cp 1 jr z,addblcadd to parameter block cp 2
jr z,execomcommand pop af cp 128 jp z,letsgostart o N ar dec hl d
ec de ld a,d or e jr nz,pmllp .plblpld a,0 call pchar dec hl ld a,h or l
jr nz,plblp ld a,13 call pchar scf ret .cpageld a,11 call pchar "P" - Pa
ge break ld hl,(pbloc) dec hl ld a,(hl) bit 0,a call nz,bline ld hl,pblock
ld a,(pblong) ld b,a .pnolpld a,(hl) call pchar inc hl djnz pnolp ld hl,(
pbloc) dec hl ld a,(hl) bit 0,a call z,bline2 ld a,12 call pchar jp absorb
.blineld a,esc call pchar ld a,"-" call pch ld a,"J" call pchar ld a,(clg
ap) call pchar ld a,13 call pchar call domarg jr sloop Plot point if not a
t end of line .plotdec de push af ld a,d or e jr nz,same xor a ld (newli
ne),a ld de,1 pop af res 7,a push af .same call quadc pop af push bc
ld c,0 rl a jr nc,dosend .is1 ld bc,(bitpat) ld c,(bitpat) .dosend push af
ld a,c call pchar pop af pop bc ret .quadcld a,(bcount) cp 64 jr n
z,ibcnt ld a,esc call pchar ldar ld a,1 call pchar ld a,(pblong) ld b,
a ld a,70 sub b ld b,a .blloopld a,32 call pchar djnz blloop ld a,esc call
pchar ld a,"-" call pchar ld a,0 call pchar ld a,esc call pchar ld a,"J
" call pchar ld a,12 call pchar ret .bline2ld a,(pblong) ld h,0 ld l,a a
dd hl,hl add hl,hl ld d,h ld e,l add hl,hl add hl,de ex hl,de ld hl,840 sbc h
l,de bit 7,l jr z,b2ok7 ld a,esc call pchar ld a,"Y" call pchar ld a,127 c
all pchar ld a,0 cadline options (1width, 2NLQ) push de push hl call cpara
m ld a,(pstore) cp 1 jr z,sngwdth ld a,"K" jr putden .sngwdth ld a,"L" .
putden ld (pgmode),a ld a,(pstore+1) and 1 ld (ptype),a pop hl pop de
pop bc pop af jp absorb .cclippush bc "A" - Print clip art push de push hl
push ix push iy call clip pop iy pop ix pop hl pop de pop bc jp absorb
.ccloppush bc "a" - Set clip art options push de push hl call cparam ld a,
(all pchar ld b,127 .b2lpld a,8 call pchar djnz b2lp res 7,l .b2ok7ld a,e
sc call pchar ld a,"Y" call pchar ld a,l call pchar ld a,h call pchar .b
2olpld a,8 call pchar dec hl ld a,h or l jr nz,b2olp ret Absorb next C
R/LF and return .absorbld a,13 ld (wchar),a scf ret Print Stop Press
clip art file .clipld hl,pblock ld a,(pblong) ld b,a ld de,&4000 call sBC
77open file jp nc,lderr call sBC80 ld l,a call sBC80 ld h,a pstore) cp 1
jr z,asngwth cp 2 jr z,adblwth cp 4 jr z,aquawth .asngwth ld a,"Z" jr aputw
th .adblwth ld a,"L" jr aputwth .aquawth ld a,"K" jr aputwth .aputwth ld (clt
ype),a ld a,(pstore+1) add a ld (clgap),a ld a,(pstore+2) ld (bitp
at),a ld a,(pstore+3) ld (margin),a pop hl pop de pop bc scf ret .cr
loppush bc "r" - Set ruler line options push de push hl call cparam ld a,(p
store) ld (rlwid),a ld a,(pstore+1) ld (rlbit),a pop srl h rr ldivide by
2 inc hlinc hl call artpmsset up progress meter push hlwill be retrieved late
r by "pop iy" call sBC80 ld e,a call sBC80 ld d,a inc de inc de inc de po
p iy ld a,13 call pchar .slooppush de ld a,64 ld (bcount),asent 64 bytes
- send ESC code .loop call sBC80 ld b,8 .ploop call plot djnz ploop ld a
,(newline) or a jr nz,looploop if new line not needed New line needed... fin
ish off graphics command with zeros l hl pop de pop bc scf ret .crllnld
a,esc call pchar "R" - Print ruler line ld a,"Y" call pchar ld a,&48 call pch
ar ld a,&03 call pchar ld hl,840 push hl ld a,(rlwid) ld l,a ld h,0 a
dd hl,hl add hl,hl ex hl,de ld hl,840 sbc hl,de ex hl,de srl d rr e pop h
l .poblpld a,0 call pchar dec hl dec de ld a,d or e jr nz,poblp push hl
ld a,(rlwid) ld l,a ld h,0 add hl,hl add hl,hl ex hl,de pop hl .pmllp
ld a,(rlbit) call pchd a,(bcount) .fbuffr cp 64 jr z,allsnt push af xor a
call pchar pop af inc a jr fbuffr .allsnt ld a,255 ld (newline),adon't ne
ed new line ld a,(artcnt) or a jr nz,nopchrprogress meter handling ld a,14
3 call &BB5A xor a .nopchr inc a and 7 ld (artcnt),a dec iy db &FD ld a
,h db &FD or l pop de jr nz,notfinFinished whole lot yet ld a,10 call &BB5AY
es - CR, close file, quit ld a,13 call &BB5A jp sBC7A .notfinld a,esc call
pchar Ng number of parameters",13,10,0 .ovrtxtdb "PRO-EXT parameter overflow",
13,10,0 .arttxtdb "PRO-EXT printing clip art ",0 .helpbgdb 4,2,"PRO-EXT v1.
50 ",164,"1993 Richard Fairhurst",10,13,10,0 .helpendb 1
0,"For a list of commands, type PXHELP.",13,10,10,0 chard Fairhurst org &940
0 write "pro-ext.bin" nolist escequ 27 Initialise s,0 .ukctxtdb "PRO-EX
T unknown command",13,10,0 .noftxtdb "PRO-EXT font file not loaded",13,10,0 .p
artxtdb "PRO-EXT wrondispld hl,helpen call string .qndispld bc,&7FC0 out (c),c
ret .hnfounld bc,&7FC0 out (c),c ld hl,ukctxt jp string Print string on
screen .stringld a,(hl) or a ret z call &BB5A inc hl jr string Convert pa
rameters from "pblock" (ASCII) into "pstore" (values) .cparamld a,(pblong) ld
b,a ld hl,pblock ld de,pstore ld c,0 .cprmlpld a,(hl) cp "," jr z, putchr
cp "0" jr c, nxtchr cp "" jr nc,nxtchr rlc c ld a,c rlc c rlc c add c ld c
,aCC*10 ld a,(hl) sub 48 add c ld c,a .nxtchrinc hl djnz cprmlpnext chara
cter and loop ld a,c ld (de),a retif run out, put last parameter in and end!
.putchrld a,c ld c,0store value and blank it for next time ld (de),a inc de
inc hl djnz cprmlpgo onto next character retunless all characters used Data
.pblockdb "OFFICE.FNT" ds &74128-byte parameter block .pblongdb 10length of
parameter block .pblocdw pblocklocation in parameter block .inopdb 0p *** BBS
.MOD *** SCAN command .scanicall buffc ld c,2 cp 3 jp c,error dec a
dec a call rfname ld l,(ix) ld h,(ix+1) ld a,(iy+72)files to send ld (hl)
,a inc hl ld (hl),0 ld l,(ix+2) ld h,(ix+3) ld e,(iy+73) ld d,(iy+74)k to s
end ld (hl),e inc hl ld (hl),d ret BCLEAR command .bclrild a,&C4 .bcl
rlpld b,&7F out (c),a ld hl,&4000 ld de,&4001 ld bc,&3fff ld (hl),0 ldir i
nc a cp &C8 jr nz,bclrlp call rstbnk xor a arameter block in operation (1/2
) .heightdb 0height of characters .lastlfdb 0number to line feed at last LF .
rowdb 0current character row .xt64db 0extra 64-byte blocks to send .columndw 0
number of columns to send .pgmodedb "L"double density for fonts .ptypedb 0draf
t (0) or NLQ (1) font .clgapdb 22 line feed for clip art .cltypedb "Z"quad den
sity for clip art .bitpatdb 1bit pattern for clip art .margindb 0margin for cl
ip art .rlbitdb %10100 a,(cltype) call pchar ld a,64 call pchar ld a,0 cal
l pchar xor a .ibcntinc a ld (bcount),a ret Clip art margin .domargl
d a,(margin) or a ret z .domalppush af ld a,32 call pchar pop af dec a jr
nz,domalp ret Clip art progress meter - set up .artpmspush hl ld hl,art
txt call string pop hl ld a,207 call artpm8 ld a,8 call artpm8 xor a ld (a
rtcnt),a ret .artpm8push hl .artpml call &BB5A or a ld de,8 sbc hl,de j
r nc,artpml ppattern for ruler line .rlwiddb 100ruler width .wchardb 0charact
er to wait for .pstoreds 6storage of characters numerically .artcntdb 0counter
for progress meter .newline db 2550 if a new line is needed, non-zero otherw
ise .bcountdb 0bytes sent count .wkspds 4RSX workspace Text .ldetxtdb
"PRO-EXT error in loading file",13,10,0 .ukctxtdb "PRO-EXT unknown command",13,
10,0 .noftxtdb "PRO-EXT font file not loaded",13,10,0 .partxtdb "PRO-EXT wrono
p hl ret Online help system v1.0 (c)93 CRTC of Discovery .pxhelpor a jr n
z,spec ld a,31 jr gspec .specld l,(ix) ld h,(ix+1) inc hl ld e,(hl) inc hl
ld d,(hl) ld a,(de) .gspecld bc,&7FC7 out (c),c ld hl,&4800 ld c,a .gspec
lld a,(hl) inc hl cp 9 jr z,hnfoun cp 6 jr nz,gspecl ld a,(hl) inc hl cp c j
r nz,gspecl push hl ld hl,helpbg call string pop hl .phelplld a,(hl) in
c hl cp 7 jr z,qndisp cp 8 jr z,qydisp call &BB5A jr phelpl .qy N ld (iy+
13),a ld (iy+14),a ld (iy+15),a ld (iy+16),a ld (iy+17),a ld (iy+18),a ld (iy+1
9),a ld (iy+20),a ld (iy+21),a ld (iy+22),a ld (iy+23),a ret BOPEN command
.bopnild c,2 cp 1 jp nz,errorError if 2 parameters ld a,(iy+17) ld c,
16 or a jp nz,errorError if already open ld l,(ix) ld h,(ix+1) push hl pop
ixIX contains address of parameter call flastrGet last location ld (iy+20
),l ld (iy+21),hStart putting things here dec hl d c,17 ex de,hl cp (hl) jr
z,blisokOk if same length jr c,blisokor if string is longer jp bnkab2otherwise
error 17 .blisokld (hl),a ld b,aPut real length into string inc hl ld e,(hl
) inc hl ld d,(hl) ld a,b or a jr z,exbgts .bgtslppush bc call bnkgin pop
bc ld (de),a inc de djnz bgtslp .exbgtsret BGETI command .bgtiild c
,2 cp 1 jp nz,error ld e,(ix) ld d,(ix+1) call bnkginGet type ld c,15
cp &1A jp z,bnkaboEnd of Data ec hl ld (iy+22),l ld (iy+23),hAddress to put len
gth at ld l,(iy+18) ld h,(iy+19) inc hlIncrease "last msg" counter ld (iy+1
8),l ld (iy+19),h ld (ix),l ld (ix+1),hand put it into passed variable ld a,
&FF ld (iy+17),aRecord now open ret BCLOSE command .bcseild c,13 ld a,
(iy+17) or a jp z,error ld a,&1A call bnkpinPut in "End of Data" marker
ld l,(iy+20) ld h,(iy+21) ld e,(iy+22) ld d,(iy+23) sbc hl,de dec hl dec hl
ex hl,de l ld c,14 cp &25 jp nz,bnkaboInteger variable type call bnkgin l
d (de),a inc deGet low byte and store call bnkgin ld (de),a inc deGet high b
yte and store ret BDELETE command .bdelild c,2 cp 1 jp nz,errorerror i
f not one parameter ld c,18 ld a,(iy+17) or a jp nz,errorerror if record c
urrently open ld c,(ix) ld b,(ix+1)get parameter into BC ld a,b or c jr z
,notrcderror if message 0 ld l,(iy+18) ld h,(iy+19) sbc hl,bc jr nc,rcdod l,(i
y+22) ld h,(iy+23) ld a,e call pbbyte inc hl ld a,d call pbbyte call rstbnk
xor a ld (iy+17),aRecord closed! ret BGOTO command .bgtoild c,2 cp 1
jp nz,error ld c,(ix) ld b,(ix+1) ld a,b or c jr z,notrc ld l,(iy+18) l
d h,(iy+19) sbc hl,bc jr c,notrc jr rcok .notrcld c,12 jp error .rcokcall g
recbc call rstbnk ld (iy+15),e ld (iy+16),d ld (iy+13),l ld (iy+14),h ret
BCHECK command .bchkild c,2 cp c jp nz,error kok if last message .
notrcdld c,12 jp errorelse error .rcdokcall grecbcfind address of record p
ush hl add hl,de pop de dec de dec deDE contains start, HL contains start of
next ld a,h cpl ld b,a ld a,l cpl ld c,a dec bBC contains length to transfe
r ld a,(&FFFF) ld ix,(&FFF3)these bits of the screen get corrupted! push
af push ix push de push hl push bcstore variables for LDIR ld bc,&7FC7
out (c),cswitch top 16k into &4000 ld l,(ix+2) ld h,(ix+3) ld a,(iy+20) ld (
hl),a inc hl ld a,(iy+21) ld (hl),a ld l,(ix) ld h,(ix+1) ld a,(iy+18) ld (
hl),a inc hl ld a,(iy+19) ld (hl),a ret BPUTS command .bptsild c,2 cp
1 jp nz,error ld l,(ix) ld h,(ix+1) ld b,(hl) inc hl ld e,(hl) inc hl ld
d,(hl) push bc ld a,&24 call bnkpinString marker pop bc push bc ld a,b
call bnkpinLength of string pop bc ld a,b or a jr z,exbpts .bptslpld a,(d
e) push bc call bnkpld de,&7FF5 ld hl,ldidta ld bc,10 ldircopy code for LDIR
into top of top 16k pop bc ld (&7FF6),bcload the length into right place in
LDIR code ld a,&C9 ld (&FFFF),aRET into last location (back in first 64k) l
d hl,&49ED ld (&FFF3),hland (again in first 64k) set up the banks pop hl pop
deget variables for LDIR back again diinterrupts must be disabled (no stack
etc.!) ld bc,&7FC2 call &FFF3do the Bartman, whoops, LDIR ei pop ix pop af
ld (&FFF3),in pop bc inc de djnz bptslp .exbptsret BPUTI command .b
ptiild c,2 cp 1 jp nz,error ld l,(ix) ld h,(ix+1) ex de,hl ld a,&25 cal
l bnkpinInteger marker ld a,e call bnkpinLow byte ld a,d call bnkpinHigh byte
ret BGETS command .bgtsild c,2 cp 1 jp nz,error ld e,(ix) ld d,(ix+
1) call bnkginGet type ld c,15 cp &1A jp z,bnkaboEnd of Data ld c,14 cp &
24 jp nz,bnkaboString variable type call bnkginGet length ld N ret **
* BBS SUBROUTINES *** Get byte from HL in second 64k (corrupts BC, does not r
estore banks) .gbbytepush hl ld a,h rlca rlca and 3 add &C4 ld b,&7F
out (c),a res 7,h set 6,h ld a,(hl) pop hl ret Put byte to HL in sec
ond 64k (corrupts BC, does not restore banks) .pbbytepush hl push af ld a
,h rlca rlca and 3 add &C4 ld b,&7F out (c),a res 7,h set 6,h pop af
ld (hl),a pop hl ret Restore banks (corrupts BC) .rsnolist print if1
print "Pass 1" else print "Pass 2" endif print Charley's Comms ROM developme
nt version org &C000 write "comms.bin" kdsequ 1 if kds datoutequ &FB
ED datinequ &FBEF conoutequ &FBEC coninequ &FBEE sped0equ &FBE8 sped1e
qu &FBE9 wmodequ &FBEB else datport equ &FADC conport equ &FADD sped0eq
u &FBDC sped1equ &FBDD wmodequ &FBDF endif db 1Background ROM db 1,0,0v
1.00 .comtdw namet jp initi jp baudi jp wortbnkld bc,&7FC0 out (c),c ret
Put byte A into extra 64k (corrupts HL, BC) .bnkpinld l,(iy+20) ld h,(iy+
21) call pbbyte inc hl ld (iy+20),l ld (iy+21),h jp rstbnk Get byte A from
extra 64k (corrupts HL,BC) .bnkginld l,(iy+13) ld h,(iy+14) call gbbyte in
c hl ld (iy+13),l ld (iy+14),h jp rstbnk Return two bytes and jump to error
.bnkab2ld l,(iy+13) ld h,(iy+14) dec hl ld (iy+13),l ld (iy+14),l Return
one byte and jump to error .bnkabold l,(iy+13) ix ld (&FFFF),arestore corrup
ted bytes on screen ld l,(iy+18) ld h,(iy+19) dec hl ld (iy+18),l ld (iy+19
),hdecrease "last record" counter ld hl,0 ld (iy+13),l ld (iy+14),h ld (iy+
15),l ld (iy+16),hprevent reading until new BGOTO ret .ldidtald bc,&0000th
is code goes in top 16k of extra banks ldir ld bc,&7FC0 out (c),c BSAVE c
ommand .bsveild c,2 cp 1 jp nz,error call buffc ld l,(ix) ld h,(ix+1)
ld b,(hl) inc hl ld e,(hl) inc hl ld h,(iy+14) dec hl ld (iy+13),l ld (iy+14
),l jp error Go to record held in BC (on exit, HLaddress of record DATA, DEs
ize) Does not reset banks! .grecbcld hl,0 ld de,0 .gbclopadd hl,de push
bc call gbbyte ld e,a inc hl call gbbyte ld d,a inc hl pop bc dec bc ld a
,b or c jr nz,gbclop ret Find last record .flastrld hl,0Current memory lo
cation in extra 64k .gtblencall gbbyte ld e,a inc hl call gbbyte ld d,a inc
hl ld a,d or e jr z,fsp ld d,(hl) ex de,hl ld e,(iy+7) ld d,(iy+8) inc d
inc d inc d inc d call &BC8C ld c,9 jp nc,error ld l,(iy+18) ld h,(iy+19
) ld a,l call &BC95 ld a,h call &BC95Write last record number call flastr ld
a,l call &BC95 ld a,h call &BC95Write length of records .bsvelpdec hl ca
ll gbbyteGet character... call rstbnk call &BC95and write to disc ld a,h or
l jr nz,bsvelp call &BC8FClose file ret BLOAD command .blodild c,2 c
p 1 jaceIf reached the end, quit add hl,de jr gtblenGo to next address .fsp
acecall rstbnkBack to normal memory ret Esize) Does not reset banks! .grec
bcld hl,0 ld de,0 .gbclopadd hl,de push bc call gbbyte ld e,a inc hl call
gbbyte ld d,a inc hl pop bc dec bc ld a,b or c jr nz,gbclop ret Find la
st record .flastrld hl,0Current memory location in extra 64k .gtblencall g
bbyte ld e,a inc hl call gbbyte ld d,a inc hl ld a,d or e jr z,fspp nz,erro
r call buffc ld l,(ix) ld h,(ix+1) ld b,(hl) inc hl ld e,(hl) inc hl ld
d,(hl) ex de,hl ld e,(iy+7) ld d,(iy+8) inc d inc d inc d inc d call &BC
77 ld c,9 jp nc,error call &BC80 ld (iy+18),a call &BC80 ld (iy+19),aLast r
ecord number call &BC80 ld l,a call &BC80 ld h,aTotal length of records .bl
odlpdec hl call &BC80Get character... call pbbyteand put in memory call rst
bnk ld a,h or l jr nz,blodlp call &BC7AClose file Nen",13,10,10,013 db "
data wrong type",13,10,10,014 db " end of data met",13,10,10,015 db " record a
lready open",13,10,10,016 db " string too long",13,10,10,017 db " record not c
losed",13,10,10,018 db " incompatible version",13,10,10,019 Message text
.ymtextdb 13,10,"YModem ",0 .cltextdb "closing",0 .abrtxtdb "aborting",0 .crc
txtdb 13,10,"XModem-CRC",0 .chktxtdb 13,10,"XModem ",0 .onetxtdb 13,10,"XModem
-1k ",0 .lbrtxtdb 10,13,"Library ",0 .laCLOSE" str "BCHECK","BGOTO","BGETS","
BGETI" str "BPUTS","BPUTI","BDELETE","BSAVE" str "BLOAD" nop .initipush de
ld b,0 .initlld (hl),0 dec hl ld (hl),0 dec hl djnz initl push hl push ix pu
sh iy push hl pop iy inc iyIY workspace ld hl,signon call stringprint cop
yright message push iy pop hl ld de,33 add hl,de ex de,hl ld hl,&BDF1 ldi ld
i ldipreserve &BDF1 push iy pop hl ld de,372 add hl,de ex de,hl ld hl,redir
ld bc,14 ldircopy redirstcrdb 10,10,13,0 .ttsenddb 13,10,"No. of files to send
",0 .ttkmesdb " (",0 .ttkclodb "k)",10,13,0 .abrreqdb "abort",10,10,13,0 .si
gnondb " CHARLEY'S COMMS ",164,"1992 Richard Fairhurst",10,0 Baud rate/8253 c
onversion data .tb8253dw 31250,&4,19200,&7,9600,&D,7200,&11,4800,&1A dw 3600
,&23,2400,&34,2000,&3F,1800,&45,1200,&68 dw 600,&D0,300,&1A0,200,&271,150,&341,
110,&470 dw 75,&683,50,&9C4,45,&AD9,0,0 *** Variables *** doe
rrdb 1+0report errors on/off lecection to IY+372 push iy pop hl ld de,375 ad
d hl,de call &B912 ld (hl),ainsert ROM no. for FAR PCHL ld (&BAFD),iy&BAFDpa
rameters push iy pop hl ld de,90 add hl,deevent block call &B912 ld c,a ld b,&
11 ld de,fcount call &BCD7 push iy pop hl call reset pop iy pop ix pop hl p
op de scf ret print " Reading in CONTROL .MOD" read "CONTROL .MOD" print "
Reading in SIO .MOD" read "SIO .MOD" print " Reading in FILE .MOD" r
ead "FILE .MOD" phodb 0+1local echo on/off curstdb 0+2cursor on/off crdb 1
+3CR on/off xoncdb 0+4XON flow control on/off fcmodedb 0+5file capture mode r
edrctdb 0+6redirect down-line for some commands fbaddrdw 0+7file buffer address
timestdw 0+9time-out length if kds cregdb %10101010+11control register de
fault ds 1 else reg3db %11100001+11register 3 default reg5db %11101010+12r
egister 5 default endif bnkgetdw 0+13where to get from bnrint " Reading in
TERMINAL.MOD" read "TERMINAL.MOD" print " Reading in LIBRARY .MOD" read "LIBRAR
Y .MOD" print " Reading in BBS .MOD" read "BBS .MOD" print " Reading i
n SUBROUT .MOD" read "SUBROUT .MOD" print " Assembling common data" *** Data
*** .okchardb "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!",34,"#$%&+-*. ",0 .fff
fdb 0,6,5,5,3,6 .vt52stdb "3",4,"H",30,"I",11,"J",20,"K",18,"d",19,"e",3,"f",
2,"o",17,0 Error text .cetxtdb 13,10,"Comms error ",0 .errtxdi jp sendi
jp geti jp grabi jp wrti jp progi jp readi jp comi jp waiti jp inpi jp ser
i jp mai .jp cursi jp sdcri jp shkei jp brki jp errsi jp capti jp closi jp
xoni jp echoi jp upldi jp dnldi jp proti jp buffi jp typei jp touti jp termi
jp tm3i jp tm75i jp tm12i jp tm24i jp tm48i jp locli jp rtsi jp dcdi jp ctsi
jp dtri jp ldiri jp scani jp bclri jp bopni jp bcsei jp bchki jp bgtoi jp b
gtsi jp bt db " illegal parameter",13,10,10,01 db " bad argument count",13,10,1
0,02 db " illegal filename",13,10,10,03 db " no files to send",13,10,10,04 db
" too many files",13,10,10,05 db " no file buffer",13,10,10,06 db " XModem on
e file only",13,10,10,07 db " file buffer in use",13,10,10,08 db " disc error"
,13,10,10,09 db " capture not active",13,10,10,010 db " timed out",13,10,10,01
1 db " record not found",13,10,10,012 db " record not opgtii jp bptsi jp bpti
i jp bdeli jp bsvei jp blodi .nametstr "CHARLEY'S COMMS" str "BAUD","WORD",
"SEND","GET" str "GRAB","WRITE","PROGRAM","READ" str "COM","WAIT","INPUT","SER
IAL" str "PARALLEL","CURSOR","CR","HWSHAKE" str "BREAK","ERROR","CAPTURE","CLO
SE" str "XON","ECHO","UPLOAD","DOWNLOAD" str "PROTOCOL","BUFFER","TYPE","TIMEO
UT" str "TERMINAL","TERM3","TERM1275","TERM12" str "TERM24","TERM48","LOCAL","
RTS" str "DCD","CTS","DTR","LDIR" str "SCAN","BCLEAR","BOPEN","B Nksizdw 0+15
and size of that record bnkopndb 0+17record open bnklstdw 0+18last record bnk
posdw 0+20position in banks bnkorgdw 0+22position to write to blockds 9+24sp
ace for fast ticker block pstoreds 3+33store for MC WAIT PRINTER redirection
bstoffdw 0+36buffer store offset bgtoffdw 0+38buffer get offset fbscntdw 0+
40file bytes count nparamdb 0+42number of parameters pblockdw 0+43address of
parameters fnamedb "DOWNL N O E .wordiif kds ld c,2 cp 3 jp nz,error
push iy pop hl ld de,11 add hl,deHL IY+11 (KDS control register) ld iy,kwt
bl ld b,8 .kwslpld a,(ix+4) cp (iy+0) jr nz,notsm ld a,(ix+2) cp (iy+1) jr n
z,notsm ld a,(ix+0) cp (iy+2) jr nz,notsm ld c,(iy+3) ld a,(hl) and 199 or c
ld (hl),a jp preg .notsminc iy inc iy inc iy inc iy djnz kwslp ld c,1 jp
errorlegal value not found! .kwtbldb 7,2,2,%000000 db 7,1,2,%100000 db 7,2
,1,%010000 dOAD",0 +44filename (receive) tnamedb " ",0+55filename
(send) cchardb 0+68current character position stmodedb " "+69filler character
cnaddrdw 0+70current name address ftsenddb 0+72files to send ktsenddw 0+73ki
lobytes to send flongds 3+75file length (3-byte) fdecds 6+78decimal of "flong"
readindw 0+84bytes read in curdirdb 0+86current file directory countdw 0
+8750/sec count donedb 0+8950/sec - done or not b 7,1,1,%110000 db 8,0,2,%001
000 db 8,0,1,%101000 db 8,2,1,%011000 db 8,1,1,%111000 else ld c,2 cp 3
jp nz,error3 parameters ld a,(ix+4) ld c,1 sub 5data bits 5-8 ld b,a and 3
cp b jp nz,error ld a,(ix) or a jp z,errorstop bits 1-3 cp 4 jp nc,error
ld a,(ix+2) ld e,a and 3 cp e jp nz,errorparity 0-3 ld a,(ix+4) sub 5data bi
ts 0-3 rlca rlca rlca rlca rlcaposition bits 5/6 ld e,a ld hl,reg5 ld a,&9F
and (hl)get register 5 anfceblds 10+90event block ferrdb 0+100file error fbl
ockdb 0+101expected block blockldw 0+102block length (128/1024) ncrdb &15+104N
AK or "C" pstatdb 0+105printed CRC/checksum ymodemdb 0+106using YModem-batch
specpdb 0+107specified protocol (0 XModem, 1 X-1k, 2 YModem) vt52idb 0+108VT5
2 control codes left to receive vtmodedb 0+109w-indow/c-ursor to be set vtcstd
w &101+110cursor saving position vttmpds 4+112temporary varid strip out data bi
ts or e ld (hl),aput in new data bits ld d,5 call pregand program ld a,e rl
caposition bits 6/7 ld e,a ld hl,reg3 ld a,&3F and (hl)get register 3 and stri
p out data bits or e ld (hl),aput in new data bits ld d,3 call pregand program
ld a,(ix) rlca rlcabits 2/3 now stop bits or (ix+2)bits 0/1 now parity set
6,aset bit 6 ("clock mode"!) ld d,4 jp pregprogram register 4 endif PRO
GRAM command .progiif kdsable space bufferds 256+116interrupt buffer ac
redds 6+372actual redirection code +386end of variable space MS $$$ if1 prin
t "Pass 1" else print "Pass 2" endif print Charley's Comms ROM development v
ersion orgh specpdb 0+107specified protocol (0 XModem, 1 X-1k, 2 YModem)
vt52idb 0+108VT52 control codes left to receive vtmodedb 0+109w-indow/c-ursor t
o be set vtcstdw &101+110cursor saving position vttmpds 4+112temporary varild
c,2 cp 1 jp nz,error elseld c,2 cp 2 jp nz,error error 2 if wrong no. of parame
ters dec c ld d,(ix+2) ld a,5 cp d jp m,error error 1 if not 0-5 (Amstrad) e
ndifld a,(ix) jp preg READ command .readiif kdsld c,2 cp 1 jp nz,error e
lseld c,2 cp 2 jp nz,error error 2 if wrong no. of parameters dec c ld d,(ix+2)
ld a,2 cp d jp m,error error 1 if not 0-2 (Amstrad) endif call rreg ld l
,(ix) ld h,(ix+1) ld (hl),a ret SERIAL command *** CONTROL.MOD *** BAU
D command .baudild l,(ix) ld h,(ix+1) ld c,2 cp c jp z,getrx cp 1 jp nz,err
or ld e,l ld d,h jp gotbp .getrxld e,(ix+2) ld d,(ix+3) .gotbpcall bconv ex d
e,hl call bconv di ld bc,wmod ld a,&76 out (c),a ld bc,sped1 out (c),e out (c)
,d ld bc,wmod ld a,&36 out (c),a ld bc,sped0 out (c),l out (c),h ei ret
WORD command (WORD,data,parity,stop) 7
/8 0/1/2 1/2 N *** FILE.MOD *** DOWNLOAD command .dnldi
call buffc ld (iy+42),anumber of parameters ld l,a ld h,0 add hl,hl ex de,hl
add ix,deIX points to 1st parameter push ix pop hl ld (iy+43),l ld (iy+44),hIX
address of parameters call gfname jr nz,initif filename specified use that
push iy pop hl ld de,45 add hl,deelse use "DOWNLOAD." ld b,9 .initxor a
ld (iy+106),aYModem off as default ld (iy+105),aCRC/checksum not printed yet
.op ld a,(iy+104) cp &15 jr z,chkchkCRC/chk call getbtget CRC ld e,a ca
ll crc call getbtand check against our value ld e,a call crc ld a,h or l
call nz,sferrerror jr acton .chkchkcall getbtcheck checksum! cp h call nz,s
ferr .actonld a,(iy+105)*** print block number, details or (iy+106) jr nz,np
stat do we need to print text ld a,(iy+104) ld hl,chktxt cp "C" jr nz,ppstr
ld hl,crctxt .ppstrcall stringif so, then print CRC/checksum teoutld e,(iy+7) l
d d,(iy+8)*** open first output file push hl ld hl,1024 add hl,de ex de,hl pop
hlDE contains buffer address, HL filename address call &BC8CCAS OUT OPEN call
nc,canyesabort if error .rblock ld a,1 ld (iy+101),aset block to 1 .stran
s xor a ld (iy+100),ano file error ld l,77 retries before switching to NAK
ld a,"C" ld (iy+104),adefault is C CRC .sndnakdec l jr nz,nosnak ld a,&15 l
d (iy+104),a .nosnakld a,(iy+104) call se .seripush iy pop hl ld de,372 a
dd hl,de ld ix,&BDF1 ld (ix),&C3 ld (ix+1),l ld (ix+2),h ret PARALLEL
command .paripush iy pop hl ld de,33 add hl,de ld de,&BDF1 ldi ldi ldi r
et CURSOR command .cursipush iy pop hl inc hl inc hlHL IY+2 curst .on
offld c,2 cp 1 jp nz,error dec c ld a,(ix) or a jp z,csok cp 1 jp nz,error
.csokld (hl),a ret CR command .sdcripush iy pop hl inc hl inc hl inc h
lHL IY+ndbtNAK checksum / C CRC ld de,150 call waitbt*** wait for response
cp 2 jr z,sblockSTX XModem-1k cp 1 jr z,sblockSOH XModem-128 cp &18 call z,c
anyesCAN abort ex de,hl call chkcan ex de,hlESC pressed abort jr sndnak .
sblockld bc,1024*** start of receiving block cp 1 jr nz,not128 ld bc,128calcul
ate length of block .not128ld (iy+102),c ld (iy+103),bstore block length cal
l getbtget block number ld c,a ld a,(iy+101)A 3 cr jp onoff ERROR comma
nd .errsipush iy pop hlHL IY+0 doerr jp onoff HWSHAKE command .shke
iif kdsld c,19 jp error elseld c,2 cp 1 jp nz,error dec c ld a,(ix) or a jr z
,hwok cp c jp nz,error .hwokrlca rlca rlca rlca rlca ld c,(iy+11)reg3 res 5,
c or c ld (iy+11),a ld d,3 jp preg endif BREAK command .brkicall &BD1
9 if kdsld a,(iy+11) or 6 elseld a,(iy+12) set 4,a ld d,5 endifcall preg ex
pected block cp cright block jr z,blok cp 1otherwise, block 1 expected cal
l nz,sferr jr nz,blokif not, then there's an error ld a,c or ablock 0 receive
d call nz,sferr jr nz,blokif not, then there's an error ld (iy+101),aYModem
block 0 ld a,1 ld (iy+106),aset YModem to be used .blokcall getbtget complem
ent of block number cpl ld c,a ld a,(iy+101)complement what we've got cp c c
all nz,sferrif different, there's an error ld call &BD19 if kdsld a,(iy+11)
elseres 4,a endifjp preg XON command .xonipush iy pop hl inc hl inc hl
inc hl inc hlHL IY+4 xonc jp onoff LOCAL command .loclipush iy pop hl
inc hlHL IY+1 lecho jp onoff TIMEOUT command .toutild c,2 cp 1 jp nz
,error ld l,(ix) ld h,(ix+1) ld (iy+9),l ld (iy+10),h rettimestMOD *** BAU
D command .baudild l,(ix) ld h,(ix+1) ld c,2 cp c jp z,getrx cp 1 jp nz,err
or l,(iy+7) ld h,(iy+8) push hl pop ixIX buffer address ld c,(iy+102) ld b,(
iy+103)BC number of bytes ld hl,0HL CRC-16 / checksum data .rclooppush bc*
** receive main data block call getbtget data byte ld (ix),a inc ixand store i
t ld e,a ld a,(iy+104) cp &15 jr z,chksumCRC or checksum call crc jr mgloop
calculate CRC .chksumld a,e add a,h ld h,acalculate checksum .mglooppop bc
dec bc ld a,b or c jr nz,rclooploop if not finished Ncp &FC ret nzESC .cany
espop hlremove CALL call s8canssend 8*CAN ld hl,ymtext ld a,(iy+106) or a
jr nz,gotmsgYModem ld hl,crctxt ld a,(iy+104) cp "C" jr z,gotmsgXModem-CRC
ld hl,chktxt .gotmsgcall stringPrint appropriate text ld a,22 call &BB6F ld
hl,abrtxt call stringfollowed by "aborted" ld hl,lastcr call string call &BB4
8 call &BB1Bremove break call &BC7D jp &BC92abandon files
UPLOAD command .r z,met0find length of filename inc hl inc b jr fll
.met0dec hl ex de,hl pop hlfilename extends from HL to DE ld a,12 cp b call
c,convconvert to CPC filename if too longer xor a cp b jr z,eymYModem null b
lock (EOT) ld a,(iy+42)A number of parameters or a call nz,gfnameget filename
if provided by RSX push bc push hl .pfloopld a,(hl) call &BB5Aprint filenam
e to screen inc hl djnz pfloop pop hl ld a,6 call sendbtACK to say "ok" po
p bc jp oupldi call buffc ld c,2 or a jp z,error call rfname ld
c,4 ld a,(iy+72)A files to send or a jp z,error ld l,(iy+70) ld h,(iy+71)HL
current name address ld (hl),0 ld a,(iy+107) cp 2 jr z,nxquerA specified
protocol (0/1/2) ld c,7 ld a,(iy+72) cp 1 jp nz,errorXModem single file only (
it's CRAP) .nxquerld hl,ttsend call stringfuck you, Pict! (we piss on Logon)
ld a,(iy+72) call prdecnumber of files to send ld hl,ttkmes call stringfpou
t .eymld hl,cltext call string*** End of YModem transmission xor a ld (iy+10
6),acancel YModem jr etransend transmission .octrlld a,32 call &BB5A*** Send
block to disc .oloopld a,(hl) call &BC95CAS OUT CHAR call nc,canyesif disc
error inc hl dec bc ld a,b or c jr nz,oloop .iblockld a,(iy+101) inc aIncre
ase block number ld (iy+101),a .wtsohbcall chkcanCheck for abort ld a,6 c
all sendbtACKnowledge successful receipt ld de,500 calluck you, Obi! (we piss o
n the goons) ld l,(iy+73) ld h,(iy+74) call prhlnumber of k to send ld
hl,ttkclo call string xor a ld (iy+104),aNAK or C not received ld l,(iy+
7) ld h,(iy+8)HL file buffer address ld (iy+70),l ld (iy+71),hput into current
name address .gnxtyupush iy pop hl ld de,116+129 add hl,de ld (hl),0no hea
der ld l,(iy+70) ld h,(iy+71)current name address ld a,(hl) or a jp z,exupl
end of uploads push hl push iy pop hl waitbt cp 1 jp z,sblockSOH XModem
-128 cp 2 jp z,sblockSTX XModem-1k cp &18 call z,canyesCAN Abort cp 4 jp nz,w
tsohbEOT End of transmission .etransld a,6 call sendbtif EOT, then ACKnowledg
e it call &BC8Fand close disc file ld a,(iy+106) or a jp nz,rblock if YModem
, next file please ld hl,lastcr jp stringotherwise CR/LF out and return! .sf
errld (iy+100),1 ret*** Subroutine - set file error .gfnameld a,(iy+42)*** Su
broutine - getxt ld a,1 ld (iy+105),aand set it to "printed already" .npstat
ld a,22 call &BB6F ld a,(iy+101) or a jr z,chkerrdon't print block 0 call prd
ecotherwise, print block number .chkerrld a,(iy+100) or a jp z,noerrblock rec
eived ok ld a,"" call &BB5Aelse print "" for error xor a ld (iy+100),aand ca
ncel the error ld a,&15 call sendbtNAK for error .cerlpld de,150 call waitbtwa
it for response cp 2 jp z,sblockSTX XModem-1k, get block again cp filename o
r a ret zA number of parameters ld l,(iy+43) ld h,(iy+44)HL parameter block
address dec hl dec hlget provided filename ld (iy+43),l ld (iy+44),h push hl
pop ix ld l,(ix) ld h,(ix+1) ld b,(hl) inc hl ld e,(hl) inc hl ld d,(hl)
ex de,hl dec a ld (iy+42),aA number of parameters ld a,1 or aset nz (i.e. fou
nd filename) ret Subroutine - Check for ESC/CTRL-X .chkcancall &BB1B ret
nckey pressed cp &18 jr z,canyesCTRL-X 1 jp z,sblockSOH Xmodem-128, get block
again cp &18 call z,canyesCAN abort call chkcan jr cerlpESC pressed abort .
noerrld l,(iy+7) ld h,(iy+8)*** block received ok ld c,(iy+102) ld b,(iy+103)HL
file buffer addr, BC block len ld a,(iy+101) or a jr nz,octrlwrite to disc
if not block 0 push hl*** YModem header call &BC92abandon current file ld
hl,ymtext call stringand print "YModem" on screen pop hl push hl ld b,0 .fllld
a,(hl) or a j N ld de,55 add hl,de ex de,hl pop hlDE send filename (destin
ation) push dePUSH filename for retrieval later ld bc,8 ldir ld a,"." ld (de
),a inc de ld bc,3 ldir push hl push iy pop hl ld de,75 add hl,de ex de,
hl pop hlDE file length bytes (destination) ldi ldi ld (iy+70),l ld (iy+71),h
HL current name address ld l,(iy+7) ld h,(iy+8)HL file buffer ld de,1024 a
dd hl,de ex de,hl pop hl ld b,12POP filename from above call &BC77Cd de,116+1
28 add hl,de ld a,(hl) ld a,(buffer+129) pop hland get HL back again ld (iy+
102),l ld (iy+103),hblock length or a jr nz,nriDo we need to transmit the heade
r ld e,(iy+84) ld d,(iy+85)DE bytes read in scf ccf sbc hl,de jr z,nriSkip
if all read in already .rilpcall &BC80 dec hl ld a,h or l jr nz,rilpRead t
he bytes in! .nrild a,c call sendbt Bytes are now in place ld a,(iy+101) cal
l sendbtA block ld a,(iy+101) cpl calAS IN OPEN cp &16 jr z,noheadSkip if t
here is no header push bc push de push hl push iy pop hl ld de,116 add hl,d
e ex de,hlDE buffer address pop hl push hl ld bc,128 ldirCopy header to store
ld a,1 ld (de),aand store that there is a header pop hl pop de pop bc ld
a,b or c jr z,noheadif file length 0, calculate it ld hl,128 add hl,bcadd he
ader ld (iy+75),l ld (iy+76),h ld (iy+77),0store file length jr clcdun .no
headld l,(iy+75)l sendbt ld c,(iy+102) ld b,(iy+103)BC block length push iy
pop hl ld de,116+128 add hl,de ld a,(hl)ld a,(buffer+128) or a jr nz,headre
ld l,(iy+43) ld h,(iy+44) push hl pop ixld ix,(pblock) - no header ld hl,0
jr sndlbt .headrepush iy pop ix Set up to read header ld de,116 add ix,deIX
buffer (header address!) ld hl,0 .sndlbtpush bc ld a,(ix) ld e,a call sen
dbt ld a,(iy+104) cp &15 jr nz,sndcrc ld a,e add a,l ld l,a jr sndmlp ld h
,(iy+76)HL file length xor a ld b,10 .ad1024sla l rl h rl a djnz ad1024 ld
(iy+75),l ld (iy+76),hstore file length ld (iy+77),0 .clcdunld l,(iy+7) ld h
,(iy+8) ld de,1024 add hl,de ld (iy+43),l ld (iy+44),hHL pblock ld bc,0 ld
(iy+84),c ld (iy+85),bBC bytes read in .cfblkld c,1 ld a,(iy+107) cp 2 jr nz
,xmsendA spec.protocol ld c,0 .xmsendld a,c ld (iy+101),ablock no. ld a,(i
y+107) or a jr nz,notbxm ld hl,chktxt jr ptype .notbxmc.sndcrccall crc .sndml
pinc ix pop bc dec bc ld a,b or c jr nz,sndlbt jr scfver .ymheadld a,1call
sendbtsend SOH xor acall sendbtsend block no. xor a cpl call sendbtcomplement
ed push iy pop hl ld bc,55 add hl,bc push hl pop ixIX filename ld hl,0 ld
c,128 ld b,12 .ymhlpld a,(ix) cp &20 call nz,ymhsc inc ix djnz ymhlp xor a
call ymhsc call sndtb .ymh0sxor a call ymhsc jr nz,ymh0s jr scfver .y
mhscpush bc ld e,a call sp 1 jr nz,notone ld hl,onetxt jr ptype .notoneld hl,y
mtext call string push iy pop hl ld de,55 add hl,defilename .ptypecall string
.wchmtdld de,50 call waitbt cp "C" jr z,ssendb cp &15 jr z,ssendb cp &18 j
p z,abort call chkcnu jr wchmtd .ssendbld (iy+104),a xor aNAK/C sent .st
sblkld a,(iy+101) or a jr z,trnblk block no. ld a,13 call &BB5A ld a,22 call
&BB6F ld a,(iy+101) call prdec ld a,32 call &BB5A ld a,8 call &BB5A .trnbl
kld a,(iy+10endbtYModem header, send character ld a,(iy+104) cp &15 jr nz,yscc
c ld a,e add a,l ld l,a jr yscpl .ysccccall crc .yscplpop bc dec c ret .sc
fverld a,(iy+104) cp &15 jr z,scol ld e,0 call crc call crc ld a,h call sendbt
.scolld a,l call sendbt .w4rsltld de,50 call waitbt cp 6 jr z,blsok cp &1
8 jp z,abort cp &15 jr z,erinup call chkcnu jr w4rslt .erinupld a,"" call &BB
5A ld a,8 call &BB5A ld l,(iy+102) ld h,(iy+103)HL block length ld (i1) or
a jp z,ymhead block 0 ld hl,1024 ld c,2Default 1k... ld a,(iy+107)128-by
te protocol or a jr z,bl128 push hl push iy pop hl ld de,116+128 add hl,de
ld a,(hl) pop hlld a,(buffer+128) or a jr nz,bl128Need to transmit header
ld a,(iy+77)More than 1k left file length or a jr nz,bldec ld a,(iy+76) cp
4 jr nc,bldecMore than 512 bytes left .bl128ld hl,128 ld c,1 .bldecpush hl
Store HL against IY calcs push iy pop hl l Nblxor a call ymhsc jr nz,nulbl
ld a,(iy+104) cp &15 jr z,ncol xor a call crc call crc ld a,h call sendbt
.ncolld a,l call sendbt .aflcp ld de,50 call waitbt cp &15 jr z,rsxb cp 6
jr z,byebye call chkcnu jr aflcp .byebyeld hl,lastcr jp string .abortld a,1
3 call &BB5A ld a,22 call &BB6F ld hl,abrreq call string jp &BC7D .sndtbpu
sh bc push hlSend 3 byte length as decimal push iy pop ix ld bc,79 add ix,bc
xor a ld (iy+78),a ld l,(iy+75) ld h1Bremove break call &BC7D jp &BC92abandon f
iles BUFFER command .buffild c,2 cp 1 jp nz,error ld l,(ix) ld h,
(ix+1) ld (iy+7),l ld (iy+8),h ret PROTOCOL command .protild c,2 c
p 1 jp nz,error dec c ld a,(ix) cp 3 jp nc,error ld (iy+107),a ret *
** FILE SUBROUTINES *** Read filenames into buffer .rfnameld (iy+42),anum
ber of parameters ld l,(iy+7) ld h,(iy+8)file buffer address ld (iy+70),l ld (
iy+71),hcu,(iy+76) ld de,10000 call sthlr ld de,1000 call sthlr ld de,100 cal
l sthlr ld de,10 call sthlr ld de,1 call sthlr ld a,(iy+77) ld e,a .ccaol
push iy pop ix ld bc,83 add ix,bcIX fdec+5 ld hl,ffff+5 xor a cp e jr z,nov
hb ld bc,&600 .ccalpld a,c add a,(ix) add a,(hl) ld c,0 cp 10 jr c,excc .ccar
rysub 10 inc c cp 10 jr nc,ccarry .exccld (ix),a dec ix dec hl djnz ccalp dec
e jr nz,ccaol .novhbpush iy pop ix ld bc,78 add ix,bcIX fdec py+84),l ld (
iy+85),hHL bytes read in jp trnblk .blsokld a,(iy+101) inc a ld (iy+101),ai
ncrease block no. cp 1 jp z,wchmtd ld l,(iy+75) ld h,(iy+76) ld a,(iy+77) fi
le length ld e,(iy+102) ld d,(iy+103) scf ccf sbc hl,de jr nc,ndhblsubtract bl
ock length dec a .ndhblld (iy+75),l ld (iy+76),h ld (iy+77),a cp &E0 jp nc,
eofut push ix call &BC89 pop ix jr c,eofok jr z,eofok cp &0F jp z,eofut
.eofokpush ix push iy pop hl ld de,116+128 add hl,deop hl pop bc ld b,6 ld e
,0 .pnmlpld a,(ix) ld d,a or e ld a,d jr z,ial0 ld e,255 add &30 call ymhsc .
ial0inc ix djnz pnmlp ret .sthlrxor a .sthllpscf ccf sbc hl,de jr c,sthlo in
c a jr sthllp .sthloadd hl,de ld (ix),a inc ix ret .chrchkcp 97 jr c,notlow
cp 123 jr nc,notlow res 5,a .notlowld hl,okchar ld c,a .czloopld a,(hl) or
a jr z,exitck cp c ret z inc hl jr czloop .exitckld c,3 pop hlCALLing
address pop hlHL saved jp erro ld a,(hl)Was it a header ld e,(iy+7) ld d,(
iy+8)DE file buffer address pop hl or a jr nz,washedIf so, ok, get block add
ress push hl scf ccf sbc hl,de ld a,&C cp h3k above fbaddr yet pop hl jr nz
,noverNo, we're ok ld l,(iy+7) ld h,(iy+8) ld de,1024 add hl,deotherwise reset
to 1k above jr nover .washedpush iy pop hl ld de,116+128 add hl,de ld (hl),
0Not a header any more! ld l,(iy+43) ld h,(iy+44) .noverld (iy+43),l ld (iy+44
),hHL r .insertcp "." jr nz,notdot ld a,(iy+68)A current character positi
on cp 0 jp z,exitcb .dtloopcp 8 jr z,exdtl jp nc,exitcb ld a,(iy+69) ld (
hl),a inc hlA filler character ld a,(iy+68) inc a ld (iy+68),a jr dtloop
.exdtlld a," " ld (iy+69),a ret .notdotcp " " ret z cp "*" jr nz,notsta
ld a,(iy+69) cp "" jp z,exitcb ld a,"" ld (iy+69),a jr putchr .notstald c,a
ld a,(iy+69) cp "" ld a,c jp z,exitcb .putchrld (hl),a inc hl ld a,( paramete
r block ld hl,0 ld (iy+84),l ld (iy+85),h0 bytes read in jp stsblk .eofutc
all &BC7A ld a,4 call sendbt ld de,100 call waitbt cp 6 jr nz,eofut ld a,(
iy+107)Specified protocol cp 2 jr nz,byebye jp gnxtyu .exuplld de,50 call
waitbtYModem blank block! cp "C" jr z,geufc cp &15 jr z,geufc call chkcnu j
r exupl .geufcld (iy+104),aNAK/C store .rsxbld a,1 call sendbt xor a call
sendbt xor a cpl call sendbt ld hl,0 ld c,128 .nuliy+68) inc a ld (iy+68),
a ret .exitcbld c,3 pop hl .exitp1pop hl jp error Check for ESC/CTRL-X
.chkcnucall &BB1B ret nckey pressed cp &18 jr z,cnuyesCTRL-X cp &FC ret nzE
SC .cnuyespop hlremove CALL call s8cans ld a,(iy+107) ld hl,ymtext cp 2
jr z,gotmsuYModem ld hl,onetxt cp 1 jr z,gotmsuXModem-1k ld hl,chktxt .go
tmsucall string ld hl,abrtxt call string ld hl,lastcr call string ld a,10 cal
l &BB5A call &BB48 call &BB N) call &BB5A inc hl djnz lfnprtprint filename
ld a,13 call &BB5A ld a,10 call &BB5A call &BB5A call &BB69 ld a,d sub h
inc a inc a inc a ld b,0 .fcwlpinc b sub 25 jr nc,fcwlp dec b ld a,b ld (iy+
68),acchar number of columns ld a,1 ld (iy+69),astmode current column ld
a,0 ld (iy+42),anparam number of directory blocks push iy pop hl push de ld d
e,72 add hl,de pop de ld (hl),aftsend number of directory blocks done .g128
lpinc (hl) op hlDE filename ld b,11 .cfloopld c,(hl) xor a cp c jr z,extfn l
d a,(de) cp "" jr z,wcard res 7,c cp c jr nz,extfn .wcardinc hl inc de djnz c
floop pop hl push hl inc hl ld e,(iy+70) ld d,(iy+71)name address ld bc,13
ldir dec hl dec hl dec hl ld (hl),c inc hl ld (iy+70),e ld (iy+71),d ld a,(
iy+72) inc a ld (iy+72),afiles to send ld c,5 cp 64 jp z,exitp1 ld c,(hl) inc
hl ld b,(hl) ld l,(iy+73) ld h,(iy+74) add hl,bc ld (iy+73),l ld (iy push hl c
all ldr128 pop hl ld a,(iy+42) cp (hl) jr nz,g128lp ld a,(iy+69) cp 1 ld a
,10 call nz,&BB5A call &BB5A ld a,13 call &BB5A call &BC7A ret .ldr128c
all gdlbrn call gdlbrn call gdlbrn call gdlbrn ret .gdlbrncall &BC80 ld
b,31 cp &FF jp z,skip0 cp &FE jp z,skip0 ld a,(iy+42) or ahas directory blo
ck size been found yet jr nz,mpfnptif so, then don't bother finding it! ld b
,13 .skipfnpush bc call &BC80 pop bc djnz skipfnskip (bla+74),hk to send .e
xtfnpop hl ld de,14 add hl,de ld (iy+43),l ld (iy+44),hpblock jr excml .ex
srlinc ix inc ix ld a,(iy+42) dec a ld (iy+42),a jp nz,mxloopnumber of paramete
rs ret Update CRC in HL with input in E .crc ld b,8shift 8 times .up
dlp rlc eshift input adc hl,hlshift crc jr nc,skipitjump if no carry ld a,h
xor &10 ld h,axor with &1021 ld a,l xor &21 ld l,a .skipit djnz updlpdone ret
Convert filename if nk) filename and index call &BC80 ld (iy+42),a ld b,1
7 jp skip0 .mpfnptld b,8 .mpfnlppush bc call &BC80 pop bc call &BB5A djnz m
pfnlpprint first part of filename ld a,"." call &BB5A call &BC80 call &BB5A
call &BC80 call &BB5A call &BC80 call &BB5Aprint extension call &BC80 call
&BC80skip "index" ld a," " call &BB5A call &BC80 ld l,a push hl call &BC80
pop hl ld h,a ld b,3 .ctokxor a rr h rr l djnz ctok ld a,l call prasp ld
a,"k" call &sub-directories included .convld b,0 ex de,hl .coloopld a,(hl)
cp "/" jr z,exconv cp "" jr z,exconv dec hl inc b ld a,12 cp b jr nz,colo
op .exconvinc hl xor a cp b ret nz push iy pop hlelse automatic "DOWNLOAD
" push de ld de,45 add hl,de pop de ld b,10 ret Send 8*CAN, 8*backspace
.s8cansld b,8 ld a,&18 .canlppush bc call sendbt pop bc djnz canlp ld b,8
ld a,8 .bsplppush bc call sendbt pop bc djnz bsplp retd l,a ld h,0 arrent nam
e address xor a ld (iy+72),a ld (iy+73),a ld (iy+74),afiles/k to send pu
sh ix ld de,1024 add hl,de ex de,hl ld hl,&BB5A ld a,(hl) ld (hl),201 push
hl push af call &BC9BCatalogue in fbuff+1024, screen off pop af pop hl ld (hl
),a pop ix .mxloopld de,1024 ld l,(iy+7) ld h,(iy+8)fbaddr add hl,de ld (
iy+43),l ld (iy+44),hpblock ld l,(ix) ld h,(ix+1) ld b,(hl) inc hl ld e,(hl
) inc hl ld d,(hl) xor a ld (iy+68),achar pos ld a, *** LIBRARY.MOD ***
LDIR command .ldiricall buffc ld c,2 cp 1 jp nz,error call &BC7Daban
don input file ld l,(ix) ld h,(ix+1) ld b,(hl) inc hl ld e,(hl) inc hl ld
d,(hl) ex de,hl ld e,(iy+7) ld d,(iy+8)file buffer address push bc push hl
call &BC77 pop hl pop bc jr c,lbriok bit 6,a ret nz bit 7,a ret nz ld c,9
jp errorif not already reported, comms error 9 .lbriokpush hl ld hl,lbrtxt
call string pop hl .lfnprtld a,(hl" " ld (iy+69),afiller byte push de
push iy pop hl ld de,55 add hl,de pop deHL filename .cploopld a,(de) pus
h hl call chrchk pop hl call insert inc de djnz cploop .cmloopld a,(iy+68)
cp 11 jr z,excml jp nc,exitck ld a,(iy+69) ld (hl),a inc hl ld a,(iy+68)
inc a ld (iy+68),a jr cmloop .excmlld l,(iy+43) ld h,(iy+44)pblock ld a,(h
l) cp 255 jr nz,exsrl push hl inc hl push hl push iy pop hl ld de,55 ad
d hl,de ex de,hl p NBB5A ld a," " call &BB5A call &BC80 ld l,a push hl
call &BC80 pop hl ld h,a call prhlh ld a,(iy+68) ld c,a ld a,(iy+69) cp c
jr nz,thspcs ld a,1 ld (iy+69),a ld a,10 call &BB5A ld a,13 call &BB5A jr
after3 .thspcsinc a ld (iy+69),a ld a,32 call &BB5A call &BB5A call &BB5A
.after3ld b,14 .skip0push bc call &BC80 pop bc djnz skip0 ret MOD ***
LDIR command .ldiricall buffc ld c,2 cp 1 jp nz,error call &BC7Daband
on insend byte ld a,(iy+1)local echo or a jr z,nokey ld a,e push af call vt5
2c pop afif so, print character cp 13 jr nz,nokeyCR ld a,10 call sendbtif so,
add LF ld a,10 call vt52c Get characters from input buffer and print .nok
eycall &BD19 call &BB84cursor off if kds ld b,86 else ld b,8 endif ld e,(
iy+38) ld d,0DE (buffer get offset) .gclooppush bc push iy pop hl ld bc,
116 add hl,bc add hl,deHL address in buffer to get di ld a,(hl) or a jp z,noi
np ld (hl),0 ei ld c,a ld a,(iy+5) cp 1 call z,capprnfile capture mode .pcc
harld a,c push de call vt52c if kds di call fastr pop depop de else di cal
l fastr pop de endif inc e .noinpei pop bc djnz gcloop ld (iy+38),e(buffer
get offset) DE jp comlp File capture mode .capprnld a,c push de push hl
ld e,(iy+40) ld d,(iy+41)DE (file bytes count) ld l,(iy+7) ld h,(iy+8)HL (f
ile buffer address) add hl,d *** SIO.MOD *** SEND command .sendild c,2
or a jp z,error ld e,a dec a rlca ld b,0 ld c,a db &DD sbc hl,bc .sloop
ld a,(ix) call sendbt dec e ret z inc ix inc ix jr sloop GET command .g
etild c,2 cp 1 jp nz,error ld l,(ix) ld h,(ix+1) ld e,(iy+9) ld d,(iy+10)ld de
,(timest) call waitbt jp nc,timout ld (hl),a ret GRAB command .grabild
c,2 cp 1 jp nz,error ld l,(ix) ld h,(ix+1) call grabbt ld (hl),a ret We l
d (hl),a inc de ld (iy+40),e ld (iy+41),d(file bytes count) DE ld a,d cp 12
jr z,bfillBuffer full pop hl pop de retIf not, return .bfillpush bc call sto
pelse yell "stop!!!" push iy pop hl ld de,24 add hl,de call &BCE6temporaril
y remove fast ticker block ld l,(iy+7) ld h,(iy+8)HL (file buffer address)
ld de,1024 add hl,de ld bc,2048 .bfloopld a,(hl) call &BC95write to the disc
jr nc,cmerrjump out if error inc hl dec bc ld a,b orRITE command .wrtild c,
2 or a jr z,sndcrif no parameters, send CR only cp 1 jp nz,errorerror 2 if not
1 parameter ld l,(ix) ld h,(ix+1) ld a,(hl) inc hl ld e,(hl) inc hl ld
d,(hl) ex de,hl or a jr z,exitwr ld e,a .wrloopld a,(hl) call sendbt inc
hl dec e jr nz,wrloop .exitwrld a,(iy+3) or a ret zCR on/off .sndcrld a,1
3 jp sendbt COM command .comicall cbuffrClear text buffer call ckeyon
.wtccbld bc,conin in a,(c) bit 7,aC c jr nz,bfloop ld (iy+40),e ld (iy+41),dfi
le buffer address back to normal .rescompush iy pop hl ld de,24 add hl,de c
all &BCE3replace fast ticker block call resume"carry on!!" pop bc pop hl pop
de retand return .cmerrld (iy+5),0if error, capture mode OFF call &BC92aban
don output file jr rescomresume communication! Fast ticker event .fastrpu
sh iy ld iy,(&BAFD) ld hl,(&BAFD) ld de,116 add hl,deHL buffer start call g
rabbt ld d,0haracter available jr z,noccb ld bc,datin in a,(c) jr wtccbIf so,
get and try until not available .noccbcall &B912 ld c,a ld b,&80Set up fast
ticker interrupt push iy pop hl ld de,24 add hl,de ld de,fastr call &BCE0
Main COM loop .comlp ld a,(iy+2) or a call nz,&BB81Cursor on if selected
Get key and send call &BB09 jp nc,nokeyno key pressed cp &FC jp z,quitif E
SC, quit cp 224 call z,&BB60if COPY, copy character ld e,a call sendbt Ne,116
add ix,deIX buffer ld e,(iy+9) ld d,(iy+10)DE timeout call waitbt jp nc,wtm
out ld b,(iy+42)B number of parameters .chkslpld e,(ix) ld d,0 ld l,(ix+2)
ld h,(ix+3) add hl,de cp (hl) jr z,corres ld (ix),0 .rfckinc ix inc ix in
c ix inc ix djnz chkslp push iy pop hl inc h dec hlHL buffer+255 ld (hl),
a ld a,(iy+5) or aA file capture mode call nz,capprn jr wgloop .corresinc
e ld (ix),e ld a,e cp (ix+1) ld a,(hl) jr nz,rfck jr c,typok jp z,oderr ld
c,8 jp error .typokcall &BC80 jr nc,qutyp call vt52c call &BB09 jr nc,typo
k cp &FC jr z,qutyp call &BB81 call &BB18 call &BB84 jr typok .qutypjp &BC7
A DTR command .dtriif kds ld c,19 jp error elseld c,2 cp 1 jp nz,error
ld a,(ix) ld c,1 cp 2 jp nc,error rrca push af ld a,(iy+12) and 127using regis
ter 5 pop bc or b ld (iy+12),a ld d,5 endifjp preg RTS command .rtsild
c,2 cp 1 jp nz,er .wsrvalld l,(iy+38) ld h,(iy+39) push hl pop ixHL buffer
get offset ld a,(iy+42)A number of parameters ld e,a ld d,0 add ix,de add ix,
de ld l,(ix) ld h,(ix+1) ld (hl),b ret .wtmoutld b,0 call wsrval jp timout
INPUT command .inpild c,2 cp c jr z,inpw cp 1 jp nz,error .inpokld l,
(ix) ld h,(ix+1) ld a,(hl) inc hl ld e,(hl) inc hl ld d,(hl) ex de,hlA cont
ains length, HL address of string ld b,a .inplpld e,(iy+9) ld d,(iy+10) ld e
,(iy+36)DE buffer offset add hl,de ld (hl),a or a jp z,retfr inc e ld hl,
(&BAFD) push de ld de,116 add hl,deHL buffer start call grabbt pop deDE bu
ffer offset add hl,de ld (hl),a or a jp z,retfr1 inc e .retfr1ld (iy+36),e
buffer store offset DE .retfrpop iy ret Quit from COM mode .quitcall &BB
48 call &BB1Bremove break call &BB84cursor off push iy pop hl ld de,24 add h
l,deHL fast ticker block address call &BCE6 DE timeout push bc call waitbt p
op bc jp nc,timout ld (hl),a inc hl djnz inplp ret .inpwld l,(ix+2) ld
h,(ix+3) ld a,(hl) inc hl ld e,(hl) inc hl ld d,(hl) ex de,hlA contains leng
th, HL address of string ld e,a .inpwlpush de call grabbt pop de jp nc,inpw
l ld (hl),a cp (ix) jp z,inpwc inc hl dec e jp nz,inpwl ret .inpwcld l,(
ix+2) ld h,(ix+3) ld a,e dec a .iwclret z dec (hl) dec a jp iwcl CAPT
URE command .captic Key settings .ckeyofcall &BB00 jp &BB18 .ckeyonld
a,79 ld b,8 call setkey ld a,0 ld b,11 call setkey ld a,2 ld b,10 call setkey
ld a,8 ld b,8 call setkey ld a,1 ld b,9 call setkey ld a,9 ld b,27 call setk
ey ld a,9 ld b,224 jp &BB27 .setkeyld c,a call &BB27 normal key ld a,c call
&BB2D+SHIFT ld a,c jp &BB33+CTRL WAIT command .waitild c,2 or a jp z,
error cp 1 jr nz,wnot1 push iy pop ix ld de,116+250 add ix,deIX buffer+250 a
ll buffc ld c,2 cp 1 jp nz,error ld e,(iy+7) ld d,(iy+8)DE file buffer addr
ess ld hl,1023 add hl,de ex de,hl ld l,(ix) ld h,(ix+1) push hl pop ix ld b,(
ix) ld l,(ix+1) ld h,(ix+2) call &BC8C jr c,copok jr z,oderr ld c,8 jp error
.oderrld c,9 jp error .copokld a,1 ld (iy+5),aA file capture mode ld hl,10
24 ld (iy+40),l ld (iy+41),hHL file bytes count xor a jp &BC95 CLOSE comma
nd .closild c,10 ld a,(iy+5) or a jp z,error xor a push ix pop de dec de d
ec deDE buffer+248 ld l,(ix) ld h,(ix+1) ld (ix),l ld (ix+1),h ld (ix+2),e ld
(ix+3),d inc a .wnot1dec a ld (iy+42),aA number of parameters push ix pop
de ld (iy+38),e ld (iy+39),dbuffer get offset IX push hl push iy pop hl ld
de,116 add hl,de ex de,hl pop hlDE buffer .stbuffex de,hl ld (hl),0 ex de,hl
inc de ld l,(ix) ld h,(ix+1) inc ix inc ix ldi ldi ldi dec a jr nz,stbuff
.wglooppush iy pop ix ld dld (iy+5),ano file capture mode ld l,(iy+7) ld h,(iy
+8)HL file buffer address ld de,1024 add hl,de ld c,(iy+40) ld b,(iy+41)BC f
ile bytes count dec bc .clslpld a,(hl) call &BC95 inc hl dec bc ld a,b cp 3 jr
nz,clslp jp &BC8F TYPE command .typeicall buffc ld c,2 cp 1 jp nz,erro
r ld e,(iy+7) ld d,(iy+8)DE file buffer address ld hl,1024 add hl,de ex de,
hl ld l,(ix) ld h,(ix+1) push hl pop ix ld b,(ix) ld l,(ix+1) ld h,(ix+2) call
&BC77 N-digit decimal .prdecld d,100 call pdchr ld d,10 call pdchr ld d,1
.pdchrld c,0 .pdlopsub d jr c,pdfin inc c jr pdlop .pdfinadd a,d push
af ld a,c add &30 call &BB5A pop af ret Print A as 3-digit decimal, with sp
aces .praspld b,0 ld d,100 call pschr ld d,10 call pschr ld b,1 ld d,1
.pschrld c,0 .pslopsub d jr c,psfin inc c jr pslop .psfinadd a,d push af l
d a,c or b jr nz,psnsp ld a,240 .psnspadd 48 call &BB5A pess ld hl,1024 add
hl,de ex de,hl ld l,(ix) ld h,(ix+1) push hl pop ix ld b,(ix) ld l,(ix+1) ld h
,(ix+2) call &BC77 jr c,eopok jp z,oderr ld c,8 jp error .eopokpush iy pop
hl ld de,24 add hl,deHL fast ticker block call &B912 ld c,a ld b,&80 ld de,
fastr call &BCE0set up fast ticker interrupt .echolpcall &BC80 jp nc,equit c
p 10 jr z,echolp call sendbt ld e,(iy+38) ld d,0DE buffer get offset .ec
looppush iy pop hl add hl,de push de ld deop af ret Print HL as (up to) 5-d
igit decimal .prhlld c,0 ld de,10000 call prhlr ld de,1000 call prhlr ld d
e,100 call prhlr ld de,10 call prhlr ld c,1 ld de,1 .prhlrxor a .prhllpscf c
cf sbc hl,de jr c,prhlo inc a jr prhllp .prhloadd hl,de or a jr nz,prhly cp c
ret z .prhlyld c,1 add &30 call &BB5A ret Print HL as 4-digit hex .prhlh
ld a,h call prah ld a,l jp prah Print A as 2-digit hex .prahld b,0 ld c,
a rr a rr a rr a,116 add hl,de pop deHL position in buffer ld a,(hl) or a jp
z,echolp call vt52c ld (hl),0 di push de call fastr pop de ei inc e ld (
iy+38),eDE buffer get offset jr ecloop .equitpush iy pop hl ld de,24 add h
l,de call &BCE6 jp &BC7A .timoutld c,11 jp error d c,2 or a jp z,error l
d e,a dec a rlca ld b,0 ld c,a db &DD z,echolp call sendbt ld e,(iy+38) ld
d,0DE buffer get offset .eclooppush iy pop hl add hl,de push de ld de rr a
.prahiland 15 cp 10 jr nc,prahlt add a,48 call &BB5A jr prahot .prahltadd
a,55 call &BB5A .prahotld a,b cp 1 ret z ld a,c ld b,1 jr prahil Send
byte A to serial interface if kds .sendbtld bc,conin .seloopin d,(c) bit 6,
d jr z,seloop call revers ld bc,datout out (c),a ret else .sendbtld bc,conpo
rt .seloopin d,(c) rr d rr d rr d jr nc,seloop ld bc,datport out (c),a ret en
dif Get byte A from serial interface if kds .getbtld *** SUBROUT.MOD *
** Check for file buffer .buffcpush af push bc ld a,(iy+7) ld b,a ld a,
(iy+8) or b pop bc jr z,ebuff ld a,(iy+5) or a jr nz,ebuff2 pop af ret .ebu
ffpop af pop hl ld c,6 jp error .ebuff2pop af pop hl ld c,8 jp error Conver
t baud rate HL to 8253 value .bconvld ix,tb8253 .bcloopld a,(ix+2) or a jr
z,bcerrrun out! ld a,(ix) cp l jr nz,difflow byte different ld a,(ix+1) cp h
jr nz,diffhigh byte different ld l,(ix+2ror ld a,(ix) ld c,1 cp 2 jp nc,erro
r if kds rlca rlca push af ld a,(iy+11) and 249control register pop bc or b l
d (iy+11),a elserlca push af ld a,(iy+12) and 253r5 pop bc or b ld (iy+12),a l
d d,5 endifjp preg DCD command .dcdild c,2 cp 1 jp nz,error ld l,(ix) l
d h,(ix+1) if kds call rreg and 32 xor 32 rra rra rra rra rra elseld d,0 call
rreg and 8 rra rra rra endifld (hl),a inc hl ld (hl),0 ret CTS comman) l
d h,(ix+3) ret .diffinc ix inc ix inc ix inc ix jr bcloop .bcerrpop hl ld c,1
jp error Print error number C - corrupts all registers .errorld a,(iy+0)
or a ret z ld b,cpreserve error number ld hl,errtxt .etrydec c jr z,gotit
.eloopinc hl ld a,(hl) or a jr nz,eloop inc hl jr etry .gotitpush hl ld hl
,cetxt call stringprint "Comms error " ld a,b call prdecprint error number po
p hl jp stringprint error string Print A as 3d .ctsild c,2 cp 1 jp nz,err
or ld l,(ix) ld h,(ix+1) if kdscall rreg and 16 rra rra rra rra elseld d,0 c
all rreg and 32 rlca rlca rlca endifld (hl),a inc hl ld (hl),0 ret ECHO c
ommand .echoicall buffc ld c,2 cp 1 jp nz,error .wtccbeld bc,conin in a,(
c) bit 7,aCharacter available jr z,noccbe ld bc,datin in a,(c) jr wtccbe If so
, get and try until not available .noccbecall cbuffr ld e,(iy+7) ld d,(iy+
8)DE file buffer addr Nbc,conin .gtloopin d,(c) bit 7,d jr z,gtloop ld bc,da
tin in a,(c) jp revers else .getbtld bc,conport .gtloopin d,(c) rr d jr nc,g
tloop .getchrld bc,datport in a,(c) ret endif Grab byte A from serial inte
rface (try once only) if kds .grabbtld bc,conout ld a,(iy+11) and 251 out (
c),adrop RTS ld bc,conin in d,(c) bit 7,d jr nz,grbchrcharacter received
ld bc,conout ld a,(iy+11) out (c),a xor a retif not, RTS high, A0, RET .grbc
hrld bc,dattctlpinc hl jr vtstlp .exstlpld a,c cp "A" jr z,vta cp "B" jr z,vtb
cp "C" jr z,vtc cp "D" jr z,vtd cp "E" jr z,vte cp "L" jr z,vtl cp "M" jp z,vtm
cp "X" jp z,vtx cp "Y" jp z,vty cp "j" jp z,vtj cp "k" jp z,vtk cp "l" jp z,v
tl cp "p" jp z,vtp cp "q" jp z,vtq ret .vtacall &BB78 ld a,1 cp l ret z ld a
,11 jp &BB5A .vtbcall &BB69 inc e call &BB78 ld a,l cp e ret z ld a,10 jp &BB5A
.vtccall &BB69 inc d call &BB78 ld a,h cp d ret z ld a,9 jp &Bin in a,(c) dec
cotherwise, get it .grblpin d,(c) bit 7,d jp nz,grblp ld bc,conout ld d,(iy+
11)RTS high again out (c),d jp revers else .grabbtld bc,conport in d,(c) r
r d jr c,grbchr xor a ret .grbchrld bc,datport in a,(c) ret endif if kds
Reverse byte A (corrupts BC) .reversld c,0 ld b,8 .revlprla rr c djnz revlp
ld a,c ret endif Get byte A from serial interface (wait for time in DE) C
arry is set if ok, reset if not ok if kds B5A .vtdcall &BB78 ld a,1 cp h ret
z ld a,8 jp &BB5A .vtecall &BB78 push hl call &BB6C pop hl jp &BB75 .vtlcall
&BB69 ld c,h call &BB78 dec l ld h,c ld a,0 ld b,0 jp &BC50 .vtmcall &BB69 ld c
,h call &BB78 dec l ld h,c ld a,0 ld b,1 jp &BC50 .vtxld a,4 ld (iy+108),a ld a
,"w" ld (iy+109),a ret .vtyld a,2 ld (iy+108),a ld a,"c" ld (iy+109),a ret .vt
jcall &BB78 ld (iy+110),l ld (iy+111),h ret .vtkld l,(iy+110) ld h,(iy+111) jp
&BB75 .vtlcall &BB69 ld c,h .waitbtld (iy+87),e ld (iy+88),d ld bc,conin ld a,1
ld (iy+89),a .wtloopin d,(c) bit 7,d jr nz,waitcr ld a,(iy+89) or a jr nz,wtl
oop ret .waitcrld bc,datin in a,(c) call revers scf ret else .waitbtld (iy+
87),e ld (iy+88),d ld bc,conport ld a,1 ld (iy+89),a .wtloopin d,(c) rr d jr c,
waitcr ld a,(iy+89) or a jr nz,wtloop ret .waitcrld bc,datport in a,(c) ret e
ndif MC WAIT PRINTER redirection .redirpush de push hl ld c,0 ld hl,send
bt call &1B call &BB78 dec l ld e,l ld h,c xor a ld b,a jp &BC50 .vtpxor a cal
l &BB90 ld a,1 jp &BB96 .vtqxor a call &BB96 ld a,1 jp &BB90 .escsntld a,1 l
d (iy+108),a ret .vt52accp "w" ld a,(iy+108) jr z,vt52ws cp 1 jr nz,vtdocp ld
a,c sub 31 ld (iy+112),a ret .vtdocpld a,c sub 31 ld h,a ld a,(iy+112) ld l,a
call &BB75 jr vtcm .vt52wspush iy pop hl ld de,112 add hl,de ld e,a ld d,0 ad
d hl,de ld a,c sub 32 ld (hl),a ld a,e or a ret nz ld a,(iy+115) ld e,aKL FAR P
CHL scfcarry no time-out pop hl pop de ret Frame flyback event for counte
r .fcountpush iy ld iy,(&BAFD) ld a,(iy+89) or a jr z,retfc ld l,(iy+87) ld
h,(iy+88) dec hl ld (iy+87),l ld (iy+88),h ld a,h or l ld (iy+89),a .retfcpo
p iy ret Print string at HL .stringld a,(hl) or a ret z call &BB5A inc hl
jr string Register access Amstrad - send/read A, DART register D KDS -
send/read A, 6850 control port if kds .preg ld a,(iy+114) ld d,a ld a,(iy+1
13) add a,e ld l,a ld a,(iy+112) add a,d ld h,a call &BB66 .vtcmxor a ld (iy+1
09),a ret Stop (XOFF, drop RTS) .stopld a,(iy+4) or a ld a,19 call nz,sen
dbt .stop2if kds ld a,(iy+11) and 251 jp preg else ld a,(iy+12) and 253 ld d
,5 jp preg endif Resume (XON, RTS high) .resumeld a,(iy+4) or a ld a,17
call nz,sendbt .resum2if kds ld a,(iy+11) jp preg else ld a,(iy+12) ld d,5 j
p preg endif Reset intld bc,conout out (c),a ret .rregld bc,conin in a,(c)
ret else .pregld bc,conport out (c),d out (c),a ret .rregld bc,conport out (
c),d in a,(c) ret endif Print VT52 character A .vt52cld c,a ld a,(iy+108
) or a jp nz,vtpr ld a,c cp 31 jp nc,&BB5A cp 27 jp z,escsnt cp 7 ret c cp 14
ret nc jp &BB5A .vtprdec a ld (iy+108),a ld a,(iy+109) or a jp nz,vt52ac ld hl,
vt52st .vtstlpld a,(hl) or a jr z,exstlp inc hl cp c jr nz,stctlp ld a,(hl) jp
&BB5A .s Nmicall reset ld hl,2400 ld de,24002400/2400 bps .termxcall gotbp
ld a,1 ld (iy+2),acursor on ld (iy+4),aXON flow control on ld hl,500 ld (iy+9
),l ld (iy+10),htimeout 10 seconds ld hl,tfbuff ld (iy+7),l ld (iy+8),hfile bu
ffer ld ix,tpblock ld (ix),1 ld (ix+1),0 ld (ix+2),0 ld (ix+3),0 ld (ix+4),8
ld (ix+5),0 push iy ld a,3 call wordiset data word pop iy if kds else ld a,1
call hwok endifset hardware handshaking call &BB00 call &BB4E cl gotbp jp rs
mnu .wrdmnuld hl,tmword call menu jp z,rsmnu ld ix,tpblock ld (ix),1 ld (ix+
1),0 cp 1 jr nz,par2 ld (ix+2),0 ld (ix+4),8 jr swrd .par2ld (ix+2),2 ld (ix+
4),7 .swrdld (ix+3),0 ld (ix+5),0 push iy ld a,3 call wordi pop iy jp rsmnu
.dobrkcall brki jp rsmnu .dirmnuld hl,tmdir call menu jp z,mainm ld (iy+86
),acurrent directory ld hl,cdname ld de,tpblock+513 ld bc,12 ldir ld hl,tpblo
ck+520 add 48filename "CHARLEY.DIR" ld (hl),a call &BCall &BBBA call &BBFF l
d a,&40 call &BC08 ld a,1 call &BC0Eclear low screen ld a,&C0 call &BC08 ld
a,2 call &BC0Eclear high screen .tcomcall comi call stop2"Oy!!!! Hold on!
" call &BB78 ld (chapos),hlstore character position call &BC0B ld (offset),h
lstore screen offset ld a,&40 call &BC08 .msetupld a,1 call &BC0EMODE 1 ld
bc,0 call &BC38border 0 ld a,0 ld bc,&0000 call &BC32set inks ld a,1 ld bc,&1A
1A call &BC32 ld a,2erface and variables .resetif kds ld a,(iy+11) or &C0 c
all preg else ld a,&18 ld d,0 call preg endif ld a,1 ld (iy+0),a ld (
iy+3),a ld a,0 ld (iy+1),a ld (iy+2),a ld (iy+4),a ld (iy+5),a ld (iy+9),
a ld (iy+10),a ld (iy+108),a ld (iy+109),a ld a,2 ld (iy+107),a push iy p
op hl ld de,45 add hl,de ex de,hl ld hl,rsftxt ld bc,23 ldir if kds ld a,%1
0101100 ld (iy+11),a call preg else ld a,%11100001 ld (iy+11),a ld d,3 call p
reg ld a,%1 ld bc,&0202 call &BC32 ld a,3 ld bc,&0606 call &BC32 ld hl,cc
rtxt call string ld de,&0004 ld hl,&2718 call &BB66set up window .mainmld hl,
tmmain call menu jp z,qucom cp 1 jp z,rsmnu cp 2 jp z,cptmnu cp 3 jp z,filmn
u cp 4 jp z,dscmnu cp 5 jp z,dirmnu if kds else cp 6 jp z,hangup endif .
rsmnuld hl,tmrs call menu jr z,mainm cp 1 jp z,bpsmnu cp 2 jp z,wrdmnu if kd
selse cp 6 jp z,hhsmnu endifcp 3 jp z,dobrk cp 4 jp z,xonmnu cp 1101010 ld (i
y+12),a ld d,5 call preg endif ret .rsftxtdb "DOWNLOAD.",0 db "
",0 Clear text buffer .cbuffrpush iy pop hl ld de,116 add hl,deHL buff
er ld d,h ld e,l inc deDE buffer+1 ld bc,255 ld (hl),0 ldir ld hl,0 ld
(iy+38),l ld (iy+39),hbuffer get offset ld (iy+36),l ld (iy+37),hbuffer store o
ffset ret SUBROUT $$$MOD *** Check for file buffer .buffcpush af push b
c ld a,(iy+7) ld b,a ld a,(iy+8) or b p5 jp z,lclmnu timeout - removed fro
m production version ld hl,tostxt call string .tvdispld hl,&0B03 call &BB
75 ld l,(iy+9) ld h,(iy+10) call prhlprint time-out ld a,32 call &BB5A .tvw
aitcall &BB06 cp 32 jp z,rsmnu cp 224 jp z,rsmnu cp &FC jp z,rsmnu ld l,(iy+9)
ld h,(iy+10) ld de,25 cp 240 jr z,tvup cp 241 jr nz,tvwait ld a,h cp d jr n
z,tvn0 ld a,l cp e jr z,tvwait .tvn0scf ccf sbc hl,de ld (iy+9),l ld (iy+10),
h jr tvdisp .tvupadd hl,de ld *** TERMINAL.MOD *** tfbuffequ &2000terminal
file buffer tpblockequ &3000terminal parameter block offsetequ &3FFEoffset st
ore location chaposequ &3FFCcharacter position store location TERMxx co
mmands .tm3icall reset ld hl,300 ld de,300 jp termx .tm75icall reset ld hl,1
200 ld de,75 jp termx .tm12icall reset ld hl,1200 ld de,1200 jp termx .tm24ijp
termi .tm48icall reset ld hl,4800 ld de,4800 jp termx TERMINAL command
.ter(iy+9),l ld (iy+10),h jr tvdisp if kdselse .hhsmnuld hl,tmhshk call menu
jp z,rsmnu dec a call hwok jp rsmnu endif .xonmnuld hl,tmxon call menu jp z
,rsmnu dec a xor 1 ld (iy+4),a jp rsmnuXON control .lclmnuld hl,tmlocl call
menu jp z,rsmnu dec a xor 1 ld (iy+1),a jp rsmnuLocal echo .bpsmnuld hl,tmba
ud call menu jp z,rsmnu ld b,a ld ix,tbsets .bpsgvlld l,(ix) ld h,(ix+1) ld e,
(ix+2) ld d,(ix+3) inc ix inc ix inc ix inc ix djnz bpsgvl ld a,2 cal Nl add
hl,hl add hl,hl add hl,hl add hl,hl ld de,tpblock add hl,deHL base address of
entry push hl ld c,26 call editln ld a,35 call &BB6F pop hl ld de,26 add h
l,de push hlHL address of entry type inc hl ld a,(tpblock+512) cp 17 jr z,no
autif macro, no secondary entry ld c,5 call editlnedit secondary entry ld a,b
or a jr nz,notaut ld a,35 call &BB6F ld hl,atotxt call stringprint "auto" if n
o text entered ld a,1 jr putautsecondary entry 1 finished display ld hl,&03
11 call &BB75column 3, row 17 ld a,"M" call &BB5A"M" (macro) ld a,32 call &BB5
A call &BB5Atwo spaces ld a,3 call &BB90PEN 3 push ix pop hl ld b,26 call str
ng2dialling string for macro ld hl,svdtxt call string"Save directory" ld a
,3 call &BB90 ld hl,&0101 .dirclppush hl call &BB75 pop hl ld a,246 call &BB5
A call &BB06 push af push hl call &BB75 ld a,32 call &BB5A pop hl pop af cp
&FC jp z,dirmnu cp 240 jr z,di(autodial) .notautld a,0 jr putautsecondary entr
y 0 (not autodial) .noautpop hl push hl ld (hl),0no secondary entry (macro) in
c hl ld (hl),0 inc hl ld (hl),0 inc hl ld (hl),0 inc hl ld (hl),0 inc hl ld
(hl),0 .putaut pop hl ld (hl),a pop hl jp dirclp .dirdiadirect dial
.dscmnuld hl,tmdisc call menu jp z,mainm cp 1 jp z,catdsc cp 2 jp z,driv
ea cp 3 jp z,driveb cp 4 jp z,erase cp 5 jp z,rename cp 6 jp z,user ld hl
,typtxt call strrup cp 241 jr z,dirdn cp 224 jp z,dirdl cp 32 jp z,dirdl cp
243 jp z,dired jr dirclp .dirupld a,l cp 1 jr z,dirclp dec l cp 17 jr z,de
cagn cp 19 jr z,decagn jr dirclp .decagndec l jr dirclp .dirdnld a,l cp 19
jr z,dirclp inc l cp 15 jr z,incagn cp 17 jr z,incagn jr dirclp .incagninc
l jr dirclp .dirdlld a,ldial number cp 17 jr z,dirclp cp 19 jr z,dirsv d
ec l ld h,0 add hl,hl add hl,hl add hl,hl add hl,hl add hl,hl ld de,ing ld hl
,&0B03 call &BB75 ld hl,tpblock+5 call inputf jp z,dscmnu ld a,b or a jp z,dsc
mnu ld (tpblock+2),a ld (tpblock+3),hl ld a,2 call &BC0E call &BC02 ld ix,tpb
lock ld hl,tpblock+2 ld (ix),l ld (ix+1),h ld a,1 call typei ld hl,keytxt cal
l string call &BB81 call &BB18 call &BB84 jp msetup .userld hl,ustxt call s
tring ld e,0 .usdispld hl,&0B03 call &BB75 ld a,e call prdec ld a,32 call
&BB5A .uswaitcall &BB06 cp 32 jr z,exitus cp 224 jr z,exitutpblock add hl,deHL
base address of entry push hl pop ix ld a,(ix+26) cp 1 jr z,dirau ld d
e,27 add hl,de ld b,5 call dirtssend first part of entry push ix pop hl ld b,
26 call dirtssend main part ld a,13 call sendbtCR jp qucom .dirtsld a,(hl)
or a ret ztransmit string from HL, max.len. B cp "M" jr z,macro push bc call s
endbt pop bc .apdtsinc hl djnz dirts ret .macropush hl push bcmacro handler
ld hl,tpblock+&1E0 .maclpld a,(hl)7D ld hl,tpblock+513 ld b,12 ld de,tfbuff
call &BC77try to open file for input jr c,dopok call &BC7D ld hl,tpblock l
d de,tpblock+1 ld (hl),0 ld bc,512 ldirclear buffer jr dispdr .dopokld hl,t
pblock call &BC83read file in call &BC7Aclose file .dispdrcall &BB6C ld a,1
call &BB90PEN 1 ld l,1 ld ix,tpblock .ddlooppush hl ld h,3 call &BB75column
3, appropriate row pop hl push hl ld a,l add 48 cp "9"+1 jr c,ddhnok add 7A-
F .ddhnokcall or a jr z,exmac call sendbt inc hl jr maclp .exmacpop bc pop h
l jr apdts .dirauret********************* .dirsvld hl,tpblock+513 ld b,12
ld de,tfbuff call &BC8C ld hl,tpblock ld de,512 ld bc,tpblock ld a,2 call &B
C98 call &BC8F jp dispdr .diredpush hl ld a,l ld (tpblock+512),a ld h,5 ca
ll &BB75 ld a,18 call &BB5Aclear rest of line ld a,3 call &BB90PEN 3 pop hl p
ush hl ld a,l dec l cp 17 jr nz,notmac ld l,15 .notmacld h,0 add hl,h &BB5Ap
rint 1-9,A-F digit ld a,32 call &BB5A call &BB5Atwo spaces ld a,3 call &BB90PE
N 3 push ix pop hl ld b,26 call strng2dialling string ld a,35 call &BB6Fcolum
n 35 ld a,(ix+26) or a jr nz,autodautodial push ix pop hl ld de,27 add hl,de
ld b,5 call strng2if not, print extra field jr dextra .autodld hl,atotxt cal
l stringprint "auto" .dextrald a,1 call &BB90 pop hl ld de,32 add ix,de inc
l ld a,l cp 16 jp nz,ddlooploop back if not Ns cp &FC jr z,exitus cp 240 jr z
,usup cp 241 jr nz,uswait ld a,e or a jr z,uswait dec e jr usdisp .usupld a,
e cp 15 jr z,uswait inc e jr usdisp .exituspush de ld hl,usetxt call rsx ld a,2
pop de ld ix,tpblock ld (ix),e ld (ix+1),0 ld a,1 call &1B jp dscmnu .catds
ccall catlog jp dscmnu .catcptcall catlog jp cptmnu .catfilcall catlog jp film
nu .catlogcall &BB6C ld a,1 call &BB90 ld l,(iy+7) ld h,(iy+8) ld de,1024 ad
d hl,de ex de,hl call &BC9B call &Bnm cp 1 jp z,catfil cp 2 jp z,downld cp 3
jp z,upload .selprtld hl,tmprot call menu jp z,filmnu dec a ld (iy+107),a j
p filmnuprotocol selection .downldld hl,dsftxt call string ld hl,tpblock+5 c
all inputf jp z,filmnu ld a,b or a jp z,noname ld (tpblock+2),a ld (tpblock+3)
,hl ld ix,tpblock ld hl,tpblock+2 ld (ix),l ld (ix+1),h ld a,1 dec ix dec ix
push ix pop hl ld (iy+70),l ld (iy+71),hcurrent name address jr dodnld .nonam
exor a .dodnldld (iy+42),aB18 ret .driveald a,15 call &BB72 ld hl,dratxt cal
l rsx call &1B jp dscmnu .drivebld a,15 call &BB72 ld hl,drbtxt call rsx call &
1B jp dscmnu .eraseld hl,eratxt call string ld hl,&0B03 call &BB75 ld hl,tp
block+5 call inputf jp z,dscmnu ld a,b or a jp z,dscmnu ld (tpblock+2),a ld (t
pblock+3),hl ld hl,erctxt call rsx ld a,1 ld ix,tpblock ld de,tpblock+2 ld (i
x),e ld (ix+1),d call &1B jp dscmnu .renameld hl,rentxt call string ld hl,&
0B03 call &BB75 ld ld a,3 ld (iy+5),a jp qucomnparam, fcmode .uploadld a,(i
y+107) cp 2 jp nz,sfilespecp ld hl,ufntxt call string xor a ld (iy+42),a ld h
l,tpblock+&7E ld (iy+70),l ld (iy+71),hspace to store parameters ld hl,tpblock
+&80 ld (iy+43),l ld (iy+44),hspace to store descriptors ld hl,tpblock+&110 ld
(iy+40),l ld (iy+41),hspace to store strings .upflpld l,(iy+40) ld h,(iy+41)
call inputf jp z,filmnuESC pressed ld a,b or a jp z,doupldlast filename enter
ed phl,tpblock+10 call inputf jp z,dscmnu ld a,b or a jp z,dscmnu ld (tpblock
+4),a ld (tpblock+5),hl ld hl,re2txt call string ld hl,&0B07 call &BB75 ld hl
,tpblock+&4A call inputf jp z,dscmnu ld a,b or a jp z,dscmnu ld (tpblock+7),a
ld (tpblock+8),hl ld hl,rectxt call rsx ld a,2 ld ix,tpblock ld de,tpblock+4
ld (ix),e ld (ix+1),d ld de,tpblock+7 ld (ix+2),e ld (ix+3),d call &1B jp dscm
nu if kdselse .hangupld d,5 ld a,(iy+12) and 127 call pregr5 ld hl,10 lush
hl ld l,(iy+43) ld h,(iy+44) push hl pop ix pop hlIX pblock ld (ix),b ld
(ix+1),l ld (ix+2),hinsert string descriptor block ld c,b ld b,0 add hl,bc ld
(iy+40),l ld (iy+41),hmove onto next string space push ix pop hl push de ld
e,(iy+70) ld d,(iy+71) push de pop ix pop deIX cnaddr ld (ix),l ld (ix+1),had
d descriptor to param table dec ix dec ix update parameter table position push
de push ix pop de ld (iy+70),e ld (iy+71),d pop hld (iy+87),l ld (iy+88),h ld
a,1 ld (iy+89),a .hfflpld a,(iy+89) or a jr nz,hfflp ld d,5 ld a,(iy+12) or 12
8 call preg jp mainm endif .cptmnuld hl,tmcapt call menu jp z,mainm cp 1 jp
z,catcpt cp 2 jp z,opcapt cp 3 jp z,clcapt .doechold hl,ecotxt call string
ld hl,&0B03 call &BB75 ld hl,tpblock+5 call inputf jp z,cptmnu ld a,b or a j
p z,cptmnu ld (tpblock+2),a ld (tpblock+3),hl ld ix,tpblock ld hl,tpblock+2 l
d (ix),l ld (ix+1),h ld a,2 ld (iy+5),a jp IX cnaddr inc hl inc hl inc hl
ld (iy+43),l ld (iy+44),hupdate descriptor position ld a,(iy+42) inc a ld (iy+4
2),aincrease number of parameters bit 6,a jp nz,doupld64 files yet ld a,10 cal
l &BB5Aif not, next line ld a,11 call &BB6Fand column 11 jr upflp .doupldld
a,4 ld (iy+5),a jp qucomfcmode .sfileld hl,usftxt call string ld hl,tpblock
+5 call inputf jp z,filmnu ld a,b or a jp z,filmnu ld (tpblock+2),a ld (tpbloc
k+3),hl ld ix,tpblockqucomfcmode .opcaptld hl,cpttxt call string ld hl,&0B0
3 call &BB75 ld hl,tpblock+5 call inputf jp z,cptmnu ld a,b or a jp z,cptmnu
ld (tpblock+2),a ld (tpblock+3),hl ld a,1 ld ix,tpblock ld hl,tpblock+2 ld (ix
),l ld (ix+1),h call capti jp cptmnu .clcaptld a,(iy+5) cp 1fcmode jr nz,cn
open call closi jp cptmnu .cnopenld hl,cnotxt call string ld hl,ky2txt call s
tring call &BB81 call &BB18 call &BB84 jp cptmnu .filmnuld hl,tmfile call m
enu jp z,mai Net .mnuupld a,1 cp l jr z,mnulp dec l jr mnulp .mnudwnld a,b c
p l jr z,mnulp inc l jr mnulp .mnuselld a,l or a ret RSX invoke .rsxld
de,&AF00 .rsxlpld a,(hl) ld (de),a inc hl inc de bit 7,a jr z,rsxlp ld hl,&A
F00 jp &BCD4 String print routine v2 .strng2ld a,(hl) or a ret z call &
BB5A inc hl djnz strng2 ret Edit line (HL is buffer address, C is maxi
mum length - returns length in B) .editlncall &BB81 ld b,0 .editlpcal .tmma
indb "RS232 settings",0 db "Capture/echo",0 db "File transfer",0 db "Disc ope
rations",0 db "Dialling menu",0 if kdselse db "Hang up",0 endifdb 255 .tmd
irdb "Directory 1",0,"Directory 2",0,"Directory 3",0,"Directory 4",0 db "Direct
ory 5",0,"Directory 6",0,"Directory 7",0,"Directory 8",0 db 255 .tmdiscdb "Cat
alogue",0,"A",0,"B",0,"Erase",0,"Rename",0,"User",0,"Type",0,255 .tmcaptdb "Cat
alogue",0,"Open capture",0,"Close capture",0,"Echo file",0,255 .tmfiledb "Catal
ogue",0,"Dl &BB06 cp 13 jr z,elcr cp 127 jr z,eldel ld e,a ld a,b cp c jr z
,editlpmaximum length ld a,e cp 32 jr c,editlp bit 7,a jr nz,editlp ld (hl),
a inc hl inc b call &BB5A jr editlp .elcrcall &BB84carriage return ld a,b cp
c ret z ld (hl),0 ret .eldelld a,b or a jr z,editlpcan't delete with no charac
ters! dec hl ld (hl),0 dec b ld a,8 call &BB5A ld a,16 call &BB5A jr editlp
Input filename .inputfpush hl call &BB81 ld b,0 .ginkeyc ld hl,tpblock+
2 ld (ix),l ld (ix+1),h ld a,1 ld (iy+42),a dec ix dec ix push ix pop hl ld (
iy+70),l ld (iy+71),h jr doupld Quit to COM mode .qucomld a,2
call &BC0E call &BC02 ld a,&C0 call &BC08clear high screen ld hl,(offset) call
&BC05restore offset ld hl,(chapos) call &BB75restore character position call
resum2"carry on" to modem ld a,(iy+5) sub 2 jp c,tcom jr z,qecho cp 2 jr z,
qupld .qdnldxor a ld (iy+5),a ld a,(iy+42all &BB06 cp &FC jr z,einpf cp 13
jr z,einpf cp 32 jr c,ginkey cp 127 jr z,delete jr nc,ginkey bit 4,b jr nz,g
inkey call &BB5A ld (hl),a inc hl inc b jr ginkey .deleteld a,b or a jr z,gin
key dec b dec hl ld (hl),0 ld a,8 call &BB5A ld a,32 call &BB5A ld a,8 call &
BB5A jr ginkey .einpfld (hl),0 pop hl push af call &BB84 pop af cp &FC ret
Data .ccrtxtdb 31,11,2, 15,1, "Charley's Comms ROM" db 31,11,3, 15,2, 208,20
8,208,208,208,208,208,208,208,208,) ld l,(iy+70) ld h,(iy+71) push hl pop ix in
c ix inc ix call dnldi jp tcom .qupldxor a ld (iy+5),a ld a,(iy+42) ld l,(iy
+70) ld h,(iy+71) push hl pop ix inc ix inc ix call upldi jp tcom .qechoxor
a ld (iy+5),a ld a,1 call echoi jp tcom Menu subroutine .menuld a,1 pus
h hl call &BB90 call &BB6C pop hl ld b,0 .mplpld a,(hl) cp 255 jr z,selmnu l
d a,11 push hl call &BB6F pop hl call string ld a,10 call &BB5A inc b inc hl
jr mplp 208,208,208 db 208,208,208,208,208,208,0 .ustxtdb 12, 31,11,1, 15,
1, "Select user area", 0 .tostxtdb 12, 31,11,1, 15,1, "Time-out (0.02s)", 0 .e
ratxtdb 12, 31,11,1, 15,1, "File to erase", 0 .typtxtdb 12, 31,11,1, 15,1, "Fil
e to type", 0 .ecotxtdb 12, 31,11,1, 15,1, "File to echo", 0 .cpttxtdb 12, 31,
11,1, 15,1, "Capture filename", 0 .cnotxtdb 12, 31,11,1, 15,1, "Capture not act
ive", 0 .dsftxtdb 12, 31,11,1, 15,1, "File to download", 31,11,3, 0 .ufntxtdb
12, 31,11,1, 15,1, "Files .selmnuld a,3 call &BB90 ld hl,&0901 .mnulppush hl
call &BB75 pop hl ld a,246 call &BB5A call &BB06 push af push hl call &BB75
ld a,32 call &BB5A pop hl pop af cp &FC jr z,escmnuESC cp 240 jr z,mnuupcursor
up cp 241 jr z,mnudwncursor down cp 224 jr z,mnuselCOPY cp 32 jr z,mnuselspa
ce cp 49 jr c,mnulpnot numeric push af ld a,b add 48 ld c,a pop af cp c j
r c,numopt jr z,numopt jr mnulp .numoptsub 48 ret .escmnuxor a r to upload"
, 31,11,2, "(ENTER to finish)", 31,11,4, 0 .usftxtdb 12, 31,11,1, 15,1, "File t
o upload", 31,11,3, 0 .rentxtdb 12, 31,11,1, 15,1, "Source filename", 0 .re2tx
tdb 31,11,5, "Destination filename", 0 .atotxtdb "auto",0 .svdtxtdb 31,3,19, 1
5,1, "Save directory",0 .keytxtdb 10,10,13, "Press any key ",0 .ky2txtdb 31,11
,3, "Press any key ",0 .cdnamedb "CHARLEY .DIR" .dratxtdb "A"+128 .drbtxtdb "
B"+128 .erctxtdb "ER","A"+128 .rectxtdb "RE","N"+128 .usetxtdb "USE","R"+128
N ownload (receive)",0,"Upload (send)",0,"Select protocol",0,255 .
tmrsdb "Baud rate",0,"Data word",0,"Send break",0 db "XON control",0,"Local ech
o",0 if kdselse db "Hardware handshake",0 endifdb 255 .tmbauddb "19200",0,"
9600",0,"4800",0,"2400",0,"1200",0,"1200/75",0 db "75/1200",0,"600",0,"300",0,2
55 .tbsetsdw 19200,19200,9600,9600,4800,4800,2400,2400,1200,1200,1200,75,75,120
0 dw 600,600,300,300 .tmworddb "8N1",0,"7E1",0,255 .tmhshkdb "Handshake on",0
,"Handshake off",0,255 .tmxondb "XON control on",0,"XON control off",0,255 .tm
locldb "Local echo on",0,"Local echo off",0,255 .tmprotdb "XModem",0,"XModem-1k
",0,"YModem batch",0,255 tfbuffequ &2000terminal file buffer tpblockequ &3000t
erminal parameter block offsetequ ,0,"1200",0,"1200/75",0 db "75/1200",0,"600"
,0,"300",0,255 .tbsetsdw 19200,19200,9600,9600,4800,4800,2400,2400,1200,1200,12
00,75,75,1200 dw 600,600,300,300 .tmworddb "8N1",0,"7E1",0,255 .tmhshkdb "Han
dshake on",0,"Handshake off",0,255 .tmxondb !N!!!!!!!!! "N""""""""" #N#####
#### $N$$$$$$$$$ %N%%%%%%%%% &N&&&&&&&&& 'N'''''''''