When I wanted to start building another joystick, I thought it would be best to do a keyboard hack over a gamepad or joystick hack. Since Apple's USB keyboards were pretty cheap I picked one up. Well little did know this was not a good keyboard to choose.
A lot of keyboards have PCBs where there are seperate solder points for each key. Well, the Apple USB keyboard does not use a PCB for the key matrix, it uses a two thin plastic sheets. The two sheets lay over each other forming a matrix. I have scanned the sheets and have them online below.
It is technically posible to make this work and I am doing it right now. It's taking a lot of work and is getting expensive, but at least I will prove it can be done (but at what price :-\
Apple USB keyboard matrix
3-10 is for the Upper matrix. 1 and 2 are not listed because they are for the caps lock key light. 1-17 are for the Lower matrix.
| 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | |
| 1 | keypad + | - | [ | ' | space | enter | keypad * | keypad - |
| 2 | esc | ` | tab | caps lock | left shift | F12 | return | F9 |
| 3 | F1 | 1 | Q | A | Z | F7 | F10 | |
| 4 | F2 | 2 | W | S | X | F8 | F11 | |
| 5 | F3 | 3 | E | D | C | keypad . | = | ] |
| 6 | F4 | 4 | R | F | V | keypad 0 | delete | \ |
| 7 | control | |||||||
| 8 | option | |||||||
| 9 | left apple | |||||||
| 10 | right shift | left shift | return | |||||
| 11 | right apple | |||||||
| 12 | F5 | 5 | T | G | B | left arrow | help | |
| 13 | up arrow | 6 | Y | H | N | down arrow | home | |
| 14 | keypad 6 | number 0 | P | ; | / | keypad 3 | keypad / | keypad 9 |
| 15 | keypad 5 | 9 | letter O | L | . | keypad 2 | keypad = | keypad 8 |
| 16 | keypad 4 | 8 | I | K | , | keypad 1 | clear | keypad 7 |
| 17 | F6 | 7 | U | J | M | right arrow | page up | page down |