Commit Graph
3047 Commits
Author SHA1 Message Date
Dean 0c83831421 Merge pull request #8975 from milescoviello/rebase/5499-db-depth-copy
feat(agc): run DB depth copies into a single-sample R32 float target
2026-10-22 01:20:22 +13:00
Adrià fce8ecf162 Merge pull request #8330 from ymatrix1/feat/regmgr-missing-exports
feat(libSceRegMgr): export missing firmware registry manager interfaces
2026-10-21 14:18:55 +02:00
Adrià 6cfd7912a6 Merge pull request #8332 from ymatrix1/feat/avsetting-hid-missing-exports
feat(libSceAvSetting): export missing firmware AV setting and HID control interfaces
2026-10-21 14:18:50 +02:00
Adrià 44d01b8f4b Merge pull request #8333 from ymatrix1/feat/gamelivestreaming-missing-exports
feat(libSceGameLiveStreaming): export missing firmware live streaming interfaces
2026-10-21 14:18:44 +02:00
Adrià 94b2b54e8c Merge pull request #8338 from KernelPanicNT/feat/ngs2-calc-waveform-block-pcm
feat(libSceNgs2): map waveform blocks of linear PCM and float types
2026-10-21 14:17:40 +02:00
Adrià 11bb53a347 Merge pull request #8327 from MarrasFederico/feat/ngs2-voice-owner
feat(libSceNgs2): report the rack and index that own a voice in sceNgs2VoiceGetOwner
2026-10-21 14:12:24 +02:00
Adrià d099bc6cd8 Merge pull request #8245 from YossiYad/feat/http-object-options
feat(libSceHttp): keep options per template, connection and request and implement their getters
2026-10-21 14:04:15 +02:00
Adrià aed67d7e55 Merge pull request #8256 from YossiYad/feat/hmd-no-headset-queries
feat(libSceHmd): answer ten buffer and device queries the way the disconnected-headset path implies
2026-10-21 14:03:19 +02:00
Adrià f815e8bdd6 Merge pull request #8247 from santhoshkumar-dev/codex/freetype-font-face-lifecycle
feat(libSceFreeType): support memory fonts and face cleanup
2026-10-21 14:03:13 +02:00
Adrià d5705d17ad Merge pull request #8290 from akkadbakkad89/feat/psml-mfsr-queries
feat(libScePsml): implement the MFSR query exports
2026-10-21 14:02:16 +02:00
Adrià b11d7cefdb Merge pull request #7907 from akkadbakkad89/feat/prx-declare-inventory-74
feat(prx): declare exports for 66 inventory-covered system libraries
2026-10-21 14:02:05 +02:00
Yossi Yadgar fcc7f2aba9 docs(debt): note where sceNpCheckCallbackForLib comes from 2026-10-21 14:59:31 +03:00
Retr0 36226741f5 fix(libc): open a directory with fopen in a read mode on Windows
FreeBSD 11 fopen opens the path with _open, and vn_open_vnode refuses a
directory only for FWRITE or O_TRUNC, so fopen of a directory in a read
mode succeeds; Linux hosts already open it. On Windows CreateFileW
without FILE_FLAG_BACKUP_SEMANTICS refused it with EACCES.

fopen now opens such a path as a libkernel directory descriptor, which
libkernel registers in libc when it loads, and fclose and freopen remove
it from libkernel's table. Reads on the stream fail with EISDIR and set
the error indicator, as on a Linux host and FreeBSD's tmpfs: the Windows
CRT fails them already but reports EINVAL. Writes fail with EBADF, and
fseek, ftell and ungetc work, as on any read-only stream.
2026-10-21 14:48:37 +03:00
Adrià 47fa6eecf8 Merge pull request #8215 from jagrat04/feat/libSceNpWebApi2-add-web-trace-tag
feat(libSceNpWebApi2): implement sceNpWebApi2AddWebTraceTag
2026-10-21 13:46:46 +02:00
Adrià e335d5b5ba Merge pull request #7974 from DavidSamir/feat/libkernel-file-mmap-macos
feat(libkernel): map files through the guest's mmap on macOS hosts
2026-10-21 13:46:41 +02:00
Adrià 865166414f Merge pull request #7884 from jacob6769/feat/ces-korean-big5
feat(libSceCesCs): convert EUC-KR, UHC and Big5 through the CP949 and CP950 tables
2026-10-21 13:39:26 +02:00
Adrià 6c8b43931b Merge pull request #8228 from jagrat04/feat/libSceNet-show-route6
feat(libSceNet): implement sceNetShowRoute6
2026-10-21 13:38:29 +02:00
Adrià 64361960c5 Merge pull request #7818 from fogydes/feat/vorbisdec-firmware-exports
feat(libSceVorbisDec): export missing firmware Vorbis decoder interfaces
2026-10-21 13:38:24 +02:00
Adrià de4ef842b5 Merge pull request #7850 from mugurc/feat/libkernel-sockets-macos
feat(libkernel): UDP sockets and name resolution on macOS hosts
2026-10-21 13:36:21 +02:00
Adrià FranchandClaude 488da1774d fix(libSceNpAuth): indent the A forwards and pin the shadPS4 links in the debt entry
Co-Authored-By: Claude <[email protected]>
2026-10-21 13:28:34 +02:00
NoOverflow 982db91217 feat(libSceNpAuth): implement sceNpAuthGetAuthorizationCodeA and sceNpAuthGetIdTokenA
Both forward to their V3 counterparts, which share one implementation in
shadPS4, and complete libSceNpAuth (14/14).
2026-10-21 13:28:13 +02:00
Federico Marras cc7b9a7652 Merge remote-tracking branch 'upstream/main' into feat/kqueue-read-on-kqueue
# Conflicts:
#	docs/dev/debt/libkernel.md
2026-10-21 13:17:12 +02:00
Savvanis Spyros 123768abcd Merge branch 'main' of https://github.com/boykopovar/AnyPS5 into fix/agc-release-mem-system-counter
# Conflicts:
#	docs/dev/debt/libSceAgcDriver.md
2026-10-21 14:15:53 +03:00
Dean 3e91c8edf5 Merge pull request #8850 from UnhealthyKraken/feat/libkernel-cfsetspeed
feat(libkernel): implement cfsetspeed
2026-10-22 00:13:16 +13:00
Savvanis SpyrosandClaude Opus 5.5 79a5d6b65a fix(libSceNpManager): refuse an unknown request in sceNpSetGamePresenceOnline
After the argument checks, shadPS4 looks the request up and returns
REQUEST_NOT_FOUND for one that was never created or was deleted. The
library already tracks live requests for sceNpSetTimeout.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-21 14:13:04 +03:00
Savvanis SpyrosandClaude Opus 5.5 1d0451f659 docs(relinker): note that a deferred module the title never loads gets no module_start
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-21 14:12:12 +03:00
Adrià b3f4783abc Merge pull request #7795 from fogydes/feat/remoteplay-firmware-exports
feat(libSceRemoteplay): export missing firmware remote play interfaces
2026-10-21 13:11:20 +02:00
Adrià 59776f2e6a Merge pull request #7841 from hypermoist/feat/libc-annex-k-remaining
feat(libc): implement the remaining C11 Annex K bounds-checking functions
2026-10-21 13:09:59 +02:00
Adrià eb4a7fee4e Merge pull request #7525 from AlexOfTheForest/feat/scanf-wide-linux
feat(libc): scan 16-bit wide conversions in the sscanf family on Linux
2026-10-21 13:09:54 +02:00
Adrià 98145b48d8 Merge pull request #7426 from DavidSamir/feat/shader-barycentric-tessellation-last-vertex
feat(agc): draw the last provoking vertex through the barycentric tessellation stages
2026-10-21 13:08:47 +02:00
Adrià 2cca5c0fd6 Merge pull request #7600 from milescoviello/feat/msaa-dcc-comp-to-single
feat(agc): take RADV's comp-to-single clear of a multisampled DCC target
2026-10-21 13:07:42 +02:00
akkadbakkad89 f57ef9986f feat(prx): declare exports for 66 inventory-covered system libraries 2026-10-21 16:30:58 +05:30
Federico Marras c8e99c7f71 Merge remote-tracking branch 'upstream/main' into feat/ngs2-voice-owner
# Conflicts:
#	docs/dev/debt/libSceNgs2.md
2026-10-21 12:56:14 +02:00
Adrià 275e896797 Merge pull request #7696 from MaxLikesCode/feat/agc-set-index-indirect-args
feat(libSceAgc): implement sceAgcDcbSetIndexIndirectArgs
2026-10-21 12:52:39 +02:00
Adrià 27fabb6b7d Merge pull request #7869 from savvaniss/feat/agc-polygon-mode
feat(agc): draw point and line polygon modes
2026-10-21 12:48:05 +02:00
Dean 80b1ebd36e Merge pull request #8862 from orezraey/fix/audiodec-word-length-measured-ps5
fix(libSceAudiodec): reject the PCM word sizes a PS5 rejects
2026-10-21 23:46:31 +13:00
Dean fd857beef1 Merge pull request #8854 from orezraey/fix/rtc-format-null-tick-measured-ps5
fix(libSceRtc): format the current time for a null tick as measured on a PS5
2026-10-21 23:46:27 +13:00
Dean a20fc89702 Merge pull request #8852 from nikowolf123/feat/voice-pause-resume-all
feat(libSceVoice): implement sceVoicePausePortAll and sceVoiceResumePortAll
2026-10-21 23:46:23 +13:00
Adrià FranchandClaude c5e861b868 docs(libSceNpWebApi2): drop title id from AddWebTraceTag debt line
Co-Authored-By: Claude <[email protected]>
2026-10-21 12:45:44 +02:00
jagrat Singh b9cdbf932d feat(libSceNpWebApi2): implement sceNpWebApi2AddWebTraceTag
Implement sceNpWebApi2AddWebTraceTag with the (int64_t request_id, const char* value) signature from shadPS4. Validates that value is not null, accepts any request id, and acts as a silent stub matching the other offline request functions.
2026-10-21 12:45:40 +02:00
jagrat Singh 54d1a8d6d6 feat(libSceNet): implement sceNetShowRoute6 2026-10-21 12:44:40 +02:00
jacob6769andClaude Opus 5.5 dc7be1b072 feat(libSceCesCs): convert EUC-KR, UHC and Big5 through the CP949 and CP950 tables
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-21 12:42:02 +02:00
Dean 9a8c2a1a05 Merge pull request #9003 from xdCloudy/feat/libSceNpManager-150-exports
feat(libSceNpManager): declare 150 pending exports
2026-10-21 23:32:40 +13:00
Dean f1f6626835 Merge pull request #8102 from Dragost/fix/libSceAvPlayer-sync-tolerance-and-eof-cleanup
fix(libSceAvPlayer): allow presenting video frames within sync tolerance
2026-10-21 23:31:28 +13:00
Dean 2abfb1beb4 Merge pull request #8983 from xdCloudy/feat/libSceNpCommon-150-exports
feat(libSceNpCommon): declare 150 pending exports
2026-10-21 23:07:33 +13:00
Dean 61922f66da Merge pull request #8949 from xdCloudy/feat/ps5-npsnsfacebookdialog-exports
feat(libSceNpSnsFacebookDialog): declare PS5 pending exports
2026-10-21 23:07:29 +13:00
Dean b5baeea5af Merge pull request #8119 from DavidSamir/feat/videodec2-unimplemented-exports
feat(libSceVideodec2): export thirteen functions as not implemented
2026-10-21 23:07:25 +13:00
Dean ee676246cf Merge pull request #6519 from Get-fix/ps4/kernel-system-module-path
feat(libkernel): load system libraries from their console paths
2026-10-21 23:07:21 +13:00
milescovielloandClaude Opus 5.5 f57bbc936a perf(agc): store only the depth plane units a flush overlaps
A read of memory inside a stale D32 Z_X depth plane (FlushDepthPlanes) stored
the whole plane: a copy of the depth image into the mirror, MarkWholeWritten
and a write-back of every byte. In Super Meat Boy 3D (#8840) a read-only
buffer ending about 3 KiB inside a stale 3840x2160 plane makes
ShaderResources::Revalidate flush ~1000 times per 5 s, each one moving
31.9 MiB, bound by transfer bandwidth.

A depth surface now tracks its plane as 64 KiB units, each one 128x128 tile
of the mirror's block units: a stale bit and a write generation per unit
replace memoryStale and the plane-wide syncedGeneration.

- FlushDepthPlanes stores only the stale units the range overlaps: the depth
  to mirror copy takes one region per unit rectangle (UnitRects, from the
  mirror's slice windows), the mirror marks just those units written
  (MarkUnitsWritten) and the write-back covers their hull. The other units
  stay stale and the plane stays registered. Stale bits are cleared only
  after the copy was recorded, and the stored units' generations advance
  only when FlushPending stored them. A depth fast clear still pending at
  the store rewrites the whole image, so it makes every unit stale first.
- SyncFromMemory copies from the mirror only the units the guest wrote since
  their own generation (one ChangedBlocks scan; untracked memory counts as
  unwritten, as WrittenSince did), so a guest write into one unit no longer
  replaces GPU depth that is still unstored in the others.
- Flushes followed by a retire keep the whole-plane store: the color target
  flush in Draw and a written storage view (DepthPlaneScope::Whole). The
  retire of an overwritten surface in DepthSurfaceTexture first stores its
  remaining stale units the guest did not write.
- A mirror without block units (APS5_NO_BLOCK_TRACKING, unaligned base)
  falls back to the whole-plane copy, and APS5_DEPTH_PLANE_WHOLE_STORE=1
  tracks the plane as one unit, the previous behaviour.
- DepthPlaneStoreCounts reports stores, units and bytes stored.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-21 10:03:00 +00:00
Dean 7156315ef3 Merge pull request #8952 from xdCloudy/feat/ps5-ult-exports
feat(libSceUlt): declare PS5 pending exports
2026-10-21 23:00:33 +13:00