PCでゲームボーイアドバンスのゲームを遊んでみよう!!(その2)

お約束

あなたが吸出したROMデータを他人に販売・配布するなどの行為は、著作権法違反となります。絶対に行なわないで下さい!

ULAの素材発見

ハードオフのジャンクコーナーを物色していたら、ソースネクストの携快電話のアダプタを発見。何となく、ULAに使えるのではないかという予感がしてゲット。

https://hkjunk0.com/wp-content/uploads/ula_part2_01.jpg

携快電話のアダプタ。チップが不明だが、どうなる?

https://hkjunk0.com/wp-content/uploads/ula_part2_02.jpg

型番はSUS-USB-06 REV.1とある。

早速家に持ち帰って開けてみると...ビンゴ。制御用のチップにはAN2131SCが使われていた。となれば、今までと同じやり方でULAに仕立て上げることができるはず。

https://hkjunk0.com/wp-content/uploads/ula_part2_03.jpg

真ん中の黒いチップがAN2131SC。

3号機加工着手

GBA通信用ケーブルであるMGB-004に再度ご登場願うことにして、配線とか加工方法は、前回と全く同様

ここで気をつけて欲しいのは、以下の2点だったりする。

  • USBケーブル側にあるPROMらしいチップは、事前に取り除いておく → 付けたままだと動作に影響があるかも
  • AN2131SCの12番ピン~の側にあるクリスタルは、一旦取り外してから配線を行ない、配線が完了したら元に戻す → 取り外したままだと、ドライバの組込みがうまくいかない。クリスタルを付けたままでの配線は、スペース的に非常に困難

で、特に問題もなく配線が完了。黄色の線が茶色くなっているが、熱収縮チューブを加熱する際に焦がしてしまったことは内緒(^^;)。

https://hkjunk0.com/wp-content/uploads/ula_part2_04.jpg

配線が完了した状態。手馴れたもんよ(^^;)。

USBドライバの問題

早速動作確認をしようと、パソコンのUSBポートにULAのコネクタを突っ込んでみた。すると、赤いLEDが点灯した。次に当たり前というかUSBドライバを要求してくる。

https://hkjunk0.com/wp-content/uploads/ula_part2_05.jpg

赤いLEDが点灯。取り敢えず煙とかはあがっていない。

ここで困ったのは、USBドライバがないということ。

ご存知のとおり、USBのドライバを組み込む際には、ベンダのID(VID)と製品のID(PID)という2つの情報がINFファイルに記述されていないとデバイスの認識が正しく行なわれない。

ULAのUSBドライバは、もともとサイプレス社AN2131SC用のUSBドライバのINFファイルを書き換えて組み込みしていたのだが、今回の携快電話のアダプタは、VIDとPIDが全く分からない。これではUSBドライバの組み込みができない。

どこかにVIDとPIDの一覧表がないかとあれこれ探してみたが、見付からない。これにて一巻の終わりかと思ったが、よく考えるとWindowsXPのデバイスマネージャで「デバイス インスタンス ID」を確認すればVIDとPIDが判ることに気付いた。らっきー。

https://hkjunk0.com/wp-content/uploads/ula_part2_06.jpg

WindowsXPのデバイスマネージャ画面。不明なデバイスでも大丈夫。

ということで、携快電話のアダプタのVIDは「0731」で、PIDは「1001」ということが判り一安心。

あとは、「C:CypressUSBDrivers」フォルダの中にある「ezusbw2k.inf」をメモ帳で開き、下記の呪文を追加してやるだけ。

[Cypress] ; SOURCENEXT Charge USB Type-H %USBVID_0731&PID_1001.DeviceDesc%=EZUSB.Dev, USBVID_0731&PID_1001

[Strings] USBVID_0731&PID_1001.DeviceDesc=”SOURCENEXT Charge USB Type-H (AN2131SC)”

最終的に、USBドライバの組込みも終了し、試しにULA-HostV2を使ってGBAのROMカートリッジの吸出しに挑戦してみたが全く問題なく吸出し完了。やったね。

ちなみに、通信中は別の場所にあるオレンジのLEDが点灯する。

https://hkjunk0.com/wp-content/uploads/ula_part2_07.jpg

通信中。AN2131SCの両脇にあるオレンジのLEDが点灯。

ケースへの組込み

動作確認も取れたので、ケースに組込みすることにした。もともとあるアダプタのケースを使うので、穴を開けたりホットボンドで固定したりという面倒はない。

https://hkjunk0.com/wp-content/uploads/ula_part2_08.jpg

あとは蓋をしてネジ止めするだけ。

https://hkjunk0.com/wp-content/uploads/ula_part2_09.jpg

完成したULA3号機。かなりかっこいいかも。

ケースに組み込んだら、再度動作確認を行なってみる。全くノープロブレム。

https://hkjunk0.com/wp-content/uploads/ula_part2_10.jpg

ULAを接続した状態。

https://hkjunk0.com/wp-content/uploads/ula_part2_11.jpg

通信中の状態。オレンジ色のLEDがお分かりか?

ということで、3号機も無事に完成。相変わらず細かい半田付けで疲れましたとさ(^^;)。

おまけ

せっかくULAを作っても、吸出しばかりだと芸がないのでたまには違うネタの紹介。

それは、ULA接続したGBAをUSBコントローラに変身させるというナイスなソフトである「USB Multi Joyport」というやつ。Mootan’s HomePageからどんぞ。

https://hkjunk0.com/wp-content/uploads/ula_part2_12.jpg

実行ファイル。左側がプログラム本体。

GBAをULA経由でパソコンに接続し、ダウンロードしてきたUMJoyportという実行ファイルを起動すると、下のような画面が表示されるので、一番上の「GBA(ULA-GP Compatible)」のボタンをクリックする。

https://hkjunk0.com/wp-content/uploads/ula_part2_13.jpg

一番上のボタンをポチッとクリックする。

確認の画面が表示されるので、そのまま「はい」のボタンをクリックする。

https://hkjunk0.com/wp-content/uploads/ula_part2_14.jpg

びびらずに、そのまま「はい」のボタンをクリックすべし。

次に、接続待ちの画面が表示されるので、例によってGBAの電源を切り、スタートボタンとセレクトボタンを押しながら電源を入れる。ちょうど良いタイミングでスタートボタンとセレクトボタンから手を離すと、通信が開始される。

https://hkjunk0.com/wp-content/uploads/ula_part2_15.jpg

ここで、一旦GBAの電源を切ってあの操作をする。

うまく通信が完了すると、GBAの画面にステータス画面が表示され、初回であれば同時にHIDデバイスの組込みが始まる。

あとは普通のUSB接続のコントローラみたいにGBAを使い倒すということで(^^;)。GBA-SPだと少々使いづらいかも。

https://hkjunk0.com/wp-content/uploads/ula_part2_16.jpg

1秒あたりのボタン入力数もカウントしてくれる。便利。