From owner-freebsd-current Wed Aug 16 22:27:39 1995 Return-Path: current-owner Received: (from majordom@localhost) by freefall.FreeBSD.org (8.6.11/8.6.6) id WAA20821 for current-outgoing; Wed, 16 Aug 1995 22:27:39 -0700 Received: from irz301.inf.tu-dresden.de (irz301.inf.tu-dresden.de [141.76.1.11]) by freefall.FreeBSD.org (8.6.11/8.6.6) with SMTP id WAA20811 for ; Wed, 16 Aug 1995 22:27:35 -0700 Received: from sax.sax.de by irz301.inf.tu-dresden.de with SMTP (5.67b+/DEC-Ultrix/4.3) id AA06624; Thu, 17 Aug 1995 07:27:32 +0200 Received: by sax.sax.de (8.6.11/8.6.12-s1) with UUCP id HAA29801 for freebsd-current@FreeBSD.org; Thu, 17 Aug 1995 07:27:32 +0200 Received: (from j@localhost) by uriah.heep.sax.de (8.6.11/8.6.9) id GAA08320 for freebsd-current@FreeBSD.org; Thu, 17 Aug 1995 06:52:29 +0200 From: J Wunsch Message-Id: <199508170452.GAA08320@uriah.heep.sax.de> Subject: Re: Syscons and IBM ThinkPads To: freebsd-current@FreeBSD.org (FreeBSD-current users) Date: Thu, 17 Aug 1995 06:52:28 +0200 (MET DST) Reply-To: freebsd-current@FreeBSD.org (FreeBSD-current users) In-Reply-To: <199508162357.RAA12311@rocky.sri.MT.net> from "Nate Williams" at Aug 16, 95 05:57:55 pm Reply-To: joerg_wunsch@uriah.heep.sax.de (Joerg Wunsch) X-Phone: +49-351-2012 669 X-Mailer: ELM [version 2.4 PL23] Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Content-Length: 2110 Sender: current-owner@FreeBSD.org Precedence: bulk [Moved from commiters to -current] As Nate Williams wrote: > > The syscons kernel compiled with XT_KEYBOARD works fine on my 750C, but > on the 755CX (brand new product), it doesn't work at all. I don't have > a 360C to test it on here anymore, else I'd test it as well. I think this is a documented feature. From syscons.c: #ifdef XT_KEYBOARD kbd_wait(); outb(KB_DATA, 0xF0); kbd_wait(); outb(KB_DATA, 1) kbd_wait(); #endif /* XT_KEYBOARD */ According to van Gilluwe (p. 295): ``Command Description Port F0h Set/Get Alternate Scan Codes 60h On MCA systems and a few others, the keyboard can be instructed to select from three sets of Kscan codes. A value is sent to port 60h as follows: 0 read the current scan code set 1 activate scan code set 1 (unavailable on Type 2 controller) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2 activate scan code set 2 (default) 3 activate scan code set 3 ...'' I've had a hard time finding the explanation for Type 1/2 controllers, it's on top of page 274: ``MCA systems have two different types of motherboard controllers, Type 1 and Type 2. There are a few minor differences in operation and functions. The following code fragment detects the controller type by checking if the command byte's translate bit can be set to 1. Only Type 1 controllers will allow this.'' So, if this information proves correct, MCA Type 2 controllers cannot turn the keyboard into ancient PC scan mode at all. Pcvt continues to work (with PCVT_SCANSET=2) since it's able to work with set 1 or set 2 scan codes (and ideally should be made working with set 3, too, since this set is way more rationale). Hmm. If this were true, you couldn't run XFree86 at all. XFree86 still relies on set 1 keycodes, and all pcvt is doing here is setting the translate bit in the command byte. Neither of our console drivers is interpreting the scan codes while X is running. -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ Never trust an operating system you don't have sources for. ;-)