Well, recently I've been mucking around with the dualshock 1 and 2 (and third party equivalents). Of course, you can pick them up via a usb converter using the 'hi' object in Max/MSP. EB Games/ EB Boutique quite often have a pack of two third party dualshock 2 controllers for $23, and the usb converter can be bought quite cheaply from ebay.
The inputs from the pad include sixteen digital on/offs (left, right, up and down on the d-pad, x, triangle, circle, square, l1, l2, l3, r1, r2, r3, start and select) and four 8-bit analog inputs (analog left x and y and analog right x and y). However, the d-pad on/offs are not independent; left and right cannot be switched on at the same time. The same with up and down.
I made a quick trial, by shoving mercury tilt switches into a styrofoam ball. The orientation of the ball along the vertical plane turned on and off different harmonics in a quick'n'dirty additive synth.
Although the digital on/offs work great (they are very quick to react), I'm still having trouble getting high quality data from the analog inputs. More on this soon...