Disk image files and virtual machine

(2021.10.7-2022.4.23)

ディスク類(フロッピーディスクFDやCD, DVD)は邪魔なので,イメージファイルにしてハードディスクに保存して,棄てることにしました。イメージファイルは,現役PCやエミュレーターでマウントして使うことができます。

イメージファイルの作成とマウント

CDやDVDのイメージファイル:isoファイル

  • isoファイル作成:WSL2,genisoimageをインストール(# apt install genisoimage)して,

# genisoimage -J -r -R -o /mnt/c/Users/Hiroshi/Documents/a.iso /media/cdrom/

-o オプションで出力先を指定する see。cf. linuxコマンドdd

  • マウント:Windows10標準機能で可能。ダブルクリックすればよい。

HDのイメージファイル:VHD

  1. 仮想ハードディスク(VHD)の作り方:コマンドプロンプトを管理者として実行し,diskpartと打ち,

DISKPART> create vdisk file="my.vhd" maximum=65536 type=expandable

file=はVHDのファイル名,maximum=はVHDの最大サイズ(MB),expandableとは書き込まれた容量に応じてVHDのサイズをmaximamまで大きくする可変型という意味

  1. Windowsへのマウント(attach)の方法:

DISKPART> select vdisk file="c:\users\hiroshi\my.vhd"
DISKPART> attach vdisk
DISKPART> quit

注)diskpartはコマンドを書いたスクリプトを読み込ませて実行することもできる。例

diskpart /s diskpart-script.txt

2の操作などはスクリプトに書いた方が便利。

  1. マウントの解除は,wsl2にマウントされている場合はwsl2をシャットダウンしてから),attachをdetachにして2を実行する。

FDのイメージファイル

PCにUSB接続のFDDをつないで(USB接続のFDDは念のため1台は持っていた方がよい),イメージファイル化したいFDを挿し込み,RWFDというフリーソフトで,コマンドプロンプトで

c:¥> rwdf a: a.img

のように打ち込んで,作れます。イメージファイルの拡張子は何でも構いませんが下記ディスクエクスプローラーではBKDSK形式.hdmとなっています(私は.imgとしています)。

イメージファイルの編集と変換

DiskExplorer

イメージファイル編集ツール DiskExplorer でイメージファイルからファイルを取り出したり追加したりすることができます。DiskExplorerをダウンロード・展開してeditdisk.exeをダブルクリックして起動し,イメージファイルを開けば,イメージファイル内のファイルを閲覧することができ,ドラッグ&ドロップでファイルを取り出したり追加したりすることができます。FDのイメージ化,書き戻しもできるようです。

Virtual Floppy Image Converter

イメージファイルは,Virtual Floppy Image Converterで様々な形式に変換することができます。Virtual Floppy Image Converterをダウンロード・展開してvfic.exeをダブルクリックして起動して,出力形式をドロップダウンリストで選んで,イメージファイルをドラッグ&ドロップするだけで変換完了です。複数ファイルをまとめてドロップすることもできます。

仮想マシン

DOS/V仮想マシン VirtualBox

仮想PC,Virtual Boxでは,上記イメージファイルを読み込むことができます。MS-DOS 6.2Vのイメージファイルを使って,このサイトを参考に仮想マシンにMS-DOSをインストールすることもできました。

  1. VirtualBoxを起動して,[新規]から[タイプ]は[Other],[バージョン]は[DOS]を選んで,[名前]は適当に入れて,[作成],[作成]。

  2. [ストレージ]をクリックして,[💾空]をクリックし,右端の💾をクリックして[仮想フロッピーディスクの選択/作成]で[追加]をクリックしてMS-DOS Ver6.2の1枚目FDのイメージファイルを選択し,[OK]。

  3. [起動]をクリックして(起動ハードディスクを選択と出たらキャンセルし),[漢字][Enter][Enter]でインストールを開始。[Enter]を押してインストールを進める。

  4. [デバイス][フロッピードライブ]から[ディスクイメージを選択/作成]で[追加]をクリックしてMS-DOS Ver6.2Vの2枚目FDのイメージファイルを選択し,[OK]。[Enter]。

  5. 同じようにして6枚目のディスクまで。6枚目が終わったら指示に従って[フロッピードライブ]から[仮想ドライブからディスクを除去]して[Enter][Enter]

  6. 再起動して画面が真っ黒になる。

  7. フロッピーディスクの1枚目を挿入して×で[仮想マシンの電源オフ]を選び[OK]。再度[起動]して[漢字][F3][F3]。DOSプロンプトが出るので,

c:
cd dos
edit c:¥config.sys

と打って,config.sysを編集。JDISP.SYSの後ろに半角のスペースを入れ/HS=LCと追加する。この段階ではキーボードが正しく認識されていない場合,:はShift+;,\は],=は^で入力する。[ALT][F][S]で上書き保存。[ALT][F][X]でエディタを終了し,×で[仮想マシンの電源オフ]を選び[OK],もう一度[起動]。

インストールしたソフトは,MS-Works 2.5,Windows 3.1,Page Maker 3.0J,Visual BASIC 2.0,Visual C++ 1.0。

Windows 3.1もインストール

ページメーカーを起動

PC-9801エミュレーター Anex86

  1. Anex86では,上記イメージファイルを読み込むことができないので,Virtual Floppy Image Converterで.fdi形式に変換します。

  2. NECのMS-DOS 3.3から5.0は,EPSONチェックがかかっていて,純正NEC PC-9801以外では起動しません。Anex86でも起動しません。私は,NECのMS-DOS 3.0を持っていて,これは起動します。しかし,なぜかハードディスクが正常に導入できないので,ここを参考に,以下の手順でMS-DOS 3.3CのEPSONチェックをはずして使いました。(MS-DOS 3.0を持ってない場合はFreeDOSで代替えできるかも)

    1. EPSONチェック解除ツール Dispellをダウンロード・展開して,DISPELL.EXEファイルを,DiskExplorerでMS-DOS 3.3Cの1枚目のFDの.fdiファイルに追加する。

    2. Anex86をダウンロード・展開して, anex86.exeをダブルクリックして起動する。Settingウインドウが開くので,FDD1に[...]でMS-DOS 3.0の.fdiファイルを指定して,[Start]。MS-DOS 3.0が起動する。

    3. FDD2に[...]でMS-DOS 3.3Cの.fdiファイルを指定して,Anex86のMS-DOSプロンプトで

A:¥>b:
B:¥>dispell /a b:¥

と打って,EPSONチェック解除する。

    1. [x]でAnex86を終了する。

  1. Anex86を起動して,FDD1にEPSONチェックを解除したMS-DOS 3.3Cを指定し,HDD1に[New]でDisk infoを80MBにしてハードディスクイメージを作成し,[Start]。指示に従ってFDD1を[Eject]を[...]で入れ替えながら,ハードディスクにMS-DOSをインストールする。

  2. Anex86を[x]で終了して,SettingでFDD1を[Eject]してから,[Start]すれば,ハードディスクからMS-DOSが起動する。ハードディスクのドライブレターはA:,FDD1はB:,FDD2はC:になる。

ハードディスクにインストール(または単にコピー)して使うことができたのは:一太郎4.3(参考),花子2.2,Vz 1.57,Tetris,N88BASIC(86),Quick BASIC 4.5,Quick C 2.0,MS-Works 3.1,.fdiから起動しないと使えなかったのは,SimCity,アスキー将棋II。懐かしい。。。

Windows 3.1はインストールできませんでした(5枚目のインストールFDでストップ,DOSプロンプトに戻ってしまう)。この記事では動いているようですが,何が違うんだろう。

データは,Anex86に付属している,HD,FDイメージファイル(.hdi, .fdi)の編集ができるanexdietでHD/FDに書き込んで使ってます。(DiskExplorerでも可能)