Files
my-os-project2/kernel/drivers/ps2kb/ps2kb.c

20 lines
343 B
C

#include <stdint.h>
#include "ps2kb.h"
#include "hal/hal.h"
#include "kprintf.h"
void ps2kb_write(uint8_t val) {
while (io_in8(0x64) & 2);
io_out8(0x64, val);
}
uint8_t ps2kb_read(void) {
while (!(io_in8(0x64) & 1));
return io_in8(0x60);
}
void ps2kb_intr(void) {
uint8_t scancode = ps2kb_read();
kprintf("%02x\n", scancode);
}