I found that the display routine will have a value in the A register after it returns back to your program. This program displays that value.
* = $0100
0100 THIRD = 00F9
0100 START
0100 JSR $1F1F 20 1F 1F
0103 STA *THIRD 85 F9
0105 LDA #$00 A9 00
0107 SEC 38
0108 BCS START B0 F6
The values returned are:
78 xx xx xx
7E 7B 6F 54
3C 3B 3A 39
47 46 3E 3D
4B 4A 49 48
4F 4E 4D 4C
They are nice and repeatable, they can be translated to actual key values, but I have not found way to find out when the key is released. The 1F1F routine will keep returning the last key pressed on the A register.even after the key is released. This can be checked because the A register is set to 0 via LDA 00 after displaying it, but the display does not change back to 0 when the key is released.
Without finding a way to check that the key is released, this is not practical yet.
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.