見出し画像

FDDエミュレータを使えるようにする

前回PC98を買ってきて、これまたヤフオクでFDDエミュレータを買って、動かすところまでやってみた。結果はうまくいき、昔のゲームが普通に動いた。ただ、買ったドライブは1ドライブだけだ。98のゲームは後期はHDDから遊べるようになったものの、2台のFDDを使うのが一般的だ。主流は5インチだった。私現役のころもっていたのはPC-9801UXで、遅いのもあったが、フロッピードライブが3.5インチで、友達とソフトの貸し借りができなくて悲しい思いをした。結局5インチの外付けドライブ(2台)をお年玉をためて買った。DOS上で、ドライブレターがA: B:のあとにC: D:とでてきて感動したのを覚えている。

話が脱線してしまった。FDDエミュレータはエミュレーションできるのは一台だけだ。2ドライブで運用したい場合は、もう一台必要になる。そして、あれからいろいろ調べたが、アリエクやヤフオクで普通に売っている。ただし、デフォルトのものでは98では動かないし、UIまわりもすごく不便になっている。私がヤフオクで偶然買ったのは、98でも使えるようにファームウエアを変更していて、7セグのLEDからOLEDのドットマトリクスになっていて、ボタン操作から、ロータリエンコーダですばやくディスクを変更できるつくりになっていた。要はかなり改造を施したものだったのだ。これだけいろいろ変更して6000円程度だったらかなりお買い得だと思う。でも自分でやれば材料費だけで2500円くらいで済むので、いい機会なので自分でやってみようと思う。

アリエクで購入。あと、OLEDの128x32の液晶と、ロータリーエンコーダーを買う。

とどいた

下がヤフオクでかったもの。上がアリエクでかったもの。

MCUが違う

上がヤフオクでかったもの。下がアリエクで買ったもの。私は蓋をあけてみるまで、基本的に液晶とロータリーエンコーダーをつけただけであとはまったく同じだと思っていたが、全然違っていた。このGotekのFDDエミュレーションは基板がいろいろあり、機能向上やコスト削減など細かくバージョンをかえている。今回手に入れたアリエクのは、最廉価のもので、マイコンはもともとはSTマイクロのものが、今では中華製のSTM互換だと思われるマイコンになっている。しかもSRAMの容量が小さく、パッケージもこれたぶんQFNの一番やすいやつだと思う。

すげえちっこい。

米粒みたいなマイコンだ。ちょっと調べてみたら、AT32F415というものでSRAMは32KB、フラッシュは128KB、Cortex-M4の150MHzだ。なにげに、PC-9821Xaのメインプロセッサよりも周波数が高い。4x4のQFN32パッケージだ。すごいちっちゃいね。
さて、これをヤフオクで買ったものと同じレベルまでもっていこうと思う。やらなければならない作業は以下の感じ

  1. シリアル書き込みをするドライバを入れる

  2. プログラムモードに以降するためにピンヘッダを出す

  3. FlashFloppyをプログラムする

  4. OLEDの基板にピンヘッダをつける

  5. ロータリーエンコーダー用にピンヘッダをつける

  6. 動作確認をする

まず、1番だが、このマイコンのウェブサイトに書き込みツールがダウンロードできるので、それを手に入れる。その中にドライバがあるので前もっていれておく。

この中華製のツールはマイクロソフトの認証ソフトウエアではないので激しく警告がでるが、まあ特に問題はないだろう。ドライバのインストールがおわると再起動を促されるのでやっておく。
次に、ブートモードを変更してシリアルからフラッシュを書き換えできるモードに変更して、専用ツールをつかってファームウエアの書き換えを行う。今回つかったのはFlashFloppyというフリーのソフトだ。このソフトはほぼすべてのフロッピーのエミュレーションを可能とするすごいやつだ。

ひさしぶりにピンヘッダをつけた

ここをショートさせて、USB経由でPCと接続させる。

上のように認識すれば成功。では早速、マイコンのプログラミングツールをたちあげよう。

なんかずいぶんUIが軽い、というかハードウエアエンジニアが片手間で作ったソフト感がすごい。まあわかりやすくていいんだけど。

ポートはUSB DFUを選択する。うまくいけば以下のように認識をする。ので次に進む。

どうももともと入っているファームウエアはプロテクションがされているらしい。もともと入っているものは使わないので、消してしまおう。

この画面がでたら次を押す。

ここでProtectionを選び、プロテクションを無効化するようにする。

全部消しちゃうけどいい?と聞かれるので、消しちゃう。なんの未練もない。

消える。そうしたら、また次を押して、今度は実際にファームウエアの書き換えをはじめる。書き込むファイルは、以下のAT415用に作られたものだ。他にもAT435用のものがあり、こちらはメモリが多く選ぶならこっちがいいらしい。ただ、買うときにどっちになるかぜんぜんわからないので415がきてもあきらめるしかない。普通に使う限りでは問題はないらしい。

上を選択する。すると、下のような画面になる。

ここで、Erase optionをErase the sectors of file sizeにしたが、たぶん全消去でも問題ないと思う。あと、Verifyオプションもつけた。プロテクションは有効にしていない。

するとプロテクションしなくていいんか?みたいなことをきかえるので、OKを押す。

すると書き始めて、チェックもしてくれる。ここまでいけば書き込みは完了する。ジャンパピンを抜いて通常モードにもどし、USBも抜いて、一度98に刺して起動してみる。

7セグのLEDでF-Fとでれば成功らしい。どうもうまくいったようだ。では続けて液晶をとりつける。

液晶はこれまたアリエクでArduinoみたいなマイコン用で激安でうっている128x32の白黒OLEDをとりつけた。ピンヘッダをつけて、FDDエミュレータのヘッダ同士で接続して、起動すると、上のような画面がちゃんと表示される。すばらしい。

あとはロータリーエンコーダをとりつけた。私が買ったのはこれまたArduinoとか向けの小基板がついたもので、どうもpullupしているようなので、3.3Vも供給してやる。これでつまみをまわせばUSBに入っているイメージを変更することができる。まあボタンでもいいが、イメージが1000個とかになってくるとくるくるまわして選んだほうが圧倒的に楽だ。
という感じで、ここまで来て、ケースの加工をしないと収められないことに気づいて、もう今日はこれ以上作業できないのでここで一度動作チェックを行う。

おー、すばらしい。今回いままでとちがって2HDじゃなくて2DDのディスクイメージを試したが全く問題なく動いたな。いまさらだが液晶は1500円くらいでハードオフで買った三菱の24インチのものだが、24KHzがちゃんとでて98の画面も非常に綺麗にだしてくれている。すごい掘り出し物だった。
そして今頃気付いたが、このPC、音源のコンデンサが抜けていてまったく音がしないな。それはおいおいどうにかするとして、これで、私でもFDDエミュレータをPC98で動かせるようにできた。なにげに今回の改造したものって、私が買ったくらいなのでヤフオクとかで普通に売れるんだよね。一台2000-3000円くらいの手間賃だとするとなれると結構いい小遣い稼ぎになるのかもしれない。なんだったら安く売っている98に2台とりつけたもので売ったらもっと高くうれるかもしれない。ターンキーは重要だ。

まあ、それはともかく、これで二台手に入ったので、ケーブルがとどき次第いろいろためしてみようと思う。それにしてもケーブルめちゃ高いねえ。今回買ったXaの半分くらいかかった。これ普通のPC/ATのFDDのケーブルでも代用できるのかなあ。それか一台で2台分のエミュレーションができればもっといいんだけど。

この記事が気に入ったらサポートをしてみませんか?