23 lines
367 B
ArmAsm
23 lines
367 B
ArmAsm
|
global long_mode_start
|
||
|
extern kmain
|
||
|
|
||
|
section .text
|
||
|
bits 64
|
||
|
long_mode_start:
|
||
|
; load 0 into all data segment registers
|
||
|
mov ax, 0
|
||
|
mov ss, ax
|
||
|
mov ds, ax
|
||
|
mov es, ax
|
||
|
mov fs, ax
|
||
|
mov gs, ax
|
||
|
|
||
|
; call the rust main
|
||
|
extern kmain
|
||
|
call kmain
|
||
|
|
||
|
; print `OKAY` to screen
|
||
|
mov rax, 0x2f592f412f4b2f4f
|
||
|
mov qword [0xb8000], rax
|
||
|
hlt
|