XenevaOS
Loading...
Searching...
No Matches
keycode.h
Go to the documentation of this file.
1
30#ifndef __KEYCODE_H__
31#define __KEYCODE_H__
32
33#include <_xeneva.h>
34
35#ifdef __cplusplus
37#endif
38
39 enum KEYCODE {
40
41 KEY_SPACE = ' ',
42 KEY_0 = '0',
43 KEY_1 = '1',
44 KEY_2 = '2',
45 KEY_3 = '3',
46 KEY_4 = '4',
47 KEY_5 = '5',
48 KEY_6 = '6',
49 KEY_7 = '7',
50 KEY_8 = '8',
51 KEY_9 = '9',
52
53 KEY_A = 'a',
54 KEY_B = 'b',
55 KEY_C = 'c',
56 KEY_D = 'd',
57 KEY_E = 'e',
58 KEY_F = 'f',
59 KEY_G = 'g',
60 KEY_H = 'h',
61 KEY_I = 'i',
62 KEY_J = 'j',
63 KEY_K = 'k',
64 KEY_L = 'l',
65 KEY_M = 'm',
66 KEY_N = 'n',
67 KEY_O = 'o',
68 KEY_P = 'p',
69 KEY_Q = 'q',
70 KEY_R = 'r',
71 KEY_S = 's',
72 KEY_T = 't',
73 KEY_U = 'u',
74 KEY_V = 'v',
75 KEY_W = 'w',
76 KEY_X = 'x',
77 KEY_Y = 'y',
78 KEY_Z = 'z',
79
80 KEY_RETURN = '\n', //Enter key in general term
81 KEY_ESCAPE = 0x1001,
83
84 // Arrow keys ////////////////////////
85
86 KEY_UP = 0x1100,
87 KEY_DOWN = 0x1101,
88 KEY_LEFT = 0x1102,
89 KEY_RIGHT = 0x1103,
90
91 // Function keys /////////////////////
92
93 KEY_F1 = 0x1201,
94 KEY_F2 = 0x1202,
95 KEY_F3 = 0x1203,
96 KEY_F4 = 0x1204,
97 KEY_F5 = 0x1205,
98 KEY_F6 = 0x1206,
99 KEY_F7 = 0x1207,
100 KEY_F8 = 0x1208,
101 KEY_F9 = 0x1209,
102 KEY_F10 = 0x120a,
103 KEY_F11 = 0x120b,
104 KEY_F12 = 0x120b,
105 KEY_F13 = 0x120c,
106 KEY_F14 = 0x120d,
107 KEY_F15 = 0x120e,
108
109 KEY_DOT = '.',
115 KEY_PLUS = '+',
121 KEY_QUOTE = '\'',
123 KEY_HASH = '#',
134 KEY_POUND = '£',
135 KEY_EURO = '$',
136 KEY_LESS = '<',
138 KEY_BAR = '|',
141 KEY_AT = '@',
143
144 // Numeric keypad //////////////////////
145
146 KEY_KP_0 = '0',
147 KEY_KP_1 = '1',
148 KEY_KP_2 = '2',
149 KEY_KP_3 = '3',
150 KEY_KP_4 = '4',
151 KEY_KP_5 = '5',
152 KEY_KP_6 = '6',
153 KEY_KP_7 = '7',
154 KEY_KP_8 = '8',
155 KEY_KP_9 = '9',
162 KEY_KP_ENTER = 0x3010,
163
164 KEY_TAB = 0x4000,
165 KEY_CAPSLOCK = 0x4001,
166
167 // Modify keys ////////////////////////////
168
169 KEY_LSHIFT = 0x4002,
170 KEY_LCTRL = 0x4003,
171 KEY_LALT = 0x4004,
172 KEY_LWIN = 0x4005,
173 KEY_RSHIFT = 0x4006,
174 KEY_RCTRL = 0x4007,
175 KEY_RALT = 0x4008,
176 KEY_RWIN = 0x4009,
177
178 KEY_INSERT = 0x400a,
179 KEY_DELETE = 0x400b,
180 KEY_HOME = 0x400c,
181 KEY_END = 0x400d,
182 KEY_PAGEUP = 0x400e,
183 KEY_PAGEDOWN = 0x400f,
185 KEY_PAUSE = 0x4011,
186
189 };
190
199
200 /* ChitralekhaKeyInitialise -- initialise keycode
201 * library
202 */
203 extern void ChitralekhaKeyInitialise();
204 /*
205 * ChitralekhaProcessKey -- looks for special keys to process
206 * @param code -- scancode
207 */
208 XE_LIB void ChitralekhaProcessKey(int code);
209 /*
210 * ChitralekhaKeyToASCII -- converts a keycode to
211 * ascii value
212 * @param code -- code to convert
213 */
214 XE_LIB char ChitralekhaKeyToASCII(int code);
215
216 /* ChitralekhaGetKeyPress -- Get pressed key information
217 * @param code -- code to convert
218 */
219 XE_LIB char ChitralekhaGetKeyPress(int code);
220
221 /*
222 *ChitralekhaKeyGetCTRL -- return ctrl bit
223 */
225
226 /*
227 * ChitralekhaKeyGetAlt -- return alt bit
228 */
230
231 /*
232 * ChitralekhaKeyGetShift -- returns shift
233 * bit
234 */
236
237 /*
238 * ChitralekhaKeySetCtrl -- forcefully modify the ctrl bit
239 * @param bit -- bit to set 0,1
240 */
241 XE_LIB void ChitralekhaKeySetCtrl(bool bit);
242
243 /*
244 * ChitralekhaKeySetAlt - forcefully modify the alt bit
245 * @param bit -- bit to set 0,1
246 */
247 XE_LIB void ChitralekhaKeySetAlt(bool bit);
248
249 /*
250 * ChitralekhaKeySetShift -- forcefully modify the shift
251 * bit
252 * @param bit -- bit to set 0,1
253 */
254 XE_LIB void ChitralekhaKeySetShift(bool bit);
255
260 XE_LIB void ChitralekhaKeySetCapslock(bool bit);
261
266
267#ifdef __cplusplus
268}
269#endif
270
271#endif
#define XE_LIB
Definition _xeneva.h:55
#define XE_EXTERN
Definition _xeneva.h:50
void ChitralekhaKeyInitialise()
ChitralekhaKeyInitialise – initialise keycode library, this is automatically called during starting o...
Definition keycode.cpp:138
XE_LIB void ChitralekhaProcessKey(int code)
Definition keycode.cpp:147
XE_LIB void ChitralekhaKeySetAlt(bool bit)
Definition keycode.cpp:368
@ KEY_KP_0
Definition keycode.h:146
@ KEY_EURO
Definition keycode.h:135
@ KEY_F4
Definition keycode.h:96
@ KEY_SPACE
Definition keycode.h:41
@ KEY_EXCLAMATION
Definition keycode.h:118
@ KEY_UP
Definition keycode.h:86
@ KEY_P
Definition keycode.h:68
@ KEY_M
Definition keycode.h:65
@ KEY_B
Definition keycode.h:54
@ KEY_CARRET
Definition keycode.h:142
@ KEY_F9
Definition keycode.h:101
@ KEY_LEFTPARENTHESIS
Definition keycode.h:127
@ KEY_PLUS
Definition keycode.h:115
@ KEY_SCROLLLOCK
Definition keycode.h:184
@ KEY_2
Definition keycode.h:44
@ KEY_F6
Definition keycode.h:98
@ KEY_INSERT
Definition keycode.h:178
@ KEY_KP_5
Definition keycode.h:151
@ KEY_GREATER
Definition keycode.h:137
@ KEY_KP_DIVIDE
Definition keycode.h:159
@ KEY_F13
Definition keycode.h:105
@ KEY_SEMICOLON
Definition keycode.h:112
@ KEY_E
Definition keycode.h:57
@ KEY_KP_7
Definition keycode.h:153
@ KEY_I
Definition keycode.h:61
@ KEY_W
Definition keycode.h:75
@ KEY_D
Definition keycode.h:56
@ KEY_6
Definition keycode.h:48
@ KEY_AMPERSAND
Definition keycode.h:125
@ KEY_F7
Definition keycode.h:99
@ KEY_LALT
Definition keycode.h:171
@ KEY_1
Definition keycode.h:43
@ KEY_GRAVE
Definition keycode.h:139
@ KEY_ESCAPE
Definition keycode.h:81
@ KEY_F10
Definition keycode.h:102
@ KEY_F
Definition keycode.h:58
@ KEY_HASH
Definition keycode.h:123
@ KEY_H
Definition keycode.h:60
@ KEY_RIGHTCURL
Definition keycode.h:132
@ KEY_X
Definition keycode.h:76
@ KEY_KP_4
Definition keycode.h:150
@ KEY_KP_NUMLOCK
Definition keycode.h:161
@ KEY_G
Definition keycode.h:59
@ KEY_TILDE
Definition keycode.h:140
@ KEY_SLASH
Definition keycode.h:113
@ KEY_F15
Definition keycode.h:107
@ KEY_PAGEDOWN
Definition keycode.h:183
@ KEY_PERCENT
Definition keycode.h:124
@ KEY_KP_1
Definition keycode.h:147
@ KEY_Y
Definition keycode.h:77
@ KEY_PAGEUP
Definition keycode.h:182
@ KEY_MINUS
Definition keycode.h:116
@ KEY_9
Definition keycode.h:51
@ KEY_TAB
Definition keycode.h:164
@ KEY_LEFT
Definition keycode.h:88
@ KEY_T
Definition keycode.h:72
@ KEY_RIGHT
Definition keycode.h:89
@ KEY_LEFTBRACKET
Definition keycode.h:129
@ KEY_F5
Definition keycode.h:97
@ KEY_LCTRL
Definition keycode.h:170
@ KEY_K
Definition keycode.h:63
@ KEY_0
Definition keycode.h:42
@ KEY_BAR
Definition keycode.h:138
@ KEY_AT
Definition keycode.h:141
@ KEY_RIGHTPARENTHESIS
Definition keycode.h:128
@ KEY_KP_DECIMAL
Definition keycode.h:158
@ KEY_F14
Definition keycode.h:106
@ KEY_KP_ENTER
Definition keycode.h:162
@ KEY_DOLLAR
Definition keycode.h:133
@ KEY_F12
Definition keycode.h:104
@ KEY_KP_9
Definition keycode.h:155
@ KEY_F2
Definition keycode.h:94
@ KEY_KP_3
Definition keycode.h:149
@ KEY_RALT
Definition keycode.h:175
@ KEY_RWIN
Definition keycode.h:176
@ KEY_F3
Definition keycode.h:95
@ KEY_KP_PLUS
Definition keycode.h:156
@ KEY_KP_MINUS
Definition keycode.h:157
@ KEY_C
Definition keycode.h:55
@ KEY_KP_ASTERISK
Definition keycode.h:160
@ KEY_F8
Definition keycode.h:100
@ KEY_BACKSPACE
Definition keycode.h:82
@ KEY_R
Definition keycode.h:70
@ KEY_N
Definition keycode.h:66
@ KEY_A
Definition keycode.h:53
@ KEY_END
Definition keycode.h:181
@ KEY_DOWN
Definition keycode.h:87
@ KEY_8
Definition keycode.h:50
@ KEY_Z
Definition keycode.h:78
@ KEY_RETURN
Definition keycode.h:80
@ KEY_DOT
Definition keycode.h:109
@ KEY_S
Definition keycode.h:71
@ KEY_J
Definition keycode.h:62
@ KEY_LSHIFT
Definition keycode.h:169
@ KEY_QUESTION
Definition keycode.h:119
@ KEY_UNDERSCORE
Definition keycode.h:126
@ KEY_LESS
Definition keycode.h:136
@ KEY_Q
Definition keycode.h:69
@ KEY_QUOTEDOUBLE
Definition keycode.h:120
@ KEY_RCTRL
Definition keycode.h:174
@ KEY_EQUAL
Definition keycode.h:122
@ KEY_QUOTE
Definition keycode.h:121
@ KEY_ASTERISK
Definition keycode.h:117
@ KEY_PAUSE
Definition keycode.h:185
@ KEY_LWIN
Definition keycode.h:172
@ KEY_U
Definition keycode.h:73
@ KEY_F11
Definition keycode.h:103
@ KEY_HOME
Definition keycode.h:180
@ KEY_KP_6
Definition keycode.h:152
@ KEY_NUMKEYCODES
Definition keycode.h:188
@ KEY_RSHIFT
Definition keycode.h:173
@ KEY_KP_8
Definition keycode.h:154
@ KEY_RIGHTBRACKET
Definition keycode.h:130
@ KEY_COLON
Definition keycode.h:111
@ KEY_7
Definition keycode.h:49
@ KEY_DELETE
Definition keycode.h:179
@ KEY_O
Definition keycode.h:67
@ KEY_4
Definition keycode.h:46
@ KEY_CAPSLOCK
Definition keycode.h:165
@ KEY_L
Definition keycode.h:64
@ KEY_5
Definition keycode.h:47
@ KEY_3
Definition keycode.h:45
@ KEY_POUND
Definition keycode.h:134
@ KEY_LEFTCURL
Definition keycode.h:131
@ KEY_UNKNOWN
Definition keycode.h:187
@ KEY_BACKSLASH
Definition keycode.h:114
@ KEY_COMMA
Definition keycode.h:110
@ KEY_V
Definition keycode.h:74
@ KEY_KP_2
Definition keycode.h:148
@ KEY_F1
Definition keycode.h:93
XE_LIB bool ChitralekhaKeyGetAlt()
Definition keycode.cpp:344
XE_LIB bool ChitralekhaKeyGetShift()
Definition keycode.cpp:352
XE_LIB char ChitralekhaKeyToASCII(int code)
Definition keycode.cpp:225
XE_LIB void ChitralekhaKeySetCtrl(bool bit)
Definition keycode.cpp:360
XE_LIB void ChitralekhaKeySetShift(bool bit)
Definition keycode.cpp:377
XE_LIB bool ChitralekhaKeyGetCapslock()
ChitralekhaKeyGetCapslock – get capslock bit.
Definition keycode.cpp:392
XE_LIB bool ChitralekhaKeyGetCTRL()
Definition keycode.cpp:337
XE_LIB void ChitralekhaKeySetCapslock(bool bit)
ChitralekhaKeySetCapslock – set capslock bit forcefully.
Definition keycode.cpp:385
struct _chitralekha_key_ ChitralekhaKey
XE_LIB char ChitralekhaGetKeyPress(int code)
Definition keycode.cpp:203
KEYCODE
Definition ps2kybrd.h:35
Definition keycode.h:191
bool _scrolllock
Definition keycode.h:193
bool _alt
Definition keycode.h:196
bool _ctrl
Definition keycode.h:197
bool _shift
Definition keycode.h:195
bool _capslock
Definition keycode.h:194
bool _numlock
Definition keycode.h:192