4P joysticks "offset"; P1 switches read as P2, etc.
Posted: Sun Jan 22, 2023 6:08 am
Hello. I've been slowly restoring an old 4P jamma cab for the past several years. I had it working great with an original Open Ice pcb, but the board finally gave up the ghost. I'm so excited that Arpicade + the 4P adapter can get me so close to the original feel of the arcade game. Thank you! I'm running into a weird problem, though:
Baseline info:
- Raspberry Pi 4B
- Arpicade 4.3.1
- 4P adapter
- Dip switches on main adapter: 1,2 on; 3,4 off
- Dip switches on 4p adapter: all off
- I have switched to 4P mode in the attract mode menu reachable via F4 (how can I verify this setting "stuck"?)
- Converted 4P Midway jamma cabinet with standard jamma harness and Midway kick harnesses (I assume, since they worked with a Midway board)
- Cab ran an original Open Ice pcb since the 90s with no issues that basic repair and maintenance couldn't resolve
- Wells Gardner K7000 CRT
Specific issue:
In all games (so far only played in mame 172), each joystick/button set reads as the joystick/button set to its right. That is, all player 1 stick and button presses are interpreted as P2 presses, P2 reads as P3, P4 reads as P5 (which doesn't exist on the jamma connector). For example, pressing Player 1 Start is interpreted by Arpicade/MAME as Joy 2 Button 7.
Odd, but the major problem is that nothing reads as P1, so I can't just remap everything in MAME.
Similarly, coin 1 reads as coin 2, and coin 2 reads as service. The player buttons within each set are also mixed up. Those easy remap or rewire fixes, but may be related to the joystick situation.
I thought the issue might be in MAME, but:
When I run jstest .../js0, P1 joystick/buttons do nothing (I can't read the results, but they don't change; see secondary issue). However, when I run jstest .../js1, P1 joystick/buttons update the results. So same deal as in mame games and mame menus.
Interestingly: Only P1 joystick and buttons function in the attract mode menus, which I assume is how it's supposed to be.
I'm a mechanical guy and get a little lost once in the realm of software+hardware. Please let me know if there's any further information I can provide. I'm happy to do further troubleshooting. I really appreciate your time.
Quick edit: I ran through as many forums topics as I could but didn't find any similar issues. If there's already a thread on a similar topic, I can close this one and go there.
Thank you,
Dante
Secondary issue: Attract mode and the command line look like raw HD video is being sent to the standard res monitor. AM is mostly readable, but the command line is impossible. I tried changing the timing in config.txt to the other resolution options, but those just gave me a black screen; Only 1920 timing works. I also get "HDMI out of range" when I use an external monitor instead of the CRT, so I'm flying blind in the terminal.
Baseline info:
- Raspberry Pi 4B
- Arpicade 4.3.1
- 4P adapter
- Dip switches on main adapter: 1,2 on; 3,4 off
- Dip switches on 4p adapter: all off
- I have switched to 4P mode in the attract mode menu reachable via F4 (how can I verify this setting "stuck"?)
- Converted 4P Midway jamma cabinet with standard jamma harness and Midway kick harnesses (I assume, since they worked with a Midway board)
- Cab ran an original Open Ice pcb since the 90s with no issues that basic repair and maintenance couldn't resolve
- Wells Gardner K7000 CRT
Specific issue:
In all games (so far only played in mame 172), each joystick/button set reads as the joystick/button set to its right. That is, all player 1 stick and button presses are interpreted as P2 presses, P2 reads as P3, P4 reads as P5 (which doesn't exist on the jamma connector). For example, pressing Player 1 Start is interpreted by Arpicade/MAME as Joy 2 Button 7.
Odd, but the major problem is that nothing reads as P1, so I can't just remap everything in MAME.
Similarly, coin 1 reads as coin 2, and coin 2 reads as service. The player buttons within each set are also mixed up. Those easy remap or rewire fixes, but may be related to the joystick situation.
I thought the issue might be in MAME, but:
When I run jstest .../js0, P1 joystick/buttons do nothing (I can't read the results, but they don't change; see secondary issue). However, when I run jstest .../js1, P1 joystick/buttons update the results. So same deal as in mame games and mame menus.
Interestingly: Only P1 joystick and buttons function in the attract mode menus, which I assume is how it's supposed to be.
I'm a mechanical guy and get a little lost once in the realm of software+hardware. Please let me know if there's any further information I can provide. I'm happy to do further troubleshooting. I really appreciate your time.
Quick edit: I ran through as many forums topics as I could but didn't find any similar issues. If there's already a thread on a similar topic, I can close this one and go there.
Thank you,
Dante
Secondary issue: Attract mode and the command line look like raw HD video is being sent to the standard res monitor. AM is mostly readable, but the command line is impossible. I tried changing the timing in config.txt to the other resolution options, but those just gave me a black screen; Only 1920 timing works. I also get "HDMI out of range" when I use an external monitor instead of the CRT, so I'm flying blind in the terminal.