2.2 KiB
libSceJxr technical debt
Functional
-
PixelFormatLookup uses the pinned public jxrlib table and lookup algorithm through a C bridge. The signed 64-bit result and 56-byte LP64 pixel-info model, 16-byte GUID, 32-bit enums and TIFF fields, module/library versions and Sony table/configuration equivalence are inferred or unknown, not console-measured. Modes 0/1 follow forward GUID/reverse TIFF lookup; other modes and misses return the public unsupported-format error without modifying the record. Valid-mode null records and forward null GUIDs throw because console behavior is unknown. Success returns a borrowed read-only static GUID valid while the module remains loaded; the caller must not free it. Closes when: Sony prototypes, layouts, configuration, table and invalid-argument behavior are verified by attributable disassembly or console measurements
-
PKFree (libSceJxr) follows Microsoft's jxrlib JXRGlue.c, whose four exported names the module shares: a non-null
ppvhas*ppvreleased with the guestfreeand set to null, and the result is alwaysWMP_errSuccess(0) as a 64-bitERR(long). That the console's module is built from jxrlib, and that itsPKFreereleases through libc'sfree, is inferred from the export names and not checked against the console's code. Closes when: the console'sPKFreeis disassembled or measured on a PS5 -
readIS and writeIS use the non-ARM, LP64
BitIOInfoandWMPStreamABI and packet algorithm from Microsoft's JPEG XR reference implementation. Console structure layouts and execution remain unverified. Profiling callbacks are omitted as in the reference Unix build withDISABLE_PERF_MEASUREMENT; the codec argument is unused. Invalid null state or required callbacks throw instead of dereferencing them. No codec is instantiated by these helpers; callers must supply the reference ring buffer and guest-ABI stream callbacks.