WIP FPC-III support
[linux/fpc-iii.git] / drivers / tty / vt / defkeymap.c_shipped
blobc7095fb7d2d15ad49f0c62af1a417426a85ba708
1 // SPDX-License-Identifier: GPL-2.0
2 /* Do not edit this file! It was automatically generated by   */
3 /*    loadkeys --mktable defkeymap.map > defkeymap.c          */
5 #include <linux/types.h>
6 #include <linux/keyboard.h>
7 #include <linux/kd.h>
9 u_short plain_map[NR_KEYS] = {
10         0xf200, 0xf01b, 0xf031, 0xf032, 0xf033, 0xf034, 0xf035, 0xf036,
11         0xf037, 0xf038, 0xf039, 0xf030, 0xf02d, 0xf03d, 0xf07f, 0xf009,
12         0xfb71, 0xfb77, 0xfb65, 0xfb72, 0xfb74, 0xfb79, 0xfb75, 0xfb69,
13         0xfb6f, 0xfb70, 0xf05b, 0xf05d, 0xf201, 0xf702, 0xfb61, 0xfb73,
14         0xfb64, 0xfb66, 0xfb67, 0xfb68, 0xfb6a, 0xfb6b, 0xfb6c, 0xf03b,
15         0xf027, 0xf060, 0xf700, 0xf05c, 0xfb7a, 0xfb78, 0xfb63, 0xfb76,
16         0xfb62, 0xfb6e, 0xfb6d, 0xf02c, 0xf02e, 0xf02f, 0xf700, 0xf30c,
17         0xf703, 0xf020, 0xf207, 0xf100, 0xf101, 0xf102, 0xf103, 0xf104,
18         0xf105, 0xf106, 0xf107, 0xf108, 0xf109, 0xf208, 0xf209, 0xf307,
19         0xf308, 0xf309, 0xf30b, 0xf304, 0xf305, 0xf306, 0xf30a, 0xf301,
20         0xf302, 0xf303, 0xf300, 0xf310, 0xf206, 0xf200, 0xf03c, 0xf10a,
21         0xf10b, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
22         0xf30e, 0xf702, 0xf30d, 0xf01c, 0xf701, 0xf205, 0xf114, 0xf603,
23         0xf118, 0xf601, 0xf602, 0xf117, 0xf600, 0xf119, 0xf115, 0xf116,
24         0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
25         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
28 u_short shift_map[NR_KEYS] = {
29         0xf200, 0xf01b, 0xf021, 0xf040, 0xf023, 0xf024, 0xf025, 0xf05e,
30         0xf026, 0xf02a, 0xf028, 0xf029, 0xf05f, 0xf02b, 0xf07f, 0xf009,
31         0xfb51, 0xfb57, 0xfb45, 0xfb52, 0xfb54, 0xfb59, 0xfb55, 0xfb49,
32         0xfb4f, 0xfb50, 0xf07b, 0xf07d, 0xf201, 0xf702, 0xfb41, 0xfb53,
33         0xfb44, 0xfb46, 0xfb47, 0xfb48, 0xfb4a, 0xfb4b, 0xfb4c, 0xf03a,
34         0xf022, 0xf07e, 0xf700, 0xf07c, 0xfb5a, 0xfb58, 0xfb43, 0xfb56,
35         0xfb42, 0xfb4e, 0xfb4d, 0xf03c, 0xf03e, 0xf03f, 0xf700, 0xf30c,
36         0xf703, 0xf020, 0xf207, 0xf10a, 0xf10b, 0xf10c, 0xf10d, 0xf10e,
37         0xf10f, 0xf110, 0xf111, 0xf112, 0xf113, 0xf213, 0xf203, 0xf307,
38         0xf308, 0xf309, 0xf30b, 0xf304, 0xf305, 0xf306, 0xf30a, 0xf301,
39         0xf302, 0xf303, 0xf300, 0xf310, 0xf206, 0xf200, 0xf03e, 0xf10a,
40         0xf10b, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
41         0xf30e, 0xf702, 0xf30d, 0xf200, 0xf701, 0xf205, 0xf114, 0xf603,
42         0xf20b, 0xf601, 0xf602, 0xf117, 0xf600, 0xf20a, 0xf115, 0xf116,
43         0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
44         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
47 u_short altgr_map[NR_KEYS] = {
48         0xf200, 0xf200, 0xf200, 0xf040, 0xf200, 0xf024, 0xf200, 0xf200,
49         0xf07b, 0xf05b, 0xf05d, 0xf07d, 0xf05c, 0xf200, 0xf200, 0xf200,
50         0xfb71, 0xfb77, 0xf918, 0xfb72, 0xfb74, 0xfb79, 0xfb75, 0xfb69,
51         0xfb6f, 0xfb70, 0xf200, 0xf07e, 0xf201, 0xf702, 0xf914, 0xfb73,
52         0xf917, 0xf919, 0xfb67, 0xfb68, 0xfb6a, 0xfb6b, 0xfb6c, 0xf200,
53         0xf200, 0xf200, 0xf700, 0xf200, 0xfb7a, 0xfb78, 0xf916, 0xfb76,
54         0xf915, 0xfb6e, 0xfb6d, 0xf200, 0xf200, 0xf200, 0xf700, 0xf30c,
55         0xf703, 0xf200, 0xf207, 0xf50c, 0xf50d, 0xf50e, 0xf50f, 0xf510,
56         0xf511, 0xf512, 0xf513, 0xf514, 0xf515, 0xf208, 0xf202, 0xf911,
57         0xf912, 0xf913, 0xf30b, 0xf90e, 0xf90f, 0xf910, 0xf30a, 0xf90b,
58         0xf90c, 0xf90d, 0xf90a, 0xf310, 0xf206, 0xf200, 0xf07c, 0xf516,
59         0xf517, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
60         0xf30e, 0xf702, 0xf30d, 0xf200, 0xf701, 0xf205, 0xf114, 0xf603,
61         0xf118, 0xf601, 0xf602, 0xf117, 0xf600, 0xf119, 0xf115, 0xf116,
62         0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
63         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
66 u_short ctrl_map[NR_KEYS] = {
67         0xf200, 0xf200, 0xf200, 0xf000, 0xf01b, 0xf01c, 0xf01d, 0xf01e,
68         0xf01f, 0xf07f, 0xf200, 0xf200, 0xf01f, 0xf200, 0xf008, 0xf200,
69         0xf011, 0xf017, 0xf005, 0xf012, 0xf014, 0xf019, 0xf015, 0xf009,
70         0xf00f, 0xf010, 0xf01b, 0xf01d, 0xf201, 0xf702, 0xf001, 0xf013,
71         0xf004, 0xf006, 0xf007, 0xf008, 0xf00a, 0xf00b, 0xf00c, 0xf200,
72         0xf007, 0xf000, 0xf700, 0xf01c, 0xf01a, 0xf018, 0xf003, 0xf016,
73         0xf002, 0xf00e, 0xf00d, 0xf200, 0xf20e, 0xf07f, 0xf700, 0xf30c,
74         0xf703, 0xf000, 0xf207, 0xf100, 0xf101, 0xf102, 0xf103, 0xf104,
75         0xf105, 0xf106, 0xf107, 0xf108, 0xf109, 0xf208, 0xf204, 0xf307,
76         0xf308, 0xf309, 0xf30b, 0xf304, 0xf305, 0xf306, 0xf30a, 0xf301,
77         0xf302, 0xf303, 0xf300, 0xf310, 0xf206, 0xf200, 0xf200, 0xf10a,
78         0xf10b, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
79         0xf30e, 0xf702, 0xf30d, 0xf01c, 0xf701, 0xf205, 0xf114, 0xf603,
80         0xf118, 0xf601, 0xf602, 0xf117, 0xf600, 0xf119, 0xf115, 0xf116,
81         0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
82         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
85 u_short shift_ctrl_map[NR_KEYS] = {
86         0xf200, 0xf200, 0xf200, 0xf000, 0xf200, 0xf200, 0xf200, 0xf200,
87         0xf200, 0xf200, 0xf200, 0xf200, 0xf01f, 0xf200, 0xf200, 0xf200,
88         0xf011, 0xf017, 0xf005, 0xf012, 0xf014, 0xf019, 0xf015, 0xf009,
89         0xf00f, 0xf010, 0xf200, 0xf200, 0xf201, 0xf702, 0xf001, 0xf013,
90         0xf004, 0xf006, 0xf007, 0xf008, 0xf00a, 0xf00b, 0xf00c, 0xf200,
91         0xf200, 0xf200, 0xf700, 0xf200, 0xf01a, 0xf018, 0xf003, 0xf016,
92         0xf002, 0xf00e, 0xf00d, 0xf200, 0xf200, 0xf200, 0xf700, 0xf30c,
93         0xf703, 0xf200, 0xf207, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
94         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf208, 0xf200, 0xf307,
95         0xf308, 0xf309, 0xf30b, 0xf304, 0xf305, 0xf306, 0xf30a, 0xf301,
96         0xf302, 0xf303, 0xf300, 0xf310, 0xf206, 0xf200, 0xf200, 0xf200,
97         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
98         0xf30e, 0xf702, 0xf30d, 0xf200, 0xf701, 0xf205, 0xf114, 0xf603,
99         0xf118, 0xf601, 0xf602, 0xf117, 0xf600, 0xf119, 0xf115, 0xf116,
100         0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
101         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
104 u_short alt_map[NR_KEYS] = {
105         0xf200, 0xf81b, 0xf831, 0xf832, 0xf833, 0xf834, 0xf835, 0xf836,
106         0xf837, 0xf838, 0xf839, 0xf830, 0xf82d, 0xf83d, 0xf87f, 0xf809,
107         0xf871, 0xf877, 0xf865, 0xf872, 0xf874, 0xf879, 0xf875, 0xf869,
108         0xf86f, 0xf870, 0xf85b, 0xf85d, 0xf80d, 0xf702, 0xf861, 0xf873,
109         0xf864, 0xf866, 0xf867, 0xf868, 0xf86a, 0xf86b, 0xf86c, 0xf83b,
110         0xf827, 0xf860, 0xf700, 0xf85c, 0xf87a, 0xf878, 0xf863, 0xf876,
111         0xf862, 0xf86e, 0xf86d, 0xf82c, 0xf82e, 0xf82f, 0xf700, 0xf30c,
112         0xf703, 0xf820, 0xf207, 0xf500, 0xf501, 0xf502, 0xf503, 0xf504,
113         0xf505, 0xf506, 0xf507, 0xf508, 0xf509, 0xf208, 0xf209, 0xf907,
114         0xf908, 0xf909, 0xf30b, 0xf904, 0xf905, 0xf906, 0xf30a, 0xf901,
115         0xf902, 0xf903, 0xf900, 0xf310, 0xf206, 0xf200, 0xf83c, 0xf50a,
116         0xf50b, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
117         0xf30e, 0xf702, 0xf30d, 0xf01c, 0xf701, 0xf205, 0xf114, 0xf603,
118         0xf118, 0xf210, 0xf211, 0xf117, 0xf600, 0xf119, 0xf115, 0xf116,
119         0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
120         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
123 u_short ctrl_alt_map[NR_KEYS] = {
124         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
125         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
126         0xf811, 0xf817, 0xf805, 0xf812, 0xf814, 0xf819, 0xf815, 0xf809,
127         0xf80f, 0xf810, 0xf200, 0xf200, 0xf201, 0xf702, 0xf801, 0xf813,
128         0xf804, 0xf806, 0xf807, 0xf808, 0xf80a, 0xf80b, 0xf80c, 0xf200,
129         0xf200, 0xf200, 0xf700, 0xf200, 0xf81a, 0xf818, 0xf803, 0xf816,
130         0xf802, 0xf80e, 0xf80d, 0xf200, 0xf200, 0xf200, 0xf700, 0xf30c,
131         0xf703, 0xf200, 0xf207, 0xf500, 0xf501, 0xf502, 0xf503, 0xf504,
132         0xf505, 0xf506, 0xf507, 0xf508, 0xf509, 0xf208, 0xf200, 0xf307,
133         0xf308, 0xf309, 0xf30b, 0xf304, 0xf305, 0xf306, 0xf30a, 0xf301,
134         0xf302, 0xf303, 0xf300, 0xf20c, 0xf206, 0xf200, 0xf200, 0xf50a,
135         0xf50b, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
136         0xf30e, 0xf702, 0xf30d, 0xf200, 0xf701, 0xf205, 0xf114, 0xf603,
137         0xf118, 0xf601, 0xf602, 0xf117, 0xf600, 0xf119, 0xf115, 0xf20c,
138         0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
139         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
142 ushort *key_maps[MAX_NR_KEYMAPS] = {
143         plain_map, shift_map, altgr_map, NULL,
144         ctrl_map, shift_ctrl_map, NULL, NULL,
145         alt_map, NULL, NULL, NULL,
146         ctrl_alt_map, NULL
149 unsigned int keymap_count = 7;
152  * Philosophy: most people do not define more strings, but they who do
153  * often want quite a lot of string space. So, we statically allocate
154  * the default and allocate dynamically in chunks of 512 bytes.
155  */
157 char func_buf[] = {
158         '\033', '[', '[', 'A', 0, 
159         '\033', '[', '[', 'B', 0, 
160         '\033', '[', '[', 'C', 0, 
161         '\033', '[', '[', 'D', 0, 
162         '\033', '[', '[', 'E', 0, 
163         '\033', '[', '1', '7', '~', 0, 
164         '\033', '[', '1', '8', '~', 0, 
165         '\033', '[', '1', '9', '~', 0, 
166         '\033', '[', '2', '0', '~', 0, 
167         '\033', '[', '2', '1', '~', 0, 
168         '\033', '[', '2', '3', '~', 0, 
169         '\033', '[', '2', '4', '~', 0, 
170         '\033', '[', '2', '5', '~', 0, 
171         '\033', '[', '2', '6', '~', 0, 
172         '\033', '[', '2', '8', '~', 0, 
173         '\033', '[', '2', '9', '~', 0, 
174         '\033', '[', '3', '1', '~', 0, 
175         '\033', '[', '3', '2', '~', 0, 
176         '\033', '[', '3', '3', '~', 0, 
177         '\033', '[', '3', '4', '~', 0, 
178         '\033', '[', '1', '~', 0, 
179         '\033', '[', '2', '~', 0, 
180         '\033', '[', '3', '~', 0, 
181         '\033', '[', '4', '~', 0, 
182         '\033', '[', '5', '~', 0, 
183         '\033', '[', '6', '~', 0, 
184         '\033', '[', 'M', 0, 
185         '\033', '[', 'P', 0, 
188 char *funcbufptr = func_buf;
189 int funcbufsize = sizeof(func_buf);
190 int funcbufleft = 0;          /* space left */
192 char *func_table[MAX_NR_FUNC] = {
193         func_buf + 0,
194         func_buf + 5,
195         func_buf + 10,
196         func_buf + 15,
197         func_buf + 20,
198         func_buf + 25,
199         func_buf + 31,
200         func_buf + 37,
201         func_buf + 43,
202         func_buf + 49,
203         func_buf + 55,
204         func_buf + 61,
205         func_buf + 67,
206         func_buf + 73,
207         func_buf + 79,
208         func_buf + 85,
209         func_buf + 91,
210         func_buf + 97,
211         func_buf + 103,
212         func_buf + 109,
213         func_buf + 115,
214         func_buf + 120,
215         func_buf + 125,
216         func_buf + 130,
217         func_buf + 135,
218         func_buf + 140,
219         func_buf + 145,
220         NULL,
221         NULL,
222         func_buf + 149,
223         NULL,
226 struct kbdiacruc accent_table[MAX_DIACR] = {
227         {'`', 'A', 0300},       {'`', 'a', 0340},
228         {'\'', 'A', 0301},      {'\'', 'a', 0341},
229         {'^', 'A', 0302},       {'^', 'a', 0342},
230         {'~', 'A', 0303},       {'~', 'a', 0343},
231         {'"', 'A', 0304},       {'"', 'a', 0344},
232         {'O', 'A', 0305},       {'o', 'a', 0345},
233         {'0', 'A', 0305},       {'0', 'a', 0345},
234         {'A', 'A', 0305},       {'a', 'a', 0345},
235         {'A', 'E', 0306},       {'a', 'e', 0346},
236         {',', 'C', 0307},       {',', 'c', 0347},
237         {'`', 'E', 0310},       {'`', 'e', 0350},
238         {'\'', 'E', 0311},      {'\'', 'e', 0351},
239         {'^', 'E', 0312},       {'^', 'e', 0352},
240         {'"', 'E', 0313},       {'"', 'e', 0353},
241         {'`', 'I', 0314},       {'`', 'i', 0354},
242         {'\'', 'I', 0315},      {'\'', 'i', 0355},
243         {'^', 'I', 0316},       {'^', 'i', 0356},
244         {'"', 'I', 0317},       {'"', 'i', 0357},
245         {'-', 'D', 0320},       {'-', 'd', 0360},
246         {'~', 'N', 0321},       {'~', 'n', 0361},
247         {'`', 'O', 0322},       {'`', 'o', 0362},
248         {'\'', 'O', 0323},      {'\'', 'o', 0363},
249         {'^', 'O', 0324},       {'^', 'o', 0364},
250         {'~', 'O', 0325},       {'~', 'o', 0365},
251         {'"', 'O', 0326},       {'"', 'o', 0366},
252         {'/', 'O', 0330},       {'/', 'o', 0370},
253         {'`', 'U', 0331},       {'`', 'u', 0371},
254         {'\'', 'U', 0332},      {'\'', 'u', 0372},
255         {'^', 'U', 0333},       {'^', 'u', 0373},
256         {'"', 'U', 0334},       {'"', 'u', 0374},
257         {'\'', 'Y', 0335},      {'\'', 'y', 0375},
258         {'T', 'H', 0336},       {'t', 'h', 0376},
259         {'s', 's', 0337},       {'"', 'y', 0377},
260         {'s', 'z', 0337},       {'i', 'j', 0377},
263 unsigned int accent_table_size = 68;