Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

Need some help with getting basic mame2003-plus control settings right for my config.



  • Hey folks - I've done a lot of reading of past threads regarding Mame2003+ and Retroarch's control scheme, but some of the options that are core specific are not clear to me, and I see some strange things between the general retroarch controls page and what I then see in the controls page under the core's options in the quick menu, so I'm still having trouble getting things working right with my setup. Let me try to be as specific as I can about the general setup and I'd love to hear suggestions, or what further info I can provide that would help narrow things down.

    The control setup is as follows:

    • Ultimarc Ultrastik 360 is directly connected via USB. Usually shows up as js1. I have added an Emulationstation script for game-start that checks what ROM is being launched and preloads one of various Ultrastik maps depending on what the original controls for the ROM were, e.g. 4-way, 8-way, pure analog, 2-way horizontal or vertical, etc.
    • IPAC 2 is also connected and has buttons and an Ultimarc spinner, but no analog stick connected. The IPAC2 exposes a JS0 in addition to the mouse and keyboard events, but of course there's nothing attached there.
    • There is a standard keyboard available but my intention is not to use it once I get all of the arcade controls working reliably.

    Confusing thing #1: In the Retroarch user controls mapping pages, I have altered the original default setting such that the Ultrastik is used for "User 1" and the IPAC is "User 2", rather than the opposite which is what it came up with originally. However, when I go into the MAME2003+ controls settings page with any ROM loaded, it always still lists User #1 as the IPAC and User #2 as the Ultrastik. Shouldn't it follow suit?

    I'm also a little confused as to the best way to deal with the Ultrastik such that it acts as a normal analog stick for the ROMs that take advantage of that, but obviously it needs to be "digital" for the ROMs that expect 4 way/8 way/etc. When I used to use ADVMAME, the Ultrastik internal maps did a great job of handling those situations without physical restrictors, but is it better to let MAME2003+ deal with this instead and keep the Ultrastik always in pure analog mode, or what? I don't fully understand what the "analog" vs. "digital" setting really means in terms of what it's doing under the covers in the core.

    On a related note, I'm truly stuck trying to find the right combo of settings for Qbert. It looks like Mame2003+ wants to take a digital input for u/d/l/r and map it to ul/ur/dl/dr, but again this is a situation that the Ultrastik maps can handle really well by allowing an arbitrary directional output for any given physical position of the stick, but I haven't been able yet to figure out the right combination to make the stick and the Mame settings agree with each other to get the right motion consistently for the stick position.

    Also, a concise description of exactly -which- Retroarch/Mame config files it is safe to nuke if I want to set things back to post-installation Retropie defaults would be appreciated, they seem to be spread around a bit depending on if they're core specific/rom specific/etc. The hierarchy (and number) of retroarch configs is still a source of a little bit of wariness.

    Any hints here would of course be greatly appreciated. Thank you!



  • @andrewsi simple terms use mame ui to set your controllers up input->general is the global config file.

    The retroarch input intergration into mame on every version out is simply not up to a usable standard as far as using retroarch remapping because mame has its own internal mapping already.

    The difference between digital and analog is simple its setting the input general to digital hat or analog for the left right up down and analog controls. This setting is there for people that dont understand how to set mame controls up in mame itself.

    Let me give you a quick setup guide.
    options->legacy mappint(restart) (turn this on enables mames gui settings screen)
    options-> input interface -> set this to simutaneous. (use keyboard and mouse)

    now load up smash tv its a dual joystick game

    press your tab key then goto input->this game

    now got to your quick menu and change analog and digital and you will see your default options change on that selection on the controls screen. All this is doing is setting a global default (input this game) for analog or digital controllers. You will see the controls update when you do this on that screen.

    I dont really want to get into this too much on how it all works but in input this game select goto p1 left/up and set it to anything you like youll see it highlighted white because its not using defaults anymore. Now even when you change your analog/digital global settings that setting wont change.

    The reason im telling you this is because retroarch only follows global control settings and things end up a mess and to give you a little insight into the issue and why its more wise to use the mame gui to set this all up.



  • @grant2258 Thanks for the insights. I did make some progress on my own with this yesterday, but your suggestions are helpful.



Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.