%include "equ/BIOS.asm" %include "equ/ASCII.asm" mov ah, BIOS_MODE_TELETYPE ; enter teletype mode (BIOS) mov al, ASCII_LINEBREAK ; linebreak int BIOS_INT ; Print "eOS" mov al, "e" int BIOS_INT mov al, "O" int BIOS_INT mov al, "S" int BIOS_INT mov al, ASCII_CARRIAGE_RETURN int BIOS_INT mov al, ASCII_LINEBREAK ; linebreak int BIOS_INT ; ALPHABET PRINT ;; mov al, 64 ; one less than A since we are printing in a loop and it increments before sys interupt ;; loop: ;; ; Print the alphabetic char ;; inc al ; move to next char ;; int BIOS_INT ; bios interupt to print it ;; push ax ; push ax onto stack ;; ; newline ;; mov al, ASCII_CARRIAGE_RETURN ;; int BIOS_INT ;; mov al, ASCII_LINEBREAK ;; int BIOS_INT ;; ; Prepair for next iteration ;; pop ax ; restore ;; cmp al, 90 ; 26 letters in english alphabet (64 + 26) ;; jl loop ; if al < 64+26: jmp loop jmp $ times 510-($-$$) db 0 db 0x55, 0xaa