Commit Graph
20271 Commits
Author SHA1 Message Date
Malcolm f9b8c209a3 BufferUtils: Address reviews
-drop iota16, remove avx2 check, better reduction
2026-10-10 12:40:20 +03:00
Malcolm cd4d4e02ec BufferUtils: Optimize restart removal with SVE and SVE2.2 2026-10-10 12:40:20 +03:00
Malcolm d21c0d808d BufferUtils: Add table-based NEON and AVX2 compaction 2026-10-10 12:40:20 +03:00
Malcolm 52343fa2f3 BufferUtils: Add native NEON upload paths 2026-10-10 12:40:20 +03:00
Antonino Di Guardo ff91404b7c Qt: Fix race condition in qt_video_source_wrapper (#19774) 2026-10-10 08:15:18 +00:00
kd-11 e38d27157e rsx/vk: Implement rendering using no attachments 2026-10-10 10:30:35 +03:00
kd-11 0be621eb62 vk: Add support for attachment-less renderpasses 2026-10-10 10:30:35 +03:00
kd-11 78f27eaad6 rsx: Skip framebufferless draws if we have no side-effects 2026-10-10 10:30:35 +03:00
kd-11 66ba732829 rsx/gl: Implement support for framebuffer-less rendering 2026-10-10 10:30:35 +03:00
Liam 8f2fe1a99c rsx: Emulate float depth range on hosts without extended depth range support 2026-10-09 15:43:15 +00:00
kd-11 0be6d12140 vk: Remove outdated warning message about D16F being unsupported 2026-10-09 12:38:31 +03:00
kd-11 d6295528d7 rsx: Ensure F32->D24 conversions correctly round to nearest to match real hardware 2026-10-09 12:38:31 +03:00
kd-11 510f4c243e rsx: Fix depth_bounds range computation 2026-10-09 12:38:31 +03:00
kd-11 ffa4c71088 rsx: Fix DEPTH_FLOAT decoding for clear values 2026-10-09 12:38:31 +03:00
kd-11 5e89a0061e rsx: Update D16F pack/unpack logic to match hardware tests
- The format is insane. Bias is 16, not 7
- This means values outside [0,1] are impossible to encode
2026-10-09 12:38:31 +03:00
kd-11 b26e0cfa91 vk: Pause the driver manager routine when capturing media
- These are out-of-band events and should not be treated as 'real' sync points.
2026-10-09 12:38:31 +03:00
kd-11 33b2958da5 gl: Fixes for depth format upload and download 2026-10-09 12:38:31 +03:00
kd-11 cfd03fc026 vk: Fix edge cases in DEPTH format transfer logic
- Lots of edge cases and wrong sizes used for barriers
- Incorrect e4m12 conversion logic caused readback errors
2026-10-09 12:38:31 +03:00
kd-11 7c572eb4dd gl/vk: Correctly halve the invocation count when shrinking F32 to F16 2026-10-09 12:38:31 +03:00
kd-11 4d4c07c18a vk: Ensure input attachments are in uncompressed layouts 2026-10-09 12:38:31 +03:00
digant73 4c7d08582a overlays: Fix missing symbol glyphs (e.g. ★) in native UI on Windows 2026-10-09 07:52:44 +02:00
kd-11 304d544bc1 ci: Skip cache load step if PR is marked with 'CI: Disable Build Caches' label 2026-10-08 23:07:27 +03:00
kd-11 e4694a7a2c rsx/vp: Adjust constant access behavior to match real hardware
- Real hardware behavior for constants table access is complicated.
1. If you try to encode access of c[N] where N > 467 you read back 0 in the shader
2. If you try to bypass the limitation using ARL then the index wraps around 512.
3. Using the ARL bypass between 468 and 512 returns garbage.
2026-10-08 23:07:27 +03:00
kd-11 7f476dad89 rsx: Rework transform constant update logic
- This reverts commit 193975556d.
- Out of bounds writes are treated as NOP, same as real hardware
2026-10-08 23:07:27 +03:00
kd-11 222754bfd3 rsx: Use framebuffer aliasing bias to break ties between same-tag color and depth overlaps 2026-10-08 10:15:36 +03:00
Acts1631 d064a83d11 Keep title IDs within host path components
Crafted title IDs could escape serial-derived directories and redirect
recursive cache cleanup outside RPCS3's cache root. Reject structural
path components, escape identifiers used as host names, and make
cleanup matching literal and exact.
2026-10-08 08:02:13 +03:00
digant73 8ffc512beb Remove duplicate in emucore.vcxproj.filters 2026-10-07 20:25:47 +02:00
Antonino Di GuardoandClaude Opus 5.5 2bf8677d3c cellSearch: Put the whole search into the music selection context (#19750)
Analysis and fixes made by Opus 5.5.

## Bug
`cellSearchGetMusicSelectionContext` only put the selected (or a random)
track into the context, even when the search contained many tracks.
Games that pick custom music through cellSearch got a one-track
playlist, so with repeat ALL the same song played on loop forever.

## Fix
- For a search of single tracks the playlist now contains every track of
the search, and `first_track` / `current_track` point to the selected
one (random when shuffled, otherwise the first).
- `music_selection_context::find_content_id` starts from the selected
track instead of the first entry of the playlist.
- `audio_decoder` keeps the selected track first when shuffling and only
shuffles the rest.

Tested with NHL 14.

Fixes #14738
Part of #18779, #11596

---------

Co-authored-by: Claude Opus 5.5 <[email protected]>
2026-10-07 17:41:28 +00:00
Yahfz ab412d5ddb rsx: Fix shader compilation (FP16 round_to_8bit) at low setting 2026-10-07 18:43:26 +03:00
Acts1631 e97200a884 Reject invalid RPCN message types
RPCN forwards MessageDetails from other users. The protobuf uint16
wrappers can carry 32-bit values, and narrowing them on the recipient
aborts RPCS3.

Validate both values before casting so malformed messages are
discarded.
2026-10-07 17:30:37 +03:00
Acts1631 cb63cc82ca Validate RPCN room message fields
RPCN room peers control message payloads and destination lists. Values
above the Matching2 limits overflow the recipient's fixed event buffer
and terminate the NP handler.

Reject malformed room message notifications before allocating event
data.
2026-10-07 16:17:15 +03:00
Acts1631 5f8dd1de61 Reject invalid signaling RTT timestamps
Signaling peers control the timestamps used for RTT calculation. A
future timestamp wraps the unsigned delta, and the fatal checked cast
terminates the signaling thread.

Reject future and oversized RTT values before updating peer state.
2026-10-07 15:19:45 +03:00
Megamouse 479ca74cad Update 7zip to 26.04 2026-10-07 08:20:07 +02:00
digant73andClaude Opus 5.5 925fbb2607 media_utils: Flush the audio decoder and resampler at the end of a track
The resampler buffers part of its input whenever the file's sample rate differs from the 48 kHz output,
because the output buffer was only sized for the frame's own samples. These samples piled up and were
never flushed, so a 44.1 kHz track came out 8.125% short (5-20 s cut from the end of every song).
The decoder itself was never drained either.

- Size the output for the pending resampler samples too and only append what swr_convert actually wrote.
- Flush the decoder and the resampler once the last packet has been read.
- Reserve the whole track up front, reuse the resampler output buffer and byteswap in place before
  appending, instead of growing the track buffer and allocating a buffer for every frame.

Fixes #18930 (custom music cut in Gran Turismo 5).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-07 07:31:29 +02:00
Megamouse 55a3aff337 gl: fix screenshots and recordings 2026-10-06 20:53:00 +02:00
brian218 12178de458 QT: Made HDD Model Name & HDD Serial Number settings accessible via GUI 2026-10-06 19:00:35 +02:00
Antonino Di Guardo 8e4659a6cb LV2: Fix sys_ppu_thread_start gate freezing PPU threads (#19707) 2026-10-06 15:59:20 +00:00
Antonino Di Guardo 532b6520b4 Add IRD based integrity check (#19421) 2026-10-06 10:22:13 +00:00
Whatcookie 1b90d1c149 rsx: Optimize recursion in the vertex program analyzer's instruction walk
Avoid use of std::function for recursion, and ensure that std::stack is backed by a vector, instead of the default deque.
2026-10-06 10:00:59 +00:00
brian218 c7642cb875 USIO: Eliminated frequent buffer memory reallocation to optimize memory performance 2026-10-06 12:31:13 +03:00
Elad 4dfdda9789 sys_net/Win32: Fix ECONNRESET on UDP socket 2026-10-06 11:59:40 +03:00
Elad 191932b854 Fix RSX capture memory allocations 2026-10-06 11:59:40 +03:00
Elad b1e8e74619 vm: Fix stack pages 2026-10-06 10:56:17 +03:00
Malcolm 183597deea RSX: use cache-line waits for event queue draining 2026-10-06 09:03:01 +02:00
brian218 2ff18d0fae QT: Added USIO Emulated Mode options to Settings GUI 2026-10-06 08:12:31 +02:00
Elad 3e7477107a Update contributors 2026-10-05 21:46:59 +03:00
Elad 7877ebe43d Fix RSX Debugger 2026-10-05 21:46:59 +03:00
Megamouse 30ee6cc358 Add brian218 to contributors 2026-10-05 20:07:01 +03:00
Megamouse 3db7c53c67 vm: fix fill64 2026-10-05 20:07:01 +03:00
Megamouse 70c8683ae2 usio: add proper mapping 2026-10-05 18:02:29 +02:00