Viewing 23 posts - 1 through 23 (of 23 total)
  • Author
    Posts
  • chito
    Participant
    Post count: 137

    ive tried to run the -listclones command in mame4all-pi
    all it does is generate a list of all games!

    im trying to output it to a txt file so i can run a script to copy/remove clone roms files.

    i only want parent working roms

    does anyone know how get -listclones to work?
    or does anyone know a better way to clean roms?

    Roo
    Participant
    Post count: 211

    Does this work for you?

    
    cd /opt/retropie/emulators/mame4all
    ./mame -list -noclones
    
    chito
    Participant
    Post count: 137

    Thats great. that gives me something to work with :)

    chito
    Participant
    Post count: 137

    dont happen to know how to break up that list so that every rom name is on a new line?

    petrockblog
    Keymaster
    Post count: 1827
    
    /opt/retropie/emulators/mame4all/mame -listfull -noclones
    
    
    /opt/retropie/emulators/mame4all/mame -listfull -noclones | cut -d" " -f1
    

    for just rom names.

    Roo
    Participant
    Post count: 211

    ./mame -listfull -noclones

    but then you’ll get other info. I believe you’ll just gonna have to clean up the list either way you go.

    edit: buzz beat me to it :)

    petrockblog
    Keymaster
    Post count: 1827

    using this method to remove clones.. you could do something like (this doesn’t actually remove anything – just echoes it – remove the echo to remove)

    
    /opt/retropie/emulators/mame4all/mame -listfull -noclones | cut -d" " -f1 >noclones.txt
    /opt/retropie/emulators/mame4all/mame -listfull | cut -d" " -f1 >all.txt
    grep -v -x -f noclones.txt all.txt >clones.txt
    for rom in $(cat clones.txt); do echo rm $rom.zip; done
    
    chito
    Participant
    Post count: 137

    using the dat file in the mame4all-pi.zip and clrmamepro i created an xml file.

    then i used RomLister to create a batch file that copies roms that i want to another folder, leaving behind the most of the unwnated roms (like casino, not working, etc) — since its an old version of mame couldnt “-listxml” which has clone info. anway…

    using ./mame -list -noclones > noclones.txt
    i created a text file. then using regex i formatted it so that each rom was on its own line and to look like the following for each rom name.
    copy romname.zip C:/some-path/clean roms

    Ive gone from all 2,272 roms to 1,564 after ROMLister then to 995 of clean working roms. Awesome! thanks for the help. There is no point in having a romset with useless roms that occupy space.

    Roo
    Participant
    Post count: 211

    RetroPie is relatively new, but there’s a community out there that have been doing this for many years – using HyperSpin or GameEx or many other front ends. I’m just leading up to the idea that here’s a lot of us that have been down this road :)

    If you want to go further down this rabbit hole, you can remove all the games you can’t play with the controller setup you have. For example Centipede uses a trackball and Operation Wolf uses a light gun. You may want to play with this tool, which can build a list for you just based on the controls you have.

    http://www.waste.org/~winkles/ROMLister/

    I’ve used all the tools, but in the end I just have a subset of ROMs I manually maintain. It took me a while to put together, but that’s just a one time deal. It’s all the best classics, my favorites, favorites of my friends that come over, and some good party games thrown in for fun. Once I took out the ones I can’t play on my RasPi (trackball, spinner and lightgun), my list is 263. Which to me is much more pleasant than trying to scroll through thousands of games no one has heard of.

    I do the same for my NES, SNES, N64, GBA, GameCube, PS1, etc. This hobby can take up your free time if you let it :)

    I know a lot of other guys just put every possible game in and boast that they have 10,000 games or whatever. I don’t get it – to me that’s just a giant mess but to each their own.

    brakanje
    Participant
    Post count: 60

    Doesn’t MAME need some clones to function properly? It seems like it’d work better if you tell MAME one folder for toms and ES a different one then put a text file for each non clone game in the es rom folder and tell es that roms are *.TXT. Then it maintains dependencies (like needing Puck-Man for Pac-Man) but only shows one (Pac-Man but not Puck-Man.)

    Roo
    Participant
    Post count: 211

    [quote=85595]Doesn’t MAME need some clones to function properly? It seems like it’d work better if you tell MAME one folder for toms and ES a different one then put a text file for each non clone game in the es rom folder and tell es that roms are *.TXT. Then it maintains dependencies (like needing Puck-Man for Pac-Man) but only shows one (Pac-Man but not Puck-Man.)[/quote]

    No – clones require parents not the other way around. You can delete all clones and everything will still play. Of course you’ll be playing puckman not pacman – not all parents are the US version. Puckman is the parent in this case.

    Don’t forget that some ROMs require BIOS files.

    I think a better solution than trying to “trick” ES would be to edit the gamelist.xml file.

    https://github.com/Aloshi/EmulationStation/blob/master/GAMELISTS.md

    brakanje
    Participant
    Post count: 60

    In my definition of clone both Puckman and Pacman were clones just to clarify I wasn’t using the official MAME jargon which is probably where we misunderstood eachother. Most people would concider Pacman to be the real game so that is why calling Pacman the clone is just weird.

    But anyway editing GAMELIST wouldn’t work as when you reboot ES would rescan and repopulate. My trick is not so much an attempt to trick ES it’s what ES does by default for the ports and such. And would work especially nice for MAME since it wants the filename not the filelocation.

    Roo
    Participant
    Post count: 211

    Whatever works for you is cool, but just FYI, from the wiki I linked to:

    The switch --gamelist-only can be used to skip automatic searching, and only display games defined in the system's gamelist.xml

    brakanje
    Participant
    Post count: 60

    Ah I did not know about that. Good to know. Thanx

    chito
    Participant
    Post count: 137

    Would that switch speed up loading times?

    Roo
    Participant
    Post count: 211

    It would have to right? But if it’d make a noticeable difference or not is another story :) Give it a shot!

    chito
    Participant
    Post count: 137

    wherer and how do i use that switch? would it be <path> in es_systems.cfg?

    justinbeaird
    Participant
    Post count: 49

    I would also like to know where and how to do this please help I am running 2.5.0 beta

    chito
    Participant
    Post count: 137

    where in the retropie boot up is the script that calls the ES binary? All i know is thats where i need to add the switch… i cant find it though

    Roo
    Participant
    Post count: 211

    the last line in /etc/profile, should just be able to add the switch to the end

    [ -n "${SSH_CONNECTION}" ] || emulationstation

    justinbeaird
    Participant
    Post count: 49

    [quote=87653]the last line in /etc/profile, should just be able to add the switch to the end

    [ -n "${SSH_CONNECTION}" ] || emulationstation
    [/quote]

    that cant be right did you post in wrong forum?

    Roo
    Participant
    Post count: 211

    Nope. I’m pretty sure that’s accurate information.

    The switch --gamelist-only can be used to skip automatic searching, and only display games defined in the system's gamelist.xml

    To use the switch, you specify it when you load emulationstation. Like this:

    emulationstation --gamelist-only

    You can do that from the command line, but to have that be the default, you need to edit the file that loads emulationstation after the Pi boots up, which is /etc/profile

    The last line of /etc/profile translates to “if this isn’t an SSH session, load emulationstation”. Change it to this to add the switch

    [ -n "${SSH_CONNECTION}" ] || emulationstation --gamelist-only

    chito
    Participant
    Post count: 137

    Thanks heaps!!! ive been looking for that line for ages!
    linux isnt my happy place yet

Viewing 23 posts - 1 through 23 (of 23 total)
  • The forum ‘Everything else related to the RetroPie Project’ is closed to new topics and replies.