Messages in this thread | | | Date | Wed, 24 Nov 1999 08:48:44 -0800 (PST) | From | (Jim Gettys) | Subject | Re: Mark keyboard RAW mode deprecated |
| |
> From: Pavel Machek <pavel@suse.cz> > Date: Wed, 24 Nov 1999 11:49:39 +0100 > To: Jim Gettys <jg@pa.dec.com> > Cc: Linus Torvalds <torvalds@transmeta.com>, > "David S. Miller" <davem@redhat.com>, linux-kernel@vger.rutgers.edu > Subject: Re: Mark keyboard RAW mode deprecated > ----- > Hi! > > > Whether X can be taught about new keycodes is entirely up to the > > operating system and X implementation: there are systems on which > > the operating system is queried when the X server starts to get the > > keycodes existing on the keyboard, and the keysyms on the keys that > > are reported; the same X server may support VERY different keyboards > > (e.g. Digital UNIX X servers are happy to handle both PC style keyboards > > and the older Digital proprietary LK201 derived keyboards). In > > the Digital UNIX case, I can introduce a completely different keyboard > > without having to touch a line of code in the X server (by setting > > up proper modules and tables in the device driver for the keyboard). > > Really? Even keyboards that use e0 48 for up arrow when numlock > led is on and e0 2a e0 48 when numlock is off? >
Yup: in the DU case, I hid all this sort of mess in the device driver. Putting such messes in the device driver makes a certain amount of sense, as you have to have something to get the system off the ground in the first place to interface with fully cooked terminal drivers. I don't know how braindead pc keyboards are, but guarantee that Digital was able to have some pretty wierd keyboards (not as bad as some I heard of in the industry 10 years ago: some were completely incapable of doing both down and up events, and there was opposition to this requirement by X's design; most apps don't care, but a few care alot, so some people just plain got to lose for certain apps.).
This could be done differently without device driver changes, by a different implementation of the OS specific section of the X server. The X server internal design is quite good at such things: we had to support a ton of different operating systems/keyboards/displays. XFree86 4.0 goes to a modular server at long last: I dunno if the OS interface piece is a module or not, however. And some more work will be needed in this area to deal with USB properly.
-- Jim Gettys Technology and Corporate Development Compaq Computer Corporation jg@pa.dec.com
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |