I usually just use a USB Logitech controller, I have an older Precision (no analogue), and...um...the F310. The drivers come with a useful program that lets you bind the buttons to anything you want, even weird keyboard or mouse macros.
But I also have hookups so I can use SNES, Genesis, Atari...somewhere around here I have a Bluetooth dongle so I can use Wiimotes.
_________________
I'll brave the storm to come, for it surely looks like rain...