初版:2000/12/20
ANGIE WORKSHOP > 知識倉庫 > ブータブルCDを作る

ブータブルCDを作る

PartitonMagicやDrive Imageは便利なツールですが,OS自体が入っていないPCを操作する場合,フロッピーディスクから起動してやる必要が生じます。ところが,これらのフロッピーディスク版は最新バージョンでもそれぞれ3枚構成となり,起動に時間と手間がかかってしまいます。そこで,CD-Rを使ってこれらをCD-ROMドライブから起動するブータブルCDを作成しました。

以下にその作り方を説明します。

CONTENTS
1.ブータブルCDの仕組み
2.準備
3.作成手順
4.CONFIG.SYSとAUTOEXEC.BATの内容

nextprev 1.ブータブルCDの仕組み

PCのブータブルCDは,ElTritoという規格で仕様が定義されています。これはフロッピーディスクのイメージをCD上に格納しておき,BIOSがこれを仮想的なフロッピーディスクとして処理するというのが基本的な考え方です。規格自体にはフロッピーイメージではない方法も用意されているようですが,詳細は知りません。

CDからブートするとこの仮想的なフロッピーディスク(A:ドライブ)からブートしたような状態になります。MS-DOSやWindows 9xの起動ディスクをこの仮想ディスクとして入れておけば,そこからHDDやCD-ROMなどへアクセスしてさらに複雑な処理を続けることができるわけです。

起動ディスクにMS-DOSやWindows 9xを使う場合,CD-ROMへアクセスするためのデバイスドライバやMSCDEXを入れておく必要があります。これを入れないとCD-ROMからブートしたにも関わらずCD-ROMにアクセスできないという間抜けな状態になります。(笑)

nextprev 2.準備

CD-RライティングソフトとしてはWinCDR 5.0を使います。もちろん他のツールでもブータブルCDは作れますが,私はこれしか使っていませんので,以下はWinCDR 5.0を前提にした説明になります。

CDからブートするOSはMS-DOSモードでフロッピーから起動できるものなら何でもかまいませんが,FAT32区画を読み書きできた方が便利ですのでWindows 95OSR2/98/98SEを使うことをお勧めします。

ただし,以下の説明ではWindows 98にしか附属していないツールを一部で使っています。このためこの手順の通りに作るのであればWindows 98または98SEが必要になります。

nextprev 3.作成手順

  1. まずPartitonMagicやDrive Imageの起動フロッピーディスクを作成しておきます。これを元にしてCDから起動するためのデータを作ります。PartitionMagicに附属するBootMagicも起動できるようにすると便利ですので,これの起動フロッピーディスクも作ります。

  2. 起動フロッピーディスクを元にCD-ROMに格納するデータをHDD上に作ります。各起動ディスクからOS部分を除いたものをサブディレクトリに入れて行きます。以下は作成したディレクトリの構成です。

    ツール ディレクトリ 内容
    BootMagic 6.0
    \XBM6
    PATCH          <DIR>        00-12-05  12:08
    AUTOEXEC BAT           329  00-10-10   6:00
    LOADBM   SYS         2,287  99-08-01   4:06
    MBR      DAT           512  00-10-10   6:00
    MOUSE    COM        37,681  94-11-17  13:00
    PARTINFO EXE       384,844  00-10-09  21:31
    PQBOOT   EXE       110,766  00-09-29  15:33
    README   TXT         5,739  00-10-03   8:13
    WRPROG   EXE        85,940  00-09-29  15:34
    \XBM6\PATCH
    PATCH    CTL         3,433  92-03-19  22:20
    PATCH    EXE       169,883  92-03-19  22:20
    PATCH    FS            902  91-06-29  23:07
    PATCH    HLP        62,014  92-03-19  22:20
    PATCH    ICO           766  91-07-31  10:34
    PATCH    PIF           545  91-06-14  14:00
    PATCH    PRN         3,766  92-01-11  14:26
    QUICKREF TXT        22,870  92-03-16  17:02
    README   TXT         2,060  92-03-19  22:12
    Drive Image 4.0
    \XDI4
    AUTOEXEC BAT           768  00-09-26   4:00
    DIHELP   DAT        62,488  00-09-25  22:00
    MOUSE    COM        37,681  94-11-17  13:00
    MOUSE    INI            24  94-11-17  13:00
    PARTINFO EXE       379,284  00-09-26   4:00
    PQDI     EXE        29,582  00-09-26   4:00
    PQDI     OVL     1,088,941  00-09-26   4:00
    PQDI     PQG        47,412  00-09-26   4:00
    PQDI     RTC           596  00-09-25  22:00
    PQPACKET EXE        32,762  00-09-26   4:00
    UNICODE  FNT        77,046  00-09-26   4:00
    PartitionMagic 6.0
    \XPM6
    AUTOEXEC BAT           509  00-10-10   6:00
    AUTOEXE2 BAT           375  00-10-10   6:00
    MOUSE    COM        37,681  94-11-17  13:00
    PARTINFO EXE       384,844  00-10-10   6:00
    PMHELP   DAT        99,328  00-10-10   6:00
    PQMAGIC  EXE        34,320  00-10-10   6:00
    PQMAGIC  OVL     1,263,352  00-10-10   6:00
    PQMAGIC  PQG        43,356  00-10-10   6:00
    PQPB     RTC           478  00-10-10   6:00
    PQTMP    FIL             0  00-10-10   6:00
    PTEDIT   EXE       494,922  00-10-10   6:00
    RESCUE   TXT         1,504  00-10-10   6:00
    UNICODE  FNT       892,728  00-10-10   6:00

  3. Windows 98の起動ディスクを作っていなければ,コントロールパネルの「アプリケーションの追加と削除」を使ってこれを作成してください。この中に入っているツールをCDから起動するために使用します。

  4. CDから起動する際の仮想的な起動フロッピーの中身を作ります。フロッピーディスクをフォーマットしてWindows 98のシステムを転送します。次に以下の必要なファイルをコピーします。

    ファイル コピー元
    IO       SYS       224,150  99-05-05  22:22
    MSDOS    SYS             0  99-05-05  22:22
    COMMAND  COM       118,174  99-05-05  22:22
    フォーマット時に転送したWindows 98システム
    AUTOEXEC BAT           456  00-12-05   6:00
    CONFIG   SYS           488  00-12-05   6:00
    新規に作成(内容は後述)
    ANK16    FNT         4,096  99-05-05  22:22
    ANK19    FNT         4,864  99-05-05  22:22
    BILING   SYS         3,175  99-05-05  22:22
    FDISK    EXE        79,964  99-05-05  22:22
    FINDRAMD EXE         6,855  99-05-05  22:22
    HIMEM    SYS        36,647  99-05-05  22:22
    JDISP    SYS        22,664  99-05-05  22:22
    JFONT    SYS        22,790  99-05-05  22:22
    JKEYB    SYS        22,503  99-05-05  22:22
    JKEYBRD  SYS         1,494  99-05-05  22:22
    KANJI16  FNT       260,576  99-05-05  22:22
    OAKCDROM SYS        41,302  99-05-05  22:22
    RAMDRIVE SYS        17,623  99-05-05  22:22
    SETRAMD  BAT         1,253  99-05-05  22:22
    Windows 98起動ディスクの1枚目から
    MSCDEX   EXE        25,878  99-05-05  22:22
    Windows 98の C:\WINDOWS\COMMANDから

    内容のほとんどはWindows 98起動ディスクの1枚目と同じですから,それのコピーを元にしてMSCDEX.EXEを追加し,AUTOEXEC.BAT,CONFIG.SYSを入れ替えるのが早道かもしれません。

  5. 作成したフロッピーがブートできることを確認します。
    用意ができたら,WinCDRを起動してCD-Rを作成します。

  6. WinCDR 5.0は初期状態では起動時に「簡単ウィザード」という画面が表示され,順番に指示するだけでCD-Rを作成することが可能です。今回はこの「簡単ウィザード」を使って「ブータブルCDの作成」を指定します。

    ※「簡単ウィザード」が実行されないようになっている場合は,「設定」メニューの「基本設定」で「ウィザードを使用する」をチェックしてからWinCDRを再起動します。
  7. 「簡単ウィザード」の指示にしたがって,用意したフロッピーディスクと各ファイルを与えていきます。あとはこのまま焼いてしまえばブータブルCDの出来上がりです。

nextprev 4.CONFIG.SYSとAUTOEXEC.BATの内容

CONFIG.SYSとAUTOEXEC.BATをいかに作るかが,このようなブータブルCDを作る上で最も手間のかかる点です。細かい説明は省略しますが,ブート時の処理の流れは次のようになります。

以下は作成したCONFIG.SYSとAUTOEXEC.BATの内容です。
なお,CD-ROMはATAPIに限定しています。SCSI等のCD-ROMにも対応したより完璧な物を目指すならば,Windows 98の起動ディスクがやっているように各ドライバの組み込みを順次トライする仕組みを追加しなくてはなりません。

ファイル 内容
CONFIG.SYS
[menu]
menuitem=PMAGIC, PartitionMagic 6.0
menuitem=BMAGIC, BootMagic      6.0
menuitem=DIMAGE, Drive Image    4.0
menudefault=PMAGIC,30
menucolor=7,0

[COMMON]
LASTDRIVE=Z
FILES=10
BUFFERS=10
STACKS=9,256
DEVICE=HIMEM.SYS /TESTMEM:OFF
DOS=HIGH,UMB
DEVICE=OAKCDROM.SYS /D:MSCD001
DEVICEHIGH=BILING.SYS
DEVICEHIGH=JFONT.SYS /MSG=OFF
DEVICEHIGH=JDISP.SYS /HS=LC
DEVICEHIGH=JKEYB.SYS /106 JKEYBRD.SYS

[PMAGIC]
DEVICEHIGH=RAMDRIVE.SYS /E 4096

[BMAGIC]

[DIMAGE]
AUTOEXEC.BAT
@echo off
loadhigh MSCDEX.EXE /D:MSCD001 /L:Q

goto %CONFIG%

:PMAGIC
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=
copy Q:\XPM6 %RAMD%: > NUL
%RAMD%:
PQMAGIC
goto QUIT

:BMAGIC
Q:
cd \XBM6
call AUTOEXEC.BAT
goto QUIT

:DIMAGE
Q:
cd \XDI4
MOUSE
PQPACKET
PQDI.EXE
goto QUIT

:QUIT

更新履歴

2000/12/20 初版

top access