How is "fix key" different from "clear key" and "set key"?
The "Fix Key" button allows the game to change its idea of what scan code the game should expect from that button. It is a much lower level.
Basically, you press the button, and it if it show wrong, or not at all, on the virtual keyboard in the menu, then use "Fix Key" to correct it.