37 lines
535 B
NASM
37 lines
535 B
NASM
; assumptions about the starting envionment
|
|
cpu 8086
|
|
org 0x0000
|
|
|
|
_startup:
|
|
mov ax, cs
|
|
mov ss, ax
|
|
mov sp, 0x0000
|
|
; <0x0010 is BIOS segment when relocated to HMA
|
|
; so we need a nop sled
|
|
times (0x10 - ($-$$)) nop
|
|
main:
|
|
call hma_relocate
|
|
call ivt_backup
|
|
call debug_init
|
|
|
|
int 0x2E
|
|
mov ax,0x1234
|
|
int 0x2E
|
|
call kprint16
|
|
|
|
.halt:
|
|
hlt
|
|
jmp .halt
|
|
|
|
%include "hma.asm"
|
|
|
|
%include "heap.asm"
|
|
%include "intr.asm"
|
|
%include "debug.asm"
|
|
%include "kprintf.asm"
|
|
|
|
_reloc_end:
|
|
|
|
align 16
|
|
heap:
|