Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: MAME Software Parser  (Read 3627 times)

0 Members and 1 Guest are viewing this topic.

keilmillerjr

  • Trade Count: (+5)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1847
  • Last login:October 06, 2023, 10:20:39 pm
  • Web Developer.
MAME Software Parser
« on: November 09, 2015, 11:08:30 pm »
MAME Software Parser is a ruby script to help you set up a MAME machine dedicated to a particular driver. You can use it to copy roms or extra files that match a particular driver from your full romset and extras to your new dedicated machine.

https://github.com/keilmillerjr/mamesoftwareparser

PL1

  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 9664
  • Last login:Today at 12:26:47 am
  • Designated spam hunter
Re: MAME File Parser
« Reply #1 on: November 09, 2015, 11:33:21 pm »
Have you looked at this thread?

Sounds like there may be some similarities in the desired outcomes.   ;D


Scott

8BitMonk

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 989
  • Last login:March 15, 2025, 10:47:05 pm
Re: MAME File Parser
« Reply #2 on: November 10, 2015, 10:56:59 am »
I can clean up the code and share if anyone is interested?

I'd be interested in the code.
Games: Asteroids Deluxe | Atomiswave | Centipede | Championship Sprint | Defender | Donkey Kong | Dig Dug | Frogger | Ikari Warriors | Missile Command | Pac-Man | Pole Position | Robotron | Spy Hunter | Tempest | Super Mario Strikers

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19427
  • Last login:June 20, 2025, 12:57:54 am
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: MAME File Parser
« Reply #3 on: November 10, 2015, 03:08:59 pm »
Mine is an outright app.  It'll allow you to generate a simple list or move files for you.  I'm busy right now though so please post the script to tide the peanut gallery over if you have it done. 

keilmillerjr

  • Trade Count: (+5)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1847
  • Last login:October 06, 2023, 10:20:39 pm
  • Web Developer.
Re: MAME File Parser
« Reply #4 on: November 10, 2015, 10:59:22 pm »
Mine is an outright app.  It'll allow you to generate a simple list or move files for you.  I'm busy right now though so please post the script to tide the peanut gallery over if you have it done.

I'm most done and will try to have it uploaded to github tomorrow. Benifit of it being coded in ruby is that it's platform independant. And ruby is easy to code.

keilmillerjr

  • Trade Count: (+5)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1847
  • Last login:October 06, 2023, 10:20:39 pm
  • Web Developer.
Re: MAME Software Parser
« Reply #5 on: November 13, 2015, 12:03:49 am »
Edited the first post to include a proper description and the github repo link. A day later than promised, but code looks public worthy.

keilmillerjr

  • Trade Count: (+5)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1847
  • Last login:October 06, 2023, 10:20:39 pm
  • Web Developer.
Re: MAME Software Parser
« Reply #6 on: November 24, 2015, 07:34:05 am »
Any feedback?

P.H.U.

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 219
  • Last login:April 29, 2023, 01:25:21 am
  • I own my own arcade machines. Word.
Re: MAME Software Parser
« Reply #7 on: February 27, 2016, 05:05:33 pm »
Questions for you since each of these tools has a learning curve and MAME is always a time-sink.

  • How does it validate the which files to to copy between the various versions of MAME that users may have?
  • Does it keep the copied sets split? Rocketlauncher has difficulty with merged sets
  • Does it copy files for multiple drivers in batches? Or does that sort of violate the spirit of your design and you want it for just dedicated cabs?
  • Do you plan on adding other attributes to parse down with? Or are you allowing for just the one driver criteria?

I'd be willing to give it a shot, but only I can achieve the results I desire. That being, rather than tailoring for driver specifics, I need cab configuration specifics. My cabs shall be mostly horizontal, 2 player, 6 button.
When you find great deals on Craigslist for CRT based cabs, exuberance :laugh2: can be a bad thing!


Current Status of Cabs:  2-of-11 (and counting) working as desired  :applaud: :applaud:/:banghead: :banghead::banghead::banghead::banghead::banghead::banghead::banghead::banghead:

keilmillerjr

  • Trade Count: (+5)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1847
  • Last login:October 06, 2023, 10:20:39 pm
  • Web Developer.
Re: MAME Software Parser
« Reply #8 on: February 28, 2016, 09:52:53 am »
  • How does it validate the which files to to copy between the various versions of MAME that users may have?

Files with a base name (MSLUG.m4v - base name would be MSLUG) that match the rom name in XML file will be copied to a new destination. I found this helpful so I can download full rom sets, wheel art, videos, etc on an external hard drive and only copy needed files (in my case neo geo) to my arcade computer.

  • Does it keep the copied sets split? Rocketlauncher has difficulty with merged sets

Any files with a base name matching the rom name in the xml file. Rom files are contained in .zip or .7z, so it doesn't matter if split or merged.

  • Does it copy files for multiple drivers in batches? Or does that sort of violate the spirit of your design and you want it for just dedicated cabs?

If you can get mame to output multiple drivers. Or you could just run it once for each driver. I designed this script for my own need, but could always expand. It is open to contributes on github.

Perhaps this tool could slim down an xml to your liking and use my script to copy files. I haven't used it yet. Will try it soon. http://www.systempixel.fr/mame-xml-cleaner/

  • Do you plan on adding other attributes to parse down with? Or are you allowing for just the one driver criteria?

I added code the other night to filter out clones. Almost done with it and will push to github soon.

I'd be willing to give it a shot, but only I can achieve the results I desire. That being, rather than tailoring for driver specifics, I need cab configuration specifics. My cabs shall be mostly horizontal, 2 player, 6 button.

Seems like most games will match your criteria. Maybe having a full arcade library and using a front end such as attract-mode to filter out unwanted games might be your best bet. I'll look into adding other filters and such after I finish the no clones code.

keilmillerjr

  • Trade Count: (+5)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1847
  • Last login:October 06, 2023, 10:20:39 pm
  • Web Developer.
Re: MAME Software Parser
« Reply #9 on: March 02, 2016, 03:29:03 am »
Released an updated version with revised code and includes filtering of clones. Also uploaded an overview video: