StupidOS/kernel/head.s

59 lines
743 B
ArmAsm
Raw Normal View History

2023-01-15 19:25:25 +00:00
[BITS 32]
%include "base.inc"
MULTIBOOT_MAGIC equ 0x1BADB002
MULTIBOOT_ALIGN equ 1 << 0
MULTIBOOT_MEMINFO equ 1 << 1
MULTIBOOT_FLAGS equ MULTIBOOT_ALIGN | MULTIBOOT_MEMINFO
section .multiboot
align 4
dd MULTIBOOT_MAGIC
dd MULTIBOOT_FLAGS
dd -(MULTIBOOT_MAGIC + MULTIBOOT_FLAGS)
section .bss
align 16
stack_bottom:
resb 16384
stack_top:
section .text
global entry
entry:
mov esp, stack_top
cli
extern serial_init
call serial_init
2023-01-17 10:35:11 +00:00
LOG msg_hello_world
2023-01-15 19:25:25 +00:00
extern setup_gdt
call setup_gdt
2023-01-17 10:35:11 +00:00
extern setup_pic
call setup_pic
2023-01-15 19:25:25 +00:00
extern setup_idt
call setup_idt
2023-01-17 10:35:11 +00:00
int3
;extern setup_paging
;call setup_paging
2023-01-15 19:25:25 +00:00
LOG file
hang:
hlt
jmp hang
2023-01-17 10:35:11 +00:00
section .rodata
msg_hello_world db "StupidOS ", STUPID_VERSION, 0
2023-01-15 19:25:25 +00:00
file db __FILE__, 0