Can I use a command line to open up a custom core options config file?

Is there a way to get RetroArch to load a custom version of the “retroarch-core-options.cfg” file? I tried to use the “–config” command line, but RetroArch crashed (I’m sure because it tried to load it as the standard config file, rather than a core-options config.

My reason for doing this is because I want to have 3 different settings for Neo-Geo games. One for AES with the Uni BIOS, one for MVS with the Uni BIOS, and one with an AES BIOS without using the Uni BIOS (the last one is so that I can get Retro Achievements, since the Retro Achievements website doesn’t work with the Uni BIOS). I can use Launch Box to use any command line I want when I launch the game, so using a command line to load different core options config files would be ideal.

I’d also like it to load English as default. I can get English text when I load Baseball Stars 2 with the Uni BIOS, but if I use any of the regular AES BIOS, the language is Japanese. Still not sure why that is. And for some reason, the sound stops working while playing Aero Fighters 2/Sonic Wings 2 when using the Final Burn Alpha core (but not the Final Burn Neo core). Not sure why. Even tried different roms to rule out the possibility of a bad file. This is another reason why I’d like to load different core options - I’m currently using the Final Burn Alpha core for AES & the Final Burn Neo core for MVS games, but the Final Burn Neo core seems to have fewer issues, from my experience.

Not exactly, but there’s an option in the cfg, core_options_path = “”, and you should be able to use --appendconfig to point to a config fragment that holds only that one line.

ah, so what you’re saying is that I should make 3 custom retroarch.cfg file, and specify a custom core options path for each type of Neo Geo BIOS that I want to load? For instance, name a retroarch.cfg file to something like, “retroAES.cfg”, and then create a core options path specifically for AES. Then do that for the others…?

I assume that’s what you mean?

Yeah, you’re basically making config overrides by hand and then loading them manually via CLI.

That is, in each mini-config, you would have:

core_options_path = "/path/to/core-options-file.cfg"
save_on_exit = "false"

You’ll want to disable save-on-exit so your main config file doesn’t save the alternate core options path each time, otherwise it won’t know where to find your other cores’ options.

Then, in your launcher, you’ll do something like:

retroarch.exe -L path\to\core.dll -c path\to\config.cfg --appendconfig path\to\fragment.cfg %rom%

Thanks! I played around with it, and I kind of got it to work to where the AES BIOS loads for when I want to use Retro Achievements, but when I use the Universe BIOS, it always ends up loading the last settings that I had for the Universe BIOS.

In other words, I have 3 RetroArch config files that point to 3 separate Core Options configs. For instance, for the Uni BIOS intended to be used for MVS, I have a RetroArch config file named NeoGeoMVSuni.cfg that points to the Core Options config, which I’ve named CoreOptMVS.cfg. Same thing for the Uni BIOS for AES, just with AES in the filenames instead of MVS.

I can tell this sort of works because I can switch between the standard AES BIOS & the Universe BIOS, but the Universe BIOS settings overwrite each other (despite pointing to separate core options files).

I should mention that my only command line parameter is “–config NeoGeoNameOfBIOSTypeHere.cfg” because Launch Box automatically takes care of loading the core. Do I need to use the --appendconfig to have it save the core options to the right file? Is that what’s going on?

yes. you don’t want to point to an entire config file, and if you’re pointing to that config fragment with -c as if it were a complete config, it’s just loading default settings for the rest, as if you had no config file there at all.

Ah, okay, I see. I actually literally copied my current retroarch.cfg file, pasted it into the same directory, and then renamed it to NeoGeoAESuni.cfg, NeoGeoMVSuni.cfg & NeoGeoRA.cfg (RA = Retro Achievements), and within each of those, changed the core_options_path to each of the custom core option config files.

I’ll mess around with this. Thanks so much for your help!

hmm, that should work, too, AFAIK. Anyway, good luck.

So I think I figured out the problem - while the Core Options config file stores which BIOS to use, the actual settings of the Universe BIOS is stored in the game’s “memory card”. Those “memory cards” are stored in the /RetroArch/Saves/fbneo/ directory, which is shared regardless of what config files I use. I tried using different versions of the Universe BIOS for the AES (v. 3.2) & MVS (v. 3.3), but it seems like the settings (region & version) are shared between the different versions of the Universe BIOS.

Worse comes to worse, I can do something like using the Final Burn Neo core for MVS & Final Burn Alpha for AES, and that will keep it separate. I’d prefer to use Final Burn Neo for all of them (I’ve had fewer issues with that core), but that might not be an option.

1 Like