diff options
Diffstat (limited to 'src/main.zig')
| -rw-r--r-- | src/main.zig | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/src/main.zig b/src/main.zig index adef54c..de91b83 100644 --- a/src/main.zig +++ b/src/main.zig @@ -2,19 +2,29 @@ const debug = @import("debugcon.zig"); const ALIGN = 1 << 0; const MEMINFO = 1 << 1; -const MAGIC = 0x1BADB002; -const FLAGS = ALIGN | MEMINFO; +const MAGIC = 0xE85250D6; +// const FLAGS = ALIGN | MEMINFO; +const FLAGS = 0; const MultibootHeader = extern struct { - magic: i32, - flags: i32, - checksum: i32, + magic: u32, + flags: u32, + len: u32, + checksum: u32, + + tag0: u16, + tag1: u16, + tag2: u32, }; -export const multiboot align(4) linksection(".multiboot") = MultibootHeader{ +export const multiboot2 align(4) linksection(".multiboot") = MultibootHeader{ .magic = MAGIC, .flags = FLAGS, - .checksum = -(MAGIC + FLAGS), + .len = 24, + .checksum = 0x100000000 - (MAGIC + FLAGS + 24), + .tag0 = 0, + .tag1 = 0, + .tag2 = 8, }; export fn _start() callconv(.Naked) noreturn { |
