Commit Graph
20967 Commits
Author SHA1 Message Date
Dean d53b659ab2 Merge pull request #9006 from JJenkx/feat/audio-propagation-path-slots
feat(audio-propagation): source-owned path slots and the public render output formats
2026-10-24 09:32:13 +13:00
Felipebmaitan 4e1e36d257 fix(job-manager): wake queued work before blocking caller-owned workers 2026-10-23 17:32:11 -03:00
orezraeyandClaude Opus 5.5 ad03c52f38 Merge main into fix/libkernel-socket-address-measured-ps5
Keep #9108's long IPv4-mapped bind on a dual-stack datagram socket, now also for connect, on top of the measured exact-size checks; drop LongAddressError and the duplicate listening check.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 17:32:09 -03:00
norton62andClaude Opus 5.5 ce3e22a325 fix(libScePad): open the system remote control port as a disconnected device
scePadOpen for the system user's remote control port (type 16) returned the
DualSense handle, so scePadReadState on the "remote" reported the controller's
buttons as connected. SDL's PS5 video driver maps that port's buttons to keys,
so every Cross also arrived as Return and every D-pad press as an arrow key.
In Raptor (PPSA94002) the Return overwrote the key typed on the on-screen
keyboard before the name field read it, and Circle closed the dialog instead
of the keyboard.

The port now opens its own handle that reads no buttons with connected false,
and closes independently of the DualSense handle. Unlike the special port
handles, it stays out of KnownHandle, so calls that act on the DualSense reject
it.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 21:31:49 +01:00
HQasperandClaude Opus 5.5 0b2e9aa564 fix(agc): draw stencil AND, OR, XOR and XNOR on the bits they change
DB_STENCIL_CONTROL codes 10, 11, 12 and 15 (STENCIL_AND, STENCIL_OR,
STENCIL_XOR, STENCIL_XNOR) combine the stored stencil value with
DB_STENCILREFMASK.STENCILOPVAL, as AMD_stencil_operation_extended
defines them, and threw "stencil operation N is unsupported".

Each one now becomes a single Vulkan operation with the face's write
mask narrowed to the bits it can change: ZERO for AND, INVERT for XOR
and XNOR, REPLACE with those reference bits set for OR. A face whose
other operations write other bits, OR against a compared test value bit
it would set, OR with a stencil test value export, and NAND and NOR
still throw.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 20:30:57 +00:00
roboterspinne f81854f0e3 fix(relinker): drop Windows from errors the macOS target also reports
The macOS output reuses the Windows load image and relocation builder,
so a --macos conversion failed with "Unsupported Windows relocation type
2" for PC32, COPY and 32, and with "Windows output requires a
position-independent ELF image" for an ET_EXEC input. These errors now
read "Relocation type N is not supported for this target" and "This
target requires ...", like the builder's other errors that name no
target. Which inputs are accepted does not change.
2026-10-23 20:28:18 +00:00
orezraeyandClaude Opus 5.5 aebed518a7 Merge main into fix/libkernel-aio-limits-measured-ps5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 17:27:35 -03:00
Felipebmaitan dca749aaa0 fix(job-manager): wake runnable work before a worker waits 2026-10-23 17:27:22 -03:00
roboterspinne dce51c1f02 fix(relinker): print the unsupported relocation offset once
ValidationPolicy wrote the entry's file offset into the "Unsupported
relocation type" message and also passed it as the failure offset, which
the command line appends to every error, so the line read "Unsupported
relocation type 0x9 at offset 0x4700 (offset 0x4700)". The message now
names only the type, like the other errors of the relocation loop.
2026-10-23 20:26:40 +00:00
alnsx 64c6fd09c3 fix(libkernel): poll files on standard descriptors as vnodes 2026-10-23 16:26:17 -04:00
Dean f4e3044429 Merge pull request #10267 from emirplus/fix/build-web-stream-reconfigure
fix(tools): reconfigure streams with backslashreplace in build_web
2026-10-24 09:25:26 +13:00
Dean 7f5f22f1bb Merge pull request #10257 from emirplus/fix/select-tests-stream-reconfigure
fix(tools): reconfigure streams with backslashreplace in select_tests
2026-10-24 09:25:02 +13:00
Dean 4221f82dcd Merge pull request #10263 from emirplus/fix/configure-seed-stream-reconfigure
fix(tools): reconfigure streams with backslashreplace in configure_seed
2026-10-24 09:24:03 +13:00
Dean 15123a0a3e Merge pull request #10293 from al3w0f205/test/audio3d-init-invalid-reserved-parameter
test(libSceAudio3d): cover invalid reserved argument rejection in sceAudio3dInitialize
2026-10-24 09:23:22 +13:00
TamaleroandClaude Opus 5.5 2a3cc34582 perf(agc): prebuild registration libraries on half the hardware threads by default
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 13:21:39 -07:00
janzezno 5ce1b55a74 docs(agc): record the NVIDIA fast-link result for interlock pipelines 2026-10-23 22:20:55 +02:00
janzezno c6f44cd097 fix(agc): build a pipeline with a fragment shader interlock whole, not from libraries 2026-10-23 22:20:54 +02:00
Dean e13027a1f3 Merge pull request #10262 from emirplus/fix/check-test-registration-stream-reconfigure
fix(tools): reconfigure streams with backslashreplace in check_test_registration
2026-10-24 09:19:31 +13:00
JJenkxandClaude Opus 5.5 d2e18d53b3 fix(libc): return the console's class bits from the ctype functions
isalpha, isdigit, isspace and the other ctype classifiers returned 1 for
a match. The libc.prx bundled with eleven titles returns the matching
bits of its classification table instead, for example 0x20 from isdigit,
0x04 from isspace(' ') and 0x40 from isspace('\t'), and its table marks
tab with 0x400, which isblank returns. The classifiers now return the
exported table's bits under the console's masks, and the table gains the
tab bit; which characters match is unchanged.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 16:18:56 -04:00
Dean aca451e0f8 Merge pull request #10371 from oneandonlydean/test/pad-drop-unimplemented-throw-asserts
test(libScePad): drop the unimplemented-throw asserts added by #9995
2026-10-24 09:18:18 +13:00
Dean Galvin baa657a24b Merge main into fix/libkernel-sema-null-esrch 2026-10-24 09:17:39 +13:00
Dean Galvin 49357c5ea3 Merge main into fix/libkernel-cond-destroyed-measured-ps5 2026-10-24 09:17:35 +13:00
Rookie b62b28831d feat(libSceCesCs): add the GB18030-2000 and GB18030-2005 profiles
Implement sceCesUcsProfileInitGb18030_2000 and sceCesUcsProfileInitGb18030_2005.
Two-byte cells are the CP936 table plus the cells that differ, and four-byte
sequences are runs over the BMP and the supplementary planes, generated from
ICU's gb-18030-2000.ucm (before ICU-8427) and gb-18030-2005.ucm with ICU's
GB 18030 ranges. The GB, MBC and MBCS string conversions accept both profiles
and produce four-byte UTF-8 and surrogate pairs for supplementary characters.
2026-10-23 21:16:05 +01:00
orezraeyandClaude Opus 5.5 f32fd62397 Merge main into fix/libkernel-sys-pathconf-measured-ps5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 17:14:25 -03:00
Dean ca6fbf762c Merge pull request #8633 from vittoriosalvadore/codex/fix-font-point-dpi-scales
fix(libSceFont): use current style for glyph and kerning scales
2026-10-24 09:13:36 +13:00
frankea ef2b164b15 fix(shader): relay later table calls past earlier calls' callee copies 2026-10-23 22:13:23 +02:00
frankea a1ae72a2e8 fix(shader): a 64-bit SALU result overwrites both dwords of a call link pair 2026-10-23 22:13:23 +02:00
frankea 0a4027df9a fix(shader): link each table callee next to its own call so large callee sets stay in branch range 2026-10-23 22:13:23 +02:00
Dean ed06dcc29d Merge pull request #9204 from rooklz/feat/cescs-jisx0208
feat(libSceCesCs): add the strict JIS X 0208 EUC-JP and Shift-JIS profiles
2026-10-24 09:13:03 +13:00
Dean 7956a166c7 Merge pull request #9108 from Retr0G28/fix/socket-address-length-exact
fix(libkernel): reject socket addresses longer than sockaddr_in or sockaddr_in6 with EINVAL
2026-10-24 09:12:39 +13:00
Dean fac234a47c Merge pull request #9134 from orezraey/fix/libkernel-event-flag-measured-ps5
feat(libkernel): match event flags to PS5 and add shared flags
2026-10-24 09:12:14 +13:00
hugodearaujo 1762c1dfca test(libSceNgs2.native): check the 2-in, 8-out reverb layout PPSA03747 sets up 2026-10-23 17:08:07 -03:00
Dean Galvin a2ee2958a5 Merge main into fix/fcntl-getfl-pipe-rdwr 2026-10-24 09:07:08 +13:00
JJenkxandClaude Opus 5.5 f41f455f87 fix(libc): return only the sign from strcasecmp and strncasecmp as titles' libc.prx does
strcasecmp and strncasecmp returned the folded unsigned-byte difference,
following FreeBSD 11.4's strcasecmp.c (#3966, #9642). The libc.prx bundled
with eleven titles returns -1, 0 or 1, the sign of that difference; both
functions now do the same, and the byte-pair tests expect it.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 16:06:06 -04:00
Bram910 c9ace48eb7 fix(tools): report squash-merged PRs in main sync checks 2026-10-23 22:05:30 +02:00
Dean a42f61d5b1 Merge pull request #10060 from xXPBSXx/carry/6525-fpathconf
feat(libkernel_sys): implement fpathconf and _fpathconf
2026-10-24 09:03:45 +13:00
Ondra97 e393705239 fix(agc): retire native depth before binding an overlapping layout 2026-10-23 21:55:55 +02:00
Adrià 3c44638fc6 Merge pull request #8727 from hamb3r/perf/shader-cse-srt-readconst
perf(shader): eliminate redundant GetSrtResource and ReadConst in RVE
2026-10-23 21:54:52 +02:00
battleblob1andClaude Opus 5.5 30c324a23b fix(recompiler): accept EXEC copies in stencil replay masks
Since #6291 a pixel shader's EXEC copy is read as the saved word ANDed
with WQM(Ballot(true)). MaskReplaySafety only accepts a whole-quad
expansion of a ballot it can show excludes helper lanes, and a ballot
of true includes them, so a stencil-exporting shader whose own-lane
masks come from an EXEC copy was refused (own-lane mask not stable).
Every lane of a quad is active (real or helper), so a ballot of true
holds the same quad bits as the all-ones mask the proof already treats
as quad-stable; it is now classified the same way. Helper-dependent
ballots stay uncertain.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 21:53:24 +02:00
orezraeyandClaude Opus 5.5 ddcc81887f fix(libScePad): check the user before throwing for port types 3 and 4
A payload process on a PS5 (firmware 13.60) gets 0x809b0001 for user -1 on types 3 and 4 and on index 1, so scePadOpen answers those before it throws for the unknown types.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 16:52:58 -03:00
Adrià 40564ce897 Merge pull request #5965 from bcortezf/feat/audioout-get-system-state
feat(libSceAudioOut): implement sceAudioOutGetSystemState
2026-10-23 21:52:51 +02:00
Adrià Franch 56ce490ced fix(shader): drop duplicate NativeCachePath_nid_no_patch allowlist entry 2026-10-23 21:52:18 +02:00
Queuze a06df95447 test(agc): follow versioned cache directories 2026-10-23 21:52:11 +02:00
Queuze 48d526af6a test(agc): require lock and verify unreadable cache diagnostic 2026-10-23 21:52:11 +02:00
Queuze 19d4bee823 test(agc): bound cache directory and check unread 2026-10-23 21:52:11 +02:00
Romans Pokrovskis 193b11c32f fix(agc): reuse pipeline cache headers on long Windows paths 2026-10-23 21:52:11 +02:00
orezraeyandClaude Opus 5.5 cb562bb8da Merge main into fix/libkernel-sysctl-system-measured-ps5
Main now returns ENOENT for unknown sysctlbyname and sysctlnametomib names, so the absent-names debt entry no longer says they throw and keeps main's unknown-names entry.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 16:47:17 -03:00
orezraeyandClaude Opus 5.5 6c19ccb09e Merge main into fix/librtc-rfc3339-precise-measured-ps5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 16:45:27 -03:00
orezraeyandClaude Opus 5.5 5e36c33142 Merge main into fix/libc-strftime-measured-ps5
The %Z check now expects the guest tzname, since main leaves tzname[1] as three spaces for a zone without daylight saving time.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 16:44:05 -03:00
Adrià b4cafbe241 Merge pull request #8721 from hamb3r/perf/shader-fold-buffer-format
perf(shader): use table-driven formatted loads and fold constant table lookups
2026-10-23 21:42:25 +02:00