ORG $7B00 O LDD #$707 STD X2 LDD #$B03F STD PAS BRA AB O1 DEC B1 BPL AA RTS AA DEC X2 BPL AB LDA #7 STA X2 DEC Y2 AB LDD X2 STD X4 LDA B1 STA C4 LDB #$31 JSR $E81E JSR SP1 LDA CP BEQ O1 LDX #$7F00 STX ADDEB LDU #$7EC0 LDD #0 STD PA AC LDA ,U+ STA ,X+ CMPA $7FFF BNE AD INC PA BRA AE AD CMPA $7FFE BNE AE INC PV AE CMPU #$7F00 BNE AC LDA $7FFF STA CT LDA $7FFD STA CC1 AE1 JSR SP2 DEC CC1 BMI BA LDA #3 STA CPASS BRA AR1 AE2 DEC CPASS BEQ BA AR1 JSR SP6 JSR SP4 LDA CCS BEQ AE2 LDD SX STD X4 BRA AE1 BA LDA PA SUBA PV CMPA PAS BLT BB STA PAS LDD X2 STD XJ BB LDD $7FFE CMPB CT BEQ BD EXG A,B STD $7FFE BD LDX #$7EC0 STX ADDEB JMP O1 ACG LDB Y1 LSLB LSLB LSLB ADDB X1 LDX ADDEB LEAX B,X LDA ,X RTS SP1 CLR CP LDX ADDEB LDA C4 LEAX A,X LDA ,X CMPA #1 BEQ S1B RTS S1B LDA #1 STA NSP BRA MCSP SP2 LDD #$100 STD CA LDD X4 STD X1 JSR ACG LDA $7FFF STA ,X LDA #2 STA NSP BRA MCSP MCSP LDD #$FFFF STD X3 MCA1 LDD X4 STD X1 CLR C1 MCA2 LDD X1 ADDA X3 ADDB Y3 STD X1 TSTA BMI MCA3 CMPA #8 BPL MCA3 TSTB BMI MCA3 CMPB #8 BMI MCA4 MCA3 INC X3 LDA X3 CMPA #2 BNE MCA1 LDA #255 STA X3 INC Y3 LDA Y3 CMPA #2 BNE MCA1 LDA NSP CMPA #2 BEQ S2A RTS S2A LDX ADDEB CMPX #$7F40 BNE SA1 RTS S2A1 LDA CT CMPA $7FFF BNE S2B LDD PA ADDD CA STD PA RTS S2B LDD CA EXG A,B ADDD PA STD PA RTS MCA4 JSR ACG LDB NSP CMPB #2 BNE MCA5 TSTA BNE MCA5 INC ,X BRA MCA3 MCA5 CMPA $7FFF BNE MCA6 LDA NSP CMPA #1 BNE S23 LDA C1 ADDA CP STA CP BRA MCA3 S23 LDD X1 SUBA X3 SUBB Y3 STD X1 CMPD X4 LBEQ MCA3 JSR ACG LDA $7FFF STA ,X INC CA DEC CV BRA S23 MCA6 CMPA $7FFE LBNE MCA3 INC C1 JMP MCA2 SP4 LDX ADDEB STX ADG LDD #$707 STD X5 LDD #$3FA0 STD C5 CLR CCS BRA S4C S4A DEC C5 BPL S4B RTS S4B DEC X5 BPL S4C LDA #7 STA X5 DEC Y5 S4C LDD X5 STD X4 LDA C5 STA C4 JSR SP5 LDA CP BEQ S4A LDX ADDEB LDU #$7F40 STU ADDEB CLR CP1 S4D LDA ,X+ STA ,U+ CMPA #1 BNE S4D1 INC CP1 S4D1 CMPU #$7F80 BNE S4D JSR SP2 JSR SP6 LDD #$707 STD X4 LDD #$3F00 STD C4 LDD #$2000 STD Z2 BRA S4G S4E DEC C4 BMI S4H DEC X4 BPL S4G LDA #7 STA X4 DEC Y4 S4G JSR SP5 LDA CP BEQ S4E INC CB LDD ZB CMPA Z2 BMI S4G1 BNE S4E CMPB P2 BMI S4E S4G1 STD Z2 BRA S4E S4H LDD Z2 SUBA Z1 STA Z2 LSLA ADDA Z2 LSL CB SUBA CB SUBB P1 STB P2 LDB CP1 CMPB #24 BMI S4IA SUBA P2 BRA S4IB S4IA ADDA P2 S4IB CMPA CM BLT S4J STA CM LDD X5 STD SX INC CCS S4J LDX ADG STX ADDEB JSR SP6 JMP S4A SP5 JSR SP1 LDA CP BNE S5A RTS S5A LDX #G4 LDA C4 LEAX A,X LDA ,X STA ZB CMPA #7 BEQ S5D S5B LDX ADDEB CMPX ADG BEQ S5C RTS S5C LDD ZB STD Z1 RTS S5D LDA C4 ANDA #20 TSTA BEQ S50 CMPA #8 BEQ S57 CMPA #16 BEQ S556 LDD #$707 S5E STD X1 JSR ACG CMPA $7FFF BNE S5B LDA #1 STA ZB BRA S5B S50 LDD #0 BRA S5E S57 LDD #$700 BRA S5E S556 LDD #7 BRA S5E SP6 LDD $7FFE EXG A,B STD $7FFE RTS CP0 LDX #$7EC0 LDD #0 STD PA CPA LDA ,X+ CMPA $7FFF BNE CPB INC PA BRA CPC CPB CMPA $7FFE BNE CPC INC PV CPC CMPX #$7F00 BNE CPA RTS ORG $7F80 G4 FCB 1,7,2,3,3,2,7,1 FCB 7,8,6,6,6,6,8,7 FCB 2,6,4,5,5,4,6,2 FCB 3,6,5,5,5,5,6,3 FCB 3,6,5,5,5,5,6,3 FCB 2,6,4,5,5,4,6,2 FCB 7,8,6,6,6,6,8,7 FCB 1,7,2,3,3,2,7,1 ORG $7FC0 XJ FDB 0 PAS FCB 0 B1 FCB 0 X2 FCB 0 Y2 FCB 0 CCS FCB 0 ADDEB FDB $7EC0 PA FCB 0 PV FCB 0 CT FCB 0 X4 FCB 0 Y4 FCB 0 C4 FCB 0 CB FCB 0 SX FDB 0 X5 FCB 0 Y5 FCB 0 C5 FCB 0 CM FCB 0 X3 FCB 0 Y3 FCB 0 X1 FCB 0 Y1 FCB 0 CA FCB 0 CV FCB 0 C1 FCB 0 CL FCB 0 NSP FCB 0 CPASS FCB 0 ZB FCB 0 CP FCB 0 Z2 FCB 0 P2 FCB 0 Z1 FCB 0 P1 FCB 0 ADG FDB 0 CP1 FCB 0 CC1 FCB 0 END