mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-10-21 08:12:09 -05:00
4.7 KiB
4.7 KiB
libSceRazorCpu technical debt
Silent stubs
- sceRazorCpuPushMarker (libSceRazorCpu) - signature (label, color, flags) from SharpProspero, the same as sceRazorCpuPushMarkerStatic's except that the label is copied; it does nothing without a capture and returns 0
- sceRazorCpuSync (libSceRazorCpu) - the
int(void)signature and its meaning, an unnamed frame-boundary event, come from SharpProspero. Without a capture there is no event to record, so it does nothing and returns 0, like the othersceRazorCpu*markers here and the shadPS4 stub. PRAGMATA (PPSA02530) continues on 0; the console's result with no capture attached is unverified - sceRazorCpuDisableFiberUserMarkers, sceRazorCpuBeginLogicalFileAccess and sceRazorCpuEndLogicalFileAccess (libSceRazorCpu) - signatures and meanings from SharpProspero (fiber markers, logical file access): the first makes later markers carry the thread instead of the fiber, the other two attribute the thread's file reads and writes to a named logical file. Both only change what a capture records, so without one they do nothing, and the two file-access calls return 0 for any arguments. Whether the console checks the operation (0 read, 1 write) or an unmatched end without a capture is unverified
- sceRazorCpuInitDataTags, sceRazorCpuShutdownDataTags, sceRazorCpuTagBuffer, sceRazorCpuTagArray, sceRazorCpuResizeTaggedBuffer and sceRazorCpuUnTagBuffer (libSceRazorCpu) - signatures from SharpProspero, which documents them as the data sampler's buffer-tag table and the tags in it. Without a capture there is no data sampler, so they neither read the caller's storage nor keep the tags, and return 0 for any arguments; the console's errors for a tag before
sceRazorCpuInitDataTags, an unknown buffer or a full table are unverified
Unknown function info
- sceRazorCpuFlushOccurred (libSceRazorCpu) - signature and return values (1 = flush since the last call, 0 = none) from SharpProspero; without a capture nothing is flushed, so it returns 0 and writes 0 cycles to the optional out pointer (whether the real library writes it when nothing was flushed is unknown)
- sceRazorCpuPushMarkerStatic, sceRazorCpuPopMarker (libSceRazorCpu) - signatures from PPSA26344's calls; (name, color, flags) assumed for the push; both do nothing without a capture
- sceRazorCpuPlotValue, sceRazorCpuWriteBookmark (libSceRazorCpu) - signatures (series, float value) and (label, optional description) from SharpProspero, matching PPSA06320's calls; both do nothing without a capture and return 0
- sceRazorCpuNamedSync (libSceRazorCpu) - NID
XCuZoBSVFG8is named by shadPS4; the NID and a stub returning 0 come from there, but its stub declares no arguments; theconst char* labelparameter (NUL-terminated, up to 16384 bytes) comes from SharpProspero, which documents it as the frame-boundary label. Without a capture it does nothing and returns 0; the label is not read, and the capture behavior and the real return values are unverified - sceRazorCpuGetDataTagStorageSize (libSceRazorCpu) - throws: SharpProspero documents it as the byte size a tag table needs for a count of entries, but not the size of an entry