taglinefilesource code
scancode199drivers/char/keyboard.cunsigned char scancode;
scancode209drivers/char/keyboard.cscancode = inb(0x60);
scancode211drivers/char/keyboard.cif (scancode == 0xfa) {
scancode214drivers/char/keyboard.c} else if (scancode == 0xfe) {
scancode217drivers/char/keyboard.c} else if (scancode == 0) {
scancode222drivers/char/keyboard.c} else if (scancode == 0xff) {
scancode232drivers/char/keyboard.cput_queue(scancode);
scancode237drivers/char/keyboard.cif (scancode == 0xe0 || scancode == 0xe1) {
scancode238drivers/char/keyboard.cprev_scancode = scancode;
scancode245drivers/char/keyboard.cup_flag = (scancode & 0200);
scancode246drivers/char/keyboard.cscancode &= 0x7f;
scancode254drivers/char/keyboard.cif (prev_scancode == 0xe1 && scancode == 0x1d) {
scancode257drivers/char/keyboard.c} else if (prev_scancode == 0x100 && scancode == 0x45) {
scancode258drivers/char/keyboard.cscancode = E1_PAUSE;
scancode280drivers/char/keyboard.cif (scancode == 0x2a || scancode == 0x36)
scancode283drivers/char/keyboard.cif (e0_keys[scancode])
scancode284drivers/char/keyboard.cscancode = e0_keys[scancode];
scancode287drivers/char/keyboard.cprintk("keyboard: unknown scancode e0 %02x\n", scancode);
scancode292drivers/char/keyboard.c} else if (scancode >= E0_BASE && !raw_mode) {
scancode295drivers/char/keyboard.cscancode, E0_BASE - 1);
scancode309drivers/char/keyboard.cclear_bit(scancode, key_down);
scancode312drivers/char/keyboard.crep = set_bit(scancode, key_down);
scancode318drivers/char/keyboard.cput_queue(scancode + up_flag);
scancode344drivers/char/keyboard.ckey_code = key_map[shift_final][scancode];
scancode350drivers/char/keyboard.ckey_code = key_map[shift_final ^ (1<<KG_SHIFT)][scancode];