PDRIVER_IO_PORT_USHORT 콜백 함수(video.h)

SvgaHwIoPortUshort 는 x86 기반 컴퓨터의 전체 화면 MS-DOS 애플리케이션이 일련의 USHORT 크기 데이터를 보내는 I/O 포트 범위를 트래핑합니다.

구문

PDRIVER_IO_PORT_USHORT PdriverIoPortUshort;

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

매개 변수

Context

VIDEO_PORT_CONFIG_INFO EmulatorAccessEntriesContext 멤버에 설정된 미니포트 드라이버 결정 컨텍스트 값을 지정합니다.

Port

트래핑할 매핑된 I/O 포트를 지정합니다.

AccessMode

허용되는 액세스 유형을 지정합니다. 이 형식은 다음 값 중 하나 또는 조합(ORed)일 수 있습니다.

EMULATOR_READ_ACCESS
EMULATOR_WRITE_ACCESS

Data

전송할 USHORT 데이터에 대한 포인터입니다.

반환 값

SvgaHwIoPortUshort는 작업의 최종 상태 반환합니다.

설명

VGA 호환 SVGA 어댑터의 미니포트 드라이버에만 SvgaHwIoPortXxx 함수가 있습니다. ( SVGA 함수를 참조하세요.)

SvgaHwIoPortUshortOUT DX, AX 및 IN AX, DX 명령 중 하나 또는 둘 다를 실행하는 전체 화면 MS-DOS 애플리케이션 에서 시도한 범위 액세스를 가로채습니다.

미니포트 드라이버가 VideoSetTrappedEmulatorPorts를 호출하여 직접 액세스하기 위해 포트 범위를 사용하도록 설정하는 경우 해당 SvgaHwIoPortUshort 함수가 호출되지 않습니다. 그런 다음 미니포트 드라이버가 VideoSetTrappedEmulatorPorts에 대한 다른 호출로 포트 범위를 사용하지 않도록 설정하지 않는 한 이러한 애플리케이션은 I/O 포트 범위에 직접 액세스할 수 있습니다.

하나 이상의 애플리케이션에서 발급한 x86 IN 또는 OUT 지침이 VGA 호환 어댑터 시퀀서 레지스터, 기타 출력 레지스터 또는 어댑터별 레지스터의 상태에 영향을 줄 수 있으므로 컴퓨터가 중단되면 미니포트 드라이버는 VideoPortSetTrappedEmulatorPorts를 호출하여 포트를 직접 액세스하도록 설정해서는 안 됩니다.

SvgaHwIoPortUshort는 애플리케이션의 후속 지침을 버퍼링해야 하며 아무도 컴퓨터를 중단하지 않을 수 검사. 애플리케이션이 컴퓨터를 중단할 수 있는 명령 시퀀스를 발급하는 경우 SvgaHwIoPortUshort 는 버퍼링된 지침을 취소해야 합니다. 그렇지 않으면 지정된 매핑된 I/O 포트에 한 번에 USHORT를 출력해야 합니다.

SvgaHwIoPortUshort을 페이지 가능으로 만들어야 합니다.

요구 사항

요구 사항
대상 플랫폼 데스크톱
머리글 video.h(Video.h 포함)

추가 정보

EMULATOR_ACCESS_ENTRY

SVGA 함수

SvgaHwIoPortUshortString

VIDEO_ACCESS_RANGE

VIDEO_PORT_CONFIG_INFO

VideoPortGetDeviceBase

VideoPortSetTrappedEmulatorPorts