; Disassembly of olympics.a26 ; Disassembled Sun Dec 31 22:30:04 2023 ; Using DiStella v3.0 ; ; Command Line: C:\ATARI\DISTELLA.EXE -pafs olympics.a26 ; processor 6502 VSYNC = $00 VBLANK = $01 WSYNC = $02 NUSIZ0 = $04 COLUP0 = $06 CTRLPF = $0A PF0 = $0D PF1 = $0E PF2 = $0F RESP0 = $10 AUDC0 = $15 AUDF0 = $17 AUDV0 = $19 GRP0 = $1B GRP1 = $1C ENAM0 = $1D ENAM1 = $1E ENABL = $1F HMP0 = $20 VDELBL = $27 RESMP0 = $28 RESMP1 = $29 HMOVE = $2A HMCLR = $2B CXCLR = $2C INPT0 = $38 INPT2 = $3A SWCHA = $0280 SWCHB = $0282 INTIM = $0284 TIM8T = $0295 TIM64T = $0296 ORG $F000 START: SEI ;2 CLD ;2 LDX #$FF ;2 TXS ;2 INX ;2 TXA ;2 LF007: STA $8D,X ;4 INX ;2 BNE LF007 ;2 LF00C: LDA #$A2 ;2 STA WSYNC ;3 STA TIM8T ;4 LDX #$01 ;2 LF015: LDY $8D,X ;4 TXA ;2 ASL ;2 TAX ;2 TYA ;2 LDY #$00 ;2 BEQ LF023 ;2 LF01F: INY ;2 SEC ;2 SBC #$0A ;2 LF023: CMP #$0A ;2 BPL LF01F ;2 STA $80 ;3 ASL ;2 ASL ;2 ADC $80 ;3 ADC #$CA ;2 STA $C5,X ;4 TYA ;2 STA $80 ;3 ASL ;2 ASL ;2 ADC $80 ;3 ADC #$CA ;2 STA $C9,X ;4 DEX ;2 DEX ;2 BPL LF015 ;2 LDA #$3F ;2 LDY #$00 ;2 BIT $8C ;3 BEQ LF071 ;2 BMI LF059 ;2 LDA #$20 ;2 SBC $8D ;3 SBC $8E ;3 CMP #$02 ;2 BPL LF056 ;2 LDA #$02 ;2 LF056: TAX ;2 BPL LF065 ;2 LF059: LDA $BA ;3 BMI LF060 ;2 JSR LF432 ;6 LF060: ASL ;2 ASL ;2 ADC #$18 ;2 TAX ;2 LF065: BIT $8C ;3 LDA #$04 ;2 BVS LF06D ;2 LDA #$0C ;2 LF06D: DEC $8C ;5 LDY #$0F ;2 LF071: STY AUDV0 ;3 STX AUDF0 ;3 STA AUDC0 ;3 JSR LF23A ;6 INC $88 ;5 BNE LF082 ;2 INC $89 ;5 INC $8A ;5 LF082: LDA #$20 ;2 BIT $97 ;3 BEQ LF094 ;2 BIT $94 ;3 BVS LF094 ;2 ADC $B9 ;3 STA $B9 ;3 BCC LF094 ;2 INC $B8 ;5 LF094: LDA INTIM ;4 BNE LF094 ;2 LDX #$03 ;2 STX WSYNC ;3 STX VSYNC ;3 STA HMCLR ;3 LF0A1: LDA SWCHA ;4 AND LF6B4,X ;4 BEQ LF0AB ;2 LDA #$C0 ;2 LF0AB: STA $BF,X ;4 CPX $92 ;3 BNE LF0B3 ;2 STA $C3 ;3 LF0B3: CPX $93 ;3 BNE LF0B9 ;2 STA $C4 ;3 LF0B9: TAY ;2 BNE LF0C6 ;2 BIT $98 ;3 BVC LF0C6 ;2 LDA $B2,X ;4 SBC #$32 ;2 STA $B2,X ;4 LF0C6: DEX ;2 BPL LF0A1 ;2 INX ;2 STX WSYNC ;3 STX VSYNC ;3 LDA #$20 ;2 STA TIM64T ;4 LDA SWCHB ;4 TAY ;2 EOR $8F ;3 STY $8F ;3 AND #$02 ;2 BEQ LF0E1 ;2 STX $88 ;3 LF0E1: LDA $88 ;3 AND #$1F ;2 BEQ LF0E9 ;2 LDA #$02 ;2 LF0E9: ORA SWCHB ;4 EOR #$03 ;2 AND #$03 ;2 LSR ;2 BCS LF113 ;2 LSR ;2 BIT $90 ;3 BMI LF129 ;2 LF0F8: STA $8C ;3 STA $B6 ;3 BCC LF109 ;2 STA $8A ;3 ADC $96 ;3 CMP #$32 ;2 BMI LF107 ;2 TXA ;2 LF107: STA $96 ;3 LF109: STX $90 ;3 LDX $96 ;3 INX ;2 STX $8D ;3 JMP LF1AD ;3 LF113: STX $8D ;3 STX $8E ;3 STX $8C ;3 INX ;2 STX $89 ;3 STX $C3 ;3 LDA #$FF ;2 STA $90 ;3 STA $92 ;3 LDA #$3C ;2 STA $8B ;3 CLC ;2 LF129: BCS LF0F8 ;2 LDX $89 ;3 BEQ LF109 ;2 LDX #$14 ;2 CPX $8D ;3 BMI LF1AD ;2 CPX $8E ;3 BMI LF1AD ;2 STA $8A ;3 LDX $8B ;3 BEQ LF181 ;2 STA $B6 ;3 DEC $8B ;5 BNE LF1AD ;2 INC $8B ;5 LDA #$10 ;2 BIT $97 ;3 BNE LF153 ;2 LDA $C3 ;3 AND $C4 ;3 BMI LF1AD ;2 LF153: LDA #$00 ;2 STA $8B ;3 STA $91 ;3 STA $B9 ;3 LDA #$48 ;2 STA $8C ;3 LDA #$80 ;2 STA $B1 ;3 STA $95 ;3 STA $B6 ;3 LDA #$01 ;2 BIT $B8 ;3 BPL LF16F ;2 LDA #$FF ;2 LF16F: STA $B8 ;3 LDA #$01 ;2 BIT $9A ;3 BMI LF17D ;2 AND $92 ;3 BNE LF17D ;2 LDA #$FF ;2 LF17D: STA $BA ;3 BNE LF1AA ;2 LF181: LDA $B1 ;3 SBC #$01 ;2 BPL LF189 ;2 EOR #$FF ;2 LF189: LSR ;2 LSR ;2 TAX ;2 STA $80 ;3 LDA $B6 ;3 CLC ;2 ADC #$02 ;2 BPL LF197 ;2 EOR #$FF ;2 LF197: LSR ;2 LSR ;2 LSR ;2 TAY ;2 JMP.ind ($00A1);5 LF19E: .byte $24,$36,$10,$05,$A9,$00,$6C,$A3,$00,$20,$5F,$F4 LF1AA: JSR LF554 ;6 LF1AD: LDA $98 ;3 ASL ;2 STA $84 ;3 LDX #$03 ;2 LF1B4: LDA $BB,X ;4 LDY $A9,X ;4 BMI LF1C5 ;2 BIT $9A ;3 BVC LF1BF ;2 LSR ;2 LF1BF: STA $B2,X ;4 LDA $AD,X ;4 BNE LF1DD ;2 LF1C5: EOR #$FF ;2 CMP #$38 ;2 BCS LF1CD ;2 LDA #$38 ;2 LF1CD: CMP #$B6 ;2 BCC LF1D3 ;2 LDA #$B6 ;2 LF1D3: BIT $84 ;3 BVC LF1DB ;2 LSR ;2 ADC LF6C0,X ;4 LF1DB: STA $AD,X ;4 LF1DD: JSR LF445 ;6 DEX ;2 BPL LF1B4 ;2 LDA $88 ;3 AND #$07 ;2 TAY ;2 AND #$01 ;2 STA $80 ;3 LDA #$10 ;2 BIT $97 ;3 BEQ LF206 ;2 LDA $95 ;3 CPY #$00 ;2 BEQ LF202 ;2 CMP $B6 ;3 BEQ LF202 ;2 BCS LF200 ;2 ADC #$05 ;2 LF200: SBC #$02 ;2 LF202: STA $95 ;3 STA $B2 ;3 LF206: LDA $92 ;3 TAX ;2 EOR #$02 ;2 STA $93 ;3 BMI LF21F ;2 BIT $9A ;3 BPL LF21F ;2 LDA #$1C ;2 AND $88 ;3 BNE LF21F ;2 STA $B2,X ;4 LDX $93 ;3 STA $B2,X ;4 LF21F: LDA INTIM ;4 BNE LF21F ;2 STA CXCLR ;3 STA WSYNC ;3 STA HMOVE ;3 STA VBLANK ;3 LDY #$07 ;2 JSR LF5B8 ;6 JSR LF585 ;6 JSR LF5D0 ;6 JMP LF00C ;3 LF23A: LDA $96 ;3 AND #$3E ;2 TAX ;2 LDA LF713,X ;4 STA $98 ;3 LDA LF712,X ;4 STA $97 ;3 AND #$07 ;2 STA $80 ;3 ASL ;2 ASL ;2 ASL ;2 ADC $80 ;3 ADC #$08 ;2 TAY ;2 LDX #$08 ;2 LF257: LDA LF659,Y ;4 STA $9B,X ;4 DEY ;2 DEX ;2 BPL LF257 ;2 LDA $8A ;3 BRK ;7 NOP ;2 STA $80 ;3 LDX #$FF ;2 LDA #$08 ;2 BIT SWCHB ;4 BNE LF271 ;2 LDX #$0F ;2 LF271: STX $81 ;3 LDX #$03 ;2 LDY #$07 ;2 LF277: CLC ;2 LDA.wy $009B,Y ;4 BIT $81 ;3 BMI LF282 ;2 LDA LF698,X ;4 LF282: ADC $80 ;3 AND $81 ;3 STA COLUP0,X;4 DEY ;2 DEY ;2 DEX ;2 BPL LF277 ;2 LDA #$F3 ;2 STA $A4 ;3 STA $A2 ;3 LDA #$F7 ;2 STA $C6 ;3 STA $C8 ;3 STA $CA ;3 STA $CC ;3 STA $9C ;3 STA $9E ;3 LDX $9F ;3 CPX #$C9 ;2 BNE LF2A9 ;2 LDA #$00 ;2 LF2A9: STA $A0 ;3 LDA $96 ;3 AND #$01 ;2 TAX ;2 LDA $97,X ;4 AND #$3F ;2 STA $97,X ;4 LDA $98 ;3 AND #$1F ;2 ASL ;2 TAY ;2 LDA LF6C5,Y ;4 STA $9A ;3 LDA LF6C4,Y ;4 STA $99 ;3 AND #$C0 ;2 BRK ;7 NOP ;2 LSR ;2 TAX ;2 TAY ;2 LDA #$00 ;2 BIT $9A ;3 BVS LF2D5 ;2 LDA #$C0 ;2 LF2D5: STA $80 ;3 BIT SWCHB ;4 BPL LF2DD ;2 INY ;2 LF2DD: BVC LF2E0 ;2 INX ;2 LF2E0: STX $81 ;3 LDX #$01 ;2 JSR LF321 ;6 DEX ;2 LDY $81 ;3 JSR LF321 ;6 LDA $97 ;3 LSR ;2 LSR ;2 STA RESMP0 ;3 STA RESMP1 ;3 LDA $99 ;3 STA $A9 ;3 STA $AA ;3 ASL ;2 STA $AB ;3 STA $AC ;3 LDA #$03 ;2 TAX ;2 ORA $9A ;3 AND #$3F ;2 TAY ;2 LF308: LDA $A9,X ;4 ASL ;2 LDA LF6E2,Y ;4 BCS LF314 ;2 STA $AD,X ;4 BCC LF316 ;2 LF314: STA $B2,X ;4 LF316: DEY ;2 DEX ;2 BPL LF308 ;2 STX VBLANK ;3 LDY #$03 ;2 JMP LF5B8 ;3 LF321: LDA LF69C,Y ;4 ORA $99 ;3 STA NUSIZ0,X;4 LDA LF6A4,Y ;4 ORA $80 ;3 STA $A5,X ;4 LDA LF6AC,Y ;4 ORA $80 ;3 STA $A7,X ;4 RTS ;6 LF337: .byte $24,$B6,$10,$65,$C0,$07,$30,$4B,$24,$36,$10,$5D,$E0,$1F,$D0,$59 .byte $24,$BA,$10,$5A,$30,$5C,$A5,$92,$30,$4F,$24,$BA,$10,$4B,$A6,$B1 .byte $E0,$B4,$90,$06,$29,$01,$AA,$4C,$AB,$F3,$A8,$29,$01,$49,$01,$AA .byte $B9,$32,$00,$A4,$93,$19,$32,$00,$0A,$10,$2E,$30,$37,$C0,$0D,$30 .byte $28,$E0,$12,$F0,$0E,$C0,$04,$D0,$06,$24,$B6,$10,$25,$30,$1F,$E0 .byte $0D,$10,$16,$24,$B1,$30,$17,$10,$19,$24,$36,$10,$0C,$C0,$0C,$D0 .byte $08,$E0,$10,$30,$04,$24,$B8,$10,$EA,$A6,$80,$4C,$9E,$F1,$A2,$00 .byte $F0,$02,$A2,$01,$F6,$8D,$86,$92,$A9,$3F,$85,$8B,$A9,$0F,$85,$8C .byte $4C,$AD,$F1,$C0,$0C,$D0,$28,$E0,$11,$30,$24,$E6,$B6,$09,$C0,$D0 .byte $3C,$C0,$0C,$30,$1A,$E0,$11,$30,$16,$E0,$14,$10,$12,$E0,$12,$F0 .byte $02,$09,$80,$C0,$0C,$D0,$26,$09,$40,$C0,$0A,$D0,$02,$09,$40,$E0 .byte $0E,$10,$0B,$09,$80,$A6,$B1,$10,$02,$CA,$CA,$E8,$86,$B1,$C0,$06 .byte $10,$0B,$09,$40,$A4,$B6,$10,$02,$88,$88,$C8,$84,$B6,$85,$82,$0A .byte $85,$94,$6A,$D0,$03,$4C,$A7,$F1,$10,$03,$20,$08,$F5,$24,$82,$50 .byte $03,$20,$22,$F4,$A9,$84,$85,$8C,$4C,$AA,$F1,$A5,$B9,$20,$32,$F4 .byte $85,$B9,$A5,$B8,$49,$FF,$69,$00,$85,$B8,$60 LF432: EOR #$FF ;2 SEC ;2 ADC #$00 ;2 RTS ;6 LF438: .byte $0A,$69,$00,$0A,$69,$00,$0A,$69,$00,$0A,$69,$00,$40 LF445: SEC ;2 SBC #$2F ;2 LDY #$02 ;2 LF44A: INY ;2 SBC #$0F ;2 BCS LF44A ;2 EOR #$FF ;2 SBC #$06 ;2 BRK ;7 NOP ;2 STY WSYNC ;3 LF457: DEY ;2 BPL LF457 ;2 STA RESP0,X ;4 STA HMP0,X ;4 RTS ;6 LF45F: .byte $A2,$03,$B5,$32,$0A,$30,$07,$CA,$10,$F8,$E8,$86,$94,$60,$24,$97 .byte $50,$31,$B4,$B2,$B5,$A9,$10,$02,$B4,$AD,$24,$94,$70,$06,$84,$95 .byte $A9,$54,$85,$8C,$B5,$BF,$49,$40,$25,$97,$85,$94,$F0,$15,$98,$38 .byte $E5,$95,$84,$95,$18,$B4,$A9,$10,$05,$65,$B1,$85,$B1,$60,$65,$B6 .byte $85,$B6,$60,$A9,$C4,$85,$8C,$E6,$91,$86,$92,$24,$98,$30,$10,$A5 .byte $9A,$29,$03,$A8,$A5,$91,$F0,$19,$39,$BC,$F6,$D0,$14,$F0,$04,$B5 .byte $BF,$D0,$0E,$A4,$BA,$20,$10,$F5,$84,$BA,$A4,$B8,$20,$10,$F5,$84 .byte $B8,$B5,$A9,$30,$4E,$A9,$08,$35,$A5,$85,$80,$49,$08,$4A,$69,$03 .byte $75,$B2,$E5,$B6,$29,$3F,$4A,$C9,$10,$90,$02,$09,$E0,$20,$32,$F4 .byte $A4,$80,$D0,$03,$C9,$80,$6A,$85,$B8,$24,$9A,$38,$30,$02,$8A,$4A .byte $A5,$BA,$90,$02,$49,$80,$10,$01,$60,$A5,$BA,$20,$32,$F4,$85,$BA .byte $60,$10,$08,$88,$C0,$FC,$B0,$02,$A0,$FC,$60,$C8,$C0,$05,$30,$02 .byte $A0,$04,$60,$8A,$29,$02,$A8,$85,$82,$AD,$82,$02,$3D,$B8,$F6,$F0 .byte $01,$C8,$85,$81,$B5,$AD,$18,$79,$50,$F5,$E5,$B1,$85,$80,$A4,$82 .byte $D0,$03,$C9,$80,$6A,$A4,$81,$D0,$03,$C9,$80,$6A,$85,$BA,$4C,$22 .byte $F4,$0C,$07,$04,$02 LF554: LDA $B1 ;3 BIT $94 ;3 BVS LF57F ;2 CLC ;2 LDA $B9 ;3 ADC $B7 ;3 STA $B7 ;3 LDA #$00 ;2 BIT $97 ;3 BPL LF56D ;2 BIT $C3 ;3 BMI LF56D ;2 LDA $B8 ;3 LF56D: ADC $B8 ;3 CLC ;2 ADC $B6 ;3 STA $B6 ;3 EOR #$01 ;2 STA VDELBL ;3 SEC ;2 LDA $B1 ;3 SBC $BA ;3 STA $B1 ;3 LF57F: LDX #$04 ;2 JSR LF445 ;6 RTS ;6 LF585: LDX #$02 ;2 STX CTRLPF ;3 TAY ;2 DEX ;2 LF58B: STA WSYNC ;3 LDA ($C5),Y ;5 AND #$0F ;2 STA $87 ;3 LDA ($C9),Y ;5 AND #$F0 ;2 ORA $87 ;3 STA PF1 ;3 LDA ($C7),Y ;5 AND #$0F ;2 STA $87 ;3 LDA ($CB),Y ;5 AND #$F0 ;2 ORA $87 ;3 AND $90 ;3 STA PF1 ;3 TXA ;2 INX ;2 AND #$03 ;2 BNE LF58B ;2 INY ;2 CPY #$05 ;2 BNE LF58B ;2 LDY #$02 ;2 LF5B8: LDA #$00 ;2 STA PF0 ;3 STA PF1 ;3 STA PF2 ;3 STA GRP0 ;3 STA GRP1 ;3 STA ENAM0 ;3 STA ENAM1 ;3 STA ENABL ;3 STY WSYNC ;3 DEY ;2 BNE LF5B8 ;2 RTS ;6 LF5D0: TSX ;2 STX $81 ;3 LDX #$1D ;2 TXS ;2 LDX #$26 ;2 LDA #$15 ;2 STA CTRLPF ;3 STX $84 ;3 STX $85 ;3 LF5E0: TXA ;2 LDY #$F0 ;2 SEC ;2 SBC $B3 ;3 AND $A6 ;3 BEQ LF5EC ;2 LDY #$00 ;2 LF5EC: TXA ;2 INX ;2 SEC ;2 SBC $B4 ;3 AND $A7 ;3 PHP ;3 STY GRP1 ;3 TXA ;2 LSR ;2 LSR ;2 LSR ;2 TAY ;2 LDA ($9B),Y ;5 STA PF0 ;3 LDA ($9D),Y ;5 STA PF1 ;3 LDA ($9F),Y ;5 STA PF2 ;3 INX ;2 TXA ;2 LDX #$1F ;2 TXS ;2 TAX ;2 LDY #$F0 ;2 SEC ;2 SBC $B2 ;3 AND $A5 ;3 BEQ LF618 ;2 LDY #$00 ;2 LF618: TXA ;2 SEC ;2 SBC $B6 ;3 AND #$FC ;2 PHP ;3 STX WSYNC ;3 STY GRP0 ;3 TXA ;2 SEC ;2 SBC $B5 ;3 AND $A8 ;3 PHP ;3 LDY $80 ;3 LDA.wy $0038,Y ;4 BMI LF633 ;2 STX $84 ;3 LF633: LDA.wy $003A,Y ;4 BMI LF63A ;2 STX $85 ;3 LF63A: CPX #$DC ;2 BNE LF5E0 ;2 LDX $81 ;3 TXS ;2 LDY $80 ;3 LDA $85 ;3 CLC ;2 ADC.wy $00BD,Y ;4 ROR ;2 STA.wy $00BD,Y ;5 LDA $84 ;3 CLC ;2 ADC.wy $00BB,Y ;4 ROR ;2 STA.wy $00BB,Y ;5 RTS ;6 LF658: .byte $00 LF659: .byte $56,$38,$56,$C8,$56,$0F,$86,$22,$F5,$40,$18,$56,$76,$56,$0F,$86 .byte $C3,$E0,$6C,$D6,$82,$28,$56,$00,$74,$9A,$C8,$40,$18,$56,$76,$C9 .byte $0F,$7C,$C3,$E0,$6C,$38,$56,$76,$56,$2C,$4D,$22,$E6,$6C,$2C,$56 .byte $9A,$98,$0F,$37,$00,$E6,$6C,$2C,$AE,$C8,$56,$9A,$90,$22,$BA LF698: .byte $0C,$00,$0E,$06 LF69C: .byte $20,$20,$30,$20,$27,$25,$37,$25 LF6A4: .byte $30,$38,$30,$38,$3C,$3C,$3C,$3C LF6AC: .byte $32,$3A,$3C,$3C,$32,$3A,$3C,$3C LF6B4: .byte $80,$40,$08,$04,$40,$80,$40,$80,$FF,$03,$07,$0F LF6C0: .byte $18,$60,$1B,$65 LF6C4: .byte $20 LF6C5: .byte $01,$24,$06,$20,$09,$24,$0D,$20,$12,$24,$17,$24,$4E,$22,$5B,$20 .byte $1D,$24,$21,$26,$22,$20,$5F,$A5,$26,$20,$A9,$E5,$2E LF6E2: .byte $40,$BC,$41,$BD,$36,$86,$37,$87,$40,$BC,$69,$91,$9C,$C0,$9D,$C1 .byte $40,$BC,$95,$69,$46,$76,$67,$57,$46,$96,$87,$57,$54,$A8,$8D,$71 .byte $54,$68,$55,$69,$38,$C0,$40,$BC,$A8,$A8,$90,$90,$B8,$B8,$98,$98 LF712: .byte $98 LF713: .byte $80,$88,$80,$80,$80,$80,$82,$88,$81,$80,$81,$89,$83,$81,$84,$41 .byte $85,$49,$86,$41,$87,$8A,$88,$8A,$89,$4A,$8A,$82,$88,$42,$8B,$43 .byte $8C,$8C,$8D,$84,$8D,$2D,$6E,$25,$6E,$AE,$2E,$6E,$6E,$A6,$2E,$66 .byte $6E,$F0,$F0,$30,$30,$30,$30,$30,$00,$00,$00,$00,$00,$00,$00,$00 .byte $00,$00,$30,$30,$30,$30,$30,$FF,$FF,$00,$00,$00,$00,$00,$00,$00 .byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$FF,$FF,$30 .byte $30,$30,$30,$30,$30,$30,$30,$30,$30,$30,$30,$30,$30,$30,$30,$30 .byte $30,$30,$30,$FF,$FF,$00,$00,$00,$00,$00,$00,$70,$40,$40,$40,$40 .byte $40,$40,$70,$00,$00,$00,$00,$00,$00,$FF,$FF,$00,$00,$00,$00,$00 .byte $00,$00,$00,$00,$00,$00,$00,$80,$00,$80,$00,$80,$00,$80,$00,$FF .byte $FF,$00,$00,$00,$00,$00,$00,$F0,$00,$00,$00,$00,$00,$00,$00,$00 .byte $00,$00,$00,$00,$00,$FF,$FF,$07,$05,$05,$05,$07,$22,$22,$22,$22 .byte $22,$77,$11,$77,$44,$77,$77,$11,$33,$11,$77,$55,$55,$77,$11,$11 .byte $77,$44,$77,$11,$77,$44,$44,$77,$55,$77,$77,$11,$11,$11,$11,$77 .byte $55,$77,$55,$77,$77,$55,$77,$11,$11,$00,$F0,$38,$F4