$EA31/59953: Main IRQ Entry Point
EA31: 20 EA FF JSR $FFEA ; Increment Real-Time Clock
EA34: A5 CC LDA $CC ; Flag: Cursor blink
EA36: D0 29 BNE $EA61
EA38: C6 CD DEC $CD ; Timer: Count down for Cursor blink toggle
EA3A: D0 25 BNE $EA61
EA3C: A9 14 LDA #$14
EA3E: 85 CD STA $CD ; Timer: Count down for Cursor blink toggle
EA40: A4 D3 LDY $D3 ; Cursor Column on current Line
EA42: 46 CF LSR $CF ; Flag: Cursor Status
EA44: AE 87 02 LDX $0287 ; Background Color under Cursor
EA47: B1 D1 LDA ($D1),Y ; Pointer: Current Screen Line Address
EA49: B0 11 BCS $EA5C
EA4B: E6 CF INC $CF ; Flag: Cursor Status
EA4D: 85 CE STA $CE ; Character under Cursor while Cursor Inverted
EA4F: 20 24 EA JSR $EA24 ; Syncronise Color Pointer
EA52: B1 F3 LDA ($F3),Y ; Pointer: Current Color RAM Location
EA54: 8D 87 02 STA $0287 ; Background Color under Cursor
EA57: AE 86 02 LDX $0286 ; Current Character Color code
EA5A: A5 CE LDA $CE ; Character under Cursor while Cursor Inverted
Jump from $EA49:
EA5C: 49 80 EOR #$80
EA5E: 20 1C EA JSR $EA1C ; Print To Screen
Jump from $EA36, $EA3A:
EA61: A5 01 LDA $01 ; 6510 On-chip 8-bit Input/Output Register
EA63: 29 10 AND #$10
EA65: F0 0A BEQ $EA71
EA67: A0 00 LDY #$00
EA69: 84 C0 STY $C0 ; Tape Motor Switch
EA6B: A5 01 LDA $01 ; 6510 On-chip 8-bit Input/Output Register
EA6D: 09 20 ORA #$20
EA6F: D0 08 BNE $EA79
Jump from $EA65:
EA71: A5 C0 LDA $C0 ; Tape Motor Switch
EA73: D0 06 BNE $EA7B
EA75: A5 01 LDA $01 ; 6510 On-chip 8-bit Input/Output Register
EA77: 29 1F AND #$1F
Jump from $EA6F:
EA79: 85 01 STA $01 ; 6510 On-chip 8-bit Input/Output Register
Jump from $EA73:
EA7B: 20 87 EA JSR $EA87 ; Scan Keyboard
EA7E: AD 0D DC LDA $DC0D ; CIA1: Interrupt (IRQ) Control Register
Previous Page / Next Page
Kernal-Reference:
LDA $EA60 : $E3A8