.{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 { buf := buffer.create("XKeyboard\0") send_byte(238) log.info("PS/2 Driver Loaded\0") if send_byte(238) == 238 { log.info("PS/2 Keyboard Echoed\0") } if send_byte(244) == 250 { log.info("Enabled scanning\0") } ptr := memory.request_page(1) prev_input := 250 loop { input := memory.inb(96) if input == prev_input { continue } prev_input = input buffer.write(&input, buf, 1) } return 0 }