; Boot loader entry point for CubeCactusOS
; Multiboot-compliant boot code (NASM syntax)
MAGIC equ 0x1BADB002
FLAGS equ (1<<0 | 1<<1)
CHECKSUM equ -(MAGIC + FLAGS)
section .multiboot
align 4
dd MAGIC
dd FLAGS
dd CHECKSUM
section .bss
align 16
stack_bottom:
resb 16384 ; 16 KiB stack
stack_top:
section .text
global _start
extern main
_start:
; Set up stack
mov esp, stack_top
; Reset EFLAGS
push 0
popf
; Call kernel main
call main
; Hang if kernel returns
cli
.hang:
hlt
jmp .hang