Help batch running arcade games
-
@luckyluca said in Help batch running arcade games:
I see, I suppose it doesn't help that both the old and newer version of stvbios.zip contain exactly the same roms (with matching CRC), with the newer version of the zip just containing additional files.
Actually you are right, i thought some of the old files had been discarded but they were simply renamed, which shouldn't be a problem since the emulator will base its search on crc. Well, stvbios was a bad example then, but there might be newer bios that doesn't contain older files.
@luckyluca said in Help batch running arcade games:
It would be awesome to being able to add bios by emulator version, and have the right bios selected based on the core in use
Retropie/bios/mame2003/.zip
Retropie/bios/advmame/.zipI can't tell you about the mame cores, but that's exactly what i did in the FBNeo core to avoid conflicting bioses.
-
Thanks, just wanted to add that I've been involved in using and enjoying emulators and cores for more than a decade and wanted to thank you for your contribution to the retro gaming scene!
-
Regarding Roslof's doc, does the following mean that lr-mame core is using the mame non-merged romset version 0.222? does it also mean that the actual core version in Retropie must be 0.222?
Without causing controversy, I'm asking because 0.222 is a tricky romset one to source, let's just say that it's not too common.Major testing is complete. Occasionally checking when new versions pop-up (lr-fbneo changes VERY rapidly, but... trying to keep up).
of emulators are updated. Note lr-mame tested with version lr-mame 0.222.Also, regarding fbneo, from the retropie doc, I suppose that it uses FB Neo v0.2.97.44 and that it superseeds fbalpha2012 completely.
Regarding bios, neogeo and neogeo-cd aside, I suppose there are no bios zips required for fbneo arcade, or am I terribly wrong?Thanks and happy Saturday!
-
@luckyluca said in Help batch running arcade games:
Regarding Roslof's doc, does the following mean that lr-mame core is using the mame non-merged romset version 0.222? does it also mean that the actual core version in Retropie must be 0.222?
Without causing controversy, I'm asking because 0.222 is a tricky romset one to source, let's just say that it's not too common.i don't maintain the doc so you'll have to ask roslof about that. that said, it's simple enough to find the current version of lr-mame on github: https://github.com/libretro/mame - looks like 0.230 currently, if you updated from source. lr-mame should track current mame, so it's constantly updated.
Also, regarding fbneo, from the retropie doc, I suppose that it uses FB Neo v0.2.97.44 and that it superseeds fbalpha2012 completely.
nope, it's 1.0.0.02 now. though, again, fbn's romset is a derivative of current MAME afaik, so it's constantly updated.
to this end it's fairly difficult to keep the various compatibility lists and doc pages up to date for current MAME and FBN. i removed all the compatibility lists from retropie's docs. i prefer to just refer people to their respective project pages.
Regarding bios, neogeo and neogeo-cd aside, I suppose there are no bios zips required for fbneo arcade, or am I terribly wrong?
fbn needs BIOS for other stuff also. see https://retropie.org.uk/docs/FinalBurn-Neo/ - a current dat will have the details
-
thanks a lot, I feel like Alice following the white rabbit in the hole.
I can imagine maintaining compatibility must be hell;
I assumed 0.297.44 was the right romset version, from the fbneo retropie docs, and thought that was aligned with the google sheet. I'll need to rethink my approach :-)Edit: I found the other page listing 1.0 as correct for fbneo.
@dankcushions
So, am I right to assume that if I update the fbneo core, and then have the latest 1.0 full non-merged romset, all games contained would work aka there is no need for mame, unless a game is not included in the romset? -
@dankcushions said in Help batch running arcade games:
nope, it's 1.0.0.02 now
Actually, current wip is 1.0.0.03 (odd numbers are wips, even numbers are releases)
-
@luckyluca said in Help batch running arcade games:
thanks a lot, I feel like Alice following the white rabbit in the hole.
I can imagine maintaining compatibility must be hell;
I assumed 0.297.44 was the right romset version, from the fbneo retropie docs, and thought that was aligned with the google sheet. I'll need to rethink my approach :-)Edit: I found the other page listing 1.0 as correct for fbneo.
@dankcushions
So, am I right to assume that if I update the fbneo core, and then have the latest 1.0 full non-merged romset, all games contained would work aka there is no need for mame, unless a game is not included in the romset?i am not sure about that - there may be occasions when the mame20xx version performs better, or the finalburneo version has emulation bugs or a crash or whatever, but generally, yeah.
-
@dankcushions said in Help batch running arcade games:
there may be occasions when the mame20xx version performs better, or the finalburneo version has emulation bugs or a crash or whatever
I'm not too worried about crashes, i have a batch script to detect those, but if you find an emulation bug please let me know.
-
@barbudreadmon Speaking of neogeo games, is there a compability list I could browse?
Especially for neogeo games set in MVS mode, using fbneo.
For instance, I came across kf2k5uni that fails to load.
(I'm using an older build of fbneo and corresponding romset, v0.2.97.44, on the pi400). -
@luckyluca said in Help batch running arcade games:
For instance, I came across kf2k5uni that fails to load.
Any arcade game will fail to load as long as you don't use the right romset, kf2k5uni works in FBNeo. All i can say is to follow the documentation which says to build proper romsets...
-
Thanks, that's exactly what I did, I followed the documentation and cross-checked the version required, against the Package help, which is which is v0.2.97.44. (Fbneo core was installed via source on 05 Nov 2020).
The romset I'm using is supposed to be the full non-merged v0.2.97.44 as per above.I understand this is not up to date, but so is not the core, so I suppose that as long as the two match all should be well.
-
@luckyluca said in Help batch running arcade games:
The romset I'm using is supposed to be the full non-merged v0.2.97.44 as per above.
v0.2.97.44 is the version number we used for nearly 30 months, with probably thousands of changes to the supported romsets, so thinking your download is gonna match your version from 5 nov 2020 without checking it through clrmamepro is very far fetched.
Furthermore, on 5 nov 2020, we had moved past v1.0.0.00, so i have absolutely no idea what a v0.2.97.44 version built from source on that date is supposed to be, a version built from source on that date should probably be tagged v1.0.0.01 -
I might have misread, but from what you write, is it possible to check the source build on 05 Nov against the romset in clrmamepro?
P.s. the romset is checked in Clrmamepro and should be sound as v0.2.97.44. -
@luckyluca when you are updating from sources, retropie is making a local copy of the corresponding dats at
/opt/retropie/libretrocores/lr-fbneo/dats/
-
@barbudreadmon
Many thanks, I wasn't aware of that. I'll cross-reference that against the romsets.Best
L -
@luckyluca - Talk about wack-a-mole! You're kind of reinventing the wheel before ROM management tools came into the scene.
If you're using the "Arcade" folder, in regards to BIOS files, you can dump all the ROMs from multiple core sets into one zip. Take neogeo.zip for example, just rename the "dups" by appending "_core name" or however you want to track them. It honestly doesn't matter though if you named them 1, 2, 3, etc. You'll have one neogeo.zip to run them all. Then just dump it right in with the ROMs and you're good to go for all games, regardless of the core used.
It seems like the next logical step since you're already combining core ROMs when using the Arcade folder. Why not the BIOS files too!
FBNeo requires a few BIOS files:
bubsys cchip decocass isgsm midssio namcoc69 namcoc70 namcoc75 neogeo nmk004 pgm skns ym2608
Tracking a DAT for a specific core in time can be tricky. With FBAlpha2012 I've not had a lot of luck. I wrote a python script that compares the DAT to the source code trying to validate the set.
What I found is the DAT posted here has a few hundred extraneous games that don't exist in the source code. On the other hand it also has games in the source code that don't exist in DAT. It needs some work.
I wrote another short script extracting all the games from the source code but ended up with just under 6,000 entries. That is way to many. I found all the games, for all the platforms, the core supports.
I don't know the FBAlpha2012 source code well enough to remove the driver folders that pertain to "other" platforms just leaving the arcade driver folders. If I knew which folders to remove I think I could extract a proper games list and build a proper DAT for the specific version used with RetroPie.
Anyway is there any chance you're willing to share your script? I would be curious at how you're doing it. I would imagine you have ROMs that will work in multiple cores too. Some games just run and look better in certain cores.
I think you'd be much more pleased with the outcome just building sets with the proper tools. Then they are current with any corrections, updates, new games, etc. It's extremely easy with the docs explaining each step. Then as barbudreadmon pointed out with DatUtil and some simple scripting you can build and tailor the perfect set exactly as you like.
Current MAME has like 7,000 to 8,000 unique game sets and probably well over 10,000 actual ROM image sets. If you're trying to cover most games you'll need current MAME thrown into the mix too, I think.
With current MAME and the accompanying rollback set you can build any version of MAME you want. This includes CHDs if you want.
I couldn't imagine running every game with every core trying to figure what game belongs to what core and sometimes multiple cores...whew...that's a puzzle in itself and seems like a lot of work! :-/
-
I'll get back to you soon, but believe me, you don't want to see my code :)
In the meatime, I noticed that all games create a per-game .cfg file in the corresponding sub core folder, automatically, on exit.
e.g.: /home/pi/RetroPie/roms/arcade/mame2003/cfg/
Can you remember what option in retroarch.cfg disables this .cfg per-game autosaving, so that .cfg could be saved manually?
Thanks!
-
In the meatime, I noticed that all games create a per-game .cfg file in the corresponding sub core folder, automatically, on exit.
e.g.: /home/pi/RetroPie/roms/arcade/mame2003/cfg/
Can you remember what option in retroarch.cfg disables this .cfg per-game autosaving, so that .cfg could be saved manually?
this is mame's internal .cfg system with the options as set in https://retropie.org.uk/docs/lr-mame2003/#mame-menu - even if you don't go into this menu it will generate the file with the defaults or whatever.
it's nothing to do with retroarch, as such. in a 'finished' libretro MAME core the whole MAME internal menu and corresponding .cfg structure would be disabled and superseded entirely by RA's UI and files, but RA isn't quite as flexible as MAME's internal configuration in some areas...for now, so the two co-exist, slightly awkwardly.
as far as i'm aware you can't disable it the automatic generation of those files, but it causes no harm, unless you go into the MAME menu and change stuff (if so, delete the game.cfg and/or default.cfg as appropriate)
-
@luckyluca - No worries on the code. I have some code that I am sure no one could follow and other code that's neat and well organized into functions. If it's something I plan to keep and reuse I try to organize and document. If not I really don't care how it looks! :) If you clean it up to the point you deem it worthy of sharing I would grateful and if not that's ok too.
To add to dankcushions description. The *.cfg files are auto-generated when you run a game. They contain things like the controls (inherited and/or explicit), number of coin mechanisms on the machine (are they individual coin slots or a single "communal" one), number of lives, dip switch settings, etc. They may contain/cover a huge gambit of settings and need to be stored somewhere. They can be modified through the menus but they aren't contained in the F2 operator "service mode".
Under the nvram folder you'll find *.nv files. It contains similar information like coins to start, lives to continue, high scores, etc., depending on the game.
I think the difference is nvram files were meant to be consistent across "boots" similar to how the actual arcade machines worked. Basically a service menu used by an arcade operator to set and store certain settings in NVRAM, i.e., if you played to long or scores were to high...BUMP...that difficultly up (you're using to much electricity and not bringin' enough quarters) or possibly down for a charity event or something. :)
Some of the games I tweak the configurations to what we knew/remember back in the day at the arcade or if you have a machine manual it's handy for setting the dips to the defaults. You can find some online.
If you're just testing games and not locked into any configuration structure or settings I would just go ahead and delete both sets of files when you're done if you prefer to keeps things tidy. You can also delete the hiscore files *.hi located in the "hi" subfolder.
-
@riverstorm said in Help batch running arcade games:
If you're using the "Arcade" folder, in regards to BIOS files, you can dump all the ROMs from multiple core sets into one zip. Take neogeo.zip for example, just rename the "dups" by appending "_core name" or however you want to track them. It honestly doesn't matter though if you named them 1, 2, 3, etc. You'll have one neogeo.zip to run them all. Then just dump it right in with the ROMs and you're good to go for all games, regardless of the core used.
It seems like the next logical step since you're already combining core ROMs when using the Arcade folder. Why not the BIOS files too!
FBNeo requires a few BIOS files:
bubsys cchip decocass isgsm midssio namcoc69 namcoc70 namcoc75 neogeo nmk004 pgm skns ym2608
I was re-reading your post (which I found extremely useful!). I was wondering what you mean exactly with the above:
Are you referring to extract the content of two bios zip files and zip these again merged into a single .zip file, and append, in the case of duplicate rom names, _SOMETHING to differentiate between them, still within the same zip file?for instance I stumbled across two decocass.zip bioses that differ a lot, one is from fbneo v1.00.01, the other from one of the mame sets.
I'm tempted to take the content of both and put them into a single merged decocass.zip file. Is htis what you meant?Also, would fbneo prioritise bios files found in the bios folder, or in roms/arcade?
Best
L
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.