Newer
Older
tree-os / src / multiboot / boot.asm
@Lukas Lukas on 28 Mar 2021 514 bytes Initial commit after relocation
global loader
MAGIC_NUMBER equ 0x1BADB002 ; 1 bad boot
FLAGS        equ 0x0
CHECKSUM     equ -MAGIC_NUMBER
                                    ; (magic number + checksum + flags should equal 0)
section .text:
align 4
    dd MAGIC_NUMBER
    dd FLAGS
    dd CHECKSUM
extern kernelMain

KERNEL_STACK_SIZE equ 4096  ; 4kb of stack
_start:
    ; setup stack
    mov esp, stack + KERNEL_STACK_SIZE
    ; call main function
    call kernelMain
.loop:
    jmp .loop

section .bss
align 4
stack:
    resb KERNEL_STACK_SIZE