次の方法で共有


PVIDEO_HW_RESET_HWコールバック関数 (video.h)

HwVidResetHw は、アダプターを文字モードにリセットします。

構文

PVIDEO_HW_RESET_HW PvideoHwResetHw;

BOOLEAN PvideoHwResetHw(
  PVOID HwDeviceExtension,
  ULONG Columns,
  ULONG Rows
)
{...}

パラメーター

HwDeviceExtension

ミニポート ドライバーのアダプターごとの記憶域へのポインター。 詳細については、「 デバイス拡張機能」を参照してください。

Columns

設定するモードの列数を指定します。

Rows

設定するモードの行数を指定します。

戻り値

HwVidResetHw は、アダプターを指定された文字モードに完全にリセットする場合は TRUE を 返す必要があります。 それ以外の場合は、HWVidResetHw が制御を返した後、HAL が INT10 と同等の MODE3 型 BIOS 呼び出しを実行する必要があることを示す FALSE を返す必要があります。

注釈

ビデオ ミニポート ドライバーは、そのアダプターがマシンのハード ブートなしで完全に初期化された状態にリセットできない場合 は、HwVidResetHw 関数を持っている必要があります。 たとえば、アダプターの ROM 初期化コードでアダプターの状態をブートアップ モードにリセットできない場合、ミニポート ドライバーには HwVidResetHw 関数が必要です。 ミニポート ドライバーがこの関数を実装する必要があるもう 1 つの理由は、アダプターの電源が切れたときにアダプターの割り込み行をクリーンし、システムが次回起動時に割り込みを減らさないようにすることです。

システムがクラッシュしようとしている場合、HAL は HwVidResetHw を呼び出し、システムのシャットダウン中に HAL が画面上に情報を表示できるようにします。 この呼び出しは任意の IRQL で行うことができます。ドライバーは、いつでもそれを処理する準備ができている必要があります。 HAL は、ソフト ブートが発生したときにマシンが再起動される直前に HwVidResetHw も呼び出します。

ほとんどのミニポート ドライバーは、INT10、MODE3 型コマンドの受信時に VGA 標準文字モードにリセットされるアダプターのドライバーを除き、この関数を提供する必要があります。

HwVidResetHw は、指定された ColumnsRows の値に従って、アダプターを文字モードにリセットします。 ただし、システムがシャットダウンしているため、 HwVidResetHw は BIOS またはページング可能なコードを呼び出すことができません。 HwVidResetHw では、 VideoPortRead/WritePortXxx 関数または VideoPortRead/WriteRegisterXxx 関数のみを呼び出す必要があります。 ( 「ビデオ ポート ドライバーによってエクスポートされた関数」を参照してください)。

HwVidResetHw は、アダプター レジスタをプログラミングするだけでアダプターのモードを変更できない場合は、アダプター レジスタに適切な値を設定し、FALSE を返すことができます。 これにより、HAL は拡張 INT10 型の操作を実行して、ビデオ アダプターを文字モードにリセットします。

HwVidResetHw はVideoPortInt10 を呼び出してはなりません。 ミニポート ドライバーの HwVidStartIO 関数は、ディスプレイ プログラムがミニポート ドライバーの HwVidResetHw 関数ではなく、グラフィックス表示モードのテストまたは変更に使用されるたびにアダプターをリセットするために、IOCTL_VIDEO_RESET_DEVICE VRP と共に呼び出されます。

HwVidResetHw をページング可能にすることはできません。

要件

要件
対象プラットフォーム デスクトップ
Header video.h (Video.h を含む)

こちらもご覧ください

ビデオ ポート ドライバーによってエクスポートされた関数

HwVidInitialize

HwVidStartIO

IOCTL_VIDEO_RESET_DEVICE

VideoPortInt10