Commit Graph
7963 Commits
Author SHA1 Message Date
Queuze 3916eeaf6f fix(libc): share delete on standard stream reopen 2026-10-20 20:07:16 -03:00
hypermist 31dd2c3088 Merge remote-tracking branch 'upstream/main' into feat/libc-dinkumware-dispatchers 2026-10-21 12:04:58 +13:00
valenciana-nc 23c43725f6 fix(libkernel): copy guest iovec tables before vector transfers 2026-10-20 17:04:30 -06:00
hypermistandClaude Opus 5.5 c5415e0845 fix(libc): rescale _Stod text that overflows before scaling
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01RbLgECLQ2bpDM7oe2urGZK
2026-10-21 11:58:08 +13:00
Dean 7e95bde794 Merge pull request #7427 from parl0v/perf/clear-keys-hand-over
perf(agc): hand pending results over to an image whose DCC keys are a clear code
2026-10-21 11:53:16 +13:00
Dean 61d0fa5b3c Merge pull request #8304 from Aryansh1520/feat/libkernel-umtx-ops-sync
feat(libkernel): implement _umtx_op UMTX_OP_SEM_WAIT and UMTX_OP_SEM_WAKE
2026-10-21 11:50:34 +13:00
Dean 7e6830ec55 Merge pull request #8268 from Athen2045/feat/net-dns-info
feat(libSceNet): implement sceNetGetDnsInfo
2026-10-21 11:50:31 +13:00
Dean c8301bbca5 Merge pull request #8137 from hamb3r/feat/libc-backtrace-windows
feat(libc): implement sceLibcBacktraceSelf and GetBufferSize on Windows
2026-10-21 11:45:25 +13:00
Dean 8c9a1f70f0 Merge pull request #8328 from ymatrix1/feat/nptus-missing-exports
feat(libSceNpTus): export missing firmware NP TUS interfaces
2026-10-21 11:45:19 +13:00
orezraeyandClaude Opus 5.5 3489bf4eb7 fix(libSceRtc): parse the DNT, NFT, NOR and SET zone names as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-20 19:45:17 -03:00
p3nicillin dde6b34d37 feat(libc): implement unlocked stream status queries 2026-10-20 23:41:22 +01:00
orezraeyandClaude Opus 5.5 4b8f05e3e1 fix(libSceSystemService): answer sceSystemServiceParamGetString's errors and padding as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-20 19:41:19 -03:00
p3nicillin 1002d28117 feat(libc): implement srandomdev using host entropy 2026-10-20 23:39:05 +01:00
orezraeyandClaude Opus 5.5 692cb4af09 fix(libkernel): fail msync MS_INVALIDATE with EBUSY as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-20 19:32:46 -03:00
Hermes Agent 0273c1479f feat(libkernel): expose kern.osreldate sysctl 2026-10-20 18:29:40 -04:00
orezraeyandClaude Opus 5.5 bcc5960d84 fix(libkernel): follow sceKernelSyncOnAddressWait and Wake as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-20 19:28:38 -03:00
orezraeyandClaude Opus 5.5 55e4819728 fix(libc): build reallocf on realloc as FreeBSD's reallocf.c does
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-20 19:27:16 -03:00
Yuri Olive 9d824e2261 Merge branch 'main' of https://github.com/boykopovar/AnyPS5 into feat/nptus-missing-exports
# Conflicts:
#	docs/dev/debt/libSceNpTus.md
2026-10-20 19:25:05 -03:00
Dean e25333e39a Merge pull request #8600 from ebarr24/ws/libc-fopen-streams
fix(libc): share delete access when freopen reopens a stream onto a file on Windows
2026-10-21 11:24:47 +13:00
Dean 548d50ca5b Merge pull request #8242 from santhoshkumar-dev/codex/np-tus-title-context-cleanup
feat(libSceNpTus): delete title contexts and their requests
2026-10-21 11:23:34 +13:00
orezraeyandClaude Opus 5.5 db3c47c87a fix(libc): follow the default heap's alignment, errno and realloc to zero as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-20 19:16:04 -03:00
Slick Daddy 51c6b38978 fix(libSceVideodec): take the coded picture size the decoder reports
Videodec2 opens FFmpeg with apply_cropping = 0, so the frame it reports is
the coded picture and its crop fields describe the cropping rectangle. The
coded size was derived from the frame size and the crop, which counted the
crop a second time when it added up to a multiple of 16: a picture cropped
four units at the top and four at the bottom was reported 16 rows taller
than the coded picture, and every picture was then refused for a frame
buffer that was sized for the coded picture. The frame size is the coded
size, so the crop only fills the crop offsets.

The fixture's sequence parameter set is also decoded with a crop of four
units at the top and four at the bottom now, which covers the case in the
guest test.
2026-10-21 01:13:00 +03:00
Dean 339217ebc9 Merge pull request #8331 from ymatrix1/feat/audio-missing-exports
feat(audio): export missing firmware AudioIn, Audio3d and Voice interfaces
2026-10-21 11:01:53 +13:00
Dean Galvin 3117837b35 docs(dev): list APS5_NO_HW_F32_PRESERVE in ENVIRONMENT.md 2026-10-21 10:45:24 +13:00
Seif Allah Karoui 34e3fbf47c fix(shader): remove unobserved phi cycles before resource planning
Preserve phi graphs with transitive non-phi users and remove unused cycles before building the SRT plan. Extend the IR regression with dead and live cycles, an empty program, and repeated elimination.

AI-assisted: OpenAI Codex
2026-10-20 22:31:06 +01:00
bluandClaude Fable 5.1 3ed129ab33 fix(agc-driver): make the presenter wait for a full frame dump queue
With APS5_DUMP_FRAMES, FrameDumpWriter::Enqueue threw "frame dump queue exceeded 64 MiB" when the
writer thread fell more than 64 MiB behind, which failed the presentation and ended the title.
#4320 made that rare at the default APS5_DUMP_SCALE=4; at APS5_DUMP_SCALE=1 a 1920x1080 title
reaches it within nine frames and a 3840x2160 one on the third.

Enqueue now waits on the writer's condition variable until the frame fits, and the writer
notifies after each file; a single frame larger than the queue still throws. The VideoOut frame
dump queue test gets a wait mode at scale 1 whose third frame has to wait for the held first one.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-10-20 14:29:09 -07:00
juanpimg 795961352b fix: restore the voice chat debt entry and tidy the new declarations
The change removed a technical-debt entry from origin/main that documents four
libSceVoiceChat exports it does not touch, left the new include out of the
quoted include group, put a forward declaration away from the other type
declarations, and cited a prototype source without a line anchor.
2026-10-20 23:22:18 +02:00
juanpimg 63af1bfcf8 fix(libScePosixForWebKit): export the host-named functions through a renamed helper
gethostbyname_r and sysinfo are names of host C library functions. Defining
them in libScePosixForWebKit made the library's own call to
::gethostbyname_r in Resolver.cpp bind to the new declaration, and the
guest_resolver test failed with "gethostbyname_r not implemented". Export
the two NIDs through a helper with the library's own prefix, the way
libSceAmpr re-exports the libc functions.
2026-10-20 23:22:18 +02:00
juanpimg 1f1add461e feat(prx): declare the missing PS5 3.20 system exports in the next tier of libraries
AnyPS5 resolves a title's imports by NID, so a title that imports a system
function that no AnyPS5 library provides fails to load with an unresolved
import. This declares 222 such exports across 11 PS5 system libraries that
AnyPS5 implements but does not provide.

Each declaration calls NotImplemented_nid_no_patch and returns 0; none of
them implements the function. A declaration with a credible prototype uses
it and cites the source with a pinned commit; the rest are declared without
parameters, which resolves the import without making an ABI claim. The
technical-debt files record the limitation per library.

The list is the intersection of the export table of the console's library
(function symbols only), the pinned aerolib names and the functions not yet
defined anywhere in the repo. Every name recomputes to its NID with
tools/nid_names.py.

libSceAudio3d and libSceVoice are left out because #8331 declares them.
2026-10-20 23:22:17 +02:00
JAB-devandClaude Sonnet 5.5 4b0c16a173 fix(libSceAudioOut): report not-initialized, null-pointer and flag errors from sceAudioOut2GetSpeakerInfo
sceAudioOut2GetSpeakerInfo now returns the SDK AudioOut2 errors: not initialized before sceAudioOut2Initialize, invalid pointer for a null result and invalid param for flags above 1. sceAudioOut2Initialize records that it ran.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-20 23:13:00 +02:00
JAB-devandClaude Sonnet 5.5 8420e13688 fix(libSceNgs2): return INVALID_GEOM_FLAG and the listener-address error from sceNgs2GeomCalcListener
A flags value above 1 returns 0x804A8463 and a null listener parameter returns 0x804A8461, both leaving the output untouched, instead of throwing.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-20 23:09:48 +02:00
Ethan Barr 4f6a37d790 fix(libc): share delete access when freopen reopens a stream onto a file on Windows
On Windows, freopen reopened a stream through _wfreopen, which opens the file without FILE_SHARE_DELETE, so remove or rename of the file failed while the stream was open, unlike fopen streams and POSIX unlink/rename of an open file. freopen now closes the previous stream and opens the new file through the same CreateFileW path fopen uses, so the reopened stream shares delete access. Host standard streams and an empty filename keep the _wfreopen path. Reference: FreeBSD 11 unlink(2) and rename(2) succeed on a file that is open.
2026-10-20 17:07:21 -04:00
JAB-devandClaude Sonnet 5.5 a06dc199b7 fix(libSceAudioPropagation): drop the SDK inline Init helpers from the export list
The nine Init helpers are static inline in the SDK header and the bare sceAudioPropagationSystem name is in neither the header nor the stub, so the library no longer exports them.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-20 23:06:48 +02:00
Adrià 73b6a4cc71 Merge pull request #8066 from HQasper/perf/gpu-thread-dimensions
perf(agc): resolve DISPATCH_INDIRECT thread dimensions on the GPU
2026-10-20 23:06:48 +02:00
Adrià be1ce988d4 Merge pull request #7870 from ionut27001/perf/image-memory-pool
perf(agc): keep released image memory in the buffer pool for reuse by type and size
2026-10-20 23:05:43 +02:00
Yuri Olive 68f9b47be0 Merge branch 'main' of https://github.com/boykopovar/AnyPS5 into feat/audio-missing-exports
# Conflicts:
#	docs/dev/debt/libSceAudio3d.md
2026-10-20 17:55:03 -03:00
Adrià ca74ef2177 Merge pull request #6148 from 011010/feat/audio3d-mix
feat(libSceAudio3d): mix the bed and deliver audio through AudioOut
2026-10-20 22:53:16 +02:00
Dean 50e0624d7a Merge pull request #7154 from XairRrR/fix/agc-depth-plane-buffer-coherence
fix(agc): keep depth planes coherent with buffer reads and writes of their memory
2026-10-21 09:38:25 +13:00
Dean 26740077bd Merge pull request #8144 from TheSovietWaffle/fix/recompiler-domain-computed-control-point
feat(shader): read domain inputs at a control-point index computed from data
2026-10-21 09:31:11 +13:00
Ondra97 278721a708 chore: merge current main into epoll lifetime fix 2026-10-20 22:24:13 +02:00
Ondra97 e6ec827647 fix(libSceNet): reject invalid descriptors for epoll DEL 2026-10-20 22:24:10 +02:00
011010 64092044df fix(libSceAudio3d): queue the bed writes and consume one per advance
sceAudio3dBedWrite2 stored the bed in a single slot that
sceAudio3dPortAdvance mixed without clearing, so an advance with no new
write replayed the previous block instead of mixing silence, and two
writes before one advance kept only the second.

The writes are queued now, as shadPS4's ConvertAndEnqueue does: the
queue is bounded by queue_depth and returns NOT_READY when full, an
advance consumes one bed, and an advance with nothing queued mixes
silence through the mixer's empty-source path, which the mixer test
already covers.

guest_audio3d_port gains the queue case: fill the queue, require
NOT_READY, advance, and require the consumed bed to make room. It fails
on the old code at the NOT_READY of the full queue.
2026-10-20 22:06:52 +02:00
011010 7887d17766 fix(libSceAudio3d): use the reference error code for an unsupported buffer mode
The branch invented AUDIO3D_ERROR_NOT_SUPPORTED as 0x80EA0005, which
shadPS4's error enum names OUT_OF_MEMORY. Both shadPS4 and prosper
put the unsupported buffer mode at 0x80EA0008, prosper from the PS5
module's own error table.

The debt entries now name the reference behind each unverified
choice: the downmix coefficients and the dropped LFE follow shadPS4
(fpPS4 agrees) against prosper's contradiction, the channel order
follows shadPS4, prosper and fpPS4, the return of
sceAudio3dAudioOutOutput follows KytyPS5 and prosper against
shadPS4's total-sample answer, and the full-queue NOT_READY follows
shadPS4, the only reference with a body.

The stubs leave the branch: this pull request carries the bed path
alone.
2026-10-20 22:06:52 +02:00
husari.orozco c917d7dbf7 docs(technical-debt): record the audio3d bed and audio out behaviour 2026-10-20 22:06:52 +02:00
Dean 29e4c46b4d Merge pull request #7417 from IshmamDC217/feat/relinker-trace-imports-linux
feat(relinker): support --trace-imports for Linux output
2026-10-21 09:03:29 +13:00
Evgeniy Kazarin 7898b5bd3a fix(libc): avoid repeated resident write faults 2026-10-21 03:55:51 +08:00
MarcZX10 092a66773a docs(shader): record measured color compare formats 2026-10-20 19:53:00 +00:00
orezraeyandClaude Opus 5.5 a9a0c05af3 docs(libSceNpWebApi2): name the initializer that sets the reported pool size
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-20 16:48:55 -03:00
Ondra97 1b182e7fb2 fix(net): keep MSG_DONTWAIT transfers nonblocking on Windows 2026-10-20 21:47:08 +02:00
cadenasynyster 9e6544fbab docs(libc): shorten the _Thrd_detach debt entry 2026-10-20 21:43:57 +02:00