INT 10H


INT 10h , INT 10H o INT 16 es la abreviatura de la llamada de interrupción del BIOS 10 hexadecimal , el vector de interrupción número 17 en un sistema informático basado en x86 . El BIOS normalmente configura un controlador de interrupciones en modo real en este vector que proporciona servicios de video. Dichos servicios incluyen la configuración del modo de video, la salida de caracteres y cadenas, y primitivas gráficas (lectura y escritura de píxeles en modo gráfico).

Para usar esta llamada, cargue AH con el número de la subfunción deseada, cargue otros parámetros requeridos en otros registros y realice la llamada. INT 10h es bastante lento, por lo que muchos programas omiten esta rutina del BIOS y acceden directamente al hardware de la pantalla. La configuración del modo de video, que se realiza con poca frecuencia, se puede lograr mediante el uso de la BIOS, mientras que el dibujo de gráficos en la pantalla en un juego debe hacerse rápidamente, por lo que el acceso directo a la RAM de video es más apropiado que hacer una llamada de BIOS para cada píxel .

Además, en un sistema x86 moderno, las llamadas al BIOS solo se pueden realizar en modo Real o en modo Virtual 8086 . v8086 no es una opción en el modo largo . Esto significa que un sistema operativo moderno, que opera en modo protegido (32 bits) o modo largo (64 bits), necesitaría cambiar al modo real y volver a llamar al BIOS, una operación enormemente costosa. Aunque la mayoría de los sistemas modernos suelen utilizar controladores de dispositivo que configuran directamente el modo de video, no es factible que los sistemas de aficionados tengan un controlador de dispositivo para cada tarjeta de video, un problema que también afecta a los sistemas antiguos no compatibles, como Windows 98.. En cambio, dichos sistemas pueden pasar al modo Real para cambiar el modo de video y luego dibujar directamente en el búfer de fotogramas.

En los sistemas EFI 1.x, INT 10H y VESA BIOS Extensions (VBE) se reemplazan por el protocolo EFI UGA. En los sistemas UEFI 2.x ampliamente utilizados , el INT 10H y el VBE se reemplazan por el UEFI GOP . [1] [2]

La lista está incompleta; utilice la lista de Ralf Brown para obtener información completa. Agregue únicamente IBM / PC u otras funciones estándar comunes. 00h a 0fh son CGA.

Normalmente, una celda de carácter tiene 8 líneas de exploración, 0–7. Entonces, CX = 0607h es un cursor de subrayado normal, CX = 0007h es un cursor de bloque completo. Si se establece el bit 5 de CH, a menudo significa "Ocultar cursor". Entonces CX = 2607h es un cursor invisible.