You asked if there’s other controller options.
There’s a whole host of options available for controllers.
You can use a laptop/PC with a high-throughput wireless module, like the WiPort (802.11b), as has already been done.
Or you can go even more expensive/fast with an 802.11g module.
Or you can go cheaper and slower with Bluetooth.
Then there’s RC controllers and recievers.
I’m betting that the arial models would be best, since RC car recievers are sometimes quite bulky.
There’s even a neat 2.4Ghz radio out there.
Most people stay away from radios, unless they already have them, since there’s not a lot of buttons.
You can probably get away with using just about any game console’s controllers.
Most controllers are just micros that read when a button is pushed and send out a corresponding character(s), serially.
At one point, I was even debating using a leftover N64 controller I had laying about, but dropped that idea, since there wasn’t enough buttons for my fancy.
You don’t even need to limit yourself to wireless controllers, since you can always whack a wireless transmitter on the controller and a reciever on the SSC-32/micro.
If you’ve a mind to use a different controller, you’ll first need to figure out what it sends for each button press.
Regular buttons will probably be a single character or even a single bit of a character, wheras an analog joystick will be one or more full characters.
Which ever is the case, part of each sending for every button will contain information that tells the micro which button it is and whether it’s pressed or depressed (which may be simplified as just sending an indication of which button has been pressed).
In the case of an analog joystick, there will be an additional portion of the sending dedicated to representing the direction and degree of depression.
To figure all of this out, you’ll need a terminal program (I suggest downloading one that displays in hexadecimal) and something to connect your controller to a computer’s COM port.
You could use a wireless module there, or simply a DB9 cable and a MAX232 chip.
Perhaps you could directly hook the controller up to a parallel port (since I hear that they’ve got regular logic-level inputs?).
But, I don’t have a parallel port on my laptop, so I haven’t been able to play with one, and so I might be lying.

Come to think of it, you could even use a serial-enabled LCD, but you might be limited by what characters that LCD can display.
Then, you simply press a button, write down what you recieve and reverse engineer from there.
It’s a really neat project to play around with.
Dan Albert reverse-engineered a wireful (that’s officially a word now, guys) PS2 controller and then used a Zigbee wireless module to connect it to his Robonova.
I plan on following suit in the future, but I might just use a Gamecube controller just to spite him.
