Closed buppu3 closed 1 week ago
1chip MSX 内蔵の DISK BIOS 有効時のメモリが不足が原因。 内蔵 DISK BIOS を無効にしても、特定のソフト(あ~くしゅ)は起動時にハングアップする。
プログラムが用意したスタック領域が小さすぎて暴走している現象を確認
あーくしゅ起動すると、下記の動作を行う
1chipMSXで起動すると 4 の実行中に VSYNC 割り込みが発生し、Nextor の BDOS 処理と BIOS の割り込み処理がスタックを 123バイトを超えて使用してしまい、0080h~0084h の内容を破壊してしまう。その後に 5 で 0080h をコールすると意味のないコードを実行し暴走してしまう。
パッチをあててスタック領域を増やしても動作しない。
Nextor の割り込みルーチンが E3B7h~にあるが、ゲームのプログラムが E000h へ 2セクタ分のデータを読み出して、割り込みルーチンを破壊している。 FS-A1F の場合も内蔵ドライブを無効にしてゲームを起動すると暴走することを確認した。
1chip MSX 上で tnCart の Nextor から仮想 FD のゲームを起動すると、ブート時に画面が暗いまま固まる。 FS-A1F では問題が発生しない。