Please note that our version increases are landmarks and not stable builds
Always download the latest build from https://rpcs3.net/download
Note: These are NOT stable builds. RPCS3 is a rolling release software without stable builds. These are random tags we do from time to time. Do NOT use the branch from these tags to package RPCS3.
What's Changed
- Improve vertex cache compatiblity by @diazalvi in #18243
- rsx: Fix random crash in texture utils by @kd-11 in #18269
- cellGem: Fix deadlock in cellGemUpdateStart/cellGemUpdateFinish by @Megamouse in #18271
- Fix mac build by @RipleyTom in #18270
- Qt: Do not check return code of rpcs3 download by @Megamouse in #18276
- Fix some warnings by @Megamouse in #18256
- PPU Fixes by @RipleyTom in #18283
- rsx/gl: Fix some bugs when doing CPU readback (WCB) by @kd-11 in #18281
- Print stacktrace in case of exception by @Megamouse in #18284
- Qt: add log level settings to debug tab by @Megamouse in #18278
- Revert enabling PPU jump elider by @RipleyTom in #18288
- gl: Texturing improvements by @kd-11 in #18289
- cellDmuxPamf by @capriots in #18218
- PPUAnalyzer: Fix SLDI shift operand by @RipleyTom in #18294
- PS Move: Fix handle position calculation by @Megamouse in #18299
- LLVM 22 fixups by @RipleyTom in #18305
- rsx: Misc improvements by @kd-11 in #18304
- vk: Add 0x13C0 NAVI2 device ID (Raphael Mendocino) by @AniLeo in #18307
- cellGem: fix RAW8 to RGBA_320x240 / fix cellGemReadExternalPortDeviceInfo by @Megamouse in #18321
- Qt: play SND0.AT3 audio file in game lists when a pam movie would play by @Megamouse in #18322
- gl: Fix some remaining issues by @kd-11 in #18309
- RPCN: settings fixes by @Megamouse in #18325
- Fix SaveStates cellDumxPamf regression by @elad335 in #18326
- overlays: play SND0.AT3 audio file while game is loading by @Megamouse in #18323
- Small GUI fixes by @Megamouse in #18332
- Update curl to 8.19.0 by @Megamouse in #18336
- Use System Protobuf for Intel Mac by @qurious-pixel in #18344
- overlays: allow to reset current setting in home menu by @Megamouse in #18341
- SPU LLVM: Use ARMV8 udot/sdot to accelerate SUMB + GB/GBH/GBB by @Whatcookie in #18350
- VK: scale auto shader compiler workers on wide CPUs by @jfleezy23 in #18353
- config/ui: UX improvements, decrease settings ambiguity, fix namings by @AniLeo in #18220
- Fix iso shortcuts by @Megamouse in #18356
- input: simplify mmjoy handler by @Megamouse in #18354
- Fix Qt cmake warning and missing QJsonDocument include by @p0yr4s in #18346
- config: Disable pad navigation by default by @AniLeo in #18363
- cellDmuxPamf: LLE by default again by @AniLeo in #18361
- cmake: Build with SDL by default by @AniLeo in #18359
- Fix callback initialization order by @Megamouse in #18364
- Qt: Add possibility to add or remove steam shortcuts by @Megamouse in #18331
- input: log warning instead of throwing an exception when the dpad has an unknown value by @Megamouse in #18365
- native overlay: Home menu rewrite by @kd-11 in #18358
- Qt: Create Steam banners as well during shortcut creation by @Megamouse in #18368
- input: implement button combos by @Megamouse in #18366
- overlays/home: Fix some issues highlighted by testers by @kd-11 in #18371
- Steam banner fixes by @Megamouse in #18372
- Qt/Input: Improve combo button input by @Megamouse in #18374
- Qt: Fix game list selection after Refresh(true) by @Megamouse in #18376
- input: Fix SDL buttons by @Megamouse in #18378
- overlays/home: Fix restarting games from home menu by @Darkhost1999 in #18369
- Map PS button to start+select by default by @Megamouse in #18380
- Update current firmware to 4.93 by @FlexBy420 in #18384
- Qt: fix duplicate button combo checks by @Megamouse in #18386
- config: Enable start in fullscreen mode by default by @AniLeo in #18387
- rsx: Dynamic vsync setting by @kd-11 in #18389
- Clean up code using mutable + const when possible by @RipleyTom in #18396
- rsx/cfg: Handle aliasing IF and ELSE blocks from the same instruction by @kd-11 in #18393
- overlay: Add 8px left margin on the sidebar by @AniLeo in #18392
- [macOS CI] Fix protobuf related build fails by @schm1dtmac in #18398
- overlays: Add RSX memory tiling to overlays and shrink shader notification dialog by @kd-11 in #18400
- Batch create/remove steam shortcuts by @Megamouse in #18399
- Add overlay notification for received messages by @RipleyTom in #18413
- rsx/cfg: Fix handling of instructions with literal input by @kd-11 in #18416
- Qt: Remove some unused code by @Megamouse in #18415
- Improve GUI Audio by @Megamouse in #18407
- Add Zed config files to gitignore by @BehroozRezvani in #18421
- Qt: fix audio timer loop by @Megamouse in #18426
- rpcs3: Fix compilation with gcc-16 by @AniLeo in #18431
- overlays: Implement SDF rendering for smooth antialiased shapes by @kd-11 in #18433
- [macOS CI] Fix broken macOS builds again by @schm1dtmac in #18436
- gl: Properly initialize memory layout definition structs by @kd-11 in #18437
- overlays: Fix ugly artifacts when rendering switches when the home menu is scaled up by @kd-11 in #18438
- Qt: loop SND0.AT3 audio, add fade in/out by @Megamouse in #18442
- Qt: Improve find dialog by @Megamouse in #18444
- gui/input: disable stick anti deadzone in gui pad navigation by @Megamouse in #18446
- Qt/input: Do not send gui input release events until there was at least one button press by @Megamouse in #18447
- cellDmuxPamf (+adec, atracXdec): process PPU state after lv2 syscalls by @capriots in #18450
- logs: Fix global log levels during boot and after changing log level settings by @Megamouse in #18445
- CMake build fixes and improvements by @oltolm in #18302
- rsx: Make resolution scaling a surface-local parameter [1 of 2] by @kd-11 in #18453
- SPU LLVM: Basic Loop Iteration Prediction Detection by @elad335 in #18395
- cellDmuxPamf: fix freezing FMVs in White Knight Chronicles II by @capriots in #18456
- Make performance overlays use window space by @BehroozRezvani in #18419
- RPCS3: Notify RAM shortage, Log current and peak RAM usage by @elad335 in #18103
- SaveStates: Fix restart after saving by @elad335 in #18459
- rsx: Make resolution scaling a dynamic setting [2 of 2] by @kd-11 in #18461
- Build fixes by @oltolm in #18460
- sysinfo: Implement RAM Usage stats for Linux by @AniLeo in #18473
- Qt: add recording settings dialog by @Megamouse in #18472
- overlays: show latching message for fatal errors by @Megamouse in #18480
- Update dependencies by @Megamouse in #18451
- steam: disable steam input for shortcuts by @Megamouse in #18427
- Qt: add some sorting options to the screenshot manager by @Megamouse in #18483
- Qt: hide log frame by default by @Megamouse in #18477
- Fix: Add missing include for MSVC compatibility by @kayforbe in #18486
- SPU Analyzer: Acknowledge unknown targets by @elad335 in #18487
- rsx/shaders: Fix texture flags lookup when MSAA is enabled by @kd-11 in #18489
- sys_fs: Implement ENOTDIR by @elad335 in #18488
- Fixes PS button wrong input path check by @BehroozRezvani in #18494
- SPU LLVM: Fix register updates in second block of Reduced Loop by @elad335 in #18500
- SPU LLVM: Remove debug code by @elad335 in #18503
- fix PPU modules compilation for PPU Debug option by @oltolm in #18508
- game_list_table: Allow reordering game list columns by @Vishrut2403 in #18492
- Bump SDL to 3.4.4 by @sanjay900 in #18505
- Update submodules by @Megamouse in #18516
- Fix SPRX Loader segfault on Apple ARM64 by excluding MAP_JIT from memory mapping regions by @Drustburn in #18425
- cellDmux implementation by @capriots in #18298
- rsx: Allow negative src and dst pitch in nv0039 by @kd-11 in #18519
- rsx: Implement unwrapping cubemaps with mipchains by @kd-11 in #18522
- vk: Fix more data violations when using VK_VALIDATION_VALIDATE_SYNC=1 by @kd-11 in #18526
- SPU: Remove RCHCNT loop handling of SPU_WrOutMbox by @AniLeo in #18529
- ISO: optimize some file reads by @Megamouse in #18511
- Update Linux docker to 1.11 by @Megamouse in #18533
- Include <pthread.h> for pthread_self by @dblsaiko in #18535
- Qt: Show error if any package is corrupt before installation by @Megamouse in #18538
- CPUThread: fix ASAN use-after-free by @oltolm in #18541
- ppu: Enable vector NaN fixup by default by @AniLeo in #18543
- rsx: Improve handling of misaligned I/O by @kd-11 in #18545
- fix LLVM assert in use_begin by @oltolm in #18520
- Add support to encrypted ISO by @digant73 in #18498
- Fix two more ASan shutdown bugs by @oltolm in #18552
- sysinfo.cpp: Replaced PEB read with ntdll's RtlGetVersion by @l00sy4 in #18554
- gui: Group CPU accuracy settings together by @AniLeo in #18548
- ISO: Add metadata cache to speed up game list scanning by @Vishrut2403 in #18546
- sysinfo.cpp: Remove registry helpers by @l00sy4 in #18557
- Add 3D screen size setting by @Megamouse in #18531
- Thread.cpp: Added stack trace and register logging to exception filter by @l00sy4 in #18564
- input: fix mouse+kb combos by @Megamouse in #18565
- GUI/ISO: prefer custom movie over iso movie by @Megamouse in #18566
- Fix some low hanging fruit warnings by @Megamouse in #18572
- Opt out of Game Mode on macOS due to throttling by @schm1dtmac in #18576
- Fix disk usage check, update submodules by @Megamouse in #18578
- Add config database by @Megamouse in #18568
- Qt/input: fix mouse button names by @Megamouse in #18583
- [macOS] Early update to MoltenVK 1.4.2 by building from source by @schm1dtmac in #18584
- sys_fs: Reimplement path analysis by @elad335 in #18580
- Check for unknown keys during config validation by @Megamouse in #18588
- fix wrong folder creation in cellHddGameCheck by @digant73 in #18589
- Qt: fix regular boot without database config by @Megamouse in #18596
- cmake: do not disable "WOLFSSL_HARDEN" and fix build with latest WolfSSL by @oltolm in #18559
- Allow to skip optional packages installation by @digant73 in #18582
- Loader: try to retrieve database config if not booted through the UI by @Megamouse in #18597
- Qt: Allow to compare configurations in gamelist context menu by @Megamouse in #18603
- Fix region range check on ISO file by @digant73 in #18604
- Improve Mac Translation download by @qurious-pixel in #18598
- Qt: make emu_settings_type cfg_location dynamic by @Megamouse in #18605
- SPULLVM: Fix unused variable warnings by @Megamouse in #18573
- Add recursive scan support by @digant73 in #18587
- Add missing mapping between the config object and the ui interface by @digant73 in #18612
- Enhance FAudio backend error handling and initialization processes by @rustybusgaming in #18614
- sys_fs: Fix O_CREATE and O_TRUNC for BDVD by @elad335 in #18615
- SPU LLVM: Fix RCHCNT write channel looping by @elad335 in #18581
- Add ISO integrity check by @digant73 in #18555
- Clans: PPU thread sleeping while making API calls by @ZephyrCodesStuff in #18621
- rsx: Fix morton swizzle handling on wide texel formats by @kd-11 in #18627
- Add clickable PR links in update changelog by @Kravickas in #18465
- Fix race condition in memory_decommit/memory_reset on Apple ARM64 by @Drustburn in #18423
- sys_fs: Fix checks for flash device aliases by @clienthax in #18630
- sys_spu: Fix sys_isolated_spu_create by @elad335 in #18629
- cellVdec: reimplement cellVdecQueryAttr() by @capriots in #18631
- cellVdec: fixup by @capriots in #18633
- cellVdec: another fixup by @capriots in #18635
- RSX Debugger: populate Captured Draw Calls list by @score3229 in #18643
- RSX: workaround for color/depth aliasing heurestic edge case failures by @score3229 in #18644
- Don't use Qt event loop in headless mode by @Megamouse in #18645
- USB: fix passthrough of bulk endpoints on Linux by @LucaSilva-r in #18636
- Qt: fix memory leak in confg_database by @Megamouse in #18647
- Update 7zip to 26.01 by @Megamouse in #18649
- CI: Fix remaining Actions warning by @shinra-electric in #18652
- Add support to play from a BD Drive (currently only on Windows) by @digant73 in #18648
- [macOS] Revert #18423 due to reported crashes by @schm1dtmac in #18656
- Avoid to open a virtual drive if no content is present by @digant73 in #18659
- Fix use of database config when booting from the UI without a title_id by @Megamouse in #18660
- vk: Rework data heaps and revise our descriptor binding model by @kd-11 in #18642
- Qt: Add timeouts and abort logic to downloader by @Megamouse in #18663
- [macOS] Build MVK against Xcode 16.2 by @schm1dtmac in #18666
- Win: Update ffmpeg to 8.1 by @Megamouse in #18517
- Remove vm_ref.h by @elad335 in #18675
- game_list: Add multi-game collection support for ISO format discs by @Vishrut2403 in #18571
- [macOS] Update MoltenVK and restore Game Mode support by @schm1dtmac in #18671
- Restore 0.85 compatibility for PS3 Binary Decryption by @clienthax in #18674
- Move multi-game ISO parsing code path to proper location by @xperia64 in #18679
- Update Submodules by @Megamouse in #18681
- [macOS]: fix homebrew rpath issues by @Markos-Th09 in #18662
- game_list: Fix ISO cache bypass in is_from_yml branch for multi-game ISOs by @Vishrut2403 in #18683
- rsx: Interepreter improvements by @kd-11 in #18676
- Some fixes by @digant73 in #18686
- USB: Stop sending USB replies after prx_unload by @Florin9doi in #17934
- game_list: Fix icon display for multi-game collection ISOs by @Vishrut2403 in #18693
- Qt: Disambiguate offset direction labels from DPad/Stick labels by @arshkumarsingh in #18695
- I added the hover effect to the QComboBox in my theme that I had forgotten about by @GustavoGraziano in #18689
- Add custom anaglyph settings by @Megamouse in #18574
- Add option to derive MAC from PSID by @RipleyTom in #18700
- Apple Silicon: consolidate JIT W^X handling with RAII guards by @AurisDSP in #18701
- [macOS] [Hotfix] Revert PPUThread changes from #18701 by @schm1dtmac in #18708
- USIO: Implemented BanaPassport (バナパスポート) card reader emulation by @brian218 in #18690
- Qt: include territory in language menu labels by @arshkumarsingh in #18704
- ISO: Fix missing read of remaining chunk of data on next extent, if present by @digant73 in #18706
- gui: Remove close button from Game List dock widget by @thephilcoulson in #18717
- cellMusic: Fix shuffle always producing the same order by @thephilcoulson in #18716
- [System] Fix restart-loops upon restart-then-quit by @schm1dtmac in #18723
- rsx: Fix swapped width/height in NV309E_SET_FORMAT decoder by @thephilcoulson in #18722
- cellDmux: fix state check by @capriots in #18728
- [TESTERS NEEDED] rsx: Implement emulated Z comparisons for EQUAL function by @kd-11 in #18712
- SPU LLVM: Workaround bad LLVM codegen for FCGT on AARCH64 by @Whatcookie in #18730
- SPU: Fix CPU usage of spu_channel on BE configuration by @elad335 in #18735
- SPU: More UB fixes by @elad335 in #18736
- I made some improvements to my theme to make it better by @GustavoGraziano in #18732
- Harden bitset access by @Megamouse in #18734
- input: optimize and improve keyboard input by @Megamouse in #18741
- Visual improvements to Windows 11 Themes by @GustavoGraziano in #18745
- SPU LLVM: Inline reading/writing the decrementer for ARM too by @Whatcookie in #18751
- Restore .DirIcon by @qurious-pixel in #18753
- Fix ethernet addr in offline mode by @RipleyTom in #18756
- Update dependencies by @Megamouse in #18739
- Do not append install dir for content type theme PKGs by @Radu13 in #18765
- SPU LLVM: Optimize SPU multiplies for ARM by @Whatcookie in #18763
- Update libusb by @Megamouse in #18762
- RawSPU: Implement 16-bit and 8-bit read MMIO by @elad335 in #18770
- Fix USIO log spam by @Megamouse in #18771
- Fix named_thread_group constructor by @Megamouse in #18775
- Fix non-numerical numpad keys input binding by @Windsurf7 in #18761
- Update windows runners to visual studio 2026 by @Megamouse in #18783
- PPU/SPU LLVM: Use native ARM shuffles in recompilers instead of emulating x86 pshufb by @Whatcookie in #18056
- RawSPU: bound ELF loads; PPUInterpreter: fix modulo 127->128 by @arshkumarsingh in #18797
- Fix triple ret interpreter bug for ARM64 by @Whatcookie in #18782
- Revert "SPU LLVM: Remove dead interpreter ret fallback" by @Whatcookie in #18805
- Update ffmpeg to 8.1.1 by @Megamouse in #18807
- CLI: Allow headless installs by @Megamouse in #18719
- Update OpenCv to 4.13.0 by @Megamouse in #18809
- Implement fake ps move external device emulation by @Megamouse in #17219
- Fix exit after headless installation by @Megamouse in #18810
- Fix some gcc warnings by @Megamouse in #18811
- Fix custom music list playback by @Megamouse in #18812
- PPU Analyser: Fix possible infinite loop by @elad335 in #18814
- cellMusic: fix occasional deadlock during auto-play in playlist mode by @Megamouse in #18815
- Fix some typos by @Megamouse in #18825
- Force a supported video renderer if the selected renderer is unsupported by @Megamouse in #18823
- rpcs3_version: Bump to 0.0.41 by @AniLeo in #18829
Full Changelog: v0.0.40...v0.0.41