Wybrane przerwania BIOS

Transkrypt

Wybrane przerwania BIOS
Wybrane przerwania BIOS
Funkcje obsługi ekranu
• 10h,
Funkcja: 0h - ustawienie trybu pracy
Wejście: AL=numer trybu pracy
Wyjście: brak
• 10h,
Funkcja: 1h ustawienie typu kursora
Wejście:
CH - początek kursora
CL - koniec kursora
Wyjście: brak
• 10h,
Funkcja: 2h - położenie kursora
Wejście:
DH - numer wiersza
DL - numer kolumny
BH - numer strony
Wyjście: brak
• 10h,
Funkcja:
Wejście:
Wyjście:
DH, DL
CH, CL
3h - odczytanie położenia kursora
BH - numer strony
- pozycja kursora
- typ kursora
• 10h,
Funkcja: 5h - zmiana aktywnej strony
Wejście: AL - numer strony
Wyjście: brak
• 10h,
Funkcja:
6h, 7h - przewinięcie strony w górę/w dół
Wejście:
AL - liczba wierszy
CH, CL - lewy górny róg (wiersz/kolumna)
DH, DL - prawy dolny róg (wiersz/kolumna)
BH - atrybut dla wygaszanych wierszy
Wyjście: brak
• 10h,
Funkcja: 0Fh - odczytanie stanu ekranu
Wejście: brak
Wyjście:
AL - tryb pracy
AH - liczba kolumn
BH - numer aktywnej strony
• 10h,
Funkcja: 08h - znak pod kursorem
Wejście: BH - numer strony
Wyjście:
AL - kod znaku
AH - bajt atrybutu
• 10h,
Funkcja:
09h zapisanie znaku z atrybutem w miejscu kursora
Wejście:
BH - numer strony
CX - liczba powieleń znaku
AL - kod znaku
BL - atrybut znaku
Wyjście: brak
• 10h,
Funkcja:
0Ah - wpisanie znaku w miejsce kursora
Wejście:
BH - numer strony
CX - ile razy
AL - kod znaku
Wyjście: brak
• 10h,
Funkcja: 0Bh - wybór palety (tylko dla CGA)
Wejście: pomijamy
Wyjście: pomijamy
• 10h,
Funkcja: 0Ch - wyświetlenie punktu
Wejście:
BH - numer strony
DX - numer linii
CX - numer punktu
AL - kolor punktu (jeśli b7=1, to XOR)
Wyjście: brak
• 10h,
Funkcja: 0Dh - odczytanie punktu
Wejście:
BH - numer strony
DX - numer linii
CX - numer kolumny
Wyjście: AL - kolor punktu
• 10h,
Funkcja: 1Eh - odczytanie stanu karty
Wejście:
BX=0h
ES:DI - adres 64-bajtowego bufora
Wyjście:
00 - 03
wskaźnik do tablicy
możliwości BIOS
04
tryb pracy
05 - 06
liczba wyświetlanych
kolumn
07 - 08
długość wyśqwietlanego obszaru w pamięci
09 - 10
przesunięcie lewego
górnego rogu ekranu
0A - 1A
położenie kursora na
poszczególnych stronach (kolumna,wiersz)
1B
początek kursora
1C
koniec kursora
1D
strona aktywna
1E - 1F
adres we/wy rejestru
wyboru adresu sterownika ekranu
20
tryb pracy sterownika
ekranu
21
paleta
22
liczba wyświetlanych
znaków w wierszu
23 - 24
wysokość siatki znaku
25
typ karty aktywnej
26
typ karty nieaktywnej
27 - 28
liczba wyświetlanych
kolorów
29
liczba stron
2A
liczba liniii
0 - 200
1 - 350
2 - 400
3 - 480
2B
numer tablicy kodów
znaków gdy bit 3. atrybutu = 0
2C
numer tablicy kodów
znaków gdy bit 3. atrybutu = 1
2D
inne informacje (pomijamy)
2e - 30
pomijamy
31
wielkość pamięci karty:
0 - 64kB
1 - 128kB
2 - 192kB3 - 256kB
32
status obszaru przechowującego stan karty
33 - 3F
zarezerwowane
Tablica możliwości BIOS karty
00 - 02
dozwolone tryby pracy
03 - 06
zarezerwowane
07
dozwolone liczby linii w trybach alfanumerycznych:
b0=1 - 200
b1=1 - 350
b2=1 - 400
08
maksymalna liczba tablic wzorców znaków
09
liczba tablic wzorców znajdująca się w
pamięci
0A - 0F
inne informacje (pomijamy)
Obsługa klawiatury i myszy
• 16h,
Funkcja: 02h, 12h - odczytanie stanu klawiatury
Wejście: brak
Wyjście:
AH - bieżący stan klawiszy modyfikujących
bit
7
6
5
4
3
2
1
0
znaczenie
stan wprowadzania (INSERT)
stan podniesienia karetki (CAPS LOCK)
stan numeryczny (NUM LOCK)
stan przewijania (SCROLL LOCK)
naciśnięty ALT
naciśnięty CTRL
naciśnięty lewy SHIFT
naciśnięty prawy SHIFT
AL -
bieżący stan klawiszy modyfikujących dla klawiatury rozszerzonej
bit klawisz naciśnięty
7
6
5
4
3
2
1
0
SYS REQ
CAPS LOCK
NUM LOCK
SCROLL LOCK
prawy ALT
prawy CTRL
lewy ALT
lewy CTRL

Podobne dokumenty