$F875/63605: Common Tape Code
Jump from $F862:
F875: A0 7F LDY #$7F
F877: 8C 0D DC STY $DC0D ; CIA1: Interrupt (IRQ) Control Register
F87A: 8D 0D DC STA $DC0D ; CIA1: Interrupt (IRQ) Control Register
F87D: AD 0E DC LDA $DC0E ; CIA1: Control Register A
F880: 09 19 ORA #$19
F882: 8D 0F DC STA $DC0F ; CIA1: Control Register B
F885: 29 91 AND #$91
F887: 8D A2 02 STA $02A2 ; TOD sense during Tape I/O
F88A: 20 A4 F0 JSR $F0A4 ; Serial Bus Idle
F88D: AD 11 D0 LDA $D011 ; VIC: Control Register 1
F890: 29 EF AND #$EF
F892: 8D 11 D0 STA $D011 ; VIC: Control Register 1
F895: AD 14 03 LDA $0314 ; Vector: Hardware IRQ Interrupt Address
F898: 8D 9F 02 STA $029F ; Temp. store for IRQ Vector during Tape I/O
F89B: AD 15 03 LDA $0315 ; Vector: Hardware IRQ Interrupt Address
F89E: 8D A0 02 STA $02A0 ; Temp. store for IRQ Vector during Tape I/O
F8A1: 20 BD FC JSR $FCBD ; Set IRQ Vector
F8A4: A9 02 LDA #$02
F8A6: 85 BE STA $BE ; Tape Input/Output Block count
F8A8: 20 97 FB JSR $FB97 ; New Character Setup
F8AB: A5 01 LDA $01 ; 6510 On-chip 8-bit Input/Output Register
F8AD: 29 1F AND #$1F
F8AF: 85 01 STA $01 ; 6510 On-chip 8-bit Input/Output Register
F8B1: 85 C0 STA $C0 ; Tape Motor Switch
F8B3: A2 FF LDX #$FF
Jump from $F8BB:
F8B5: A0 FF LDY #$FF
Jump from $F8B8:
F8B7: 88 DEY
F8B8: D0 FD BNE $F8B7
F8BA: CA DEX
F8BB: D0 F8 BNE $F8B5
F8BD: 58 CLI
Jump from $F8CD:
F8BE: AD A0 02 LDA $02A0 ; Temp. store for IRQ Vector during Tape I/O
F8C1: CD 15 03 CMP $0315 ; Vector: Hardware IRQ Interrupt Address
F8C4: 18 CLC
F8C5: F0 15 BEQ $F8DC ; Check Tape Stop
F8C7: 20 D0 F8 JSR $F8D0 ; Check Tape Stop
F8CA: 20 BC F6 JSR $F6BC ; Bump Clock
F8CD: 4C BE F8 JMP $F8BE
Previous Page / Next Page