7781 Commits
Author SHA1 Message Date
Adrià b8f0a6b202 Merge pull request #13667 from chitters2004/perf/prebuild-bound-programs
perf(agc): run first the library prebuilds of programs a submission binds
2026-10-31 12:52:52 +01:00
Adrià e23eea90e2 Merge pull request #13660 from w4rc0n/fix/sched-own-pid-main-thread
fix(libkernel): select the registered main thread for own-pid scheduling
2026-10-31 12:45:48 +01:00
Adrià d7fbe8f0ed Merge pull request #13669 from zaryabzip/feat/hmd2-motion-vector-import
feat(libSceHmd2): export the libSceHmd2ReprojectionMotionVector NID CBkVZi9WhVo as a throwing stub
2026-10-31 12:45:42 +01:00
Adrià cbed915291 Merge pull request #13657 from CobaltMoth482/feat/icu-resource-public-type
feat(libSceIcu): implement resource public type classification
2026-10-31 12:33:28 +01:00
Adrià 6b780d04d4 Merge pull request #13666 from kyon-eth/feat/web-browser-dialog-320-exports
feat(libSceWebBrowserDialog): declare limited export
2026-10-31 12:33:15 +01:00
Adrià 60ba6ef0c7 Merge pull request #13663 from alvaroelpob/feat/libscelibressl3-evp-md-ctx-md
feat(libSceLibreSsl3): implement EVP_MD_CTX_md
2026-10-31 12:26:04 +01:00
Adrià d72786fc65 Merge pull request #13643 from kyon-eth/feat/depth-320-exports
feat(libSceDepth): declare callable export
2026-10-31 12:21:07 +01:00
Adrià f5b82ff453 Merge pull request #13500 from PrivacyOnion/feat/nkwebkit-c-api
feat(libSceNKWebKit): implement the WebKit C API objects, preferences, JavaScriptCore C API and WTF primitives
2026-10-31 12:18:50 +01:00
Adrià 8f55414024 Merge pull request #13653 from kyon-eth/feat/np-partner001-320-exports
feat(libSceNpPartner001): declare callable export
2026-10-31 12:04:43 +01:00
Adrià 2493648d37 Merge pull request #13652 from kyon-eth/feat/m4aac-enc-320-exports
feat(libSceM4aacEnc): declare callable export
2026-10-31 12:04:35 +01:00
Adrià f35ee0b723 Merge pull request #13651 from kyon-eth/feat/remoteplay-320-exports
feat(libSceRemoteplay): declare callable export
2026-10-31 12:04:27 +01:00
Adrià ee1157d88b Merge pull request #13650 from kyon-eth/feat/video-native-ext-essential-320-exports
feat(libSceVideoNativeExtEssential): declare callable export
2026-10-31 12:04:19 +01:00
Adrià 85cdddc1b0 Merge pull request #13642 from kyon-eth/feat/keyboard-320-exports
feat(libSceKeyboard): declare callable export
2026-10-31 12:02:16 +01:00
Adrià 1847a6f9da Merge pull request #13644 from kyon-eth/feat/depth2-320-exports
feat(libSceDepth2): declare callable export
2026-10-31 12:01:23 +01:00
Adrià dcbe782e4b Merge pull request #13647 from kyon-eth/feat/system-tts-320-exports
feat(libSceSystemTts): declare callable export
2026-10-31 11:57:45 +01:00
FabrikonManufacturing 5737a6412a docs(libSceIcu): reconcile remaining stub count 2026-10-31 11:53:24 +01:00
FabrikonManufacturing f55c4aeef6 docs(libSceIcu): record resource type verification limits 2026-10-31 11:53:24 +01:00
Adrià 602c0e417c Merge pull request #13640 from kyon-eth/feat/opus-dec-320-exports
feat(libSceOpusDec): declare AJM context export
2026-10-31 11:49:56 +01:00
Adrià 99061ea54e Merge pull request #13639 from kyon-eth/feat/system-gesture-320-exports
feat(libSceSystemGesture): declare touch area export
2026-10-31 11:47:38 +01:00
Adrià 0f1f057587 docs(libSceDepth): file unverified export under Unknown function info 2026-10-31 11:33:55 +01:00
Kyon ae5cbc0932 feat(libSceDepth): declare 1 callable exports 2026-10-31 11:33:51 +01:00
AdriàandClaude Sonnet 5.5 9a768d6447 docs(libSceKeyboard): move the unknown export entry under Unknown function info
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-31 11:32:40 +01:00
Kyon bb24806dfc feat(libSceKeyboard): declare 1 callable exports 2026-10-31 11:32:31 +01:00
Adrià 0aefc11766 Merge pull request #13634 from kyon-eth/feat/datatransfer-320-legacy
feat(libSceDataTransfer): declare older callable exports
2026-10-31 11:28:37 +01:00
Adrià 8e6805c35f Merge pull request #13633 from kyon-eth/feat/nptrophy2-320-legacy
feat(libSceNpTrophy2): declare older callable exports
2026-10-31 11:11:19 +01:00
Adrià 93d9b786bc Merge pull request #13624 from BunnyFl/feat/libsceplayready-version-and-init-params
feat(libScePlayReady): implement the version, init-params and buffer-init calls
2026-10-31 11:11:03 +01:00
PrivacyOnion 1383e29dac feat(libSceNKWebKit): implement the WebKit C API objects, preferences, JavaScriptCore C API and WTF primitives
Replace 1137 NotImplemented stubs with implementations that follow the PS5 11.x OSS WebKit source: the API object model and value types, WKPreferences with PlayStation defaults, context, page, website data store and user script configuration objects, the JS* API on QuickJS-NG with libSceJsc strings, WebCore geometry, transform and color values, and WTF allocation, time, string and URL value operations. Exports whose behaviour needs the WebKit engine, the WebCore URL parser or unproven layouts stay stubs; the gaps are in docs/dev/debt/libSceNKWebKit.md.

Every export is declared once in headers reachable from the library umbrella. Allocation size, alignment and header overhead are computed with overflow checks and the try variants return null at the boundaries. tryFastMalloc, tryFastZeroedMalloc, tryFastCalloc and tryFastRealloc return WTF::TryMallocReturnValue, which is returned in memory, so they take the caller's result pointer first, store the allocation through it and return it.

The libSceJsc string exports that libSceNKWebKit calls are named with the _nid_postfix suffix, so the NID patcher renames those imports along with the exports and the patched libSceNKWebKit.prx resolves them on Linux; their NIDs are unchanged.
2026-10-31 11:10:47 +01:00
Adrià f20dbdd14c Merge pull request #13635 from kyon-eth/feat/bgft-320-legacy
feat(libSceBgft): declare older callable exports
2026-10-31 11:08:52 +01:00
Adrià b7d3fd3c52 Merge pull request #13629 from kyon-eth/feat/videoout-320-legacy-exports
feat(libSceVideoOut): declare older callable exports
2026-10-31 11:03:31 +01:00
Adrià 69c8fc1375 Merge pull request #13626 from kyon-eth/feat/nptcs-320-exports
feat(libSceNpTcs): declare older callable exports
2026-10-31 11:03:23 +01:00
Adrià 4a9b259564 Merge pull request #13622 from MarcZX10/feat/host-free-space
feat(libSceSaveData.native): report the host volume's room to save mounts, opt-in with ANYPS5_FREE_SPACE
2026-10-31 11:03:16 +01:00
Adrià 3a6711d08b Merge pull request #13621 from beardsciences/fix/idle-store-yield
fix(agc): yield the queue-idle storage write-back to new work
2026-10-31 11:03:08 +01:00
Adrià 45f4f82449 Merge pull request #13630 from kyon-eth/feat/npmanager-320-legacy
feat(libSceNpManager): declare older callable exports
2026-10-31 10:59:05 +01:00
Adrià 2db749ef2e Merge pull request #13623 from kyon-eth/feat/custommusic-core-320-exports
feat(libSceCustomMusicCore): declare older callable exports
2026-10-31 10:57:53 +01:00
AdriàandClaude Sonnet 5.5 489db87488 fix(libSceDataTransfer): use the known names of the two older exports
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-31 10:52:48 +01:00
Kyon ae542cd452 feat(libSceDataTransfer): declare older callable exports 2026-10-31 10:52:35 +01:00
Adrià bd9039ca20 Merge pull request #13618 from kyon-eth/feat/abstracttcs-320-exports
feat(libSceAbstractTcs): declare older callable exports
2026-10-31 10:26:55 +01:00
Adrià f78408fe52 Merge pull request #13617 from kyon-eth/feat/custommusic-playready4-320-exports
feat(libSceCustomMusicPlayReady4): declare older exports
2026-10-31 10:26:48 +01:00
Adrià c5e389a126 Merge pull request #13612 from kyon-eth/feat/jsc-320-legacy-unique
feat(libSceJsc): declare older callable exports
2026-10-31 10:18:36 +01:00
Adrià cff2a0ff46 Merge pull request #13611 from kyon-eth/feat/icu-320-legacy-bulk
feat(libSceIcu): declare older callable exports
2026-10-31 10:18:29 +01:00
Adrià 5d0ca2e685 Merge pull request #13600 from akkadbakkad89/kernel-sema-attr-hi
fix(libkernel): accept semaphore attribute bits 0x100 to 0x102
2026-10-31 10:17:33 +01:00
Adrià faf4aec285 Merge pull request #13609 from kyon-eth/feat/nkwebkit-320-legacy-exports
feat(libSceNKWebKit): declare older callable exports
2026-10-31 10:14:44 +01:00
Adrià 809c7fa2df Merge pull request #13607 from BunnyFl/feat/libsceaudio3d-firmware-ports
feat(libSceAudio3d): follow firmware 13.42 for the port, report and audio out calls
2026-10-31 09:53:30 +01:00
AdriàandClaude Sonnet 5.5 e5f5e36f09 docs(libkernel): restore unrelated debt entries dropped by a stale branch
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-31 09:47:05 +01:00
akkadbakkad89andDevin 58295ef071 fix(libkernel): accept semaphore attribute bits 0x100 to 0x102
Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-31 09:47:05 +01:00
Adrià 45e39c7ad1 Merge pull request #13605 from kyon-eth/feat/userservice-320-legacy-exports
feat(libSceUserService): declare older settings exports
2026-10-31 09:39:52 +01:00
Adrià 4cb7d71c47 Merge pull request #13604 from kyon-eth/feat/icu-320-dispatch-exports
feat(libSceIcu): declare older dispatch exports
2026-10-31 09:37:46 +01:00
BunnyFlandClaude Opus 5.5 f4d2d44466 fix(libSceAudio3d): let open ex check like open in a PS4 process
In firmware 13.42 sceAudio3dPortOpenEx only sets the flag that skips
the PS4-process AudioOut2 advances, which this library never makes, so
it now opens like sceAudio3dPortOpen. A PS4-process open reports an
open port before an unsupported buffer mode or bed count, as the
firmware does, and the debt entry records the advances after an open
and a push for a PS4 SDK of 0x11000000 or later.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-31 09:30:55 +01:00
BunnyFlandClaude Opus 5.5 96aa06c34f fix(libSceAudio3d): follow the firmware's PS4-process branch
Store sceKernelIsPs4Process at sceAudio3dInitialize as firmware 13.42
does and follow its PS4-process answers: bed write2 rejects route 1 on a
2-bed port, audio out open rejects port type 3 with param bit 17 and
checks like a PS5 process otherwise, and a repeated initialize returns
NOT_READY before the reserved check. Formats 6 and 7 throw for a PS4
process because the firmware rewrites them by PS4 SDK version, which
this project cannot read yet. Test the outputs loop and its reports.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-31 09:30:55 +01:00
BunnyFlandClaude Opus 5.5 7f45264713 fix(libSceAudio3d): keep PS4-process answers and read the port id only for reports
Choose the firmware 13.42 PS5 rules or the earlier answers by
sceKernelIsPs4Process for the port open, open ex, create and bed write2
route checks, read the port id for a call report only when a call
handler is registered, as the firmware does, and report a null
parameter pointer from sceAudio3dAudioOutOutputs without pointer
arithmetic on null.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-31 09:30:55 +01:00