SDカードスロットと一緒に、別基板に配置。
SDカードスロットはピン向きが逆になったので、クロスして配線。
あと本体側との接続ピンと干渉したため、基板をちょっとカット。
合体させると、このように。
上下がぶつからないように、コネクタの長さを調整してネジ止め。
ジョイスティックアダプタの場合、I/Oポートは以下
| I/Oポート アドレス | リード/ライト | 内容 | CAD1 | CAD0 | 
|---|---|---|---|---|
| 19h | リード | ジョイスティックアダプタ入力ポートA | Low | High | 
| 1Ah | リード | ジョイスティックアダプタ入力ポートB | High | Low | 
リードするデータ内容は、デフォルト0xFFで、各ボタンが押されると、以下のビットがLowになる。
| bit7 | bit6 | bit5 | bit4 | bit3 | bit2 | bit1 | bit0 | 
|---|---|---|---|---|---|---|---|
| - | - | トリガーB | トリガーA | 右ボタン | 左ボタン | 下ボタン | 上ボタン | 
初代パソピアに装着して、ジョイスティックを接続する
ジョイスティックのテストプログラム
100 OUT &H1B,1
110 A=PEEK(0):IF A=195 GOTO 130
120 PRINT HEX$(INP(&H1A));" ";HEX$(INP(&H19)):GOTO 120
130 PRINT STICK(1);STRIG(1);"(";HEX$(INP(&H1A));") ";
140 PRINT STICK(2);STRIG(2);"(";HEX$(INP(&H19));")":GOTO 130
STICK命令とSTRIG命令は、両方とも動いている。
STRIG命令は、トリガーAのみ有効だが、IN命令で読み込むとトリガーBのビットも生きていることがわかる
 
 
0 件のコメント:
コメントを投稿