Cx486SLCキャッシュコントローラーに振り回される

Image: Buffalo HSP-16DR

最近PC98関連のページへのアクセスが若干増えているので、久しぶりにPC98の話題を挙げてみます。

それは約3年前、中古でNEC PC-9801RXを入手したときのこと。

PC-9801RX(→仕様)にはCPUとして80286が標準で搭載されていますが、私が入手した機体には本来80286が差してあるはずの場所にBuffalo HSP-16DR(HSP-4SD33〜)というCyrixの486互換CPUを搭載したCPUアクセラレーターが差してありました。要するにCPUが後発のものに交換されていたわけです。ところが、このCPUはそのまま使うと換装前よりも動作が遅くなります。技術的な詳しいことは知りませんが、CPUのキャッシュメモリーを制御する『キャッシュコントローラー』という類のソフトウェアを入れないと、本来の性能を発揮できません。80386以上が必須なWindows 3.1が動く、という程度の恩恵しか受けられないのです。

そこでVectorサイトに上がっている→Cx486というフリーのキャッシュコントローラーを落としてきて、内蔵固定ディスクのMS-DOSに組み込んでみました。するとどうでしょう。DIRコマンドでファイルの一覧を表示させるだけでも、テキストのスクロールが明らかに速くなりました。これはいい、ということで納得してしばらく遊んだ後、それを物置にしまいました。まさか、この事をきっかけとして後に2週間にわたって泥沼に陥ることになるとは。

1ヶ月後、5インチFDをイメージファイル化するためにPC-9801RXを引っ張ってきました。そしてMAKEDISK(FDイメージ化プログラム)を実行したところ、なぜかデータを読めません。DIRコマンドでFDにアクセスすると「シークエラーです.」というメッセージが出ます。FDの方が悪いのかと思い、ブランクのFDを入れてFORMATコマンドを実行しました。するとゲージが100%まで進んだところで「セクタが見つかりません.」「トラック0が不正です.」というメッセージが。他のブランクディスクに差し替えても同じ症状が起きます。貴重な5インチFDがどんどんお亡くなりに・・・

FDDの調子が悪いのかと思ってこれをオーバーホールすることにしました。その時の経験が2年前に書いたNEC FD1155D(5.25インチFDD)の整備という記事になったわけです。すると今度はFDDが認識すらしなくなりました。何度かケーブルを挿抜すると認識はしましたが、依然MS-DOSからFDを読めません。FDDの取り付け・取り外しを繰り返すうちに片方しか認識しなくなったりして、泥沼にはまっていきました。目視ではマザーボードや電源ユニットに問題は見当たらず、電源電圧が正常であることも確認しましたが、電源ユニットのコンデンサーを全て交換しました。それでもなお同じ症状が出るので、さすがに1週間くらい凹みました。

結局、FDDが認識されなかったのはマザーボード側のケーブル端子が接触不良だったみたいで、FDDケーブルをしっかり接続したら2台とも認識されました。試行錯誤を繰り返すうちに、ひとまずN88-日本語BASIC(86)(FDから起動するプログラム)ではFDの読み書きが問題ないということがわかりました。

泥沼にはまって2週間が経ち、さすがにあきらめて処分すべきかと考えていた日のこと。ふとMS-DOSのシステムディスク(FD)があったことを思い出し、それをFDDにセットしてみると、普通にMS-DOSが起動しました。あれ!?FDが読み込めるならフォーマットもできるかも、ということで2台目のFDDにブランクディスクをセットしてFORMATコマンドを実行すると、あっさりフォーマットできてしまいました。DIRコマンドによるアクセスも問題ありません。そこで、固定ディスクを初期化してMS-DOSを再セットアップしました。すると固定ディスクから起動したMS-DOSでもFDのフォーマットや読み書きを正常に行うことができました。フォーマットに失敗していたFDも再度フォーマットをかけたら使えるようになりました。

システム装置本体やFDDがまだまだ使えることがわかって「あきらめなくて本当に良かったー。」と安堵したのもつかの間。まだキャッシュコントローラーを入れていなかったことを思い出してCx486を入れると、再びFDにアクセスできなくなりました。そこでようやく気付くわけです。FDにアクセスできなかったのはキャッシュコントローラーが原因であることに。

Cx486のドキュメント(CX.DOC)を読んでいくと次のような記述がありました。

ROM部分のキャッシュをOFFにしたところうまく動くようになりました。floppyが読めないといった症状が出た場合は'-r'をお試し下さい。

この日を境にソフトウェアに添付されているドキュメントは必ず最後まで読むようになりました。 ソフトウェアのreadme.txtやリリースノートには必ず目を通しましょう。

ちなみに現在はCPUアクセラレーターは取り外して、単体で入手した80286を取り付けてあります。処理能力よりも安定動作が優先だー。PC-9801RXは今も元気です。(ここ最近は物置に入れっぱなしだけどね)
久々の長文・駄文で失礼しました。

9/5 B4 U830 RR


inserted by FC2 system