Decodes PS/2 USB HID scan codes into human-readable characters. Useful for forensics and security research — e.g. replaying keystroke capture logs.
gcc -o ds-decoder ds-decoder.cPass scan codes as hex arguments (prefix 0x or bare hex):
./ds-decoder 0x1E 0x30 0x2E # → abc
./ds-decoder 0x2A 0x1E # → A (Shift + a)
./ds-decoder 0x3A 0x1E # → A (CapsLock then a)- Full A–Z / a–z (with Shift and CapsLock state)
- Digits 0–9 and common symbols (
-,=,`) - Special keys:
[Esc],[Shift],[CapsLk]
Unknown scan codes are printed as [Unknown:0xNN].
Uses standard Set 1 (XT) PC scan codes. See OSDev Wiki — Keyboard Scan Codes for a full table.