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

IPAC2 issue - 2 actions when pressing 1 button with lr-mame2003



  • Pi Model or other hardware: Pi 3
    Power Supply used: 5V - 3A
    RetroPie Version Used v4.3
    Built From: Pre made SD Image on RetroPie website - retropie-4.3-rpi2_rpi3.img
    USB Devices connected: USB keyboard / IPAC2 (bought in 2017 / FW 1.44 / Gamepad enabled NO)
    Controller used: Sanwa JLF-TP-8YT Ball Top Joystick / Sanwa OBSN-30 Screw In Arcade Button
    Error messages received: None
    Emulator: lr-mame2003

    Hi,

    I´m currently building my arcade cabinet using Sanwa Joysticks and Buttons with an IPAC2.
    After a clean install (more than one) I configured first controls in EmulationStation. Everything fine, IPAC is identified as keyboard.
    This is my Controls-Layout for Player 1:

         UP         SW4   SW3   SW5
    LEFT    RIGHT
        DOWN        SW2   SW1   SW6
    

    which results in IPAC2 output:

         UP         LSHI   SPAC    Z
    LEFT    RIGHT
        DOWN        LALT   LCTL    X
    

    I have named the buttons this way

         UP         Y     X     L
    LEFT    RIGHT
        DOWN        B     A     R
    

    No changes in any retroarch.cfg or other configs.

    My issue is while playing BubbleBobble or Xevious when hitting button B/SW2 I get two actions:
    BubbleBobble: A/SW1 -> shoot bubble (OK); B/SW2 -> jump AND shoot bubble (NOT OK)
    Xevious: A/SW1 -> shoot Zapper (OK); B/SW2 -> shoot Bomb AND shoot Zapper (NOT OK)

    This does not happen in NES or SNES games.

    With Player 2 this does not happen.

    What I already did to get rid of this issue:
    Checked IPAC2 with Keyboard Tester -> OK, no double actions
    Checked Button: wired another button -> the issue is connected to SW2 regardless the physical button
    Checked retroarch.cfg: Still standard; I also checked via TAB Menu, also nothing non-standard

    Other things:
    Player 2 works fine without any configuration, also no player 2 mappings in retroarch.cfg.
    I understood that there is an input bug with older IPAC´s, but think this doesn´t apply here.
    I had this issue with v4.2 and now v4.3.

    I have already worked through this posts without finding a solution (but learning a lot):
    https://retropie.org.uk/forum/topic/317/setting-up-a-ipac2/185
    https://retropie.org.uk/forum/topic/13968/problem-with-left-and-right-keyboard-movement-in-lr-mame2003-in-retropie-4-3-emulationstation-and-fba-works-ok

    As I focus on arcade classics with my cabinet I was already thinking that the IPAC2 is the problem, but then I tried with NES and SNES games and the issue didn´t come up there.

    Any suggestions?

    Best regards
    fingal



  • @fingal Good info so far. It might help to see some of your config files. Use pastebin and show us:
    opt/retropie/configs/all/retroarch.cfg
    anything in:
    opt/retropie/configs/all/retroarch-joypads

    and any other retroarch.cfg from the emulator folder.



  • @caver01 Please find my config files here:
    opt/retropie/configs/all/retroarch.cfg
    https://pastebin.com/mnsaexRX

    opt/retropie/configs/all/retroarch-joypads
    nothing in there

    opt/retropie/configs/arcade/retroarch.cfg

    # Settings made here will only override settings in the global retroarch.cfg if placed above the #include line
    
    input_remapping_directory = "/opt/retropie/configs/arcade/"
    
    #include "/opt/retropie/configs/all/retroarch.cfg"
    

    /opt/retropie/configs/mame-libretro/retroarch.cfg

    # Settings made here will only override settings in the global retroarch.cfg if placed above the #include line
    
    input_remapping_directory = "/opt/retropie/configs/mame-libretro/"
    
    #include "/opt/retropie/configs/all/retroarch.cfg"
    

    No rom-related cfg-files.

    /opt/retropie/configs/nes/retroarch.cfg

    # Settings made here will only override settings in the global retroarch.cfg if placed above the #include line
    
    input_remapping_directory = "/opt/retropie/configs/nes/"
    
    #include "/opt/retropie/configs/all/retroarch.cfg"
    

    /opt/retropie/configs/snes/retroarch.cfg

    # Settings made here will only override settings in the global retroarch.cfg if placed above the #include line
    
    input_remapping_directory = "/opt/retropie/configs/snes/"
    
    #include "/opt/retropie/configs/all/retroarch.cfg"
    

    Did I miss one?



  • @fingal said in IPAC2 issue - 2 actions when pressing 1 button with lr-mame2003:

    Did I miss one?

    No, I think you nailed it. The only thing I see in the controls that is odd/different from MAME defaults is

    input_player1_l = "q"
    input_player1_r = "w"
    

    These are normally used for player 2, buttons 3 and 4 (X,Y).

    Here are my defaults, and all of these are lines from my opt/retropie/configs/all/retroarch.cfg

    input_player1_a = alt
    input_player1_b = ctrl
    input_player1_y = shift
    input_player1_x = space
    input_player1_start = num1
    input_player1_select = num5
    input_player1_l = z
    input_player1_r = x
    input_player1_left = left
    input_player1_right = right
    input_player1_up = up
    input_player1_down = down
    input_player2_a = s
    input_player2_b = a
    input_player2_y = w
    input_player2_x = q
    input_player2_start = num2
    input_player2_select = num6
    input_player2_l = i
    input_player2_r = k
    input_player2_left = d
    input_player2_right = g
    input_player2_up = r
    input_player2_down = f
    

    It does sound like your Switch 2 (button 2) is sending two inputs. If you are sure you don't have a wiring issue where both are connected together somehow, you might be just as well to simply attach a real keyboard, press TAB in any game using lr-mame2003 and bring up the MAME GUI menu, then map keys for ALL GAMES and simply find player 1 button 2, and remap it using the single button.

    From that point forward MAME will remember this and you will have cleared out double mapping for future games.



  • @caver01

    press TAB in any game using lr-mame2003 and bring up the MAME GUI menu, then map keys for ALL GAMES and simply find player 1 button 2, and remap it using the single button.

    This didn´t change the unwanted behavior directly, BUT...after checking again I recognized that with Player 1 Button 1 the menu said LCTRL or Retropad B (and someting else I can´t remember). So I remapped also Button 1 and this did the magic!

    Now Player 1 Button 1 says LCTRL RetroPad A and Player 1 Button 2 says LALT RetroPad B and everything is fine.

    Thank you for your support!



  • @fingal perfect! That’s what I was hoping it would do, but hard to explain exactly. So:witnessed you have to go back to games that you already tried mapp8ng 8n this manner and update those too, because they might have their individual saved key maps.

    Glad we solved it.


Log in to reply
 

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.