Super Nintendo gamepad to keyboard adapter

Convert a Super Nintendo gamepad to an USB keyboard.

Ever wondered if you could type using a gamepad? On one side, a standard keyboard with its 100+ keys gives you direct access to most characters, but is not very confortable to use since you have to move your hands. On the other side, a gamepad has less keys, but is more confortable for your hands.

Wonder no more! Here is an adapter to convert a USB Super Nintendo gamepad into a normal keyboard, compatible with any device accepting USB keyboards.

Typing example

text:
Hello (^_^)
[11 character]

keyboard (German layout):
shift+h e l l o space shift+8 ^ shift+- ^ shift+9
[15 keypress]

gamepad (my super-nintendo layout):
L-(left-down)+A L-left+X L-down+A L-down+A L-right+B B (left-up)+B L-R-up+X L-R+A L-R-up+X (right-up)+B
[32 keypress, unoptimized]
[21 keypress, optimized]

What is "optimization"? For instance, when typing hello, the button L is always pressed, there is no need to release and press it again for each new letter.

Note On the D-pad, (up-right) and similar diagonals are pressed in one stroke.

References

[1]USB "HID Usage Tables", http://www.usb.org/developers/hidpage/Hut1_12v2.pdf