INT 10h, INT 10H o INT 16 és l'abreviatura de la crida d'interrupció de la BIOS 10 hex, el 17è vector d'interrupció en un sistema informàtic basat en x86. La BIOS normalment configura un controlador d'interrupcions en mode real en aquest vector que proporciona serveis de vídeo. Aquests serveis inclouen la configuració del mode de vídeo, la sortida de caràcters i cadenes, i els primitius gràfics (llegir i escriure píxels en mode gràfic).
Per utilitzar aquesta trucada, carregueu AH amb el número de la subfunció desitjada, carregueu altres paràmetres necessaris en altres registres i feu la trucada. INT 10h és bastant lent, de manera que molts programes obvien aquesta rutina de la BIOS i accedeixen directament al maquinari de la pantalla. La configuració del mode de vídeo, que es fa amb poca freqüència, es pot aconseguir mitjançant la BIOS, mentre que dibuixar gràfics a la pantalla en un joc s'ha de fer ràpidament, de manera que l'accés directe a la memòria RAM de vídeo és més adequat que fer una trucada de la BIOS per a cada píxel.
A més, en un sistema x86 modern, les trucades de la BIOS només es poden realitzar en mode real o en mode 8086 virtual. v8086 no és una opció en mode llarg. Això vol dir que un sistema operatiu modern, que funciona en mode protegit (32 bits) o en mode llarg (64 bits), hauria de canviar al mode real i tornar a trucar a la BIOS, una operació molt cara. Tot i que la majoria dels sistemes moderns solen utilitzar controladors de dispositiu que configuren directament el mode de vídeo, no és factible que els sistemes aficionats tinguin un controlador de dispositiu per a cada targeta de vídeo, un problema que també afecta els sistemes antics i no compatibles com Windows 98. En canvi, aquests sistemes poden passar al mode real per canviar el mode de vídeo i, a continuació, dibuixar directament al framebuffer.
Als sistemes EFI 1.x, l'INT 10H i les extensions VESA BIOS (VBE) se substitueixen pel protocol EFI UGA. En els sistemes UEFI 2.x àmpliament utilitzats, l'INT 10H i el VBE se substitueixen pel UEFI GOP.
Llista de funcions compatibles La llista és incompleta; cal utilitzar la llista de Ralf Brown per obtenir informació completa.Cal afegir només IBM/PC o altres funcions estàndard habituals. De 00h a 0fh són CGA. FuncióCodi de funcióParàmetresRetornEstableix el mode de vídeoAH=00hAL = mode de vídeoAL = bandera de mode de vídeo / byte de mode de controlador CRTEstableix la forma del cursor en mode textAH=01hCH = Inici de fila d'escaneig, CL = Final de fila d'escaneig Normalment, una cel·la de caràcters té 8 línies d'exploració, de 0 a 7. Per tant, CX=0607h és un cursor de subratllat normal, CX=0007h és un cursor de bloc complet. Si s'estableix el bit 5 de CH, sovint significa "Amaga el cursor". Així que CX=2607h és un cursor invisible.
Algunes targetes de vídeo tenen 16 línies d'escaneig, 00h-0Fh.
Algunes targetes de vídeo no utilitzen el bit 5 de CH. Amb aquests, feu Inici>Final (p. ex. CX=0706h)Estableix la posició del cursorAH=02hBH = Número de pàgina, DH = Fila, DL = ColumnaObteniu la posició i la forma del cursorAH=03hBH = Número de pàginaAX = 0, CH = Inici de la línia d'exploració, CL = Finalitzar la línia d'exploració, DH = Fila, DL = ColumnaLlegiu la posició del llapis de llum (no funciona en sistemes VGA)AH=04hAH = Estat (0=no activat, 1=activat), BX = Pixel X, CH = Pixel Y, CX = Número de línia de píxels per als modes 0Fh-10h, DH = Caràcter Y, DL = Caràcter XSeleccioneu la pàgina de visualització activaAH=05hAL = Número de pàginaDesplaceu-vos cap amunt de la finestraAH=06hAL = línies per desplaçar-se (0 = esborra, s'utilitzen CH, CL, DH, DL), BH = Color de fons i color de primer pla. BH = 43h, significa que el color de fons és vermell i el color de primer pla és cian. Consulteu els atributs de color de la BIOS
CH = número de fila superior, CL = número de columna esquerra, DH = número de fila inferior, DL = número de columna dretaDesplaceu-vos cap avall per la finestraAH=07hcom a daltLlegir caràcter i atribut a la posició del cursorAH=08hBH = Número de pàginaAH = Color, AL = CaràcterEscriu caràcter i atribut a la posició del cursorAH=09hAL = Caràcter, BH = Número de pàgina, BL = Color, CX = Nombre de vegades que cal imprimir el caràcterEscriu el caràcter només a la posició del cursorAH=0AhAL = Caràcter, BH = Número de pàgina, CX = Nombre de vegades per imprimir el caràcterEstableix el color de fons/voraAH=0Bh, BH = 00hBL = Color de fons/vora (vora només en modes de text)Estableix la paletaAH=0Bh, BH = 01hBL = ID de paleta (només era vàlid a CGA, però les targetes més noves l'admeten en molts o tots els modes gràfics)Escriure gràfics píxelAH=0ChAL = Color, BH = Número de pàgina, CX = x, DX = yLlegir píxels de gràficsAH=0DhBH = Número de pàgina, CX = x, DX = yAL = ColorSortida de teletipAH=0EhAL = Caràcter, BH = Número de pàgina, BL = Color (només en mode gràfic)Obteniu el mode de vídeo actualAH=0FhAL = Mode de vídeo, AH = nombre de columnes de caràcters, BH = pàgina activaCanviar el conjunt de caràcters del mode de textAH=11hBH = Nombre de bytes per caràcter, CX = Nombre de caràcters a canviar, DX = Caràcter inicial a canviar, ES:BP = Desplaçament de dades de caràctersCadena d'escriptura (EGA+, que significa PC AT com a mínim)AH=13hAL = Mode d'escriptura, BH = Número de pàgina, BL = Color, CX = Nombre de caràcters de la cadena, DH = Fila, DL = Columna, ES:BP = Desplaçament de la cadenaestabliu modes de vídeo compatibles amb VESA, començant a 640 per 480 i arribant a 1280 per 1024 amb 256 colorsAX=4f02hBX = mode de vídeo, si s'estableix el bit de signe (bit 15), la memòria de vídeo no s'actualitzaràAltres ordres VESA VBEAX=4F00h a 4F15hVeure especificacióVeure especificació
Referències
Categoria:Microprocessadors