add multi-sink diagnostic log; make framebuffer optional

This commit is contained in:
Daniel Samson
2026-07-08 10:40:22 +01:00
parent 7d3417fe86
commit cb63d2e31b
6 changed files with 279 additions and 106 deletions
+9 -1
View File
@@ -34,7 +34,15 @@ fn boot() !noreturn {
// Everything the kernel needs must be gathered *before* we exit boot
// services, since afterwards none of these calls are usable.
var boot_info: BootInfo = .{
.framebuffer = try queryFramebuffer(bs),
// A missing GOP (a headless machine) is not fatal — hand the kernel a
// "no framebuffer" descriptor (base 0) and let it log to serial instead.
.framebuffer = queryFramebuffer(bs) catch danos.Framebuffer{
.base = 0,
.width = 0,
.height = 0,
.pitch = 0,
.format = .bgrx,
},
.memory_map = undefined, // filled by exitBootServices, just below
.kernel_segments = undefined, // filled by loadKernel
.kernel_segment_count = 0,