
2.4.0 / 30-06-2025
PCSX2
Accuracy
Performance
Features
PCSX2 is an open-source emulator using a combination of MIPS CPU Interpreters, Recompilers and a Virtual Machine through plugins to manage hardware states and PS2 system memory. It has been running for more than 10 years and can run over 2000 titles with many at full speed. 64-bit versions are being developed and tested, please check here.
It's an extended version of PCSX2 focusing on reversing and modding applications.
It's a custom frontend for PCSX2 which removes the tedious task of tinkering the settings for each game or creating complicated setups for each.
This plugin uses sockets instead of Tap or WinPcap, which the author hopes will eliminate most configuration issues users face when setting up.
--
Windows: 8.1 (32-bit or 64-bit)
Linux: Ubuntu 18.04/Debian+, Arch or other distro, GNU/Linux (32-bit or 64-bit)
Mac: Not Updated in over 5 years
GPU: DirectX 10+ or OpenGL 3.x+
Most Recent Changes
--2.4.0--
No official notice, see below for general change log
GS/HW: Backport some tex is fb shaders to dx and opengl. (lightningterror)
GS/DX12: Fix command list not flushing when in surfaceless mode. (refractionpcsx2)
GitHub: Make authors disclose whether they used AI or not. (Ty)
Core:macOS: Initialize all address variables passed to vm_map (TellowKrinkle)
CMake: Support more package configurations to import with a Devel build (TheLastRar)
GS/HW: Clean up HandleTextureHazards. (lightningterror)
GS/HW: Fix some regressions relating to overlapping targets and valid rect + rgb (refractionpcsx2)
GS/HW: Correct valid area for depth when taking alpha from rt. Add Tex in RT to Area 51 (refractionpcsx2)
GS/HW: Fix up offset Z behaviour + work even when RT isn't offset. (refractionpcsx2)
Formatting: Clean up some if spaces (refractionpcsx2)
GS/GL: Check for texture creation hazard for fb copy. (lightningterror)
GS/DX11: Merge CloneTexture with CopyRect. (lightningterror)
GS/DX: DX requires a copy to sample the depth buffer. (lightningterror)
GS/HW: Avoid target height mistakes on shuffles + Update new src == rt (refractionpcsx2)
GS/TC: Delete dirty rt's in src lookup + usert in rt on 3 draw old rt's (refractionpcsx2)
[ci skip] PAD: Update to latest controller database. (PCSX2 Bot)
CI: Fix script building universal dependencies on macOS (SquishyLeaf)
GS/HW: Allow partial depth copy on dx12. (lightningterror)
DebugTools: Fix uninitialized variable in breakpoint code (chaoticgd)
debugger: fix thread view row lookup (Ziemas)
GS/TC: Don't allow Tex in RT 32bit target use as 16bit if not a shuffle (refractionpcsx2)
GS/HW: Improve shuffle pre-detection (refractionpcsx2)
GS/TC: only kill old misaligned targets on preload from previous frames. (refractionpcsx2)
GameDB: Add missing variants + fixes (RedDevilus)
GS/HW: Add sanity/hazard checks for DATE and Texture barriers. (lightningterror)
GSClut: Get rid of m_read.dirty assert in GetAlphaMinMax32. (lightningterror)
docs: update in order to redirect from the GH wiki to our website (GovanifY)
GameDB: Add listings for PSX Update Disc. (Imre Eilertsen)
GS/HW: Improve texture shuffle/copy detection (refractionpcsx2)
GS/TC: On clear delete overlapping depth targets (refractionpcsx2)
GameDB: Various Fixes Part 4 (one with cheese) (JordanTheToaster)
OSD: Add VSync to the OSD (JordanTheToaster)
github-workflows: Fix a broken link. (Mrlinkwii)
GameDB: Add memcard filters for some NTSC-J titles. (#12708) (JohnSmith774)
OSD: Fix performance overlay overwriting dump stats when shifted left (TheTechnician27)
[ci skip] Qt: Update Base Translation. (PCSX2 Bot)
FSUI: Fix save state duplicate entry (KamFretoZ)
[ci skip] Qt: Update Base Translation. (PCSX2 Bot)
GS/HW: Invalidate cleared area if overlapping existing dirty (refractionpcsx2)
[ci skip] PAD: Update to latest controller database. (PCSX2 Bot)
GS/HW: Restore old coverage after updating mip layers. (lightningterror)
GS/TC: Replace half right with Tex in RT, only update needed dirty (refractionpcsx2)
GameDB: Add Tex in RT to required games (refractionpcsx2)
GameDB: Add Tex in RT for Bard's Tale (refractionpcsx2)
GS/DX12: Fix HDR copy scissor area (refractionpcsx2)
CI: Fix a regression for flathub uploads (Ty)
MemoryCardFile: Fix memory card sorting on Linux (JordanTheToaster)
iR5900: Faster FTOI (TellowKrinkle)
Interpreter: Fix FTOI on negative numbers (TellowKrinkle)
[ci skip] Qt: Update Base Translation. (PCSX2 Bot)
GS/TC: Fine tune Frame buffer conversion. (lightningterror)
GS/GL: Add another hazard check, colclip hw. (lightningterror)
GS/HW: Add/adjust logs for failed texture creation. (lightningterror)
GameList: Fix region flag icons for non-English languages (chaoticgd)
GameList: Prevent "Invalid" entry type appearing in filter list (chaoticgd)
GameList: Clip flag and compatibility pixmaps to the available space (chaoticgd)
GS/HW: Read back 16bit target if read as 8H (refractionpcsx2)
GameDB: Add Tex in RT to Sand Grain Studios games (refractionpcsx2)
GS: Add column sizing to psm format information (refractionpcsx2)
GS/HW: Invalidate single columns on small writes when formats mismatch (refractionpcsx2)
UI: Standardize order of option groups (TheTechnician27)
GS/HW: Adjust SpriteNoGaps check for vertical strips (refractionpcsx2)
Debugger: Improve DockTabBar ownership workaround (chaoticgd)
[ci skip] Qt: Update Base Translation. (PCSX2 Bot)
GameDB: Fix half right issue with Xtreme Bowling (JordanTheToaster)
UI: Fix Discord Rich Presence not activating in FSUI (TheTechnician27)
GS: Store entire GS transfer state at TRXDIR write (refractionpcsx2)
GS: Bump GS Dump version and add transfer parameters to dump (refractionpcsx2)
Core: Bump savestate version. (lightningterror)
GS/TC: Fix inside target alignment check for ExactTarget lookup (refractionpcsx2)
GS/TC: Improve copying of dst matched data (refractionpcsx2)
GS/TC: Allow matching on source if TEX == RT (refractionpcsx2)
GS/TC: Simplify and improve P8 texture conversion inside target (refractionpcsx2)
GS/TC: Further matching parameters on preload and tex in rt (refractionpcsx2)
GS/HW: Fix up alpha blending checks (refractionpcsx2)
GS/TC: Correct valid area checks for target combining (refractionpcsx2)
GS/TC: Adopt valid rgb/alpha from preload merged targets (refractionpcsx2)
GS/HW: Adjust depth size on clear if overlapping by 1 pixel (refractionpcsx2)
GS/HW: Replace frame target if dirty data matches old format. (refractionpcsx2)
GS/TC: Don't allow Tex in RT 8bit textures from C24 (refractionpcsx2)
GS/HW: Create new targets on shuffles when no target found (refractionpcsx2)
GS/HW: Don't make new scaled targets on shuffles if source is downscaled (refractionpcsx2)
GS/TC: On RT->Z dst_match delete on format change if not a shuffle (refractionpcsx2)
Qt: Improve handling of DPI (TheLastRar)
Qt: Fix DPI icon scaling in various settings windows (TheLastRar)
QtUtils: Remove redundant method (TheLastRar)
Qt: Use `DevicePixelRatioChange` to detect DPR changes (TheLastRar)
[ci skip] PAD: Update to latest controller database. (PCSX2 Bot)
GS: Better handle hazards when dx12/vk device creation fails. (lightningterror)
[ci skip] Qt: Update Base Translation. (PCSX2 Bot)
GameDB: Remove SoftwareRendererFMVHack from Armored Core 2 (Berylskid)
GameDB: Re-add CRC to Death by Degrees (JordanTheToaster)
GS/HW: Clear matched target on HW Move (refractionpcsx2)
GS/CRC: Remove CRC for Simple 2000 Series Vol. 114, update GameDB Fixes (refractionpcsx2)
CI: Fix flatpak (RedDevilus)
Qt: Fix selected gamelist icons being wrong colour after theme switch (TheLastRar)
Qt: Add workaround for incorrectly tinted icons after theme switch (TheLastRar)
GS: Formatting (TellowKrinkle)
GS: Create texture dump directory if it doesn't exist (TellowKrinkle)
GS: Warn on texture replacement folder with wrong case (TellowKrinkle)
Debugger: Add include required for older versions of KDDockWidgets (chaoticgd)
Deps: Specify minimum version of KDDockWidgets (chaoticgd)
[ci skip] Qt: Update Base Translation. (PCSX2 Bot)
GSRunner: Use separate CPU thread (TellowKrinkle)
GSRunner: macOS support (TellowKrinkle)
MacOS: Better handle directories of non-bundle applications (TellowKrinkle)
Input: Fix crash when shutting down without initializing input (TellowKrinkle)
GSRunner: Fix surfaceless run on macOS (TellowKrinkle)
GSRunner: Add type to shutdown message code (Ty)
GS/HW: Add 16bit to 8bit conversion shader (refractionpcsx2)
GameDB: Update Harry Potter fixes. (refractionpcsx2)
GS/HW: Clean up target download formats (refractionpcsx2)
[ci skip] Qt: Update Base Translation. (PCSX2 Bot)
GameDB: Simple 2000 Vol 92 Fixes (JordanTheToaster)
GameDB: Add native scaling to Scooby-Doo! Unmasked (icup321)
AudioStream: Fix typo with default output latency (JordanTheToaster)
Tools: Small fix to gsrunner args. (TJnotJT)
GS/HW: Don't look up block offset targets on Exact target lookup (refractionpcsx2)
GS/HW: Fix bug in target preloading causing misaligned base addresses (refractionpcsx2)
GS: Add IsPageAlignedMasked to return an alignment mask (refractionpcsx2)
GS/HW: Allow conversion of colour to Z formats during HW move (refractionpcsx2)
GS/HW: Remove CRC hacks for Kunoichi and Sakura Wars (refractionpcsx2)
GS/HW: Correct block offset target usage (refractionpcsx2)
GS/TC: Improve rect block offset calculation for translation and invalidation (refractionpcsx2)
GS/HW: Improve shuffle detection robustness (refractionpcsx2)
GS/HW: Remove channel shuffle override from Namco CRC hack (refractionpcsx2)
Debugger: Update search results when we are _not_ going to remove them (Ty Lamontagne)
IopBios: truncate printf output if bigger than our buffer (GovanifY)
IopBios: allow %u string formatting in IOP kprintf (GovanifY)
[ci skip] PAD: Update to latest controller database. (PCSX2 Bot)
GS/HW: Allow RT in RT offset on Z buffer if FRAME is disabled (refractionpcsx2)
GS/TC: Remove old inside check from source lookup (refractionpcsx2)
GS/TC: Fix region for tex in rt depth (refractionpcsx2)
IopBios: do not overflow snprintf tmp buffer (GovanifY)
IopBios: remove clang deprecated carveout (GovanifY)
Qt: Fix Winconsistent-missing-override warning. (lightningterror)
GS/HW: Fix possible null reference causing a crash (refractionpcsx2)
GS/HW: Fix bug and improve inside target tracking on HW moves (refractionpcsx2)
Host: Move Batch/NoGUI mode check to Host (KamFretoZ)
BPM: Fix CTD when exiting BPM in No GUI mode (KamFretoZ)
GS/HW: Adjust which function gets used for clearing depth on perfect match (refractionpcsx2)
GSRunner: Fix broken compilation (JordanTheToaster)
[ci skip] Qt: Update Base Translation. (PCSX2 Bot)
CI: Fix flathub versioning on tagless commits (Ty)
[ci skip] Testing flathub versioning, please ignore (Ty)
[ci skip] PAD: Update to latest controller database. (PCSX2 Bot)
Debugger: Fix crash when breakpoint is hit before createMenuBar call (chaoticgd)
[ci skip] Qt: Update Base Translation. (PCSX2 Bot)
CI: Restore repository check in Flathub publish action (TheLastRar)
GS: Send all frames to capture, including skipped ones (TellowKrinkle)
GS/HW: Don't resize target if only writing to alpha when RGB is valid (refractionpcsx2)
GS/TC: Slight fix for rect translation with block offset (refractionpcsx2)
GS/TC: Don't enable Frame buffer conversion on PSMT8. (lightningterror)
GS/DX: Don't output color for datm/stencil date shaders. (lightningterror)
GS/HW: Improve Native Scaling detection + Include direct mem reads (refractionpcsx2)
[ci skip] Qt: Update Base Translation. (PCSX2 Bot)
Docs: Add missing third party license for KDBindings (chaoticgd)
GS/TC: Fix region area on new source interpreted for shuffle (refractionpcsx2)
GS/HW: Resize validity to draw size when most of target is covered (refractionpcsx2)
GitHub: Update bug report OS list (JordanTheToaster)
[ci skip] Github: Update app bug report OS list (JordanTheToaster)
GS: Min alpha for AA1 is 0, not 128 (TellowKrinkle)
GameDB: Various Fixes Part 5 (JordanTheToaster)
ImGuiOverlays: Minor OSD text changes (JordanTheToaster)
GS/HW: Purge Hitman Blood Money CRC (JordanTheToaster)
FSUI: Replace various icons with SVG files (TheLastRar)
Debugger: Don't check frame count in isAlive (Ziemas)
Fix invalid comparator in FullscreenUI game list sort (Kuan-Wei Chiu)
GameDB: Add memcardFilters to Armored Core: Last Raven NTSC-U SLUS-21338. (#12891) (twingofan)
GameDB: Xenosaga Episode III fixes (JordanTheToaster)
GS/TC: Fix CanTranslate rect BWs, disallow block inside target lookup (refractionpcsx2)
GS/HW: Fix dirty check on SWPrimRenderer check (refractionpcsx2)
[ci skip] Qt: Update Base Translation. (PCSX2 Bot)
GS: Treat Q == 0 in STQ as FLT_MIN (refractionpcsx2)
FSUI: Don't attempt to translate input profile names in game properties (TheLastRar)
GS/DX11: Make sure no SRVs are bound using the same texture before binding it to a RTV. (lightningterror)
GS/HW: Check if primid texture exists instead if it's a primid draw. (lightningterror)
GS: Silence 3rdparty vk_mem_alloc warnings. (lightningterror)
FullscreenUI: Fix -Wunused-variable warnings. (lightningterror)
IopBios: Fix -Wcompare warnings. (lightningterror)
FSUI: Centre disc/exe icon in game list selected preview (TheLastRar)
GS/DX11: Also check DrawMultiStretchRects copy for srv conflicts with rtv. (lightningterror)
FSUI: Improve layout scaling in games list selected preview (TheLastRar)
[ci skip] Qt: Update Base Translation. (PCSX2 Bot)
[ci skip] PAD: Update to latest controller database. (PCSX2 Bot)
GameDB: remove reference to old GSC (Mrlinkwii)
CI/Linux: Link ffmpeg for the appimage (JordanTheToaster)
GameDB: Stuart Little 3 loading screen fix (JordanTheToaster)
[ci skip] Qt: Update Base Translation. (PCSX2 Bot)
GS/GL: Add missing texture barrier count. (lightningterror)
GS/DX11: Cache shader resource and sampler. (lightningterror)
GS/DX11: Allow to pick whenever to update sr or ss, and some reordering. (lightningterror)
GameDB: The Golden Compass fixes (JordanTheToaster)
GS/HW: When expanding a target for display, expand valid area (refractionpcsx2)
GS/HW: Improve double half clear detection heuristics (refractionpcsx2)
GS/HW: Fix up offset Z behaviours and copy ranges (refractionpcsx2)
GS/TC: Improve heuristics for sequenced draws inside targets (refractionpcsx2)
GS/HW: Add ability to detect 16bit clears with 32bit draw (refractionpcsx2)
GameDB: Add fixes for MLB 11 and Toro to Kyuujitsu (refractionpcsx2)
GS/HW: Avoid single pixel overlap on lookups + improve buffer splitting (refractionpcsx2)
GameDB: The Mummy fixes (JordanTheToaster)
New translations pcsx2-qt_en.ts (Romanian) (Ty)
New translations pcsx2-qt_en.ts (French) (Ty)
New translations pcsx2-qt_en.ts (Spanish) (Ty)
New translations pcsx2-qt_en.ts (Afrikaans) (Ty)
New translations pcsx2-qt_en.ts (Arabic) (Ty)
New translations pcsx2-qt_en.ts (Bulgarian) (Ty)
New translations pcsx2-qt_en.ts (Catalan) (Ty)
New translations pcsx2-qt_en.ts (Czech) (Ty)
New translations pcsx2-qt_en.ts (Danish) (Ty)
New translations pcsx2-qt_en.ts (German) (Ty)
New translations pcsx2-qt_en.ts (Greek) (Ty)
New translations pcsx2-qt_en.ts (Finnish) (Ty)
New translations pcsx2-qt_en.ts (Hebrew) (Ty)
New translations pcsx2-qt_en.ts (Hungarian) (Ty)
New translations pcsx2-qt_en.ts (Italian) (Ty)
New translations pcsx2-qt_en.ts (Japanese) (Ty)
New translations pcsx2-qt_en.ts (Georgian) (Ty)
New translations pcsx2-qt_en.ts (Korean) (Ty)
New translations pcsx2-qt_en.ts (Lithuanian) (Ty)
New translations pcsx2-qt_en.ts (Dutch) (Ty)
New translations pcsx2-qt_en.ts (Norwegian) (Ty)
New translations pcsx2-qt_en.ts (Polish) (Ty)
New translations pcsx2-qt_en.ts (Portuguese) (Ty)
New translations pcsx2-qt_en.ts (Russian) (Ty)
New translations pcsx2-qt_en.ts (Serbian (Cyrillic)) (Ty)
New translations pcsx2-qt_en.ts (Swedish) (Ty)
New translations pcsx2-qt_en.ts (Turkish) (Ty)
New translations pcsx2-qt_en.ts (Ukrainian) (Ty)
New translations pcsx2-qt_en.ts (Chinese Simplified) (Ty)
New translations pcsx2-qt_en.ts (Chinese Traditional) (Ty)
New translations pcsx2-qt_en.ts (Vietnamese) (Ty)
New translations pcsx2-qt_en.ts (Portuguese, Brazilian) (Ty)
New translations pcsx2-qt_en.ts (Indonesian) (Ty)
New translations pcsx2-qt_en.ts (Persian) (Ty)
New translations pcsx2-qt_en.ts (Croatian) (Ty)
New translations pcsx2-qt_en.ts (Latvian) (Ty)
New translations pcsx2-qt_en.ts (Hindi) (Ty)
New translations pcsx2-qt_en.ts (Quechua) (Ty)
New translations pcsx2-qt_en.ts (Guarani) (Ty)
New translations pcsx2-qt_en.ts (Spanish, Latin America) (Ty)
[ci skip] Qt: Update Base Translation. (PCSX2 Bot)
GS/DX11: Backports the avoid framebuffer optimization from GL. (lightningterror)
GS/GL/DX11: Resolve potential rtv/srv conflict for primid date. (lightningterror)
GS/DX11: Adjust blend/depth stencil state. (lightningterror)
GS/GL: Don't re enable blend after SetupDATE. (lightningterror)
GS/HW: Fix -Wunused-variable warnings. (lightningterror)
GameDB: Shadow Hearts fixes (JordanTheToaster)
GameDB: Various fixes (JordanTheToaster)
--2.0.2--
This release includes a whole flurry of new features, perfomance improvements, bug fixes, which includes new debugger symbol importer, DEV9 fixes, new controller types such as Negcon, Jogcon. Densha de Go! Train Controller...
For complete list of changes, see the complete commit list.
- USB: Add new SCSI commands used by Zip100 (Florin9doi)
- USB: Sony MSAC- US1/PictureParadise emulation (Florin9doi)
- GSRunner: Correct CMake typo (TheLastRar)
- Build: Add ENABLE_GSRUNNER option to build GSRunner via CMake (TheLastRar)
- Qt: Update Base Translation (PCSX2 Bot)
- PAD: Update to latest controller database. (PCSX2 Bot)
- GS/Vulkan: Restore VK_EXT_attachment_feedback_loop_layout (JordanTheToaster)
- Deps: Update to SDL 2.30.6 (JordanTheToaster)
- USB: Merge generic HID Keyboard and Konami Beatmania (Florin9doi)
- USB: Remove unused HID data (Florin9doi)
- Add memcardFilter for SLES- 51953 and SLES- 52022 (Pyra Drake)
- 3rdparty/soundtouch: Bump to v2.3.3 (JordanTheToaster)
- GameDB: SMT Nocturne Fixes (JordanTheToaster)
- GS/TC: Adjust how we handle merging targets in PreloadTarget. (lightningterror)
- FSUI: Base Translation Update (KamFretoZ)
- OSD: More Translatable Strings (KamFretoZ)
- OSD: Icon Tweaks (KamFretoZ)
- OSD: Add InputRec/VideoCapture OSD Toggle (KamFretoZ)
- Code: Formatting (KamFretoZ)
- 3rdparty/rcheevos: Bump to v11.5.0 (JordanTheToaster)
- Debugger: Track remaining buffer size for snprintf to prevent fortify fail (Ty Lamontagne)
- Qt: Update Base Translation (PCSX2 Bot)
- workflows: Update sdl controller db script. (lightningterror)
- CI/Appimage: Use fuse3 compatible appimagetool (KamFretoZ)
- CI/Appimage: Drop gcc13 workaround (KamFretoZ)
- GameDB: Snow White and the 7 clever boys fixes (JordanTheToaster)
- GameDB : fix Test Drive Unlimited CRC for patch (Mrlinkwii)
- 3rdparty/imgui: Update to v1.91.0 (JordanTheToaster)
- Core: Replace 'Mac' with 'system' in page size error message (TheLastRar)
- Build: Set Page/Cache line sizes on Windows ARM (TheLastRar)
- gitignore: Fix ignore of bin- arm64 (TheLastRar)
- Build: Copy resources when building for ARM64 with MSBuild (TheLastRar)
- GameDB: Various fixes (JordanTheToaster)
- iR5900: fix heap- buffer- overflow in recompileNextInstruction (oltolm)
- Qt: Update Texture Filtering Description (seta- san)
- GS: Match data types in shaders to be the same when doing bitwise operations. (lightningterror)
- GSTextureCache: Extend Bilinear Upscale to dirty depth (JordanTheToaster)
- GameDB: ATV Offroad Fury 2 Fixes (JordanTheToaster)
- GameDB: add missing serial (Mrlinkwii)
- Qt: Update Base Translation (PCSX2 Bot)
- CMake: Added PACKAGE_MODE option (weirdbeardgame)
- Qt: Update Trilinear Filtering Description (seta- san)
- USB: Set actual_length value for Get HID descriptor (Florin9doi)
- PAD: Update to latest controller database. (PCSX2 Bot)
- Config: Use directory containing bundle as AppRoot on macOS. (squidbus)
- Qt: Update Base Translation (PCSX2 Bot)
- GS/HW: Rename blend second pass to blend multi pass. (lightningterror)
- GS/DX11: Fix feedback write 1 null pointer crash. (lightningterror)
- Qt: Update Base Translation (PCSX2 Bot)
- 3rdparty/imgui: General cleanup (JordanTheToaster)
- 3rdparty/imgui: Disable the nav menu (JordanTheToaster)
- USB: Fix Konami Capture Eye assert (Florin9doi)
- USB: Store unique disk images for MSD and PictureParadise (Florin9doi)
- FullscreenUI: Fix popup close resetting window scroll (KamFretoZ)
- ImGuiFullscreen: Fix choice popup selected drawing over border (KamFretoZ)
- ImGuiFullscreen: Display checkmark on right of choice dialog (KamFretoZ)
- Qt: Slightly increase game list title size (KamFretoZ)
- Qt: Fix a couple of theme switching glitches (KamFretoZ)
- Misc: Minor cleanup. (#11717) (Jordan)
- Qt: Update Base Translation (PCSX2 Bot)
- USB: Merge Singstar and Logitech mics in a single device with 2 subtypes (Florin9doi)
- USB: Audio support for EyeToy (Florin9doi)
- USB: Konami ON- SAY microphone emulation (Florin9doi)
- USB: Rename singstar to usb_mic (Florin9doi)
- Qt: Update Base Translation (PCSX2 Bot)
- DiscordRPC: Add game icon support. (KamFretoZ)
- Config: Allow specifying portable directory relative path in portable.txt (squidbus)
- GameDB: Correct two Phoenix Games title names (xperia64)
- GS/HW: Implement PABE(Per pixel alpha blending) on accumulation blend and add optimizations. (lightningterror)
- GameDB: Add multiple fixes (Farran666)
- Vk: Don't try to transition present source during present (TellowKrinkle)
- Image: Fix crash loading corrupted/invalid JPEG files (KamFretoZ)
- Qt: Work around theme switching bug (KamFretoZ)
- GSTextureVK: Fix download inside render pass (KamFretoZ)
- FileSystem: Correctly use lstat() on Linux (KamFretoZ)
- ImGuiFullscreen: Fix incorrect notification width (KamFretoZ)
- ImGuiManager: Fix stutter when multiple OSD messages lapse (KamFretoZ)
- Qt: Ensure fullscreen UI is stopped on exiting (KamFretoZ)
- Qt: Fix incorrect sort indicator on loading (KamFretoZ)
- Qt: Center type icon in game list (KamFretoZ)
- Qt: Fix a couple of instances of inconsistent sorting (KamFretoZ)
- USB: Fix CaptureEye corruption on dark images (Florin9doi)
- Qt: Set focus to Game Library for improved keyboard navigation (#11719) (deanff)
- PAD: Update to latest controller database. (PCSX2 Bot)
- Big Picture: Remove ability to make per- game controls (RedPanda4552)
- GS/HW: Further expand blend multipass. (lightningterror)
- Debugger: Remove the Avast demangler (chaoticgd)
- 3rdparty: Add CCC v2.1 (chaoticgd)
- Debugger: Replace SymbolMap class with new SymbolGuardian class (chaoticgd)
- Debugger: Add GNU demangler (chaoticgd)
- Debugger: Add symbol tree widgets for functions and variables (chaoticgd)
- GS/HW: Add afix to alphas log. (lightningterror)
- DebugTools: Fix iterator invalidation bug in IopBios.cpp (chaoticgd)
- Qt: Update Base Translation (PCSX2 Bot)
- Misc: Minor text and settings changes (#11751) (Jordan)
- DebugTools: Fix some compiler warnings (chaoticgd)
- UI: Enable "System" and toolbar savestate options in OSDSYS (Ty Lamontagne)
- USB: Add support for Type 2 DenshaCon (Joe Stringer)
- USB: Add support for Shinkansen DenshaCon (Joe Stringer)
- USB: Add support for Ryojouhen DenshaCon (Joe Stringer)
- Settings: Add DenshaCon bindings UI (Joe Stringer)
- USB: Add passthrough support to DenshaCon (Joe Stringer)
- Qt: Update Base Translation (PCSX2 Bot)
- Debugger: Bring back the expression parser (chaoticgd)
- FileSystem: Fix handling of symlinks (KamFretoZ)
- Qt: Update Base Translation (PCSX2 Bot)
- Deps: Update to SDL 2.30.7 (JordanTheToaster)
- Translation: Remove excess double quote (#11777) (KamFretoZ)
- Qt: Update Base Translation (PCSX2 Bot)
- FSUI: Move Texture Preloading to Advanced (KamFretoZ)
- PAD: Update to latest controller database. (PCSX2 Bot)
- Flipped the order of "SaveStateAndSelectNextSlot" to "SelectNextSlotAndSaveState" (smasimar@gmail.com)
- Added "SaveStateAndSelectNextSlot" hotkey for alternative save slot cycling functionality. (smasimar@gmail.com)
- Config: Prevent pad settings lingering in game properties blocking profiles (RedPanda4552)
- Bump peter- evans/create- pull- request from 6 to 7 in the ci- deps group (dependabot[bot])
- Qt: Update Base Translation (PCSX2 Bot)
- CMake: Install translations in PACKAGE MODE (Nenderus)
- Config: Set `{ntsc,pal}FrameRate` bounds to 10- 300 Hz (Martino Fontana)
- Achievements: Reset client state on system reset (Ty Lamontagne)
- ExpressionParser: Add missing include in header (Ziemas)
- 3rdparty/ffmpeg: Bump headers to version 7.0.2 (JordanTheToaster)
- UI: Update mipmapping help description (OctopusButtons)
- DiscordRPC: Further improve icon url call (KamFretoZ)
- Qt: Make Settings List Word Wrapped (KamFretoZ)
- Common: Fix Recursive CreateDirectoryPath() on Windows (TheLastRar)
- GameDB: Add Skip MPEG Hack to Never7 (Farran666)
- Qt: Update Base Translation (PCSX2 Bot)
- GS/HW: Reduce sw/hdr colclip in more cases. (lightningterror)
- OSD: Add GPU Info (#11808) (KamFretoZ)
- OSD: Rename various fields (JordanTheToaster)
- Debugger: Make check box widgets in the symbol tree more responsive (chaoticgd)
- Debugger: Prevent flicker when resetting symbol tree node children (chaoticgd)
- GameDB: Various fixes (JordanTheToaster)
- GS/HW: Fix/cleanup pabe optimization condition. (lightningterror)
- gh: update the feature request template labels (Ty)
- PAD: Update to latest controller database. (PCSX2 Bot)
- OSD: Improve main window stat spacing (JordanTheToaster)
- GameDB: Pro Race Driver fixes (Pyra Drake)
- Qt: Update Base Translation (PCSX2 Bot)
- microvu: fix ASAN container- overflow in mVUsetupRange (oltolm)
- microVU: fix block clearing regression (Ty Lamontagne)
- FullscreenUI: Remove unused function. (lightningterror)
- Qt: Update Base Translation (PCSX2 Bot)
- DebugInterface: Try to show the kernel memory mappings, again (Ty Lamontagne)
- DebugInterface: Fix formatting (Ty Lamontagne)
- GS/HW: Merge blend ad a mask separate conditions in to one. (lightningterror)
- GS: Update lottes crt shader. (Stuart Kenny)
- Qt: Fix keyboard SHIFT for non- alpha characters (Joe Wagner)
- CDVD: Added cdvdTrack, cdvdTrackIndex (weirdbeardgame)
- CDVD: 0 index into tracks array (weirdbeardgame)
- Qt: Add a permission error dialog when converting memorycards in a R/O directory (Matthew)
- PAD: Update to latest controller database. (PCSX2 Bot)
- Qt: Update Base Translation (PCSX2 Bot)
- GS/HW: Make sure it's not a channel shuffle when the alpha of a target is used as source. (lightningterror)
- GS: Add a 10:7 pixel ration option (crashGG)
- Qt: Update Base Translation (PCSX2 Bot)
- translations: Syncing Crowdin translations (#11849) (Tyler Wilding)
- Patches: Implement dynamic patching support in pnaches (Ty Lamontagne)
- Qt: Update Base Translation (PCSX2 Bot)
- DebugTools: Scan for functions from the ELF instead of from memory (chaoticgd)
- Deps: Update to libzip 1.11.1 (JordanTheToaster)
- iop/hostfs: don't replace back slashes with forward slashes on Windows (Ty Lamontagne)
- Debugger: Use safe VTLB functions for memory reading and writing (Ty Lamontagne)
- SaveState: Add configurable compression type and level (KamFretoZ)
- Qt: Fix VPS Counter (KamFretoZ)
- Tools: Add shebang to generate fs translation script (KamFretoZ)
- Qt: Update Glyph Ranges (KamFretoZ)
- Savestate: Make selector dismissible by opening pause menu (KamFretoZ)
- Qt: Update Base Translation (PCSX2 Bot)
- 3rdparty: Update Vulkan- Headers to v1.3.296 (JordanTheToaster)
- Deps: Update to SDL 2.30.8 (JordanTheToaster)
- GS/TC: Clamp TW/TH to 11 in source flush. (lightningterror)
- OSD/Savestate: Add close menu hint to the selector (KamFretoZ)
- Qt: Move savestate related options to its new home (KamFretoZ)
- GameDB: Add hwfixes to Armored Core 3 and Sandlot titles. (#11873) (wxvu)
- Qt: Update Base Translation (PCSX2 Bot)
- CI: Add other translations related scripts script to the daily workflow (KamFretoZ)
- HostFS: Retain File Handles in Save States (pips3)
- Debugger: Destroy and re- create the debugger on theme change (Ty Lamontagne)
- PAD: Update to latest controller database. (PCSX2 Bot)
- Debugger: Fix crash in symbol tree menu code (chaoticgd)
- QT: Clear m_status_verbose_widget text on VM stop (TheLastRar)
- Deps: Update to Qt 6.8.0 on Windows and Linux (JordanTheToaster)
- Qt: Update Base Translation (PCSX2 Bot)
- IOP HLE: Only track handles to valid files. (Ty Lamontagne)
- OSD: Update OSD Text on SW mode so no overlap keyword appears (#11881) (Chromaryu)
- DEV9: Rework tx_process based on HW tests (TheLastRar)
- Translations: hotfix a translation mistake causing fmt to crash (Ty Lamontagne)
- Qt: Call 'map_text_to_keycode()' only when Shift modifier is being used (Bobby Smith)
- DEV9: Replace incorrect SPD_R_20 behaviour (TheLastRar)
- DEV9: Allow 8bit reads/writes to all SPEED regs (TheLastRar)
- Qt: Update Base Translation (PCSX2 Bot)
- GameDB: Various fixes (JordanTheToaster)
- GS: Default to OpenGL on intel GPUs that support it. (lightningterror)
- USB: Work around FFB dropouts with modern wheels (badfontkeming)
- OSD: Clarify Min/Avg/Max label to Frametime counter (KamFretoZ)
- GSDevice11: Don't try to get the adapter name twice (KamFretoZ)
- IOP/EE: Add SBUS interrupts (Ziemas)
- PAD: Update to latest controller database. (PCSX2 Bot)
- DEV9: Support 8bit reads/writes for most ATA regs (TheLastRar)
- DEV9: Rewrite suppression of diagnostics IRQ during reset (TheLastRar)
- DEV9: Implement ATA pending interrupts (TheLastRar)
- DEV9: Disable interrupts on reset (TheLastRar)
- DEV9: Allow writes to ATA_R_CONTROL while busy (TheLastRar)
- Qt: Update Base Translation (PCSX2 Bot)
- DEV9: Move call to network backend reset (TheLastRar)
- DEV9: Move adapter detection hack (TheLastRar)
- DEV9: Use ReceivedPayload more in TCP_Session (TheLastRar)
- IOP: Seperate completing DMA8 to a seperate function (TheLastRar)
- DEV9: Don't fake the FIFO (TheLastRar)
- DEV9: Correct implementation of SPD_R_DBUF_STAT reset (TheLastRar)
- DEV9: Correct SPD_XFR_DMAEN define (TheLastRar)
- DEV9: Add note regarding IF_CTRL bit 3 (TheLastRar)
- Debugger: Split out SymbolImporter into its own class (chaoticgd)
- Debugger: Add settings to control the analysis passes (chaoticgd)
- Debugger: Cache hash match results on symbol tree nodes (chaoticgd)
- Debugger: Hash functions scanned in by the MIPS analyst (chaoticgd)
- Debugger: Be smarter about deciding when functions should be hashed (chaoticgd)
- Qt: Update Base Translation (PCSX2 Bot)
- Misc: wire up and refactor trace logging (Ty Lamontagne)
- DEV9: Add ATA commands used by PS2 Linux (#11925) (TheLastRar)
- Qt: Update Base Translation (#11932) (github- actions[bot])
- EE: vtlb handler for writes to IOP mem (Ziemas)
- PAD: Update to latest controller database. (PCSX2 Bot)
- TraceLogging: Fix SIF trace logging (Ty Lamontagne)
- Qt: Replace QTreeWidget with QTreeView for cheat list (Rares- Alexandru Fodor)
- Qt: Add search bar for cheats (Rares- Alexandru Fodor)
- DEV9: Set/Clear SEEK bit in all relevent commands (#11931) (TheLastRar)
- USB: Fix FFB quality and dropouts for most wheels, make workaround optional (badfontkeming)
- VMManager: Add renderer selection warning (JordanTheToaster)
- Debugger: Avoid resetting symbol trees while single stepping (chaoticgd)
- Qt: Fix symbol sources list in per- game settings dialog (chaoticgd)
- GS: Check feature level 12 as a requirement when selecting auto renderer on intel. (lightningterror)
- GS/D3D12: Disable DX12 if feature level is not detected. (lightningterror)
- GS/Qt: Adjust how we handle Default adapter. (lightningterror)
- GS/OGL: Only paste all available extensions in dev/debug build. (lightningterror)
- Qt: Update Base Translation (PCSX2 Bot)
- Qt: Hackfix settings icon stretching on Windows themes (TheLastRar)
- FSUI: Fix and Tweak BPM Buttons and Legends (KamFretoZ)
- Qt: Properly Grey Out Checkboxes When Perf OSD is Disabled (KamFretoZ)
- OSD: Fix Input Overlay Clipping (KamFretoZ)
- Qt: Update Base Translation (PCSX2 Bot)
- CI: Fix Translation Workflow Scripts Order of Operation (KamFretoZ)
- Qt: Update Base Translation (PCSX2 Bot)
- PAD: Update to latest controller database. (PCSX2 Bot)
- PAD: Fix negon and jogcon BPM crash (Ty Lamontagne)
- Dis5900asm: Fix an out of bounds access on invalid pmfhl formats (Ty Lamontagne)
- Patches: Fix a regression that broke gamedb dynpatches (Ty Lamontagne)
- translations: Syncing Crowdin translations (#11970) (Tyler Wilding)
- CI: Default to flatpak beta branch (Ty Lamontagne)
--2.0--
It has been over four years since the last stable PCSX2 revision released. A lot of things can happen in four years, but we could not have predicted just how much progress would be made in that time. PCSX2 has received over 6000 changes, passed 100 million downloads, and celebrated its 20th aniversary! There are lots of design changes, technical discoveries, and more to discuss. Let's jump right in and get started with the highlights from four years of development. Check out their previous Release 2.0 Report for insight on all the massive alterations..!
--1.16--
GSdx
GSdx-HW: Improve search/invalidate texture in render target by correctly matching vertex offsetted draws with buffer offsetted reads in the texture cache.
GSdx-HW: Implemented Software Sprite Renderer feature which allows to CPU emulate (SSE accelerated) certain sprite draws directly from the HW renderer.
GSdx-HW: Added a dedicated fix for Big Mutha Truckers which allows to render the shadows properly. This also allowed us to reduce the crc hack level so there are less effects skipped.
GSdx-HW: Sprite Hack has been completely removed as it is no longer needed and is replaced by far better alternatives.
GSdx-FX: The TFX shader on Direct3D10/11 has been rewritten to match OpenGL code and its' accuracy for certain effects.
GSdx-D3D: Blend no Barrier support has been ported from OpenGL to Direct3D 10/11.
GSdx-GUI: Hardware hacks GUI has been updated for better usability.
SPU2-X
Fixed the noise generator outputting 4.8 kHz tone instead of white noise.
CDVD
PCSX2 now ignores non-existent disc sector reads.
Core
PCSX2: Prevent the UI from hanging/locking up when a game boots.
PCSX2-tas: TAS Recording functionality has been disabled for 1.6 release as there are some issues to work out (such as hanging/locking up the emulator).
PCSX2: DI execution is delayed by one instruction.
PCSX2: Reverted back to older VRender/VBlank timings.
PCSX2: Partially fixed IPU pack command.
PCSX2: Fixed the emulator hanging when pressing F4 too fast when toggling the Frame Limiter in some occasions.
PCSX2: Fixed the emulator hanging when pressing F9 to toggle rendering between Hardware and Software in some occasions.
PCSX2: Fixed the emulator hanging when pressing F9 to toggle rendering between Hardware and Software mode too fast.
PCSX2: First Time Wizard now properly selects the correct GSdx plugin based on the highest instruction set supported by the CPU.
PCSX2: Improved pointer patch command handling.
PCSX2 GUI changelog
PCSX2: DPI scaling has been improved.
PCSX2: Translations have been updated for the release of 1.6.
Miscellaneous changelog
GameDB: True Crime: Streets of L.A. (patched).
GameDB: The database has been once again updated with the inclusion of many games with required gamefixes, as well as removal of gamefixes which are no longer needed.
On their next update, this section will be refreshed.