Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

Trying to figure out a way to locate the parents of clones with clrmamepro



  • Pi Model: 3
    RetroPie Version Used: 4.0.1
    Built From: (Floobs .5 image)
    USB Devices connected: keyboard, ipac2
    0.78 split romset

    I've gotten myself into a bit of a mess with my roms. Not knowing any better, and thinking that I had a non-merged romset, I moved all of the roms I wanted to keep to a "keep" folder on my computer, and simply copied those over to the pi. I found out that I didn't have a non-merged set, but rather a split set. Being that I have roughly 1,000 "keep" roms, that would be quite the task to look up all of the required parents and copy them over one by one. For the life of me I can't figure out how to get clrmame pro to filter the required parent roms and created a non-merged set of my "keep" roms. I know how to convert the entire set, but I'm trying to avoid converting the entire set, leaving me to picking out all of the ones I want one by one again.



  • @SlowSL I suggest converting the entire set, and then using your 1000 hand selected (split?) roms as the list of files you want to keep.

    Assuming you're on Windows, you can do something like the below one-liner at the command prompt to accomplish that. Replace each of the directories (in caps) with the appropriate locations and you'll be able to build a new set without doing anything manually. Just make sure the last directory exits before copying to it.

    for /f "usebackq delims=|" %f in (`dir /b "c:\MY_1000_HANDPICKED_ROMS"`) do copy "c:\NEW_FULL_NONMERGED_SET\%f" "c:\NEW_1000_NONMERGED_ROMS"
    


  • @synack said in Trying to figure out a way to locate the parents of clones with clrmamepro:

    @SlowSL I suggest converting the entire set, and then using your 1000 hand selected (split?) roms as the list of files you want to keep.

    Assuming you're on Windows, you can do something like the below one-liner at the command prompt to accomplish that. Replace each of the directories (in caps) with the appropriate locations and you'll be able to build a new set without doing anything manually. Just make sure the last directory exits before copying to it.

    for /f "usebackq delims=|" %f in (`dir /b "c:\MY_1000_HANDPICKED_ROMS"`) do copy "c:\NEW_FULL_NONMERGED_SET\%f" "c:\NEW_1000_NONMERGED_ROMS"
    

    Seemed to work perfectly!!! Thank you so much! I was scratching my head for quite a while trying to figure this out.



  • I'd like to use a similar command line code, finding matching .mp4 or .png files with the same name as the target rom file.... is there any way of doing this? It's not possible with the current line because it is looking for the exact file, any way to have it grab the file name, but ignore what the extension of the file is?



  • @SlowSL You can try creating a .bat (batch) file using the following command, and then editing it with notepad and replacing all instaces of .zip with .mp4 or any other extension.

    for /f "usebackq delims=|" %f in (`dir /b "c:\MY_1000_HANDPICKED_ROMS"`) do echo copy "c:\NEW_FULL_NONMERGED_SET\%f" "c:\NEW_1000_NONMERGED_ROMS" >> C:\EXAMPLE.BAT
    

    That's a bit hokey, but I'm not as familiar with DOS scripting. If you were doing something in the linux environment, you can use string substitution in bash fairly easily. For example;

    cd /home/pi/RetroPie/roms/mame-libretro
    for f in *.zip; do cp /path/to/mp4s/"${f%.*}".mp4 /somewhere/else; done
    

    In the above, the .zip would be stripped from the file name, and it would be replaced with .mp4



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.