MAME2003/MAME078 Control problem

Questions about arcade game emulation support on the ARpiCADE (MAME, DAPHNE, Picodrive, etc...)

Moderator: dee2eR

User avatar
triggerhappy
Contributing Member
Contributing Member
Posts: 38
Joined: Thu Sep 17, 2020 11:49 pm

MAME2003/MAME078 Control problem

Post by triggerhappy » Sat Oct 17, 2020 9:33 pm

It appears that my controls in games running under MAME2003/MAME078 are not mapped correctly (joystick movement doesn't register, buttons not working), and I can't figure out how to configure them.

When I launch games with this emulator and hit Tab, the settings menu appears, but none of the options are selectable (I can move the option selector up/down; however, pressing Enter doesn't do anything).

From what I can see, the .mame078/mame2003/cfg directory contains the rom configuration files, but when I open them in an editor, they do not contain human-readable text.

How do I adjust the control mappings for MAME2003/MAME078?

dee2eR
Inventor
Inventor
Posts: 1200
Joined: Tue Aug 22, 2017 2:07 pm

Re: MAME2003/MAME078 Control problem

Post by dee2eR » Sat Oct 17, 2020 11:24 pm

That's odd. Is this on ARpiCADE 3.X? I'll check it out.

User avatar
triggerhappy
Contributing Member
Contributing Member
Posts: 38
Joined: Thu Sep 17, 2020 11:49 pm

Re: MAME2003/MAME078 Control problem

Post by triggerhappy » Sat Oct 17, 2020 11:30 pm

Yes, it's ARpiCADE 3.X. Sorry for not mentioning that before.

User avatar
triggerhappy
Contributing Member
Contributing Member
Posts: 38
Joined: Thu Sep 17, 2020 11:49 pm

Re: MAME2003/MAME078 Control problem

Post by triggerhappy » Sat Oct 17, 2020 11:51 pm

FYI, it appears that my sole joystick is detected as joystick2. The reason I say that is bc I've noticed when I launch Marble Madness (which I've only been able to get to open successfully under MAME078), I'm only able to start a 2-player game, and when I do, my joystick only moves the player 2 (red) marble.

I don't know why MAME thinks the joystick in my single-player arcade cabinet is joystick2 (and likewise for the 2 action buttons). I've seen this behavior before with Donkey Kong under MAME203. In that case, however, I was able to correct the problem by remapping the controls for player 1 to joystick2 in the default.cfg. And fwiw, I had the same problem in MAME203 with ARpiCADE 3.8 before I upgraded to 3.X. That said, I don't recall if I tried any MAME078 games while running 3.8, and so I don't remember if I had the same control issues with that emulator in that version of ARpiCADE.

User avatar
triggerhappy
Contributing Member
Contributing Member
Posts: 38
Joined: Thu Sep 17, 2020 11:49 pm

Re: MAME2003/MAME078 Control problem

Post by triggerhappy » Sun Oct 18, 2020 6:52 pm

Sorry to pile on, but looks like same issue in MAME139: P1 controls not working and Enter key doesn't work in Tab menu. Something definitely not right.

dee2eR
Inventor
Inventor
Posts: 1200
Joined: Tue Aug 22, 2017 2:07 pm

Re: MAME2003/MAME078 Control problem

Post by dee2eR » Sun Oct 18, 2020 11:15 pm

Can you please take a photo of your JAMMA connector for me to have a look? Struggling to think of what would cause this behavior if not wiring... I don't think I've had anyone else report P1 control being P2.

User avatar
triggerhappy
Contributing Member
Contributing Member
Posts: 38
Joined: Thu Sep 17, 2020 11:49 pm

Re: MAME2003/MAME078 Control problem

Post by triggerhappy » Sun Oct 18, 2020 11:18 pm

Do you know why Enter doesn't work in the Tab menu?

User avatar
triggerhappy
Contributing Member
Contributing Member
Posts: 38
Joined: Thu Sep 17, 2020 11:49 pm

Re: MAME2003/MAME078 Control problem

Post by triggerhappy » Mon Oct 19, 2020 12:07 am

OK, believe it or not, I finally discovered that pressing Z on my keyboard somehow behaves as the selector in the MAME078 Tab menu. That seems really unintuitive to me.

That said, I can now set the controls for each game in the Tab menu, but I do see that my inputs register with the prefix "RP2".

As for taking pictures of my JAMMA wiring, that can be tricky; showing where all the wires connect, etc. would probably require multiple photos, and even after investing the time to do that, I'm not sure it would be 100 percent clear. Idk, maybe I'm overthinking it.

All I can say is I basically swapped the ARpiCADE into my JAMMA cabinet for an ArcadeSD PCB that had been working w/ virtually no control customization; all of the P1 inputs work just fine. I also have a JROK Mylstar (Q*bert) PCB as well as an old 60-in-1 board I've plugged in at various times, and both of those boards register my control inputs with no issues.

So I am reasonably confident the JAMMA wiring is not the problem, but who knows, maybe something is indeed squirrelly. I'm just reluctant to go down that rabbit hole bc I haven't had any issues w/ my other PCBs.

User avatar
triggerhappy
Contributing Member
Contributing Member
Posts: 38
Joined: Thu Sep 17, 2020 11:49 pm

Re: MAME2003/MAME078 Control problem

Post by triggerhappy » Mon Oct 19, 2020 4:46 am

So good news and bad news...

Good news is I figured out what was causing my JAMMA P1 controls to be detected as P2! :D Turns out my USB rotary joystick upgrade accessory (https://www.ultimarc.com/12wayrotary.pdf) was being treated as the P1 controller, which in turn bumped the JAMMA joystick and buttons to P2. When I turned the system off, unplugged the rotary device from USB, and rebooted, my JAMMA controls began to function as P1.

The bad news is I had to detach my rotary accessory to restore my JAMMA controls to P1. :(

Some background on this accessory...

The Ultimarc rotary upgrade is not a joystick replacement. It's merely an accessory that mounts to the base of the joystick stem and registers incremental clicks to the left and right as keystrokes (X and Z, respectively), which it sends to the RPi via USB. The joystick is a standard joystick and is wired thru JAMMA, meaning up/down/left/right signals are transmitted via the GPIO controller.

So my question now is: how do I prevent the rotary controller from bumping the order of the JAMMA controls when it is connected? Is there a way I can configure this behavior?

User avatar
triggerhappy
Contributing Member
Contributing Member
Posts: 38
Joined: Thu Sep 17, 2020 11:49 pm

Set control order in MAME emulators

Post by triggerhappy » Tue Oct 20, 2020 6:59 pm

In the process of troubleshooting a control issue I raised in a separate thread, I identified a problem behavior with the USB rotary input device I use in conjunction with my standard (non-USB) joystick in my single-player JAMMA cabinet. Since the issue sort of morphed beyond the scope of the original thread, I decided to create new one to give it some added visibility.
triggerhappy wrote:
Mon Oct 19, 2020 4:46 am
Some background on this accessory...

The Ultimarc rotary upgrade is not a joystick replacement. It's merely an accessory that mounts to the base of the joystick stem and registers incremental clicks to the left and right as keystrokes (X and Z, respectively), which it sends to the RPi via USB. The joystick is a standard joystick and is wired thru JAMMA, meaning up/down/left/right signals are transmitted via the GPIO controller.
Description of problem:
If I unplug the accessory from USB, my JAMMA joystick and buttons are detected as the primary controls ('JOYCODE_1' or 'RP1', depending on the MAME version), which is the desired behavior. However, when it is reconnected, the rotary controller bumps my JAMMA controls to 'JOYCODE_2'/'RP2' in many (but not all?) of my installed MAME emulators. This is problematic bc it requires me to remap the default controls in each MAME emulator (and sometimes in individual games) to the 'JOYCODE_2' or 'RP2' inputs.

Question:
Is there a way to prevent the rotary peripheral from being detected as the primary controller? Can I force the JAMMA joystick and buttons to be enumerated first?

Post Reply