Files
AnyPS5/docs/dev/debt/libSceConvertKeycode.md
T
codingreapermapsandClaude Opus 5.5 5ca6487dda feat(libSceConvertKeycode): implement sceConvertKeycodeGetCharacter for the US layout
The signature is inferred from PPSA12361: a 16-bit keycode, a second
argument the title passes as 0, the type from
sceConvertKeycodeGetImeKeyboardType and a UTF-16 output. The keycode is a
USB HID keyboard usage and the unshifted US character is returned; a
keycode without a character returns 0. A second argument or keyboard type
other than 0 throws.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 19:02:54 +01:00

977 B

libSceConvertKeycode technical debt

Unknown function info

  • sceConvertKeycodeGetCharacter (libSceConvertKeycode) - the signature (uint16_t keycode, uint32_t, uint32_t keyboardType, char16_t* character) is inferred from PPSA12361, which passes a 16-bit keycode, 0, the type from sceConvertKeycodeGetImeKeyboardType and a pointer it reads one UTF-16 unit from when the result is 0. The meaning of the second argument is unknown; a value other than 0 throws, and so does a keyboard type other than 0.

Functional

  • sceConvertKeycodeGetCharacter (libSceConvertKeycode) takes the keycode as a USB HID keyboard usage and returns the unshifted character of the US layout for letters, digits, punctuation, space and the keypad. A keycode without a character returns 0 with the character 0; whether the console returns an error instead is not measured.