This is a patch to add sun type6 keyboard support. It comed from the patches
debian puts on the 4.3.0 source before building the packages. I think this
type of info should be passed to the XFree86 core so that everyone who uses
XFree86 can take advantage of this.
Warren Turkal
--- xc/programs/xkbcomp/keycodes/sun~ 2002-10-31 02:42:01.000000000 -0500
+++ xc/programs/xkbcomp/keycodes/sun 2002-10-31 02:45:50.000000000 -0500
@@ -301,6 +301,152 @@
indicator 1 = "Num Lock";
};
+xkb_keycodes "type6" {
+ minimum= 8;
+ maximum= 255;
+
+ <TLDE> = 49;
+ <AE01> = 10;
+ <AE02> = 11;
+ <AE03> = 12;
+ <AE04> = 13;
+ <AE05> = 14;
+ <AE06> = 15;
+ <AE07> = 16;
+ <AE08> = 17;
+ <AE09> = 18;
+ <AE10> = 19;
+ <AE11> = 20;
+ <AE12> = 21;
+ <BKSP> = 22;
+
+ <TAB> = 23;
+ <AD01> = 24;
+ <AD02> = 25;
+ <AD03> = 26;
+ <AD04> = 27;
+ <AD05> = 28;
+ <AD06> = 29;
+ <AD07> = 30;
+ <AD08> = 31;
+ <AD09> = 32;
+ <AD10> = 33;
+ <AD11> = 34;
+ <AD12> = 35;
+ <RTRN> = 36;
+
+ <CAPS> = 66;
+ <AC01> = 38;
+ <AC02> = 39;
+ <AC03> = 40;
+ <AC04> = 41;
+ <AC05> = 42;
+ <AC06> = 43;
+ <AC07> = 44;
+ <AC08> = 45;
+ <AC09> = 46;
+ <AC10> = 47;
+ <AC11> = 48;
+
+ <LFSH> = 50;
+ <AB01> = 52;
+ <AB02> = 53;
+ <AB03> = 54;
+ <AB04> = 55;
+ <AB05> = 56;
+ <AB06> = 57;
+ <AB07> = 58;
+ <AB08> = 59;
+ <AB09> = 60;
+ <AB10> = 61;
+ <RTSH> = 62;
+ <BKSL> = 51;
+
+ <LALT> = 64;
+ <LCTL> = 37;
+ <SPCE> = 65;
+ <ALGR> = 113;
+ alias <RALT> = <ALGR>;
+
+ <LMTA> = 115;
+ <RMTA> = 116;
+ <COMP> = 117;
+
+ <ESC> = 9;
+ <FK01> = 67;
+ <FK02> = 68;
+ <FK03> = 69;
+ <FK04> = 70;
+ <FK05> = 71;
+ <FK06> = 72;
+ <FK07> = 73;
+ <FK08> = 74;
+ <FK09> = 75;
+ <FK10> = 76;
+ <FK11> = 95;
+ <FK12> = 96;
+
+ <PRSC> = 111;
+ <SCLK> = 78;
+ <PAUS> = 110;
+
+ <INS> = 106;
+ <HOME> = 97;
+ <PGUP> = 99;
+ <DELE> = 107;
+ <END> = 103;
+ <PGDN> = 105;
+
+ <UP> = 98;
+ <LEFT> = 100;
+ <DOWN> = 104;
+ <RGHT> = 102;
+
+ <NMLK> = 77;
+ <KPDV> = 112;
+ <KPMU> = 63;
+ <KPSU> = 82;
+
+ <KP7> = 79;
+ <KP8> = 80;
+ <KP9> = 81;
+ <KPAD> = 86;
+
+ <KP4> = 83;
+ <KP5> = 84;
+ <KP6> = 85;
+
+ <KP1> = 87;
+ <KP2> = 88;
+ <KP3> = 89;
+ <KPEN> = 108;
+
+ <KP0> = 90;
+ <KPDL> = 91;
+
+ <STOP> = 222;
+ <AGAI> = 223;
+ <PROP> = 224;
+ <UNDO> = 225;
+ <FRNT> = 226;
+ <COPY> = 227;
+ <OPEN> = 228;
+ <PAST> = 229;
+ <FIND> = 230;
+ <CUT> = 231;
+
+ <HELP> = 232;
+
+ <MUTE> = 165;
+ <VOL-> = 159;
+ <VOL+> = 158;
+ <POWR> = 160;
+
+ indicator 1 = "Caps Lock";
+ indicator 2 = "Num Lock";
+ indicator 3 = "Scroll Lock";
+};
+
xkb_keycodes "type4_euro" {
include "sun(type4)"
<LSGT> = 131;
@@ -311,6 +457,11 @@
<LSGT> = 131;
};
+xkb_keycodes "type6_euro" {
+ include "sun(type6)"
+ <LSGT> = 94;
+};
+
xkb_keycodes "type5_se" {
minimum= 8;
--- xc/programs/xkbcomp/symbols/sun/us~ 2002-10-31 02:53:25.000000000 -0500
+++ xc/programs/xkbcomp/symbols/sun/us 2002-10-31 03:10:18.000000000 -0500
@@ -34,8 +34,7 @@
key <TLDE> { [ grave, asciitilde ], [ acute ] };
key <AC11> { [ apostrophe, quotedbl ], [ acute ] };
- key <RTSH> { [ Shift_R ] };
-
+ key <RTSH> { [ Shift_R ] };
key <LALT> { [ Alt_L ] };
key <ALGR> { [ Mode_switch ] };
key <LMTA> { [ Meta_L ] };
@@ -95,19 +94,19 @@
key <KP1> { [ KP_End, KP_1 ], [ F33 ] };
key <KP2> { [ KP_Down, KP_2 ], [ F34 ] };
key <KP3> { [ KP_Next, KP_3 ], [ F35 ] };
- key <KPEN> { [ KP_Enter ] };
+ key <KPEN> { [ KP_Enter ] };
key <KP0> { [ KP_Insert, KP_0 ] };
key <KPDL> { [ KP_Delete, KP_Decimal ] };
// End "Keypad" section
// begin modifier mappings
- modifier_map Shift { Shift_R };
- modifier_map Mod1 { Meta_L, Meta_R };
- modifier_map Mod2 { Alt_L };
- modifier_map Mod3 { Mode_switch };
- modifier_map Mod4 { Num_Lock };
- modifier_map Mod5 { F13, F18, F20 };
+ modifier_map Shift { Shift_R };
+ modifier_map Mod1 { Meta_L, Meta_R };
+ modifier_map Mod2 { Alt_L };
+ modifier_map Mod3 { Mode_switch };
+ modifier_map Mod4 { Num_Lock };
+ modifier_map Mod5 { F13, F18, F20 };
};
hidden partial function_keys xkb_symbols "broken_openlook_map" {
@@ -137,7 +136,7 @@
key <TLDE> { [ grave, asciitilde ], [ acute ] };
key <AC11> { [ apostrophe, quotedbl ], [ acute ] };
- key <RTSH> { [ Shift_R ] };
+ key <RTSH> { [ Shift_R ] };
key <LALT> { [ Alt_L ] };
key <ALGR> { [ Mode_switch ] };
@@ -157,36 +156,36 @@
key <FK08> { [ F8 ] };
key <FK09> { [ F9 ] };
key <FK10> { [ F10 ] };
- key <FK11> { [ F11 ], [ SunF36 ] };
- key <FK12> { [ F12 ], [ SunF37 ] };
- key <STOP> { [ Cancel ], [ F11 ] };
- key <AGAI> { [Redo ], [ F12 ] };
- key <PROP> { [ SunProps ], [ F13 ] };
- key <UNDO> { [ Undo ], [ F14 ] };
- key <FRNT> { [ SunFront ], [ F15 ] };
- key <COPY> { [ SunCopy ], [ F16 ] };
- key <OPEN> { [ SunOpen ], [ F17 ] };
- key <PAST> { [ SunPaste ], [ F18 ] };
- key <FIND> { [ Find ], [ F19 ] };
- key <CUT> { [ SunCut ], [ F20 ] };
+ key <FK11> { [ F11 ], [ SunF36 ] };
+ key <FK12> { [ F12 ], [ SunF37 ] };
+ key <STOP> { [ Cancel ], [ F11 ] };
+ key <AGAI> { [ Redo ], [ F12 ] };
+ key <PROP> { [ SunProps ], [ F13 ] };
+ key <UNDO> { [ Undo ], [ F14 ] };
+ key <FRNT> { [ SunFront ], [ F15 ] };
+ key <COPY> { [ SunCopy ], [ F16 ] };
+ key <OPEN> { [ SunOpen ], [ F17 ] };
+ key <PAST> { [ SunPaste ], [ F18 ] };
+ key <FIND> { [ Find ], [ F19 ] };
+ key <CUT> { [ SunCut ], [ F20 ] };
// End "Function" section
// Begin "Editing" section
- key <PRSC> { [ Print ], [ Sys_Req, SunSys_Req ] };
- key <SCLK> { [ Scroll_Lock ] };
- key <PAUS> { [ Pause ], [ Break ] };
- key <LEFT> { [ Left ] };
- key <RGHT> { [ Right ] };
- key <UP> { [ Up ] };
- key <DOWN> { [ Down ] };
-
- key <DELE> { [ Delete ] };
- key <INS> { [ Insert ] };
- key <PGUP> { [ Prior ] };
- key <PGDN> { [ Next ] };
- key <HOME> { [ Home ] };
- key <END> { [ End ] };
- key <HELP> { [ Help ] };
+ key <PRSC> { [ Print ], [ Sys_Req, SunSys_Req ] };
+ key <SCLK> { [ Scroll_Lock ] };
+ key <PAUS> { [ Pause ], [ Break ] };
+ key <LEFT> { [ Left ] };
+ key <RGHT> { [ Right ] };
+ key <UP> { [ Up ] };
+ key <DOWN> { [ Down ] };
+
+ key <DELE> { [ Delete ] };
+ key <INS> { [ Insert ] };
+ key <PGUP> { [ Prior ] };
+ key <PGDN> { [ Next ] };
+ key <HOME> { [ Home ] };
+ key <END> { [ End ] };
+ key <HELP> { [ Help ] };
// End "Editing" section, begin "Keypad"
key <NMLK> { [ Num_Lock ] };
@@ -210,7 +209,7 @@
key <KP0> { [ KP_Insert, KP_0 ] };
key <KPDL> { [ KP_Delete, KP_Decimal ] };
- // End "Keypad" section,
+ // End "Keypad" section,
// begin "four keys up on the right"
key <MUTE> { [ SunAudioMute, SunVideoDegauss ] };
@@ -219,12 +218,12 @@
key <POWR> { [ SunPowerSwitch, SunPowerSwitchShift ] };
// begin modifier mappings
- modifier_map Shift { Shift_R };
- modifier_map Mod1 { Alt_L };
- modifier_map Mod2 { Num_Lock };
- modifier_map Mod3 { Mode_switch };
- modifier_map Mod4 { Meta_L, Meta_R};
- modifier_map Mod5 { Scroll_Lock };
+ modifier_map Shift { Shift_R };
+ modifier_map Mod1 { Alt_L };
+ modifier_map Mod2 { Num_Lock };
+ modifier_map Mod3 { Mode_switch };
+ modifier_map Mod4 { Meta_L, Meta_R};
+ modifier_map Mod5 { Scroll_Lock };
};
// US/ASCII layout for a Type 5 Sun keyboard w/ broken OpenLook keymap
@@ -233,3 +232,107 @@
include "sun/us(broken_openlook_map)"
};
+// US/ASCII layout for a Type 6 Sun keyboard
+xkb_symbols "sun6" {
+ augment "us(basic)"
+
+ key <RTSH> { [ Shift_R ] };
+ key <LALT> { [ Alt_L ] };
+ key <RCTL> { [ Control_R ] };
+ key <RALT> { [ Alt_R ] };
+ key <LMTA> { [ Meta_L ] };
+ key <RMTA> { [ Meta_R ] };
+ key <COMP> { [ Multi_key ] };
+
+ // Begin "Function" section
+ key <FK01> { [ F1 ] };
+ key <FK02> { [ F2 ] };
+ key <FK03> { [ F3 ] };
+ key <FK04> { [ F4 ] };
+ key <FK05> { [ F5 ] };
+ key <FK06> { [ F6 ] };
+ key <FK07> { [ F7 ] };
+ key <FK08> { [ F8 ] };
+ key <FK09> { [ F9 ] };
+ key <FK10> { [ F10 ] };
+ key <FK11> { [ F11 ] };
+ key <FK12> { [ F12 ] };
+ // End "Function" section
+
+ // Begin "Editing" section
+ key <PRSC> {
+ type= "PC_SYSRQ",
+ symbols[Group1]= [ Print, Execute ]
+ };
+ key <SCLK> { [ Scroll_Lock ] };
+ key <PAUS> {
+ type= "PC_BREAK",
+ symbols[Group1]= [ Pause, Break ]
+ };
+ key <INS> { [ Insert ] };
+ key <HOME> { [ Home ] };
+ key <PGUP> { [ Prior ] };
+ key <DELE> { [ Delete ] };
+ key <END> { [ End ] };
+ key <PGDN> { [ Next ] };
+
+ key <UP> { [ Up ] };
+ key <LEFT> { [ Left ] };
+ key <DOWN> { [ Down ] };
+ key <RGHT> { [ Right ] };
+
+ // End "Editing" section, begin "Keypad"
+ key <NMLK> { [ Num_Lock, Pointer_EnableKeys ] };
+ key <KPDV> { [ KP_Divide ] };
+ key <KPMU> { [ KP_Multiply ] };
+ key <KPSU> { [ KP_Subtract ] };
+
+ key <KP7> { [ KP_Home, KP_7 ] };
+ key <KP8> { [ KP_Up, KP_8 ] };
+ key <KP9> { [ KP_Prior, KP_9 ] };
+ key <KPAD> { [ KP_Add ] };
+
+ key <KP4> { [ KP_Left, KP_4 ] };
+ key <KP5> { [ KP_Begin, KP_5 ] };
+ key <KP6> { [ KP_Right, KP_6 ] };
+
+ key <KP1> { [ KP_End, KP_1 ] };
+ key <KP2> { [ KP_Down, KP_2 ] };
+ key <KP3> { [ KP_Next, KP_3 ] };
+ key <KPEN> { [ KP_Enter ] };
+
+ key <KP0> { [ KP_Insert, KP_0 ] };
+ key <KPDL> { [ KP_Delete, KP_Decimal ] };
+ // End "Keypad" section
+
+ key <MUTE> { [ SunAudioMute, SunVideoDegauss ] };
+ key <VOL-> { [ SunAudioLowerVolume,SunVideoLowerBrightness ] };
+ key <VOL+> { [ SunAudioRaiseVolume,SunVideoRaiseBrightness ] };
+ key <POWR> { [ SunPowerSwitch, SunPowerSwitchShift ] };
+
+ // from symbols/sun/us(type5)
+ key <STOP> { [ Cancel ], [ F11 ] };
+ key <AGAI> { [ Redo ], [ F12 ] };
+ key <PROP> { [ SunProps ], [ F13 ] };
+ key <UNDO> { [ Undo ], [ F14 ] };
+ key <FRNT> { [ SunFront ], [ F15 ] };
+ key <COPY> { [ SunCopy ], [ F16 ] };
+ key <OPEN> { [ SunOpen ], [ F17 ] };
+ key <PAST> { [ SunPaste ], [ F18 ] };
+ key <FIND> { [ Find ], [ F19 ] };
+ key <CUT> { [ SunCut ], [ F20 ] };
+ key <HELP> { [ Help ] };
+
+ // begin modifier mappings
+ modifier_map Shift { Shift_R };
+ modifier_map Mod1 { Meta_L, Meta_R };
+ modifier_map Mod2 { Alt_L };
+ modifier_map Mod3 { Mode_switch };
+ modifier_map Mod4 { Num_Lock };
+};
+
+// US/ASCII layout for a Type 6 Sun keyboard w/ broken OpenLook keymap
+xkb_symbols "sun6ol" {
+ override "sun/us(sun6)"
+ include "sun/us(broken_openlook_map)"
+};
--- xc/programs/xkbcomp/rules/sun~ 2002-10-31 02:47:31.000000000 -0500
+++ xc/programs/xkbcomp/rules/sun 2002-10-31 03:14:49.000000000 -0500
@@ -1,21 +1,27 @@
// $XFree86: xc/programs/xkbcomp/rules/sun,v 3.1 2000/05/18 23:21:43 dawes
Exp $
! model = keycodes geometry
- type4 = sun(type4) sun(type4)
- type5 = sun(type5) sun
+ type4 = sun(type4) sun(type4)
+ type5 = sun(type5) sun(type5)
type5_euro = sun(type5_euro) sun(type5euro)
type5_unix = sun(type5) sun(type5unix)
+ type6 = sun(type6) sun(type5) // no type6
yet
+ type6_euro = sun(type6_euro) sun(type5)
! model layout = symbols
type4 us = sun/us(sun4)
type5 us = sun/us(sun5)
type5_unix us = sun/us(sun5)
+ type6 us = sun/us(sun6)
type4 en_US = sun/us(sun4)+iso9995-3(basic)
type5 en_US = sun/us(sun5)+iso9995-3(basic)
type5_unix en_US = sun/us(sun5)+iso9995-3(basic)
+ type6 en_US = sun/us(sun6)+iso9995-3(basic)
type4 * = sun/us(sun4)+%l%(v)
type5 * = sun/us(sun5)+%l%(v)
type5_euro * = sun/us(sun5)+%l%(v)
+ type6 * = sun/us(sun6)+%l%(v)
+ type6_euro * = sun/us(sun6)+%l%(v)
! model layout = compat types
* * = complete complete
--- xc/programs/xkbcomp/rules/sun.lst~ 2002-10-31 02:51:07.000000000 -0500
+++ xc/programs/xkbcomp/rules/sun.lst 2002-10-31 03:15:09.000000000 -0500
@@ -5,6 +5,8 @@
type5 Sun Type5
type5_euro Sun Type5 European
type5_unix Sun Type5 Unix
+ type6 Sun Type6
+ type6 Sun Type6 European
! layout
be Belgian
--
Treasurer, GOLUM, Inc.
http://www.golum.org
_______________________________________________
Devel mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/devel