As I have been working on the SNES driver a bit after a many year gap, I got to the position where I needed more test roms. For years, I have wanted a way of loading roms for the non arcade systems that didn't require the rom being added to the main game selection dialog.
After a bit of thought I figured one way of doing it was to create a new driver structure (BurnSlot) that has a link back to a normal BurnDrv driver. After some messing around, I have started to get it working in the way I thought it should be. Basically, there is a new load option, which when selected, pops up a window to select the system to load (currently only Sega Master System, Spectrum and snes), and then allows you to select a rom.
It looks a bit like the attached screenshot.
TODO:
* Make it work with zip roms (should be pretty easy)
* Add support for other platforms. As the console/computer drivers tend to be a bit more free-form than the arcade drivers this does require a few code changes/additions to the drivers but none that are hopefully too horrible!
* Currently, it requires a BurnSlot for each configuration of a specific system, so e.g. for snes, there will be 3 systems to choose from to start with (USA/NTSC, EURO/PAL, JAP/PAL). This might get a bit complicated with SMS for example as you have all the different region SMS systems and also Game Gear. The cool thing with this though is that you can e.g. load a game on a different region console. The downside is that there might end up with a lot of systems to choose from
* The UI needs work. I can't figure out how to edit the resource files without causing issues, so I have re-purposed the language download dialog for now.
* Translations need adding for the UI
* I am still not sure this is the greatest idea ever as bug reports might happen for bad roms.
Hopefully I can get this to the stage where it can be merged into the main git without my shitty code upsetting any of the other devs