Re: keyboard scancodes

Vojtech Pavlik (vojtech@suse.cz)
Wed, 15 Dec 1999 00:06:13 +0100


On Tue, Dec 14, 1999 at 11:09:31PM +0100, Andries.Brouwer@cwi.nl wrote:

> Now that you talked about the untranslated scancodes of the keyboard,
> I added what I know about them to my scancodes.html page, see
> http://www.win.tue.nl/~aeb/linux/kbd/scancodes.html
> or
> http://www.cwi.nl/~aeb/linux/kbd/scancodes.html

Oops, deleted the other corrections to that text by accident:

* Set3 reports only keypresses *by default*. It can be switched to
report key presses, releases, and repeat by commands to the keyboard.
This is the 'native' mode of the PS/2 (all current) keyboards. In
this mode even the 'Pause' key can do autorepeat. Unfortunately, not
all keyboards implement this mode correctly, because Win9x doesn't
use it, and thus manufacturers don't test it. (My BTC keyboard has
the same codes for the '1' and '2' keys in Set3, both having the
code for '1').

* Set2 also uses 0xf0,keycode for release, not 0x80|keycode. What you
are seeing is Set2 converted to Set1 by the i8042.

* Your view of Set1 must be very confused, because it's a Set1
translated by the Set2->Set1 translation by the i8042, which must
be a mess.

* Can't comment on the keycode tables, it's too late night here to
check those for correctness.

* Ahh, finally I see what you call kscancodes - my scancodes.h table
only deals with kscancodes, because that's the truth, it doesn't
make sense to look at the codes through the warped glass the i8042
provides.

So, my input drivers only use untranslated scancodes, and save a
lot of work guessing what the original codes were ...

-- 
Vojtech Pavlik
SuSE Labs

- 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/