An issue was brought to my attention that a short test program that detects whether the QAOP,space keys are pressed was not behaving as expected.
Each key's state is determined by a direct read of port $XXFE and the result ANDed with a single bit to see if the key is pressed.
I have a test tap here: https://drive.google.com/file/d/0B6XhJJ33xpOWNXFCejdZaUhJZDg/view?usp=sharing
There's no problem with detecting if the keys are pressed individually or in some combinations. However, on my PC, using a variety of windows emulators I get this:
Press in this order: q then a then o. q and a are registered as pressed, o is not.
Press in this order: o then a then q. o and a are registered as pressed, q is not.
This only makes sense to me if this is a limitation in my PC keyboard.
Anyone has any other thoughts or is able to test on a real machine to see if this program does as it should?
Each key's state is determined by a direct read of port $XXFE and the result ANDed with a single bit to see if the key is pressed.
I have a test tap here: https://drive.google.com/file/d/0B6XhJJ33xpOWNXFCejdZaUhJZDg/view?usp=sharing
There's no problem with detecting if the keys are pressed individually or in some combinations. However, on my PC, using a variety of windows emulators I get this:
Press in this order: q then a then o. q and a are registered as pressed, o is not.
Press in this order: o then a then q. o and a are registered as pressed, q is not.
This only makes sense to me if this is a limitation in my PC keyboard.
Anyone has any other thoughts or is able to test on a real machine to see if this program does as it should?