I would use one of the xbox controllers personally, natively supported on Windows and by emulators, has two sticks (needed for some ps1, and of course ps2, gamecube).
As for emulators, those are just that suggestions, personaly i use retroarch for as many systems i can with a few exceptions, i do use it for N64, using the mupen plus next core.