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

TB/KERNAL

FILE INFORMATION

FILENAME(S): TB/KERNAL

FILE TYPE(S): PRG

FILE SIZE: 5.6K

FIRST SEEN: 2025-11-30 16:59:31

APPEARS ON: 1 disk(s)

FILE HASH

231dd695f05e16bb555f3b3be6689f22f74104f667e365157182a425ac1b5a30

FOUND ON DISKS (1 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
BASIC UTILITIES TB/KERNAL PRG High Voltage Complete C64 Collection 12 7 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

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

00000000: 01 08 27 08 00 00 8F 20  54 52 41 4E 53 42 41 53  |..'.... TRANSBAS|
00000010: 49 43 20 4B 45 52 4E 41  4C 20 28 53 45 54 50 20  |IC KERNAL (SETP |
00000020: 32 38 2F 38 34 29 3A 00  2D 08 01 00 3A 00 4D 08  |28/84):.-...:.M.|
00000030: 02 00 8F 20 32 20 53 54  41 54 45 4D 45 4E 54 53  |... 2 STATEMENTS|
00000040: 2C 20 30 20 46 55 4E 43  54 49 4F 4E 53 00 53 08  |, 0 FUNCTIONS.S.|
00000050: 03 00 3A 00 70 08 04 00  8F 20 4B 45 59 57 4F 52  |..:.p.... KEYWOR|
00000060: 44 53 20 43 48 41 52 41  43 54 45 52 53 3A 20 38  |DS CHARACTERS: 8|
00000070: 00 76 08 05 00 3A 00 99  08 06 00 8F 20 4B 45 59  |.v...:...... KEY|
00000080: 57 4F 52 44 20 20 52 4F  55 54 49 4E 45 20 20 4C  |WORD  ROUTINE  L|
00000090: 49 4E 45 20 20 53 45 52  23 00 BB 08 07 00 8F 20  |INE  SER#...... |
000000A0: 53 2F 45 4C 53 45 20 20  20 45 4C 53 52 54 4E 20  |S/ELSE   ELSRTN |
000000B0: 20 20 32 35 31 34 20 20  30 30 31 00 DD 08 08 00  |  2514  001.....|
000000C0: 8F 20 53 2F 45 58 49 54  20 20 20 45 58 54 20 20  |. S/EXIT   EXT  |
000000D0: 20 20 20 20 32 35 34 32  20 20 30 30 32 00 E3 08  |    2542  002...|
000000E0: 09 00 3A 00 04 09 0A 00  8F 20 55 54 49 4C 49 54  |..:...... UTILIT|
000000F0: 59 3A 20 43 49 46 43 48  52 20 28 32 35 36 30 2F  |Y: CIFCHR (2560/|
00000100: 30 30 33 29 00 0A 09 0B  00 3A 00 2E 09 0C 00 8F  |003).....:......|
00000110: 20 4B 45 52 4E 41 4C 20  41 4C 53 4F 20 49 4E 43  | KERNAL ALSO INC|
00000120: 4C 55 44 45 53 20 4D 4F  44 49 46 49 45 44 00 54  |LUDES MODIFIED.T|
00000130: 09 0D 00 8F 20 22 49 46  22 20 53 54 41 54 45 4D  |.... "IF" STATEM|
00000140: 45 4E 54 20 28 49 46 52  54 4E 2F 32 34 37 34 2F  |ENT (IFRTN/2474/|
00000150: 30 30 30 29 00 5A 09 0E  00 3A 00 96 09 19 00 8B  |000).Z...:......|
00000160: 20 C2 28 37 37 33 29 B3  31 39 32 20 89 20 32 39  | .(773).192 . 29|
00000170: 3A 20 8F 20 54 45 53 54  20 49 46 20 54 52 41 4E  |: . TEST IF TRAN|
00000180: 53 42 41 53 49 43 20 41  4C 52 45 41 44 59 20 45  |SBASIC ALREADY E|
00000190: 4E 41 42 4C 45 44 00 9C  09 1A 00 3A 00 BC 09 1B  |NABLED.....:....|
000001A0: 00 5F 41 3A 8F 20 27 45  58 49 54 27 20 53 54 41  |._A:. 'EXIT' STA|
000001B0: 54 45 4D 45 4E 54 20 54  4F 4B 45 4E 00 C2 09 1C  |TEMENT TOKEN....|
000001C0: 00 3A 00 CC 09 1D 00 9E  20 37 30 30 00 D8 09 1E  |.:...... 700....|
000001D0: 00 2E 4F 50 54 20 4F 4F  00 E5 09 1F 00 AC B2 20  |..OPT OO....... |
000001E0: 24 43 30 30 30 00 EB 09  20 00 3B 00 11 0A 21 00  |$C000... .;...!.|
000001F0: 54 32 20 B2 20 32 20 3B  54 52 41 4E 53 42 41 53  |T2 . 2 ;TRANSBAS|
00000200: 49 43 20 54 41 4B 45 53  20 4F 56 45 52 20 54 48  |IC TAKES OVER TH|
00000210: 45 00 34 0A 22 00 54 33  20 B2 20 33 20 3B 55 4E  |E.4.".T3 . 3 ;UN|
00000220: 55 53 45 44 20 4C 4F 43  41 54 49 91 20 41 54 20  |USED LOCATI. AT |
00000230: 32 2C 20 AF 00 55 0A 23  00 54 34 20 B2 20 34 20  |2, ..U.#.T4 . 4 |
00000240: 3B 54 48 45 20 4E 55 4D  45 52 49 43 20 43 91 56  |;THE NUMERIC C.V|
00000250: 45 52 53 49 91 00 77 0A  24 00 54 35 20 B2 20 35  |ERSI..w.$.T5 . 5|
00000260: 20 3B 56 45 43 A4 52 53  20 41 54 20 33 20 AF 20  | ;VEC.RS AT 3 . |
00000270: 35 20 81 20 49 54 53 00  96 0A 25 00 54 36 20 B2  |5 . ITS...%.T6 .|
00000280: 20 36 20 3B 5A 45 52 4F  20 50 41 47 45 20 57 B0  | 6 ;ZERO PAGE W.|
00000290: 4B 53 50 41 43 45 00 9C  0A 26 00 3B 00 A2 0A 5B  |KSPACE...&.;...[|
000002A0: 00 3B 00 B0 0A 5C 00 4A  4D 50 20 53 54 41 52 54  |.;...\.JMP START|
000002B0: 00 D3 0A 5D 00 4A 4D 50  20 45 58 54 20 3B 45 4D  |...].JMP EXT ;EM|
000002C0: 45 52 47 45 4E 43 59 20  45 58 49 54 20 9E 34 39  |ERGENCY EXIT .49|
000002D0: 31 35 35 00 D9 0A 5E 00  3B 00 FA 0A 5F 00 58 54  |155...^.;..._.XT|
000002E0: 52 41 20 2E 42 59 54 45  20 32 2C 30 20 3B 53 54  |RA .BYTE 2,0 ;ST|
000002F0: 4D 54 53 2C 46 55 4E 43  54 53 00 00 0B 60 00 3B  |MTS,FUNCTS...`.;|
00000300: 00 0C 0B 61 00 2E 42 59  54 45 20 30 00 12 0B 62  |...a..BYTE 0...b|
00000310: 00 3B 00 32 0B 63 00 53  4B 57 20 B2 20 AC 20 3B  |.;.2.c.SKW . . ;|
00000320: 53 54 41 54 45 4D 45 4E  54 20 4B 45 59 57 B0 44  |STATEMENT KEYW.D|
00000330: 20 9B 00 44 0B 64 00 2E  C6 20 22 45 4C 53 C5 45  | ..D.d... "ELS.E|
00000340: 58 49 D4 22 00 4A 0B 56  02 3B 00 69 0B 57 02 46  |XI.".J.V.;.i.W.F|
00000350: 4B 57 20 B2 20 AC 20 3B  46 55 4E 43 54 49 91 20  |KW . . ;FUNCTI. |
00000360: 4B 45 59 57 B0 44 53 20  9B 00 6F 0B 48 04 3B 00  |KEYW.DS ..o.H.;.|
00000370: 8F 0B 49 04 2E 42 59 54  45 20 30 20 3B 4B 45 59  |..I..BYTE 0 ;KEY|
00000380: 57 B0 44 20 9B 20 54 45  52 4D 49 4E 41 A4 52 00  |W.D . TERMINA.R.|
00000390: 95 0B 4A 04 3B 00 B1 0B  4B 04 9D 53 20 B2 20 AC  |..J.;...K..S . .|
000003A0: 20 3B 53 54 41 54 45 4D  45 4E 54 20 56 45 43 A4  | ;STATEMENT VEC.|
000003B0: 52 00 C6 0B 4C 04 2E 57  B0 44 20 24 41 39 33 41  |R...L..W.D $A93A|
000003C0: 2C 45 58 54 AB 31 00 CC  0B 3E 06 3B 00 E8 0B 3F  |,EXT.1...>.;...?|
000003D0: 06 A5 43 53 20 B2 20 AC  20 3B 46 55 4E 43 54 49  |..CS . . ;FUNCTI|
000003E0: 91 20 56 45 43 A4 52 53  00 EE 0B 33 08 3B 00 0D  |. VEC.RS...3.;..|
000003F0: 0C 34 08 53 54 41 52 54  20 4C 44 58 20 23 37 20  |.4.START LDX #7 |
00000400: 3B 53 57 41 50 20 4F 55  54 20 4F 4C 44 00 30 0C  |;SWAP OUT OLD.0.|
00000410: 36 08 53 54 54 31 20 4C  44 41 20 24 33 30 34 2C  |6.STT1 LDA $304,|
00000420: 58 20 3B 42 41 53 49 43  20 56 45 43 A4 52 53 2C  |X ;BASIC VEC.RS,|
00000430: 00 4E 0C 38 08 53 54 41  20 54 56 45 43 2C 58 20  |.N.8.STA TVEC,X |
00000440: 3B 53 57 41 50 20 49 4E  20 A2 20 91 45 53 00 5F  |;SWAP IN . .ES._|
00000450: 0C 3A 08 4C 44 41 20 4E  55 56 45 43 53 2C 58 00  |.:.LDA NUVECS,X.|
00000460: 6E 0C 3C 08 53 54 41 20  24 33 30 34 2C 58 00 76  |n.<.STA $304,X.v|
00000470: 0C 3E 08 44 45 58 00 83  0C 40 08 42 50 4C 20 53  |.>.DEX...@.BPL S|
00000480: 54 54 31 00 A0 0C 42 08  4C 44 41 20 58 54 52 41  |TT1...B.LDA XTRA|
00000490: 20 3B 43 41 4C 43 55 4C  41 54 45 20 A4 54 41 4C  | ;CALCULATE .TAL|
000004A0: 00 A8 0C 44 08 43 4C 43  00 B7 0C 46 08 41 44 43  |...D.CLC...F.ADC|
000004B0: 20 58 54 52 41 AA 31 00  C6 0C 48 08 53 54 41 20  | XTRA.1...H.STA |
000004C0: 58 54 52 41 AA 32 00 E1  0C 4A 08 4C 44 41 20 23  |XTRA.2...J.LDA #|
000004D0: 24 36 30 20 3B 44 49 53  41 42 4C 45 20 54 48 49  |$60 ;DISABLE THI|
000004E0: 53 00 01 0D 4C 08 53 54  41 20 53 54 41 52 54 20  |S...L.STA START |
000004F0: 3B 52 4F 55 54 49 4E 45  20 57 49 54 48 20 52 54  |;ROUTINE WITH RT|
00000500: 53 00 09 0D 4E 08 52 54  53 00 0F 0D 50 08 3B 00  |S...N.RTS...P.;.|
00000510: 2D 0D 52 08 54 56 45 43  20 2E 57 B0 44 20 24 41  |-.R.TVEC .W.D $A|
00000520: 35 37 43 20 3B 53 A4 52  41 47 45 20 81 00 4D 0D  |57C ;S.RAGE ..M.|
00000530: 54 08 4C 56 45 43 20 2E  57 B0 44 20 24 41 37 31  |T.LVEC .W.D $A71|
00000540: 41 20 3B 4F 4C 44 20 56  45 43 A4 52 53 00 61 0D  |A ;OLD VEC.RS.a.|
00000550: 56 08 45 56 45 43 20 2E  57 B0 44 20 24 41 37 45  |V.EVEC .W.D $A7E|
00000560: 34 00 75 0D 58 08 46 56  45 43 20 2E 57 B0 44 20  |4.u.X.FVEC .W.D |
00000570: 24 41 45 38 36 00 7B 0D  5A 08 3B 00 A4 0D 5C 08  |$AE86.{.Z.;...\.|
00000580: 4E 55 56 45 43 53 20 2E  57 B0 44 20 A4 4B 2C 4C  |NUVECS .W.D .K,L|
00000590: 49 53 2C 45 58 43 2C 46  55 4E 20 3B A2 20 56 45  |IS,EXC,FUN ;. VE|
000005A0: 43 A4 52 53 00 AA 0D 5E  08 3B 00 C1 0D 60 08 A4  |C.RS...^.;...`..|
000005B0: 4B 20 4C 44 58 20 23 30  20 3B A4 4B 45 4E 49 5A  |K LDX #0 ;.KENIZ|
000005C0: 45 00 CC 0D 62 08 4C 44  59 20 23 30 00 ED 0D 64  |E...b.LDY #0...d|
000005D0: 08 54 4B 31 20 4C 44 41  20 24 32 30 30 2C 58 20  |.TK1 LDA $200,X |
000005E0: 3B 46 45 54 43 48 20 41  20 42 59 54 45 00 0B 0E  |;FETCH A BYTE...|
000005F0: 66 08 43 4D 50 20 23 24  32 32 20 3B 43 48 45 43  |f.CMP #$22 ;CHEC|
00000600: 4B 20 81 20 9F 20 51 55  4F 54 45 00 17 0E 68 08  |K . . QUOTE...h.|
00000610: 42 45 51 20 54 4B 39 00  39 0E 6A 08 4A 53 52 20  |BEQ TK9.9.j.JSR |
00000620: 43 8B 43 48 52 20 3B 43  48 45 43 4B 20 81 20 41  |C.CHR ;CHECK . A|
00000630: 4C 50 48 41 42 45 54 49  43 00 4F 0E 6C 08 42 43  |LPHABETIC.O.l.BC|
00000640: 43 20 54 4B 34 20 3B 53  4B 49 50 20 8B 20 A8 00  |C TK4 ;SKIP . ..|
00000650: 66 0E 6E 08 53 54 59 20  24 37 31 20 3B 94 20 2E  |f.n.STY $71 ;. .|
00000660: 58 20 AF 20 2E 59 00 71  0E 70 08 53 54 58 20 54  |X . .Y.q.p.STX T|
00000670: 33 00 7C 0E 72 08 4C 44  59 20 23 30 00 98 0E 74  |3.|.r.LDY #0...t|
00000680: 08 53 54 59 20 24 30 42  20 3B 53 45 54 20 55 50  |.STY $0B ;SET UP|
00000690: 20 43 4F 55 4E 54 45 52  00 B0 0E 76 08 44 45 59  | COUNTER...v.DEY|
000006A0: 20 3B 53 45 54 20 55 50  20 49 4E 44 49 43 45 53  | ;SET UP INDICES|
000006B0: 00 B8 0E 78 08 44 45 58  00 C4 0E 7A 08 54 4B 32  |...x.DEX...z.TK2|
000006C0: 20 49 4E 59 00 CC 0E 7C  08 49 4E 58 00 F6 0E 7E  | INY...|.INX...~|
000006D0: 08 54 4B 33 20 4C 44 41  20 24 32 30 30 2C 58 20  |.TK3 LDA $200,X |
000006E0: 3B 46 45 54 43 48 20 55  4E A4 4B 45 4E 49 5A 45  |;FETCH UN.KENIZE|
000006F0: 44 20 42 59 54 45 00 FE  0E 80 08 53 45 43 00 23  |D BYTE.....SEC.#|
00000700: 0F 82 08 53 42 43 20 53  4B 57 2C 59 20 3B 43 4F  |...SBC SKW,Y ;CO|
00000710: 4D 50 41 52 45 20 57 49  54 48 20 4B 45 59 57 B0  |MPARE WITH KEYW.|
00000720: 44 20 9B 00 44 0F 84 08  42 45 51 20 54 4B 32 20  |D ..D...BEQ TK2 |
00000730: 3B CB 20 42 41 43 4B 20  81 20 41 A8 48 45 52 20  |;. BACK . A.HER |
00000740: 42 59 54 45 00 70 0F 86  08 43 4D 50 20 23 24 38  |BYTE.p...CMP #$8|
00000750: 30 20 3B 43 48 45 43 4B  20 81 20 4D 41 54 43 48  |0 ;CHECK . MATCH|
00000760: 20 45 58 43 45 50 54 20  48 49 47 48 20 42 49 54  | EXCEPT HIGH BIT|
00000770: 00 8A 0F 88 08 42 4E 45  20 54 4B 35 20 3B 54 52  |.....BNE TK5 ;TR|
00000780: 59 20 82 20 4B 45 59 57  B0 44 00 AC 0F 8A 08 4C  |Y . KEYW.D.....L|
00000790: 44 41 20 23 24 35 46 20  3B 46 49 52 53 54 20 42  |DA #$5F ;FIRST B|
000007A0: 59 54 45 20 4F 46 20 A4  4B 45 4E 2C 00 C8 0F 8C  |YTE OF .KEN,....|
000007B0: 08 4C 44 59 20 24 37 31  20 3B 54 48 45 20 4C 45  |.LDY $71 ;THE LE|
000007C0: 46 54 20 41 52 52 4F 57  00 D7 0F 8E 08 53 54 41  |FT ARROW.....STA|
000007D0: 20 24 32 30 30 2C 59 00  DF 0F 90 08 49 4E 59 00  | $200,Y.....INY.|
000007E0: FF 0F 92 08 4C 44 41 20  24 30 42 20 3B 53 45 43  |....LDA $0B ;SEC|
000007F0: 91 44 20 42 59 54 45 20  4F 46 20 A4 4B 45 4E 00  |.D BYTE OF .KEN.|
00000800: 0C 10 94 08 41 44 43 20  23 24 33 46 00 18 10 96  |....ADC #$3F....|
00000810: 08 54 4B 34 20 49 4E 58  00 27 10 98 08 53 54 41  |.TK4 INX.'...STA|
00000820: 20 24 32 30 30 2C 59 00  2F 10 9A 08 49 4E 59 00  | $200,Y./...INY.|
00000830: 5A 10 9C 08 4C 44 41 20  24 32 30 30 2C 59 20 3B  |Z...LDA $200,Y ;|
00000840: 4C 4F 4F 50 20 55 4E 4C  45 53 53 20 4C 49 4E 45  |LOOP UNLESS LINE|
00000850: 20 45 58 48 41 55 53 54  45 44 00 66 10 9E 08 42  | EXHAUSTED.f...B|
00000860: 4E 45 20 54 4B 31 00 83  10 A0 08 4A 4D 50 20 28  |NE TK1.....JMP (|
00000870: 54 56 45 43 29 20 3B 52  45 4A 4F 49 4E 20 42 41  |TVEC) ;REJOIN BA|
00000880: 53 49 43 00 89 10 A2 08  3B 00 A7 10 A4 08 54 4B  |SIC.....;.....TK|
00000890: 35 20 4C 44 58 20 54 33  20 3B 46 49 4E 44 20 82  |5 LDX T3 ;FIND .|
000008A0: 20 4B 45 59 57 B0 44 00  B7 10 A6 08 54 4B 36 20  | KEYW.D.....TK6 |
000008B0: 49 4E 43 20 24 30 42 00  C3 10 A8 08 4C 44 41 20  |INC $0B.....LDA |
000008C0: 24 30 42 00 EA 10 AA 08  43 4D 50 20 23 24 31 45  |$0B.....CMP #$1E|
000008D0: 20 3B 53 4B 49 50 20 50  41 53 54 20 BD 91 45 4E  | ;SKIP PAST ..EN|
000008E0: 54 49 41 54 45 20 A4 4B  45 4E 00 F6 10 AC 08 42  |TIATE .KEN.....B|
000008F0: 45 51 20 54 4B 36 00 02  11 AE 08 54 4B 37 20 49  |EQ TK6.....TK7 I|
00000900: 4E 59 00 12 11 B0 08 4C  44 41 20 53 4B 57 AB 31  |NY.....LDA SKW.1|
00000910: 2C 59 00 1E 11 B2 08 42  50 4C 20 54 4B 37 00 2C  |,Y.....BPL TK7.,|
00000920: 11 B4 08 4C 44 41 20 53  4B 57 2C 59 00 38 11 B6  |...LDA SKW,Y.8..|
00000930: 08 42 4E 45 20 54 4B 33  00 59 11 B8 08 4C 44 59  |.BNE TK3.Y...LDY|
00000940: 20 24 37 31 20 3B 4E 4F  20 4D 41 54 43 48 49 4E  | $71 ;NO MATCHIN|
00000950: 47 20 4B 45 59 57 B0 44  2C 00 7B 11 BA 08 4C 44  |G KEYW.D,.{...LD|
00000960: 41 20 24 32 30 30 2C 58  20 3B 47 49 56 45 20 55  |A $200,X ;GIVE U|
00000970: 50 20 41 54 54 45 4D 50  54 20 A4 00 90 11 BC 08  |P ATTEMPT ......|
00000980: 42 50 4C 20 54 4B 34 20  3B A4 4B 45 4E 49 5A 45  |BPL TK4 ;.KENIZE|
00000990: 00 96 11 BE 08 3B 00 B6  11 C0 08 54 4B 38 20 4C  |.....;.....TK8 L|
000009A0: 44 41 20 24 32 30 30 2C  58 20 3B 53 43 41 4E 20  |DA $200,X ;SCAN |
000009B0: 81 20 80 20 4F 46 00 CF  11 C2 08 42 45 51 20 54  |. . OF.....BEQ T|
000009C0: 4B 34 20 3B 4C 49 4E 45  20 B0 20 80 20 4F 46 00  |K4 ;LINE . . OF.|
000009D0: EC 11 C4 08 43 4D 50 20  23 24 32 32 20 3B 51 55  |....CMP #$22 ;QU|
000009E0: 4F 54 45 53 20 57 49 54  48 4F 55 54 00 03 12 C6  |OTES WITHOUT....|
000009F0: 08 42 45 51 20 54 4B 34  20 3B A4 4B 45 4E 49 5A  |.BEQ TK4 ;.KENIZ|
00000A00: 49 4E 47 00 16 12 C8 08  54 4B 39 20 53 54 41 20  |ING.....TK9 STA |
00000A10: 24 32 30 30 2C 59 00 1E  12 CA 08 49 4E 59 00 26  |$200,Y.....INY.&|
00000A20: 12 CC 08 49 4E 58 00 32  12 CE 08 42 4E 45 20 54  |...INX.2...BNE T|
00000A30: 4B 38 00 38 12 D0 08 3B  00 57 12 D2 08 4C 49 53  |K8.8...;.W...LIS|
00000A40: 20 43 4D 50 20 23 24 35  46 20 3B 9B 20 AB 20 BD  | CMP #$5F ;. . .|
00000A50: AF 20 A4 4B 45 4E 53 00  77 12 D4 08 42 4E 45 20  |. .KENS.w...BNE |
00000A60: 4C 32 20 3B 53 4B 49 50  20 8B 20 A8 20 4C 45 46  |L2 ;SKIP . . LEF|
00000A70: 54 AB 41 52 52 4F 57 00  8A 12 D6 08 49 4E 59 20  |T.ARROW.....INY |
00000A80: 3B A1 20 82 20 42 59 54  45 2C 00 A9 12 D8 08 4C  |;. . BYTE,.....L|
00000A90: 44 41 20 28 24 35 46 29  2C 59 20 3B 43 91 56 45  |DA ($5F),Y ;C.VE|
00000AA0: 52 54 20 A4 20 A4 4B 45  4E 00 BE 12 DA 08 53 42  |RT . .KEN.....SB|
00000AB0: 43 20 23 24 34 30 20 3B  4E 55 4D 42 45 52 00 CB  |C #$40 ;NUMBER..|
00000AC0: 12 DC 08 43 4D 50 20 23  24 31 45 00 D6 12 DE 08  |...CMP #$1E.....|
00000AD0: 42 43 43 20 4C 31 00 E1  12 E0 08 53 42 43 20 23  |BCC L1.....SBC #|
00000AE0: 31 00 06 13 E2 08 4C 31  20 43 4D 50 20 58 54 52  |1.....L1 CMP XTR|
00000AF0: 41 AA 32 20 3B 43 48 45  43 4B 20 8B 20 49 4E 20  |A.2 ;CHECK . IN |
00000B00: 42 4F 55 4E 44 53 00 22  13 E4 08 42 43 43 20 4C  |BOUNDS."...BCC L|
00000B10: 33 20 3B CB 20 53 43 41  4E 20 4B 45 59 57 B0 44  |3 ;. SCAN KEYW.D|
00000B20: 20 9B 00 2A 13 E6 08 44  45 59 00 48 13 E8 08 4C  | ..*...DEY.H...L|
00000B30: 44 41 20 28 24 35 46 29  2C 59 20 3B 52 45 4A 4F  |DA ($5F),Y ;REJO|
00000B40: 49 4E 20 42 41 53 49 43  00 53 13 EA 08 4C 32 20  |IN BASIC.S...L2 |
00000B50: 54 41 58 00 62 13 EC 08  4A 4D 50 20 28 4C 56 45  |TAX.b...JMP (LVE|
00000B60: 43 29 00 68 13 EE 08 3B  00 87 13 F0 08 4C 33 20  |C).h...;.....L3 |
00000B70: 53 54 59 20 54 33 20 3B  43 4F 55 4E 54 44 4F 57  |STY T3 ;COUNTDOW|
00000B80: 4E 20 49 4E 20 2E 58 00  A2 13 F2 08 4C 44 59 20  |N IN .X.....LDY |
00000B90: 23 30 20 3B 57 48 49 4C  45 20 53 43 41 4E 4E 49  |#0 ;WHILE SCANNI|
00000BA0: 4E 47 00 B4 13 F4 08 54  41 58 20 3B 4B 45 59 57  |NG.....TAX ;KEYW|
00000BB0: B0 44 20 9B 00 BF 13 F6  08 42 45 51 20 4C 35 00  |.D ......BEQ L5.|
00000BC0: D0 13 F8 08 4C 34 20 4C  44 41 20 53 4B 57 2C 59  |....L4 LDA SKW,Y|
00000BD0: 00 D8 13 FA 08 50 48 50  00 E0 13 FC 08 49 4E 59  |.....PHP.....INY|
00000BE0: 00 E8 13 FE 08 50 4C 50  00 00 14 00 09 42 50 4C  |.....PLP.....BPL|
00000BF0: 20 4C 34 20 3B 4C 41 53  54 20 4B 45 59 57 B0 44  | L4 ;LAST KEYW.D|
00000C00: 00 1B 14 02 09 44 45 58  20 3B 43 48 41 52 41 43  |.....DEX ;CHARAC|
00000C10: 54 45 52 20 48 41 53 20  42 49 54 00 2D 14 04 09  |TER HAS BIT.-...|
00000C20: 42 4E 45 20 4C 34 20 3B  37 20 53 45 54 00 33 14  |BNE L4 ;7 SET.3.|
00000C30: 06 09 3B 00 4E 14 08 09  4C 35 20 4C 44 41 20 53  |..;.N...L5 LDA S|
00000C40: 4B 57 2C 59 20 3B 99 20  4B 45 59 57 B0 44 00 63  |KW,Y ;. KEYW.D.c|
00000C50: 14 0A 09 50 48 50 20 3B  55 BF 47 20 42 41 53 49  |...PHP ;U.G BASI|
00000C60: 43 27 53 00 7B 14 0C 09  AF 20 23 24 37 46 20 3B  |C'S.{.... #$7F ;|
00000C70: 43 48 41 52 41 43 54 45  52 AB 99 00 9B 14 0E 09  |CHARACTER.......|
00000C80: 4A 53 52 20 24 41 42 34  37 20 3B 52 4F 55 54 49  |JSR $AB47 ;ROUTI|
00000C90: 4E 45 20 41 54 20 24 41  42 34 37 00 A3 14 10 09  |NE AT $AB47.....|
00000CA0: 49 4E 59 00 AB 14 12 09  50 4C 50 00 B6 14 14 09  |INY.....PLP.....|
00000CB0: 42 50 4C 20 4C 35 00 C1  14 16 09 4C 44 59 20 54  |BPL L5.....LDY T|
00000CC0: 33 00 E0 14 18 09 4C 36  20 4A 4D 50 20 24 41 37  |3.....L6 JMP $A7|
00000CD0: 30 30 20 3B 52 45 4A 4F  49 4E 20 42 41 53 49 43  |00 ;REJOIN BASIC|
00000CE0: 00 E6 14 1A 09 3B 00 09  15 1C 09 45 58 43 20 4A  |.....;.....EXC J|
00000CF0: 53 52 20 24 37 33 20 3B  45 58 45 43 55 54 45 20  |SR $73 ;EXECUTE |
00000D00: 53 54 41 54 45 4D 45 4E  54 00 2C 15 1E 09 45 58  |STATEMENT.,...EX|
00000D10: 31 20 43 4D 50 20 23 24  38 42 20 3B 27 8B 27 AB  |1 CMP #$8B ;'.'.|
00000D20: 48 AF 4C 45 20 41 54 20  8B 52 54 4E 00 38 15 20  |H.LE AT .RTN.8. |
00000D30: 09 42 45 51 20 45 58 38  00 55 15 22 09 43 4D 50  |.BEQ EX8.U.".CMP|
00000D40: 20 23 24 35 46 20 3B 54  48 45 20 4C 45 46 54 20  | #$5F ;THE LEFT |
00000D50: 41 52 52 4F 57 00 76 15  24 09 42 4E 45 20 45 58  |ARROW.v.$.BNE EX|
00000D60: 35 20 3B 53 4B 49 50 20  A4 20 52 45 4A 4F 49 4E  |5 ;SKIP . REJOIN|
00000D70: 20 42 41 53 49 43 00 8C  15 26 09 4A 53 52 20 24  | BASIC...&.JSR $|
00000D80: 37 33 20 3B A1 20 82 20  42 59 54 45 00 A1 15 28  |73 ;. . BYTE...(|
00000D90: 09 4A 53 52 20 45 58 32  20 3B 45 58 45 43 55 54  |.JSR EX2 ;EXECUT|
00000DA0: 45 00 C3 15 2A 09 4A 4D  50 20 24 41 37 41 45 20  |E...*.JMP $A7AE |
00000DB0: 3B 53 45 54 20 55 50 20  82 20 53 54 41 54 45 4D  |;SET UP . STATEM|
00000DC0: 45 4E 54 00 C9 15 2C 09  3B 00 E4 15 2E 09 45 58  |ENT...,.;.....EX|
00000DD0: 32 20 53 45 43 20 3B 43  91 56 45 52 54 20 A4 4B  |2 SEC ;C.VERT .K|
00000DE0: 45 4E 20 A4 00 00 16 30  09 53 42 43 20 23 24 34  |EN ....0.SBC #$4|
00000DF0: 30 20 3B 4B 45 59 57 B0  44 20 4E 55 4D 42 45 52  |0 ;KEYW.D NUMBER|
00000E00: 00 0D 16 32 09 43 4D 50  20 23 24 31 45 00 19 16  |...2.CMP #$1E...|
00000E10: 34 09 42 43 43 20 45 58  33 00 24 16 36 09 53 42  |4.BCC EX3.$.6.SB|
00000E20: 43 20 23 31 00 48 16 38  09 45 58 33 20 43 4D 50  |C #1.H.8.EX3 CMP|
00000E30: 20 58 54 52 41 20 3B 43  48 45 43 4B 20 8B 20 49  | XTRA ;CHECK . I|
00000E40: 4E 20 42 4F 55 4E 44 53  00 61 16 3A 09 42 43 53  |N BOUNDS.a.:.BCS|
00000E50: 20 45 58 37 20 3B 53 59  4E 54 41 58 20 45 52 52  | EX7 ;SYNTAX ERR|
00000E60: B0 00 69 16 3C 09 41 53  4C 00 71 16 3E 09 54 41  |..i.<.ASL.q.>.TA|
00000E70: 59 00 8D 16 40 09 4C 44  41 20 9D 53 AA 31 2C 59  |Y...@.LDA .S.1,Y|
00000E80: 20 3B 46 45 54 43 48 20  56 45 43 A4 52 00 A9 16  | ;FETCH VEC.R...|
00000E90: 42 09 50 48 41 20 3B 41  44 44 52 45 53 53 20 46  |B.PHA ;ADDRESS F|
00000EA0: 52 4F 4D 20 54 41 42 4C  45 00 B6 16 44 09 4C 44  |ROM TABLE...D.LD|
00000EB0: 41 20 9D 53 2C 59 00 D1  16 46 09 50 48 41 20 3B  |A .S,Y...F.PHA ;|
00000EC0: 4A 55 4D 50 20 54 48 52  4F 55 47 48 20 43 48 52  |JUMP THROUGH CHR|
00000ED0: A1 00 F2 16 48 09 4A 4D  50 20 24 37 33 20 3B A4  |....H.JMP $73 ;.|
00000EE0: 20 53 54 41 54 45 4D 45  4E 54 20 52 4F 55 54 49  | STATEMENT ROUTI|
00000EF0: 4E 45 00 F8 16 4A 09 3B  00 18 17 4C 09 45 58 35  |NE...J.;...L.EX5|
00000F00: 20 4C 44 41 20 24 37 41  20 3B 44 45 43 8F 45 4E  | LDA $7A ;DEC.EN|
00000F10: 54 20 43 48 52 47 45 54  00 2B 17 4E 09 42 4E 45  |T CHRGET.+.N.BNE|
00000F20: 20 45 58 36 20 3B 50 4F  B5 45 52 00 37 17 50 09  | EX6 ;PO.ER.7.P.|
00000F30: 44 45 43 20 24 37 42 00  47 17 52 09 45 58 36 20  |DEC $7B.G.R.EX6 |
00000F40: 44 45 43 20 24 37 41 00  64 17 54 09 4A 4D 50 20  |DEC $7A.d.T.JMP |
00000F50: 28 45 56 45 43 29 20 3B  52 45 4A 4F 49 4E 20 42  |(EVEC) ;REJOIN B|
00000F60: 41 53 49 43 00 6A 17 56  09 3B 00 89 17 58 09 45  |ASIC.j.V.;...X.E|
00000F70: 58 37 20 4A 4D 50 20 24  41 46 30 38 20 3B 53 59  |X7 JMP $AF08 ;SY|
00000F80: 4E 54 41 58 20 45 52 52  B0 00 8F 17 5A 09 3B 00  |NTAX ERR....Z.;.|
00000F90: AC 17 5C 09 45 58 38 20  4A 53 52 20 45 58 39 3B  |..\.EX8 JSR EX9;|
00000FA0: 20 45 58 45 43 55 54 45  20 27 8B 27 00 CE 17 5E  | EXECUTE '.'...^|
00000FB0: 09 4A 4D 50 20 24 41 37  41 45 20 3B 53 45 54 20  |.JMP $A7AE ;SET |
00000FC0: 55 50 20 82 20 53 54 41  54 45 4D 45 4E 54 00 D4  |UP . STATEMENT..|
00000FD0: 17 60 09 3B 00 F1 17 62  09 45 58 39 20 4C 44 41  |.`.;...b.EX9 LDA|
00000FE0: 20 23 B1 8B 52 54 4E AB  31 20 3B 4A 55 4D 50 20  | #..RTN.1 ;JUMP |
00000FF0: A4 00 07 18 64 09 50 48  41 20 3B 27 8B 27 20 45  |....d.PHA ;'.' E|
00001000: 58 45 43 55 54 49 91 00  21 18 66 09 4C 44 41 20  |XECUTI..!.f.LDA |
00001010: 23 B3 8B 52 54 4E AB 31  20 3B 52 4F 55 54 49 4E  |#..RTN.1 ;ROUTIN|
00001020: 45 00 29 18 68 09 50 48  41 00 35 18 6A 09 4A 4D  |E.).h.PHA.5.j.JM|
00001030: 50 20 24 37 33 00 3B 18  6C 09 3B 00 5B 18 6E 09  |P $73.;.l.;.[.n.|
00001040: 46 55 4E 20 4A 53 52 20  24 37 33 20 3B 45 C5 55  |FUN JSR $73 ;E.U|
00001050: 41 54 45 20 46 55 4E 43  54 49 91 00 74 18 70 09  |ATE FUNCTI..t.p.|
00001060: 43 4D 50 20 23 24 35 46  20 3B 4C 45 46 54 20 41  |CMP #$5F ;LEFT A|
00001070: 52 52 4F 57 00 9B 18 72  09 42 45 51 20 46 55 32  |RROW...r.BEQ FU2|
00001080: 20 3B 45 C5 55 41 54 45  20 54 52 41 4E 53 42 41  | ;E.UATE TRANSBA|
00001090: 53 49 43 20 46 55 4E 43  54 49 91 00 B7 18 74 09  |SIC FUNCTI....t.|
000010A0: 4C 44 41 20 24 37 41 20  3B 44 45 43 8F 45 4E 54  |LDA $7A ;DEC.ENT|
000010B0: 20 43 48 52 47 45 54 00  CB 18 76 09 42 4E 45 20  | CHRGET...v.BNE |
000010C0: 46 55 31 20 3B 50 4F B5  45 52 2C 00 E5 18 78 09  |FU1 ;PO.ER,...x.|
000010D0: 44 45 43 20 24 37 42 20  3B 52 45 4A 4F 49 4E 20  |DEC $7B ;REJOIN |
000010E0: 42 41 53 49 43 00 F5 18  7A 09 46 55 31 20 44 45  |BASIC...z.FU1 DE|
000010F0: 43 20 24 37 41 00 04 19  7C 09 4A 4D 50 20 28 46  |C $7A...|.JMP (F|
00001100: 56 45 43 29 00 0A 19 7E  09 3B 00 30 19 80 09 46  |VEC)...~.;.0...F|
00001110: 55 32 20 4C 44 41 20 23  30 20 3B 43 4C 45 41 52  |U2 LDA #0 ;CLEAR|
00001120: 20 83 20 54 59 50 45 20  52 45 47 49 53 54 45 52  | . TYPE REGISTER|
00001130: 00 3C 19 82 09 53 54 41  20 24 30 44 00 60 19 84  |.<...STA $0D.`..|
00001140: 09 4A 53 52 20 24 37 33  20 3B 46 45 54 43 48 20  |.JSR $73 ;FETCH |
00001150: 4B 45 59 57 B0 44 20 49  2E 44 2E 20 42 59 54 45  |KEYW.D I.D. BYTE|
00001160: 00 7E 19 86 09 53 45 43  20 3B 43 91 56 45 52 54  |.~...SEC ;C.VERT|
00001170: 20 4B 45 59 57 B0 44 20  4E 55 4D 42 45 52 00 8B  | KEYW.D NUMBER..|
00001180: 19 88 09 53 42 43 20 23  24 34 30 00 98 19 8A 09  |...SBC #$40.....|
00001190: 43 4D 50 20 23 24 31 45  00 A4 19 8C 09 42 43 43  |CMP #$1E.....BCC|
000011A0: 20 46 55 33 00 AF 19 8E  09 53 42 43 20 23 31 00  | FU3.....SBC #1.|
000011B0: CD 19 90 09 46 55 33 20  53 45 43 20 3B 43 48 45  |....FU3 SEC ;CHE|
000011C0: 43 4B 20 8B 20 49 4E 20  52 41 4E 47 45 00 DA 19  |CK . IN RANGE...|
000011D0: 92 09 53 42 43 20 58 54  52 41 00 F3 19 94 09 42  |..SBC XTRA.....B|
000011E0: 43 43 20 45 58 37 20 3B  53 59 4E 54 41 58 20 45  |CC EX7 ;SYNTAX E|
000011F0: 52 52 B0 00 02 1A 96 09  43 4D 50 20 58 54 52 41  |RR......CMP XTRA|
00001200: AA 31 00 1B 1A 98 09 42  43 53 20 45 58 37 20 3B  |.1.....BCS EX7 ;|
00001210: 53 59 4E 54 41 58 20 45  52 52 B0 00 32 1A 9A 09  |SYNTAX ERR..2...|
00001220: 41 53 4C 20 3B 46 45 54  43 48 20 46 55 4E 43 54  |ASL ;FETCH FUNCT|
00001230: 49 91 00 4C 1A 9C 09 54  41 59 20 3B 56 45 43 A4  |I..L...TAY ;VEC.|
00001240: 52 20 46 52 4F 4D 20 54  41 42 4C 45 00 5C 1A 9E  |R FROM TABLE.\..|
00001250: 09 4C 44 41 20 A5 43 53  AA 31 2C 59 00 64 1A A0  |.LDA .CS.1,Y.d..|
00001260: 09 50 48 41 00 72 1A A2  09 4C 44 41 20 A5 43 53  |.PHA.r...LDA .CS|
00001270: 2C 59 00 8A 1A A4 09 50  48 41 20 3B 4A 55 4D 50  |,Y.....PHA ;JUMP|
00001280: 20 A4 20 46 55 4E 43 54  49 91 00 AC 1A A6 09 4A  | . FUNCTI......J|
00001290: 4D 50 20 24 37 33 20 3B  52 4F 55 54 49 4E 45 20  |MP $73 ;ROUTINE |
000012A0: 54 48 52 4F 55 47 48 20  43 48 52 A1 00 B2 1A A8  |THROUGH CHR.....|
000012B0: 09 3B 00 DA 1A AA 09 8B  52 54 4E 20 4A 53 52 20  |.;......RTN JSR |
000012C0: 24 41 44 39 45 20 3B 45  C5 55 41 54 45 20 54 45  |$AD9E ;E.UATE TE|
000012D0: 53 54 20 BD 52 45 53 53  49 91 00 E6 1A AC 09 4A  |ST .RESSI......J|
000012E0: 53 52 20 24 37 39 00 08  1B AE 09 43 4D 50 20 23  |SR $79.....CMP #|
000012F0: 24 38 39 20 3B 4D 55 53  54 20 42 45 20 46 4F 4C  |$89 ;MUST BE FOL|
00001300: 4C 4F 57 45 44 20 42 59  00 1C 1B B0 09 42 45 51  |LOWED BY.....BEQ|
00001310: 20 8B 31 20 3B 89 20 28  24 38 39 29 00 34 1B B2  | .1 ;. ($89).4..|
00001320: 09 4C 44 41 20 23 24 41  37 20 3B B0 20 A7 20 28  |.LDA #$A7 ;. . (|
00001330: 24 41 37 29 00 42 1B B4  09 4A 53 52 20 24 41 45  |$A7).B...JSR $AE|
00001340: 46 46 00 68 1B B6 09 8B  31 20 4A 53 52 20 24 37  |FF.h....1 JSR $7|
00001350: 39 20 3B 43 4C 45 41 52  20 43 41 52 52 59 20 91  |9 ;CLEAR CARRY .|
00001360: 20 4E 55 4D 45 52 49 43  00 89 1B B8 09 4C 44 58  | NUMERIC.....LDX|
00001370: 20 24 36 31 20 3B 43 48  45 43 4B 20 8B 20 54 45  | $61 ;CHECK . TE|
00001380: 53 54 20 46 41 49 4C 45  44 00 AB 1B BA 09 42 45  |ST FAILED.....BE|
00001390: 51 20 45 4C 53 52 54 4E  20 3B 59 45 53 20 AB 20  |Q ELSRTN ;YES . |
000013A0: 53 4B 49 50 20 A4 20 45  4C 53 45 00 B6 1B BC 09  |SKIP . ELSE.....|
000013B0: 42 43 53 20 8B 32 00 C7  1B BE 09 4A 4D 50 20 24  |BCS .2.....JMP $|
000013C0: 41 38 41 30 20 3B 89 00  E5 1B C0 09 8B 32 20 50  |A8A0 ;.......2 P|
000013D0: 4C 41 20 3B 45 58 45 43  55 54 45 20 53 54 41 54  |LA ;EXECUTE STAT|
000013E0: 45 4D 45 4E 54 00 F8 1B  C2 09 50 4C 41 20 3B 41  |EMENT.....PLA ;A|
000013F0: 46 54 45 52 20 27 A7 27  00 04 1C C4 09 4A 53 52  |FTER '.'.....JSR|
00001400: 20 24 37 39 00 10 1C C6  09 4A 4D 50 20 45 58 31  | $79.....JMP EX1|
00001410: 00 16 1C D0 09 3B 00 3B  1C D2 09 45 4C 53 52 54  |.....;.;...ELSRT|
00001420: 4E 20 4A 53 52 20 24 41  38 46 38 20 3B 53 4B 49  |N JSR $A8F8 ;SKI|
00001430: 50 20 53 54 41 54 45 4D  45 4E 54 00 47 1C D4 09  |P STATEMENT.G...|
00001440: 4A 53 52 20 24 37 39 00  5B 1C D6 09 43 4D 50 20  |JSR $79.[...CMP |
00001450: 23 30 20 3B 52 54 53 20  8B 20 80 00 6E 1C D8 09  |#0 ;RTS . ..n...|
00001460: 42 4E 45 20 45 4C 53 31  20 3B 4F 46 20 9B 00 76  |BNE ELS1 ;OF ..v|
00001470: 1C DA 09 52 54 53 00 95  1C DC 09 45 4C 53 31 20  |...RTS.....ELS1 |
00001480: 4A 53 52 20 24 37 33 20  3B 43 48 45 43 4B 20 81  |JSR $73 ;CHECK .|
00001490: 20 45 4C 53 45 00 A8 1C  DE 09 43 4D 50 20 23 24  | ELSE.....CMP #$|
000014A0: 35 46 20 3B A4 4B 45 4E  00 B7 1C E0 09 42 4E 45  |5F ;.KEN.....BNE|
000014B0: 20 45 4C 53 52 54 4E 00  C3 1C E2 09 4A 53 52 20  | ELSRTN.....JSR |
000014C0: 24 37 33 00 D0 1C E4 09  43 4D 50 20 23 24 34 30  |$73.....CMP #$40|
000014D0: 00 DF 1C E6 09 42 4E 45  20 45 4C 53 52 54 4E 00  |.....BNE ELSRTN.|
000014E0: F4 1C E8 09 4A 53 52 20  24 37 33 20 3B 45 58 45  |....JSR $73 ;EXE|
000014F0: 43 55 54 45 00 FF 1C EA  09 4A 4D 50 20 8B 32 00  |CUTE.....JMP .2.|
00001500: 05 1D EC 09 3B 00 22 1D  EE 09 45 58 54 20 4C 44  |....;."...EXT LD|
00001510: 58 20 23 37 20 3B 45 58  49 54 20 52 4F 55 54 49  |X #7 ;EXIT ROUTI|
00001520: 4E 45 00 3D 1D F0 09 45  58 54 31 20 4C 44 41 20  |NE.=...EXT1 LDA |
00001530: 54 56 45 43 2C 58 20 3B  8C 20 4F 4C 44 00 54 1D  |TVEC,X ;. OLD.T.|
00001540: F2 09 53 54 41 20 24 33  30 34 2C 58 20 3B 56 45  |..STA $304,X ;VE|
00001550: 43 A4 52 53 00 5C 1D F4  09 44 45 58 00 69 1D F6  |C.RS.\...DEX.i..|
00001560: 09 42 50 4C 20 45 58 54  31 00 84 1D F8 09 4C 44  |.BPL EXT1.....LD|
00001570: 41 20 23 24 41 32 20 3B  8C 20 4C 44 58 20 43 4F  |A #$A2 ;. LDX CO|
00001580: 44 45 20 A4 00 A8 1D FA  09 53 54 41 20 53 54 41  |DE ......STA STA|
00001590: 52 54 20 3B 45 4E 41 42  4C 45 20 53 54 41 52 54  |RT ;ENABLE START|
000015A0: 20 52 4F 55 54 49 4E 45  00 D2 1D FC 09 4A 4D 50  | ROUTINE.....JMP|
000015B0: 20 50 44 4F 57 4E 20 3B  44 4F 20 50 4F 57 44 4F  | PDOWN ;DO POWDO|
000015C0: 57 4E 20 43 4F 4D 4D AF  20 8B 20 50 52 45 53 45  |WN COMM. . PRESE|
000015D0: 4E 54 00 D8 1D FE 09 3B  00 F8 1D 00 0A 43 8B 43  |NT.....;.....C.C|
000015E0: 48 52 20 43 4D 50 20 23  24 35 42 20 3B 8E 20 43  |HR CMP #$5B ;. C|
000015F0: 41 52 52 59 20 53 45 54  00 13 1E 02 0A 42 43 43  |ARRY SET.....BCC|
00001600: 20 43 49 43 31 20 3B 8B  20 41 43 43 55 4D 55 4C  | CIC1 ;. ACCUMUL|
00001610: 41 A4 52 00 22 1E 04 0A  43 4C 43 20 3B 9A 41 49  |A.R."...CLC ;.AI|
00001620: 4E 53 00 3B 1E 06 0A 42  43 43 20 43 49 43 32 20  |NS.;...BCC CIC2 |
00001630: 3B 41 4C 50 48 41 42 45  54 49 43 00 4D 1E 08 0A  |;ALPHABETIC.M...|
00001640: 43 49 43 31 20 43 4D 50  20 23 24 34 31 00 5A 1E  |CIC1 CMP #$41.Z.|
00001650: 0A 0A 43 49 43 32 20 52  54 53 00 60 1E 0C 0A 3B  |..CIC2 RTS.`...;|
00001660: 00 82 1E 66 14 50 44 4F  57 4E 20 52 54 53 20 3B  |...f.PDOWN RTS ;|
00001670: 81 20 55 53 45 52 53 20  4F 46 20 27 50 4F 57 45  |. USERS OF 'POWE|
00001680: 52 27 00 88 1E 68 14 3B  00 00 00                 |R'...h.;...     |
..'.... TRANSBASIC KERNAL (SETP 28/84):.
-...:.M.... 2 STATEMENTS, 0 FUNCTIONS.S.
..:.P.... KEYWORDS CHARACTERS: 8.V...:..
.... KEYWORD  ROUTINE  LINE  SER#...... 
S/ELSE   ELSRTN   2514  001...... S/EXIT
   EXT      2542  002.....:...... UTILIT
Y: CIFCHR (2560/003).....:...... KERNAL 
ALSO INCLUDES MODIFIED.T.... "IF" STATEM
ENT (IFRTN/2474/000).Z...:...... B(773).
192 . 29: . TEST IF TRANSBASIC ALREADY E
NABLED.....:....._A:. 'EXIT' STATEMENT T
OKEN.B...:.L.... 700.X....OPT OO....... 
$C000... .;...!.T2 . 2 ;TRANSBASIC TAKES
 OVER THE.4.".T3 . 3 ;UNUSED LOCATI. AT 
2, ..U.#.T4 . 4 ;THE NUMERIC C.VERSI..W.
$.T5 . 5 ;VEC.RS AT 3 . 5 . ITS...%.T6 .
 6 ;ZERO PAGE W.KSPACE...&.;...[.;...\.J
MP START.S.].JMP EXT ;EMERGENCY EXIT .49
155.Y.^.;..._.XTRA .BYTE 2,0 ;STMTS,FUNC
TS...`.;...A..BYTE 0...B.;.2.C.SKW . . ;
STATEMENT KEYW.D ..D.D..F "ELSEEXIT".J.V
.;.I.W.FKW . . ;FUNCTI. KEYW.DS ..O.H.;.
..I..BYTE 0 ;KEYW.D . TERMINA.R...J.;...
K..S . . ;STATEMENT VEC.R.F.L..W.D $A93A
,EXT.1.L.>.;...?..CS . . ;FUNCTI. VEC.RS
...3.;...4.START LDX #7 ;SWAP OUT OLD.0.
6.STT1 LDA $304,X ;BASIC VEC.RS,.N.8.STA
 TVEC,X ;SWAP IN . .ES._.:.LDA NUVECS,X.
N.<.STA $304,X.V.>.DEX...@.BPL STT1. .B.
LDA XTRA ;CALCULATE .TAL...D.CLC...F.ADC
 XTRA.1.F.H.STA XTRA.2...J.LDA #$60 ;DIS
ABLE THIS...L.STA START ;ROUTINE WITH RT
S...N.RTS...P.;.-.R.TVEC .W.D $A57C ;S.R
AGE ..M.T.LVEC .W.D $A71A ;OLD VEC.RS.A.
V.EVEC .W.D $A7E4.U.X.FVEC .W.D $AE86.{.
Z.;...\.NUVECS .W.D .K,LIS,EXC,FUN ;. VE
C.RS...^.;.A.`..K LDX #0 ;.KENIZE.L.B.LD
Y #0...D.TK1 LDA $200,X ;FETCH A BYTE...
F.CMP #$22 ;CHECK . . QUOTE...H.BEQ TK9.
9.J.JSR C.CHR ;CHECK . ALPHABETIC.O.L.BC
C TK4 ;SKIP . ..F.N.STY $71 ;. .X . .Y.Q
.P.STX T3.|.R.LDY #0...T.STY $0B ;SET UP
 COUNTER...V.DEY ;SET UP INDICES...X.DEX
.D.Z.TK2 INY.L.|.INX...~.TK3 LDA $200,X 
;FETCH UN.KENIZED BYTE.....SEC.#...SBC S
KW,Y ;COMPARE WITH KEYW.D ..D...BEQ TK2 
;K BACK . A.HER BYTE.P...CMP #$80 ;CHECK
 . MATCH EXCEPT HIGH BIT.....BNE TK5 ;TR
Y . KEYW.D.....LDA #$5F ;FIRST BYTE OF .
KEN,.H...LDY $71 ;THE LEFT ARROW.W...STA
 $200,Y.....INY.....LDA $0B ;SEC.D BYTE 
OF .KEN.....ADC #$3F.....TK4 INX.'...STA
 $200,Y./...INY.Z...LDA $200,Y ;LOOP UNL
ESS LINE EXHAUSTED.F...BNE TK1... .JMP (
TVEC) ;REJOIN BASIC.....;.....TK5 LDX T3
 ;FIND . KEYW.D.....TK6 INC $0B.C...LDA 
$0B.....CMP #$1E ;SKIP PAST ..ENTIATE .K
EN.....BEQ TK6.....TK7 INY.....LDA SKW.1
,Y.....BPL TK7.,...LDA SKW,Y.8...BNE TK3
.Y...LDY $71 ;NO MATCHING KEYW.D,.{...LD
A $200,X ;GIVE UP ATTEMPT ......BPL TK4 
;.KENIZE.....;.....TK8 LDA $200,X ;SCAN 
. . OF.O.B.BEQ TK4 ;LINE . . OF...D.CMP 
#$22 ;QUOTES WITHOUT...F.BEQ TK4 ;.KENIZ
ING...H.TK9 STA $200,Y...J.INY.&.L.INX.2
.N.BNE TK8.8.P.;.W.R.LIS CMP #$5F ;. . .
. .KENS.W.T.BNE L2 ;SKIP . . LEFT.ARROW.
..V.INY ;. . BYTE,...X.LDA ($5F),Y ;C.VE
RT . .KEN...Z.SBC #$40 ;NUMBER.K...CMP #
$1E.V...BCC L1.....SBC #1.....L1 CMP XTR
A.2 ;CHECK . IN BOUNDS."...BCC L3 ;K SCA
N KEYW.D ..*...DEY.H...LDA ($5F),Y ;REJO
IN BASIC.S...L2 TAX.B...JMP (LVEC).H...;
.....L3 STY T3 ;COUNTDOWN IN .X.....LDY 
#0 ;WHILE SCANNING.....TAX ;KEYW.D .....
.BEQ L5.P...L4 LDA SKW,Y.X...PHP.....INY
.....PLP.....BPL L4 ;LAST KEYW.D.....DEX
 ;CHARACTER HAS BIT.-...BNE L4 ;7 SET.3.
..;.N...L5 LDA SKW,Y ;. KEYW.D.C...PHP ;
U.G BASIC'S.{.... #$7F ;CHARACTER.......
JSR $AB47 ;ROUTINE AT $AB47.....INY.....
PLP.....BPL L5.A...LDY T3.....L6 JMP $A7
00 ;REJOIN BASIC.....;.....EXC JSR $73 ;
EXECUTE STATEMENT.,...EX1 CMP #$8B ;'.'.
H.LE AT .RTN.8. .BEQ EX8.U.".CMP #$5F ;T
HE LEFT ARROW.V.$.BNE EX5 ;SKIP . REJOIN
 BASIC...&.JSR $73 ;. . BYTE...(.JSR EX2
 ;EXECUTE.C.*.JMP $A7AE ;SET UP . STATEM
ENT.I.,.;.....EX2 SEC ;C.VERT .KEN ....0
.SBC #$40 ;KEYW.D NUMBER...2.CMP #$1E...
4.BCC EX3.$.6.SBC #1.H.8.EX3 CMP XTRA ;C
HECK . IN BOUNDS.A.:.BCS EX7 ;SYNTAX ERR
..I.<.ASL.Q.>.TAY...@.LDA .S.1,Y ;FETCH 
VEC.R...B.PHA ;ADDRESS FROM TABLE...D.LD
A .S,Y.Q.F.PHA ;JUMP THROUGH CHR....H.JM
P $73 ;. STATEMENT ROUTINE...J.;...L.EX5
 LDA $7A ;DEC.ENT CHRGET.+.N.BNE EX6 ;PO
.ER.7.P.DEC $7B.G.R.EX6 DEC $7A.D.T.JMP 
(EVEC) ;REJOIN BASIC.J.V.;...X.EX7 JMP $
AF08 ;SYNTAX ERR....Z.;...\.EX8 JSR EX9;
 EXECUTE '.'.N.^.JMP $A7AE ;SET UP . STA
TEMENT.T.`.;...B.EX9 LDA #..RTN.1 ;JUMP 
....D.PHA ;'.' EXECUTI..!.F.LDA #..RTN.1
 ;ROUTINE.).H.PHA.5.J.JMP $73.;.L.;.[.N.
FUN JSR $73 ;EEUATE FUNCTI..T.P.CMP #$5F
 ;LEFT ARROW...R.BEQ FU2 ;EEUATE TRANSBA
SIC FUNCTI....T.LDA $7A ;DEC.ENT CHRGET.
K.V.BNE FU1 ;PO.ER,...X.DEC $7B ;REJOIN 
BASIC...Z.FU1 DEC $7A...|.JMP (FVEC)...~
.;.0...FU2 LDA #0 ;CLEAR . TYPE REGISTER
.<...STA $0D.`...JSR $73 ;FETCH KEYW.D I
.D. BYTE.~...SEC ;C.VERT KEYW.D NUMBER..
...SBC #$40.....CMP #$1E.....BCC FU3....
.SBC #1.M...FU3 SEC ;CHECK . IN RANGE.Z.
..SBC XTRA.....BCC EX7 ;SYNTAX ERR......
CMP XTRA.1.....BCS EX7 ;SYNTAX ERR..2...
ASL ;FETCH FUNCTI..L...TAY ;VEC.R FROM T
ABLE.\...LDA .CS.1,Y.D. .PHA.R...LDA .CS
,Y.....PHA ;JUMP . FUNCTI......JMP $73 ;
ROUTINE THROUGH CHR......;.Z....RTN JSR 
$AD9E ;EEUATE TEST .RESSI......JSR $79..
...CMP #$89 ;MUST BE FOLLOWED BY.....BEQ
 .1 ;. ($89).4...LDA #$A7 ;. . ($A7).B..
.JSR $AEFF.H....1 JSR $79 ;CLEAR CARRY .
 NUMERIC.....LDX $61 ;CHECK . TEST FAILE
D.....BEQ ELSRTN ;YES . SKIP . ELSE.....
BCS .2.G...JMP $A8A0 ;.......2 PLA ;EXEC
UTE STATEMENT...B.PLA ;AFTER '.'...D.JSR
 $79...F.JMP EX1...P.;.;.R.ELSRTN JSR $A
8F8 ;SKIP STATEMENT.G.T.JSR $79.[.V.CMP 
#0 ;RTS . ..N.X.BNE ELS1 ;OF ..V.Z.RTS..
...ELS1 JSR $73 ;CHECK . ELSE.....CMP #$
5F ;.KEN.....BNE ELSRTN.C...JSR $73.P...
CMP #$40.....BNE ELSRTN.....JSR $73 ;EXE
CUTE.....JMP .2.....;."...EXT LDX #7 ;EX
IT ROUTINE.=...EXT1 LDA TVEC,X ;. OLD.T.
..STA $304,X ;VEC.RS.\...DEX.I...BPL EXT
1.....LDA #$A2 ;. LDX CODE ......STA STA
RT ;ENABLE START ROUTINE.R...JMP PDOWN ;
DO POWDOWN COMM. . PRESENT.X...;.....C.C
HR CMP #$5B ;. CARRY SET.....BCC CIC1 ;.
 ACCUMULA.R."...CLC ;.AINS.;...BCC CIC2 
;ALPHABETIC.M...CIC1 CMP #$41.Z...CIC2 R
TS.`...;...F.PDOWN RTS ;. USERS OF 'POWE
R'...H.;...
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL