Date: Mon, 20 Sep 2004 22:07:45 +0900 (JST) From: NAKAJI Hiroyuki <nakaji@jp.freebsd.org> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/71937: x11-servers/XFree86-4-Server has keyboard problem on pc98 Message-ID: <200409201307.i8KD7jh5000971@xa12.heimat.gr.jp> Resent-Message-ID: <200409201310.i8KDAQqx028374@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 71937 >Category: ports >Synopsis: x11-servers/XFree86-4-Server has keyboard problem on pc98 >Confidential: no >Severity: critical >Priority: high >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Sep 20 13:10:26 GMT 2004 >Closed-Date: >Last-Modified: >Originator: NAKAJI Hiroyuki >Release: FreeBSD 6.0-CURRENT i386 >Organization: >Environment: System: FreeBSD xa12.heimat.gr.jp 6.0-CURRENT FreeBSD 6.0-CURRENT #10: Mon Sep 20 01:01:06 JST 2004 root@xa12.heimat.gr.jp:/usr/obj/usr/src/sys/NAKAJI i386 >Description: As reported in freebsd-x11 list by Satoshi Kimura, http://lists.freebsd.org/pipermail/freebsd-x11/2004-September/000874.html, XFree86 4.4.0 has a problem about keyboard on pc98. For example, CTRL, GRPH, and left-Shift key cannot be used because keycode is different. This problem itself is a bug of XFree86. >How-To-Repeat: On pc98, install x11-servers/XFree86-4-Server and execute X server. >Fix: One additional patch in files directory is enough. I hope this can be imported into 5.3-RELEASE. The patch itself is posted as patch.kbd.gz by Satoshi Kimura to freebsd-x11@freebsd.org. Thanks. diff -urN -x CVS /usr/ports/x11-servers/XFree86-4-Server/files/patch-programs::Xserver::hw::xfree86::common::xf86Events.c ./files/patch-programs::Xserver::hw::xfree86::common::xf86Events.c --- /usr/ports/x11-servers/XFree86-4-Server/files/patch-programs::Xserver::hw::xfree86::common::xf86Events.c Thu Jan 1 09:00:00 1970 +++ ./files/patch-programs::Xserver::hw::xfree86::common::xf86Events.c Mon Sep 20 21:38:49 2004 @@ -0,0 +1,31 @@ +--- programs/Xserver/hw/xfree86/common/xf86Events.c.org Mon May 3 22:33:43 2004 ++++ programs/Xserver/hw/xfree86/common/xf86Events.c Sun May 23 16:55:53 2004 +@@ -544,6 +544,7 @@ + } else + #endif /* i386 && SVR4 */ + { ++ if (!xf86IsPc98()) { + switch (scanCode) { + case 0x59: scanCode = KEY_0x59; break; + case 0x5a: scanCode = KEY_0x5A; break; +@@ -574,6 +575,7 @@ + case 0x75: scanCode = KEY_0x75; break; + case 0x76: scanCode = KEY_0x76; break; + } ++ } /* end if (!xf86IsPc98()) */ + } + } + +@@ -655,10 +657,12 @@ + * they need to get the same key code as the base key on the same + * physical keyboard key. + */ ++ if (!xf86IsPc98()) { + if (scanCode == KEY_SysReqest) + scanCode = KEY_Print; + else if (scanCode == KEY_Break) + scanCode = KEY_Pause; ++ } + #endif + + /* >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200409201307.i8KD7jh5000971>