2021年12月3日にPC-9801実機を使い、Floppy Diskをイメージ化する方法について書きました。
https://blog.goo.ne.jp/masaharu221208/e/f350e9349efe79170b26b33007ce1db7
PC98を使っていた大昔、このようなイメージ化するソフトがあることを知らなかったのでバックアップを取るためMS-DOSの2つの隠しファイル IO.SYS, MSDOS.SYSを
attrib -s -h -r ****.sys で見えるようにして、MOディスクに保存していました。
このFloppyの生のファイルのままだとT98-Nextなどのエミュレータでは使えないので、
イメージ化することにしました。
方法として、この生ファイルを実機のPC98のフロッピーにコピーしたのち、diskconv.exeやmahalito.exeなどでイメージ化してもいいのですが、Windows機のT98-Next上で作成することにしました。
KeyPointは エディタeditdisk.exe が 仮想ハードディスク hdi あるいは仮想フロッピーディスク fdi を直接編集できること、および変換アプリ vfic.exe が fdi を T98-Nextのndfに変換できることを利用する点です。
具体的な手順としては下記です。
Step-1 HddImageFileMaker.exeで仮想ハードディスクを作成
例えばこれを freeHD.hdiとします。
この hdi は editdisk.exe で中身を編集できるので、ここにFloppy diskの生のファイルをコピーします。
このようなfreeHD.hdiを用意します。
![](https://blogimg.goo.ne.jp/user_image/3e/f1/4e39368fca632f620b393194014eb5d6.jpg)
Step-2 T98-Nextを起動
HD-1にはシステムの入った仮想HD。ここではMSDOS50AH.hdi
HD-2には freeHD.hdi
起動後、freeHDをフォーマットし、領域確保しておきます。
![](https://blogimg.goo.ne.jp/user_image/63/02/7b45323a1347b21207953378d335142d.jpg)
Step-3 editdisk.exe で freeHD.hdiに生ファイルをドラッグ・ドロップでコピー
右側はNASに保存していたFloppyの生ファイルです。
左側はeditdisk.exeで開いたfreeHD.hdiでドラッグ&ドロップでコピーした状態です。
![](https://blogimg.goo.ne.jp/user_image/0e/de/78f98cf75a1552dcb5c7ca5827c59a59.jpg)
Step-4 仮想FDをT98-Nextで作成
作成したFDを disk-1.NFDとします。
![](https://blogimg.goo.ne.jp/user_image/24/10/475839649738a1c3685e5d5622e25daa.jpg)
![](https://blogimg.goo.ne.jp/user_image/23/20/382b5a210cc469ee530d5c46f491168d.jpg)
Step-5 disk-1.NFDをEjectしてから、起動後フォーマット
![](https://blogimg.goo.ne.jp/user_image/0e/29/cb68fa8f269bde227e2b9a1cf23b4a5e.jpg)
Step-6 freeHD.hdiにコピーした生ファイルをC:ドライブ(disk-1.nfd)にコピー
![](https://blogimg.goo.ne.jp/user_image/0e/05/308a47c5a64e92e6d0fc5e6b17593522.jpg)
Step-7 disk-1.NFDに正しくコピーできたかdisk-1.nddで起動してみる
ここで問題が発生。間違いなくすべてのファイルがコピーされているのに
No system files の警告で起動できず
![](https://blogimg.goo.ne.jp/user_image/0e/62/8b3d02d73cfa7aa583529ba1566d2ff6.jpg)
Step-8 システムファイルのみコピー
いろいろ試行錯誤した結果、io.sys, msdos.sys, command.comのファイルのみ
先にコピーした後、残りのファイルをコピーしたらOKになりました。
なぜこのようなことになるのか、原因は不明です。
![](https://blogimg.goo.ne.jp/user_image/5b/be/3299298637b1f78ea5322f4af7b7254f.jpg)
3systemのみで起動 OK
![](https://blogimg.goo.ne.jp/user_image/3f/93/81efcc50a637b3d6e237f55d8b3506c7.jpg)
残りファイルをコピー OK
![](https://blogimg.goo.ne.jp/user_image/14/94/78aad5548a3b314ce836a1360b8706d2.jpg)
![](https://blogimg.goo.ne.jp/user_image/37/da/a30f21f72eceecd45496841df741085c.jpg)
Step-9 diskconv.exeでfloppyをイメージ化
C:のFloppyをdiskconv.exeでイメージ化しb:ドライブに\disk-1.imgとして保存
![](https://blogimg.goo.ne.jp/user_image/52/83/f432155c6fa11f8724ada518d3aca3fb.jpg)
Step-10 b:ドライブのfreeHD.hdiをeditdisk.exe で編集し、disk-1.imgを取り出す
このdisk-1.imgをNASやMOなどにドラッグ&ドロップし保存。
![](https://blogimg.goo.ne.jp/user_image/32/93/aef92b99f003ef33d9fec717d92804a3.jpg)
別の方法
editdisk.exeを使い、直接仮想FDを編集する方法。
Step-1 仮想FDをT98-Nextで作成
作成したFDを disk-1.NFDとします。
Step-2 disk-1.NFDをEjectしてから、起動後にdisk-1.nfdをセットしフォーマット
Step-3 disk-1.NFDを vfic.exe でdisk-1.fdiに変換
![](https://blogimg.goo.ne.jp/user_image/23/25/0e0cf87a9fb09b0dc2dbf5b7f30f3b4c.jpg)
Step-4 editdisk.exe で disk-1.fdiに生ファイルをドラッグ&ドロップでコピー
![](https://blogimg.goo.ne.jp/user_image/56/6f/19881407b93ae20370f464ace351f510.jpg)
Step-5 vfic.exe で disk-1.fdiをdisk-1.nfdに変換する
Anex86の fdi はT98-Nextでは使えないため、nfdに戻す。
![](https://blogimg.goo.ne.jp/user_image/59/40/1f7224c5e0dd552b01b7ab10274fc059.jpg)
Step-6 T98-Nextでdisk-1.nfdをセットし、diskconv.exeでイメージ化 fig14, fig15
あとは方法1のStep-9以降と同じ
![](https://blogimg.goo.ne.jp/user_image/43/aa/a644e3a5d3e43162e2b29ca22965630b.jpg)
Step-7 念のため、方法1のStep-7で起こった問題がないか確認。
disk-1.nfdで起動できるかチェックしておく。
同じ問題が起こり、このdisk-1.nfdでは起動できなかったので、Step-6 のイメージ化は失敗。
色々確認したところ、この第2の方法でもStep-4の段階で、
io.sys, msdos.sys, command.com のシステムを最初にコピーしてから、
残りをコピーすればOKとなることが判明。
https://blog.goo.ne.jp/masaharu221208/e/f350e9349efe79170b26b33007ce1db7
PC98を使っていた大昔、このようなイメージ化するソフトがあることを知らなかったのでバックアップを取るためMS-DOSの2つの隠しファイル IO.SYS, MSDOS.SYSを
attrib -s -h -r ****.sys で見えるようにして、MOディスクに保存していました。
このFloppyの生のファイルのままだとT98-Nextなどのエミュレータでは使えないので、
イメージ化することにしました。
方法として、この生ファイルを実機のPC98のフロッピーにコピーしたのち、diskconv.exeやmahalito.exeなどでイメージ化してもいいのですが、Windows機のT98-Next上で作成することにしました。
KeyPointは エディタeditdisk.exe が 仮想ハードディスク hdi あるいは仮想フロッピーディスク fdi を直接編集できること、および変換アプリ vfic.exe が fdi を T98-Nextのndfに変換できることを利用する点です。
具体的な手順としては下記です。
Step-1 HddImageFileMaker.exeで仮想ハードディスクを作成
例えばこれを freeHD.hdiとします。
この hdi は editdisk.exe で中身を編集できるので、ここにFloppy diskの生のファイルをコピーします。
このようなfreeHD.hdiを用意します。
![](https://blogimg.goo.ne.jp/user_image/3e/f1/4e39368fca632f620b393194014eb5d6.jpg)
Step-2 T98-Nextを起動
HD-1にはシステムの入った仮想HD。ここではMSDOS50AH.hdi
HD-2には freeHD.hdi
起動後、freeHDをフォーマットし、領域確保しておきます。
![](https://blogimg.goo.ne.jp/user_image/63/02/7b45323a1347b21207953378d335142d.jpg)
Step-3 editdisk.exe で freeHD.hdiに生ファイルをドラッグ・ドロップでコピー
右側はNASに保存していたFloppyの生ファイルです。
左側はeditdisk.exeで開いたfreeHD.hdiでドラッグ&ドロップでコピーした状態です。
![](https://blogimg.goo.ne.jp/user_image/0e/de/78f98cf75a1552dcb5c7ca5827c59a59.jpg)
Step-4 仮想FDをT98-Nextで作成
作成したFDを disk-1.NFDとします。
![](https://blogimg.goo.ne.jp/user_image/24/10/475839649738a1c3685e5d5622e25daa.jpg)
![](https://blogimg.goo.ne.jp/user_image/23/20/382b5a210cc469ee530d5c46f491168d.jpg)
Step-5 disk-1.NFDをEjectしてから、起動後フォーマット
![](https://blogimg.goo.ne.jp/user_image/0e/29/cb68fa8f269bde227e2b9a1cf23b4a5e.jpg)
Step-6 freeHD.hdiにコピーした生ファイルをC:ドライブ(disk-1.nfd)にコピー
![](https://blogimg.goo.ne.jp/user_image/0e/05/308a47c5a64e92e6d0fc5e6b17593522.jpg)
Step-7 disk-1.NFDに正しくコピーできたかdisk-1.nddで起動してみる
ここで問題が発生。間違いなくすべてのファイルがコピーされているのに
No system files の警告で起動できず
![](https://blogimg.goo.ne.jp/user_image/0e/62/8b3d02d73cfa7aa583529ba1566d2ff6.jpg)
Step-8 システムファイルのみコピー
いろいろ試行錯誤した結果、io.sys, msdos.sys, command.comのファイルのみ
先にコピーした後、残りのファイルをコピーしたらOKになりました。
なぜこのようなことになるのか、原因は不明です。
![](https://blogimg.goo.ne.jp/user_image/5b/be/3299298637b1f78ea5322f4af7b7254f.jpg)
3systemのみで起動 OK
![](https://blogimg.goo.ne.jp/user_image/3f/93/81efcc50a637b3d6e237f55d8b3506c7.jpg)
残りファイルをコピー OK
![](https://blogimg.goo.ne.jp/user_image/14/94/78aad5548a3b314ce836a1360b8706d2.jpg)
![](https://blogimg.goo.ne.jp/user_image/37/da/a30f21f72eceecd45496841df741085c.jpg)
Step-9 diskconv.exeでfloppyをイメージ化
C:のFloppyをdiskconv.exeでイメージ化しb:ドライブに\disk-1.imgとして保存
![](https://blogimg.goo.ne.jp/user_image/52/83/f432155c6fa11f8724ada518d3aca3fb.jpg)
Step-10 b:ドライブのfreeHD.hdiをeditdisk.exe で編集し、disk-1.imgを取り出す
このdisk-1.imgをNASやMOなどにドラッグ&ドロップし保存。
![](https://blogimg.goo.ne.jp/user_image/32/93/aef92b99f003ef33d9fec717d92804a3.jpg)
別の方法
editdisk.exeを使い、直接仮想FDを編集する方法。
Step-1 仮想FDをT98-Nextで作成
作成したFDを disk-1.NFDとします。
Step-2 disk-1.NFDをEjectしてから、起動後にdisk-1.nfdをセットしフォーマット
Step-3 disk-1.NFDを vfic.exe でdisk-1.fdiに変換
![](https://blogimg.goo.ne.jp/user_image/23/25/0e0cf87a9fb09b0dc2dbf5b7f30f3b4c.jpg)
Step-4 editdisk.exe で disk-1.fdiに生ファイルをドラッグ&ドロップでコピー
![](https://blogimg.goo.ne.jp/user_image/56/6f/19881407b93ae20370f464ace351f510.jpg)
Step-5 vfic.exe で disk-1.fdiをdisk-1.nfdに変換する
Anex86の fdi はT98-Nextでは使えないため、nfdに戻す。
![](https://blogimg.goo.ne.jp/user_image/59/40/1f7224c5e0dd552b01b7ab10274fc059.jpg)
Step-6 T98-Nextでdisk-1.nfdをセットし、diskconv.exeでイメージ化 fig14, fig15
あとは方法1のStep-9以降と同じ
![](https://blogimg.goo.ne.jp/user_image/43/aa/a644e3a5d3e43162e2b29ca22965630b.jpg)
Step-7 念のため、方法1のStep-7で起こった問題がないか確認。
disk-1.nfdで起動できるかチェックしておく。
同じ問題が起こり、このdisk-1.nfdでは起動できなかったので、Step-6 のイメージ化は失敗。
色々確認したところ、この第2の方法でもStep-4の段階で、
io.sys, msdos.sys, command.com のシステムを最初にコピーしてから、
残りをコピーすればOKとなることが判明。
HDDのパーティションの先頭セクタに記録されているプログラム(IPL)が、ルートディレクトリおよび
データ領域の先頭にIO.SYSがある前提で読み込む為です。他のファイルがあると起動しません。
次にIO.SYSは、IO.SYSの次の位置にMSDOS.SYSがある前提で読み込みます。
これも別のファイルがあると起動が途中で止まります。
なおCOMMAND.COMはルートディレクトリにあればよく、それ以外には位置は問いません。