|
|
@ -6,36 +6,23 @@ |
|
|
|
mov bp, 0x8000 ; move it to 0x8000 |
|
|
|
mov bp, 0x8000 ; move it to 0x8000 |
|
|
|
mov sp, bp |
|
|
|
mov sp, bp |
|
|
|
|
|
|
|
|
|
|
|
; Print the welcome string |
|
|
|
; Switching to PM |
|
|
|
mov bx, welcome_string |
|
|
|
call pm_preinit |
|
|
|
call println |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
; Read second sector (outside bootsector) |
|
|
|
|
|
|
|
mov bx, 0x9000 ; LOAD LOCATION |
|
|
|
|
|
|
|
mov dh, 2 ; SECTOR-COUNT |
|
|
|
|
|
|
|
mov dl, [BOOT_DRIVE] ; DISK-INDEX |
|
|
|
|
|
|
|
call disk_read |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
; Print out whatever bloated data that was read |
|
|
|
|
|
|
|
mov dx, [0x9000] |
|
|
|
|
|
|
|
call print_hex |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mov bx, [ASCII_END] |
|
|
|
|
|
|
|
call println |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mov dx, [0x9000 + 512] ; read from second sector too |
|
|
|
|
|
|
|
call print_hex |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
jmp $ ; inf loop |
|
|
|
jmp $ ; inf loop |
|
|
|
|
|
|
|
|
|
|
|
%include "equ/ascii.asm" |
|
|
|
%include "equ/ascii.asm" |
|
|
|
%include "bios.asm" |
|
|
|
%include "bios.asm" |
|
|
|
|
|
|
|
%include "pm.asm" |
|
|
|
|
|
|
|
|
|
|
|
welcome_string: db "e Operating-System (eOS)", ASCII_CARRIAGE_RETURN, ASCII_LINEBREAK, "Version 2021 0.0", ASCII_END |
|
|
|
BEGIN_PM: |
|
|
|
BOOT_DRIVE: db 0 |
|
|
|
mov ebx, welcome_string |
|
|
|
|
|
|
|
call vga_print |
|
|
|
|
|
|
|
|
|
|
|
%include "pm.asm" |
|
|
|
jmp $ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
welcome_string: db "e Operating-System (eOS): Version 2021 0.0", ASCII_END |
|
|
|
|
|
|
|
BOOT_DRIVE: db 0 |
|
|
|
|
|
|
|
|
|
|
|
; Bootsector |
|
|
|
; Bootsector |
|
|
|
times 510-($-$$) db 0 |
|
|
|
times 510-($-$$) db 0 |
|
|
|