const arch = @import("../x86_64.zig"); const libk = @import("libk"); const Pio = arch.Pio; const WriteOnly = libk.io.WriteOnly; var command: WriteOnly(Pio(u8)) = .open(0x70); var data: Pio(u8) = .open(0x71); pub const Register = enum(u8) { status_a = 0x0A, status_b = 0x0B, _, }; pub fn read(register: Register) u8 { command.write(0x80 | @intFromEnum(register)); return data.read(); } pub fn write(register: Register, value: u8) void { command.write(0x80 | @intFromEnum(register)); data.write(value); }