INT 10H

Kokeneet kirjoittajat eivät ole vielä tarkistaneet sivun nykyistä versiota, ja se voi poiketa merkittävästi 2. marraskuuta 2019 tarkistetusta versiosta . tarkastukset vaativat 2 muokkausta .

INT 10h , INT 10H tai INT 16  on kokoonpanokieliohje x86 - prosessorille , joka luo BIOS - ohjelmiston keskeytyksen 10 hex , x86 -arkkitehtuurin 17. keskeytysvektorin . BIOS tyypillisesti yhdistää reaalitilan keskeytyskäsittelijän tähän vektoriin videopalvelun tarjoamiseksi. Se sisältää videosovittimen videotilan asettamisen, merkki- ja riviulostulon, grafiikkaprimitiivit ( pikseleiden lukeminen ja kirjoittaminen grafiikkatilassa).

INT 10h:n soittaminen on melko hidasta, joten monet ohjelmat käyttävät videosovitinta suoraan ilman BIOSia. Videotilan asettaminen, joka tehdään yleensä kerran, voidaan tehdä BIOSin avulla. Renderöinnin on kuitenkin oltava nopeaa, joten suora pääsy videomuistiin on parempi tähän kuin BIOS-keskeytysten kutsuminen jokaiselle pikselille.

Luettelo videopalvelun ominaisuuksista

Toiminto Toimintokoodi Vaihtoehdot Palautusarvo
Videotilan asettaminen AH = 00h AL = tilanumero AL = videotilan lippu / ohjaimen CRT-tilan tavu
Aseta tekstitilan kohdistimen muoto AH=01h CH = aloitusviiva, CL = loppuviiva

Yleensä tuttuus on 8 riviä, 0-7. Silloin CX=0607h on normaali alleviivauskohdistin, CX=0007h on kaikki tuttu. Jos 5. CH-bitti on asetettu, se tarkoittaa yleensä "Piilota kohdistin". Siksi CX=2607h on näkymätön kohdistin.

Joissakin näytönohjaimissa on 16 riviä per merkki, 00h-0Fh.

Jotkut näytönohjaimet eivät käytä 5. CH-bittiä. Tässä tapauksessa piilottaaksesi aseta CH > CL (esimerkiksi CX=0706h)

Aseta kohdistimen sijainti AH=02h BH = sivu, DH = rivi, DL = sarake
Hanki kohdistimen sijainti ja muoto AH = 03h BH = sivu AX = 0, CH = kohdistimen muodon aloitusrivi, CL = kohdistimen muodon loppurivi, DH = rivi, DL = sarake
Ota kevyt kynän asento (ei toimi VGA - järjestelmissä) AH=04h AH = Tila (0 = ei-aktiivinen, 1 = aktiivinen), BX = X pikseli, CH = Y pikseli, CX = pikselin rivinumero tiloille 0Fh-10h, DH = Y-merkki, DL = X-merkki
Aseta aktiivinen sivu AH = 05h AL = sivunumero
Selaa ylöspäin AH=06h AL = vieritettävien rivien määrä (0 = kirkas, CH, CL, DH, DL käytetty), BH = väriattribuutti.

CH = ylärivin numero, CL = vasemman sarakkeen numero, DH = alarivin numero, DL = oikean sarakkeen numero

Rullaa alas AH = 07h Katso edellä
Lue merkit ja attribuutit kohdistimen kohdalla AH = 08h BH = sivu AH = väri, AL = symboli
Kirjoita merkit ja attribuutit kohdistimen kohtaan AH = 09h AL = merkki, BH = sivu, BL = väri, CX = kuinka monta kertaa merkki kirjoitetaan
Kirjoita merkki kohdistimen kohtaan AH = 0 Ah AL = merkki, BH = sivu, CX = kuinka monta kertaa merkki kirjoitetaan
Aseta taustan/reunuksen väri AH = 0 Bh, BH = 00 h BL = taustan/reunuksen väri (reuna vain tekstitiloissa)
Aseta paletti AH = 0 Bh, BH = 01 h BL = Palettitunnus ( kätevä CGA - sovittimissa, mutta uudemmat näytönohjaimet tukevat tätä monissa tai kaikissa grafiikkatiloissa)
Aseta Pixel AH = 0 Ch AL = väri, BH = sivu, CX = x, DX = y
Lue pikselin väri AH = 0 Dh BH = sivu, CX = x, DX = y AL = väri
Konsolin merkkitulostus AH=0Eh AL = merkki, BH = sivu, BL = väri (vain grafiikkatila)
Hanki nykyinen videotila AH = 0 Fh AL = videotila, AH = merkkisarakkeiden määrä, BH = nykyinen sivu
Lähtömerkkijono (EGA ja uudemmat) AH = 13h AL = lähtötila , BH = sivu, BL = väri, CX = rivin pituus, DH = rivi (näytöllä), DL = sarake, ES:BP = osoite

Katso myös

Linkit