Commit Graph
12857 Commits
Author SHA1 Message Date
Dean 60febbf3ea Merge pull request #13135 from kyon-eth/feat/jsc-independent-320-exports
feat(libSceJsc): declare 379 callable exports
2026-11-05 16:59:34 +13:00
Dean ee48e9c70e Merge pull request #12803 from Elma7e/fix/uds-initialize-struct-size-validation
fix(libSceNpUniversalDataSystem): reject mismatched param struct size in sceNpUniversalDataSystemInitialize
2026-11-05 16:59:31 +13:00
Dean 7623f193f0 Merge pull request #12122 from JJenkx/windows/libc-cosh-msun
fix(libc): compute cosh with fdlibm's algorithm, as titles' libc.prx does
2026-11-05 16:59:26 +13:00
Dean 436c14263e Merge pull request #9154 from LeandroLP23/feat/pad-dualsense-bluetooth-haptics
feat(pad): stream vibration ports to a Bluetooth DualSense as haptics reports
2026-11-05 16:59:18 +13:00
Dean 1882108b45 Merge pull request #15084 from MarcZX10/docs/topb-env-testing
docs(hw-oracle): correct 2 statements
2026-11-05 16:26:25 +13:00
Dean 9b58b17eb8 Merge pull request #15079 from MarcZX10/docs/topd-technical-debt-index
docs(debt): correct 1 statement
2026-11-05 16:26:21 +13:00
Dean ce8a9ba0a1 Merge pull request #15070 from MarcZX10/r2/R30-conventions-host-test-flags
docs(conventions): correct the flags configure_host_test_executable supplies
2026-11-05 16:26:12 +13:00
Adrià 0540ef0ef2 Merge pull request #13995 from xXPBSXx/docs/libkernel-virtualquery-size
docs(libkernel): name what the emulators do for the size and flags of sceKernelVirtualQuery
2026-11-05 03:15:11 +01:00
Dean Galvin bc2dfa08c9 revert(agc): back out #6973 MSAA initial samples
Main fails linux since 24ed2d9adf: agc_driver_native_depth_aliased_depth_{depth_only,stencil,no_stencil} and native_depth_publication now refuse sampling an aliased multisample target earlier, with a message the HTILE-alias path in NativeMultisampleDepth.cpp does not expect. The parent c42e3a000c is green. Reverting so main is green again; #6973 can re-land together with the test update.
2026-11-05 14:26:45 +13:00
JJenkx a0b58797d8 Merge remote-tracking branch 'origin/main' into windows/libc-cosh-msun
# Conflicts:
#	core/libs/tests/GuestMath.cpp
2026-11-04 20:10:46 -05:00
Dean 0eba5db30d Merge pull request #11614 from noamroger/claude/project-thread-gcmyxo-cp864
feat(libSceCesCs): add the code page 864 profile
2026-11-05 13:33:45 +13:00
Dean 68be5fec01 Merge pull request #12197 from pushkarreddyy/fix/videodec2-parameter-sets-bound
fix(libSceVideodec2): bound cumulative AVC parameter sets before insertion
2026-11-05 13:18:26 +13:00
Dean 24ed2d9adf Merge pull request #6973 from Amoenus/codex/feat-msaa-initial-samples-main402
feat(agc): preserve initial native multisample color contents
2026-11-05 13:12:11 +13:00
Dean c42e3a000c Merge pull request #11948 from 00xDisaster/feat/video-out-host-policy-current
feat(libSceVideoOut): limit the guest display to the host resolution
2026-11-05 13:00:08 +13:00
Dean 9f9e420709 Merge pull request #15911 from gslashm/feat/nkwebkit-pal-session-id
feat(libSceNKWebKit): implement PAL::SessionID generators
2026-11-05 12:43:36 +13:00
Dean 6b5be5e232 Merge pull request #15887 from TripyFox/perf/agc-draw-device-staging
perf(agc): stage recorded draws' written buffers in device memory
2026-11-05 12:43:15 +13:00
Dean a82a382fa8 Merge pull request #13336 from malekaifa/fix/sync-on-address-unreadable
fix(libkernel): return EFAULT for unreadable wait addresses
2026-11-05 12:42:55 +13:00
Dean a2f0f4a027 Merge pull request #1060 from Kikoarl/feat/agc-acquire-mem-set-engine
feat(libSceAgc): implement sceAgcAcquireMemSetEngine
2026-11-05 12:42:38 +13:00
Dean Galvin e44de952a4 Merge branch 'main' 2026-11-05 12:31:36 +13:00
Dean 15454571d9 Merge pull request #13253 from iAbdulrrahman/feat/libkernel-sys-dup2
feat(libkernel_sys): implement _dup2 export
2026-11-05 12:18:07 +13:00
Dean 0ad9710d28 Merge pull request #13044 from Gonic0/perf/agc-linear-writeback-into-import
perf(agc): retile a whole-layer linear storage write-back into the host import
2026-11-05 12:17:45 +13:00
Dean 8c00e213b8 Merge pull request #10431 from rooklz/feat/cescs-profile-setters
feat(libSceCesCs): select the single-byte set of an MBCS profile and a replacement character for a context
2026-11-05 12:17:24 +13:00
gslashm 2d345c666b feat(libSceNKWebKit): implement PAL::SessionID generators
_ZN3PAL9SessionID26enableGenerationProtectionEv
_ZN3PAL9SessionID26generateEphemeralSessionIDEv
_ZN3PAL9SessionID27generatePersistentSessionIDEv
2026-11-05 00:59:38 +02:00
Dean Galvin 1f7daf5932 Merge branch 'main' 2026-11-05 11:35:15 +13:00
Dean d63781e9ce Merge pull request #15874 from zaryabzip/fix/json2-pop-front-empty
fix(libSceJson2): leave an empty array as it is in pop_front, as measured on a PS5
2026-11-05 11:31:47 +13:00
Dean 5aa376a68c Merge pull request #15873 from zaryabzip/fix/hmd-handle-first-before-init
fix(libSceHmd): check the handle before initialization in the device-information and field-of-view queries
2026-11-05 11:31:30 +13:00
TripyFoxandClaude Opus 5.5 88444ab5a7 docs(agc): give draw device-local staging its own debt entry
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-04 22:41:54 +01:00
TripyFoxandClaude Opus 5.5 1c3a24f1a2 perf(agc): stage recorded draws' written buffers in device memory
Recorded draws without BDA page tables now take the device-local staging
of written and atomic buffer elements that dispatches use; their
copy-backs are already recorded through MarkGpuWrites. A draw that ends
up synchronous with staged regions is rebuilt unstaged.
APS5_NO_DRAW_STAGING=1 keeps draws' elements in place.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-04 22:41:54 +01:00
zaryabzip 09dab27023 fix(libSceJson2): leave an empty array as it is in pop_front, as measured on a PS5
The system libSceJson2.sprx of a retail PS5 (13.60) returns from
sce::Json::Array::pop_front on an empty array and the size stays 0
(orezraey on #10378); the host threw std::out_of_range.
2026-11-05 01:55:28 +05:00
zaryabzip 2f862a3f6f fix(libSceHmd): check the handle before initialization in the device-information and field-of-view queries
Firmware 13.42's libSceHmd, run under an emulator (BunnyFl on #9577),
returns HANDLE_INVALID for any handle but 0 before initialization from
sceHmdGetDeviceInformationByHandle and sceHmdGetFieldOfView, and
NOT_INITIALIZED for handle 0 below SDK 4.50. The host returned
NOT_INITIALIZED for every handle.
2026-11-05 01:53:20 +05:00
LeandroLP23andClaude Opus 5.5 3c949c1dd4 fix(pad): scale the Bluetooth DualSense haptics stream by ANYPS5_RUMBLE
The controller sound card path already scales its samples by ANYPS5_RUMBLE, but
the Bluetooth haptics stream took the vibration port samples before that, so
ANYPS5_RUMBLE=0 still left a Bluetooth DualSense vibrating.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-04 21:47:03 +01:00
LeandroLP23andClaude Opus 5.5 d7fb2a3ec3 fix(pad): restore the DualSense haptics configuration after a rumble stops
SDL sends scePadSetVibration rumble as report 0x31 with audio haptics
turned off. Once the rumble stopped, the stream's haptics came back at a
different strength than before it. The stream thread now sends its
configuration report 0x31 again 100 ms after slot 0's rumble stops, which
brought the haptics back to their level before the rumble.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-04 21:47:03 +01:00
LeandroLP23andClaude Opus 5.5 986ae87c8a fix(pad): pace Bluetooth DualSense haptics reports and keep a failed stream silent
The worker sent a backlog of buffered blocks back to back. It now sends at
most one report 0x32 per 10.67 ms, the length of one 32-frame block at
3 kHz, without a catch-up burst after a pause.

A failed report write cleared the stream-open flag, which sent the vibration
ports to motor rumble. The flag now stays set until the controller
disconnects, so the ports stay silent while the stream is stopped.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-04 21:47:03 +01:00
e0b0f2b91d fix(pad): send a DualSense haptics report once two blocks are buffered
The 10.672 ms timer took a block only when it fired, so audio arriving in
blocks smaller than 32 haptic frames (16 from a 256-frame legacy port)
regularly found fewer than 32 frames and the report was skipped; catching
up after falling behind sent two reports back to back and left a ~21 ms
hole. The controller, asked to queue only 16 frames, then ran dry, and
the haptics dropped out about once per second on hardware.

The stream thread now waits on a condition variable until two blocks are
buffered and sends one, so reports follow the audio clock, and report
0x32 asks the controller to queue 64 frames (21 ms) to absorb Bluetooth
jitter and the difference between the title's rate and the controller's
crystal. Closing the stream wakes the waiting thread before the join.

Co-authored-by: seradavid <[email protected]>
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-04 21:46:45 +01:00
115c187398 feat(pad): stream vibration ports to a Bluetooth DualSense as haptics reports
Co-Authored-By: beecrepaldi-afk <[email protected]>
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-04 21:46:30 +01:00
Dean Galvin fc018e4614 Merge branch 'main' 2026-11-05 09:04:15 +13:00
Dean 1c03968050 Merge pull request #12918 from Kikoarl/feat/libSceNet-so-dontroute
feat(libSceNet): support SO_DONTROUTE in sceNetSetsockopt and sceNetGetsockopt
2026-11-05 09:00:27 +13:00
Dean 0ba9b059b3 Merge pull request #12903 from BunnyFl/fix/pngdec-chunk-checks
fix(libScePngDec): check PNG chunks as the console does
2026-11-05 09:00:22 +13:00
Dean 8748851eb1 Merge pull request #11662 from LordVersA/feat/libressl-library-init
feat(libSceLibreSsl): implement SSL library init
2026-11-05 09:00:18 +13:00
Dean 0263899e99 Merge pull request #15764 from JJenkx/fix/pad-trigger-effect-mask
fix(libScePad): check only the selected triggers' modes in scePadSetTriggerEffect
2026-11-05 08:21:20 +13:00
Dean d11668dcc6 Merge pull request #15694 from JJenkx/fix/ngs2-ps5-filter-sizes
fix(libSceNgs2): accept the PS5 SDK filter params in libSceNgs2
2026-11-05 08:21:12 +13:00
Dean d0af403307 Merge pull request #14986 from fogydes/fix/libSceVdecSavc2-pointer-validation
fix(libSceVdecSavc2): ignore unwritable version pointers in sceSdecGetVersionSw2
2026-11-05 08:20:22 +13:00
Dean ccef460fe0 Merge pull request #14869 from ntamas94/claude/elegant-pascal-2uae4z
docs(debt): record libSceFios2 init parameters and error mapping from the PS4 module
2026-11-05 08:20:18 +13:00
Dean 52fb23cbb7 Merge pull request #14847 from kallmek3nny/fix/libSceNpWebApi2-push-null-callback
fix(libSceNpWebApi2): refuse a null push-event callback
2026-11-05 08:20:13 +13:00
Dean 44d38bae90 Merge pull request #14224 from zaryabzip/feat/webrtc-rms-level
feat(libwebrtc): implement webrtc::RmsLevel's constructor, destructor, Analyze and Average
2026-11-05 08:19:59 +13:00
Dean dae7849938 Merge pull request #13968 from pushkarreddyy/fix/savedatadialog-getresult-efault
fix(libSceSaveDataDialog): return ARG_NULL from sceSaveDataDialogGetResult for unwritable pointers
2026-11-05 08:19:54 +13:00
Dean 9e70d97449 Merge pull request #13953 from pushkarreddyy/fix/ksem-getvalue-efault
fix(libkernel): return EFAULT from ksem_getvalue for invalid memory pointers
2026-11-05 08:19:49 +13:00
Dean 269419694c Merge pull request #13119 from JJenkx/fix/libc-ordinary-short-character-fields
fix(libc): retain ordinary short character scan fields
2026-11-05 08:19:45 +13:00
Dean 6543b1b697 Merge pull request #12978 from KernelPanicNT/feat/freetype-module-properties
feat(libSceFreeType): support the remaining FreeType module properties
2026-11-05 08:19:40 +13:00
Dean 045eda43dc Merge pull request #12854 from slopgobblercobbler/fix/libkernel-mincore-error-parity
fix(libkernel): enforce FreeBSD 11.4 error precedence and vector copyout in mincore
2026-11-05 08:19:30 +13:00