LR-MAME. How to set custom controls?

Welcome Page Forums RetroPie Project Controller Configuration in RetroPie LR-MAME. How to set custom controls?

This topic contains 21 replies, has 4 voices, and was last updated by Profile photo of helpman helpman 1 year, 4 months ago.

Viewing 22 posts - 1 through 22 (of 22 total)
  • Author
    Posts
  • #114102
    Profile photo of helpman
    helpman
    Participant

    Just due to the feature of rotating through different shaders (which will make my setup a better system when used to small crt tvs or big led ones), I decided to try lr-mame and not mame4all…

    beisdes the hotkey to cycle through shaders which I already have correctly setup, I miss the mame menu (TAB) to remap keys for all games or specific games.
    I couldn’t find anything about which ones are the retroarch hotkeys for menus, and I must admit I don’t know most of its features.

    Is there any way to setup buttons only for lr-mame close to the mame ones? I.E. map keys for all games and map buttons for specific roms, without having to mess with cfg files?

    #114110
    Profile photo of herbfargus
    herbfargus
    Member

    Config files are what define the controls so no.

    https://github.com/retropie/retropie-setup/wiki/RetroArch-Configuration

    #114130
    Profile photo of helpman
    helpman
    Participant

    I already visited that wiki, but how can I know what button uses lrmame for what?
    a, b, x, y, start, select, l, l2,l3,r,r1,r2,r3…
    if I just want to set buttons 1 to 7, 1p, 2p and coin?
    is 1p start and select coins?
    a, b, x, y, l, r will be the 6 first ones, what’s 7th? l2?
    how do I set a different keymap for a rom? (i. e. 6 games buttons wont use button 1)

    #114131
    Profile photo of herbfargus
    herbfargus
    Member

    Depends on your controller and depends on the game. There is too much variability to have one answer work for everything.

    Accessing the runcommand menu you can make custom edits on a per rom basis:

    https://github.com/retropie/retropie-setup/wiki/runcommand

    You’ll essentially type in the joystick values you want to override the default retroarch.cfg in the format

    input_player1_a_btn = "1"
    input_player1_b_btn = "2"

    Etc.

    You can find out your joypad values with jstest or whatever the values show up as when you configure your controller with emulationstation.

    #114132
    Profile photo of helpman
    helpman
    Participant

    I already remapped it for neogeo, but it’s easy as it only uses a, b, x, y start and select as coins.

    what I’m trying to guess is what are the next buttons to map them to my 5-7 buttons. l, r, l2 maybe?

    for custom keymaps per rom, there’s an option on the M menu before the game starts right?
    maybe I can create a custom remap file for 6 button games and load them as needed using that option

    #115858
    Profile photo of aboimpinto
    aboimpinto
    Participant

    Hello,

    did you had any luck with the mapping?

    I notice that you can have the TAB in Mamelibretro. You need map one of the RTop or RBotton triggers.

    In Mame4All I don’t know how to map the tab!

    #115860
    Profile photo of helpman
    helpman
    Participant

    finally the only way I found was creating a standard layout for 6 button games, use romlister to create a list of all 6 buttons games and then export as a batch file copying that profile with each game rom name…

    #116563
    Profile photo of aboimpinto
    aboimpinto
    Participant

    hello …
    Can you explain how you did please?
    I cannot understand this tool!!

    Paulo Aboim Pinto

    #116565
    Profile photo of dankcushions
    dankcushions
    Participant

    this is a good idea! right now lr-mame2003 has a few issues:
    – the hotkey (typically ‘select’ button) conflicts with insert coin (typically ‘select’ button) meaning the latter often doesn’t work (see https://github.com/libretro/mame2003-libretro/issues/8)
    – it is impossible to rebind buttons without also rebinding the core retroarch gui buttons. eg, if you change the A button to do something else than the default, then it will no longer be the ‘confirm’ button in retroarch (see https://github.com/libretro/mame2003-libretro/issues/10), which makes using the RGUI difficult.

    in theory you could use per-game .cfg files to correct the key mapping for those games, and also disable the hotkey, and just do without save states/the RGUI (neither or which i need), solving both problems.

    but then i’ve thought of a problem – you’d not be able to exit the game without a hotkey ๐Ÿ™ i think you can bind exit to a single button, but i don’t like that either (easy to do it by accident). dang…

    #116574
    Profile photo of helpman
    helpman
    Participant

    I use a custom map on the opt/configs/emulators folder (inside each system there’s a retroarch.cfg file) there I set the standard buttons for that emulator.
    select+start hotkey still works!
    then for each game that needs a different map you create a cfg file with the same name as the rom on the roms folder, and only set the buttons you need to change there.

    #116575
    Profile photo of aboimpinto
    aboimpinto
    Participant

    Hello,

    I’m glad to know that is possible but can you give an example of this file and how do you map the TAB key with a combo?

    What should be the structure of the configuration file for each game that we have to add to the rom folder?

    best regards
    Paulo

    #116608
    Profile photo of helpman
    helpman
    Participant

    In my case I just needed to remap joystick buttons, so just as example… may give you a hint about what you need…

    in home/opt/retropie/configs/neogeo (as example) I have to swap button 0 and button 1, but just in case I set all buttons needed. You must edit the file retroarch.cfg

    # Settings made here will only override settings in the global retroarch.cfg if placed above the #include line

    input_player1_joypad_index = 0
    input_player1_b_btn = 0
    input_player1_a_btn = 1
    input_player1_y_btn = 2
    input_player1_x_btn = 3
    input_player1_start_btn = 7
    input_player1_select_btn = 13
    input_player2_joypad_index = 1
    input_player2_b_btn = 0
    input_player2_a_btn = 1
    input_player2_y_btn = 2
    input_player2_x_btn = 3
    input_player2_start_btn = 7
    input_player2_select_btn = 13
    input_enable_hotkey_btn = 9
    input_shader_next_btn = 6
    input_shader_prev_btn = 5

    input_remapping_directory = /opt/retropie/configs/neogeo/

    #include “/opt/retropie/configs/all/retroarch.cfg”

    as you can see if you compare it to yours, I added the input_blabhlahblah

    apart from remapping the buttons to others (in neogeo select insert coins so I set it to my button 13, which emulates the coin slot. even with the button changed, as the base retroarch hotkeys are still by default select+start, which are defined as button 9 and button 8, the hotkey still works and pressing both will exit the game back to emulation station.

    you can do this for every libretro based emulator.

    if you need to change buttons for a specific game, just make a copy of the retroarch.cfg file for that emulator, and place it on home/pi/retropie/roms/mame-mame4all (or the rom folder you need) and edit away.

    # Settings made here will only override settings in the global retroarch.cfg if placed above the #include line
    # configuracion mame juegos 6 botones
    input_player1_start_btn = “7”
    input_player1_select_btn = “13”
    input_player1_b_btn = “1”
    input_player1_a_btn = “2”
    input_player1_y_btn = “3”
    input_player1_x_btn = “4”
    input_player1_l_btn = “5”
    input_player1_r_btn = “6”
    input_player1_l2_btn = “nul”
    input_player1_r2_btn = “nul”
    input_player1_l3_btn = “nul”
    input_player1_r3_btn = “nul”
    input_player2_start_btn = “7”
    input_player2_select_btn = “13”
    input_player2_b_btn = “1”
    input_player2_a_btn = “2”
    input_player2_y_btn = “3”
    input_player2_x_btn = “4”
    input_player2_l_btn = “5”
    input_player2_r_btn = “6”
    input_player2_l2_btn = “nul”
    input_player2_r2_btn = “nul”
    input_player2_l3_btn = “nul”
    input_player2_r3_btn = “nul”
    input_enable_hotkey_btn = “9”
    input_shader_next_btn = “6”
    input_shader_prev_btn = “5”

    input_remapping_directory = /opt/retropie/configs/mame-mame4all/

    #include “/opt/retropie/configs/all/retroarch.cfg”

    this is a mapping for street fighter 2 championship edition.
    (I just moved all the buttons, as the button 0 is not used, but 1,2,3,4,5,6 instead.)
    so as the rom zip file is named sf2ce.zip, you must name this file “sf2ce.zip.cfg” and it will be loaded when this game runs.

    not sure if this helped you ๐Ÿ˜€

    #116657
    Profile photo of aboimpinto
    aboimpinto
    Participant

    tkx for the examples .. and witch line is the responsible for remapping the TAB key !??!

    #116660
    Profile photo of dankcushions
    dankcushions
    Participant

    there’s no point mapping the tab key. it won’t save any rebindings. see https://github.com/libretro/mame2003-libretro/issues/11

    use the given retroarch cfg mappings to remap your controls.

    #116664
    Profile photo of helpman
    helpman
    Participant

    maybe you though on a mame menu, but with libretro chores there’s no such menu, you must remap buttons on retroarch cfg files

    #116810
    Profile photo of aboimpinto
    aboimpinto
    Participant

    dammmm
    Maybe I’m very stupid for not seeing what is going on … nothing of this works for me.

    I add on my Mame-Mame4All folder, the same folder my game is the file .cgf with this information

    
    input_player1_start_btn = 5
    input_player1_select_btn = 4
    input_player1_b_btn = 2
    input_player1_a_btn = 0
    input_player1_y_btn = 1
    input_player1_x_btn = 3
    input_player1_l_btn = 7
    input_player1_r_btn = 6
    input_player1_l2_btn = nul
    input_player1_r2_btn = nul
    input_player1_l3_btn = nul
    input_player1_r3_btn = nul
    input_enable_hotkey_btn = 4
    
    input_remapping_directory = /opt/retropie/configs/mame-mame4all/
    
    #include /opt/retropie/configs/all/retroarch.cfg
    

    and looks like what in the attach and my INSERT COIN still not working … even when I remap to another button.

    where can I check the log of the MAME … witch files the emulator is loading, etc, etc??

    best regards
    Paulo Aboim Pinto
    Odivelas – Portugal

    Attachments:
    #116812
    Profile photo of dankcushions
    dankcushions
    Participant

    your file is named wrong – should be .cfg not .cgf ๐Ÿ™‚

    #116817
    Profile photo of helpman
    helpman
    Participant

    and the retroarch cfg files work with lr-imame4all, if you use mame4all you’ll be able to set custom controls just opening the standard mame menu with tab. connect a keyboard to open it, then change each general option (including tab) to what you need.

    #116818
    Profile photo of aboimpinto
    aboimpinto
    Participant

    dammm ..
    I don’t have a keyboard to connect there … there should be a way, a file that I can update!

    #116834
    Profile photo of dankcushions
    dankcushions
    Participant

    so use lr-imame4all instead?

    #116850
    Profile photo of aboimpinto
    aboimpinto
    Participant

    dammm .. I made it … first game that I could map buttons like I want!!!

    tkx you all …

    hugs and kisses
    Paulo Aboim Pinto
    Odivelas – Portugal

    #116851
    Profile photo of helpman
    helpman
    Participant

    I’m glad you made it work, aboimpinto ๐Ÿ˜€

Viewing 22 posts - 1 through 22 (of 22 total)

Forums are currently read only - please visit the new RetroPie forums at https://retropie.org.uk/forums/

Skip to toolbar