diff --git a/src/boot/limine/entry.zig b/src/boot/limine/entry.zig index 48cff08..b487e94 100644 --- a/src/boot/limine/entry.zig +++ b/src/boot/limine/entry.zig @@ -85,6 +85,14 @@ export fn kmain() callconv(.c) void { .virtual_base = ka_response.virtual_base, } else .{ .physical_base = 0, .virtual_base = 0 }; + boot_info.framebuffer = if (framebuffer_request.response) |fb_response| .{ + .address = @intFromPtr(fb_response.framebuffers[0].address), + .width = @intCast(fb_response.framebuffers[0].width), + .height = @intCast(fb_response.framebuffers[0].height), + .pitch = @intCast(fb_response.framebuffers[0].pitch), + .bpp = @intCast(fb_response.framebuffers[0].bpp), + } else null; + build_memory_map(); ke.ncpus = 1; diff --git a/src/boot/limine/limine.zig b/src/boot/limine/limine.zig index 9465199..5e06a4d 100644 --- a/src/boot/limine/limine.zig +++ b/src/boot/limine/limine.zig @@ -135,7 +135,7 @@ pub const FramebufferRequest = extern struct { pub const FramebufferResponse = extern struct { revision: u64, framebuffer_count: u64, - framebuffers: ?[*]*Framebuffer, + framebuffers: [*]*Framebuffer, }; pub const Framebuffer = extern struct {