#define keySysReq       0x54
#define keyCapsLock     0x3A
#define keyNumLock      0x45
#define keyScrollLock   0x46
#define keyLeftCtrl     0x1D
#define keyLeftAlt      0x38
#define keyLeftShift    0x2A
#define keyRightCtrl    0x9D
#define keyAltGr        0xB8
#define keyRightShift   0x36
#define keyEsc          0x01
#define keyBackspace    0x0E
#define keyEnter        0x1C
#define keySpace        0x39
#define keyTab          0x0F
#define keyF1           0x3B
#define keyF2           0x3C
#define keyF3           0x3D
#define keyF4           0x3E
#define keyF5           0x3F
#define keyF6           0x40
#define keyF7           0x41
#define keyF8           0x42
#define keyF9           0x43
#define keyF10          0x44
#define keyF11          0x57
#define keyF12          0x58
#define keyA            0x1E
#define keyB            0x30
#define keyC            0x2E
#define keyD            0x20
#define keyE            0x12
#define keyF            0x21
#define keyG            0x22
#define keyH            0x23
#define keyJ            0x24
#define keyK            0x25
#define keyL            0x26
#define keyM            0x32
#define keyN            0x31
#define keyO            0x18
#define keyP            0x19
#define keyQ            0x10
#define keyR            0x13
#define keyS            0x1F
#define keyT            0x14
#define keyU            0x16
#define keyV            0x2F
#define keyW            0x11
#define keyX            0x2D
#define keyY            0x15
#define keyZ            0x2C
#define key1            0x02
#define key2            0x03
#define key3            0x04
#define key4            0x05
#define key5            0x06
#define key6            0x07
#define key7            0x08
#define key8            0x09
#define key9            0x0A
#define key0            0x0B
#define keyMinus        0x0C
#define keyEqual        0x0D
#define keyLBracket     0x1A
#define keyRBracket     0x1B
#define keySemicolon    0x27
#define keyTick         0x28
#define keyApostrophe   0x29
#define keyBackslash    0x2B
#define keyComma        0x33
#define keyPeriod       0x34
#define keySlash        0x35
#define keyInsert       0xD2
#define keyDelete       0xD3
#define keyHome         0xC7
#define keyEnd          0xCF
#define keyPageUp       0xC9
#define keyArrowLeft    0xCB
#define keyArrowRight   0xCD
#define keyArrowUp      0xC8
#define keyArrowDown    0xD0
#define keyKeypad0      0x52
#define keyKeypad1      0x4F
#define keyKeypad2      0x50
#define keyKeypad3      0x51
#define keyKeypad4      0x4B
#define keyKeypad5      0x4C
#define keyKeypad6      0x4D
#define keyKeypad7      0x47
#define keyKeypad8      0x48
#define keyKeypad9      0x49
#define keyKeypadComma  0x53
#define keyKeypadStar   0x37
#define keyKeypadMinus  0x4A
#define keyKeypadPlus   0x4E
#define keyKeypadEnter  0x9C
#define keyCtrlPrtScr   0xB7
#define keyShiftPrtScr  0xB7
#define keyKeypadSlash  0xB5

extern char *keyNames[256];

void InstallKbdHandler( void );
void RemoveKbdHandler( void );
int KeyDown( int key );
int AnyKeyDown( void );
int GetKeyDown( void );
void ClearKeys( void );
