Windows 4.x の DOS 窓で PC-FXGA を動作させる
永年の研究の成果が今ここで明らかにされる!ほんとか?(ぉ
- 結論
- DOS 窓での安定動作は可能。はっきりいってマルチタスクの恩恵を受けられるメリットは大きい。
仮想記憶は使えるわ、攻略メモ取れるわ、Web ページ見ながらだって遊べる。
ビデオキャプチャカードがあれば窓の中で遊んだりすることも可能になるのだ。
参考画面(巨大画像注意)。
すげーぜ、マルチメディアだ。未だかつてこんなハイパーなゲーム機があっただろうか?
あ、そーいや3DOってのがあったな(爆)
- 理論
- ただし条件がある。SCSI の CD-ROM ドライブでなきゃいかんのだ。
でも Windows 4.x って ATAPI の CD-ROM を ASPI でコントロール出来るみたいだから
同じやり方で動く可能性はある。
システムの構成としては次のような感じだ。
上が上位アプリで下に行くほどローレベルになる。わかる人だけわかって(^^;
- FXGA起動ソフト (FXGA.exe, FXGAV.exe)
こいつが動かないので苦労しているのだ。
というよりも Windows 4.x の CD-ROM ドライバがタコすぎるのだ。
なんとかせんかい、ゲイツ!
あ、いや、これ以上バグ取らないでください。世の中に広めないでください。お願いします。
- FXGA plus (FXGA.com, FXGAV.com)
てなわけでこいつを使う。様々な不都合も一発解消だ(やや嘘)。
/DP オプションは必須。
Windowsの妙な仕様のせいで2MBまでしかXMSメモリを確保できないので /X:<size> オプションで容量を指定するといいかも。
現実的には物理実装メモリの半分ぐらいを指定するといい。
貧弱な環境では物理メモリ以上の容量のメモリを確保するなどの無茶はしないほうが幸せかも。
- ASPI CD-ROM ドライバ (16bit driver)
これを ADDDRV.EXE 等で組み込む。
「等」と書いたのは深い意味があって、ADDDRV.EXE のバグらしい仕様のせいで
パラメータを認識しないドライバがあるのだ。
私はDEVICEという組み込みプログラムを使った。
肝心の CD-ROM ドライバは Adaptec 社製 EZ-SCSI の ASPICD.SYS を使った。
こいつは良く出来ているのでほとほと感心する。
ライセンス物なので、欲しいと言われてもあげられないのであしからず。
- 16bit ASPI マネージャ (Windows 4.x)
32bit ASPIマネージャには 16bit ASPI をエミュレート(?)する機能がある。
これのおかげで 16bit のリクエストも正常に処理できるのだ。
すなわち DOS 窓では 16bit の ASPI マネージャを組み込む必要は無いし、
組み込むと動作原理上やばい事になるので止めたほうが良い。
但し、32bit マネージャが組み込まれた時点で 16bit マネージャを乗っ取る
実装になっているものもあり、
(特に両者ともが同一メーカから供給されている場合は安心、)
この場合は 16bit マネージャは完全に死んでしまうので特に問題は起こらない。
- DOS 窓 (Windows 4.x)
FXGA 起動ソフトに DOS 窓で動いていることを知られないように設定する必要がある。
必要な設定はその程度。
「ほかのプログラムの優先度」を低いにしたほうがいいかもしれないが、
試してみたところ目立った効果は現れなかった。
そもそもアイドル状態にならないから意味が無いらしい(爆)
- 32bit ASPIマネージャ (Windows 4.x)
こいつの 16bit エミュレーション(?)がうまく行われるのが前提で、
このシステム体系は安定する(ぉ
Adaptec の ASPI マネージャはうまく出来ているようだ。やっぱ高いだけのことはあるなぁ。
実用できるかどうかはこのマネージャの出来次第。
DOS 窓で 16bit ASPI マネージャが正常に動いているかどうか、
適当なツールで調べて見ると良い。
- SCSI CD-ROMドライブ
マシンパワーにも依存するが、ドライブは4倍速程度でなんとかなる。
CD-ROMドライブを高速化したからといって
本体処理が軽くなるわけではないので誤解無きよう。
- 実践
- さ〜みんなでやってみよ〜★
- config.sys
- 特に変更無し
- autoexec.bat
- 特に変更無し
- winfxga.dev
- device=c:\usr\scsi\aspicd.sys /d:aspicd0
- winfxga.bat
- device winfxga.dev
fxgav /CA /DP /X:32M %1 %2 %3 %4 %5 %6 %7 %8 %9
- backup.ini
- c:\usr\binv\pcfxback.ram
c:\usr\binv\pcfxcard.ram
/D2 /A300 /D:aspicd0
- 注意点
- とりあえず遊べるとはいえ、注意する事項はある。
適当なソフトのアニメーションを垂れ流しにしておいて窓上でいろいろやってみて、
どういう操作がヤバいのか(^^;
身をもって体験しておく方が良い。
少しでも不安定になったりハングアップするような事があれば、
即刻使用を中止した方がよいだろう。
- CPUリソース馬鹿食い
FXGA は割り込み使ってないもんだから動作中はずっと I/O ポートをポーリングしてるわけだわ(だと思う)。
リソースの解放はしない訳で CPU リソース消費は常に 100% (汗)
ま、Pentium 100MHz 程度のスペックがあればそれなりに遊ぶ事は出来るはず。
- スクリーンセーバに注意
非常に凝ったスクリーンセーバはCPUリソースをバリバリ消費するので
アニメーションの飛び等が発生する事がある。
しかも、ほんのわずかな期間だがタスクが回ってこないスクリーンセーバも稀にある
(しかも Windows に標準で付いてくるアレ…)。何とかしろ。マルチタスクが泣くぜ〜。
- その他設定例
- Gomさんのページに別のアプローチでの情報がありますのでそちらを参照すると良いでしょう。
→Windows95 で PC-FXGA を動かしてみる
参考までにウチのFXGAはこんなハードウェア環境で動いてます。
→FXGA動作環境1
→FXGA動作環境2(DOS窓で動かず)
戻る