Push scancodes on to the BIOS keyboard queue even if they're not ASCII.


svn path=/branches/ntvdm/; revision=60764
This commit is contained in:
Aleksandar Andrejevic 2013-10-27 01:33:15 +00:00
parent f5d3c9254c
commit 8800ea89d1

View file

@ -1115,11 +1115,15 @@ VOID BiosHandleIrq(BYTE IrqNumber, LPWORD Stack)
BiosKeyboardMap[VirtualKey] |= (1 << 7); BiosKeyboardMap[VirtualKey] |= (1 << 7);
/* Find out which character this is */ /* Find out which character this is */
if (ToAscii(VirtualKey, ScanCode, BiosKeyboardMap, &Character, 0) > 0) if (ToAscii(VirtualKey, ScanCode, BiosKeyboardMap, &Character, 0) == 0)
{ {
/* Push it onto the BIOS keyboard queue */ /* Not ASCII */
BiosKbdBufferPush((ScanCode << 8) | (Character & 0xFF)); Character = 0;
} }
/* Push it onto the BIOS keyboard queue */
BiosKbdBufferPush((ScanCode << 8) | (Character & 0xFF));
} }
else else
{ {