$EA87/60039: Scan Keyboard
Jump from $EA7B, $FF9F:
EA87: A9 00 LDA #$00
EA89: 8D 8D 02 STA $028D ; Flag: Shift Keys
EA8C: A0 40 LDY #$40
EA8E: 84 CB STY $CB ; Matrix value of last Key pressed
EA90: 8D 00 DC STA $DC00 ; CIA1: Data Port A (Keyboard, Joystick, Paddles)
EA93: AE 01 DC LDX $DC01 ; CIA1: Data Port B (Keyboard, Joystick, Paddles)
EA96: E0 FF CPX #$FF
EA98: F0 61 BEQ $EAFB ; Process Key Image
EA9A: A8 TAY
EA9B: A9 81 LDA #$81
EA9D: 85 F5 STA $F5 ; Vector: Current Keyboard decoding Table
EA9F: A9 EB LDA #$EB
EAA1: 85 F6 STA $F6 ; Vector: Current Keyboard decoding Table
EAA3: A9 FE LDA #$FE
EAA5: 8D 00 DC STA $DC00 ; CIA1: Data Port A (Keyboard, Joystick, Paddles)
Jump from $EADA:
EAA8: A2 08 LDX #$08
EAAA: 48 PHA
Jump from $EAB1:
EAAB: AD 01 DC LDA $DC01 ; CIA1: Data Port B (Keyboard, Joystick, Paddles)
EAAE: CD 01 DC CMP $DC01 ; CIA1: Data Port B (Keyboard, Joystick, Paddles)
EAB1: D0 F8 BNE $EAAB
Jump from $EAD2:
EAB3: 4A LSR
EAB4: B0 16 BCS $EACC
EAB6: 48 PHA
EAB7: B1 F5 LDA ($F5),Y ; Vector: Current Keyboard decoding Table
EAB9: C9 05 CMP #$05
EABB: B0 0C BCS $EAC9
EABD: C9 03 CMP #$03
EABF: F0 08 BEQ $EAC9
EAC1: 0D 8D 02 ORA $028D ; Flag: Shift Keys
EAC4: 8D 8D 02 STA $028D ; Flag: Shift Keys
EAC7: 10 02 BPL $EACB
Jump from $EABB, $EABF:
EAC9: 84 CB STY $CB ; Matrix value of last Key pressed
Jump from $EAC7:
EACB: 68 PLA
Jump from $EAB4:
EACC: C8 INY
EACD: C0 41 CPY #$41
EACF: B0 0B BCS $EADC
EAD1: CA DEX
EAD2: D0 DF BNE $EAB3
EAD4: 38 SEC
EAD5: 68 PLA
EAD6: 2A ROL
EAD7: 8D 00 DC STA $DC00 ; CIA1: Data Port A (Keyboard, Joystick, Paddles)
EADA: D0 CC BNE $EAA8
Jump from $EACF:
EADC: 68 PLA
Previous Page / Next Page