]> git.donarmstrong.com Git - kiibohd-controller.git/blob - Keymap/epsonqx10.h
Adding the CLI commands to the USB output module.
[kiibohd-controller.git] / Keymap / epsonqx10.h
1 /* Copyright (C) 2011 by Jacob Alexander
2  * 
3  * Permission is hereby granted, free of charge, to any person obtaining a copy
4  * of this software and associated documentation files (the "Software"), to deal
5  * in the Software without restriction, including without limitation the rights
6  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7  * copies of the Software, and to permit persons to whom the Software is
8  * furnished to do so, subject to the following conditions:
9  * 
10  * The above copyright notice and this permission notice shall be included in
11  * all copies or substantial portions of the Software.
12  * 
13  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19  * THE SOFTWARE.
20  */
21
22 #ifndef __EPSONQX10_H
23 #define __EPSONQX10_H
24
25 // This file contains various key layouts for the Epson QX-10 Series of keyboards
26 // NOTE: Modifiers can't be remapped to non-modifer keys due to how the signals are interpretted
27 //       Remapping between modifier keys is perfectly fine (or even a modifier to a normal key)
28
29
30
31 // ----- Variables -----
32 static uint8_t epsonqx10_ModifierMask[] = { 0x81, 0x83, 0x85, 0x87, 0x89, 0x8B, 0x8D, 0x8F };
33
34 static uint8_t epsonqx10_DefaultMap[] = { 
35                                 0x00, // 0x00
36                                 KEY_F4, // 0x01
37                                 0, // 0x02
38                                 KEY_F5, // 0x03
39                                 KEY_F6, // 0x04
40                                 KEY_F7, // 0x05
41                                 KEY_F8, // 0x06
42                                 KEY_F9, // 0x07
43                                 0, // 0x08
44                                 KEY_F10, // 0x09
45                                 KEY_F11, // 0x0A
46                                 KEY_F12, // 0x0B
47                                 KEY_F13, // 0x0C
48                                 0, // 0x0D
49                                 KEY_F14, // 0x0E
50                                 KEY_F15, // 0x0F
51                                 0, // 0x10
52                                 0, // 0x11
53                                 0, // 0x12
54                                 0, // 0x13
55                                 0, // 0x14
56                                 KEYPAD_ENTER, // 0x15
57                                 KEYPAD_PERIOD, // 0x16
58                                 KEYPAD_0, // 0x17
59                                 KEYPAD_EQUAL, // 0x18
60                                 KEYPAD_6, // 0x19
61                                 KEYPAD_5, // 0x1A
62                                 KEYPAD_4, // 0x1B
63                                 0, // 0x1C
64                                 0, // 0x1D
65                                 KEY_F17, // 0x1E
66                                 KEY_F16, // 0x1F
67                                 0, // 0x20
68                                 0, // 0x21
69                                 0, // 0x22
70                                 0, // 0x23
71                                 0, // 0x24
72                                 KEYPAD_3, // 0x25
73                                 KEYPAD_2, // 0x26
74                                 KEYPAD_1, // 0x27
75                                 KEYPAD_PLUS, // 0x28
76                                 KEYPAD_9, // 0x29
77                                 KEYPAD_8, // 0x2A
78                                 KEYPAD_7, // 0x2B
79                                 KEYPAD_MINUS, // 0x2C
80                                 KEYPAD_ASTERIX, // 0x2D
81                                 KEYPAD_SLASH, // 0x2E
82                                 KEY_NUM_LOCK, // 0x2F
83                                 0, // 0x30
84                                 0, // 0x31
85                                 KEY_SPACE, // 0x32
86                                 KEY_Z, // 0x33
87                                 KEY_X, // 0x34
88                                 KEY_C, // 0x35
89                                 KEY_V, // 0x36
90                                 KEY_B, // 0x37
91                                 KEY_N, // 0x38
92                                 KEY_M, // 0x39
93                                 KEY_COMMA, // 0x3A
94                                 KEY_PERIOD, // 0x3B
95                                 KEY_UP, // 0x3C
96                                 KEY_LEFT, // 0x3D
97                                 KEY_RIGHT, // 0x3E
98                                 KEY_DOWN, // 0x3F
99                                 0, // 0x40
100                                 KEY_F19, // 0x41
101                                 KEY_CAPS_LOCK, // 0x42
102                                 KEY_A, // 0x43
103                                 KEY_S, // 0x44
104                                 KEY_D, // 0x45
105                                 KEY_F, // 0x46
106                                 KEY_G, // 0x47
107                                 KEY_H, // 0x48
108                                 KEY_J, // 0x49
109                                 KEY_K, // 0x4A
110                                 KEY_L, // 0x4B
111                                 KEY_SEMICOLON, // 0x4C
112                                 KEY_QUOTE, // 0x4D
113                                 KEY_ENTER, // 0x4E
114                                 KEY_SLASH, // 0x4F
115                                 0, // 0x50
116                                 KEY_Q, // 0x51
117                                 KEY_W, // 0x52
118                                 KEY_E, // 0x53
119                                 KEY_R, // 0x54
120                                 KEY_T, // 0x55
121                                 KEY_Y, // 0x56
122                                 KEY_U, // 0x57
123                                 KEY_I, // 0x58
124                                 KEY_O, // 0x59
125                                 KEY_P, // 0x5A
126                                 KEY_LEFT_BRACE, // 0x5B
127                                 KEY_RIGHT_BRACE, // 0x5C
128                                 KEY_BACKSLASH, // 0x5D
129                                 KEY_INSERT, // 0x5E
130                                 KEY_PAGE_DOWN, // 0x5F
131                                 0, // 0x60
132                                 KEY_2, // 0x61
133                                 KEY_3, // 0x62
134                                 KEY_4, // 0x63
135                                 KEY_5, // 0x64
136                                 KEY_6, // 0x65
137                                 KEY_7, // 0x66
138                                 KEY_8, // 0x67
139                                 KEY_9, // 0x68
140                                 KEY_0, // 0x69
141                                 KEY_MINUS, // 0x6A
142                                 KEY_EQUAL, // 0x6B
143                                 KEY_TILDE, // 0x6C
144                                 KEY_BACKSPACE, // 0x6D
145                                 KEY_DELETE, // 0x6E
146                                 KEY_PAGE_UP, // 0x6F
147                                 0, // 0x70
148                                 KEY_F3, // 0x71
149                                 KEY_F2, // 0x72
150                                 KEY_F1, // 0x73
151                                 KEY_F18, // 0x74
152                                 KEY_ESC, // 0x75
153                                 KEY_1, // 0x76
154                                 KEY_TAB, // 0x77
155                                 KEY_F19, // 0x78
156                                 0, // 0x79
157                                 0, // 0x7A
158                                 0, // 0x7B
159                                 0, // 0x7C
160                                 0, // 0x7D
161                                 0, // 0x7E
162                                 0, // 0x7F
163                                 0, // 0x80
164                                 0, // 0x81
165                                 0, // 0x82
166                                 0, // 0x83
167                                 0, // 0x84
168                                 KEY_RIGHT_SHIFT, // 0x85
169                                 0, // 0x86
170                                 KEY_LEFT_SHIFT, // 0x87
171                                 0, // 0x88
172                                 0, // 0x89
173                                 0, // 0x8A
174                                 KEY_LEFT_CTRL, // 0x8B
175                                 0, // 0x8C
176                                 KEY_GUI, // 0x8D
177                                 0, // 0x8E
178                                 KEY_RIGHT_CTRL, // 0x8F
179 };
180
181 static uint8_t epsonqx10_ColemakMap[] = {
182                                 0x00, // 0x00
183                                 KEY_F4, // 0x01
184                                 0, // 0x02
185                                 KEY_F5, // 0x03
186                                 KEY_F6, // 0x04
187                                 KEY_F7, // 0x05
188                                 KEY_F8, // 0x06
189                                 KEY_F9, // 0x07
190                                 0, // 0x08
191                                 KEY_F10, // 0x09
192                                 KEY_F11, // 0x0A
193                                 KEY_F12, // 0x0B
194                                 KEY_F13, // 0x0C
195                                 0, // 0x0D
196                                 KEY_F14, // 0x0E
197                                 KEY_F15, // 0x0F
198                                 0, // 0x10
199                                 0, // 0x11
200                                 0, // 0x12
201                                 0, // 0x13
202                                 0, // 0x14
203                                 KEYPAD_ENTER, // 0x15
204                                 KEYPAD_PERIOD, // 0x16
205                                 KEYPAD_0, // 0x17
206                                 KEYPAD_EQUAL, // 0x18
207                                 KEYPAD_6, // 0x19
208                                 KEYPAD_5, // 0x1A
209                                 KEYPAD_4, // 0x1B
210                                 0, // 0x1C
211                                 0, // 0x1D
212                                 KEY_F17, // 0x1E
213                                 KEY_F16, // 0x1F
214                                 0, // 0x20
215                                 0, // 0x21
216                                 0, // 0x22
217                                 0, // 0x23
218                                 0, // 0x24
219                                 KEYPAD_3, // 0x25
220                                 KEYPAD_2, // 0x26
221                                 KEYPAD_1, // 0x27
222                                 KEYPAD_PLUS, // 0x28
223                                 KEYPAD_9, // 0x29
224                                 KEYPAD_8, // 0x2A
225                                 KEYPAD_7, // 0x2B
226                                 KEYPAD_MINUS, // 0x2C
227                                 KEYPAD_ASTERIX, // 0x2D
228                                 KEYPAD_SLASH, // 0x2E
229                                 KEY_NUM_LOCK, // 0x2F
230                                 0, // 0x30
231                                 0, // 0x31
232                                 KEY_SPACE, // 0x32
233                                 KEY_Z, // 0x33
234                                 KEY_X, // 0x34
235                                 KEY_C, // 0x35
236                                 KEY_V, // 0x36
237                                 KEY_B, // 0x37
238                                 KEY_K, // 0x38
239                                 KEY_M, // 0x39
240                                 KEY_COMMA, // 0x3A
241                                 KEY_PERIOD, // 0x3B
242                                 KEY_UP, // 0x3C
243                                 KEY_LEFT, // 0x3D
244                                 KEY_RIGHT, // 0x3E
245                                 KEY_DOWN, // 0x3F
246                                 0, // 0x40
247                                 KEY_F19, // 0x41
248                                 KEY_CAPS_LOCK, // 0x42
249                                 KEY_A, // 0x43
250                                 KEY_R, // 0x44
251                                 KEY_S, // 0x45
252                                 KEY_T, // 0x46
253                                 KEY_D, // 0x47
254                                 KEY_H, // 0x48
255                                 KEY_N, // 0x49
256                                 KEY_E, // 0x4A
257                                 KEY_I, // 0x4B
258                                 KEY_O, // 0x4C
259                                 KEY_QUOTE, // 0x4D
260                                 KEY_ENTER, // 0x4E
261                                 KEY_SLASH, // 0x4F
262                                 0, // 0x50
263                                 KEY_Q, // 0x51
264                                 KEY_W, // 0x52
265                                 KEY_F, // 0x53
266                                 KEY_P, // 0x54
267                                 KEY_G, // 0x55
268                                 KEY_J, // 0x56
269                                 KEY_L, // 0x57
270                                 KEY_U, // 0x58
271                                 KEY_Y, // 0x59
272                                 KEY_SEMICOLON, // 0x5A
273                                 KEY_LEFT_BRACE, // 0x5B
274                                 KEY_RIGHT_BRACE, // 0x5C
275                                 KEY_BACKSLASH, // 0x5D
276                                 KEY_INSERT, // 0x5E
277                                 KEY_PAGE_DOWN, // 0x5F
278                                 0, // 0x60
279                                 KEY_2, // 0x61
280                                 KEY_3, // 0x62
281                                 KEY_4, // 0x63
282                                 KEY_5, // 0x64
283                                 KEY_6, // 0x65
284                                 KEY_7, // 0x66
285                                 KEY_8, // 0x67
286                                 KEY_9, // 0x68
287                                 KEY_0, // 0x69
288                                 KEY_MINUS, // 0x6A
289                                 KEY_EQUAL, // 0x6B
290                                 KEY_TILDE, // 0x6C
291                                 KEY_BACKSPACE, // 0x6D
292                                 KEY_DELETE, // 0x6E
293                                 KEY_PAGE_UP, // 0x6F
294                                 0, // 0x70
295                                 KEY_F3, // 0x71
296                                 KEY_F2, // 0x72
297                                 KEY_F1, // 0x73
298                                 KEY_F18, // 0x74
299                                 KEY_ESC, // 0x75
300                                 KEY_1, // 0x76
301                                 KEY_TAB, // 0x77
302                                 KEY_F19, // 0x78
303                                 0, // 0x79
304                                 0, // 0x7A
305                                 0, // 0x7B
306                                 0, // 0x7C
307                                 0, // 0x7D
308                                 0, // 0x7E
309                                 0, // 0x7F
310                                 0, // 0x80
311                                 0, // 0x81
312                                 0, // 0x82
313                                 0, // 0x83
314                                 0, // 0x84
315                                 KEY_RIGHT_SHIFT, // 0x85
316                                 0, // 0x86
317                                 KEY_LEFT_SHIFT, // 0x87
318                                 0, // 0x88
319                                 0, // 0x89
320                                 0, // 0x8A
321                                 KEY_LEFT_CTRL, // 0x8B
322                                 0, // 0x8C
323                                 KEY_GUI, // 0x8D
324                                 0, // 0x8E
325                                 KEY_ALT, // 0x8F
326 };
327
328
329
330 #endif
331