MAME roms not all working
-
I'm obviously well past that point BuZz... If I'm posting questions, rest assured there are probably real problems.
Anyway, it turns out it was a few issues. I somehow managed to remove some of the parents and clones of certain sets in my main mame 0.161 folder. Interestly, clrmame didn't report them as missing and just created new merged versions with the bits and pieces that it had, which were split sets so they were incomplete. So I restored from my original 161 tarball, only to find that it too is actually missing bits from the file and the dat file, specifically for the outrun game even.
It has outrun.zip, outrunb.zip but missing outruna.zip
The mame 0.78 dat file requires outruna.zipRunning a clrmamepro scan of the 0.161 doesn't flag anything because the dat file doesn't reference outruna so there is no mismatch. But when I rebuild as merged sets to 0.78, clrmamepro doesn't catch that there is a missing outruna file, and a scan afterwards also doesn't catch it. Perhaps because it is a merged file and it loses track of its references. But I would think that during the initial merge from the split 0.161 set, clrmamepro should have flagged something that when it reads outruna in the 0.78 dat file, but the outruna file doesn't exist, it shouldn't try to merge outrun and outrunb and pass it off as a finished file. If I grab an outruna from another romset, and put it into the source folder and then rebuild it, it rebuilds correctly merging all 3 files.
So while I know clrmame is proven, It might have an issue here... perhaps with the conversion from split to merged and missing an intermediate clone, which might be a very small subset of roms which could be why it has gone unnoticed. I'll play more with it. Also going to grab the 0.181 rom set and see what it has for outrun
-
@dsstrainer said in MAME roms not all working:
If I'm posting questions, rest assured there are probably real problems.
It's not that anyone is judging the legitimacy or severity of your problems. It's that without following the guidelines detailed in that link, no one will know enough about your issue or basic setup to give any kind of meaningful help.
-
@mediamogul and as he mentioned it was due to his misunderstanding of how mame ROMs work rather than an actual issue as is the case with 99% of all posts about mame.
-
@dsstrainer my advice is forget clrmamepro and just get the 0.78 set. there's almost certainly a way to get clrmamepro to do what you want it to do, but it's not always obvious, and we can't really support you in it beyond what's already written in the guide.
i personally think the clrmamepro stuff should be probably less prominent in the wiki, or in a separate section. full romsets are so widespread.
-
@dankcushions said in MAME roms not all working:
i personally think the clrmamepro stuff should be probably less prominent in the wiki, or in a separate section. full romsets are so widespread.
I can get a rom set built to about 95-99% complete, but even following the letter of the law, I've never had perfect results. I've relied on prebuilt full rom sets for some time now as a result. However, I still always scan them against a dat file to check for completion.
-
@mediamogul said in MAME roms not all working:
I can get a rom set built to about 95-99% complete, but even following the letter of the law, I've never had perfect results.
You may already be aware, but one overlooked detail when building previous ROM sets is the fact that you must use the "rollback" ROM set in conjunction with a newer set of ROMs to properly rebuild.
I haven't had any issues when building 0.37b5, 0.78, and 0.94 from 0.181 with the rollback set.
-
I've always used rollback sets in the past, but I do acknowledge that whatever the issue, it was of my own making in some way. I should really reexamine the process sometime and get a hold of it fully.
-
@dsstrainer said in MAME roms not all working:
I'm obviously well past that point BuZz... If I'm posting questions, rest assured there are probably real problems.
Then you didn't read the link as it mentions opening a new thread rather than posting to an old one as well as details you should provide, which you didn't. I wasn't suggesting your problem wasn't real, but that you didn't follow the instructions.
-
@dsstrainer I had the same problem with mame2003 with some NeoGeo games. Now I'm using lr-fba-next which requires a newer romset and all the NeoGeo games work now. There is one MAME game I really want to play but it doesn't work on this emulator. I'm thinking to update the emulator and get the newer romset.
-
@dankcushions said in MAME roms not all working:
i personally think the clrmamepro stuff should be probably less prominent in the wiki, or in a separate section. full romsets are so widespread.
libretro-fbalpha support 4 games which are missing from the official fbalpha release, they are included in the dat on libretro-fbalpha's github.
-
I know most of the sets are static but at least one is fairly current. It's definitely useful to understand how ClrMamePro works. It allows you to be current with a smaller incremental set update that comes out every few months and the ability to verify. It may also be used for more than just MAME ROM sets like other platforms, DOS games, etc. Basically any files or sets that have a DAT created it's very useful. It's fairly heavily documented on several sites in writing and video too.
Depending on which options you have checked (missing, case, unneeded, name, size & date) ROM set files may end up in the backup folder on the first run which needs to be taken into account when rebuilding by adding it as an add path.
With the Rollback ROM set and the current version it should be 100% every time. ClrMamePro has been around so long you really only see obscure errors like padding and nul characters in the archive that throw off the CRC, directory structure, hash collision errors or something weird along those lines once in a while. Possibly challenges with new features being added to the software but really it's a stable piece of software that works reliably.
-
@Riverstorm said in MAME roms not all working:
but really it's a stable piece of software that works reliably.
I was just wondering, how do they create those new romsets? Do they recompile everything or do they just use clrmamepro to update them to the newest romset?
I never understood this, why do you need to "update" them to the newer set? Why couldn't they just update the emulator only and support the older versions? Wouldn't that just make more sense? And if you update them what does clrmamepro do to the rom? Does it patch the files?
-
@PetroRie typically, each version of mame contains a few more games, MAYBE a few updated roms. if you're using a current mame romset you will almost definitely be able to use it in the next version without any real issue, unless you want to play one of those new games.
I was just wondering, how do they create those new romsets? Do they recompile everything or do they just use clrmamepro to update them to the newest romset?
mame itself generates the dat files. clrmamepro is nothing to do with mamedev.
-
@PetroRie said in MAME roms not all working:
I never understood this, why do you need to "update" them to the newer set? Why couldn't they just update the emulator only and support the older versions?
This page is worth a read, especially the 'history of roms' section
http://docs.mamedev.org/usingmame/aboutromsets.htmlThe short answer is that over time, they discovered new information about these old systems and in order to preserve them properly, they need to adjust the roms themselves.
-
@PetroRie said in MAME roms not all working:
I was just wondering, how do they create those new romsets? Do they recompile everything or do they just use clrmamepro to update them to the newest romset?
I'm not quite sure how to explain it. Under that link Synack provided there's a section "Troubleshooting your ROM sets and the history of ROMs" gives several reasons why the individual ROM files in each game archive set change from version to version. Yes I believe they accommodate the new changes (replace bad file dumps with good file dumps, name changes, etc.) in the source and compile. Once compiled you may generate a DAT from the command line.
"mame -listinfo > mame036b.dat"
MAME I believe is more about preservation and accuracy so it's constantly changing as they discover new things about arcade machines or new methods to accurately extract information from the PCB chips, maybe emulation accuracy or different ways to organize and name the ROM files.
I never understood this, why do you need to "update" them to the newer set? Why couldn't they just update the emulator only and support the older versions?
As an example maybe they couldn't extract and decrypt the information from a certain PCB chip 10 years ago, maybe a clean dump wasn't available at the time, maybe they wanted to rename the entire chipset of files from the PCB for accuracy reasons. As new information and techniques become available they incorporate it into MAME. They add new games and update old ones with more accuracy but they don't keep all prior versions in the code so they can run.
I think the spin is they are more focused on preservation and the fact we can actually play games with the correct PCB chip dumps is a "by-product".
I remember when CHD's were going through a lot of structural changes. It was kind of painful running chdman all the time to convert the CHD's before joining a torrent at the highest possible percentage as some are ratio sites.
Wouldn't that just make more sense? And if you update them what does clrmamepro do to the rom? Does it patch the files?
That's why when mame4all-pi needs a 0.36 ROM set it's very exact in the files it contains and needs to run games. If a file is missing, changed or incorrectly named when MAME is launched for a specific game it will crash.
Every version of MAME calls for very specific files down to the byte and they need to be named exact in the correct zip file (depending on set type). The files/games may or may not change between versions hence some games still work after a new version release.
In essence in each new version they are upgrading to newer, better or more accurate files basically. The source of all files/games we play are from PCB chips, cassette tapes, hard disks, floppy disks, etc. Basically all the different media types that were used in arcade machines through the years. I would say they are more replaced by newer/different versions as they become available to the MAME team rather than patched.
If you like a certain version or you find a version that runs all the games you would like to play stick with it. You can create DAT files all the way back to version 0.1 (some do require you're running a 32-bit OS) which will be 20 years old next month I believe. I jumped on the band wagon as soon as Donkey Kong was supported some time in the late 90's.
The project was started by a programmer named Nicola Salmoria. Over the past two decades it has had several project leads. A name that pops into mind is Aaron Giles who ran as the lead for years. Not quite sure who's leading it now. I suppose the project takes different turns with different leads as I have no idea how the internal structure works and who is calling the shots but really it's supported by thousands of developers and contributors world wide.
ClrMamePro does basically 4 things it will add, remove, rename or move a file and that's pretty much it's core. It's a ROM/file management utility that is completely developed and separate from the MAME team. It does get a bit more complicated with different set types but it basically organizes and groups the individual files into zip files to be used with MAME.
-
@PetroRie said in MAME roms not all working:
I never understood this, why do you need to "update" them to the newer set? Why couldn't they just update the emulator only and support the older versions?
When a game can't be dumped properly, they add hacks to mame/fba to be able to play the rom anyway (or at least they try when they can). When they dump the game properly, they remove the hacks. If they kept 20 years of hack inside the game driver, things would probably get messy and slower.
-
@BuZz Yea I know a lot of forums hate necroposting but I disagree so I will do it anyway. It is illogical to have bits of data on the same topic spread across multiple threads when it could all be put into one location. Anti-necroposters should reevaluate their life. I didn't actually ask a question, I was just discussing.. sometimes putting thoughts down to read later helps you to realize the issue, and perhaps others as well.
In conclusion to my issue, it is still unclear why outrun is not working when I rebuild the 0.161 version to 0.78. But most other games are working fine. I was able to run a 0.102 version of the outrun rom successfully (which includes the missing outruna files). But I was not aware of this "Rollback" option so that may be the key. Or as others have said just download a 0.78 romset (Assuming they did it right).
-
@dsstrainer said in MAME roms not all working:
@BuZz Yea I know a lot of forums hate necroposting but I disagree so I will do it anyway
Then don't expect any help.
There are many reasons why certain issues happen (eg an emulator not working and returning to ES). It makes no sense to have then bundled in the same thread. Also, it's hard to debug multiple issues from multiple people with different configurations in one thread.
You can't reliably rebuild a 0.78 set from a 0.161 set. Lots of things will be broken / missing.
-
@dsstrainer said in MAME roms not all working:
In conclusion to my issue, it is still unclear why outrun is not working when I rebuild the 0.161 version to 0.78.
Have you recently done anything to anger God or a God-like deity?
-
@dsstrainer said in MAME roms not all working:
@BuZz Yea I know a lot of forums hate necroposting but I disagree so I will do it anyway
Shoot @dsstrainer blatantly telling the Administrator of the project that you're disregarding the forum rules and doing what you want because you don't like those rules probably isn't the best way to go about getting help.
The only ones that work are the ones like Punisher which always work
True. Some ROM changes/updates don't happen for years across several versions.
but even simple games like puckman and outrun (from 1985) won't load at all with mame2003.
True again, if your starting set was 0.161 it will not work.
Oddly I can run those converted games in mame2010 and even fba next sometimes, just not 2003.
True again, it might work if your starting set was 0.161 as no changes have occurred since 0.139 (mame2010).
Running a clrmamepro scan of the 0.161 doesn't flag anything because the dat file doesn't reference outruna so there is no mismatch.
Yes, that is correct. It doesn't exist in that version.
Perhaps because it is a merged file and it loses track of its references.
No, the latest version works fine.
But I would think that during the initial merge from the split 0.161 set, clrmamepro should have flagged something that when it reads outruna in the 0.78 dat file,
Yes, check the logs.
but the outruna file doesn't exist, it shouldn't try to merge outrun and outrunb and pass it off as a finished file.
Yes, again check the logs. I think you're still not understanding how ClrMamePro works. If it finds a matching CRC (searches all archives source path(s)) it will rename it and add it to all sets of a given type (split, merge or non-merged) when rebuilding in target. Check your settings. If a certain ROM file belongs to 20 different master/clone sets it will start a new zip and add that single file to every zip that needs it. Each successive scan of a new source that locates new files will add them to the appropriate zip until it's complete. So yeah you'll probably end up with several hundred partial game archives using older/newer sets.
If you have any complete set newer than the target version with a rollback set you're set to rollback to any version. Rollback sets are cumulative by nature as all prior ROMs are needed to rollback to any given version.
It might have an issue here... perhaps with the conversion from split to merged and missing an intermediate clone, which might be a very small subset of roms which could be why it has gone unnoticed
There's no issue in the current build. Check your backup folder. ClrMamePro backups all changes. Check your logs.
In conclusion to my issue, it is still unclear why outrun is not working when I rebuild the 0.161 version to 0.78.
Here's a list of files needed for the Outrun master and it's clones. Either a newer/older set, regardless of set version, has it or it don't when rebuilding. It's that simple. It will add all the found files to the appropriate zip archives depending on your settings. The common files are used in the master when doing split sets, etc.
- MASTER GAME = outrun , Out Run (set 1), Added 36b2
CLONED GAME = outruna , Out Run (set 2), Added 36b2
CLONED GAME = outrunb , Out Run (set 3), Added 36b2
+---------------+----------+----------+-----------+-----------+-----------+
| ROM NAME | SIZE | CRC | outrun | outruna | outrunb |
+---------------+----------+----------+-----------+-----------+-----------+
| 10185 | 32768 | 22794426 | ADD 36b2 | ADD 36b2 | |
| 10187 | 32768 | a10abaa9 | ADD 36b2 | ADD 36b2 | |
| 10188 | 32768 | bad30ad9 | ADD 36b2 | ADD 36b2 | ADD 36b2 |
| 10189 | 32768 | 01366b54 | ADD 36b2 | ADD 36b2 | ADD 36b2 |
| 10190 | 32768 | 7cab70e2 | ADD 36b2 | ADD 36b2 | ADD 36b2 |
| 10191 | 32768 | 20a284ab | ADD 36b2 | ADD 36b2 | ADD 36b2 |
| 10192 | 32768 | 770f1270 | ADD 36b2 | ADD 36b2 | ADD 36b2 |
| 10193 | 32768 | bcd10dde | ADD 36b2 | ADD 36b2 | ADD 36b2 |
| 10230 | 32768 | 686f5e50 | ADD 36b2 | ADD 36b2 | ADD 36b2 |
| 10231 | 32768 | 8908bcbf | ADD 36b2 | ADD 36b2 | ADD 36b2 |
| 10232 | 32768 | 776ba1eb | ADD 36b2 | ADD 36b2 | ADD 36b2 |
| 10266 | 32768 | 9f6f1a74 | ADD 36b2 | ADD 36b2 | ADD 36b2 |
| 10267 | 32768 | a85bb823 | ADD 36b2 | ADD 36b2 | ADD 36b2 |
| 10268 | 32768 | 95344b04 | ADD 36b2 | ADD 36b2 | ADD 36b2 |
| 10327a | 65536 | e28a5baf | ADD 36b2 | ADD 36b2 | |
| 10328a | 65536 | d5ec5e5d | ADD 36b2 | ADD 36b2 | ADD 36b2 |
| 10329a | 65536 | da131c81 | ADD 36b2 | ADD 36b2 | |
| 10330a | 65536 | ba9ec82a | ADD 36b2 | ADD 36b2 | |
| 10371 | 131072 | 0a1c98de | ADD 36b2 | ADD 36b2 | |
| 10372 | 131072 | 1640ad1f | ADD 36b2 | ADD 36b2 | |
| 10373 | 131072 | 339f8e64 | ADD 36b2 | ADD 36b2 | |
| 10374 | 131072 | 22744340 | ADD 36b2 | ADD 36b2 | |
| 10375 | 131072 | 62a472bd | ADD 36b2 | ADD 36b2 | |
| 10376 | 131072 | 8337ace7 | ADD 36b2 | ADD 36b2 | |
| 10377 | 131072 | c86daecb | ADD 36b2 | ADD 36b2 | |
| 10378 | 131072 | 544068fd | ADD 36b2 | ADD 36b2 | |
| 10380a | 65536 | 434fadbc | ADD 36b2 | | |
| 10380b | 65536 | 1f6cadad | | ADD 36b2 | |
| 10381a | 65536 | be8c412b | ADD 36b2 | ADD 36b2 | |
| 10382a | 65536 | 1ddcc04e | ADD 36b2 | | |
| 10382b | 65536 | c4c3fa1a | | ADD 36b2 | |
| 10383a | 65536 | dcc586e7 | ADD 36b2 | | |
| 10383b | 65536 | 10a2014a | | ADD 36b2 | |
| orun_1.rom | 65536 | 77377e00 | | | ADD 36b2 |
| orun_17.rom | 65536 | 4f784236 | | | ADD 36b2 |
| orun_18.rom | 65536 | 8d459356 | | | ADD 36b2 |
| orun_19.rom | 65536 | ee4f7154 | | | ADD 36b2 |
| orun_2.rom | 65536 | 2c0e7277 | | | ADD 36b2 |
| orun_20.rom | 65536 | c2825654 | | | ADD 36b2 |
| orun_21.rom | 65536 | e9880aa3 | | | ADD 36b2 |
| orun_22.rom | 65536 | ef7d06fe | | | ADD 36b2 |
| orun_23.rom | 65536 | dc286dc2 | | | ADD 36b2 |
| orun_24.rom | 65536 | 1222af9f | | | ADD 36b2 |
| orun_3.rom | 65536 | 69ecc975 | | | ADD 36b2 |
| orun_4.rom | 65536 | 54761e57 | | | ADD 36b2 |
| orun_5.rom | 65536 | b6a8d0e2 | | | ADD 36b2 |
| orun_6.rom | 65536 | a00d0676 | | | ADD 36b2 |
| orun_7.rom | 65536 | d632d8a2 | | | ADD 36b2 |
| orun_8.rom | 65536 | da398368 | | | ADD 36b2 |
| orun_ma.rom | 32768 | a3ff797a | | | ADD 36b2 |
| orun_me.rom | 32768 | 666fe754 | | | ADD 36b2 |
| orun_mg.rom | 65536 | 74c5fbec | | | ADD 36b2 |
| orun_mh.rom | 65536 | 88c2e78f | | | ADD 36b2 |
| orun_mj.rom | 65536 | d7f5aae0 | | | ADD 36b2 |
| orun_mk.rom | 65536 | 30a1c496 | | | ADD 36b2 |
| orun_ml.rom | 65536 | 9cfc07d5 | | | ADD 36b2 |
| orun_mm.rom | 65536 | 3092d857 | | | ADD 36b2 |
| orun_mn.rom | 65536 | cddceea2 | | | ADD 36b2 |
+---------------+----------+----------+-----------+-----------+-----------+
@mediamogul - Love that sense of humor! :)
- MASTER GAME = outrun , Out Run (set 1), Added 36b2
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.