Ignore release flag when comparing key event.
This commit is contained in:
parent
9dec116bc0
commit
d553289e7e
7
m0110.c
7
m0110.c
@ -304,17 +304,16 @@ uint8_t m0110_recv_key(void)
|
||||
return key;
|
||||
}
|
||||
key = instant(); // Use INSTANT for better response. Should be INQUIRY ?
|
||||
switch (key) {
|
||||
switch (key & 0x7F) {
|
||||
case M0110_KEYPAD:
|
||||
// Pad/Arrow keys
|
||||
return (M0110_RAW2SCAN(instant()) | M0110_KEYPAD_OFFSET);
|
||||
break;
|
||||
case M0110_SHIFT_MAKE:
|
||||
case M0110_SHIFT_BREAK:
|
||||
case M0110_SHIFT:
|
||||
key2 = instant();
|
||||
if (key2 == M0110_KEYPAD) {
|
||||
key3 = instant();
|
||||
switch (key3) {
|
||||
switch (key3 & 0x7F) {
|
||||
case M0110_ARROW_UP:
|
||||
case M0110_ARROW_DOWN:
|
||||
case M0110_ARROW_LEFT:
|
||||
|
3
m0110.h
3
m0110.h
@ -65,8 +65,7 @@ POSSIBILITY OF SUCH DAMAGE.
|
||||
#define M0110_KEYPAD 0x79
|
||||
#define M0110_TEST_ACK 0x7D
|
||||
#define M0110_TEST_NAK 0x77
|
||||
#define M0110_SHIFT_MAKE 0x71
|
||||
#define M0110_SHIFT_BREAK 0xF1
|
||||
#define M0110_SHIFT 0x71
|
||||
#define M0110_ARROW_UP 0x1B
|
||||
#define M0110_ARROW_DOWN 0x11
|
||||
#define M0110_ARROW_LEFT 0x0D
|
||||
|
Reference in New Issue
Block a user