INT 10H

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 2 de noviembre de 2019; las comprobaciones requieren 2 ediciones .

INT 10h , INT 10H o INT 16  es una instrucción en lenguaje ensamblador para un procesador x86 que genera una interrupción de software BIOS 10 hexadecimal , el vector de interrupción número 17 en la arquitectura x86 . El BIOS generalmente asocia un controlador de interrupción de modo real con este vector para proporcionar un servicio de video. Incluye configurar el modo de video del adaptador de video, la salida de caracteres y líneas, las primitivas de gráficos (leer y escribir píxeles en el modo de gráficos).

Llamar a INT 10h es bastante lento, por lo que muchos programas acceden directamente al adaptador de video, sin el BIOS. La configuración del modo de video, que generalmente se realiza una vez, se puede realizar mediante el BIOS. Sin embargo, el renderizado debe ser rápido, por lo que el acceso directo a la memoria de video es mejor para esto que llamar a las interrupciones del BIOS para cada píxel.

Lista de características del servicio de video

Función Código de función Opciones Valor devuelto
Configuración del modo de vídeo AH=00h AL = número de modo AL = indicador de modo de video / byte de modo CRT del controlador
Establecer la forma del cursor del modo de texto AH=01h CH = línea de inicio, CL = línea final

Por lo general, una familiaridad tiene 8 líneas, 0-7. Entonces CX=0607h es un cursor subrayado normal, CX=0007h es todo familiaridad. Si el bit 5th CH está configurado, generalmente significa "Ocultar cursor". Por lo tanto, CX=2607h es un cursor invisible.

Algunas tarjetas de video tienen 16 líneas por carácter, 00h-0Fh.

Algunas tarjetas gráficas no usan el bit 5th CH. En este caso, para ocultar, establezca CH > CL (por ejemplo, CX=0706h)

Establecer la posición del cursor AH=02h BH=página, DH=fila, DL=columna
Obtener la posición y la forma del cursor AH=03h BH = página AX = 0, CH = Fila inicial de la forma del cursor, CL = Fila final de la forma del cursor, DH = Fila, DL = Columna
Obtener la posición del lápiz óptico (no funciona en sistemas VGA ) AH=04h AH = estado (0 = inactivo, 1 = activo), BX = píxel X, CH = píxel Y, CX = número de fila de píxeles para los modos 0Fh-10h, DH = carácter Y, DL = carácter X
Establecer página activa AH=05h AL = número de página
Desplazarse hacia arriba AH=06h AL = número de líneas para desplazarse (0 = borrar, CH, CL, DH, DL utilizado), BH = atributo de color.

CH = número de fila superior, CL = número de columna izquierda, DH = número de fila inferior, DL = número de columna derecha

Desplácese hacia abajo AH=07h véase más arriba
Leer caracteres y atributos en la posición del cursor AH=08h BH = página AH = color, AL = símbolo
Escribir caracteres y atributos en la posición del cursor AH=09h AL = carácter, BH = página, BL = color, CX = cuántas veces escribir un carácter
Escribir carácter en la posición del cursor AH=0Ah AL = carácter, BH = página, CX = cuántas veces escribir un carácter
Establecer color de fondo/borde AH=0Bh, BH=00h BL = Color de fondo/borde (borde solo en modos de texto)
Establecer paleta AH=0Bh, BH=01h BL = ID de paleta (tiene sentido en los adaptadores CGA , pero las tarjetas gráficas más nuevas admiten esto en muchos o todos los modos gráficos)
Establecer píxel AH=0 canales AL=color, BH=página, CX=x, DX=y
Leer color de píxel AH=0Dh BH=página, CX=x, DX=y AL = color
Salida de caracteres de la consola AH=0Eh AL = carácter, BH = página, BL = color (solo modo gráfico)
Obtener el modo de video actual AH=0Fh AL = modo de video, AH = número de columnas de caracteres, BH = página actual
Cadena de salida (EGA y superior) AH=13h AL = modo de salida , BH = página, BL = color, CX = longitud de línea, DH = línea (en pantalla), DL = columna, ES:BP = dirección

Véase también

Enlaces