PDRIVER_IO_PORT_USHORT función de devolución de llamada (video.h)
SvgaHwIoPortUshort intercepta un intervalo de puertos de E/S al que una aplicación de MS-DOS de pantalla completa en una máquina basada en x86 envía una secuencia de datos de tamaño de USHORT.
Sintaxis
PDRIVER_IO_PORT_USHORT PdriverIoPortUshort;
VP_STATUS PdriverIoPortUshort(
ULONG_PTR Context,
ULONG Port,
UCHAR AccessMode,
PUSHORT Data
)
{...}
Parámetros
Context
Especifica el valor de contexto determinado por el controlador de miniport que se estableció en el EmulatorAccessEntriesContext miembro 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 siguientes valores:
- EMULATOR_READ_ACCESS
- EMULATOR_WRITE_ACCESS
Data
Puntero a los datos de USHORT que se van a transferir.
Valor devuelto
svgaHwIoPortUshort devuelve el estado final de la operación.
Observaciones
Solo los controladores de miniporte de adaptadores SVGA compatibles con VGA tienen funciones de SvgaHwIoPortXxx. (Consulte funciones SVGA).
SvgaHwIoPortUshort intercepta cualquier acceso de intervalo intentado por una aplicación de MS-DOS de pantalla completa que emite o ambas instrucciones OUT DX, AX y IN AX, DX.
Si el controlador de miniporta habilita el intervalo de puerto de para el acceso directo llamando a VideoSetTrappedEmulatorPorts, no se llamará a su función de svgaHwIoPortUshort. A continuación, dicha aplicación tendrá acceso directo al intervalo de puertos de E/S, a menos que el controlador de miniporte deshabilite el intervalo de Puerto con otra llamada a VideoSetTrappedEmulatorPorts.
Si una o varias instrucciones de salida x86 emitidas por la aplicación o OUT 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 debe no habilitar el puerto para el acceso directo llamando a VideoPortSetTramulatorPorts.
svgaHwIoPortUshort 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 alguna secuencia de instrucciones que puedan bloquear la máquina, svgaHwIoPortUshort 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.
svgaHwIoPortUshort debe ser paginable.
Requisitos
Requisito | Valor |
---|---|
de la plataforma de destino de | Escritorio |
encabezado de | video.h (incluya Video.h) |