@@@@@@@@ MENU @@@@@@@@ '**** DATA DECK **** $D000--$D007: NUL DATA BA 41 FF FF D3 10 4D 4F $D008--$D00D: NUL DATA 4E 49 54 4F 52 00 '**** MAIN ROUTINE OF MENU **** $D00E: 8E 04AF LDS IMM SP<=M:M+1 $D011: BD FED1 JSR EXT Jump to Subr=>Address $FED1 $D014: 86 01 LDAA IMM A<=M $D016: 97 7B STAA DIR M<=A $D018: 8D 6B BSR REL Branch to Subr=> $D085 $D01A: 7B 0178 TIM EXT IM&M $D01D: 26 64 BNE REL Branch=> $D083 if Z=0 '**** MAKE BIT MAP AND LINK TABLE **** $D01F: 7F 013B CLR EXT M<=0 $D022: 86 40 LDAA IMM A<=M $D024: 97 86 STAA DIR M<=A $D026: B7 013A STAA EXT M<=A $D029: BD D0E6 JSR EXT Jump to Subr=>Address $D0E6 $D02C: 74 0086 LSR EXT 0=>########=>C $D02F: 8D 6D BSR REL Branch to Subr=> $D09E $D031: 26 0F BNE REL Branch=> $D042 if Z=0 $D033: C1 42 CMPB IMM B-M $D035: 26 03 BNE REL Branch=> $D03A if Z=0 $D037: 71 BF7E AIM EXT M<=IM&M $D03A: 96 86 LDAA DIR A<=M $D03C: BA 013A ORAA EXT A<=A|M $D03F: B7 013A STAA EXT M<=A $D042: 3C PSHX IMP =>IX;SP<=SP-2 $D043: 86 FF LDAA IMM A<=M $D045: 36 PSHA IMP =>A;SP<=SP-1 $D046: A6 00 LDAA IND A<=M $D048: 8D 41 BSR REL Branch to Subr=> $D08B $D04A: E6 00 LDAB IND B<=M $D04C: 8D 37 BSR REL Branch to Subr=> $D085 $D04E: 11 CBA IMP A-B $D04F: 32 PULA IMP SP<=SP+1;<=A $D050: 26 04 BNE REL Branch=> $D056 if Z=0 $D052: 08 INX IMP IX<=IX+1 $D053: 4A DECA IMP M<=M-1 $D054: 26 EF BNE REL Branch=> $D045 if Z=0 $D056: 38 PULX IMP SP<=SP-2;<=IX $D057: 27 17 BEQ REL Branch=> $D070 if Z=1 $D059: 8D 30 BSR REL Branch to Subr=> $D08B $D05B: 8D 41 BSR REL Branch to Subr=> $D09E $D05D: 26 0F BNE REL Branch=> $D06E if Z=0 $D05F: C1 42 CMPB IMM B-M $D061: 26 03 BNE REL Branch=> $D066 if Z=0 $D063: 72 407E OIM EXT M<=IM|M $D066: 96 86 LDAA DIR A<=M $D068: BA 013B ORAA EXT A<=A|M $D06B: B7 013B STAA EXT M<=A $D06E: 8D 15 BSR REL Branch to Subr=> $D085 $D070: 8D 1F BSR REL Branch to Subr=> $D091 $D072: 26 B8 BNE REL Branch=> $D02C if Z=0 $D074: CC 3A45 LDD IMM A:B<=M:M+1 $D077: FD 013C STD EXT M:M+1<=A:B $D07A: CC FFFF LDD IMM A:B<=M:M+1 $D07D: FD 013E STD EXT M:M+1<=A:B $D080: 72 0178 OIM EXT M<=IM|M $D083: 20 2A BRA REL Branch=> $D0AF if (Always) '**** SUBROUTINE OF MKLK **** $D085: 97 32 STAA DIR M<=A $D087: 71 EF7E AIM EXT M<=IM&M $D08A: 39 RTS IMP Return from Subroutine $D08B: 97 30 STAA DIR M<=A $D08D: 72 107E OIM EXT M<=IM|M $D090: 39 RTS IMP Return from Subroutine $D091: CC E000 LDD IMM A:B<=M:M+1 $D094: D3 82 ADDD DIR A:B<=A:B+M:M+1 $D096: DD 82 STD DIR M:M+1<=A:B $D098: DE 82 LDX DIR IX<=M:M+1 $D09A: 8C 2000 CPX IMM IX-M:M+1 $D09D: 39 RTS IMP Return from Subroutine $D09E: EC 00 LDD IND A:B<=M:M+1 $D0A0: 84 7F ANDA IMM A<=A&M $D0A2: 81 3A CMPA IMM A-M $D0A4: 26 08 BNE REL Branch=> $D0AE if Z=0 $D0A6: C4 7F ANDB IMM B<=B&M $D0A8: C1 41 CMPB IMM B-M $D0AA: 27 02 BEQ REL Branch=> $D0AE if Z=1 $D0AC: C1 42 CMPB IMM B-M $D0AE: 39 RTS IMP Return from Subroutine '**** DISPLAY MENU ROUTINE **** $D0AF: 4F CLRA IMP M<=0 $D0B0: 5F CLRB IMP M<=0 $D0B1: DD 8C STD DIR M:M+1<=A:B $D0B3: 8D 26 BSR REL Branch to Subr=> $D0DB $D0B5: 8D 35 BSR REL Branch to Subr=> $D0EC $D0B7: 73 008C COM EXT M<= ~M $D0BA: BD D1B4 JSR EXT Jump to Subr=>Address $D1B4 $D0BD: 86 30 LDAA IMM A<=M $D0BF: 97 8A STAA DIR M<=A $D0C1: CE D006 LDX IMM IX<=M:M+1 $D0C4: BD D194 JSR EXT Jump to Subr=>Address $D194 $D0C7: 8D 12 BSR REL Branch to Subr=> $D0DB $D0C9: 8D 21 BSR REL Branch to Subr=> $D0EC $D0CB: 73 008D COM EXT M<= ~M $D0CE: 86 01 LDAA IMM A<=M $D0D0: 97 90 STAA DIR M<=A $D0D2: CC 00C0 LDD IMM A:B<=M:M+1 $D0D5: BD D216 JSR EXT Jump to Subr=>Address $D216 $D0D8: 7E D23E JMP EXT Jump=>Address $D23E '**** SUBROUTINE OF DISPLAY MENU **** $D0DB: 86 01 LDAA IMM A<=M $D0DD: 97 84 STAA DIR M<=A $D0DF: FC 013A LDD EXT A:B<=M:M+1 $D0E2: 05 ASLD IMP C<=################<=0 $D0E3: 05 ASLD IMP C<=################<=0 $D0E4: DD 87 STD DIR M:M+1<=A:B $D0E6: CE A000 LDX IMM IX<=M:M+1 $D0E9: DF 82 STX DIR M:M+1<=IX $D0EB: 39 RTS IMP Return from Subroutine $D0EC: 8D 30 BSR REL Branch to Subr=> $D11E $D0EE: 7B 8078 TIM EXT IM&M $D0F1: 27 2A BEQ REL Branch=> $D11D if Z=1 $D0F3: BD D2C9 JSR EXT Jump to Subr=>Address $D2C9 $D0F6: 08 INX IMP IX<=IX+1 $D0F7: 08 INX IMP IX<=IX+1 $D0F8: A6 00 LDAA IND A<=M $D0FA: 81 20 CMPA IMM A-M $D0FC: 27 15 BEQ REL Branch=> $D113 if Z=1 $D0FE: 7C 0084 INC EXT M<=M+1 $D101: 96 84 LDAA DIR A<=M $D103: 81 15 CMPA IMM A-M $D105: 27 16 BEQ REL Branch=> $D11D if Z=1 $D107: 96 8C LDAA DIR A<=M $D109: 27 08 BEQ REL Branch=> $D113 if Z=1 $D10B: BD D1FD JSR EXT Jump to Subr=>Address $D1FD $D10E: C6 08 LDAB IMM B<=M $D110: BD D1EC JSR EXT Jump to Subr=>Address $D1EC $D113: BD D2BA JSR EXT Jump to Subr=>Address $D2BA $D116: 27 05 BEQ REL Branch=> $D11D if Z=1 $D118: 8C 0080 CPX IMM IX-M:M+1 $D11B: 24 D9 BCC REL Branch=> $D0F6 if C=0 $D11D: 39 RTS IMP Return from Subroutine $D11E: DF 80 STX DIR M:M+1<=IX $D120: 78 0087 ASL EXT C<=########<=0 $D123: 24 02 BCC REL Branch=> $D127 if C=0 $D125: 8D 27 BSR REL Branch to Subr=> $D14E $D127: 78 0088 ASL EXT C<=########<=0 $D12A: 24 0C BCC REL Branch=> $D138 if C=0 $D12C: BD D08B JSR EXT Jump to Subr=>Address $D08B $D12F: DE 82 LDX DIR IX<=M:M+1 $D131: DF 80 STX DIR M:M+1<=IX $D133: 8D 19 BSR REL Branch to Subr=> $D14E $D135: BD D085 JSR EXT Jump to Subr=>Address $D085 $D138: BD D091 JSR EXT Jump to Subr=>Address $D091 $D13B: 26 E1 BNE REL Branch=> $D11E if Z=0 $D13D: CE 013C LDX IMM IX<=M:M+1 $D140: DF 80 STX DIR M:M+1<=IX $D142: BD D09E JSR EXT Jump to Subr=>Address $D09E $D145: 26 14 BNE REL Branch=> $D15B if Z=0 $D147: 8D 5A BSR REL Branch to Subr=> $D1A3 $D149: 27 10 BEQ REL Branch=> $D15B if Z=1 $D14B: 8D 01 BSR REL Branch to Subr=> $D14E $D14D: 39 RTS IMP Return from Subroutine $D14E: 96 8D LDAA DIR A<=M $D150: 26 0A BNE REL Branch=> $D15C if Z=0 $D152: BD D09E JSR EXT Jump to Subr=>Address $D09E $D155: 26 04 BNE REL Branch=> $D15B if Z=0 $D157: 8D 3F BSR REL Branch to Subr=> $D198 $D159: 26 F7 BNE REL Branch=> $D152 if Z=0 $D15B: 39 RTS IMP Return from Subroutine $D15C: 6D 00 TST IND M-0 $D15E: 2A 08 BPL REL Branch=> $D168 if N=0 $D160: 7C 0084 INC EXT M<=M+1 $D163: DC 84 LDD DIR A:B<=M:M+1 $D165: 11 CBA IMP A-B $D166: 27 05 BEQ REL Branch=> $D16D if Z=1 $D168: 8D 39 BSR REL Branch to Subr=> $D1A3 $D16A: 26 F0 BNE REL Branch=> $D15C if Z=0 $D16C: 39 RTS IMP Return from Subroutine $D16D: 38 PULX IMP SP<=SP-2;<=IX $D16E: 38 PULX IMP SP<=SP-2;<=IX $D16F: BD D2D3 JSR EXT Jump to Subr=>Address $D2D3 $D172: DE 80 LDX DIR IX<=M:M+1 $D174: EC 04 LDD IND A:B<=M:M+1 $D176: 6D 01 TST IND M-0 $D178: 2A 04 BPL REL Branch=> $D17E if N=0 $D17A: 8D 31 BSR REL Branch to Subr=> $D1AD $D17C: 20 01 BRA REL Branch=> $D17F if (Always) $D17E: 18 XGDX IMP A:B<==>IX $D17F: 7E D22B JMP EXT Jump=>Address $D22B $D182: 7C 0084 INC EXT M<=M+1 $D185: 96 84 LDAA DIR A<=M $D187: 81 15 CMPA IMM A-M $D189: 26 05 BNE REL Branch=> $D190 if Z=0 $D18B: 38 PULX IMP SP<=SP-2;<=IX $D18C: 38 PULX IMP SP<=SP-2;<=IX $D18D: 38 PULX IMP SP<=SP-2;<=IX $D18E: 38 PULX IMP SP<=SP-2;<=IX $D18F: 39 RTS IMP Return from Subroutine $D190: 96 8C LDAA DIR A<=M $D192: 27 89 BEQ REL Branch=> $D11D if Z=1 $D194: 8D 67 BSR REL Branch to Subr=> $D1FD $D196: 20 52 BRA REL Branch=> $D1EA if (Always) $D198: 6D 00 TST IND M-0 $D19A: 2A 07 BPL REL Branch=> $D1A3 if N=0 $D19C: C6 06 LDAB IMM B<=M $D19E: 3A ABX IMP IX<=IX+B $D19F: 8D E1 BSR REL Branch to Subr=> $D182 $D1A1: DE 80 LDX DIR IX<=M:M+1 $D1A3: EC 02 LDD IND A:B<=M:M+1 $D1A5: 81 FF CMPA IMM A-M $D1A7: 27 0A BEQ REL Branch=> $D1B3 if Z=1 $D1A9: 6D 01 TST IND M-0 $D1AB: 2A 02 BPL REL Branch=> $D1AF if N=0 $D1AD: D3 80 ADDD DIR A:B<=A:B+M:M+1 $D1AF: DD 80 STD DIR M:M+1<=A:B $D1B1: DE 80 LDX DIR IX<=M:M+1 $D1B3: 39 RTS IMP Return from Subroutine $D1B4: CC 2284 LDD IMM A:B<=M:M+1 $D1B7: 8D 5D BSR REL Branch to Subr=> $D216 $D1B9: CE 02D0 LDX IMM IX<=M:M+1 $D1BC: DF 91 STX DIR M:M+1<=IX $D1BE: 96 84 LDAA DIR A<=M $D1C0: 81 15 CMPA IMM A-M $D1C2: 25 02 BCS REL Branch=> $D1C6 if C=1 $D1C4: 86 14 LDAA IMM A<=M $D1C6: 97 90 STAA DIR M<=A $D1C8: 80 03 SUBA IMM A<=A-M $D1CA: 97 89 STAA DIR M<=A $D1CC: CC 1387 LDD IMM A:B<=M:M+1 $D1CF: 8D 45 BSR REL Branch to Subr=> $D216 $D1D1: CC 01C3 LDD IMM A:B<=M:M+1 $D1D4: 8D 40 BSR REL Branch to Subr=> $D216 $D1D6: CC 04C4 LDD IMM A:B<=M:M+1 $D1D9: 8D 3B BSR REL Branch to Subr=> $D216 $D1DB: CC 1792 LDD IMM A:B<=M:M+1 $D1DE: 8D 36 BSR REL Branch to Subr=> $D216 $D1E0: FE FFDE LDX EXT IX<=M:M+1 $D1E3: 86 05 LDAA IMM A<=M $D1E5: A7 00 STAA IND M<=A $D1E7: CE D2F7 LDX IMM IX<=M:M+1 $D1EA: C6 11 LDAB IMM B<=M $D1EC: A6 00 LDAA IND A<=M $D1EE: 27 0C BEQ REL Branch=> $D1FC if Z=1 $D1F0: 81 20 CMPA IMM A-M $D1F2: 24 02 BCC REL Branch=> $D1F6 if C=0 $D1F4: 8B 80 ADDA IMM A<=A+M $D1F6: 8D 20 BSR REL Branch to Subr=> $D218 $D1F8: 08 INX IMP IX<=IX+1 $D1F9: 5A DECB IMP M<=M-1 $D1FA: 26 F0 BNE REL Branch=> $D1EC if Z=0 $D1FC: 39 RTS IMP Return from Subroutine $D1FD: 86 0D LDAA IMM A<=M $D1FF: 8D 17 BSR REL Branch to Subr=> $D218 $D201: 86 0A LDAA IMM A<=M $D203: 8D 13 BSR REL Branch to Subr=> $D218 $D205: 96 8A LDAA DIR A<=M $D207: 4C INCA IMP M<=M+1 $D208: 81 3A CMPA IMM A-M $D20A: 26 02 BNE REL Branch=> $D20E if Z=0 $D20C: 8B 07 ADDA IMM A<=A+M $D20E: 97 8A STAA DIR M<=A $D210: 8D 06 BSR REL Branch to Subr=> $D218 $D212: 86 20 LDAA IMM A<=M $D214: 20 02 BRA REL Branch=> $D218 if (Always) $D216: D7 8E STAB DIR M<=B $D218: 97 8F STAA DIR M<=A $D21A: 3C PSHX IMP =>IX;SP<=SP-2 $D21B: CE 008E LDX IMM IX<=M:M+1 $D21E: BD FF5E JSR EXT Jump to Subr=>Address $FF5E $D221: 38 PULX IMP SP<=SP-2;<=IX $D222: 39 RTS IMP Return from Subroutine '**** MENU KEYIN ROUTINE **** $D223: BD FF13 JSR EXT Jump to Subr=>Address $FF13 $D226: 20 13 BRA REL Branch=> $D23B if (Always) $D228: FE D004 LDX EXT IX<=M:M+1 $D22B: 4F CLRA IMP M<=0 $D22C: 7B 107E TIM EXT IM&M $D22F: 27 05 BEQ REL Branch=> $D236 if Z=1 $D231: 72 207E OIM EXT M<=IM|M $D234: 20 03 BRA REL Branch=> $D239 if (Always) $D236: 71 DF7E AIM EXT M<=IM&M $D239: AD 00 JSR IND Jump to Subr=>Address $D23B: 7E D00E JMP EXT Jump=>Address $D00E $D23E: FE FFDE LDX EXT IX<=M:M+1 $D241: 86 09 LDAA IMM A<=M $D243: A7 00 STAA IND M<=A $D245: BD FF9A JSR EXT Jump to Subr=>Address $FF9A $D248: 81 00 CMPA IMM A-M $D24A: 27 D7 BEQ REL Branch=> $D223 if Z=1 $D24C: 81 10 CMPA IMM A-M $D24E: 27 14 BEQ REL Branch=> $D264 if Z=1 $D250: 81 11 CMPA IMM A-M $D252: 27 10 BEQ REL Branch=> $D264 if Z=1 $D254: 81 0D CMPA IMM A-M $D256: 26 15 BNE REL Branch=> $D26D if Z=0 $D258: C6 8A LDAB IMM B<=M $D25A: 8D BA BSR REL Branch to Subr=> $D216 $D25C: 96 90 LDAA DIR A<=M $D25E: 91 89 CMPA DIR A-M $D260: 27 08 BEQ REL Branch=> $D26A if Z=1 $D262: 86 11 LDAA IMM A<=M $D264: C6 92 LDAB IMM B<=M $D266: 8D AE BSR REL Branch to Subr=> $D216 $D268: 20 D4 BRA REL Branch=> $D23E if (Always) $D26A: 7E D0CE JMP EXT Jump=>Address $D0CE $D26D: 81 30 CMPA IMM A-M $D26F: 23 CD BLS REL Branch=> $D23E if C|Z=1 $D271: 81 31 CMPA IMM A-M $D273: 27 B3 BEQ REL Branch=> $D228 if Z=1 $D275: 81 39 CMPA IMM A-M $D277: 23 0A BLS REL Branch=> $D283 if C|Z=1 $D279: 81 40 CMPA IMM A-M $D27B: 23 C1 BLS REL Branch=> $D23E if C|Z=1 $D27D: 91 8A CMPA DIR A-M $D27F: 22 BD BHI REL Branch=> $D23E if C|Z=0 $D281: 80 07 SUBA IMM A<=A-M $D283: 80 30 SUBA IMM A<=A-M $D285: 97 85 STAA DIR M<=A $D287: 86 01 LDAA IMM A<=M $D289: BD D0DD JSR EXT Jump to Subr=>Address $D0DD $D28C: BD D11E JSR EXT Jump to Subr=>Address $D11E $D28F: 8D 38 BSR REL Branch to Subr=> $D2C9 $D291: A6 02 LDAA IND A<=M $D293: 81 20 CMPA IMM A-M $D295: 27 1D BEQ REL Branch=> $D2B4 if Z=1 $D297: 7C 0084 INC EXT M<=M+1 $D29A: DC 84 LDD DIR A:B<=M:M+1 $D29C: 11 CBA IMP A-B $D29D: 26 15 BNE REL Branch=> $D2B4 if Z=0 $D29F: 8D 32 BSR REL Branch to Subr=> $D2D3 $D2A1: 7B 407E TIM EXT IM&M $D2A4: 27 04 BEQ REL Branch=> $D2AA if Z=1 $D2A6: 8D 49 BSR REL Branch to Subr=> $D2F1 $D2A8: 20 02 BRA REL Branch=> $D2AC if (Always) $D2AA: 8D 48 BSR REL Branch to Subr=> $D2F4 $D2AC: 96 8B LDAA DIR A<=M $D2AE: FE 8004 LDX EXT IX<=M:M+1 $D2B1: 7E D22C JMP EXT Jump=>Address $D22C $D2B4: 8D 04 BSR REL Branch to Subr=> $D2BA $D2B6: 26 D9 BNE REL Branch=> $D291 if Z=0 $D2B8: 20 B0 BRA REL Branch=> $D26A if (Always) '**** SUBROUTINE OF MKEYIN **** $D2BA: DE 80 LDX DIR IX<=M:M+1 $D2BC: EC 00 LDD IND A:B<=M:M+1 $D2BE: BD D1AD JSR EXT Jump to Subr=>Address $D1AD $D2C1: 7C 008B INC EXT M<=M+1 $D2C4: 96 8B LDAA DIR A<=M $D2C6: 81 06 CMPA IMM A-M $D2C8: 39 RTS IMP Return from Subroutine $D2C9: 86 01 LDAA IMM A<=M $D2CB: 97 8B STAA DIR M<=A $D2CD: FE 0136 LDX EXT IX<=M:M+1 $D2D0: DF 80 STX DIR M:M+1<=IX $D2D2: 39 RTS IMP Return from Subroutine $D2D3: 7B 4078 TIM EXT IM&M $D2D6: 27 FA BEQ REL Branch=> $D2D2 if Z=1 $D2D8: 96 7E LDAA DIR A<=M $D2DA: 36 PSHA IMP =>A;SP<=SP-1 $D2DB: 84 20 ANDA IMM A<=A&M $D2DD: 27 04 BEQ REL Branch=> $D2E3 if Z=1 $D2DF: 8D 10 BSR REL Branch to Subr=> $D2F1 $D2E1: 20 02 BRA REL Branch=> $D2E5 if (Always) $D2E3: 8D 0F BSR REL Branch to Subr=> $D2F4 $D2E5: 0F SEI IMP I<=1 $D2E6: FE 0138 LDX EXT IX<=M:M+1 $D2E9: AD 00 JSR IND Jump to Subr=>Address $D2EB: 0E CLI IMP I<=0 $D2EC: 32 PULA IMP SP<=SP+1;<=A $D2ED: 84 10 ANDA IMM A<=A&M $D2EF: 27 03 BEQ REL Branch=> $D2F4 if Z=1 $D2F1: 7E D08B JMP EXT Jump=>Address $D08B $D2F4: 7E D085 JMP EXT Jump=>Address $D085 '**** DATA DECK **** $D2F7--$D2F7: NUL DATA 43 $D2F8--$D2FF: NUL DATA 54 52 4C 2F 40 20 49 6E $D300--$D307: NUL DATA 69 74 69 61 6C 69 7A 65 $D308--$D30F: NUL DATA FF FF FF FF FF FF FF FF ' END