おじさんが電子工作やってます


 トップ  プロフィール  電子工作いろいろ  真空管でラジオ・アンプ  リンク集


DirectPadPro N64 コントローラーアダプター



いまさらですが、DirectPadPro の Nintenndo64用コントローラーを作りました。
パソコンとの接続には、プリンタポートが必要です。古いPCでないとプリンタポートがないかもしれません。
プリンタポートがあれば、Nintenndo64 のコントローラーがパソコン用ゲームパッドとして使用可能になります。
多少部品が多いですが、自作できる範囲かと思います。

参考としたサイト:
http://arcadecontrols.com/Mirrors/emulatronia/n64pad/imprimir.htm
http://cnt.at-ninja.jp/n64_dpp/N64%20controller.htm


◆オリジナルの回路図
image-01


N64コントローラーを4台まで使用できるようにしました。
電源はUSBから供給するようにしています。

◆回路図
image-01

中古のN64本体の中身を取り出して自作の基板とインターフェースケーブルを取り付けました。
N64本体の基板と同サイズのプリント基板を作り、本体から取り外したコネクタと電源スイッチ、押しボタンスイッチを流用しています。

◆プリント基板
image-11

◆実装
image-15

image-13 image-14

image-08

image-06 232c-con-02

◆完成
image-17

◆特徴・制限など:
 ・4台のN64コントローラが使用できます。
 ・プリンタポート(25ピンのコネクタ)と接続します。
  *最近のパソコンでは、このプリンタポートが無いものが増えています。
   プリンタポートが無いパソコンでは使用できません。
 ・USBから電源を供給します。
  *電源のみの供給にUSBのポートを1つ使用します。
 ・アダプターのリセットスイッチは回路的には使用していません。飾りです。
 ・ドライバソフトはフリーウェアです。インターネットなりで探してください。
  Windows98では、「DirectPad Pro」というドライバソフトでパソコンで使用できるようになります。
  WindowsXPでは、「PSXPAD」というドライバソフトを使います。
  これらのドライバソフトは、フリーウェアの優れものです。インターネットから探して、ダウンロードする必要あります。
  Vista や 7 のドライバは残念ながら無いようです。

◆動作確認:動作確認できた(手持ちの自作パソコンとOSの)環境です
 マザーボード + CPU + OS + ドライバソフト
  ・K7S41GX + AthronXP(2100+) + Windows98SE + DirectPad Pro 5.0
  ・K7S41GX + AthronXP(2100+) + WindowsXP(Pro) + PSXPAD
  ・GA−GC230D+ Atom230(オンボード) + WindowsXP(Pro) + PSXPAD
 これらの構成で、N64エミュレータの「Project64」および「1964」が遊べること確認しました。

◆LINUXでも使用できました。
 LINUX で動作させるにはそれなりの知識が必要ですが、ドライバ(gamecon)が標準で用意されています。
 私は、Ubuntu 14.04 にて、以下のコマンドにて動作するようになりました。
  $ sudo rmmod lp ←プリンターポートの開放
  $ sudo modprobe gamecon map=0,6,0,6,6,6 ←ドライバの組み込み、N64コントーラ4台分

 コマンドラインでの動作確認は、「jstest」があります。
 1番目のコントローラーをテストする場合は、以下のように「/dev/input/js0」を指定します。

  $ jstest /dev/input/js0    ←テスト用コマンド。1番目のコントローラのテスト

 「jstest」の動作画面
jstest-01

 コントローラーの指定は、2番目は「/dev/input/js1」、3番目は「/dev/input/js2」、4番目は「/dev/input/js3」となります。

 GUIでできる動作確認やボタン設定のユーティリティに「jstest-gtk」があります。
 「Ubuntuソフトウェアセンター」で検索してインストールできます。
 ユーティリティを起動すると以下のような画面が出ます。各コントローラーのプロパティ画面も開いています。

 「jstest-gtk」の動作画面
jstest-gtk-01

 初期値ではジョイスティックを動かした時の最大最小の数値の幅が狭いようです。
 「Calibration」を使って補正するのが良いようです。

 「jstest-gtk」のプロパティ画面
jstest-gtk-02


  戻る