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