Fix Hangeul/Hanja scancodes

Invert the Xfree86 scancodes for these keys. They were swapped due to a
Linux bug which has since been fixed [1].

Fix the scancodes for the AT set 1 to be correct - they include bit 0x80
which requires some special handling to avoid triggering asserts. Also
ensure that the QNum scancodes remain as 0x71/0x72 to avoid the wire
protocol changing.

Finally, add the scancodes for AT set 2 since this is what Windows uses.

[1] Linux commit 0ae051a19092 ("Input: atkbd - fix HANGEUL/HANJA keys")

Signed-off-by: Ross Lagerwall <>
2 files changed