PDRIVER_IO_PORT_USHORT_STRING función de devolución de llamada (video.h)

SvgaHwIoPortUshortString intercepta un intervalo de puertos de E/S al que una aplicación MS-DOS de pantalla completa en una máquina basada en x86 envía una secuencia de datos de tamaño USHORT.

Sintaxis

PDRIVER_IO_PORT_USHORT_STRING PdriverIoPortUshortString;

VP_STATUS PdriverIoPortUshortString(
  ULONG_PTR Context,
  ULONG Port,
  UCHAR AccessMode,
  PUSHORT Data,
  ULONG DataLength
)
{...}

Parámetros

Context

Especifica el valor de contexto determinado por el controlador de miniport que se estableció en EmulatorAccessEntriesContext de VIDEO_PORT_CONFIG_INFO.

Port

Especifica el puerto de E/S asignado que se va a interceptar.

AccessMode

Especifica el tipo de acceso permitido, que puede ser una o una combinación (ORed) de los valores siguientes:

EMULATOR_READ_ACCESS
EMULATOR_WRITE_ACCESS

Data

Puntero a la cadena de valores de datos de USHORT que se van a transferir. Se obtiene acceso a esta cadena de un valor cada vez hasta que se han enganchado todos los valores.

DataLength

Especifica el número de valores de USHORT en la cadena.

Valor devuelto

SvgaHwIoPortUshortString devuelve el estado final de la operación.

Comentarios

Solo los controladores miniporte de adaptadores SVGA compatibles con VGA tienen funciones SvgaHwIoPortXxx . (Consulte Funciones SVGA).

SvgaHwIoPortUshortString intercepta cualquier acceso de intervalo intentado por una aplicación MS-DOS de pantalla completa que emite o ambas de las instrucciones REP OUTSW DX, ESI y REP INSW EDI, DX.

Si el controlador de minipuerto habilita el intervalo de puertos para el acceso directo mediante una llamada a VideoSetTrappedEmulatorPorts, no se llamará a su función SvgaHwIoPortUshortString . Esta aplicación tendrá acceso directo al intervalo de puertos de E/S, a menos que el controlador de miniporte deshabilite el intervalo de puertos con otra llamada a VideoSetTrappedEmulatorPorts.

Si una o más instrucciones x86 INSW o OUTSW emitidas por la aplicación podrían afectar al estado del registro del secuenciador de adaptadores compatible con VGA, al registro de salida varios o a cualquier registro específico del adaptador y, por lo tanto, hacer que la máquina se bloquee, el controlador de miniporte no debe habilitar el puerto para el acceso directo mediante una llamada a VideoPortSetTrappedEmulatorPorts.

SvgaHwIoPortUshortString debe almacenar en búfer las instrucciones posteriores de la aplicación y comprobar que ninguna puede bloquear la máquina. Si la aplicación emite cualquier secuencia de instrucciones que pudiera bloquear la máquina, SvgaHwIoPortUshortString debe descartar las instrucciones almacenadas en búfer. De lo contrario, debe generarlos, un USHORT a la vez, en el puerto de E/S asignado especificado.

SvgaHwIoPortUshortString debe ser paginable.

Requisitos

Requisito Value
Plataforma de destino Escritorio
Encabezado video.h (incluir Video.h)

Consulte también

EMULATOR_ACCESS_ENTRY

Funciones SVGA

SvgaHwIoPortUshort

VIDEO_ACCESS_RANGE

VIDEO_PORT_CONFIG_INFO

VideoPortGetDeviceBase

VideoPortSetTrappedEmulatorPorts