$FBCD/64461: IRQ Entry Point FBCD: A5 A8 LDA $A8 ; RS232 Input Bit count/Tape temporary FBCF: D0 12 BNE $FBE3 FBD1: A9 10 LDA #$10 FBD3: A2 01 LDX #$01 FBD5: 20 B1 FB JSR $FBB1 ; Send Tone to Tape FBD8: D0 2F BNE $FC09 FBDA: E6 A8 INC $A8 ; RS232 Input Bit count/Tape temporary FBDC: A5 B6 LDA $B6 ; RS232 Output Byte Buffer/Tape Read Error Flag FBDE: 10 29 BPL $FC09 FBE0: 4C 57 FC JMP $FC57 ; Write Tape Leader Jump from $FBCF: FBE3: A5 A9 LDA $A9 ; RS232 Flag: Start Bit check/Tape temporary FBE5: D0 09 BNE $FBF0 FBE7: 20 AD FB JSR $FBAD ; Send Tone to Tape FBEA: D0 1D BNE $FC09 FBEC: E6 A9 INC $A9 ; RS232 Flag: Start Bit check/Tape temporary FBEE: D0 19 BNE $FC09 Jump from $FBE5: FBF0: 20 A6 FB JSR $FBA6 ; Send Tone to Tape FBF3: D0 14 BNE $FC09 FBF5: A5 A4 LDA $A4 ; Serial Bus shift Counter FBF7: 49 01 EOR #$01 FBF9: 85 A4 STA $A4 ; Serial Bus shift Counter FBFB: F0 0F BEQ $FC0C FBFD: A5 BD LDA $BD ; RS232 Output Parity/Tape Byte temporary FBFF: 49 01 EOR #$01 FC01: 85 BD STA $BD ; RS232 Output Parity/Tape Byte temporary FC03: 29 01 AND #$01 FC05: 45 9B EOR $9B ; Parity of Byte Output to Tape FC07: 85 9B STA $9B ; Parity of Byte Output to Tape Jump from $FBD8, $FBDE, $FBEA, $FBEE, $FBF3, $FC14, $FC2E, $FC3D, $FC4C, $FBCB: FC09: 4C BC FE JMP $FEBC ; Exit Interrupt Jump from $FBFB: FC0C: 46 BD LSR $BD ; RS232 Output Parity/Tape Byte temporary FC0E: C6 A3 DEC $A3 ; Serial Bus EOI (End Of Input) Flag FC10: A5 A3 LDA $A3 ; Serial Bus EOI (End Of Input) Flag FC12: F0 3A BEQ $FC4E FC14: 10 F3 BPL $FC09 Jump from $FC91: FC16: 20 97 FB JSR $FB97 ; New Character Setup FC19: 58 CLI FC1A: A5 A5 LDA $A5 ; Tape Synchronising count down FC1C: F0 12 BEQ $FC30 FC1E: A2 00 LDX #$00 FC20: 86 D7 STX $D7 ; Current Input Character/Last Character Output FC22: C6 A5 DEC $A5 ; Tape Synchronising count down FC24: A6 BE LDX $BE ; Tape Input/Output Block count FC26: E0 02 CPX #$02 FC28: D0 02 BNE $FC2C FC2A: 09 80 ORA #$80 Jump from $FC28: FC2C: 85 BD STA $BD ; RS232 Output Parity/Tape Byte temporary FC2E: D0 D9 BNE $FC09 Jump from $FC1C: FC30: 20 D1 FC JSR $FCD1 ; Check Read / Write Pointer FC33: 90 0A BCC $FC3F FC35: D0 91 BNE $FBC8 ; Write Data to Tape FC37: E6 AD INC $AD ; Pointer: Tape Buffer/Screen scrolling FC39: A5 D7 LDA $D7 ; Current Input Character/Last Character Output FC3B: 85 BD STA $BD ; RS232 Output Parity/Tape Byte temporary FC3D: B0 CA BCS $FC09 Jump from $FC33: FC3F: A0 00 LDY #$00 FC41: B1 AC LDA ($AC),Y ; Pointer: Tape Buffer/Screen scrolling FC43: 85 BD STA $BD ; RS232 Output Parity/Tape Byte temporary FC45: 45 D7 EOR $D7 ; Current Input Character/Last Character Output FC47: 85 D7 STA $D7 ; Current Input Character/Last Character Output FC49: 20 DB FC JSR $FCDB ; Bump Read / Write Pointer FC4C: D0 BB BNE $FC09 Jump from $FC12: FC4E: A5 9B LDA $9B ; Parity of Byte Output to Tape FC50: 49 01 EOR #$01 FC52: 85 BD STA $BD ; RS232 Output Parity/Tape Byte temporary Jump from $FC68, $FC6F, $FC73, $FC7A, $FCBB: FC54: 4C BC FE JMP $FEBC ; Exit Interrupt Previous Page / Next Page |