最近の bochs で日本語版 Win9x の挙動がけっこうヤバげな件について

より正確には JDISP.SYS + EMM386 の組み合わせが超やばい。
なんせ、こう、

  1. とりあえず Win95 をコマンドプロンプトオンリーで起動。
  2. 日本語テキストモード(vm 3)とかグラフィックモード(vm 12)に切りかえ

ぶっちゃけこれだけで死ねる(ログ爆発、ゲスト勝手にリブート、bochs が PANIC、ほか)ってのがもう。EMM386.EXE 突っ込まなければとりあえず死なないのですが。
すこし調べてみましたが、なんか(bochs 側の)A20 関係の扱いがマズそうな気配です。とりあえず rombios 側をウヤムヤにしておく方法で対処してみましたが、ほんとは bochs 側の修正が必要だと思う。

よほど古いPCでない限り、A20 マスクの制御はキーボードコントローラ経由のと I/O ポート(92h の bit1 だったか?)の両方でできますが、両方の状態を変更したときに A20 マスクがどうなるかはチップセット依存。現在の bochs の実装だと「キーボードコントローラとポート 92h のどちらか最後に設定したほうの状態になっちまう」のですが、実機だと両方の状態の AND か OR になるのが普通なわけで。

とかその他とかのメモ

  • LunarEMM v4.07c
  • ESESMBC
  • Opera 8.53 いれた。なんか前(8.50)より表示が速くなってるような気がする。
    ふと思いついて Win95 突っ込んであった 486DX4-100, RAM16M の古いノートにインストールしてみた。すげえ、ちゃんと動くぜ! ちょっと感動した。スタイルシート有効にしても例外で落ちないので Netscape 4.x よりいい。
  • そういえば UTF8 とか対応してる最近の nkf って OS/2 版のバイナリどっかになかったのかな…とかふと思った。