A poorly written OS for the x86 arch. (WIP)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
[org 0x7c00] ; bootsector
|
|
|
|
|
|
|
|
mov bx, welcomeString ; Print the welcome string
|
|
|
|
call println
|
|
|
|
|
|
|
|
mov bx, infoString ; Print version info
|
|
|
|
call println
|
|
|
|
|
|
|
|
mov bx, hexTestPrefixString ; Hex print test (not needed but fun)
|
|
|
|
call print
|
|
|
|
mov dx, 0x002e ; test the conversion
|
|
|
|
call hexToASCII
|
|
|
|
call println
|
|
|
|
|
|
|
|
jmp $ ; inf loop
|
|
|
|
|
|
|
|
; Load the EQUs
|
|
|
|
%include "equ/BIOS.asm"
|
|
|
|
%include "equ/ASCII.asm"
|
|
|
|
|
|
|
|
; SRs
|
|
|
|
%include "elib/io.asm"
|
|
|
|
%include "elib/convert.asm"
|
|
|
|
|
|
|
|
welcomeString: db "Welcome to: e Operating-System (eOS)", ASCII_END
|
|
|
|
infoString: db "Version 2021 0.0", ASCII_END
|
|
|
|
hexTestPrefixString: db "Hex printing test: ", ASCII_END
|
|
|
|
|
|
|
|
times 510-($-$$) db 0
|
|
|
|
db 0x55, 0xaa ; magic BIOS numbers
|