aboutsummaryrefslogtreecommitdiff
path: root/kernel/kernel-bootstrap.asm
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/kernel-bootstrap.asm')
-rw-r--r--kernel/kernel-bootstrap.asm22
1 files changed, 22 insertions, 0 deletions
diff --git a/kernel/kernel-bootstrap.asm b/kernel/kernel-bootstrap.asm
new file mode 100644
index 0000000..9e3b10e
--- /dev/null
+++ b/kernel/kernel-bootstrap.asm
@@ -0,0 +1,22 @@
+bits 32 ; nasm 32-bit mode
+section .text
+
+ ; multiboot header
+align 4
+dd 0x1BADB002
+dd 0x00
+dd - (0x1BADB002 + 0x00) ; checksum
+
+global start
+extern kernel_entrypoint
+
+ ; call kernel and halt
+start:
+ cli ; disable interrups
+ mov esp, stack_space
+ call kernel_entrypoint
+ hlt
+
+section .bss
+resb 8192
+stack_space: \ No newline at end of file