- June 4, 2007
- 2
- 0
- Home Country
-
United States of America
in order to maintain simplicity, you should consider making myemulators "profile-based". essentially, a profile would exist for each major emulator. in the options for myemulators, users would add as many emulators they wanted from the list of profiles. profiles would define the options available for that specific emulator (exepath, rompath, imagepath, run in high priority, etc.). confounding problems (like whether or not to include quotes around the romname) would be automatically addressed. toggles could be made for the more useful commandline switches. the settings page for each profile could even define links to the appropriate downloads for that emulator. such a system would make setup much easier and you would get far fewer questions from new users.
profiles could also describe the "best" termination method for that specific emulator (alt+F4 or killproc) - a universal keypress could be defined that would exit any emulator using the "best" method. a similar method could be used to create universal savestate keypresses/menus that would work for all emulators (i.e. any profile that supported savestate). the profile for MAME could be made to work with "special" information like catver.ini and history.dat. likewise, similar category information could be loaded for console emulators.
i feel like the most common approach to emulator frontends is that they provide a list of generic fields and they try to get every emulator to conform to a particular set of rules. instead, just embrace the fact that every emulator is going to be a little different and use profiles that instruct myemulators on how to properly deal with its quirks. in the end, this method should be a lot easier for users and it opens up the doors for some really cool features down the road.
just food for thought - i hope you find it helpful! i sure enjoy your plugin and i can't wait to see what you have in store for us next!
profiles could also describe the "best" termination method for that specific emulator (alt+F4 or killproc) - a universal keypress could be defined that would exit any emulator using the "best" method. a similar method could be used to create universal savestate keypresses/menus that would work for all emulators (i.e. any profile that supported savestate). the profile for MAME could be made to work with "special" information like catver.ini and history.dat. likewise, similar category information could be loaded for console emulators.
i feel like the most common approach to emulator frontends is that they provide a list of generic fields and they try to get every emulator to conform to a particular set of rules. instead, just embrace the fact that every emulator is going to be a little different and use profiles that instruct myemulators on how to properly deal with its quirks. in the end, this method should be a lot easier for users and it opens up the doors for some really cool features down the road.
just food for thought - i hope you find it helpful! i sure enjoy your plugin and i can't wait to see what you have in store for us next!