For adding to other emulators, it is actually a very surprisingly simple change to the emulator (only a few lines of code - less than two dozen) in many cases. Just a few tricky UI aspects, but this can be disabled by default and only enabled via a command line option.