PC-98ハードディスクのマスタブートレコードのファイル化
RMBR, WMBR 説明書
Copyright (C) 2001-2010,2020 まりも
NEC PC-98では、ハードディスクは、DISK BIOSにより、その先頭セクタ0に書いてあるプログラム(IPLという)が、メモリに読み込まれてまず実行されます。そのあと、各OSの入っているブートセクタに制御が移り、OSが起動します。セクタ1には、ディスクパーティションの管理情報が書かれています。これらに続いて、「固定ディスク起動メニュープログラム」のセクタがありますが、起動用のハードディスクでなければ起動メニューは存在していなくてもかまいません。
つまりとくに重要なのは先頭の2つのセクタであるということになります。AT互換機でも大きさは異なりますが同様のセクタがあり、一般にその内容のことを、マスター・ブート・レコード(MBR)と呼んでいます。
本ソフトは、PC-98の MBRをファイル化して保存したり(RMBR.EXE)、一旦ファイル化したものを元のハードディスク装置に書き出す(WMBR.EXE)プログラムです。いざというときのために重要な部分をファイル化して保存するのが目的です。MBRの内容が不正になると、システムは起動だにしなくなるほか、パーティションテーブルが破壊されれば、すべてのファイルを失う(みつからなくなる)ことになるので、使用にあたっては十分注意する必要があります。
なお、HDDが複数ある場合、どのディスクの MBR が読み込まれるかは、「メモリスイッチ」設定の「ブート装置」によっています。これが「標準」の場合は、まずフロッピー、ついで、内蔵(IDE)固定ディスク#1から順に見つかった先頭のディスク装置が選ばれ、起動することになっています。
rMBR
MS-DOSまたはWindows95/98のMS-DOSモードのコマンドラインより、
RMBR
と打ちます。これにより、複数HDDがある場合は選択メニューが出ますので、適宜選んでください。作成されるファイルは、MBR.xx というファイルで、xxには、当該HDDのデバイスユニットアドレスというものの値が入ります。このアドレス値は、内蔵(IDE、もしくはSASI)の場合、80hから順に割り当てられるものになります。SCSIディスクの場合は、A0h+ SCSI IDの値となります。
たとえば ID 4のドライブのこのアドレスは、A4hであるので、MBR.A4などというファイルが出力されます。コマンドラインオプションなしで起動した場合、このファイルは、少なくとも7680バイトのバイナリファイルになります。バイナリエディタで編集することは出来ますが、フォーマットを崩せば全く意味のないファイルになってしまいます。1バイトたりとも位置をずらしてはいけません。
(Ver. 1.5からの変更)
コマンドラインオプションとして、 -nomenu (/nomenu あるいは大文字でも同じ)を付加すると、MBRのすぐ後に存在している「固定ディスク起動メニュー」プログラムも含まずにファイル化します。オプション無しの場合は、必ず起動メニューも含んで出力するように、Version1.50からは仕様を変更しました。Version1.56からは標準フォーマットされているディスクには37セクタ(×256B)をファイル化するようにしました。
wMBR
RMBRで作成したMBRファイルを、元のドライブに書き出すプログラムで、 コマンドラインより、
と打ちます。対象ハードディスクは、拡張子が表していますから、不用意にMBRファイルの拡張子を変更してはいけないません。しかし、あるディスクから別のディスクにMBRをコピーしたいなどという場合は、あえて拡張子を変更することで、それが可能になります。しかしパーティションテーブルも含まれているので、異なるHDDのMBRを不用意にコピーしてはいけません。
起動メニューの内容を含むかどうかは、ファイルサイズにより判断しています。7680バイト以上の場合は、起動メニューも含まれているファイルです。起動メニューが通常のものであれば、ディスク署名も含んで9216バイトで出力されるはずです。いっぽう1024バイトの場合は、 MBRとパーティションテーブルのみの書き出されたファイルです。
このプログラムはNEC PC-9801/9821/H98シリーズ専用です。PC/AT互換機では使用できません。Windows9x のGUIモード下では、wMBRは使用できません。
DISK BIOSでのアクセスなので、ブートROMのないSCSIカードや、 USB,IEE1394に接続されたハードディスクのMBRを処理することはできません。
ハードディスクを一撃でまっさらにもできる、大変に危険なプログラムであることを熟知の上で、各自の自己責任で使って下さい。とくに、ファイル化した内容が、実は他のディスクのものだったり、あるいはだいぶ以前にフォーマットしたときのものであったりすると、書き込んだ情報は誤ったものとなってしまいます。十分注意して下さい。
このプログラムはフリーソフトウェアです。自由に使用してよい代わりにサポートのようなものはありません。直接・間接的に、このプログラムの運用の結果に何があっても、作者は一切責任をとることはないものとします。
2020-4-20 本説明文書、最終改訂
日付 版 内容 2001. 2. 7 1.10 rMBRで起動メニュー保存の-menu オプションを追加 2001. 4. 4 1.30 rMBRの表示誤り修正、セクタ数可変な起動メニューに対応 2001. 4.20 1.40 ハードディスク名表示誤り修正 2001. 4.22 1.50 wMBRでファイル名を変更すると書き込めなかった誤り修正 rMBRのオプションを変更、デフォルトでメニューも含む 2010. 4. 1 1.55 説明文改訂、HDD容量表示桁数を増やし2032GBまで可能とした 2019.12.29 1.56 標準フォーマットのときFAT直前までを出力するようにした 2020. 4.20 1.57 MBRがゼロで埋まっているとrMBRがハングアップするのを修正