--- xf86Events.c.orig	Thu Aug  3 11:29:17 2000
+++ xf86Events.c	Thu Aug  3 18:16:09 2000
@@ -374,6 +374,17 @@
   if (xf86Info.scanPrefix == 0) {
 
     switch (scanCode) {
+      /* NE: additions for Sun Type 6 USB keyboard
+         remap function keys that would otherwise be colliding with
+         remapped Prefix0 codes further down (like Insert, in the next 
+         big switch)
+      */
+    case 0x5d:         scanCode = 0xD7;          break;  /* AGAI, SunAgain  */ 
+    case 0x5e:         scanCode = 0xD8;          break;  /* PROP, SunProps  */ 
+    case 0x5f:         scanCode = 0xD9;          break;  /* UNDO, SunUndo   */ 
+    case 0x62:         scanCode = 0xDA;          break;  /* FRNT, SunFront  */ 
+    case 0x64:         scanCode = 0xDC;          break;  /* OPEN, SunOpen   */ 
+    case 0x65:         scanCode = 0xDD;          break;  /* PAST, SunPaste  */ 
       
 #ifndef PC98
     case KEY_Prefix0:
@@ -428,6 +439,20 @@
     case KEY_F6:          scanCode = KEY_F16;       break;
     case KEY_F7:          scanCode = KEY_F17;       break;
     case KEY_KP_Plus:     scanCode = KEY_KP_DEC;    break;
+      /* NE: again for Type 6. Map prefixed scancodes to keycodes 
+         xkb/keycodes/xfree86(type6) -10                          */
+    case 0x68:            scanCode = 0xD6;          break;  /* SunStop */ 
+    case 0x78:            scanCode = 0xDB;          break;  /* SunCopy */ 
+    case 0x65:            scanCode = 0xDE;          break;  /* SunFind */ 
+    case 0x3c:            scanCode = 0xDF;          break;  /* SunCut  */ 
+    case 0x62:            scanCode = 0xE0;          break;  /* SunHelp */ 
+      /* NE: these are only -8 (GLYPH_OFFSET)  */
+    case 0x26:            scanCode =  157;          break;  /* SunMute */ 
+    case 0x25:            scanCode =  151;          break;  /* VOL- */ 
+    case 0x1e:            scanCode =  150;          break;  /* VOL+ */ 
+    case 0x5e:            scanCode =  152;          break;  /* SunPower */ 
+   
+
       /*
        * Ignore virtual shifts (E0 2A, E0 AA, E0 36, E0 B6)
        */
