1) Annoyances to define joypad buttons.
Seriously, for an emulator to be functional, you should be able to change the button mapping very easily. You should be able to assign only one key to one button if you want to (some emus forces you to assign multiple keys to one button, which is pointless), and you should be able to assign multiple buttons to the same key, if you want them to be pressed simultaneously.
You should be able to change the mapping of just one button without changing the other keys - it is annoying when they force you to re-define ALL buttons every time
2) No debugging features
I want to see how my games work internally. I can understand they don't release ALL debugging features, but it's horrible that more than half of the emus around have ZERO debugging features. No VRAM viewer, no Palette viewer, no debugger, etc.. This is so annoying. Especially considering they probably HAD to implement them for the development of the emulator (unless they could make it work at the first try - which is very unlikely). Then why would they REMOVE features when they do the official release ?
3) New version has less features than old version / is not compatible with old save states
This is especially SNES9x which comes in mind. An emu should be able to load save states from self older versions. It should also be able to load save states of other popular emus ideally.
Features should be either kept or added but NEVER removed. In the new SNES9x you can't turn off HDMA or window clipping any longer. Why, why ? All they risk is that we could see how the game works internally, but they don't want that. Fuck.
4) Saves in their own folder instead of ROM folder
Unfortunately this stupid trend is increasing at such a point it is rare to find an emu which uses saves in the ROM folder. Because of course, all emus assume they are so awesome that, you will never play something with another emu, and that of course you don't want your save transferred automatically with all your emus without doing anything. No, you must manually copy the .sav file from each emu's folder manually every time you want to use another emu. If you back-up your ROMs, then you don't back-up your saves as well. If you delete your ROM because you don't want it any longer, ghost saves will still be present in your emu's folder.
Seriously this is the worst of all. I really want to punch the first guy who had the idea to store saves in a separate folder for the first time. What an idiot.
5) Not regularly overwriting the SAVE file.
Because of course, your emu does never crash, so it will safely write the SRAM from your PC's RAM to hard drive when you close the program normally, right ? WRONG ! You can loose saves because of emulator crashes even though you saved your game.
Thank god not all emus fall in this category, but SNESGT has been causing me many problems with this one.
6) Don't play the ROM automatically / Can't drag and drop / Can't associate with the file extension
I can understand the later 2 because of technical laziness when writing the emulator, but a good emu should be able to play a ROM just by double clicking on it, and it should be able to open it if you drag-and-drop it into the emu's window.
Emus which needs to manually hit a "Run" or "Turn on system" button are annoying. Sure it is more accurate, but usually the fact to load a ROM means you turn on the system too, right ? If they go that route to be more accurate then they should at least emulate the snow on the screen before you turn on the system, and allow you to turn on the system without a cartridge. But of course they don't !
Seriously, for an emulator to be functional, you should be able to change the button mapping very easily. You should be able to assign only one key to one button if you want to (some emus forces you to assign multiple keys to one button, which is pointless), and you should be able to assign multiple buttons to the same key, if you want them to be pressed simultaneously.
You should be able to change the mapping of just one button without changing the other keys - it is annoying when they force you to re-define ALL buttons every time
2) No debugging features
I want to see how my games work internally. I can understand they don't release ALL debugging features, but it's horrible that more than half of the emus around have ZERO debugging features. No VRAM viewer, no Palette viewer, no debugger, etc.. This is so annoying. Especially considering they probably HAD to implement them for the development of the emulator (unless they could make it work at the first try - which is very unlikely). Then why would they REMOVE features when they do the official release ?
3) New version has less features than old version / is not compatible with old save states
This is especially SNES9x which comes in mind. An emu should be able to load save states from self older versions. It should also be able to load save states of other popular emus ideally.
Features should be either kept or added but NEVER removed. In the new SNES9x you can't turn off HDMA or window clipping any longer. Why, why ? All they risk is that we could see how the game works internally, but they don't want that. Fuck.
4) Saves in their own folder instead of ROM folder
Unfortunately this stupid trend is increasing at such a point it is rare to find an emu which uses saves in the ROM folder. Because of course, all emus assume they are so awesome that, you will never play something with another emu, and that of course you don't want your save transferred automatically with all your emus without doing anything. No, you must manually copy the .sav file from each emu's folder manually every time you want to use another emu. If you back-up your ROMs, then you don't back-up your saves as well. If you delete your ROM because you don't want it any longer, ghost saves will still be present in your emu's folder.
Seriously this is the worst of all. I really want to punch the first guy who had the idea to store saves in a separate folder for the first time. What an idiot.
5) Not regularly overwriting the SAVE file.
Because of course, your emu does never crash, so it will safely write the SRAM from your PC's RAM to hard drive when you close the program normally, right ? WRONG ! You can loose saves because of emulator crashes even though you saved your game.
Thank god not all emus fall in this category, but SNESGT has been causing me many problems with this one.
6) Don't play the ROM automatically / Can't drag and drop / Can't associate with the file extension
I can understand the later 2 because of technical laziness when writing the emulator, but a good emu should be able to play a ROM just by double clicking on it, and it should be able to open it if you drag-and-drop it into the emu's window.
Emus which needs to manually hit a "Run" or "Turn on system" button are annoying. Sure it is more accurate, but usually the fact to load a ROM means you turn on the system too, right ? If they go that route to be more accurate then they should at least emulate the snow on the screen before you turn on the system, and allow you to turn on the system without a cartridge. But of course they don't !