diff --git a/src/bootloader.asm b/src/bootloader.asm index 6223862..c7d97b8 100644 --- a/src/bootloader.asm +++ b/src/bootloader.asm @@ -1,51 +1,25 @@ [org 0x7c00] ; bootsector - mov bx, welcome_string ; Print the welcome string + ; Print the welcome string + mov bx, welcome_string call println - mov bx, info_string ; Print version info - call println - - ; Read from disk - mov bp, 0x8000 - mov sp, bp ; move the stack away so that it does not get overwritten - - mov bx, 0x9000 - mov dh, 2 ; read 2 sectors - call disk_read ; read - - mov bx, read_test_string - call print - - mov dx, [0x9000] - call print_hex + ; Read second sector - mov bx, byte_sep_string - call print - - mov dx, [0x9000 + 512] - call print_hex - - mov bx, empty_string - call println jmp $ ; inf loop -; Constants %include "equ/ASCII.asm" - -; SRs etc %include "bios.asm" -welcome_string: db "e Operating-System (eOS)", ASCII_END -info_string: db "Version 2021 0.0", ASCII_END +; Data +welcome_string: db "e Operating-System (eOS)", ASCII_CARRIAGE_RETURN, ASCII_LINEBREAK, "Version 2021 0.0", ASCII_END read_test_string: db "Read bytes: ", ASCII_END -byte_sep_string: db "; ", ASCII_END -empty_string: db ASCII_END +; Bootsector times 510-($-$$) db 0 -db 0x55, 0xaa ; magic BIOS numbers +dw 0xaa55 ; magic BIOS numbers -; Bloat bytes to test reading +; After bootsector times 256 dw 0xEEEE times 256 dw 0xAAAA