función del segread
Esta función se ha definido en dos.h. Esta función lee los registros del segmento. El declaración de la función es como sigue:
void segread(struct SREGS *segp);
donde el segread pone los valores actuales del segmento se coloca en el *segp de la estructura. No se vuelve nada por la función y la llamada se piensa para el uso con el intdosx e int86x. veamos un ejemplo:
#include <stdio.h>
#include <dos.h>
void main()
{
struct SREGS segs;
segread(&segs);
printf("Current segment register settings\n\n");
printf("CS: %X DS: %X\n", segs.cs, segs.ds);
printf("ES: %X SS: %X\n", segs.es, segs.ss);
getch();
}
Y la salida del programa será algo similar:
Ajustes actuales del registro del segmento
CS: EED DS: 10BA
ES: 10BA SS: 10BA |
intdos y funciones del intdosx
Estas funciones se han definido en dos.h. Éstos son los interfaces generales de la interrupción del DOS. Los intdos de la función invocan los registros entonces DX del servicio del MS-DOS y el AL donde el intdosx de la función invoca servicio del MS-DOS con valores del registro del segmento.
El declaración de la función de los intdos es como sigue:
int intdos(union REGS *inregs, union REGS *outregs);
y el declaración de la función del intdosx es como:
int intdosx(union REGS *inregs, union REGS *outregs,
struct SREGS *segregs);
|