blob: 419f8c8d9047428adfb3cb0c9e570de1847c8286 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
bits 32
section .text
align 4
dd 0x1BADB002
dd 0x00
dd - (0x1BADB002 + 0x00)
global start
extern kmain
start:
cli
mov esp, stack_top
call marker_begin
call kmain
call marker_done
.hltloop:
hlt
jmp .hltloop
marker_begin:
mov word [VIDEO_RAM + CONSOLE_SIZE - 2], \
0x4F << 8 | 'B' ; END OF MAIN MARKER
ret
marker_done:
mov word [VIDEO_RAM + CONSOLE_SIZE - 2], \
0x4F << 8 | 'H' ; END OF MAIN MARKER
ret
section .data
%include 'constants.asm'
section .bss
align 4
stack_bottom:
resb 16384
stack_top:
|