Understanding MAME rom versions
-
Hi all,
As someone who tinkers with their RP4 almost daily, and who visits this site daily, I find myself frustrated by trying to understand MAME rom versions. Every time I go through the CLRMAMEPRO process, the roms still aren't playable. I've watched numerous videos on how to use CLRMAMEPRO. I've read many, many posts here, and yet, still can't grasp the concept. From everything that I've seen and read, there really shouldn't be any case where a MAME rom can't run. As long as (here's the key) that you know which emulator the rom set matches with.
After re-watching another video earlier, I think I've finally found the question to ask the community here. When using CLRMAMEPRO, one of the early steps in the process is selecting the proper .dat file. Whether it be 2003, 2010, etc. If I don't know what version of MAME the romset belongs to, how can I pick the correct .dat file for the process?
Bottom line here. I have MAME roms that don't run. I want to know what MAME emulator is needed to run them. Many times I try to launch the rom with every MAME emulator in Retropie and it still won't launch.
Can someone please give me some additional insight here so I can better understand the process?
Thank you.
-
@Drdave79 said in Understanding MAME rom versions:
From everything that I've seen and read, there really shouldn't be any case where a MAME rom can't run. As long as (here's the key) that you know which emulator the rom set matches with.
No, there are dozens (hundreds?) of MAME versions, and only a handful of them are available on RetroPie. There are absolutely romsets that won't work on here with any emulator.
Bottom line here. I have MAME roms that don't run. I want to know what MAME emulator is needed to run them. Many times I try to launch the rom with every MAME emulator in Retropie and it still won't launch.
You are searching for an emulator to match your roms. This is wrong. You should be searching for roms to match your emulator.
Pick your game. Find out what version it runs best in. Get the romset for that version. Run it in that version.
FWIW, I have found most games run well in FBNeo enough that I just set that as my "default" and only look to the different MAME versions when something has an issue or plain is not available in FBN.
(Also I've never built a romset with CLRMAMEPRO. It has always been easy enough to find them pre-built for whatever version I am looking for.)
-
@sleve_mcdichael you are very right.
As long as the roms are supported by FBNEO: use them there.
If not, find the right romset for (lr-)MAME (2003, 2003+, 2010, 2016)- this is the right way concerning the Raspberry Pi. -
@sleve_mcdichael I appreciate you trying to break it down for me. Here's what I can't grasp.
"Pick your game. Find out what version it runs best in. Get the romset for that version. Run it in that version."
Whether or not I have the rom in my collection, or find it online, how do I "find out what version it runs best in?"
I don't want to violate any policy, so I won't post any links. But let's take Thrill Drive as an example. I have the rom. It won't run on any MAME emulator I have. ok, so maybe that won't work on here as you stated. But how would I know that?
-
@Drdave79 then it seems it is an issue concerning the used platform.
A Raspberry pi is no capable of running 3D games from the late 90s on anyhow, even if you find a supported romset for MAME on the Pi - it will run with about 5fps.
Better use a PC for those games. -
@sirhenrythe5th said in Understanding MAME rom versions:
@Drdave79 then it seems it is an issue concerning the used platform.
A Raspberry pi is no capable of running 3D games from the late 90s on anyhow, even if you find a supported romset for MAME on the Pi - it will run with about 5fps.
Better use a PC for those games.@Drdave79 Therefore I run RetroPie on two different platforms: one is a Raspberry pi (3b) and the other is an 'old' laptop running Xubuntu and Retropie on top. Per platform I run a certain selection of gamens. N64 runs perfectly on the laptop but not good on the Raspberry pi.
Concerning the right romset for arcade, I personally like MAME2003+ a lot. Just search for MAME 0.78 or MAME 0.188 romset and they'll run on MAME 2003+ perfectly on a Raspberry pi. But of course, the more resources a game requires, the more you'll see the limits of the Raspberry pi. Still you can have a lot of fun with it.
-
@Drdave79
If you want to run a specific game, taking your example of Thrill Drive.
You can see here it was playable from mame romset version .86
http://www.progettoemma.net/gioco.php?game=thrilldYou can see when that was released here Aug-2004 (not that it makes any difference)
https://www.mamedev.org/oldrel.htmlSo now you know you need to run an emulator that supports at least romsets from version .86
Looking here you can see the best bet may be lr-mame2010 (as it support .139)
https://retropie.org.uk/docs/MAME/Alternatively, instead of getting an emulator to play the romsets you want, you could run with a popular one as others in this thread have said, the popular ones are mame2003plus and fbneo.
If you have 50 mins to kill (or just use the chapter links):
-
@Drdave79 said in Understanding MAME rom versions:
@sleve_mcdichael I appreciate you trying to break it down for me. Here's what I can't grasp.
...
how do I "find out what version it runs best in?"
let's take Thrill Drive as an example. I have the rom. It won't run on any MAME emulator I have. ok, so maybe that won't work on here as you stated. But how would I know that?
For starters: if it's available in FBNeo, use that. Thrill Drive (
thrilld.zip
) is not, so we'll have to look at MAME.The list of supported MAME emulators and their versions can be found here:
https://retropie.org.uk/docs/MAME/
"Which one do I use?"
1: Google it:
[<game title> or <rom name>] retropie
is often all it takes.
2: Ask on the forums, or
3: Research.This one doesn't search up anything useful so it looks like we'll have to dig.
Look up the game on a database like:
https://www.gamesdatabase.org/mame-rom/thrilld
http://adb.arcadeitalia.net/dettaglio_mame.php?game_name=thrilld&back_games=thrilldb;&search_id=0
This one might not be a particularly good candidate, as the notes say things like "demoted to 'not working'" and "never really worked to begin with and has gotten worse in later versions." If you want to give it a try anyway, you will need to use 2010 (0.139) or later, since it wasn't in the MAME2003 set (0.78), says here it was added in 0.86.
In the arcadeitalia link, scroll way down near the bottom to "additional infos" and click on the "info" tab.
We know it needs at least 2010 (0.139), and the next available version is 2015 (0.160).
Between 0.139 and 0.160 we see:
0.155 fixed "a graphics issue"
0.147 fixed "steering input is reversed"
8th September 2012 "a one-line fix solved a speed issue and the game seems fully playable."Older software was written for less-powerful machines and will likely be more performant, on our hardware, than newer versions. However the older versions are also likelier to have bugs and gameplay inaccuracies like those mentioned above. It's a trade-off, sometimes you have to try a couple and see what works best for you.
Get the 0.139 version of the rom and try it in MAME2010; if the graphics and speed issues are noticeable, (the reversed steering can probably be fixed by remapping controls in RetroArch), get the 0.160 version and try it in MAME2015. Or try 2015 first, and if it runs poorly or not at all, try the earlier one.
Nothing after 0.155 is noted until 0.226, so there likely won't be any difference using MAME2016 (0.174) but you could give that a try too if the others don't work.
-
@Floob said in Understanding MAME rom versions:
@Drdave79
If you want to run a specific game, taking your example of Thrill Drive.
You can see here it was playable from mame romset version .86
http://www.progettoemma.net/gioco.php?game=thrilldOh s--- progettoemma's back? Yes, use that. Much more readable (on my mobile anyway) than arcadeitalia.
I've been using the wayback version of PE since it went "down for maintenance" last year but didn't want to suggest that in case it was actually taken down for copyright strikes or something but if it's back online...
-
@Drdave79 said in Understanding MAME rom versions:
Whether or not I have the rom in my collection, or find it online, how do I "find out what version it runs best in?"
You can reference my recommended emulator list if you'd like. It's a highly optimized list, omitting pinball, gambling, most mahjong, clones that play identically, etc... It's fairly makeshift, but can be a very useful guide on which games work best for different emulators.
Arcade (MAME variants & FBNeo included)
N64 is there too...Hope this is helpful for you...
-
@roslof said in Understanding MAME rom versions:
which games work best for different emulators
Thanks for the list, but I'm a bit confused with that, I mean the romset still needs to be built against the .dat file, you cant grab a random ddonpacjh and expect it to work against a given emulator?
Or are you saying your list is all based on romsets ver x?Also, you may already use them, but you can play about with which games you have in your sets with filter tools like : https://www.waste.org/~winkles/ROMLister/
-
@Floob yes. You still need a proper rom to work with each emulator. You can’t just pull a game out of one version set and expect it to run on another version of mame and fbneo. Not every game rom gets updated between mame and fbneo versions, so you can get lucky with a random rom working, but rare. I make it easy. I have a mame2003 set and a slightly older fbneo set. For mame 2003, all the roms have no issue playing, but it’s older and has a few bugs here and there for some games. Now my fbneo set is older and I try to avoid updating fbneo, because you can run into an issue were a game here and there just stop working. I have had a couple games here and there to stop working after an update and had to find newer roms, or check to see if there was a mame 2003 copy.
-
@roslof I've been using your spreadsheet for over a year and it's been extremely helpful! I appreciate your hard work and dedication to it.
-
@Drdave79 Thank you @Floob and @sleve_mcdichael. This is a lot of information, but I feel like it's pointing me in the right direction. As you said, maybe this rom was a bad example, but it also shows an example of a rom I can't get to work (for whatever the reason is). I'm going to study all of this information to try to better understand it. I'll also add that I downloaded romcenter and will be trying that out to see if that sheds even more light on non-working roms.
-
@Drdave79
From what you have said above, I think your easiest step to start this process would simply be to run with what will work, and move forward from there.
So that would be to start by using lr-MAME2003 and use the 0.78 romset - this will get a significant number of games that just work. That way you dont need to worry about rebuilding anything.https://retropie.org.uk/docs/MAME/
Please remember, on the Pi, there isn't a single MAME emulator that will play all the games.
Dont waste time trying to get the roms you already have to work (especially if you cant tell what version they are) - just get ones that will work, i.e. 0.78 for lr-MAME2003. -
@Floob I hear what you're saying, but most "sources" for roms don't specify what romset they belong to. That's the greatest challenge.
-
@Drdave79
I cant help you find romsets, but 0.78 is a very popular one. If Google and Reddit dont help then you may need to look at rebuilding to create the 0.78 set. -
@Floob said in Understanding MAME rom versions:
@roslof said in Understanding MAME rom versions:
which games work best for different emulators
Thanks for the list, but I'm a bit confused with that, I mean the romset still needs to be built against the .dat file, you cant grab a random ddonpacjh and expect it to work against a given emulator?
Or are you saying your list is all based on romsets ver x?Yes, you may still choose to use CLRMAMEPro and such for your sets. I was answering the question, "which games work best for different emulators".
I created the list because I wanted to get as many functional/performant games running on a Pi4B. With that, there isn't one emulator that can run everything. So I created the list (initially for myself) to inform which emulator was best for each and every [optimized] ROM at the time of testing. Now, it caters to folks who want to get as many games up and running of quality. Still, it takes manual work to get it all together. And y'all might want to add clones and such that do not appear on the list.
It's otherwise fairly up to date (save some missing/updated FBNeo compatible games, in part because @barbudreadmon and Dink move faster than I can keep up).
The list may be copied and sorted. If you want to use the recommended ROMs. You could leverage the list to ensure you're not getting dupes and such from different ROMsets.
There is also a tab that's really handy for associating emulators with individual roms (emulators.cfg).
Answering:
you cant grab a random ddonpacjh and expect it to work against a given emulator
You'll note that that ROM isn't on my list, so there is no mapping. If there is something special about ddonpacjh that is different from ddonpach, then I could add it to the list. Understand that I typically attempt to have an optimized set, with less clones in most cases. However, ddonpach is on the list, and the recommended emulator for it is FBNeo. So anybody wanting to run ddonpacjh, should probably start with FBNeo.
Cheers!
-
@roslof
I guess what I'm trying to say is that you still need to check the romset version.
For example, on your sheet you have shadoww being run on lr-fbneo.You can see here that lr-fbneo needs a rom called "13.1s" to exist in the shadoww romset
https://raw.githubusercontent.com/libretro/FBNeo/master/dats/FinalBurn Neo (ClrMame Pro XML%2C Arcade only).datThat exists in the mame romset from, say .241, but it doesnt exist in the mame version from .160
So if someone wants to run shadoww I dont think you can get any shadoww.zip and expect it to work with lr-fbneo - as romsets change over time and you need to get the one that the emulator expects.
You can see this here where I run the version from .241 first, then I use the one from .160
-
@Floob all correct. The list is about providing recommendations to which emulator handles each game. It's not meant to help you verify your rom sets.
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.