Contents of /trunk/xorg-old/patches-6.9.0-r1/0425_all_6.9.0-sun-type6-keyboard.patch
Parent Directory | Revision Log
Revision 167 -
(show annotations)
(download)
Tue May 8 20:58:51 2007 UTC (17 years, 4 months ago) by niro
File size: 9219 byte(s)
Tue May 8 20:58:51 2007 UTC (17 years, 4 months ago) by niro
File size: 9219 byte(s)
-import
1 | diff -urN xc.orig/programs/Xserver/hw/xfree86/common/xf86Events.c xc/programs/Xserver/hw/xfree86/common/xf86Events.c |
2 | --- xc.orig/programs/Xserver/hw/xfree86/common/xf86Events.c 2004-07-30 13:56:53.000000000 -0700 |
3 | +++ xc/programs/Xserver/hw/xfree86/common/xf86Events.c 2004-09-02 11:45:52.000000000 -0700 |
4 | @@ -495,6 +495,14 @@ |
5 | if (xf86Info.scanPrefix == 0) { |
6 | |
7 | switch (scanCode) { |
8 | + |
9 | + case 0x5d: scanCode = 0xD7; break; /* AGAI, SunAgain */ |
10 | + case 0x5e: scanCode = 0xD8; break; /* PROP, SunProps */ |
11 | + case 0x5f: scanCode = 0xD9; break; /* UNDO, SunUndo */ |
12 | + case 0x62: scanCode = 0xDA; break; /* FRNT, SunFront */ |
13 | + case 0x64: scanCode = 0xDC; break; /* OPEN, SunOpen */ |
14 | + case 0x65: scanCode = 0xDD; break; /* PAST, SunPaste */ |
15 | + |
16 | case KEY_Prefix0: |
17 | case KEY_Prefix1: |
18 | #if defined(PCCONS_SUPPORT) || defined(SYSCONS_SUPPORT) || defined(PCVT_SUPPORT) || defined(WSCONS_SUPPORT) |
19 | @@ -604,6 +612,22 @@ |
20 | case KEY_F6: scanCode = KEY_F16; break; |
21 | case KEY_F7: scanCode = KEY_F17; break; |
22 | case KEY_KP_Plus: scanCode = KEY_KP_DEC; break; |
23 | + /* NE: again for Type 6. Map prefixed scancodes to keycodes |
24 | + xkb/keycodes/xfree86(type6) -10 */ |
25 | + case 0x68: scanCode = 0xD6; break; /* SunStop */ |
26 | + case 0x78: scanCode = 0xDB; break; /* SunCopy */ |
27 | + case 0x65: scanCode = 0xDE; break; /* SunFind */ |
28 | + case 0x3c: scanCode = 0xDF; break; /* SunCut */ |
29 | + case 0x62: scanCode = 0xE0; break; /* SunHelp */ |
30 | + case 0x5f: scanCode = 0xD9; break; /* UNDO, SunUndo */ |
31 | + case 0x64: scanCode = 0xDC; break; /* OPEN, SunOpen */ |
32 | + |
33 | + /* NE: these are only -8 (GLYPH_OFFSET) */ |
34 | + case 0x26: scanCode = 157; break; /* SunMute */ |
35 | + case 0x25: scanCode = 151; break; /* VOL- */ |
36 | + case 0x1e: scanCode = 150; break; /* VOL+ */ |
37 | + case 0x5e: scanCode = 152; break; /* SunPower */ |
38 | + |
39 | /* |
40 | * Ignore virtual shifts (E0 2A, E0 AA, E0 36, E0 B6) |
41 | */ |
42 | diff -urN xc.orig/programs/xkbcomp/keycodes/xfree86 xc/programs/xkbcomp/keycodes/xfree86 |
43 | --- xc.orig/programs/xkbcomp/keycodes/xfree86 2004-09-01 12:06:44.000000000 -0700 |
44 | +++ xc/programs/xkbcomp/keycodes/xfree86 2004-09-02 11:52:13.000000000 -0700 |
45 | @@ -411,3 +411,36 @@ |
46 | <AC12> = 51; |
47 | <KPPT> = 134; |
48 | }; |
49 | + |
50 | +// For Sun/Type6 keyboards |
51 | +xkb_keycodes "type6" { |
52 | + include "xfree86(xfree86)" |
53 | + |
54 | + alias <LMTA> = <LWIN>; |
55 | + alias <RMTA> = <RWIN>; |
56 | + |
57 | + alias <COMP> = <MENU>; |
58 | + alias <ALGR> = <RALT>; |
59 | + |
60 | +// again, from sun/type5 |
61 | + <STOP> = 222; |
62 | + <AGAI> = 223; |
63 | + <PROP> = 224; |
64 | + <UNDO> = 225; |
65 | + <FRNT> = 226; |
66 | + <COPY> = 227; |
67 | + <OPEN> = 228; |
68 | + <PAST> = 229; |
69 | + <FIND> = 230; |
70 | + <CUT> = 231; |
71 | + |
72 | + <HELP> = 232; |
73 | + <MUTE> = 165; |
74 | + <VOL-> = 159; |
75 | + <VOL+> = 158; |
76 | + <POWR> = 160; |
77 | + |
78 | + indicator 1 = "Caps Lock"; |
79 | + indicator 2 = "Num Lock"; |
80 | + indicator 3 = "Scroll Lock"; |
81 | +}; |
82 | --- xc/programs/xkbcomp/rules/xorg.orig 2005-12-28 23:21:17.000000000 +0000 |
83 | +++ xc/programs/xkbcomp/rules/xorg 2005-12-28 23:27:54.000000000 +0000 |
84 | @@ -51,6 +51,7 @@ |
85 | powerpcps2 = powerpcps2 |
86 | pc98 = xfree98(pc98) |
87 | abnt2 = xfree86(abnt2) |
88 | + sun_type6_usb = xfree86(type6) |
89 | jp106 = xfree86(jp106) |
90 | * = xfree86 |
91 | |
92 | @@ -81,6 +82,7 @@ |
93 | pc98 = nec(pc98) |
94 | abnt2 = pc(abnt2) |
95 | $mac = macintosh(macintosh) |
96 | + sun_type6_usb = sun(type5) |
97 | * = pc(pc104) |
98 | |
99 | ! model layout variant = symbols |
100 | @@ -311,6 +313,7 @@ |
101 | $mac en_US = macintosh/us(extended) |
102 | $mac * = macintosh/us(extended)+macintosh/%l%(v) |
103 | $pcmodels intl = us(%mcompose) |
104 | + sun_type6_usb * = us(sun_type6_usb) |
105 | * intl = us(pc104compose) |
106 | * jp = pc/pc(pc102)+pc/jp(latin)+pc/jp:2 |
107 | $pcmodels ca = pc/pc(%m)+pc/ca(multi)+pc/ca(multi-2gr):2+group(rctrl_switch) |
108 | diff -urN xc.orig/programs/xkbcomp/symbols/us xc/programs/xkbcomp/symbols/us |
109 | --- xc.orig/programs/xkbcomp/symbols/us 2004-09-02 03:48:49.000000000 -0700 |
110 | +++ xc/programs/xkbcomp/symbols/us 2004-09-02 11:45:52.000000000 -0700 |
111 | @@ -321,6 +321,108 @@ |
112 | modifier_map Mod4 { Super_L, Super_R }; |
113 | }; |
114 | |
115 | +// definition for Sun Type 6 USB |
116 | +xkb_symbols "sun_type6_usb" { |
117 | + include "us(basic)" |
118 | + |
119 | + key <RTSH> { [ Shift_R ] }; |
120 | + key <LALT> { [ Alt_L ] }; |
121 | + key <RCTL> { [ Control_R ] }; |
122 | + key <RALT> { [ Alt_R ] }; |
123 | + key <LMTA> { [ Meta_L ] }; |
124 | + key <RMTA> { [ Meta_R ] }; |
125 | + key <COMP> { [ Multi_key ] }; |
126 | + |
127 | + // Begin "Function" section |
128 | + key <FK01> { [ F1 ] }; |
129 | + key <FK02> { [ F2 ] }; |
130 | + key <FK03> { [ F3 ] }; |
131 | + key <FK04> { [ F4 ] }; |
132 | + key <FK05> { [ F5 ] }; |
133 | + key <FK06> { [ F6 ] }; |
134 | + key <FK07> { [ F7 ] }; |
135 | + key <FK08> { [ F8 ] }; |
136 | + key <FK09> { [ F9 ] }; |
137 | + key <FK10> { [ F10 ] }; |
138 | + key <FK11> { [ F11 ] }; |
139 | + key <FK12> { [ F12 ] }; |
140 | + // End "Function" section |
141 | + |
142 | + // Begin "Editing" section |
143 | + key <PRSC> { |
144 | + type= "PC_SYSRQ", |
145 | + symbols[Group1]= [ Print, Execute ] |
146 | + }; |
147 | + key <SCLK> { [ Scroll_Lock ] }; |
148 | + key <PAUS> { |
149 | + type= "PC_BREAK", |
150 | + symbols[Group1]= [ Pause, Break ] |
151 | + }; |
152 | + key <INS> { [ Insert ] }; |
153 | + key <HOME> { [ Home ] }; |
154 | + key <PGUP> { [ Prior ] }; |
155 | + key <DELE> { [ Delete ] }; |
156 | + key <END> { [ End ] }; |
157 | + key <PGDN> { [ Next ] }; |
158 | + |
159 | + key <UP> { [ Up ] }; |
160 | + key <LEFT> { [ Left ] }; |
161 | + key <DOWN> { [ Down ] }; |
162 | + key <RGHT> { [ Right ] }; |
163 | + |
164 | + // End "Editing" section, begin "Keypad" |
165 | + key <NMLK> { [ Num_Lock, Pointer_EnableKeys ] }; |
166 | + key <KPDV> { [ KP_Divide ] }; |
167 | + key <KPMU> { [ KP_Multiply ] }; |
168 | + key <KPSU> { [ KP_Subtract ] }; |
169 | + |
170 | + key <KP7> { [ KP_Home, KP_7 ] }; |
171 | + key <KP8> { [ KP_Up, KP_8 ] }; |
172 | + key <KP9> { [ KP_Prior, KP_9 ] }; |
173 | + key <KPAD> { [ KP_Add ] }; |
174 | + |
175 | + key <KP4> { [ KP_Left, KP_4 ] }; |
176 | + key <KP5> { [ KP_Begin, KP_5 ] }; |
177 | + key <KP6> { [ KP_Right, KP_6 ] }; |
178 | + |
179 | + key <KP1> { [ KP_End, KP_1 ] }; |
180 | + key <KP2> { [ KP_Down, KP_2 ] }; |
181 | + key <KP3> { [ KP_Next, KP_3 ] }; |
182 | + key <KPEN> { [ KP_Enter ] }; |
183 | + |
184 | + key <KP0> { [ KP_Insert, KP_0 ] }; |
185 | + key <KPDL> { [ KP_Delete, KP_Decimal ] }; |
186 | + // End "Keypad" section |
187 | + |
188 | + key <MUTE> { [ SunAudioMute, SunVideoDegauss ] }; |
189 | + key <VOL-> { [ SunAudioLowerVolume,SunVideoLowerBrightness ] }; |
190 | + key <VOL+> { [ SunAudioRaiseVolume,SunVideoRaiseBrightness ] }; |
191 | + key <POWR> { [ SunPowerSwitch, SunPowerSwitchShift ] }; |
192 | + |
193 | + // from symbols/sun/us(type5) |
194 | + key <STOP> { [ Cancel ], [ F11 ] }; |
195 | + key <AGAI> { [ Redo ], [ F12 ] }; |
196 | + key <PROP> { [ SunProps ], [ F13 ] }; |
197 | + key <UNDO> { [ Undo ], [ F14 ] }; |
198 | + key <FRNT> { [ SunFront ], [ F15 ] }; |
199 | + key <COPY> { [ SunCopy ], [ F16 ] }; |
200 | + key <OPEN> { [ SunOpen ], [ F17 ] }; |
201 | + key <PAST> { [ SunPaste ], [ F18 ] }; |
202 | + key <FIND> { [ Find ], [ F19 ] }; |
203 | + key <CUT> { [ SunCut ], [ F20 ] }; |
204 | + |
205 | + key <HELP> { [ Help ] }; |
206 | + |
207 | + // begin modifier mappings |
208 | +// XXX should Shift_L be here too? |
209 | + modifier_map Shift { Shift_R }; |
210 | + modifier_map Mod1 { Alt_L, Alt_R }; |
211 | + modifier_map Mod2 { Num_Lock }; |
212 | + modifier_map Mod3 { Multi_key }; |
213 | + modifier_map Mod4 { Meta_L, Meta_R }; |
214 | + modifier_map Mod5 { Scroll_Lock }; |
215 | +}; |
216 | + |
217 | // definition of Euro-style, Right "logo" key == [Mode_switch, Multi_key] |
218 | xkb_symbols "pc104euro" { |
219 | include "us(pc104)" |