diff options
Diffstat (limited to 'bootloader/bootloader.asm')
| -rw-r--r-- | bootloader/bootloader.asm | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/bootloader/bootloader.asm b/bootloader/bootloader.asm index 25b9a46..f1bb48a 100644 --- a/bootloader/bootloader.asm +++ b/bootloader/bootloader.asm @@ -4,10 +4,36 @@ ;Save the first adress with a label to complete the MBR at the end. start: +;Include bios routines and jump to skip including code +jmp skipInc +%include "clearScreenIntBios.asm" +%include "printIntBios.asm" +skipInc: + ;Init CPU registers -mov ax, 0x0C70 ;Put bootloader adress in ax register +mov ax, 0x07C0 ;Put bootloader adress in ax register mov ds, ax ;Init data segment +;Init stack from 0x80000 to 0x8f000 +mov ax, 0x8000 +mov ss, ax ;Set stack segment +mov ax, 0x0f00 +mov sp, ax ;Set stack offset + +;Clear the screen +call clearScreenIntBios + +;Print msg +mov si, helloBootloader ;load msg in si register +call printIntBios ;print the msg + +;Pause here ! +infiniteLoop: + jmp infiniteLoop + +;Define data +helloBootloader db "PiegOS bootloader successfully running !", 0 + ;Complete the MBR with nothing times 510 - ($ - start) db 0x0 |
