こんにちわ。
今日は3か月程前にヤフオクで手に入れた、
PanasonicのMSX2 FS-A1 mkII で使うための、
コントローラーを作りましたよ。
MSX用のコントローラーはヤフオクでもたくさん出品されているのですが、
一個1200円以上もするので、なかなか買う気になれませんでした。
家には古いファミコン本体が数台眠っていたので、
ファミコンのコントローラーをMSX用に改造することにしました。
【今回参考にさせていただいたサイト】
🔸ファミコン用「ジョイカードMk2」をMSX用のジョイパッドに改造してみる
【改造方法】
ファミコンのコントローラー仕様は、シリアル通信になっています。
各ボタンからのパラレル入力を
パラレル→シリアル変換IC(MN4021B)に集めて、
シリアル変換して本体へ出力しています。
対してMSXのコントローラーの仕様はATARI仕様を採用しておりパラレル通信です。
各ボタンへの入力がそのままパラレルでMSXへ送られる仕様です。
そこでコントローラーに搭載されているMN4021Bを外し、
各ボタンとMSX本体を8芯軟質ケーブルで直結することでパラレル通信にします。
8芯軟質ケーブルは秋葉原のオヤイデ電気さんの通販サイトで購入しました。
またMSX本体との接続コネクタですが、
ATARI仕様ではD-sub 9pinになります。
ただし国内で流通しているD-sub9pin端子は金属の耳がついており、
この耳が邪魔をしてMSX本体と干渉する為、接続できません。
耳なしD-sub9pinという端子も売られてはいるのですが、
今回はハードオフで110円でゲットしたD-sub9pinメスーメス延長端子1個を分解して
耳の部分を削り、本体に干渉しないようにしました。
メスーメスアダプター1個を分解すると、
D-sub9pinメス端子が2個がとれます。
【制作開始】
固定しました。
上から見たところ。
コネクターができたので、次はコントローラー側をやります。
まずはファミコンを持ってきて、コントローラーカバーを外します。
パカ。
今回はIコンとIIコンを両方MSXコントローラーに改造しますので、
両方パカっと開けました。
次にファミコンからきているケーブルと、
パラレル→シリアル変換ICを外します。
外しました。これはIIコンです。
中央にあるのはコンデンサーとマイクです。
裏にはマイクのアンプICが付いていますが、今回は外しません。
ちなみに今回はMSXからきている5Vは接続しないので、
ICは動作しません。当然マイクも動作しません。
IコンとIIコンの基盤が取れました。ICも取れました。
今回はICなどの機能は使わず、ボタンのON/OFFだけ認識する感じですので、
基盤のパターンだけを流用するといっても良いかと思います。
次は8芯軟質ケーブルをはんだ付けします。
はんだ付けしました。
参考サイトのボタン対応表を見ながら、パターンを追って、
上(1番-黒)はココ、、、下(2番-茶)はココ、、、とはんだ付けしました。
GNDだけは元のケーブルがついていた中央の穴にはんだ付けしました。
(基盤全体のGNDパターンを活用する為)
ちなみに今回は黄色(5番-5V)と白(8番-OUT3)は接続しませんでした。
5Vは連射機能付きジョイカードなどの場合、ICを動作させるのに必要です。
OUT3は何に使うのかわからないので接続しませんでした。
はんだ付けが終わったIIコンを裏から見たところ。
Iコンも同様にはんだ付け。
IコンとIIコンは形状が異なるので、
線の剥き方も違ってくるので注意が必要です。
GNDは左上の元のケーブルが付いていた穴に接続しました。
理由はIIコンと同様。基板上の全GNDパターンを活用する為です。
そうするとGND線だけ長くなり、あとのケーブルは短く切りました。
またGND線は金属むき出しなので、念の為ビニルテープで止めておきました。
完成したMSX用コントローラー(I,II)
FS-A1 MKIIにつなげたところ。
ハイパーオリンピックが問題なく遊べました。
2020/522 追記:
下記ページでMSXの仕様を確認しました。
コントローラーの仕様は以下の様になっており、
GNDを接続するのは誤りでした。
つまり今回接続したGNDは電源用のGNDであり、ボタンON/OFFの信号用ではないです。
仕様では8番ピンが全ボタンのCOMMONになっており、
今回GNDを接続した部分に8番のコードを接続するのが正しいようです。
通常のゲームソフトでは8番ピンの電位は常に0を出力している為、
電源を含めたMSX全体のCOMMONであるGNDを接続しても
普通にコントローラーが動作してしまうのですが、
ブロック崩しなどのゲームで、パドルというボリュームノブが付いたコントローラーを使う時、
MSX本体側から8番にパルス信号(タイミング信号)が出力され、
コントローラー側ではパルスが来たタイミングで、
現在のボリュームノブの角度により長さの違うパルス信号を返すようで、
MSX本体側では、その信号の長さによって
パドルコントローラーのノブの角度を知るようです。
以下が正しい配線。
GNDを配線していた場所に8番(白)を配線。
黄(5V)及びGNDは配線しないのが今回の正解。
Iコン
IIコン