If you have purchased an Ipac2 and want to save time......
-
@noremaC1337 If using quotes in a retroarch.cfg file, they can't be smart "curly" quotes that often get added automatically when editing files on a computer. Another gotcha is assigning numbers like "6" instead of "num6". I just checked my default retroarch.cfg and I don't even use quotes for my controls.
My ipac4 is older, so it's a keyboard by default. Modern ipac controllers are gamepads if I'm not mistaken. That can be a challenge that has led some owners to update them with different firmware--something I never had to do.
-
@noremaC1337 also, I have escape mapped to a dedicated button on my Ipac, and a corresponding input setup in retroarch.cfg:
input_exit_emulator = escape
and hot keys disabled with
# input_enable_hotkey_btn =
Most folks use the start-select combo via hotkey to exit with gamepads but I found I was triggering exit accidentally. Besides, there is no need for the hotkey exit with a dedicated button. -
Man, this is super frustrating. I feel like i have tried everything, but nothing gets me back to the MAME game menu using my buttons that are hooked into the IPAC.
By default, ESC is set up on the IPAC as Start1 + Start2 as a shift function. I am OK with using that, but it doesn't get me out of the game. So now that I have changed my config to be input_exit_emulator = escape and then commented out the hotkey_btn I should be able to hold the Start1 button and then press the Start2 button, and it will send an ESC command, which should get me out of the ROM and back to the ROM menu within MAME folder on RetroPie, correct?
Another thing that I have noticed, is that when there is a "_btn" located at the end of a config, doesn't that mean for a game pad? I noticed that all my game pad configs have the _btn at the end, but the keyboard configs don't.
Let me try this one more time and get back with you. I saw somewhere on this forum that you have a specific way of getting retroarch.cfg files, can you tell me how to get that to you so maybe you can check it over and see what is going on?
-
@caver01 That initial change did not work. Something very strange happened to. I don't know what I changed, but I rebooted (as normal after a change like this) and it said that emulationstation.sh was missing from the appropriate folder. I SSH to the folder, and there is a 4MB file named "emulationstation" but had no extension. I had to chmod the file, then rename it to emulationstation.sh before it would load back up. This is the first time that has happened to me.
I went back into the retroarch.cfg that I have been working in. The location of this file is /opt/retropie/configs/all. I see that the changes you recommended, and I applied are still in there, so the file saved correct. Then I found an entry named "input_enable_hotkey" this goes along with what I was asking above. This didn't have the "_btn" at the end, like you had me comment out earlier. Does this mean that this specific value is for a keyboard set up? Regardless, I imagine you are going to say it would be best to comment this out too, as I am still OK with ESC getting me back to the menu, which would be achieved by holding Start1 and then pressing Start2. I just can't get it to work. Let me know about that code upload thing too.
-
@noremaC1337 said in If you have purchased an Ipac2 and want to save time......:
By default, ESC is set up on the IPAC as Start1 + Start2 as a shift function. I am OK with using that, but it doesn't get me out of the game.
I have an Ipac2 with the default "new" firmware in it. On non-libretro emulators such as Mame4All, Start1 and Start2 works out of the box to exit the game. For libretro emulators, Start and Select together works as default for me, the only thing I added to retroarch.cfg was:
input_player1_start = "num1" input_player1_select = "num5"
The ipac is pre-configured for MAME by default so on the non libretro emulators, it just works. If you have used autodetect though on a fresh install instead of configuring a keyboard first, it wont. Did you follow the instructions in my very first post?
-
@rbaker I noticed in your original post, your complaint was that you were unable to play 2 player games. Only the 1 player side worked. I tested that both of my worked by loading up the simspson rom, which I know is a two player simultaneous game. Both sticks, and the buttons for each player work. It seems the only thing that I am unable to do at this time, is back out of a ROM into the MAME menu.
rbaker, just so that I am not assuming, you are editing the retroarch.cfg file that is located in the /opt/retropie/configs/all/ location, correct?
I would really like to avoid a reinstall, as it has been a few months since I ran through the process. I am worried it will put me back further than it will get me ahead. I am, however, thinking that might be what I end up doing. I just cant imagine that there would be this many problems right out of the box. I figure that a config that was created for the gamepad that I have that may be interfering some how. I just cant isolate how. I have even removed all of the configs I could find, for the game pad, out of their original locations in an attempt to break the gamepad configuration. No dice. I am shocked that the game pad still works, I don't know where it is getting the config from for it now. (They used to live in the /opt/retropie/configs/all/retroarch-joypads).
I too noticed that the IPAC, out of the box, was configured for MAME. I got mine a couple months ago, I am not exactly sure what firmware came with it.
Here is what I have in the retroarch.cfg file that is located in /opt/retropie/configs/all/:
input_player1_a = alt
input_player1_b = shift
input_player1_y = space
input_player1_x = ctrl
input_player1_start = num1
input_player1_select = num5
input_player1_l = ctrl
input_player1_r = rctrl
input_player1_left = left
input_player1_right = right
input_player1_up = up
input_player1_down = down
input_player1_l2 = num1
input_player1_r2 = num0NOTE - I just changed the input_player1_start and input_player1_select after your suggestion. Trying now.
-
@rbaker It appears that changing this:
input_player1_start = num1
input_player1_select = num5in the retroarch.cfg in the /opt/retropie/configs/all/ did nothing. It just seems like it is getting it's values from some other file to me.
You are saying that if it was set up incorrectly before, it would recognize the IPAC as a joystick/gamepad, right? I will tell you that when I do a jstest in /dev/input/ it appears that the only option that would make sense would be "js0" at this time. I think that is the same value that was there when I did the jstest for the gamepad a few months ago. Are you saying that the only way to get the IPAC to recognize as a keyboard again would be a new install? I will also mention that I did the "configure input" option through the emulation station menu. when it tells me to hold a key for it to recognize what we are configuring, I will hold one of the buttons on my custom arcade that is hooked into the IPAC, and it pops up on the screen "keyboard". Does that mean anything?
-
@noremaC1337 I am actually glad @rbaker chimed in here. He has a much closer configuration to help. As I have said, my iPAC4, old as it is, may not be the best example. In fact, it's better to think of me simply using an actual keyboard with wires soldered to the keys.
There are actually several ways to get exit to work.
Method 1:
Configure your iPAC to send ESCAPE key (either dedicate a SW to that key and set it up with the WinIPAC UTIL which is what I did), or use the iPAC SHIFT combo Start1 (hold for a second) + Start2 which should also send ESCAPE
Then, you also need to setup RetroArch to interpret ESCAPE as I noted 7 hours ago, also disabling the retroarch hotkey.You can probably test method one even with a regular USB keyboard attached. If you press ESC on a regular keyboard, it should kick you out of MAME if retroarch is setup to do that.
Method 2:
Leave the hotkey setup in retro arch and simply use it. You would configureinput_player1_start = num1 input_player1_select = num5
and
input_enable_hotkey_btn = num5 input_exit_emulator_btn = num1
which would now let you press Start1 and Select1 and trigger the emulator to exit.
-
@caver01 Alright, what you mentioned is something I have already tried. With just a normal keyboard connected, once I get into the MAME rom, I hit escape, nothing happens. I am thinking it isn't using the retroarch.cfg file as expected...
-
@noremaC1337 What MAME are you running exactly?
-
@noremaC1337 By the way, you can use a service like pastebin to post the contents of your
/opt/retropie/configs/all/retroarch.cfg
and put the URL to that pasted stuff here in a message. That way we can see your config.Note that if you have a retroarch.cfg in your config folder for that emulator, it can override.
-
@noremaC1337 The thing is, I am confident we can get you straightened out. You should not have to re-image to get a working config. The question is more about how you want to perform your exit. Do you want to send ESCAPE (which by the way works in many emulators that may or may not be running inside RetroArch), OR do you want to use a hotkey combo (which only works in RetroArch)?
-
@caver01 I figure since Start1 and Start2 together send ESC from IPAC, I am wanting to go that route. Meaning to exit the ROM, I would hold Start1 then press Start 2 for it to escape. That would be great.
Can you tell me how to locate what version of MAME I am running? I made a note when I first started this project stating this:
MAME4ALL uses 0.37b5 ROMS
So would that be the version?
-
@noremaC1337 Where did you put your roms? What folder? If they are not in a libretro folder of some kind, you are NOT using a retroarch version of mame, so all of the editing inside retroarch.cfg files DOES NOT APPLY. Of course, it would apply, if you are using mame-libretro folder, and if so, you would pick which MAME you are running using the runcommand.
-
@caver01 mame-mam4all is the folder they are all in.
-
@caver01 after looking at the "runcommand" link that you put in, I realized a similarity to that strange issue I had earlier where the emulationstation.sh file was missing. After I renamed the emulationstation putting the .sh extension back on the file, every time I load a game now it has that grey box in the middle of the screen telling me it is loading. It used to just have text in the upper left of the screen. I wonder what caused this.
I also notice that there is a "runcommand.cfg" and "runcommand-launch-dialog.cfg" file now located in the /opt/retropie/configs/all/ folder that wasn't there before the strange emulationstation.sh issue...
-
@noremaC1337 ok. I can't really speak to your missing files, but that emulator doesn't use retroarch configs. You are running the standalone mame4all. It has its own configuration that I am not familiar with. Might be that it's not using escape to exit.
You could try putting your roms into mame-libretro folder and using run command to select lr-mame4all as the default. At least that way you would be running the retroarch version.
-
@caver01 I did try to run dropping one of my ROMS in there, but it did the start and stop. Where it was starting the ROM but then went back to the menu. I am thinking this had something to do with a missing BIOS? I remember having to find the BIOS and put them somewhere when I first set this up. Do they go in the same folder as the ROMS?
I ended up reformatting the SD card and putting the latest version of RetroPie on there. Pretty much followed this site to a T (which I believe is what did a few months ago):
https://howchoo.com/g/n2qyzdk5zdm/build-your-own-raspberry-pi-retro-gaming-rig
I then copied all my ROMS back into the same mame-mame4all folder I had them in before. I started one of them up, the same one I had been testing this whole time, 1941 I believe, and I was able to exit successfully by holding Start1 then pressing Start2.
So it seems like there is a config you have to do to navigate around through emulationstation, then a retroarch config for retroarch emulators. Then it sounds like another config for stand alones, like this MAME one that I am running? I don't know where this MAME config is located, but I believe you change the configuration by hitting "TAB" in a loaded ROM and it will allow you to make configuration changes. The odd thing about that, is I don't remember seeing an "exit" configuration in that menu, so therefore, I am unsure where it is getting the "escape" command to exit.
-
@noremaC1337 said in If you have purchased an Ipac2 and want to save time......:
So it seems like there is a config you have to do to navigate around through emulationstation, then a retroarch config for retroarch emulators. Then it sounds like another config for stand alones, like this MAME one that I am running? I don't know where this MAME config is located, but I believe you change the configuration by hitting "TAB" in a loaded ROM and it will allow you to make configuration changes. The odd thing about that, is I don't remember seeing an "exit" configuration in that menu, so therefore, I am unsure where it is getting the "escape" command to exit.
You have the right idea. When you ran that rom in another folder, it probably used lr-mame20003 but your rom is the wrong version for that mame. You have to use runcommand to specify lr-mame4all which probably would have worked.
In any case, glad it's working! Most of your answers about configs can be found in the wiki.
-
just so that I am not assuming, you are editing the retroarch.cfg file that is located in the /opt/retropie/configs/all/ location, correct?
Yes, that's the one.
It appears that changing this:
input_player1_start = num1
input_player1_select = num5
in the retroarch.cfg in the /opt/retropie/configs/all/ did nothing.This suggests that you are not running a libretro emulator when testing.
I will also mention that I did the "configure input" option through the emulation station menu.
In my experience this will cause problems with two player controls in libretro emulators even if you add them in here:
/opt/retropie/configs/all/retroarch.cfg
I started one of them up, the same one I had been testing this whole time, 1941 I believe, and I was able to exit successfully by holding Start1 then pressing Start2.
This functionality works out of the box for non-libretro Mame emulators. I use it to escape from Mame4All roms. lr-Mame2003 is different and uses Start and Select which is mapped to num1 and num5 above. But you must enable hot keys with this:
input_enable_hotkey = "num5"
Now this is the select button, 5 on the keyboard, Insert Coin on MAME. So you hold it in then tap 1 Player start to exit libretro emulators, not the other way around. Sounds like you got sorted in the end, ask if you have any other queries.
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.