(57)【要約】【課題】システムコンフィグレ−ションに関する設定／変更を行う。【解決手段】ＢＩＯＳプログラムは、システム構成情報を取得／設定するシステムコンフィグレーションインタフェースプログラムを含み、このシステムコンフィグレーションインタフェースプログラムには、複数のサブファンクション情報の内、指定されたサブファンクション情報を取得／設定するファンクション実行ルーチンが含まれている。複数のサブファンクション情報の内の所定のサブファンクション情報を指定する、オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求を受けると、システムコンフィグレーションインタフェースプログラムに含まれているファンクション実行ルーチンが呼び出され、これによって、指定されたサブファンクション情報の取得／設定が実行される。【選択図】      図１
2005011381.tif 000002
【特許請求の範囲】
【請求項１】
システム構成情報を構成する複数のサブファンクション情報それぞれの設定内容に応じてシステム動作環境が決定されるコンピュータシステムにおいて、
ハードウェア制御のためのＢＩＯＳプログラムを格納するプログラムメモリであって、前記ＢＩＯＳプログラムは、前記システム構成情報を取得／設定するシステムコンフィグレーションインタフェースプログラムを含み、このシステムコンフィグレーションインタフェースプログラムには、前記複数のサブファンクション情報の内、指定されたサブファンクション情報を取得／設定するファンクション実行ルーチンが含まれているプログラムメモリと、
前記コンピュータシステムで実行されるオペレーティングシステムまたはアプリケーションプログラムと前記ＢＩＯＳプログラムとの間のインタフェースを行うインタフェース手段であって、前記複数のサブファンクション情報の内の所定のサブファンクション情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記指定されたサブファンクション情報の取得／設定を実行させるインタフェース手段とを具備することを特徴とするコンピュータシステム。
【請求項２】
前記複数のサブファンクション情報は、電力消費量が互いに異なる前記コンピュータシステムの複数の動作環境の中の１つを指定するバッテリーセーブモード情報を少なくとも含んでおり、
前記インタフェース手段は、前記バッテリーセーブモード情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記バッテリーセーブモード情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項３】
前記複数のサブファンクション情報は、前記コンピュータシステムのＣＰＵの処理スピードを指定するプロセッシングスピード情報を少なくとも含んでおり、
前記インタフェース手段は、前記プロセッシングスピード情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記プロセッシングスピード情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項４】
前記複数のサブファンクション情報は、前記コンピュータシステムのアイドル状態に応答して前記コンピュータシステムを電力消費の少ない動作モードに移行させるスリープモードの有効／無効を指定するスリープモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記スリープモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記スリープモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項５】
前記複数のサブファンクション情報は、前記コンピュータシステムのアイドル状態に応答して前記コンピュータシステムのディスプレイを消灯するディスプレイオートオフモードの有効／無効を指定するディスプレイオートオフモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記ディスプレイオートオフモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記ディスプレイオートオフモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項６】
前記複数のサブファンクション情報は、前記コンピュータシステムのアイドル状態に応答して前記コンピュータシステムのハードディスクドライブを動作停止させるＨＤＤオートオフモードの有効／無効を指定するＨＤＤオートオフモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記ＨＤＤオートオフモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記ＨＤＤオートオフモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項７】
前記複数のサブファンクション情報は、前記コンピュータシステムのＣＰＵキャッシュの有効／無効を指定するキャッシュステータス設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記キャッシュステータス設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記キャッシュステータス設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項８】
前記複数のサブファンクション情報は、前記コンピュータシステムのスピーカ音量を指定するスピーカボリーューム設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記スピーカボリーューム設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記スピーカボリーューム設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項９】
前記複数のサブファンクション情報は、前記コンピュータシステムのスピーカの動作の有効／無効を指定するスピーカ設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記スピーカ設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記スピーカ設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項１０】
前記複数のサブファンクション情報は、前記コンピュータシステムのバッテリ残存容量の低下を通知するローバッテリアラームモードの有効／無効を指定するローバッテリアラームモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記ローバッテリアラームモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記ローバッテリアラームモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項１１】
前記複数のサブファンクション情報は、前記コンピュータシステムのディスプレイパネルが閉じられた時にアラーム音を発生するパネルクローズアラームモードの有効／無効を指定するパネルクローズアラームモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記パネルクローズアラームモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記パネルクローズアラームモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項１２】
前記複数のサブファンクション情報は、前記コンピュータシステムのディスプレイパネルの開閉に応じてレジューム／サスペンド処理を実行するパネルパワーオン／オフモードの有効／無効を指定するパネルパワーオン／オフモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記パネルパワーオン／オフモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記パネルパワーオン／オフモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項１３】
前記複数のサブファンクション情報は、前記コンピュータシステムを自動的にパワーオンさせる日付を指定するアラームパワーオン設定日付情報を少なくとも含んでおり、
前記インタフェース手段は、前記アラームパワーオン設定日付情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記アラームパワーオン設定日付情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項１４】
前記複数のサブファンクション情報は、前記コンピュータシステムを自動的にパワーオンさせる時間を指定するアラームパワーオン設定時間情報を少なくとも含んでおり、
前記インタフェース手段は、前記アラームパワーオン設定時間情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記アラームパワーオン設定時間情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項１５】
前記複数のサブファンクション情報は、前記コンピュータシステムのアイドル状態に応答して前記コンピュータシステムをサスペンドさせるシステムオートオフモードの有効／無効またはそのモードを実行させる条件を指定するシステムオートオフモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記システムオートオフモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記システムオートオフモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項１６】
前記複数のサブファンクション情報は、前記コンピュータシステムのバッテリ残存容量をパーセンテージで示す第１のバッテリ残存容量情報を少なくとも含んでおり、
前記インタフェース手段は、前記第１のバッテリ残存容量情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記第１のバッテリ残存容量情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項１７】
前記複数のサブファンクション情報は、前記コンピュータシステムのバッテリ残存容量を使用可能時間で示す第２のバッテリ残存容量情報を少なくとも含んでおり、
前記インタフェース手段は、前記第２のバッテリ残存容量情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記第２のバッテリ残存容量情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項１８】
前記複数のサブファンクション情報は、前記コンピュータシステムのＬＣＤの輝度について高輝度および低輝度の一方を指定するＬＣＤ輝度ステータス設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記ＬＣＤ輝度ステータス設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記ＬＣＤ輝度ステータス設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項１９】
前記複数のサブファンクション情報は、前記コンピュータシステムの有するホットキー機能の有効／無効を指定するホットキーモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記ホットキーモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記ホットキーモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項２０】
前記複数のサブファンクション情報は、システムを起動するディスク装置の順番を指定するブート優先度設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記ブート優先度設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記ブート優先度設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項２１】
前記複数のサブファンクション情報は、前記コンピュータシステムのＣＰＵキャッシュのライトポリシーを指定するキャッシュライトポリシー設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記キャッシュライトポリシー設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記キャッシュライトポリシー設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項２２】
前記複数のサブファンクション情報は、前記コンピュータシステムのコンピュータ本体に装着された拡張ユニットをそのコンピュータ本体から取り外すためのイジェクトスイッチが押下された時にパスワードチェックを行うイジェクトパスワードモードの有効／無効を指定するイジェクトパスワードモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記イジェクトパスワードモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記イジェクトパスワードモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項２３】
前記複数のサブファンクション情報は、前記コンピュータシステムのモデムおよびシリアルポートからの着呼信号に応じて前記コンピュータシステムをパワーオンさせるリングインジケータモードの有効／無効を指定するリングインジケータモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記リングインジケータモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記リングインジケータモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項２４】
前記複数のサブファンクション情報は、前記コンピュータシステムのＣＰＵを冷却するために用意された複数種の冷却機能の中で使用する冷却機能を指定するクーリングメソッド設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記クーリングメソッド設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記クーリングメソッド設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項２５】
前記複数のサブファンクション情報は、前記コンピュータシステムのＲＯＭの高速アクセスのためにそのＲＯＭの内容をＲＡＭにコピーして使用するシャドウＲＡＭモードの有効／無効を指定するシャドウＲＡＭモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記シャドウＲＡＭモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記シャドウＲＡＭモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項２６】
前記複数のサブファンクション情報は、前記コンピュータシステムの外部オプションＲＯＭについてのＲＯＭ／ＲＡＭコピーおよびキャッシュ制御に関する設定を指定する外部メモリセットアップモード情報を少なくとも含んでおり、
前記インタフェース手段は、前記外部メモリセットアップモード情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記外部メモリセットアップモード情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項２７】
前記複数のサブファンクション情報は、前記コンピュータシステムのディスプレイに関する各種モードを指定するディスプレイモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記ディスプレイモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記ディスプレイモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項２８】
前記複数のサブファンクション情報は、ＬＣＤの表示色数を指定するカラーエミュレーション設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記カラーエミュレーション設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記カラーエミュレーション設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項２９】
前記複数のサブファンクション情報は、前記コンピュータシステムにおけるテキスト表示モードにおいてフォントをストレッチする機能の有効／無効を指定するフォントモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記フォントモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記フォントモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項３０】
前記複数のサブファンクション情報は、前記コンピュータシステムの１台目のＨＤＤについてその有効／無効の設定およびその記憶容量を示す第１のＨＤＤタイプ設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記第１のＨＤＤタイプ設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記第１のＨＤＤタイプ設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項３１】
前記複数のサブファンクション情報は、前記コンピュータシステムのＨＤＤのモードをエンハンスドＩＤＥモードおよびスタンダードＩＤＥモードの一方に設定するＨＤＤモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記ＨＤＤモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記ＨＤＤモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項３２】
前記複数のサブファンクション情報は、前記コンピュータシステムのパラレルポートの使用環境を指定するパラレルポートモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記パラレルポートモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記パラレルポートモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項３３】
前記複数のサブファンクション情報は、前記コンピュータシステムのキーボードに関する使用環境を指定するキーボードタイプ設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記キーボードタイプ設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記キーボードタイプ設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項３４】
前記複数のサブファンクション情報は、前記コンピュータシステムのポインティングデバイスであるポインティングスティックおよびマウスを選択的にまたは同時に使用することを指定するポインティングスティックモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記ポインティングスティックモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記ポインティングスティックモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項３５】
前記複数のサブファンクション情報は、前記コンピュータシステムに対するパスワードの登録／削除を行うためのプログラムを実行可能なモードにするか否かを指定するパスワードインタフェースモード設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記パスワードインタフェースモード設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記パスワードインタフェースモード設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項３６】
前記複数のサブファンクション情報は、前記コンピュータシステムで実行されるプログラムにパスワードチェックを要求するパスワードチェック要求フラグを少なくとも含んでおり、
前記インタフェース手段は、前記パスワードチェック要求フラグを指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記パスワードチェック要求フラグの取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項３７】
前記システムコンフィグレーションインタフェースプログラムには、前記コンピュータシステムに登録されているパスワードを取得／設定するパスワード機能を実行するパスワード用ファンクション実行ルーチンが含まれており、
前記インタフェース手段は、前記オペレーティングシステムまたはアプリケーションプログラムからの前記パスワード機能の実行要求に応答して、前記パスワード用ファンクション実行ルーチンを呼び出して前記パスワード機能を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項３８】
前記システムコンフィグレーションインタフェースプログラムには、前記コンピュータシステムに登録されているパスワードと入力パスワードとを比較するベリファイパスワード機能を実行するベリファイパスワード用ファンクション実行ルーチンが含まれており、
前記インタフェース手段は、前記オペレーティングシステムまたはアプリケーションプログラムからの前記ベリファイパスワード機能の実行要求に応答して、前記ベリファイパスワード用ファンクション実行ルーチンを呼び出して前記ベリファイパスワード機能を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項３９】
前記複数のサブファンクション情報は、前記コンピュータシステムで使用されているパスワードレベルに関する設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記パスワードレベルに関する設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記パスワードレベルに関する設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項４０】
前記複数のサブファンクション情報は、前記コンピュータシステムのＬＣＤパネルのバックライトのオン／オフを指定するバックライト設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記バックライト設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記バックライト設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項４１】
前記システムコンフィグレーションインタフェースプログラムには、前記コンピュータシステムにおけるＡＣフダプタの接続有無を示す情報を取得するＡＣフダプタ情報取得機能を実行するＡＣフダプタ情報取得用ファンクション実行ルーチンが含まれており、
前記インタフェース手段は、前記オペレーティングシステムまたはアプリケーションプログラムからの前記ＡＣフダプタ情報取得機能の実行要求に応答して、前記ＡＣフダプタ情報取得用ファンクション実行ルーチンを呼び出して前記ＡＣフダプタ情報取得機能を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項４２】
前記複数のサブファンクション情報は、前記コンピュータシステムのファンのオン／オフを指定するファン設定情報を少なくとも含んでおり、
前記インタフェース手段は、前記ファン設定情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記ファン設定情報の取得／設定を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項４３】
前記システムコンフィグレーションインタフェースプログラムには、前記コンピュータシステムの内部ＬＣＤの解像度およびＬＣＤタイプを示す情報を取得するＬＣＤ情報取得機能を実行するＬＣＤ情報取得用ファンクション実行ルーチンが含まれており、
前記インタフェース手段は、前記オペレーティングシステムまたはアプリケーションプログラムからの前記ＬＣＤ情報取得機能の実行要求に応答して、前記ＬＣＤ情報取得用ファンクション実行ルーチンを呼び出して前記ＬＣＤ情報取得機能を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項４４】
前記システムコンフィグレーションインタフェースプログラムには、前記コンピュータシステムの所定のキー入力操作に応じて表示画面のオフまたはキーロックを行うインスタントセキャリティー機能が実行可能か否かを示すステータス情報の取得または前記インスタントセキュリティー機能を実行するインスタントセキュリティー用ファンクション実行ルーチンが含まれており、
前記インタフェース手段は、前記オペレーティングシステムまたはアプリケーションプログラムからの前記ステータス情報の取得または前記インスタントセキュリティー機能の実行要求に応答して、前記インスタントセキュリティー用ファンクション実行ルーチンを呼び出して前記ステータス情報の取得または前記インスタントセキュリティー機能を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項４５】
前記システムコンフィグレーションインタフェースプログラムには、前記コンピュータシステムの電源オフの要因を示すパワーオフ要因情報を取得するパワーオフ要因情報取得機能を実行するパワーオフ要因情報取得用ファンクション実行ルーチンが含まれており、
前記インタフェース手段は、前記オペレーティングシステムまたはアプリケーションプログラムからの前記パワーオフ要因情報取得機能の実行要求に応答して、前記パワーオフ要因情報取得用ファンクション実行ルーチンを呼び出して前記パワーオフ要因情報取得機能を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項４６】
前記システムコンフィグレーションインタフェースプログラムには、前記コンピュータシステムに設けられ異なる種類のディスクドライブが選択的に装着可能なマルチボックスに現在装着されているディスクドライブの種類を取得するディスクドライブ情報取得機能を実行するディスクドライブ情報取得用ファンクション実行ルーチンが含まれており、
前記インタフェース手段は、前記オペレーティングシステムまたはアプリケーションプログラムからの前記ディスクドライブ情報取得機能の実行要求に応答して、前記ディスクドライブ情報取得用ファンクション実行ルーチンを呼び出して前記ディスクドライブ情報取得機能を実行させることを特徴とする請求項１記載のコンピュータシステム。
【請求項４７】
前記システムコンフィグレーションインタフェースプログラムには、前記コンピュータシステムのメモリをリード／ライトするメモリアクセス機能を実行するメモリアクセス用こファンクション実行ルーチンが含まれており、
前記インタフェース手段は、前記オペレーティングシステムまたはアプリケーションプログラムからのメモリリード／ライト要求に応答して、前記メモリアクセス用ファンクション実行ルーチンを呼び出して前記メモリリード／ライトを実行させることを特徴とする請求項１記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はラップトップタイプまたはノートブックタイプのポータブルパ−ソナルコンピュータシステムに関し、特にシステム動作環境の設定／変更のための機能を有するコンピュータシステムに関する。
【背景技術】
【０００２】
近年、半導体技術の進歩によりマイクロプロセッサの高性能化が進み、ラップトップタイプまたはノートブックタイプのポータブルパ−ソナルコンピュータシステムにおいてもそのような高性能マイクロプロセッサがＣＰＵとして使用されている。
【０００３】
この種の典型的なＣＰＵとしては、米インテル社により製造販売されているＩｎｔｅｌ（登録商標）４８６やＰｅｎｔｉｕｍ（登録商標）が良く知られている。これら各ＣＰＵは、リアルモードおよびプロテクトモ−ドとそれぞれ称され２つの動作モードを有している。リアルモードとプロテクトモ−ドは互いに異なるメモリアドレッシング方式を採用しており、リアルモードではアクセス可能な最大メモリ空間は１Ｍバイトであるのに対し、プロテクトモ−ドでは最大で１タスク当り４Ｇバイトのメモリ空間をアクセスできる。
【０００４】
パ−ソナルコンピュータの典型的なオペレーティングシステムは、リアルモードで動作するように構成されている。このため、現在使用されているアプリケーションプログラムやユーティリティプログラムについても、そのほとんどはリアルモードで動作するように構成されている。
【０００５】
最近では、オペレーティングシステムの高機能化も進み、マルチタスクをサポートするオペレーティングシステムが使用され始めている。この種の高機能オペレーティングシステムのほとんどは、プロテクトモ−ドで動作するように構成されている。
【０００６】
このため、最近のパーソナルコンピュータにおいては、ある特定のオペレーティングシステム環境下だけでなく、種々のオペレーティングシステム環境下でシステム内のハードウェアを正常にアクセスできるようにすることが要求されている。
【０００７】
ところで、通常、パ−ソナルコンピュータにおいては、システム内のハードウェア制御からオペレーティングシステムを解放するために、ハードウェアアクセス専用のシステムＢＩＯＳ（Ｂasic  Ｉ／Ｏ  Ｓystem)と称されるプログラムが利用されている。このシステムＢＩＯＳは、システムホード上のＲＯＭによって提供されており、ハードウェアアクセスのための複数のファンクション実行ルーチンを含んでいる。これらファンクション実行ルーチンはオペレーティングシステムに各種のハードウェアアクセスのための機能を提供する。
【０００８】
システムＢＩＯＳのファンクション実行ルーチンは、ＣＰＵのソフトウェア割り込み命令（ＩＮＴ命令）によって実現されている。したがって、オペレーティングシステムは、ＩＮＴ命令によって所望のファンクション実行ルーチンを呼び出して、必要なハードウェア制御を行う事ができる。
【０００９】
また、オペレーティングシステムに対するハードウェアアクセスのための機能は、ユーティリティプログラムによって提供することもできる。
【００１０】
この種のユーティリティプログラムは、システムＢＩＯＳと同様に、ハードウェアを直接制御する。ハードウェア制御のために使用される代表的なユーティリティープログラムとしては、セップアッププログラムが知られている。
【００１１】
セップアッププログラムは、ＣＭＯＳメモリのシステム構成情報を書き換えてシステムコンフィグレーションの変更を行い、これによって拡張カードの利用を可能にしたり、動作モードの変更などを行うプログラムである。ＣＭＯＳメモリに格納されているシステム構成情報はハードウェア構成に対応しており、パーソナルコンピュータの機種毎にＣＭＯＳメモリに格納されるシステム構成情報の内容は異なる。このため、システム構成情報の設定／変更を行うためには、機能追加された新機種が開発される度にセップアッププログラムを作成し直すことが必要とされた。
【００１２】
この場合、セップアッププログラムの修正／変更作業だけでなく、場合によっては、そのセップアッププログラムとのインターフェースを維持するために、オペレーティングシステムについても修正／変更を加えなければならないこともある。
【００１３】
また、通常、リアルモードで動作するオペレーティングシステムとプロテクトモードで動作するオペレーティングシステムとでは異なるセットアッププログラムを利用している。すなわち、リアルモードで動作するオペレーティングシステム用のセップアッププログラムは、リアルモードで動作するように構成されており、通常、システムＢＩＯＳの一部としてＲＯＭに格納されている。一方、プロテクトモードで動作するオペレーティングシステム用のセップアッププログラムはプロテクトモードで動作するように構成されており、フロッピー（登録商標）ディスクなどによって供給される。
【００１４】
このようにオペレーティングシステム毎に異なるセットアッププログラムを利用した場合においては、新機種が開発されると、実際には、それら全てのセップアッププログラムについて修正／変更作業を行う事が必要とされる。
【００１５】
以上のように、従来では、ハードウェア制御などに関する機能追加を図る度に、セップアッププログラムやオペレーティングシステムの修正／変更が必要とされ、その作業に多くの時間が必要とされる欠点があった。
【００１６】
また、ハードウェア制御に関する機能追加などのためにシステムＢＩＯＳに新たなファンクション実行ルーチンを追加する場合には、プロテクトモードで動作するオペレーティングシステムについては、そのファンクション実行ルーチンを使用できるようにするために次のようなプログラム変更を行う必要がある。
【００１７】
すなわち、システムＢＩＯＳはリアルモードで実行されるオペレーティングシステムを前提として構成されたものであるため、システムＢＩＯＳのファンクション実行ルーチンはすべてリアルモードで動作されるように構成されている。
【００１８】
このため、プロテクトモ−ドで動作されるオペレーティングシステム環境においては、ＣＰＵの動作モードを一旦プロテクトモードからリアルモードに切り替えた後にＩＮＴ命令を実行してファンクション実行ルーチンを呼び出し、そのファンクション実行ルーチンからリターンされた後に、再びリアルモードからプロテクトモードに切り替えることが必要とされる。
【００１９】
したがって、プロテクトモードで動作するオペレーティングシステムを利用する場合には、ＣＰＵの動作モードを切り替えるルーチンと、ＩＮＴ命令によってシステムＢＩＯＳのファンクション実行ルーチンを呼び出すルーチンとを、そのオペレーティングシステムのＢＩＯＳインタフェース部に組み込まなければならない。
【００２０】
このため、ハードウェア制御に関する機能拡張のためにシステムＢＩＯＳに新たなファンクション実行ルーチンを追加すると、プロテクトモードで動作するオペレーティングシステムのＢＩＯＳインタフェース部の修正／変更作業に多くの時間が必要となるという不具合が生じる。
【発明の開示】
【発明が解決しようとする課題】
【００２１】
従来では、機種毎にそのハードウェア構成に合わせてセップアッププログラムやオペレーティングシステムの修正／変更が必要とされ、その作業に多くの時間が必要とされる欠点があった。
【００２２】
また、プロテクトモ−ドで動作されるオペレーティングシステムからシステムＢＩＯＳを利用できるようにするためには、そのオペレーティングシステムのＢＩＯＳインタフェース部に、ＣＰＵ動作モードを切り替えるルーチンを組み込む必要があった。このため、ハードウェア制御に関する機能拡張のためにシステムＢＩＯＳに新たなファンクション実行ルーチンを追加すると、それに対応するＢＩＯＳインタフェース部のコーディング作業に多くの時間が必要となる欠点があった。
【００２３】
この発明はこのような点に鑑みてなされたものであり、システム動作環境に関する機能拡張に柔軟に対応できるプログラムインターフェースを実現して、各種オペレーティングシステム環境下でシステム動作環境の設定／変更を行えるようにし、これによってオペレーティングシステムやセットアッププログラムなどの修正／変更作業の低減を図る事ができるコンピュータシステムを提供することを目的とする。
【課題を解決するための手段】
【００２４】
上述の課題を解決するため、この発明は、システム構成情報を構成する複数のサブファンクション情報それぞれの設定内容に応じてシステム動作環境が決定されるコンピュータシステムにおいて、ハードウェア制御のためのＢＩＯＳプログラムを格納するプログラムメモリであって、前記ＢＩＯＳプログラムは、前記システム構成情報を取得／設定するシステムコンフィグレーションインタフェースプログラムを含み、このシステムコンフィグレーションインタフェースプログラムには、前記複数のサブファンクション情報の内、指定されたサブファンクション情報を取得／設定するファンクション実行ルーチンが含まれているプログラムメモリと、前記コンピュータシステムで実行されるオペレーティングシステムまたはアプリケーションプログラムと前記ＢＩＯＳプログラムとの間のインタフェースを行うインタフェース手段であって、前記複数のサブファンクション情報の内の所定のサブファンクション情報を指定する、前記オペレーティングシステムまたはアプリケーションプログラムからのシステム構成情報の取得／設定要求に応答して、前記システムコンフィグレーションインタフェースプログラムに含まれている前記ファンクション実行ルーチンを呼び出して前記指定されたサブファンクション情報の取得／設定を実行させるインタフェース手段とを具備することを特徴とする。
【発明の効果】
【００２５】
本発明によれば、オペレーティングシステムや、セップアッププログラムなどのアプリケーションプログラムは、システム構成情報を格納する記憶装置やハードウェアデバイスなどを直接アクセスすることなく、ＢＩＯＳを呼び出すだけでシステム構成やハードウェア構成の設定／変更／読出しなどを行う事ができる。
【発明を実施するための最良の形態】
【００２６】
以下、図面を参照してこの発明の実施形態を説明する。
【００２７】
図１には、この発明の一実施形態に係わるコンピュータシステムの構成が示されている。このコンピュータシステムは、ラップトップタイプまたはノートブックタイプのパーソナルコンピュータシステムであり、ＣＰＵ１１、システムコントローラ１２、メインメモリ１３、ＳＭＲＡＭ（Ｓｙｓｔｅｍ  Ｍａｎａｇｅｍｅｎｔ  ＲＡＭ）１３Ａ、ＢＩＯＳ  ＲＯＭ１４、バス変換回路１５、リアルタイムクロック（ＲＴＣ）１６、および各種Ｉ／Ｏ装置を備えている。
【００２８】
ＣＰＵ１１およびメインメモリ１３は、６４ビット幅のデータバスを含むＣＰＵローカルバス１７に接続されている。ＣＰＵローカルバス１７は、バス変換回路１５などのブリッジ装置を介してシステムバス１８に接続されている。システムコントローラ１２、ＢＩＯＳ  ＲＯＭ１４、リアルタイムクロック（ＲＴＣ）１６、および各種Ｉ／Ｏ装置は、システムバス１８に接続されている。Ｉ／Ｏ装置としては、割込みコントローラ、キーボードコントローラ、システムタイマ、ハードディスク装置、フロッピー（登録商標）ディスクコントローラなどがある。
【００２９】
ＣＰＵ１１は、このシステム全体の動作制御およびデータ処理を実行する。このＣＰＵ１１としては、システム管理割り込みＳＭＩ（ＳＭＩ；Ｓystem   Ｍanagement Ｉnterrupt）をサポートするもの、例えば、米インテル社により製造販売されているマイクロプロセッサＳＬ  Ｅｎｈａｎｃｅｄ  Ｉｎｔｅｌ４８６やＰｅｎｔｉｕｍ（登録商標）が使用される。この場合、ＣＰＵ１１は、次のようなシステム管理機能を持つ。
【００３０】
すなわち、ＣＰＵ１１は、アプリケーションプログラムやオペレーティングシステム（ＯＳ）などのプログラムを実行するための動作モードとしてリアルモード、プロテクトモード、仮想８６モードを有する他、システム管理モード（ＳＭＭ；Ｓｙｓｔｅｍ  Ｍａｎａｇｅｍｅｎｔ  ｍｏｄｅ）と称されるシステム管理機能を実現するための動作モードを有している。
【００３１】
リアルモードは、最大で１Ｍバイトのメモリ空間をアクセスできるモードであり、論理アドレスから物理アドレスへの変換は、セグメントレジスタで表されるベースアドレスからのオフセット値で物理アドレスを決定するアドレス計算形式によって行われる。
【００３２】
一方、プロテクトモードは１タスク当たり最大４Ｇバイトのメモリ空間をアクセスできるモードであり、ディスクプリタテーブルと称されるアドレスマッピングテーブルを用いてリニアアドレスが決定される。このリニアアドレスは、ページングによって最終的に物理アドレスに変換される。
【００３３】
このように、プロテクトモードとリアルモードとでは、互いに異なるメモリアドレッシングが採用されている。
【００３４】
システム管理モード（ＳＭＭ）は疑似リアルモードであり、このモードにおけるアドレス計算形式はリアルモードのアドレス計算形式と基本的に同一であり、ディスクプリタテーブルは参照されず、ページングも実行されない。
【００３５】
システム管理割込み（ＳＭＩ；Ｓystem   Ｍanagement Ｉnterrupt）がＣＰＵ１１に発行された時、ＣＰＵ１１の動作モードは、その時の動作モードであるリアルモード、プロテクトモード、または仮想８６モードから、ＳＭＭにスイッチされる。ＳＭＩによってＳＭＭにスイッチした時、ＣＰＵ１１はその時のＣＰＵレジスタの内容であるＣＰＵステータスをＳＭＲＡＭ１３Ａにセーブする。また、ＳＭＭにおいて復帰命令（ＲＳＭ命令）が実行されると、ＣＰＵ１１はＳＭＲＡＭ１３ＡからＣＰＵレジスタにＣＰＵステータスをリストアし、ＳＭＩ発生前の動作モードに復帰する。ＳＭＭでは、ＳＭＩハンドラなどのシステム管理プログラムが実行される。
【００３６】
ＳＭＩはマスク不能割込みＮＭＩの一種であるが、通常のＮＭＩやマスク可能割込みＩＮＴＲよりも優先度の高い、最優先度の割り込みである。このＳＭＩを発行することによって、システム管理プログラムを、実行中のアプリケーションプログラムやオペレーティングシステムの環境に依存せずに起動することができる。
【００３７】
ＣＰＵ１１は、このようなハードウェア割り込み機能の他、ソフトウェア割り込み機能を持つ。ソフトウェア割り込み機能は、ＯＳやアプリケーションプログラムによる割り込み命令（ＩＮＴ）の実行に応答して、ＢＩＯＳ  ＲＯＭ１４の各種ルーチンなどを実行する。この場合、どのルーチンが実行されるかは、割り込み命令（ＩＮＴ）によって指定される割り込みベクタアドレスによって指定される。割り込みベクタアドレスはＢＩＯＳ  ＲＯＭ１４のエントリポイントを示し、そのエントリポイントのルーチンが実行される。
【００３８】
システムコントローラ１２は、このシステム内のメモリやＩ／Ｏを制御するためのゲートアレイであり、ここにはＣＰＵ１１へのＳＭＩ信号の発生を制御するためのハードウェアが組み込まれている。
【００３９】
メインメモリ１３は、オペレーティングシステム、処理対象のアプリケーションプログラム（ユーティリティープログラムを含む）、およびアプリケーションプログラムによって作成されたユーザデータ等を格納する。
【００４０】
ＳＭＲＡＭ（Ｓｙｓｔｅｍ  Ｍａｎａｇｅｍｅｎｔ  ＲＡＭ）１３Ａは、メインメモリ１３のアドレス３００００Ｈから３ＦＦＦＦＨまでのアドレス空間にマッピングされるオ−バレイメモリであり、ＳＭＩ信号がＣＰＵ１１に入力された時だけアクセス可能となる。ここで、ＳＭＲＡＭがマッピングされるアドレス範囲は固定ではなく、ＳＭＢＡＳＥと称されるレジスタによって４Ｇバイト空間の任意の場所に変更することが可能である。ＳＭＢＡＳＥレジスタは、ＳＭＭ中でないとアクセスできない。ＳＭＢＡＳＥレジスタのデフォルト値は、アドレス３０００Ｈである。
【００４１】
ＣＰＵ１１がＳＭＭに移行する時には、ＣＰＵステータス、つまりＳＭＩが発生された時のＣＰＵ１１のレジスタ等が、ＳＭＲＡＭ１３Ａにスタック形式でセーブされる。このＳＭＲＡＭ１３Ａには、ＢＩＯＳ  ＲＯＭ１４のシステム管理プログラムを呼び出すための命令が格納されている。この命令は、ＣＰＵ１１がＳＭＭに入った時に最初に実行される命令であり、この命令実行によってシステム管理プログラムに制御が移る。
【００４２】
ＢＩＯＳ  ＲＯＭ１４は、システムＢＩＯＳ（Ｂasic  Ｉ／Ｏ  Ｓystem ）を記憶するためのものであり、プログラム書き替えが可能なようにフラッシュメモリによって構成されている。システムＢＩＯＳは、このシステム内の各種ハードウェアをアクセスするファンクション実行ルーチンを体系化したものであり、リアルモードで動作するように構成されている。
【００４３】
このシステムＢＩＯＳには、システムのパワーオン時に実行されるＩＲＴルーチンと、各種ハードウェア制御のためのＢＩＯＳドライバ群（ＩＮＴ１０ｈ〜１Ｆｈ、４０ｈ〜４Ｆｈ）が含まれている。各ＢＩＯＳドライバは、ハードウェア制御のための複数の機能をオペレーティングシステムやアプリケーションプログラムに提供するためにそれら機能に対応する複数のファンクション実行ルーチン群を含んでいる。
【００４４】
また、拡張ＢＩＯＳドライバ（ＩＮＴ１５ｈ）には、システムコンフィグレーションインタフェースプログラム（ＳＣＩ）が格納されている。ＳＣＩは、ＣＭＯＳメモリ１６Ａのシステム構成情報（システムコンフィグレーション）の設定／変更のためにＣＭＯＳメモリ１６Ａをリード／ライトアクセスするハードウェア制御プログラムである。ＯＳや、セットアッププログラムなどのアプリケーションプログラムは、ＳＣＩを用いてシステム動作環境の設定／変更を行う。
【００４５】
このＳＣＩには、図２に示されているように、以下の６つのファンクション実行ルーチンが含まれている。
【００４６】
［ファンクションコード］    ［ファンクション実行ルーチン］
４４Ｆ０ｈ                ＳＣＩサポートチェック
４４Ｆ１ｈ                オープンインタフェース
４４Ｆ２ｈ                クローズインタフェース
４４Ｆ３ｈ                システムコンフィグレーションゲット
４４Ｆ４ｈ                システムコンフィグレーションセット
４４Ｆ５ｈ                デフォルトコンフィグレーションセット
ＳＣＩサポートチェックルーチンは、このシステムがＳＣＩをサポートしているか否かをチェックするルーチンであり、ＣＰＵ１１のＡＸレジスタにファンクションコード４４Ｆ０ｈがセットされた状態でＩＮＴ１５ｈが実行された時に起動される。
【００４７】
オープンインタフェースルーチンは、システム構成情報のリード／ライトを可能にするためのルーチンであり、システム構成情報の読み書きの前にこのオープンインタフェースルーチンが起動される。オープンインタフェースルーチンが起動されるまでは、クローズインタフェースルーチン、システムコンフィグレーションゲットルーチン、システムコンフィグレーションセットルーチンは使用できない。オープンインタフェースルーチンは、ＣＰＵ１１のＡＸレジスタにファンクションコード４４Ｆ１ｈがセットされた状態でＩＮＴ１５ｈが実行された時に起動される。
【００４８】
クローズインタフェースルーチンは、システム構成情報のリード／ライトを禁止するためのクローズルーチンであり、ＣＰＵ１１のＡＸレジスタにファンクションコード４４Ｆ２ｈがセットされた状態でＩＮＴ１５ｈが実行された時に起動される。
【００４９】
システムコンフィグレーションゲットルーチンは、現在のシステム構成情報をＣＭＯＳメモリ１６Ａからリードするルーチンであり、ＣＰＵ１１のＡＸレジスタにファンクションコード４４Ｆ３ｈがセットされた状態でＩＮＴ１５ｈが実行された時に起動される。システムコンフィグレーションゲットルーチンはシステム構成情報の設定項目毎に６０以上のサブファンクションに別れており、これらサブファンクションはＣＰＵ１１のＢＸレジスタにセットされるサブファンクションコードによって選択される。
【００５０】
システムコンフィグレーションゲットルーチンのサブファンクションは、図３および図４の通りである。
【００５１】
図３および図４に示されているように、サブファンクションは、システムおよびパワー管理の設定、メモリ設定、ディスプレイ設定、ＨＤＤ／ＦＤＤ設定、Ｉ／Ｏポートおよびキーボード設定、およびパスワードに関するサブファンクションに大別される。
【００５２】
ＯＳやセットアッププログラムは、取得したい設定項目に対応するサブファンクションコード（例えば、パワーアップモードに関するサブファンクションコード０１００ｈ）をＢＸレジスタにセットすることにより、その設定項目に対応する現在の設定値（ブートモード／レジュームモード）を読み取る事ができる。
【００５３】
システムコンフィグレーションセットルーチンは、ＣＭＯＳメモリ１６Ａのシステム構成情報の変更のために新たなシステム構成情報をＣＭＯＳメモリ１６Ａに書き込むルーチンであり、ＣＰＵ１１のＡＸレジスタにファンクションコード４４Ｆ４ｈがセットされた状態でＩＮＴ１５ｈが実行された時に起動される。この場合、ＣＰＵ１１のＣＸレジスタにセットされた入力値が、新たなシステム構成情報としてＣＭＯＳメモリ１６Ａにライトされる。システムコンフィグレーションセットルーチンも、ゲートルーチンと同様に、システム構成情報の設定項目毎に６０以上のサブファンクションに別れており、これらサブファンクションはＣＰＵ１１のＢＸレジスタにセットされるサブファンクションコードによって選択される。サブファンクションの種類は、図３および図４で説明したシステムコンフィグレーションゲットルーチンのサブファンクションと基本的に同じであり、図５および図６に示すサブファンクション群から構成されている。
【００５４】
すなわち、これら各サブファンクションはシステムコンフィグレーションゲットルーチンの中ではシステム構成情報を取得するためのゲットルーチンとなり、システムコンフィグレーションセットルーチンの中ではシステム構成情報を設定するためのセットルーチンとなる。
【００５５】
ここで、これらサブファンクション（ゲット／セット）それぞれのサブファンクションコードとその機能の概要について説明する。
【００５６】
・0100h   Power-up Mode 
このサブファンクションは、コンピュータシステムがパワーオンされた時にブートモードとレジュームモードのどちらのモードで動作するかを指定するパワーアップモード情報を取得／設定するためのルーチンであり、ブートモード（レジューム無効）／レジュームモード（レジューム有効）の選択のために利用される。
【００５７】
・0101h   Battery Save Mode 
このサブファンクションは、電力消費量が互いに異なる複数の動作環境（バッテリーセーブモード）の中の１つを指定するバッテリーセーブモード情報を取得／設定するためのものであり、指定されたバッテリセーブモードにより、バッテリセーブオプションの各項目( 表示自動停止、HDD 自動停止等) の設定が決定される。また、ユーザセッティングモードに設定した場合はユーザが前述の各項目を設定できる。
【００５８】
・0102h   Processing Speed
このサブファンクションは、ＣＰＵの処理スピード（High/Lowなど）を指定するプロセッシングスピード情報を取得／設定するためのものである。
【００５９】
・0103h  Snap Mode
このサブファンクションは、ＣＰＵの処理速度を割り込み信号に応答して低速から高速に切り替えるスナップモードの有効／無効を指定するスナップモード設定情報を取得／設定するためのものであり、有効を選択すると、スナップモードとなる。この場合、通常処理はＣＰＵの処理速度を低速にして行い、割り込み処理（ＳＭＩやＩＮＴｘｘｈなど) は高速で行う。
【００６０】
・0104h   Sleep Mode
このサブファンクションは、コンピュータシステムのアイドル状態に応答して前記コンピュータシステムを電力消費の少ない動作モードに移行させるスリープモードの有効／無効を指定するスリープモード設定情報を取得／設定するためのルーチンであり、有効を選択すると、ＣＰＵが処理待ち状態の時、ＣＰＵの処理速度を遅くして電力消費を減らす。
【００６１】
・0105h   Display Auto Off Mode 
このサブファンクションは、システムのアイドル状態に応じてＬＣＤの画面のバックライトをオフするディスプレイオートオフ機能の有効／無効を指定するものであり、有効ならば、システムアイドル時、具体的には、設定した時間ＫＢおよびマウスが使用されない時にバックライトがオフされる。
【００６２】
・0106h  HDD Auto Off Mode
このサブファンクションは、ハードディスクドライブを自動的に動作停止させるＨＤＤオートオフモードの有効／無効を指定するＨＤＤオートオフモード設定情報を取得／設定するルーチンであり、有効であれば、システムアイドル時、具体的には、設定した時間だけＨＤＤにアクセスが行われなかった時にＨＤＤのモータがオフされる。
【００６３】
・0107h   FDD Auto Off Mode 
このサブファンクションは、フロッピー（登録商標）ディスクドライブを自動的に動作停止させるＦＤＤオートオフモードの有効／無効を指定するＦＤＤオートオフモード設定情報を取得／設定するルーチンであり、有効であれば、システムアイドル時、具体的には、設定した時間ＦＤＤにアクセスが行われたかった時に、ＦＤＤのモータがオフされる。
【００６４】
・0108h   Cache Status
このサブファンクションは、ＣＰＵキャッシュの有効／無効を指定するキャッシュステータス設定情報を取得／設定するルーチンであり、これによりキャッシュメモリ使用の許可／禁止の設定が行われる。
【００６５】
・0109h  Speaker Volume 
このサブファンクションは、スピーカ音量（アラーム音）を指定するスピーカボリューム設定情報を取得／設定するルーチンである。
【００６６】
・010Ah   System Speaker Status 
このサブファンクションは、スピーカの動作の有効／無効を指定するスピーカ設定情報を取得／設定するルーチンであり、有効の時は、スピーカ（ローバッテリ、パネルクローズアラームを除く) が有効となり、スピーカが鳴る。
【００６７】
・010Bh   Low Battery Alarm Mode
このサブファンクションは、バッテリ残存容量の低下をアラーム音によって通知するローバッテリアラーム機能の有効／無効を指定するローバッテリアラームモード設定情報を取得／設定するルーチンであり、有効の時、ローバッテリ時にアラーム音が鳴る。
【００６８】
・010Ch  Panel Close Alarm Mode 
このサブファンクションは、ディスプレイパネルが閉じられた時にアラーム音を発生するパネルクローズアラーム機能の有効／無効を指定するパネルクローズアラームモード設定情報を取得／設定するルーチンであり、有効の時、ディスプレイパネルが閉じられるとアラーム音が発生される。
【００６９】
・010Dh   Panel Power On/Off Mode 
このサブファンクションは、ディスプレイパネルの開閉に応じてレジューム／サスペンド処理を実行するパネルパワーオン／オフモードの有効／無効を指定するパネルパワーオン／オフモード設定情報を取得／設定するルーチンであり、レジュームモードの時のみ有効となる。パネルパワーオン／オフモードが有効であれば、パネルを閉じた場合にサスペンドし、パネルを開くとレジュームする。
【００７０】
・010Eh   Alarm Power On Date 
このサブファンクションは、アラームパワーオン機能によってシステムを自動的にパワーオンさせる日付（月／日）を指定するアラームパワーオン設定日付情報を取得／設定するルーチンであり、設定した月／日になると、自動的にシステムの電源がオンされる。アラームパワーオン設定日付情報は通常は単独で使用されることはなく、アラームパワーオンタイム情報と併せて使用される。
【００７１】
・010Fh   Alarm Power On Time 
このサブファンクションは、アラームパワーオン機能によってシステムを自動的にパワーオンさせる時間を指定するアラームパワーオンタイム情報を取得／設定するルーチンであり、設定した時／分になると、自動的にシステムの電源がオンされる。
【００７２】
・0110h  System Auto Off Mode 
このサブファンクションは、システムのアイドル状態に応答してシステムをサスペンドさせるシステムオートオフ機能の有効／無効またはそのモードを実行させる条件を指定するシステムオートオフモード設定情報を取得／設定するルーチンであり、レジュームモードの時のみ有効となる。システムオートオフ機能が有効であれば、設定した時間ＫＢおよびマウスを使用せず、かつＨＤＤへのアクセスがなければ、自動的にシステムがサスヘ゜ント゛状態に設定される。
【００７３】
・0111h   Remaining Battery Power as Percentage 
このサブファンクションは、バッテリ残存容量をパーセンテージ単位で取得／設定するルーチンである。
【００７４】
・0112h   Remaining Battery Power in Time 
このサブファンクションは、バッテリ残存容量を使用可能時間単位で取得／設定するルーチンである。
【００７５】
・0113h   Battry Status Mode
このサブファンクションは、バッテリ残存容量をパーセンテージ表示と使用可能時間表示のどちらで行うかを指定するバッテリステータスモード設定情報を取得／設定するルーチンであり、たとえば、ステータス表示のためのサブＬＣＤを搭載するマシンにて、そのサブＬＣＤにおけるバッテリ残量表示をパーセント単位で行うか、時間単位で行うかを指定するために利用される。
【００７６】
・0114h  Modem Power Status 
このサブファンクションは、システムの内部モデムのパワーオン／オフを指定するモデムパワーステータス情報を取得／設定するルーチンであり、例えば、ＰＣカードスロットをOthersの設定にした場合に内蔵モデムのパワーオン／オフをを設定するために使用される。
【００７７】
・0115h   LCD Brightness Status 
このサブファンクションは、ＬＣＤの輝度について高輝度および低輝度の一方を指定するＬＣＤ輝度ステータス設定情報を取得／設定するルーチンである。
【００７８】
・0116h   Popup Window Mode 
このサブファンクションは、ポップアップウインドウ（ここで言うPOPUP はFnキー＋Esc キーにより画面右下に出るものを指す）表示機能の有効／無効を指定するポップアップウインドウモード設定情報を取得／設定するルーチンである。
【００７９】
・0117h  System Date
このサブファンクションは、システムの日付の取得／設定を行うルーチンである。
【００８０】
・0118h   System Time 
このサブファンクションは、システムの時間の取得／設定を行うルーチンである。
【００８１】
・0119h   Tablet Auto Off Mode
このサブファンクションは、設定した時間タブレット（ペン）を使用しなければ、タブレットの電源をOFF する機能の有効／無効を指定する情報を取得／設定するルーチンである。
【００８２】
・011Ah  Hotkey Mode
このサブファンクションは、メモリ常駐またはＳＭＲＡＭのプログラムをキー操作によって直接呼び出すホットキー機能（Ｆｎ＋ファンクションキー／矢印キー）の有効／無効を指定するホットキーモード設定情報を取得／設定するルーチンである。
【００８３】
・011Bh   Max.LCD Brightness Status 
このサブファンクションは、ＬＣＤの輝度の最大値を指定する最大ＬＣＤ輝度ステータス設定情報を取得／設定するルーチンであり、ＬＣＤパネルの輝度の最大値を設定するためなどに使用される。この場合、輝度は0 〜最大値の間で設定可能である。
【００８４】
・011Ch   DAC Digital Output Status 
このサブファンクションは、カラールックアップテーブルを構成するＤＡＣ（Digital to Analog Converter ）のデジタル出力を許可／禁止を指定するＤＡＣデジタル出力ステータス設定情報を取得／設定するルーチンである。ＤＡＣからは通常カラーパレットによって色変換されたアナログ信号だけが出力されるが、ＬＣＤにカラー表示する時にはＤＡＣデジタル出力が使用される。
【００８５】
・011Dh  Boot Priority
このサブファンクションは、システムを起動するディスク装置の順番を指定するブート優先度設定情報を取得／設定するルーチンであり、システムの起動方法をFDD →HDD ／HDD →FDD のいずれかから選択できる。この設定で指定された順番にシステムが起動される。
【００８６】
・011Eh   Remaining Battery Power as Percentage(2nd)
このサブファンクションは、セカンドバッテリの残存容量をパーセンテージで示すバッテリ残存容量情報を取得／設定するルーチンである。
【００８７】
・011Fh   Cache Write Policy
このサブファンクションは、ＣＰＵキャッシュのライトポリシー（Write-back、Write-through ）を指定するキャッシュライトポリシー設定情報を取得／設定するルーチンであり、Write-backに設定すれば、書き込み内容が一時的にキャッシュメモリに保存され、その後タイミングを見て自動的にメモリに書き込まれる。Write-througに設定すれば、キャッシュメモリとメモリの双方にデータが一緒に書き込まれる。
【００８８】
・0120h   Eject Password Mode 
このサブファンクションは、コンピュータ本体に装着された拡張ユニット（DeskStation ）をそのコンピュータ本体から取り外すためのイジェクトスイッチが押下された時にパスワードチェックを行うイジェクトパスワードモードの有効／無効を指定するイジェクトパスワードモード設定情報を取得／設定するルーチンである。
【００８９】
・0121h  Ring Indicator Mode
このサブファンクションは、モデムおよびシリアルポートからの着呼信号に応じてシステムをパワーオンさせるリングインジケータ機能の有効／無効を指定するリングインジケータモード設定情報を取得／設定するルーチンである。リングインジケータ機能は、レジュームモード時のみ有効となる。有効に設定すると、レジュームモードで電源オフ時、モデムやシリアルポートを使用して通信を行っている時、外部からRing( 呼び出し) が来ると、自動的にレジュームされる。
【００９０】
・0122h   Cooling Method
このサブファンクションは、ＣＰＵを冷却するために用意された複数種の冷却機能（Performance モード、Quiet モード）の中で使用する冷却機能を指定するクーリングメソッド設定情報を取得／設定するルーチンである。Performance モードに設定すると、ＣＰＵが高温になるとファンが回転され、温度が下げられる。Quiet モードに設定すると、ＣＰＵが高温になるとＣＰＵの動作率が低下され、これによって温度が下げられる。
【００９１】
・0200h   Hard RAM Size 
このサブファンクションは、メモリの中でハードＲＡＭとして使用するメモリサイズを示すハードＲＡＭサイズ（ＫＢ）情報を取得／設定するルーチンである。
【００９２】
・0201h  Shadow RAM Mode
このサブファンクションは、ＲＯＭの内容をＲＡＭにコピーして使用するシャドウＲＡＭモード（高速ＲＯＭ機能）の有効／無効を指定するシャドウＲＡＭモード設定情報を取得／設定するルーチンである。
【００９３】
・0202h   Extended Memory Setup Mode
このサブファンクションは、外部オプションＲＯＭについてのＲＯＭ／ＲＡＭコピーおよびキャッシュ制御に関する設定を指定する外部メモリセットアップモード情報を取得／設定するルーチンである。
【００９４】
・0300h   Display Device Mode 
このサブファンクションは、ディスプレイに関する各種モードを指定するディスプレイモード設定情報を取得／設定するルーチンであり、ディスプレイに関する次の設定に使用される。
【００９５】
Power On Display：ブートモードで電源オン時に表示する装置を指定する。Internal/External の設定では、ＣＲＴがあればＣＲＴ表示、なければＬＣＤ表示で起動し、Simultaneousの設定では同時表示モードで起動する。
【００９６】
LCD Display Mode：LCD のモード（Color/Monochrome) を選択する。
【００９７】
Display Adaptor ：DeskStation の接続できるマシンで、ＶＧＡカードをインストールしたDeskStation を接続してシステムを使用する場合はNot Usedとなる。
【００９８】
・8300h   Current Display Device Mode 
このサブファンクションは、現在表示対象となっているディスプレイを指定するカレントディスプレイデバイスモード設定情報を取得／設定するルーチンであり、表示装置の切り替えなどのために使用される。この機能は、Hotkey（Fn＋F5) と同じ機能である。
【００９９】
・0301h  Color Emulation Mode 
このサブファンクションは、ＬＣＤの表示色数を指定するカラーエミュレーション設定情報を取得／設定するルーチンであり、ＬＣＤパネルの表示可能な色の数を選択するために使用される。表示可能色数はシステムにより異なり、表示可能色数の中から決められた数の色だけが1 画面に表示できる。
【０１００】
・0302h   Gray Scale Level
このサブファンクションは、モノクロＬＣＤにおいて、白→黒色を何段階に分割するかを指定するグレースケール設定情報を取得／設定するルーチンである。
【０１０１】
・0303h   Display Normal/Reverse Mode 
このサブファンクションは、モノクロＬＣＤの非反転／反転表示を指定するノーマル／リバースモード設定情報を取得／設定するルーチンである。
【０１０２】
・0304h   Display Contrast
このサブファンクションは、ＬＣＤのコントラストを指定するディスプレイコントラスト設定情報を取得／設定するルーチンであり、コントラストの変更機能はHotkey（Fn＋←→）と同様である。
【０１０３】
・0305h   Display Brightness
このサブファンクションは、ＬＣＤの輝度レベルを指定するディスプレイブライトネス設定情報を取得／設定するルーチンであり、輝度レベルの変更機能はHotkeyの（Fn＋↓↑）と同様である。
【０１０４】
・0306h  Scan Mode
このサブファンクションは、ＣＲＴのスキャンモードとしてインターレースモードおよびノンインターレースモードの一方を指定するスキャンモード設定情報を取得／設定するルーチンである。インターレース方式を選択すると、走査線を奇数行、偶数行単位で表示するため、ちらつきが見えることがある。ノンインタレース方式を選択すると、走査線を順番に表示するため、ハードウェア的な負担が大きくなり、この方式に対応しているＣＲＴしか使用できない。
【０１０５】
・0307h  DPMS Status
このサブファンクションは、ＣＲＴのパワーセーブ機能（ＤＰＭＳ：Display Power Management Signal ）の有効／無効を指定するＤＰＭＳステータス設定情報を取得／設定するルーチンである。有効にすると、DPMS機能に対応しているＣＲＴを接続した際に、ＣＲＴにおけるパワーセーブが行われる。DPMS機能に対応していないＣＲＴを接続した際は機能しない。
【０１０６】
・0308h   Tall Font Mode
このサブファンクションは、テキスト表示モードにおいてフォントをストレッチする機能の有効／無効を指定するフォントモード設定情報を取得／設定するルーチンであり、有効にすると、英語のテキストモード表示時に640x480 ドット表示となる。無効にすると、英語のテキストモード表示時に640x400 ドット表示となる。
【０１０７】
・0309h   VGA Segment Address 
このサブファンクションは、メモリ空間上におけるＶＧＡ  ＢＩＯＳの開始アドレス値を指定するＶＧＡセグメントアドレス設定情報を取得／設定するルーチンであり、デフォルトはE000h であるが、E400h,C000h に変更する事が出来る。
【０１０８】
・0400h   HDD (#0) Type 
このサブファンクションは、システムに搭載された１台目のＨＤＤについてその有効／無効の設定およびその記憶容量を示す第１のＨＤＤタイプ設定情報を取得／設定する。
【０１０９】
・0401h   HDD #1 Type 
このサブファンクションは、システムに搭載された２台目のＨＤＤについてその有効／無効の設定およびその記憶容量を示す第２のＨＤＤタイプ設定情報を取得／設定する。
【０１１０】
・0402h  Max.HDD Number 
このサブファンクションは、システムに接続されているＨＤＤ台数を示す最大ＨＤＤ台数設定情報を取得／設定するものであり、ＨＤＤが何台装着されているかを読み出す場合などに使用される。
【０１１１】
・0403h   External HDD Mode 
このサブファンクションは、外部ＨＤＤの許可／禁止を設定する情報を取得／設定すルーチンである。
【０１１２】
・0404h   HDD Mode
このサブファンクションは、ＨＤＤのモードをエンハンスドＩＤＥモードおよびスタンダードＩＤＥモードの一方に設定するＨＤＤモード設定情報を取得／設定する設定するルーチンであり、通常、マイクロソフト社のＤＯＳやＷＩＮＤＯＷＳ（登録商標）で使用する場合はエンハンスドＩＤＥモードに設定される。この場合、ＢＩＯＳは、ＨＤＤのシリンダ数、ヘッド数を論理値に変換する。ＵＮＩＸ（登録商標）等で使用する場合は、ＨＤＤの情報を変換しない方が良いため、スタンダードＩＤＥの設定が用いられる。
【０１１３】
・0410h  FDD Type 
このサブファンクションは、ＦＤＤのタイプを指定するＦＤＤタイプ設定情報を取得／設定するルーチンである。設定は、２ＨＤのメディアに関するもので、１．４４ＭＢ、１．２ＭＢ、１．４４／１．２ＭＢ両方などがある。
【０１１４】
・0411h   No.2 FD Drive 
このサブファンクションは、２台目のＦＤＤのタイプを指定する第２のＦＤＤタイプ設定情報を取得／設定するルーチンであり、例えばＦＤＤ２連タイプのシステムにて、２台目のＦＤＤのタイプを３．５インチ／５．２５インチなどで設定するために使用される。
【０１１５】
・0500h   Serial Port Mode
このサブファンクションは、シリアルポートの使用環境を指定するシリアルポートモード設定情報を取得／設定するルーチンであり、
COM ＝COM1(IRQ4/3F8H),COM2(IRQ3/2F8H),COM3(IRQ4/3E8H),COM4(IRQ3/2E8H),Not Usedなどの設定のために使用される。
【０１１６】
・0501h  Parallel Port Mode 
このサブファンクションは、パラレルポートの使用環境を指定するパラレルポートモード設定情報を取得／設定するルーチンであり、
Parallel＝LPT1(378H),LPT2(278H),LPT3(3BCH),Not Used などの設定のために使用される。また、パラレルポートのモードを出力専用か、双方向にするかの設定にも使用される。
【０１１７】
・0502h  Keyboard Type
このサブファンクションは、キーボードに関する使用環境を指定するキーボードタイプ設定情報を取得／設定するルーチンであり、次の設定に利用される。
【０１１８】
Fn代替えキー：外部ＫＢ使用時に内部ＫＢのFnキーを外部ＫＢのどのキーで代用するかを設定する。
【０１１９】
３キー入れ替え：内部ＫＢのCtrl/Alt/Caps Lockキーの位置を入れ替えるかどうかを設定する。
【０１２０】
・0503h   PCMCIA Slot Mode
このサブファンクションは、ＰＣカードスロットに関する使用環境を指定するＰＣカードスロットモード設定情報を取得／設定するルーチンであり、PCMCIA Slot のモードを指定する。ＰＣＭＣＩＡ（ＰＣＭＣＩＡカード使用時) またはOthers( 東芝／インテル社のモデムカード使用時) を選択するためなどに使用される。
【０１２１】
・0504h  Keyboard Initial State 
このサブファンクションは、システムの電源投入時におけるキーボードのＮｕｍＬｏｃｋ状態の有効／無効を指定するキーボード初期状態設定情報を取得／設定するルーチンである。
【０１２２】
・0505h  Pointing Stick Mode
このサブファンクションは、ポインティングデバイスであるポインティングスティックおよびＰＳ／２マウスを選択的にまたは同時に使用することを指定するポインティングスティックモード設定情報を取得／設定するルーチンである。
【０１２３】
Auto-Selected モードにすると、外部ＰＳ／２マウスがある場合は外部ＰＳ／２マウスのみ、ない場合はポインティングスティック（アキュポイント）のみが使用できる。Simultaneousモードにすると、外部ＰＳ／２マウスとポインティングスティックとが使用できる。
【０１２４】
・0506h   DS Parallel Port Mode 
このサブファンクションは、コンピュータ本体に取り外し自在に装着される拡張ユニットのパラレルポートに関する使用環境を指定するＤＳパラレルポートモード設定情報を取得／設定するルーチンであり、DeskStation をサポートするが、内部とDSのパラレルポートタイプが異なる場合に、パラレルポートの選択を行う。
【０１２５】
・0507h  Int.Keyboard Key Layout
このサブファンクションは、内部キーボードのキーレイアウトを入れ替える機能の有効／無効を指定するキーレイアウト設定情報を取得／設定するルーチンであり、内部ＫＢのCtrl/Alt/Caps Lockキーの位置を入れ替えるかどうかを設定する(3キー入れ替え機能) ために使用される。
【０１２６】
・0508h  Infrared Mode
このサブファンクションは、赤外線通信インタフェースに関する使用環境を設定する赤外線通信モード設定情報を取得／設定するルーチンであり、赤外線通信機能インタフェースにシリアルポートを割り当てた場合のモードを選択する。シャープ社のモードの機器と通信するときはASK の設定にし、他のマシンやプリンタと通信する時はIrDAの設定にする。
【０１２７】
・0510h  SCSI Mode
このサブファンクションは、ＳＣＳＩの割り込みレベルを指定するＳＣＳＩモード設定情報を取得／設定するルーチンである。
【０１２８】
・0520h  Sound System Mode
このサブファンクションは、システム内のサウンドシステムに関する使用環境（IRQ,DMA,I/O Address など）を指定するサウンドシステムモード設定情報を取得／設定するルーチンである。
【０１２９】
・0521h  Sound System Power 
このサブファンクションは、システム内のサウンドシステムの電源オン／オフを指定するサウンドシステムパワー設定情報を取得／設定するルーチンである。電源オンにしないと、サウカドシステムは使用できない。
【０１３０】
・0600h   Password Interface Mode 
このサブファンクションは、システムに対するパスワードの登録／削除を行うためのプログラムを実行可能なモードにするか否かを指定するパスワードインタフェースモード設定情報を取得／設定するルーチンであり、バスワードインタフェースの接続／切断の設定のために使用される。パスワード用アプリケーション（パスワードのの登録／削除等を行う) をインストールる際に、本機能によりパスワードインタフェースが接続され、パスワード用アプリが使用可能となる。
【０１３１】
・0601h  Password Check Request Flag
このサブファンクションは、システムで実行されるプログラムにパスワードチェックを要求するパスワードチェック要求フラグを取得／設定するルーチンであり、フラグが設定されると、アプリはパスワードチェック( 有無等) を行う。
【０１３２】
・0602h  Password 
このサブファンクションは、システムに登録されているパスワードを取得／設定するルーチンであり、パスワードの設定／削除などのために使用される。
【０１３３】
・0603h  Verify Password
このサブファンクションは、システムに登録されているパスワードと入力パスワードとを比較するベリファイパスワード機能を実行する。
【０１３４】
・0604h  Password Level 
このサブファンクションは、システムで使用されているパスワードレベルに関する設定情報を取得／設定するルーチンであり、カレントパスワードのパスワードレベルを設定するためなどに使用される。レベルは制限有り／制限無しの２つ選択でき、制限有りの場合はマシン使用上、SETUP が起動できないなどの制限が出来る。
【０１３５】
ＳＣＩのデフォルトコンフィグレーションセットルーチンは、システム動作環境を標準の環境に戻すためにシステム構成情報のデフォルト値をＣＭＯＳメモリ１６Ａに書き込むルーチンであり、ＣＰＵ１１のＡＸレジスタにファンクションコード４４Ｆ５ｈがセットされた状態でＩＮＴ１５ｈが実行された時に起動される。
【０１３６】
以上のように、ＳＣＩは、ハードウェアセットアップのために必要なＣＭＯＳメモリ１６Ａに対するアクセス機能を、ＯＳや、セップアッッププログラムなどのアプリケーションプログラムに提供する。
【０１３７】
図１のＢＩＯＳ  ＲＯＭ１４には、さらに、ＳＭＩハンドラおよびＳＭＩサービスルーチンなどのＳＭＭの中で実行されるシステム管理プログラムも格納されている。
【０１３８】
ＳＭＩハンドラは、ＳＭＩの発生要因に応じてＳＭＩサービスルーチンやＢＩＯＳドライバを起動するするためのものであり、Ｉ／ＯトラップによるＳＭＩが発生した場合にはＢＩＯＳドライバを起動し、他の要因によるＳＭＩが発生した場合にはその要因に対応するＳＭＩサービスルーチンを起動する。このように、Ｉ／ＯトラップによるＳＭＩは、ＢＩＯＳドライバを起動するためのプログラム・インタフェースとしても利用される。
【０１３９】
従って、前述のＳＣＩは、ソフトウェア割り込み（ＩＮＴ１５ｈ）だけでなく、Ｉ／ＯトラップＳＭＩを利用しても起動する事ができる。
【０１４０】
さらに、ＢＩＯＳ  ＲＯＭ１４には、リアルモード環境で動作するユーティリティーとして、セットアッププログラム、およびポップアッププログラムが格納されている。これらセットアッププログラムおよびポップアッププログラムは、キー入力操作によって所定のコマンドが入力された時に起動される。
【０１４１】
ＢＩＯＳ  ＲＯＭ１４のセットアッププログラム（ＢＩＯＳセットアップ）は、リアルモード環境においてシステムコンフィグレーションの設定／変更を行う場合に利用される。
【０１４２】
バス変換回路１５はＣＰＵローカルバス１７とシステムバス１８を接続するブリッジ回路であり、ＣＰＵローカルバス１７の３２ビットデータバスとシステムバス１８の１６ビットデータバスとの間のバス幅変換などを行う。
【０１４３】
リアルタイムクロック（ＲＴＣ）１６は電池電源が常時供給されるＣＭＯＳメモリ１６Ａを有する。このＣＭＯＳメモリ１６Ａには、システム構成情報などが保存される。システムの動作環境は、ＣＭＯＳメモリ１６Ａのシステム構成情報によって決定される。
【０１４４】
次に、システムコントローラ１２に設けられたＳＭＩ発生制御のためのハードウェア構成について説明する。
【０１４５】
システムコントローラ１２は、図示のように、Ｉ／ＯトラップＳＭＩ発生回路１２１、他の要因によるＳＭＩ発生回路１２２，１２３、ＯＲ回路１２４、およびＳＭＩステータスレジスタ１２５を備えている。
【０１４６】
Ｉ／ＯトラップＳＭＩ発生回路１２１は、プログラム・インタフェースとして利用されるＩ／ＯトラップＳＭＩ信号を発生させるための回路であり、予め決められたアドレス範囲に属するシステムバス１８上のＩ／ＯアドレスをトラップしてＩ／ＯトラップＳＭＩ信号を発生する。このＩ／ＯトラップＳＭＩ発生回路１２１は、図示のように、Ｉ／Ｏベースアドレスレジスタ１２６、アドレス比較回路１２７、およびマスクレジスタ１２８から構成されている。
【０１４７】
Ｉ／Ｏベースアドレスレジスタ１２６はＣＰＵ１１がリード／ライト可能なレジスタであり、システムバス１８に接続されている。このＩ／Ｏベースアドレスレジスタ１２６は、Ｉ／Ｏベースアドレスを保持する。このＩ／Ｏベースアドレスは、システムのパワーオン時に実行されるＢＩＯＳのＩＲＴルーチンによってＩ／Ｏベースアドレスレジスタ１２６にセットされる。セットされるＩ／Ｏベースアドレスとしては、Ｉ／Ｏ装置に対して割り当てることが可能な複数のＩ／Ｏベースアドレスの中で実際に使用されてないアドレスが利用される。
【０１４８】
比較回路１２７は、ＩＯリード／ライトサイクルにおいてシステムバス１８上に出力されるＩ／ＯアドレスとＩ／Ｏベースアドレスレジスタ１２６のＩ／Ｏベースアドレスとを比較し、Ｉ／ＯアドレスがＩ／Ｏベースアドレスによって指定されるアドレス範囲に属する時にＩ／ＯトラップＳＭＩ信号を発生する。
【０１４９】
マスクレジスタ１２８は、ＣＰＵ１１がリード／ライト可能なレジスタであり、システムバス１８に接続されている。このマスクレジスタ１２８は、Ｉ／ＯトラップＳＭＩ信号の発生を許可または禁止するためのマスクデータを保持する。このマスクデータは、システムのパワーオン時にＩＲＴルーチンによってセットされる。Ｉ／ＯトラップＳＭＩをＢＩＯＳのファンクション実行ルーチンを呼び出すためのプログラム・インタフェースとして利用する場合には、Ｉ／ＯトラップＳＭＩ信号の発生を許可するマスクデータがセットされる。
【０１５０】
Ｉ／ＯトラップＳＭＩ発生回路１２１には実際にはこのような回路が複数セット用意されており、その内の１つがＢＩＯＳドライバを呼び出すためのプロクラム・インタフェースとして利用され、他の回路セットからのＩ／ＯトラップＳＭＩはローカルスタンバイＳＭＩの発生などのために利用される。もちろん、２以上の回路セットをＢＩＯＳドライバを呼び出すためのプログラム・インタフェースとして利用することもできる。
【０１５１】
この場合には、それら回路セットに互いに異なるＩ／Ｏベースアドレスをセットしておくことによって、複数のＢＩＯＳドライバを互いにトラップアドレスが異なる複数のＩ／ＯトラップＳＭＩを利用したインタフェースによって選択的に呼び出す事ができる。
【０１５２】
他の要因によるＳＭＩ発生回路１２２，１２３は、例えば、ソフトウェアＳＭＩ、グローバルスタンバイＳＭＩ、ローカルスタンバイＳＭＩ、外部入力ＳＭＩ、電源からのサスペンドレジュームボタン信号によるＳＭＩなどを発生する。
【０１５３】
ＯＲ回路１２４は、Ｉ／ＯトラップＳＭＩ発生回路１２１および他のＳＭＩ回路１２２，１２３のいずれかがＳＭＩ信号を発生した時、そのＳＭＩ信号をＣＰＵ１１に供給する。
【０１５４】
Ｉ／ＯトラップＳＭＩ発生回路１２１および他のＳＭＩ回路１２２，１２３の各々は、ＣＰＵ１１がＳＭＭを抜けるまでＳＭＩ信号をアクティブステートに維持し続ける。このため、あるＳＭＩ信号に対するＳＭＩ処理中に他のＳＭＩ信号が発生された時は、ＣＰＵ１１は最初のＳＭＩ信号に対応するＳＭＭを抜けた後に、ＳＭＩ処理中に発生したＳＭＩ信号によって再びＳＭＭに移行する。
【０１５５】
ＳＭＩステータスレジスタ１２５は、ＳＭＩ発生要因を示すステータスデータを保持するためのものであり、Ｉ／ＯトラップＳＭＩ発生回路１２１および他のＳＭＩ回路１２２，１２３それぞれの出力を保持する。
【０１５６】
以下、この発明の特徴とするＳＣＩを用いたシステムコンフィグレーションの設定／変更動作を説明する。
【０１５７】
まず、図７乃至図１０を参照して、ＩＮＴ１５ｈを用いてＳＣＩを起動する場合について説明する。
【０１５８】
図７には、ＳＣＩを用いたシステムコンフィグレーションの設定／変更動作の原理が概念的に示されている。
【０１５９】
この実施例のパーソナルコンピュータにおいては、リアルモード環境とプロテクトモード環境とでそれぞれ異なるセットアッププログラムが用いられる。すなわち、リアルモード環境ではＢＩＯＳ  ＲＯＭ１４に格納されているＢＩＯＳセットアッププログラムが使用され、プロテクトモード環境下ではフロッピー（登録商標）ディスクやハードディスク装置から供給される“Ｍａｘ  Ｔｉｍｅ”などのセットアッププログラムが利用される。
【０１６０】
“Ｍａｘ  Ｔｉｍｅ”は本出願人によって開発されたプロテクトモードＯＳ用のアプリケーションプログラムであり、プロテクトモード環境で実行することができる。“Ｍａｘ  Ｔｉｍｅ”は、ＳＣＩを利用してシステム構成情報の読み書きを行い、ハードウェア（ＣＭＯＳメモリ）を直接アクセスすることはない。“Ｍａｘ  Ｔｉｍｅ”を実行すると、図９のようなセットアップウインドウが画面表示され、各種環境設定項目についてそれぞれ現在の設定値が提示される。現在の設定値は、キー操作やマウス操作によって変更する事ができる。また、“ＤｅＦａｕｌｔｓ”アイコンを選択する事により、全ての環境設定項目をデフォルト値に一括変更する事もできる。
【０１６１】
このようにしてシステム動作環境の変更操作が行われると、“Ｍａｘ  Ｔｉｍｅ”はＳＣＩを呼び出し、ＣＭＯＳメモリ１６Ａのシステム構成情報の変更などを行う。
【０１６２】
“Ｍａｘ  Ｔｉｍｅ”がＳＣＩを呼び出す場合には、まず、ＣＰＵ１１の動作モードがプロテクトモードからリアルモードに切り替えられ、その後ＩＮＴ１５ｈのソフトウェア割り込み命令が実行される。
【０１６３】
ＢＩＯＳセットアッププログラムは、リアルモードＯＳ用のプログラムであり、リアルモード環境で実行することができる。ＢＩＯＳセットアッププログラムも、ＳＣＩを利用してシステム構成情報の読み書きを行う事ができる。ＢＩＯＳセットアッププログラムはシステムボード上のＲＯＭに格納されたＢＩＯＳドライバの一種であるので、従来と同様に、ＢＩＯＳセットアッププログラムがハードウェア（ＣＭＯＳメモリ）を直接アクセスするように構成しても良い。ＢＩＯＳセットアッププログラムが実行された場合も、“Ｍａｘ  Ｔｉｍｅ”と同様の環境設定項目を持つ図８のようなセットアップウインドウが画面表示され、各種環境設定項目についてそれぞれ現在の設定値が提示される。
【０１６４】
ＢＩＯＳセットアッププログラムがＳＣＩを呼び出す場合には、ＣＰＵ１１の動作モードを切り替えること無く、ＩＮＴ１５ｈのソフトウェア割り込み命令だけが実行される。
【０１６５】
図１０には、ＳＣＩによるシステム構成情報のリード／ライト処理の手順が示されている。
【０１６６】
ここでは、ＳＣＩが既にオープンされている場合を想定する。
【０１６７】
前述したように、“Ｍａｘ  Ｔｉｍｅ”およびＢＩＯＳセットアッププログラムは、ＩＮＴ１５ｈのソフトウェア割り込み命令を実行する。この場合、ＳＣＩのファンクション実行ルーチンを指定するファンクションコードや、サブファンクションコードがＣＰＵ１１のレジスタにセットされる。
【０１６８】
ＩＮＴ１５ｈのソフトウェア割り込み命令の実行により、ＩＮＴ１５ｈのベクタアドレスで指定される拡張ＢＩＯＳが実行される。拡張ＢＩＯＳは、まず、ＳＣＩがサポートしているファンクションコードか否かを判断する（ステップＳ１０１）。具体的には、ファンクションコードが４４Ｆ２ｈ（クローズインタフェース）か、４４４Ｆ３ｈ（システムコンフィグレーションゲット）か、４４Ｆ４ｈ（システムコンフィグレーションセット）か、４４Ｆ５ｈ（デフォルトコンフィグレーションセット）かどうかを判断し、これらファンクションコードでなければ、拡張ＢＩＯＳに用意されたＳＣＩ以外の処理に移行する。
【０１６９】
一方、サポートするファンクションコードであれば、そのファンクションコードに対応するファンクション実行ルーチンが起動される（スップＳ１０２）。起動されたファンクション実行ルーチンは、ＣＰＵ１１のレジスタにセットされているサブファンクションコードをサポートしているか否かを判断する（ステップＳ１０３）。
【０１７０】
サポートしていないサブファンクションが指定されたときは、ファンクション実行ルーチンは、エラー値を出力値としてＣＰＵ１１のレジスタにセットした後にリターンする（ステップＳ１０４）。
【０１７１】
一方、サポートしているサブファンクションであれば、ファンクション実行ルーチンは、その指定されたサブファンクションを実行し、該当する環境設定項目の読み出し／書き込みなどを行い、ＣＰＵ１１の出力レジスタに戻り値を設定した後にリターンする（ステップＳ１０５，Ｓ１０６）。
【０１７２】
次に、前述した多数のサブファンクションについて、その機能の詳細とそれを実行した場合のＣＰＵ１１の入出力レジスタの一例について説明する。
【０１７３】
ＳＣＩのサブファンクション詳細
（１）Ｇｅｔ  Ｐｏｗｅｒ−ｕｐ  Ｍｏｄｅ
（１−１）機能
パワーアップモードの設定をＣＭＯＳからリードする。
【０１７４】
（１−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１００ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：サスペンド＆リジュームＤｉｓａｂｌｅ
０００１ｈ：サスペンド＆リジュームＥｎａｂｌｅ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
すなわち、Ｇｅｔ  Ｐｏｗｅｒ−ｕｐ  Ｍｏｄｅのサブファンクションを実行する場合には、入力レジスタＡＸにはＳＣＩのシステムコンフィグレーションゲットルーチンを指定するファンクションコード（＝４４Ｆ３ｈ）、入力レジスタＢＸにはパワーアップモードを示すサブファンクションコード（＝０１００ｈ）がセットされる。
【０１７５】
システムコンフィグレーションゲットルーチンのサブファンクション（ＧＥＴ  ＰＯＷＥＲ−ＵＰ  ＭＯＤＥ）が正常終了した場合には、出力レジスタＣＸには、ＣＭＯＳメモリ１６Ａからリードした現在のパワーアップモードがセットされる。この場合、ブートモードであれは００００ｈが戻り値となり、レジュームモードであれば０００１ｈが戻り値となる。また、出力レジスタＳＩにはパワーアップモードのデフォルト値（ブートモード）を示す００００ｈがセットされる。
【０１７６】
一方、エラー発生した場合には、エラーの内容を示す値が出力レジスタＡＨにセットされると共に、出力レジスタＣＦには１がセットされる。
【０１７７】
以下、他のサブファンクションについて同様に説明する。
【０１７８】
（２）Ｇｅｔ  Ｂａｔｔｅｒｙ  Ｓａｖｅ  Ｍｏｄｅ
（２−１）機能
バッテリーセーブモードの設定をＣＭＯＳからリードする。
【０１７９】
（２−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１０１ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８００１ｈ：Ｇｒａｄｕａｌデータタイプ
ＣＸ＝現在設定されているレベル
ＤＸ＝設定可能な最大レベル
ＳＩ＝レベルのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２−３）機能詳細
本サブファンクションは、バッテリセーブモードのレベルを返す。最大レベルは、システムによる。下の表は、最大レベル数と、各モードのレベル数を表す。
【０１８０】
例えば、Ｆｕｌｌ／Ｅｃｏｎｏｍｙ／Ｌｏｗ／ＵｓｅｒＳｅｔｔｉｎｇ  Ｍｏｄｅをサポートしているマシンでは、Ｌｏｗ  Ｍｏｄｅが設定されていれば、ＤＸ＝３、ＣＸ＝１が返され、ＳＩには０００２ｈが返される。
【０１８１】
（３）Ｇｅｔ  Ｐｒｏｃｅｓｓｉｎｇ  Ｓｐｅｅｄ
（３−１）機能
処理スピードの設定をＣＭＯＳからリードする。
【０１８２】
ａ）マシン１の場合
（３−２）ａ  入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１０２ｈ
ＣＸ＝００００ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８００３ｈ：Ｄｉｓｃｒｅｔｅデータタイプ
ＣＸ＝現在設定されている値
ＤＸ＝設定可能な値（インデックス）
ＳＩ＝インデックスのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３−３）ａ  機能詳細
本サブファンクションは、ＣＰＵのスピードをＭＨｚで返す。システムが、３３／１７／８／４ＭＨｚをサポートする場合は、１７ＭＨｚに設定されていれば、ＤＸ＝４、ＣＸ＝００１１ｈを返す。
【０１８３】
ユーザは、“インデックス”を使用することにより、全ての使用可能なモードを得ることができる。
【０１８４】
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１０２ｈ
ＣＸ＝インデックス（０・・・設定可能な値）
システムが、３３／１７／８／４ＭＨｚをサポートする場合、インデックスと処理スピードの対応は、下のようになる。
【０１８５】
Ｉｎｄｅｘ      ＰｒｏｃｅｓｓｉｎｇＳｐｅｅｄ
１                      ４ＭＨｚ    
２                      ８ＭＨｚ    
３                    １７ＭＨｚ    
４                    ３３ＭＨｚ    
この場合の設定可能な値は４（まで）であるので、ＤＸ＝０００４ｈである。ｉｎｄｅｘ＝３とすれば、ＣＸ＝００１１ｈを返す。
【０１８６】
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８００３ｈ：Ｄｉｓｃｒｅｔｅデータタイプ
ＣＸ＝インデックスにより列挙される値
ＤＸ＝インデックスの最大値
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３−３）ｂ  機能詳細
また、処理スピードのレベルを返してもよい。
【０１８７】
（４）Ｇｅｔ  Ｓｎａｐ  Ｍｏｄｅ
（４−１）機能
スナップモードの設定（Ｅｎａｂｌｅ／Ｄｉｓａｂｌｅ）を、ＣＭＯＳからリードする。
【０１８８】
（４−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１０３ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｄｉｓａｂｌｅ
０００１ｈ：Ｅｎａｂｌｅ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（５）Ｇｅｔ  Ｓｌｅｅｐ  Ｍｏｄｅ
（５−１）機能
スリープモードの設定（Ｅｎａｂｌｅ／Ｄｉｓａｂｌｅ）をＣＭＯＳからリードする。
【０１８９】
（５−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１０４ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｄｉｓａｂｌｅ
０００１ｈ：Ｅｎａｂｌｅ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（５−３）機能詳細
ＳＥＴＵＰで本項目が“ＢＡＴＴＥＲＹ  ＳＡＶＥ  ＯＰＴＩＯＮＳ”内にあるシステムで、本ファンクションにより設定値を読み出す際は、Ｂａｔｔｅｒｙ  Ｓａｖｅ  Ｍｏｄｅ＝Ｕｓｅｒ  Ｓｅｔｔｉｎｇ以外の時の設定はＣＭＯＳからリードせず、それぞれの固定の設定値を返すようにすること。（ＣＭＯＳにはＢａｔｔｅｒｙ  Ｓａｖｅ  Ｍｏｄｅ＝Ｕｓｅｒ  Ｓｅｔｔｉｎｇ時の設定値しか格納されていないため。）
（６）Ｇｅｔ  Ｄｉｓｐｌａｙ  Ａｕｔｏ  ＯＦＦ  Ｍｏｄｅ
（６−１）機能
ディスプレイオートオフモードの設定をＣＭＯＳからリードする。
【０１９０】
（６−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１０５ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８００６ｈ：Ｔｉｍｅｒデータタイプ
ＣＸ＝現在設定されているモード
ＤＸ＝設定可能なモード
ＳＩ＝モードのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（６−３）機能詳細
１）Ｄｉｓａｂｌｅ，１，３，５，１０，１５，２０，３０，Ａｌｗａｙｓ  ＯＦＦをサポートするシステムでは、ＤＸ＝０２ＦＦｈを返す。
【０１９１】
２）Ｄｉｓａｂｌｅ，３０ｍｉｎ．をサポートするシステムでは、ＤＸ＝０２０１ｈを返す。
【０１９２】
３）Ｄｉｓａｂｌｅに設定されていれば、ＣＸ＝０００１ｈを返す。
【０１９３】
４）Ａｌｗａｙｓ  ＯＦＦに設定されていれば、ＣＸ＝０００２ｈを返す。
【０１９４】
５）２０ｍｉｎ．に設定されていれば、ＣＸ＝００８０ｈを返す。
【０１９５】
６）３０ｍｉｎ．に設定されていれば、ＣＸ＝０２００ｈを返す。
【０１９６】
システムが、モノクロＬＣＤをサポートしない場合、“Ａｌｗａｙｓ  Ｏｆｆ”の設定はサポートされないので、出力ＤＸのＢｉｔｌ＝０となる。
【０１９７】
また、ＳＥＴＵＰで本項目が“ＢＡＴＴＥＲＹ  ＳＡＶＥ  ＯＰＴＩＯＮＳ”内にあるシステムで、本ファンクションにより設定値を読み出す際は、Ｂａｔｔｅｒｙ  Ｓａｖｅ  Ｍｏｄｅ＝Ｕｓｅｒ  Ｓｅｔｔｉｎｇ以外の時の設定はＣＭＯＳからリードせず、それぞれの固定の設定値を返すようにする（ＣＭＯＳにはＢａｔｔｅｒｙ  Ｓａｖｅ  Ｍｏｄｅ＝Ｕｓｅｒ  Ｓｅｔｔｉｎｇ時の設定値しか格納されていないため）。
【０１９８】
（７）Ｇｅｔ  ＨＤＤ  Ａｕｔｏ  ＯＦＦ  Ｍｏｄｅ
（７−１）機能
ＨＤＤオートオフモードの設定をＣＭＯＳからリードする。
【０１９９】
（７−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１０６ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８００６ｈ：Ｔｉｍｅｒデータタイプ
ＣＸ＝現在設定されているモード
ＤＸ＝設定可能なモード
ＳＩ＝モードのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（７−３）機能詳細
１）Ｄｉｓａｂｌｅ，３，５，１０，１５，２０，３０をサポートするシステムでは、ＤＸ＝０２Ｆ９ｈを返す。
【０２００】
２）Ｄｉｓａｂｌｅに設定されていれば、ＣＸ＝０００１ｈを返す。
【０２０１】
３）３  ｍｉｎｕｔｅｓに設定されていれば、ＣＸ＝０００８ｈを返す。
【０２０２】
４）３０  ｍｉｎｕｔｅｓに設定されていれば、ＣＸ＝０２００ｈを返す。また、ＳＥＴＵＰで本項目が“ＢＡＴＴＥＲＹ  ＳＡＶＥ  ＯＰＴＩＯＮＳ”内にあるシステムで、本ファンクションにより設定値を読み出す際は、Ｂａｔｔｅｒｙ  Ｓａｖｅ  Ｍｏｄｅ＝Ｕｓｅｒ  Ｓｅｔｔｉｎｇ以外の時の設定はＣＭＯＳからリードせず、それぞれの固定の設定値を返すようにする（ＣＭＯＳにはＢａｔｔｅｒｙ  Ｓａｖｅ  Ｍｏｄｅ＝Ｕｓｅｒ  Ｓｅｔｔｉｎｇ時の設定値しか格納されていないため）。
【０２０３】
（８）Ｇｅｔ  ＦＤＤ  Ａｕｔｏ  Ｏｆｆ  Ｍｏｄｅ
（８−１）機能
ＦＤＤオートオフモードの設定（Ｅｎａｂｌｅ／Ｄｉｓａｂｌｅ）をＣＭＯＳからリードする。
【０２０４】
（８−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１０７ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｄｉｓａｂｌｅ
０００１ｈ：Ｅｎａｂｌｅ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（９）Ｇｅｔ  Ｃａｃｈｅ  Ｓｔａｔｕｓ
（９−１）機能
キャッシュステータスの設定（Ｅｎａｂｌｅ／Ｄｉｓａｂｌｅ）をＣＭＯＳからリードする。
【０２０５】
（９−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１０８ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｄｉｓａｂｌｅ
０００１ｈ：Ｅｎａｂｌｅ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（１０）Ｇｅｔ  Ｓｐｅａｋｅｒ  Ｖｏｌｕｍｅ
（１０−１）機能
スピーカーボリュームの設定をＣＭＯＳからリードする。
【０２０６】
（１０−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１０９ｈ
正常終了する場合
・出力レジスタ
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８００１ｈ：Ｇｒａｄｕａｌデータタイプ
ＣＸ＝現在設定されているレベル
ＤＸ＝設定可能な最大レベル
ＳＩ＝レベルのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（１０−３）機能詳細
本サブファンクションは、ＣＸレジスタにレベルでスピーカーボリュームの設定を返す。最小レベルは０で、最大レベルはシステムにより、値をＤＸレジスタに返す。あるシステムでは、レベルは次のように返され、ＤＸおよびＳＩには０００３ｈが返る。
【０２０７】
Ｌｅｖｅｌ            Ｍｏｄｅ
０          Ｄｉｓａｂｌｅ（Ｏｆｆ）
１          Ｓｍａｌｌ    （Ｌｏｗ）
２          Ｍｉｄｄｌｅ  （Ｍｅｄｉｕｍ）
３          Ｌａｒｇｅ    （Ｈｉｇｈ）
（１１）Ｇｅｔ  Ｓｙｓｔｅｍ  Ｓｐｅａｋｅｒ  Ｓｔａｔｕｓ
（１１−１）機能
システムスピーカーの設定（Ｅｎａｂｌｅ／Ｄｉｓａｂｌｅ）をＣＭＯＳからリードする。
【０２０８】
（１１−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１０Ａｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｄｉｓａｂｌｅ
０００１ｈ：Ｅｎａｂｌｅ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（１２）Ｇｅｔ  Ｌｏｗ  Ｂａｔｔｅｒｙ  Ａｌａｒｍ  Ｍｏｄｅ
（１２−１）機能
ローバッテリーアラームモードの設定（Ｅｎａｂｌｅ／Ｄｉｓａｂｌｅ）をＣＭＯＳからリードする。
【０２０９】
（１２−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１０Ｂｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｄｉｓａｂｌｅ
０００１ｈ：Ｅｎａｂｌｅ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファン                  クションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（１３）Ｇｅｔ  Ｐａｎｅｌ  Ｃｌｏｓｅ  Ａｌａｒｍ  Ｍｏｄｅ
（１３−１）機能
パネル閉時のアラーム音の設定（Ｅｎａｂｌｅ／Ｄｉｓａｂｌｅ）をＣＭＯＳからリードする。
【０２１０】
（１３−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１０Ｃｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｄｉｓａｂｌｅ
０００１ｈ：Ｅｎａｂｌｅ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（１４）Ｇｅｔ  Ｐａｎｅｌ  Ｐｏｗｅｒ  Ｏｎ／Ｏｆｆ  Ｍｏｄｅ
（１４−１）機能
パネル開閉時のサスペンド／リジュームの設定（Ｅｎａｂｌｅ／Ｄｉｓａｂｌｅ）をＣＭＯＳからリードする。
【０２１１】
（１４−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１０Ｄｈ
・出力レジスタ
正常終了する倍
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｄｉｓａｂｌｅ
０００１ｈ：Ｅｎａｂｌｅ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（１４−３）機能詳細
本ファンクション実行時は、ブートモード／レジュームモードに関わらず、現在のＣＭＯＳの設定値を返すものとする。
【０２１２】
（１５）Ｇｅｔ  Ａｌａｒｍ  Ｐｏｗｅｒ  Ｏｎ  Ｄａｔｅ
（１５−１）機能
アラームパワーオンの日付の設定をＣＭＯＳからリードする。
【０２１３】
（１５−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１０Ｅｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８００５ｈ：Ｄａｔｅデータタイプ
ＣＸ＝現在設定されている日付
ＤＸ＝設定可能な日付
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（１５−３）機能詳細
本サブファンクションは、アラームパワーオンの日付の設定を返す。
【０２１４】
本サブファンクション実行時にＤＸレジスタに返される値は、年／月／日の設定がサポートされている場合はＤＸ＝０ＦＦＦＥｈとなるが、月／日の設定しかサポートされていない場合は、ＤＸ＝０３ＦＥｈとなる。
【０２１５】
（１６）Ｇｅｔ  Ａｌａｒｍ  Ｐｏｗｅｒ  Ｏｎ  Ｔｉｍｅ
（１６−１）機能
オートリジューム（アラームパワーオン）の時間の設定をＣＭＯＳからリードする。
【０２１６】
（１６−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１０Ｆｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８００４ｈ：Ｔｉｍｅデータタイプ
ＣＸ＝現在設定されている時間
ＤＸ＝設定可能な時間：（１６−３）１）の表の通り各ビットは固定
ＳＩ＝設定のデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（１６−３）機能詳細
本サブファンクションは、アラームパワーオンの時間を返す。
【０２１７】
１）例えば、Ｄｉｓａｂｌｅ，Ｅｎａｂｌｅ（ｈｈ：ｍｍ）をサポートするシステムでは、ＤＸ＝□ＦＦＦｈを返す。（□：Ｂｉｔ１５−Ｂｉｔ１２はＲｅｓｅｒｖｅｄ（ｒ）、各ビットは下表の通り）
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r   r   r   r  1   1   1  1  1  1  1  1  1  1  1  1
２）Ｄｉｓａｂｌｅに設定されていれば、ＣＸレジスタの各ビットは、以下のように返される。
【０２１８】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0 
r   r   r   r   0   0  0  0  0  0  0  0  0  0  0  1
３）１２：３４に設定されていれば、ＣＸレジスタの各ビットは、以下のように返される。
【０２１９】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  １  0
r   r   r   r   0   1   1  0  0  1  0  0  0  1  0  0
４）ＳＩは、以下のように返される。
【０２２０】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0 
r   ｒ   r   r   0  0  0  0  0  0  0  0  0  0  0  1
（１７）Ｇｅｔ  Ｓｙｓｔｅｍ  Ａｕｔｏ  ＯＦＦ  Ｍｏｄｅ
（１７−１）機能
オートサスペンドの設定をＣＭＯＳからリードする。
【０２２１】
（１７−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１１０ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８００６ｈ：Ｔｉｍｅｒデータタイプ
ＣＸ＝現在設定されているモード
ＤＸ＝設定可能なモード
ＳＩ＝モードのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（１７−３）機能詳細
本サブファンクションは、オートサスペンドモードの設定を返す。
【０２２２】
１）Ｄｉｓａｂｌｅ，３０，６０をサポートするとき、ＤＸ＝８２０１ｈを返す。
【０２２３】
２）Ｄｉｓａｂｌｅが設定されていれば、ＣＸ＝０００１ｈを返す。
【０２２４】
３）３０  ｍｉｎｕｔｅｓが設定されていれば、ＣＸ＝０２００ｈを返す。
【０２２５】
また、ＳＥＴＵＰで本項目が“ＢＡＴＴＥＲＹ  ＳＡＶＥ  ＯＰＴＩＯＮＳ”内にあるシステムで、本ファンクションにより設定値を読み出す際は、Ｂａｔｔｅｒｙ  Ｓａｖｅ  Ｍｏｄｅ＝Ｕｓｅｒ  Ｓｅｔｔｉｎｇ以外の時の設定はＣＭＯＳからリードせず、それぞれの固定の設定値を返すようにする（ＣＭＯＳにはＢａｔｔｅｒｙ  Ｓａｖｅ  Ｍｏｄｅ＝Ｕｓｅｒ  Ｓｅｔｔｉｎｇ時の設定値しか格納されていないため）。
【０２２６】
（１８）Ｇｅｔ  Ｒｅｍａｉｎｉｎｇ  Ｂａｔｔｅｒｙ  Ｐｏｗｅｒ  ａｓ  Ｐｅｒｃｅｎｔａｇｅ
（１８−１）機能
バッテリー残量（パーセンテージ）をリードする。
【０２２７】
（１８−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１１１ｈ
・出力レジスタ
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８００１ｈ：Ｇｒａｄｕａｌデータタイプ
ＣＸ＝現在のバッテリー残量またはＦＦＦＦｈ：不明、
ＦＦＦＥｈ：乾電池が接続されている
ＤＸ＝最大レベル
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
８Ｃｈ（電源マイコンがビジーである）
８Ｅｈ（バッテリーが装着されていない）
（１８−３）機能詳細
本サブファンクションは、残りのバッテリー容量（１ｓｔバッテリ／２ｎｄバッテリが共にある場合は１ｓｔバッテリの容量）をパーセンテージで表す。システムが残りの容量を読み取れなければ、ＣＸ＝０ＦＦＦＦｈを返す。また、乾電池が接続されている場合は、ＣＸ＝ＦＦＦＥｈを返す。
【０２２８】
例えば、あるシステムでは、最大レベルは１００であり、レベル０，１，２，・・・，９９，１００はそれぞれ０％，１％，２％・・・９９％，１００％に対応する。
【０２２９】
（１９）Ｇｅｔ  Ｒｅｍａｉｎｉｎｇ  Ｂａｔｔｅｒｙ  Ｐｏｗｅｒ  ｉｎ  Ｔｉｍｅ
（１９−１）機能
バッテリー残量（時間）をリードする。
【０２３０】
（１９−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１１２ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０２ｈ
ＢＸ＝８００４ｈ：タイムデータタイプ
ＣＸ＝現在設定されている時間または０ＦＦＦＦｈ：不明
ＤＸ＝設定可能な時間
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
８Ｃｈ（電源マイコンがビジーである）
８Ｅｈ（バッテリーが装着されていない）
（１９−３）機能詳細
本サブファンクションは、残りのバッテリー容量を時間で表す。システムが残りの容量を読み取れなければ、ＣＸ＝０ＦＦＦＦｈを返す。
【０２３１】
尚、バッテリ残時間のリードはＡＣアダプタなし（バッテリ駆動）の時のみ可能である。ＡＣアダプタ有りの時に本ファンクションを実行した場合は読み出しＤｉｓａｂｌｅとして、ＣＸ＝０００１ｈを返す。
【０２３２】
（２０）Ｇｅｔ  Ｂａｔｔｅｒｙ  Ｓｔａｔｕｓ  Ｍｏｄｅ
（２０−１）機能
バッテリーステータスモードの設定をＣＭＯＳからリードする。
【０２３３】
（２０−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１１３ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：残り時間の表示
０００１ｈ：残りの容量（％）の表示
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
８Ｅｈ（バッテリーが装着されていない）
（２１）Ｇｅｔ  Ｍｏｄｅｍ  Ｐｏｗｅｒ  Ｓｔａｔｕｓ
（２１−１）機能
モデムパワーステータスの設定をＣＭＯＳからリードする。
【０２３４】
（２１−２）入出力ジレスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１１４ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：ＯＦＦ
０００１ｈ：ＯＮ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
８Ｅｈ（モデムが装着されていない）
（２１−３）機能詳細
本サブファンクションは、内部モデムパワーの設定（ＯＮ／ＯＦＦ）を返す。内部モデムがインストールされていないときは、ＣＦ＝１とＡＨ＝８Ｅｈを返す。（２１．１）Ｇｅｔ  ＬＣＤ  Ｂｒｉｇｈｔｎｅｓｓ  Ｓｔａｔｕｓ  
（２１．１−１）機能
ＬＣＤ輝度の設定をＣＭＯＳからリードする。
【０２３５】
（２１．１−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１１５ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｂｒｉｇｈｔ
０００１ｈ：Ｓｅｍｉ−Ｂｒｉｇｈｔ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２１．１−３）機能詳細
ＳＥＴＵＰで本項目が“ＢＡＴＴＥＲＹ  ＳＡＶＥ  ＯＰＴＩＯＮＳ”内にあるシステムで、本ファンクションにより設定値を読み出す際は、Ｂａｔｔｅｒｙ  Ｓａｖｅ  Ｍｏｄｅ＝Ｕｓｅｒ  Ｓｅｔｔｉｎｇ以外の時の設定はＣＭＯＳからリードせず、それぞれの固定の設定値を返すようにする（ＣＭＯＳにはＢａｔｔｅｒｙ  Ｓａｖｅ  Ｍｏｄｅ＝Ｕｓｅｒ  Ｓｅｔｔｉｎｇ時の設定値しか格納されていないため）。
【０２３６】
（２２）Ｇｅｔ  Ｐｏｐｕｐ  Ｗｉｎｄｏｗ  Ｍｏｄｅ
（２２−１）機能
ポップアップの設定（Ｅｎａｂｌｅ／Ｄｉｓａｂｌｅ）をＣＭＯＳからリードする。
【０２３７】
（２２−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１１６ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｄｉｓａｂｌｅ
０００１ｈ：Ｅｎａｂｌｅ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２３）Ｇｅｔ  Ｈｏｔｋｅｙ  Ｍｏｄｅ
（２３−１）機能
ホットキーの設定（Ｅｎａｂｌｅ／Ｄｉｓａｂｌｅ）をＣＭＯＳからリードする。
【０２３８】
（２３−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１１Ａｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｄｉｓａｂｌｅ
０００１ｈ：Ｅｎａｂｌｅ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２４）Ｇｅｔ  Ｍａｘ．ＬＣＤ  Ｂｒｉｇｈｔｎｅｓｓ  Ｓｔａｔｕｓ
（２４−１）機能
ＬＣＤの輝度設定をＣＭＯＳからリードする。
【０２３９】
（２４−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１１Ｂｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８００１ｈ：Ｇｒａｄｕａｌデータタイプ
ＣＸ＝現在設定されているレベル
ＤＸ＝設定可能なレベル
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２４−３）機能詳細
本ファンクションについて、例えばシステムがＨｉｇｈ／Ｌｏｗをサポートする場合、レベルの割り当ては以下のようになり、またＤＸ＝０００１ｈが返される。
【０２４０】
Ｌｅｖｅｌ    ＰｒｏｃｅｓｓｉｎｇＳｐｅｅｄ
１                    Ｈｉｇｈ
０                    Ｌｏｗ
また、ＳＥＴＵＰで本項目が“ＢＡＴＴＥＲＹ  ＳＡＶＥ  ＯＰＴＩＯＮＳ”内にあるシステムで、本ファンクションにより設定値を読み出す際は、Ｂａｔｔｅｒｙ  Ｓａｖｅ  Ｍｏｄｅ＝Ｕｓｅｒ  Ｓｅｔｔｉｎｇ以外の時の設定はＣＭＯＳからリードせず、それぞれの固定の設定値を返すようにする（ＣＭＯＳにはＢａｔｔｅｒｙ  Ｓａｖｅ  Ｍｏｄｅ＝Ｕｓｅｒ  Ｓｅｔｔｉｎｇ時の設定値しか格納されていないため）。
【０２４１】
（２４．１）Ｇｅｔ  ＤＡＣ  Ｄｉｇｉｔａｌ  Ｏｕｔｐｕｔ  Ｓｔａｔｕｓ
（２４．１−１）機能
ＤＡＣのデジタル出力の設定をスペシャルレジスタからリードする。
【０２４２】
（２４．１−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝００１１Ｃｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：ＤＡＣのデジタル出力ＯＦＦ
０００１ｈ：ＤＡＣのデジタル出力ＯＮ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２４．１−３）機能詳細
本サブファンクションは、ＤＡＣのデジタル出力の設定（ＯＮ／ＯＦＦ）を返す。
【０２４３】
（２４．２）Ｇｅｔ  Ｂｏｏｔ  Ｐｒｉｏｒｉｔｙ
（２４．２−１）機能
ブートの優先度の設定をＣＭＯＳからリードする。
【０２４４】
（２４．２−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１１Ｄｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：ＦＤＤ→ＨＤＤ
０００１ｈ：ＨＤＤ→ＦＤＤ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２４．３）Ｇｅｔ  Ｒｅｍａｉｎｉｎｇ  Ｂａｔｔｅｒｙ  Ｐｏｗｅｒ  ａｓ  Ｐｅｒｃｅｎｔａｇｅ（２ｎｄ）
（２４．３−１）機能
２ｎｄバッテリーの残量（パーセンテージ）をリードする。
【０２４５】
（２４．３−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１１Ｅｈ
・出力レジスタ
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８００１ｈ：Ｇｒａｄｕａｌデータタイプ
ＣＸ＝現在のバッテリー残量または０ＦＦＦＦｈ不明
ＤＸ＝最大レベル
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
８Ｃｈ（電源マイコンがビジーである）
８Ｅｈ（２ｎｄバッテリーが装着されていない）
（２４．３−３）機能詳細
本サブファンクションは、２ｎｄバッテリーの残りのバッテリー容量をパーセンテージで表す。システムが残量を読み取れなければ、ＣＸ＝０ＦＦＦＦｈを返す。
【０２４６】
（２４．４）Ｇｅｔ  Ｃａｃｈｅ  Ｗｒｉｔｅ  Ｐｏｌｉｃｙ
（２４．４−１）機能
ＣＰＵキャッシュの書き込み手段の設定をＣＭＯＳからリードする。
【０２４７】
（２４．４−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１１Ｆｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：ライトバック
０００１ｈ：ライトスルー
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２４．４−３）機能詳細
本ファンクション実行時は、キャッシュの設定（Ｅｎａｂｌｅ／Ｄｉｓａｂｌｅ）に関わらず、現在のＣＭＯＳの設定値を返すものとする。
【０２４８】
（２４．５）Ｇｅｔ  Ｅｊｅｃｔ  Ｐａｓｓｗｏｒｄ  Ｍｏｄｅ
（２４．５−１）機能
Ｅｊｅｃｔ−ＳＷを押した時のパスワードチェックの設定をリードする。
【０２４９】
（２４．５−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１２０ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｄｉｓａｂｌｅ
０００１ｈ：Ｅｎａｂｌｅ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
８Ｅｈ（パスワードが登録されていない）
（２４．５−３）機能詳細
本ファンクションにより、Ｅｊｅｃｔパスワードチェックの設定をＳＭ−ＲＡＭからリードする。
【０２５０】
本ファンクション実行時に、パスワードが登録されていなかった場合は８Ｅｈエラーを返すものとする。
【０２５１】
（２４．６）Ｇｅｔ  Ｒｉｎｇ  Ｉｎｄｉｃａｔｏｒ  Ｍｏｄｅ
（２４．６−１）機能
モデムおよびシリアルポートからのＲＩ信号によるオートパワーオンの設定をＣＭＯＳからリードする。
【０２５２】
（２４．６−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１２１ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｄｉｓａｂｌｅ
０００１ｈ：Ｅｎａｂｌｅ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２４．７）Ｇｅｔ  Ｃｏｏｌｉｎｇ  Ｍｅｔｈｏｄ
（２４．７−１）機能
ＣＰＵ熱対策のモードの設定をＣＭＯＳからリードする。
【０２５３】
（２４．７−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０１２２ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｐｅｒｆｏｒｍａｎｃｅモード
０００１ｈ：Ｑｕｉｅｔモード
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２４．７−３）機能詳細
ＳＥＴＵＰで本項目が“ＢＡＴＴＥＲＹ  ＳＡＶＥ  ＯＰＴＩＯＮＳ”内にあるシステムで、本ファンクションにより設定値を読み出す際は、Ｂａｔｔｅｒｙ  Ｓａｖｅ  Ｍｏｄｅ＝Ｕｓｅｒ  Ｓｅｔｔｉｎｇ以外の時の設定はＣＭＯＳからリードせず、それぞれの固定の設定値を返すようにする（ＣＭＯＳにはＢａｔｔｅｒｙ  Ｓａｖｅ  Ｍｏｄｅ＝Ｕｓｅｒ  Ｓｅｔｔｉｎｇ時の設定値しか格納されていないため）。
【０２５４】
（２５）Ｇｅｔ  Ｈａｒｄ  ＲＡＭ  Ｓｉｚｅ
（２５−１）機能
ハードＲＡＭの現在設定されているサイズの設定をＣＭＯＳからリードする。（２５−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０２００ｈ
ＣＸ＝００００ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８００３ｈ：Ｄｉｓｃｒｅｔｅデータタイプ
ＣＸ＝現在設定されているサイズ
ＤＸ＝インデックスの最大値
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２５−３）機能詳細
本サブファンクションは、ハードＲＡＭのサイズをＫＢｙｔｅ単位で返す。例えば、０ＫＢ，５１２ＫＢ，１０２４ＫＢが設定可能なサイズで、１０２４ＫＢに設定すれば、ＤＸ＝０００３ｈ，ＣＸ＝０４００ｈを返す。
【０２５５】
ユーザは、“インデックス”を使用することにより、全ての使用可能なモードを得ることができる。
【０２５６】
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０２００ｈ
ＣＸ＝インデックス（１…設定可能な値）
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝８００３ｈ：Ｄｉｓｃｒｅｔｅデータタイプ
ＣＸ＝インデックスにより列挙される値
ＤＸ＝インデックスの最大値
ＳＩ＝ハードＲＡＭサイズのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
０ＫＢ，５１２ＫＢ，１０２４ＫＢをサポートするマシンの場合、ｉｎｄｅｘ＝３とすれば、ＣＸ＝０４００ｈを返す。（下表参照）
ｉｎｄｅｘ        Ｈａｒｄ  ＲＡＭｓｉｚｅ
１                        ０ＫＢ        
２                    ５１２ＫＢ        
３                  １０２４ＫＢ        
（２６）Ｇｅｔ  Ｓｈａｄｏｗ  ＲＡＭ  Ｍｏｄｅ
（２６−１）機能
Ｓｈａｄｏｗ  ＲＡＭの設定（Ｅｎａｂｌｅ／Ｄｉｓａｂｌｅ）をＣＭＯＳからリードする。
【０２５７】
（２６−２）入出力レジスタ
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０２０１ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０３ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
８０００ｈ：拡張Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｓｈａｄｏｗ  ＲＡＭ…Ｄｉｓａｂｌｅ
０００１ｈ：                    …Ｅｎａｂｌｅ
（ＤＸ＝Ｓｈａｄｏｗ  ＲＡＭ容量（ＫＢ単位））
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合    
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２６−３）機能詳細
Ｓｈａｄｏｗ  ＲＡＭが常にＥｎａｂｌｅに固定されているマシンでは、ＣＸ、ＳＩには常に０００１ｈが返される。
【０２５８】
またＤＸにＳｈａｄｏｗ  ＲＡＭ容量が返される。
【０２５９】
（２６．１）Ｇｅｔ  Ｅｘｔｅｎｄ  Ｍｅｍｏｒｙ  Ｓｅｔｕｐ  Ｍｏｄｅ
（２６．１−１）機能
外部オプションＲＯＭの設定（ＲＯＭ／ＲＡＭコピー制御およびキャッシュ制御）をＣＭＯＳからリードする。
【０２６０】
（２６．１−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０２０２ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８００７ｈ：Ｅｘｔｅｎｄ  Ｍｅｍｏｒｙ  Ｓｅｔｕｐデータタイプ
ＣＸ＝現在設定されているモード
ＤＸ＝設定可能なモード
ＳＩ＝モードのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２６．１−３）機能詳細
本ファンクションは、外部オプションカードの有無に関わらず、ＣＭＯＳの設定を返すものとする。
【０２６１】
（２７）Ｇｅｔ  Ｄｉｓｐｌａｙ  Ｄｅｖｉｃｅ  Ｍｏｄｅ
（２７−１）機能
内部ディスプレイの設定をＣＭＯＳからリードする。
【０２６２】
（２７−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０３００ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝８２００ｈ：Ｄｉｓｐｌａｙ  Ｓｐｅｃｉｆｉｃデータタイプ
ＣＸ＝現在設定されているモード
ＤＸ＝設定可能なモード
ＳＩ＝モードのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２７．１）Ｇｅｔ  Ｃｕｒｒｅｎｔ  Ｄｉｓｐｌａｙ  Ｄｅｖｉｃｅ  Ｍｏｄｅ
（２７．１−１）機能
内部ディスプレイのカレントセッティングをリードする。
【０２６３】
（２７．１−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝８３００ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝８２００ｈ：Ｄｉｓｐｌａｙ  Ｓｐｅｃｉｆｉｃデータタイプ
ＣＸ＝現在設定されているモード
ＤＸ＝設定可能なモード
ＳＩ＝モードのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２７．１−３）機能詳細
本ファンクションは、ディスプレイモードの設定について、変更と同時にＣＭＯＳ内の設定情報を書き換えない（そのため、カレントセッティングとＣＭＯＳの値が異なる）システムにのみ使用される。本ファンクション実行時に得られるＣＸ、ＤＸ、ＳＩ各レジスタの値は、ビット１４〜１１のみ意味を持ち、その他のビットには０が返される。
【０２６４】
（２８）Ｇｅｔ  Ｃｏｌｏｒ  Ｅｍｕｌａｔｉｏｎ  Ｍｏｄｅ
（２８−１）機能
内部ディスプレイの設定をＣＭＯＳからリードする。
【０２６５】
（２８−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０３０１ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝８２０１ｈ：Ｄｉｓｐｌａｙ  Ｓｐｅｃｉｆｉｃ（２）データタイプ
ＣＸ＝現在設定されているモード
ＤＸ＝設定可能なモード
ＳＩ＝モードのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２８−３）機能詳細
本サブファンクションは、内部ディスプレイの設定を返す。ただし、ディスプレイがモノクロＬＣＤの場合は、サポートされない（８Ｅｈエラーが返される）。  例えば、ＬＣＤ表示色として、５１２色／２４Ｋ色／１８０Ｋ色をサポートするシステムでは、Ｄｉｓｐｌａｙ  Ｓｐｅｓｉｆｉｃ（２）データタイプへの割り当ては、以下のようになる。
【０２６６】
Ｂｉｔ０…５１２色
Ｂｉｔ１…２４Ｋ色
Ｂｉｔ２…１８０Ｋ色
またＤＸは以下のように返される。
【０２６７】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0 
r   r   r   r   r   r  r  r  r  r  r  r  r  1  1  1
“１８０Ｋ”ｃｏｌｏｒ  ｍｏｄｅに設定されていれば、ＣＸレジスタの各ビットは、以下のように返される。
【０２６８】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0 
r   r   r   r   r   r  r  r  r  r  r  r  r  1  0  0
また、ＳＩは以下のように返される。
【０２６９】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r   r   r   r   r   r  r  r  r  r  r  r  r  1  0  0
ハードウェア的に２４Ｋ  ｃｏｌｏｒ  ｍｏｄｅに固定されているシステムは、ＣＸ、ＤＸおよびＳＩレジスタには以下のように返される。
【０２７０】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r   r   r   r   r   r  r  r  r  r  r  r  r  0  1  0
その他、システムがＬＣＤ表示色として、（ａ）５１２色／２４Ｋ色／１８０Ｋ色／２５６Ｋ色、（ｂ）４０９６色／２２６Ｋ色をサポートする場合、Ｄｉｓｐｌａｙ  Ｓｐｅｃｉｆｉｃ（２）データタイプへの割り当ては、それぞれ以下のようになる。
【０２７１】
（ａ）Ｂｉｔ０…５１２色          （ｂ）Ｂｉｔ０…４０９６色
Ｂｉｔ１…２４Ｋ色                Ｂｉｔ１…２２６Ｋ色
Ｂｉｔ２…１８０Ｋ色
Ｂｉｔ３…２５６Ｋ色
出力ＤＸは上記（ａ）の場合０００Ｆｈ、（ｂ）の場合０００３ｈとなる。
【０２７２】
また、ＬＣＤ表示色が固定の場合は、Ｂｉｔ０にその固定色を割り当てる。この場合の出力ＤＸ＝０００１ｈとなる。
【０２７３】
（２９）Ｇｅｔ  Ｄｉｓｐｌａｙ  Ｎｏｒｍａｌ／Ｒｅｖｅｒｓｅ  Ｍｏｄｅ
（２９−１）機能
ディスプレイモードの設定（Ｎｏｒｍａｌ／Ｒｅｖｅｒｓｅ）をＣＭＯＳからリードする。
【０２７４】
（２９−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０３０３ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｎｏｒｍａｌ
０００１ｈ：Ｒｅｖｅｒｓｅ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファン                  クションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（２９−３）機能詳細
本サブファンクションは、ディスプレイがカラーＬＣＤの場合はサポートされない（８Ｅｈエラーを返す。）
（３０）Ｇｅｔ  Ｄｉｓｐｌａｙ  Ｃｏｎｔｒａｓｔ
（３０−１）機能
ディスプレイコントラストの設定をリードする。
【０２７５】
（３０−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０３０４ｈ
・出力レジスタ
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８００１ｈ：Ｇｒａｄｕａ１データタイプ
ＣＸ＝現在設定されているレベル
ＤＸ＝設定可能な最大レベル
ＳＩ＝レベルのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
８Ｃｈ（電源マイコンがビジーである）
（３０−３）機能詳細
本サブファンクションは、ＣＸレジスタに指定された整数値（レベル）でディスプレイコントラストを返す。最小レベルは０で、最大レベルはシステムにより、値はＤＸレジスタに返す。
【０２７６】
（３１）Ｇｅｔ  Ｄｉｓｐｌａｙ  Ｂｒｉｇｈｔｎｅｓｓ
（３１−１）機能
ディスプレイ輝度の設定をリードする。
【０２７７】
（３１−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０３０５ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８００１ｈ：Ｇｒａｄｕａ１データタイプ
ＣＸ＝現在設定されているレベル
ＤＸ＝設定可能な最大レベル
ＳＩ＝レベルのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
８Ｃｈ（電源マイコンがビジーである）
（３１−３）機能詳細
本サブファンクションは、ＣＸレジスタに指定された整数値（レベル）でディスプレイ輝度を返す。最小レベルは０で、最大レベルはＦＦであり、ＤＸ＝００ＦＦｈが返される。
【０２７８】
Ｄｉｓｐｌａｙ  Ａｕｔｏ  ＯＦＦ  ＭｏｄｅがＡｌｗａｙｓ  ＯＦＦに設定されている場合は、ＡＬ＝０２ｈ、ＣＸ＝００００ｈが返される。
【０２７９】
（３１．１）Ｇｅｔ  Ｓｃａｎ  Ｍｏｄｅ
（３１．１−１）機能
Ｓｃａｎ  Ｍｏｄｅの設定をＣＭＯＳからリードする。
【０２８０】
（３１．１−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０３０６ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｉｎｔｅｒｌａｃｅ
０００１ｈ：Ｎｏｎ  Ｉｎｔｅｒｌａｃｅ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３１．２）Ｇｅｔ  ＤＰＭＳ  Ｓｔａｔｕｓ
（３１．２−１）機能
ＤＰＭＳ（Ｄｉｓｐｌａｙ  Ｐｏｗｅｒ  Ｍａｎａｇｅｍｅｎｔ  Ｓｉｇｎａｌｉｎｇ）の設定をＣＭＯＳからリードする。
【０２８１】
（３１．２−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０３０７ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：無効
０００１ｈ：有効
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３１．３）Ｇｅｔ  Ｔａｌｌ  Ｆｏｎｔ  Ｍｏｄｅ
（３１．３−１）機能
Ｔａｌｌ  Ｆｏｎｔの設定をＣＭＯＳからリードする。
【０２８２】
（３１．３−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０３０８ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｄｉｓａｂｌｅ
０００１ｈ：Ｅｎａｂｌｅ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファン                  クションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３１．４）Ｇｅｔ  ＶＧＡ  Ｓｅｇｍｅｎｔ  Ａｄｄｒｅｓｓ
（３１．４−１）機能
ＶＧＡ  ＢＩＯＳセグメントアドレスの設定をＣＭＯＳからリードする。
【０２８３】
（３１．４−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０３０９ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝８００１ｈ：Ｇｒａｄｕａｌデータタイプ
ＣＸ＝００００ｈ：Ｅ０００ｈ
０００１ｈ：Ｅ４００ｈ
０００２ｈ：Ｃ０００ｈ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３２）Ｇｅｔ  ＨＤＤ  （＃０）  Ｔｙｐｅ
（３２−１）機能
ＨＤＤ（＃０）の設定をＣＭＯＳからリードする。
【０２８４】
（３２−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０４００ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝８０００ｈ：拡張Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｄｉｓａｂｌｅ
０００１ｈ：Ｅｎａｂｌｅ
ＤＸ＝ハードディスクサイズ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
８Ｅｈ（ＨＤＤが装着されていない）
（３２−３）機能詳細
本サブファンクションは、ＨＤＤ（＃０）の設定（Ｄｉｓａｂｌｅ／ＥｎａｂｌｅとＨＤＤのサイズ：ＭＢｙｔｅ）を返す。ＳＨ４／１が１２０ＭＢのハードディスクをサポートし、現在Ｅｎａｂｌｅであれば、ＤＸ＝００７８ｈ，ＣＸ＝０００１ｈを返す。
【０２８５】
（３３）Ｇｅｔ  ＨＤＤ  ＃１  Ｔｙｐｅ
（３３−１）機能
ＨＤＤ  ＃１の設定をＣＭＯＳからリードする。
【０２８６】
（３３−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０４０１ｈ
・出力レジスタ
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝８００１ｈ：拡張Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｄｉｓａｂｌｅ
０００１ｈ：Ｅｎａｂｌｅ
ＤＸ＝ハードディスクサイズ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファン                  クションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
８Ｅｈ（ＨＤＤが装着されていない）
（３３−３）機能詳細
本サブファンクションは、ＨＤＤ＃１の設定（Ｄｉｓａｂｌｅ／ＥｎａｂｌｅとＨＤＤのサイズ：ＭＢｙｔｅ）を返す。ＮＹが２００ＭＢのハードディスクをサポートし、現在Ｅｎａｂｌｅであれば、ＤＸ＝００Ｃ８ｈ，ＣＸ＝０００１ｈを返す。
【０２８７】
（３３．１）Ｇｅｔ  Ｍａｘ．ＨＤＤ  Ｎｕｍｂｅｒ
（３３．１−１）機能
接続されるＨＤＤの台数をＣＭＯＳからリードする。
【０２８８】
（３３．１−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０４０２ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝８００１ｈ：Ｇｒａｄｕａｌデータタイプ
ＣＸ＝現在設定されているレベル
ＤＸ＝設定可能な最大レベル
ＳＩ＝レベルのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３３．１−３）機能詳細
本ファンクションは、現在接続されているＨＤＤの台数の設定をリードする。下表に最大レベル数と各ＨＤＤ台数が割り当てられるレベルを示す。
【０２８９】
Ｌｅｖｅｌ            Ｍａｘ．ＨＤＤ  Ｎｕｍｅｒ
０                          ０
１                          １
２                          ２
（３３．２）Ｇｅｔ  Ｎｏ．２  ＦＤ  Ｄｒｉｖｅ
（３３．２−１）機能
２台目のフロッピー（登録商標）ディスクドライブのタイプをＣＭＯＳからリードする。
【０２９０】
（３３．２−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０４１１ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝８４００ｈ：ＦＤＤ  Ｓｐｅｃｉｆｉｃデータタイプ
ＣＸ＝現在設定されているモード
ＤＸ＝設定可能なモード
ＳＩ＝モードのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３３．２−３）機能詳細
本ファンクションは、ＦＤＤ２連モデルの場合に２台目のドライブタイプをＣＭＯＳからリードする。ＦＤＤ１連モデルの場合は８０ｈエラーを返す。
【０２９１】
（３３．３）Ｇｅｔ  Ｅｘｔｅｒｎａｌ  ＨＤＤ  Ｍｏｄｅ
（３３．３−１）機能
Ｅｘｔｅｒｎａｌ  ＨＤＤの設定をＣＭＯＳからリードする。
【０２９２】
（３３．３−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０４０３ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｄｉｓａｂｌｅｄ
０００１ｈ：Ｅｎａｂｌｅｄ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３３．４）Ｇｅｔ  ＨＤＤ  Ｍｏｄｅ
（３３．４−１）機能
ＨＤＤ  Ｍｏｄｅの設定をＣＭＯＳからリードする。
【０２９３】
（３３．４−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０４０４ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｔｒａｎｓｌａｔｉｏｎタイプ
（Ｅｎｈａｎｃｅｄ  ＩＤＥ）
０００１ｈ：Ａｕｔｏｍａｔｉｃ−Ｃｏｎｆｉｇｕｒａｔｉｏｎタイプ（Ｓｔａｎｄａｒｄ  ＩＤＥ）
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３４）Ｇｅｔ  Ｓｅｒｉａｌ  Ｐｏｒｔ  Ｍｏｄｅ
（３４−１）機能
シリアルポートの設定をＣＭＯＳからリードする。
【０２９４】
（３４−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０５００ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝８１００ｈ：Ｉ／Ｏ  Ｓｐｅｃｉｆｉｃ  データタイプ
ＣＸ＝現在設定されているモード
ＤＸ＝設定可能なモード
ＳＩ＝モードのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３５）Ｇｅｔ  Ｐａｒａｌｌｅｌ  Ｐｏｒｔ  Ｍｏｄｅ
（３５−１）機能
パラレルポートの設定をＣＭＯＳからリードする。
【０２９５】
（３５−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０５０１ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝８１０１ｈ：Ｉ／Ｏ  Ｓｐｅｃｉｆｉｃ（２）データタイプ
ＣＸ＝現在設定されているモード
ＤＸ＝設定可能なモード
ＳＩ＝モードのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３５−３）機能詳細
本サブファンクションは、パラレルポートの設定を返す。ＤＸは次のように返される。
【０２９６】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r  r   r   r   r   1  1  1  r  0  1  1  0  0  1  0
ＦＤＤ／ＰＲＴポートがＦＤＤ  Ａに割り当てられていれば、ＣＸレジスタの各ビットは、次のように返される。
【０２９７】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r  r   r   r   r   0  0  1  r  0  0  0  0  0  0  0
ＳＩレジスタの各ビットは、以下のように返される。
【０２９８】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r  r   r   r   r   0  0  0  r  0  0  0  0  0  1  0
ＤＸは次のように返されるマシンもある。
【０２９９】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r  r   r   r   r   0  1  1  r  0  1  1  0  0  1  0
ＦＤＤ／ＰＲＴポートがＦＤＤ  Ａに割り当てられていれば、ＣＸレジスタの各ビットは、次のように返される。
【０３００】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r  r   r   r   r   0  0  1  r  0  0  0  0  0  0  0
ＳＩレジスタの各ビットは、以下のように返される。
【０３０１】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r  r   r   r   r   0  0  0  r  0  0  1  0  0  1  0
内部／デスクステーションのパラレルポートが設定出来るマシンについては、デスクステーション接続時に本ファンクションを実行した場合でも、現在のＣＭＯＳの設定値がリードされる。
【０３０２】
また、例えば本ファンクション実行時の出力ＤＸは以下の通りとなる。但しパラレルポートの設定をＰｎＰ機能を用いて行う場合、本ファンクションではパラレルポートのモードの設定のみ行う。（下記Ｂｉｔ６、４のみ使用する、出力ＤＸは下記のＢｉｔ３〜０が０となる。）
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r  r   r   r   r   0  0  0  r  1  0  1  1  1  1  1
この場合、Ｐａｒａｌｌｅｌ  Ｐｏｒｔの設定が“Ｎｏｔ  Ｕｓｅｄ”であっても、Ｐａｒａｌｌｅｌ  Ｐｏｒｔ  Ｍｏｄｅ（Ｏｕｔｐｕｔ／Ｂｉ−ｄｉｒｅｃｔｉｏｎａｌ）の設定値はＣＭＯＳからリードすること。
【０３０３】
（３６）Ｇｅｔ  Ｋｅｙｂｏａｒｄ  Ｔｙｐｅ
（３６−１）機能
キーボードの設定をＣＭＯＳからリードする。
【０３０４】
（３６−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０５０２ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８３００ｈ：Ｋｅｙｂｏａｒｄ  Ｓｐｅｃｉｆｉｃデータタイプ
ＣＸ＝現在設定されているモード
ＤＸ＝設定可能なモード
ＳＩ＝モードのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３６−３）機能詳細
本ファンクションは、キーボードの設定を返す。
【０３０５】
設定可能なモード（ＤＸ）は、下表のようになる。
【０３０６】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r  1   r   1   1   1  1  1  r  r  r  r  r  0  1  0
キーボードが１０１キーコンパチで、Ｆｎキーの代替えキーが、［Ｌｅｆｔ
Ｃｔｒｌ］＋［Ｌｅｆｔ  Ａｌｔ］であるとき、ＣＸレジスタの各ビットは、以下のように返される。
【０３０７】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r  0   r   0   0   0  1  0  r  r  r  r  r  0  1  0
また、ＳＩは以下のように返される。
【０３０８】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r   0  r   0   0   0  0  1  r  r  r  r  r  0  1  0
（３７）Ｇｅｔ  ＰＣＭＣＩＡ  Ｓｌｏｔ  Ｍｏｄｅ
（３７−１）機能
ＰＣＭＣＩＡスロットの設定をＣＭＯＳからリードする。
【０３０９】
（３７−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０５０３ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝８１０２ｈ：ＰＣＭＣＩＡデータタイプ
ＣＸ＝現在設定されているモード
ＤＸ＝設定可能なモード
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３７−３）機能詳細
本サブファンクションは、ＰＣＭＣＩＡスロットの設定を返す。１スロットの場合は、ＤＸは以下のようになる。
【０３１０】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r   r   r  r   r   r  r  r  r  r  0  0  r  r  1  1
また、２スロットの場合のＤＸは以下のようになる。
【０３１１】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r  r   r   r   r   r  r  r  r  r  1  1  r  r  1  1
（３８）Ｇｅｔ  Ｋｅｙｂｏａｒｄ  Ｂｉｔｍａｐ  Ｉｎｉｔｉａｌ  Ｓｔａｔｅ
（３８−１）機能
パワーＯＮ時のＫｅｙｂｏａｒｄの状態をＣＭＯＳからリードする。
【０３１２】
（３８−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０５０４ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝８３０１ｈ：ＫｅｙＢｏａｒｄ  Ｂｉｔｍａｐデータタイプ
ＣＸ＝現在設定されているモード
ＤＸ＝設定可能なモード
ＳＩ＝モードのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファン                  クションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３８−３）機能詳細
本サブファンクションは、パワーＯＮ時のキーボードの設定を返す。ＤＸレジスタの各ビットは以下のようになる。
【０３１３】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r  r   r   r   r   r  r  r  r  r  r  r  r  r  r  1
ＳＩレジスタの各ビットは以下のようになる。
【０３１４】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r  r   r   r   r   r  r  r  r  r  r  r  r  r  r  1
パワーＯＮ時のＮｕｍＬｏｃｋ状態がＯＦＦに設定されているとき、ＣＸレジスタは以下のようになる。
【０３１５】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r  r   r   r   r   r  r  r  r  r  r  r  r  r  r  0
（３８．１）Ｇｅｔ  Ｐｏｉｎｔｉｎｇ  Ｓｔｉｃｋ  Ｍｏｄｅ
（３８．１−１）機能
ポインティング・スティックの設定をＣＭＯＳからリードする。
【０３１６】
（３８．１−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０５０５ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ａｕｔｏ−ｓｅｌｅｃｔｅｄ
０００１ｈ：Ｓｉｍｕｌｔａｎｅｏｕｓ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３８．２）Ｇｅｔ  ＤＳ  Ｐａｒａｌｌｅｌ  Ｐｏｒｔ  Ｍｏｄｅ
（３８．２−１）機能
デスクステーションのパラレルポートの設定をＣＭＯＳからリードする。
【０３１７】
（３８．２−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０５０６ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝８１０１ｈ：Ｉ／Ｏ  Ｓｐｅｃｉｆｉｃ（２）データタイプ
ＣＸ＝現在設定されているモード
ＤＸ＝設定可能なモード
ＳＩ＝モードのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファン                  クションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３８．２−３）機能詳細
デスクステーションをサポートするが内部／デスクステーションでパラレルポートタイプが同じマシンの場合は、本ファンクションはサポートせず、Ｐａｒａｌｌｅｌ  Ｐｏｒｔ  Ｍｏｄｅにて共通にパラレルポートモードのリードを行う。  ＤＳ  Ｐａｒａｌｌｅｌ  Ｐｏｒｔがアドレス３７８ｈ固定であり、またＯｕｔｐｕｔ／Ｂｉ−ｄｉｒｅｃｔｉｏｎａｌに設定でき、ＤＳ  Ｐａｒａｌｌｅｌ  Ｐｏｒｔ＝Ｂｉ−ｄｉｒｅｃｔｉｏｎａｌに設定する場合には、ＤＳ  Ｐａｒａｌｌｅｌ  ＰｏｒｔがＥＣＰ  Ｈ／Ｗ機能を持たなければ、ＣＸレジスタは以下のように返される。またこの場合、ＤＸ＝００３２ｈが返される。
【０３１８】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r  r   r   r   r   0  0  0  r  0  1  0  0  0  1  0
内部／デスクステーションのパラレルポートが設定出来るマシンについては、デスクステーション未接続時に本ファンクションを実行した場合でも、現在のＣＭＯＳの設定値をリードすること。
【０３１９】
（３８．３）Ｇｅｔ  Ｉｎｔ．Ｋｅｙｂｏａｒｄ  Ｋｅｙ  Ｌａｙｏｕｔ
（３８．３−１）機能
３キー入れ替えの設定をＣＭＯＳからリードする。
【０３２０】
（３８．３−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０５０７ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：３キー入れ替えＤｉｓａｂｌｅ（Ｎｏｒｍａｌ）
０００１ｈ：３キー入れ替えＥｎａｂｌａ（Ａｌｔｅｒｎａｔｉｖｅ）    ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファン                  クションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３８．４）Ｇｅｔ  Ｉｎｆｒａｒｅｄ  Ｍｏｄｅ
（３８．４−１）機能
赤外線通信の通信方法の設定をＣＭＯＳからリードする。
【０３２１】
（３８．４−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０５０８ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝８１０２ｈ：Ｉ／Ｏ  Ｓｐｅｃｉｆｉｃ（３）データタイプ
ＣＸ＝設定値
ＤＸ＝設定可能な値
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（３８．４−３）機能詳細
本ファンクションは、赤外線通信方式の設定をリードするためのものである。例えば、システムが赤外線通信方式としてＩｒＤＡ（ＳＩＲ）／ＤＡＳＫをサポートし、現在ＩｒＤＡ（ＳＩＲ）が選択されている場合は、ＣＸレジスタは以下のように返される。また、この場合出力ＤＸ＝０００３ｈとなる。
【０３２２】
Bit  15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
r  r   r   r   r   r  r  r  r  r  r  r  r  r  0  1
本ファンクションを実行した時は、Ｉｎｆｒａｒｅｄ  Ｐｏｒｔの設定（ＣＯＭ１〜４、ＮｏｔＵｓｅｄ）に関わらず赤外線通信方式の設定が返される。
【０３２３】
（３９）Ｇｅｔ  ＳＣＳＩ  Ｍｏｄｅ
（３９−１）機能
ＳＣＳＩの設定をＣＭＯＳからリードする。
【０３２４】
（３９−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０５１０ｈ
ＣＸ＝ａ）００００ｈ：現在の設定値（設定値番号）をリード
ｂ）０００１ｈ：現在の設定値の具体的な値をリード
この場合はＤＨに機能番号、ＤＬに設定値番号を入力
ＤＨ＝００ｈ：割り込みレベル
０１ｈ：ＳＣＳＩ  ＢＩＯＳのアドレス
（０２ｈ：Ｉ／Ｏベースアドレス）
（０３ｈ：ＤＭＡ）
ＤＬ＝設定値番号
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＣＦ＝０
ａ）の場合
ＢＸ＝８５０１ｈ：Ｈ／Ｗ  Ｒｅｓｏｕｒｃｅ  Ｓｐｅｃｉｆｉｃ  データタイプ
ＣＸ＝現在設定されている設定値番号
ＤＸ＝設定可能な設定値の個数（設定値番号の最大値）
ＳＩ＝デフォルト値（設定値番号）
ｂ）の場合
ＢＸ＝８００３ｈ：Ｄｉｓｃｒｅｔｅ  データタイプ
ＣＸ＝各設定値番号に対する設定値
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８３ｈ（データの入力エラー）
８６ｈ（システムがＳＣＩをサポートしていない）
（３９−３）機能詳細
本ファンクションでは、入力するＣＸレジスタの値により、出力ＣＸレジスタ値の持つ意味が異なる。例えば、システムがＳＣＳＩについて下記の設定をサポートする。
【０３２５】
・ＳＣＳＩ＝Ｅｎａｂｌｅｄ／Ｄｉｓａｂｌｅｄ
・割り込みレベル＝ＩＲＱ１１／１０／９／Ｄｉｓａｂｌｅｄ
他はなし
更にこの設定を、Ｈ／Ｗ  Ｒｅｓｏｕｒｃｅ  Ｓｐｅｃｉｆｉｃデータタイプ中に下記のように割り当てるとする。
【０３２６】
・Ｂｉｔ１５〜１２：割り込みレベル
０００１Ｂ：（設定値番号＝１）：Ｄｉｓａｂｌｅｄ
００１０Ｂ：（設定値番号＝２）：ＩＲＱ９
００１１Ｂ：（設定値番号＝３）：ＩＲＱ１０
０１００Ｂ：（設定値番号＝４）：ＩＲＱ１１
０１０１Ｂ〜１１１１Ｂ：Ｎｏｔ  Ｕｓｅｄ
・Ｂｉｔ１１〜１：Ｎｏｔ  Ｓｕｐｐｏｒｔ（＝０）
この場合に、例えば現在の設定がＳＣＳＩ＝Ｅｎａｂｌｅｄ、割り込みレベル＝ＩＲＱ１０であれば、
ａ）ＣＸ＝００００ｈの場合、現在の設定値が設定値番号により返される（出力ＣＸ＝３００１ｈ）。また、ＤＸには設定可能な設定値の個数（設定値番号の最大値）が返される（出力ＤＸ＝４００１ｈ）。サポートしない機能については、設定可能な設定値番号の個数＝０が返される。ＳＣＳＩ＝Ｅｎａｂｌｅｄ／Ｄｉｓａｂｌｅの設定をサポートするか否かは、出力ＤＸのＢｉｔ０により判別する。（Ｂｉｔ０＝１ならサポート、Ｂｉｔ０＝０なら未サポート）
ｂ）ＣＸ＝０００１ｈの場合、ＤＨに機能番号、ＤＬに設定値番号を入力することにより、各設定値番号に割り当てられている設定値が返される。上記の場合、入力ＤＨは００ｈ、ＤＬは０１ｈ〜０４ｈのみ有効、例えば入力ＤＨ＝００ｈ、入力ＤＬ＝０３ｈとすれば、出力ＣＸ＝０００Ａｈが返される。また、入力ＤＬ＝０１ｈとした場合は、出力ＣＸには、Ｄｉｓａｂｌｅｄを示す値としてＦＦＦＦｈが返される（他の機能でも同様）。この場合、入力データにサポートされていない値が入れられた場合は、８３ｈエラーを返す。
【０３２７】
各設定値番号に対する設定値の割り当ては、システムにより異なる。
【０３２８】
（４０）Ｇｅｔ  Ｓｏｕｎｄ  Ｓｙｓｔｅｍ  Ｍｏｄｅ
（４０−１）機能
サウンドシステムの設定をＣＭＯＳからリードする。
【０３２９】
（４０−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０５２０ｈ
ＣＸ＝ａ）００００ｈ：現在の設定値（設定値番号）をリード
ｂ）０００１ｈ：現在の設定値の具体的な値をリード
この場合はＤＨに機能番号、ＤＬに設定値番号を入力
ＤＨ＝００ｈ：割り込みレベル
（０１ｈ：ＳＣＳＩ  ＢＩＯＳのアドレス）
０２ｈ：Ｉ／Ｏベースアドレス
０３ｈ：ＤＭＡ
ＤＬ＝設定値番号
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＣＦ＝０
ａ）の場合
ＢＸ＝８５０１ｈ：Ｈ／Ｗ  Ｒｅｓｏｕｒｃｅ  Ｓｐｅｃｉｆｉｃ  データタイプ
ＣＸ＝現在設定されている設定値番号
ＤＸ＝設定可能な設定値番号の個数（＝設定値番号の最大値）
ＳＩ＝デフォルト値（設定値番号）
ｂ）の場合
ＢＸ＝８００３ｈ：Ｄｉｓｃｒｅｔｅ  データタイプ
ＣＸ＝各設定値番号に対する設定値
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８３ｈ（データの入力エラー）
８６ｈ（システムがＳＣＩをサポートしていない）
８Ｅｈ（サウンドカードがインストールされていない）
（４０−３）機能詳細
本ファンクションでは、入力するＣＸレジスタの値により、出力ＣＸレジスタ値の持つ意味が異なる。例えば、システムがサウンドシステムについて下記の設定をサポートするとする。
【０３３０】
・サウンドシステム＝Ｅｎａｂｌｅｄ／Ｄｉｓａｂｌｅｄ
・Ｉ／Ｏベースアドレス＝０２２０ｈ／０２３０ｈ／０２４０ｈ／０２５０ｈ  
・割り込みレベル＝ＩＲＱ５／７／９／１１
・ＤＭＡ＝Ｃｈａｎｎｅｌ  ０／Ｃｈａｎｎｅｌ  １
更にこの設定を、Ｈ／Ｗ  Ｒｅｓｏｕｒｃｅ  Ｓｐｅｃｉｆｉｃデータタイプ中に下記のように割り当てるとする。
【０３３１】
・Ｂｉｔ１５〜１２：割り込みレベル
０００１Ｂ：（設定値番号＝１）：ＩＲＱ５
００１０Ｂ：（設定値番号＝２）：ＩＲＱ７
００１１Ｂ：（設定値番号＝３）：ＩＲＱ９
０１００Ｂ：（設定値番号＝４）：ＩＲＱ１１
０１０１Ｂ〜１１１１Ｂ：Ｎｏｔ  Ｕｓｅｄ
・Ｂｉｔ７〜４：Ｉ／Ｏベースアドレス
０００１Ｂ：（設定値番号＝１）：０２２０ｈ
００１０Ｂ：（設定値番号＝２）：０２３０ｈ
００１１Ｂ：（設定値番号＝３）：０２４０ｈ
０１００Ｂ：（設定値番号＝４）：０２５０ｈ
０１０１Ｂ〜１１１１Ｂ：Ｎｏｔ  Ｕｓｅｄ
・Ｂｉｔ３〜１：ＤＭＡの設定
００１Ｂ：（設定値番号＝１）：Ｃｈａｎｎｅｌ  ０
０１０Ｂ：（設定値番号＝２）：Ｃｈａｎｎｅｌ  １
０１１Ｂ〜１１１Ｂ：Ｎｏｔ  Ｕｓｅｄ
・Ｂｉｔ１１〜８：Ｎｏｔ  Ｓｕｐｐｏｒｔ（＝０）
この場合に、例えば現在の設定がサウンド＝Ｅｎａｂｌｅｄ、割り込みレベル＝ＩＲＱ９，Ｉ／Ｏベースアドレス＝０２５０ｈ、ＤＭＡ＝Ｃｈａｎｎｅｌ  １であれば、
ａ）ＣＸ＝００００ｈの場合、出力ＣＸには現在の設定値が設定値番号により返される（出力ＣＸ＝３０４５ｈ）。また、出力ＤＸには設定可能な設定値の個数（設定値番号の最大値）が返される（出力ＣＸ＝４０４５ｈ）。サポートしない機能については、設定可能な設定値番号の個数＝０が返される。Ｓｏｕｎｄ
Ｓｙｓｔｅｍ＝Ｅｎａｂｌｅ／Ｄｉｓａｂｌｅの設定をサポートするか否かは、出力ＤＸのＢｉｔ０により判別する。（Ｂｉｔ０＝１ならサポート、Ｂｉｔ０＝０なら未サポート）
ｃ）ＣＸ＝０００１ｈの場合、ＤＨに機能番号、ＤＬに設定値番号を入力することにより、各設定値番号に割り当てられている設定値が返される。上記の場合、入力ＤＨは００ｈ、０２ｈ、０３ｈのみ有効で、例えば入力ＤＨ＝０２ｈ、入力ＤＬ＝０３ｈとすれば、出力ＣＸ＝０２４０ｈが返される。この場合、入力データにサポートされていない値が入力された場合は、８３ｈエラーを返す。
【０３３２】
また、サウンドカードがインストールされていない場合は、８Ｅｈエラーを返す。
【０３３３】
各設定値番号に対する設定値の割り当ては、システムにより異なる。
【０３３４】
（４１）Ｇｅｔ  Ｓｏｕｎｄ  Ｓｙｓｔｅｍ  Ｐｏｗｅｒ
（４１−１）機能
サウンドシステムのパワーの設定（Ｏｎ／Ｏｆｆ）をＣＭＯＳからリードする。（４１−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０５２１ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝０１ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：Ｏｆｆ
０００１ｈ：Ｏｎ
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
８Ｅｈ（デバイスがインストールされていない）
（４１−３）機能詳細
本ファンクションは、サウンドシステムモードがＤｉｓａｂｌｅの場合は機能せず、８Ｅｈエラーが返される。
【０３３５】
（４２）Ｇｅｔ  Ｐａｓｓｗｏｒｄ  Ｉｎｔｅｒｆａｃｅ  Ｍｏｄｅ
（４２−１）機能
パスワードインタフェースの設定をリードする。
【０３３６】
（４２−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０６００ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：切断
０００１ｈ：接続
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（４２−３）機能詳細
本ファンクションは、パスワード登録の有無に関わらず、パスワードインタフェースの設定をＳＭ−ＲＡＭからリードする。
【０３３７】
（４３）Ｇｅｔ  Ｐａｓｓｗｏｒｄ  Ｃｈｅｃｋ  Ｒｅｑｕｅｓｔ  Ｆｌａｇ
（４３−１）機能
パスワードチェック要求フラグの設定をリードする。
【０３３８】
（４３−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０６０１ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：パスワードチェック要求フラグがリセットされている
０００１ｈ：パスワードチェック要求フラグがセットされている
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
８Ｅｈ（パスワードが登録されていない）
（４３−３）機能詳細
本ファンクションは、パスワードチェック要求フラグの状態をＳＭ−ＲＡＭからリードする。パスワード要求フラグがセットされている場合、アプリはパスワードチェックを行い、チェック終了時にパスワード要求フラグをリセットする。パスワードが登録されていない場合は、８Ｅｈエラーを返すものとする。
【０３３９】
（４４）Ｇｅｔ  Ｐａｓｓｗｏｒｄ
（４４−１）機能
パスワード（ユーザパスワード／スーパーバイザパスワード）が登録されているか否かをチェックする。
【０３４０】
（４４−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０６０２ｈ
ＣＸ＝パスワード種類
００００ｈ：ユーザパスワード
０００１ｈ：スーパーバイザパスワード
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝００００ｈ：パスワード無し
０００１ｈ：パスワード有り
ＤＸ＝パスワードのベリファイまたは削除のリトライ可能回数
（パスワード有りの場合のみ有効）
ＳＩ＝デフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
（４４−３）機能詳細
本ファンクションは、ユーザパスワード／スーパーバイザパスワードが登録されているか否かを、ＳＭ−ＲＡＭのパスワードデータエリアをチェックすることにより判別する。
【０３４１】
パスワード有りの場合、パスワードのベリファイ、削除をあと何回実行可能  （失敗してもＨＬＴしない）か、ＳＭ−ＲＡＭのカウンタ値を出力する。この回数カウンタは、パスワードのベリファイ、削除ファンクションで共通に使用され、ブートモードまたはレジュームモードで電源ＯＮ時、およびベリファイ／削除成功時に初期値３に戻される。
【０３４２】
（４５）Ｖｅｒｉｆｙ  Ｐａｓｓｗｏｒｄ
（４５−１）機能
パスワードのベリファイを行う。
【０３４３】
（４５−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０６０３ｈ
ＥＤＸ＝パスワード（スキャンコード）の第１文字〜第４文字
ＥＳＩ＝パスワード（スキャンコード）の第５文字〜第８文字
ＤＩ＝パスワード（スキャンコード）の第９文字〜第１０文字
・出力レジスタ
（ａ）カウントパスワード無し（パワーオンパスワード処理中）の場合
正常終了する場合
ＡＨ＝００ｈ
ＣＸ＝００００ｈ：ユーザパスワードと一致した
０００１ｈ：スーパーバイザパスワードと一致した
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８３ｈ（データの入力エラー、どちらのパスワードとも一致しなかった）
８６ｈ（システムがＳＣＩをサポートしていない）
８Ｅｈ（パスワードが登録されていない）
（ＡＨ＝８３ｈの場合のみ）
ＤＸ＝パスワードのベリファイまたは削除のリトライ可能回数
（パスワード有りの場合のみ有効）
（ｂ）カレントパスワード有り（ブート後のパスワード処理）の場合
正常終了する場合
ＡＨ＝００ｈ（カレントパスワードまたはスーパーバイザパスワードと一致した）
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８３ｈ（データの入力エラー、どちらのパスワードとも一致しなかった）
８６ｈ（システムがＳＣＩをサポートしていない）
（ＡＨ＝８３ｈの場合のみ）
ＤＸ＝パスワードのベリファイまたは削除のリトライ可能回数
（パスワード有りの場合のみ有効）
（４５−３）機能詳細
ＢＩＯＳは、本ファンクションを使用してパワーオンパスワードのチェックを行い、一致したユーザパスワードまたはスーパーバイザパスワードをカレントパスワードとする。これ以後、パスワードのベリファイを行う場合（Ｅｊｅｃｔ時等）は、カレントパスワードまたはスーパーバイザパスワードと一致すればＯＫとなる。
【０３４４】
パスワードの文字数が１０文字未満の場合は、最終コードの後ろに“００ｈ”を付ける。例えば、パスワードが“１２３４”の場合、ＥＤＸ＝０２０３０４０５ｈ、ＥＳＩ＝００ｘｘｘｘｘｘｈを入力する（ｘｘｘｘｘｘは任意）。
【０３４５】
ベリファイまたは削除のリトライの可能回数カウンタ値が０で、本ファンクションによるベリファイが失敗した場合は、ＨＬＴする。また、ブートモードまたはレジュームモードで電源ＯＮ時およびベリファイ成功時に、ベリファイまたは削除のリトライ可能回数のカウンタを初期値を戻す。
【０３４６】
本ファンクションのＳｅｔファンクション（ＡＸ＝４４Ｆ４ｈ、ＢＸ＝０６０３ｈ）にあたるものは存在しない。
【０３４７】
また、本ファンクションは、パスワードが存在することを確認した上で実行される。
【０３４８】
（４６）Ｇｅｔ  Ｐａｓｓｗｏｒｄ  Ｌｅｖｅｌ
（４６−１）機能
パスワードのレベルをリードする。
【０３４９】
（４６−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ３ｈ
ＢＸ＝０６０４ｈ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＢＸ＝００００ｈ：Ｂｉｎａｒｙデータタイプ
ＣＸ＝２レベルのパスワードが登録された状態でのユーザパスワードのパスワードレベル
００００ｈ：マシン使用上の制限無し
０００１ｈ：マシン使用上の制限有り
ＤＸ＝カウントのパスワードレベル
００００ｈ：マシン使用上の制限無し
０００１ｈ：マシン使用上の制限有り
ＳＩ＝モードのデフォルト値
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８６ｈ（システムがＳＣＩをサポートしていない）
８Ｅｈ（パスワードが登録されていない）
（４６−３）機能詳細
本ファンクションは、２レベルのパスワードが登録された状態でのユーザパスワードのパスワードレベル（マシン使用上の制限の有無）をＳＭ−ＲＡＭのパスワード属性内のフラグからリードする。
【０３５０】
以上、システムコンフィグレーションゲットルーチンのサブファンクションについて説明したが、システムコンフィグレーションセットルーチンについても同様のサブファンクションコードの設定により多数のサブファンクションを実行できる。ここでは、システムコンフィグレーションセットルーチンのサブファンクションを代表して、Ｓｅｔ  Ｐｏｗｅｒ−ｕｐ  Ｍｏｄｅについてその機能と入出力レジスタ値の一例を説明する。
【０３５１】
（４７）Ｓｅｔ  Ｐｏｗｅｒ−ｕｐ  Ｍｏｄｅ
（４７−１）機能
パワーアップモードの設定をＣＭＯＳにライトする。
【０３５２】
（４７−２）入出力レジスタ仕様
・入力レジスタ
ＡＸ＝４４Ｆ４ｈ
ＢＸ＝０１００ｈ
ＣＸ＝００００ｈ：サスペンド＆リジュームＤｉｓａｂｌｅ
０００１ｈ：サスペンド＆リジュームＥｎａｂｌｅ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＡＬ＝００ｈ
ＣＦ＝０
エラー発生の場合
ＣＦ＝１
ＡＨ＝８０ｈ（サブファンクションコードエラーまたはシステムが本ファンクションをサポートしていない）
８２ｈ（インタフェースがまだ開かれていない）
８３ｈ（データの入力エラー）
８６ｈ（システムがＳＣＩをサポートしていない）
以上説明したように、この実施例においては、ＳＣＩがシステムＢＩＯＳの１部としてＢＩＯＳ  ＲＯＭ１４に格納されており、そのＳＣＩをＩＮＴ１５ｈのソフトウェア割り込みによって起動する事によってシステム構成情報の設定／変更を行うことができる。このため、オペレーティングシステムや、“Ｍａｘ  Ｔｉｍｅ”またはＢＩＯＳセットアップなどのセップアッププログラムは、ＣＭＯＳメモリ１６Ａを直接アクセスすることなく、ＳＣＩを呼び出すだけでシステム構成情報の変更などを行う事ができる。
【０３５３】
したがって、機能追加された新機種が開発されてシステム構成情報の内容に変化が生じたとしても、オペレーティングシステムやセップアッププログラムはシステム構成情報を直接アクセスするわけではないので、それらオペレーティングシステムやセップアッププログラムに修正を加える必要はない。よって、ハードウェア構成の変更に柔軟に対応することが可能となる。
【０３５４】
また、ＳＣＩには前述したような多数のサブファンクションが予め用意されているので、機種が代り、ハードウェア構成に変化が生じても、そのＳＣＩのサブファンクションでサポートされる範囲の変化であれば、ＳＣＩを変更せずにそのハードウェア構成の変化に対応する事ができる。したがって、ＳＣＩには、将来拡張される可能性のある機能に対応するサブファンクションなど、多数のサブファンクションを予め用意しておく事が望ましい。
【０３５５】
次に、このＳＣＩを拡張したＣＭＯＳアクセスのためのインタフェース（ＣＡＩ：ＣＭＯＳ  Ａｃｃｅｓｓ  Ｉｎｔｅｒｆａｃｅ）について説明する。
【０３５６】
ＣＡＩは上述したＳＣＩの１つのファンクションとしてＢＩＯＳ  ＲＯＭ１４に格納されており、システム構成情報に限らず、ＣＭＯＳメモリ１６Ａの他のデータに対するリード／ライトアクセスのために利用される。どのＣＭＯＳエリアをアクセスするかは、ＣＰＵ１１の入力レジスタにセットされるたインデックス値によって決定される。
【０３５７】
すなわち、ＣＭＯＳメモリ１６Ａは、ＣＰＵ１１のＩ／Ｏアドレス空間の一部に割り付けられた記憶エリアを含んでおり、それらはインデックス修飾によってアドレス指定される。従来、プロテクトモードで動作するＯＳ等を起動した場合、ポート７０ｈ，７１ｈを使用してインデックス４０ｈ以降のＣＭＯＳエリアを正しくリード／ライトすることができなかったが、ＣＡＩはこれを可能にする。
【０３５８】
ＣＡＩは、ＣＭＯＳデータをリードするＣＭＯＳリードファンクションと、ＣＭＯＳデータをライトするＣＭＯＳライトファンクションとを有している。
【０３５９】
以下、ＣＡＩを用いたＣＭＯＳアクセス動作について説明する。
【０３６０】
ＣＭＯＳデータをリードする場合：
この場合には、オペレーティングシステムや各種アプリケーションプログラムは、レジスタＡＸにファンクションコード（＝４４ＦＣｈ）をセットし、レジスタＢＸにＣＭＯＳのインデックスをセットした後、ＩＮＴ１５ｈのソフトウェア割り込み命令を実行する。
【０３６１】
これにより、ＣＡＩのＣＭＯＳリードファンクションルーチンが起動され、指定されたインデックス値が割り当てられているＣＭＯＳエリアからデータをリードする。ＣＭＯＳリードが正常に終了した場合、出力レジスタＣＬにはＣＭＯＳデータが戻り値としてセットされる。
【０３６２】
ＣＭＯＳデータをライトする場合：  
この場合には、オペレーティングシステムや各種アプリケーションプログラムは、レジスタＡＸにファンクションコード（＝４４ＦＤｈ）をセットし、レジスタＢＸにＣＭＯＳのインデックスをセットし、そしてレジスタＣＬにＣＭＯＳライトデータをセットした後、ＩＮＴ１５ｈのソフトウェア割り込み命令を実行する。
【０３６３】
これにより、ＣＡＩのＣＭＯＳライトファンクションルーチンが起動され、指定されたインデックス値が割り当てられているＣＭＯＳエリアにレジスタＣＬの値がライトされる。ＣＭＯＳライトが正常に終了した場合、出力レジスタＡＸには正常終了したことを示す値（＝００４４ｈ）が戻り値としてセットされる。
【０３６４】
このように、ＣＡＩをＢＩＯＳの一部として保持することにより、オペレーティングシステムやアプリケーションプログラムは、Ｉ／Ｏポートにインデックスをライトするというハードウェアアクセスを行うとなく、任意のインデックスのＣＭＯＳエリアをリード／ライトアクセスすることができる。
【０３６５】
次にハードウェア・コンフィグレーション・インタフェース（Ｈａｒｄｗａｒｅ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｉｎｔｅｒｆａｃｅ：ＨＣＩ）について説明する。
【０３６６】
ＨＣＩは、ＤＯＳやＷｉｎｄｏｗｓ（登録商標）のアプリからハードウェアの構成（コンフィグレーション）を読んだり設定したりできるようにしたものであり、前述のＳＣＩと同様に拡張ＢＩＯＳ（ｉｎｔ１５ｈ）としてＢＩＯＳ  ＲＯＭ１４に格納されている。
【０３６７】
このＨＣＩには、図１１に示されているように、以下の２つのファンクション実行ルーチンが含まれている。
【０３６８】
［ファンクションコード］    ［ファンクション実行ルーチン］
４４ＦＥｈ                デバイスカレントステータスリード
４４ＦＦｈ                デバイスＯＮ／ＯＦＦ
デバイスカレントステータスリードルーチンは、各ハードウェアデバイスの現在の構成（コンフィグレーション）をリードするルーチンであり、ＣＰＵ１１のＡＸレジスタにファンクションコード４４ＦＥｈがセットされた状態でＩＮＴ１５ｈが実行された時に起動される。
【０３６９】
デバイスＯＮ／ＯＦＦルーチンは、各ハードウェアデバイスをターンＯＮ／ターンＯＦＦするルーチンであり、ＣＰＵ１１のＡＸレジスタにファンクションコード４４ＦＦｈがセットされた状態でＩＮＴ１５ｈが実行された時に起動される。
【０３７０】
これらデバイスカレントステータスリードルーチンおよびデバイスＯＮ／ＯＦＦルーチンはそれぞれ１０個程度のサブファンクションを有しており、これらサブファンクションはＣＰＵ１１のＢＸレジスタにセットされるサブファンクションコードによって選択される。
【０３７１】
デバイスカレントステータスリードルーチンおよびデバイスＯＮ／ＯＦＦルーチンのサブファンクションは図１２の通りである。
【０３７２】
すなわち、これら各サブファンクションはデバイスカレントステータスリードルーチンの中ではハードウェア構成情報を取得するためのゲットルーチンとなり、デバイスＯＮ／ＯＦＦルーチンの中ではそのデバイスをＯＮ／ＯＦＦ設定するためのセットルーチンとなる。
【０３７３】
ここで、これらサブファンクション（ゲット／セット）それぞれのサブファンクションコードとその機能の概要について説明する。
【０３７４】
・0001h   Mail Icon 
このサブファンクションは、コンピュータシステムのステータスＬＣＤに対するメールアイコン表示のオン／オフ／ブリンクの設定およびその設定の読み出しを行う。ステータスＬＣＤは、システムの動作モードやハードウェアステータスなどをアンコンによって表示するというステータス表示専用のＬＣＤであり、所定のレジスタに対する設定値に応じてアイコンのオン／オフ／ブリンク制御が可能である。したがって、このサブファンクションは、そのレジスタの中のメールアンコンに対する制御情報をリード／ライトすることによって、メールアイコン表示のオン／オフ／ブリンクの設定およびその設定の読み出しを行う。
【０３７５】
・0002h   Backlight 
このサブファンクションは、コンピュータシステムのＬＣＤパネルのバックライトのオン／オフの設定及びその設定の読み出しを行う。ＬＣＤパネルのバックライトは、あるレジスタに設定されるバックライト制御情報によってオン／オフ制御されるように構成されているので、バックライトのオン／オフの設定及びその設定の読み出しは、バックライト制御情報をリード／ライトすることによって行われる。
【０３７６】
・0003h   AC Adaptor
このサブファンクションは、ＡＣフダプタの接続有無を示す情報を電源コントローラやＣＭＯＳメモリなどからリードする。
【０３７７】
・0004h   Fan 
このサブファンクションは、所定のレジスタに設定されたファン制御情報をリードライトすることによって、システムに設けられた冷却用ファンのオン／オフ設定及びその設定の読み出しを行う。
【０３７８】
・0010h   Software Suspend
このサブファンクションは、ソフトウェアサスペンドが実行可能かどうかを示すシステムステータスの読出し、およびソフトウェアサスペンドの実行を行う。この場合のシステムステータスは、ソフトウェアサスペンドが実行中か否かを示すものであり、実行中であれればソフトウェアサスペンドは実行できない状態であり、実行中でなければソフトウェアサスペンドが実行できる状態である。ソフトウェアサスペンドが実行されると、レジュームモード下でシステムの電源スイッチがオフされた時の同様のサスペンド処理が行われる。
【０３７９】
・0011h   Flat Panel
このサブファンクションは、内部ＬＣＤパネルを制御するためのハードウェアをチェックすること等によって、内部ＬＣＤパネルの解像度およびＬＣＤタイプの情報をリードする。
【０３８０】
・0012h   Instant Security
このサブファンクションは、所定のキー入力操作に応じて表示画面のオフまたはキーロックを行うインスタントセキャリティー機能が実行可能か否かを示すステータス情報のリード、およびそのインスタントセキュリティー機能をキーボードを使用せずにソフトウェア的に起動する。この場合のステータス情報は、インスタントセキュリティーが実行中か否かを示すものであり、実行中であれればインスタントセキュリティーは実行できない状態であり、実行中でなければインスタントセキュリティーが実行できる状態である。このサブファンクションによってインスタントセキュリティーが実行されると、ホットキー（Fn＋F1）を押した場合と同様のインスタントセキュリティー機能（表示画面のオフ、キーロック）が実行される。
【０３８１】
・0013h   Power Off Factor
このサブファンクションは、システムの電源オフの要因を示すパワーオフ要因情報をリードする。パワーオフ要因情報は、例えばＳＭＲＡＭなどに設定されている。
【０３８２】
・0014h   Multibox Status 
このサブファンクションは、ＣＤ−ＲＯＭドライブとＦＤＤなどの異なる種類のディスクドライブが選択的に装着可能なマルチボックスに現在接続されているドライブの種類を示す情報をリードする。これは、マルチボックスに要されたＣＤ−ＲＯＭドライブ用のコネクタとＦＤＤ用のコネクタの一方のコネクタの所定ピンの電圧に応じて“１”または“０”のフラグがセットされるレジスタからそのフラグを読み出すことによって実行される。
【０３８３】
・0070h   Memory Read/Write 
このサブファンクションは、メモリ内容をリード/ ライトする。本機能は、リアルモード時でもＳＭＭを使用することなどによって１ＭＢ以降のメモリ空間にアクセス出来るようにするためのものである。すなわち、このサブファンクションがＩＮＴ１５ｈで呼び出されると、Ｉ／ＯトラップＳＭＩを使用した後述のＥＨＣＩが再起動され、ＳＭＭのなかでメモリリード/ ライトの機能が実行される。
【０３８４】
以上のように、ＨＣＩは、ハードウェア構成に設定およびその設定状態の読出しのために必要なハードウェアアクセス機能を、ＯＳや、セットアッププログラムなどのアプリケーションプログラムなどに提供する。
【０３８５】
図１３には、ＨＣＩを用いたハードウェアコンフィグレーションの設定／変更動作の原理が概念的に示されている。
【０３８６】
この実施例のパーソナルコンピュータにおいては、リアルモード環境とプロテクトモード環境とでそれぞれ異なるセットアッププログラムが用いられる。すなわち、リアルモード環境ではＢＩＯＳ  ＲＯＭ１４に格納されているＢＩＯＳセットアッププログラムが使用され、プロテクトモード環境下ではフロッピー（登録商標）ディスクやハードディスク装置から供給される“Ｍａｘ  Ｔｉｍｅ”などのセットアッププログラムが利用される。
【０３８７】
“Ｍａｘ  Ｔｉｍｅ”は前述したように本出願人によって開発されたプロテクトモードＯＳ用のアプリケーションプログラムであり、プロテクトモード環境で実行することができる。“Ｍａｘ  Ｔｉｍｅ”は、ＨＣＩを利用してハードウェア構成情報の読み書きを行い、ハードウェアを直接アクセスすることはない。
【０３８８】
“Ｍａｘ  Ｔｉｍｅ”がＨＣＩを呼び出す場合には、まず、ＣＰＵ１１の動作モードがプロテクトモードからリアルモードに切り替えられ、その後ＩＮＴ１５ｈのソフトウェア割り込み命令が実行される。
【０３８９】
ＢＩＯＳセットアッププログラムは、前述したようにリアルモードＯＳ用のプログラムであり、リアルモード環境で実行することができる。ＢＩＯＳセットアッププログラムも、ＨＣＩを利用してシステム構成情報の読み書きを行う事ができる。ＢＩＯＳセットアッププログラムはシステムボード上のＲＯＭに格納されたＢＩＯＳドライバの一種であるので、従来と同様に、ＢＩＯＳセットアッププログラムがハードウェアを直接アクセスするように構成しても良い。ＢＩＯＳセットアッププログラムが実行された場合も、“Ｍａｘ  Ｔｉｍｅ”と同様の環境設定項目を持つセットアップウインドウが画面表示され、各種環境設定項目についてそれぞれ現在の設定値が提示される。
【０３９０】
ＢＩＯＳセットアッププログラムがＨＣＩを呼び出す場合には、ＣＰＵ１１の動作モードを切り替えること無く、ＩＮＴ１５ｈのソフトウェア割り込み命令だけが実行される。
【０３９１】
このように、ＨＣＩは、ＯＳやアプリケーションプログラムからは同一のハードウェアアクセスインタフェースとして利用される。
【０３９２】
図１４には、ＨＣＩによるハードウェア構成情報のリード／ライト処理の手順が示されている。
【０３９３】
前述したように、“Ｍａｘ  Ｔｉｍｅ”およびＢＩＯＳセットアッププログラムは、ＩＮＴ１５ｈのソフトウェア割り込み命令を実行する。この場合、ＨＣＩのファンクション実行ルーチンを指定するファンクションコードや、サブファンクションコードがＣＰＵ１１のレジスタにセットされる。
【０３９４】
ＩＮＴ１５ｈのソフトウェア割り込み命令の実行により、ＩＮＴ１５ｈのベクタアドレスで指定される拡張ＢＩＯＳが実行される。拡張ＢＩＯＳは、まず、ＨＣＩがサポートしているファンクションコードか否かを判断する（ステップＳ１１１）。具体的には、ファンクションコードが４４ＦＥｈ（デバイスカレントステータスリード）か、４４ＦＦｈ（デバイスＯＮ／ＯＦＦ）かどうかを判断し、これらファンクションコードでなければ、拡張ＢＩＯＳに用意されたＨＣＩ以外の処理（ＨＣＩなどを含む）に移行する。
【０３９５】
一方、サポートするファンクションコードであれば、そのファンクションコードに対応するファンクション実行ルーチンが起動される（スップＳ１１２）。起動されたファンクション実行ルーチンは、ＣＰＵ１１のレジスタにセットされているサブファンクションコードをサポートしているか否かを判断する（ステップＳ１１３）。
【０３９６】
サポートしていないサブファンクションが指定されたときは、ファンクション実行ルーチンは、エラー値を出力値としてＣＰＵ１１のレジスタにセットした後にリターンする（ステップＳ１１４）。
【０３９７】
一方、サポートしているサブファンクションであれば、ファンクション実行ルーチンは、その指定されたサブファンクションを実行し、該当する環境設定項目の読み出し／書き込みなどを行い、ＣＰＵ１１の出力レジスタに戻り値を設定した後にリターンする（ステップＳ１１５，Ｓ１１６）。
【０３９８】
次に、前述したＨＣＩのサブファンクション群について、各機能の詳細とそれを実行した場合のＣＰＵ１１の入出力レジスタの一例について説明する。
【０３９９】
（５０）デバイス設定状態のリード
（５０−１）機能
デバイスの設定状態をリードする。
【０４００】
（５０−２）入出力レジスタ仕様
・入力レジスタ
ＡＨ＝４４ｈ
ＡＬ＝ＦＥｈ
ＢＸ＝装置ＩＤ
０００１ｈ…メールアルコン
０００２ｈ…バックライト
０００３ｈ…ＡＣアダプタ
０００４ｈ…ファン
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＣＸ＝００００ｈ…デバイスがＯＦＦである。
【０４０１】
０００１ｈ…デバイスがＯＮである。
【０４０２】
０００２ｈ…デバイスがブリンクである。
【０４０３】
０００３ｈ…デバイスがない。
【０４０４】
０００４ｈ…デバイスがある。
【０４０５】
ＣＦ＝０
エラー発生の場合
ＡＨ＝８０ｈ…サブファンクションエラーまたはシステムがファンクションをサポートしていない。
【０４０６】
８３ｈ…データの入力エラー
ＣＦ＝１
（５０−３）機能詳細
デバイスのＯＮ／ＯＦＦ／ブリンクの設定状態は、各機種によりスペシャルレジスタ等をリードする。
【０４０７】
（５１）デバイス設定
（５１−１）機能
デバイスのＯＮ／ＯＦＦ／ブリンクの制御を行う。
【０４０８】
（５１−２）入出力レジスタ仕様
・入力レジスタ
ＡＨ＝４４ｈ
ＡＬ＝ＦＦｈ
ＢＸ＝装置ＩＤ
０００１ｈ…メールアルコン
０００２ｈ…バックライト
０００３ｈ…ＡＣアダプタ
０００４ｈ…ファン
ＣＸ＝００００ｈ…デバイスをＯＦＦにする。
【０４０９】
０００１ｈ…デバイスをＯＮにする。
【０４１０】
０００２ｈ…デバイスをブリンクにする。
【０４１１】
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＣＦ＝０
エラー発生の場合
ＡＨ＝８０ｈ…サブファンクションエラーまたはシステムがファンクションをサポートしていない。
【０４１２】
８３ｈ…データの入力エラー
８４ｈ…ライトプロテクトエラー
ＣＦ＝１
（５１−３）機能詳細
デバイスのＯＮ／ＯＦＦ／ブリンクの設定は、各機能によりスペシャルレジスタ等で設定する。ＡＣアダプタの設定を指定した場合（ＢＸ＝０００３ｈ）はライトプロテクトエラーを返す。
【０４１３】
（５２）ソフトウェア・サスペンド状態のリード
（５２−１）機能
ソフトウェア・サスペンドの状態をリードする。
【０４１４】
（５２−２）入出力レジスタ仕様
・入力レジスタ
ＡＨ＝４４ｈ
ＡＬ＝ＦＥｈ
ＢＸ＝００１０ｈ…ソフトウェア・サスペンド
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＣＸ＝００００ｈ：ＡＰＭがＤｉｓａｂｌｅであるためサスペンド不可
０００１ｈ：ＡＰＭがＥｎａｂｌｅであるためサスペンド可
ＣＦ＝０
エラー発生の場合
ＡＨ＝８０ｈ…サブファンクションエラーまたはシステムがファンクションをサポートしていない。
【０４１５】
ＣＦ＝１
（５２−３）機能詳細
本ファンクションは、ソフトウェア・サスペンドを実行する際に、ソフトウェア・サスペンドが実行可能であるかどうかを確認する為のファンクションである。（５３）ソフトウェア・サスペンドの実行
（５３−１）機能
ソフトウェア・サスペンドを開始する。
【０４１６】
（５３−２）入出力レジスタ仕様
・入力レジスタ
ＡＨ＝４４ｈ
ＡＬ＝ＦＦｈ
ＢＸ＝００１０ｈ…ソフトウェア・サスペンド
ＣＸ＝０００１ｈ…ソフトウェア・サスペンドを開始する
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＣＦ＝０
エラー発生の場合
ＡＨ＝８０ｈ…サブファンクションエラーまたはシステムがファンクションをサポートしていない。
【０４１７】
８３ｈ…データの入力エラー
８４ｈ…ライトプロテクトエラー
＝ＡＰＭがＤｉｓａｂｌｅである為サスペンド出来ない。
【０４１８】
ＣＦ＝１
（５３−３）機能詳細
本ファンクションが実行された場合には、電源スイッチからのＳＭＩ処理と同様にサスペンド要求フラグ（ＣＭＯＳ  ５ＤｈのＢｉｔ４）をセットし、終了する。この後、サスペンドシーケンスが開始される。この場合、ＢＯＯＴ／ＲＥＳＵＭＥモードに関係なく、サスペンドする。（次回電源ＯＮ時にはレジュームする。）
（５４）フラットパネル情報のリード
（５４−１）機能
フラットパネルの情報をリードする。
【０４１９】
（５４−２）入出力レジスタ仕様
・入力レジスタ
ＡＨ＝４４ｈ
ＡＬ＝ＦＥｈ
ＢＸ＝００１１ｈ…フラット・パネル
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＣＨ＝解像度  ００ｈ…６４０×４８０
０１ｈ…８００×６００
０２ｈ…１０２４×７６８
ＣＬ＝ＬＣＤ  ００ｈ…ＳＴＮモノクロ
タイプ  ０１ｈ…ＳＴＮカラー
０２ｈ…９ビットＴＦＴ
０３ｈ…１２ビットＴＦＴ
０４ｈ…１８ビットＴＦＴ
０５ｈ…２４ビットＴＦＴ
ＣＦ＝０
エラー発生の場合
ＡＨ＝８０ｈ…サブファンクションエラーまたはシステムがファンクションをサポートしていない。
【０４２０】
ＣＦ＝１
（５４−３）機能詳細
本ファンクションは、システムに実装されているフラットパネルの解像度及びＬＣＤタイプの情報をリードするためのファンクションである。
【０４２１】
フラットパネルについては、情報のリードを行うファンクションのみ存在する。
【０４２２】
（５５）インスタントセキュリティ状態のリード
（５５−１）機能
インスタントセキュリティ状態をリードする。
【０４２３】
（５５−２）入出力レジスタ仕様
・入力レジスタ
ＡＨ＝４４ｈ
ＡＬ＝ＦＥｈ
ＢＸ＝００１２ｈ…インスタントセキュリティ
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＣＸ＝００００ｈ：インスタントセキュリティ実行中でない（実行可能）
０００１ｈ：インスタントセキュリティ実行中である（実行不可）
ＣＦ＝０
エラー発生の場合
ＡＨ＝８０ｈ…サブファンクションエラーまたはシステムがファンクションをサポートしていない。
【０４２４】
ＣＦ＝１
（５５−３）機能詳細
本ファンクションは、インスタントセキュリティを実行する際に、インスタントセキュリティが実行可能であるかどうかを確認する為のファンクションである。
【０４２５】
インスタントセキュリティ実行中かどうかは、ＳＭ−ＲＡＭのフラグよりリードする。
【０４２６】
（５６）インスタントセキュリティの実行
（５６−１）機能
ソフトウェア・サスペンドを開始する。
【０４２７】
（５６−２）入出力レジスタ仕様
・入力レジスタ
ＡＨ＝４４ｈ
ＡＬ＝ＦＦｈ
ＢＸ＝００１２ｈ…インスタントセキュリティ
ＣＸ＝０００１ｈ：インスタントセキュリティを実行する
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＣＦ＝０
エラー発生の場合
ＡＨ＝８０ｈ…サブファンクションエラーまたはシステムがファンクションをサポートしていない。
【０４２８】
８３ｈ…データの入力エラー
８４ｈ…ライトプロテクトエラー
＝インスタントセキュリティ中であるため本ファンクションを実行出来ない。
【０４２９】
ＣＦ＝１
（５６−３）機能詳細
本ファンクションが実行された場合には、Ｆｎ＋Ｆ１キーが押された場合と同様の処理を実行し、インスタントセキュリティ状態にする。
【０４３０】
ファンクション実行時にインスタントセキュリティ中だった場合は、８４ｈエラーを返すものとする。
【０４３１】
（５７）パワーオフ要因のリード
（５７−１）機能
パワーオフの要因が何であるかの情報をリードする。
【０４３２】
（５７−２）入出力レジスタ仕様
・入力レジスタ
ＡＨ＝４４ｈ
ＡＬ＝ＦＥｈ
ＢＸ＝００１３ｈ…パワーオフ要因
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＣＸ＝Ｂｉｔ１５〜３…Ｒｅｓｅｒｖｅｄ、０固定
Ｂｉｔ２…システムオートオフによるパワーオフ  １：発生  ０：無し
Ｂｉｔ１…ローバッテリによるパワーオフ  １：発生  ０：無し
Ｂｉｔ０…ユーザからのＨ／Ｗサスペンド要求  １：発生  ０：無し（パワーオフＳＷ、パネルパワーオフ）
ＣＦ＝０
エラー発生の場合
ＡＨ＝８０ｈ…サブファンクションエラーまたはシステムがファンクションをサポートしていない。
【０４３３】
ＣＦ＝１
（５７−３）機能詳細
本ファンクションは、パワーオフイベントについてソフトウェアにて何らかの制御を行いたい場合に、パワーオフ要因を判別するためのものである。パワーオフ要因は、ＳＭ−ＲＡＭのフラグから読み出す。このフラグの内容は、本ファンクションによるリードが行われるまではクリアされないものとする（リード後クリアされる）。
【０４３４】
例えば、１つのパワーオフ要因が読み出される前に、別のパワーオフ要因が発生した場合は、出力ＣＸレジスタの該当するＢｉｔを全て１とし、またどのパワーオフ要因も発生していない場合は、出力ＣＸ＝００００ｈとなる。
【０４３５】
（５８）マルチボックスのステータスリード
（５８−１）機能
マルチボックスに何が接続されているかをリードする。
【０４３６】
（５８−２）入出力レジスタ仕様
・入力レジスタ
ＡＨ＝４４ｈ
ＡＬ＝ＦＥｈ
ＢＸ＝００１４ｈ…マルチボックスステータス
ＣＸ＝００００ｈ：本体側のマルチボックスのステータス
＝０１００ｈ：本体外（ＤＳ等）のマルチボックスのステータス
・出力レジスタ
正常終了する場合
ＡＨ＝００ｈ
ＣＸ＝００００ｈ：何も接続されていない
０００１ｈ：ＦＤＤが接続されている
０００２ｈ：ＣＤ−ＲＯＭが接続されている
ＣＦ＝０
エラー発生の場合
ＡＨ＝８０ｈ…サブファンクションエラーまたはシステムがファンクションをサポートしていない。
【０４３７】
ＡＨ＝８３ｈ…データの入力エラー
ＣＦ＝１
（５８−３）機能詳細
本ファンクションは、マルチボックスに何が接続されているか（ＣＤ−ＲＯＭ、ＦＤＤなど）をスペシャルレジスタ等からリードするためのものである。ステータスをリードするレジスタは、機種により異なる。
【０４３８】
尚、下記の場合は、８３ｈエラーを返すものとする。
【０４３９】
（１）入力ＣＸレジスタにて定義外の値を入力した場合
（２）ＤＳ等本体外でマルチボックスをサポートしないマシンにて、本体外（ＤＳ等）のマルチボックスのステータスをリードした場合
（３）ＤＳ等本体外でマルチボックスをサポートするマシンにて、ＤＳ等が接続されていない場合。
【０４４０】
以上説明したように、この実施形態においては、ＳＣＩと一緒にＨＣＩがシステムＢＩＯＳの１部としてＢＩＯＳ  ＲＯＭ１４に格納されており、そのＨＣＩをＩＮＴ１５ｈのソフトウェア割り込みによって起動する事によってハードウェアデバイスの設定およびその設定状態の読み出しなどを行うことができる。
【０４４１】
次に、Ｉ／ＯトラップＳＭＩを用いてＳＣＩを起動する場合について説明する。
【０４４２】
以下では、Ｉ／ＯトラップＳＭＩを用いたＳＣＩを、ＥＳＣＩ（Ｅｎｈａｎｃｅｄ  ＳＣＩ）と称することにする。このＥＳＣＩは、プロテクトモード環境でシステムコンフィグレーションの設定／変更などを行う事ができるプログラムインタフェースである。
【０４４３】
まず、図１５および図１６を参照して、オペレーティングシステム、またはアプリケーションプログラムがＥＳＣＩを呼び出す場合の一連の動作を説明する。
【０４４４】
オペレーティングシステムまたはアプリケーションプログラムには、特定のＢＩＯＳドライバ（ここでは、ＥＳＣＩ）に対する呼び出し要求に応じて、ＩＮＴ１５ｈではなく、ＩＮまたはＯＵＴのＩ／Ｏ命令を実行するＢＩＯＳインタフェースが組み込まれている。このＢＩＯＳインタフェースは、ＢＩＯＳドライバのファンクション実行ルーチンを指定するファンクションコードをＡＨレジスタにセットした後、Ｉ／ＯトラップＳＭＩを利用したプログラムインタフェースを起動するために、Ｉ／Ｏベースアドレスレジスタ１２６にセットされたＩ／Ｏベースアドレスのアドレス範囲に属するＩ／Ｏポートに対するＩＮまたはＯＵＴのＩ／Ｏ命令を実行する。
【０４４５】
このＩＮまたはＯＵＴ命令の実行によって、Ｉ／Ｏベースアドレスによって指定されたアドレス範囲に属するＩ／Ｏアドレスがシステムバス１８上に出力される。このＩ／ＯアドレスはＩ／ＯトラップＳＭＩ発生回路１２１によってトラップされ、Ｉ／ＯトラップＳＭＩ信号がＣＰＵ１１に供給される。
【０４４６】
ＣＰＵ１１にＩ／ＯトラップＳＭＩ信号が入力されると、ＣＰＵ１１は、その時の動作モード（例えば、プロテクトモード）からＳＭＭにスイッチされる。ＳＭＭに入ると、ＣＰＵ１１は、まず、ＳＭＲＡＭ１３Ａをメインメモリ１３のアドレス３００００Ｈから３ＦＦＦＦＨまでのアドレス空間にマッピングする（ステップＳ１）。これにより、メインメモリ１３のアドレス３００００Ｈから３ＦＦＦＦＨはアクセス不能となり、代わりにＳＭＲＡＭ１３Ａがオーバーレイメモリとしてアクセス可能となる。
【０４４７】
ＳＭＲＡＭ１３Ａには、ＣＰＵステート格納エリア、ＳＭＩハンドラ作業エリアなどが設けられており、またＢＩＯＳ  ＲＯＭ１４のＳＭＩハンドラを割り込み先として指定するジャンプコードがセットされている。前述したように、ＢＩＯＳ  ＲＯＭ１４には、ＩＲＴルーチン、ＳＭＩハンドラ、複数のＢＩＯＳドライバ（ＥＳＣＩを含む）、およびパワ−管理などのための各種ＳＭＩサービスルーチンが格納されている。
【０４４８】
次いで、ＣＰＵ１１は、ＳＭＩが入力された時のＣＰＵ１１の各種レジスタの内容であるＣＰＵステータス（または、コンテキストと称される）をＳＭＲＡＭ１３ＡのＣＰＵステート格納エリアにスタック形式でセーブする（ステップＳ２）。そして、ＣＰＵ１１は、ＳＭＭのスタートアドレス（３８０００Ｈ）のコード、つまりＳＭＲＡＭ１３Ａのアドレス３８０００Ｈにセットされているジャンプコードをフェッチし、そのジャンプコードで指定されるＢＩＯＳ  ＲＯＭ１４のＳＭＩハンドラを実行する（ステップＳ３）。ここまでのステップＳ１〜Ｓ３の処理は、ＣＰＵ１１自体つまりＣＰＵ１１のマイクロプログラムによって実行されるものである。
【０４４９】
ジャンプコードの実行によって呼び出されたＳＭＩハンドラは、どのような要因でＳＭＩが発生されたかを決定するために、ＳＭＩ発生要因をチェックする（ステップＳ４）。この処理では、システムコントローラ１２のＳＭＩステータスレジスタ１２４にセットされているＳＭＩステータス情報が参照される。Ｉ／ＯトラップによるＳＭＩであれば、ＳＭＩハンドラは、ＢＩＯＳ  ＲＯＭ１４の複数のＢＩＯＳドライバのなかの特定のＢＩＯＳドライバ（ＥＳＣＩ）のファンクション実行ルーチンの実行をリクエストする（ステップＳ５）。リクエストされたＢＩＯＳドライバのファンクション実行ルーチンは、ＳＭＭの中で実行される。
【０４５０】
Ｉ／ＯトラップＳＭＩに応答してどのＢＩＯＳドライバを呼び出すかは、予め決められており、例えば、ＥＳＣＩや、ＢＩＯＳ  ＲＯＭ１４に新たに追加された機能拡張用の他のＢＩＯＳドライバ（後述するＥＨＣＩを含む）などが呼び出される。もちろん、ＣＰＵ１１のソフトウェア割り込みを用いて実現されている既存のＢＩＯＳドライバ群（ＩＮＴ１０ｈ〜１Ｆｈ、４０ｈ〜４Ｆｈ）の１つを、Ｉ／ＯトラップＳＭＩに応答して呼び出すべきＢＩＯＳドライバとして定義する事もできる。また、そのＢＩＯＳドライバのどのファンクション実行ルーチンを実行するかは、オペレーティングシステムまたはアプリケーションプログラムによって指定されたファンクションコードの値によって決定される。
【０４５１】
ＢＩＯＳドライバの処理が終了すると、ＳＭＩハンドラはレジューム（ＲＳＭ）命令を実行する（ステップＳ６）。このＲＳＭ命令の実行によりＣＰＵステータスはＳＭＲＡＭ１３ＡからＣＰＵレジスタにリストアされ（ステップＳ７）、これによってＣＰＵ１１はＳＭＭから抜けてプロテクトモードに復帰し、割り込まれたオペレーティングシステムまたはアプリケーションプログラムに制御が戻る。
【０４５２】
このように、Ｉ／ＯトラップＳＭＩを用いたプログラム・インタフェースを利用した場合には、プロテクトモードで動作するオペレーティングシステムまたはアプリケーションプログラムは、Ｉ／ＯトラップＳＭＩを発生させるためにＩＮまたはＯＵＴ命令を実行するだけで良く、プロテクトモードからリアルモードに切り替える手続きを一切行う必要がない。
【０４５３】
次に、図１７のフローチャートを参照して、Ｉ／ＯトラップＳＭＩ発生回路１２１に対するセットアップ処理を説明する。
【０４５４】
このセットアップ処理は、システムのパワーオンまたはシステムリセット時にＩＲＴルーチンによって実行される。
【０４５５】
ＩＲＴルーチンは、まず、Ｉ／ＯトラップＳＭＩ発生回路１２１のマスクレジスタ１２８にＩ／ＯトラップＳＭＩ発生許可データをセットする（ステップＳ１１）。この後、ＩＲＴルーチンは、Ｉ／Ｏベースアドレスレジスタ１２６にＩ／Ｏベースアドレス（００ＸＹｈ）をセットする（ステップＳ１２）。このＩ／Ｏベースアドレスの値００ＸＹｈは、予め決められた未使用のＩ／Ｏポートのベースアドレス値である。
【０４５６】
次に、図１８のフローチャートを参照して、オペレーティングシステム、または前述の“Ｍａｘ  Ｔｉｍｅ”などのセットアッププログラムに組み込まれたＢＩＯＳインタフェースの処理を説明する。
【０４５７】
オペレーティングシステムまたは“Ｍａｘ  Ｔｉｍｅ”のＢＩＯＳインタフェースは、まず、ＣＰＵ１１のＡＨレジスタにＥＳＣＩの所定のファンクション実行ルーチンを指定するファンクションコードをセットする（ステップＳ２１）。
【０４５８】
ＥＳＣＩは、図２で説明したＳＣＩの６つのファンクション実行ルーチン（ＳＣＩサポートチェックルーチン、オープンインタフェースルーチン、クローズインタフェースルーチン、システムコンフィグレーションゲートルーチン、システムコンフィグレーションセットルーチン、デフォルトコンフィグレーションセットルーチン）をＳＣＩと共用しており、それらルーチンにはファンクションコード（Ｆ０ｈ，Ｆ１ｈ，Ｆ２ｈ，Ｆ３ｈ，Ｆ５ｈ）が割り当てられている。各ファンクション実行ルーチン機能は、図２で説明した通りである。
【０４５９】
次いで、ＢＩＯＳインタフェースは、Ｉ／Ｏ命令、例えば、
ＩＮ    ＡＬ  ，  ００ＸＹｈ
を実行する（ステップＳ２２）。この命令は、アドレス００ＸＹｈのＩ／Ｏポートの内容をＣＰＵ１１のＡＬレジスタに入力する命令である。このＩＮ命令の実行により、システムバス１８にはＩ／Ｏアドレス００ＸＹ２ｈが出力される。このＩ／Ｏアドレス００ＸＹｈの値は、Ｉ／Ｏベースアドレスレジスタ１２６にセットされているＩ／Ｏベースアドレスの値と一致する。従って、ステップＳ２２のＩＮ命令はＩ／ＯトラップＳＭＩ発生回路１２１にＩ／ＯトラップＳＭＩ信号を発生させ、これによってＳＭＩハンドラに制御が移行する。
【０４６０】
この後、ＳＭＩハンドラのＲＳＭ命令の実行によってオペレーティングシステムまたはアプリケーションプログラムに制御が戻ると、そのＢＩＯＳインタフェースは、ＣＰＵ１１の所定のレジスタの内容を参照してＥＳＣＩなどからのファンクション終了コードや出力結果などの戻り値のチェックを行う（ステップＳ２３）。終了コードはＡＸレジスタに設定される。エラーコードとエラーの内容は次の通りである。
【０４６１】
エラーコード：  内容
0044(CF=0)  ：  正常終了
80xx(CF=1)  ：  サブファンクションエラー
81xx(CF=1)  ：  インタフェースが既にオープンされている
82xx(CF=1)  ：  インタフェースがオープンされてない
83xx(CF=1)  ：  入力データエラー
84xx(CF=1)  ：  ライトプロテクトエラー
86xx(CF=1)  ：  ＳＣＩが存在しない
8Cxx(CF=1)  ：  デセバイスがレディー状態でない
8Dxx(CF=1)  ：  デバイスエラー
8Exx(CF=1)  ：  デバイスがインストールされてない
F?xx        ：  プロテクトモードＳＣＩが存在しない
次に、図１９のフローチャートを参照して、ＳＭＩハンドラのプログラム・インタフェース処理を説明する。
【０４６２】
ＳＭＩハンドラは、まず、システムコントローラ１２のＳＭＩステータスレジスタ１２４のＳＭＩステータス情報をリードし（ステップＳ３１）、そのＳＭＩステータス情報によってＳＭＩの発生要因がＩ／Ｏトラップによるものであるか否かを調べる（ステップＳ３２）。Ｉ／Ｏトラップ以外の要因によるＳＭＩであれば、ＳＭＩハンドラは、その要因に対応するＳＭＩサービスルーチンを実行する。一方、Ｉ／ＯトラップによるＳＭＩであれば、ＳＭＩハンドラは、以下の処理を行う。
【０４６３】
すなわち、ＳＭＩハンドラは、まず、ＳＭＩ発生時にＣＰＵ１１によってＳＭＲＡＭ１３ＡにセーブされたＣＰＵステータスの内容をＣＰＵレジスタに復帰する（ステップＳ３４）。次いで、ＳＭＩハンドラは、ＥＳＣＩのファンクション実行ルーチンの中でＡＨレジスタのファンクションコードによって指定されるファンクション実行ルーチンを呼び出して実行する（ステップＳ３４）。
【０４６４】
ファンクション実行ルーチンの処理が終了すると、ＳＭＩハンドラは、その時のＣＰＵレジスタの内容をＳＭＲＡＭ１３Ａにセーブした後（ステップＳ３５）、ＲＳＭ命令を実行する（ステップＳ３６）。
【０４６５】
このＲＳＭ命令の実行によりＣＰＵステータスはＳＭＲＡＭ１３ＡからＣＰＵレジスタにリストアされ、これによってファンクション実行ルーチンからの出力値はオペレーティングシステムまたはアプリケーションプログラムにＣＰＵレジスタを介して渡される。
【０４６６】
次に、図２０を参照して、ＥＳＣＩを用いたシステムコンフィグレーションの設定／変更動作の原理を説明する。
【０４６７】
図７で説明したように、この実施形態においては、リアルモード環境ではＢＩＯＳ  ＲＯＭ１４に格納されているＢＩＯＳセットアッププログラムが使用され、プロテクトモード環境下ではフロッピー（登録商標）ディスクやハードディスク装置から供給される“Ｍａｘ  Ｔｉｍｅ”などのセットアッププログラムが利用される。
【０４６８】
プロテクトモード環境で動作する“Ｍａｘ  Ｔｉｍｅ”は、ＣＭＯＳメモリ１６Ａのシステム構成情報の変更などを行う場合には、ＩＮまたはＯＵＴ命令を実行してＩ／ＯトラップＳＭＩを発行し、これによってＥＳＣＩを起動する。この場合、ＣＰＵ１１の動作モードは、Ｉ／ＯトラップＳＭＩによってプロテクトモードからＳＭＭにスイッチされ、ＳＭＭの中でＥＳＣＩが実行される。
【０４６９】
このＩ／ＯトラップＳＭＩによるＥＳＣＩの起動は、リアルモード環境で動作するＢＩＯＳセットアッププログラムも利用する事ができる。
【０４７０】
この場合には、ＣＰＵ１１の動作モードは、Ｉ／ＯトラップＳＭＩによってリアルモードからＳＭＭにスイッチされ、ＳＭＭの中でＥＳＣＩが実行される。
【０４７１】
次に、図２１を参照して、ＥＳＣＩによるシステム構成情報のリード／ライト処理の手順を説明する。
【０４７２】
ここでは、ＥＳＣＩが既にオープンされている場合を想定する。
【０４７３】
前述したように、“Ｍａｘ  Ｔｉｍｅ”およびＢＩＯＳセットアッププログラムは、ＩＮまたはＯＵＴ命令を実行する。この場合、ＳＣＩを起動する場合と同様にして、ＥＳＣＩのファンクション実行ルーチンを指定するファンクションコードや、サブファンクションコードがＣＰＵ１１のレジスタにセットされる。
【０４７４】
ＩＮまたはＯＵＴ命令によるＩ／ＯトラップＳＭＩによって、拡張ＢＩＯＳが実行される。拡張ＢＩＯＳは、まず、ＥＳＣＩがサポートしているファンクションコードか否かを判断する（ステップＳ２０１）。具体的には、ファンクションコードがＦ２ｈ（クローズインタフェース）か、Ｆ３ｈ（システムコンフィグレーションゲット）か、Ｆ４ｈ（システムコンフィグレーションセット）か、Ｆ５ｈ（デフォルトコンフィグレーションセット）かどうかを判断し、これらファンクションコードでなければ、拡張ＢＩＯＳに用意されたＥＳＣＩ以外の他の拡張処理ルーチンに移行する（ステップＳ２０２）。
【０４７５】
一方、サポートするファンクションコードであれば、そのファンクションコードに対応するＥＳＣＩのファンクション実行ルーチンが起動される（スップＳ２０３）。起動されたファンクション実行ルーチンは、ＣＰＵ１１のレジスタにセットされているサブファンクションコードをサポートしているか否かを判断する（ステップＳ２０４）。
【０４７６】
サポートしていないサブファンクションが指定されたときは、ファンクション実行ルーチンは、エラー値を出力値としてＣＰＵ１１のレジスタにセットした後にリターンする（ステップＳ２０５）。
【０４７７】
一方、サポートしているサブファンクションであれば、ファンクション実行ルーチンは、その指定されたサブファンクションを実行し、該当する環境設定項目の読み出し／書き込みなどを行い、ＣＰＵ１１の出力レジスタに戻り値を設定した後にリターンする（ステップＳ２０６，Ｓ２０７）。
【０４７８】
以上説明したように、この実施形態においては、プロテクトモードで動作するＯＳ環境下においてシステムコンフィグレーションの設定／変更要求が発生すると、ＩＮまたはＯＵＴ命令の実行によるＩ／ＯトラップＳＭＩによってＣＰＵ１１が自動的にプロテクトモードからＳＭＭにスイッチされ、そしてそのＳＭＭの中でＥＳＣＩが実行される。そして、ＥＳＣＩの処理が終了されると、ＳＭＭからプロテクトモードに復帰され、ＯＳに制御が戻る。
【０４７９】
したがって、ＯＳや、セットアププログラムなどのアプリケーションプログラムにＣＰＵ動作モードを切り替えるルーチンを組み込むことなく、プロテクトモード上でＥＳＣＩを直接的に呼び出して実行させることが可能となる。
【０４８０】
また、Ｉ／ＯトラップによるＳＭＩを利用しているので、ＳＭＩ信号を発生させるために必要な手続きは、ＩＮまたはＯＵＴ命令を実行する事だけである。このため、システムコンフィグレーションの設定／変更要求の発生に応答して直ぐにＳＭＩ信号を発生させる事ができるので、ＥＳＣＩを高速に呼び出す事ができる。
【０４８１】
さらに、ＳＭＩハンドラは、ＥＳＣＩのファンクション実行ルーチンの実行完了時のＣＰＵステータスをＳＭＲＡＭ１３Ａに一旦セーブした後にＲＳＭ命令を実行しているので、ファンクション実行ルーチンにより得られた出力データなどをＣＰＵ１１のレジスタを介して効率良くオペレーティングシステムなどに引き渡すことが可能となる。
【０４８２】
なお、この実施形態では、ＥＳＣＩの呼び出しにのみＩ／ＯトラップＳＭＩによるプログラムインタフェースを利用したが、ＢＩＯＳ  ＲＯＭ１４にハードウェア制御のための各種機能拡張ルーチンを格納しておき、その機能拡張用のルーチンをＩ／ＯトラップＳＭＩによって呼び出す事も可能である。また、図１のＩ／ＯトラップＳＭＩ発生回路１２１の説明においても述べたように、互いに異なるＩ／Ｏアドレスをトラップする複数のＩ／ＯトラップＳＭＩ発生回路を利用することによって、複数のＢＩＯＳドライバをＩ／ＯトラップＳＭＩによって呼び出すことも可能である。この場合には、呼び出されるＢＩＯＳドライバは、Ｉ／ＯトラップＳＭＩの発生要因となったトラップアドレス、つまりＩ／ＯトラップＳＭＩを発生したＩ／ＯトラップＳＭＩ発生回路によって決定される。
【０４８３】
このように、ＢＩＯＳインターフェースとしてＩ／ＯトラップＳＭＩを利用する事により、プロテクトモードで動作するオペレーティングシステムやアプリケーションプログラム等にＣＰＵ動作モードを切り替えるルーチンを組み込むことなく、プロテクトモード環境下から直接的にＥＳＣＩなどのＢＩＯＳを呼び出して実行させることが可能となる。よって、オペレーティングシステム内のＢＩＯＳインタフェース部のコーディングが簡単化され、ハードウェア制御に関する機能拡張などに柔軟に対応できるようになる。
【０４８４】
次に、ＥＳＣＩを拡張したＣＭＯＳアクセスのためのインタフェース（ＥＣＡＩ：Ｅｎｈａｎｃｅｄ  Ｃｍｏｓ  Ａｃｃｅｓｓ  Ｉｎｔｅｒｆａｃｅ）について説明する。
【０４８５】
ＥＣＡＩは上述したＥＳＣＩの１つのファンクションとしてＢＩＯＳ  ＲＯＭ１４に格納されており、ＣＡＩと同様に、ＣＭＯＳメモリ１６Ａの各種データに対するリード／ライトアクセスのために利用される。どのＣＭＯＳエリアをアクセスするかは、ＣＰＵ１１の入力レジスタにセットされるたインデックス値によって決定される。
【０４８６】
すなわち、ＣＭＯＳメモリ１６Ａは、ＣＰＵ１１のＩ／Ｏアドレス空間の一部に割り付けられた記憶エリアを含んでおり、それらはインデックス修飾によってアドレス指定される。ＥＣＡＩは、ＣＭＯＳデータをリードするＣＭＯＳリードファンクションと、ＣＭＯＳデータをライトするＣＭＯＳライトファンクションとを有している。以下、ＥＣＡＩを用いたＣＭＯＳアクセス動作について説明する。
【０４８７】
ＣＭＯＳデータをリードする場合：
この場合には、オペレーティングシステムや各種アプリケーションプログラムは、レジスタＡＨにファンクションコード（＝ＦＣｈ）をセットし、レジスタＢＸにＣＭＯＳのインデックスをセットした後、ＩＮ  ＡＬ，００ＸＹｈなどのＩ／Ｏ命令を実行する。
【０４８８】
これにより、ＥＣＡＩのＣＭＯＳリードファンクションルーチンが起動され、指定されたインデックス値が割り当てられているＣＭＯＳエリアからデータをリードする。ＣＭＯＳリードが正常に終了した場合、出力レジスタＣＬにはＣＭＯＳデータが戻り値としてセットされる。
【０４８９】
ＣＭＯＳデータをライトする場合：  
この場合には、オペレーティングシステムや各種アプリケーションプログラムは、レジスタＡＨにファンクションコード（＝ＦＤｈ）をセットし、レジスタＢＸにＣＭＯＳのインデックスをセットし、そしてレジスタＣＬにＣＭＯＳライトデータをセットした後、ＩＮ  ＡＬ，００ＸＹｈなどのＩ／Ｏ命令を実行する。
【０４９０】
これにより、ＥＣＡＩのＣＭＯＳライトファンクションルーチンが起動され、指定されたインデックス値が割り当てられているＣＭＯＳエリアにレジスタＣＬの値がライトされる。ＣＭＯＳライトが正常に終了した場合、出力レジスタＡＸには正常終了したことを示す値（＝００４４ｈ）が戻り値としてセットされる。
【０４９１】
このように、ＥＣＡＩをＢＩＯＳの一部として保持することにより、オペレーティングシステムやアプリケーションプログラムは、Ｉ／Ｏポートにインデックスをライトするというハードウェアアクセスを行うとなく、任意のインデックスのＣＭＯＳエリアをリード／ライトアクセスすることができる。
【０４９２】
次に、Ｉ／ＯトラップＳＭＩを用いてＨＣＩを起動する場合について説明する。
【０４９３】
以下では、Ｉ／ＯトラップＳＭＩを用いたＨＣＩを、ＥＨＣＩ（Ｅｎｈａｎｃｅｄ  ＨＣＩ）と称することにする。このＥＨＣＩは、プロテクトモード環境でハードウェアデバイスの環境設定などを行う事ができるプログラムインタフェースである。
【０４９４】
オペレーティングシステムまたはアプリケーションプログラムがＥＨＣＩを呼び出す場合の一連の動作は、使用されるファンクションコードおよびサブファンクションコードの値が異なるだけで、他の点は図１５および図１６で説明したＥＳＣＩの呼び出し動作と同一である。また、Ｉ／ＯトラップＳＭＩ発生回路１２１に対するセットアップ処理、オペレーティングシステムまたはセットアッププログラムに組み込まれたＢＩＯＳインタフェースの処理、およびＳＭＩハンドラのＢＩＯＳインタフェースの処理も、使用するファンクションコードおよびサブファンクションンコードの値が異なるだけで、他の点は図１７〜図１９で説明したＥＳＣＩに対する処理と同一である。
【０４９５】
次に、図２２を参照して、ＥＨＣＩを用いたハードウェアコンフィグレーションの設定動作の原理を説明する。
【０４９６】
プロテクトモード環境で動作する“Ｍａｘ  Ｔｉｍｅ”は、ハードウェアデバイスのコンフィグレーション設定やその設定情報の読出しなどを行う場合には、ＩＮまたはＯＵＴ命令を実行してＩ／ＯトラップＳＭＩを発行し、これによってＥＨＣＩを起動する。この場合、ＣＰＵ１１の動作モードは、Ｉ／ＯトラップＳＭＩによってプロテクトモードからＳＭＭにスイッチされ、ＳＭＭの中でＥＨＣＩが実行される。
【０４９７】
このＩ／ＯトラップＳＭＩによるＥＨＣＩの起動は、リアルモード環境で動作するＢＩＯＳセットアッププログラムも利用する事ができる。
【０４９８】
この場合には、ＣＰＵ１１の動作モードは、Ｉ／ＯトラップＳＭＩによってリアルモードからＳＭＭにスイッチされ、ＳＭＭの中でＥＨＣＩが実行される。
【０４９９】
次に、図２３を参照して、ＥＨＣＩによるハードウェアコンフィグレーション設定やその設定情報の読出しのためのリード／ライト処理の手順を説明する。
【０５００】
前述したように、“Ｍａｘ  Ｔｉｍｅ”およびＢＩＯＳセットアッププログラムは、ＩＮまたはＯＵＴ命令を実行する。この場合、ＨＣＩを起動する場合と同様にして、ＨＣＩのファンクション実行ルーチンを指定するファンクションコードや、サブファンクションコードがＣＰＵ１１のレジスタにセットされる。
【０５０１】
ＩＮまたはＯＵＴ命令によるＩ／ＯトラップＳＭＩによって、拡張ＢＩＯＳが実行される。拡張ＢＩＯＳは、まず、ＥＳＣＩがサポートしているファンクションコードか否かを判断する（ステップＳ２１１）。ＥＨＣＩがサポートしているファンクションコードでなければ、拡張ＢＩＯＳに用意されたＥＨＣＩ以外の他の拡張処理ルーチンに移行する（ステップＳ２１２）。
【０５０２】
一方、サポートするファンクションコードであれば、そのファンクションコードに対応するＥＨＣＩのファンクション実行ルーチンが起動される（スップＳ２１３）。起動されたファンクション実行ルーチンは、ＣＰＵ１１のレジスタにセットされているサブファンクションコードをサポートしているか否かを判断する（ステップＳ２１４）。
【０５０３】
サポートしていないサブファンクションが指定されたときは、ファンクション実行ルーチンは、エラー値を出力値としてＣＰＵ１１のレジスタにセットした後にリターンする（ステップＳ２１５）。
【０５０４】
一方、サポートしているサブファンクションであれば、ファンクション実行ルーチンは、その指定されたサブファンクションを実行し、該当するハードウェア構成の設定／その設定情報の読出しなどを行い、ＣＰＵ１１の出力レジスタに戻り値を設定した後にリターンする（ステップＳ２１６，Ｓ２１７）。
【０５０５】
このようにＥＨＣＩについても、ＥＳＣＩと全く同様のインタフェースによって各種ＯＳ環境下から呼び出す事ができる。
【０５０６】
なお、この実施形態では、ＳＣＩとＨＣＩ（またはＥＳＣＩとＥＨＣＩ）とを別個に用意したが、これらは同一のファンクョン実行ルーチンとして実現しても良い。
【０５０７】
以上説明したように、本実施形態によれば、システムコンフィグレーションやハードウェアコンフィグレーションの設定／変更などのためのプログラムがＢＩＯＳプログラムの１部として用意されており、このプログラムを起動する事によって、システム構成情報の設定／変更やハードウェアデバイスの設定などを行うことができる。このため、オペレーティングシステムや、セップアッププログラムなどのアプリケーションプログラムは、システム構成情報を格納する記憶装置やハードウェアデバイスなどを直接アクセスすることなく、ＢＩＯＳを呼び出すだけでシステム構成やハードウェア構成の設定／変更／読出しなどを行う事ができる。よって、各種オペレーティングシステム環境下でシステム動作環境の設定／変更などを行えるようになり、これによってオペレーティングシステムやセットアッププログラムなどの修正／変更作業の低減を図る事ができる
また、ＢＩＯＳインターフェースとしてＩ／ＯトラップＳＭＩを利用する事により、プロテクトモードで動作するオペレーティングシステムやアプリケーションプログラム等にＣＰＵ動作モードを切り替えるルーチンを組み込むことなく、プロテクトモード環境下から直接的にＢＩＯＳを呼び出して実行させることが可能となる。よって、オペレーティングシステム内のＢＩＯＳインタフェース部のコーディングが簡単化され、ハードウェア制御に関する機能拡張などに柔軟に対応できるようになる。
【図面の簡単な説明】
【０５０８】
【図１】この発明の一実施形態に係るコンピュータシステム全体の構成を示すブロック図。
【図２】同実施形態のシステムに設けられたＢＩＯＳ  ＲＯＭに格納されているＳＣＩの構成を示す図。
【図３】図２のＳＣＩに設けられたサブファンクション群を示す図。
【図４】図２のＳＣＩに設けられたサブファンクション群を示す図。
【図５】図２のＳＣＩに設けられたサブファンクション群を示す図。
【図６】図２のＳＣＩに設けられたサブファンクション群を示す図。
【図７】同実施形態のシステムにおけるＯＳのＢＩＯＳインタフェース部とＳＣＩとの関係を概念的に示す図。
【図８】同実施形態のシステムにおいて使用される第１のセットアッププログラムによって提供されるセットアップウインドウの一例を示す図。
【図９】同実施形態のシステムにおいて使用される第２のセットアッププログラムによって提供されるセットアップウインドウの一例を示す図。
【図１０】同実施形態のシステムにおけるＳＣＩの処理手順を示すフローチャート。
【図１１】同実施形態のシステムに設けられたＢＩＯＳ  ＲＯＭに格納されているＨＣＩの構成を示す図。
【図１２】図１１のＨＣＩに設けられたサブファンクション群を示す図。
【図１３】同実施形態のシステムにおけるＯＳのＢＩＯＳインタフェース部とＨＣＩとの関係を概念的に示す図。
【図１４】同実施形態のシステムにおけるＨＣＩの処理手順を示すフローチャート。
【図１５】同実施形態のシステムに設けられたＣＰＵにＩ／ＯトラップＳＭＩが発行された時のメモリマップを説明するための図。
【図１６】同実施形態のシステムに設けられたＣＰＵにＩ／ＯトラップＳＭＩが発行された時のＣＰＵの動作を説明するための図。
【図１７】同実施形態のシステムにおけるＩ／ＯトラップＳＭＩ発生のための準備処理を説明するためのフローチャート。
【図１８】同実施形態のシステムに設けられたＢＩＯＳ  ＲＯＭに格納されているＥＳＣＩ／ＥＨＣＩを起動する場合におけるＯＳのＢＩＯＳインタフェース部の動作を説明するフローチャート。
【図１９】同実施形態のシステムにおいてＳＭＩハンドラによって実行されるＯＳとＥＳＣＩ／ＥＨＣＩのプログラム・インタフェース処理を説明するフローチャート。
【図２０】同実施形態のシステムにおいてＥＣＳＩを利用する場合におけＯＳのＢＩＯＳインタフェース部とＥＳＣＩと関係を概念的に示す図。
【図２１】同実施形態のシステムにおけるＥＳＣＩの動作を説明するフローチャート。
【図２２】同実施形態のシステムにおいてＥＨＣＩを利用する場合におけＯＳのＢＩＯＳインタフェース部とＥＨＣＩと関係を概念的に示す図。
【図２３】同実施形態のシステムにおけるＥＨＣＩの動作を説明するフローチャート。
【符号の説明】
【０５０９】
１１…ＣＰＵ、１２…システムコントローラ、１３…メインメモリ、１３Ａ…ＳＭＲＡＭ、１４…ＢＩＯＳ  ＲＯＭ、１５…バス変換回路、１６Ａ…ＣＭＯＳメモリ、１７…ＣＰＵローカルバス、１８…システムバス、１２１…Ｉ／ＯトラップＳＭＩ発生回路、１２４…ＯＲ回路、１２５…ＳＭＩステータスレジスタ。
【図１】
2005011381.tif 000003
【図２】
2005011381.tif 000004
【図３】
2005011381.tif 000005
【図４】
2005011381.tif 000006
【図５】
2005011381.tif 000007
【図６】
2005011381.tif 000008
【図７】
2005011381.tif 000009
【図８】
2005011381.tif 000010
【図９】
2005011381.tif 000011
【図１０】
2005011381.tif 000012
【図１１】
2005011381.tif 000013
【図１２】
2005011381.tif 000014
【図１３】
2005011381.tif 000015
【図１４】
2005011381.tif 000016
【図１５】
2005011381.tif 000017
【図１６】
2005011381.tif 000018
【図１７】
2005011381.tif 000019
【図１８】
2005011381.tif 000020
【図１９】
2005011381.tif 000021
【図２０】
2005011381.tif 000022
【図２１】
2005011381.tif 000023
【図２２】
2005011381.tif 000024
【図２３】
2005011381.tif 000025