先日BBSでMSXのFDDの話題が出たので、我が家で死蔵していたFS-FD1A(パナのMSX用カートリッジ一体型FDD)のことを思い出した。
これは自分が学生の頃、学校の先生をしている大阪のMSXユーザーの方にいただいたものだ。今でこそFDDはゴミみたな値段で転がっているが、発売当時は定価39,800円もした代物だった(これでもFDDとしては安価な方)。いただいた当時はMEGA-SCSIの普及期であり、ファイル管理はSCSIに移行したのでもう使わないからと、気前良く2台もタダで送ってくれた(感謝)。当時は正常に動作していたのだが、先日1チップMSXで使おうとしたところ2台とも読み込みができなくなっており、どうやらしばらく寝かせている間に発酵してしまった模様。
|
元々組み込まれているのはミツミ製のドライブ「D357T」。FDDがまだそれなりに高価だった時代のもので、フレームはアルミダイキャスト製でお金が掛かっている。その後コストダウンが進み、鉄板プレスのフレームに移行していったのはビデオデッキの歴史と同じ。 検索をかけてみたが、詳細はわからなかった。スピンドルモーターはダイレクトドライブであるのでゴムベルトが伸びる心配はないが、読み取り不良が発生した場合はヘッド周りのトラブルである可能性があり、クリーニングで復活しない場合は素人修理は難しいとされる。 |
|
|
今回はドライブユニットの修理はあきらめて換装を行うこととした。使うのはウチのジャンク箱に転がっていたミツミのFDDユニット「D353M3D」だ。既にコストダウンが進んでおり、フレームは鉄板プレス。以前キューブPCで使用していたもので、ベゼルはシルバー。購入したのは2002年頃だったと思う。 FDDの換装についてはこちらのサイト(et_levin'sHP)に詳しい解説がある。ここの情報と昔の記憶を頼りに試行したところ、MSXのFDDをAT互換機用のものに入れ替えるには下記の点に留意すればよいことがわかった。
とりあえず動作確認として元々のフラットケーブルを加工してFDDインターフェイス側の10p(DEIVE SELECT)とドライブ側の12pを接続し、インターフェイス側の34p(READY)をGNDに直結してAT機のFDDを繋いでみた。これだけで2DDのディスクは普通に読めたので手ごたえOK。本格的に入れ替えることにした。 なお、元のドライブとAT機のFDDではコネクタ位置が異なり、そのままではケーブルの長さがどうしても足りなくなる。特にフラットケーブルは上下が逆さになるため、すだれタイプ(途中でワイヤーがほぐれているやつ)のフラットケーブルを使って180度捻る必要がある。34pのすだれケーブルを1節分使うとぎりぎりケースに収めることができる。 |
|
|
FDD側になる方も同じようにベンチバイスで挟んで圧着。4通りの圧着方法(表裏右左)があるので、圧着する前にFDDとの位置関係をシミュレートして長さや表裏を間違えないように注意が必要だ。 |
|
圧着が終わったら隣り合うピンがショートしていないかテスターでチェック。フラットケーブルの10pと12pを途中で切断し、ドライブ側の12pと基板側の10pを接続した。基板側の12pとドライブ側の10pは断端を熱収縮チューブで絶縁している。根元から切っても良いが、後から何かに使うかも知れないので温存しておいた。 |
|
ドライブとの距離に合わせて電源ラインも延長し、基板側は最終的にはこんな感じになった。この基板ではFDC-BIOSのROMにEP-ROMが使われている。経年で稀に内容が消えたりするらしいのでバックアップを取っておいたほうがいいかも。また、1987年の製品らしく、既に30年以上経過しているので電解コンデンサは張り替えたほうがいいだろう。 |
|
次はドライブ側の加工であるが、前述の通りAT互換機のFDDは34pにREADY信号を出さない代わりにDISKCHANGE信号を出すようになっている。DISKCHANGEはディスクが取り出されたと認識された瞬間から、次のアクセスがあるまでactive(L=GNDレベル)になる信号だが、FS-FD1Aでは使わない。一方READY信号はFDDがアクセス可能であるときにactive(Lレベル)になる信号であるが、MSXではとりあえずディスクが入っている時にactiveとしておけば問題なくアクセスできるようだ。よって、34pのDISKCHANGE信号をパターンカットで殺し、FDDのディスク挿入検知スイッチを利用してREADY信号(もどき)を作り、34pに引き渡すことにした。 このドライブのディスク挿入検知スイッチを調べてみると、ディスクが挿入されているときに信号がGNDに落ちていることが分かったので、これをそのままREADY信号(もどき)として利用することにした。やったこととしては34pのパターンカットとスイッチへの接続だ。もし、逆にディスクがイジェクトされたときに信号がGNDに落ちるスイッチだったとしたらトランジスタを使って信号を反転させればよい。 |
|
AT互換機のFDDは2HDも読み書きできる3モードドライブだが、MSXでは2HDフォーマットは使えない。2HDディスクには識別のためにライトプロテクトノッチの反対側に穴が開いているが、そのまま使うとFDDが2HDモードで動作してしまい、2DDとしてアクセスができなくなってしまう。テープなどで穴を塞いでおけばよいが、それも面倒な話だ。MSXでは2HDディスクを2DDフォーマットで使うことも多いため、ドライブの2HDモードは殺しておいたほうがbetterだろう。このドライブを調べたところスイッチが2HDでオープン、2DDモードでショートとなっていたので半田でブリッジさせておいた。 余談だが、DISKCHANGE信号はターボRの内臓FDDでは使用されており、これを接続しないと2ドライブシミュレーションでのディスク交換ができなくなったり、ディスクキャッシュを使ったときに不具合が発生する。ターボRに接続する場合はDISKCHANGE信号は正しく処理する必要がある。 |
|
ケーブルを延長したことにより、ドライブをケースに収納することができた。フラットケーブルはギリギリの長さ。ネジ穴はそのまま使うことができた。 |
|
ベゼルがシルバーなので違和感ありまくりだが、とりあえずそのままにした。塗装しても良いのだが、いまさらMSXのドライブにそこまでしなくてもよいかと思ったり。 |
総評 動作確認したところ、2DDディスク、2HDディスクともに2DDモードで読み書き、フォーマットできた。もちろんプロテクトのかかった市販ソフトも問題なく起動できるし、1チップMSXで使うこともできた。ここまでやっておけばドライブユニットがまた壊れたとしても簡単に蘇らせることができるだろう。
なお、READY信号は、FDD(Y-E DATA製 YD-702D)のデータシートによると、「ディスクが挿入され、MOTOR ON信号がLOWとなってから最大500ms後にLOWレベルとなる」と記載されており、2DDモードの場合、モーターが300RPMで回るとアクティブになるらしい。
本来であればFD挿入スイッチとMOTOR信号、INDEX信号を監視して、ロジックICやPICマイコンで生成すべきと思われる。しかし、実際には常時Lレベルにしても読み書きには支障は無く、むしろディスクが入っていないときにエラーが出せないことのほうが問題となる。エラー対策だけを考えるとFD挿入の検知だけで十分代用でき、あえてモーターの回転数を監視してまで生成する意義は乏しいと思われる。
READY信号を接触不良やチャタリングの発生する物理的なスイッチで代用することに違和感を覚えなくもないのだが、このスイッチの不良があればFDDはディスク挿入を検知できず、まったく機能しなくなるわけで、FDDとはその程度の信頼性のデバイスと割り切れば問題なし。
ちなみに動作チェックに使ったMSX(FS-A1Mk2)は、FS-FD1Aと同じく大阪の先生からの頂き物。FDDも漢字ROMもFM音源も内臓していないが、改造によりメインメモリ512kB実装しているため、MEGA-SCSIだけでDOS2も動作可能。画面はMSX-FANのオープニングCG。
copyright (C) 2004 Niga.