$EADD/60125: Process Key Image EADD: 6C 8F 02 JMP ($028F) ; Vector: Routine to determine Keyboard table Jump from $EB76: EAE0: A4 CB LDY $CB ; Matrix value of last Key pressed EAE2: B1 F5 LDA ($F5),Y ; Vector: Current Keyboard decoding Table EAE4: AA TAX EAE5: C4 C5 CPY $C5 ; Matrix value of last Key pressed EAE7: F0 07 BEQ $EAF0 EAE9: A0 10 LDY #$10 EAEB: 8C 8C 02 STY $028C ; Repeat Key: First repeat delay Counter EAEE: D0 36 BNE $EB26 Jump from $EAE7: EAF0: 29 7F AND #$7F EAF2: 2C 8A 02 BIT $028A ; Flag: Repeat keys EAF5: 30 16 BMI $EB0D EAF7: 70 49 BVS $EB42 EAF9: C9 7F CMP #$7F Jump from $EA98: EAFB: F0 29 BEQ $EB26 EAFD: C9 14 CMP #$14 EAFF: F0 0C BEQ $EB0D EB01: C9 20 CMP #$20 EB03: F0 08 BEQ $EB0D EB05: C9 1D CMP #$1D EB07: F0 04 BEQ $EB0D EB09: C9 11 CMP #$11 EB0B: D0 35 BNE $EB42 Jump from $EAF5, $EAFF, $EB03, $EB07: EB0D: AC 8C 02 LDY $028C ; Repeat Key: First repeat delay Counter EB10: F0 05 BEQ $EB17 EB12: CE 8C 02 DEC $028C ; Repeat Key: First repeat delay Counter EB15: D0 2B BNE $EB42 Jump from $EB10: EB17: CE 8B 02 DEC $028B ; Repeat Key: Speed Counter EB1A: D0 26 BNE $EB42 EB1C: A0 04 LDY #$04 EB1E: 8C 8B 02 STY $028B ; Repeat Key: Speed Counter EB21: A4 C6 LDY $C6 ; Number of Characters in Keyboard Buffer queue EB23: 88 DEY EB24: 10 1C BPL $EB42 Jump from $EAEE, $EAFB: EB26: A4 CB LDY $CB ; Matrix value of last Key pressed EB28: 84 C5 STY $C5 ; Matrix value of last Key pressed EB2A: AC 8D 02 LDY $028D ; Flag: Shift Keys EB2D: 8C 8E 02 STY $028E ; Last Shift Key used for debouncing EB30: E0 FF CPX #$FF EB32: F0 0E BEQ $EB42 EB34: 8A TXA EB35: A6 C6 LDX $C6 ; Number of Characters in Keyboard Buffer queue EB37: EC 89 02 CPX $0289 ; Maximum number of Bytes in Keyboard Buffer EB3A: B0 06 BCS $EB42 EB3C: 9D 77 02 STA $0277,X ; Keyboard Buffer Queue (FIFO) EB3F: E8 INX EB40: 86 C6 STX $C6 ; Number of Characters in Keyboard Buffer queue Jump from $EAF7, $EB0B, $EB15, $EB1A, $EB24, $EB32, $EB3A, $EB52: EB42: A9 7F LDA #$7F EB44: 8D 00 DC STA $DC00 ; CIA1: Data Port A (Keyboard, Joystick, Paddles) EB47: 60 RTS Previous Page / Next Page |