import irqio
int serial_base
function(byte char) kswritebyte -> void does
write_port(serial_base, char|int)
return
function(cstr msg) kswritecstr -> void does
int idx=0
while idx<msg:len() do
kswritebyte((msg|ptr)[idx])
idx+=1
done
return
function() init_serial -> void does
serial_base=0x3f8
write_port(serial_base + 1, 0x00)
write_port(serial_base + 3, 0x80)
write_port(serial_base + 0, 0x03)
write_port(serial_base + 1, 0x00)
write_port(serial_base + 3, 0x03)
write_port(serial_base + 2, 0xC7)
kswritecstr("Serial Debugger started!\n")
return