Commit Graph
20967 Commits
Author SHA1 Message Date
Dean Galvin 57bf968aa3 Merge main into feat/http-cookie-enabled-option 2026-10-23 14:37:47 +13:00
Dean a2d36e54d9 Merge pull request #9452 from kyon-eth/feat/jemspace-pending-exports
feat(libSceJemspace): declare thirteen pending exports
2026-10-23 14:37:36 +13:00
Dean Galvin 493ef8f07e Merge main into feat/ngs2-system-rate-grain-codes 2026-10-23 14:37:02 +13:00
orezraeyandClaude Opus 5.5 56561e0268 docs(libSceCesCs): the Cp1251 profile also works in MBCS contexts
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-22 22:35:11 -03:00
orezraeyandClaude Opus 5.5 5ea45388a2 fix(libc): throw for the ISO week of a negative tm_yday and record the measured gaps
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-22 22:34:52 -03:00
orezraeyandClaude Opus 5.5 31d9fe5ff1 test(libSceRtc): check the measured local time just past the maximum tick
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-22 22:33:13 -03:00
orezraeyandClaude Opus 5.5 ba53bd1975 fix(libkernel): set errno for an out-of-range pthread_setprio as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-22 22:32:49 -03:00
JJenkxandClaude Opus 5.5 e4d512bbbd feat(libSceJson2): implement sce::Json::Array::pop_front
Graven (PPSA09614) imports sce::Json::Array::pop_front()
(pPs3qZTZQvQ) from one call site of its executable, and no built
library exported it, so tools/import_audit.py lists it as absent and
the loader stops before the title starts.

pop_front removes the first element and destroys it, like clear does
for every element. On an empty array it throws std::out_of_range, as
front and back do here; the console's result there is unverified and
listed in the debt file.

guest_json pops both elements of a two-element copy, checks the
remaining element and the empty array, and expects the throw on a
third pop.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-22 21:32:45 -04:00
orezraeyandClaude Opus 5.5 e663b1f7c0 fix(libkernel): report the inheritance through pthread_attr_get_np too
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-22 22:31:57 -03:00
frankea 90d02422e2 fix(agc): accept ANCILLARY without PS_ITER_SAMPLE for a one-sample depth target without MSAA_ENABLE 2026-10-22 21:30:27 -04:00
hypermist 7e3a978f60 Merge remote-tracking branch 'upstream/main' into feat/font-words 2026-10-23 14:29:22 +13:00
sivasdeadknight 71932c0a56 fix(libSceNpManager): validate request ids for abort, delete and poll
sceNpAbortRequest and sceNpDeleteRequest return SCE_NP_ERROR_REQUEST_NOT_FOUND
for an id that was never created or was deleted; sceNpPollAsync does too and
additionally rejects a null result pointer with SCE_NP_ERROR_INVALID_ARGUMENT
before reading the id, without writing the caller's result. A live request
keeps its signed-out completion. This pins the validation half of shadPS4's
np_manager model that issue #9277 reports; the kind, completion state and
WaitAsync publication half stays open, documented in the debt entry, and the
sceNpWaitAsync export itself stays with PR #9282.

Tests: guest_np_manager tests the four absent/deleted probes (0, -1, 0x7fffffff,
a deleted id) for all three calls, output preservation, null-result precedence
and the live-id paths; guest_np_reachability unchanged. Both pass on Linux; the
new asserts failed on unpatched exports first.
2026-10-23 03:28:13 +02:00
xXPBSXxandClaude Sonnet 5.5 4d05702cdd docs(debt): note that a title call of sceAjmBatchJobGetCodecInfo agrees with the result size
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-23 03:22:58 +02:00
Dean 2e0c9251df Merge pull request #9405 from MarcZX10/feat/http-auth-enabled-option
feat(libSceHttp): implement auth-enabled option state
2026-10-23 14:22:37 +13:00
hypermistandClaude Opus 5.5 d2927e0ec1 fix(libc): follow libc.prx for strtof signs and hexadecimal round-up ERANGE
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01SNqSvnFwRBz3D76n476yw6
2026-10-23 14:19:46 +13:00
tkcm01andClaude Opus 5.5 2fd0c1b8fa test(libkernel): describe the flexible memory fixture's segment on macOS
guest_flexible_memory_declared loads a host-built .guest.prx fixture
whose 512 MiB array must count against the flexible memory budget. On
macOS, dl_iterate_phdr reports only images that carry the relinker's
__APS5DATA,__meta program headers, which every relinked guest module
has but the host-built fixture does not. GuestImageSegmentBytes left
the fixture out and the test failed at its budget check.

On macOS the fixture now fills its own __APS5DATA,__meta at load with
one PT_LOAD header for the array, as ProcessParametersFixture does for
the test program. Linux and Windows are unchanged.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-22 21:17:02 -04:00
Dean 316b742490 Merge pull request #9070 from xdCloudy/fix/agc-storage-edge-writeback
feat(libSceAgcDriver): build NOP data-write packets
2026-10-23 14:16:25 +13:00
Dean 78f8eaa859 Merge pull request #9142 from rooklz/feat/videodec-query
feat(libSceVideodec): implement sceVideodecQueryResourceInfo
2026-10-23 14:15:45 +13:00
hypermist bda7105405 Merge remote-tracking branch 'upstream/main' into fix/libc-strtof-sign-hex-range 2026-10-23 14:15:39 +13:00
Dean a7886d71c3 Merge pull request #7517 from 3mro777o/feat/vdecsw-hevc-picture-info
feat(libSceVdecsw): implement sceVdecswGetHevcPictureInfo
2026-10-23 14:15:24 +13:00
Dean 92d5a052eb Merge pull request #8902 from THEBIGTOMMY13DEV/fix/self-program-header-overlap
fix(tools): reject SELF program tables overlapping the ELF header
2026-10-23 14:15:02 +13:00
xXPBSXxandClaude Sonnet 5.5 e9229a1f8e docs(debt): note that a title call of sceAjmBatchJobControl agrees with the INITIALIZE flag and sizes
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-23 03:14:57 +02:00
Dean 928b2a52f5 Merge pull request #9034 from hypermoist/feat/ajm-wvorbis-header-packet
feat(libSceAjm.native): build the WVorbis header packet
2026-10-23 14:14:40 +13:00
Dean c08b7a48fd Merge pull request #8929 from hypermoist/feat/screenshot-state-overlay
feat(libSceScreenShot): track capture disabling and check overlay images
2026-10-23 14:14:19 +13:00
Dean ccab14d394 Merge pull request #8915 from hypermoist/feat/audio3d-speaker-array
feat(audio3d): forward the speaker-array calls to AudioOut2
2026-10-23 14:13:57 +13:00
Dean 24035e8446 Merge pull request #8907 from hypermoist/feat/hmd2-gaze-invalid-handle
feat(libSceHmd2): answer the gaze results without an open headset as the console does
2026-10-23 14:13:36 +13:00
Dean 0b27c6f1f8 Merge pull request #8904 from hypermoist/feat/web-browser-dialog-cookies
feat(libSceWebBrowserDialog): check the cookie calls as the console does
2026-10-23 14:13:13 +13:00
Dean Galvin ee8d1fe266 Merge main into fix/sigaction-ignore-discards-pending 2026-10-23 14:11:53 +13:00
Dean Galvin 0da892c52f Merge main into feat/kernel-sys-module-internal 2026-10-23 14:11:13 +13:00
hypermist 8d64c86149 Merge remote-tracking branch 'upstream/main' into fix/psml-base-console 2026-10-23 14:11:10 +13:00
Dean Galvin 8c4a455153 Merge main into codex/feat-freetype-outline-orientation 2026-10-23 14:10:09 +13:00
Dean Galvin b8bb173510 Merge main into feat/cescs-sbc-profiles 2026-10-23 14:09:42 +13:00
orezraeyandClaude Opus 5.5 9ae9b105bc fix(libSceCesCs): convert single EUC-JP characters as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-22 22:08:28 -03:00
Dean a8a34cbb75 Merge pull request #9058 from orezraey/fix/http-uri-parse-measured-ps5
fix(libSceHttp): parse, build and merge URIs as measured on a PS5
2026-10-23 14:06:45 +13:00
Dean dfab9a9c2e Merge pull request #9309 from Ondra97/codex/feat-freetype-char-size
feat(libSceFreeType): implement FT_Set_Char_Size
2026-10-23 14:06:22 +13:00
Dean bc834a84bb Merge pull request #8561 from DProkos/feat/npcppwebapi-user-profile-offline
feat(libSceNpCppWebApi): answer the UserProfile, ProfanityFilter and CommunicationRestrictionStatus requests offline
2026-10-23 14:06:01 +13:00
Dean 39e971a2ea Merge pull request #8985 from MarcZX10/codex/groups-pointer-safety
fix(libkernel): return EFAULT for invalid group pointers
2026-10-23 14:05:39 +13:00
Dean d3dbf6d606 Merge pull request #9960 from tkcm01/fix/libkernel-stack-lock-static-destruction
fix(libkernel): keep the thread stack lock alive through static destruction
2026-10-23 14:04:49 +13:00
xXPBSXxandClaude Sonnet 5.5 b26688591b test(tools): keep the ANYPS5_NID_DB test off the shared cache and under 30 seconds
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-23 03:04:27 +02:00
xXPBSXxandClaude Sonnet 5.5 1b1cea24a5 docs(tools): name ANYPS5_NID_DB in the nid_names help and test it
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-23 03:04:26 +02:00
xXPBSXxandClaude Sonnet 5.5 b2a6d79a89 docs(debt): record what a Windows datagram socket keeps after sceNetConnect to AF_UNSPEC
sceNetConnect dissolves a datagram association with the same host call sequence as connect (disconnect_datagram in Export.cpp). The sceNetConnect-to-AF_UNSPEC debt entry only described Linux. On Windows a socket bound to an explicit address keeps it in the same way, and a sendto on the host socket to a non-loopback address fails with Winsock error 10051, where FreeBSD's udp_disconnect() resets the local address.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-23 03:03:13 +02:00
Dean 3cbc908c3d Merge pull request #9207 from simonbronk/fix/libSceCesCs-sbc-profile-size
fix(libSceCesCs): size SBC profiles for the 8-byte tag checks
2026-10-23 14:01:50 +13:00
JJenkxandClaude Opus 5.5 87b0ebbcf9 perf(agc): keep full freed-block lists for a thread whose list is empty
The driver's operator new and delete keep up to 64 freed blocks per
16-byte size class per thread (16 above 256 bytes). When blocks are made
on one thread and deleted on another, the deleting thread's list of that
class fills and its further deletes go to the heap, while the making
thread's list stays empty and its allocations go to the heap too. On the
title screen of Spirit of the Island (PPSA13934), with the queue worker
and the draw committer both busy, 14.8M of 58M allocations up to 1 KiB
in 10 s missed the cache, and the deletes that overflowed to the heap
matched the misses class for class. Lists eight times deeper and classes
up to 4 KiB still missed 13.7M times, so the misses are blocks crossing
threads, not bursts deeper than a list.

A delete that finds its thread's list of the class full now hands that
whole list to a per-class depot and starts a new one; an allocation that
finds its thread's list empty takes a list from the depot before going
to the heap. Each depot keeps at most eight lists behind an SRW lock,
about 5 MiB over all classes; a full list past that still goes to the
heap block by block, as before. With this, 0.44M of 66M allocations up
to 1 KiB in 10 s miss on the same screen. A kept list is linked through
its first block's second word, so every class (16 bytes and up) can hold
it.

agc_driver_host_allocator gains a case where one thread makes blocks
that another deletes at the same time, checking their bytes up to the
delete and that private bytes stay flat over 12 rounds of 200k blocks.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-22 21:01:34 -04:00
Dean 473b048a19 Merge pull request #9386 from mehmetbayoglu/perf/netctl-host-query-cache
perf(libSceNetCtl): reuse host interface queries until Windows reports a change
2026-10-23 14:01:27 +13:00
Dean c8355da25d Merge pull request #9730 from dantdmdarealguy/fix/voice-set-threads-params-gta
fix(voice): accept valid worker priorities and affinities in sceVoiceSetThreadsParams
2026-10-23 14:01:04 +13:00
Dean 98f8ab5f7f Merge pull request #9709 from MarcZX10/codex/keyboard-disconnect-all
feat(libSceKeyboard): implement disconnect-all state
2026-10-23 14:00:41 +13:00
Dean e14bb6f532 Merge pull request #8957 from dantdmdarealguy/test/loadexec-tracy-client
test(libSceSystemService): stage the Tracy client with the loadexec_arguments libraries
2026-10-23 14:00:20 +13:00
Dean 7f3c6b9b08 Merge pull request #9145 from MarrasFederico/feat/ngs2-calc-vag-block
feat(libSceNgs2.native): map VAG waveform blocks in sceNgs2CalcWaveformBlock
2026-10-23 13:59:22 +13:00
orezraeyandClaude Opus 5.5 106283e3ed fix(libSceCesCs): convert single-byte characters as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-22 21:58:44 -03:00
Dean 5d2eb583bf Merge pull request #9008 from verusferro/feat/libkernel-sys-fstat
feat(libkernel_sys): implement fstat
2026-10-23 13:58:39 +13:00