Bagikan melalui


PDRIVER_IO_PORT_UCHAR fungsi panggilan balik (video.h)

SvgaHwIoPortUchar menjebak port I/O tempat aplikasi MS-DOS layar penuh dalam mesin berbasis x86 mengirim data berukuran UCHAR.

Sintaks

PDRIVER_IO_PORT_UCHAR PdriverIoPortUchar;

VP_STATUS PdriverIoPortUchar(
  ULONG_PTR Context,
  ULONG Port,
  UCHAR AccessMode,
  PUCHAR Data
)
{...}

Parameter

Context

Menentukan nilai konteks miniport yang ditentukan driver yang ditetapkan di anggota EmulatorAccessEntriesContextdari VIDEO_PORT_CONFIG_INFO.

Port

Menentukan port I/O yang dipetakan untuk dijebak.

AccessMode

Menentukan jenis akses yang akan dijebak, yang bisa berupa satu atau kombinasi (ORed) dari nilai berikut:

EMULATOR_READ_ACCESS
EMULATOR_WRITE_ACCESS

Data

Arahkan ke byte yang akan ditransfer.

Nilai kembali

SvgaHwIoPortUchar mengembalikan status akhir operasi.

Keterangan

Hanya driver miniport adaptor SVGA yang kompatibel dengan VGA yang memiliki fungsi SvgaHwIoPortXxx . (Lihat Fungsi SVGA.)

SvgaHwIoPortUchar mencegat akses byte apa pun yang dicoba oleh aplikasi MS-DOS layar penuh yang mengeluarkan salah satu atau kedua instruksi OUT DX, AL dan IN AL, DX.

Jika driver miniport mengaktifkan Port untuk akses langsung dengan memanggil VideoPortSetTrappedEmulatorPorts, fungsi SvgaHwIoPortUchar-nya tidak akan dipanggil. Aplikasi seperti itu kemudian akan memiliki akses langsung ke Port, kecuali driver miniport menonaktifkan Port dengan panggilan lain ke VideoPortSetTrappedEmulatorPorts.

Jika satu atau beberapa instruksi IN atau OUT x86 yang dikeluarkan aplikasi dapat memengaruhi status register sequencer adapter yang kompatibel dengan VGA, register output lain-lain, atau register khusus adapter apa pun dan, dengan demikian, menyebabkan mesin macet, driver miniport tidak boleh mengaktifkan port untuk akses langsung dengan memanggil VideoPortSetTrappedEmulatorPorts.

SvgaHwIoPortUchar harus menyangga instruksi berikutnya dari aplikasi ke Port dan memeriksa bahwa tidak ada yang dapat menggantung komputer. Jika aplikasi mengeluarkan urutan instruksi yang mungkin menggantung komputer, SvgaHwIoPortUchar harus membuang instruksi yang di-buffer. Jika tidak, itu harus mengeluarkannya, UCHAR pada satu waktu, ke port I/O yang ditentukan dan dipetakan.

SvgaHwIoPortUchar harus dibuat dapat di-pageable.

Persyaratan

Persyaratan Nilai
Target Platform Desktop
Header video.h (sertakan Video.h)

Lihat juga

EMULATOR_ACCESS_ENTRY

Fungsi SVGA

SvgaHwIoPortUcharString

VIDEO_ACCESS_RANGE

VIDEO_PORT_CONFIG_INFO

VideoPortGetDeviceBase

VideoPortSetTrappedEmulatorPorts