98HDDをディスクイメージに変換しよう


戻る

はじめに

今はもうすっかり過去のパソコンとなってしまったPC98。 往年の名機PC98。 かつての国民機PC98。 めまぐるしく変化するパソコン業界のこと、 PC98はまるで大昔のパソコンであるかのように語られますが、 ハードウェア的にはそれほど昔のものでもないわけです。 全体から見れば数%にも満たないですが、PC98はまだまだ「現役機種」なのです。
後期(もしくは末期:P)のPC98はほとんど現在のAT互換機と同じ構成をしていました。 HDDについてはかなり以前から、現在でもAT互換機では標準となっているIDEが使われており、 先進的にもPC98からDOS/Vに移行した当時の非国民、 すなわち現代の主流派たちはPC98からハードディスクだけ取り外して使っていたりしたものです。
さて現代の主流派ですが、いまだ98に未練をもってしがみついている、 というわけではなく、いずれ到来するであろう98実機のハードウェア的寿命に先駆けて、 その資産をソフトウェア化して保存しようとしている人たちがいます。 その成果物が、いわゆる「98エミュレータ」です。
98エミュレータはPC98のあらゆるハードウェアをソフトウェアで実現するもので、 たとえばFM音源サウンドはソフトウェア的な計算によって実現され、スピーカから音が出力されます。 グラフィックスチップの機能もエミュレータが肩代わりし、 あたかもそれが一つの画面であるかのようにウィンドウの中に表示されます。 ディスクドライブも同様で、これは実際のデバイスを駆動することなく「ファイル」からソフトウェア的に入出力されます。 この保存されたディスク代わりのファイルが、ディスクイメージと呼ばれるものです。
フロッピーディスクは、昔からディスクイメージに変換するソフトウェアがたくさん存在していましたし、 ディスク中のデータは対応するディスクドライブを用意すればPC98でもAT互換機でも同様に読み込むことができるので、 フロッピーディスクのデータ交換についてはそれほど問題がありませんでした。 しかしハードディスク上のデータはそういうわけにいかず、PC98からAT互換機にデータを転送するには、 と、解決方法はあるものの、それぞれに欠点がある厄介な問題でした。 ちなみに私は最初LANを使って転送したのですが、 これは最低でもWindows95が稼動していないとダメです。
で、そこで登場する新しい解決法が です。 この方法は準備作業が若干必要なのですが、 と、多少の労を補って余りある魅力があります。 というわけで、いきなりPC98が壊れて呆然としている方、 現在98で実行中の環境をそっくりそのままエミュレータに移行したい方、 来るべきHDDクラッシュの日に備えてデータのバックアップを取っておきたい方は、 ひとつこの方法を試してみてはどうでしょうか。

注意

このページに書かれている事を実行する前に、必ずバックアップを取ってください。 手順を間違えると、HDDの内容がすべて失われる可能性があります。

SASI?SCSI?IDE?

さて、前置きが長くなりましたが、HDDの種類によってAT互換機との接続方法が違います。 まず、SASI。コレはダメです。 SASIは古い98に使われているHDDのインタフェイスで、現在のAT互換機とは全く互換性が無いので使えません。 諦めてください。
次に、SCSI。 SCSIのHDDは殆どの場合、AT互換機のSCSIインタフェイスに全く問題なく繋がります。 うちには2台のSCSI HDDがあったのですが、 両方とも問題なくAT互換機に接続してディスクイメージに変換できました。 全く問題がなかったか、と言われればそうではないのですが…。 とりあえず、実行するときは別のSCSIデバイスをすべてはずしておくのが無難です。 あと、古いSCSIデバイスはコネクタ形状が違う(たいていの場合無駄にでかい)ので、 変換コネクタは別途購入する必要があります。 ターミネータ(終端抵抗)は必ずつけましょう。
最後に、IDE。 この記事は最初から最後までコレを目的に書かれています。 パソコンの中をあけて作業する必要があるので若干面倒ですが、 PCパーツを交換したことのある人なら誰にでも出来る作業です。 全く作業をした事のない人も、手順を守れば簡単なのでぜひ試してみてください。

1. PC98からハードディスクを引き抜く

図1 PC9821As初代型
図1はPC9821Asです。 BIOSの関係でメモリが13.6MBまでしか使えなかったりする初代MATEですが、 幸せなことにHDDはIDEで繋がっています。 なんだか背中がすすけてますね。 最近のがらんどうなパソコンとは違い、中は驚くほど密。 そして重い。 この重さは凶器です。
さて、この初代MATE。 簡単にHDDを引き抜けるようになっています。 手馴れたら30秒とかからず取り外せるでしょう。 今ならセキュリティ上絶対に許されない設計でしょうが、 当時はそんなこと誰も考えません。

図2 右の爪左の爪
図3 フロントパネルをはずしたところ
右の爪、左の爪を押しながら前面に引くと、フロントパネルが外れます(図2、図3)。 本体右に収まっているのがハードディスクです。 かんたんですね?
なんだか形が違うって? IDEにしては大きすぎる? いえいえ焦ってはいけません。 あれは大事なHDDを守る為の「殻」です。 486の33MHzマシンが30万〜40万もした時代です。 今みたいに安っぽいマウンタに剥き出しのHDDを直接付けするようなことは致しません。

図4 HDDですよ
図4はぐっと近寄って撮ったものです。 左下の黒いネジを手で回して、さらに把手をもって引き出します。 なんという親切設計! まるで重要な取引データを持っていってくれと言わんばかりです。 本当に。
ちなみに、MATE以降の98ではどうやって取り出すのかしりませんが、 フロントパネルが簡単に開く、 というのは共通の仕様だったような気がするので、 それほど違ってはいないでしょう。

図5 途中まで出てきたHDD
図5 これが98のHDDだっ!
はい、でてきました(図5、図6)。でかっ。
ところで、このAsには最初ハードディスクが搭載されていませんでした。 で、これじゃ使い物にならん、ということで別売のドライブを入れたのですが、 メーカーはLogitecです。 Logitechと関係があるかどうかは知りません。 まあとにかく純正ものではないようですが、 純正ものでもそう大した違いはないはずです。


2. ハードディスクユニットを分解する

図7 ユニットのふたを開けたところ
図8 ちょっと持ち上げる
図9 裏返す
さて、PC98のHDDは取り出せました。 しかし、これはいつも見ている(のはごく一部の人間ですが)AT互換機のIDEのディスクとは形状が違っています。 それもそのはず、これはIDEディスクを98で使えるようにインタフェイスをつけ、 さらに防護のために殻をつけたHDDユニットなのです。 ですから、AT互換機に繋ぐには殻を割って中身を取り出す必要があります。
まずネジをすべてはずしてから、慎重にふたを開きます。 ふたのエッジで手を切らないように注意してください。 全然関係ないですが、近ごろの安いケースはエッジが未処理だったりして、 PCパーツを交換するときは出血必至のものがあるので注意しましょう。 もちろん大いなるNECの偉大なるPC98にはそんな危険な個所はひとつとしてありません。 そのHDDはLogitecのだろー、なんていうつっこみは却下です。
次に電源ケーブルとIDEケーブルをやはり慎重に引き抜きます。 現在使われているものと全く一緒です。 見慣れたコネクタに安心するかもしれません。 が、なぜか極彩色のIDEケーブルは何かこう…妙な違和感がふつふつと沸いてくるのを禁じ得ません。
少しHDD本体を持ち上げて、裏返してからケーブルを引き抜くとうまくいきます(図8、図9)。 手伝ってくれる人がいれば手伝ってもらいましょう。 慌ててHDDを殻にぶつけてしまうと基盤が破損するおそれがあるので注意です。

図10 殻と中身
図11 正真正銘のIDE HDD
図10はユニットを3枚におろしたところ、図11は取り出したHDDです。 見てのとおり、ALPS製でした。 もちろんMade in Japanです。 ALPSも昔はハードディスクなんか作ってたんですねえ。
98用ハードディスクと言えども、その中身は全く普通のIDEドライブであることがわかると思います。 とりあえずこれでPC98での作業は終わりですので、 殻とPC98本体は邪魔にならないところにおいておきましょう。


3. ジャンパを設定してAT互換機に接続する

図12 これがジャンパピンです
AT互換機にIDEのハードディスクを繋ぐときは必ずマスター、スレーブの設定をしなければいけません。 一方、取り出したHDDは元々専用のインタフェイスで98に繋がっていたわけで、 その設定がどうなっているかは不明な状態です。
で、ジャンパピンの設定を調べる必要があるわけですが、困ったことに説明書がありません。 仮にあったとしても、殻の中身のHDDのことなんか書いてないでしょう。さてどうしましょう?
そんなときにはインターネット。 型番を調べてgoogleかなんかで検索してみましょう。 型番はHDDの表面か側面に刻印、もしくはシールが張ってあるはずです。 ちなみにうちのHDDは「DR312C911A」で、googleで検索したら一発で出てきました。 さすが。 われら地球が全宇宙に誇るあらゆる人類知識のフキダマリです。
参考までに、取り出したALPS製HDDの設定はこんな感じでした。
Jumper Settings
(Viewed from the front of the drive)
                          
MS2     MS0     SYN    -HSP    -ACT
    MS1     DC      MS3    -DSP    -C/D
 O   O   O   O   O   O   O   O   O   O
 O   O   O   O   O   O   O   O   O   O

      1 drive  2 drives  2 drives 
               (master)  (slave)
 
-C/D   short    short     open
-ACT   short    Note1     Note1
-DSP   open     short     open
-HSP   open     open      Note2

 Note 1    To light the LED on both drives, short -ACT.

 Note 2    If a "slave present" signal is required from the master drive,
           short -HSP.
 
 Note 3    -ACT and -HSP are connected to the same signal interface line. 
           They should NOT be shorted at the same time. 

(The Tech Pageより転載)
設定はHDDの種類ごとに異なります。 ジャンパ設定を間違えるとHDDに致命的なダメージを与えかねないので、 必ず自分のHDDにあった設定を利用してください。
接続形態(シングル、マスター、スレーブ)を決めないとジャンパの設定も決まらないわけですが、 今回はとりあえずセカンダリのマスターで繋いでみました。 IDEケーブルに余分がなかったらプライマリのスレーブにでもしておきます。 この辺はAT互換機の事なので、分からない人は分かるまで調査研究です。
図13 こんな感じで接続しました
永続的に接続するわけではないので、作業が終わるまでは熱湯が膝にかかっても絶対に慌てない自信がある人なら図13みたいな接続でもOKです。(^^; でも本当はマウンタにしっかりネジ止めしておいたほうがいいでしょう。
ちなみに左下に落ちてるのはGBAです。あ、関係ないですね。ハイ。
ここまでがハードウェア的な作業です。 それでは、ハードディスクが落っこちないかドキドキしながら(それはお前だけだ!なんていうつっこみは尤もですが) ソフトウェア的な作業に移行しましょう。


4. ハードディスクイメージに変換する

電源を入れて起動します。うまく認識されるように祈りましょう。 このことをPC用語でPlug&Prayと呼びます。 LとRの発音の違いは日本人にとって難しいですが、しっかり覚えましょう。
さて、BIOS画面でそれらしい名前が表示されていればしめたものです。 もし何も表示されていなかったり、システムが起動しなかったりしたら悔い改めましょう。 ジャンパピンは正しく設定されているか? 電源ケーブルがしっかり刺さっているか? コネクタは逆向きではないか? 原因があるとすれば大概そんなところです。
いよいよgetdriveの出番です。 WindowsNTや2000ならNT版、DOSやWindows95/98/Me系列ならDOS版をダウンロードしてください。
目的は全データのリッピングなので、DOS版ならコマンドラインは次のように入力します。 98のHDDを接続しているドライブが3つめのドライブであれば、
getdrive 130 2147483647 98hdd.bin
これで、3番目のドライブ(ドライブ番号では#0,#1,#2の3番目なので、128+2=130)から、 セクタがある限りデータを読み取り、98hdd.binに保存することになります。 進行状況が表示されて、最後に次のように表示されたら完了です。
an error occurs on reading LBA sector (セクタ番号)
operation is finished or aborted.
number of read sector is (セクタ番号)
エラーが起こった、というのは要するにこれ以上データがないので止めた、 ということですので大丈夫です。 …たいていの場合は。 セクタが壊れている等で本当にエラーがある場合もあります。 これはgetdrive側で本当にエラーなのか、最後まで読みきっただけなのかをチェックするのが面倒なのでチェックしていないだけのことで、 作者に「ちゃんとした対応をしたらどうなんだ!」とか詰め寄ったら何とかなるかもしれません(笑)。
成功すれば、HDDの容量に応じたファイルが出来ているはずです。 これをDiskExplorerで開いて確認してみましょう。
まず保存したファイルを開きます(図14)。
図14 ファイルを開く
プロファイルの選択画面が表示されたら、(Manual HD)を選択します(図15)。
図15 プロファイルの選択
領域選択画面が表示されます(図16)。 HDDのデータがちゃんと保存されていれば、この時点で領域が表示されます。 しかし、慌ててはいけません。 セクタ数とヘッド数があっていないと、領域の位置を正しく特定できないのです。 HDDにはIPLという部分があって、そこにはHDDのセクタ数やヘッド数が記録されているのですが、 それがどこにあるのか?というのも実はセクタ数とヘッド数がわからないとわかりません。 「サーチ」はそのIPLを探してパラメータを読み込む機能です。 とりあえずここではサーチボタンを押して、セクタ数とヘッド数を検索します。
図16 領域の選択で「サーチ」を実行する
98のハードディスクでは領域を分割して利用している人は結構多いと思います。 フォーマットのときに、ディスクは領域に分割できるということを知り、 しかも今分割しなければ今後容易に分割することはできない、 となると、別に必要がなくても領域を切りたくなるのが人間というものでしょう。 AT互換機の領域管理機能に比べれば、98のそれは、 すべての領域が等価に扱えて、どのドライブからも同じように起動できるなど、 より優れていたように思います。
ともあれ、領域を選択してOKボタンを押します。 図17のようにハードディスクの内容が表示されれば完璧です。
図17 ディスクイメージを開いたところ
昔は240MBといえば結構な容量でしたが、 今ではOSも入らないぐらい狭いディスク空間で、 いまやこうやってディスクイメージにできる程度のものです。
さて、このディスクイメージですが、DiskExplorerでは使えるものの、 98エミュレータでは直接利用できません。 というのも、さっき説明したようなセクタ数やヘッド数などのディスク情報がディスクイメージに書き込まれていないからです。 DiskExplorerで既存のイメージファイルにファイルを移動させてもよいですが、 余力があればイメージファイルにヘッダをつけることで、PC98の環境が完全に再現できます。 有名な98エミュレータであるT98Nextなら、 ディスクイメージの仕様が公開されているので、 バイナリエディタがあれば簡単に作成できます。
自動ヘッダ生成プログラムを使えば全自動でOK。 nhdgen

おわりに

データがちゃんとファイルに保存されている事を確認したら、 早々に電源を切ってHDDを取り外しておきましょう。 いつ地震が起きてPCの上に乗っけてあるHDDが落ちないとも限りません(それはもういいって)。
さて、私的には第3部までが一番書いていて面白かったのです。 ハードウェア的な操作はやっぱり緊張しますし、あれこれ手を動かして工夫するわけです。 対して、ソフトウェアの説明というのは「ここ、ここ、ここ、はい終わり」と広がりがない感じがしないでもありません。 ていうか、します。
HDDをAT互換機はずしたらジャンパピンの設定を戻して元通り殻に入れておきましょう。 そして98のスロットにきちんと戻しておきましょう。 恐れ多くもこれはPC98からの借り物なのです。 フォーマットしてAT互換機のシステムに組み入れるなんて勿体無い! まだPC98は「現役機種」なのですから。

戻る
紅茶 | ジーンズ