Full credit for the general idea goes to this howto for a similar project with an NES controller. My brother inherited my NES from me, so all I had to work with was an SNES controller... and since it lets me play a wider variety of games it seemed like a perfect thing to do. The project ended up being a bit more difficult than I expected, and I tried to document as much of the process as I could.
Soldering/desoldering work is required for this, and I'm assuming you have some general knowledge of working with a soldering iron and continuity tester. I'm a software/networking person, though, and not an expert with a soldering iron by any means. A steady hand and a lot of patience can be a big help.
This is my first instructable, suggestions are definitely welcome. I apologize in advance for some horribly bland photography.
Step 1: Collecting Parts
I'd suggest taking a look at the next step (with the controller apart) before getting any parts.
Once you have parts that you know will work, considering getting a backup set in case you mangle something. Naturally, the only part I did not get a spare for (the keyboard) was the only one I ended up breaking in the process.
1 x SNES controller - I used an old one lying around from my younger years.
1 x USB hub - I found a tiny four-port hub that even had a clear casing so I could see the shape/size of the board inside. Roughly $12.
1 x USB keyboard - I used an "Alaska" keyboard. $12 from the local computer store. This is a bit harder than the hub, since there's no way to tell what the inside components look like. The cheaper the better, since you may end up needing to try a different model.
1 x thumb drive - a 4G Sandisk Cruzer I had lying around since I upgraded to an 8G drive recently
soldering iron - a cheap one from Radio Shack worked for me. Check the wattage, you want the cooler ones for electronics work... but you can make do with a hotter one if you're careful.
solder - basic rosin-core electronics solder
multimeter - A simple continuity tester will work, I just used it to check for shorts.
dremel - I did need to modify some of the circuit boards. There's a lot of possible substitutes for this, but you'll need something you can make precise cuts with.
A note about SNES controllers: when I started this project I had only one old controller that I got with my original console, so I ordered two online to use as spares. When they arrived, I noticed that the area around the buttons was greenish (almost a pale lime green) and the "Super Nintendo" logo was different, so I set them aside as last-ditch spares. Towards the end of the project I pulled one of these spares apart to test something and found out that they were a completely different design, with the controller board pushed almost flush with the backside of the controller rather than close to the front (among other changes). This would have made it impossible to use the layout method I used, so be sure to check the controller insides and plan your parts accordingly!