I use one type of controller for all the emulators, the logictech F310 gamepad, I had to go through and map all the buttons, I also used a program called xpader to map them as a backup, it also gives me the option of alt-tabing with the controller if I need to regain access to windows
To shell everything I used the program Insta-sheller, its very easy to use, just put the file in your main HD and it pretty much does everything for you, and if you ever need to turn it off just run the program again and it reverts back to normal