This PR adds a settings window that allows users to provide system files, such as boot ROMs and NAND images, through the UI. It also pops up a message box whenever a fatal error occurs and stops emulation, rather than crashing the whole program. The emulator can be booted with or without a 3DS cartridge through the menubar. Finally, emulation now runs on a separate thread so that the UI remains responsive even when the emulator lags.
There remains some work to be done. It would be nice to have an FPS counter, for instance, and some of the code needs cleanup. Furthermore, there is the question of what to do with command-line arguments, as they are currently commented out. The best option is likely to just save arguments into the settings.
Yeah, just override the settings with command line args. Another option is splitting it into a stripped down version and the Qt GUI version similar to what citra does.
This PR adds a settings window that allows users to provide system files, such as boot ROMs and NAND images, through the UI. It also pops up a message box whenever a fatal error occurs and stops emulation, rather than crashing the whole program. The emulator can be booted with or without a 3DS cartridge through the menubar. Finally, emulation now runs on a separate thread so that the UI remains responsive even when the emulator lags.
There remains some work to be done. It would be nice to have an FPS counter, for instance, and some of the code needs cleanup. Furthermore, there is the question of what to do with command-line arguments, as they are currently commented out. The best option is likely to just save arguments into the settings.