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

Reply via email to