Manual de Interrupciones emu8086

March 8, 2018 | Author: Ángel Cruz | Category: Floppy Disk, Bios, Color, Bit, Ascii
Share Embed Donate


Short Description

Descripción: Interrupciones para el manejo del emulador de ensamblador emu8086...

Description

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

ÍNDICE GENERAL

Introducción

Referencia de funciones de bios Áreas de datos comunes y tablas Las funciones de bios

Referencia de funciones de dos Áreas de datos comunes y tablas Las funciones de dos

Índice de materia

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INTRODUCCIÓN

Este libro ha sido planeado como un manual de consulta rápida de las funciones de BIOS y DOS y su uso. Como todas las llamadas de funciones de BIOS y DOS tiene la misma forma, no se dan ejemplos del uso de llamadas individuales de BIOS y DOS.

La información de este manual fue compilada a partir de la más amplia gama de fuentes, y se hicieron todos los esfuerzos posibles para asegurar su exactitud técnica y su vigencia.

La explicación de cada función de BIOS y DOS se lista en orden numérico hexadecimal ascendente, con base en los números de interrupción, función y, si se requiere subfunción. Además de una corta descripción de la función y su propósito, se proporciona la siguiente información. Llamada La disposición de los registros antes de la llamada a la función. Devuelve La disposición de los registros al volver de la función. Comentarios Sugerencias y breves comentarios explicativos acerca de la función y su uso. Para la función de DOS, se indica la versión en la que apareció cada una.

Este manual ha sido desarrollado para ayudar al lector recordándole los propósitos y disposición de los registros de diversas funciones de DOS y BIOS. Como material de consulta mas detallado, recomendamos los siguientes libros: DOS Programmer´s Referente. Using Assembly Language.

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

(FUN)(SUBFUNC)

BIOS DOS Int # 00 # 01 # 02 # 03 # 04 # 05 # 06, 07 # 08 # 09 # 0A # 0B # 0C # 0D # 0E # 0F 10

AH AL Proposition Dividir entre cero Interrupción de un solo paso No enmascarable Interrupción de un punto de interrupción Desborde aritmético Imprimir pantalla Reservado

00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 13

11 12 13

00 01 02 03 04 05

Cronometro del sistema Teclado Reservado Comunicaciones Comunicaciones Controlador del disco duro Manejo de disquetes Manejo de impresora Fijar modelo de video Fijar tipo del cursor Fijar posición del cursor Leer posición y configuración del cursor Leer posición de la pluma fotosensible Seleccionar pagina de presentación visual activa Desplazar la ventana hacia arriba Desplazar la ventana hacia abajo Leer carácter y atributo Escribir carácter y atributo Escribir carácter en el cursor Fijar paleta de colores Escribir píxel para grafico Leer píxel para grafico Escribir texto en modo de teletipo Obtener modo de presentación actual Fijar registros de paleta Generador de caracteres Escribir cadena Obtener estado del equipo Obtener tamaño de la memoria Restablecer sistema de disquetes Obtener estado del sistema de disquetes Leer disquetes Escribir sectores de disco Verificar sectores de disco Dar formato a pista del disco

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

BIOS DOS Int AH # 06,07 X 08 X 09 X X X X # X X X

0A 0B 0C 0D 0E14 15 16 17

X

18

X X

14

00 01

X

02

X

03

X X

04 05

# # # #

15

00 01 02 03

X

0F

X

21

X X X X X X X X X X X X

4F 80 81 82 83 84 85 86 87 88 89 90

AL Proposition Reservado Devolver parámetros de unidad de disco Asignar valores iniciales a la tabla de disco duro Leer sector largo Escribir sector largo Buscar cilindro Otra forma de restablecer el disco Reservado Devolver tipo de DASD Leer estado de línea de cambio de disco Fijar tipo de DASD para dar formato al disco Fijar tipo de medio de almacenamiento para dar formato Preparar puerto de comunicaciones Escribir caracteres en puerto de comunicaciones Leer carácter del puerto de comunicaciones Solicitar estado del puerto de comunicaciones Preparación ampliada (PS/2) Control del puerto de comunicaciones ampliado (PS/2) Encender motor de casete Apagar motor de casete Leer bloque de datos de unidad de casete Escribir bloque de datos en unidad de formato Interrupción periódica de unidad de formato (PS/2) Bitácora de errores en autoprueba de encendido (PS/2) Interrupción del teclado Abrir dispositivo Cerrar dispositivo Terminación de programa Espera de eventos Soporte de palanca de mando Tecla de solicitud de sistema presionada Espera Mover bloque Obtener tamaño de memoria ampliada Conmutar procesador al modo protegido Dispositivo ocupado

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

X X

91 C0

X X

C1 C2

X

C3

X X

C4 16 00 01 02 BIOS DOS Int AH 05 10 11 16 12 17 00 01 02 18 19 1A 00 01 02 03 04 05 06 07 1B 1C 1D 1E 1F 20 21

00 01 02 03 04 05 06 07 08

Interrupción completa Devolver parámetros de configuración del sistema Devolver dirección de segmento de EBDA Interfaz de BIOS con el dispositivo apuntador Habilitar/inhabilitar tiempo de espera del cronometro principal Seleccionar opción programable Leer carácter de teclado Leer estado del teclado Devolver banderas de teclado AL Proposition Escribir en buffer del teclado Obtener digitación Verificar teclado Obtener banderas de estado del teclado Escribir caracteres de impresora Preparar puerto de impresión Solicitar estado de puerto de impresión Ejecutar ROM BASIC Arranque en caliente del sistema Obtener contador de reloj Fijar contador de reloj Leer reloj de tiempo real Fijar reloj de tiempo real Leer fecha de reloj de tiempo real Fijar fecha de reloj de tiempo real Fijar alarma de sistema Inhabilitar del alarma del reloj de tiempo real Dirección del manejo de ctrl-Break Interrupción del tictac del cronometro Tabla de parámetro para la inicialización del video Tabla de parámetro para la inicialización del disco Tabla de proyecto de bits de caracteres de despliegue grafico Terminar programa Terminar programa Entrad del teclado con eco Mostrar salida Entrada auxiliares Salida auxiliares Salida de impresora E/S directa de la consola Entrada STDIN directa Entrada STDIN

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B BIOS DOS Int AH x 1C # X X X X X X X X X X X X X X X X X # X # X X

21

1D, 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36

Mostrar cadena Entrada STDIN almacenada temporalmente Verificar estado de STDIN Despejar buffer y entrada Reinicio de disco Seleccionar disco Abrir archivo (FCB) Cerrar archivo (FCB) Buscar la primera entrada (FCB) Buscarla siguiente entrada (FCB) Borrar archivo (FCB) Leer archivo secuencial (FCB) Escribir archivo secuencial (FCB) Crear archivo (FCB) Renombrar archivo (FCB) Reservado Obtener unidad por emisión Fijar dirección de DTA Obtener información de la tabla de asignación AL Proposition Obtener información de la tabla asignación para una unidad especifica Reservado Lectura de archivo aleatorio (FCB) Escritura de archivo aleatorio (FCB) Obtener tamaño de archivo (FCB) Fijar campo de registro aleatorio (FCB) Establecer vector de interrupciones Crear PSP Lectura de bloque aleatorio (FCB) Escritura de bloque aleatorio (FCB) Análisis sintáctico de nombre de archivo Obtener fecha de el sistema Establecer fecha del sistema Obtener hora del sistema Establecer hora del sistema Ajustar bandera de verificación Obtener dirección de DTA Obtener numero de versión de DOS Terminar y permanecer residente Reservado Obtener/establecer valores del sistema Reservado Obtener vector de interrupción Obtener espacio libre del disco

de

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

# X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X # X

37 38 39 3A 3B 3C 3D 3E 3F 40 41 42 43 44

Reservado Obtener/establecer información del país Crear subdirección Eliminar subdirección Establecer directorio Crear/truncar archivo (control) Abrir archivo (control) Cerrar archivo (control) Leer archivo o dispositivo (control) Escribir en archivo o dispositivo (control) Borrar archivo Mover apuntador de archivo Obtener/establecer símbolos de archivo 00 IOCTL: obtener información del dispositivo 01 IOCTL: establecer información del dispositivo 02 IOCTL: lectura de dispositivo de caracteres 03 IOCTL: escritura de dispositivo de caracteres 04 IOCTL: lectura de manejador de bloques 05 IOCTL: escritura de manejador de bloques 06 IOCTL: obtener estado de entrada 07 IOCTL: obtener estado de salida 08 IOCTL: ¿dispositivo de bloque removible? 09 IOCTL: dispositivo de bloque ¿local o remoto? 0A IOCTL: control ¿local o remoto? 0B IOCTL: establecer rendimientos de compartimientos 0C IOCTL: E/S genérica para controlador

0D IOCTL: E/S genérica para dispositivos de bloque 0E IOCTL: obtener mapa de unidad lógica 0F IOCTL: establecer mapa de unidad lógica 45 Duplicar control 46 Forzar duplicación del control 47 Obtener dirección actual 48 Asignar hora 49 Liberar memoria 4A Modificar asignación de memoria 4B 00 Ejecutar programa (EXEC) 03 Cargar superposición 4C Terminar con código de remoto 4D Obtener código de remoto 4E Buscar la primera coincidencia 4F Buscar la siguiente coincidencia 50-53 Reservado 54 Obtener bandera de verificación

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

# X X X # X X X X # X X X X X X # X X

55 56 57 58 59 5A 5B 5C 5D 5E 5F 60,61 62 63

X X X X X X X X X # X X X X X X X X x

00 02 03 02 03 04 00 01 02

64 65 66

01 02

67 68 69, 6B 6C 22 23 24 25 26 27 2F

01

X X X # # #

00 01

B7 33 5C

00 01 02

Reservado Renombrar archivo Obtener fecha y hora del archivo Establecer fecha y hora del archivo Reservado Obtener información ampliada del error Crear archivo temporal Crear archivo Establecer acceso de archivo Reservado Obtener nombre de la maquina Establecer configuración de la impresora Obtener configuración de impresión Obtener entrada de la lista de redirección Redirigir dispositivo Cancelar redirección Reservado Obtener dirección de PSP Obtener tabla de primeros bytes del sistema Fijar bandera de consola provisional Obtener bandera de consola provisional Reservado Obtener información ampliada del país Obtener pagina de código global Establecer pagina de código global Establecer conteo de controles Desalojar buffer Reservado Abrir/crear de manera ampliada Dirección de terminación Vector de interrupción Ctrl-C Vector de error critico Lectura de disco absoluta Escritura de disco absoluta Terminar y permanecer residente Verificación de instalación para imprimir Someter archivo para impresión Quitar archivo de la cola de impresión

03 Quitar todos los archivo de la cola de impresión 04 Detener la cola de impresión para obtener estado 05 Reiniciar cola de impresión 00 Verificación de instalación para APPEND Ratón de Microsoft Interfaz NETBIOS

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

#

67

# # # # # # # # # # # # # #

40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E

00

#

01

#

02

#

03

#

4F

#

50

# # # # #

51 53 54 55 56

# #

57 58

#

59

# #

5ª 5B

# #

5C 5D

# # # #

70

Obtener estado EMM (manejo de memoria ampliada) Obtener segmento de marco de pagina Obtener numero de paginas Obtener control/asignar memoria Presentar mapa de memoria Liberar control y memoria Obtener versión de EMM Guardar contexto de transformación Restablecer contexto de transformación Reservado Reservado Obtener numero de control de EMM Obtener paginas que abarca el control Obtener paginas para todos los controles Obtener registros de transformación de paginas Establecer registros de transformación de paginas Obtener/establecer registros de transformación de paginas Obtener tamaño de arreglo de transformación de paginas Obtener/fijar transformación parcial de pagina Trasformar/no transformar paginas de controles múltiples Reasignar paginas Obtener/establecer nombre de control Obtener dirección de controles Modificar transformación y salto de pagina Modificar transformación y llamado de pagina Mover/intercambiar región de memoria Obtener arreglo de dirección física transformable Obtener información de hardware de memoria Asignar nuevas paginas Alternar conjunto de registros de transformación de paginas Preparar hardware de memoria ampliada Habilitar/inhabilitar conjunto de funciones OS/E Interrupción de reloj de tiempo real

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

Las funciones BIOS (Basic Input/Output System, sistema de entrada y salida básico) son el nivel fundamental de cualquier computador PC o compatible. Las funciones BIOS incorporan las operaciones básicas requeridas para el uso exitoso de los recursos de hardware del computador. ÁREAS DE DATOS COMUNES Y TABLAS En esta sección contiene tablas descriptivas para áreas de datos y otra información mencionada a lo largo de la referencia de funciones de BIOS. Tabla 1. Modos de presentación de video Moda Tipo 00h

01h

02h

03h

04h 05h 06h 07h

Adaptador

Definición Caja

Cars

Cols

CGA[3] EGA[2,3] MCGA VGA[1] Texto CGA EGA[2] MCGA VGA[1] Texto CGA[3] EGA[2,3] MCGA VGA[1] Texto CGA EGA[2] MCGA VGA[1] Grafico CGA/EGA/ MCGA/VGA Grafico CGA/EGA[3] MCGA/VGA

320x200 320x350 320x400 360x400 320x200 320x350 320x400 360x400 640x200 640x350 640x400 720x400 640x200 640x350 640x400 720x400 329x200

8x8 8x14 8x16 9x16 8x8 8x14 8x16 9x16 8x8 8x14 8x16 9x16 8x8 8x14 8x16 9x16 8x8

40x25 40x25 40x25 40x25 40x25 40x25 40x25 40x25 80x25 80x25 80x25 80x25 80x25 80x25 80x25 80x25 40x25

16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 4

320x200 320x200

8x8 8x8

40x25 4 40x25 4

Grafico CGA/EGA/ MCGA/VGA Texto MDA/EGA/ VGA[1]

640X200

8x8

80x25 2

720X350 720x400

9x14 80x25 Mono 9x16 80x25 Mono

Texto

Moda Tipo

Adaptador

Definición Caja

Cars

Cols

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

08h 09h 0Ah 0Bh 0Ch 0Dh 0Eh 0Fh 10h 11h 12h 13h

Grafico PCjr Grafico PCjr Grafico PCjr -RESERVADO-RESERVADOGrafico EGA/VGA Grafico EGA/VGA Grafico ECA/VGA Grafico ECA/VGA Grafico MCGA/VGA Grafico VGA Grafico MCGA/VGA

160x200 320x200 640x200 320x200 640x200 640x350 640x350 640x480 640x480 320x200

8x8 8x8 8x8 8x8 8x8 8x14 8x14 8x16 8x16 8x8

20x25 16 40x25 16 80x25 4 40x25 80x25 80x25 80x25 80x30 80x30 40x25

1 16 16 Mono 16 2 16 256

Cars. Caracteres Cols. Colores [1] Modo VGA ampliador, de otra forma, el VGA puede emular las características ya sea de CGA o de EGA para este modo. [2] Modo EGA al conectarse a una pantalla de color ampliada, de otra forma, emula las características de CGA para este modo. [3] Denota tonos de gris. Tabla 2. Palabra de estado del equipo Bit Significado 0 Unidad de disco instalada = 1 1 Coprocesador matemático instalado = 1 2-3 RAM del tablero de sistema 00 = 16K 01 = 32K 10 = 48K 11= 64K 2 Dispositivo apuntador instalado = 1(PS/2) 3 No se usa (PS/2) 4-5 Modo de video inicial 01 = 40 x 25 color 10 = 80 x 25 color 11 = 80 x 25 monocromático 6-7 Numero de unidades de disco (si el bit 0 = 1) 00 = 1 unidad conectada 01 = 2 unidades conectadas 10 = 3 unidades conectadas 11 = 4 unidades conectadas 8 No se usa 9-11 Numero de tarjetas conectadas para puerto en serie 12 Adaptador de juegos instalados = 1 12 No se usa (PS/2) 13 No se usa 13 MODEM interno instalado = 1 (PS/2)

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

14-15 Tabla 3. Bits 76543210 . . . . . . .1 . . . . . .1. . . . .

. . . .

. . . .

. . . .

. .11 . 1. . . 11 . 1...

. . . . 1 . .1 . . . .11 . . . . .1 . . . . ..1..... .1...... 1.......

Tabla 4. Bits 76543210 .......1 ......1. .....1.. ....1... ...1.... ..1..... .1...... 1.......

Numero de impresoras conectadas de estado del controlador del disco Significado Orden invalida para el controlador Marca de dirección no encontrada (sector dañada) Disco protegido contra escritura Sector solicitado no encontrado Línea de cambio de disquete activa Desbordamiento de capacidad de DMA (acceso en modo directo) Intento en DMA a través de la frontera De 64k Medios inválidos Error de CRC (verificación de redundancia Cíclica) en lectura del disco Error del controlador Falla en la búsqueda Tiempo pedido para el disco (unidad no preparada)

de estado de puerto Significado Datos preparados Error de desbordamiento de capacidad Error de paridad Error de formulación Interrupción detectada Registro de detección para transmisión (THR) vació Registro de desplazamiento para transmisión (TRS) vació Tiempo de espera

Tabla 5. Bits de estado del MODEM 76543210 Significado .......1 Cambio en estado de CLEAR to Send (CTS) (despejado para enviar) ......1. Cambio en estado de Datos Set Ready (DRS) (conjunto de datos preparados) .....1.. Indicador de llamada de extremo final ....1... Cambio en la señal de línea de recepción ...1.... Clear to Send (CTS) (despejado para enviar) ..1..... Data Set Ready (DRS) (conjunto de datos

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

.1...... 1.......

preparado) Indicador de llamada Señal de línea de detección detenida

Tabla 6. Código de retorno de servicio de casete Código Significado 00h Orden valida 01h Error de CRC 02h Perdida de transiciones de datos 03h Ningún dato localizado en cinta 04h Datos no encontrados (solo PCjr) 86h Ningún puerto de casete disponible

Tabla 7. La tabla de descriptor global (GDT) Desplazamiento Descripción 00h Ficticio (vale cero) 08h Localidad del segmento de datos de GDT (vale cero) 10h Apuntador de GDT fuente 18h Apuntador de GDT destino 20h Apuntador al segmento de código de BIOS con valor inicial de cero. BIOS usará ésta área para crear el segmento de código de modo protegido 28h Apuntador al segmento de pila de BIOS.com valor inicial de cero. BIOS usará esta área para crear el segmento de pila de modo protegido Disposición de GDT fuente/destino Desplazamiento Descripción 00h Limites de segmento 02h dirección física de segmento de 24 bits 05h Derechos de acceso a datos (vale por 93h) 06h Palabra reserva (debe ser 0) Tabla 8. Bits 76543210 .......1 . . . . . xx . ....1... ...1.... ..1..... .1...... 1.......

de estado e impresión Significado Tiempo de espera No se usa Error de E/S Impresión seleccionada Falta papel Reconocido Impresora no ocupada

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 10/00 Set Video Mode (fijar modo de video) –fija el modo de presentación usado por el adaptador de video Llamada 00h Modo de despliegue (véase Tabla1) Devuelve Nada Comentarios Fija el modo de video, despeja en pantalla y selecciona el adaptador de video(si hay más de uno). Para evitar que se despeje la pantalla en sistemas EGA, MCGA y VGA, fije el bit 7 de AL en 1.

INT 10/01 Set Cursor Type (fijar tipo del curso) –fija la altura del cursor de video Llamada AH CH CL

01h Línea inicial de examinación (limite superior) en bits 0 – 4 línea final de examinación (limite inferior) en bits 0-4

Devuelve Nada Comentarios Fija el tipo del cursor de modo de texto especificando las líneas de examinación inicial y final, comenzando con la línea 0. para modos monocromáticos, la línea de examinación inicial por omisión es 0Bh, y la final es 0Ch. Para modos de color, la línea de examinación inicial por omisión es 06h, y la determinación es 07h.

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 10/02 Set Cursor Position (fijar posición del cursor) Llamada AH CH DH DL

02h Numero de pagina (0 para modos gráficos) Renglón Columna

Devuelve Nada Comentarios Se usa para colocar el cursor en una posición específica. Las posiciones se definen en relación con la superior izquierda (0,0) cuando la pantalla está en modo de texto. La esquina inferior izquierda es (79,24) en el modo de texto 80 x 25, y (39,24) en el modo 40 x 25. Paginas 0-7 0-3 0-7 0 0-7

Modos 00h, 01h 02h, 03h 02h, 03h 07h 07h

Adaptadores CGA, EGA, MCGA, VGA CGA EGA, MCGA, VGA MDA EGA, VGA

INT 10/03 Read Cursor Position and Configuration (leer posición y configuración del cursor) Llamada AH 03h BH Número de página Devuelve BH CH CL DH DL

Número de página de video Línea de examinación inicial para el cursor Línea de examinación final para el cursor Renglón Columna

Comentarios Obtiene las líneas de examinación inicial y final para el cursor, y la actual posición de este. Devuelve los mismos valores usados para colocar el cursor con int. 10/02.

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 10/04

Read Light Pen Position (leer posición de la pluma luminosa) Llamada AH 01h

Devuelve : AH 0, Pluma luminosa no accionada 1, Pluma luminosa accionada BX Columna de píxeles (0 a 319 ó 0 a 639, según el modo) CH Renglón de píxeles (0 a 1999 CX Renglón de píxeles (0-nn, según el modo) DH Renglón de caracteres (0 a 21) DL Columna de caracteres (0 a 79 o 0 a 39, Según el modo)

Comentarios: Lee el estado y la posición de la pluma luminosa. Devuelve información valida solo si la pluma luminosa ha sido accionada (AH = 1). La pluma luminosa devuelve una posición vertical con solo dos líneas de precisión. La precisión horizontal no va mas allá de dos (320 píxeles por línea ) o cuatro píxeles (640 píxeles por línea). Los sistemas PS/2TM (MCGA O VGA) no admiten pluma luminosa (AH siempre devolverá 00H)

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 10/05 Select Active Display Page (seleccionar pagina de presentación visual activa9 Llamada: AH AL

05h Numero de pagina seleccionada (véase la tabla que aparece en Comentarios)

Devuelve: Nada Comentarios Selecciona la pagina de video (presentación visual) activa. Trabaja con adaptadores de CGA, MCGA, EGA o VGA, pero no puede usarse con adaptadores monocromos, que solo tiene una pagina de memoria para presentación visual. Los número de pagina validos son Paginas 0-7 0-3 0-7 0-7 0-3 0-1

modos 00h,01h 02h,03h 02h,03h 07h,0Dh 0Eh 0Fh,10h

Adaptadores CGA, EGA, MCGA, VGA CGA EGA, MCGA, VGA EGA, VGA EGA, VGA EGA, VGA

INT 10/06 Scroll Windows Up (Desplazar la ventana hacia arriba) Llamada AH 06h AL Números de renglones por desplazar BH atributo usado para área en blanco CH renglón, esquina superior izquierda CI Columna, esquina superior izquierda DH Renglón, esquina inferior derecha DL Columna, esquina inferior derecha Devuelve Nada Comentarios Despeja de una ventana con un atributo especifico, o desplaza la ventana hacia arriba determinado número de renglones. todos los renglones de la ventana se desplazan hacia arriba y se añaden renglones en blanco en la parte inferior. Para despejar una ventana, fije AL en 0 o en un valor mayor que el número de renglones de la ventana.

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 10/07 Scroll Window Down (Desplazar la ventana hacia abajo) Llamada AH AL BH CH CL DH DL

07h Número de lineas por desplazar Atributo usado para área en blanco Renglón, esquina superior izquierda Columna, esquina superior izquierda Renglón, esquina inferior derecha Columna, esquina inferior derecha

Devuelve Nada Comentarios Funciona exactamente igual que 10/06, pero los renglones de la ventana se desplazan hacia abajo

INT 10/08 Rend Carácter Atribute (Leer carácter y atributo) Llamada AH BH

08h Página de presentación visual

Devuelve AH AL

Byte de atributo Carácter ASCII

Comentarios Lee los bytes de carácter y atributo (para una pagina de pantalla especifica) en la posición actual del cursor.

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 10/09 Write Carácter and Attribute (escribir carácter y atributo) Llamada AH AL BH BL CX

09h carácter ASCII Pagina de representación visual Byte de atributo del carácter en AL Número de caracteres por escribir

Devuelve Nada Comentarios Escribe los bytes de carácter ASCII y atributos en la posición del cursor en una pagina especifica de representación. Esta función no cambia la posición del cursor. Escribe hasta 65 5360 caracteres en modo de texto. Con forme la función escribe caracteres, cambia de renglón al terminar cada uno. En el modo de graficación, la función solo va al final del renglón en curso y el byte de atributo de video asignado a BL determina el color del carácter escrito. Si el bit 7 vale 1, se le aplica XOR al valor en BL, con el color del fondo cuando se muestra el carácter.

INT 10/10 Write Carácter at Cursor ( Escribir carácter en el cursor) Llamada AH AL BH BL CX

0Ah Carácter ASCII Numero de pagina mostrada Color del carácter en AL ( modos de graficación ) Numero de caracteres por escribir

Devuelve Nada Comentarios Opera exactamente igual que INT 10/09, pero aquí los atributos de la pantalla no se cambian en el modo de texto. Véase la sección Comentarios de INT 10/09 pata mas información.

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 10/0B

Set Color Palette ( Fijar paleta de color ) Llamada: AH BH

0Bh Identificación de la paleta de color que se esta fijando 0,BL tiene color de fondo y borde 1,BL tiene color de paleta

BL

Valor del color que se usará

Devuelve : Nada Comentarios Esta función selecciona o fija el contenido de la paleta de color y sólo trabaja en pantallas de gráficos de definición media. La función no tiene efecto directo sobre la memoria; afecta la forma en que el contador de TRC 6845 interpreta la memoria de video. En modo de texto, esta función establece el color del borde. Las paletas de color válidas para esta función son: Paleta

Pixel

Color

0

0 1

Igual fondo Verde

2

Rojo

1

que

el

3

Café

0

el

1

Igual que fondo Cianata

2

Magenta

3

Blanco

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 10/0C Write Graphics Pixel (Escribir píxel para gráficos) Escribe un solo píxel en la pantalla en una coordenada especificada. Llamada AH AL BH CX DX

0Ch Valor del color Número de pagina Número de columna del píxel Número de renglón del píxel

Devuelve Nada Comentarios En modos de definición media, el efecto de esta función depende de la paleta en uso, si el bit 7 de AL es 1, al nuevo color se le aplica XOR con el píxel actual. Refiérase a la tabla 1 para detalles en los limites de la pantalla según el modo.

INT 10/0D Read graphics píxel (leer píxel para gráficos)

Llamada:

0Dh Número de pagina Número de columna del píxel Número de renglón del píxel

Devuelve: Valor del color Comentarios: Obtiene el valor del píxel en las coordenadas graficas especificas. Refiérase a la tabla 1 para detalles sobre los limites de dirección de los diversos modos de video. Refiersae a INT 10/0C para los números de pagina válidos que pueden fijarse en BH:

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 10/0E Write Text in Teletype Mode (Escribir texto en modo de teletipo ) Llamada AH AL BH BL

0Fh Carácter ASCII Pagina de presentación (modo alfa) Color del primer plano (modos gráficos)

Devuelve Nada

Comentarios Escribe texto en la pantalla con procedimiento de caracteres limitado. La función interpreta los códigos ASCII para campana (07h), retroceso (08h), retorno de carro (0Dh) y avance de línea (0Ah). Después de la escritura, el cursor se mueve a la siguiente posición de carácter. Para trabajar en ROM de PC BIOS fechadas 4/24/81 y 10/19/81, el registro BH debe apuntar a la pagina mostrada en es momento.

INT 10/0F GetCurrent Display Mode (Obtener modo de presentación actual) Llamada AH

0Fh

Devuelve AH AL BH

Número de columnas en pantalla Modo de presentación (véase la Tabla 1) Página activa de presentación

Comentarios Obtiene el modo de presentación del controlador de vídeo, incluyendo el número de columnas y la página actual de presentación.

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 10/10 Set palatte Registers (Fijar registros de paleta) controla (Basándose en la subfunción cargada en AL) operaciones sobre los registros de paleta de color dentro de los controladores de video EGA/VGA Llamada AH

10h

AL 00h, fijar registro de paleta BH Valor de color BL Registro de paleta por fijar AL 01h, fijar registro de color del borde BH Valor de color AL 02h, fijar todos los registros y el borde ES:DX Apuntador a la lista de color de 17 bytes AL 03h,parpadeo/intensidad biestable (solo EGA) BL 00h, Habilitar intensidad 01h, Habilitar parpadeo AL 07h, leer registro de paleta (PS/2) BL Registro de paleta AL

08h, leer registro de sobreexaminación (PS/2)

AL 09, leer registros de paleta borde (PS/2). ES:BX Apuntador a tabla de 17 bytes para valores AL 10h, fijar registro individual de color BX Registro de color por fijar CH Valor del verde por fijar CL Valor del azul por fijar DH Leer valor por fijar AL

12h, fijar bloque de registros de color BX Primer registro de color por fijar CX Número de registro de color por fijar ES:DX Apuntador a valores de color

AL

AL

13h, seleccionar página de color BL 00h, seleccionar modo de paginación BH Modo de paginación 00h = 4 bloques de registros de 64 registros 01h = 16 bloques de registros de 16 registros 01h, seleccionar página de color

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

BL BH AL

01h, seleccionar página 00-03h para bloques de 64 registros 00-04h para bloques de 16 registros

15h, leer registro de color (PS/2) BX Registro de color por leer.

AL

17h, leer bloque de registro de color BX Primer registro de color por leer CX numero de registros de color por leer ES:DX Apuntador a buffer donde se guardaran los valores de los registros de color

AL AL

1Ah, leer estado de pagina de color 1Bh,sumar valores de color de sombras de gris BX Primer registro de color por sumar CX Numero de registros de color por sumar

Devuelve subfunciones 07h Y 08h BU Valor leído subfusión 09h ES:DX

Apuntador a tabla de 17 bytes

subfusión 15h CH CL DH

Lectura de valor para el verde Lectura de valor para el azul Lectura de valor para el rojo

subfusión 17h ES:DX

Apuntador a tabla de color

Subfusión 1Ah BL CX

modo de paginación actual Pagina actual

Comentarios En los sistemas de presentación del PCjrTM, MCGA, EGA, Y VGA, esta función controla la correspondencia de colores con valores de píxel. Esta función es una extensión del BIOS, aplicable a sistemas de presentación EGA/VGA. La explicación detallada de esta función rebasa el alcance de este manual de bolsillo.

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 10/11 Carácter Generator (generador de caracteres) – mantiene (basándose en una subfuncion cargada en AL) funciones graficas generadoras de caracteres. Llamada AL 00h,carga alfa al usuario BH numero de bytes por carácter BL Bloque por cargar CX Cuenta por almacenar DX Desplazamiento del carácter dentro de la tabla ES:BP apuntador a tabla de usuario AL 01h,conjunto monocromático en ROM BL bloque por cargar AL 02h,ROM 8x8 punto doble BL bloque por cargar AL 03h,fijar especificador de bloque BL selección de bloque de generador de caracteres AL 10h,carga alfa al usuario BH números de bytes por carácter BL bloque por cargar CX cuenta por almacenar DX desplazamiento del carácter dentro de la tabla ES:BP apuntador a tabla de usuario AL 11h,conjunto monocromático en ROM BL bloque por cargar AL 12h,ROM 8x8 punto doble BL bloque por cargar AL 20h,fijar apuntador de caracteres del usuario en 1Fh ES:BP apuntador a tabla de usuario AL 21h,fijar apuntador de caracteres del usuario en 43h BL Especificador de renglón CX Bytes por carácter ES:BP Apuntador a tabla de usuario AL 22h,conjunto 8x 14 en ROM BL Especificador de renglón AL 23h, ROM 8x8 punto doble BL especificador de renglón AL 30h, información del sistema BH apuntador de tipo Devuelve: Varía de acuerdo a la subfuncion. Comentarios: Esta función es una extensión de BIOS, aplicable a sistemas de presentación EGA/VGA. La explicación detallada de esta función rebasa el alcance de este manual de bolsillo.

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 10/13 Write String (escribir cadena) Llamada: AH 13H AL modo de escritura (véase la tabla de la sección comentarios) BH pagina de video BL atributo (modos de escritura 0 y 1) CX longitud de la cadena DH renglón en el cual se escribirá la cadena DL columna en la cual se escribirá la cadena ES:BP Apuntador a cadena Devuelve: Nada Comentarios Dispone sólo en PC XT™ con fechas de BIOS de 1/10/86 o posteriores, en el PC/AT y en el PS/2. Escribe una cadena de caracteres en la pantalla actual. La cadena designada puede tener atributos de caracteres incorporados o globales. El modo (AL) se especifica de la siguiente manera:

Modo Comentarios 0 Atributo en BL. La cadena es sólo de caracteres. No actualiza el cursor. 1 Atributo en BL. La cadena es sólo de caracteres. Se actualiza el cursor.

se

2

La cadena alterna caracteres y atributos. No se actualiza el cursor.

3

La cadena alterna caracteres y atributos. Se actualiza el cursor.

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 11 Get Equipment Status (Obtener el estado del equipo) Llamada: Nada Devuelve: AX

Palabra de estado de equipo (Véase la tabla 2)

Comentarios: Durante el proceso de arranque el byte de estado del hardware se fija para indicar el equipo que está conectado con el computador. Como se indica en la tabla 2, el significado de los distintos bits varía de acuerdo con el tipo de computador. Para determinar que tipo de máquina se está usando, verifica el byte de firma del computador en la dirección FFFF:FFFE.

INT 12 Get Memory Size (Obtener el tamaño de la memoria) Llamada: Nada Devuelve: AX

Número de bloques de memoria de 1K

Comentarios: Devuelve en número de bloques de memoria de 1K contiguos encontrados durante las verificaciones de arranque del sistema.

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 13/00 Reset Floppy Disk System (Reestablecer Sistema de Disquetes)

Llamada: AH DL

00h Número de unidad (Basado en 0) Bit 7=0 pa disquete; 1 para disco duro.

Devuelve: Bandera de acarreo en cero si hubo éxito Bandera de acarreo en uno si hubo error. AH Código de retorno (Refiérase a la tabla 3) Comentarios: Reestablece el disquete en preparación para E/S fijando una bandera de reestablecimiento en el controlador de disco, forzando así a la unidad a tirar de las cabezas hacia la pista 0 para la siguiente operación de disco.

INT 13/01 Get Floppy Disk System Status (Obtener estado del sistema de disquetes) Llamada: AH

01h

Devuelve: AH

Byte de estado (Véase la tabla 3)

Comentarios: El estado del controlador se fija después de cada operación de disco. Con está función, su programa puede obtener el estado del disco después de la operación de disco más reciente.

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 13/02 Read Floppy Disk (Leer disquete) Llamada: AH 02h AL Número de sectores por transferir (de 1 a 9) ES:BX Apuntador al buffer de disco del usuario CH Número de pista (0 a 39) CL Número de sector (1 a 39) DH Número de cabeza (0 ó 1) DL Número de unidad (0 a 3) Devuelve: Bandera de acarreo en cero si hubo éxito AL Número de sectores transferidos Bandera de acarreo en uno si hubo error AH Byte de estado (véase Tabla 3) Comentarios: Transfiere uno o más sectores de un disquete a la memoria. Todos los parámetros de entrada deben verificarse cuidadosamente antes de expedir una llamada para servicio; para un valor inválido puede producir resultados impredecibles.

INT 13/03 Write Disk Sectors (Escribir sectores de disco) Llamada: AH 03h AL Número de sectores por transferir (1 a 9) ES:BX Apuntador al buffer de disco del usuarios CH Número de pista (0 a 39) CL Número de sector (1 a 9) DH Número de cabeza (0 ó 1) DL Número de unidad (0 a 3) Devuelve: Bandera de acarreo en cero si hubo éxito AH 0 AL Número de sectores transferidos Bandera de acarreo en uno si hubo error AH Byte de estado (véase la tabla 3) Comentarios: Escribe uno o más sectores de la memoria al disquete. Excepto por el número de unidades de disco, no se verifica la validez de los valores. Pasar un valor inválido puede producir resultados impredecibles.

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 13/04 Verify Disk Sectors (Verifica sectores de disco) Llamada: AH AL CH CL DH DL

04h Número Número Número Número Número

de de de de de

sectores por verificar (1 a 9) pista (0 a 39) sector (1 a 9) cabeza (0 ó 1) unidad (0 a 3)

Devuelve: Bandera de acarreo en cero si hubo éxito AH 0 Bandera de acarreo en uno si hubo error AH Byte de estado (véase la tabla 3) Comentarios: La verificación de disco ocasiona que el sistema lea los datos en el sector o sectores designados y verifique si CRC (Cyclic Redundancy Check, verificación de redundancia cíclica) calculada contra los datos almacenados en el disco.

INT 13/05 Format Disk Track (Dar formato a pista del disco) Llamada: AH ES:BX pista CH DH DL

Número de pista Número de cabeza Número de unidad

Devuelve: AH

Código de retorno (véase la tabla 3)

05

Apuntador a lista de campos de direcciones de

Comentarios: Da formato a una pista de disco iniciando los campos de dirección de disco y los sectores de datos. La operación de dar formato a disco es controlada por la lista de campos de direcciones de pistas (ES:BX). La tabla está dispuesta como una serie de entradas de 4 bytes (1 para cada sector de la pista) con cada entrada de la manera siguiente:

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

Desplazamiento de byte 00h 01h 02h 03h

Significativo Número de pista Número de cabeza Número de sector Código de tamaño

La siguiente tabla muestra códigos de tamaño permisibles; las entradas están dispuestas en el orden en el que los sectores aparecerán en el disco. Este orden no tiene que ser secuencial. Código de tamaño

Bytes por sector

128 256 512 1024 Dar formato a una pista de disco es solo una parte de la tarea de dar formato a todo el disco. Para mayor información sobre el uso de esta función, véase el libro Using Assembly Lenguage publicado por Que Corporation.

INT 13/08 Return Disk Drive Parameters (Devolver parámetros de unidad de disco) Llamada: AH DL

08h Número de unidad (basado en 0= Bit 7=0 para disquete; 1 para disco duro

Devuelve Bandera de acarreo en cero si hubo éxito CH número de pistas por lado CL Número de sectores por pista DH Número de lados DL Número de unidades consecutivas conectadas ES:BP Apuntador a tabla de parámetros de disquetes de 11 bytes BL Valor de tipo de unidad válido de CMOS 01h=5.25”, 360K, 40 Pistas 02h=5.25”, 1.2M, 80 Pistas 03h=3.5”, 720K, 80 Pistas 04h=3.6”, 1.44M, 80 Pistas

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

Bandera de acarreo en uno si hubo error AH Estado de error (véase la tabla 3) Comentarios: Disponible sólo en el PC/AT (BIOS con fecha posterior a 1/10/84) y en el PS/2. Le permite verificar las características del disco en la unidad designada. Al regreso, la tabla apuntada por ES:DI tiene el siguiente formato: Desplazamiento 00h 01h 02h de la unidad 03h 04h 05h 06h 07h 08h 09h 0Ah

Significado Primer byte de especificación Segundo byte de especificación Número de tictacs de reloj antes de apagar el motor Número de bytes por sector 00h=128 02h=512 01h=256 03h=1024 Sectores por pista Longitud de marca de terminación Longitud de datos Longitud de marca de terminación para dato Byte de relleno para formato Tiempo de colocación de la cabeza en milisengundos Tiempo de arranque del motor en octavos de segundo

INT 13/09 lnitialize Fixed Disk Table (Asignar valores iniciales a la tabla de disco duro) -fija (en sus valores por omisión) los valores de la tabla de disco duro especificada. Llamada AH 09h DL Número de unidad de disco duro Devuelve Bandera de acarreo en cero si hubo éxito AH O Bandera de acarreo en uno si hubo error A H Byte de estado (véase la Tabla 3) Comentarios Use esta funci6n, que solo está disponible en el PCIA T y PSI2 y trabaja solo en disco duro, para fijar los parámetros físicos de la unidad de disco duro. Los números de unidad provienen de una serie especial de números para discos duros (80h corresponde al primer disco, 81h al

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

segundo, ..etc.). El uso de un número de .unidad de disco fuera del intervalo provocará resultados impredecibles. La información de iniciación para la unidad se toma de las tablas de parámetros de disco duro. El vector de interrupción 41 h apunta a la tabla para el disco 1; el vector 46h apunta a la .tabla para el disco 2. Si se hace referencia a algún otro disco, la función devuelve un byte de estado de orden inválida en AH.

INT 13/0A "Read Long Sector (Leer sector largo) Llamada: AH 0AH AL Número de sectores ES,BX Apuntador de buffer de datos CH pista CL sector DH Número de cabeza DL Número de unidad de disco duro Devuelve: Bandera de acarreo en cero .Si hubo éxito AH 0 Bandera de acarreo en uno si hubo error AH Byte de estado (véase la Tabla 3) Comentarios: Disponible sólo en el PC/A T y trabaja sólo en disco duro. Lee sectores largos (Sectores estándar Con 4 bytes de código de corrección de errores). Los números de unidad provienen de una serie especial de números para discos duros (80h corresponde al primer disco, 81H al segundo, etc.). La siguiente tabla proporciona intervalos de parámetros válidos para esta función. Observe que el numero de pista es uno de lO bits almacenado Con los 2 bits de orden alto en CL y los bits de orden inferior en CH. El sector es un número de 6 bits almacenado en bits del O al 5 de CL. REGISTRO

PARAMETRO

AL CH/CL CL DH DL

# sector Pista Sector Cabeza Unidad

INTERVALO VALIDO 1 a 121 0 a 1023 1 a 17 0 A 15 80h, 81h, etc.

MANUAL DE BOLSILLO FUNCIONES DE DOS Y BIOS

INT 13/0B Write Long Sector (Escribir sector largo) Llamada: AH OBh AL Número de sectores ES:BX Apuntador a buffer de datos CH Pista CL Sector DH Número de cabeza DL Número de unidad de disco duro Devuelve: Bandera de acarreo en cero si hubo éxito AH O Bandera de acarreo en cero si hubo error AH Byte de estado (véase la Tabla 3) Comentarios Disponible sólo en el PCIA T y trabaja solo en disco duro. Los sectores largos son sectores estándar que contienen cuatro bytes de código de corrección de errores. Los números de unidad provienen de una serie especial de números para discos duros (80h es el primer disco, 8th el segundo, etc). Un número de unida
View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF