How to get lr-mame2016 (mame-libretro) working?
-
So after taking 22 HOURS to install from source, I theoretically now have lr-mame2016 running. I've put (what I think are) the 0.174 ROMs in the roms/mame-libretro folder. And I've got these lines in /opt/retropie/configs/all/emulationstation/es_systems.cfg:
<system>
<name>mame-libretro</name>
<fullname>Multiple Arcade Machine Emulator</fullname>
<path>/home/pi/RetroPie/roms/mame-libretro</path>
<extension>.zip .ZIP</extension>
<command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 SYS mame-libretro %ROM%</command>
<platform>arcade</platform>
<theme>mame</theme>
<directlaunch/>
</system>But when I try to run a game it just dumps me back to the menu. What have I missed? Anyone?
-
Are the rom's zipped, or 7z? What does the output of /dev/shm/runcommand.log show?
If they are 7z like mine, just edit the extension element and ad .7z after the .ZIP.
-
@treaves They're .ZIP files.
For some reason it seems to be trying to run lr-mame2003, not 2016:
Parameters:
Executing: /opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.so --config /opt/retropie/configs/mame-libretro/retroarch.cfg "/home/pi/RetroPie/roms/mame-libretro/catnmous.zip" --appendconfig /dev/shm/retroarch.cfg
/opt/retropie/supplementary/runcommand/runcommand.sh: line 1006: 10312 Segmentation fault /opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-mame2003/mame2003_libretro.so --config /opt/retropie/configs/mame-libretro/retroarch.cfg "/home/pi/RetroPie/roms/mame-libretro/catnmous.zip" --appendconfig /dev/shm/retroarch.cfg -
@spudsmctoole said in How to get lr-mame2016 (mame-libretro) working?:
What have I missed? Anyone?
Did you select the emulator in runcommand first.
? -
In case this is your first time using MAME on a RetroPie, I'll let you know what I learned through searching and lots of hours of trial:
Not all emulators are created equal. This is not like a console, where one solid emulator will run every game (e.g. NES). Instead, every arcade game basically needs to be emulated separately. The MAME group is constantly updating their games they can emulate, both adding new games/versions and improving existing. Each update is given a version number.
Just because a MAME emulator is a certain version number, does not mean that it can play all the games in that MAME set.
The first thing I did with mine was install mame2010, thinking I could now play all 8000+ games. I was very wrong; most games didn't launch or launched with errors.
Now, if I want a game, I try the emulators in the following order:
- lr-mame2003 (very stable build with a decent amount of games)
- lr-fbalpha
- lr-imame4all
- lr-mame2010
- give up
I had made lr-fbalpha my first choice, since it has nice features and is being actively updated (updated to new FB Alpha sets, which is basically linked to MAME versions). However, I had the issue more than once, where the FB Alpha updated when I updated the RetroPie and games that had worked on that emulator where now broken until I updated the game file to the new FB Alpha version. I have since made mame2003 my default, because if it works on that it should always work (the mame2003 is locked to a MAME version, so I don't have to worry about all my games suddenly being an old version number).
-
"Did you select the emulator in runcommand first?"
I've no idea what that means, so no. I've installed dozens of emus on Retropie and never had to do that with any of them before.
-
"In case this is your first time using MAME on a RetroPie"
It's not, been using it for about a year with mostly lr-mame2000 and a little bit of lr-mame2003, but I want to play some specific games that are very old and low-spec but only run on much newer versions of MAME.
-
@spudsmctoole said in How to get lr-mame2016 (mame-libretro) working?:
I've no idea what that means
Take a gander:
-
@herb_fargus Finally managed to work out how to get the menu to come up and it hasn't helped. I've set all the games in the mame-libretro folder to run with lr-mame2016, but they still just dump me back to the menu.
What the log now shows is a "segmentation fault":
Parameters:
Executing: /opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-mame2016/mamearcade2016_libretro.so --config /opt/retropie/configs/mame-libretro/retroarch.cfg "/home/pi/RetroPie/roms/mame-libretro/checkman.7z" --appendconfig /dev/shm/retroarch.cfg
/opt/retropie/supplementary/runcommand/runcommand.sh: line 1006: 20734 Segmentation fault /opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-mame2016/mamearcade2016_libretro.so --config /opt/retropie/configs/mame-libretro/retroarch.cfg "/home/pi/RetroPie/roms/mame-libretro/checkman.7z" --appendconfig /dev/shm/retroarch.cfgIt's the same for every ROM.
-
@SpudsMcToole
I can run most of my games with lr-fbalpha and lr-mame2003-plus. Is there any particular game that doesn't run on those two? FBA is rather recent from this year. 2003-plus is 2003 with new games supported and old games with problems getting fixes. -
@darksavior Example: Cat'n'Mouse.
-
According to the website, the MAME emulators only support .zip files.
https://github.com/retropie/RetroPie-Setup/wiki/MAME
I would suggest unzipping some from .7z and then rezipping to a .zip. I use BandiZip, but there are plenty of free programs out there for this.
The website also warns on mame2016:
Note: This emulator is considered 'experimental' in RetroPie and has limited functionality. It requires more processing power than earlier MAME versions and will not run as many games at full speed on rPi hardware.It will likely only run a small subset of the MAME 0.174 games.
-
@spudsmctoole said in How to get lr-mame2016 (mame-libretro) working?:
@darksavior Example: Cat'n'Mouse.
It might be possible to add Cat'n'Mouse to mame2003-plus -- it was originally agree added in make .100
Feel free to post a new issue in the GitHub repository if you an want to explore this and if you would theoretically be willing to help test. I'm not the expert on backports, though
-
@jjack229 said in How to get lr-mame2016 (mame-libretro) working?:
I would suggest unzipping some from .7z and then rezipping to a .zip. I use BandiZip, but there are plenty of free programs out there for this.
Already did that. I've tried numerous games in mame2016 but absolutely none even try to boot.
-
@spudsmctoole Have you tried looking in the log file (
/dev/shm/runcommand.log
) to see if there's an error hint ? Being a Libretro core, you can enable verbose logging and have a detailed run log. -
@mitu Yes, see paste above.
-
@spudsmctoole said in How to get lr-mame2016 (mame-libretro) working?:
@mitu Yes, see paste above.
That's not with verbose options enabled, so it's kind of a generic error (emulator doesn't work with the ROM). Just from that log I'd say bad ROM. Run the game with verbose logging chosed in the Runcommand launch menu and then upload the log file to pastebin.com - or just look at it to sport the actual error.
-
@jjack229 said in How to get lr-mame2016 (mame-libretro) working?:
According to the website, the MAME emulators only support .zip files.
That's not what the WIKI states, and it's also not correct. The default supported extension is zip, true. But 7z is supported by most of the emulators. It would be good if the config file were updated to have that added to the ones that do support 7z. You can always look at the libraries the binary is linked with to determine it. But at a minimum 2016 and truck both do. If I remember correctly, so do 2010 and 2014.
-
@treaves Good idea. I have at least added .7z support information to the table at the top of the RetroPie MAME docs: https://github.com/RetroPie/RetroPie-Setup/wiki/MAME
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.