【Windows 7/8.1/10】 PC98(1.2MB)MS-DOS形式でフォーマットする方法

Windows
追記:2018/04/17
Windows10の場合は、バージョン1607(Anniversary Update)[リリース日2016年8月2日]以降は、この記事の方法は使えないようです。

現在、Windows10(バージョン 1709)で記事の方法を確認してみたら、フォーマットの最後で失敗してしまいフォーマットできません。数枚試してもダメでした。フォーマットはダメだけど、1.2MBのFDの読み書きはできました。

普通に進みましたが、最後に、ボリュームラベルを入力して下さいというメッセージが出て、特にラベルが不要だったので、そのままEnterを押して進ませました。しかし、最終的にフォーマットに失敗しましたというメッセージが出ました。


次は、エクスプローラ上で、1.44MBにフォーマットしてみました。これは、問題なく完了しました。
そのFDに対して、今度は、コマンドプロンプト上から、format a: /f:1.23 として、1.2Mフォーマットを試してみます。だめでした。
2016/10/18 12:53
今頃FDDの整理中:KazHatブログ

検索して調べると、私と全く同じ症状なので、おそらく、Anniversary Update以降は使えないというのは正しい情報のようです。

フォーマットに失敗してしまったFDも、Windowsの標準のフォーマットツールでフォーマットすると1.44MBのFDとして利用できるので、捨てないほうが良いです。

PC98(1.2MB)MS-DOS形式でフォーマットする方法

BUFFALO FD-USB(USB接続3.5インチフロッピーディスクドライブ) -Amazon
動作確認に使用したのは、上記のUSB-FDDで、中身がSONYの3モードFDDです。

追記 2016/03/07:
※コメント欄参照
・「㈱オウルテック(Owitech)」のUSBフロッピードライブ「D353FUEシリーズ(エクスターナルFDD)」でもOK

STEP1


 32ビット版のコマンドプロンプトを起動する
 ファイル名を指定して実行のところに「%SystemRoot%\SysWOW64\cmd.exe」と入力する

STEP2


 コマンド入力 「format a: /f:1232」
 ※「format a: /FS:FAT /A:1024 /T:77 /N:8」でもOK

 「無効なパラメーターです」と出る場合は、32ビット版のコマンドプロンプトでない。

補足

メディアが無効か、トラック 0 に問題があります。このディスクは使用できません。
フォーマットに失敗しました。

こうなった場合は、再度実行すると良いみたい。
1.44MでフォーマットされたFDを、1.23Mでフォーマットすると出るエラーのような気がします。
この状態で再度、1.23Mでフォーマットかけると成功します。

FDのメディアは1.44FDでも問題ない

PC98用の2HDとか、PC98対応の2HDでなくても、1.23MのFDとして使えます。フォーマットできればOKです。

2HDディスクで代用しますか・・・
2HDの穴をテープでふさぐと2DDとして認識されます。
MSXPLAYerで恥ずかしい自作ゲーム:おぢさんがいぢってあげる

あと、2DDのFDがない場合でも、2HDを2DDとしてフォーマットすればたいていは認識します。形状は穴が開いてるかどうかで、その穴で識別している場合はテープでふさぐ必要があります。たしか、みてないドライブのほうが多かった気もしなくはないんですけどね。

情報源

情報源

1. コマンドプロンプトを起動します。

ただし64ビット版Windowsの場合は32ビット版(WOW64)のコマンドプロンプトを起動します。具体的には、ファイル名を指定して実行や検索チャームから「%SystemRoot%\SysWOW64\cmd.exe」を実行します。


例えば、AドライブをPC98形式でフォーマットする場合は「format a: /f:1232 /u」というように実行します。J-3100形式でのフォーマットもできるようですが、実機がないのでちゃんと確認したわけではありません。

フォーマット中に「メディアが無効か、トラック0に問題があります。このディスクは使用できません。フォーマットに失敗しました。」というメッセージが出た場合は、一度ディスクを取り出して再度セットしてから同じようにフォーマットを実行します。それでもダメならハードウェアの相性が悪いということです。
Windows 8にてフロッピーディスクをPC98形式でフォーマットする - CELLA.DAT

コマンドプロンプトに64ビット版?32ビット版があるのを知らなかった、上記にも書いているのに読み飛ばしていたということでちょっと、ハマりました。

補足情報

まず、1.23MBのFDとはどういうフォーマットなのかと言いますと
セクタサイズ: 1,024バイト
セクタ数: 8
ヘッド数: 2
シリンダ数: 77
となっています。
>FORMAT A: /FS:FAT /V:PC-98 /A:1024 /T:77 /N:8
と1.23MBフォーマットの条件を強制的に指定してやったところ
Windows XPで 2HD 1.23MB FDフォーマット : SP:T-48n

XPでもOKらしい。

x64のWindowsではコマンドプロンプトも当然64ビットです。
今回の検証は32ビット版のコマンドプロンプトが必要なんですが有りました。
64ビット版 C:\Windows\System32\cmd.exe
32ビット版 C:\Windows\SysWOW64\cmd.exe
徒然なるままに x64版Windowsで32ビットアプリケーションから64ビットアプリケーションを呼び出すには%Systmroot%\Sysnativeを指定する

フォルダ名で誤解してたようで、上記のようになってます。

通常、アプリケーションがDLL等を読みに行く先は %windir%\System32\ 以下だが、ここには64bit用のものが置かれている。64bitアプリケーションであればこれで問題ないが、32bitアプリケーションの場合は32bit用のファイルを読む必要がある。しかし、ほとんどのDLLは32bitと64bitで同一の名前になっているため、32bit用のファイルは%windir%\SysWOW64\ 以下に置かれている。つまり、アプリケーションが32bitか64bitかで同一のDLLを読む場合でも見に行く先を変える必要がある。これをOSで制御して32bitの場合は透過的に%windir%\SysWOW64 を見せているのがファイルシステムリダイレクタ。
64bit Windows 上で 32bit アプリケーションから 64bit アプリケーションを実行する方法 - 日記のような何か

こんなのとか・・・。
逆にいうと、互換性をかなり維持しているということなんだろうけど・・・・。

【ブログ内で関連ある記事】


スポンサーリンク