0005 ; Disassembly of KTM2-80 ROM (U-19) 0010 ; Using Dessaint's Disassembler 0015 0020 ; Semi cleaned up to allow the altering 0025 ; of the keyboard encoding table for the 0030 ; installation and use of a 60 key keyboard. 0035 0040 ; If KEYS is Defined 54 Then Generate Original 0045 ; KTM Keyboard. If KEYS .DE 60, Generate 0050 ; Expanded Keyboard. 0055 0060 KEYS .DE 54 ; Standard KTM 0065 0070 Z00 .DE $00 0075 Z01 .DE $01 0080 ZF0 .DE $F0 0085 ZF1 .DE $F1 0090 ZF2 .DE $F2 0095 ZF3 .DE $F3 0100 ZF4 .DE $F4 0105 ZF5 .DE $F5 0110 ZF6 .DE $F6 0115 ZF7 .DE $F7 0120 ZF8 .DE $F8 0125 ZF9 .DE $F9 0130 ZFA .DE $FA 0135 ZFB .DE $FB 0140 ZFC .DE $FC 0145 ZFD .DE $FD 0150 ZFE .DE $FE 0155 ZFF .DE $FF 0160 J0103 .DE $0103 0165 J0127 .DE $0127 0170 J014F .DE $014F 0175 J0161 .DE $0161 0180 A01B4 .DE $01B4 0185 J01F5 .DE $01F5 0190 A0200 .DE $0200 0195 A0300 .DE $0300 0200 A08F0 .DE $08F0 0205 A0CF8 .DE $0CF8 0210 J1124 .DE $1124 0215 J113E .DE $113E 0220 J1164 .DE $1164 0225 A11BC .DE $11BC 0230 A1CF8 .DE $1CF8 0235 A2AF0 .DE $2AF0 0240 A2AF1 .DE $2AF1 0245 A2AF2 .DE $2AF2 0250 A2AF3 .DE $2AF3 0255 A2AF4 .DE $2AF4 0260 A2AF5 .DE $2AF5 0265 A2AF6 .DE $2AF6 0270 A2AF7 .DE $2AF7 0275 A2AF8 .DE $2AF8 0280 A2AF9 .DE $2AF9 0285 A2AFA .DE $2AFA 0290 A2AFD .DE $2AFD 0295 A2AFE .DE $2AFE 0300 A2BF8 .DE $2BF8 0305 0310 ; U-2 (6522) Memory Locations 0315 0320 PBDA_U2 .DE $7F00 ; I/O Register B 0325 PADA_U2 .DE $7F01 ; I/O Register A 0330 DDRB_U2 .DE $7F02 ; Data Direction Register B 0335 DDRA_U2 .DE $7F03 ; Data Direction Register A 0340 T1CL_U2 .DE $7F04 ; Timer 1 Low-Order Counter 0345 T1CH_U2 .DE $7F05 ; Timer 1 High-Order Counter 0350 SR_U2 .DE $7F0A ; Shift Register 0355 ACR_U2 .DE $7F0B ; Auxiliary Control Register 0360 PCR_U2 .DE $7F0C ; Perpheral Control Register 0365 IFR_U2 .DE $7F0D ; Interrupt Flag Register 0370 IER_U2 .DE $7F0E ; Interrupt Enable Register 0375 0380 ; U-1 Memory Locations 0385 0390 PBDA_U1 .DE $BF00 ; I/O Register B 0395 PADA_U1 .DE $BF01 ; I/O Register A 0400 DDRB_U1 .DE $BF02 ; Data Direction Register B 0405 DDRA_U1 .DE $BF03 ; Data Direction Register A 0410 T1CL_U1 .DE $BF04 ; Timer 1 Low-Order Counter 0415 T1CH_U1 .DE $BF05 ; Timer 1 High-Order Counter 0420 T1LH_U1 .DE $BF07 ; Timer 1 High-Order Latches 0425 T2CH_U1 .DE $BF09 ; Timer 2 High-Order Counter 0430 SR_U1 .DE $BF0A ; Shift Register 0435 ACR_U1 .DE $BF0B ; Auxiliary Control Register 0440 PCR_U1 .DE $BF0C ; Perpheral Control Register 0445 IFR_U1 .DE $BF0D ; Interrupt Flag Register 0450 IER_U1 .DE $BF0E ; Interrupt Enable Register 0455 ; 0460 .BA $F000 ; Don't Change This 0465 .OS $8000 0470 F000- 4C 03 01 0475 JMP J0103 0480 ; F003- 70 03 0485 BVS BF008 0490 ; F005- 60 0495 RTS 0500 ; F006- 9A 0505 TXS F007- 60 0510 RTS 0515 ; F008- AD F0 08 0520 BF008 LDA A08F0 F00B- 25 F0 0525 AND *ZF0 F00D- 6A 0530 ROR A F00E- AE F8 0C 0535 LDX A0CF8 F011- BC B4 01 0540 LDY A01B4,X F014- 90 01 0545 BCC BF017 0550 ; F016- C8 0555 INY F017- 90 00 0560 BF017 BCC BF019 0565 ; F019- A2 2C 0570 BF019 LDX #$2C ;, F01B- 9A 0575 TXS F01C- A2 04 0580 LDX #$04 ;^D F01E- CA 0585 BF01E DEX F01F- D0 FD 0590 BNE BF01E 0595 ; F021- 4C 24 11 0600 JMP J1124 0605 ; F024- 4C 27 01 0610 JMP J0127 0615 ; F027- A2 09 0620 LDX #$09 ;^I F029- 88 0625 DEY F02A- D0 F2 0630 BNE BF01E 0635 ; F02C- 60 0640 RTS 0645 ; F02D- 30 01 0650 .BY $30 $01 0655 ; F02F- 66 01 0660 ROR *Z01 F031- A9 00 0665 LDA #$00 ;^@ F033- A0 06 0670 LDY #$06 ;^F F035- B0 15 0675 BCS BF04C 0680 ; F037- A2 04 0685 LDX #$04 ;^D F039- CA 0690 BF039 DEX F03A- D0 FD 0695 BNE BF039 0700 ; F03C- F0 0B 0705 BEQ BF049 0710 ; F03E- 49 FF 0715 EOR #$FF ;. F040- D0 00 0720 BNE BF042 0725 ; F042- EA 0730 BF042 NOP F043- 88 0735 DEY F044- F0 0C 0740 BEQ BF052 0745 ; F046- EA 0750 NOP F047- EA 0755 NOP F048- EA 0760 NOP F049- EA 0765 BF049 NOP F04A- EA 0770 NOP F04B- EA 0775 BF04B NOP F04C- 4C 4F 01 0780 BF04C JMP J014F 0785 ; F04F- 4C 3E 11 0790 JMP J113E 0795 ; F052- 90 04 0800 BF052 BCC BF058 0805 ; F054- 18 0810 CLC F055- C8 0815 INY F056- 90 F3 0820 BCC BF04B 0825 ; F058- AE F8 1C 0830 BF058 LDX A1CF8 F05B- BC BC 11 0835 LDY A11BC,X F05E- 4C 61 01 0840 JMP J0161 0845 ; F061- 4C 64 11 0850 JMP J1164 0855 ; F064- 4C 27 01 0860 JMP J0127 0865 ; F067- EE F0 08 0870 INC A08F0 F06A- A5 F0 0875 LDA *ZF0 F06C- 29 3E 0880 AND #$3E ;> F06E- 69 83 0885 ADC #$83 ;.^C F070- C9 B3 0890 CMP #$B3 ;.3 F072- 90 02 0895 BCC BF076 0900 ; F074- A9 83 0905 LDA #$83 ;.^C F076- 90 00 0910 BF076 BCC BF078 0915 ; F078- AA 0920 BF078 TAX F079- A5 F8 0925 LDA *ZF8 F07B- 18 0930 CLC F07C- 69 7F 0935 ADC #$7F ; F07E- EA 0940 NOP F07F- 4C F5 01 0945 JMP J01F5 0950 0955 ; Never Bothered to Figure Out These Bytes 0960 F082- FF FF 02 0965 .BY $FF $FF $02 $03 $2A $03 $52 $03 F085- 03 2A 03 F088- 52 03 F08A- 7A 03 A2 0970 .BY $7A $03 $A2 $03 $CA $03 $02 $07 F08D- 03 CA 03 F090- 02 07 F092- 2A 07 52 0975 .BY $2A $07 $52 $07 $7A $07 $A2 $02 F095- 07 7A 07 F098- A2 02 F09A- CA 07 02 0980 .BY $CA $07 $02 $0B $2A $0B $52 $0B F09D- 0B 2A 0B F0A0- 52 0B F0A2- 7A 0B A2 0985 .BY $7A $0B $A2 $0B $CA $0B $02 $0F F0A5- 0B CA 0B F0A8- 02 0F F0AA- 2A 0F 52 0990 .BY $2A $0F $52 $0F $7A $0F $A2 $0F F0AD- 0F 7A 0F F0B0- A2 0F F0B2- CA 0F 06 0995 .BY $CA $0F $06 $06 $04 $19 $18 $2C F0B5- 06 04 19 F0B8- 18 2C F0BA- 0E 23 10 1000 .BY $0E $23 $10 $10 $0E $2D $2A $4A F0BD- 10 0E 2D F0C0- 2A 4A F0C2- 1C 3B 1005 .BY $1C $3B F0C4- 00 28 50 1010 AF0C4 .BY $00 $28 $50 $78 $A0 $C8 F0C7- 78 A0 C8 F0CA- 01 29 51 1015 .BY $01 $29 $51 $79 $A1 $C9 $02 $2A F0CD- 79 A1 C9 F0D0- 02 2A F0D2- 52 7A A2 1020 .BY $52 $7A $A2 $CA $03 $2B $53 $7B F0D5- CA 03 2B F0D8- 53 7B F0DA- A3 CB 1025 .BY $A3 $CB F0DC- F9 E3 F0 1030 AF0DC .BY $F9 $E3 $F0 $77 $BB $5C F0DF- 77 BB 5C F0E2- 3D 2D 1035 .BY $3D $2D F0E4- 05 01 00 1040 AF0E4 .BY $05 $01 $00 $00 $00 $00 F0E7- 00 00 00 F0EA- 00 00 18 1045 .BY $00 $00 $18 $18 $18 $14 $18 $EA F0ED- 18 18 14 F0F0- 18 EA F0F2- 4C 00 11 1050 .BY $4C $00 $11 $AC $F8 $08 $4C $FB F0F5- AC F8 08 F0F8- 4C FB F0FA- 11 4C 06 1055 .BY $11 $4C $06 $01 $FF $FF $FF $FF F0FD- 01 FF FF F100- FF FF F102- FF 1060 .BY $FF 1065 1070 ; The Following Bytes Repeat the Pattern 1075 ; They Are Repeated Between $F103 - $F1CA 1080 F103- B8 88 F0 1085 .BY $B8 $88 $F0 $03 $EA $D0 $03 $BA F106- 03 EA D0 F109- 03 BA F10B- 69 FF 9A 1090 .BY $69 $FF $9A $E0 $B3 $90 $02 $A2 F10E- E0 B3 90 F111- 02 A2 F113- 83 90 00 1095 .BY $83 $90 $00 $70 $02 $C0 $81 $50 F116- 70 02 C0 F119- 81 50 F11B- 01 2A 30 1100 .BY $01 $2A $30 $02 $F0 $4C $F0 $0D F11E- 02 F0 4C F121- F0 0D F123- 30 FB 4C 1105 .BY $30 $FB $4C $F5 $0D $FF $FF $FF F126- F5 0D FF F129- FF FF 1110 1115 ; The Pattern Repeats 1120 F12B- B8 88 F0 1125 .BY $B8 $88 $F0 $03 $EA $D0 $03 $BA F12E- 03 EA D0 F131- 03 BA F133- 69 FF 9A 1130 .BY $69 $FF $9A $E0 $B3 $90 $02 $A2 F136- E0 B3 90 F139- 02 A2 F13B- 83 90 00 1135 .BY $83 $90 $00 $70 $02 $C0 $81 $50 F13E- 70 02 C0 F141- 81 50 F143- 01 2A 30 1140 .BY $01 $2A $30 $02 $F0 $4C $F0 $0D F146- 02 F0 4C F149- F0 0D F14B- 30 FB 4C 1145 .BY $30 $FB $4C $F5 $0D $FF $FF $FF F14E- F5 0D FF F151- FF FF 1150 1155 ; Repeated 1160 F153- B8 88 F0 1165 .BY $B8 $88 $F0 $03 $EA $D0 $03 $BA F156- 03 EA D0 F159- 03 BA F15B- 69 FF 9A 1170 .BY $69 $FF $9A $E0 $B3 $90 $02 $A2 F15E- E0 B3 90 F161- 02 A2 F163- 83 90 00 1175 .BY $83 $90 $00 $70 $02 $C0 $81 $50 F166- 70 02 C0 F169- 81 50 F16B- 01 2A 30 1180 .BY $01 $2A $30 $02 $F0 $4C $F0 $0D F16E- 02 F0 4C F171- F0 0D F173- 30 FB 4C 1185 .BY $30 $FB $4C $F5 $0D $FF $FF $FF F176- F5 0D FF F179- FF FF 1190 1195 ; Repeated 1200 F17B- B8 88 F0 1205 .BY $B8 $88 $F0 $03 $EA $D0 $03 $BA F17E- 03 EA D0 F181- 03 BA F183- 69 FF 9A 1210 .BY $69 $FF $9A $E0 $B3 $90 $02 $A2 F186- E0 B3 90 F189- 02 A2 F18B- 83 90 00 1215 .BY $83 $90 $00 $70 $02 $C0 $81 $50 F18E- 70 02 C0 F191- 81 50 F193- 01 2A 30 1220 .BY $01 $2A $30 $02 $F0 $4C $F0 $0D F196- 02 F0 4C F199- F0 0D F19B- 30 FB 4C 1225 .BY $30 $FB $4C $F5 $0D $FF $FF $FF F19E- F5 0D FF F1A1- FF FF 1230 1235 ; Repeated 1240 F1A3- B8 88 F0 1245 .BY $B8 $88 $F0 $03 $EA $D0 $03 $BA F1A6- 03 EA D0 F1A9- 03 BA F1AB- 69 FF 9A 1250 .BY $69 $FF $9A $E0 $B3 $90 $02 $A2 F1AE- E0 B3 90 F1B1- 02 A2 F1B3- 83 90 00 1255 .BY $83 $90 $00 $70 $02 $C0 $81 $50 F1B6- 70 02 C0 F1B9- 81 50 F1BB- 01 2A 30 1260 .BY $01 $2A $30 $02 $F0 $4C $F0 $0D F1BE- 02 F0 4C F1C1- F0 0D F1C3- 30 FB 4C 1265 .BY $30 $FB $4C $F5 $0D $FF $FF $FF F1C6- F5 0D FF F1C9- FF FF 1270 F1CB- B8 88 F0 1275 .BY $B8 $88 $F0 $03 $EA $D0 $03 $BA F1CE- 03 EA D0 F1D1- 03 BA F1D3- 69 FF 9A 1280 .BY $69 $FF $9A $E0 $B3 $90 $02 $A2 F1D6- E0 B3 90 F1D9- 02 A2 F1DB- 83 90 00 1285 .BY $83 $90 $00 $70 $02 $C0 $81 $50 F1DE- 70 02 C0 F1E1- 81 50 F1E3- 01 2A 30 1290 .BY $01 $2A $30 $02 $F0 $4C $F0 $0D F1E6- 02 F0 4C F1E9- F0 0D F1EB- 30 FB 4C 1295 .BY $30 $FB $4C $F5 $0D F1EE- F5 0D F1F0- 4D F6 F8 1300 AF1F0 .BY $4D $F6 $F8 F1F3- 7B 3D 1D 1305 .BY $7B $3D $1D $13 $0E F1F6- 13 0E F1F8- 0C 0A 08 1310 BF1F8 .BY $0C $0A $08 F1FB- 09 08 01 1315 .BY $09 $08 $01 1320 F1FE- A2 FF 1325 RST_VEC LDX #$FF F200- 9A 1330 TXS F201- E8 1335 INX F202- 8A 1340 TXA F203- 48 1345 PHA F204- 28 1350 PLP F205- A2 F0 1355 LDX #$F0 ;.p F207- 95 00 1360 BF207 STA *Z00,X F209- 9D 00 02 1365 STA A0200,X F20C- 9D 00 03 1370 STA A0300,X F20F- E8 1375 INX F210- D0 F5 1380 BNE BF207 1385 ; F212- 20 B1 F6 1390 JSR SF6B1 F215- A9 00 1395 LDA #$00 ;^@ F217- 8D 01 BF 1400 STA PADA_U1 F21A- 8D 02 7F 1405 STA DDRB_U2 F21D- A9 DC 1410 LDA #$DC ;.\ F21F- 8D 0B BF 1415 STA ACR_U1 F222- A9 10 1420 LDA #$10 ;^P F224- 8D 03 BF 1425 STA DDRA_U1 F227- A9 D9 1430 LDA #$D9 ;.Y F229- 8D 02 BF 1435 STA DDRB_U1 F22C- A9 A6 1440 LDA #$A6 ;.& F22E- 8D 00 BF 1445 STA PBDA_U1 F231- AD 00 7F 1450 LDA PBDA_U2 F234- 4A 1455 LSR A F235- 4A 1460 BF235 LSR A F236- 6E FD 2A 1465 ROR A2AFD F239- 4A 1470 LSR A F23A- 26 F0 1475 ROL *ZF0 F23C- 4A 1480 LSR A F23D- 6E F2 2A 1485 ROR A2AF2 F240- 4A 1490 LSR A F241- 6E F2 2A 1495 ROR A2AF2 F244- 4A 1500 LSR A F245- 26 F3 1505 ROL *ZF3 F247- 4A 1510 LSR A F248- 26 F3 1515 ROL *ZF3 F24A- AD 00 BF 1520 LDA PBDA_U1 F24D- 0A 1525 ASL A F24E- 0A 1530 ASL A F24F- 0A 1535 ASL A F250- 26 F3 1540 ROL *ZF3 F252- A6 F3 1545 LDX *ZF3 F254- BD E7 F7 1550 LDA AF7E7,X F257- 85 F4 1555 STA *ZF4 F259- 8D 05 BF 1560 STA T1CH_U1 F25C- 8D 05 7F 1565 STA T1CH_U2 F25F- BD DC F0 1570 LDA AF0DC,X F262- 85 F5 1575 STA *ZF5 F264- 8D 04 7F 1580 STA T1CL_U2 F267- BD E4 F0 1585 LDA AF0E4,X F26A- 85 F9 1590 STA *ZF9 F26C- BD F0 F1 1595 LDA AF1F0,X F26F- 85 FA 1600 STA *ZFA F271- A9 02 1605 LDA #$02 ;^B F273- 2C 0D BF 1610 BIT IFR_U1 F276- F0 02 1615 BEQ BF27A 1620 ; F278- E6 FF 1625 INC *ZFF F27A- 18 1630 BF27A CLC F27B- 2C 0D 7F 1635 BIT IFR_U2 F27E- F0 01 1640 BEQ BF281 1645 ; F280- 38 1650 SEC F281- 26 FF 1655 BF281 ROL *ZFF F283- AD 01 BF 1660 LDA PADA_U1 F286- 18 1665 CLC F287- 29 08 1670 AND #$08 ;^H F289- F0 01 1675 BEQ BF28C 1680 ; F28B- 38 1685 SEC F28C- 26 FF 1690 BF28C ROL *ZFF F28E- A5 FF 1695 LDA *ZFF F290- 8D F8 2B 1700 STA A2BF8 F293- 4A 1705 LSR A F294- A8 1710 TAY F295- A9 18 1715 LDA #$18 ;^X F297- 85 F8 1720 STA *ZF8 F299- B9 F8 F1 1725 LDA BF1F8,Y F29C- 8D F8 2A 1730 STA A2AF8 F29F- A9 79 1735 LDA #$79 ;y F2A1- 8D 02 BF 1740 STA DDRB_U1 F2A4- A9 EE 1745 LDA #$EE ;.n F2A6- 8D 0C BF 1750 STA PCR_U1 F2A9- A9 FF 1755 LDA #$FF ;. F2AB- 8D 02 7F 1760 STA DDRB_U2 F2AE- 8D 03 7F 1765 STA DDRA_U2 F2B1- 8D 0A BF 1770 STA SR_U1 F2B4- A9 C0 1775 LDA #$C0 ;.@ F2B6- 8D 0B 7F 1780 STA ACR_U2 F2B9- A9 2E 1785 LDA #$2E ;. F2BB- 8D 0C 7F 1790 STA PCR_U2 F2BE- A9 F6 1795 LDA #$F6 ;.v F2C0- 8D 00 BF 1800 STA PBDA_U1 F2C3- 8D F9 2A 1805 STA A2AF9 F2C6- A9 88 1810 LDA #$88 ;.^H F2C8- 8D 0E 7F 1815 STA IER_U2 F2CB- A9 20 1820 LDA #$20 ; F2CD- 8D 03 BF 1825 STA DDRA_U1 F2D0- AD F0 2A 1830 BF2D0 LDA A2AF0 F2D3- 29 10 1835 AND #$10 ;^P F2D5- F0 04 1840 BEQ BF2DB 1845 ; F2D7- A9 FE 1850 LDA #$FE ;.~ F2D9- D0 03 1855 BNE BF2DE 1860 ; F2DB- AD F3 2A 1865 BF2DB LDA A2AF3 F2DE- 20 00 F7 1870 BF2DE JSR SF700 F2E1- 2C F5 2A 1875 BIT A2AF5 F2E4- 10 08 1880 BPL BF2EE 1885 ; F2E6- AD 00 BF 1890 LDA PBDA_U1 F2E9- 09 40 1895 ORA #$40 ;@ F2EB- 8D 00 BF 1900 STA PBDA_U1 F2EE- A5 F1 1905 BF2EE LDA *ZF1 F2F0- 30 0F 1910 BMI BF301 1915 ; F2F2- 20 92 F3 1920 JSR SF392 F2F5- 90 0A 1925 BCC BF301 1930 ; F2F7- 20 68 F3 1935 JSR SF368 F2FA- 90 D4 1940 BCC BF2D0 1945 ; F2FC- 66 F1 1950 BF2FC ROR *ZF1 F2FE- 20 5D F3 1955 JSR SF35D F301- A5 F2 1960 BF301 LDA *ZF2 F303- 30 14 1965 BMI BF319 1970 ; F305- 20 92 F3 1975 JSR SF392 F308- 90 0B 1980 BCC BF315 1985 ; F30A- 20 68 F3 1990 JSR SF368 F30D- 90 C1 1995 BCC BF2D0 2000 ; F30F- A5 F1 2005 LDA *ZF1 F311- 85 F2 2010 STA *ZF2 F313- 10 E7 2015 BPL BF2FC 2020 ; F315- 24 F1 2025 BF315 BIT *ZF1 F317- 10 B7 2030 BPL BF2D0 2035 ; F319- A0 3F 2040 BF319 LDY #$3F ;? F31B- 20 91 F3 2045 BF31B JSR SF391 F31E- B0 19 2050 BCS BF339 2055 ; F320- C5 F2 2060 CMP *ZF2 F322- F0 15 2065 BEQ BF339 2070 ; F324- 20 68 F3 2075 JSR SF368 F327- B0 F2 2080 BCS BF31B 2085 ; F329- 48 2090 PHA F32A- A5 F2 2095 LDA *ZF2 F32C- 85 F1 2100 STA *ZF1 F32E- 68 2105 PLA F32F- 85 F2 2110 STA *ZF2 F331- 20 10 F4 2115 JSR SF410 F334- 20 5D F3 2120 JSR SF35D F337- D0 97 2125 BNE BF2D0 2130 ; F339- 88 2135 BF339 DEY F33A- 10 DF 2140 BPL BF31B 2145 ; F33C- 20 42 F3 2150 JSR SF342 F33F- 4C D0 F2 2155 JMP BF2D0 2160 ; F342- AD 0D BF 2165 SF342 LDA IFR_U1 F345- 29 20 2170 AND #$20 ; F347- F0 1E 2175 BEQ BF367 2180 ; F349- CE F1 2A 2185 DEC A2AF1 F34C- D0 14 2190 BNE BF362 2195 ; F34E- A5 F2 2200 LDA *ZF2 F350- 30 15 2205 BMI BF367 2210 ; F352- C9 2A 2215 CMP #$2A ;* F354- F0 03 2220 BEQ BF359 2225 ; F356- 20 10 F4 2230 JSR SF410 F359- A9 03 2235 BF359 LDA #$03 ;^C F35B- D0 02 2240 BNE BF35F 2245 ; F35D- A9 23 2250 SF35D LDA #$23 ;# F35F- 8D F1 2A 2255 BF35F STA A2AF1 F362- A9 48 2260 BF362 LDA #$48 ;H F364- 8D 09 BF 2265 STA T2CH_U1 F367- 60 2270 BF367 RTS 2275 ; F368- A8 2280 SF368 TAY F369- A9 3F 2285 BF369 LDA #$3F ;? F36B- 8D 09 BF 2290 STA T2CH_U1 F36E- 20 91 F3 2295 JSR SF391 F371- B0 0F 2300 BCS BF382 2305 ; F373- 20 91 F3 2310 BF373 JSR SF391 F376- B0 F1 2315 BCS BF369 2320 ; F378- AD 0D BF 2325 LDA IFR_U1 F37B- 29 20 2330 AND #$20 ; F37D- F0 F4 2335 BEQ BF373 2340 ; F37F- 98 2345 TYA F380- 18 2350 CLC F381- 60 2355 RTS 2360 ; F382- 20 91 F3 2365 BF382 JSR SF391 F385- 90 E2 2370 BCC BF369 2375 ; F387- AD 0D BF 2380 LDA IFR_U1 F38A- 29 20 2385 AND #$20 ; F38C- F0 F4 2390 BEQ BF382 2395 ; F38E- 98 2400 TYA F38F- 38 2405 SEC F390- 60 2410 RTS 2415 ; F391- 98 2420 SF391 TYA F392- 85 F3 2425 SF392 STA *ZF3 F394- AD 01 BF 2430 LDA PADA_U1 F397- 29 DF 2435 AND #$DF ;._ F399- 8D 01 BF 2440 STA PADA_U1 F39C- CE F6 2A 2445 DEC A2AF6 F39F- D0 03 2450 BNE BF3A4 2455 ; F3A1- CE F5 2A 2460 DEC A2AF5 F3A4- AD F9 2A 2465 BF3A4 LDA A2AF9 F3A7- 30 03 2470 BMI BF3AC 2475 ; F3A9- 20 C8 F4 2480 JSR SF4C8 F3AC- A9 FF 2485 BF3AC LDA #$FF ;. F3AE- 8D 01 7F 2490 STA PADA_U2 F3B1- 8D 00 7F 2495 STA PBDA_U2 F3B4- AD 00 BF 2500 LDA PBDA_U1 F3B7- 09 20 2505 ORA #$20 ; F3B9- 8D 00 BF 2510 STA PBDA_U1 F3BC- A5 F3 2515 LDA *ZF3 F3BE- 4A 2520 LSR A F3BF- 4A 2525 LSR A F3C0- 4A 2530 LSR A F3C1- AA 2535 TAX F3C2- E0 07 2540 CPX #$07 ;^G F3C4- F0 1A 2545 BEQ BF3E0 2550 ; F3C6- 18 2555 CLC F3C7- A9 FF 2560 LDA #$FF ;. F3C9- 2A 2565 BF3C9 ROL A F3CA- CA 2570 DEX F3CB- 10 FC 2575 BPL BF3C9 2580 ; F3CD- 8D 00 7F 2585 STA PBDA_U2 F3D0- A5 F3 2590 BF3D0 LDA *ZF3 F3D2- 29 07 2595 AND #$07 ;^G F3D4- AA 2600 TAX F3D5- AD 01 7F 2605 LDA PADA_U2 F3D8- 4A 2610 BF3D8 LSR A F3D9- CA 2615 DEX F3DA- 10 FC 2620 BPL BF3D8 2625 ; F3DC- A5 F3 2630 LDA *ZF3 F3DE- A8 2635 TAY F3DF- 60 2640 BF3DF RTS 2645 ; F3E0- AD 00 BF 2650 BF3E0 LDA PBDA_U1 F3E3- 29 DF 2655 AND #$DF ;._ F3E5- 8D 00 BF 2660 STA PBDA_U1 F3E8- D0 E6 2665 BNE BF3D0 2670 ; F3EA- C9 E4 2675 BF3EA CMP #$E4 ;.d F3EC- F0 11 2680 BEQ BF3FF 2685 ; F3EE- C9 E0 2690 CMP #$E0 ;.` F3F0- D0 03 2695 BNE BF3F5 2700 ; F3F2- 4C 53 F5 2705 JMP JF553 2710 ; F3F5- A2 FF 2715 BF3F5 LDX #$FF ;. F3F7- 86 FF 2720 STX *ZFF F3F9- E8 2725 INX F3FA- A0 67 2730 LDY #$67 ;g F3FC- 4C 93 F4 2735 JMP JF493 2740 ; F3FF- AD 00 BF 2745 BF3FF LDA PBDA_U1 F402- 49 01 2750 EOR #$01 ;^A F404- 8D 00 BF 2755 STA PBDA_U1 F407- AD F7 2A 2760 LDA A2AF7 F40A- 49 40 2765 EOR #$40 ;@ F40C- 8D F7 2A 2770 STA A2AF7 F40F- 60 2775 RTS 2780 ; F410- AA 2785 SF410 TAX F411- AD 23 F7 2790 LDA KEY_TBL_LO F414- A8 2795 TAY F415- F0 C8 2800 BEQ BF3DF 2805 ; F417- 29 03 2810 AND #$03 ;^C F419- C9 03 2815 CMP #$03 ;^C F41B- 98 2820 TYA F41C- 90 05 2825 BCC BF423 2830 ; F41E- 2C F7 2A 2835 BIT A2AF7 F421- 70 05 2840 BVS BF428 2845 ; F423- 2C 01 BF 2850 BF423 BIT PADA_U1 F426- 30 03 2855 BMI BF42B 2860 ; F428- AD 63 F7 2865 BF428 LDA KEY_TBL_UP F42B- 2C 01 BF 2870 BF42B BIT PADA_U1 F42E- 70 02 2875 BVS BF432 2880 ; F430- 29 FC 2885 AND #$FC ;.| F432- 0A 2890 BF432 ASL A F433- B0 B5 2895 BCS BF3EA 2900 ; F435- C9 00 2905 CMP #$00 ;^@ F437- D0 03 2910 BNE BF43C 2915 ; F439- 4C FE F1 2920 JMP RST_VEC 2925 ; F43C- 06 F3 2930 BF43C ASL *ZF3 F43E- A2 08 2935 LDX #$08 ;^H F440- 2A 2940 BF440 ROL A F441- 90 02 2945 BCC BF445 2950 ; F443- E6 F3 2955 INC *ZF3 F445- CA 2960 BF445 DEX F446- D0 F8 2965 BNE BF440 2970 ; F448- 0A 2975 ASL A F449- AA 2980 TAX F44A- A9 04 2985 BF44A LDA #$04 ;^D F44C- 2C 0D BF 2990 BIT IFR_U1 F44F- F0 F9 2995 BEQ BF44A 3000 ; F451- 2C 0D BF 3005 BIT IFR_U1 F454- F0 F4 3010 BEQ BF44A 3015 ; F456- 8A 3020 TXA F457- A0 FF 3025 LDY #$FF ;. F459- 84 FF 3030 STY *ZFF F45B- 29 02 3035 AND #$02 ;^B F45D- D0 02 3040 BNE BF461 3045 ; F45F- 46 FF 3050 LSR *ZFF F461- A5 FF 3055 BF461 LDA *ZFF F463- 46 F3 3060 LSR *ZF3 F465- B0 02 3065 BCS BF469 3070 ; F467- 29 8F 3075 AND #$8F ;.^O F469- 2C F2 2A 3080 BF469 BIT A2AF2 F46C- 70 04 3085 BVS BF472 3090 ; F46E- 09 7F 3095 ORA #$7F ; F470- D0 04 3100 BNE BF476 3105 ; F472- 30 02 3110 BF472 BMI BF476 3115 ; F474- 49 70 3120 EOR #$70 ;p F476- 85 FF 3125 BF476 STA *ZFF F478- A5 F4 3130 LDA *ZF4 F47A- 29 08 3135 AND #$08 ;^H F47C- F0 0A 3140 BEQ BF488 3145 ; F47E- A9 1E 3150 LDA #$1E ;^^ F480- 8D 05 BF 3155 STA T1CH_U1 F483- 2C 0D BF 3160 BF483 BIT IFR_U1 F486- 50 FB 3165 BVC BF483 3170 ; F488- AD 00 BF 3175 BF488 LDA PBDA_U1 F48B- 29 02 3180 AND #$02 ;^B F48D- D0 F9 3185 BNE BF488 3190 ; F48F- A5 F5 3195 LDA *ZF5 F491- A4 F4 3200 LDY *ZF4 F493- 8D 04 BF 3205 JF493 STA T1CL_U1 F496- A9 1C 3210 LDA #$1C ;^\ F498- 8D 0B BF 3215 STA ACR_U1 F49B- A9 00 3220 LDA #$00 ;^@ F49D- 8D 0A BF 3225 STA SR_U1 F4A0- A9 DC 3230 LDA #$DC ;.\ F4A2- 8D 0B BF 3235 STA ACR_U1 F4A5- 8C 05 BF 3240 STY T1CH_U1 F4A8- 8E 0A BF 3245 STX SR_U1 F4AB- A9 84 3250 LDA #$84 ;.^D F4AD- 8D 0E BF 3255 STA IER_U1 F4B0- 60 3260 RTS 3265 ; F4B1- 48 3270 IRQ_VEC PHA F4B2- A5 FF 3275 LDA *ZFF F4B4- 8D 0A BF 3280 STA SR_U1 F4B7- A5 F9 3285 LDA *ZF9 F4B9- 8D 07 BF 3290 STA T1LH_U1 F4BC- A5 FA 3295 LDA *ZFA F4BE- 8D 04 BF 3300 STA T1CL_U1 F4C1- A9 04 3305 LDA #$04 ;^D F4C3- 8D 0E BF 3310 STA IER_U1 F4C6- 68 3315 PLA F4C7- 40 3320 RTI F4C8- 38 3325 SF4C8 SEC F4C9- 6E F9 2A 3330 ROR A2AF9 F4CC- 0A 3335 ASL A F4CD- AE FA 2A 3340 LDX A2AFA F4D0- F0 03 3345 BEQ BF4D5 3350 ; F4D2- 4C C3 F5 3355 JMP JF5C3 3360 ; F4D5- AA 3365 BF4D5 TAX F4D6- 29 06 3370 AND #$06 ;^F F4D8- F0 03 3375 BEQ BF4DD 3380 ; F4DA- 4C 44 F6 3385 JMP JF644 3390 ; F4DD- E0 E0 3395 BF4DD CPX #$E0 ; ^G - Bell F4DF- D0 0E 3400 BNE BF4EF 3405 ; F4E1- A9 14 3410 LDA #$14 ;^T F4E3- 8D F5 2A 3415 STA A2AF5 F4E6- AD 00 BF 3420 LDA PBDA_U1 F4E9- 29 BF 3425 AND #$BF ;.? F4EB- 8D 00 BF 3430 STA PBDA_U1 F4EE- 60 3435 RTS 3440 ; F4EF- E0 10 3445 BF4EF CPX #$10 ; ^H - Backspace F4F1- D0 0E 3450 BNE BF501 3455 ; F4F3- 20 FD F6 3460 JSR SF6FD F4F6- C6 FD 3465 DEC *ZFD F4F8- 10 6A 3470 BPL BF564 3475 ; F4FA- 20 44 F5 3480 JSR SF544 F4FD- A0 4F 3485 LDY #$4F ;O F4FF- D0 61 3490 BNE BF562 3495 ; F501- E0 90 3500 BF501 CPX #$90 ; ^I - Tab F503- D0 03 3505 BNE BF508 3510 ; F505- 4C 72 F6 3515 JMP JF672 3520 ; F508- E0 50 3525 BF508 CPX #$50 ; ^J - Line Feed F50A- D0 31 3530 BNE BF53D 3535 ; F50C- 20 FD F6 3540 JSR SF6FD F50F- E6 FE 3545 SF50F INC *ZFE F511- A5 FE 3550 LDA *ZFE F513- C9 18 3555 CMP #$18 ;^X F515- D0 20 3560 BNE BF537 3565 ; F517- C6 FE 3570 DEC *ZFE F519- E6 F0 3575 INC *ZF0 F51B- E6 F0 3580 INC *ZF0 F51D- A5 F0 3585 LDA *ZF0 F51F- 4A 3590 LSR A F520- C9 18 3595 CMP #$18 ;^X F522- D0 06 3600 BNE BF52A 3605 ; F524- A5 F0 3610 LDA *ZF0 F526- 29 C1 3615 AND #$C1 ;.A F528- 85 F0 3620 STA *ZF0 F52A- A5 FD 3625 BF52A LDA *ZFD F52C- 48 3630 PHA F52D- A9 00 3635 LDA #$00 ;^@ F52F- 85 FD 3640 STA *ZFD F531- 20 DC F6 3645 JSR SF6DC F534- 68 3650 PLA F535- 85 FD 3655 STA *ZFD F537- 20 8C F6 3660 BF537 JSR SF68C F53A- 4C 64 F5 3665 SF53A JMP BF564 3670 ; F53D- E0 D0 3675 BF53D CPX #$D0 ; ^K - Vertical Tab F53F- D0 0E 3680 BNE BF54F 3685 ; F541- 20 FD F6 3690 JSR SF6FD F544- C6 FE 3695 SF544 DEC *ZFE F546- 10 EF 3700 BPL BF537 3705 ; F548- A0 18 3710 LDY #$18 ;^X F54A- 88 3715 DEY F54B- 84 FE 3720 STY *ZFE F54D- D0 E8 3725 BNE BF537 3730 ; F54F- E0 30 3735 BF54F CPX #$30 ; ^L - Form Feed F551- D0 06 3740 BNE BF559 3745 ; F553- 20 86 F6 3750 JF553 JSR SF686 F556- 4C B1 F6 3755 JMP SF6B1 3760 ; F559- E0 B0 3765 BF559 CPX #$B0 ; ^M - Carriage Return F55B- D0 17 3770 BNE BF574 3775 ; F55D- 20 FD F6 3780 JSR SF6FD F560- A0 00 3785 JF560 LDY #$00 ;^@ F562- 84 FD 3790 BF562 STY *ZFD F564- 46 FD 3795 BF564 LSR *ZFD F566- A4 FD 3800 LDY *ZFD F568- B1 FB 3805 LDA (ZFB),Y F56A- 90 02 3810 BCC BF56E 3815 ; F56C- B1 F6 3820 LDA (ZF6),Y F56E- 26 FD 3825 BF56E ROL *ZFD F570- 8D F3 2A 3830 STA A2AF3 F573- 60 3835 RTS 3840 ; F574- E0 C8 3845 BF574 CPX #$C8 ; ^S - Set DC Low F576- D0 07 3850 BNE BF57F 3855 ; F578- AD 0C 7F 3860 LDA PCR_U2 F57B- 09 02 3865 ORA #$02 ;^B F57D- D0 09 3870 BNE BF588 3875 ; F57F- E0 28 3880 BF57F CPX #$28 ; ^T Set DC High F581- D0 09 3885 BNE BF58C 3890 ; F583- AD 0C 7F 3895 LDA PCR_U2 F586- 29 FD 3900 AND #$FD ;.} F588- 8D 0C 7F 3905 BF588 STA PCR_U2 F58B- 60 3910 RTS 3915 ; F58C- E0 D8 3920 BF58C CPX #$D8 ; ESC - Escape Key F58E- D0 03 3925 BNE BF593 3930 ; F590- EE FA 2A 3935 INC A2AFA F593- 60 3940 BF593 RTS 3945 ; F594- CA 3950 BF594 DEX F595- D0 14 3955 BNE BF5AB 3960 ; F597- EE FA 2A 3965 INC A2AFA F59A- 20 10 F7 3970 JSR SF710 F59D- 65 FE 3975 ADC *ZFE F59F- 38 3980 SEC F5A0- E9 18 3985 BF5A0 SBC #$18 ;^X F5A2- B0 FC 3990 BCS BF5A0 3995 ; F5A4- F0 02 4000 BEQ BF5A8 4005 ; F5A6- 69 18 4010 ADC #$18 ;^X F5A8- 85 FE 4015 BF5A8 STA *ZFE F5AA- 60 4020 RTS 4025 ; F5AB- A2 00 4030 BF5AB LDX #$00 ;^@ F5AD- 8E FA 2A 4035 STX A2AFA F5B0- 20 10 F7 4040 JSR SF710 F5B3- 65 FD 4045 ADC *ZFD F5B5- 38 4050 SEC F5B6- E9 50 4055 BF5B6 SBC #$50 ;P F5B8- B0 FC 4060 BCS BF5B6 4065 ; F5BA- F0 02 4070 BEQ BF5BE 4075 ; F5BC- 69 50 4080 ADC #$50 ;P F5BE- 85 FD 4085 BF5BE STA *ZFD F5C0- 4C 37 F5 4090 JMP BF537 4095 ; F5C3- CA 4100 JF5C3 DEX F5C4- D0 CE 4105 BNE BF594 4110 ; F5C6- 20 FC F6 4115 JSR SF6FC F5C9- E0 BC 4120 CPX #$BC ; "=" - Absolute Cursor Addressing F5CB- D0 0A 4125 BNE BF5D7 4130 ; F5CD- 20 86 F6 4135 JSR SF686 F5D0- 20 3A F5 4140 JSR SF53A F5D3- EE FA 2A 4145 BF5D3 INC A2AFA F5D6- 60 4150 RTS 4155 ; F5D7- E0 D4 4160 BF5D7 CPX #$D4 ; "+" - Relative Cursor Addressing F5D9- F0 F8 4165 BEQ BF5D3 4170 ; F5DB- E0 D8 4175 CPX #$D8 ; ESC - Escape F5DD- D0 01 4180 BNE BF5E0 4185 ; F5DF- 60 4190 RTS 4195 ; F5E0- CE FA 2A 4200 BF5E0 DEC A2AFA F5E3- E0 A2 4205 CPX #$A2 ; E - Form Feed F5E5- D0 03 4210 BNE BF5EA 4215 ; F5E7- 4C 53 F5 4220 JMP JF553 4225 ; F5EA- E0 12 4230 BF5EA CPX #$12 ; H - Home F5EC- D0 06 4235 BNE BF5F4 4240 ; F5EE- 20 86 F6 4245 JSR SF686 F5F1- 4C 3A F5 4250 JMP SF53A 4255 ; F5F4- E0 52 4260 BF5F4 CPX #$52 ; J - Clear To End Of Screen F5F6- D0 03 4265 BNE BF5FB 4270 ; F5F8- 4C B1 F6 4275 JMP SF6B1 4280 ; F5FB- E0 D2 4285 BF5FB CPX #$D2 ; K - Clear End Of Line F5FD- D0 03 4290 BNE BF602 4295 ; F5FF- 4C DC F6 4300 JMP SF6DC 4305 ; F602- E0 E2 4310 BF602 CPX #$E2 ; G Begin Graphics F604- D0 09 4315 BNE BF60F 4320 ; F606- A9 40 4325 LDA #$40 ;@ F608- 0D F4 2A 4330 BF608 ORA A2AF4 F60B- 8D F4 2A 4335 STA A2AF4 F60E- 60 4340 RTS 4345 ; F60F- E0 4A 4350 BF60F CPX #$4A ; R - Begin Reverse F611- D0 04 4355 BNE BF617 4360 ; F613- A9 80 4365 LDA #$80 ;.^@ F615- D0 F1 4370 BNE BF608 4375 ; F617- E0 E6 4380 BF617 CPX #$E6 ; g - End Graphics F619- D0 09 4385 BNE BF624 4390 ; F61B- A9 BF 4395 LDA #$BF ;.? F61D- 2D F4 2A 4400 BF61D AND A2AF4 F620- 8D F4 2A 4405 STA A2AF4 F623- 60 4410 RTS 4415 ; F624- E0 4E 4420 BF624 CPX #$4E ; r - End Reverse F626- D0 04 4425 BNE BF62C 4430 ; F628- A9 7F 4435 LDA #$7F ; F62A- D0 F1 4440 BNE BF61D 4445 ; F62C- E0 36 4450 BF62C CPX #$36 ; l - Auxiliary Off F62E- D0 09 4455 BNE BF639 4460 ; F630- AD 00 BF 4465 LDA PBDA_U1 F633- 29 F7 4470 AND #$F7 ;.w F635- 8D 00 BF 4475 BF635 STA PBDA_U1 F638- 60 4480 BF638 RTS 4485 ; F639- E0 32 4490 BF639 CPX #$32 ; L - Auxiliary On F63B- D0 FB 4495 BNE BF638 4500 ; F63D- AD 00 BF 4505 LDA PBDA_U1 F640- 09 08 4510 ORA #$08 ;^H F642- D0 F1 4515 BNE BF635 4520 ; F644- 2C F4 2A 4525 JF644 BIT A2AF4 F647- 10 0B 4530 BPL BF654 4535 ; F649- 8A 4540 TXA F64A- 29 06 4545 AND #$06 ;^F F64C- C9 02 4550 CMP #$02 ;^B F64E- D0 04 4555 BNE BF654 4560 ; F650- 8A 4565 TXA F651- 29 F9 4570 AND #$F9 ;.y F653- AA 4575 TAX F654- 8A 4580 BF654 TXA F655- 50 09 4585 BVC BF660 4590 ; F657- 09 01 4595 ORA #$01 ;^A F659- 2C F4 2A 4600 BIT A2AF4 F65C- 10 02 4605 BPL BF660 4610 ; F65E- 29 FD 4615 AND #$FD ;.} F660- C9 FE 4620 BF660 CMP #$FE ;.~ F662- F0 D4 4625 BEQ BF638 4630 ; F664- A4 FD 4635 LDY *ZFD F666- C0 4F 4640 CPY #$4F ;O F668- D0 05 4645 BNE BF66F 4650 ; F66A- 2C FD 2A 4655 BIT A2AFD F66D- 30 C9 4660 BMI BF638 4665 ; F66F- 8D F3 2A 4670 BF66F STA A2AF3 F672- 20 FD F6 4675 JF672 JSR SF6FD F675- E6 FD 4680 INC *ZFD F677- A4 FD 4685 LDY *ZFD F679- C0 50 4690 CPY #$50 ;P F67B- B0 03 4695 BCS BF680 4700 ; F67D- 4C 64 F5 4705 JMP BF564 4710 ; F680- 20 0F F5 4715 BF680 JSR SF50F F683- 4C 60 F5 4720 JMP JF560 4725 ; F686- A9 00 4730 SF686 LDA #$00 ;^@ F688- 85 FD 4735 STA *ZFD F68A- 85 FE 4740 STA *ZFE F68C- A5 F0 4745 SF68C LDA *ZF0 F68E- 4A 4750 LSR A F68F- 18 4755 CLC F690- 65 FE 4760 ADC *ZFE F692- C9 18 4765 CMP #$18 ;^X F694- 90 02 4770 BCC BF698 4775 ; F696- E9 18 4780 SBC #$18 ;^X F698- A8 4785 BF698 TAY F699- B9 C4 F0 4790 LDA AF0C4,Y F69C- A8 4795 TAY F69D- 29 03 4800 AND #$03 ;^C F69F- 18 4805 CLC F6A0- 69 14 4810 ADC #$14 ;^T F6A2- 85 F7 4815 STA *ZF7 F6A4- 18 4820 CLC F6A5- 69 14 4825 ADC #$14 ;^T F6A7- 85 FC 4830 STA *ZFC F6A9- 98 4835 TYA F6AA- 29 FC 4840 AND #$FC ;.| F6AC- 85 FB 4845 STA *ZFB F6AE- 85 F6 4850 STA *ZF6 F6B0- 60 4855 RTS 4860 ; F6B1- AD 01 BF 4865 SF6B1 LDA PADA_U1 F6B4- 09 20 4870 ORA #$20 ; F6B6- 8D 01 BF 4875 STA PADA_U1 F6B9- A5 FE 4880 LDA *ZFE F6BB- 85 F3 4885 STA *ZF3 F6BD- A5 FD 4890 LDA *ZFD F6BF- 8D FE 2A 4895 STA A2AFE F6C2- A9 18 4900 LDA #$18 ;^X F6C4- 85 FE 4905 STA *ZFE F6C6- A9 00 4910 LDA #$00 ;^@ F6C8- 85 FD 4915 STA *ZFD F6CA- C6 FE 4920 BF6CA DEC *ZFE F6CC- A5 FE 4925 LDA *ZFE F6CE- C5 F3 4930 CMP *ZF3 F6D0- F0 05 4935 BEQ BF6D7 4940 ; F6D2- 20 DC F6 4945 JSR SF6DC F6D5- 10 F3 4950 BPL BF6CA 4955 ; F6D7- AD FE 2A 4960 BF6D7 LDA A2AFE F6DA- 85 FD 4965 STA *ZFD F6DC- 20 8C F6 4970 SF6DC JSR SF68C F6DF- A5 FC 4975 LDA *ZFC F6E1- AA 4980 TAX F6E2- 29 03 4985 AND #$03 ;^C F6E4- 85 FC 4990 STA *ZFC F6E6- A4 FD 4995 LDY *ZFD F6E8- C8 5000 INY F6E9- 98 5005 TYA F6EA- 4A 5010 LSR A F6EB- A8 5015 TAY F6EC- A9 04 5020 LDA #$04 ;^D F6EE- D0 03 5025 BNE BF6F3 5030 ; F6F0- 91 FB 5035 BF6F0 STA (ZFB),Y F6F2- C8 5040 INY F6F3- C0 28 5045 BF6F3 CPY #$28 ;( F6F5- 90 F9 5050 BCC BF6F0 5055 ; F6F7- 8D F3 2A 5060 STA A2AF3 F6FA- 86 FC 5065 STX *ZFC F6FC- AA 5070 SF6FC TAX F6FD- AD F3 2A 5075 SF6FD LDA A2AF3 F700- 46 FD 5080 SF700 LSR *ZFD F702- A4 FD 5085 LDY *ZFD F704- B0 05 5090 BCS BF70B 5095 ; F706- 26 FD 5100 ROL *ZFD F708- 91 FB 5105 STA (ZFB),Y F70A- 60 5110 RTS 5115 ; F70B- 26 FD 5120 BF70B ROL *ZFD F70D- 91 F6 5125 STA (ZF6),Y F70F- 60 5130 RTS 5135 ; F710- 20 FC F6 5140 SF710 JSR SF6FC F713- 8A 5145 TXA F714- A0 08 5150 LDY #$08 ;^H F716- 4A 5155 BF716 LSR A F717- 26 F3 5160 ROL *ZF3 F719- 88 5165 DEY F71A- D0 FA 5170 BNE BF716 5175 ; F71C- A5 F3 5180 LDA *ZF3 F71E- 38 5185 SEC F71F- E9 20 5190 SBC #$20 ; F721- 18 5195 CLC F722- 60 5200 RTS 5205 ; 5210 5215 ; Keyboard Encoding Table 5220 ; All Bytes are Backwards 5225 5230 IFE KEYS-54 5235 5240 ; Lower Case Table *NC = No Connection 5245 F723- 0E 76 36 5250 KEY_TBL_LO .BY $0E $76 $36 $56 $16 $66 $26 $46 F726- 56 16 66 F729- 26 46 5255 ; 8 7 6 5 4 3 2 1 F72B- 00 00 48 5260 .BY $00 $00 $48 $00 $5A $6A $06 $4E F72E- 00 5A 6A F731- 06 4E 5265 ; NC NC TAB NC - + 0 9 F733- 57 4F 17 5270 .BY $57 $4F $17 $27 $53 $77 $47 $6C F736- 27 53 77 F739- 47 6C 5275 ; u y t r e w q ESC F73B- 00 00 58 5280 .BY $00 $00 $58 $28 $5E $07 $7B $4B F73E- 28 5E 07 F741- 7B 4B 5285 ; NC NC RET LF = p o i F743- 2B 0B 73 5290 .BY $2B $0B $73 $33 $13 $67 $43 $00 F746- 33 13 67 F749- 43 00 5295 ; j h g f d s a NC F74B- 00 00 F2 5300 .BY $00 $00 $F2 $7F $2E $6E $1B $6B F74E- 7F 2E 6E F751- 1B 6B 5305 ; NC NC APL DEL : ; l k (ALP = ALPHA) F753- 5B 3B 23 5310 .BY $5B $3B $23 $37 $63 $0F $2F $00 F756- 37 63 0F F759- 2F 00 5315 ; m n b v c x z NC F75B- 00 00 00 5320 .BY $00 $00 $00 $02 $00 $7A $3A $1A F75E- 02 00 7A F761- 3A 1A 5325 ; NC NC NC SPC NC / . , 5330 5335 ; Upper Case Table 5340 F763- 0A 72 32 5345 KEY_TBL_UP .BY $0A $72 $32 $52 $12 $62 $22 $42 F766- 52 12 62 F769- 22 42 5350 ; ( ' & % $ # " ! F76B- 00 00 FB 5355 .BY $00 $00 $FB $00 $2A $01 $3D $4A F76E- 00 2A 01 F771- 3D 4A 5360 ; NC NC BRK NC * @ ^ ) F773- 55 4D 15 5365 .BY $55 $4D $15 $25 $51 $75 $45 $6F F776- 25 51 75 F779- 45 6F 5370 ; U Y T R E W Q ESC F77B- 00 00 03 5375 .BY $00 $00 $03 $3F $1D $05 $79 $49 F77E- 3F 1D 05 F781- 79 49 5380 ; NC NC RET LF \ P O I F783- 29 09 71 5385 .BY $29 $09 $71 $31 $11 $65 $41 $00 F786- 31 11 65 F789- 41 00 5390 ; J H G F D S A NC F78B- 00 00 5F 5395 .BY $00 $00 $5F $7D $5D $6D $19 $69 F78E- 7D 5D 6D F791- 19 69 5400 ; NC NC ALP DEL ] [ L K F793- 59 39 21 5405 .BY $59 $39 $21 $35 $61 $0D $2D $00 F796- 35 61 0D F799- 2D 00 5410 ; M N B V C X Z NC F79B- 00 00 00 5415 .BY $00 $00 $00 $1F $00 $7E $3E $1E F79E- 1F 00 7E F7A1- 3E 1E 5420 ; NC NC NC SPC NC ? > < 5425 5430 *** 5435 5440 5445 IFE KEYS-60 5450 5455 ; Lower Case Table 5460 5465 KEY_TBL_LO .BY $0E $76 $36 $56 $16 $66 $26 $46 5470 ; 8 7 6 5 4 3 2 1 5475 .BY $08 $03 $48 $20 $5E $5A $06 $4E 5480 ; BS ` TAB ^B = - 0 9 5485 .BY $57 $4F $17 $27 $53 $77 $47 $6C 5490 ; u y t r e w q ESC 5495 .BY $6F $1D $58 $28 $6D $07 $7B $4B 5500 ; { \ RET LF [ p o i 5505 .BY $2B $0B $73 $33 $13 $67 $43 $00 5510 ; j h g f d s a NC 5515 .BY $00 $00 $F2 $7F $72 $6E $1B $6B 5520 ; NC NC CLK DEL ' ; l k (CLK = Caps Lock) 5525 .BY $5B $3B $23 $37 $63 $0F $2F $00 5530 ; m n b v c x z NC 5535 .BY $FB $00 $00 $02 $00 $7A $3A $1A 5540 ; BRK NC NC SPC NC / . , 5545 ; Upper Case Table 5550 5555 KEY_TBL_UP .BY $2A $32 $3D $52 $12 $62 $01 $42 5560 ; * & ^ % $ # @ ! 5565 .BY $08 $3F $FB $20 $6A $7D $4A $0A 5570 ; BS ~ TAB ^B + _ ) ( (^B = Repeat Key) 5575 .BY $55 $4D $15 $25 $51 $75 $45 $6F 5580 ; U Y T R E W Q ESC 5585 .BY $5F $1F $03 $3F $5D $05 $79 $49 5590 ; } | RET LF ] P O I 5595 .BY $29 $09 $71 $31 $11 $65 $41 $00 5600 ; J H G F D S A NC 5605 .BY $00 $00 $F2 $7F $22 $2E $19 $69 5610 ; NC NC CLK DEL " : L K 5615 .BY $59 $39 $21 $35 $61 $0D $2D $00 5620 ; M N B V C X Z NC 5625 .BY $FB $00 $00 $02 $00 $7E $3E $1E 5630 ; BRK NC NC SPC NC ? > < 5635 5640 *** 5645 F7A3- 48 5650 NMI_VEC PHA F7A4- 2C 0D 7F 5655 BIT IFR_U2 F7A7- A5 F4 5660 LDA *ZF4 F7A9- 8D 05 7F 5665 STA T1CH_U2 F7AC- 50 2F 5670 BVC BF7DD 5675 ; F7AE- AD 0B 7F 5680 LDA ACR_U2 F7B1- 29 0C 5685 AND #$0C ;^L F7B3- D0 14 5690 BNE BF7C9 5695 ; F7B5- A9 CC 5700 LDA #$CC ;.L F7B7- 8D 0B 7F 5705 STA ACR_U2 F7BA- AD 0A 7F 5710 LDA SR_U2 F7BD- A9 08 5715 LDA #$08 ;^H F7BF- 8D 0E 7F 5720 STA IER_U2 F7C2- A9 84 5725 LDA #$84 ;.^D F7C4- 8D 0E 7F 5730 STA IER_U2 F7C7- 68 5735 PLA F7C8- 40 5740 RTI F7C9- AD 0A 7F 5745 BF7C9 LDA SR_U2 F7CC- 8D F9 2A 5750 STA A2AF9 F7CF- A9 C0 5755 LDA #$C0 ;.@ F7D1- 8D 0B 7F 5760 STA ACR_U2 F7D4- 58 5765 CLI F7D5- 2C 00 7F 5770 BF7D5 BIT PBDA_U2 F7D8- 10 FB 5775 BPL BF7D5 5780 ; F7DA- AD 04 7F 5785 LDA T1CL_U2 F7DD- A9 88 5790 BF7DD LDA #$88 ;.^H F7DF- 8D 0D 7F 5795 STA IFR_U2 F7E2- 8D 0E 7F 5800 STA IER_U2 F7E5- 68 5805 PLA F7E6- 40 5810 RTI F7E7- 0F 05 02 5815 AF7E7 .BY $0F $05 $02 $01 $00 $00 $00 $00 F7EA- 01 00 00 F7ED- 00 00 F7EF- 0D 2E 53 5820 .BY $0D $2E $53 $4B $49 $20 $31 $0D F7F2- 4B 49 20 F7F5- 31 0D F7F7- 4C 44 41 5825 .BY $4C $44 $41 5830 ; F7FA- A3 F7 5835 NMI .SI NMI_VEC F7FC- FE F1 5840 RST .SI RST_VEC F7FE- B1 F4 5845 IRQ .SI IRQ_VEC 5850 5855 .EN 0000,F800,F800 >