This is the mail archive of the cygwin-xfree@sources.redhat.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Japanese keyboard hack


Hi,

I made small patches for the xc tree can be extracted from
X401-x.tar.bz2 and the xf_dx tree from xf_dx_2.0.tar.bz2 to support
Japanese keyboard on XWin.exe. It seems working well on my computer but
you must not trust it completely since it is really a quick hack. One
important feature missing is it does'n t work with English (and any
other type of) keyboard. I know it is better to support both or more
type of keyboard by just one executable but I don't implement the
feature for now since I don't have any good idea of how to detect the
keyboard type from inside of the X server. Maybe environmental variables
are useful. Anyway, I am satisfied with a result of my small work.

Regards,
----------
Hajime MURAO, Kobe University
A professional? No, I am not professional. I am an amateur. "Amateur"
comes from the latin "amare":to love. If you do not love what you do,
you do not deserve to do it. --- Orson Welles 

== (1) Patch for the xf_dx tree =======================================

Common subdirectories: xf_dx.orig/Debug and xf_dx/Debug
Common subdirectories: xf_dx.orig/Release and xf_dx/Release
diff -x *.plg -x *.ncb -x *.opt -x *.dsp -x *.def -x *.dsw -c xf_dx.orig/d3dcalls.c xf_dx/d3dcalls.c
*** xf_dx.orig/d3dcalls.c	Wed Jul 14 13:07:28 1999
--- xf_dx/d3dcalls.c	Wed Sep 27 00:22:49 2000
***************
*** 167,179 ****
      {
          d3dappi.TextureFormat[d3dappi.NumTextureFormats].bPalettized = FALSE;
          d3dappi.TextureFormat[d3dappi.NumTextureFormats].IndexBPP = 0;
!         for (r = 0, m = lpDDSD->ddpfPixelFormat.u2.dwRBitMask; !(m & 1);
                                                                 r++, m >>= 1);
          for (r = 0; m & 1; r++, m >>= 1);
!         for (g = 0, m = lpDDSD->ddpfPixelFormat.u3.dwGBitMask; !(m & 1);
                                                                 g++, m >>= 1);
          for (g = 0; m & 1; g++, m >>= 1);
!         for (b = 0, m = lpDDSD->ddpfPixelFormat.u4.dwBBitMask; !(m & 1);
                                                                 b++, m >>= 1);
          for (b = 0; m & 1; b++, m >>= 1);
          d3dappi.TextureFormat[d3dappi.NumTextureFormats].RedBPP = r;
--- 167,179 ----
      {
          d3dappi.TextureFormat[d3dappi.NumTextureFormats].bPalettized = FALSE;
          d3dappi.TextureFormat[d3dappi.NumTextureFormats].IndexBPP = 0;
!         for (r = 0, m = lpDDSD->ddpfPixelFormat.dwRBitMask; !(m & 1);
                                                                 r++, m >>= 1);
          for (r = 0; m & 1; r++, m >>= 1);
!         for (g = 0, m = lpDDSD->ddpfPixelFormat.dwGBitMask; !(m & 1);
                                                                 g++, m >>= 1);
          for (g = 0; m & 1; g++, m >>= 1);
!         for (b = 0, m = lpDDSD->ddpfPixelFormat.dwBBitMask; !(m & 1);
                                                                 b++, m >>= 1);
          for (b = 0; m & 1; b++, m >>= 1);
          d3dappi.TextureFormat[d3dappi.NumTextureFormats].RedBPP = r;
diff -x *.plg -x *.ncb -x *.opt -x *.dsp -x *.def -x *.dsw -c xf_dx.orig/misc.c xf_dx/misc.c
*** xf_dx.orig/misc.c	Tue Jul 15 06:00:00 1997
--- xf_dx/misc.c	Wed Sep 27 00:21:02 2000
***************
*** 511,517 ****
  	 * is stacked, so do it unless we are returning from a fullscreen
  	 * mode.
  	 */
! 	SendMessage(hwnd, WM_SIZE, SIZE_RESTORED, w + h << 16);
  	GetWindowRect(hwnd, &rc);
  	SetWindowPos(hwnd, NULL, 0, 0, rc.right-rc.left,
          	     rc.bottom-rc.top,
--- 511,517 ----
  	 * is stacked, so do it unless we are returning from a fullscreen
  	 * mode.
  	 */
! 	SendMessage(hwnd, WM_SIZE, SIZE_RESTORED, w + (h << 16));
  	GetWindowRect(hwnd, &rc);
  	SetWindowPos(hwnd, NULL, 0, 0, rc.right-rc.left,
          	     rc.bottom-rc.top,
diff -x *.plg -x *.ncb -x *.opt -x *.dsp -x *.def -x *.dsw -c xf_dx.orig/texture.c xf_dx/texture.c
*** xf_dx.orig/texture.c	Wed Jul 14 13:07:28 1999
--- xf_dx/texture.c	Wed Sep 27 00:22:49 2000
***************
*** 431,459 ****
          /*
           * Determine the red, green and blue masks' shift and scale.
           */
!         for (s = 0, m = format.ddpfPixelFormat.u2.dwRBitMask; !(m & 1);
                                                                 s++, m >>= 1);
          red_shift = s;
!         red_scale = 255 / (format.ddpfPixelFormat.u2.dwRBitMask >> s);
!         for (s = 0, m = format.ddpfPixelFormat.u3.dwGBitMask; !(m & 1);
                                                                 s++, m >>= 1);
          green_shift = s;
!         green_scale = 255 / (format.ddpfPixelFormat.u3.dwGBitMask >> s);
!         for (s = 0, m = format.ddpfPixelFormat.u4.dwBBitMask; !(m & 1);
                                                                 s++, m >>= 1);
          blue_shift = s;
!         blue_scale = 255 / (format.ddpfPixelFormat.u4.dwBBitMask >> s);
          /*
           * Each RGB bit count requires different pointers
           */
!         switch (format.ddpfPixelFormat.u1.dwRGBBitCount) {
              case 32 :
                  for (j = 0; j < (int)dwHeight; j++) {
                      /*
                       * Point to next row in texture surface
                       */
                      lpLP = (unsigned long*)(((char*)ddsd.lpSurface) +
!                                                             ddsd.u1.lPitch * j);
                      for (i = 0; i < (int)dwWidth; i++) {
                          int r, g, b;
                          /*
--- 431,459 ----
          /*
           * Determine the red, green and blue masks' shift and scale.
           */
!         for (s = 0, m = format.ddpfPixelFormat.dwRBitMask; !(m & 1);
                                                                 s++, m >>= 1);
          red_shift = s;
!         red_scale = 255 / (format.ddpfPixelFormat.dwRBitMask >> s);
!         for (s = 0, m = format.ddpfPixelFormat.dwGBitMask; !(m & 1);
                                                                 s++, m >>= 1);
          green_shift = s;
!         green_scale = 255 / (format.ddpfPixelFormat.dwGBitMask >> s);
!         for (s = 0, m = format.ddpfPixelFormat.dwBBitMask; !(m & 1);
                                                                 s++, m >>= 1);
          blue_shift = s;
!         blue_scale = 255 / (format.ddpfPixelFormat.dwBBitMask >> s);
          /*
           * Each RGB bit count requires different pointers
           */
!         switch (format.ddpfPixelFormat.dwRGBBitCount) {
              case 32 :
                  for (j = 0; j < (int)dwHeight; j++) {
                      /*
                       * Point to next row in texture surface
                       */
                      lpLP = (unsigned long*)(((char*)ddsd.lpSurface) +
!                                                             ddsd.lPitch * j);
                      for (i = 0; i < (int)dwWidth; i++) {
                          int r, g, b;
                          /*
***************
*** 471,477 ****
              case 16 :
                  for (j = 0; j < (int)dwHeight; j++) {
                      lpSP = (unsigned short*)(((char*)ddsd.lpSurface) +
!                                                             ddsd.u1.lPitch * j);
                      for (i = 0; i < (int)dwWidth; i++) {
                          int r, g, b;
                          r = getc(fp) / red_scale;
--- 471,477 ----
              case 16 :
                  for (j = 0; j < (int)dwHeight; j++) {
                      lpSP = (unsigned short*)(((char*)ddsd.lpSurface) +
!                                                             ddsd.lPitch * j);
                      for (i = 0; i < (int)dwWidth; i++) {
                          int r, g, b;
                          r = getc(fp) / red_scale;
***************
*** 486,492 ****
              case 8:
                  for (j = 0; j < (int)dwHeight; j++) {
                      lpCP = (unsigned char*)(((char*)ddsd.lpSurface) +
!                                                             ddsd.u1.lPitch * j);
                      for (i = 0; i < (int)dwWidth; i++) {
                          int r, g, b;
                          r = getc(fp) / red_scale;
--- 486,492 ----
              case 8:
                  for (j = 0; j < (int)dwHeight; j++) {
                      lpCP = (unsigned char*)(((char*)ddsd.lpSurface) +
!                                                             ddsd.lPitch * j);
                      for (i = 0; i < (int)dwWidth; i++) {
                          int r, g, b;
                          r = getc(fp) / red_scale;
***************
*** 524,530 ****
          /*
           * Point to next row in surface
           */
!         lpC = ((char*)ddsd.lpSurface) + ddsd.u1.lPitch * j;
          for (i = 0; i < (int)dwWidth; i++) {
              int r, g, b, k;
              /*
--- 524,530 ----
          /*
           * Point to next row in surface
           */
!         lpC = ((char*)ddsd.lpSurface) + ddsd.lPitch * j;
          for (i = 0; i < (int)dwWidth; i++) {
              int r, g, b, k;
              /*
diff -x *.plg -x *.ncb -x *.opt -x *.dsp -x *.def -x *.dsw -c xf_dx.orig/xf_dx.c xf_dx/xf_dx.c
*** xf_dx.orig/xf_dx.c	Thu Jun  8 09:36:15 2000
--- xf_dx/xf_dx.c	Tue Sep 26 23:38:59 2000
***************
*** 821,830 ****
  
  			for (i = 0; i < (int)dwElements; i++) {
  				if (od[i].dwData & 0x80) { /* Key pressed */
! 					GenerateInputEvent (KeyPress, 0, 0, od[i].dwOfs & 0x7f) ;
  				}
  				else {
! 					GenerateInputEvent (KeyRelease, 0, 0, od[i].dwOfs & 0x7f) ;
  				}
  			}
  		}
--- 821,830 ----
  
  			for (i = 0; i < (int)dwElements; i++) {
  				if (od[i].dwData & 0x80) { /* Key pressed */
! 					GenerateInputEvent (KeyPress, 0, 0, od[i].dwOfs) ;
  				}
  				else {
! 					GenerateInputEvent (KeyRelease, 0, 0, od[i].dwOfs) ;
  				}
  			}
  		}
diff -x *.plg -x *.ncb -x *.opt -x *.dsp -x *.def -x *.dsw -c xf_dx.orig/xf_dx.h xf_dx/xf_dx.h
*** xf_dx.orig/xf_dx.h	Thu Jun  8 09:51:03 2000
--- xf_dx/xf_dx.h	Wed Sep 27 00:26:55 2000
***************
*** 27,31 ****
  #include <ctype.h>
  #include <stdlib.h>
  #include <stdarg.h>
! #include "ddutil.h"
  #include "resource.h"
--- 27,31 ----
  #include <ctype.h>
  #include <stdlib.h>
  #include <stdarg.h>
! /* #include "ddutil.h" */
  #include "resource.h"

== (2) Patched for the xc tree =========================================

*** programs/Xserver/hw/xwin/InitInput.c.orig	Wed Sep 27 02:06:42 2000
--- programs/Xserver/hw/xwin/InitInput.c	Wed Sep 27 02:06:51 2000
***************
*** 131,137 ****
  	pKeySyms->map        = pMap;
  	pKeySyms->mapWidth   = GLYPHS_PER_KEY;
  	pKeySyms->minKeyCode = MIN_KEYCODE;
! 	pKeySyms->maxKeyCode = MAX_STD_KEYCODE;
  }
  
  static int
--- 131,137 ----
  	pKeySyms->map        = pMap;
  	pKeySyms->mapWidth   = GLYPHS_PER_KEY;
  	pKeySyms->minKeyCode = MIN_KEYCODE;
! 	pKeySyms->maxKeyCode = MAX_KEYCODE;
  }
  
  static int
*** programs/Xserver/hw/xwin/winkeymap.h.orig	Wed Sep 27 00:04:46 2000
--- programs/Xserver/hw/xwin/winkeymap.h	Wed Sep 27 02:16:33 2000
***************
*** 6,26 ****
   */
  /* $TOG: xf86Keymap.h /main/15 1997/07/19 10:02:01 kaleb $ */
  
  static KeySym map[NUM_KEYCODES * GLYPHS_PER_KEY] = { 
      /* 0x00 */  NoSymbol,       NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x01 */  XK_Escape,      NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x02 */  XK_1,           XK_exclam,	NoSymbol,	NoSymbol,
!     /* 0x03 */  XK_2,           XK_at,		NoSymbol,	NoSymbol,
      /* 0x04 */  XK_3,           XK_numbersign,	NoSymbol,	NoSymbol,
      /* 0x05 */  XK_4,           XK_dollar,	NoSymbol,	NoSymbol,
      /* 0x06 */  XK_5,           XK_percent,	NoSymbol,	NoSymbol,
!     /* 0x07 */  XK_6,           XK_asciicircum,	NoSymbol,	NoSymbol,
!     /* 0x08 */  XK_7,           XK_ampersand,	NoSymbol,	NoSymbol,
!     /* 0x09 */  XK_8,           XK_asterisk,	NoSymbol,	NoSymbol,
!     /* 0x0a */  XK_9,           XK_parenleft,	NoSymbol,	NoSymbol,
!     /* 0x0b */  XK_0,           XK_parenright,	NoSymbol,	NoSymbol,
!     /* 0x0c */  XK_minus,       XK_underscore,	NoSymbol,	NoSymbol,
!     /* 0x0d */  XK_equal,       XK_plus,	NoSymbol,	NoSymbol,
      /* 0x0e */  XK_BackSpace,   NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x0f */  XK_Tab,         NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x10 */  XK_Q,           NoSymbol,	NoSymbol,	NoSymbol,
--- 6,28 ----
   */
  /* $TOG: xf86Keymap.h /main/15 1997/07/19 10:02:01 kaleb $ */
  
+ /* for Japanese Keyboard by Hajime Murao @ Kobe University */
+ 
  static KeySym map[NUM_KEYCODES * GLYPHS_PER_KEY] = { 
      /* 0x00 */  NoSymbol,       NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x01 */  XK_Escape,      NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x02 */  XK_1,           XK_exclam,	NoSymbol,	NoSymbol,
!     /* 0x03 */  XK_2,           XK_quotedbl,		NoSymbol,	NoSymbol,
      /* 0x04 */  XK_3,           XK_numbersign,	NoSymbol,	NoSymbol,
      /* 0x05 */  XK_4,           XK_dollar,	NoSymbol,	NoSymbol,
      /* 0x06 */  XK_5,           XK_percent,	NoSymbol,	NoSymbol,
!     /* 0x07 */  XK_6,           XK_ampersand,	NoSymbol,	NoSymbol,
!     /* 0x08 */  XK_7,           XK_quoteright,	NoSymbol,	NoSymbol,
!     /* 0x09 */  XK_8,           XK_parenleft,	NoSymbol,	NoSymbol,
!     /* 0x0a */  XK_9,           XK_parenright,	NoSymbol,	NoSymbol,
!     /* 0x0b */  XK_0,           NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x0c */  XK_minus,       XK_equal,	NoSymbol,	NoSymbol,
!     /* 0x0d */  NoSymbol,       NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x0e */  XK_BackSpace,   NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x0f */  XK_Tab,         NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x10 */  XK_Q,           NoSymbol,	NoSymbol,	NoSymbol,
***************
*** 46,54 ****
      /* 0x24 */  XK_J,           NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x25 */  XK_K,           NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x26 */  XK_L,           NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x27 */  XK_semicolon,   XK_colon,	NoSymbol,	NoSymbol,
!     /* 0x28 */  XK_quoteright,  XK_quotedbl,	NoSymbol,	NoSymbol,
!     /* 0x29 */  XK_quoteleft,	XK_asciitilde,	NoSymbol,	NoSymbol,
      /* 0x2a */  XK_Shift_L,     NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x2b */  XK_backslash,   XK_bar,		NoSymbol,	NoSymbol,
      /* 0x2c */  XK_Z,           NoSymbol,	NoSymbol,	NoSymbol,
--- 48,56 ----
      /* 0x24 */  XK_J,           NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x25 */  XK_K,           NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x26 */  XK_L,           NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x27 */  XK_semicolon,   XK_plus,	NoSymbol,	NoSymbol,
!     /* 0x28 */  NoSymbol,       NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x29 */  NoSymbol,       NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x2a */  XK_Shift_L,     NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x2b */  XK_backslash,   XK_bar,		NoSymbol,	NoSymbol,
      /* 0x2c */  XK_Z,           NoSymbol,	NoSymbol,	NoSymbol,
***************
*** 120,126 ****
      /* 0x6d */  XK_Menu,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x6e */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x6f */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x70 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x71 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x72 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x73 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
--- 122,128 ----
      /* 0x6d */  XK_Menu,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x6e */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x6f */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x70 */  XK_Hiragana,	XK_Katakana,	XK_Romaji,	NoSymbol,
      /* 0x71 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x72 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x73 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
***************
*** 129,163 ****
      /* 0x76 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x77 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x78 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x79 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x7a */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x7b */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x7c */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x7d */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x7e */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x7f */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
  
!     /* These are for ServerNumLock handling */
!     /* 0x80 */  XK_KP_7,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x81 */  XK_KP_8,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x82 */  XK_KP_9,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x83 */  XK_KP_4,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x84 */  XK_KP_5,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x85 */  XK_KP_6,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x86 */  XK_KP_1,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x87 */  XK_KP_2,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x88 */  XK_KP_3,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x89 */  XK_KP_0,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x8a */  XK_KP_Decimal,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x8b */  XK_Home,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x8c */  XK_Up,		NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x8d */  XK_Prior,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x8e */  XK_Left,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x8f */  XK_Begin,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x90 */  XK_Right,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x91 */  XK_End,		NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x92 */  XK_Down,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x93 */  XK_Next,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x94 */  XK_Insert,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x95 */  XK_Delete,	NoSymbol,	NoSymbol,	NoSymbol,
  };
--- 131,254 ----
      /* 0x76 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x77 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x78 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x79 */  XK_Henkan,	XK_Mae_Koho,	XK_Zen_Koho,	NoSymbol,
      /* 0x7a */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x7b */  XK_Muhenkan,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x7c */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x7d */  XK_backslash,	XK_bar,	NoSymbol,	NoSymbol,
      /* 0x7e */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
      /* 0x7f */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
  
!     /* 0x80 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x81 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x82 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x83 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x84 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x85 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x86 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x87 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x88 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x89 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x8a */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x8b */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x8c */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x8d */  XK_KP_Equal,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x8e */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x8f */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x90 */  XK_asciicircum,	XK_asciitilde,	NoSymbol,	NoSymbol,
!     /* 0x91 */  XK_at,	XK_quoteleft,	NoSymbol,	NoSymbol,
!     /* 0x92 */  XK_colon,	XK_asterisk,	NoSymbol,	NoSymbol,
!     /* 0x93 */  XK_backslash,   XK_underscore,	NoSymbol,	NoSymbol,
!     /* 0x94 */  XK_Zenkaku_Hankaku,	XK_Kanji,	NoSymbol,	NoSymbol,
!     /* 0x95 */  XK_Break,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x96 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x97 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x98 */  XK_asciicircum,	XK_asciitilde,	NoSymbol,	NoSymbol,
!     /* 0x99 */  XK_at,	XK_quoteleft,	NoSymbol,	NoSymbol,
!     /* 0x9a */  XK_colon,	XK_asterisk,	NoSymbol,	NoSymbol,
!     /* 0x9b */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x9c */  XK_KP_Enter,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x9d */  XK_Control_R,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x9e */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0x9f */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xa0 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xa1 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xa2 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xa3 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xa4 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xa5 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xa6 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xa7 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xa8 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xa9 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xaa */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xab */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xac */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xad */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xae */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xaf */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xb0 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xb1 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xb2 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xb3 */  XK_comma,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xb4 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xb5 */  XK_KP_Divide,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xb6 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xb7 */  XK_Sys_Req,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xb8 */  XK_Alt_R,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xb9 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xba */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xbb */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xbc */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xbd */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xbe */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xbf */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xc0 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xc1 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xc2 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xc3 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xc4 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xc5 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xc6 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xc7 */  XK_Home,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xc8 */  XK_Up,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xc9 */  XK_Page_Up,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xca */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xcb */  XK_Left,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xcc */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xcd */  XK_Right,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xce */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xcf */  XK_End,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xd0 */  XK_Down,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xd1 */  XK_Page_Down,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xd2 */  XK_Insert,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xd3 */  XK_Delete,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xd4 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xd5 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xd6 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xd7 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xd8 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xd9 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xda */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xdb */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xdc */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xdd */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xde */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xdf */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xe0 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xe1 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xe2 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xe3 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xe4 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xe5 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xe6 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xe7 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xe8 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xe9 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xea */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xeb */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xec */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xed */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xee */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
!     /* 0xef */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
  };
*** programs/Xserver/hw/xwin/winkeynames.h.orig	Wed Sep 27 00:07:31 2000
--- programs/Xserver/hw/xwin/winkeynames.h	Wed Sep 27 01:34:57 2000
***************
*** 31,37 ****
  #include "keysym.h"
  
  #define GLYPHS_PER_KEY	4
! #define NUM_KEYCODES	150
  #define NUM_STD_KEYCODES 127
  #define MIN_KEYCODE     8
  #define MAX_KEYCODE     (NUM_KEYCODES + MIN_KEYCODE - 1)
--- 31,37 ----
  #include "keysym.h"
  
  #define GLYPHS_PER_KEY	4
! #define NUM_KEYCODES	248
  #define NUM_STD_KEYCODES 127
  #define MIN_KEYCODE     8
  #define MAX_KEYCODE     (NUM_KEYCODES + MIN_KEYCODE - 1)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]