5.4 KiB
libSceHmd technical debt
Silent stubs
- libSceHmd implements only the disconnected-headset path: initialization succeeds, device queries report
NotDetected, and opening a device returnsDeviceDisconnected. Headset support, tracking, rendering and additional HMD exports are not implemented; SDK-level ABI compatibility and in-game behaviour remain unverified.
Unknown function info
-
libSceHmd internal and capture exports - input/output directions and argument registers are recovered for shared VR2D data, device binding, optical and serial queries, screen status and capture operations. VR2D records are 128 bytes, optical output 16, serial output 16, PU position output 20, crash-dump output 68, audio/video status 32, and reprojection debug outputs 216 or 1136. Payload field meanings and capture callback contracts remain incomplete; these structures use forward declarations.
-
libSceHmd queries without a headset (libSceHmd) - the signatures, the distortion work memory (
0x20000, aligned to0x400) and reprojection buffer sizes (garlic0x100000, onion0x810, both aligned to0x100), and the results ofsceHmdGetFieldOfView,sceHmdGet2DEyeOffset,sceHmdGetInertialSensorData(HANDLE_INVALIDonce initialized; field of view checks its output for null first) andsceHmdGetAssyError(null output, thenDEVICE_DISCONNECTEDonce initialized) follow shadPS4 (PS4) with no headset, not a PS5 measurement. Before initializationsceHmdGetFieldOfViewreturnsNOT_INITIALIZEDfor a non-null output, where shadPS4 checks the handle first and returnsHANDLE_INVALID. The third argument ofsceHmdGetInertialSensorDatais unnamed there and taken as a count -
sceHmdReprojectionStartWideNear (libSceHmd) - unknown signature
-
sceHmdInternalDfuGetStatus (libSceHmd) - unknown signature
-
sceHmdGetDistortionWorkMemoryAlign (libSceHmd) - unknown signature
-
sceHmdReprojectionStartMultilayer (libSceHmd) - unknown signature
-
sceHmdGetDistortionWorkMemorySize (libSceHmd) - unknown signature
-
sceHmdReprojectionSetDisplayBuffers (libSceHmd) - unknown signature
-
sceHmdInternalMirroringModeSetAspectDebug (libSceHmd) - unknown signature
-
sceHmdDistortionGetCompoundEyeCorrectionCommand (libSceHmd) - unknown signature
-
sceHmdDistortionGetCorrectionCommand (libSceHmd) - unknown signature
-
sceHmdReprojectionAddDisplayBuffer (libSceHmd) - unknown signature
-
sceHmdReprojectionInitialize (libSceHmd) - unknown signature
-
sceHmdInternalGetDeviceInformationByHandle (libSceHmd) - unknown signature
-
sceHmdInternalGetDeviceInformation (libSceHmd) - unknown signature
-
sceHmdReprojectionStartCapture (libSceHmd) - unknown signature
-
sceHmdInternalGetDefaultLedData (libSceHmd) - unknown signature
-
sceHmdDistortionGetWideNearCorrectionCommand (libSceHmd) - unknown signature
-
sceHmdDistortionInitialize (libSceHmd) - unknown signature
-
sceHmdReprojectionStart (libSceHmd) - unknown signature
-
sceHmdInternalCrashReportCancel (libSceHmd) - unknown signature
-
sceHmdInternalSeparateModeOpen (libSceHmd) - unknown signature
-
sceHmdDistortionGet2dVrCommand (libSceHmd) - unknown signature
-
sceHmdGetWideNearDistortionCorrectionCommand (libSceHmd) - unknown signature
-
sceHmdReprojectionStartMultilayer2 (libSceHmd) - unknown signature
-
sceHmdGetDistortionCorrectionCommand (libSceHmd) - unknown signature
-
sceHmdReprojectionStartWithOverlay (libSceHmd) - unknown signature
-
sceHmdReprojectionStartWideNearWithOverlay (libSceHmd) - unknown signature
-
sceHmdGetDistortionParams (libSceHmd) - unknown signature
-
sceHmdReprojectionStart2dVr (libSceHmd) - unknown signature
-
sceHmdInternalSetDefaultLedData (libSceHmd) - unknown signature
-
sceHmdInternalGetStatusReport (libSceHmd) - unknown signature
-
sceHmdGet2dVrCommand (libSceHmd) - unknown signature