const std = @import("std"); const root = @import("root"); const libk = @import("libk"); pub const QemuExitCode = enum(u16) { success = 0x10, failed = 0x11, }; pub fn exit(code: QemuExitCode) noreturn { root.arch.out(0x16, @intFromEnum(code)); while (true) root.arch.halt(); } pub const Error = error{}; pub const Writer = std.io.GenericWriter(void, Error, write); pub fn writer() Writer { return .{ .context = {} }; } fn write(_: void, data: []const u8) Error!usize { root.arch.machine.serial.COM1.write(data); root.machine.Console.Instance.write(data); return data.len; }