DOS J5.0/V + Windows 3.1でCDドライブ動作のZuluIDEを使う。
現在最新の安定版ファームウェア (v2025.05.08) はFreeDOSのCDドライバーと相性が悪い。開発途上版 (Latest development build 2025-05-20)では解決されているので、これに更新すること。Win9xに付属するOAKCDROM.SYSを用いるのであれば、これは問題にならない。
必要なソフトウェア
- リアルモード用CDドライバー (Win9xのOAKCDROM.SYS、FreeDOSのUDVD2.SYS、UIDE.SYSなどのいずれか)
- MSCDEXまたはその互換ドライバー (SHSUCDX)
- cdrom2ui https://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/util/system/cdrom2ui/
最初の2つは実機と同じだから説明は省くとして、DOSやWin3.1にはCD取り出しのコマンドがないため、ソフトウェア・イジェクトを行うにはcdrom2uiが必要。
手順
ZuluIDE側の準備は前の記事を参照。
→ ZuluIDEを使ってSDカードでCD-DA再生のゲームをプレイする
FreeDOSの配布ファイルのうち、UDVD2.SYSとSHSUCDX .COMの2つのファイルを使う。この2つをC:\CDDRVに配置したとすると、CONFIG.SYSには次のように追記する。
DEVICEHIGH=C:\CDDRV\UDVD2.SYS /D:MSCD001 /UX
私のPCではDMAモードだとCDアクセス時にフリーズすることがある(実CDドライブでも発生する)ので、PIOモードを強制する/UX
オプションを付けた。メモリードライバーなどが古いせいかもしれないが、まあ何にせよ、パフォーマンスを優先したい訳でない限り、PIOモードで使用した方が無難そうではある。
AUTOEXEC.BATに次のように追記する。MSCDEXを使う場合は”SHSUCDX”を”MSCDEX”に置き換える。
LH C:\CDDRV\SHSUCDX /D:MSCD001
再起動後、CDドライブが認識されることを確認する。
ソフトウェア・イジェクトを行うにはcdrom2uiのコマンドを使う。コマンドラインで次のように実行する。(例はCDドライブがD:の場合)
C:\CDDRV\CDROM EJECT D:
毎回コマンド入力するのは大変なので、バッチファイルを作っておく。Windows 3.1の場合はPIFエディタでショートカットを作って、プログラムマネージャにアイコン登録しておくと、楽にイメージ切り替えできる。
イメージが切り替わったかどうかはファイルマネージャを手動更新させて確認しないといけないので、ちっと面倒。グレーのツールバーにあるドライブのアイコンをクリックすると画面更新される。
ゲームの実行にCD-ROMを要求するMystをプレイしてみたものの、特に問題なし。