I would love to be able to set up multiple configuration profiles for each emulator and be able to quickly switch between them, just as one can currently switch between different "machines" (i.e. video configurations).
For example, I would like to be able to select between system configurations I frequently use such as:
NTSC C64 with JiffyDOS, REU, and 2x 1581s
PAL C64 with dual SIDs and a 1541-II
NTSC VIC-20 with JiffyDOS, 16K memory expansion, and a 1541
...etc.
If I understand the current configuration methodology correctly, the "machines.txt" file allows multiple profiles for each emulator, but those profiles ONLY allow a subset of Raspberry Pi config.txt and command line options, the intent being to allow different video and timing configurations. However, the actual emulator settings are still stored in the emulator's settings.txt file, for which there is only one file available per emulator.
My suggestion would be to simply allow a specific settings.txt filename to be specified in each profile in machines.txt. This could then be passed to the emulator when the emulator is booted. (If no filename is specified in machines.txt, the existing default filename would be used.) This would require minimum coding, as opposed to actually moving individual configuration directives into machines.txt. It would also not break compatibility with the existing machines.txt and settings.txt files. This would also get around issues like switching between NTSC and PAL on the VIC-20, since the VIC-20 actually requires a different kernal ROM depending on whether it's in NTSC or PAL mode, in addition to the different timing.
My coding skills are probably a bit too rusty to fork BMC64 and make this change myself, but I'm happy to help out in any other way I can (testing, buy you a pizza, etc.) :-) Let me know what I can do!
This is a feature request, not a bug report.
I would love to be able to set up multiple configuration profiles for each emulator and be able to quickly switch between them, just as one can currently switch between different "machines" (i.e. video configurations).
For example, I would like to be able to select between system configurations I frequently use such as:
...etc.
If I understand the current configuration methodology correctly, the "machines.txt" file allows multiple profiles for each emulator, but those profiles ONLY allow a subset of Raspberry Pi config.txt and command line options, the intent being to allow different video and timing configurations. However, the actual emulator settings are still stored in the emulator's settings.txt file, for which there is only one file available per emulator.
My suggestion would be to simply allow a specific settings.txt filename to be specified in each profile in machines.txt. This could then be passed to the emulator when the emulator is booted. (If no filename is specified in machines.txt, the existing default filename would be used.) This would require minimum coding, as opposed to actually moving individual configuration directives into machines.txt. It would also not break compatibility with the existing machines.txt and settings.txt files. This would also get around issues like switching between NTSC and PAL on the VIC-20, since the VIC-20 actually requires a different kernal ROM depending on whether it's in NTSC or PAL mode, in addition to the different timing.
My coding skills are probably a bit too rusty to fork BMC64 and make this change myself, but I'm happy to help out in any other way I can (testing, buy you a pizza, etc.) :-) Let me know what I can do!
Thanks for your consideration.