The keyboard actually sends a scan code when a key is pressed, then sends another code when the key is released. And so far as I know, the scan code for, say, the third button in from the right on the second row is the same no matter whether you have a USA, British, French, Greek or any other keyboard. It is the driver loaded onto the PC that interprets the codes to convert them to the local characters. And the num/caps/scroll lock lights do not light up just because you press the Caps Lock etc. buttons. The computer sees the scan code from pressing the Caps Lock button, then commands the keyboard to switch on the light in response. This is why you can set up the BIOS to automatically set one of the locks (is it the numeric lock?) when the computer powers up. However, this is getting a bit off topic for the Fedora list. Some time ago I had to do a reverse engineering job on the AT keyboard controller, and did the job using an Atmel AVR chip. Just about any chip will do the job, I just happen to have a C compiler for the AVR. I kept a file of reference information I gathered from various places. If anybody wants a copy send me an email privately, and I'll be more than happy to send it. Regards, Dave Fletcher On Monday 22 Mar 2004 3:50 am, you wrote: > It has been a while since I messed with this stuff, here is what I (seem > to) remember. > > All keyboards have a preprogrammed micro-processor in them, many akin to > the old 8080. This processor has code burned into it telling it what > scan code to transmit when a key is pressed.