Pi3B, MAME, lr-MameForAll or lr-Mame03 - Segmentation Faults
-
Hello and Greetings All,
I am trying to track down and fix a problem with some MAME roms (SF2 in particular). There are loads of copies of SF2 and every single one that I have tried has failed.The games crash before starting.
I pressed A at launch time and tried all these roms with lr-MameForAll and lr-Mame03 but there was no luck getting them to work.I tried launching with verbose logging and looked at the log in /dev/shm/runcommand.log
This revealed a "Segmentation" errorSo I searched the documentation at https://retropie.org.uk/docs/Overclocking/#where-do-i-start says:
"If emulators start crashing (check logs for segmentation fault or general protection fault or similar) or the kernel panics or the system freezes or any other such unexpected result, you're probably past the limit of what your individual Pi can do. Back off the overclock to the previous stable setting. That's probably as good as it gets."
But I have never overclocked. In fact my Raspberry Pi says "this Pi cannot be overclocked" if you try.So I'm really unsure of where to go from here.
Anyone know if there other causes for segmentation faults, or any tricks to SF2 or Mame?Thanks All
-
Are you using the correct versions of the romsets for each version of mame you're using? Are the emulators updated to latest?
https://github.com/RetroPie/RetroPie-Setup/wiki/Arcade
Some advice:
Unless you're using a pi0/1, there is no real reason to ever use mame4all. It's from 2000, emulation isn't the best, and game support is low.You can also try fba. Its romset is from latest mame, so it should be easier to find roms for that. Emulation is very new, but it can be slow depending on the game. Neogeo/cps1/2/3 run flawlessly, though.
-
Hi @Darksavior , thanks for your help.
≈
@darksavior said in Pi3B, MAME, lr-MameForAll or lr-Mame03 - Segmentation Faults:Are you using the correct versions of the romsets for each version of mame you're using? Are the emulators updated to latest?
The correct versions of the romsets... you mean the version numbers? Or do you just mean using lr-fbalpha for games that only work with FB Alpha Emulators? I don't actually have the option to use lr-fbalpha when I push A at launch - so perhaps I need to install lr-fbalpha...
I have been here, but the page actually doesn't go anywhere... the link to lr-fbalpha is a 404 (could someone please fix it?)
Google is taking me to a lot of random, non-official-looking GitHubs with source code, but I'm just after a file that I can copy to the right folder. So, I know you can't post game Roms for legal reasons, but is there a link to the proper lr-fbalpha bios rom?Some advice:
Unless you're using a pi0/1, there is no real reason to ever use mame4all. It's from 2000, emulation isn't the best, and game support is low.Excellent thanks.
You can also try fba. Its romset is from latest mame, so it should be easier to find roms for that. Emulation is very new, but it can be slow depending on the game. Neogeo/cps1/2/3 run flawlessly, though.
I will try fba too, if I can find it. Thanks very much.
-
The correct versions of the romsets... you mean the version numbers?
yes. are you using the correct version of the romset for the emulator you're using?
I have been here, but the page actually doesn't go anywhere... the link to lr-fbalpha is a 404 (could someone please fix it?)
which link? there are many on that page.
Google is taking me to a lot of random, non-official-looking GitHubs with source code, but I'm just after a file that I can copy to the right folder. So, I know you can't post game Roms for legal reasons, but is there a link to the proper lr-fbalpha bios rom?
we can't post bioses and you can't ask for them. please read the forum rules.
in any case, you don't need a bios of any sort to run SF2. you're likely using the wrong romset.
-
This link, the one for the RetroPie version of FBA:
FB Alpha v0.2.97.40 DAT File: FB Alpha v0.2.97.40 (Arcade Only)
which points to this address:
https://github.com/libretro/fbalpha/blob/master/dats/FB Alpha v0.2.97.40 (ClrMame Pro XML).dat.zip?raw=trueInterestingly I ran RetroPie Setup again and saw that yes lr-fbalpha was already installed.
So, why is it never an option as an emulator when I hit the A button to configure the rom at launch?Anyway, I've just run all the update scripts (not sure if I even needed to as I am on 4.2, the latest) and now you can no longer press A button on launch. Extremely frustrating - I have taken weeks to set all this up so far. So new issue to solve. I see another lone guy on this forum who experienced this 6 months ago never found a fix to this.. (https://retropie.org.uk/forum/topic/7643/can-t-enter-runcommand-by-pressing-a-button/23)
Yes, I've read the rules like 3 times because I saw all the threats to ban people... I remembered no rom posts... no bios posts too? Ok.. sheesh so many rules it's like walking on egg shells.. no problem, I understand.
-
@crumbs said in Pi3B, MAME, lr-MameForAll or lr-Mame03 - Segmentation Faults:
This link, the one for the RetroPie version of FBA:
FB Alpha v0.2.97.40 DAT File: FB Alpha v0.2.97.40 (Arcade Only)
which points to this address:that's the link to the dat file. i don't think you need it.
the link is dead, yes, because fba has been updated and we need to update the documentation. i will volunteer to do this when i have time.
Interestingly I ran RetroPie Setup again and saw that yes lr-fbalpha was already installed.
it is installed by default. dat files are not emulators.
So, why is it never an option as an emulator when I hit the A button to configure the rom at launch?
when launched from what folder? you need to fill out this form so we don't have to guess: https://retropie.org.uk/forum/topic/3/read-this-first
Anyway, I've just run all the update scripts (not sure if I even needed to as I am on 4.2, the latest) and now you can no longer press A button on launch. Extremely frustrating - I have taken weeks to set all this up so far. So new issue to solve. I see another lone guy on this forum who experienced this 6 months ago never found a fix to this.. (https://retropie.org.uk/forum/topic/7643/can-t-enter-runcommand-by-pressing-a-button/23)
works for me. remember the 'A' button is the one you have bound in emulationstation during your initial configuration, whichever that may be.
-
@dankcushions said in Pi3B, MAME, lr-MameForAll or lr-Mame03 - Segmentation Faults:
that's the link to the dat file. i don't think you need it.
Okay... I'm feeling in the dark here... which one do I need (oops I can't ask that, can I?)
when launched from what folder? you need to fill out this form so we don't have to guess: https://retropie.org.uk/forum/topic/3/read-this-first
Yep read it four times now. Not trying to make you guess. I am not launching from a folder, I am launching from the GUI front end.
I used the RetroPie Setup and the ASCI based utility installed the BIOSs in whatever folder it installs them in. I assumed these scripts install things to the correct folder.
-
whoops, i managed to edit your post rather than reply. here is my reply:
@crumbs said in Pi3B, MAME, lr-MameForAll or lr-Mame03 - Segmentation Faults:
@crumbs said in Pi3B, MAME, lr-MameForAll or lr-Mame03 - Segmentation Faults:
that's the link to the dat file. i don't think you need it.
Okay... I'm feeling in the dark here... which one do I need (oops I can't ask that, can I?)
you don't need the .dat file. why do you think you need it? dat files are for rebuilding romsets as per https://github.com/RetroPie/RetroPie-Setup/wiki/Validating,-Rebuilding,-and-Filtering-Arcade-ROMs
you basically should never need to do this as all the romsets are easy to find.
when launched from what folder? you need to fill out this form so we don't have to guess: https://retropie.org.uk/forum/topic/3/read-this-first
Yep read it four times now. Not trying to make you guess. I am not launching from a folder, I am launching from the GUI front end.
to have something to launch you need to transfer a rom to a folder. which rom? which folder? this is the information that is needed.
I used the RetroPie Setup and the ASCI based utility installed the BIOSs in whatever folder it installs them in. I assumed these scripts install things to the correct folder.
there is nothing that installs bioses. bioses for arcade systems are transferred in the same way and to the same place as the arcade roms.
-
@dankcushions
I see, I was under the impression that you guys were calling an emulator a BIOS. Probably erroneous information gathered on Youtube.So as I understand now, we need an emulator, an emulator BIOS and a game ROM. That makes more sense.
Except, if BIOSs are needed and there is a BIOS folder, why is there no documentation on BIOSs in RetroPie.org?
-
@crumbs said in Pi3B, MAME, lr-MameForAll or lr-Mame03 - Segmentation Faults:
Except, if BIOSs are needed and there is a BIOS folder, why is there no documentation on BIOSs in RetroPie.org?
there is. every system that needs a BIOS will have that detailed on their page. eg https://github.com/retropie/retropie-setup/wiki/Playstation-1#bios
i guess there could be a glossary saying what a BIOS is generally but i think google is enough here.
-
@dankcushions
Well, if I was writing the documentation, which I think should tell people what they need to know, on the very first page, I'd have a What is a BIOS? section straight after What are ROMs? and I'd write two sentences that explain what you've said to me today: "A BIOS is a small piece of software to tell hardware how to work. Some emulators emulate the system's BIOS and some emulators require a BIOS file; whether or not a particular game system needs a BIOS file is specified on that system's page."I'd also explain that emulators are installed within the RetroPie GUI, because nowhere in the documentation does it say this simple but crucial bit of info.
The reason I'd do this is to eliminate confusion.
-
The open source world is always in need of documentation help.
From your suggested sentences it seems like you have good English writing skills. The official documentation is all generated from that documentation wiki, which is editable by you if you register a github account.
In other words, you can yourself help make enhancements to the docs. :)
-
@crumbs that crucial bit of info has it's own section on the first installation page
https://retropie.org.uk/docs/First-Installation/#installing-additional-emulators
On RetroPie 4.0+, not everything is installed by default. The pre-made images contain the best working emulators for each system supported by the hardware. This should cover everything most users would be doing. Ports like quake and doom and some other emulators like ScummVM can be installed later.
Software can be installed from the RetroPie-Setup script - which is accessible from the RetroPie menu on EmulationStation
Perhaps the bios could be explained on the first page. I just figured I'd keep it simple and then assumed most people already had experience with emulation
At the very least this page could be updated.
-
@herb_fargus, you are correct! Apologies.
-
Okay, I have made some very minor changes. Hopefully, they will be approved.
Thanks -
@darksavior said in Pi3B, MAME, lr-MameForAll or lr-Mame03 - Segmentation Faults:
Unless you're using a pi0/1, there is no real reason to ever use mame4all. It's from 2000, emulation isn't the best, and game support is low.
I am not sure what you mean by game support is low but mame4all-pi seems perfectly suited to the under-powered Pi. I think it's still relevant and the emulation is fine. Probably a smaller code foot print compared to the Libretro cores. As a general rule the old MAME's do run faster compared to the newer.
It does allow for better flexibility with input configuration and no double inputs which allow for <not> statements. That's a pretty big deal. The Libretro cores can't do that. If you compare binaries (ROM files) with lr-mame2003 using something like WinMerge you'll find that about 65 to 75 percent are 100% identical.
Two things the Libretro cores do that I find invaluable are DaveJ's shader which is wonderful and also Buzz added that awesome analog stick as D-Pad support. I am not sure but the latter might be doable in mame4all-pi. I mean using an analog stick for control. Some games I prefer it over the D-Pad. It's quite handy for flight games like Zaxxon it works great.
When I upgraded from mame4all-pi to lr-mame2003 I added from 6 to 12 new games. It really didn't change much. The golden age of video games and it's decline really intersects in the mid 80's. 0.78 does have roughly double the ROMs but once you weed out clones (so many clones) and foreign language games the same basic ROM set of relevant games that most played is the same.
When you venture into lr-mame2010 and lr-mame2014 you'll find plenty of games that aren't Pi friendly as they are big jumps in ROM sets and a time era.
I think it really boils down to what features and game sets you are targeting but mame4all-pi is small, rock solid, great input configuration, ported to about every platform & great golden age game support. I wouldn't count it out as a competent and usable MAME emulator.
-
@riverstorm I meant less games are supported than the other mames and fbas. Mame4all also has a libretro version so no issue there. The emulation is old and not as accurate. Games will have bugs or not run correctly. You might not have noticed it, but I did. It depends on the game.
The pi3 is fast enough to handle those same games on a more recent emulator with more accuracy. It might take some trial and error because games will run differently between fba and mame 2003. I use 4 arcade emulators to effectively run the hundreds of games I want to play because of speed issues, accuracy, and the different games they support.
In the end, fba and mame2003 are the official recommended emulators for the pi2/3 and most agree. If the few games you play run fine for you in mame4all then don't bother.
-
@darksavior said in Pi3B, MAME, lr-MameForAll or lr-Mame03 - Segmentation Faults:
Games will have bugs or not run correctly. You might not have noticed it, but I did. It depends on the game.
I agree with that between 0.36 and 0.78 it nearly doubled and between lr-mame2000 and lr-mame2003 I would think a shoe in for the latter and is considered the gold standard in certain aspects except maybe vector where AdvMAME outshines them all. I do agree to that FBA seems to run Neo-Geo, Capcom, Konami games better. They just seem to run smoother for certain.
I do also use multiple emulators too depending on the game. Mainly lr-mame2003 roughly 300 or so games with aforementioned options of shader and analog d-pad support. AdvMAME for vector, FBA for Neo-Geo, etc.
The original author of mame4all-pi (squid) had a majority of the games running at 100% without frame skip. It's been a hobby of mine since the late 90's. I do faithfully download the split updates every few months merge it and join the torrent. That includes the CHD's & extras, etc. I think it's close to 400GB now. It's where I spend most of my time when it comes to emulation.
That's what I was pointing out is the binaries (ROMs) are mostly 100% identical between the two version which are only 3 years apart. I don't believe the driver/board support emulation improved that much between those versions but they went crazy with additions.
You would have to be more specific on what exact games you find buggy in 0.37b5 that work differently in 0.78? My main point is that mame4all-pi (not lr-mame2000) is still very relevant if not a choice not just for the familiarity and support for being so widely ported but also the input configuration is still superior out of the box it works. Meaning there's certain configuration scenarios lr-mame2003 can't do...yet or at least not easily as I believe you will loose hotkey functionality if you "nul" all the Retroarch inputs to rely on lr-mame2003 inputs alone to correct the issue. :)
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.