USBメモリでWindows 98の起動ディスクを作る
フロッピーディスクドライブ(FDD)はほとんどのメーカーが生産を終え、現在唯一フロッピーディスク(FD)を生産しているソニーも2011年3月で生産を打ち切ると宣言している。
FDDやFDが入手困難になるのも時間の問題なので、FDを一切使わずにしかもWindows XP(Vista, 7は未確認)上で起動ディスクを作る方法を紹介。
本来の起動ディスクの内容
→ Windows 98の起動ディスクのファイル一覧[Win98+7]
あれこれ作業が非常に面倒なので、起動ディスクイメージを自動で作成するツールを作りました。
下記リンクに置いてありますので詳しくはそちらを参照してください。(2011/12/06)
→ https://radioc.web.fc2.com/
以下、昔に書いたのをそのまま残しておきます。
○必要なもの、使用するソフト
・Win98のインストールメディア
→ 通常版、アップグレード版、98SEアップデート版のいずれもOK。ただしOEM版はどうなのか知らない。
・読み書き可能なUSBメモリ
→ 容量は16MBくらいあれば十分足りる。現在出回っているUSBメモリの最下位モデルでも4GBあるので余裕。
いっそのことWin98のインストールCDの内容を丸ごと詰めてもいいかもしれない。
・USB-HDDブートに対応するマザーボード(BIOS)
→ BIOS設定の起動順位の設定にUSB-HDDの項目があれば対応している。
・Virtual Floppy Drive(http://chitchat.at.infoseek.co.jp/vmware/indexj.html)(SourceForge)
仮想FDDマウントソフト。仮想的にFDDを作ってFDイメージファイルを読み書きするソフト。同じような機能を持ったソフトならこれでなくてもよい。
・UNetbootin (http://unetbootin.sourceforge.net/)
起動可能なイメージをUSBメモリなどに書き込める優れモノ。
実際にはイメージファイルのデータをそのままUSBメモリに書き込んでいるのではなく、仲介役となるブートローダーが存在してそのブートローダーがイメージファイルを読み込んで制御を渡している。
以下の作業はすべてWindows XP上で行っている。
○必要なファイルを集める
Windows 98のインストールCDから必要なファイルを集める。
Win98の起動ディスクは2枚あるが、これはIDEデバイスとSCSIデバイスの両方をサポートするためのドライバを含んでいるからである。
今回はSCSIデバイスを使わないという前提でSCSIデバイスドライバを省き、フロッピー1枚に収まるように起動ディスクを作ってみる。
*必要となるファイル
1998/06/12 20:01 285,178 EBD.CAB 1998/06/13 05:01 93,242 EXTRACT.EXE 1998/06/12 20:01 79,948 FDISK.EXE 1999/05/05 22:22 6,855 FINDRAMD.EXE 1998/06/12 20:01 36,647 HIMEM.SYS 1998/06/12 20:01 224,150 io.sys 1998/06/12 20:01 22,664 JDISP.SYS 1998/06/12 20:01 22,790 JFONT.SYS 1998/06/12 20:01 22,503 JKEYB.SYS 1998/06/12 20:01 1,494 JKEYBRD.SYS 1998/06/12 20:01 260,576 KANJI16.FNT 1998/06/12 20:01 41,302 OAKCDROM.SYS 1999/05/05 22:22 17,623 RAMDRIVE.SYS 1999/05/05 22:22 1,253 SETRAMD.BAT 1998/06/13 05:01 45,379 smartdrv.exe 1998/06/12 20:01 4,096 ANK16.FNT 1998/06/12 20:01 4,864 ANK19.FNT 1998/06/12 20:01 3,175 BILING.SYS 1998/06/12 20:01 118,164 COMMAND.COM
圧縮ファイルの1つ1つを探るのも酷なので、こちらの方のを参考にバッチファイルを作ってみた。
set FD_TEMP=C:\FD set W98SETUP=E:\WIN98 mkdir %FD_TEMP% cd %W98SETUP% extract /l %FD_TEMP% /a base5.cab ebd.cab extract /l %FD_TEMP% /a base5.cab command.com extract /l %FD_TEMP% /a base5.cab winboot.sys extract /l %FD_TEMP% /a base5.cab oakcdrom.sys ramdrive.sys setramd.ebd findramd.exe extract /l %FD_TEMP% /a base5.cab himem.sys jfont.sys ank16.fnt ank19.fnt kanji16.fnt extract /l %FD_TEMP% /a base5.cab jdisp.sys biling.sys jkeyb.sys jkeybrd.sys fdisk.exe copy extract.exe %FD_TEMP% copy smartdrv.exe %FD_TEMP% cd %FD_TEMP% ren winboot.sys io.sys ren setramd.ebd setramd.bat
ここではCDドライブのセットアップファイルがあるフォルダーをE:\WIN98、コピー先をC:\FDとしている。
Windows Vista以降で実行する場合はC:\FDではなく他の書き込み可能な場所に変えておくこと。
フォルダーパスにスペースが含まれていると正しく処理できないので注意。
問題がなければ19個のファイルがコピーされるはず。
○config.sysとautoexec.batを作る
config.sys
FILES=30 BUFFERS=40 STACKS=9,256 DEVICE=himem.sys DEVICEHIGH=biling.sys DEVICEHIGH=jfont.sys /MSG=OFF DEVICEHIGH=jdisp.sys /HS=LC DEVICEHIGH=jkeyb.sys jkeybrd.sys DEVICEHIGH=oakcdrom.sys /D:MSCD001 DEVICEHIGH=ramdrive.sys /E 8192 LASTDRIVE=Z DOS=HIGH,UMB
autoexec.bat
@ECHO OFF set EXPAND=YES set DIRCMD=/O:N set LglDrv=27 * 26 Z 25 Y 24 X 23 W 22 V 21 U 20 T 19 S 18 R 17 Q 16 P 15 set LglDrv=%LglDrv% O 14 N 13 M 12 L 11 K 10 J 9 I 8 H 7 G 6 F 5 E 4 D 3 C cls call setramd.bat %LglDrv% set LglDrv= mkdir=%RAMD%:\temp > NUL set temp=%RAMD%:\temp set tmp=%RAMD%:\temp copy /B /Y command.com %RAMD%:\ > NUL set comspec=%RAMD%:\command.com path=%RAMD%:\;a:\;%CDROM%:\ copy /B /Y extract.exe %RAMD%:\ > NUL %RAMD%:\extract /y /e /l %RAMD%: ebd.cab > NUL echo 診断ツールが %RAMD% ドライブに読み込まれました。 echo. lh %ramd%:\MSCDEX.EXE /D:MSCD001 /L:%CDROM% smartdrv 2048 echo. set CDROM=
これらのファイルをテキストエディタで作ったらC:\fdに入れる。
これにて準備完了。
○起動ディスクのディスクイメージを作る
1. 仮想FDマウントソフト「Virtual Floppy Drive」(http://chitchat.at.infoseek.co.jp/vmware/indexj.html) をダウンロード、解凍する。
2. Virtual Floppy Drive(以下VFD)を解凍したらその中のvfdwin.exeを実行。
ドライバをインストール、開始してドライブ文字を適当に割り当て、1.44MBのディスクイメージを作成。
3. エクスプローラからフロッピーディスクドライブ(VFDで作った仮想FDD)を右クリック→フォーマット。
「MS-DOSの起動ディスクを作成する」にチェックを入れてフォーマットを行う。
4. フォーマットが終わったらそのフロッピーディスクドライブを開いてmsdos.sys以外の全てのファイルを削除する。
(※msdos.sysはシステムファイル属性が付いているため通常はエクスプローラ上に表示されない。)
5. C:\fdにある全てのファイルをFDドライブに移す。
6. VFD上でイメージを保存、閉じる。
○ディスクイメージをUSBメモリに書き込む
7. USBメモリを接続する
8. Live USBドライブ作成ソフト「UNetbootin」(http://unetbootin.sourceforge.net/)をダウンロード、実行する。
9. 「Diskimage」にチェックを入れ先ほどのディスクイメージファイルを選択。
「Drive」でUSBメモリのドライブ文字を選んで「OK」をクリックすると書き込みが始まる。
USBメモリはFAT32フォーマットであれば必ずしも空である必要はないが、念のためにも重要なファイルは別の場所に移しておくことをお勧めする。
ブート時にCDドライブを認識できないとのエラーが出る場合、シリアルATA接続のCDドライブがAHCIモードになっている場合がある。
その際はBIOS設定などでIDE互換モードに変更してみる。
USBブート時はHDDよりもUSBメモリのほうが優先度が高いため、USBメモリのドライブがCドライブになってしまう。
なのでWindowsインストール時はSYSコマンドでインストール先のHDDパーティションにシステムを転送。
USBブートディスクの中身もすべてHDDに移してからUSBメモリを使わずにHDDから起動する。
旧ブログでのコメント
AUTHOR: トオリス・ガリー
URL:
DATE: 2012/03/31 23:18:19
今更なのですが……小ネタ
Windows98(但しUSBメモリドライバ導入済み)の上であれば、USBメモリを「起動専用」リムーバブルメティアとしてフォーマットできるのではないでしょうか……?
その後不要ファイルを削り、必要なら起動関係を書き換え、必要ファイルを移動してやれば、Windows98そのものを収めたUSBメモリも作れるかと……。
EeePC 4G-X上で、こうして作成したUSBメモリからDOS状態での起動までは確認しました。
Windows98の起動が確認できたらまたご報告したいと思います。
AUTHOR: calisii
URL:
DATE: 2012/04/01 01:23:34
Re:今更なのですが……小ネタ
トオリス・ガリー さん。
こんな僻地(当サイト)をご覧いただき、そしてコメントありがとうございます。
>Windows98上であれば、USBメモリを「起動専用」リムーバブルメティアとしてフォーマットできるのでは・・・?
もともとこのページは、起動ディスクを紛失かつ作成できない環境にあるWin98のためにWinXP上でWin98の起動ディスクを作ろうというものでした。なのでWin98が使えないことが前提になっています。
>Windows98そのものを収めたUSBメモリも作れるかと……。
何度かやろうと考えたことはありますが、わざわざUSBメモリに入れるメリットが思い浮かばないので試したことがありません。今ではWin98が動作する環境がなくなってしまったので、試しようがありません。
まあそれはともかく、USB起動にぜひ挑戦してみて下さい。