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

Can't get (Select/Coin+Start) to exit game in certain emulators



  • Hi folks!

    So, I built my first cabinet with my son, turned out great! But, having some issues getting Select/Coin+Start (=ESCAPE) to actually exit games to Emulationstation in certain emulators.

    Pi Model or other hardware: 3B+
    Power Supply used: Forgot to check, sorry!
    RetroPie Version Used: retropie-4.4-rpi2_rpi3.img
    Built From: Pre-made SD Image on RetroPie website
    USB Devices connected: TurboTwist High/Low spinner, and an IPAC2 with the following connected: joystick + 6 buttons, minigrip w/ 2 buttons (thumb + trigger) + 6 buttons, (2x)coin, (2x)start
    Controller used: None (I just use sticks/buttons above)
    Error messages received: None - the button combo just does nothing
    Emulator: advmame1.4, mame2003, lr-pcsx-rearmed

    I previously had a full 0.106 romset running on advmame1.4, but had read this forum, and saw a lot of recommendations for running mam2003 for most games, but using advmame1.4 for vectors and spinner games, so thought I would try it.

    My IPAC maps Select/Coin button as Shift, and Select/Coin+Start as the ESCAPE button. I have hotkeys enabled (y). I did a fresh install from official site, and configured controls, and then went into Retroarch setup and mapped everything there, too. I even did in-game mapping. As far as I know, everywhere I know of, I have mapped ESCAPE (via Select/Coin+Start) to exit a game/UI. My goal is to have it work the same on all emulators.

    I loaded a single game from advmame1.4 (Asteroids), mame2003 (Centipede), and threw a PSX game on there too (Bust-A-Move ’99) too. All the games run, and advmame1.4 works as intended, allowing me to return to ES by pressing Select/Coin+Start. In mame2003 and lr-pcsx-rearmed, this combo does not work. In mame2003, my TAB button combo works and opens the GUI, and I can get out of that by pressing Select/Coin+Start, but when I am playing the game, I cannot seem to close the game and exit to ES – I am stuck!

    Likewise, I also get stuck in the PS1 game running on lr-pcsx-rearmed. Am hoping to get Select/Coin+Start to exit the game and return to ES.

    What am I doing wrong? I've read a ton of posts, and know other folks have had similar issues getting out of mame2003 games with ESCAPE, but cannot seem to find the solution. Eventually, I may add a dedicated EXIT button, but right now just looking for a consistent way to exit out of all games and return to ES.

    Thanks for any help!



  • I could be wrong, but I believe you can do this with a per-emulator config.
    Each Retroarch emulator has it's own folder with the retroarch.cfg in it. You don't do this via the "All" folder, and retroarch.cfg, you goto into each separate folder and look for retroarch.cfg.

    /opt/retropie/configs
    Look for the advmame and mame2003 folders, not sure their folder names.

    You then have to look for the line, in retroarch.cfg

    input_exit_emulator =

    I have a Rii wireless mini keyboard, for my Pi, so I use it to exit retroarch emulators like so..

    input_exit_emulator ="escape"

    Just change "escape", to the button, or button combo you want to use. This works for me in Mame 2003/2010, but I don't have advmame installed, so I can't confirm this works or not.



  • Just to add to what @John_RM_70 said, only the emulators that are libretro cores and part of retroarch (in other words, emulators with the prefix lr-) will have the hotkey enabled and obey the standard retroarch configs.

    advmame is not a libretro core, so you need to setup a way to exit the emulator from within the emulator (I am not using advmame, but I am sure it is somewhere under the Tab menu).

    Edit: Scratch the above, I have just re-read your post.
    When you enable hotkey in ES/Retroarch it maps this hotkey kinda as a modifier key. So to do a hotkey action you would need to press your hotkey + another key to have the action happen. In your case, to exit librerteo is expecting ESC (hotkey) + Start, which with your IPAC setup would mean Select+Start + another Start?! The way your IPAC is setup lr- emulators only see it as a hotkey when you press both.

    Either try what @John_RM_70 recommends in those OR if that doesn't work remap your ESC to a different key combo. Personally I would not bind a single IPAC input on multiple buttons and just use the lr-based default hotkey and maybe setup way to exit advancemame separately.



  • @Cybrasty Currently, when I run a game in advmame1.4 (Asteroids, in my example), pressing (Select/Coin+Start) properly exits the game, so that's not an issue.

    @John_RM_70 I will try this when I get home tonight.



  • @Cybrasty Ahhh... that makes sense. No way to get to that mapping [(Select+Start) + (Start)].

    Why does advmame currently work as intended? Because it does not use retroarch/ES hotkeys, and just directly sees ESCAPE when I press (Select+Start), because that is how it is mapped on my IPAC?

    OK, so you are suggesting I should try mapping ESCAPE key on IPAC to a single button input, correct? If I do this, then to exit mame2003, would I have to press the hotkey button, PLUS the dedicated ESCAPE input button? And then, to exit advmame1.4, I would just have to press the dedicated ESCAPE button?



  • @Cybrasty Would another solution be to NOT enable the hotkey in ES/Retroarch?

    I'm a little fuzzy on the benefits of doing so...



  • Ok, so to answer them in order:
    AdvanceMAME is not a libretro core and its default exit is ESC, so this is why it works "out of the box."

    I have not tried disabling the hotkey altogether, but it is a good idea. If you find a way to disable the hotkey and map Esc to exit emulator, that should work. If you do this, do let me know if it works.

    I am not sure of your physical button setup, but the easiest way to do this is to have a spare button mapped to Escape. Then, even if you can't disable the hotkey on its own, you can map that escape button as a hotkey and just use the standard retroarch bindings to exit game (hotkey + start). It will also give you the option to save, load, access retroarch menu in game, etc.

    To find all the common hotkey shortucts look under Default joypad hotkeys on retroarch configuration wiki.



  • @Cybrasty RE, disabling the hotkeys altogether, I found this in a post from @caver01

    input_exit_emulator = escape

    input_enable_hotkey =

    input_enable_hotkey_btn =

    With the second two lines commented out with # in front this disables hotkeys. Maybe you still want them for save states or something, but I have hotkeys disabled. This way, a press of your exit button sends ESCAPE and the first line here tells any libretro core to exit.

    Or, if you want to be explicit about disabling hotkeys, uncomment them and set to "nul".

    Found here:
    https://retropie.org.uk/forum/topic/14803/arcade-control-panel-mapping-questions/13

    I'll be digging in tonight (or soon as I can!).



  • Awesome! Now I am tempted to make full use of the c64 keyboard I have my retropie inside. I will tinker with it later this week to see if I can use both the keyboard without hotkey and the joypad with a hotkey at the same time :D



  • @Cybrasty It worked! I followed the info in the post from @caver01 and it worked like a charm. Hotkeys disabled, and I now have a dedicated EXIT button that gets me out of games in advmame1.4, mame2003, and PSX.



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.