Repository navigation
v0.1.16
v0.1.15 からの変更。実機で報告された「メニューが表示されたまま固まる」件を調べるための版の 2 つめです。この版でも、その件は直っていません。動作確認は PC-98 エミュレータ(NP21/W と DOSBox-X)の上で行っています。実機では未確認です。
v0.1.15 の実機の結果(報告)
PC-9821Ap2(MS-DOS 6.2、EMM386.EXE の下)で、CTRL + GRPH + HELP のメニューと CTRL + GRPH + STOP の終了の確認が、v0.1.15 でも表示されたまま固まりました。いただいたログから、次のことが分かりました。
- 本体は止まっていません。キーが来るのを待ち続けています
- 割り込みの受け口は正常です(キーボードの割り込みは開いていて、行き先も BIOS のまま)
- 固まっている間、キーを押しても、キーボードからのデータが本体に 1 度も届いていません
キーボードからの受信が止まっている、という所までは決まりました。何が止めたのかは、まだ分かっていません。
変わったこと
- ログに、キーボードまわりの記録を足しました(
-logを付けたときだけ): ゲームがキーボードの入出力ポートに書いた値、キーボードから最後に届いたデータ、ホットキーを離すのを待つ処理がどう終わったか。受信が止まったのが、ホットキーを押した直後なのか、メニューを出す処理の間なのかを見分けるためです - 調査用のオプション
-kbdprobeを足しました: これを付けると、メニューでキーが来ないまま待ちが続いたときに、キーボードの受信を 2 段階で立て直してみます(1 段めは受信の設定を書き直す、2 段めは BIOS にキーボードの初期化をさせる)。どちらのあとでキーが届くようになったかをログに書きます。付けなければ、何もしません
試していただける方へ
メニューや終了の確認が固まった環境で、次のように試していただけると助かります。
VBM98 -fdd0 GAME.HDM -log VBM98.LOG -kbdprobe
-logと-kbdprobeを付けて起動し、同じ操作(CTRL + GRPH + HELP か CTRL + GRPH + STOP)をする- 固まったら、キーに触らずに 30 秒ほど待つ(その間に
-kbdprobeが 2 段階の立て直しを試します。かかる時間は機種で変わります) - そのあと、ESC か数字のキーを何度か押してみる。メニューが反応したら、そのまま操作して終了する。反応しなければリセットする
- どちらの場合も、ログのファイルを送ってください
余裕があれば、-log も -kbdprobe も付けずに起動して同じ操作をしたとき、固まるかどうかも教えてください(前回お願いした点です)。
ご要望について
「メニューから名前を付けてブランクディスクを作りたい」というご要望をいただきました。検討します。この版には入っていません。
動作環境
- 80386 以上の PC-98x1(ノーマルモード)、MS-DOS(リアルモードか、VCPI のある EMM の下)、XMS ドライバ。空きコンベンショナルメモリ 256KB 以上、拡張メモリ 700KB 以上。イメージをメモリに読み込むには、さらに 1 枚あたりイメージの大きさぶん
- MS-DOS 6.2 の EMM386.EXE は、
/DPMIを付けないと VBM98 が使う機能(VCPI)を提供しません
まだ動かないもの
- 機種判別フラグの PC-9801VM 化、サウンド BIOS の INT D2h の登録、ホストの CPU が例外にせずに実行してしまう V30 の並び(Pentium 以降の RDTSC など)
- DMA の転送(対応予定)、D88 形式(対応予定)、BKDSK の HDB 形式(対応予定)
zip に入っている VBM98.DOC は、PC-98 で読める説明書(Shift-JIS)です。詳細は README(PC-98 では VBM98.DOC)を参照。