diff options
Diffstat (limited to 'src/kernel/boot.asm')
-rw-r--r-- | src/kernel/boot.asm | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/kernel/boot.asm b/src/kernel/boot.asm index 06411ea..968a824 100644 --- a/src/kernel/boot.asm +++ b/src/kernel/boot.asm @@ -1,3 +1,15 @@ +%define ALIGN 1 ; Align loaded modules on page boundaries +%define MEMINFO 2 ; Provide memory map +%define FLAGS 3 ; Flags (ALIGN | MEMINFO) +%define MAGIC 0x1BADB002 +%define CHECKSUM -(MAGIC + FLAGS) + +section .multiboot + align 4 + dd MAGIC + dd FLAGS + dd CHECKSUM + section .start_section dd _start @@ -15,7 +27,9 @@ section .text global _start extern kernel_main _start: - push esp + mov esp, STACK_TOP + push ebx + push eax cli call kernel_main cli |