Commit Graph
9104 Commits
Author SHA1 Message Date
JulesB40andClaude Opus 5.5 9bfcec2bbf test(libSceLibreSsl): compare exports with LibreSSL 2.5.4 behind ANYPS5_LIBRESSL_ORACLE
The opt-in guest_libressl_oracle test downloads the LibreSSL 2.5.4
tarball at build time, checks its SHA-256, builds libcrypto and libssl
and compares the AES, digest, DES parity and error-string exports of
libSceLibreSsl and libSceLibreSsl3 with them, printing the cases and
differences per function. The option is off by default and adds no
download then. See #12537.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 21:49:28 +01:00
rooklz 8f8bb6630d fix(libSceRtc): reject far-future ticks before precise local time conversion 2026-10-28 20:41:26 +00:00
xXPBSXxandClaude Sonnet 5.5 c0ad523e33 docs(libSceRazorCpu): list the calls that return without recording anything
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-28 21:28:50 +01:00
JamieandClaude Opus 5.5 7b38bca9e5 fix(agc): write host-only multisample memory as zeros in a capture snapshot
A capture snapshot read every committed block through the coherent path,
which refuses memory under a multisampled color target, its FMASK or
native multisample depth whose samples exist only on the host, so the
capture stopped there. The snapshot now writes those bytes as zeros,
counts them as host_only_sample_bytes in capture.json and adds a
warning, and the replay starts those targets without their earlier
contents.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 20:27:23 +00:00
JJenkx dee895a889 docs(libc): identify library in _Fltrounds debt entry 2026-10-28 15:46:40 -04:00
JJenkx 695f3b59ed test(libc): isolate floating-rounding regression from adjacent work 2026-10-28 15:30:25 -04:00
JJenkx 2d46185617 fix(libc): read x87 rounding in _Fltrounds 2026-10-28 15:26:53 -04:00
camezaro-intc f50ab20a5a fix(libSceAmpr): dynamically expand command buffer capacity on append 2026-10-28 13:05:10 -06:00
dantdmdarealguy c1becdf505 docs(hw-oracle): give the full path of the execution tests
The measured rows go into core/libs/prx/libSceAgcDriver/tests/execution/,
the only tests/execution directory in the tree; the guide named only
tests/execution/.
2026-10-28 13:38:21 -05:00
dantdmdarealguy a7f94de45c docs(dev): point the call-site example at a stub that still throws 2026-10-28 13:32:47 -05:00
Luka Petrovic dab16d01a9 fix(libSceRtc): check current tick before local time conversion 2026-10-28 19:31:10 +01:00
Dean 319621ba2e Merge pull request #12339 from medazizktata/fix/windows-exec-shared-mapping
fix(libkernel): map shared memory and files executable on Windows
2026-10-29 07:28:16 +13:00
Dean 1f52200308 Merge pull request #11333 from Danigamer05/feat/libc-signed-max32
feat(libc): implement signed 32-bit maximum value helper
2026-10-29 07:27:25 +13:00
Dean 93909fb801 Merge pull request #10695 from MarcZX10/marc/signatures-libkernel-sys
feat(libkernel_sys): declare eight Discovery stubs with the OpenOrbis signatures
2026-10-29 07:27:07 +13:00
Dean cb63e034cd Merge pull request #10430 from rooklz/feat/cescs-iso646
feat(libSceCesCs): add the ISO 646 national variants and JIS X 0201 profiles
2026-10-29 07:26:50 +13:00
Dean 45f40b505d Merge pull request #12291 from B-Howell/claude/fix-issue-9691-hex-strtod-erange
fix(libc): match title libc.prx for hexadecimal strtod underflow
2026-10-29 07:26:33 +13:00
Dean 1847b0bd00 Merge pull request #11754 from iAbdulrrahman/feat/libkernel-sys-console-identity
feat(libkernel_sys): implement genuine console and platform identity queries
2026-10-29 07:23:11 +13:00
Dean 522bd93075 Merge pull request #11598 from milescoviello/docs/playgo-prefetch-optional
docs(libScePlayGo): note what scePlayGoPrefetchOptionalChunk checks and how three titles call it
2026-10-29 07:22:36 +13:00
Dean 74d94ce89c Merge pull request #11531 from milescoviello/docs/http-parse-response-header-call-sites
docs(libSceHttp): note how two titles call sceHttpParseResponseHeader
2026-10-29 07:21:21 +13:00
Dean ec2bc32a07 Merge pull request #11530 from milescoviello/docs/np-user-id-by-account-id-call-sites
docs(libSceNpManager): note how two titles call sceNpGetUserIdByAccountId
2026-10-29 07:20:59 +13:00
Dean 73f65fba8e Merge pull request #11529 from milescoviello/docs/entitlement-key-call-sites
docs(libSceNpEntitlementAccess): note how two titles call sceNpEntitlementAccessGetEntitlementKey
2026-10-29 07:20:41 +13:00
AdriàandClaude Sonnet 5.5 b617382728 docs(libSceFont): record the unmeasured renderer outline buffer behaviour
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-28 19:18:31 +01:00
ionut27001 7dc80f7f37 fix(libkernel): fill 0x58-byte sceKernelGetAppInfo record, throw for other pids 2026-10-28 20:16:32 +02:00
AdriàandClaude Sonnet 5.5 e80f7d8048 docs(libc): limit strerror_s firmware 13.60 claim to the measured numbers
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-28 19:15:47 +01:00
JJenkxandClaude Opus 5.5 6caa14c3dc fix(libc): name the extended errno values in strerror as titles' libc.prx does
The libc.prx that PS5 titles ship (PPSA05916, PPSA07923, PPSA13934) gives
strerror, strerror_r and strerror_s texts for eight numbers above the
FreeBSD range: 107 "State not recoverable", 108 "Owner dead", 152 "File
positioning error", 1040 "No message available", 1050 "No stream
resources", 1051 "Not a stream", 1062 "Other" and 1074 "Stream timeout".
AnyPS5 answered "error_code=0x%08x" for them. Every other number from
-2000 to 2000, INT_MAX and INT_MIN already matched.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 19:15:43 +01:00
atharvjairath 384d3436de fix(http): provision the URI test locale during configure 2026-10-28 23:44:28 +05:30
AdriàandClaude Sonnet 5.5 6eb91b1ce0 fix(deps): disable FreeType HVF and require 2.15 for system FreeType
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-28 19:12:10 +01:00
johnohhh1 c7d851c402 fix(deps): update FreeType to 2.15.0
Include upstream fixes for CVE-2026-23865 and CVE-2026-95512.
Add a bounded CID loader regression and preserve the existing guest
outline reference expectations with the updated native backend.
2026-10-28 19:10:34 +01:00
Adrià f21ef7c99c Merge pull request #12049 from PrivacyOnion/feat/libscescream-sony-audio-middleware-stubs
feat(libSceFrontPanelDisplay): add skeleton library and 3 ps5rs-listed stubs
2026-10-28 19:08:40 +01:00
PrivacyOnion c44e21d025 test(libSceRegMgr): cover combined invalid parameters and non-positive keys in GuestRegMgr
Cover combined null buffer and negative length in sceRegMgrGetStr and sceRegMgrGetBin, and non-positive keys 0 and -1 with minimum buffer size 1. Note the pinned host key-handling assumption in libSceRegMgr debt.
2026-10-28 19:04:35 +01:00
TamaleroandClaude Opus 5.5 f5353349ab docs(ajm): name the title of the gapless reset debt entry by ID
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 10:55:24 -07:00
XairRrR 91bbd2fca5 fix(shader): poison an SRT read below a pointer loaded from memory
A read at a negative offset from a pointer the walker loaded from guest
memory (a null pointer behind a guarded branch, offset -4) wrapped below
zero in AddSignedAddress, and the walk threw "cannot evaluate" instead of
recording the read as inaccessible. Uncharted: The Lost Legacy threw it
while loading its first level. The read is now recorded as an SRT poison
at its address wrapped to 48 bits, like any other unreadable address, so
the binding faults only if the shader takes that path.

verifyGuardedNullPointers gains the case for both branch outcomes; it
throws the title's error without the change.

AI-assisted: yes
2026-10-28 18:47:47 +01:00
XairRrR a226b66629 fix(agc): sample a cube array over depth surfaces through their depth planes
A cube T# whose last array slice is 6n - 1 is a cube array of n cubes.
The depth plane path accepted one cube only (last array 0 or 5) and
threw for the rest; it now gathers all 6n slices into the 2D array
view, as the texture path already lays cubes out. The refusal message
also names the last array slice and the copy format.

Uncharted 4's orphanage samples a two-cube D32 shadow array this way.

AI-assisted: yes
2026-10-28 18:47:47 +01:00
XairRrR 9485e7e628 docs(agc): give stencil planes in guest memory their own debt entry
The stencil plane text named the game; debt entries carry title IDs
only. It also took the depth plane entry past the 1000-character limit,
so it now has an entry of its own.

AI-assisted: yes
2026-10-28 18:47:47 +01:00
XairRrR 197c05c9f0 fix(agc): keep stencil planes coherent with guest memory
Only the depth plane of a depth surface reached guest memory: stencil
lived in the host image alone. A title that moves stencil with buffer
copies read stale bytes from the source plane, and the destination
surface never saw what the copy wrote. Uncharted 4 clears its G-buffer
stencil plane with a fill, then copies it into the lighting depth
target and on into last frame's planes with a buffer copy kernel every
frame; its lighting kept the stencil marks of earlier frames, so
characters left trails and the image doubled while the camera moved.

The stencil plane of a single-sample surface with the 64 KiB Z swizzle
is now marked drawn when the surface is bound, stored whole when a read
overlaps it (FlushDepthPlanes, like the depth plane) and reloaded from
guest memory when a collected guest write changed it before the surface
is bound or its stencil sampled, unless a stencil clear is pending.

agc_driver_stencil_plane_memory draws stencil, reads the plane through
FlushDepthPlanes, then writes it from the CPU and tests it with stencil
EQUAL; it fails without the change.

AI-assisted: yes
2026-10-28 18:47:47 +01:00
Adrià 027989a44a Merge pull request #11858 from jotitadev/fix/macos-poll-hangup-both-directions
fix(libkernel): report POLLHUP on macOS only once both directions of a stream have ended
2026-10-28 18:20:12 +01:00
p3nicillinandClaude Opus 5.5 5ed6f7b88d docs(libSceLibcInternal): name the __opendir2 caller by title ID and note readdir's DTF_HIDEW check
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 17:08:29 +00:00
Adrià 7fea87746b Merge pull request #11737 from xXPBSXx/libm/asinh-msun
fix(libc): compute asinh with FreeBSD msun's algorithm
2026-10-28 17:58:59 +01:00
jagrat Singh 3db0e5deb3 feat(libSceNetCtl): implement ForLib internal callbacks 2026-10-28 22:26:29 +05:30
Adrià 3b362ba2e0 Merge pull request #11730 from ionut27001/fix/http2-init-zero-concurrency
fix(libSceHttp2): return invalid value from sceHttp2Init for a maximum of 0 requests as measured in a PS5 payload
2026-10-28 17:45:01 +01:00
Adrià 8c621aa276 Merge pull request #11729 from iAbdulrrahman/feat/libc-fetch-64-bit-atomics
feat(libc): implement 64-bit atomic fetch helpers
2026-10-28 17:35:48 +01:00
Dean 651e248bef Merge pull request #11845 from Ralizaki/feat/libScePad-controller-settings
feat(libScePad): implement vibration and light bar brightness controls
2026-10-29 05:05:32 +13:00
Yunus Shaikh b3b6178347 feat(libSceAudiodec): decode M4AAC with non-delay output enabled
The 28- and 32-byte M4AAC parameter blocks carry two fields at offsets
24 and 28 whose range errors fpPS4 names
SCE_AUDIODEC_ERROR_M4AAC_INVALID_ENABLE_NONDELAY_OUTPUT (0x807F0305) and
SCE_AUDIODEC_ERROR_M4AAC_INVALID_SURROUND_CHANNEL_INTERLEAVE_ORDER
(0x807F0306). shadPS4's AJM AAC decoder outputs every decoded frame from
the first one on when non-delay output is enabled, which is what the
decoder here does, so a decoder created with non-delay output 1 is
accepted and decodes as before. Surround channel interleave orders 1
and 2 still throw, now naming the order: no source says which order
each value selects. Name both errors and test that every access unit
yields its frame from the first one with non-delay output enabled.
2026-10-28 16:03:59 +00:00
simnJS fe446f1a1d fix(libSceFreeTypeOt): refuse stream arguments before acquiring a frame 2026-10-28 16:38:26 +01:00
simnJS 18e0c2ea09 feat(libSceFreeTypeOt): implement the FreeType stream calls 2026-10-28 16:38:26 +01:00
BunnyFlandClaude Opus 5.5 df28f3f54b docs(libc): state the macOS setvbuf refill failure as untested
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 16:33:50 +01:00
BunnyFlandClaude Opus 5.5 b689f2412a fix(libc): keep the guest's setvbuf buffer off the host library only on Windows
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 16:32:53 +01:00
p3nicillinandClaude Opus 5.5 651436d6a3 feat(libSceLibcInternal): add __opendir2
The ps5-payload-sdk's fts_build calls __opendir2 with DTF_HIDEW,
DTF_NODUP and DTF_REWIND, and PS5 Bible Reader (PPSA99793) failed to
load on the unresolved import. In FreeBSD 11 those flags only change
reading a union mount, which AnyPS5 does not have, so the call opens
the directory as opendir does; other flags throw.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 15:26:34 +00:00
jagrat Singh f7ed67b7d3 feat(libSceNet): track sceNetSetDnsInfoToKernel gap and test throw 2026-10-28 20:47:07 +05:30
BunnyFlandClaude Opus 5.5 64b86f1b9b fix(libc): keep setvbuf stream buffers in host memory
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 16:05:26 +01:00