xserver/hw/xfree86/doc
Keith Packard 9fad8f06fb Merge remote branch 'dbn/inputclass' 2009-12-30 09:28:19 -08:00
..
devel xfree86: fix make distcheck after removal of Domain.note and RAC.Notes. 2009-09-04 15:07:14 +10:00
man Merge remote branch 'dbn/inputclass' 2009-12-30 09:28:19 -08:00
sgml Use $(AM_V_GEN) to silence more commands when AM_SILENT_RULES is active 2009-10-06 19:40:20 -07:00
Makefile.am
README.DRI
README.modes
README.rapidaccess

The IBM Rapid Access keyboard have some extra buttons
on it to launch programs, control a cd-player and so on.

These buttons is not functional when the computer is turned
on but have to be activated by sending the codes 0xea 0x71
to it.

I've written the following hack to send codes to the keyboard:

--------------------------------------------------------------
/* gcc -O2 -s -Wall -osend_to_keyboard send_to_keyboard.c */
#include <stdlib.h>
#include <unistd.h>
#include <sys/io.h>

int main( int argc, char *argv[] )
{
  int i;

  ioperm( 0x60, 3, 1 );

  for( i = 1; i < argc; i++ ) {
    int x = strtol( argv[i], 0, 16 );

    usleep( 300 );
    outb( x, 0x60 );
  }

  return 0;
}
--------------------------------------------------------------

As root you can then call this program (in your boot scripts)
as "send_to_keyboard ea 71" to turn on the extra buttons.

It's not a good idea to run several instances of this program
at the same time. It is a hack but it works. If you try to
send other codes to the keyboard it probably will lock up.
For other codes see:

http://www.win.tue.nl/~aeb/linux/kbd/scancodes-2.html#ss2.22

--
Dennis Björklund <db@zigo.dhs.org>



$XFree86$