キーボード接続ジョイパッドの話
■製作のきっかけ
スーファミ・エミュレータというおもしろいソフトがあり、本物と同じくらいスムーズに動くのです。 私は、ゲームをやらないのですが、このソフトの出来の良さには驚きました。 ノートパソコンにインストールすれば、どこでもスーファミのゲームを楽しめます。
しかし、キーボードで操作するのは難しく、つまらないので、ノートパソコンのキーボードインターフェイスに接続できるジョイパッドを製作することにしました。
■キーボードインターフェイスの解析
キーボードインターフェイスの詳細については、「トランジスタ技術1995年10月号」や「トランジスタ技術Special」に詳しく載っています。
とりあえず、実際にそうなっているのか、試してみることにしました。
PC本体とキーボードの間は、シリアル通信でやりとりしています。 電源、グランド、データ、クロックの4本の線がつながっています。
コンピュータの起動時に、キーボードのイニシャライズが行われ、その後、キーが押されたとき、離れたときに通信します。
ワンチップマイコンPIC16F84を使って作ることにしたので、キーボードとPC本体の間にPICを入れて、実験しました。
まず、キーボードとPC本体間の通信をPICのデータROMに記録してみました。 そのデータを読み込んで、どのように通信が行われているのか調べました。 しかし、本に書かかれていないコマンドが出現しているようです。
イニシャライズがどのように行われているかわからないので、とりあえずキーが押されたときと、離れたときに出る信号を発生させてみることにしました。
ブレークコード(キーが上がったときに出る)がうまく出せず、苦労しましたが、なんとかキーが押されたこと、上がったことを知らせることが出来ました。
■改造種のジョイパッド
改造前のジョイパッド基板
改造元のジョイパッドは、デスクトップPCに付属してきたものです。ゲームポートに接続して使う物です。
スーファミのコントローラに似ていたので、これを使うことにしました。
■とりあえず遊びたい
試しに遊んでみたかったので、ジョイパッドを分解し、作った回路を組み込みました。
イニシャライズがうまくいかないので、パソコン起動時にまずキーボードを接続し、 起動してから製作したジョイパッドをつなぎました。
改造後のジョイパッド基板。 一部を切り取り、そこにPICを載せた基板がはまるようにした。試しに、F-ZEROをやってみました。パッドの反応が悪く、最初のステージでさえクリアできないという、操作性の悪さでした。 ブレークコードの出が悪いと言うことも考えたのですが、これはどうも改造元になったパッドが悪いようです。
■使いやすくしたい...そこから悲劇は始まった
なんとか使いやすくならないだろうかと、PICをキーボードインターフェイスにつないで実験していたところ、キーボードを壊してしまいました。 起動時にKeyboard Errorと出てしまいます。キーボードに入っているマイコンを壊してしまったのです。
カスタムチップなので、売っていません。使い慣れたキーボードだったので、とても残念でした。
キーボード接続のジョイパッドは、市販されているから、それを素直に買っていれば良かったのに、「作ろう」だなんて考えたために、それよりも高いキーボードを買う羽目になってしまった。そんなことを考えながら、前と同じキーボードを探しに、秋葉原へ行ったのです。
パソコンは、どんどん変わるので、やはり2年ほど前に買ったキーボードは売っていませんでした。しかし、それにそっくりなキーボードを発見しました。
一見すると、前使っていたキーボードなのですが、スペースバーが小さかったり、少し違っています。型番を見ると、どうやらこのキーボードが新しいバージョンとして売られているようです。
スペースバーの小ささが気になったものの、キータッチなどは同じなので、このキーボードを買いました。
帰ると、早速つないでみました。しかし、またまた起動時にKeyboard Errorと出ます。 「もしや、マザーボードが壊れたか!?」ぞっとしました。横に置いてあった、使えないジョイパッドが、私をせせら笑っているようでした。
悔しいので、よく調べてみると、マザーボードのキーボード端子の横にある、フューズが飛んだだけでした。これをなおしたら、無事起動しました。
■一件落着?
やっとキーボードが使えるようになったものの、どうもスペースバーの小ささが気になる。 右手でスペースバーを叩く事が多いのだが、いつも叩いている位置が、「前候補・変換」ボタンになっているのだ。
左手の親指で叩いたり、右手の位置を少し左に寄せるように努力しても、なかなか直らない。 癖だから、そう簡単には変わらない。使っているうちに、どんどんイライラしてきた。
もう我慢できない、改造だ!! 思い立ったら止まらない。
一体、私はいくつキーボードを壊せば気がすむのか?
分解してみると、前のキーボードと違う基板を使っていた。 キーボードのスイッチの役割をするフレキシブル基板のデザインも違っている。 前のキーボードのマイコンだけを交換するというわけには、いかないことがわかった。
どうしよう。簡単には改造できない。でも、あの小さなスペースバーと付き合っていく自信は全くなかった。
ボーっとキーボードを眺めていると、今まで一度も使ったことがなく、しかも、たまに間違って押して不快に思うだけだったキーが目に入った。
「カタカナ・ひらがな」キーだ。どうしてこんなキーがあるのか、未だに理解できない。間違って押す度、「一体これは、何に使うの?」と思っていた、私にとって一番いらないキーなのだ。
大胆なアイデアが浮かんだ。この「カタカナ・ひらがな」キーを廃止し、あいた分だけAltキーと「前候補・変換」キーを右にずらし、今まで使ってきた、大きいスペースバーを移植するのだ。 形を合わせるため、「前候補・変換」キーとAltキーも前のキーボードから移植する。バージョンが違うだけのキーボードなので、古いキーがすっぽりとはまる。
■いざ改造
![]()
前のスペースバー、「前候補・変換」キーをはめ込んだところ。
手前は取り外した、小さなスペースバー。「カタカナ・ひらがな」キーは、なくなっている。問題は、フレキシブル基板の配線をどうするかということだ。 フィルム状のフレキシブル基板は、はんだごてを当てただけで溶けてしまう。 だから、半田を使って配線をすることが出来ない。
しかし、よく見ると、ちょっと配線を変更すれば、右のAltキーが使えなくなるものの、 目的を達成できることがわかった。
そこで、カッターで配線をカットし、アルミ箔を張り付けて配線することにした。 銅箔テープを使えば、もっときれいに出来るだろうが、手元になかった。
カッターでフレキシブル基板を切るときには、勇気が必要だったが、ためらわずに切った。
![]()
フレキシブル基板を改造したところ。
![]()
ついでに、右上にあるメニューボタンを前のキーボードから移植した。
上にあるのは、そこに はまっていたWindowsのロゴ。
■改造成功!
改造はうまくいった。右のAltキーが使えないという後遺症があるものの、 全く不自由していない。むしろ、「カタカナ・ひらがな」キーがなくなって、快適になったくらいだ。
新しいキーボードには、手を載せる台が付いていて、以前よりも入力しやすくなった。 これで満足。ようやく、使いやすいキーボードを手にすることが出来た。
ところで、ジョイパッドは? もう見る気もせず、箱に閉じこめました。
電子工作の後のビールはうまい!!
(C) Ishijima Seiichiro 1999