Yeah spell check is my friend, unfortunately I seldom remember to use it.
I've started to post in the discussion section as you suggested. (which may be a bad thing for you guys
)
As for classifying the emulators there are a few different requirements which we'd have to categorize (note these names mean nothing, I'm just throwing them out there).
As far as emulators that use the command line, there are four main types:
Type 1-Fully MAME compatable... They use the exact same syntax as mame to launch a game and set any required settings.
An example would be... well, mame.
Type 2-Fully command line compatable... These emulators don't use mame's syntax, but they use a syntax that has the same basic launching method (send the rom path or romname and rom path). These emulators require sending settings that aren't like mame's.
An example would be daphne. You just send the rom name to launch the game, but daphne won't run unless you also pass the "vldp c:\pathtoframefile\framefile.txt" for each game. This means your front-end has to let you "build" a custom command line string with different options sent for each game or else you need a wrapper.
Type 3-Translation required.... These emulators don't use the romname to launch a game. Because of this emulators need specific code to support them or else you need a wrapper. Even if a front-end does support them natively, it might not always be such a good idea to use said support as you are dependant upon the fe author to update their fe whenever a new version of the emulator comes out.
The only example I can think of is zinc as it uses the romnumber instead of the name.
Type 4-Mounting/External app launch required...This happens a lot with console emulators. Basically the emu doesn't support roms, but rather iso images. The emu can't support genuine cds and thus everyone mounts their hacked isos to virtual drives. The emu doesn't mount them automatically and thus you have to call an app to mount it prior to launch. Or perhaps some misc, app/batch file has to be ran prior to get your pc ready for the emu (such as a key-remapper).
An example might be chankast, but it is a bad one as it's a hybrid (I'll explain that later). It would also apply to playstation emulators.
I'll explain the rest in a few: