Jump to content
LaunchBox Community Forums

Best Practice for keeping MAME ROMs up to date


DOS76

Recommended Posts

  • Replies 67
  • Created
  • Last Reply

Top Posters In This Topic

As someone who is shitlisted, can confirm its real, and also that PD is the best place to get up to date mame roms. Can also confirm that Clrmamepro works like a charm for updating, but I don't think its easier. Just faster. After I learned how to do it, I still just redownloaded the newer sets, as its one click then forget about it. Also Bitgamer has the 169 set, but its not complete. At this point I'm with SentinelBrad, I just don't try anymore.
Link to comment
Share on other sites

CriticalCid I managed to grab the 170 from PD but I'm like 66% done getting CHD files for 161. I see the 170 version is also available to grab there but I am unsure if it would be easier to delete what I have and start getting the new set and like you said this wouldn't really be feasible to do every time there is an update. Is updating the CHD's basically the same as the ROMs in ClrMAMEPro.
Link to comment
Share on other sites

  • 2 weeks later...
CriticalCid I just tried to use CMP to update from 170 to 171 and I failed miserably. First do I have to update MAMEUI to a 171 version to get it to work. I created a profile off of my .exe and that seemed to run fine. then I went to settings and add a ROM Path to my ROMs then I started the scanner and unchecked the samples path since I didn't set that up then when I clicked new scan I got an error message saying I had incorrect things and to go into Systems and make changes. At this point I had no clue what to do so I just unchecked everything and than ran the new scan which completed then I tried to rebuild and when it finished it scanned 259 new games but didn't create anything. I basically don't know what I am doing and I found the whole process to not be very intuitive. For the CHD's can you basically just replace the old ones with the new ones in the CHD file? With the ROMs can you unzip them both merge them and then zip them back up into 1 .zip it is ony 50 something games at some point I would rather just do that then go through a huge hassle trying to use a program I have no understanding of. Any assistance would be appreciated.
Link to comment
Share on other sites

I wouldn’t just replace the CHDs. MAME sometimes keeps older versions of the games and just renames them. They would be missing if you just replace them. Also I would strictly disadvice to manually repacking the .zip files. You can break more than it would help you. If you want I can document my process when I update my own romset later this day and write I little tutorial. As I said it’s not very intuitive but when you done it 2-3 times it’s very easy.
Link to comment
Share on other sites

Tutorial: How to update your MAME ROMset to a newer version with CLRmamepro Note: This tutorial assumes that you already have a complete ROMset from a previous MAME version. If you don’t have a complete ROMset than I would suggest to just grab a complete set for the current MAME version and return to this tutorial if you want to update it in the future. Why update the ROMs?: MAME is very sensitive about its ROM versions. You can get an older version of a ROMset to work with a newer MAME version but you should be aware that you can run in many errors and missing files. In the best case your ROMset version matches exactly the MAME version you are using. The MAME developers are updating MAME every last Wednesday in the month, so if you download a complete ROMset today it won’t work perfectly fine with the newest MAME version by the end of next month. If all the games you want to play are all there and working perfectly fine you probably won’t care about new updates, but if you want to get all the new emulation improvements and new added ROMs you should keep track of them. Now is a complete ROMset with all CHDs roughly 400GB in size, so you probably don’t want to download that amount of data every month. It’s faster to just download all new added ROMs, CHDs and Samples and just to update the ROMset you already have. And with the program CLRmamero you can do this. If you want more information why MAME is so sensitive about the ROM versions and mandatory file names I highly recommend this Reddit thread: https://www.reddit.com/r/MAME/comments/3gh78n/probably_a_silly_question_but_why_are_ROM_packs/ Step 1: Groundwork 1. First of all you should know what ROMset version you have. I don’t know if there’s a comfortable way to find out what version you have. Normally your ROMset version should be the same as the MAME version you are currently using but I can’t guarantee that this is the case for you. So if you have absolutely no idea what ROM version you have I would suggest what I wrote at the beginning of this tutorial. Download a complete set of the current version and write down what version that is, so you can update that set in the future. 2. Download all ROM update packs beginning from the version you have until to the current version. With all I mean all. For example if your ROMset is on version 0.168 and you want to update to version 0.171 you will need the update packs: 0.168 to 0.169, 0.169 to .170 and 0.170 to 0.171! 3. Download CLRmamepro at http://mamedev.emulab.it/clrmamepro/ and install/extract it. You will also need to install/update to a version of MAME which matches the version you want to update your ROMset to. In this tutorial I show you how I update my 0.170 ROMset to version 0.171. I use for that MAMEUIFX64 0.171. 4. Optional: If you use a branch of MAME which supports some extra games (like MAMEUIFX) you would probably want these games too. Normally they are not included in an official complete MAME ROMset so you have to download them separately. Use Google to find out if your MAME version supports additional games and then download them. If you use MAMEUIFX like myself you can legally get the additional games in their forum: http://mame32fx.altervista.org/forum/viewtopic.php?t=4 Just download all ROMs and Samples and keep in mind to create separate folders for ROMs and Samples.
Link to comment
Share on other sites

Step 2: Setting up the profile and paths 5. Open the “cmpro64.exe” and you will be greeted with a messagebox. Click okay and you will automatically be in the profiler menu. 6. Here you have different options to include a database for Clrmamepro to work with. The easiest and in my opinion the best way is to use the database which comes directly with MAME itself. So click on the create button and a new window will open. As filename search for the .exe file of your MAME version. As description I recommend you name it after the MAME branch and version you are using. In my case I name it MAMEUIFX64 0.171. Keep MAME as the emulator. Click on “Create Profile” and a new window opens in which can organize your profiles. For now just click on OK. 1-2.jpg 7. Now your newly created profile should show up in the profilelist. Double-click on your new profile. 2-1.jpg 8. Now Clrmamepro wants to extract the database from your MAME .exe file. Click on OK. After a short scan it may ask you if you want to import SoftwareLists. If you don’t use MESS within MAME you won’t need that. I don’t use MESS or want to update a MESS romset so I say “NO” to the SoftwareLists. Now some error messages are popping up. That’s totally normal. Just confirm every message with “OK TO ALL”. 3-1.jpg 9. Now you’re in the main menu of CLRmamepro. At first we have to set up our rom paths. Click on "Settings" for that. 4-1.jpg 10. In the left upper corner you can select for what kind of files you want to set up the paths. We want to add our ROM-Paths so we select “ROM-Paths”. You can either click on “Add” to add your paths or just drag-and-drop them into the window. So add the path to your current romset you want to update. (NOT the paths which are containing your updates!) 5-1.jpg 11. Every file CLRmamepro finds within the ROM- and Sample-Paths which don’t fit to the current MAME version will automatically be moved into the Backup folder. The standard setting for this is a folder called “backup” within CLRmamepro folder. If your CLRmamepro installation is on the same drive as your MAME romset than you can leave it as it is. If CLRmamepro and your ROMset are on different drives I highly recommend changing the backup folder path into an empty folder which sits on the same drive as your ROMs. It will highly increase the speed. Leave the rest as it is. 12. Change the path type to “Add-Paths”. Here you need to add every path you want the program to look for updates or new ROMs you want to add. IMPORTANT: You have to add the backup path too! In my case I want to update from 0.170 to 0.171 and add the extra games for MAMEUIFX. 6-1.jpg 13. Optional: If you want to scan/fix/update your Sample files too, choose “Sample-Paths” and add the folder for it as well. A small explanation what sample files are (thanks Google): Samples go in a folder called 'samples' in your main Mame directory. They are used in conjunction with games that either doesn't have emulated sound or used external sound samples via another device (like a Tape). Mame will automatically use the correct ones with the game if they are present in the samples folder. 7-1.jpg 14. Close the window. All settings are being saved automatically. Step 3: The Scanner 15. After we have set up all paths we want that CLRmamepro scans our current romset and fix/remove every outdated ROM, CHD and Sample file. For that we click on "Scanner". 16. The “You want to scan” section is self-explanatory. In the “You prefer” section you have to choose how you want your romset to be constructed. For the best compatibility with LaunchBox I highly recommend a split or non-merged set! Here are the differences between the different set options: Non-Merged: Each set has ALL files it needs. This is normally a waste of disk space because even clone sets have the parentsets included. Split: Parent sets only have the parent files and a clone sets consists of the clone files only. Merged Sets: Full merged sets are parentsets only, which also include all clone files. So you will have every version of the game in just on file. I don’t want to waste disc space so I go with a split set in this tutorial. 17. “Prompts” you can leave it as it is. 18. In the check/fix section we want to check and fix everything. Click on “All” and every checkbox should be checked now. 19. Ignore the “Advanced” and “LogFile” button and click on “Systems”. A new window opens up. Here click first on “All” and then on “Auto-Assign”. It will automatically set the paths for all systems into the ROM-Path you chose earlier. At the end of this tutorial I will say something more to this but for now just close the window. 8-1.jpg 20. Click on the “Hash & CHD” button. In the new window check both options at the bottom “Run Analysis” and “Fix file (If Possible)". These options will decrease the scanning speed but if you have corrupted ROM files it will try to repair them automatically. Leave the rest at is and close the window. 9-1.jpg 21. Ignore “Statistics”. Now we have configured the scanner and it should hopefully look like this: 10-1.jpg 22. Click on “New Scan” and wait. The scanner will tell you if it finds something which needs to be fixed. Confirm every message with “Yes To All”. In the “Scan Results” window you can see exactly what is currently wrong with your romset. You don’t have to worry about that. 23. When the scan is finished a window pops up that’s giving you information about the current status of your ROMset. Click on “OK” and close the scanner. 11-1.jpg Step 4: The Rebuilder 24. Our ROMset is cleaned and fixed now. At next we have to update it to the new version. For that click in “Rebuilder”. 25. Check the box “Use Add-Paths” and CLRmamepro will use all the paths for the updates that we already set up. 26. At "destination" you have to check the box “Use System Default Paths”. 27. The Merge option should be the same as you chose on the scanner. 28. At “Compress Files” you have to choose which file format you want for your ROMS. I prefer .7z because it saves more space on the hard drive as .zip. IMPORTANT #1: If you change the file format to a different format as your ROMs are already zipped it will take very long to rebuild your ROMset, because all your ROMs will be extracted and compressed again. So if you have all your ROMs in .zip files and you want it to change to .7z prepare for a long waiting time until everything is done. IMPORTANT #2: If you want to use .7z you will have to need 7-Zip installed on your PC. If you want to use .rar you will have to need WinRAR installed on your PC. 29. Check “Recompress Files”, “Show Statistics” and “Remove Matched Sourcefiles”. 30. Ignore “Systems” and “Advanced” and click on “Rebuild”. 12-2.jpg 31. Optional: If you get an error relating to a .7z file it helps to copy the “7z.exe” and “7z.dll” from your 7-Zip folder into your “CLRmamepro” folder. 32. Now the rebuilding starts. Depending on your ROMset and your options it could take quite a while. When the rebuilding is finished you get a status report. 13-1.jpg 33. Click on ok and close the rebuilder. Now we are almost finished. 34. If you want to update your CHDs you can now move the CHD folders from your Update folders into your ROM folder. If Windows asks you if you want to integrate the files in the already existing folders confirm that with "Yes". 35. Do the same with your Sample files if you want to add or update them. Just keep in my mind to move them in your samples and not into your ROM folder. 36. Go back to the “Scanner” and click on “New Scan”. 37. If everything worked the new scan result screen should look like this: 14-1.jpg I only miss a sample file for one game which I couldn’t track down yet. Everything else is complete and now up to date. 38. Now you can delete all your update folders. Bonus Step: Split your ROMset in different systems If you don’t want every ROM in one big single folder and instead separate folders for separate arcade systems you can split them with CLRmamepro too. For example I like to have my NeoGeo ROMs separated because I want them as a separate platform within LaunchBox. Go back to the “Scanner” and click on “Systems”. Choose the System you want to be separated from your other ROMs and make a double-click on the path. Choose or create an empty folder in which you want to move the ROMs for that system and click “OK”. Now click on “Move Sets” and the program will automatically move all ROMs into the folders you chose. 15-1.jpg NOTE: If you want to scan your ROMs again a message will show up saying that the new paths for your systems aren’t ROM-paths. Click on yes to add them automatically to your ROM-Paths. The end. I hope this tutorial was understandable and useful for some of you. If you have questions feel free to ask.
Link to comment
Share on other sites

I know that the wall-of-text and all the screenshots could be a little intimidating but when you done it 2-3 times the whole process won't take you any longer than 10 minutes. @SentaiBrad it seems I couldn' edit my placeholder post and it just created a new post. Maybe you can delete the placeholder then. Also if you want further information's for your video tutorial I would be very happy to help.
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...