Index: programs/Xserver/hw/xfree86/input/keyboard/kbd.c =================================================================== RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/input/keyboard/kbd.c,v retrieving revision 1.5 diff -u -p -r1.5 kbd.c --- programs/Xserver/hw/xfree86/input/keyboard/kbd.c 29 Aug 2004 21:06:00 -0000 1.5 +++ programs/Xserver/hw/xfree86/input/keyboard/kbd.c 30 Aug 2004 20:43:22 -0000 @@ -588,6 +588,19 @@ PostKbdEvent(InputInfoPtr pInfo, unsigne return; } +#ifndef __sparc64__ + /* + * PC keyboards generate separate key codes for + * Alt+Print and Control+Pause but in the X keyboard model + * they need to get the same key code as the base key on the same + * physical keyboard key. + */ + if (scanCode == KEY_SysReqest) + scanCode = KEY_Print; + else if (scanCode == KEY_Break) + scanCode = KEY_Pause; +#endif + /* * Now map the scancodes to real X-keycodes ... */