_  __   _  _         _ _     _      _           _           
  __| |/ /_ | || |     __| (_)___| | __ (_)_ __   __| | _____  __
 / _` | '_ \| || |_   / _` | / __| |/ / | | '_ \ / _` |/ _ \ \/ /
| (_| | (_) |__   _| | (_| | \__ \   <  | | | | | (_| |  __/>  < 
 \__,_|\___/   |_|    \__,_|_|___/_|\_\ |_|_| |_|\__,_|\___/_/\_\
                                                                 
            

HELP!.PAL

FILE INFORMATION

FILENAME(S): HELP!.PAL

FILE TYPE(S): PRG

FILE SIZE: 17.5K

FIRST SEEN: 2025-11-30 21:12:53

APPEARS ON: 1 disk(s)

FILE HASH

d18e5f4e1cdc4fa8988241b5d44954ed2775511c1da30f6608bfcdd3bf7b9c36

FOUND ON DISKS (1 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
TRANSACTOR DISK HELP!.PAL PRG DuncanTwain 28 9 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

> DETECTED: COMMODORE BASIC PROGRAM (LOAD ADDRESS $0801)

00000000: 01 08 20 08 0A 00 9F 20  31 2C 38 2C 31 35 2C 22  |.. .... 1,8,15,"|
00000010: 53 30 3A 54 2D 48 45 4C  50 21 22 3A 20 A0 20 31  |S0:T-HELP!": . 1|
00000020: 00 38 08 0B 00 9F 20 32  2C 38 2C 31 2C 22 30 3A  |.8.... 2,8,1,"0:|
00000030: 54 2D 48 45 4C 50 21 22  00 42 08 0C 00 9E 20 37  |T-HELP!".B.... 7|
00000040: 30 30 00 4E 08 0D 00 2E  4F 50 54 20 4F 32 00 57  |00.N....OPT O2.W|
00000050: 08 0E 00 2E 42 41 53 00  79 08 0F 00 8F 20 54 48  |....BAS.y.... TH|
00000060: 45 20 54 52 41 4E 53 41  43 54 4F 52 20 48 45 4C  |E TRANSACTOR HEL|
00000070: 50 20 55 54 49 4C 49 54  59 00 9E 08 10 00 8F 20  |P UTILITY...... |
00000080: 4E 49 43 4B 20 53 55 4C  4C 49 56 41 4E 20 41 4E  |NICK SULLIVAN AN|
00000090: 44 20 43 48 52 49 53 20  5A 41 4D 41 52 41 00 B1  |D CHRIS ZAMARA..|
000000A0: 08 11 00 8F 20 4F 43 54  4F 42 45 52 20 31 39 38  |.... OCTOBER 198|
000000B0: 36 00 CF 08 12 00 8F 20  28 43 29 20 31 39 38 36  |6...... (C) 1986|
000000C0: 20 54 48 45 20 54 52 41  4E 53 41 43 54 4F 52 00  | THE TRANSACTOR.|
000000D0: EF 08 13 00 8F 20 4F 4B  41 59 20 54 4F 20 43 4F  |..... OKAY TO CO|
000000E0: 50 59 2C 20 4E 4F 54 20  54 4F 20 53 45 4C 4C 00  |PY, NOT TO SELL.|
000000F0: F5 08 14 00 3A 00 1A 09  15 00 8F 20 44 4F 20 4E  |....:...... DO N|
00000100: 4F 54 20 41 4C 54 45 52  20 54 48 45 20 4C 45 4E  |OT ALTER THE LEN|
00000110: 47 54 48 20 4F 46 20 41  4E 59 00 40 09 16 00 8F  |GTH OF ANY.@....|
00000120: 20 4C 49 4E 45 20 41 46  54 45 52 20 50 52 4F 47  | LINE AFTER PROG|
00000130: 52 41 4D 20 49 53 20 41  53 53 45 4D 42 4C 45 44  |RAM IS ASSEMBLED|
00000140: 00 46 09 17 00 3A 00 6C  09 18 00 41 B2 30 30 30  |.F...:.l...A.000|
00000150: 30 30 3A 20 8F 20 35 20  44 49 47 49 54 20 4C 49  |00: . 5 DIGIT LI|
00000160: 4E 4B 20 42 41 53 45 20  41 44 44 52 00 7D 09 19  |NK BASE ADDR.}..|
00000170: 00 9E 22 49 4E 49 54 22  2C 41 3A 20 9C 00 87 09  |.."INIT",A: ....|
00000180: 1A 00 89 20 33 34 30 00  8D 09 1B 00 3A 00 AF 09  |... 340.....:...|
00000190: 32 00 83 20 22 C7 45 54  54 49 4E 47 20 D3 54 41  |2.. ".ETTING .TA|
000001A0: 52 54 45 44 20 20 20 20  20 20 20 20 20 20 22 00  |RTED          ".|
000001B0: D1 09 33 00 83 20 22 D0  52 49 4E 54 49 4E 47 20  |..3.. ".RINTING |
000001C0: D9 4F 55 52 20 D4 45 58  54 20 20 20 20 20 20 20  |.OUR .EXT       |
000001D0: 22 00 F3 09 34 00 83 20  22 C1 56 4F 59 44 49 4E  |"...4.. ".VOYDIN|
000001E0: 47 20 D3 50 45 4C 4C 49  4E 47 20 C5 52 52 4F 52  |G .PELLING .RROR|
000001F0: 53 20 22 00 15 0A 35 00  83 20 22 C7 45 54 54 49  |S "...5.. ".ETTI|
00000200: 4E 47 20 C6 49 4E 49 53  48 45 44 20 20 20 20 20  |NG .INISHED     |
00000210: 20 20 20 20 22 00 37 0A  36 00 83 20 22 20 20 20  |    ".7.6.. "   |
00000220: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000230: 20 20 20 20 20 20 22 00  59 0A 37 00 83 20 22 20  |      ".Y.7.. " |
00000240: 20 D4 48 45 20 46 49 52  53 54 20 46 4F 55 52 20  | .HE FIRST FOUR |
00000250: 44 41 54 41 20 20 20 20  22 00 7B 0A 38 00 83 20  |DATA    ".{.8.. |
00000260: 22 4C 49 4E 45 53 20 41  42 4F 56 45 20 41 52 45  |"LINES ABOVE ARE|
00000270: 20 41 20 53 41 4D 50 4C  45 20 22 00 9D 0A 39 00  | A SAMPLE "...9.|
00000280: 83 20 22 4D 45 4E 55 20  54 48 41 54 20 57 49 4C  |. "MENU THAT WIL|
00000290: 4C 20 42 45 20 53 48 4F  57 4E 20 20 22 00 BF 0A  |L BE SHOWN  "...|
000002A0: 3A 00 83 20 22 57 48 45  4E 20 48 45 4C 50 20 49  |:.. "WHEN HELP I|
000002B0: 53 20 49 4E 56 4F 4B 45  44 2E 20 20 20 20 22 00  |S INVOKED.    ".|
000002C0: E1 0A 3B 00 83 20 22 20  20 D5 50 20 54 4F 20 32  |..;.. "  .P TO 2|
000002D0: 30 20 4D 45 4E 55 20 49  54 45 4D 53 20 4D 41 59  |0 MENU ITEMS MAY|
000002E0: 22 00 03 0B 3C 00 83 20  22 42 45 20 55 53 45 44  |"...<.. "BE USED|
000002F0: 2E 20 C6 4F 52 20 45 41  43 48 20 4F 4E 45 2C 20  |. .OR EACH ONE, |
00000300: 20 20 22 00 25 0B 3D 00  83 20 22 54 48 45 52 45  |  ".%.=.. "THERE|
00000310: 20 4D 55 53 54 20 42 45  20 41 20 4D 41 54 43 48  | MUST BE A MATCH|
00000320: 49 4E 47 20 22 00 47 0B  3E 00 83 20 22 46 49 4C  |ING ".G.>.. "FIL|
00000330: 45 20 4F 4E 20 44 49 53  4B 2C 20 57 49 54 48 20  |E ON DISK, WITH |
00000340: 41 20 20 20 20 20 22 00  69 0B 3F 00 83 20 22 46  |A     ".i.?.. "F|
00000350: 49 4C 45 4E 41 4D 45 20  4F 46 20 54 48 45 20 46  |ILENAME OF THE F|
00000360: 4F 52 4D 3A 20 20 20 20  22 00 8B 0B 40 00 83 20  |ORM:    "...@.. |
00000370: 22 20 20 20 20 20 20 20  20 20 48 45 4C 50 2D 3F  |"         HELP-?|
00000380: 20 20 20 20 20 20 20 20  20 20 22 00 AD 0B 41 00  |          "...A.|
00000390: 83 20 22 57 48 45 52 45  20 54 48 45 20 27 3F 27  |. "WHERE THE '?'|
000003A0: 20 52 45 50 52 45 53 45  4E 54 53 20 22 00 CF 0B  | REPRESENTS "...|
000003B0: 42 00 83 20 22 41 4E 20  41 4C 50 48 41 42 45 54  |B.. "AN ALPHABET|
000003C0: 49 43 20 43 48 41 52 41  43 54 45 52 2E 20 22 00  |IC CHARACTER. ".|
000003D0: F1 0B 43 00 83 20 22 20  20 D4 48 45 20 41 42 4F  |..C.. "  .HE ABO|
000003E0: 56 45 20 4D 45 4E 55 20  49 54 45 4D 53 20 20 20  |VE MENU ITEMS   |
000003F0: 22 00 13 0C 44 00 83 20  22 52 45 51 55 49 52 45  |"...D.. "REQUIRE|
00000400: 20 46 49 4C 45 4E 41 4D  45 53 20 48 45 4C 50 2D  | FILENAMES HELP-|
00000410: 41 20 22 00 35 0C 45 00  83 20 22 54 48 52 4F 55  |A ".5.E.. "THROU|
00000420: 47 48 20 48 45 4C 50 2D  44 2E 20 20 20 20 20 20  |GH HELP-D.      |
00000430: 20 20 20 20 22 00 3B 0C  46 00 3A 00 61 0C 64 00  |    ".;.F.:.a.d.|
00000440: 53 4C B2 32 35 AA 31 3A  20 8F 20 32 35 20 43 48  |SL.25.1: . 25 CH|
00000450: 41 52 53 20 50 45 52 20  4D 45 4E 55 20 49 54 45  |ARS PER MENU ITE|
00000460: 4D 00 7F 0C 6E 00 53 B2  C2 28 34 35 29 AA 32 35  |M...n.S..(45).25|
00000470: 36 AC C2 28 34 36 29 AB  32 30 AC 53 4C AB 31 00  |6..(46).20.SL.1.|
00000480: 88 0C 78 00 87 20 41 24  00 A2 0C 82 00 8B 20 C8  |..x.. A$...... .|
00000490: 28 41 24 2C 31 29 B2 C7  28 33 32 29 20 89 20 32  |(A$,1)..(32) . 2|
000004A0: 30 30 00 B3 0C 8C 00 81  20 49 B2 31 20 A4 20 53  |00...... I.1 . S|
000004B0: 4C AB 31 00 C8 0C 96 00  97 20 53 AA 49 2C C6 28  |L.1...... S.I,.(|
000004C0: CA 28 41 24 2C 49 29 29  00 D0 0C A0 00 82 20 49  |.(A$,I))...... I|
000004D0: 00 DC 0C AA 00 97 20 53  AA 49 2C 30 00 FC 0C B4  |...... S.I,0....|
000004E0: 00 4E B2 4E AA 31 3A 20  53 B2 53 AA 53 4C 3A 20  |.N.N.1: S.S.SL: |
000004F0: 8B 20 4E B3 32 30 20 89  20 31 32 30 00 02 0D BE  |. N.20 . 120....|
00000500: 00 3A 00 18 0D C8 00 41  B2 31 32 32 3A 20 8D 20  |.:.....A.122: . |
00000510: 33 33 30 3A 20 5A B2 41  00 37 0D D2 00 41 B2 31  |330: Z.A.7...A.1|
00000520: 32 33 3A 20 8D 20 33 33  30 3A 20 5A B2 5A AA 32  |23: . 330: Z.Z.2|
00000530: 35 36 AC 41 AA 31 31 00  3D 0D DC 00 3A 00 4A 0D  |56.A.11.=...:.J.|
00000540: E6 00 97 20 5A AA 30 2C  20 4E 00 61 0D F0 00 97  |... Z.0, N.a....|
00000550: 20 5A AA 31 2C 30 39 20  3A 8F 20 42 4F 52 44 45  | Z.1,09 :. BORDE|
00000560: 52 00 7C 0D FA 00 97 20  5A AA 32 2C 30 39 20 3A  |R.|.... Z.2,09 :|
00000570: 8F 20 42 41 43 4B 47 52  4F 55 4E 44 00 93 0D 04  |. BACKGROUND....|
00000580: 01 97 20 5A AA 33 2C 30  30 20 3A 8F 20 43 55 52  |.. Z.3,00 :. CUR|
00000590: 53 4F 52 00 A8 0D 0E 01  99 20 22 44 4F 4E 45 21  |SOR...... "DONE!|
000005A0: 22 3A 20 89 20 33 34 30  00 AE 0D 18 01 3A 00 D2  |": . 340.....:..|
000005B0: 0D 22 01 8F 20 53 55 42  52 4F 55 54 49 4E 45 20  |.".. SUBROUTINE |
000005C0: 43 41 4C 43 55 4C 41 54  45 53 20 41 44 44 52 20  |CALCULATES ADDR |
000005D0: 4F 46 00 F8 0D 2C 01 8F  20 43 48 52 47 45 54 20  |OF...,.. CHRGET |
000005E0: 50 54 52 20 41 54 20 43  4F 4C 4F 4E 20 49 4E 20  |PTR AT COLON IN |
000005F0: 4C 49 4E 45 20 33 33 30  00 19 0E 36 01 8F 20 28  |LINE 330...6.. (|
00000600: 4E 4F 20 53 50 41 43 45  53 20 41 4C 4C 4F 57 45  |NO SPACES ALLOWE|
00000610: 44 20 49 4E 20 33 33 30  29 00 1F 0E 40 01 3A 00  |D IN 330)...@.:.|
00000620: 2C 0E 4A 01 41 B2 C2 28  41 29 3A 8E 00 32 0E 54  |,.J.A..(A):..2.T|
00000630: 01 80 00 38 0E 5E 01 3A  00 5E 0E E8 03 43 48 52  |...8.^.:.^...CHR|
00000640: 4F 55 54 20 B2 20 24 46  46 44 32 20 20 3B 4B 45  |OUT . $FFD2  ;KE|
00000650: 52 4E 41 4C 20 41 44 44  52 45 53 53 45 53 00 71  |RNAL ADDRESSES.q|
00000660: 0E F2 03 43 48 4B 49 4E  20 20 B2 20 24 46 46 43  |...CHKIN  . $FFC|
00000670: 36 00 82 0E FC 03 A1 49  4E 20 20 B2 20 24 46 46  |6......IN  . $FF|
00000680: 45 34 00 95 0E 06 04 53  45 54 4C 46 53 20 B2 20  |E4.....SETLFS . |
00000690: 24 46 46 42 41 00 A8 0E  10 04 53 45 54 4E 41 4D  |$FFBA.....SETNAM|
000006A0: 20 B2 20 24 46 46 42 44  00 B8 0E 1A 04 9F 20 20  | . $FFBD......  |
000006B0: 20 B2 20 24 46 46 43 30  00 C7 0E 24 04 A0 20 20  | . $FFC0...$..  |
000006C0: B2 20 24 46 46 43 33 00  D8 0E 2E 04 9C 43 48 4E  |. $FFC3......CHN|
000006D0: 20 B2 20 24 46 46 43 43  00 EB 0E 38 04 53 43 4E  | . $FFCC...8.SCN|
000006E0: 4B 45 59 20 B2 20 24 46  46 39 46 00 F1 0E 42 04  |KEY . $FF9F...B.|
000006F0: 3B 00 18 0F 4C 04 53 55  42 20 20 20 20 B2 20 32  |;...L.SUB    . 2|
00000700: 35 36 20 20 20 20 3B 54  45 4D 50 20 53 55 42 52  |56    ;TEMP SUBR|
00000710: 54 4E 53 20 42 41 53 45  00 3D 0F 56 04 50 52 4F  |TNS BASE.=.V.PRO|
00000720: 47 20 20 20 B2 20 24 44  41 30 30 20 20 3B 50 52  |G   . $DA00  ;PR|
00000730: 47 32 20 43 4F 44 45 20  53 54 41 52 54 00 43 0F  |G2 CODE START.C.|
00000740: 60 04 3B 00 64 0F 6A 04  3B 54 48 45 20 82 20 46  |`.;.d.j.;THE . F|
00000750: 4F 55 52 20 42 59 54 45  53 20 43 41 4E 20 42 45  |OUR BYTES CAN BE|
00000760: 20 53 45 54 00 7F 0F 74  04 3B 46 52 4F 4D 20 42  | SET...t.;FROM B|
00000770: 41 53 49 43 20 57 49 54  48 20 8A 20 31 30 30 00  |ASIC WITH . 100.|
00000780: 85 0F 7E 04 3B 00 A9 0F  88 04 4E 55 4D A4 50 20  |..~.;.....NUM.P |
00000790: 2E 42 59 54 45 20 34 20  20 3B 23 20 4F 46 20 48  |.BYTE 4  ;# OF H|
000007A0: 45 4C 50 20 46 49 4C 45  53 00 CD 0F 92 04 42 B0  |ELP FILES.....B.|
000007B0: 44 20 20 20 2E 42 59 54  45 20 39 20 20 3B 48 45  |D   .BYTE 9  ;HE|
000007C0: 4C 50 20 42 B0 44 20 43  4F 4C 4F 55 52 00 F3 0F  |LP B.D COLOUR...|
000007D0: 9C 04 42 41 43 4B 20 20  20 2E 42 59 54 45 20 39  |..BACK   .BYTE 9|
000007E0: 20 20 3B 48 45 4C 50 20  42 47 4E 44 20 43 4F 4C  |  ;HELP BGND COL|
000007F0: 4F 55 52 00 19 10 A6 04  43 55 52 53 20 20 20 2E  |OUR.....CURS   .|
00000800: 42 59 54 45 20 30 20 20  3B 48 45 4C 50 20 54 45  |BYTE 0  ;HELP TE|
00000810: 58 54 20 43 4F 4C 4F 55  52 00 1F 10 B0 04 3B 00  |XT COLOUR.....;.|
00000820: 25 10 BA 04 3B 00 34 10  C4 04 45 53 43 41 50 45  |%...;.4...ESCAPE|
00000830: 20 52 54 53 00 3A 10 CE  04 3B 00 46 10 D8 04 49  | RTS.:...;.F...I|
00000840: 4E 49 54 20 B2 AC 00 61  10 E2 04 3B 43 41 4C 4C  |NIT ...a...;CALL|
00000850: 45 44 20 46 52 4F 4D 20  42 41 53 49 43 20 91 20  |ED FROM BASIC . |
00000860: 8A 00 82 10 EC 04 4A 53  52 20 24 41 45 46 44 20  |......JSR $AEFD |
00000870: 20 20 20 20 20 20 3B 43  48 45 43 4B 20 43 4F 4D  |      ;CHECK COM|
00000880: 4D 41 00 A6 10 F6 04 4A  53 52 20 24 41 44 38 41  |MA.....JSR $AD8A|
00000890: 20 20 20 20 20 20 20 3B  45 C5 55 41 54 45 20 41  |       ;E.UATE A|
000008A0: 44 44 52 45 53 53 00 C7  10 00 05 4A 53 52 20 24  |DDRESS.....JSR $|
000008B0: 42 37 46 37 20 20 20 20  20 20 20 3B 43 91 56 20  |B7F7       ;C.V |
000008C0: A4 20 B5 45 47 45 52 00  EA 10 0A 05 4C 44 58 20  |. .EGER.....LDX |
000008D0: 24 30 32 39 30 20 20 20  20 20 20 20 3B 54 45 58  |$0290       ;TEX|
000008E0: 54 20 4B 45 59 BC 20 4E  4F 57 00 07 11 14 05 43  |T KEY. NOW.....C|
000008F0: 50 58 20 24 45 30 20 20  20 20 20 20 20 20 20 3B  |PX $E0         ;|
00000900: 20 49 4E 20 52 4F 4D 00  20 11 1E 05 42 43 43 20  | IN ROM. ...BCC |
00000910: 45 53 43 41 50 45 20 20  20 20 20 20 3B 20 4E 4F  |ESCAPE      ; NO|
00000920: 00 40 11 28 05 53 54 58  20 4F 55 54 31 AA 32 20  |.@.(.STX OUT1.2 |
00000930: 20 20 20 20 20 3B 94 20  4F 4C 44 20 4B 45 59 BC  |     ;. OLD KEY.|
00000940: 00 5C 11 32 05 4C 44 58  20 24 30 32 38 46 20 20  |.\.2.LDX $028F  |
00000950: 20 20 20 20 20 3B 20 56  45 43 A4 52 00 6B 11 3C  |     ; VEC.R.k.<|
00000960: 05 53 54 58 20 4F 55 54  31 AA 31 00 8F 11 46 05  |.STX OUT1.1...F.|
00000970: 54 41 58 20 20 20 20 20  20 20 20 20 20 20 20 20  |TAX             |
00000980: 3B 54 45 53 54 20 56 41  52 20 41 20 B2 20 30 00  |;TEST VAR A . 0.|
00000990: A8 11 50 05 42 4E 45 20  49 4E 32 20 20 20 20 20  |..P.BNE IN2     |
000009A0: 20 20 20 20 3B 20 4E 4F  00 AE 11 5A 05 3B 00 D2  |    ; NO...Z.;..|
000009B0: 11 64 05 49 4E 31 20 53  45 43 20 20 20 20 20 20  |.d.IN1 SEC      |
000009C0: 20 20 20 3B 4D 41 4B 45  20 52 4F 4F 4D 20 81 20  |   ;MAKE ROOM . |
000009D0: A4 50 00 F9 11 6E 05 4C  44 41 20 24 33 37 20 20  |.P...n.LDA $37  |
000009E0: 20 20 20 20 20 20 20 3B  20 4F 46 20 42 41 53 49  |       ; OF BASI|
000009F0: 43 20 53 55 42 52 54 4E  53 00 0A 12 78 05 53 42  |C SUBRTNS...x.SB|
00000A00: 43 20 23 80 AB 53 54 41  52 54 00 16 12 82 05 53  |C #..START.....S|
00000A10: 54 41 20 24 33 37 00 1E  12 8C 05 54 41 59 00 2A  |TA $37.....TAY.*|
00000A20: 12 96 05 4C 44 41 20 24  33 38 00 35 12 A0 05 53  |...LDA $38.5...S|
00000A30: 42 43 20 23 30 00 41 12  AA 05 53 54 41 20 24 33  |BC #0.A...STA $3|
00000A40: 38 00 47 12 B4 05 3B 00  62 12 BE 05 49 4E 32 20  |8.G...;.b...IN2 |
00000A50: 53 54 59 20 A2 BC 20 20  3B 49 4E 53 54 41 4C 4C  |STY ..  ;INSTALL|
00000A60: 20 A2 00 7F 12 C8 05 53  54 41 20 A2 BC AA 31 20  | ......STA ...1 |
00000A70: 20 20 20 3B 20 4B 45 59  BC 20 56 45 43 A4 52 00  |   ; KEY. VEC.R.|
00000A80: A2 12 D2 05 53 54 59 20  24 32 32 20 20 20 20 20  |....STY $22     |
00000A90: 20 20 20 20 3B 53 45 54  20 55 50 20 A4 20 43 4F  |    ;SET UP . CO|
00000AA0: 50 59 00 C2 12 DC 05 53  54 41 20 24 32 33 20 20  |PY.....STA $23  |
00000AB0: 20 20 20 20 20 20 20 3B  20 4C 49 4E 4B 20 43 4F  |       ; LINK CO|
00000AC0: 44 45 00 E5 12 E6 05 54  41 58 20 20 20 20 20 20  |DE.....TAX      |
00000AD0: 20 20 20 20 20 20 20 3B  53 45 54 20 55 50 20 4A  |       ;SET UP J|
00000AE0: 55 4D 50 20 A4 00 09 13  F0 05 54 59 41 20 20 20  |UMP ......TYA   |
00000AF0: 20 20 20 20 20 20 20 20  20 20 3B 20 4F 4C 44 20  |          ; OLD |
00000B00: 4B 45 59 BC AB 4C 49 4E  4B 00 29 13 FA 05 43 4C  |KEY..LINK.)...CL|
00000B10: 43 20 20 20 20 20 20 20  20 20 20 20 20 20 3B 20  |C             ; |
00000B20: 4B 45 59 BC AB 4C 49 4E  4B 00 3C 13 04 06 41 44  |KEY..LINK.<...AD|
00000B30: 43 20 23 4F 55 54 AB 53  54 41 52 54 00 49 13 0E  |C #OUT.START.I..|
00000B40: 06 53 54 41 20 4F 4A 4D  50 00 55 13 18 06 42 43  |.STA OJMP.U...BC|
00000B50: 43 20 49 4E 33 00 5D 13  22 06 49 4E 58 00 63 13  |C IN3.].".INX.c.|
00000B60: 2C 06 3B 00 76 13 36 06  49 4E 33 20 53 54 58 20  |,.;.v.6.IN3 STX |
00000B70: 4F 4A 4D 50 AA 31 00 8B  13 40 06 4C 44 59 20 23  |OJMP.1...@.LDY #|
00000B80: 80 AB 28 53 54 41 52 54  AA 31 29 00 91 13 4A 06  |..(START.1)...J.|
00000B90: 3B 00 B7 13 54 06 49 4E  34 20 4C 44 41 20 53 54  |;...T.IN4 LDA ST|
00000BA0: 41 52 54 2C 59 20 3B 43  4F 50 59 20 4C 49 4E 4B  |ART,Y ;COPY LINK|
00000BB0: 20 43 4F 44 45 20 A4 00  D8 13 5E 06 53 54 41 20  | CODE ....^.STA |
00000BC0: 28 24 32 32 29 2C 59 20  20 20 20 20 3B 20 49 54  |($22),Y     ; IT|
00000BD0: 53 20 A2 20 48 4F 4D 45  00 E0 13 68 06 44 45 59  |S . HOME...h.DEY|
00000BE0: 00 EC 13 72 06 42 50 4C  20 49 4E 34 00 F7 13 7C  |...r.BPL IN4...||
00000BF0: 06 4C 44 59 20 23 32 00  FD 13 86 06 3B 00 1E 14  |.LDY #2.....;...|
00000C00: 90 06 49 4E 38 20 4C 44  41 20 42 B0 44 2C 59 20  |..IN8 LDA B.D,Y |
00000C10: 20 3B 53 45 54 20 55 50  20 56 49 44 45 4F 00 40  | ;SET UP VIDEO.@|
00000C20: 14 9A 06 53 54 41 20 48  4C 50 56 49 44 AA 31 35  |...STA HLPVID.15|
00000C30: 2C 59 20 3B 20 50 52 45  46 45 52 45 4E 43 45 53  |,Y ; PREFERENCES|
00000C40: 00 48 14 A4 06 44 45 59  00 54 14 AE 06 42 50 4C  |.H...DEY.T...BPL|
00000C50: 20 49 4E 38 00 74 14 B8  06 4C 44 41 20 4E 55 4D  | IN8.t...LDA NUM|
00000C60: A4 50 20 20 20 20 20 20  3B 94 20 23 20 4F 46 20  |.P      ;. # OF |
00000C70: 48 45 4C 50 00 97 14 C2  06 53 54 41 20 4E 54 94  |HELP.....STA NT.|
00000C80: 20 20 20 20 20 20 3B 20  46 49 4C 45 53 20 41 56  |      ; FILES AV|
00000C90: 41 49 4C 41 42 4C 45 00  BB 14 CC 06 53 45 49 20  |AILABLE.....SEI |
00000CA0: 20 20 20 20 20 20 20 20  20 20 20 20 3B 43 91 46  |            ;C.F|
00000CB0: 49 47 20 31 30 30 25 20  52 41 4D 00 E0 14 D6 06  |IG 100% RAM.....|
00000CC0: 4C 44 41 20 23 24 33 34  20 20 20 20 20 20 20 20  |LDA #$34        |
00000CD0: 3B 20 28 4E 4F 20 49 AD  4F 2C 20 52 4F 4D 53 29  |; (NO I.O, ROMS)|
00000CE0: 00 EA 14 E0 06 53 54 41  20 31 00 0C 15 EA 06 4C  |.....STA 1.....L|
00000CF0: 44 41 20 23 B3 80 20 20  20 20 20 20 20 3B 43 4F  |DA #..       ;CO|
00000D00: 50 59 20 48 45 4C 50 20  43 4F 44 45 00 2C 15 F4  |PY HELP CODE.,..|
00000D10: 06 4C 44 59 20 23 B1 80  20 20 20 20 20 20 20 3B  |.LDY #..       ;|
00000D20: 20 A4 20 24 44 41 30 30  20 52 41 4D 00 38 15 FE  | . $DA00 RAM.8..|
00000D30: 06 53 54 41 20 24 32 32  00 44 15 08 07 53 54 59  |.STA $22.D...STY|
00000D40: 20 24 32 33 00 53 15 12  07 4C 44 41 20 23 B3 50  | $23.S...LDA #.P|
00000D50: 52 4F 47 00 62 15 1C 07  4C 44 59 20 23 B1 50 52  |ROG.b...LDY #.PR|
00000D60: 4F 47 00 6E 15 26 07 53  54 41 20 24 32 34 00 7A  |OG.n.&.STA $24.z|
00000D70: 15 30 07 53 54 59 20 24  32 35 00 85 15 3A 07 4C  |.0.STY $25...:.L|
00000D80: 44 59 20 23 30 00 A9 15  44 07 4C 44 58 20 23 B1  |DY #0...D.LDX #.|
00000D90: 24 45 30 46 46 AB 50 52  4F 47 3B 23 20 50 41 47  |$E0FF.PROG;# PAG|
00000DA0: 45 53 20 A4 20 43 4F 50  59 00 AF 15 4E 07 3B 00  |ES . COPY...N.;.|
00000DB0: C3 15 58 07 49 4E 39 20  4C 44 41 20 28 24 32 32  |..X.IN9 LDA ($22|
00000DC0: 29 2C 59 00 D3 15 62 07  53 54 41 20 28 24 32 34  |),Y...b.STA ($24|
00000DD0: 29 2C 59 00 DB 15 6C 07  49 4E 59 00 E7 15 76 07  |),Y...l.INY...v.|
00000DE0: 42 4E 45 20 49 4E 39 00  F3 15 80 07 49 4E 43 20  |BNE IN9.....INC |
00000DF0: 24 32 33 00 FF 15 8A 07  49 4E 43 20 24 32 35 00  |$23.....INC $25.|
00000E00: 07 16 94 07 44 45 58 00  13 16 9E 07 42 4E 45 20  |....DEX.....BNE |
00000E10: 49 4E 39 00 38 16 A8 07  4A 53 52 20 80 20 20 20  |IN9.8...JSR .   |
00000E20: 20 20 20 20 20 20 3B 56  45 43 53 45 54 20 49 4E  |      ;VECSET IN|
00000E30: 20 4C 4F 57 20 52 41 4D  00 5B 16 B2 07 4C 44 41  | LOW RAM.[...LDA|
00000E40: 20 23 24 33 37 20 20 20  20 20 20 20 20 3B 43 91  | #$37        ;C.|
00000E50: 46 49 47 20 81 20 42 41  53 49 43 00 65 16 BC 07  |FIG . BASIC.e...|
00000E60: 53 54 41 20 31 00 6D 16  C6 07 43 4C 49 00 8E 16  |STA 1.m...CLI...|
00000E70: D0 07 4C 44 41 20 24 33  37 20 20 20 20 20 20 20  |..LDA $37       |
00000E80: 20 20 3B 44 45 43 8F 45  4E 54 20 54 4F 50 00 B3  |  ;DEC.ENT TOP..|
00000E90: 16 DA 07 42 4E 45 20 49  4E 31 30 20 20 20 20 20  |...BNE IN10     |
00000EA0: 20 20 20 3B 20 4F 46 20  42 41 53 49 43 20 44 55  |   ; OF BASIC DU|
00000EB0: 45 20 A4 00 D7 16 E4 07  44 45 43 20 24 33 38 20  |E ......DEC $38 |
00000EC0: 20 20 20 20 20 20 20 20  3B 20 42 41 53 49 43 20  |        ; BASIC |
00000ED0: C5 28 29 20 42 55 47 00  DD 16 EE 07 3B 00 EE 16  |.() BUG.....;...|
00000EE0: F8 07 49 4E 31 30 20 44  45 43 20 24 33 37 00 F6  |..IN10 DEC $37..|
00000EF0: 16 02 08 52 54 53 00 FC  16 0C 08 3B 00 02 17 16  |...RTS.....;....|
00000F00: 08 3B 00 25 17 20 08 3B  54 48 45 20 82 20 32 20  |.;.%. .;THE . 2 |
00000F10: 52 4F 55 54 49 4E 45 53  20 41 52 45 20 53 A4 52  |ROUTINES ARE S.R|
00000F20: 45 44 20 49 4E 00 48 17  2A 08 3B 27 4E B0 4D 41  |ED IN.H.*.;'N.MA|
00000F30: 4C 27 20 52 41 4D 2C 20  45 49 54 48 45 52 20 41  |L' RAM, EITHER A|
00000F40: 54 20 54 48 45 20 A4 50  00 67 17 34 08 3B 4F 46  |T THE .P.g.4.;OF|
00000F50: 20 42 41 53 49 43 2C 20  B0 20 41 54 20 41 4E 20  | BASIC, . AT AN |
00000F60: 41 44 44 52 45 53 53 00  81 17 3E 08 3B 53 50 45  |ADDRESS...>.;SPE|
00000F70: 43 8B 49 45 44 20 42 59  20 54 48 45 20 55 53 45  |C.IED BY THE USE|
00000F80: 52 00 87 17 48 08 3B 00  8D 17 52 08 3B 00 9A 17  |R...H.;...R.;...|
00000F90: 5C 08 53 54 41 52 54 20  B2 AC 00 BC 17 66 08 3B  |\.START .....f.;|
00000FA0: 53 57 49 54 43 48 20 4F  55 54 20 52 4F 4D 2C 20  |SWITCH OUT ROM, |
00000FB0: 44 4F 20 A2 20 4B 45 59  53 43 41 4E 00 C4 17 70  |DO . KEYSCAN...p|
00000FC0: 08 53 45 49 00 CE 17 7A  08 4C 44 41 20 31 00 D6  |.SEI...z.LDA 1..|
00000FD0: 17 84 08 50 48 41 00 E3  17 8E 08 4C 44 41 20 23  |...PHA.....LDA #|
00000FE0: 24 33 34 00 ED 17 98 08  53 54 41 20 31 00 FA 17  |$34.....STA 1...|
00000FF0: A2 08 4A 4D 50 20 53 43  41 4E 00 00 18 AC 08 3B  |..JMP SCAN.....;|
00001000: 00 06 18 B6 08 3B 00 11  18 C0 08 4F 55 54 20 B2  |.....;.....OUT .|
00001010: AC 00 2D 18 CA 08 3B 8C  20 52 4F 4D 53 2C 20 44  |..-...;. ROMS, D|
00001020: 4F 20 52 4F 4D 20 4B 45  59 53 43 41 4E 00 35 18  |O ROM KEYSCAN.5.|
00001030: D4 08 50 4C 41 00 3F 18  DE 08 53 54 41 20 31 00  |..PLA.?...STA 1.|
00001040: 52 18 E8 08 4F 55 54 31  20 4A 4D 50 20 24 46 46  |R...OUT1 JMP $FF|
00001050: 46 46 00 58 18 F2 08 3B  00 61 18 FC 08 80 20 B2  |FF.X...;.a.... .|
00001060: AC 00 67 18 06 09 3B 00  6D 18 10 09 3B 00 90 18  |..g...;.m...;...|
00001070: 1A 09 3B 56 45 43 53 45  54 20 AF 20 48 4C 50 56  |..;VECSET . HLPV|
00001080: 49 44 20 41 52 45 20 4E  45 45 44 45 44 20 42 59  |ID ARE NEEDED BY|
00001090: 00 B0 18 24 09 3B 42 4F  54 48 20 49 4E 49 54 20  |...$.;BOTH INIT |
000010A0: 43 4F 44 45 20 AF 20 48  45 4C 50 20 43 4F 44 45  |CODE . HELP CODE|
000010B0: 00 B6 18 2E 09 3B 00 BC  18 38 09 3B 00 CA 18 42  |.....;...8.;...B|
000010C0: 09 56 45 43 53 45 54 20  B2 AC 00 E9 18 4C 09 3B  |.VECSET .....L.;|
000010D0: 94 20 4F 4C 44 20 56 45  43 A4 52 2C 20 49 4E 53  |. OLD VEC.R, INS|
000010E0: 54 41 4C 4C 20 A2 20 91  45 00 F7 18 56 09 4C 44  |TALL . .E...V.LD|
000010F0: 41 20 24 30 32 38 46 00  05 19 60 09 4C 44 59 20  |A $028F...`.LDY |
00001100: 24 30 32 39 30 00 20 19  6A 09 53 54 41 20 50 52  |$0290. .j.STA PR|
00001110: 4F 47 AA 28 4F 4C 44 BC  AB 56 45 43 53 45 54 29  |OG.(OLD..VECSET)|
00001120: 00 3D 19 74 09 53 54 59  20 50 52 4F 47 AA 28 4F  |.=.t.STY PROG.(O|
00001130: 4C 44 BC AA 31 AB 56 45  43 53 45 54 29 00 56 19  |LD..1.VECSET).V.|
00001140: 7E 09 4C 44 41 20 50 52  4F 47 AA 28 A2 BC AB 56  |~.LDA PROG.(...V|
00001150: 45 43 53 45 54 29 00 71  19 88 09 4C 44 59 20 50  |ECSET).q...LDY P|
00001160: 52 4F 47 AA 28 A2 BC AA  31 AB 56 45 43 53 45 54  |ROG.(...1.VECSET|
00001170: 29 00 77 19 92 09 3B 00  8A 19 9C 09 56 43 53 31  |).w...;.....VCS1|
00001180: 20 53 54 41 20 24 30 32  38 46 00 98 19 A6 09 53  | STA $028F.....S|
00001190: 54 59 20 24 30 32 39 30  00 A0 19 B0 09 52 54 53  |TY $0290.....RTS|
000011A0: 00 A6 19 BA 09 3B 00 AC  19 C4 09 3B 00 D0 19 CE  |.....;.....;....|
000011B0: 09 3B 54 48 45 20 46 4F  4C 4C 4F 57 49 4E 47 20  |.;THE FOLLOWING |
000011C0: 54 41 42 4C 45 20 57 49  4C 4C 20 42 45 20 97 44  |TABLE WILL BE .D|
000011D0: 00 F3 19 D8 09 3B B5 4F  20 56 49 44 45 4F 20 43  |.....;.O VIDEO C|
000011E0: 48 49 50 20 91 20 45 4E  54 45 52 49 4E 47 20 48  |HIP . ENTERING H|
000011F0: 45 4C 50 00 F9 19 E2 09  3B 00 FF 19 EC 09 3B 00  |ELP.....;.....;.|
00001200: 0D 1A F6 09 48 4C 50 56  49 44 20 B2 AC 00 2F 1A  |....HLPVID .../.|
00001210: 00 0A 2E 42 59 54 45 20  24 31 42 2C 24 30 41 2C  |...BYTE $1B,$0A,|
00001220: 24 41 41 2C 24 36 35 2C  24 30 30 2C 24 43 38 00  |$AA,$65,$00,$C8.|
00001230: 51 1A 0A 0A 2E 42 59 54  45 20 24 30 30 2C 24 31  |Q....BYTE $00,$1|
00001240: 37 2C 24 37 39 2C 24 46  30 2C 24 30 30 2C 24 30  |7,$79,$F0,$00,$0|
00001250: 30 00 6F 1A 14 0A 2E 42  59 54 45 20 24 30 30 2C  |0.o....BYTE $00,|
00001260: 24 30 30 2C 24 30 30 2C  24 46 39 2C 24 46 39 00  |$00,$00,$F9,$F9.|
00001270: 75 1A 1E 0A 3B 00 7B 1A  28 0A 3B 00 9F 1A 32 0A  |u...;.{.(.;...2.|
00001280: 3B 54 48 45 20 56 41 52  49 41 42 4C 45 53 20 49  |;THE VARIABLES I|
00001290: 4E 20 54 48 45 20 46 4F  4C 4C 4F 57 49 4E 47 00  |N THE FOLLOWING.|
000012A0: BA 1A 3C 0A 3B 54 41 42  4C 45 20 41 52 45 20 96  |..<.;TABLE ARE .|
000012B0: 49 4E 45 44 20 42 45 4C  4F 57 00 C0 1A 46 0A 3B  |INED BELOW...F.;|
000012C0: 00 C6 1A 50 0A 3B 00 D9  1A 5A 0A 48 43 55 52 53  |...P.;...Z.HCURS|
000012D0: 20 20 2E 42 59 54 45 20  30 00 DF 1A 64 0A 3B 00  |  .BYTE 0...d.;.|
000012E0: F0 1A 6E 0A B7 54 58 54  20 2E 42 59 54 45 20 30  |..n..TXT .BYTE 0|
000012F0: 00 01 1B 78 0A B7 43 4F  4C 20 2E 42 59 54 45 20  |...x..COL .BYTE |
00001300: 30 00 12 1B 82 0A B7 53  43 52 20 2E 42 59 54 45  |0......SCR .BYTE|
00001310: 20 30 00 23 1B 8C 0A B7  42 4E 4B 20 2E 42 59 54  | 0.#....BNK .BYT|
00001320: 45 20 30 00 29 1B 96 0A  3B 00 39 1B A0 0A 4E 54  |E 0.)...;.9...NT|
00001330: 94 20 2E 42 59 54 45 20  30 00 3F 1B AA 0A 3B 00  |. .BYTE 0.?...;.|
00001340: 51 1B B4 0A 4F 4A 4D 50  20 20 20 2E 57 B0 44 20  |Q...OJMP   .W.D |
00001350: 30 00 57 1B BE 0A 3B 00  67 1B C8 0A 4F 4C 44 BC  |0.W...;.g...OLD.|
00001360: 20 2E 57 B0 44 20 30 00  75 1B D2 0A A2 BC 20 2E  | .W.D 0.u..... .|
00001370: 57 B0 44 20 30 00 7B 1B  DC 0A 3B 00 85 1B E6 0A  |W.D 0.{...;.....|
00001380: AC B2 AC AA 32 00 8B 1B  F0 0A 3B 00 91 1B FA 0A  |....2.....;.....|
00001390: 3B 00 B3 1B 04 0B 3B 27  53 43 41 4E 27 20 49 53  |;.....;'SCAN' IS|
000013A0: 20 54 48 45 20 41 44 44  52 45 53 53 20 4F 46 20  | THE ADDRESS OF |
000013B0: 54 48 45 00 D7 1B 0E 0B  3B 41 43 54 55 41 4C 20  |THE.....;ACTUAL |
000013C0: 50 52 4F 47 52 41 4D 20  43 4F 44 45 20 49 4E 20  |PROGRAM CODE IN |
000013D0: 44 AB 42 4C 4F 43 4B 00  FC 1B 18 0B 3B 52 41 4D  |D.BLOCK.....;RAM|
000013E0: 2C 20 41 53 20 43 41 4C  43 55 4C 41 54 45 44 20  |, AS CALCULATED |
000013F0: 42 59 20 41 53 53 45 4D  42 4C 45 52 00 02 1C 22  |BY ASSEMBLER..."|
00001400: 0B 3B 00 08 1C 2C 0B 3B  00 23 1C 36 0B 53 43 41  |.;...,.;.#.6.SCA|
00001410: 4E 20 B2 20 50 52 4F 47  AA 28 AC AB 56 45 43 53  |N . PROG.(..VECS|
00001420: 45 54 29 00 29 1C 40 0B  3B 00 3D 1C 4A 0B 3B 80  |ET).).@.;.=.J.;.|
00001430: 20 31 53 54 20 41 53 53  45 4D 42 4C 59 00 44 1C  | 1ST ASSEMBLY.D.|
00001440: 54 0B 2E 80 00 4A 1C 5E  0B 3A 00 50 1C 68 0B 3A  |T....J.^.:.P.h.:|
00001450: 00 6A 1C 72 0B 99 3A 20  8F 20 43 4F 53 4D 45 54  |.j.r..: . COSMET|
00001460: 49 43 20 4E 45 57 4C 49  4E 45 00 70 1C 7C 0B 3A  |IC NEWLINE.p.|.:|
00001470: 00 76 1C 86 0B 3A 00 97  1C 90 0B 8F 20 54 48 45  |.v...:...... THE|
00001480: 20 4F 55 54 50 55 54 20  46 52 4F 4D 20 54 48 45  | OUTPUT FROM THE|
00001490: 20 53 45 43 4F 4E 44 00  BA 1C 9A 0B 8F 20 41 53  | SECOND...... AS|
000014A0: 53 45 4D 42 4C 59 20 49  53 20 41 50 50 45 4E 44  |SEMBLY IS APPEND|
000014B0: 45 44 20 54 4F 20 54 48  41 54 00 CF 1C A4 0B 8F  |ED TO THAT......|
000014C0: 20 46 52 4F 4D 20 54 48  45 20 46 49 52 53 54 00  | FROM THE FIRST.|
000014D0: D5 1C AE 0B 3A 00 F1 1C  B8 0B 9F 20 32 2C 38 2C  |....:...... 2,8,|
000014E0: 32 2C 22 30 3A 54 2D 48  45 4C 50 21 2C 50 2C 41  |2,"0:T-HELP!,P,A|
000014F0: 22 00 F7 1C C2 0B 3A 00  01 1D CC 0B 9E 20 37 30  |".....:...... 70|
00001500: 30 00 0E 1D D6 0B AC B2  20 24 44 41 30 30 00 1A  |0....... $DA00..|
00001510: 1D E0 0B 2E 4F 50 54 20  4F 32 00 20 1D EA 0B 3B  |....OPT O2. ...;|
00001520: 00 46 1D F4 0B 43 48 52  4F 55 54 20 B2 20 24 46  |.F...CHROUT . $F|
00001530: 46 44 32 20 20 3B 4B 45  52 4E 41 4C 20 41 44 44  |FD2  ;KERNAL ADD|
00001540: 52 45 53 53 45 53 00 59  1D FE 0B 43 48 4B 49 4E  |RESSES.Y...CHKIN|
00001550: 20 20 B2 20 24 46 46 43  36 00 6A 1D 08 0C A1 49  |  . $FFC6.j....I|
00001560: 4E 20 20 B2 20 24 46 46  45 34 00 7D 1D 12 0C 53  |N  . $FFE4.}...S|
00001570: 45 54 4C 46 53 20 B2 20  24 46 46 42 41 00 90 1D  |ETLFS . $FFBA...|
00001580: 1C 0C 53 45 54 4E 41 4D  20 B2 20 24 46 46 42 44  |..SETNAM . $FFBD|
00001590: 00 A0 1D 26 0C 9F 20 20  20 B2 20 24 46 46 43 30  |...&..   . $FFC0|
000015A0: 00 AF 1D 30 0C A0 20 20  B2 20 24 46 46 43 33 00  |...0..  . $FFC3.|
000015B0: C0 1D 3A 0C 9C 43 48 4E  20 B2 20 24 46 46 43 43  |..:..CHN . $FFCC|
000015C0: 00 D3 1D 44 0C 53 43 4E  4B 45 59 20 B2 20 24 46  |...D.SCNKEY . $F|
000015D0: 46 39 46 00 D9 1D 4E 0C  3B 00 00 1E 58 0C 53 55  |F9F...N.;...X.SU|
000015E0: 42 20 20 20 20 B2 20 24  31 30 30 20 20 20 3B 54  |B    . $100   ;T|
000015F0: 45 4D 50 20 53 55 42 52  54 4E 53 20 42 41 53 45  |EMP SUBRTNS BASE|
00001600: 00 26 1E 62 0C 46 4C 41  53 48 20 20 B2 20 24 31  |.&.b.FLASH  . $1|
00001610: 34 30 20 20 20 3B 53 43  52 45 45 4E 46 4C 41 53  |40   ;SCREENFLAS|
00001620: 48 20 41 44 44 52 00 46  1E 6C 0C 44 45 53 C3 20  |H ADDR.F.l.DES. |
00001630: B2 20 32 35 AA 31 20 20  20 3B 23 20 42 59 54 45  |. 25.1   ;# BYTE|
00001640: 53 AD 44 45 53 43 00 4C  1E 76 0C 3B 00 6E 1E 80  |S.DESC.L.v.;.n..|
00001650: 0C 3B 4D 4F 53 54 20 4F  46 20 54 48 45 20 41 43  |.;MOST OF THE AC|
00001660: 54 55 41 4C 20 83 20 46  4F 52 20 54 48 45 00 94  |TUAL . FOR THE..|
00001670: 1E 8A 0C 3B 46 4F 4C 4C  4F 57 49 4E 47 20 53 A4  |...;FOLLOWING S.|
00001680: 52 41 47 45 20 41 52 45  41 20 49 53 20 57 52 49  |RAGE AREA IS WRI|
00001690: 54 54 45 4E 00 B7 1E 94  0C 3B 48 45 52 45 20 42  |TTEN.....;HERE B|
000016A0: 59 20 54 48 45 20 46 49  52 53 54 20 50 41 52 54  |Y THE FIRST PART|
000016B0: 20 4F 46 20 54 48 45 00  DB 1E 9E 0C 3B 50 52 4F  | OF THE.....;PRO|
000016C0: 47 52 41 4D 2E 20 49 54  20 49 53 20 44 55 50 4C  |GRAM. IT IS DUPL|
000016D0: 49 43 41 54 45 44 20 48  45 52 45 00 01 1F A8 0C  |ICATED HERE.....|
000016E0: 3B 42 45 43 41 55 53 45  20 57 45 20 4E 45 45 44  |;BECAUSE WE NEED|
000016F0: 20 A4 20 54 45 4C 4C 20  50 41 4C 20 41 42 4F 55  | . TELL PAL ABOU|
00001700: 54 00 1C 1F B2 0C 3B 54  48 45 20 56 41 52 49 4F  |T.....;THE VARIO|
00001710: 55 53 20 41 44 44 52 45  53 53 45 53 00 22 1F BC  |US ADDRESSES."..|
00001720: 0C 3B 00 42 1F C6 0C 56  45 43 53 45 54 20 AC B2  |.;.B...VECSET ..|
00001730: AC AA 31 38 20 20 20 3B  56 45 43 A4 52 20 53 57  |..18   ;VEC.R SW|
00001740: 41 50 00 60 1F D0 0C 56  43 53 31 20 20 20 AC B2  |AP.`...VCS1   ..|
00001750: AC AA 37 20 20 20 20 3B  20 52 4F 55 54 49 4E 45  |..7    ; ROUTINE|
00001760: 00 86 1F DA 0C 48 4C 50  56 49 44 20 AC B2 AC AA  |.....HLPVID ....|
00001770: 31 37 20 20 20 3B 48 45  4C 50 20 56 49 44 45 4F  |17   ;HELP VIDEO|
00001780: 20 50 52 45 46 53 00 AC  1F E4 0C 48 43 55 52 53  | PREFS.....HCURS|
00001790: 20 20 AC B2 AC AA 31 20  20 20 20 3B 48 45 4C 50  |  ....1    ;HELP|
000017A0: 20 43 52 53 52 20 43 4F  4C 4F 55 52 00 CD 1F EE  | CRSR COLOUR....|
000017B0: 0C B7 54 58 54 20 AC B2  AC AA 31 20 20 20 20 3B  |..TXT ....1    ;|
000017C0: 54 45 58 54 20 43 4F 4C  4F 55 52 20 94 00 F2 1F  |TEXT COLOUR ....|
000017D0: F8 0C B7 43 4F 4C 20 AC  B2 AC AA 31 20 20 20 20  |...COL ....1    |
000017E0: 3B 43 4F 4C 4F 55 52 20  55 4E 44 45 52 20 43 52  |;COLOUR UNDER CR|
000017F0: 53 52 00 11 20 02 0D B7  53 43 52 20 AC B2 AC AA  |SR.. ...SCR ....|
00001800: 31 20 20 20 20 3B 53 43  52 45 45 4E 20 50 41 47  |1    ;SCREEN PAG|
00001810: 45 00 33 20 0C 0D B7 42  4E 4B 20 AC B2 AC AA 31  |E.3 ...BNK ....1|
00001820: 20 20 20 20 3B 31 36 4B  20 56 49 44 45 4F 20 42  |    ;16K VIDEO B|
00001830: 41 4E 4B 00 55 20 16 0D  4E 54 94 20 AC B2 AC AA  |ANK.U ..NT. ....|
00001840: 31 20 20 20 20 3B 23 20  4F 46 20 48 45 4C 50 20  |1    ;# OF HELP |
00001850: 46 49 4C 45 53 00 7C 20  20 0D 4F 4A 4D 50 20 20  |FILES.|  .OJMP  |
00001860: 20 AC B2 AC AA 32 20 20  20 20 3B 45 58 49 54 20  | ....2    ;EXIT |
00001870: 52 4F 55 54 49 4E 45 20  41 44 44 52 00 9D 20 2A  |ROUTINE ADDR.. *|
00001880: 0D 4F 4C 44 BC 20 AC B2  AC AA 32 20 20 20 20 3B  |.OLD. ....2    ;|
00001890: 4F 4C 44 20 4B 45 59 BC  20 41 44 44 52 00 BA 20  |OLD KEY. ADDR.. |
000018A0: 34 0D A2 BC 20 AC B2 AC  AA 32 20 20 20 20 3B A2  |4... ....2    ;.|
000018B0: 20 4B 45 59 BC 20 41 44  44 52 00 C0 20 3E 0D 3B  | KEY. ADDR.. >.;|
000018C0: 00 E4 20 48 0D AC B2 AC  AA 32 20 20 20 20 20 20  |.. H.....2      |
000018D0: 20 20 20 20 20 3B 53 4B  49 50 20 93 20 41 44 44  |     ;SKIP . ADD|
000018E0: 52 45 53 53 00 EA 20 52  0D 3B 00 F6 20 5C 0D 53  |RESS.. R.;.. \.S|
000018F0: 43 41 4E 20 B2 AC 00 0D  21 66 0D 3B A2 20 4B 45  |CAN ....!f.;. KE|
00001900: 59 53 43 41 4E 20 52 4F  55 54 49 4E 45 00 30 21  |YSCAN ROUTINE.0!|
00001910: 70 0D 4C 44 41 20 24 43  42 20 20 20 20 20 20 20  |p.LDA $CB       |
00001920: 20 20 3B 54 45 53 54 20  4C 41 53 54 20 4B 45 59  |  ;TEST LAST KEY|
00001930: 00 55 21 7A 0D 43 4D 50  20 23 24 33 39 20 20 20  |.U!z.CMP #$39   |
00001940: 20 20 20 20 20 3B 20 57  41 53 20 4C 45 46 54 20  |     ; WAS LEFT |
00001950: 41 52 52 4F 57 00 6F 21  84 0D 42 45 51 20 53 43  |ARROW.o!..BEQ SC|
00001960: 41 32 20 20 20 20 20 20  20 20 3B 20 59 45 53 00  |A2        ; YES.|
00001970: 75 21 8E 0D 3B 00 98 21  98 0D 53 43 41 31 20 4A  |u!..;..!..SCA1 J|
00001980: 4D 50 20 28 4F 4A 4D 50  29 20 3B 4F 4C 44 20 4B  |MP (OJMP) ;OLD K|
00001990: 45 59 BC 20 4C 49 4E 4B  00 9E 21 A2 0D 3B 00 C3  |EY. LINK..!..;..|
000019A0: 21 AC 0D 53 43 41 32 20  4C 44 58 20 24 30 32 38  |!..SCA2 LDX $028|
000019B0: 44 20 20 3B 54 45 53 54  20 28 53 48 8B 54 29 43  |D  ;TEST (SH.T)C|
000019C0: 54 52 4C 00 CE 21 B6 0D  43 50 58 20 23 34 00 E7  |TRL..!..CPX #4..|
000019D0: 21 C0 0D 42 43 43 20 53  43 41 31 20 20 20 20 20  |!..BCC SCA1     |
000019E0: 20 20 20 3B 20 4E 4F 00  F2 21 CA 0D 43 50 58 20  |   ; NO..!..CPX |
000019F0: 23 36 00 0B 22 D4 0D 42  43 53 20 53 43 41 31 20  |#6.."..BCS SCA1 |
00001A00: 20 20 20 20 20 20 20 3B  20 4E 4F 00 30 22 DE 0D  |       ; NO.0"..|
00001A10: 4C 44 41 20 23 24 34 30  20 20 20 20 20 20 20 20  |LDA #$40        |
00001A20: 3B 50 55 54 20 27 4E 4F  20 4B 45 59 27 20 49 4E  |;PUT 'NO KEY' IN|
00001A30: 00 57 22 E8 0D 53 54 41  20 24 43 42 20 20 20 20  |.W"..STA $CB    |
00001A40: 20 20 20 20 20 3B 20 4C  41 53 54 20 4B 45 59 20  |     ; LAST KEY |
00001A50: 50 52 45 53 53 45 44 00  76 22 F2 0D 4C 44 41 20  |PRESSED.v"..LDA |
00001A60: 4F 4C 44 BC 20 20 20 20  20 20 3B 8C 20 56 45 43  |OLD.      ;. VEC|
00001A70: 20 53 4F 20 32 44 00 9A  22 FC 0D 4C 44 59 20 4F  | SO 2D.."..LDY O|
00001A80: 4C 44 BC AA 31 20 20 20  20 3B 20 50 52 45 53 53  |LD..1    ; PRESS|
00001A90: 20 57 91 27 54 20 42 4F  4D 42 00 A7 22 06 0E 4A  | W.'T BOMB.."..J|
00001AA0: 53 52 20 56 43 53 31 00  CA 22 10 0E 43 50 58 20  |SR VCS1.."..CPX |
00001AB0: 23 34 20 20 20 20 20 20  20 20 20 20 3B 54 45 53  |#4          ;TES|
00001AC0: 54 20 55 4E 53 48 8B 54  45 44 00 E4 22 1A 0E 42  |T UNSH.TED.."..B|
00001AD0: 45 51 20 53 43 41 33 20  20 20 20 20 20 20 20 3B  |EQ SCA3        ;|
00001AE0: 20 59 45 53 00 09 23 24  0E 4C 44 58 20 23 24 33  | YES..#$.LDX #$3|
00001AF0: 30 20 20 20 20 20 20 20  20 3B 4C 91 47 20 46 4C  |0        ;L.G FL|
00001B00: 41 53 48 20 43 4F 55 4E  54 00 2B 23 2E 0E 42 4E  |ASH COUNT.+#..BN|
00001B10: 45 20 53 43 41 37 20 20  20 20 20 20 20 20 3B 46  |E SCA7        ;F|
00001B20: 4C 41 53 48 20 AF 20 45  58 49 54 00 31 23 38 0E  |LASH . EXIT.1#8.|
00001B30: 3B 00 57 23 42 0E 53 43  41 33 20 4C 44 58 20 23  |;.W#B.SCA3 LDX #|
00001B40: 24 31 30 20 20 20 3B 53  48 B0 54 20 46 4C 41 53  |$10   ;SH.T FLAS|
00001B50: 48 20 43 4F 55 4E 54 00  5D 23 4C 0E 3B 00 81 23  |H COUNT.]#L.;..#|
00001B60: 56 0E 53 43 41 34 20 4C  44 41 20 24 39 38 20 20  |V.SCA4 LDA $98  |
00001B70: 20 20 3B 54 45 53 54 20  23 20 9F 20 46 49 4C 45  |  ;TEST # . FILE|
00001B80: 53 00 A1 23 60 0E 42 45  51 20 53 43 41 35 20 20  |S..#`.BEQ SCA5  |
00001B90: 20 20 20 20 20 20 3B 20  5A 45 52 4F 20 AB 20 4F  |      ; ZERO . O|
00001BA0: 4B 00 AC 23 6A 0E 43 4D  50 20 23 31 00 CE 23 74  |K..#j.CMP #1..#t|
00001BB0: 0E 42 4E 45 20 53 43 41  36 20 20 20 20 20 20 20  |.BNE SCA6       |
00001BC0: 20 3B 20 B1 20 91 45 20  AB 20 45 58 49 54 00 F0  | ; . .E . EXIT..|
00001BD0: 23 7E 0E 4C 44 41 20 24  30 32 35 39 20 20 20 20  |#~.LDA $0259    |
00001BE0: 20 20 20 3B 43 55 52 52  45 4E 54 20 4C 46 20 23  |   ;CURRENT LF #|
00001BF0: 00 13 24 88 0E 4A 53 52  20 48 41 53 48 20 20 20  |..$..JSR HASH   |
00001C00: 20 20 20 20 20 3B A1 20  55 4E 49 51 55 45 20 4C  |     ;. UNIQUE L|
00001C10: 46 20 23 00 20 24 92 0E  53 54 41 20 46 49 4C 45  |F #. $..STA FILE|
00001C20: 00 44 24 9C 0E 4C 44 41  20 24 30 32 36 44 20 20  |.D$..LDA $026D  |
00001C30: 20 20 20 20 20 3B 43 55  52 52 45 4E 54 20 53 45  |     ;CURRENT SE|
00001C40: 43 41 44 44 00 69 24 A6  0E 4A 53 52 20 48 41 53  |CADD.i$..JSR HAS|
00001C50: 48 20 20 20 20 20 20 20  20 3B A1 20 55 4E 49 51  |H        ;. UNIQ|
00001C60: 55 45 20 53 45 43 41 44  44 00 78 24 B0 0E 53 54  |UE SECADD.x$..ST|
00001C70: 41 20 53 45 43 41 44 44  00 7E 24 BA 0E 3B 00 90  |A SECADD.~$..;..|
00001C80: 24 C4 0E 53 43 41 35 20  4A 4D 50 20 48 45 4C 50  |$..SCA5 JMP HELP|
00001C90: 00 96 24 CE 0E 3B 00 B9  24 D8 0E 53 43 41 36 20  |..$..;..$..SCA6 |
00001CA0: 4A 53 52 20 56 45 43 53  45 54 20 3B 49 4E 53 54  |JSR VECSET ;INST|
00001CB0: 41 4C 4C 20 A2 20 4B 27  BC 00 BF 24 E2 0E 3B 00  |ALL . K'...$..;.|
00001CC0: E4 24 EC 0E 53 43 41 37  20 4C 44 59 20 23 80 46  |.$..SCA7 LDY #.F|
00001CD0: 4C 41 3B 43 4F 50 59 20  46 4C 41 53 48 20 52 4F  |LA;COPY FLASH RO|
00001CE0: 55 54 27 4E 00 EA 24 F6  0E 3B 00 FD 24 00 0F 53  |UT'N..$..;..$..S|
00001CF0: 43 41 38 20 4C 44 41 20  46 4C 41 2C 59 00 0D 25  |CA8 LDA FLA,Y..%|
00001D00: 0A 0F 53 54 41 20 46 4C  41 53 48 2C 59 00 15 25  |..STA FLASH,Y..%|
00001D10: 14 0F 44 45 59 00 22 25  1E 0F 42 50 4C 20 53 43  |..DEY."%..BPL SC|
00001D20: 41 38 00 40 25 28 0F 4A  53 52 20 46 4C 41 53 48  |A8.@%(.JSR FLASH|
00001D30: 20 20 20 20 20 20 20 3B  44 4F 20 46 4C 41 53 48  |       ;DO FLASH|
00001D40: 00 63 25 32 0F 4A 4D 50  20 53 43 41 31 20 20 20  |.c%2.JMP SCA1   |
00001D50: 20 20 20 20 20 3B 45 58  49 54 20 48 45 4C 50 20  |     ;EXIT HELP |
00001D60: 50 47 4D 00 69 25 3C 0F  3B 00 6F 25 46 0F 3B 00  |PGM.i%<.;.o%F.;.|
00001D70: 7B 25 50 0F 48 41 53 48  20 B2 AC 00 9F 25 5A 0F  |{%P.HASH ....%Z.|
00001D80: 3B 53 45 4C 45 43 54 20  4E 91 AB 43 91 46 4C 49  |;SELECT N..C.FLI|
00001D90: 43 54 49 4E 47 20 46 49  4C 45 20 B0 20 53 41 00  |CTING FILE . SA.|
00001DA0: C2 25 64 0F AF 20 23 24  37 45 20 20 20 20 20 20  |.%d.. #$7E      |
00001DB0: 20 20 3B 43 4C 45 41 52  20 42 49 54 53 20 30 2C  |  ;CLEAR BITS 0,|
00001DC0: 20 37 00 E0 25 6E 0F B0  41 20 23 34 20 20 20 20  | 7..%n..A #4    |
00001DD0: 20 20 20 20 20 20 3B 53  45 54 20 42 49 54 20 32  |      ;SET BIT 2|
00001DE0: 00 00 26 78 0F 45 B0 20  23 32 20 20 20 20 20 20  |..&x.E. #2      |
00001DF0: 20 20 20 20 3B 43 4C 45  41 52 20 42 49 54 20 31  |    ;CLEAR BIT 1|
00001E00: 00 08 26 82 0F 52 54 53  00 0E 26 8C 0F 3B 00 14  |..&..RTS..&..;..|
00001E10: 26 96 0F 3B 00 36 26 A0  0F 3B 54 48 49 53 20 52  |&..;.6&..;THIS R|
00001E20: 4F 55 54 49 4E 45 20 49  53 20 43 4F 50 49 45 44  |OUTINE IS COPIED|
00001E30: 20 A4 20 54 48 45 00 58  26 AA 0F 3B 53 54 41 43  | . THE.X&..;STAC|
00001E40: 4B 20 57 48 45 4E 20 4E  45 45 44 45 44 2C 20 AF  |K WHEN NEEDED, .|
00001E50: 20 8A 20 54 48 45 52 45  00 5E 26 B4 0F 3B 00 64  | . THERE.^&..;.d|
00001E60: 26 BE 0F 3B 00 6F 26 C8  0F 46 4C 41 20 B2 AC 00  |&..;.o&..FLA ...|
00001E70: 81 26 D2 0F 3B 46 4C 41  53 48 20 53 43 52 45 45  |.&..;FLASH SCREE|
00001E80: 4E 00 A8 26 DC 0F 4C 44  41 20 23 24 33 37 20 20  |N..&..LDA #$37  |
00001E90: 20 20 20 20 20 20 3B 53  57 49 54 43 48 20 49 4E  |      ;SWITCH IN|
00001EA0: 20 49 AD 4F 20 45 54 43  00 B2 26 E6 0F 53 54 41  | I.O ETC..&..STA|
00001EB0: 20 31 00 B8 26 F0 0F 3B  00 D8 26 FA 0F 46 4C 41  | 1..&..;..&..FLA|
00001EC0: 31 20 43 50 58 20 24 44  30 31 32 20 20 3B 92 20  |1 CPX $D012  ;. |
00001ED0: 81 20 52 41 53 54 45 52  00 E5 26 04 10 42 4E 45  |. RASTER..&..BNE|
00001EE0: 20 46 4C 41 31 00 07 27  0E 10 49 4E 43 20 24 44  | FLA1..'..INC $D|
00001EF0: 30 32 30 20 20 20 20 20  20 20 3B 42 55 4D 50 20  |020       ;BUMP |
00001F00: 43 4F 4C 4F 55 52 53 00  15 27 18 10 49 4E 43 20  |COLOURS..'..INC |
00001F10: 24 44 30 32 31 00 38 27  22 10 44 45 58 20 20 20  |$D021.8'".DEX   |
00001F20: 20 20 20 20 20 20 20 20  20 20 3B 54 45 53 54 20  |          ;TEST |
00001F30: 46 49 4E 49 53 48 45 44  00 5B 27 2C 10 42 4E 45  |FINISHED.[',.BNE|
00001F40: 20 46 4C 41 31 20 20 20  20 20 20 20 20 3B 20 4E  | FLA1        ; N|
00001F50: 4F 20 AB 20 52 45 46 4C  41 53 48 00 7C 27 36 10  |O . REFLASH.|'6.|
00001F60: 4C 44 41 20 23 24 33 34  20 20 20 20 20 20 20 20  |LDA #$34        |
00001F70: 3B 20 59 45 53 20 AB 20  45 58 49 54 00 86 27 40  |; YES . EXIT..'@|
00001F80: 10 53 54 41 20 31 00 8E  27 4A 10 52 54 53 00 94  |.STA 1..'J.RTS..|
00001F90: 27 54 10 3B 00 A9 27 5E  10 80 46 4C 41 20 B2 20  |'T.;..'^..FLA . |
00001FA0: AC AB 28 46 4C 41 AA 31  29 00 AF 27 68 10 3B 00  |..(FLA.1)..'h.;.|
00001FB0: B5 27 72 10 3B 00 D7 27  7C 10 3B 54 48 45 20 82  |.'r.;..'|.;THE .|
00001FC0: 20 53 55 42 52 4F 55 54  49 4E 45 53 20 41 52 45  | SUBROUTINES ARE|
00001FD0: 20 43 4F 50 49 45 44 00  FA 27 86 10 3B 46 52 4F  | COPIED..'..;FRO|
00001FE0: 4D 20 44 AB 42 4C 4F 43  4B 20 52 41 4D 20 A4 20  |M D.BLOCK RAM . |
00001FF0: 24 31 30 30 20 45 56 45  52 59 00 11 28 90 10 3B  |$100 EVERY..(..;|
00002000: 54 49 4D 45 20 48 45 4C  50 20 49 53 20 55 53 45  |TIME HELP IS USE|
00002010: 44 00 17 28 9A 10 3B 00  1D 28 A4 10 3B 00 29 28  |D..(..;..(..;.)(|
00002020: AE 10 53 55 42 52 20 B2  AC 00 4F 28 B8 10 3B 43  |..SUBR ...O(..;C|
00002030: 4F 50 59 20 42 59 54 45  20 46 52 4F 4D 20 52 41  |OPY BYTE FROM RA|
00002040: 4D 20 41 44 44 52 20 28  53 55 42 52 AA 35 29 00  |M ADDR (SUBR.5).|
00002050: 71 28 C2 10 3B A4 20 44  AB 42 4C 4F 43 4B 20 52  |q(..;. D.BLOCK R|
00002060: 41 4D 20 41 44 44 52 20  28 53 55 42 52 AA 31 32  |AM ADDR (SUBR.12|
00002070: 29 00 8E 28 CC 10 4C 44  58 20 23 24 33 37 20 20  |)..(..LDX #$37  |
00002080: 20 20 20 20 20 20 3B 52  4F 4D 53 20 49 4E 00 98  |      ;ROMS IN..|
00002090: 28 D6 10 53 54 58 20 31  00 BD 28 E0 10 4C 44 41  |(..STX 1..(..LDA|
000020A0: 20 24 46 46 46 46 20 20  20 20 20 20 20 3B 41 44  | $FFFF       ;AD|
000020B0: 44 52 20 53 45 54 20 91  20 43 41 4C 4C 00 DB 28  |DR SET . CALL..(|
000020C0: EA 10 4C 44 58 20 23 24  33 34 20 20 20 20 20 20  |..LDX #$34      |
000020D0: 20 20 3B 52 4F 4D 53 20  4F 55 54 00 E5 28 F4 10  |  ;ROMS OUT..(..|
000020E0: 53 54 58 20 31 00 0A 29  FE 10 53 54 41 20 24 46  |STX 1..)..STA $F|
000020F0: 46 46 46 20 20 20 20 20  20 20 3B 41 44 44 52 20  |FFF       ;ADDR |
00002100: 53 45 54 20 91 20 43 41  4C 4C 00 2F 29 08 11 49  |SET . CALL./)..I|
00002110: 4E 43 20 53 55 42 AA 35  20 20 20 20 20 20 20 3B  |NC SUB.5       ;|
00002120: 42 55 4D 50 20 46 45 54  43 48 20 41 44 44 52 00  |BUMP FETCH ADDR.|
00002130: 3B 29 12 11 42 4E 45 20  53 42 31 00 49 29 1C 11  |;)..BNE SB1.I)..|
00002140: 49 4E 43 20 53 55 42 AA  36 00 4F 29 26 11 3B 00  |INC SUB.6.O)&.;.|
00002150: 74 29 30 11 53 42 31 20  49 4E 43 20 53 55 42 AA  |t)0.SB1 INC SUB.|
00002160: 31 32 20 20 3B 42 55 4D  50 20 53 54 41 53 48 20  |12  ;BUMP STASH |
00002170: 41 44 44 52 00 80 29 3A  11 42 4E 45 20 53 42 32  |ADDR..):.BNE SB2|
00002180: 00 8F 29 44 11 49 4E 43  20 53 55 42 AA 31 33 00  |..)D.INC SUB.13.|
00002190: 95 29 4E 11 3B 00 A1 29  58 11 53 42 32 20 52 54  |.)N.;..)X.SB2 RT|
000021A0: 53 00 A7 29 62 11 3B 00  AD 29 6C 11 3B 00 B9 29  |S..)b.;..)l.;..)|
000021B0: 76 11 5A 55 42 52 20 B2  AC 00 DE 29 80 11 3B 43  |v.ZUBR ....)..;C|
000021C0: 4F 50 59 20 42 59 54 45  20 46 52 4F 4D 20 44 AB  |OPY BYTE FROM D.|
000021D0: 42 4C 4F 43 4B 20 52 41  4D 20 41 44 44 52 00 00  |BLOCK RAM ADDR..|
000021E0: 2A 8A 11 3B 28 5A 55 42  52 AA 31 29 20 A4 20 52  |*..;(ZUBR.1) . R|
000021F0: 41 4D 20 41 44 44 52 20  28 5A 55 42 52 AA 38 29  |AM ADDR (ZUBR.8)|
00002200: 00 25 2A 94 11 4C 44 41  20 24 46 46 46 46 20 20  |.%*..LDA $FFFF  |
00002210: 20 20 20 20 20 3B 41 44  44 52 20 53 45 54 20 91  |     ;ADDR SET .|
00002220: 20 43 41 4C 4C 00 42 2A  9E 11 4C 44 58 20 23 24  | CALL.B*..LDX #$|
00002230: 33 37 20 20 20 20 20 20  20 20 3B 52 4F 4D 53 20  |37        ;ROMS |
00002240: 49 4E 00 4C 2A A8 11 53  54 58 20 31 00 71 2A B2  |IN.L*..STX 1.q*.|
00002250: 11 53 54 41 20 24 46 46  46 46 20 20 20 20 20 20  |.STA $FFFF      |
00002260: 20 3B 41 44 44 52 20 53  45 54 20 91 20 43 41 4C  | ;ADDR SET . CAL|
00002270: 4C 00 8F 2A BC 11 4C 44  58 20 23 24 33 34 20 20  |L..*..LDX #$34  |
00002280: 20 20 20 20 20 20 3B 52  4F 4D 53 20 4F 55 54 00  |      ;ROMS OUT.|
00002290: 99 2A C6 11 53 54 58 20  31 00 BE 2A D0 11 49 4E  |.*..STX 1..*..IN|
000022A0: 43 20 5A 55 42 AA 31 20  20 20 20 20 20 20 3B 42  |C ZUB.1       ;B|
000022B0: 55 4D 50 20 46 45 54 43  48 20 41 44 44 52 00 CA  |UMP FETCH ADDR..|
000022C0: 2A DA 11 42 4E 45 20 5A  42 31 00 D8 2A E4 11 49  |*..BNE ZB1..*..I|
000022D0: 4E 43 20 5A 55 42 AA 32  00 DE 2A EE 11 3B 00 03  |NC ZUB.2..*..;..|
000022E0: 2B F8 11 5A 42 31 20 49  4E 43 20 5A 55 42 AA 38  |+..ZB1 INC ZUB.8|
000022F0: 20 20 20 3B 42 55 4D 50  20 53 54 41 53 48 20 41  |   ;BUMP STASH A|
00002300: 44 44 52 00 0F 2B 02 12  42 4E 45 20 5A 42 32 00  |DDR..+..BNE ZB2.|
00002310: 1D 2B 0C 12 49 4E 43 20  5A 55 42 AA 39 00 23 2B  |.+..INC ZUB.9.#+|
00002320: 16 12 3B 00 2F 2B 20 12  5A 42 32 20 52 54 53 00  |..;./+ .ZB2 RTS.|
00002330: 35 2B 2A 12 3B 00 56 2B  34 12 3B 43 41 4C 43 20  |5+*.;.V+4.;CALC |
00002340: B6 4F 4C 55 54 45 20 41  44 44 52 45 53 53 20 4F  |.OLUTE ADDRESS O|
00002350: 46 20 5A 55 42 52 00 6E  2B 3E 12 5A 55 42 20 B2  |F ZUBR.n+>.ZUB .|
00002360: 20 53 55 42 AA 5A 55 42  52 AB 53 55 42 52 00 74  | SUB.ZUBR.SUBR.t|
00002370: 2B 48 12 3B 00 7A 2B 52  12 3B 00 85 2B 5C 12 4F  |+H.;.z+R.;..+\.O|
00002380: 50 4E 20 B2 AC 00 A6 2B  66 12 3B 9F 20 41 20 48  |PN ....+f.;. A H|
00002390: 45 4C 50 20 46 49 4C 45  20 28 48 45 4C 50 AB 41  |ELP FILE (HELP.A|
000023A0: 2C 20 45 54 43 29 00 CC  2B 70 12 53 54 41 20 46  |, ETC)..+p.STA F|
000023B0: 49 4C 4E 41 4D AA 35 20  20 20 20 3B 4C 41 53 54  |ILNAM.5    ;LAST|
000023C0: 20 46 49 4C 4E 41 4D 20  43 48 41 52 00 EE 2B 7A  | FILNAM CHAR..+z|
000023D0: 12 4C 44 41 20 46 49 4C  45 20 20 20 20 20 20 20  |.LDA FILE       |
000023E0: 20 3B 9F 20 4C 46 2C 38  2C 53 41 2E 2E 2E 00 F6  | ;. LF,8,SA.....|
000023F0: 2B 84 12 50 48 41 00 05  2C 8E 12 4C 44 59 20 53  |+..PHA..,..LDY S|
00002400: 45 43 41 44 44 00 12 2C  98 12 4C 44 58 20 23 24  |ECADD..,..LDX #$|
00002410: 33 37 00 1C 2C A2 12 53  54 58 20 31 00 27 2C AC  |37..,..STX 1.',.|
00002420: 12 4C 44 58 20 23 38 00  36 2C B6 12 4A 53 52 20  |.LDX #8.6,..JSR |
00002430: 53 45 54 4C 46 53 00 57  2C C0 12 4C 44 58 20 23  |SETLFS.W,..LDX #|
00002440: B3 46 49 4C 4E 41 4D 20  20 20 20 3B 2E 2E 2E 22  |.FILNAM    ;..."|
00002450: 48 45 4C 50 2D 3F 22 00  68 2C CA 12 4C 44 59 20  |HELP-?".h,..LDY |
00002460: 23 B1 46 49 4C 4E 41 4D  00 73 2C D4 12 4C 44 41  |#.FILNAM.s,..LDA|
00002470: 20 23 36 00 82 2C DE 12  4A 53 52 20 53 45 54 4E  | #6..,..JSR SETN|
00002480: 41 4D 00 8C 2C E8 12 4A  53 52 20 9F 00 94 2C F2  |AM..,..JSR ...,.|
00002490: 12 50 4C 41 00 B2 2C FC  12 54 41 58 20 20 20 20  |.PLA..,..TAX    |
000024A0: 20 20 20 20 20 20 20 20  20 3B 9F 20 85 20 43 48  |         ;. . CH|
000024B0: 41 4E 00 C0 2C 06 13 4A  53 52 20 43 48 4B 49 4E  |AN..,..JSR CHKIN|
000024C0: 00 C6 2C 10 13 3B 00 E9  2C 1A 13 4F 46 31 20 53  |..,..;..,..OF1 S|
000024D0: 45 49 20 20 20 20 20 20  20 20 20 3B 28 52 4F 4D  |EI         ;(ROM|
000024E0: 20 44 49 44 20 43 4C 49  29 00 07 2D 24 13 4C 44  | DID CLI)..-$.LD|
000024F0: 58 20 23 24 33 34 20 20  20 20 20 20 20 20 3B 52  |X #$34        ;R|
00002500: 4F 4D 53 20 4F 55 54 00  11 2D 2E 13 53 54 58 20  |OMS OUT..-..STX |
00002510: 31 00 19 2D 38 13 52 54  53 00 1F 2D 42 13 3B 00  |1..-8.RTS..-B.;.|
00002520: 3F 2D 4C 13 3B 43 41 4C  43 20 B6 4F 4C 55 54 45  |?-L.;CALC .OLUTE|
00002530: 20 41 44 44 52 45 53 53  20 4F 46 20 4F 50 4E 00  | ADDRESS OF OPN.|
00002540: 59 2D 56 13 4F 50 4E 46  49 4C 20 B2 20 53 55 42  |Y-V.OPNFIL . SUB|
00002550: AA 4F 50 4E AB 53 55 42  52 00 5F 2D 60 13 3B 00  |.OPN.SUBR._-`.;.|
00002560: 65 2D 6A 13 3B 00 89 2D  74 13 3B 48 45 4C 50 20  |e-j.;..-t.;HELP |
00002570: 46 49 C3 41 4D 45 20 AB  20 4C 41 53 54 20 43 48  |FI.AME . LAST CH|
00002580: 41 52 20 56 41 52 49 45  53 00 9D 2D 7E 13 A5 41  |AR VARIES..-~..A|
00002590: 4D 20 2E C6 20 22 48 45  4C 50 2D 3F 22 00 A3 2D  |M .. "HELP-?"..-|
000025A0: 88 13 3B 00 C3 2D 92 13  3B 43 41 4C 43 20 B6 4F  |..;..-..;CALC .O|
000025B0: 4C 55 54 45 20 41 44 44  52 45 53 53 20 4F 46 20  |LUTE ADDRESS OF |
000025C0: A5 41 4D 00 DD 2D 9C 13  46 49 4C 4E 41 4D 20 B2  |.AM..-..FILNAM .|
000025D0: 20 53 55 42 AA A5 41 4D  AB 53 55 42 52 00 E3 2D  | SUB..AM.SUBR..-|
000025E0: A6 13 3B 00 E9 2D B0 13  3B 00 F2 2D BA 13 A1 20  |..;..-..;..-... |
000025F0: B2 AC 00 0D 2E C4 13 3B  A1 20 42 59 54 45 20 46  |.......;. BYTE F|
00002600: 52 4F 4D 20 48 45 4C 50  20 46 49 4C 45 00 2A 2E  |ROM HELP FILE.*.|
00002610: CE 13 4C 44 58 20 23 24  33 37 20 20 20 20 20 20  |..LDX #$37      |
00002620: 20 20 3B 52 4F 4D 53 20  49 4E 00 34 2E D8 13 53  |  ;ROMS IN.4...S|
00002630: 54 58 20 31 00 52 2E E2  13 4A 53 52 20 A1 49 4E  |TX 1.R...JSR .IN|
00002640: 20 20 20 20 20 20 20 3B  A1 20 54 48 45 20 42 59  |       ;. THE BY|
00002650: 54 45 00 77 2E EC 13 43  4C 43 20 20 20 20 20 20  |TE.w...CLC      |
00002660: 20 20 20 20 20 20 20 3B  52 45 4C 4F 43 41 54 41  |       ;RELOCATA|
00002670: 42 4C 45 20 4A 4D 50 00  83 2E F6 13 42 43 43 20  |BLE JMP.....BCC |
00002680: 4F 46 31 00 89 2E 00 14  3B 00 A7 2E 0A 14 3B 43  |OF1.....;.....;C|
00002690: 41 4C 43 20 B6 4F 4C 55  54 45 20 41 44 44 52 45  |ALC .OLUTE ADDRE|
000026A0: 53 53 20 4F 46 20 A1 00  BD 2E 14 14 A1 42 59 54  |SS OF .......BYT|
000026B0: 20 B2 20 53 55 42 AA A1  AB 53 55 42 52 00 C3 2E  | . SUB...SUBR...|
000026C0: 1E 14 3B 00 C9 2E 28 14  3B 00 D4 2E 32 14 43 4C  |..;...(.;...2.CL|
000026D0: 53 20 B2 AC 00 E5 2E 3C  14 3B A0 20 48 45 4C 50  |S .....<.;. HELP|
000026E0: 20 46 49 4C 45 00 F2 2E  46 14 4C 44 41 20 46 49  | FILE...F.LDA FI|
000026F0: 4C 45 00 FA 2E 50 14 50  48 41 00 17 2F 5A 14 4C  |LE...P.PHA../Z.L|
00002700: 44 58 20 23 24 33 37 20  20 20 20 20 20 20 20 3B  |DX #$37        ;|
00002710: 52 4F 4D 53 20 49 4E 00  21 2F 64 14 53 54 58 20  |ROMS IN.!/d.STX |
00002720: 31 00 3F 2F 6E 14 4A 53  52 20 9C 43 48 4E 20 20  |1.?/n.JSR .CHN  |
00002730: 20 20 20 20 3B A0 20 54  48 45 20 46 49 4C 45 00  |    ;. THE FILE.|
00002740: 47 2F 78 14 50 4C 41 00  51 2F 82 14 4A 53 52 20  |G/x.PLA.Q/..JSR |
00002750: A0 00 76 2F 8C 14 43 4C  43 20 20 20 20 20 20 20  |..v/..CLC       |
00002760: 20 20 20 20 20 20 3B 52  45 4C 4F 43 41 54 41 42  |      ;RELOCATAB|
00002770: 4C 45 20 4A 4D 50 00 82  2F 96 14 42 43 43 20 4F  |LE JMP../..BCC O|
00002780: 46 31 00 88 2F A0 14 3B  00 A8 2F AA 14 3B 43 41  |F1../..;../..;CA|
00002790: 4C 43 20 B6 4F 4C 55 54  45 20 41 44 44 52 45 53  |LC .OLUTE ADDRES|
000027A0: 53 20 4F 46 20 43 4C 53  00 C2 2F B4 14 43 4C 53  |S OF CLS../..CLS|
000027B0: 46 49 4C 20 B2 20 53 55  42 AA 43 4C 53 AB 53 55  |FIL . SUB.CLS.SU|
000027C0: 42 52 00 C8 2F BE 14 3B  00 CE 2F C8 14 3B 00 D9  |BR../..;../..;..|
000027D0: 2F D2 14 4B 45 59 20 B2  AC 00 F2 2F DC 14 3B A1  |/..KEY ..../..;.|
000027E0: 20 C6 49 49 20 42 59 54  45 2C 20 8E 20 49 4E 20  | .II BYTE, . IN |
000027F0: 2E 41 00 11 30 E6 14 3B  8E 20 53 48 8B 54 20 4B  |.A..0..;. SH.T K|
00002800: 45 59 20 52 45 47 49 53  54 45 52 20 49 4E 20 2E  |EY REGISTER IN .|
00002810: 59 00 2D 30 F0 14 4C 44  41 20 23 24 33 37 20 20  |Y.-0..LDA #$37  |
00002820: 20 20 20 20 20 3B 52 4F  4D 53 20 49 4E 00 37 30  |     ;ROMS IN.70|
00002830: FA 14 53 54 41 20 31 00  5C 30 04 15 4A 53 52 20  |..STA 1.\0..JSR |
00002840: 53 43 4E 4B 45 59 20 20  20 20 20 3B 53 43 41 4E  |SCNKEY     ;SCAN|
00002850: 20 4B 59 42 44 20 4D 41  54 52 49 58 00 7A 30 0E  | KYBD MATRIX.z0.|
00002860: 15 4C 44 59 20 24 43 42  20 20 20 20 20 20 20 20  |.LDY $CB        |
00002870: 3B A1 20 4B 45 59 43 4F  44 45 00 98 30 18 15 4C  |;. KEYCODE..0..L|
00002880: 44 41 20 24 45 42 38 31  2C 59 20 20 20 20 3B 43  |DA $EB81,Y    ;C|
00002890: 91 56 20 A4 20 C6 49 49  00 BE 30 22 15 4C 44 59  |.V . .II..0".LDY|
000028A0: 20 24 30 32 38 44 20 20  20 20 20 20 3B 53 48 8B  | $028D      ;SH.|
000028B0: 54 20 4B 45 59 20 52 45  47 49 53 54 45 52 00 C4  |T KEY REGISTER..|
000028C0: 30 2C 15 3B 00 E8 30 36  15 4B 59 31 20 43 4C 43  |0,.;..06.KY1 CLC|
000028D0: 20 20 20 20 20 20 20 20  3B 52 45 4C 4F 43 41 54  |        ;RELOCAT|
000028E0: 41 42 4C 45 20 4A 4D 50  00 F4 30 40 15 42 43 43  |ABLE JMP..0@.BCC|
000028F0: 20 4F 46 31 00 FA 30 4A  15 3B 00 1A 31 54 15 3B  | OF1..0J.;..1T.;|
00002900: 43 41 4C 43 20 B6 4F 4C  55 54 45 20 41 44 44 52  |CALC .OLUTE ADDR|
00002910: 45 53 53 20 4F 46 20 4B  45 59 00 34 31 5E 15 4B  |ESS OF KEY.41^.K|
00002920: 45 59 43 48 4B 20 B2 20  53 55 42 AA 4B 45 59 AB  |EYCHK . SUB.KEY.|
00002930: 53 55 42 52 00 3A 31 68  15 3B 00 40 31 72 15 3B  |SUBR.:1h.;.@1r.;|
00002940: 00 4B 31 7C 15 50 55 54  20 B2 AC 00 6B 31 86 15  |.K1|.PUT ...k1..|
00002950: 3B 99 20 41 20 43 48 41  52 41 43 54 45 52 20 A4  |;. A CHARACTER .|
00002960: 20 54 48 45 20 53 43 52  45 45 4E 00 78 31 90 15  | THE SCREEN.x1..|
00002970: 4C 44 58 20 23 24 33 37  00 82 31 9A 15 53 54 58  |LDX #$37..1..STX|
00002980: 20 31 00 91 31 A4 15 4A  53 52 20 43 48 52 4F 55  | 1..1..JSR CHROU|
00002990: 54 00 B6 31 AE 15 43 4C  43 20 20 20 20 20 20 20  |T..1..CLC       |
000029A0: 20 20 20 20 20 20 3B 52  45 4C 4F 43 41 54 41 42  |      ;RELOCATAB|
000029B0: 4C 45 20 4A 4D 50 00 C2  31 B8 15 42 43 43 20 4F  |LE JMP..1..BCC O|
000029C0: 46 31 00 C8 31 C2 15 3B  00 E8 31 CC 15 3B 43 41  |F1..1..;..1..;CA|
000029D0: 4C 43 20 B6 4F 4C 55 54  45 20 41 44 44 52 45 53  |LC .OLUTE ADDRES|
000029E0: 53 20 4F 46 20 50 55 54  00 02 32 D6 15 50 55 54  |S OF PUT..2..PUT|
000029F0: 42 59 54 20 B2 20 53 55  42 AA 50 55 54 AB 53 55  |BYT . SUB.PUT.SU|
00002A00: 42 52 00 08 32 E0 15 3B  00 0E 32 EA 15 3B 00 2E  |BR..2..;..2..;..|
00002A10: 32 F4 15 3B 43 41 4C 43  20 23 20 4F 46 20 53 55  |2..;CALC # OF SU|
00002A20: 42 52 4F 55 54 49 4E 45  20 42 59 54 45 53 00 42  |BROUTINE BYTES.B|
00002A30: 32 FE 15 53 55 42 53 49  5A 20 B2 20 AC AB 53 55  |2..SUBSIZ . ..SU|
00002A40: 42 52 00 48 32 08 16 3B  00 4E 32 12 16 3B 00 70  |BR.H2..;.N2..;.p|
00002A50: 32 1C 16 3B 82 20 43 4F  4D 45 53 20 54 48 45 20  |2..;. COMES THE |
00002A60: 41 43 54 55 41 4C 20 43  4F 44 45 20 54 48 41 54  |ACTUAL CODE THAT|
00002A70: 00 92 32 26 16 3B 45 58  45 43 55 54 45 53 20 49  |..2&.;EXECUTES I|
00002A80: 4E 20 44 AB 42 4C 4F 43  4B 20 52 41 4D 2E 20 54  |N D.BLOCK RAM. T|
00002A90: 48 45 00 B7 32 30 16 3B  46 49 52 53 54 20 53 45  |HE..20.;FIRST SE|
00002AA0: 43 54 49 91 20 53 57 41  50 53 20 4F 55 54 20 54  |CTI. SWAPS OUT T|
00002AB0: 48 45 20 55 53 45 52 00  DA 32 3A 16 3B 45 4E 56  |HE USER..2:.;ENV|
00002AC0: 49 52 91 4D 45 4E 54 2C  20 26 20 49 4E 53 54 41  |IR.MENT, & INSTA|
00002AD0: 4C 4C 53 20 41 20 A2 20  91 45 00 E0 32 44 16 3B  |LLS A . .E..2D.;|
00002AE0: 00 E6 32 4E 16 3B 00 F2  32 58 16 48 45 4C 50 20  |..2N.;..2X.HELP |
00002AF0: B2 AC 00 11 33 62 16 3B  54 48 45 20 48 45 4C 50  |....3b.;THE HELP|
00002B00: 20 55 54 49 4C 49 54 59  20 4D 41 49 4E 4C 49 4E  | UTILITY MAINLIN|
00002B10: 45 00 36 33 6C 16 4C 44  41 20 23 30 20 20 20 20  |E.63l.LDA #0    |
00002B20: 20 20 20 20 20 20 3B 43  4F 50 59 20 24 30 30 30  |      ;COPY $000|
00002B30: 30 AB 30 31 46 46 00 5A  33 76 16 4C 44 59 20 23  |0.01FF.Z3v.LDY #|
00002B40: 24 44 30 20 20 20 20 20  20 20 20 3B 20 20 A4 20  |$D0        ;  . |
00002B50: 24 44 30 30 30 AB 44 31  46 46 00 65 33 80 16 4C  |$D000.D1FF.e3..L|
00002B60: 44 58 20 23 32 00 72 33  8A 16 4A 53 52 20 43 4F  |DX #2.r3..JSR CO|
00002B70: 50 59 00 97 33 94 16 4C  44 41 20 23 34 20 20 20  |PY..3..LDA #4   |
00002B80: 20 20 20 20 20 20 20 3B  43 4F 50 59 20 24 30 34  |       ;COPY $04|
00002B90: 30 30 AB 30 37 46 46 00  BB 33 9E 16 4C 44 59 20  |00.07FF..3..LDY |
00002BA0: 23 24 44 32 20 20 20 20  20 20 20 20 3B 20 20 A4  |#$D2        ;  .|
00002BB0: 20 24 44 32 30 30 AB 44  35 46 46 00 C3 33 A8 16  | $D200.D5FF..3..|
00002BC0: 54 41 58 00 D0 33 B2 16  4A 53 52 20 43 4F 50 59  |TAX..3..JSR COPY|
00002BD0: 00 F4 33 BC 16 54 53 58  20 20 20 20 20 20 20 20  |..3..TSX        |
00002BE0: 20 20 20 20 20 3B 94 20  55 53 45 52 20 53 54 4B  |     ;. USER STK|
00002BF0: 20 50 54 52 00 03 34 C6  16 53 54 58 20 53 54 4B  | PTR..4..STX STK|
00002C00: 53 41 56 00 28 34 D0 16  4C 44 58 20 23 24 46 46  |SAV.(4..LDX #$FF|
00002C10: 20 20 20 20 20 20 20 20  3B 50 55 54 20 4F 55 52  |        ;PUT OUR|
00002C20: 20 53 54 4B 20 50 54 52  00 4F 34 DA 16 54 58 53  | STK PTR.O4..TXS|
00002C30: 20 20 20 20 20 20 20 20  20 20 20 20 20 3B 20 46  |             ; F|
00002C40: 41 52 20 46 52 4F 4D 20  53 55 42 52 54 4E 53 00  |AR FROM SUBRTNS.|
00002C50: 75 34 E4 16 4C 44 59 20  23 53 55 42 53 49 5A 20  |u4..LDY #SUBSIZ |
00002C60: 20 20 20 20 3B 43 4F 50  59 20 53 55 42 52 4F 55  |    ;COPY SUBROU|
00002C70: 54 49 4E 45 53 00 99 34  EE 16 3B 20 20 20 20 20  |TINES..4..;     |
00002C80: 20 20 20 20 20 20 20 20  20 20 20 20 B5 4F 20 53  |            .O S|
00002C90: 54 41 43 4B 20 50 41 47  45 00 AC 34 F8 16 48 45  |TACK PAGE..4..HE|
00002CA0: 31 20 4C 44 41 20 53 55  42 52 2C 59 00 BA 34 02  |1 LDA SUBR,Y..4.|
00002CB0: 17 53 54 41 20 53 55 42  2C 59 00 C2 34 0C 17 44  |.STA SUB,Y..4..D|
00002CC0: 45 59 00 CF 34 16 17 43  50 59 20 23 24 46 46 00  |EY..4..CPY #$FF.|
00002CD0: DB 34 20 17 42 4E 45 20  48 45 31 00 00 35 2A 17  |.4 .BNE HE1..5*.|
00002CE0: 49 4E 59 20 20 20 20 20  20 20 20 20 20 20 20 20  |INY             |
00002CF0: 3B 43 4F 50 59 20 43 4F  4C 4F 55 52 20 52 41 4D  |;COPY COLOUR RAM|
00002D00: 00 24 35 34 17 53 54 59  20 53 55 42 AA 35 20 20  |.$54.STY SUB.5  |
00002D10: 20 20 20 20 20 3B 20 28  24 44 38 30 30 AB 24 44  |     ; ($D800.$D|
00002D20: 42 46 46 29 00 48 35 3E  17 53 54 59 20 53 55 42  |BFF).H5>.STY SUB|
00002D30: AA 31 32 20 20 20 20 20  20 3B 20 A4 20 52 41 4D  |.12      ; . RAM|
00002D40: 20 42 45 4E 45 41 54 48  00 6C 35 48 17 4C 44 41  | BENEATH.l5H.LDA|
00002D50: 20 23 34 20 20 20 20 20  20 20 20 20 20 3B 20 28  | #4          ; (|
00002D60: 24 44 36 30 30 AB 24 44  39 46 46 29 00 76 35 52  |$D600.$D9FF).v5R|
00002D70: 17 53 54 41 20 32 00 83  35 5C 17 4C 44 58 20 23  |.STA 2..5\.LDX #|
00002D80: 24 44 38 00 91 35 66 17  53 54 58 20 53 55 42 AA  |$D8..5f.STX SUB.|
00002D90: 36 00 9E 35 70 17 4C 44  58 20 23 24 44 36 00 AD  |6..5p.LDX #$D6..|
00002DA0: 35 7A 17 53 54 58 20 53  55 42 AA 31 33 00 B3 35  |5z.STX SUB.13..5|
00002DB0: 84 17 3B 00 C3 35 8E 17  48 45 32 20 4A 53 52 20  |..;..5..HE2 JSR |
00002DC0: 53 55 42 00 CB 35 98 17  44 45 59 00 D7 35 A2 17  |SUB..5..DEY..5..|
00002DD0: 42 4E 45 20 48 45 32 00  E1 35 AC 17 44 45 43 20  |BNE HE2..5..DEC |
00002DE0: 32 00 ED 35 B6 17 42 4E  45 20 48 45 32 00 12 36  |2..5..BNE HE2..6|
00002DF0: C0 17 4C 44 41 20 23 B3  24 44 30 31 31 20 20 20  |..LDA #.$D011   |
00002E00: 20 20 3B 43 4F 50 59 20  56 49 44 45 4F 20 52 45  |  ;COPY VIDEO RE|
00002E10: 47 53 00 35 36 CA 17 4C  44 59 20 23 B1 24 44 30  |GS.56..LDY #.$D0|
00002E20: 31 31 20 20 20 20 20 3B  20 A4 20 41 20 94 20 42  |11     ; . A . B|
00002E30: 55 46 46 45 52 00 43 36  D4 17 53 54 41 20 53 55  |UFFER.C6..STA SU|
00002E40: 42 AA 35 00 51 36 DE 17  53 54 59 20 53 55 42 AA  |B.5.Q6..STY SUB.|
00002E50: 36 00 62 36 E8 17 4C 44  41 20 23 B3 56 49 44 42  |6.b6..LDA #.VIDB|
00002E60: 55 46 00 73 36 F2 17 4C  44 59 20 23 B1 56 49 44  |UF.s6..LDY #.VID|
00002E70: 42 55 46 00 82 36 FC 17  53 54 41 20 53 55 42 AA  |BUF..6..STA SUB.|
00002E80: 31 32 00 91 36 06 18 53  54 59 20 53 55 42 AA 31  |12..6..STY SUB.1|
00002E90: 33 00 9D 36 10 18 4C 44  59 20 23 31 36 00 A9 36  |3..6..LDY #16..6|
00002EA0: 1A 18 53 54 59 20 24 43  43 00 AF 36 24 18 3B 00  |..STY $CC..6$.;.|
00002EB0: BF 36 2E 18 48 45 33 20  4A 53 52 20 53 55 42 00  |.6..HE3 JSR SUB.|
00002EC0: C7 36 38 18 44 45 59 00  D3 36 42 18 42 50 4C 20  |.68.DEY..6B.BPL |
00002ED0: 48 45 33 00 F4 36 4C 18  4C 44 41 20 24 30 32 38  |HE3..6L.LDA $028|
00002EE0: 36 20 20 20 20 20 20 20  3B 94 20 43 4F 4C 4F 55  |6       ;. COLOU|
00002EF0: 52 20 4F 46 00 19 37 56  18 4C 44 59 20 24 30 32  |R OF..7V.LDY $02|
00002F00: 38 37 20 20 20 20 20 20  20 3B 20 54 45 58 54 20  |87       ; TEXT |
00002F10: AF 20 4F 46 20 43 48 41  52 00 3C 37 60 18 4C 44  |. OF CHAR.<7`.LD|
00002F20: 58 20 24 30 32 38 38 20  20 20 20 20 20 20 3B 20  |X $0288       ; |
00002F30: 55 4E 44 45 52 20 43 55  52 53 B0 2C 00 5E 37 6A  |UNDER CURS.,.^7j|
00002F40: 18 53 54 41 20 B7 54 58  54 20 20 20 20 20 20 3B  |.STA .TXT      ;|
00002F50: 20 AF 20 53 43 52 45 45  4E 20 50 41 47 45 00 6B  | . SCREEN PAGE.k|
00002F60: 37 74 18 53 54 59 20 B7  43 4F 4C 00 78 37 7E 18  |7t.STY .COL.x7~.|
00002F70: 53 54 58 20 B7 53 43 52  00 83 37 88 18 4C 44 41  |STX .SCR..7..LDA|
00002F80: 20 23 34 00 A9 37 92 18  53 54 41 20 24 30 32 38  | #4..7..STA $028|
00002F90: 38 20 20 20 20 20 20 20  3B 53 43 52 45 45 4E 20  |8       ;SCREEN |
00002FA0: 41 54 20 50 41 47 45 20  34 00 CD 37 9C 18 4C 44  |AT PAGE 4..7..LD|
00002FB0: 41 20 23 B3 24 44 44 30  30 20 20 20 20 20 3B 94  |A #.$DD00     ;.|
00002FC0: 20 55 53 45 52 27 53 20  56 49 44 45 4F 00 EF 37  | USER'S VIDEO..7|
00002FD0: A6 18 4C 44 59 20 23 B1  24 44 44 30 30 20 20 20  |..LDY #.$DD00   |
00002FE0: 20 20 3B 20 42 41 4E 4B  20 4E 55 4D 42 45 52 00  |  ; BANK NUMBER.|
00002FF0: 14 38 B0 18 53 54 41 20  53 55 42 AA 35 20 20 20  |.8..STA SUB.5   |
00003000: 20 20 20 20 3B 20 28 54  48 45 20 48 41 52 44 20  |    ; (THE HARD |
00003010: 57 41 59 29 00 22 38 BA  18 53 54 59 20 53 55 42  |WAY)."8..STY SUB|
00003020: AA 36 00 30 38 C4 18 53  54 41 20 5A 55 42 AA 38  |.6.08..STA ZUB.8|
00003030: 00 3E 38 CE 18 53 54 59  20 5A 55 42 AA 39 00 4D  |.>8..STY ZUB.9.M|
00003040: 38 D8 18 4C 44 41 20 23  B3 B7 42 4E 4B 00 5C 38  |8..LDA #..BNK.\8|
00003050: E2 18 4C 44 59 20 23 B1  B7 42 4E 4B 00 6B 38 EC  |..LDY #..BNK.k8.|
00003060: 18 53 54 41 20 53 55 42  AA 31 32 00 7A 38 F6 18  |.STA SUB.12.z8..|
00003070: 53 54 59 20 53 55 42 AA  31 33 00 86 38 00 19 4A  |STY SUB.13..8..J|
00003080: 53 52 20 53 55 42 00 93  38 0A 19 4C 44 41 20 B7  |SR SUB..8..LDA .|
00003090: 42 4E 4B 00 9D 38 14 19  B0 41 20 23 33 00 AB 38  |BNK..8...A #3..8|
000030A0: 1E 19 4A 53 52 20 5A 55  42 AA 33 00 CF 38 28 19  |..JSR ZUB.3..8(.|
000030B0: 4C 44 41 20 23 B3 48 4C  50 56 49 44 20 20 20 20  |LDA #.HLPVID    |
000030C0: 3B 43 4F 50 59 20 4F 55  52 20 56 49 44 45 4F 00  |;COPY OUR VIDEO.|
000030D0: F4 38 32 19 4C 44 59 20  23 B1 48 4C 50 56 49 44  |.82.LDY #.HLPVID|
000030E0: 20 20 20 20 3B 20 50 52  45 46 45 52 45 4E 43 45  |    ; PREFERENCE|
000030F0: 53 20 B5 4F 00 13 39 3C  19 53 54 41 20 5A 55 42  |S .O..9<.STA ZUB|
00003100: AA 31 20 20 20 20 20 20  20 3B 20 56 49 43 20 43  |.1       ; VIC C|
00003110: 48 49 50 00 21 39 46 19  53 54 59 20 5A 55 42 AA  |HIP.!9F.STY ZUB.|
00003120: 32 00 31 39 50 19 4C 44  41 20 23 B3 24 44 30 31  |2.19P.LDA #.$D01|
00003130: 31 00 41 39 5A 19 4C 44  59 20 23 B1 24 44 30 31  |1.A9Z.LDY #.$D01|
00003140: 31 00 4F 39 64 19 53 54  41 20 5A 55 42 AA 38 00  |1.O9d.STA ZUB.8.|
00003150: 5D 39 6E 19 53 54 59 20  5A 55 42 AA 39 00 69 39  |]9n.STY ZUB.9.i9|
00003160: 78 19 4C 44 59 20 23 31  36 00 6F 39 82 19 3B 00  |x.LDY #16.o9..;.|
00003170: 7F 39 8C 19 48 45 34 20  4A 53 52 20 5A 55 42 00  |.9..HE4 JSR ZUB.|
00003180: 87 39 96 19 44 45 59 00  93 39 A0 19 42 50 4C 20  |.9..DEY..9..BPL |
00003190: 48 45 34 00 B8 39 AA 19  4C 44 41 20 48 43 55 52  |HE4..9..LDA HCUR|
000031A0: 53 20 20 20 20 20 20 20  3B 4F 55 52 20 54 45 58  |S       ;OUR TEX|
000031B0: 54 20 43 4F 4C 4F 55 52  00 C6 39 B4 19 53 54 41  |T COLOUR..9..STA|
000031C0: 20 24 30 32 38 36 00 CC  39 BE 19 3B 00 F1 39 C8  | $0286..9..;..9.|
000031D0: 19 48 45 35 20 4C 44 41  20 23 B3 48 4C 50 54 58  |.HE5 LDA #.HLPTX|
000031E0: 54 3B 53 54 41 52 54 55  50 20 4D 45 53 53 41 47  |T;STARTUP MESSAG|
000031F0: 45 00 02 3A D2 19 4C 44  59 20 23 B1 48 4C 50 54  |E..:..LDY #.HLPT|
00003200: 58 54 00 10 3A DC 19 4A  53 52 20 50 52 53 54 52  |XT..:..JSR PRSTR|
00003210: 00 2C 3A E6 19 4C 44 41  20 23 31 33 20 20 20 20  |.,:..LDA #13    |
00003220: 20 20 20 20 20 3B 54 57  4F 20 8E 53 00 3B 3A F0  |     ;TWO .S.;:.|
00003230: 19 4A 53 52 20 50 55 54  42 59 54 00 4A 3A FA 19  |.JSR PUTBYT.J:..|
00003240: 4A 53 52 20 50 55 54 42  59 54 00 6F 3A 04 1A 4C  |JSR PUTBYT.o:..L|
00003250: 44 41 20 23 B3 4E 41 4D  45 53 20 20 20 20 20 3B  |DA #.NAMES     ;|
00003260: 41 44 44 52 45 53 53 20  4F 46 20 48 45 4C 50 00  |ADDRESS OF HELP.|
00003270: 92 3A 0E 1A 4C 44 59 20  23 B1 4E 41 4D 45 53 20  |.:..LDY #.NAMES |
00003280: 20 20 20 20 3B 20 A4 50  49 43 20 53 54 52 49 4E  |    ; .PIC STRIN|
00003290: 47 53 00 9C 3A 18 1A 53  54 41 20 33 00 A6 3A 22  |GS..:..STA 3..:"|
000032A0: 1A 53 54 59 20 34 00 C2  3A 2C 1A 4C 44 41 20 23  |.STY 4..:,.LDA #|
000032B0: 30 20 20 20 20 20 20 20  20 20 20 3B A4 50 49 43  |0          ;.PIC|
000032C0: 20 23 00 CC 3A 36 1A 53  54 41 20 32 00 D2 3A 40  | #..:6.STA 2..:@|
000032D0: 1A 3B 00 F4 3A 4A 1A 48  45 36 20 43 4C 43 20 20  |.;..:J.HE6 CLC  |
000032E0: 20 20 20 20 20 20 20 3B  43 91 56 20 A4 50 49 43  |       ;C.V .PIC|
000032F0: 20 23 20 A4 00 13 3B 54  1A 41 44 43 20 23 22 41  | # ...;T.ADC #"A|
00003300: 22 20 20 20 20 20 20 20  20 3B 20 43 48 41 52 20  |"        ; CHAR |
00003310: AF 20 99 00 22 3B 5E 1A  4A 53 52 20 50 55 54 42  |. ..";^.JSR PUTB|
00003320: 59 54 00 3F 3B 68 1A 4C  44 41 20 23 24 32 30 20  |YT.?;h.LDA #$20 |
00003330: 20 20 20 20 20 20 20 3B  99 20 53 50 41 43 45 00  |       ;. SPACE.|
00003340: 4E 3B 72 1A 4A 53 52 20  50 55 54 42 59 54 00 6E  |N;r.JSR PUTBYT.n|
00003350: 3B 7C 1A 4C 44 41 20 33  20 20 20 20 20 20 20 20  |;|.LDA 3        |
00003360: 20 20 20 3B 99 20 A4 50  49 43 20 53 54 52 00 78  |   ;. .PIC STR.x|
00003370: 3B 86 1A 4C 44 59 20 34  00 86 3B 90 1A 4A 53 52  |;..LDY 4..;..JSR|
00003380: 20 50 52 53 54 52 00 8E  3B 9A 1A 43 4C 43 00 B3  | PRSTR..;..CLC..|
00003390: 3B A4 1A 4C 44 41 20 33  20 20 20 20 20 20 20 20  |;..LDA 3        |
000033A0: 20 20 20 3B 43 41 4C 43  20 41 44 44 52 45 53 53  |   ;CALC ADDRESS|
000033B0: 20 4F 46 00 D0 3B AE 1A  41 44 43 20 23 44 45 53  | OF..;..ADC #DES|
000033C0: C3 20 20 20 20 20 3B 20  82 20 53 54 52 49 4E 47  |.     ; . STRING|
000033D0: 00 DA 3B B8 1A 53 54 41  20 33 00 E6 3B C2 1A 42  |..;..STA 3..;..B|
000033E0: 43 43 20 48 45 37 00 F0  3B CC 1A 49 4E 43 20 34  |CC HE7..;..INC 4|
000033F0: 00 F6 3B D6 1A 3B 00 0F  3C E0 1A 48 45 37 20 4C  |..;..;..<..HE7 L|
00003400: 44 41 20 23 31 33 20 20  20 20 20 3B 99 20 8E 00  |DA #13     ;. ..|
00003410: 1E 3C EA 1A 4A 53 52 20  50 55 54 42 59 54 00 28  |.<..JSR PUTBYT.(|
00003420: 3C F4 1A 49 4E 43 20 32  00 32 3C FE 1A 4C 44 41  |<..INC 2.2<..LDA|
00003430: 20 32 00 51 3C 08 1B 43  4D 50 20 4E 54 94 20 20  | 2.Q<..CMP NT.  |
00003440: 20 20 20 20 3B 54 45 53  54 20 41 4C 4C 20 99 45  |    ;TEST ALL .E|
00003450: 44 00 6A 3C 12 1B 42 4E  45 20 48 45 36 20 20 20  |D.j<..BNE HE6   |
00003460: 20 20 20 20 20 20 3B 20  4E 4F 00 70 3C 1C 1B 3B  |      ; NO.p<..;|
00003470: 00 93 3C 26 1B 48 45 38  20 4A 53 52 20 4B 45 59  |..<&.HE8 JSR KEY|
00003480: 43 48 4B 20 20 3B A1 20  41 20 43 48 41 52 41 43  |CHK  ;. A CHARAC|
00003490: 54 45 52 00 B8 3C 30 1B  43 50 59 20 23 32 20 20  |TER..<0.CPY #2  |
000034A0: 20 20 20 20 20 20 20 20  3B 54 45 53 54 20 BC 4F  |        ;TEST .O|
000034B0: 20 50 52 45 53 53 45 44  00 D2 3C 3A 1B 42 45 51  | PRESSED..<:.BEQ|
000034C0: 20 48 45 39 20 20 20 20  20 20 20 20 20 3B 20 59  | HE9         ; Y|
000034D0: 45 53 00 F3 3C 44 1B 54  41 58 20 20 20 20 20 20  |ES..<D.TAX      |
000034E0: 20 20 20 20 20 20 20 3B  94 20 43 48 41 52 41 43  |       ;. CHARAC|
000034F0: 54 45 52 00 17 3D 4E 1B  53 45 43 20 20 20 20 20  |TER..=N.SEC     |
00003500: 20 20 20 20 20 20 20 20  3B 43 91 56 20 4B 45 59  |        ;C.V KEY|
00003510: 50 52 45 53 53 20 A4 00  39 3D 58 1B 53 42 43 20  |PRESS ..9=X.SBC |
00003520: 23 22 41 22 20 20 20 20  20 20 20 20 3B 20 48 45  |#"A"        ; HE|
00003530: 4C 50 20 A4 50 49 43 20  23 00 55 3D 62 1B 42 43  |LP .PIC #.U=b.BC|
00003540: 43 20 48 45 38 20 20 20  20 20 20 20 20 20 3B 20  |C HE8         ; |
00003550: 49 4E C5 49 44 00 61 3D  6C 1B 43 4D 50 20 4E 54  |IN.ID.a=l.CMP NT|
00003560: 94 00 7D 3D 76 1B 42 43  53 20 48 45 38 20 20 20  |..}=v.BCS HE8   |
00003570: 20 20 20 20 20 20 3B 20  49 4E C5 49 44 00 A0 3D  |      ; IN.ID..=|
00003580: 80 1B 54 58 41 20 20 20  20 20 20 20 20 20 20 20  |..TXA           |
00003590: 20 20 3B 52 45 54 52 49  45 56 45 20 43 48 41 52  |  ;RETRIEVE CHAR|
000035A0: 00 C0 3D 8A 1B 4A 53 52  20 50 52 54 46 49 4C 20  |..=..JSR PRTFIL |
000035B0: 20 20 20 20 20 3B 99 20  54 48 45 20 46 49 4C 45  |     ;. THE FILE|
000035C0: 00 DE 3D 94 1B 4A 4D 50  20 48 45 35 20 20 20 20  |..=..JMP HE5    |
000035D0: 20 20 20 20 20 3B 52 45  99 20 4D 45 4E 55 00 E4  |     ;RE. MENU..|
000035E0: 3D 9E 1B 3B 00 02 3E A8  1B 48 45 39 20 4C 44 41  |=..;..>..HE9 LDA|
000035F0: 20 23 B3 56 49 44 42 55  46 3B 8C 20 55 53 45 52  | #.VIDBUF;. USER|
00003600: 27 53 00 1E 3E B2 1B 4C  44 59 20 23 B1 56 49 44  |'S..>..LDY #.VID|
00003610: 42 55 46 20 20 20 20 3B  20 56 49 44 45 4F 00 2C  |BUF    ; VIDEO.,|
00003620: 3E BC 1B 53 54 41 20 5A  55 42 AA 31 00 3A 3E C6  |>..STA ZUB.1.:>.|
00003630: 1B 53 54 59 20 5A 55 42  AA 32 00 4A 3E D0 1B 4C  |.STY ZUB.2.J>..L|
00003640: 44 41 20 23 B3 24 44 30  31 31 00 5A 3E DA 1B 4C  |DA #.$D011.Z>..L|
00003650: 44 59 20 23 B1 24 44 30  31 31 00 68 3E E4 1B 53  |DY #.$D011.h>..S|
00003660: 54 41 20 5A 55 42 AA 38  00 76 3E EE 1B 53 54 59  |TA ZUB.8.v>..STY|
00003670: 20 5A 55 42 AA 39 00 82  3E F8 1B 4C 44 59 20 23  | ZUB.9..>..LDY #|
00003680: 31 36 00 88 3E 02 1C 3B  00 99 3E 0C 1C 48 45 31  |16..>..;..>..HE1|
00003690: 30 20 4A 53 52 20 5A 55  42 00 A1 3E 16 1C 44 45  |0 JSR ZUB..>..DE|
000036A0: 59 00 AE 3E 20 1C 42 50  4C 20 48 45 31 30 00 D3  |Y..> .BPL HE10..|
000036B0: 3E 2A 1C 49 4E 59 20 20  20 20 20 20 20 20 20 20  |>*.INY          |
000036C0: 20 20 20 3B 43 4F 50 59  20 46 52 4F 4D 20 44 AB  |   ;COPY FROM D.|
000036D0: 52 41 4D 00 F7 3E 34 1C  53 54 59 20 5A 55 42 AA  |RAM..>4.STY ZUB.|
000036E0: 31 20 20 20 20 20 20 20  3B 20 28 24 44 37 30 30  |1       ; ($D700|
000036F0: AB 24 44 41 46 46 29 00  1A 3F 3E 1C 53 54 59 20  |.$DAFF)..?>.STY |
00003700: 5A 55 42 AA 38 20 20 20  20 20 20 20 3B 20 A4 20  |ZUB.8       ; . |
00003710: 43 4F 4C 4F 55 52 20 52  41 4D 00 3E 3F 48 1C 4C  |COLOUR RAM.>?H.L|
00003720: 44 58 20 23 24 44 36 20  20 20 20 20 20 20 20 3B  |DX #$D6        ;|
00003730: 20 28 24 44 38 30 30 AB  24 44 42 46 46 29 00 4C  | ($D800.$DBFF).L|
00003740: 3F 52 1C 53 54 58 20 5A  55 42 AA 32 00 59 3F 5C  |?R.STX ZUB.2.Y?\|
00003750: 1C 4C 44 58 20 23 24 44  38 00 67 3F 66 1C 53 54  |.LDX #$D8.g?f.ST|
00003760: 58 20 5A 55 42 AA 39 00  72 3F 70 1C 4C 44 41 20  |X ZUB.9.r?p.LDA |
00003770: 23 34 00 7C 3F 7A 1C 53  54 41 20 32 00 82 3F 84  |#4.|?z.STA 2..?.|
00003780: 1C 3B 00 93 3F 8E 1C 48  45 31 31 20 4A 53 52 20  |.;..?..HE11 JSR |
00003790: 5A 55 42 00 9B 3F 98 1C  44 45 59 00 A8 3F A2 1C  |ZUB..?..DEY..?..|
000037A0: 42 4E 45 20 48 45 31 31  00 B2 3F AC 1C 44 45 43  |BNE HE11..?..DEC|
000037B0: 20 32 00 BF 3F B6 1C 42  4E 45 20 48 45 31 31 00  | 2..?..BNE HE11.|
000037C0: CC 3F C0 1C 4C 44 41 20  B7 54 58 54 00 D9 3F CA  |.?..LDA .TXT..?.|
000037D0: 1C 4C 44 59 20 B7 43 4F  4C 00 E6 3F D4 1C 4C 44  |.LDY .COL..?..LD|
000037E0: 58 20 B7 53 43 52 00 F4  3F DE 1C 53 54 41 20 24  |X .SCR..?..STA $|
000037F0: 30 32 38 36 00 02 40 E8  1C 53 54 59 20 24 30 32  |0286..@..STY $02|
00003800: 38 37 00 10 40 F2 1C 53  54 58 20 24 30 32 38 38  |87..@..STX $0288|
00003810: 00 1F 40 FC 1C 4C 44 41  20 23 B3 B7 42 4E 4B 00  |..@..LDA #..BNK.|
00003820: 2E 40 06 1D 4C 44 59 20  23 B1 B7 42 4E 4B 00 3C  |.@..LDY #..BNK.<|
00003830: 40 10 1D 53 54 41 20 5A  55 42 AA 31 00 4A 40 1A  |@..STA ZUB.1.J@.|
00003840: 1D 53 54 59 20 5A 55 42  AA 32 00 5A 40 24 1D 4C  |.STY ZUB.2.Z@$.L|
00003850: 44 41 20 23 B3 24 44 44  30 30 00 6A 40 2E 1D 4C  |DA #.$DD00.j@..L|
00003860: 44 59 20 23 B1 24 44 44  30 30 00 78 40 38 1D 53  |DY #.$DD00.x@8.S|
00003870: 54 41 20 5A 55 42 AA 38  00 86 40 42 1D 53 54 59  |TA ZUB.8..@B.STY|
00003880: 20 5A 55 42 AA 39 00 92  40 4C 1D 4A 53 52 20 5A  | ZUB.9..@L.JSR Z|
00003890: 55 42 00 B3 40 56 1D 4C  44 58 20 53 54 4B 53 41  |UB..@V.LDX STKSA|
000038A0: 56 20 20 20 20 20 20 3B  8C 20 53 54 41 43 4B 20  |V      ;. STACK |
000038B0: 50 54 52 00 BB 40 60 1D  54 58 53 00 DF 40 6A 1D  |PTR..@`.TXS..@j.|
000038C0: 4C 44 58 20 23 33 20 20  20 20 20 20 20 20 20 20  |LDX #3          |
000038D0: 3B 94 20 34 20 30 AB 50  47 20 42 59 54 45 53 00  |;. 4 0.PG BYTES.|
000038E0: E5 40 74 1D 3B 00 FB 40  7E 1D 48 45 31 31 41 20  |.@t.;..@~.HE11A |
000038F0: 4C 44 41 20 24 44 30 32  32 2C 58 00 0B 41 88 1D  |LDA $D022,X..A..|
00003900: 53 54 41 20 24 30 37 46  38 2C 58 00 13 41 92 1D  |STA $07F8,X..A..|
00003910: 44 45 58 00 21 41 9C 1D  42 50 4C 20 48 45 31 31  |DEX.!A..BPL HE11|
00003920: 41 00 42 41 A6 1D 4C 44  41 20 23 24 44 30 20 20  |A.BA..LDA #$D0  |
00003930: 20 20 20 20 20 20 3B 8C  20 33 20 50 47 53 20 4C  |      ;. 3 PGS L|
00003940: 4F 57 00 67 41 B0 1D 53  54 41 20 24 44 30 32 33  |OW.gA..STA $D023|
00003950: 20 20 20 20 20 20 20 3B  20 52 41 4D 20 46 52 4F  |       ; RAM FRO|
00003960: 4D 20 24 44 30 30 30 00  8C 41 BA 1D 4C 44 59 20  |M $D000..A..LDY |
00003970: 23 30 20 20 20 20 20 20  20 20 20 20 3B 20 28 44  |#0          ; (D|
00003980: 4F 55 42 4C 49 4E 47 20  56 45 43 53 00 B0 41 C4  |OUBLING VECS..A.|
00003990: 1D 53 54 59 20 24 44 30  32 32 20 20 20 20 20 20  |.STY $D022      |
000039A0: 20 3B 20 20 24 32 32 20  AB 20 24 32 35 20 49 4E  | ;  $22 . $25 IN|
000039B0: 00 D4 41 CE 1D 53 54 59  20 24 44 30 32 34 20 20  |..A..STY $D024  |
000039C0: 20 20 20 20 20 3B 20 20  44 AB 52 41 4D 20 49 4D  |     ;  D.RAM IM|
000039D0: 41 47 45 29 00 E2 41 D8  1D 53 54 59 20 24 44 30  |AGE)..A..STY $D0|
000039E0: 32 35 00 ED 41 E2 1D 4C  44 58 20 23 32 00 FB 41  |25..A..LDX #2..A|
000039F0: EC 1D 42 4E 45 20 58 43  4F 50 59 00 01 42 F6 1D  |..BNE XCOPY..B..|
00003A00: 3B 00 28 42 00 1E 48 45  31 32 20 4C 44 58 20 23  |;.(B..HE12 LDX #|
00003A10: 33 20 20 20 20 20 3B 50  55 54 20 5A 50 20 42 59  |3     ;PUT ZP BY|
00003A20: 54 45 53 20 42 41 43 4B  00 3D 42 0A 1E 48 45 31  |TES BACK.=B..HE1|
00003A30: 34 20 4C 44 41 20 24 30  37 46 38 2C 58 00 4B 42  |4 LDA $07F8,X.KB|
00003A40: 14 1E 53 54 41 20 24 32  32 2C 58 00 53 42 1E 1E  |..STA $22,X.SB..|
00003A50: 44 45 58 00 60 42 28 1E  42 50 4C 20 48 45 31 34  |DEX.`B(.BPL HE14|
00003A60: 00 81 42 32 1E 4C 44 59  20 23 34 20 20 20 20 20  |..B2.LDY #4     |
00003A70: 20 20 20 20 20 3B 8C 20  24 34 30 30 AB 24 37 46  |     ;. $400.$7F|
00003A80: 46 00 A8 42 3C 1E 4C 44  41 20 23 24 44 32 20 20  |F..B<.LDA #$D2  |
00003A90: 20 20 20 20 20 20 3B 20  46 52 4F 4D 20 24 44 32  |      ; FROM $D2|
00003AA0: 30 30 AB 24 44 35 46 46  00 B3 42 46 1E 4C 44 58  |00.$D5FF..BF.LDX|
00003AB0: 20 23 34 00 C0 42 50 1E  4A 53 52 20 43 4F 50 59  | #4..BP.JSR COPY|
00003AC0: 00 E6 42 5A 1E 4A 53 52  20 56 45 43 53 45 54 20  |..BZ.JSR VECSET |
00003AD0: 20 20 20 20 20 3B 53 45  54 20 55 50 20 4F 55 52  |     ;SET UP OUR|
00003AE0: 20 56 45 43 A4 52 00 08  43 64 1E 48 45 31 35 20  | VEC.R..Cd.HE15 |
00003AF0: 4A 4D 50 20 28 4F 4A 4D  50 29 20 3B 45 58 49 54  |JMP (OJMP) ;EXIT|
00003B00: 20 56 49 41 20 52 4F 4D  00 0E 43 6E 1E 3B 00 14  | VIA ROM..Cn.;..|
00003B10: 43 78 1E 3B 00 37 43 82  1E 3B 54 48 45 20 82 20  |Cx.;.7C..;THE . |
00003B20: 52 4F 55 54 49 4E 45 20  43 4F 50 49 45 53 20 50  |ROUTINE COPIES P|
00003B30: 41 47 45 53 20 4F 46 00  5D 43 8C 1E 3B 4D 45 4D  |AGES OF.]C..;MEM|
00003B40: B0 59 2E 20 45 4E 54 45  52 20 57 49 54 48 20 53  |.Y. ENTER WITH S|
00003B50: 4F 55 52 43 45 20 50 41  47 45 20 49 4E 00 82 43  |OURCE PAGE IN..C|
00003B60: 96 1E 3B 2E 41 2C 20 54  41 52 A1 20 50 41 47 45  |..;.A, TAR. PAGE|
00003B70: 20 49 4E 20 2E 59 2C 20  23 20 4F 46 20 50 41 47  | IN .Y, # OF PAG|
00003B80: 45 53 00 A3 43 A0 1E 3B  A4 20 43 4F 50 59 20 49  |ES..C..;. COPY I|
00003B90: 4E 20 2E 58 2E 20 27 43  4F 50 59 27 20 49 53 20  |N .X. 'COPY' IS |
00003BA0: 54 48 45 00 C3 43 AA 1E  3B 4E B0 4D 41 4C 20 56  |THE..C..;N.MAL V|
00003BB0: 45 52 53 49 91 3B 20 27  58 43 4F 50 59 27 20 49  |ERSI.; 'XCOPY' I|
00003BC0: 53 20 41 00 E5 43 B4 1E  3B 4B 4C 55 44 47 45 20  |S A..C..;KLUDGE |
00003BD0: A4 20 41 56 4F 49 44 20  55 BF 47 20 54 48 45 20  |. AVOID U.G THE |
00003BE0: 53 54 41 43 4B 00 06 44  BE 1E 3B 43 4F 50 59 49  |STACK..D..;COPYI|
00003BF0: 4E 47 20 B5 4F 20 50 41  47 45 20 31 20 4F 46 20  |NG .O PAGE 1 OF |
00003C00: 4D 45 4D B0 59 2E 00 0C  44 C8 1E 3B 00 12 44 D2  |MEM.Y...D..;..D.|
00003C10: 1E 3B 00 1F 44 DC 1E 58  43 4F 50 59 20 B2 AC 00  |.;..D..XCOPY ...|
00003C20: 43 44 E6 1E 3B 43 4F 50  59 20 4D 45 4D B0 59 2C  |CD..;COPY MEM.Y,|
00003C30: 20 42 52 41 4E 43 48 20  42 41 43 4B 20 A4 20 48  | BRANCH BACK . H|
00003C40: 45 31 32 00 4B 44 F0 1E  53 45 43 00 71 44 FA 1E  |E12.KD..SEC.qD..|
00003C50: 2E 42 59 54 45 20 24 32  34 20 20 20 20 20 20 20  |.BYTE $24       |
00003C60: 3B 27 42 49 54 27 20 28  53 4B 49 50 20 43 4C 43  |;'BIT' (SKIP CLC|
00003C70: 29 00 77 44 04 1F 3B 00  83 44 0E 1F 43 4F 50 59  |).wD..;..D..COPY|
00003C80: 20 B2 AC 00 9E 44 18 1F  3B 43 4F 50 59 20 4D 45  | ....D..;COPY ME|
00003C90: 4D B0 59 2C 20 8E 20 56  49 41 20 52 54 53 00 A6  |M.Y, . VIA RTS..|
00003CA0: 44 22 1F 43 4C 43 00 C5  44 2C 1F 53 54 41 20 24  |D".CLC..D,.STA $|
00003CB0: 32 33 20 20 20 20 20 20  20 20 20 3B 53 4F 55 52  |23         ;SOUR|
00003CC0: 43 45 20 48 49 00 E2 44  36 1F 53 54 59 20 24 32  |CE HI..D6.STY $2|
00003CD0: 35 20 20 20 20 20 20 20  20 20 3B 54 41 52 A1 20  |5         ;TAR. |
00003CE0: 48 49 00 ED 44 40 1F 4C  44 59 20 23 30 00 0C 45  |HI..D@.LDY #0..E|
00003CF0: 4A 1F 53 54 59 20 24 32  32 20 20 20 20 20 20 20  |J.STY $22       |
00003D00: 20 20 3B 53 4F 55 52 43  45 20 4C 4F 00 29 45 54  |  ;SOURCE LO.)ET|
00003D10: 1F 53 54 59 20 24 32 34  20 20 20 20 20 20 20 20  |.STY $24        |
00003D20: 20 3B 54 41 52 A1 20 4C  4F 00 3D 45 5E 1F 43 50  | ;TAR. LO.=E^.CP|
00003D30: 31 20 4C 44 41 20 28 24  32 32 29 2C 59 00 4D 45  |1 LDA ($22),Y.ME|
00003D40: 68 1F 53 54 41 20 28 24  32 34 29 2C 59 00 55 45  |h.STA ($24),Y.UE|
00003D50: 72 1F 49 4E 59 00 61 45  7C 1F 42 4E 45 20 43 50  |r.INY.aE|.BNE CP|
00003D60: 31 00 6D 45 86 1F 49 4E  43 20 24 32 33 00 79 45  |1.mE..INC $23.yE|
00003D70: 90 1F 49 4E 43 20 24 32  35 00 9B 45 9A 1F 44 45  |..INC $25..E..DE|
00003D80: 58 20 20 20 20 20 20 20  20 20 20 20 20 20 3B 50  |X             ;P|
00003D90: 41 47 45 20 43 4F 55 4E  54 45 52 00 A7 45 A4 1F  |AGE COUNTER..E..|
00003DA0: 42 4E 45 20 43 50 31 00  C9 45 AE 1F 42 43 53 20  |BNE CP1..E..BCS |
00003DB0: 48 45 31 32 20 20 20 20  20 20 20 20 3B 58 43 4F  |HE12        ;XCO|
00003DC0: 50 59 20 45 53 43 41 50  45 00 D1 45 B8 1F 52 54  |PY ESCAPE..E..RT|
00003DD0: 53 00 D7 45 C2 1F 3B 00  DD 45 CC 1F 3B 00 EB 45  |S..E..;..E..;..E|
00003DE0: D6 1F 50 52 54 46 49 4C  20 B2 AC 00 FE 45 E0 1F  |..PRTFIL ....E..|
00003DF0: 3B 99 20 41 20 48 45 4C  50 20 46 49 4C 45 00 1E  |;. A HELP FILE..|
00003E00: 46 EA 1F 4A 53 52 20 4F  50 4E 46 49 4C 20 20 20  |F..JSR OPNFIL   |
00003E10: 20 20 20 3B 9F 20 54 48  45 20 46 49 4C 45 00 24  |   ;. THE FILE.$|
00003E20: 46 F4 1F 3B 00 46 46 FE  1F 50 52 54 31 20 4C 44  |F..;.FF..PRT1 LD|
00003E30: 41 20 23 24 39 33 20 20  20 3B 43 4C 45 41 52 20  |A #$93   ;CLEAR |
00003E40: 53 43 52 45 45 4E 00 55  46 08 20 4A 53 52 20 50  |SCREEN.UF. JSR P|
00003E50: 55 54 42 59 54 00 7A 46  12 20 4C 44 41 20 23 32  |UTBYT.zF. LDA #2|
00003E60: 33 20 20 20 20 20 20 20  20 20 3B 49 4E 49 54 20  |3         ;INIT |
00003E70: 4C 49 4E 45 20 43 4F 55  4E 54 00 89 46 1C 20 53  |LINE COUNT..F. S|
00003E80: 54 41 20 4C 49 4E 43 4E  54 00 8F 46 26 20 3B 00  |TA LINCNT..F& ;.|
00003E90: B6 46 30 20 50 52 54 32  20 4C 44 41 20 23 34 30  |.F0 PRT2 LDA #40|
00003EA0: 20 20 20 20 3B 49 4E 49  54 20 43 4F 4C 55 4D 4E  |    ;INIT COLUMN|
00003EB0: 20 43 4F 55 4E 54 00 C5  46 3A 20 53 54 41 20 43  | COUNT..F: STA C|
00003EC0: 4F 4C 43 4E 54 00 CB 46  44 20 3B 00 EA 46 4E 20  |OLCNT..FD ;..FN |
00003ED0: 50 52 54 33 20 4A 53 52  20 A1 42 59 54 20 3B A1  |PRT3 JSR .BYT ;.|
00003EE0: 20 44 49 53 4B 20 42 59  54 45 00 04 47 58 20 4A  | DISK BYTE..GX J|
00003EF0: 53 52 20 50 55 54 42 59  54 20 20 20 20 20 20 3B  |SR PUTBYT      ;|
00003F00: 99 20 49 54 00 25 47 62  20 4C 44 58 20 24 39 30  |. IT.%Gb LDX $90|
00003F10: 20 20 20 20 20 20 20 20  20 3B 54 45 53 54 20 53  |         ;TEST S|
00003F20: 54 41 54 55 53 00 3F 47  6C 20 42 4E 45 20 50 52  |TATUS.?Gl BNE PR|
00003F30: 54 36 20 20 20 20 20 20  20 20 3B 20 45 4F 46 00  |T6        ; EOF.|
00003F40: 5C 47 76 20 43 4D 50 20  23 31 33 20 20 20 20 20  |\Gv CMP #13     |
00003F50: 20 20 20 20 3B 54 45 53  54 20 43 52 00 76 47 80  |    ;TEST CR.vG.|
00003F60: 20 42 45 51 20 50 52 54  34 20 20 20 20 20 20 20  | BEQ PRT4       |
00003F70: 20 3B 20 59 45 53 00 9A  47 8A 20 44 45 43 20 43  | ; YES..G. DEC C|
00003F80: 4F 4C 43 4E 54 20 20 20  20 20 20 3B 54 45 53 54  |OLCNT      ;TEST|
00003F90: 20 80 20 4F 46 20 4C 49  4E 45 00 B3 47 94 20 42  | . OF LINE..G. B|
00003FA0: 4E 45 20 50 52 54 33 20  20 20 20 20 20 20 20 3B  |NE PRT3        ;|
00003FB0: 20 4E 4F 00 B9 47 9E 20  3B 00 DD 47 A8 20 50 52  | NO..G. ;..G. PR|
00003FC0: 54 34 20 44 45 43 20 4C  49 4E 43 4E 54 20 3B 54  |T4 DEC LINCNT ;T|
00003FD0: 45 53 54 20 80 20 4F 46  20 50 41 47 45 00 F6 47  |EST . OF PAGE..G|
00003FE0: B2 20 42 4E 45 20 50 52  54 32 20 20 20 20 20 20  |. BNE PRT2      |
00003FF0: 20 20 3B 20 4E 4F 00 19  48 BC 20 4A 53 52 20 53  |  ; NO..H. JSR S|
00004000: 50 43 53 54 52 20 20 20  20 20 20 3B 27 53 50 43  |PCSTR      ;'SPC|
00004010: 20 A4 20 9A 49 4E 55 45  27 00 3A 48 C6 20 4C 44  | . .INUE'.:H. LD|
00004020: 41 20 23 B3 48 54 31 20  20 20 20 20 20 20 3B 27  |A #.HT1       ;'|
00004030: BC 4F 20 A4 20 45 58 49  54 27 00 48 48 D0 20 4C  |.O . EXIT'.HH. L|
00004040: 44 59 20 23 B1 48 54 31  00 56 48 DA 20 4A 53 52  |DY #.HT1.VH. JSR|
00004050: 20 50 52 53 54 52 00 5C  48 E4 20 3B 00 79 48 EE  | PRSTR.\H. ;.yH.|
00004060: 20 50 52 54 35 20 4A 53  52 20 4B 45 59 43 48 4B  | PRT5 JSR KEYCHK|
00004070: 20 3B A1 20 41 20 4B 45  59 00 9E 48 F8 20 43 50  | ;. A KEY..H. CP|
00004080: 59 20 23 32 20 20 20 20  20 20 20 20 20 20 3B 54  |Y #2          ;T|
00004090: 45 53 54 20 BC 4F 20 50  52 45 53 53 45 44 00 B8  |EST .O PRESSED..|
000040A0: 48 02 21 42 45 51 20 50  52 54 38 20 20 20 20 20  |H.!BEQ PRT8     |
000040B0: 20 20 20 3B 20 59 45 53  00 DE 48 0C 21 43 4D 50  |   ; YES..H.!CMP|
000040C0: 20 23 24 32 30 20 20 20  20 20 20 20 20 3B 54 45  | #$20        ;TE|
000040D0: 53 54 20 53 50 43 20 50  52 45 53 53 45 44 00 F7  |ST SPC PRESSED..|
000040E0: 48 16 21 42 4E 45 20 50  52 54 35 20 20 20 20 20  |H.!BNE PRT5     |
000040F0: 20 20 20 3B 20 4E 4F 00  11 49 20 21 42 45 51 20  |   ; NO..I !BEQ |
00004100: 50 52 54 31 20 20 20 20  20 20 20 20 3B 20 59 45  |PRT1        ; YE|
00004110: 53 00 17 49 2A 21 3B 00  3A 49 34 21 50 52 54 36  |S..I*!;.:I4!PRT6|
00004120: 20 4A 53 52 20 53 50 43  53 54 52 20 3B 27 53 50  | JSR SPCSTR ;'SP|
00004130: 43 20 A4 20 9A 49 4E 55  45 27 00 40 49 3E 21 3B  |C . .INUE'.@I>!;|
00004140: 00 5D 49 48 21 50 52 54  37 20 4A 53 52 20 4B 45  |.]IH!PRT7 JSR KE|
00004150: 59 43 48 4B 20 3B A1 20  41 20 4B 45 59 00 83 49  |YCHK ;. A KEY..I|
00004160: 52 21 43 4D 50 20 23 24  32 30 20 20 20 20 20 20  |R!CMP #$20      |
00004170: 20 20 3B 54 45 53 54 20  53 50 43 20 50 52 45 53  |  ;TEST SPC PRES|
00004180: 53 45 44 00 9C 49 5C 21  42 4E 45 20 50 52 54 37  |SED..I\!BNE PRT7|
00004190: 20 20 20 20 20 20 20 20  3B 20 4E 4F 00 A2 49 66  |        ; NO..If|
000041A0: 21 3B 00 C0 49 70 21 50  52 54 38 20 4A 4D 50 20  |!;..Ip!PRT8 JMP |
000041B0: 43 4C 53 46 49 4C 20 3B  A0 20 AF 20 45 58 49 54  |CLSFIL ;. . EXIT|
000041C0: 00 C6 49 7A 21 3B 00 CC  49 84 21 3B 00 DA 49 8E  |..Iz!;..I.!;..I.|
000041D0: 21 53 50 43 53 54 52 20  B2 AC 00 F7 49 98 21 3B  |!SPCSTR ....I.!;|
000041E0: 99 20 27 50 52 45 53 53  20 53 50 41 43 45 20 A4  |. 'PRESS SPACE .|
000041F0: 20 9A 49 4E 55 45 27 00  08 4A A2 21 4C 44 41 20  | .INUE'..J.!LDA |
00004200: 23 B3 53 50 43 54 58 54  00 19 4A AC 21 4C 44 59  |#.SPCTXT..J.!LDY|
00004210: 20 23 B1 53 50 43 54 58  54 00 1F 4A B6 21 3B 00  | #.SPCTXT..J.!;.|
00004220: 2C 4A C0 21 50 52 53 54  52 20 B2 AC 00 4D 4A CA  |,J.!PRSTR ...MJ.|
00004230: 21 3B 99 20 53 54 52 49  4E 47 20 41 44 44 52 45  |!;. STRING ADDRE|
00004240: 53 53 45 44 20 49 4E 20  2E 41 AD 2E 59 00 59 4A  |SSED IN .A..Y.YJ|
00004250: D4 21 53 54 41 20 24 32  32 00 65 4A DE 21 53 54  |.!STA $22.eJ.!ST|
00004260: 59 20 24 32 33 00 70 4A  E8 21 4C 44 59 20 23 30  |Y $23.pJ.!LDY #0|
00004270: 00 76 4A F2 21 3B 00 8B  4A FC 21 50 52 53 31 20  |.vJ.!;..J.!PRS1 |
00004280: 4C 44 41 20 28 24 32 32  29 2C 59 00 98 4A 06 22  |LDA ($22),Y..J."|
00004290: 42 45 51 20 50 52 53 32  00 B9 4A 10 22 4A 53 52  |BEQ PRS2..J."JSR|
000042A0: 20 50 55 54 42 59 54 20  20 20 20 20 20 3B 99 20  | PUTBYT      ;. |
000042B0: 43 48 41 52 41 43 54 45  52 00 C1 4A 1A 22 49 4E  |CHARACTER..J."IN|
000042C0: 59 00 CE 4A 24 22 42 4E  45 20 50 52 53 31 00 D4  |Y..J$"BNE PRS1..|
000042D0: 4A 2E 22 3B 00 E1 4A 38  22 50 52 53 32 20 52 54  |J.";..J8"PRS2 RT|
000042E0: 53 00 E7 4A 42 22 3B 00  ED 4A 4C 22 3B 00 07 4B  |S..JB";..JL";..K|
000042F0: 56 22 3B 4D 45 53 53 41  47 45 53 20 AB 20 4E 4F  |V";MESSAGES . NO|
00004300: 20 52 4F 4F 4D 20 81 00  23 4B 60 22 3B 41 4E 59  | ROOM ..#K`";ANY|
00004310: 54 48 49 4E 47 20 A4 4F  20 46 41 4E 43 59 20 48  |THING .O FANCY H|
00004320: 45 52 45 00 29 4B 6A 22  3B 00 2F 4B 74 22 3B 00  |ERE.)Kj";./Kt";.|
00004330: 3D 4B 7E 22 48 4C 50 54  58 54 20 B2 AC 00 50 4B  |=K~"HLPTXT ...PK|
00004340: 88 22 2E 42 59 54 45 20  31 33 2C 38 2C 31 34 37  |.".BYTE 13,8,147|
00004350: 00 66 4B 92 22 2E C6 20  20 22 C8 45 4C 50 21 20  |.fK."..  ".ELP! |
00004360: C8 45 4C 50 21 22 00 79  4B 9C 22 2E 42 59 54 45  |.ELP!".yK.".BYTE|
00004370: 20 31 33 2C 31 33 2C 31  38 00 92 4B A6 22 2E C6  | 13,13,18..K."..|
00004380: 20 20 22 D3 45 4C 45 43  54 20 41 20 54 4F 50 49  |  ".ELECT A TOPI|
00004390: 43 22 00 98 4B B0 22 3B  00 BA 4B BA 22 3B 82 20  |C"..K.";..K.";. |
000043A0: 4D 53 47 20 49 53 20 50  41 52 54 20 4F 46 20 48  |MSG IS PART OF H|
000043B0: 4C 50 54 58 54 2C 20 42  55 54 00 E0 4B C4 22 3B  |LPTXT, BUT..K.";|
000043C0: 43 41 4E 20 41 4C 53 4F  20 42 45 20 41 44 44 52  |CAN ALSO BE ADDR|
000043D0: 45 53 53 45 44 20 53 45  50 41 52 41 54 45 4C 59  |ESSED SEPARATELY|
000043E0: 00 E6 4B CE 22 3B 00 F1  4B D8 22 48 54 31 20 B2  |..K.";..K."HT1 .|
000043F0: AC 00 FE 4B E2 22 2E 42  59 54 45 20 31 38 00 1C  |...K.".BYTE 18..|
00004400: 4C EC 22 2E C6 20 20 22  20 28 CC CF C7 CF 20 4B  |L."..  " (.... K|
00004410: 45 59 20 54 4F 20 45 58  49 54 29 22 00 2C 4C F6  |EY TO EXIT)".,L.|
00004420: 22 2E 42 59 54 45 20 31  34 36 2C 30 00 32 4C 00  |".BYTE 146,0.2L.|
00004430: 23 3B 00 40 4C 0A 23 53  50 43 54 58 54 20 B2 AC  |#;.@L.#SPCTXT ..|
00004440: 00 50 4C 14 23 2E 42 59  54 45 20 31 33 2C 31 38  |.PL.#.BYTE 13,18|
00004450: 00 6C 4C 1E 23 2E C6 20  20 22 D3 D0 C1 C3 C5 20  |.lL.#..  "..... |
00004460: 54 4F 20 43 4F 4E 54 49  4E 55 45 22 00 7C 4C 28  |TO CONTINUE".|L(|
00004470: 23 2E 42 59 54 45 20 31  34 36 2C 30 00 82 4C 32  |#.BYTE 146,0..L2|
00004480: 23 3B 00 88 4C 3C 23 3B  00 A2 4C 46 23 3B 55 4E  |#;..L<#;..LF#;UN|
00004490: 49 4E 49 54 49 41 4C 49  5A 45 44 20 83 20 41 52  |INITIALIZED . AR|
000044A0: 45 41 00 A8 4C 50 23 3B  00 AE 4C 5A 23 3B 00 D1  |EA..LP#;..LZ#;..|
000044B0: 4C 64 23 53 54 4B 53 41  56 20 2E 42 59 54 45 20  |Ld#STKSAV .BYTE |
000044C0: 30 20 20 3B 4F 4C 44 20  53 54 41 43 4B 20 50 54  |0  ;OLD STACK PT|
000044D0: 52 00 F5 4C 6E 23 4C 49  4E 43 4E 54 20 2E 42 59  |R..Ln#LINCNT .BY|
000044E0: 54 45 20 30 20 20 3B 4C  49 4E 45 53 20 50 45 52  |TE 0  ;LINES PER|
000044F0: 20 50 41 47 45 00 19 4D  78 23 43 4F 4C 43 4E 54  | PAGE..Mx#COLCNT|
00004500: 20 2E 42 59 54 45 20 30  20 20 3B 43 48 41 52 53  | .BYTE 0  ;CHARS|
00004510: 20 50 45 52 20 4C 49 4E  45 00 3B 4D 82 23 46 49  | PER LINE.;M.#FI|
00004520: 4C 45 20 20 20 2E 42 59  54 45 20 32 20 20 3B BC  |LE   .BYTE 2  ;.|
00004530: 49 43 41 4C 20 46 49 4C  45 20 23 00 61 4D 8C 23  |ICAL FILE #.aM.#|
00004540: 53 45 43 41 44 44 20 2E  42 59 54 45 20 32 20 20  |SECADD .BYTE 2  |
00004550: 3B 53 45 43 91 44 41 52  59 20 41 44 44 52 45 53  |;SEC.DARY ADDRES|
00004560: 53 00 67 4D 96 23 3B 00  89 4D A0 23 56 49 44 42  |S.gM.#;..M.#VIDB|
00004570: 55 46 20 AC B2 AC AA 31  37 20 20 20 3B 56 49 44  |UF ....17   ;VID|
00004580: 45 4F 20 94 20 41 52 45  41 00 8F 4D AA 23 3B 00  |EO . AREA..M.#;.|
00004590: 95 4D B4 23 3B 00 B7 4D  BE 23 3B 41 20 57 48 4F  |.M.#;..M.#;A WHO|
000045A0: 4C 45 20 42 55 4E 43 48  20 4F 46 20 45 4D 50 54  |LE BUNCH OF EMPT|
000045B0: 59 20 42 59 54 45 53 00  D4 4D C8 23 3B 81 20 54  |Y BYTES..M.#;. T|
000045C0: 48 45 20 48 45 4C 50 20  A4 50 49 43 20 53 54 52  |HE HELP .PIC STR|
000045D0: 49 4E 47 53 00 DA 4D D2  23 3B 00 E0 4D DC 23 3B  |INGS..M.#;..M.#;|
000045E0: 00 ED 4D E6 23 4E 41 4D  45 53 20 B2 AC 00 06 4E  |..M.#NAMES ....N|
000045F0: F0 23 AC B2 20 4E 41 4D  45 53 AA 28 32 30 AC 44  |.#.. NAMES.(20.D|
00004600: 45 53 C3 29 AB 31 00 12  4E FA 23 2E 42 59 54 45  |ES.).1..N.#.BYTE|
00004610: 20 30 00 18 4E 04 24 3B  00 00 00                 | 0..N.$;...     |
.. .... 1,8,15,"S0:T-HELP!":   1.8.... 2
,8,1,"0:T-HELP!".B.... 700.N....OPT O2.W
....BAS.Y.... THE TRANSACTOR HELP UTILIT
Y...... NICK SULLIVAN AND CHRIS ZAMARA..
.... OCTOBER 1986.O.... (C) 1986 THE TRA
NSACTOR...... OKAY TO COPY, NOT TO SELL.
....:...... DO NOT ALTER THE LENGTH OF A
NY.@.... LINE AFTER PROGRAM IS ASSEMBLED
.F...:.L...A.00000: . 5 DIGIT LINK BASE 
ADDR.}...."INIT",A: ....... 340.....:...
2.. "GETTING STARTED          ".Q.3.. "P
RINTING YOUR TEXT       "...4.. "AVOYDIN
G SPELLING ERRORS "...5.. "GETTING FINIS
HED         ".7.6.. "                   
      ".Y.7.. "  THE FIRST FOUR DATA    
".{.8.. "LINES ABOVE ARE A SAMPLE "...9.
. "MENU THAT WILL BE SHOWN  "...:.. "WHE
N HELP IS INVOKED.    "...;.. "  UP TO 2
0 MENU ITEMS MAY"...<.. "BE USED. FOR EA
CH ONE,   ".%.=.. "THERE MUST BE A MATCH
ING ".G.>.. "FILE ON DISK, WITH A     ".
I.?.. "FILENAME OF THE FORM:    "...@.. 
"         HELP-?          "...A.. "WHERE
 THE '?' REPRESENTS ".O.B.. "AN ALPHABET
IC CHARACTER. "...C.. "  THE ABOVE MENU 
ITEMS   "...D.. "REQUIRE FILENAMES HELP-
A ".5.E.. "THROUGH HELP-D.          ".;.
F.:.A.D.SL.25.1: . 25 CHARS PER MENU ITE
M..N.S.B(45).256.B(46).20.SL.1...X.. A$
...... H(A$,1).G(32) . 200...... I.1 . S
L.1.H.... S.I,F(J(A$,I)).P. .. I...... S
.I,0.....N.N.1: S.S.SL: . N.20 . 120....
.:...H.A.122: . 330: Z.A.7.R.A.123: . 33
0: Z.Z.256.A.11.=...:.J.... Z.0, N.A....
 Z.1,09 :. BORDER.|.... Z.2,09 :. BACKGR
OUND...... Z.3,00 :. CURSOR...... "DONE!
": . 340.....:.R.".. SUBROUTINE CALCULAT
ES ADDR OF...,.. CHRGET PTR AT COLON IN 
LINE 330...6.. (NO SPACES ALLOWED IN 330
)...@.:.,.J.A.B(A):..2.T...8.^.:.^...CHR
OUT . $FFD2  ;KERNAL ADDRESSES.Q...CHKIN
  . $FFC6......IN  . $FFE4.....SETLFS . 
$FFBA.....SETNAM . $FFBD......   . $FFC0
.G.$.   . $FFC3.X....CHN . $FFCC...8.SCN
KEY . $FF9F...B.;...L.SUB    . 256    ;T
EMP SUBRTNS BASE.=.V.PROG   . $DA00  ;PR
G2 CODE START.C.`.;.D.J.;THE . FOUR BYTE
S CAN BE SET..T.;FROM BASIC WITH . 100.
..~.;.....NUM.P .BYTE 4  ;# OF HELP FILE
S.M...B.D   .BYTE 9  ;HELP B.D COLOUR...
..BACK   .BYTE 9  ;HELP BGND COLOUR.....
CURS   .BYTE 0  ;HELP TEXT COLOUR.....;.
%...;.4.D.ESCAPE RTS.:.N.;.F.X.INIT ...A
...;CALLED FROM BASIC . ......JSR $AEFD 
      ;CHECK COMMA.....JSR $AD8A       ;
EEUATE ADDRESS.G...JSR $B7F7       ;C.V 
. .EGER.....LDX $0290       ;TEXT KEY. N
OW.....CPX $E0         ; IN ROM. ...BCC 
ESCAPE      ; NO.@.(.STX OUT1.2      ;. 
OLD KEY..\.2.LDX $028F       ; VEC.R.K.<
.STX OUT1.1...F.TAX             ;TEST VA
R A . 0...P.BNE IN2         ; NO...Z.;.R
.D.IN1 SEC         ;MAKE ROOM . .P...N.L
DA $37         ; OF BASIC SUBRTNS...X.SB
C #..START.....STA $37.....TAY.*...LDA $
38.5. .SBC #0.A...STA $38.G...;.B...IN2 
STY ..  ;INSTALL ...H.STA ...1    ; KEY
. VEC.R...R.STY $22         ;SET UP . CO
PY.B...STA $23         ; LINK CODE.....T
AX             ;SET UP JUMP ......TYA   
          ; OLD KEY..LINK.)...CLC       
      ; KEY..LINK.<...ADC #OUT.START.I..
.STA OJMP.U...BCC IN3.].".INX.C.,.;.V.6.
IN3 STX OJMP.1...@.LDY #..(START.1)...J.
;...T.IN4 LDA START,Y ;COPY LINK CODE ..
X.^.STA ($22),Y     ; ITS . HOME...H.DEY
...R.BPL IN4...|.LDY #2.....;.....IN8 LD
A B.D,Y  ;SET UP VIDEO.@...STA HLPVID.15
,Y ; PREFERENCES.H...DEY.T...BPL IN8.T..
.LDA NUM.P      ;. # OF HELP...B.STA NT.
      ; FILES AVAILABLE...L.SEI         
    ;C.FIG 100% RAM...V.LDA #$34        
; (NO I.O, ROMS).....STA 1.....LDA #..  
     ;COPY HELP CODE.,...LDY #..       ;
 . $DA00 RAM.8...STA $22.D...STY $23.S..
.LDA #.PROG.B...LDY #.PROG.N.&.STA $24.Z
.0.STY $25...:.LDY #0...D.LDX #.$E0FF.PR
OG;# PAGES . COPY...N.;.C.X.IN9 LDA ($22
),Y.S.B.STA ($24),Y...L.INY...V.BNE IN9.
....INC $23.....INC $25.....DEX.....BNE 
IN9.8...JSR .         ;VECSET IN LOW RAM
.[...LDA #$37        ;C.FIG . BASIC.E...
STA 1.M.F.CLI...P.LDA $37         ;DEC.E
NT TOP...Z.BNE IN10        ; OF BASIC DU
E ..W...DEC $38         ; BASIC E() BUG.
....;.....IN10 DEC $37.....RTS.....;....
.;.%. .;THE . 2 ROUTINES ARE S.RED IN.H.
*.;'N.MAL' RAM, EITHER AT THE .P.G.4.;OF
 BASIC, . AT AN ADDRESS...>.;SPEC.IED BY
 THE USER...H.;...R.;...\.START .....F.;
SWITCH OUT ROM, DO . KEYSCAN.D.P.SEI.N.Z
.LDA 1.V...PHA.....LDA #$34.....STA 1...
..JMP SCAN.....;.....;.....OUT ...-.J.;.
 ROMS, DO ROM KEYSCAN.5.T.PLA.?...STA 1.
R...OUT1 JMP $FFFF.X...;.A.... ...G...;.
M...;.....;VECSET . HLPVID ARE NEEDED BY
...$.;BOTH INIT CODE . HELP CODE.....;..
.8.;.J.B.VECSET .....L.;. OLD VEC.R, INS
TALL . .E...V.LDA $028F...`.LDY $0290. .
J.STA PROG.(OLD..VECSET).=.T.STY PROG.(O
LD..1.VECSET).V.~.LDA PROG.(...VECSET).Q
...LDY PROG.(...1.VECSET).W...;.....VCS1
 STA $028F.....STY $0290. ...RTS.....;..
.D.;.P.N.;THE FOLLOWING TABLE WILL BE .D
...X.;.O VIDEO CHIP . ENTERING HELP.....
;.....;.....HLPVID .../....BYTE $1B,$0A,
$AA,$65,$00,$C8.Q....BYTE $00,$17,$79,$F
0,$00,$00.O....BYTE $00,$00,$00,$F9,$F9.
U...;.{.(.;...2.;THE VARIABLES IN THE FO
LLOWING...<.;TABLE ARE .INED BELOW...F.;
.F.P.;.Y.Z.HCURS  .BYTE 0...D.;...N..TXT
 .BYTE 0...X..COL .BYTE 0......SCR .BYTE
 0.#....BNK .BYTE 0.)...;.9. .NT. .BYTE 
0.?...;.Q...OJMP   .W.D 0.W...;.G.H.OLD.
 .W.D 0.U.R... .W.D 0.{...;.........2...
..;.....;.....;'SCAN' IS THE ADDRESS OF 
THE.W...;ACTUAL PROGRAM CODE IN D.BLOCK.
....;RAM, AS CALCULATED BY ASSEMBLER..."
.;...,.;.#.6.SCAN . PROG.(..VECSET).).@.
;.=.J.;. 1ST ASSEMBLY.D.T....J.^.:.P.H.:
.J.R..: . COSMETIC NEWLINE.P.|.:.V...:..
.... THE OUTPUT FROM THE SECOND...... AS
SEMBLY IS APPENDED TO THAT.O.... FROM TH
E FIRST.U...:...... 2,8,2,"0:T-HELP!,P,A
"...B.:...L.. 700...V... $DA00......OPT 
O2. ...;.F...CHROUT . $FFD2  ;KERNAL ADD
RESSES.Y...CHKIN  . $FFC6.J....IN  . $FF
E4.}...SETLFS . $FFBA.....SETNAM . $FFBD
. .&..   . $FFC0...0.   . $FFC3...:..CHN
 . $FFCC.S.D.SCNKEY . $FF9F.Y.N.;...X.SU
B    . $100   ;TEMP SUBRTNS BASE.&.B.FLA
SH  . $140   ;SCREENFLASH ADDR.F.L.DESC 
. 25.1   ;# BYTES.DESC.L.V.;.N...;MOST O
F THE ACTUAL . FOR THE.....;FOLLOWING S.
RAGE AREA IS WRITTEN.....;HERE BY THE FI
RST PART OF THE.....;PROGRAM. IT IS DUPL
ICATED HERE.....;BECAUSE WE NEED . TELL 
PAL ABOUT.....;THE VARIOUS ADDRESSES."..
.;.B.F.VECSET ....18   ;VEC.R SWAP.`.P.V
CS1   ....7    ; ROUTINE...Z.HLPVID ....
17   ;HELP VIDEO PREFS.....HCURS  ....1 
   ;HELP CRSR COLOUR.M....TXT ....1    ;
TEXT COLOUR .......COL ....1    ;COLOUR 
UNDER CRSR.. ...SCR ....1    ;SCREEN PAG
E.3 ...BNK ....1    ;16K VIDEO BANK.U ..
NT. ....1    ;# OF HELP FILES.|  .OJMP  
 ....2    ;EXIT ROUTINE ADDR.. *.OLD. ..
..2    ;OLD KEY. ADDR.. 4... ....2    ;.
 KEY. ADDR.. >.;.. H.....2           ;SK
IP . ADDRESS.. R.;.. \.SCAN ....!F.;. KE
YSCAN ROUTINE.0!P.LDA $CB         ;TEST 
LAST KEY.U!Z.CMP #$39        ; WAS LEFT 
ARROW.O!..BEQ SCA2        ; YES.U!..;..!
..SCA1 JMP (OJMP) ;OLD KEY. LINK..!..;.C
!..SCA2 LDX $028D  ;TEST (SH.T)CTRL.N!..
CPX #4..!..BCC SCA1        ; NO..!J.CPX 
#6.."T.BCS SCA1        ; NO.0"..LDA #$40
        ;PUT 'NO KEY' IN.W"..STA $CB    
     ; LAST KEY PRESSED.V"..LDA OLD.    
  ;. VEC SO 2D.."..LDY OLD..1    ; PRESS
 W.'T BOMB.."..JSR VCS1.J"..CPX #4      
    ;TEST UNSH.TED.."..BEQ SCA3        ;
 YES..#$.LDX #$30        ;L.G FLASH COUN
T.+#..BNE SCA7        ;FLASH . EXIT.1#8.
;.W#B.SCA3 LDX #$10   ;SH.T FLASH COUNT.
]#L.;..#V.SCA4 LDA $98    ;TEST # . FILE
S..#`.BEQ SCA5        ; ZERO . OK..#J.CM
P #1.N#T.BNE SCA6        ; . .E . EXIT..
#~.LDA $0259       ;CURRENT LF #..$..JSR
 HASH        ;. UNIQUE LF #. $..STA FILE
.D$..LDA $026D       ;CURRENT SECADD.I$.
.JSR HASH        ;. UNIQUE SECADD.X$..ST
A SECADD.~$..;..$D.SCA5 JMP HELP..$N.;..
$X.SCA6 JSR VECSET ;INSTALL . K'...$..;.
.$..SCA7 LDY #.FLA;COPY FLASH ROUT'N..$.
.;..$..SCA8 LDA FLA,Y..%..STA FLASH,Y..%
..DEY."%..BPL SCA8.@%(.JSR FLASH       ;
DO FLASH.C%2.JMP SCA1        ;EXIT HELP 
PGM.I%<.;.O%F.;.{%P.HASH ....%Z.;SELECT 
N..C.FLICTING FILE . SA.B%D.. #$7E      
  ;CLEAR BITS 0, 7..%N..A #4          ;S
ET BIT 2..&X.E. #2          ;CLEAR BIT 1
..&..RTS..&..;..&..;.6& .;THIS ROUTINE I
S COPIED . THE.X&..;STACK WHEN NEEDED, .
 . THERE.^&..;.D&..;.O&H.FLA ....&R.;FLA
SH SCREEN..&..LDA #$37        ;SWITCH IN
 I.O ETC..&..STA 1..&..;.X&..FLA1 CPX $D
012  ;. . RASTER..&..BNE FLA1..'..INC $D
020       ;BUMP COLOURS..'..INC $D021.8'
".DEX             ;TEST FINISHED.[',.BNE
 FLA1        ; NO . REFLASH.|'6.LDA #$34
        ; YES . EXIT..'@.STA 1..'J.RTS..
'T.;..'^..FLA . ..(FLA.1)..'H.;..'R.;.W'
|.;THE . SUBROUTINES ARE COPIED..'..;FRO
M D.BLOCK RAM . $100 EVERY..(..;TIME HEL
P IS USED..(..;..(..;.)(..SUBR ...O(..;C
OPY BYTE FROM RAM ADDR (SUBR.5).Q(B.;. D
.BLOCK RAM ADDR (SUBR.12)..(L.LDX #$37  
      ;ROMS IN..(V.STX 1..(..LDA $FFFF  
     ;ADDR SET . CALL..(..LDX #$34      
  ;ROMS OUT..(..STX 1..)..STA $FFFF     
  ;ADDR SET . CALL./)..INC SUB.5       ;
BUMP FETCH ADDR.;)..BNE SB1.I)..INC SUB.
6.O)&.;.T)0.SB1 INC SUB.12  ;BUMP STASH 
ADDR..):.BNE SB2..)D.INC SUB.13..)N.;..)
X.SB2 RTS..)B.;..)L.;..)V.ZUBR ....)..;C
OPY BYTE FROM D.BLOCK RAM ADDR..*..;(ZUB
R.1) . RAM ADDR (ZUBR.8).%*..LDA $FFFF  
     ;ADDR SET . CALL.B*..LDX #$37      
  ;ROMS IN.L*..STX 1.Q*..STA $FFFF      
 ;ADDR SET . CALL..*..LDX #$34        ;R
OMS OUT..*F.STX 1..*P.INC ZUB.1       ;B
UMP FETCH ADDR.J*Z.BNE ZB1.X*..INC ZUB.2
..*..;..+..ZB1 INC ZUB.8   ;BUMP STASH A
DDR..+..BNE ZB2..+..INC ZUB.9.#+..;./+ .
ZB2 RTS.5+*.;.V+4.;CALC .OLUTE ADDRESS O
F ZUBR.N+>.ZUB . SUB.ZUBR.SUBR.T+H.;.Z+R
.;..+\.OPN ....+F.;. A HELP FILE (HELP.A
, ETC).L+P.STA FILNAM.5    ;LAST FILNAM 
CHAR..+Z.LDA FILE        ;. LF,8,SA.....
+..PHA..,..LDY SECADD..,..LDX #$37..,..S
TX 1.',..LDX #8.6,..JSR SETLFS.W,..LDX #
.FILNAM    ;..."HELP-?".H,J.LDY #.FILNAM
.S,T.LDA #6..,..JSR SETNAM..,..JSR ...,.
.PLA..,..TAX             ;. . CHAN..,..J
SR CHKIN.F,..;..,..OF1 SEI         ;(ROM
 DID CLI)..-$.LDX #$34        ;ROMS OUT.
.-..STX 1..-8.RTS..-B.;.?-L.;CALC .OLUTE
 ADDRESS OF OPN.Y-V.OPNFIL . SUB.OPN.SUB
R._-`.;.E-J.;..-T.;HELP FICAME . LAST CH
AR VARIES..-~..AM .F "HELP-?"..-..;.C-..
;CALC .OLUTE ADDRESS OF .AM..-..FILNAM .
 SUB..AM.SUBR..-..;..-..;..-... .....D.;
. BYTE FROM HELP FILE.*.N.LDX #$37      
  ;ROMS IN.4.X.STX 1.R...JSR .IN       ;
. THE BYTE.W...CLC             ;RELOCATA
BLE JMP.....BCC OF1.....;.....;CALC .OLU
TE ADDRESS OF .......BYT . SUB...SUBR.C.
..;.I.(.;.T.2.CLS .....<.;  HELP FILE...
F.LDA FILE...P.PHA../Z.LDX #$37        ;
ROMS IN.!/D.STX 1.?/N.JSR .CHN      ;  T
HE FILE.G/X.PLA.Q/..JSR  .V/..CLC       
      ;RELOCATABLE JMP../..BCC OF1../ .;
../..;CALC .OLUTE ADDRESS OF CLS.B/..CLS
FIL . SUB.CLS.SUBR.H/..;.N/H.;.Y/R.KEY .
.../..;. FII BYTE, . IN .A..0..;. SH.T K
EY REGISTER IN .Y.-0..LDA #$37       ;RO
MS IN.70..STA 1.\0..JSR SCNKEY     ;SCAN
 KYBD MATRIX.Z0..LDY $CB        ;. KEYCO
DE..0..LDA $EB81,Y    ;C.V . FII..0".LDY
 $028D      ;SH.T KEY REGISTER.D0,.;..06
.KY1 CLC        ;RELOCATABLE JMP..0@.BCC
 OF1..0J.;..1T.;CALC .OLUTE ADDRESS OF K
EY.41^.KEYCHK . SUB.KEY.SUBR.:1H.;.@1R.;
.K1|.PUT ...K1..;. A CHARACTER . THE SCR
EEN.X1..LDX #$37..1..STX 1..1..JSR CHROU
T..1..CLC             ;RELOCATABLE JMP.B
1..BCC OF1.H1B.;..1L.;CALC .OLUTE ADDRES
S OF PUT..2V.PUTBYT . SUB.PUT.SUBR..2..;
..2..;..2..;CALC # OF SUBROUTINE BYTES.B
2..SUBSIZ . ..SUBR.H2..;.N2..;.P2..;. CO
MES THE ACTUAL CODE THAT..2&.;EXECUTES I
N D.BLOCK RAM. THE..20.;FIRST SECTI. SWA
PS OUT THE USER.Z2:.;ENVIR.MENT, & INSTA
LLS A . .E..2D.;..2N.;..2X.HELP ....3B.;
THE HELP UTILITY MAINLINE.63L.LDA #0    
      ;COPY $0000.01FF.Z3V.LDY #$D0     
   ;  . $D000.D1FF.E3..LDX #2.R3..JSR CO
PY..3..LDA #4          ;COPY $0400.07FF.
.3..LDY #$D2        ;  . $D200.D5FF.C3..
TAX.P3..JSR COPY..3..TSX             ;. 
USER STK PTR..4F.STX STKSAV.(4P.LDX #$FF
        ;PUT OUR STK PTR.O4Z.TXS        
     ; FAR FROM SUBRTNS.U4..LDY #SUBSIZ 
    ;COPY SUBROUTINES..4..;             
    .O STACK PAGE..4..HE1 LDA SUBR,Y..4.
.STA SUB,Y.B4..DEY.O4..CPY #$FF..4 .BNE 
HE1..5*.INY             ;COPY COLOUR RAM
.$54.STY SUB.5       ; ($D800.$DBFF).H5>
.STY SUB.12      ; . RAM BENEATH.L5H.LDA
 #4          ; ($D600.$D9FF).V5R.STA 2..
5\.LDX #$D8..5F.STX SUB.6..5P.LDX #$D6..
5Z.STX SUB.13..5..;.C5..HE2 JSR SUB.K5..
DEY.W5..BNE HE2..5..DEC 2..5..BNE HE2..6
..LDA #.$D011     ;COPY VIDEO REGS.56J.L
DY #.$D011     ; . A . BUFFER.C6T.STA SU
B.5.Q6..STY SUB.6.B6..LDA #.VIDBUF.S6..L
DY #.VIDBUF..6..STA SUB.12..6..STY SUB.1
3..6..LDY #16..6..STY $CC..6$.;..6..HE3 
JSR SUB.G68.DEY.S6B.BPL HE3..6L.LDA $028
6       ;. COLOUR OF..7V.LDY $0287      
 ; TEXT . OF CHAR.<7`.LDX $0288       ; 
UNDER CURS.,.^7J.STA .TXT      ; . SCREE
N PAGE.K7T.STY .COL.X7~.STX .SCR..7..LDA
 #4..7..STA $0288       ;SCREEN AT PAGE 
4.M7..LDA #.$DD00     ;. USER'S VIDEO..7
..LDY #.$DD00     ; BANK NUMBER..8..STA 
SUB.5       ; (THE HARD WAY)."8..STY SUB
.6.08D.STA ZUB.8.>8N.STY ZUB.9.M8X.LDA #
..BNK.\8..LDY #..BNK.K8..STA SUB.12.Z8..
STY SUB.13..8..JSR SUB..8..LDA .BNK..8..
.A #3..8..JSR ZUB.3.O8(.LDA #.HLPVID    
;COPY OUR VIDEO..82.LDY #.HLPVID    ; PR
EFERENCES .O..9<.STA ZUB.1       ; VIC C
HIP.!9F.STY ZUB.2.19P.LDA #.$D011.A9Z.LD
Y #.$D011.O9D.STA ZUB.8.]9N.STY ZUB.9.I9
X.LDY #16.O9..;.9..HE4 JSR ZUB..9..DEY.
.9 .BPL HE4..9..LDA HCURS       ;OUR TEX
T COLOUR.F9..STA $0286.L9..;..9H.HE5 LDA
 #.HLPTXT;STARTUP MESSAGE..:R.LDY #.HLPT
XT..:..JSR PRSTR.,:..LDA #13         ;TW
O .S.;:..JSR PUTBYT.J:..JSR PUTBYT.O:..L
DA #.NAMES     ;ADDRESS OF HELP..:..LDY 
#.NAMES     ; .PIC STRINGS..:..STA 3..:"
.STY 4.B:,.LDA #0          ;.PIC #.L:6.S
TA 2.R:@.;..:J.HE6 CLC         ;C.V .PIC
 # ...;T.ADC #"A"        ; CHAR . ..";^.
JSR PUTBYT.?;H.LDA #$20        ;. SPACE.
N;R.JSR PUTBYT.N;|.LDA 3           ;. .P
IC STR.X;..LDY 4..;..JSR PRSTR..;..CLC..
;..LDA 3           ;CALC ADDRESS OF.P;..
ADC #DESC     ; . STRING.Z;..STA 3..;B.B
CC HE7..;L.INC 4..;V.;..<..HE7 LDA #13  
   ;. ...<..JSR PUTBYT.(<..INC 2.2<..LDA
 2.Q<..CMP NT.      ;TEST ALL .ED.J<..BN
E HE6         ; NO.P<..;..<&.HE8 JSR KEY
CHK  ;. A CHARACTER..<0.CPY #2          
;TEST .O PRESSED.R<:.BEQ HE9         ; Y
ES..<D.TAX             ;. CHARACTER..=N.
SEC             ;C.V KEYPRESS ..9=X.SBC 
#"A"        ; HELP .PIC #.U=B.BCC HE8   
      ; INEID.A=L.CMP NT..}=V.BCS HE8   
      ; INEID. =..TXA             ;RETRI
EVE CHAR..=..JSR PRTFIL      ;. THE FILE
..=..JMP HE5         ;RE. MENU..=..;..>.
.HE9 LDA #.VIDBUF;. USER'S..>..LDY #.VID
BUF    ; VIDEO.,>..STA ZUB.1.:>F.STY ZUB
.2.J>P.LDA #.$D011.Z>Z.LDY #.$D011.H>..S
TA ZUB.8.V>..STY ZUB.9..>..LDY #16..>..;
..>..HE10 JSR ZUB..>..DEY..> .BPL HE10.S
>*.INY             ;COPY FROM D.RAM..>4.
STY ZUB.1       ; ($D700.$DAFF)..?>.STY 
ZUB.8       ; . COLOUR RAM.>?H.LDX #$D6 
       ; ($D800.$DBFF).L?R.STX ZUB.2.Y?\
.LDX #$D8.G?F.STX ZUB.9.R?P.LDA #4.|?Z.S
TA 2..?..;..?..HE11 JSR ZUB..?..DEY..?..
BNE HE11..?..DEC 2..?..BNE HE11.L?..LDA 
.TXT.Y?J.LDY .COL..?T.LDX .SCR..?..STA $
0286..@..STY $0287..@..STX $0288..@..LDA
 #..BNK..@..LDY #..BNK.<@..STA ZUB.1.J@.
.STY ZUB.2.Z@$.LDA #.$DD00.J@..LDY #.$DD
00.X@8.STA ZUB.8..@B.STY ZUB.9..@L.JSR Z
UB..@V.LDX STKSAV      ;. STACK PTR..@`.
TXS..@J.LDX #3          ;. 4 0.PG BYTES.
.@T.;..@~.HE11A LDA $D022,X..A..STA $07F
8,X..A..DEX.!A..BPL HE11A.BA..LDA #$D0  
      ;. 3 PGS LOW.GA..STA $D023       ;
 RAM FROM $D000..A..LDY #0          ; (D
OUBLING VECS..AD.STY $D022       ;  $22 
. $25 IN.TAN.STY $D024       ;  D.RAM IM
AGE)..AX.STY $D025..A..LDX #2..A..BNE XC
OPY..B..;.(B..HE12 LDX #3     ;PUT ZP BY
TES BACK.=B..HE14 LDA $07F8,X.KB..STA $2
2,X.SB..DEX.`B(.BPL HE14..B2.LDY #4     
     ;. $400.$7FF..B<.LDA #$D2        ; 
FROM $D200.$D5FF..BF.LDX #4..BP.JSR COPY
..BZ.JSR VECSET      ;SET UP OUR VEC.R..
CD.HE15 JMP (OJMP) ;EXIT VIA ROM..CN.;..
CX.;.7C..;THE . ROUTINE COPIES PAGES OF.
]C..;MEM.Y. ENTER WITH SOURCE PAGE IN..C
..;.A, TAR. PAGE IN .Y, # OF PAGES..C .;
. COPY IN .X. 'COPY' IS THE.CC..;N.MAL V
ERSI.; 'XCOPY' IS A..C..;KLUDGE . AVOID 
U.G THE STACK..D..;COPYING .O PAGE 1 OF 
MEM.Y...DH.;..DR.;..D..XCOPY ...CD..;COP
Y MEM.Y, BRANCH BACK . HE12.KD..SEC.QD..
.BYTE $24       ;'BIT' (SKIP CLC).WD..;.
.D..COPY ....D..;COPY MEM.Y, . VIA RTS..
D".CLC.ED,.STA $23         ;SOURCE HI..D
6.STY $25         ;TAR. HI..D@.LDY #0..E
J.STY $22         ;SOURCE LO.)ET.STY $24
         ;TAR. LO.=E^.CP1 LDA ($22),Y.ME
H.STA ($24),Y.UER.INY.AE|.BNE CP1.ME..IN
C $23.YE..INC $25..E..DEX             ;P
AGE COUNTER..E..BNE CP1.IE..BCS HE12    
    ;XCOPY ESCAPE.QE..RTS.WEB.;..EL.;..E
V.PRTFIL ....E..;. A HELP FILE..F..JSR O
PNFIL      ;. THE FILE.$F..;.FF..PRT1 LD
A #$93   ;CLEAR SCREEN.UF. JSR PUTBYT.ZF
. LDA #23         ;INIT LINE COUNT..F. S
TA LINCNT..F& ;..F0 PRT2 LDA #40    ;INI
T COLUMN COUNT.EF: STA COLCNT.KFD ;..FN 
PRT3 JSR .BYT ;. DISK BYTE..GX JSR PUTBY
T      ;. IT.%GB LDX $90         ;TEST S
TATUS.?GL BNE PRT6        ; EOF.\GV CMP 
#13         ;TEST CR.VG. BEQ PRT4       
 ; YES..G. DEC COLCNT      ;TEST . OF LI
NE..G. BNE PRT3        ; NO..G. ;..G. PR
T4 DEC LINCNT ;TEST . OF PAGE..G. BNE PR
T2        ; NO..H. JSR SPCSTR      ;'SPC
 . .INUE'.:HF LDA #.HT1       ;'.O . EXI
T'.HHP LDY #.HT1.VHZ JSR PRSTR.\H. ;.YH.
 PRT5 JSR KEYCHK ;. A KEY..H. CPY #2    
      ;TEST .O PRESSED..H.!BEQ PRT8     
   ; YES..H.!CMP #$20        ;TEST SPC P
RESSED..H.!BNE PRT5        ; NO..I !BEQ 
PRT1        ; YES..I*!;.:I4!PRT6 JSR SPC
STR ;'SPC . .INUE'.@I>!;.]IH!PRT7 JSR KE
YCHK ;. A KEY..IR!CMP #$20        ;TEST 
SPC PRESSED..I\!BNE PRT7        ; NO..IF
!;..IP!PRT8 JMP CLSFIL ;  . EXIT.FIZ!;.L
I.!;.ZI.!SPCSTR ....I.!;. 'PRESS SPACE .
 .INUE'..J.!LDA #.SPCTXT..J.!LDY #.SPCTX
T..J.!;.,J.!PRSTR ...MJJ!;. STRING ADDRE
SSED IN .A..Y.YJT!STA $22.EJ.!STY $23.PJ
.!LDY #0.VJ.!;..J.!PRS1 LDA ($22),Y..J."
BEQ PRS2..J."JSR PUTBYT      ;. CHARACTE
R.AJ."INY.NJ$"BNE PRS1.TJ.";..J8"PRS2 RT
S..JB";..JL";..KV";MESSAGES . NO ROOM ..
#K`";ANYTHING .O FANCY HERE.)KJ";./KT";.
=K~"HLPTXT ...PK.".BYTE 13,8,147.FK.".F 
 "HELP! HELP!".YK.".BYTE 13,13,18..K.".F
  "SELECT A TOPIC"..K.";..K.";. MSG IS P
ART OF HLPTXT, BUT..KD";CAN ALSO BE ADDR
ESSED SEPARATELY..KN";..KX"HT1 ....K.".B
YTE 18..L.".F  " (LOGO KEY TO EXIT)".,L.
".BYTE 146,0.2L.#;.@L.#SPCTXT ...PL.#.BY
TE 13,18.LL.#.F  "SPACE TO CONTINUE".|L(
#.BYTE 146,0..L2#;..L<#;..LF#;UNINITIALI
ZED . AREA..LP#;..LZ#;.QLD#STKSAV .BYTE 
0  ;OLD STACK PTR..LN#LINCNT .BYTE 0  ;L
INES PER PAGE..MX#COLCNT .BYTE 0  ;CHARS
 PER LINE.;M.#FILE   .BYTE 2  ;.ICAL FIL
E #.AM.#SECADD .BYTE 2  ;SEC.DARY ADDRES
S.GM.#;..M #VIDBUF ....17   ;VIDEO . ARE
A..M.#;..M.#;..M.#;A WHOLE BUNCH OF EMPT
Y BYTES.TMH#;. THE HELP .PIC STRINGS.ZMR
#;..M.#;..M.#NAMES ....N.#.. NAMES.(20.D
ESC).1..N.#.BYTE 0..N.$;...
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL