1 
2 #define  sc_None         0
3 #define  sc_Bad          0xff
4 #define  sc_Comma        0x33
5 #define  sc_Period       0x34
6 #define  sc_Return       0x1c
7 #define  sc_Enter        sc_Return
8 #define  sc_Escape       0x01
9 #define  sc_Space        0x39
10 #define  sc_BackSpace    0x0e
11 #define  sc_Tab          0x0f
12 #define  sc_LeftAlt      0x38
13 #define  sc_LeftControl  0x1d
14 #define  sc_CapsLock     0x3a
15 #define  sc_LeftShift    0x2a
16 #define  sc_RightShift   0x36
17 #define  sc_F1           0x3b
18 #define  sc_F2           0x3c
19 #define  sc_F3           0x3d
20 #define  sc_F4           0x3e
21 #define  sc_F5           0x3f
22 #define  sc_F6           0x40
23 #define  sc_F7           0x41
24 #define  sc_F8           0x42
25 #define  sc_F9           0x43
26 #define  sc_F10          0x44
27 #define  sc_F11          0x57
28 #define  sc_F12          0x58
29 #define  sc_Kpad_Star    0x37
30 #define  sc_Pause        0x59
31 #define  sc_ScrollLock   0x46
32 #define  sc_NumLock      0x45
33 #define  sc_Slash        0x35
34 #define  sc_SemiColon    0x27
35 #define  sc_Quote        0x28
36 #define  sc_Tilde        0x29
37 #define  sc_BackSlash    0x2b
38 
39 #define  sc_OpenBracket  0x1a
40 #define  sc_CloseBracket 0x1b
41 
42 #define  sc_1            0x02
43 #define  sc_2            0x03
44 #define  sc_3            0x04
45 #define  sc_4            0x05
46 #define  sc_5            0x06
47 #define  sc_6            0x07
48 #define  sc_7            0x08
49 #define  sc_8            0x09
50 #define  sc_9            0x0a
51 #define  sc_0            0x0b
52 #define  sc_Minus        0x0c
53 #define  sc_Equals       0x0d
54 #define  sc_Plus         0x0d
55 
56 #define  sc_kpad_1       0x4f
57 #define  sc_kpad_2       0x50
58 #define  sc_kpad_3       0x51
59 #define  sc_kpad_4       0x4b
60 #define  sc_kpad_5       0x4c
61 #define  sc_kpad_6       0x4d
62 #define  sc_kpad_7       0x47
63 #define  sc_kpad_8       0x48
64 #define  sc_kpad_9       0x49
65 #define  sc_kpad_0       0x52
66 #define  sc_kpad_Minus   0x4a
67 #define  sc_kpad_Plus    0x4e
68 #define  sc_kpad_Period  0x53
69 
70 #define  sc_A            0x1e
71 #define  sc_B            0x30
72 #define  sc_C            0x2e
73 #define  sc_D            0x20
74 #define  sc_E            0x12
75 #define  sc_F            0x21
76 #define  sc_G            0x22
77 #define  sc_H            0x23
78 #define  sc_I            0x17
79 #define  sc_J            0x24
80 #define  sc_K            0x25
81 #define  sc_L            0x26
82 #define  sc_M            0x32
83 #define  sc_N            0x31
84 #define  sc_O            0x18
85 #define  sc_P            0x19
86 #define  sc_Q            0x10
87 #define  sc_R            0x13
88 #define  sc_S            0x1f
89 #define  sc_T            0x14
90 #define  sc_U            0x16
91 #define  sc_V            0x2f
92 #define  sc_W            0x11
93 #define  sc_X            0x2d
94 #define  sc_Y            0x15
95 #define  sc_Z            0x2c
96 
97 // Extended scan codes
98 
99 #define  sc_UpArrow      0xc8 //0x5a
100 #define  sc_DownArrow    0xd0 //0x6a
101 #define  sc_LeftArrow    0xcb //0x6b
102 #define  sc_RightArrow   0xcd //0x6c
103 #define  sc_Insert       0xd2 //0x5e
104 #define  sc_Delete       0xd3 //0x5f
105 #define  sc_Home         0xc7 //0x61
106 #define  sc_End          0xcf //0x62
107 #define  sc_PgUp         0xc9 //0x63
108 #define  sc_PgDn         0xd1 //0x64
109 #define  sc_RightAlt     0xb8 //0x65
110 #define  sc_RightControl 0x9d //0x66
111 #define  sc_kpad_Slash   0xb5 //0x67
112 #define  sc_kpad_Enter   0x9c //0x68
113 #define  sc_PrintScreen  0xb7 //0x69
114 #define  sc_LeftWin      0xdb
115 #define  sc_RightWin     0xdc
116 //#define  sc_LastScanCode 0x6e
117 
118 // Ascii scan codes
119 
120 #define asc_Enter 13
121 #define asc_Escape 27
122 #define asc_Ctrl_A 1
123 #define asc_Ctrl_B 2
124 #define asc_Ctrl_C 3
125 #define asc_Ctrl_E 5
126 #define asc_Ctrl_F 6
127 #define asc_BackSpace 8
128 #define asc_Tab 9
129 #define asc_Ctrl_K 11
130 #define asc_Ctrl_L 12
131 #define asc_Ctrl_N 14
132 #define asc_Ctrl_P 16
133 #define asc_Ctrl_U 21
134 #define asc_Ctrl_W 23
135 #define asc_Space 32
136