[xburst] Add 2.6.37 support
[openwrt.git] / target / linux / xburst / patches-2.6.37 / 500-modifier-keys.patch
1 From 04b3a56dce20d33d4c990fa65520449db5db6f1f Mon Sep 17 00:00:00 2001
2 From: Lars-Peter Clausen <lars@metafoo.de>
3 Date: Sat, 24 Apr 2010 12:22:25 +0200
4 Subject: [PATCH 2/5] Modify keymap for ben nanonote
5
6 ---
7  drivers/tty/vt/defkeymap.c_shipped |  308 +++++++++++++++++++++++++++---------
8  drivers/tty/vt/defkeymap.map       |   74 ++++++---
9  2 files changed, 286 insertions(+), 96 deletions(-)
10
11 --- a/drivers/tty/vt/defkeymap.c_shipped
12 +++ b/drivers/tty/vt/defkeymap.c_shipped
13 @@ -9,10 +9,10 @@ u_short plain_map[NR_KEYS] = {
14         0xf200, 0xf01b, 0xf031, 0xf032, 0xf033, 0xf034, 0xf035, 0xf036,
15         0xf037, 0xf038, 0xf039, 0xf030, 0xf02d, 0xf03d, 0xf07f, 0xf009,
16         0xfb71, 0xfb77, 0xfb65, 0xfb72, 0xfb74, 0xfb79, 0xfb75, 0xfb69,
17 -       0xfb6f, 0xfb70, 0xf05b, 0xf05d, 0xf201, 0xf702, 0xfb61, 0xfb73,
18 +       0xfb6f, 0xfb70, 0xf05b, 0xf05d, 0xf201, 0xf706, 0xfb61, 0xfb73,
19         0xfb64, 0xfb66, 0xfb67, 0xfb68, 0xfb6a, 0xfb6b, 0xfb6c, 0xf03b,
20         0xf027, 0xf060, 0xf700, 0xf05c, 0xfb7a, 0xfb78, 0xfb63, 0xfb76,
21 -       0xfb62, 0xfb6e, 0xfb6d, 0xf02c, 0xf02e, 0xf02f, 0xf700, 0xf30c,
22 +       0xfb62, 0xfb6e, 0xfb6d, 0xf02c, 0xf02e, 0xf02f, 0xf701, 0xf30c,
23         0xf703, 0xf020, 0xf207, 0xf100, 0xf101, 0xf102, 0xf103, 0xf104,
24         0xf105, 0xf106, 0xf107, 0xf108, 0xf109, 0xf208, 0xf209, 0xf307,
25         0xf308, 0xf309, 0xf30b, 0xf304, 0xf305, 0xf306, 0xf30a, 0xf301,
26 @@ -22,54 +22,102 @@ u_short plain_map[NR_KEYS] = {
27         0xf118, 0xf601, 0xf602, 0xf117, 0xf600, 0xf119, 0xf115, 0xf116,
28         0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
29         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
30 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
31 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
32 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
33 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
34 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
35 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
36 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
37 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
38 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
39 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
40 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
41 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
42 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
43 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
44 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
45 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
46  };
47  
48 -u_short shift_map[NR_KEYS] = {
49 +static u_short shift_map[NR_KEYS] = {
50         0xf200, 0xf01b, 0xf021, 0xf040, 0xf023, 0xf024, 0xf025, 0xf05e,
51         0xf026, 0xf02a, 0xf028, 0xf029, 0xf05f, 0xf02b, 0xf07f, 0xf009,
52         0xfb51, 0xfb57, 0xfb45, 0xfb52, 0xfb54, 0xfb59, 0xfb55, 0xfb49,
53 -       0xfb4f, 0xfb50, 0xf07b, 0xf07d, 0xf201, 0xf702, 0xfb41, 0xfb53,
54 +       0xfb4f, 0xfb50, 0xf07b, 0xf07d, 0xf201, 0xf706, 0xfb41, 0xfb53,
55         0xfb44, 0xfb46, 0xfb47, 0xfb48, 0xfb4a, 0xfb4b, 0xfb4c, 0xf03a,
56         0xf022, 0xf07e, 0xf700, 0xf07c, 0xfb5a, 0xfb58, 0xfb43, 0xfb56,
57 -       0xfb42, 0xfb4e, 0xfb4d, 0xf03c, 0xf03e, 0xf03f, 0xf700, 0xf30c,
58 +       0xfb42, 0xfb4e, 0xfb4d, 0xf03b, 0xf03a, 0xf03f, 0xf701, 0xf30c,
59         0xf703, 0xf020, 0xf207, 0xf10a, 0xf10b, 0xf10c, 0xf10d, 0xf10e,
60         0xf10f, 0xf110, 0xf111, 0xf112, 0xf113, 0xf213, 0xf203, 0xf307,
61         0xf308, 0xf309, 0xf30b, 0xf304, 0xf305, 0xf306, 0xf30a, 0xf301,
62         0xf302, 0xf303, 0xf300, 0xf310, 0xf206, 0xf200, 0xf03e, 0xf10a,
63         0xf10b, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
64 -       0xf30e, 0xf702, 0xf30d, 0xf200, 0xf701, 0xf205, 0xf114, 0xf603,
65 +       0xf30e, 0xf702, 0xf30d, 0xf01c, 0xf701, 0xf205, 0xf114, 0xf603,
66         0xf20b, 0xf601, 0xf602, 0xf117, 0xf600, 0xf20a, 0xf115, 0xf116,
67         0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
68         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
69 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
70 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
71 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
72 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
73 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
74 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
75 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
76 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
77 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
78 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
79 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
80 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
81 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
82 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
83 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
84 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
85  };
86  
87 -u_short altgr_map[NR_KEYS] = {
88 +static u_short altgr_map[NR_KEYS] = {
89         0xf200, 0xf200, 0xf200, 0xf040, 0xf200, 0xf024, 0xf200, 0xf200,
90 -       0xf07b, 0xf05b, 0xf05d, 0xf07d, 0xf05c, 0xf200, 0xf200, 0xf200,
91 -       0xfb71, 0xfb77, 0xf918, 0xfb72, 0xfb74, 0xfb79, 0xfb75, 0xfb69,
92 -       0xfb6f, 0xfb70, 0xf200, 0xf07e, 0xf201, 0xf702, 0xf914, 0xfb73,
93 -       0xf917, 0xf919, 0xfb67, 0xfb68, 0xfb6a, 0xfb6b, 0xfb6c, 0xf200,
94 -       0xf200, 0xf200, 0xf700, 0xf200, 0xfb7a, 0xfb78, 0xf916, 0xfb76,
95 -       0xf915, 0xfb6e, 0xfb6d, 0xf200, 0xf200, 0xf200, 0xf700, 0xf30c,
96 -       0xf703, 0xf200, 0xf207, 0xf50c, 0xf50d, 0xf50e, 0xf50f, 0xf510,
97 -       0xf511, 0xf512, 0xf513, 0xf514, 0xf515, 0xf208, 0xf202, 0xf911,
98 +       0xf07b, 0xf05b, 0xf05d, 0xf07d, 0xf05c, 0xf07e, 0xf008, 0xf200,
99 +       0xf021, 0xf040, 0xf023, 0xf024, 0xf025, 0xf05e, 0xf026, 0xf02a,
100 +       0xf028, 0xf029, 0xf200, 0xf07e, 0xf201, 0xf706, 0xf0b0, 0xf0a8,
101 +       0xf0a4, 0xf02d, 0xf05f, 0xf07b, 0xf05b, 0xf05d, 0xf07d, 0xf200,
102 +       0xf200, 0xf200, 0xf700, 0xf200, 0xf039, 0xf030, 0xf916, 0xfb76,
103 +       0xf915, 0xf03c, 0xf03e, 0xf027, 0xf022, 0xf200, 0xf701, 0xf30c,
104 +       0xf703, 0xf200, 0xf207, 0xf031, 0xf032, 0xf033, 0xf034, 0xf035,
105 +       0xf036, 0xf037, 0xf038, 0xf514, 0xf515, 0xf208, 0xf202, 0xf911,
106         0xf912, 0xf913, 0xf30b, 0xf90e, 0xf90f, 0xf910, 0xf30a, 0xf90b,
107         0xf90c, 0xf90d, 0xf90a, 0xf310, 0xf206, 0xf200, 0xf07c, 0xf516,
108         0xf517, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
109 -       0xf30e, 0xf702, 0xf30d, 0xf200, 0xf701, 0xf205, 0xf114, 0xf603,
110 +       0xf30e, 0xf702, 0xf30d, 0xf01c, 0xf701, 0xf205, 0xf114, 0xf603,
111         0xf118, 0xf601, 0xf602, 0xf117, 0xf600, 0xf119, 0xf115, 0xf116,
112         0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
113         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
114 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
115 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
116 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
117 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
118 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
119 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
120 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
121 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
122 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
123 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
124 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
125 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
126 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
127 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
128 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
129 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
130  };
131  
132 -u_short ctrl_map[NR_KEYS] = {
133 +static u_short ctrl_map[NR_KEYS] = {
134         0xf200, 0xf200, 0xf200, 0xf000, 0xf01b, 0xf01c, 0xf01d, 0xf01e,
135 -       0xf01f, 0xf07f, 0xf200, 0xf200, 0xf01f, 0xf200, 0xf008, 0xf200,
136 +       0xf01f, 0xf07f, 0xf200, 0xf200, 0xf01f, 0xf200, 0xf200, 0xf200,
137         0xf011, 0xf017, 0xf005, 0xf012, 0xf014, 0xf019, 0xf015, 0xf009,
138 -       0xf00f, 0xf010, 0xf01b, 0xf01d, 0xf201, 0xf702, 0xf001, 0xf013,
139 +       0xf00f, 0xf010, 0xf01b, 0xf01d, 0xf201, 0xf706, 0xf001, 0xf013,
140         0xf004, 0xf006, 0xf007, 0xf008, 0xf00a, 0xf00b, 0xf00c, 0xf200,
141         0xf007, 0xf000, 0xf700, 0xf01c, 0xf01a, 0xf018, 0xf003, 0xf016,
142 -       0xf002, 0xf00e, 0xf00d, 0xf200, 0xf20e, 0xf07f, 0xf700, 0xf30c,
143 +       0xf002, 0xf00e, 0xf00d, 0xf200, 0xf20e, 0xf07f, 0xf701, 0xf30c,
144         0xf703, 0xf000, 0xf207, 0xf100, 0xf101, 0xf102, 0xf103, 0xf104,
145         0xf105, 0xf106, 0xf107, 0xf108, 0xf109, 0xf208, 0xf204, 0xf307,
146         0xf308, 0xf309, 0xf30b, 0xf304, 0xf305, 0xf306, 0xf30a, 0xf301,
147 @@ -79,35 +127,67 @@ u_short ctrl_map[NR_KEYS] = {
148         0xf118, 0xf601, 0xf602, 0xf117, 0xf600, 0xf119, 0xf115, 0xf116,
149         0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
150         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
151 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
152 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
153 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
154 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
155 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
156 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
157 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
158 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
159 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
160 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
161 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
162 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
163 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
164 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
165 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
166 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
167  };
168  
169 -u_short shift_ctrl_map[NR_KEYS] = {
170 +static u_short shift_ctrl_map[NR_KEYS] = {
171         0xf200, 0xf200, 0xf200, 0xf000, 0xf200, 0xf200, 0xf200, 0xf200,
172         0xf200, 0xf200, 0xf200, 0xf200, 0xf01f, 0xf200, 0xf200, 0xf200,
173         0xf011, 0xf017, 0xf005, 0xf012, 0xf014, 0xf019, 0xf015, 0xf009,
174 -       0xf00f, 0xf010, 0xf200, 0xf200, 0xf201, 0xf702, 0xf001, 0xf013,
175 +       0xf00f, 0xf010, 0xf200, 0xf200, 0xf201, 0xf706, 0xf001, 0xf013,
176         0xf004, 0xf006, 0xf007, 0xf008, 0xf00a, 0xf00b, 0xf00c, 0xf200,
177         0xf200, 0xf200, 0xf700, 0xf200, 0xf01a, 0xf018, 0xf003, 0xf016,
178 -       0xf002, 0xf00e, 0xf00d, 0xf200, 0xf200, 0xf200, 0xf700, 0xf30c,
179 +       0xf002, 0xf00e, 0xf00d, 0xf200, 0xf200, 0xf200, 0xf701, 0xf30c,
180         0xf703, 0xf200, 0xf207, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
181         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf208, 0xf200, 0xf307,
182         0xf308, 0xf309, 0xf30b, 0xf304, 0xf305, 0xf306, 0xf30a, 0xf301,
183         0xf302, 0xf303, 0xf300, 0xf310, 0xf206, 0xf200, 0xf200, 0xf200,
184         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
185 -       0xf30e, 0xf702, 0xf30d, 0xf200, 0xf701, 0xf205, 0xf114, 0xf603,
186 +       0xf30e, 0xf702, 0xf30d, 0xf01c, 0xf701, 0xf205, 0xf114, 0xf603,
187         0xf118, 0xf601, 0xf602, 0xf117, 0xf600, 0xf119, 0xf115, 0xf116,
188         0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
189         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
190 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
191 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
192 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
193 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
194 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
195 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
196 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
197 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
198 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
199 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
200 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
201 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
202 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
203 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
204 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
205 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
206  };
207  
208 -u_short alt_map[NR_KEYS] = {
209 +static u_short alt_map[NR_KEYS] = {
210         0xf200, 0xf81b, 0xf831, 0xf832, 0xf833, 0xf834, 0xf835, 0xf836,
211         0xf837, 0xf838, 0xf839, 0xf830, 0xf82d, 0xf83d, 0xf87f, 0xf809,
212         0xf871, 0xf877, 0xf865, 0xf872, 0xf874, 0xf879, 0xf875, 0xf869,
213 -       0xf86f, 0xf870, 0xf85b, 0xf85d, 0xf80d, 0xf702, 0xf861, 0xf873,
214 +       0xf86f, 0xf870, 0xf85b, 0xf85d, 0xf80d, 0xf706, 0xf861, 0xf873,
215         0xf864, 0xf866, 0xf867, 0xf868, 0xf86a, 0xf86b, 0xf86c, 0xf83b,
216         0xf827, 0xf860, 0xf700, 0xf85c, 0xf87a, 0xf878, 0xf863, 0xf876,
217 -       0xf862, 0xf86e, 0xf86d, 0xf82c, 0xf82e, 0xf82f, 0xf700, 0xf30c,
218 +       0xf862, 0xf86e, 0xf86d, 0xf200, 0xf200, 0xf82f, 0xf701, 0xf30c,
219         0xf703, 0xf820, 0xf207, 0xf500, 0xf501, 0xf502, 0xf503, 0xf504,
220         0xf505, 0xf506, 0xf507, 0xf508, 0xf509, 0xf208, 0xf209, 0xf907,
221         0xf908, 0xf909, 0xf30b, 0xf904, 0xf905, 0xf906, 0xf30a, 0xf901,
222 @@ -117,35 +197,115 @@ u_short alt_map[NR_KEYS] = {
223         0xf118, 0xf210, 0xf211, 0xf117, 0xf600, 0xf119, 0xf115, 0xf116,
224         0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
225         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
226 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
227 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
228 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
229 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
230 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
231 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
232 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
233 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
234 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
235 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
236 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
237 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
238 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
239 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
240 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
241 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
242  };
243  
244 -u_short ctrl_alt_map[NR_KEYS] = {
245 +static u_short ctrl_alt_map[NR_KEYS] = {
246         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
247         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
248         0xf811, 0xf817, 0xf805, 0xf812, 0xf814, 0xf819, 0xf815, 0xf809,
249 -       0xf80f, 0xf810, 0xf200, 0xf200, 0xf201, 0xf702, 0xf801, 0xf813,
250 +       0xf80f, 0xf810, 0xf200, 0xf200, 0xf201, 0xf706, 0xf801, 0xf813,
251         0xf804, 0xf806, 0xf807, 0xf808, 0xf80a, 0xf80b, 0xf80c, 0xf200,
252         0xf200, 0xf200, 0xf700, 0xf200, 0xf81a, 0xf818, 0xf803, 0xf816,
253 -       0xf802, 0xf80e, 0xf80d, 0xf200, 0xf200, 0xf200, 0xf700, 0xf30c,
254 +       0xf802, 0xf80e, 0xf80d, 0xf200, 0xf200, 0xf200, 0xf701, 0xf30c,
255         0xf703, 0xf200, 0xf207, 0xf500, 0xf501, 0xf502, 0xf503, 0xf504,
256         0xf505, 0xf506, 0xf507, 0xf508, 0xf509, 0xf208, 0xf200, 0xf307,
257         0xf308, 0xf309, 0xf30b, 0xf304, 0xf305, 0xf306, 0xf30a, 0xf301,
258         0xf302, 0xf303, 0xf300, 0xf20c, 0xf206, 0xf200, 0xf200, 0xf50a,
259         0xf50b, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
260 -       0xf30e, 0xf702, 0xf30d, 0xf200, 0xf701, 0xf205, 0xf114, 0xf603,
261 +       0xf30e, 0xf702, 0xf30d, 0xf01c, 0xf701, 0xf205, 0xf114, 0xf603,
262         0xf118, 0xf601, 0xf602, 0xf117, 0xf600, 0xf119, 0xf115, 0xf20c,
263         0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
264         0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
265 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
266 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
267 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
268 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
269 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
270 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
271 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
272 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
273 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
274 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
275 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
276 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
277 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
278 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
279 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
280 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
281 +};
282 +
283 +static u_short ctl_map[NR_KEYS] = {
284 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
285 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf033, 0xf200, 0xf200,
286 +       0xfb71, 0xfb77, 0xfb65, 0xfb72, 0xfb74, 0xfb79, 0xf037, 0xf038,
287 +       0xf039, 0xfb70, 0xf200, 0xf200, 0xf201, 0xf706, 0xfb61, 0xfb73,
288 +       0xfb64, 0xfb66, 0xfb67, 0xfb68, 0xf034, 0xf035, 0xf036, 0xf200,
289 +       0xf200, 0xf200, 0xf700, 0xf200, 0xfb7a, 0xfb78, 0xfb63, 0xfb76,
290 +       0xfb62, 0xf031, 0xf032, 0xf200, 0xf200, 0xf030, 0xf701, 0xf30c,
291 +       0xf703, 0xf200, 0xf207, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
292 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf208, 0xf200, 0xf307,
293 +       0xf308, 0xf309, 0xf30b, 0xf304, 0xf305, 0xf306, 0xf30a, 0xf301,
294 +       0xf302, 0xf303, 0xf300, 0xf310, 0xf206, 0xf200, 0xf200, 0xf200,
295 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
296 +       0xf30e, 0xf702, 0xf30d, 0xf01c, 0xf701, 0xf205, 0xf114, 0xf603,
297 +       0xf118, 0xf601, 0xf602, 0xf117, 0xf600, 0xf119, 0xf115, 0xf116,
298 +       0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
299 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
300 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
301 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
302 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
303 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
304 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
305 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
306 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
307 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
308 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
309 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
310 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
311 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
312 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
313 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
314 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
315 +       0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
316  };
317  
318  ushort *key_maps[MAX_NR_KEYMAPS] = {
319 -       plain_map, shift_map, altgr_map, NULL,
320 -       ctrl_map, shift_ctrl_map, NULL, NULL,
321 -       alt_map, NULL, NULL, NULL,
322 -       ctrl_alt_map, NULL
323 +       plain_map, shift_map, altgr_map, 0,
324 +       ctrl_map, shift_ctrl_map, 0, 0,
325 +       alt_map, 0, 0, 0,
326 +       ctrl_alt_map, 0, 0, 0,
327 +       0, 0, 0, 0,
328 +       0, 0, 0, 0,
329 +       0, 0, 0, 0,
330 +       0, 0, 0, 0,
331 +       0, 0, 0, 0,
332 +       0, 0, 0, 0,
333 +       0, 0, 0, 0,
334 +       0, 0, 0, 0,
335 +       0, 0, 0, 0,
336 +       0, 0, 0, 0,
337 +       0, 0, 0, 0,
338 +       0, 0, 0, 0,
339 +       ctl_map,        0
340  };
341  
342 -unsigned int keymap_count = 7;
343 +unsigned int keymap_count = 8;
344  
345  /*
346   * Philosophy: most people do not define more strings, but they who do
347 @@ -216,47 +376,47 @@ char *func_table[MAX_NR_FUNC] = {
348         func_buf + 135,
349         func_buf + 140,
350         func_buf + 145,
351 -       NULL,
352 -       NULL,
353 +       0,
354 +       0,
355         func_buf + 149,
356 -       NULL,
357 +       0,
358  };
359  
360 -struct kbdiacruc accent_table[MAX_DIACR] = {
361 -       {'`', 'A', 0300},       {'`', 'a', 0340},
362 -       {'\'', 'A', 0301},      {'\'', 'a', 0341},
363 -       {'^', 'A', 0302},       {'^', 'a', 0342},
364 -       {'~', 'A', 0303},       {'~', 'a', 0343},
365 -       {'"', 'A', 0304},       {'"', 'a', 0344},
366 -       {'O', 'A', 0305},       {'o', 'a', 0345},
367 -       {'0', 'A', 0305},       {'0', 'a', 0345},
368 -       {'A', 'A', 0305},       {'a', 'a', 0345},
369 -       {'A', 'E', 0306},       {'a', 'e', 0346},
370 -       {',', 'C', 0307},       {',', 'c', 0347},
371 -       {'`', 'E', 0310},       {'`', 'e', 0350},
372 -       {'\'', 'E', 0311},      {'\'', 'e', 0351},
373 -       {'^', 'E', 0312},       {'^', 'e', 0352},
374 -       {'"', 'E', 0313},       {'"', 'e', 0353},
375 -       {'`', 'I', 0314},       {'`', 'i', 0354},
376 -       {'\'', 'I', 0315},      {'\'', 'i', 0355},
377 -       {'^', 'I', 0316},       {'^', 'i', 0356},
378 -       {'"', 'I', 0317},       {'"', 'i', 0357},
379 -       {'-', 'D', 0320},       {'-', 'd', 0360},
380 -       {'~', 'N', 0321},       {'~', 'n', 0361},
381 -       {'`', 'O', 0322},       {'`', 'o', 0362},
382 -       {'\'', 'O', 0323},      {'\'', 'o', 0363},
383 -       {'^', 'O', 0324},       {'^', 'o', 0364},
384 -       {'~', 'O', 0325},       {'~', 'o', 0365},
385 -       {'"', 'O', 0326},       {'"', 'o', 0366},
386 -       {'/', 'O', 0330},       {'/', 'o', 0370},
387 -       {'`', 'U', 0331},       {'`', 'u', 0371},
388 -       {'\'', 'U', 0332},      {'\'', 'u', 0372},
389 -       {'^', 'U', 0333},       {'^', 'u', 0373},
390 -       {'"', 'U', 0334},       {'"', 'u', 0374},
391 -       {'\'', 'Y', 0335},      {'\'', 'y', 0375},
392 -       {'T', 'H', 0336},       {'t', 'h', 0376},
393 -       {'s', 's', 0337},       {'"', 'y', 0377},
394 -       {'s', 'z', 0337},       {'i', 'j', 0377},
395 +struct kbdiacr accent_table[MAX_DIACR] = {
396 +       {'`', 'A', '\300'},     {'`', 'a', '\340'},
397 +       {'\'', 'A', '\301'},    {'\'', 'a', '\341'},
398 +       {'^', 'A', '\302'},     {'^', 'a', '\342'},
399 +       {'~', 'A', '\303'},     {'~', 'a', '\343'},
400 +       {'"', 'A', '\304'},     {'"', 'a', '\344'},
401 +       {'O', 'A', '\305'},     {'o', 'a', '\345'},
402 +       {'0', 'A', '\305'},     {'0', 'a', '\345'},
403 +       {'A', 'A', '\305'},     {'a', 'a', '\345'},
404 +       {'A', 'E', '\306'},     {'a', 'e', '\346'},
405 +       {',', 'C', '\307'},     {',', 'c', '\347'},
406 +       {'`', 'E', '\310'},     {'`', 'e', '\350'},
407 +       {'\'', 'E', '\311'},    {'\'', 'e', '\351'},
408 +       {'^', 'E', '\312'},     {'^', 'e', '\352'},
409 +       {'"', 'E', '\313'},     {'"', 'e', '\353'},
410 +       {'`', 'I', '\314'},     {'`', 'i', '\354'},
411 +       {'\'', 'I', '\315'},    {'\'', 'i', '\355'},
412 +       {'^', 'I', '\316'},     {'^', 'i', '\356'},
413 +       {'"', 'I', '\317'},     {'"', 'i', '\357'},
414 +       {'-', 'D', '\320'},     {'-', 'd', '\360'},
415 +       {'~', 'N', '\321'},     {'~', 'n', '\361'},
416 +       {'`', 'O', '\322'},     {'`', 'o', '\362'},
417 +       {'\'', 'O', '\323'},    {'\'', 'o', '\363'},
418 +       {'^', 'O', '\324'},     {'^', 'o', '\364'},
419 +       {'~', 'O', '\325'},     {'~', 'o', '\365'},
420 +       {'"', 'O', '\326'},     {'"', 'o', '\366'},
421 +       {'/', 'O', '\330'},     {'/', 'o', '\370'},
422 +       {'`', 'U', '\331'},     {'`', 'u', '\371'},
423 +       {'\'', 'U', '\332'},    {'\'', 'u', '\372'},
424 +       {'^', 'U', '\333'},     {'^', 'u', '\373'},
425 +       {'"', 'U', '\334'},     {'"', 'u', '\374'},
426 +       {'\'', 'Y', '\335'},    {'\'', 'y', '\375'},
427 +       {'T', 'H', '\336'},     {'t', 'h', '\376'},
428 +       {'s', 's', '\337'},     {'"', 'y', '\377'},
429 +       {'s', 'z', '\337'},     {'i', 'j', '\377'},
430  };
431  
432  unsigned int accent_table_size = 68;
433 --- a/drivers/tty/vt/defkeymap.map
434 +++ b/drivers/tty/vt/defkeymap.map
435 @@ -1,5 +1,5 @@
436  # Default kernel keymap. This uses 7 modifier combinations.
437 -keymaps 0-2,4-5,8,12
438 +keymaps 0-2,4-5,8,12,64
439  # Change the above line into
440  #      keymaps 0-2,4-6,8,12
441  # in case you want the entries
442 @@ -45,24 +45,38 @@ keycode  12 = minus            underscor
443         control keycode  12 = Control_underscore
444         shift   control keycode  12 = Control_underscore
445         alt     keycode  12 = Meta_minus      
446 -keycode  13 = equal            plus            
447 +keycode  13 = equal            plus             
448         alt     keycode  13 = Meta_equal      
449 +       altgr   keycode  13 = asciitilde 
450 +       ctrll   keycode  13 = three
451  keycode  14 = Delete           Delete          
452 -       control keycode  14 = BackSpace
453 +       altgr   keycode  14 = BackSpace
454         alt     keycode  14 = Meta_Delete     
455  keycode  15 = Tab              Tab             
456         alt     keycode  15 = Meta_Tab        
457  keycode  16 = q               
458 +       altgr   keycode  16 = exclam
459  keycode  17 = w               
460 +       altgr   keycode  17 = at
461  keycode  18 = e
462 -       altgr   keycode  18 = Hex_E   
463 +       altgr   keycode  18 = numbersign
464  keycode  19 = r               
465 +       altgr   keycode  19 = dollar
466  keycode  20 = t               
467 +       altgr   keycode  20 = percent
468  keycode  21 = y               
469 +       altgr   keycode  21 = asciicircum 
470  keycode  22 = u               
471 +       altgr   keycode  22 = ampersand
472 +       ctrll   keycode  22 = seven
473  keycode  23 = i               
474 +       altgr   keycode  23 = asterisk
475 +       ctrll   keycode  23 = eight
476  keycode  24 = o               
477 +       altgr   keycode  24 = parenleft
478 +       ctrll   keycode  24 = nine
479  keycode  25 = p               
480 +       altgr   keycode  25 = parenright
481  keycode  26 = bracketleft      braceleft       
482         control keycode  26 = Escape          
483         alt     keycode  26 = Meta_bracketleft
484 @@ -71,19 +85,28 @@ keycode  27 = bracketright     bracerigh
485         alt     keycode  27 = Meta_bracketright
486  keycode  28 = Return          
487         alt     keycode  28 = Meta_Control_m  
488 -keycode  29 = Control         
489 +keycode  29 = CtrlL         
490  keycode  30 = a
491 -       altgr   keycode  30 = Hex_A
492 +       altgr   keycode  30 = U+00B0
493  keycode  31 = s               
494 +       altgr   keycode  31 = U+00A8
495  keycode  32 = d
496 -       altgr   keycode  32 = Hex_D   
497 +       altgr   keycode  32 = U+20AC
498  keycode  33 = f
499 -       altgr   keycode  33 = Hex_F               
500 +       altgr   keycode  33 = minus
501  keycode  34 = g               
502 +       altgr   keycode  34 = underscore
503  keycode  35 = h               
504 +       altgr   keycode  35 = braceleft
505  keycode  36 = j               
506 +       altgr   keycode  36 = bracketleft
507 +       ctrll   keycode  36 = four
508  keycode  37 = k               
509 +       altgr   keycode  37 = bracketright
510 +       ctrll   keycode  37 = five
511  keycode  38 = l               
512 +       altgr   keycode  38 = braceright
513 +       ctrll   keycode  38 = six
514  keycode  39 = semicolon        colon           
515         alt     keycode  39 = Meta_semicolon  
516  keycode  40 = apostrophe       quotedbl        
517 @@ -97,58 +120,65 @@ keycode  43 = backslash        bar
518         control keycode  43 = Control_backslash
519         alt     keycode  43 = Meta_backslash  
520  keycode  44 = z               
521 +       altgr   keycode  44 = nine
522  keycode  45 = x               
523 +       altgr   keycode  45 = zero
524  keycode  46 = c
525         altgr   keycode  46 = Hex_C   
526  keycode  47 = v               
527  keycode  48 = b
528         altgr   keycode  48 = Hex_B
529  keycode  49 = n               
530 +       altgr   keycode  49 = less
531 +       ctrll   keycode  49 = one
532  keycode  50 = m               
533 -keycode  51 = comma            less            
534 -       alt     keycode  51 = Meta_comma      
535 -keycode  52 = period           greater         
536 +       altgr   keycode  50 = greater
537 +       ctrll   keycode  50 = two
538 +keycode  51 = comma            semicolon
539 +       altgr   keycode  51 = apostrophe
540 +keycode  52 = period           colon
541         control keycode  52 = Compose         
542 -       alt     keycode  52 = Meta_period     
543 +       altgr   keycode  52 =  quotedbl
544  keycode  53 = slash            question        
545         control keycode  53 = Delete          
546         alt     keycode  53 = Meta_slash      
547 -keycode  54 = Shift           
548 +       ctrll   keycode  53 = zero
549 +keycode  54 = AltGr
550  keycode  55 = KP_Multiply     
551  keycode  56 = Alt             
552  keycode  57 = space            space           
553         control keycode  57 = nul             
554         alt     keycode  57 = Meta_space      
555  keycode  58 = Caps_Lock       
556 -keycode  59 = F1               F11              Console_13      
557 +keycode  59 = F1               F11              one
558         control keycode  59 = F1              
559         alt     keycode  59 = Console_1       
560         control alt     keycode  59 = Console_1       
561 -keycode  60 = F2               F12              Console_14      
562 +keycode  60 = F2               F12              two
563         control keycode  60 = F2              
564         alt     keycode  60 = Console_2       
565         control alt     keycode  60 = Console_2       
566 -keycode  61 = F3               F13              Console_15      
567 +keycode  61 = F3               F13              three
568         control keycode  61 = F3              
569         alt     keycode  61 = Console_3       
570         control alt     keycode  61 = Console_3       
571 -keycode  62 = F4               F14              Console_16      
572 +keycode  62 = F4               F14              four
573         control keycode  62 = F4              
574         alt     keycode  62 = Console_4       
575         control alt     keycode  62 = Console_4       
576 -keycode  63 = F5               F15              Console_17      
577 +keycode  63 = F5               F15              five
578         control keycode  63 = F5              
579         alt     keycode  63 = Console_5       
580         control alt     keycode  63 = Console_5       
581 -keycode  64 = F6               F16              Console_18      
582 +keycode  64 = F6               F16              six
583         control keycode  64 = F6              
584         alt     keycode  64 = Console_6       
585         control alt     keycode  64 = Console_6       
586 -keycode  65 = F7               F17              Console_19      
587 +keycode  65 = F7               F17              seven
588         control keycode  65 = F7              
589         alt     keycode  65 = Console_7       
590         control alt     keycode  65 = Console_7       
591 -keycode  66 = F8               F18              Console_20      
592 +keycode  66 = F8               F18              eight
593         control keycode  66 = F8              
594         alt     keycode  66 = Console_8       
595         control alt     keycode  66 = Console_8       
596 @@ -220,7 +250,7 @@ keycode  93 =
597  keycode  94 =
598  keycode  95 =
599  keycode  96 = KP_Enter        
600 -keycode  97 = Control         
601 +keycode  97 = Control
602  keycode  98 = KP_Divide       
603  keycode  99 = Control_backslash
604         control keycode  99 = Control_backslash