2.4 KiB
libSceKeyboard technical debt
Functional
- sceKeyboardGetKey2Char: initialization, output length and reserved bytes remain unverified on a console; unconverted keys retain the host's length of 0. One title (PPSA15246) disassembled for this entry calls it after clearing the first 20 bytes of its output buffer (16-byte store 0x69942d, 32-bit store 0x699435; no size argument), uses a character only when the result is 0 and the first output byte is nonzero, and then reads the 16-bit value at offset 8. Which other output fields it reads and what its other arguments mean are not shown.
Unknown function info
-
sceDbgKeyboardGetHandle (logical
libSceDbgKeyboard, NIDvob3PZretTg) - signature and behavior are unknown. This parameterlessintdeclaration is an import placeholder, not a verified ABI prototype; every call throws throughNotImplemented_nid_no_patch. The binding is in the 13.60 inventory. -
sceDbgKeyboardClose, sceDbgKeyboardGetKey2Char, sceDbgKeyboardInit, sceDbgKeyboardOpen, sceDbgKeyboardRead, sceDbgKeyboardReadState (libSceKeyboard) - names and NIDs are present in the PS5 3.20 export inventory, but no credible prototypes were found. They are declared without parameters solely to resolve known imports; this is not an ABI claim.
-
sceKeyboardGetDeviceInfo and sceKeyboardSetProcessFocus: pointer arguments are passed to device ioctls. Device-info storage is 168 bytes in the connection-query caller, but its fields and the process-focus layout remain unresolved.
-
sceKeyboardConnectPort, sceKeyboardDisconnectPort and sceKeyboardDeviceOpen: argument widths are confirmed. The meaning/order of the two 32-bit port arguments and the final 32-bit device-open argument still require the device-service backend.
-
sceKeyboardPadEmulateClose and sceKeyboardPadEmulateOpen: the supplied keyboard library has neither export; their signatures remain unresolved.