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
- Win32/vm_native.cpp: Improve sparse memory file mapping robustness by @elad335 in #17547
- Config: Implement 128-bit setting entry type by @elad335 in #17548
- Update submodules by @Megamouse in #17550
- Generate random OpenPSID upon config initalisation by @derole1 in #17543
- Change sceNpManagerGetMyLanguages languages priority by @RipleyTom in #17551
- Fix sceNpManagerGetAccountRegion's returned language by @RipleyTom in #17554
- Multi-Slot Savestates by @elad335 in #16611
- Update Qt to 6.10.0 by @Megamouse in #17567
- Qt/Input: Adjust pad settings dialog based on pad capabilities by @Megamouse in #17540
- vk: Resource binding model rewrites [part 2 of 2] by @kd-11 in #17427
- rsx: Fix user clip plane encode/decode by @kd-11 in #17580
- SaveStates: Fix Gem Thread Reboot by @elad335 in #17574
- ffmpeg: update cellAtracXdec code to ffmpeg 7 by @Megamouse in #17585
- SaveStates: Improve SPU locking success rates by @elad335 in #17588
- [Build] Explicit Triple with LLVM 21.1.0 by @Niram7777 in #17401
- Qt: Allow to clear keyboard shortcuts in dialog by @Megamouse in #17590
- overlays: allow to update messages by id instead of text by @Megamouse in #17591
- vk: Make more bindable objects uniquely identifiable by @kd-11 in #17594
- vk: Do not access async scheduler if not explicitly initialized by @kd-11 in #17596
- SaveState Manager Fixes by @elad335 in #17606
- Relax SceNpCommunicationId validation by @RipleyTom in #17608
- Fix build with Qt 6.10 by @engdyn in #17589
- Improve sceNpSignalingGetLocalNetInfo by @RipleyTom in #17609
- More communication id validation changes by @RipleyTom in #17610
- vm: Deallocate memory early, check no PS3 memory leaks by @elad335 in #17612
- vk: Make best-effort attempt to utilize the low-latency pool by @kd-11 in #17613
- SaveStates/SPU-LLVM: Fix SPU Access Violations on load by @elad335 in #17617
- vk: Filter out re-bar usage from memory pressure watchdog by @kd-11 in #17620
- Update OpenAL-soft submodule by @qurious-pixel in #17552
- Update linux docker image to v.1.7 by @Megamouse in #17568
- Add ability to record/screenshot with overlays by @Megamouse in #16803
- Qt: fix TSX warning box style by @Megamouse in #17639
- CI: Bump LLVM version on macOS to v21 by @shinra-electric in #17630
- cellGame: Fix cellHddGameCheck dataVersion parameter by @elad335 in #17645
- sys_usbd: Emulate Kamen Rider Summonride Ride Gate by @deReeperJosh in #17605
- Update SDL to 3.2.26 by @Megamouse in #17647
- input: always apply stick multiplier when no analog limiter button is set by @Megamouse in #17648
- Remove std::strcpy by @elad335 in #17656
- [Hotfix] PSF.cpp: Fixup by @elad335 in #17657
- cmake: simplify code by @oltolm in #17655
- System.cpp: Check if the original EBOOT.BIN is valid for disc game updates by @elad335 in #17661
- sys_usbd: fix id/type combo for Kamen Rider Display by @deReeperJosh in #17662
- rsx: Implement buffer notification invalidation cascade and shader attribute pixel_center_integer by @kd-11 in #17666
- Update submodules by @Megamouse in #17668
- input: change default squircle value to 4000 by @Megamouse in #17669
- CI: Download Translations by @FlexBy420 in #17619
- Synced Skylander variant IDs with values from Dolphin for #13315 by @robotics13 in #17658
- gl: Implement polygon render modes by @kd-11 in #17672
- 3rd Party: Bump MoltenVK to v1.4.0 by @shinra-electric in #17642
- sys_usbd: Small tidyups by @deReeperJosh in #17671
- SPU: Fix race in PUTLLC with unchanged data by @elad335 in #17675
- rsx/vk: Optimize image uploads for layered resources [1 of 2] by @kd-11 in #17676
- rsx: Fix shader interpreter by @kd-11 in #17678
- Savestates/TAR: Extract files asynchronously, Improve savestate load performance by @elad335 in #17680
- ZSTD: Fixup threads terminations by @elad335 in #17685
- rsx: Fix an oops causing DEVICE_LOST by @kd-11 in #17686
- Overlays/SaveStates: Add multi-slot support to controller menu by @elad335 in #17688
- PPU: Fix VCFUX accuracy on x64 by @elad335 in #17690
- sys_ppu_thread: Fix u64 stack size argument by @elad335 in #17692
- cheats: fix cheat type on apply by @Megamouse in #17693
- overlays: take screenshot after exiting the home menu by @Megamouse in #17696
- rsx: fix some warnings by @Megamouse in #17687
- [Mac Arm64] Use runner ccache by @qurious-pixel in #17698
- utils: replace hex_to_u64 with std::from_chars by @oltolm in #17695
- Qt: add button to remove gamepad config by @Megamouse in #17697
- SPU: Use CMPXCHG16B for atomic store if possible, improving stability by @elad335 in #17694
- asm.hpp: replace custom functions with C++20 functions by @oltolm in #17700
- SPUCommonRecompiler.cpp: use std::lexicographical_compare_three_way by @oltolm in #17705
- Fix some warnings by @Megamouse in #17703
- Core: Remove Intel-TSX ISA Extension based code by @elad335 in #17702
- Overlays: improve font loading and add more chinese fallback fonts by @Megamouse in #17699
- SPU/vm: Effortless Optimizations by @elad335 in #17708
- [POC] PPU Profiler by @elad335 in #17714
- [BSD] Fix noreturn errors by @qurious-pixel in #17717
- rsx: Implement GPU deswizzle for smaller texel widths by @kd-11 in #17720
- Add word alignment check to ppu_register_function_at by @FeTetra in #17718
- rsx: Rework GPU deswizzle kernel to prevent hangs by @kd-11 in #17731
- rsx/gl: Use naturally aligned IO buffers by @kd-11 in #17725
- Fix Clang build and other small fixes by @oltolm in #17736
- sys_fs: Remove PPU sleep hacks by @elad335 in #17740
- SPU Analyzer: Fix jumptable analysis for SPU Block Mega by @elad335 in #17742
- rsx/shaders: Implement a basic CFG and use it for FP decompilation by @kd-11 in #17743
- rsx: Fix saw-tooth artifacts when using GPU deswizzle for small texel widths by @kd-11 in #17748
- vk: Allow buffer creation in rebar memory to fail gracefully by @kd-11 in #17751
- MacOs: Hopefully fixes build by @elad335 in #17755
- Add an entry on Log panel's contextual menu to show the main disk usa… by @digant73 in #17715
- Fixup ::narrow by @elad335 in #17756
- rsx/cfg: Check for end flag before handling any instruction including NOP by @kd-11 in #17760
- Fix possible ambiguity of utils::bless by @elad335 in #17757
- Free previous pointer after reallocating memory by @rcaridade145 in #17763
- rsx: Clean up aligned realloc implementation and add UTs by @kd-11 in #17764
- SPU LLVM: Support PUTLLC16 in CellSpurs JobChain management by @elad335 in #17733
- Emu/UX: Automatic Cache Precompilation for PKG instal by @elad335 in #17768
- SPU LLVM (Mega): Fix quarter of missing jumptable discoveries by @elad335 in #17767
- SPU/config: Make SPU Mega block size the default by @elad335 in #17769
- SPU Analyzer: Ignore large switch state for constant propagation pass by @elad335 in #17771
- Qt/Overlays: Add sound effect manager by @Megamouse in #17716
- Update dependencies by @Megamouse in #17777
- SPU: Tame PUTLLC16 by @elad335 in #17781
- Add notes for VS 2026 to BUILDING.md by @Megamouse in #17778
- Qt: save spinbox values with fmt::format by @Megamouse in #17789
- Qt: Update header texts and actions when language changes by @Megamouse in #17779
- rsx: rsx capture fixes by @Megamouse in #17785
- Qt: fix game list table multiselection by @Megamouse in #17793
- Qt: update main window elements on language change by @Megamouse in #17795
- YoRHa: Fix the height of QSpinBox by @AniLeo in #17788
- Qt: fix update note visiblity on linux/macOs by @Megamouse in #17801
- Qt: Relax game_list deselection checks by @Megamouse in #17799
- Update submodules by @Megamouse in #17802
- rsx/common - work around macos posix_memalign quirks by @kd-11 in #17800
- hidapi: switch to official libusb remote by @Megamouse in #17803
- cellPad: fix pad mode setters by @Megamouse in #17780
- Qt: fix game list refresh order on language change by @Megamouse in #17806
- Update Qt for macOs to 6.10.1 by @Megamouse in #17807
- [Testers Needed] Make RSX FIFO Atomic fetching default by @elad335 in #17810
- [macOS] Add OpenCV to macOS builds by @schm1dtmac in #17815
- (macOS) Support loading VK ICDs (in preparation for KosmicKrisp) by @schm1dtmac in #17735
- UI: remove unnecessary QOverloads by @oltolm in #17827
- Check available and required size when installing a package by @digant73 in #17829
- RPCN v1.5.0 by @RipleyTom in #17825
- bit_set.h: forward declare fmt_unveil by @oltolm in #17836
- fmt: add more string_view versions of string functions by @Megamouse in #17839
- overlays/macOs: add some fallback fonts for cyrillic by @Megamouse in #17842
- rsx/cfg/fp: Rewrite fragment program decompiler dependency tracking by @kd-11 in #17837
- cellGem: implement world coordinate orientation in cellGemGetState by @Megamouse in #17849
- Fix some recent warnings by @Megamouse in #17857
- rsx/cfg: Fix edge case where an empty block is defined by @kd-11 in #17858
- cellGem: Fix YUV conversions, implement gain, averaging and basic outlier detection by @Megamouse in #17859
- vk: Ignore memory pressure handling when allocating core data in the ReBAR heap by @kd-11 in #17871
- cellGem: improve bayer demosaicing by @Megamouse in #17873
- Fix RPCN replies ordering by @RipleyTom in #17878
- Prevent atomic collisions on cache line boundary by @elad335 in #17752
- Util/sync.h: Fix iterator invalidation in futex emulation by @elad335 in #17880
- arm64: Make sure context storage is 16-byte aligned at a low offset to not get address truncation during calculations. by @kd-11 in #17874
- Revert "Fix hypervisor context memory placement" by @AniLeo in #17884
- [macOS] Update to MVK 1.4.1 with private API support (fixes panics, improves feature support) by @schm1dtmac in #17877
- SPU Analyzer: Fix missing jump table entries in Mega mode by @elad335 in #17870
- rsx/cfg: Increase valid register file size to 768 bytes per pixel pipe by @kd-11 in #17889
- [macOS] Switch macOS atomics to futexes, bump min ver to 14.4 by @schm1dtmac in #17888
- Revert "SPU/config: Make SPU LLVM Mega block size default" by @AniLeo in #17866
- sys_fs: Optimize split files handling by @elad335 in #17883
- [macOS] Use native os_sync calls for futexes by @schm1dtmac in #17893
- More accurate sceNpMatching2AbortRequest by @RipleyTom in #17896
- Build LLVM 22.x 8462cff fix removed/reprecated by @Niram7777 in #17786
- [macOS] General cleanup/fixups for CI and VK portability by @schm1dtmac in #17900
- Clans: Emulator and server implementation by @ZephyrCodesStuff in #17835
- [macOS] Force max pthread priority, fix throttling by @schm1dtmac in #17905
- Clans: fix graphical bug displaying JID instead of username by @ZephyrCodesStuff in #17906
- overlays: log font lookup info on exception by @Megamouse in #17903
- sceNpClans: cleanup by @Megamouse in #17908
- Clean UsbTransfer state by @RipleyTom in #17918
- [macOS] Don’t compile in GL-related code or link GLEW by @schm1dtmac in #17921
- Qt/cheats: don't accept imported cheats unless valid by @Megamouse in #17928
- Improve Manage menu by @digant73 in #17919
- fix lld warning LNK4217 by @oltolm in #17910
- Fix lld warning LNK4286 by @Megamouse in #17932
- USB: Update Kamen Rider Summonride virtual portal by @Florin9doi in #17916
- rsx: Shader codegen optimizations by @kd-11 in #17862
- Qt: Allow user to precompile caches on demand when installing package… by @Megamouse in #17809
- RPCN menu changes. by @Ninetime in #17936
- Remove call to glxewInit by @RipleyTom in #17929
- cellScreenshot: update filenames by @Megamouse in #17830
- improve menus hierarchy by @digant73 in #17941
- Improve Utilities and Log menus by @digant73 in #17944
- Build Freebsd update compiler/LLVM devel (22) by @Niram7777 in #17899
- USB: Added support for G27 compatibility modes by @Florin9doi in #17926
- rpcs3_version: Bump to 0.0.39 by @AniLeo in #17946
Full Changelog: v0.0.38...v0.0.39