diff options
author | Marvin Borner | 2020-06-17 23:45:37 +0200 |
---|---|---|
committer | Marvin Borner | 2020-06-17 23:45:37 +0200 |
commit | dcf6dca74b8baadb8fdade55aad9068a60c3d25e (patch) | |
tree | 6ab84ea4eae164a2fc17fe3862cc77d9f66e4b38 /src | |
parent | 4c9ba64345ee23f153e0b6afaacb48b9ef378cfe (diff) |
Hello!
Diffstat (limited to 'src')
-rw-r--r-- | src/entry.asm | 65 | ||||
-rw-r--r-- | src/main.c | 6 |
2 files changed, 29 insertions, 42 deletions
diff --git a/src/entry.asm b/src/entry.asm index 35cede5..7404ccc 100644 --- a/src/entry.asm +++ b/src/entry.asm @@ -1,49 +1,30 @@ -bits 32 +bits 16 -kernel_stack equ 0x4000 -multiboot_magic equ 0xe85250d6 +org 0x7c00 -section .text - align 4 +jmp start - multiboot: - header_start: - dd multiboot_magic - dd 0 - dd header_end - header_start - dd 0x100000000 - (multiboot_magic + 0 + (header_end - header_start)) +print: + mov ah, 0x0E + xor bh, bh + print_ch: + lodsb + test al, al + jz print_end + int 0x10 + jmp print_ch + print_end: + ret - ; Information tag - align 8 - dw 1 - dw 1 - dd 24 - dd 2 ; bootloader name - dd 4 ; meminfo - dd 6 ; mmap - dd 13 ; smbios +start: + mov ax, 0x003 + int 0x10 - ; Empty tag - align 8 - dw 0 - dw 0 - dd 8 - header_end: + mov si, hello + call print + jmp $ - global boot - ;extern kernel_main - boot: - mov esp, stack_top - push esp - push ebx - push eax - cli - ;call kernel_main - hlt - jmp $ +hello db "Loading Melvix...", 0x0A, 0x0D, 0x00 -section .bss - align 32 - stack_bottom: - resb kernel_stack - stack_top: +times 510 - ($ - $$) db 0 +dw 0xAA55 diff --git a/src/main.c b/src/main.c new file mode 100644 index 0000000..88bcde0 --- /dev/null +++ b/src/main.c @@ -0,0 +1,6 @@ +int main(int argc, char *argv[]) +{ + while (1) { + }; + return 0; +} |