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