# 🎮 ジョイパッド ## 👾 FF00 - P1/JOYP - ジョイパッドレジスタ (R/W) ゲームボーイの8つのアクションボタンと方向ボタンは、2x4のマトリクス状に配置されています。アクションボタンは`A`,`B`,`Start`,`Select`のことで、方向ボタンは俗に言う十字キーのことです。 このレジスタのbit4,5に書き込むことで、アクションボタンか方向ボタンかを選択し、bit0-3を読み出します。 ``` Bit 0 R P10 Input: Right or A (0=Pressed) 1 R P11 Input: Left or B (0=Pressed) 2 R P12 Input: Up or Select (0=Pressed) 3 R P13 Input: Down or Start (0=Pressed) 4 R/W P14 Select Direction buttons (0=Select) 5 R/W P15 Select Action buttons (0=Select) 6-7 R 不使用 ``` **注意** ほとんどのゲームプログラムは、このポートから何度も連続して読み込みを行っています。 最初に読み込まれた値は、入力が安定するまでの短い遅延として使用され、最後に読み込まれた値のみが実際に使用されます。 ## 💡 SGBでのジョイパッドの特殊な使い道 通常のジョイパッド入力の他に、SGB対応のゲームではジョイパッドレジスタを悪用してSGBコマンドパケットをスーファミへ出力したり、スーファミに接続可能な最大4つのジョイパッドからゲームパッドの状態を読み取ったりすることができます。詳しくはSGBのページをご覧ください。