Commit Graph
6285 Commits
Author SHA1 Message Date
milescovielloandClaude Opus 5.5 e9de93c1e4 docs(libSceNpEntitlementAccess): list sceNpEntitlementAccessInitialize as a silent stub
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 23:25:36 +00:00
Dean 6e9b9134f6 Merge pull request #11846 from heditrigui/feat/libc-reallocarray
feat(libc): implement reallocarray
2026-10-28 12:10:58 +13:00
Dean ecc950fcc0 Merge pull request #11765 from oneandonlydean/salvage/freetypeol-9453
feat(libSceFreeTypeOl): declare 92 PS5 3.20 exports
2026-10-28 12:09:43 +13:00
Dean 27b854fac1 Merge pull request #11764 from oneandonlydean/salvage/jsc-9438
feat(libSceJsc): declare 150 PS5 3.20 exports
2026-10-28 12:09:27 +13:00
Dean cb9a3234f9 Merge pull request #11761 from oneandonlydean/salvage/xml-9422
feat(libSceXml): declare 150 pending exports
2026-10-28 12:09:11 +13:00
Dean 1dcfe03875 Merge pull request #11760 from oneandonlydean/salvage/icu-9444
feat(libSceIcu): declare 112 PS5 3.20 exports
2026-10-28 12:08:55 +13:00
Dean 55ab7282b2 Merge pull request #11753 from oneandonlydean/salvage/np-common-9686
feat(libSceNpCommon): declare 150 additional PS5 exports
2026-10-28 12:08:39 +13:00
Dean 6a3182b8c5 Merge pull request #11612 from milescoviello/docs/agc-debug-raise-exception
docs(agc): note how seven titles call sceAgcDebugRaiseException
2026-10-28 12:07:44 +13:00
Dean 77e44989b6 Merge pull request #11561 from javierUDP/docs/rosetta-m5-26-4-evidence
docs(relinker): record SHA, AVX-512 and XSAVE under Rosetta on an M5
2026-10-28 12:06:23 +13:00
Dean 45af0a222e Merge pull request #11458 from MarcZX10/marc/docs-debt-sync
docs(debt): drop duplicated debt entries
2026-10-28 12:05:46 +13:00
Dean cea134faab Merge pull request #10700 from MarcZX10/marc/signatures-libscenptus
feat(libSceNpTus): declare sceNpTusCreateNpTitleCtx with its shadPS4 signature
2026-10-28 12:04:06 +13:00
Dean 7d2136c9c6 Merge pull request #10447 from alvaroelpob/feat/libscelibressl-x509-store-ctx-error
feat(libSceLibreSsl): implement the X509_STORE_CTX error, depth, current certificate and chain accessors
2026-10-28 12:03:34 +13:00
p3nicillinandClaude Opus 5.5 d0d27f6183 fix(libSceSsl): throw for an empty or certificate-free system CA list
An empty list, or one with no certificate, made SystemRoots() return a
null chain, so the connection trusted nothing. Throw and name the path,
as the missing-file case does; nothing is cached, so a later call
reads the list again.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 23:02:48 +00:00
p3nicillinandClaude Opus 5.5 f685ee8720 fix(http2): trust the system CA list for HTTPS requests
Every libSceSsl context started without trust anchors, so a libSceHttp2
request without a verify callback failed the known-CA check. RetroArch's
updater, PS5LM and Porpoise all use version-3 templates over https://
without one. libSceSsl now parses /<sandbox word>/common/cert/CA_LIST.cer,
served by libkernel from the host trust store, once per process into its
own pool, and SslTrustSystemRoots_nid_no_patch links those roots after
the context's own authorities for one connection. The HTTP/2 transport
calls it after creating each connection.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 23:02:48 +00:00
Adrià f5fefb982c Merge pull request #11305 from joedeangelis533-bot/review/tessellation-depth-upstream-20261025
feat(agc): remap unsupported tessellation viewport depth ranges
2026-10-27 22:27:35 +01:00
Adrià e274546099 Merge pull request #11302 from Danigamer05/feat/libc-signed-max64
feat(libc): implement signed 64-bit maximum
2026-10-27 22:26:29 +01:00
Adrià 6d99bf4ccb Merge pull request #11300 from Danigamer05/feat/libc-signed-min64
feat(libc): implement signed 64-bit minimum
2026-10-27 22:16:40 +01:00
Adrià 4a6005955f Merge pull request #10898 from imellag/feat/libkernel-memory-protection-macos
feat(libkernel): guest memory protection and VirtualQuery on macOS hosts
2026-10-27 21:42:24 +01:00
Adrià 771d8b5bf7 Merge pull request #11340 from harisibrar1/feat/libressl-ex-data-indices
feat(libSceLibreSsl): implement the SSL and SSL_CTX ex_data index registry as LibreSSL 2.5.4 does
2026-10-27 21:34:00 +01:00
Adrià 80b209d984 Merge pull request #11295 from Danigamer05/feat/libc-unsigned-min32
feat(libc): implement unsigned 32-bit minimum
2026-10-27 21:20:30 +01:00
Adrià 225ebc5eee Merge pull request #11264 from Gruzzberry/fix/sysctl-faults
fix(libkernel): fail sysctl and sysctlbyname with EFAULT on an unreadable or unwritable pointer
2026-10-27 21:16:21 +01:00
PrivacyOnion a6cd8c57c6 feat(libSceFrontPanelDisplay): add skeleton library and 3 ps5rs-listed stubs 2026-10-27 20:53:30 +01:00
Dean Galvin d4a296d863 Merge main into perf-D2-v47: depth export tail moves to request version 49
Main took request serialization version 48 for the fragment barycentric
built-ins flag (#9193). The depth export clamp bounds are now written at
version 49 and read only for versions from 49, so a version 48 request as main
writes it still decodes, with default bounds. Tests: version 49 is the
emitted prefix, 50 the first unsupported one, a depth exporting request
without its bounds decodes at 48, 47 and 46 (the last two without main's
barycentric byte), and a version 48 two-sample dithered request decodes as
written.
2026-10-28 08:24:34 +13:00
KernelPanicNT 625a3fbb62 fix(libkernel): store any scePthreadMutexattrSetkind kind as firmware 13.42 does
scePthreadMutexattrSetkind called NotImplemented_nid_no_patch for a kind
outside 1 to 4. Firmware 13.42's libkernel, run in an emulator, makes it
call pthread_mutexattr_setkind_np, which stores any kind as a signed
16-bit value and returns 0, and turns a null attribute's -1 with errno 22
into 0x8001FFFF. It now forwards to pthread_mutexattr_setkind_np and
converts the result with sceKernelError, so a null attribute or object
still returns 0x8001FFFF and now also sets errno 22.

An out-of-range kind is refused by scePthreadMutexInit with 0x80020016,
leaving the mutex untouched, as measured for the same module.
scePthreadMutexattrGetkind is unchanged; kind 0 now reaches it and
returns 0.
2026-10-27 19:24:23 +00:00
KernelPanicNT 9ed4377be4 Merge main into fix/libkernel-mutexattr-setkind-any-kind 2026-10-27 19:22:42 +00:00
Dean d13b3d7c55 Merge pull request #10575 from Mouhand-Kaddo/fix/agc-committed-reads-released-pages
fix(agc): read committed guest pages on Windows without faulting on released pages
2026-10-28 07:55:20 +13:00
milescovielloandClaude Opus 5.5 c7f22c2778 docs(libkernel): note how titles' libc reads the sanitizer replacement tables
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 18:51:10 +00:00
Dean 14332cd8d0 Merge pull request #10721 from MarcZX10/marc/avcap2-declarations
feat(libSceAvcap2): declare 7 pending exports
2026-10-28 06:55:01 +13:00
Dean 1819607b25 Merge pull request #10701 from MarcZX10/marc/signatures-libscegnmdriverforneomode
feat(libSceGnmDriverForNeoMode): declare three stubs with shadPS4 signatures
2026-10-28 06:54:28 +13:00
Dean 1d0113de60 Merge pull request #10699 from MarcZX10/marc/signatures-libscenputility
feat(libSceNpUtility): declare two title context stubs with shadPS4 signatures
2026-10-28 06:53:56 +13:00
Dean ab6a87a163 Merge pull request #10460 from Danigamer05/feat/libc-unsigned-max64
feat(libc): implement unsigned 64-bit maximum
2026-10-28 06:53:22 +13:00
Adrià 254240c747 Merge pull request #11045 from roboterspinne/fix/relinker-macos-fixups-writable
fix(relinker): reject macOS fixups outside writable segments
2026-10-27 18:29:51 +01:00
Dean 594214f733 Merge pull request #11357 from oneandonlydean/sa/host-import-frame-eviction
fix(agc): do not evict host imports used in the current or previous frame
2026-10-28 06:23:09 +13:00
JJenkxandClaude Opus 5.5 79d65956a1 fix(libc): compute _Exp and _FExp as titles do
The libc.prx that titles ship evaluates the rational step as
((Q(z) + g*P(z)) + 1) / ((Q(z) - g*P(z)) + 1), with its own ln 2 split
and coefficients in the double case, and returns 1 only for arguments
within half an epsilon of zero. main used a different rational form
with a doubling step and an epsilon-wide shortcut, which left about one
result in five one ulp away from titles.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 13:18:32 -04:00
milescovielloandClaude Opus 5.5 ef0bfaa5f2 docs(libSceSaveData): record the sizes titles pass to sceSaveDataCreateTransactionResource
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 17:14:42 +00:00
Dean f188470bca Merge pull request #11757 from milescoviello/docs/livestreaming-status-reads
docs(libSceGameLiveStreaming): note the status fields three titles read
2026-10-28 06:02:30 +13:00
Dean 0c4a8cb41a Merge pull request #11756 from milescoviello/docs/signin-dialog-result-callers
docs(libSceSigninDialog): note the result size and field three titles use
2026-10-28 06:01:55 +13:00
simnJS ad9a68f9ba feat(libSceNpMatching2): answer signaling connection status and context start abort offline
sceNpMatching2SignalingGetConnectionStatus reports every member inactive
for a known context, since no room is joined offline, and leaves the peer
address and port untouched; a null status pointer throws.
sceNpMatching2AbortContextStart returns NOT_INITIALIZED before
initialization and 0 afterwards. Checks follow shadPS4, with RPCS3's
differences recorded in the technical debt entry.
2026-10-27 17:57:03 +01:00
simnJS a06fb13f6c fix(libSceAutoMounterClient): name the fields of the USB device-info output
The 816 bytes after the 128-byte device name are the PS4
SceAutoMounterClientUsbDeviceInfo fields up to the serial length in
flatz's ps4_stub_lib_maker_v2 header: the total and available space, the
vendor id, product id and release, and the manufacturer, product and
serial strings with their lengths. libSceUsbStorage's device-info record
starts with the same layout. Every field offset is now asserted; the
size and offsets do not change.
2026-10-27 17:23:33 +01:00
slopgobblercobbler ff5da447b4 fix(libSceUserService): validate user in sceUserServiceGetPlatformPrivacyWs1 2026-10-27 16:51:54 +01:00
Adrià e0cd1259a9 Merge pull request #11254 from Michael-KD/fix/scalar-buffer-runtime-word3
fix(shader): ignore a runtime V#'s type for scalar buffer loads as RDNA2 does
2026-10-27 16:28:28 +01:00
Adrià 637522b6bf Merge pull request #11083 from slopgobblercobbler/fix/savedata-convert-null-parameter-validation
fix(libSceSaveData.native): return SAVE_DATA_ERROR_PARAMETER on null argument in sceSaveDataConvert
2026-10-27 16:21:11 +01:00
Adrià 6f7cb75291 Merge pull request #9193 from imellag/feat/shader-barycentric-builtins-moltenvk
feat(recompiler): read I/J from barycentric built-ins on MoltenVK
2026-10-27 16:21:05 +01:00
Matheus Herberts 458da3450e feat(relinker): support packed ELF64 relative relocations 2026-10-27 11:58:24 -03:00
Danigamer05 f139bcf1fc feat(libc): implement signed 32-bit maximum value helper 2026-10-27 15:46:15 +01:00
Adrià e2a5118839 Merge pull request #11047 from imellag/feat/libkernel-macho-tls
feat(libkernel): thread-local storage for Mach-O guests
2026-10-27 15:18:46 +01:00
Kyon 7853f0fbc6 feat(libSceSystemLogger2Game): declare 2 additional exports 2026-10-27 14:14:56 +00:00
Kyon 17703bd1b7 feat(libSceAppContent): declare 4 additional exports 2026-10-27 14:14:55 +00:00
Kyon 0962de20d8 feat(libSceContentSearch): declare 4 additional exports 2026-10-27 13:59:06 +00:00
Kyon 9fc3a5aa59 feat(libSceRemoteplay): declare 4 additional exports 2026-10-27 13:59:05 +00:00