I've been coding a key biding feature for my game Rush to Adventure. These are things that I have found that I think needs fixing at some point.
F9 - F12 doesn't generate keycodes.
On my numpad only * and + uses separate keycodes, the other use the same as on the other keys. It should be possible to detect all of them separately IIRC. At least I know other games that uses numpad separate. There's plenty of unused keycodes.
Alt do generate a keycode, but it still sets the program into a different state. Like if a Windows menu is accessed. So it's still unusable within games.
Caps Lock generates no keycode, not sure if it should?