Rev 1694 | Rev 1713 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1694 | Rev 1707 | ||
---|---|---|---|
Line 447... | Line 447... | ||
447 | /** Process keyboard & mouse events */ |
447 | /** Process keyboard & mouse events */ |
448 | int kbd_arch_process(keybuffer_t *keybuffer, ipc_call_t *call) |
448 | int kbd_arch_process(keybuffer_t *keybuffer, ipc_call_t *call) |
449 | { |
449 | { |
450 | int status = IPC_GET_ARG1(*call); |
450 | int status = IPC_GET_ARG1(*call); |
451 | 451 | ||
452 | if ((status & i8042_MOUSE_DATA)) { |
452 | if ((status & i8042_MOUSE_DATA)) |
453 | ; |
453 | return 0; |
454 | } else { |
454 | |
455 | int scan_code = IPC_GET_ARG2(*call); |
455 | int scan_code = IPC_GET_ARG2(*call); |
456 | 456 | ||
457 | if (scan_code != IGNORE_CODE) { |
457 | if (scan_code != IGNORE_CODE) { |
458 | if (scan_code & KEY_RELEASE) |
458 | if (scan_code & KEY_RELEASE) |
459 | key_released(keybuffer, scan_code ^ KEY_RELEASE); |
459 | key_released(keybuffer, scan_code ^ KEY_RELEASE); |
460 | else |
460 | else |
461 | key_pressed(keybuffer, scan_code); |
461 | key_pressed(keybuffer, scan_code); |
462 | } |
- | |
463 | } |
462 | } |
464 | return 1; |
463 | return 1; |
465 | } |
464 | } |
466 | 465 | ||
467 | /** |
466 | /** |