INT 10h , INT 10H , INT 0x10 o INT 16 es una abreviatura de la llamada de interrupción 10 hexadecimal de la BIOS , el vector de interrupción número 17 en un sistema informático basado en x86 . La BIOS normalmente configura un controlador de interrupción en modo real en este vector que proporciona servicios de vídeo. Dichos servicios incluyen la configuración del modo de vídeo, la salida de caracteres y cadenas, y las 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 los demás parámetros necesarios en otros registros y realice la llamada. INT 10h es bastante lenta, por lo que muchos programas omiten esta rutina de la BIOS y acceden directamente al hardware de visualización. La configuración del modo de vídeo, que se realiza con poca frecuencia, se puede lograr mediante 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 vídeo es más apropiado que realizar una llamada a la BIOS para cada píxel.
Además, en un sistema x86 moderno, las llamadas a la BIOS solo se pueden realizar en modo real o en modo virtual 8086. El modo virtual 8086 no es una opción en modo largo . Esto significa que un sistema operativo moderno, que opera en modo protegido (32 bits) o en modo largo (64 bits), tendría que cambiar al modo real y volver al modo real para llamar a la BIOS, una operación extremadamente costosa. Aunque la mayoría de los sistemas modernos suelen usar controladores de dispositivo que configuran directamente el modo de vídeo, no es factible que un sistema operativo para aficionados tenga un controlador de dispositivo para cada tarjeta de vídeo, un problema que también afecta a sistemas más antiguos y sin soporte, como Windows 98. Dichos sistemas, en cambio, pueden pasar al modo real para cambiar el modo de vídeo y luego dibujar directamente en el framebuffer.
En los sistemas EFI 1.x, el protocolo INT 10H y las extensiones VESA BIOS (VBE) se reemplazan por el protocolo EFI UGA. En los sistemas UEFI 2.x, ampliamente utilizados, el protocolo INT 10H y las extensiones VBE se reemplazan por el protocolo UEFI GOP . [ 1 ] [ 2 ]
Lista de funciones compatibles
La lista está incompleta; consulte la Lista de interrupciones de Ralf Brown para obtener información completa. Añada únicamente funciones estándar comunes de IBM/PC u otras. De 00h a 0fh corresponden a CGA.
Véase también
Referencias
- ↑ "¿Qué es efifb? — La documentación del kernel de Linux" . kernel.org . Consultado el 24 de noviembre de 2020 .
- ↑ "¿Qué es vesafb? — La documentación del kernel de Linux" . kernel.org . Consultado el 24 de noviembre de 2020 .
- ↑ "Una rutina para cambiar la fuente" . Forever Young Software . Consultado el 8 de marzo de 2020 .
- INT 10h de la lista de interrupciones de Ralf Brown, versión en línea
- INT 10h en www.ousob.com
- BIOS
- Interrumpe