Jump to content
LaunchBox Community Forums
deuxcolors

Deleting non imported MAME games

Recommended Posts

...not totally.  Using the Import Mame Full Set Wizard, it (partially) depends on your filter options.  In using a non-merged full set, this is what (I think) I found:

image.thumb.png.f73385e14e0b67b909e422a21bef65ed.pngUsing the Import clones as additional apps option, you'll only see the clone versions by right-clicking. As you stated. However ReadLaunchBox will only list the main rom.  So using my method, you won't get the clones.

Skip clones entirely, no problem.

Import all clones as separate games (mostly) works. I say mostly because:

image.thumb.png.60159a1019781fb0659d8f915c189ab1.png...maybe it's a 'glitch in the Martix'...  The 3 different 1945Kiii's are separated but 1944 is not. But the other 2 1944's are there if you right click.  (Right clicking the 3 1945's do NOT have the option for playing the clones.)  A ReadLaunchBox analysis reflects this.

So.... my aforementioned process is not without fault.  And OMG!...  I hope I'm not screwing up semantics with 'clones' vs 'versions'.

Share this post


Link to post
Share on other sites

no clones and versions are the same term when you are talking about MAME

 

  • Thanks 1

Share this post


Link to post
Share on other sites
On 1/17/2019 at 9:34 AM, JoeViking245 said:

[***Edit*** The following method will only work for the main games and NOT clones if using a non-merged set.  If using a merged set OR don't care about clones, go for it.***]

Using a couple 3rd party apps so kindly created by others on this site and a little computer work/knowledge, yes! 

You'll need @Lordmonkus Mame No Filler Version 2 and @nicknamex ReadLaunchBox and of course, your non-merged set.

Open ReadLaunchBox
Select LB location
Select Arcade (or Mame. However you have it listed)
Select Box-Front (doesn’t matter which)
Media Exist:    All
Click Analyze
Click Export to Excel
Close

Open the exported spreadsheet
In column E, edit a cell with the rom path\game
Highlight and copy everything before the rom name

image.png.a3dd27d3b73b4b76f89dd848d5e0c380.png
Ctrl-F (Find/Replace) – click the Replace tab
In Find what: paste the path you copied above
Replace All
Close

(Column E should now show ONLY the roms’ file name [except row 1])

Copy all the cells with rom names starting at cell E2

image.png.1818acea91fcb19bf2c7ce4aa9609e9e.png

Open Lordmunks’ Mame NoFiller spreadsheet.
Paste the copied cells into cell B1
Your column B will now probably have more rows filled than column C, so you’ll need to copy the formula in C down to the last row B is filled in to.

image.png.4dd5c9d662a8ad59119e4660c5a8600d.png
Copy all the [filled in] cells in column C

Create a new txt document (call it whatever you want)
Edit it and in the 1st line type “md NoFiller” (without quotes) and hit Enter. (this will make a directory called NoFiller. You can change the name to whatever you want)
Now paste the cells (which will simply become different lines) you copied.

image.png.73b52c86214ccefaff803942832e937b.png 
File, Save as.. filename.bat.  Change Save as Type: to All files. Save

image.png.3f65ecc5590605f258fe9f365a7c776c.png

From Lordmunks’ README file:
Then simply copy the batch file [you just created] into the folder with all of the roms and double click the bat file, it will make a new folder [“NoFiller”] within that folder and acopy all of the roms into that newly created folder. From there you can copy that new folder of roms to anywhere you like and import them into Launchbox, be sure to update your rom path in your mame.ini to point this rom set location. You can now do whatever you like with your full set you downloaded, it is no longer needed for the NoFiller set to function, though you may want to keep a backup just in case.?

Thank you very much it worked . 

just changed copy --> move, because copy didn't work

Share this post


Link to post
Share on other sites

I used the Romcenter filter to get rid of a big group of games, so that is a first step, but we still have the main issue.
I wish there was a "breakdown" button in the audit. Still hunting for an easy solution...

Share this post


Link to post
Share on other sites
8 hours ago, Lesoquiaque said:

just changed copy --> move, because copy didn't work

Ya, later found that out too.  If the files already exist in the destination folder you need to add a "/y" option (force copy).

copy /v 1on1gov.zip NoFiller

The only problem using move is you Full Set [backup] is now not complete. But in the spirit of saving space, 👍.

Share this post


Link to post
Share on other sites

Take 2.  A bit less convoluted AND will handle clones.  

_____________________________________________________________________________

Goal:  Using LaunchBoxs' built-in "Import MAME Arcade Full Set Wizard" and its filters, keep only the filtered imported Roms (including clones when pulling from a Non-Merged Set) in your Roms folder. 

Purpose: Reduce storage space by eliminating the non imported MAME Rom files. 

Needs:     LaunchBox.  A Full Non-Merged MAME Rom Set (for a fresh set up).  An empty directory that will be the 'final resting place' for your Mame Rom files used in LB.

Notes:  This write up is geared towards Full Non-Merged Rom Sets. If you're starting fresh, continue on.  If you already have your Arcade Platform setup, skip (A) and jump to (B).

Warning:  Make a back up of your stuff before starting this!

Disclaimer:  I only know a little more that "just enough to be dangerous".  That is, this worked great on my basic test run.  If you get into games needing external BIOS files and Chd folders and the sorts... this procedure won't help with those.
-----------------------------
(A)
Start LaunchBox
Click    Tools 
    "Import" 
    "Mame Arcade Full Set..."
Go through the Import Wizard selecting "Arcade", your Full-Rom-Set folder, MAME emulator ...etc...

Exit LaunchBox.

(B)
Make a copy of the "..\..\LaunchBox\Data\Platforms\Arcade.xml" file and place it somewhere other than the  ..\Data\Platforms  directory.

Start LaunchBox
In the Arcade platform, select all games (Ctrl-A).
Right-click  - "Expand Selected Games"  -  "YES",  "OK"

Select all games (Ctrl-A) again. (just to make sure)
Click Tools 
     "Export/Copy ROM Files from Selected Games to New Folder..."
    "Yes"  (It warns only the Main games will be copied but since we "Expanded" everything, all Main and Clones will be copied)
Browse to and select the location you want your LB roms to be. The 'final resting place'.  (i.e. ..\..\LaunchBox\Games\Arcade).  Make sure it's a different location than where your Full Set is.  If there are Mame zip files already in the location you select, delete them 1st. Especially if you've updated your Rom Set.
"OK"
Exit LaunchBox.

Put the copy of Arcade.xml you made earlier back into the "..\Data\Platforms" directory. "YES" Replace existing Copy.

Start LaunchBox
In the Arcade platform, select all games (Ctrl-A).
Click Tools
     "Change ROMs Folder Path for Selected Games..."
Browse to and select the folder you used above to Export/Copy to.  "OK".  "Yes". "Yes". "OK"

 
That's it. You can do whatever with your Full Set you want.
 

 

  • Thanks 1

Share this post


Link to post
Share on other sites

Bingo! Thank you very much. This works like a charm.

You should repost it in the tips section for everyone else.

Share this post


Link to post
Share on other sites
52 minutes ago, deuxcolors said:

Bingo! Thank you very much. This works like a charm.

You should repost it in the tips section for everyone else.

You're welcome.  

It's not the end-all cure-all though.  There are some manual things that need to be done to make all the games work. For example CPS2 games need qsound_hle.zip (and maybe qsound.zip) copied to the roms folder in order to work.  Some namco* files too for others.  I'm guessing these are some of the files I mentioned in the disclaimer. :) 

Share this post


Link to post
Share on other sites

Not the end all cure, but a strong start.
I'm down from 30k+ games to 4k+ games. I can clean things up from there manually in LB :)

I still say post it in the tips.

  • Like 1

Share this post


Link to post
Share on other sites
8 hours ago, deuxcolors said:

I still say post it in the tips.

I don't see a 'tips section'. I just figure people would search the forums and come across this.

As an update to the "..manual things that need to be done"..., I remembered reading somewhere in the LB forums about Mame Rom file placement.  You can put the non-playable files/directories in a separate folder than the game files (i.e. qsound_hle.zip file and  simpbowl chd folder).  By default, these MUST be placed in your roms folder. But you can put them anywhere provided you tell Mame their locations.  Example:

Game (rom) files are here: 

../Games/Arcade

CHD folders are here:

../Games/Arcade/CHD

Others (like qsound_hle.zip and namco54.zip) here:

../Games/Arcade/others

(I'm sure there's a proper name for these "others" files.  Like maybe 'support' files. But like I said... "just enough to be dangerous". :))

With said items in these new sub-directories, if you update your rom set, revamp your import-filters... or whatever and do the "Take 2" procedure, you'll be a little better off.  A new caveat presented is potential updates to the 'support' files and chd's. (I guess it's not new as Take-2 doesn't cover them to begin with.)

"...tell Mame their locations."  Since they are rom files, you'll add to your ROMs Directories.

Open Mame
“Configure Options”
“Configure Directories”
“ROMs”
“Add Folder”
Add the new “CHD” and “others” folders respectively. 
Be sure to “Save Configuration” when you’re done.
 

 

Share this post


Link to post
Share on other sites

Those other files are called bios and device files there is a separate pack for just those files available on PD.

  • Thanks 1

Share this post


Link to post
Share on other sites

So now got your Mame 0.201 Non-Merged full Set safely tucked away on your backup drive.  Your LaunchBox Arcade platform is all dialed in just the way you like it with only the games you want and only those files are in your "../../Games/Arcade" directory (or wherever).  Maybe added some. Removed some.  Perfect!

That's what I thought until I found the 0.202 thru 0.205 update packs.  I know ClrMamePro is (more than likely) able to apply the updates to both my backup (full) set and my LB (partial) set.  And now (literally  just now) that I think about it, can probably do them both at the same time (vs doing the procedure once on the LB set, then again on the full set).  Oof.  Anyway...

My resolve was use ClrMamePro to update the backup full-set and a single command-line batch file to copy/overwrite only the files that are in the LB set and only if their dates or sizes are different.  The command is "robocopy" which is built into Windows 7 and above and, of course, a variant of "copy" and "xcopy".

"xcopy" has a parameter "/u" that will copy (update) only files that exist in the destination folder as well. But in my searching to see if it matters if the date stamp is older/newer, I found "robocopy". (Which for sure, the actual date/size difference is insignificant).  The command line to put in your batch file is (all one line):

robocopy "source_directory" "destination_directory" /LOG:"filename" /XL /R:10 /W:10


source_directory  =  location of your full set
destination_directory  =  location of your LB set
/XL  -  Copies a file from the source directory only if a file of the same name already exists in the destination (regardless if the destination file is newer or older OR different size. But does NOTHING if they are the same in both respects)

(optional)
/LOG:file  -  Writes a log file of what all it did, overwriting the file if it already exists. The file will be created in the same directory the batch file was ran.
/TEE  -  Shows "what all it did" in the DOS window AND in the specified file in /LOG
/R:n        Specifies the number of retries on failed copies. (The default is 1 million.)
/W:n        Specifies the wait time between retries. (The default is 30 seconds.)

- The last 2 are good if your copying over a network and something weird happens.
- Add a "pause" on a 2nd line if you want to see the summary in the DOS (sorry. Old school. "Command Prompt") Window before it closes. 
- The quotes may not be required, but may save some headaches.
- No trailer \ (slash) at the end of the directories.

Example:

robocopy "F:\Backups\MAME_0.205_Full_Set" "D:\LaunchBox\Games\Arcade" /LOG:"MameLog.txt" /TEE /XL /R:10 /W:10
pause

 

Now that we've gotten this far, we probably could keep the Bios and Device files in the same Games directory.  And the chd directories for that matter. 😊

Share this post


Link to post
Share on other sites

I really have to try to find the programs and method I used back in the hyperspin days.  It did exactly what you needed to do.  It made an xml, and then there was a program that compared the xml to the romdirectory, and then another one that deleted all that came back not matching.  It left me with a much smaller directory, and no more mahjong, fruit machine, etc. laying around.  i had to go back and clean up a few one by one when I noticed them showing up in the frontend (i noticed because it didn't have clear logos for them because I never made them).  I have a merged set and nothing i've tried to play so far has ever come back not working.  Of course, I haven't played the thousand plus collection in its entirety, but still quite a few, and none that i've ever wanted to play came back non-working.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×