Copyright(C) 1994,1995,1996,1997 Terumasa KODAKA , Takeshi KONO ■パワーマネジメントコントローラ 対象 PC-9801NV・NS/E・NC PC-9801NS/T・NL・NS/L・NA・NS/R・P・NX/C・NS/A・NL/R・NL/A PC-9821Ne・Np・Ns・Ne2・Nd・Es・Ld・Lt・Nf・Nm 解説 o レジューム可能な98NOTEシリーズでは、通常読み出しが不可能な各種 ハードウェアの設定を保存するために、特殊なハードウェアが装備されて いる。ほとんどのハードウェアの設定状態は、このパワーマネジメント コントローラを通して読み出すことができる。 o パワーマネジメントコントローラは2段階I/Oを通してアクセスされる。 連続して読み出すことにより関連する情報を一括して読み出すレジスタも 存在する。 o デスクトップの一部機種でも、98NOTEシリーズと同様のアクセス方法で 特殊なハードウェアをコントロールする機種がある。 I/O 08F0h 名前 パワーマネジメントコントローラ[INDEX] Undocumented 機能 [READ/WRITE] bit 15〜0: レジュームコトローラレジスタ 解説 o I/O 08F2hとペアで2段階I/O操作を行う 関連 I/O 08F2h I/O 08F2h 名前 パワーマネジメントコントローラ[DATA] Undocumented 機能 [READ/WRITE] bit 15〜0: レジュームコトローラデータ入出力 ------------+---+---------------------------------------------- レジスタ番号|IND| |R/W| EX|内容 --------+---+---+------------------------------------------ 0000h |R/W| |2DD/2HD | | |bit15〜9: 未使用 | | |bit 8: EMTOM | | |bit 7〜0: 未使用 --------+---+---+---------------------------------------------- 0001h | R | |マスターPICの設定情報読みだし | +---+---------------------------------------------- | | 0 |bit15〜8: 未使用 | | |bit 7〜0: マスターPICのICW1 | +---+---------------------------------------------- | | 1 |bit15〜8: 未使用 | | |bit 7〜0: マスターPICのICW2 | +---+---------------------------------------------- | | 2 |bit15〜8: 未使用 | | |bit 7〜0: マスターPICのICW3 | +---+---------------------------------------------- | | 3 |bit15〜8: 未使用 | | |bit 7〜0: マスターPICのICW4 --------+---+---+---------------------------------------------- 0002h | R | |スレーブPICの設定情報読みだし | +---+---------------------------------------------- | | 0 |bit15〜8: 未使用 | | |bit 7〜0: スレーブPICのICW1 | +---+---------------------------------------------- | | 1 |bit15〜8: 未使用 | | |bit 7〜0: スレーブPICのICW2 | +---+---------------------------------------------- | | 2 |bit15〜8: 未使用 | | |bit 7〜0: スレーブPICのICW3 | +---+---------------------------------------------- | | 3 |bit15〜8: 未使用 | | |bit 7〜0: スレーブPICのICW4 --------+---+---+---------------------------------------------- 0003h | R | |USART設定読みだし(キーボード) | +---+---------------------------------------------- | | 0 |bit15〜8: USARTコマンドセット | | |bit 7〜0: USARTコマンドセット | +---+---------------------------------------------- | | 1 |bit15〜8: USARTコマンドセット | | |bit 7〜0: USARTコマンドセット --------+---+---+---------------------------------------------- 0004h | R | |USART設定読みだし(RS-232C) | +---+---------------------------------------------- | | 0 |bit15〜8: USARTコマンドセット | | |bit 7〜0: USARTコマンドセット | +---+---------------------------------------------- | | 1 |bit15〜8: USARTコマンドセット | | |bit 7〜0: USARTコマンドセット --------+---+---+---------------------------------------------- 0005h | R | |TCU設定読みだし | +---+---------------------------------------------- | | 0 |bit15〜0: カウンタ#0設定値 | +---+---------------------------------------------- | | 1 |bit15〜0: カウンタ#1設定値 | +---+---------------------------------------------- | | 2 |bit15〜0: カウンタ#2設定値 | +---+---------------------------------------------- | | 3 |bit15〜0: 未使用 --------+---+---+---------------------------------------------- 0006h | R | |メモリバンク切り替え読みだし | | |bit15〜8: メモリアドレス(A23-A20) | | | * I/O 08E9hにライトする値 | | |bit 7〜5: 未使用 | | |bit 4: 8,9バンク制御 | | | 0= 内部RAM選択 | | | 1= 拡張スロット選択 | | |bit 3〜1: 不明 | | |bit 0: Bバンクページフレーム | | | 0= VRAM | | | 1= EMS | | | 関連 I/O 08E9h | | | I/O 043Fh --------+---+---+---------------------------------------------- 0007h | R | |不明 | | | 関連 I/O 053Dh --------+---+---+---------------------------------------------- 0008h | R | |EMSページ#0マップ | | |bit15〜8: メモリアドレス(A23-A20) | | | * I/O 08E9hにライトする値 | | |bit 7〜0: EMSページ#0(C0000h)選択 | | | * I/O 08E1hにライトする値 --------+---+---+---------------------------------------------- 0009h | R | |EMSページ#1マップ | | |bit15〜8: メモリアドレス(A23-A20) | | | * I/O 08E9hにライトする値 | | |bit 7〜0: EMSページ#1(C4000h)選択 | | | * I/O 08E3hにライトする値 --------+---+---+---------------------------------------------- 000Ah | R | |EMSページ#2マップ | | |bit15〜8: メモリアドレス(A23-A20) | | | * I/O 08E9hにライトする値 | | |bit 7〜0: EMSページ#1(C8000h)選択 | | | * I/O 08E5hにライトする値 --------+---+---+---------------------------------------------- 000Bh | R | |EMSページ#3マップ | | |bit15〜8: メモリアドレス(A23-A20) | | | * I/O 08E9hにライトする値 | | |bit 7〜0: EMSページ#3(CC000h)選択 | | | * I/O 08E7hにライトする値 --------+---+---+---------------------------------------------- 000Ch | R | |カードスイッチ読みだし | | |bit15〜8: 未使用 | | |bit 7〜0: カードスイッチ情報 --------+---+---+---------------------------------------------- 000Dh | R | |カレンダ時計IC | | |bit15〜8: カレンダ時計IC(I/Oポート20h)に送る値 | | |bit 7〜0: 未使用 --------+---+---+---------------------------------------------- 0010h |R/W| |不明 --------+---+---+---------------------------------------------- 0011h | R | |テキストGDC設定情報読みだし | +---+---------------------------------------------- | |0〜3|SYNCパラメータ | | 4 |PITCHパラメータ | |5,6|CSRFORMパラメータ | |7~14|SCROLLパラメータ --------+---+---+---------------------------------------------- 0012h | R | |グラフィックモードF/F設定読みだし | +---+---------------------------------------------- | | 0 |bit15〜11: 未使用? | | |bit10: 描画面 | | | 0= 表面描画中 | | | 1= 裏面描画中 | | |bit 9: 表示面 | | | 0= 表面表示中 | | | 1= 裏面表示中 | | |bit 8: 未使用? | | |bit 7: DISP ENABLE | | | 0= 表示OFF | | | 1= 表示ON | | |bit 6: MVMW PERMIT | | | 0= INHIBIT | | | 1= PERMIT | | |bit 5: KAC mode | | | 0=コードアクセス | | | 1= ビットマップ | | |bit 4: GRP Mode | | | 0= 専用高解像度400ライン,標準解像度 | | | 1= 専用高解像度ディスプレイで200ライン | | | モードグラフで使用する | | |bit 3: FONT SEL | | | 0= 6x8ドット | | | 1= 7x13ドット | | |bit 2: Column WIDTH | | | 0= 80字モード | | | 1= 40字モード | | |bit 1: GRAPHIC Mode | | | 0= カラーグラフィックモード | | | 1= モノクログラフィックモード | | |bit 0: ATR7SEL | | | 0= ATR7がバーティカルライン | | | 1= ATR7が簡易グラフ | +---+---------------------------------------------- | | 1 |bit15〜11: 未使用? | | |bit10: モードF/F変更 | | | 0= 禁止 | | | 1= 許可 | | |bit 9,8: 未使用? | | |bit 7: G-GDCスレーブ | | | 0= スレーブ | | | 1= マスタ | | |bit 6: GDCクロック#1 | | | 0= 2.5MHz | | | 1= 5.0MHz | | |bit 5: GDCクロック#0 | | | 0= 2.5MHz | | | 1= 5.0MHz | | |bit 4: 未使用? | | |bit 3: 1ドット送り | | | 0= しない | | | 1= する | | |bit 2: CRT/プラズマ | | | 0= CRTモード | | | 1= プラズマディスプレイ/LCDモード | | |bit 1: EGCモード | | | 0= GRCG互換モード | | | 1= EGC拡張モード | | |bit 0: アナロググラフィックモード | | | 0= 8色モード | | | 1= 16色モード --------+---+---+---------------------------------------------- 0013h | R | |グラフィックパレット読みだし | +---+---------------------------------------------- | | 0 |bit 15: 未使用 | | |bit 14〜12: 8色モードパレットレジスタ#0 | | |bit 11: 未使用 | | |bit 10〜8: 8色モードパレットレジスタ#4 | | |bit 7: 未使用 | | |bit 6〜4: 8色モードパレットレジスタ#2 | | |bit 3: 未使用 | | |bit 2〜0: 8色モードパレットレジスタ#6 | +---+---------------------------------------------- | | 1 |bit 15: 未使用 | | |bit 14〜12: 8色モードパレットレジスタ#1 | | |bit 11: 未使用 | | |bit 10〜8: 8色モードパレットレジスタ#5 | | |bit 7: 未使用 | | |bit 6〜4: 8色モードパレットレジスタ#3 | | |bit 3: 未使用 | | |bit 2〜0: 8色モードパレットレジスタ#7 | +---+---------------------------------------------- | | 2 |bit15〜12: 未使用 | | |bit11〜8: 16色モードパレット#0の青輝度 | | |bit 7〜4: 16色モードパレット#0の赤輝度 | | |bit 3〜0: 16色モードパレット#0の緑輝度 | +---+---------------------------------------------- | | 3 |bit15〜12: 未使用 | | |bit11〜8: 16色モードパレット#1の青輝度 | | |bit 7〜4: 16色モードパレット#1の赤輝度 | | |bit 3〜0: 16色モードパレット#1の緑輝度 | +---+---------------------------------------------- | |4~16|↑と同様 | +---+---------------------------------------------- | | 17|bit15〜12: 未使用 | | |bit11〜8: 16色モードパレット#15の青輝度 | | |bit 7〜4: 16色モードパレット#15の赤輝度 | | |bit 3〜0: 16色モードパレット#15の緑輝度 | +---+---------------------------------------------- | | 18|bit15〜8: 未使用 | | |bit 7: 0 | | |bit 6〜4: ボーダーカラー(006Ch) | | |bit 3〜0: 最後にI/Oポート00A8hに設定した | | | パレット番号 --------+---+---+---------------------------------------------- 0014h |R/W| |GRCGリードレジスタ読みだし | +---+---------------------------------------------- | | 0 |bit 15〜10: 未使用 | | |bit 9,8: タイルパターンレジスタカウンタ | | | 00b= レジスタ#0 | | | 01b= レジスタ#1 | | | 10b= レジスタ#2 | | | 11b= レジスタ#3 | | | * 次に書き込みを行うレジスタの番号を | | | しめす | | | 関連 I/O 007Eh | | |biT 7: CGW | | |biT 6: RMW | | |biT 5,4: 未使用 | | |biT 3〜0: PE3〜0 | | | * GRCGコントロールレジスタを読み出す。 | | | 関連 I/O 007Ch | +---+---------------------------------------------- | | 1 |bit 15〜8: 未使用 | | |bit 7〜0: タイルパターンレジスタ#0 | | | 関連 I/O 007Eh | +---+---------------------------------------------- | | 2 |bit 15〜8: 未使用 | | |bit 7〜0: タイルパターンレジスタ#1 | | | 関連 I/O 007Eh | +---+---------------------------------------------- | | 3 |bit 15〜8: 未使用 | | |bit 7〜0: タイルパターンレジスタ#2 | | | 関連 I/O 007Eh | +---+---------------------------------------------- | | 4 |bit 15〜8: 未使用 | | |bit 7〜0: タイルパターンレジスタ#3 | | | 関連 I/O 007Eh --------+---+---+---------------------------------------------- 0015h | W | |不明 | | |bit 15〜13: 未使用 | | |bit 12〜8: 不明 | | |bit 7: 未使用 | | |bit 6〜4: 不明 | | |bit 3: 未使用 | | |bit 2〜0: 不明 | | | * VRAM関連 --------+---+---+---------------------------------------------- 0016h | W | |クロックジェネレータプログラムマスク | | |■[PC-9821Bp・Bs・Be・Bf・Xt・Xa・Xn・Xp・Xs・Xe, | | | PC-9801BX2・BS2・BA2・BA3・BX3・BX4・NS/A] | | |bit15〜1: 未使用?(0にする) | | |bit 0: マスク | | | 1= マスクする | | | 0= マスクしない | | | * ドットクロック生成PLLシンセサイザの | | | プログラムを禁止/許可する --------+---+---+---------------------------------------------- 0020h | R | |グラフィック表示状態読みだし | | |bit 15〜8: 未使用 | | |bit 7: グラフィック画面表示 | | | 0= 表示停止中 | | | 1= 表示中 | | |bit 6〜0: 未使用 --------+---+---+---------------------------------------------- 0030h | R | |不明 --------+---+---+---------------------------------------------- 0031h | R | |グラフィックGDC SYNCパラメータ読みだし --------+---+---+---------------------------------------------- 0032h | R | |グラフィックGDC ZOOMパラメータ読みだし --------+---+---+---------------------------------------------- 0033h | R | |グラフィックGDC CSRFORMパラメータ読みだし --------+---+---+---------------------------------------------- 0034h | R | |グラフィックGDC PITCHパラメータ読みだし --------+---+---+---------------------------------------------- 0035h | R | |グラフィックGDC VECTWパラメータ読みだし --------+---+---+---------------------------------------------- 0036h | R | |グラフィックGDC SCROLLパラメータ読みだし --------+---+---+---------------------------------------------- 0037h | R | |グラフィックGDC WRITEパラメータ読みだし --------+---+---+---------------------------------------------- 0038h | R | |グラフィックGDC コマンド読みだし | | |bit15〜8: 未使用? | | |bit 7〜0: 最後にG-GDCに送ったコマンドバイト --------+---+---+---------------------------------------------- 0040h | R | |不明 --------+---+---+---------------------------------------------- 0041h | R | |各種フラグ読みだし | | |bit15〜13: 未使用 | | |bit12: [CTRL]+[GRPH]+[HELP]が押されると1になる | | |bit11: パワーセーブモードから復帰 | | |bit10: 不明 | | |bit 9: SMI要求ありフラグ■[PC-9801NS/R以降] | | |bit 8: 不明 | | |bit 7: 未使用 | | |bit 6: SMI要求ありフラグ■[PC-9801NS/T] | | |bit 5: 不明 | | |bit 4: 未使用 | | |bit 3: POWERボタンまたはLCDパネルスイッチ | | |bit 2: 未使用 | | |bit 1: 不明 | | |bit 0: SMI要求ありフラグ■[PC-9801NS/R以降] --------+---+---+---------------------------------------------- 0044h | | |各種フラグ +---+---+---------------------------------------------- | R | |bit15,14: LCDパネル関係 | | | 00b= LCDパネルは開いている | | | 01b= LCDパネルは開いている | | | 10b= LCDパネルは開いている | | | 11b= LCDパネルは閉じている | | |bit13〜0: 不明 +---+---+---------------------------------------------- | W | |bit15〜11: 不明 | | |bit 10: 電源切断処理 | | | 0= 電源を落さない(通常) | | | 1= 電源を落す | | |bit 9: 不明 | | | 0= ノートメニュー外 | | | 1= ノートメニュー内 | | |bit 8〜0: 不明 --------+---+---+---------------------------------------------- 0045h | W | |タイマクリア | | |bit 15〜2: 不明 | | |bit 1: LCDライトタイマクリア | | | 1= クリアする | | | 0= クリアしない | | |bit 0: 自動パワーセーブタイマクリア | | | 1= クリアする | | | 0= クリアしない | | | 関連 INT 1Fh - Function 9E04h --------+---+---+---------------------------------------------- 0046h〜 | R | |不明 0048h| | | --------+---+---+---------------------------------------------- 0047h |R/W| |不明 0048h | | |不明 --------+---+---+---------------------------------------------- 0050h | W | |パワーセービングタイマ設定 | | |bit 15: タイマ有効 | | | 1= イネーブル | | | 0= ディセーブル | | |bit 14,13: タイマ周期設定 | | | 11b= 不明 | | | 10b= 1分 | | | 01b= 1秒 | | | 00b= 100m秒 | | |bit 12〜8: 未使用(00000bにする) | | |bit 7〜0: タイマ設定値 | | | * bit 14,13で設定された周期による --------+---+---+---------------------------------------------- 0052h |R/W| |LCD関係各種設定 | | |bit 15〜9: 不明 | | |bit 8: LCD表示 | | | 1= OFF | | | 0= ON | | |bit 7: LCDライト | | | 1= ON | | | 0= OFF | | |bit 8: 未使用 | | |bit 6〜1: スタンバイモードタイマ設定 | | | * 分単位 | | |bit 0: スタンバイモード設定 | | | 1= 有効 | | | 0= 無効 --------+---+---+---------------------------------------------- 0054h |R/W| |不明 --------+---+---+---------------------------------------------- 0056h |R/W| |RS-232Cドライバ/レシーバへの電源供給制御 | | |bit 15〜8: 未使用 | | |bit 7〜1: 不明 | | |bit 0: RS-232Cへの電源供給 | | | 1= 供給する | | | 0= 供給しない --------+---+---+---------------------------------------------- 0057h |R/W| |不明 --------+---+---+---------------------------------------------- ■[PC-9801NS/Tのみ] --------+---+---+---------------------------------------------- F000h |R/W| |CPU動作クロック設定 | | |bit 15〜0: 動作クロック | | | A000h= 最高速 | | | A610h= パワーセービングモード | | | A620h= V30モード | | | A630h= 未使用(この設定のとき最低速) --------+---+---+---------------------------------------------- F002h | R | |不明 F004h | R | |不明 F006h | R | |不明 --------+---+---+---------------------------------------------- F008h |R/W| |512K〜640K空間の切り離し設定 | | |bit 15〜0: 切り離し設定 | | | 0000h= 512K〜640K切り離さない | | | 0003h= 512K〜640K切り離す --------+---+---+---------------------------------------------- F00Ah | W | |不明 | | |bit 15〜10: 不明 | | |bit 9: 電源切断 | | | 0= 電源切断しない | | | 1= 電源切断する --------+---+---+---------------------------------------------- F00Ch | R | | F00Dh | R | |不明 --------+---+---+---------------------------------------------- F00Eh |R/W| |SMRAMマッピング制御 | | |bit 15〜0: マッピング制御 | | | 0000h= SMRAMをマッピングしない | | | 0008h= SMRAMをマッピングする --------+---+---+---------------------------------------------- F010h | R | |不明 F201h | R | |不明 F202h | R | |不明 F204h | R | |不明 F208h | R | |不明 F20Ch | R | |不明 F20Eh | R | |不明 F300h | R | |不明 F302h | R | |不明 F400h | R | |不明 F401h | R | |不明 F402h | R | |不明 F404h | R | |不明 F406h | R | |不明 F408h | R | |不明 F409h | R | |不明 --------+---+---+---------------------------------------------- F40Ah |R/W| |専用増設メモリ登録 | | |bit 15〜0: 専用増設メモリ容量 | | | 0113h= 専用増設メモリなし | | | 3333h= 専用増設メモリ6MB | | | 0133h= 専用増設メモリ2MB | | | 0113h= 未定義 --------+---+---+---------------------------------------------- F40Ch | R | |CPU IDシグネチャ | | |bit 15〜0: CPU ID | | | 5300h= i386SL(98)識別 | | | * この値は固定されている --------+---+---+---------------------------------------------- F40Eh | R | |不明 F40Fh | R | |不明 --------+---+---+---------------------------------------------- 解説 o I/O 08F0hで指定したパワーマネジメントコントローラのレジスタを アクセスする。 関連 I/O 08F0h