Commit Graph
9104 Commits
Author SHA1 Message Date
Adrià 3894bb41a1 Merge pull request #11426 from iAbdulrrahman/feat/freetypeot-corner-algorithms
feat(libSceFreeTypeOt): implement ft_corner_is_flat and ft_corner_orientation
2026-10-28 15:55:52 +01:00
simnJS 2b10aa4211 fix(libSceJsc): bound UTF-8 input and decoded length as WebKit does
The shared UTF-8 decoder behind JSStringCreateWithUTF8CString and
JSStringIsEqualToUTF8CString now applies StringImpl::create's bounds: more
than INT32_MAX bytes throws before decoding, and non-ASCII input decoding to
more than 2147483635 UTF-16 units throws after a successful conversion.
GuestJSStringValidLength mirrors isValidLength and is tested at both limits.
2026-10-28 15:51:00 +01:00
ionut27001 a21f985dcf fix(libSceSaveData.native): answer sceSaveDataCancel before initialization as measured in a PS5 payload 2026-10-28 15:37:18 +01:00
Dean 04fefebe90 Merge pull request #11105 from JaceTheBlu/feat/libressl-x509-lookup
feat(libSceLibreSsl): implement X509_LOOKUP_file and X509_STORE_add_lookup
2026-10-29 03:35:22 +13:00
Dean 3070a25d9e Merge pull request #12319 from JJenkx/windows/libc-acosf-edom
fix(libc): store EDOM and raise FE_INVALID from acosf and asinf domain errors
2026-10-29 03:34:51 +13:00
Adrià 953b763a96 Merge remote-tracking branch 'upstream/main' into HEAD 2026-10-28 15:21:56 +01:00
Adrià d5ef780bb4 Merge pull request #11636 from AlexFigas/feat/npcppwebapi-leaderboards-parameter-lifecycles
feat(libSceNpCppWebApi): track the Leaderboards V1 parameter lifecycles as the module does
2026-10-28 15:19:11 +01:00
Adrià 7ec3103f68 Merge remote-tracking branch 'upstream/main' into HEAD 2026-10-28 15:18:57 +01:00
Adrià 4aec576ede Merge pull request #11616 from milescoviello/fix/http2-memory-pool-stats
fix(libSceHttp2): report a live context's pool size from sceHttp2GetMemoryPoolStats
2026-10-28 15:17:09 +01:00
Adrià acd13871af Merge pull request #11354 from edubox/feat/ngs2-peak-meter
feat(ngs2): implement the sampler and submixer peak meter
2026-10-28 15:16:05 +01:00
Romans Pokrovskis b2aad7239c chore: refresh native buffer alias guard after depth write fix 2026-10-28 16:11:13 +02:00
simnJS cffb533c1b feat(audio3d): route sceAudio3dPortCreate through the 0x10 port open
sceAudio3dPortCreate checks its port id and reserved argument as shadPS4
does, then opens with a 0x10 parameter block. That block selects buffer
mode 0, which still throws, so no port is opened yet.

The 0x10 and 0x18 blocks of sceAudio3dPortOpen now take the defaults
shadPS4 and prosper fill in and go through the field checks before the
buffer mode throws.

sceAudio3dPortDestroy and sceAudio3dPortGetStatus get the signatures
from Orbital and SharpProspero and keep throwing; the debt entries of
the six remaining exports say what is still unknown.
2026-10-28 15:05:28 +01:00
simnJS 07883249e6 fix(libSceIcu): follow ICU for null escape inputs and negative u_unescape capacities
ICU 78.1's u_unescapeAt dereferences the offset and calls the callback without checks, and u_unescape reads the source without one, so a null one faults: throw std::invalid_argument there instead of NotImplemented_nid_no_patch. A negative u_unescape capacity is clamped by _appendUChars and fails every room check, so nothing is written and the full length is returned; only a capacity whose signed difference with the output length overflows, which ICU leaves undefined, still throws.
2026-10-28 15:01:08 +01:00
simnJS e359410014 fix(libSceJxr): reject null and read-only packet state in readIS and writeIS as invalid arguments
jxrlib's readIS and writeIS use the bit state, the stream and its callbacks without checks, and pass a null packet to the read or write callback before dereferencing or offsetting it. Throw std::invalid_argument at those points instead of NotImplemented_nid_no_patch, and let a null packet reach the callback first, so a failed write of a null packet returns the callback's error as jxrlib does.
2026-10-28 15:01:07 +01:00
Adrià d4cb89300f Merge pull request #12354 from Queuse/codex/document-loop-guard-limit
docs: clarify the shader loop guard limit
2026-10-28 14:58:00 +01:00
Adrià b38cb56dd2 Merge pull request #12300 from dantdmdarealguy/docs/build-table-cpu-lead-execution-tests
docs(build): list ANYPS5_REQUIRE_CPU_LEAD_TEST and ANYPS5_AGC_EXECUTION_TESTS
2026-10-28 14:56:24 +01:00
simnJS 50c8d4cd8f feat(libSceJsc): answer the JSString null and length cases as JavaScriptCore does
JSStringCreateWithUTF8CString and JSStringIsEqualToUTF8CString take a null
UTF-8 pointer as a null string, and JSStringCreateWithCharacters returns a
null string for null characters of any length, as WebKit's JSStringRef.cpp
and WTF's String constructors do. A length above WebKit's 2147483635-unit
limit and a null handle given to retain, release or the maximum-size query
throw std exceptions where JavaScriptCore crashes. The reference count is a
wrapping 32-bit counter and the maximum UTF-8 size is computed in 32 bits,
as in WTF.
2026-10-28 14:55:42 +01:00
Kyon 064df039d4 fix(libkernel_sys): clarify export identities and verifiable membership 2026-10-28 13:54:00 +00:00
Kyon 53455bd295 fix(libSceMusicFrameworkInterface): clarify export identities and verifiable membership 2026-10-28 13:54:00 +00:00
Kyon f14a403978 fix(libSceResourceArbitrator): clarify export identities and verifiable membership 2026-10-28 13:53:47 +00:00
Kyon 9808984058 fix(libSceHidControl): clarify export identities and verifiable membership 2026-10-28 13:53:47 +00:00
Kyon 7db5b84dce fix(libSceBgft): clarify export identities and verifiable membership 2026-10-28 13:53:47 +00:00
Adrià 385553ae97 Merge remote-tracking branch 'upstream/main' into HEAD 2026-10-28 14:52:14 +01:00
AdriàandClaude Sonnet 5.5 95a002bab9 fix(ngs2): accept sampler setup flags as before
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-28 14:52:11 +01:00
simnJS 692cc3e025 test(libSceUsbd): race the cancel on an interrupt endpoint the host can read
The device test raced sceUsbdCancelTransfer on the first interrupt IN endpoint of the device. On Windows the first one can belong to a mouse or keyboard collection, which the system opens exclusively, so libusb's HID backend cannot read it and the submission failed, reported as a failed cancel race. The test now tries each interrupt IN endpoint, requires a refusal to be the host's I/O error with nothing in flight, and races on the first one the host accepts, with a buffer sized from that endpoint.
2026-10-28 14:51:59 +01:00
simnJS fa4dd26fa7 refactor(prx): name the Xml, NKWebKit, Jsc and FreeTypeOl stubs the NID database resolves 2026-10-28 14:51:26 +01:00
kenny soloandClaude Opus 5.5 20c9a93999 feat(libkernel): implement sem_setname
Keep a copy of the name with the semaphore and move the export from the libkernel_sys stub into libkernel next to the other sem_* exports.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-10-28 14:51:17 +01:00
Emanuele 4c75091972 feat(libs): let relinked macOS games opt into mimalloc 2026-10-28 14:50:31 +01:00
Adrià 26c20975ac Merge pull request #11369 from QRMOE/fix/agc-msaa-depth-buffer-write
fix(agc): release a resident multisample depth before a GPU buffer may write over it
2026-10-28 14:49:09 +01:00
Adrià bd15a91f99 Merge pull request #11696 from Astronaut10/perf/agc-shape-memo
perf(agc): repeat a draw shape's resident targets and pipeline instead of looking them up again
2026-10-28 14:49:03 +01:00
Adrià 8c5910cd4c Merge pull request #12293 from dantdmdarealguy/docs/debt-mbus-protected-note
docs(debt): drop libSceMbus's stale protected-body note
2026-10-28 14:48:22 +01:00
p3nicillinandClaude Opus 5.5 cce9311f34 fix(libSceVideoOut): answer 0 and UNAVAILABLE_OUTPUT_MODE when the output has no 120 Hz
PS5_Vulkan measured on a base PS5 set to 1080p output that
sceVideoOutIsOutputSupported(15) answers 0, neither 1 nor an error, and
that sceVideoOutConfigureOutput(15) then returns 0x80290019, in a title
declaring high-frame-rate output. A host display below 120 Hz answered
0x80290016 to both instead. Titles that branch on the answer being 1
are unchanged; the undeclared-title answer stays 0x80290016.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 13:48:19 +00:00
p3nicillinandClaude Opus 5.5 60c8b94725 test(libSceVideoOut): move the past-last-buffer check away from the slot check
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 13:48:16 +00:00
Adrià b5b20df15a Merge pull request #12279 from dantdmdarealguy/docs/debt-move-open-close
docs(debt): drop libSceMove's stale protected-body note for open and close
2026-10-28 14:48:16 +01:00
p3nicillinandClaude Opus 5.5 338ea713f2 fix(libSceVideoOut): return INVALID_VALUE for a registration past the last buffer
PS5_Vulkan measured on a PS5 (firmware 13.40) that
sceVideoOutRegisterBuffers2 refuses a set at buffers 15 to 19 with
0x80290001. The call threw instead. The other out-of-range arguments
keep throwing.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 13:48:15 +00:00
Adrià 4ee7e4c95f Merge pull request #12268 from dantdmdarealguy/docs/build-agc-create-log-no-effect
docs(build): say APS5_AGC_CREATE_LOG has no effect
2026-10-28 14:48:11 +01:00
Adrià c55fcc7c14 Merge pull request #12267 from dantdmdarealguy/docs/debt-hmd-throwing-queries
docs(debt): narrow libSceHmd's protected-body notes to the throwing queries
2026-10-28 14:48:06 +01:00
Adrià 31646b6e17 Merge pull request #12259 from B-Howell/docs/libc-rename-source-lookup-debt
docs(libc): drop the rename dot-destination gap that 308848e1a6 closed
2026-10-28 14:47:59 +01:00
Adrià 5b9e1a8652 Merge pull request #12242 from milescoviello/docs/kernel-debug-raise-exception
docs(libkernel): list sceKernelDebugRaiseException and its release-mode form as silent stubs
2026-10-28 14:47:54 +01:00
Adrià e3bb0fce27 Merge pull request #12138 from milescoviello/docs/npentitlement-initialize
docs(libSceNpEntitlementAccess): list sceNpEntitlementAccessInitialize as a silent stub
2026-10-28 14:47:48 +01:00
Adrià 1856f99e53 Merge pull request #12095 from MarcZX10/docs/architecture-shader-pipeline-statements
docs: fix the prebuild pool size and APS5_DRAW_PIPELINE statements in the architecture guide
2026-10-28 14:47:43 +01:00
Adrià 6464d626c8 Merge pull request #12097 from MarcZX10/docs/oracle-dlls-and-trace-uds
docs: list every HIP runtime DLL the oracle loads and the APS5_TRACE_UDS switch
2026-10-28 14:47:38 +01:00
Adrià ca814b7bfa Merge pull request #12094 from MarcZX10/docs/environment-value-kinds
docs: correct kinds, defaults and sources of thirteen environment variable rows
2026-10-28 14:47:33 +01:00
Adrià bf31ed6c3f Merge pull request #12091 from MarcZX10/docs/environment-reference-accuracy
docs: correct eleven rows of the environment variable reference
2026-10-28 14:47:22 +01:00
Adrià e7da6d800f Merge pull request #12090 from MarcZX10/docs/architecture-macos-apr-cancellation
docs: fix the macOS entry, cancellation link and APR submit statements in the architecture guide
2026-10-28 14:47:17 +01:00
Adrià eb6127c5d9 Merge pull request #12087 from MarcZX10/docs/build-trace-and-capture-limits
docs: correct the trace buffer sizes and capture details in the build guide
2026-10-28 14:47:11 +01:00
Adrià c8fc68ebe5 Merge pull request #12073 from milescoviello/docs/sanitizer-replace-tables
docs(libkernel): note how titles' libc reads the sanitizer replacement tables
2026-10-28 14:47:05 +01:00
Adrià 3b951bc4fa Merge pull request #12020 from milescoviello/docs/savedata-transaction-sizes
docs(libSceSaveData): record the sizes titles pass to sceSaveDataCreateTransactionResource
2026-10-28 14:47:00 +01:00
Adrià e21640c216 Merge pull request #11933 from milescoviello/docs/videoout-open-param-titles
docs(libSceVideoOut): note which open params ten titles pass to sceVideoOutOpen
2026-10-28 14:46:55 +01:00
Adrià 5ff3328652 Merge pull request #11937 from milescoviello/docs/map-direct-memory-protections
docs(libkernel): note the protections ten titles pass to sceKernelMapDirectMemory
2026-10-28 14:46:49 +01:00