estructura EMULATOR_ACCESS_ENTRY (dispmprt.h)
La estructura EMULATOR_ACCESS_ENTRY especifica un elemento de la matriz emulatorAccessEntries configurada en la estructura VIDEO_PORT_CONFIG_INFO por controladores de adaptadores compatibles con VGA (SVGA) en plataformas de sistema operativo basadas en NT basadas en x86.
typedef struct _EMULATOR_ACCESS_ENTRY {
ULONG BasePort;
ULONG NumConsecutivePorts;
EMULATOR_PORT_ACCESS_TYPE AccessType;
UCHAR AccessMode;
UCHAR StringSupport;
PVOID Routine;
} EMULATOR_ACCESS_ENTRY, *PEMULATOR_ACCESS_ENTRY;
BasePort
Especifica la dirección física relativa al bus del puerto o los puertos de E/S que va a enlazar el emulador V86. Este valor y el intervalo de puertos deben estar dentro de un intervalo de acceso de puertos de E/S ya reclamados en el registro por VideoPortGetAccessRanges o VideoPortVerifyAccessRanges.
NumConsecutivePorts
Especifica el número de puertos consecutivos que va a enlazar el emulador V86, empezando por BasePort. Este valor viene determinado por el ancho de cada puerto de E/S enganchado. Por ejemplo, si las direcciones de puerto 0x3C0 y 0x3C1 se enlazan como un único puerto direccionable de USHORT, este valor debe ser 1.
AccessType
Especifica el tamaño de los datos transferidos a través del puerto de E/S especificado como uno de Uchar, Ulongo Ushort.
AccessMode
Especifica cómo se puede acceder al puerto de E/S especificado como una o una combinación (ORed) de los siguientes valores:
- EMULATOR_READ_ACCESS
- EMULATOR_WRITE_ACCESS
El intervalo de puertos de E/S debe ser accesible en al menos uno de los modos anteriores.
StringSupport
Indica si la función de svgaHwIoPortXxx proporcionada por el controlador admite accesos de cadena en casos en los que muchos valores de la AccessType especificados se "bombean" a través de un puerto de E/S consecutivamente. Si este miembro se establece en TRUE, el miembro rutina de debe especificar el punto de entrada de un controlador de miniport proporcionado función svgaHwIoPortXxxString.
Routine
Puntero al SvgaHwIoPortXxx del controlador de miniporte que controla el acceso al puerto o a los puertos descritos en esta estructura.
Los controladores de miniporte compatibles con VGA del hardware de vídeo SVGA en máquinas basadas en x86 deben definir intervalos de acceso del emulador, que un controlador de miniporte compatible con VGA puede configurarse con VideoPortSetTrappedEmulatorPorts para acceder directamente desde aplicaciones de MS-DOS de pantalla completa para una E/S más rápida. Este controlador debe proporcionar un conjunto de funciones svgaHwIoPortXxx para validar cualquier secuencia de emitidos por la aplicacións, inSB/INSW/INSDs, outs o OUTSB/OUTSW/OUTSDs a cada intervalo de puertos de E/S.
Los datos de cada elemento de tipo EMULATOR_ACCESS_ENTRY se usan para determinar qué puertos de E/S (ubicaciones de memoria en las que se puede acceder a los registros de adaptadores) en los intervalos de acceso del controlador de miniporte han sido tomados por el emulador V86 en plataformas basadas en x86. Los valores escritos en estas ubicaciones por MS-DOS aplicaciones de pantalla completa se capturan y reenvían a la función de validación del controlador de miniporte correspondiente SvgaHwIoPortXxx para la validación antes de que se escriban o lean desde el adaptador de vídeo. Sin embargo, el controlador de minipuerto puede permitir que la aplicación acceda directamente a intervalos de puertos de E/S concretos llamando a VideoPortSetTrappedEmulatorPorts para mejorar el rendimiento.
Requisito | Valor |
---|---|
encabezado de | dispmprt.h (incluya Dispmprt.h) |