taglinefilesource code
scancode123drivers/char/keyboard.cstatic inline void translate(unsigned char scancode);
scancode142drivers/char/keyboard.cunsigned char scancode;
scancode153drivers/char/keyboard.cscancode = inb(0x60);
scancode155drivers/char/keyboard.cif (scancode == 0xfa) {
scancode158drivers/char/keyboard.c} else if (scancode == 0xfe) {
scancode168drivers/char/keyboard.cput_queue(scancode);
scancode171drivers/char/keyboard.ctranslate(scancode);
scancode177drivers/char/keyboard.cstatic inline void translate(unsigned char scancode)
scancode210drivers/char/keyboard.cif (scancode == 0xe0) {
scancode214drivers/char/keyboard.cif (scancode == 0xe1) {
scancode225drivers/char/keyboard.cif (kbd_dead(KGD_E0) && (scancode == 0x2a || scancode == 0xaa ||
scancode226drivers/char/keyboard.cscancode == 0x36 || scancode == 0xb6))
scancode231drivers/char/keyboard.cbreak_flag = scancode > 0x7f;
scancode232drivers/char/keyboard.cscancode &= 0x7f;
scancode237drivers/char/keyboard.cif (scancode == e0_keys[i]) {
scancode238drivers/char/keyboard.cscancode = E0_BASE + i;
scancode244drivers/char/keyboard.cprintk("keyboard: unknown scancode e0 %02x\n", scancode);
scancode248drivers/char/keyboard.c} else if (scancode >= E0_BASE) {
scancode250drivers/char/keyboard.cprintk("keyboard: scancode (%02x) not in range 00 - %2x\n", scancode, E0_BASE - 1);
scancode257drivers/char/keyboard.cclear_bit(scancode, key_down);
scancode259drivers/char/keyboard.crep = set_bit(scancode, key_down);
scancode262drivers/char/keyboard.cput_queue(scancode);
scancode277drivers/char/keyboard.ckey_code = key_map[shift_state][scancode];