.{memory, log, string, buffer} := @use("../../../libraries/stn/src/lib.hb") send_byte := fn(byte: u8): u8 { memory.outb(96, byte) return memory.inb(96) } main := fn(): int { send_byte(238) log.info("PS/2 Driver Loaded\0") if send_byte(238) == 238 { log.info("PS/2 Keyboard Echoed\0") } a := 0 a += 1 if send_byte(244) == 250 { log.info("Enabled scanning\0") } buf := buffer.create("XKeyboard\0") ptr := memory.request_page(1) prev_input := 250 loop { input := memory.inb(96) if input == prev_input { continue } prev_input = input keycode_str := string.display_int(input, ptr) log.info(string.display_int(input, ptr)) buffer.send_message(keycode_str, buf) } return 0 }