System operacyjny
Przerwanie 0x10

Przerwanie 0x10 w głównej mierze jest odpowiedzialne za wyjście na ekran i obsługę klawiatury. Numer wybranej funkcji umieszczamy w rejestrze AH

[ORG 0x07c00]
[BITS 16]         
 
   mov ax, 0
   mov es, ax     ;  ustawienie segmentu ES na zero
 
   mov ah, 0x03   ; pobranie aktualnej pozycji kursora
   mov bh, 0      ; strona 0
   int 0x10       ; wynik będzie w dh (wiersz) dl (kolumna)  
 
 
   mov ah, 0x13   ;  wypisanie tekstu 
   mov al, 0x01   ;  tryb pisania : bit 0 - przesunąc kursor po zapisie
                  ;                 bit 1 - tekst zawiera na przemian litery i atrybuty znaków                    
   mov cx, msglen ;  długość tekstu
   mov bh, 0x00   ;  strona ekranu 
   mov bl, 0x07   ;  atrybuty znaków (biały na czarnym tle)  
   mov bp, msg    ;  wskaźnik na tekst   ES:BP
;   mov dx, 0x0000  ; gdzie wypisać (górny lewy róg)
   int 0x10
 
loop1: 
hlt             ; zatrzymujemy procesor 
jmp loop1       ; zapętlamy 
 
 
msg: db "Pozdrowienia z bootloadera! ", 13, 10, 0
msglen equ ($-msg-1)
 
times 510 - ($-$$) db 0   ; uzupełniamy zerami do pozycji 510
 
dw 0x0aa55                ; wartość aa55 oznacza, 
                    ;że jest to sektor bootowalny
 
 


Tomasz Kapela, Kraków 2011-2020