スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

freedos(98)にフロッピーディスクを認識させる

freedos(98)はブートしたHDDをAドライブと認識するだけで、
フロッピーディスクにアクセスできないという問題がありますが、
前回MOを認識させたのと同様にデバイスドライバを組み込んでやれば
フロッピーディスクも認識させることができるはずです。

MS-DOSでは標準対応のフロッピーディスクを読み書きするデバイスドライバが
あるのかと思いきや、vectorを検索してみると1.44MBのフロッピーディスクに
アクセスするためのドライバがいくつかありました。
以下を組み合わせて使うこととします。

FD144 http://www.vector.co.jp/soft/dos/hardware/se000695.html
EXTDISK http://www.vector.co.jp/soft/dos/hardware/se015717.html

実験はエミュレータでも可能なので、T98-Nextを使用します。
それぞれ単独では次のようになります。

FD144 : ドライブレターが出現し1.44MBのディスクのみアクセス可能となる
EXTDISK : ドライブが見つからずに組み込みに失敗する

EXTDISKはEXTDISKL.BPBを使用すれば2HD 1.25MBや2DDのフロッピーも
扱えますので、FD144でドライブレターを出現させた上でEXTDISKを組み込む
ことで組み込みを成功させます。

具体的にはCONFIG.SYSに以下のように記述します。
EXTDISKL.BPBはEXTDISK.BPBにリネームしてEXTDISK.SYSと
同じディレクトリに配置しておいてください。
(ここではa:\extdiskディレクトリに配置しています)

device=a:\fdd144\fd144.exe /gioctl
device=a:\extdisk\extdisk.sys

結果、以下の画像のようにDドライブ、Eドライブとして認識します。

freedos98_fdd.png

試しに闘神都市IIを
D:\>alsmenu d: a:
としてインストールしたところ、特に問題無くインストールできましたので
問題はなさそうです。

スポンサーサイト

freedos(98)でMOを使う

前回freedos(98)を実機のPC-9801USで使えるようにしましたが、
そのままでは外部とのデータのやりとりをするたびにCFを外して
PCで編集しないと行けないので不便です。
そこでMOを使えるようにすることとします。

MOを使用するデバイスドライバとして、vectorからダウンロードできる
「NEDRV」を使用します。
http://www.vector.co.jp/soft/dos/hardware/se005370.html

NEDRVの使用にはPC-9801-55互換のSCSIカードと
特定ベンダーのMOドライブが必要となりますが、
SCSIカードはICMのIF-2771ETが搭載されているので問題ありません。
MOドライブは中身を確認していませんが、とりあえずそのまま
認識させてみます。

結果ですが、以下の画像の通り、Bドライブとしてすんなり認識しました。

freedos98_mo.jpg

ただし、ディスクのフォーマットには注意が必要で、付属のNEFORM.EXEで
フォーマットしたディスクはWindows7では認識できず、Ubuntu 12.04では
認識できました。
Windowsやその他のフォーマッタでフォーマットしたディスクを使いたくなるところですが、
逆にNEDRVで認識できなかったり、NEDRVで書き込んだディスクがWindowsで
見えなかったり、その逆になるなど互換性に問題があるようです。
ですので、Windows7で認識できないのはあきらめて、NEFORM.EXEで
フォーマットしたディスクを使った方がよいかと思います。

FreeDOS(98)を実機で動かしてみる

FreeDOS(98)をPC-98エミュレータで動かす情報はあるのですが、
実機で動かしてみたという話は検索してみても出てこなかったのでやってみました。
ソースイメージは
http://black.sakura.ne.jp/~sakai/metajo/mtj_zai_download.htm
で公開されているツァイメタ女のイメージの中身を
http://mwlab.net/2011/11/pc-98-emu-hdd-image.html
で公開されているHDDイメージの中にあるkernel.sysとcommand.comに
置き換えたもので試しています。

とりあえず動かすだけならイメージの実データ部分をそのまま
IDE接続のストレージに書き出せばよいので
CFをUSBカードリーダ経由で接続してLinuxからddコマンドで書き込みます。

dd if=test.hdi of=/dev/sdx bs=512 skip=8
(書き込み元のイメージがAnex86形式のtest.hdiで、
書き出し先のCFカードが/dev/sdxで認識されている場合)

実験には前面から簡単にIDEディスクを交換できるPC-9801USを使用しました。
CFカードの容量は512MBですが、元のイメージのサイズが40MBなので
パーティションサイズは40MBとなります。

試してみた結果、以下のことが分かりました。

・EMM386.EXEを組み込むとハングアップする。
・FDXMS.SYSを組み込まないで起動するとハングアップする。
・FDXMS.SYSを組み込んで起動すればOK

なぜかXMSドライバを組み込まないとうまく起動しませんでした。
以下のようなconfig.sysを書けばOKです。

files=20
buffers=10
device=fdxms.sys
dos=high

起動時の画面と、試しにアリスソフト様がフリー宣言されたゲームの
闘神都市IIを動かしてみた画面が以下となります。

freedos98_real_machine1

freedos98_real_machine2

とりあえず起動には成功しましたが、このままだとディスクサイズが
40MBに制限されるので何とかしたいところです。
MS-DOSに頼ってしまっては本末転倒になってしまうので、
フリーソフトのみで何とかならないか検討中です。
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。