Commit graph

15165 commits

Author SHA1 Message Date
kd-11 99ace42447 gl: Enforce full image creation argument declaration
- Closes a class of bugs caused by implicit conversion of similar argument types
2025-02-11 02:28:31 +03:00
kd-11 6c6d03ac5e gl: Upgrade the surface cache to become MSAA-aware 2025-02-11 02:28:31 +03:00
kd-11 8249b5dbfa gl: Implement MSAA resolve/unresolve for color images 2025-02-11 02:28:31 +03:00
kd-11 2a4bd6a7fc gl: Implement multisampled image creation 2025-02-11 02:28:31 +03:00
kd-11 82981384d5 vk: Move MSAA resolve/unresolve shaders to common GPU program layer 2025-02-11 02:28:31 +03:00
kd-11 a7a49d9eaa gl: Plumb stubbed MSAA support into the render target handlers 2025-02-11 02:28:31 +03:00
kd-11 808f67a3b2 gl: Stub dynamic sample count when creating textures 2025-02-11 02:28:31 +03:00
Elad 9a7b8e41eb PPU Analyzer: Minor Fixup 2025-02-09 14:28:08 +02:00
Elad c7e853bf99 PPU Analyzer: GPR-assisted jump table analysis 2025-02-07 20:27:17 +02:00
Elad ac97b36b1c PPU Analyzer: Opt-out suspected floats from instruction stream 2025-02-07 20:27:17 +02:00
Elad 181c92a868 PPU Analyzer: Clean addr_heap fron non-valid code
Should speed up analysis in some cases.
2025-02-07 20:27:17 +02:00
Elad 86b7078464 PPU LLVM: Fix compilation of PRX with no relocations 2025-02-07 20:27:17 +02:00
Megamouse a1a0333e56 cellVdec: implement cellVdecOpenExt 2025-02-06 19:31:23 +01:00
Megamouse 85715e893b win: Add more llvm prebuilt paths 2025-02-06 18:07:53 +01:00
Megamouse 363a225554 Update LLVM to 19.1.7 2025-02-06 18:07:53 +01:00
Megamouse 449c23ba4e cellL10n: implement SBCS conversions 2025-02-06 09:38:17 +01:00
Megamouse cec1004da8 cellL10n: fix compilation on linux 2025-02-05 07:51:47 +01:00
Megamouse 666bbeba6e cellL10n: Use string_view 2025-02-05 07:51:47 +01:00
Megamouse 770b2ab26d cellL10n: implement ucs2/utf8/16/23 conversions 2025-02-05 07:51:47 +01:00
Elad 2420aa7a21 Fixup PPU block unfolding 2025-02-04 20:33:24 +02:00
Megamouse a5d07af89a cellMusic: always select the whole playlist instead of a single track 2025-02-04 18:13:07 +01:00
Megamouse 9bccdf4f71 cellMusic: fix volume. Qt needs a value between 0 and 1 2025-02-04 18:13:07 +01:00
Megamouse b5dbafb3e2 cellMusic: make selection context valid when setting a playlist 2025-02-04 18:13:07 +01:00
Megamouse 22a1f41ecb Input/DS4: use hid_write instead of hid_write_control
Apparently this was only needed for Windows 7
2025-02-04 12:06:31 +01:00
Megamouse 739c4bcfc8 Qt: ignore all game window hotkeys on "disable kb hotkeys" 2025-02-04 09:39:34 +01:00
Megamouse 85f288651b cellGem: reduce cellCamera log spam by setting some camera features 2025-02-04 03:09:27 +01:00
Megamouse 50387cc516 update_manager: use v3 api for all OS 2025-02-03 22:53:53 +00:00
kd-11 6123838a48 ppu/arm64: Fix ppu_recompiler_fallback implementation for ARM processors 2025-02-02 22:44:42 +03:00
Megamouse 3187dc816e Fix some warnings 2025-02-02 17:06:39 +01:00
kd-11 cfd571cfc2 Re-enable TSC on ryzen CPUs 2025-02-02 17:45:50 +03:00
kd-11 89eb473dce rsx: Fix graphics corruption when switching between shader interpreter and recompiler at runtime 2025-02-02 12:08:05 +03:00
Malcolm Jestadt 911f0928cf SPU LLVM: Replace xorsum with simple checksum
- Fixes crashes in GTAV
2025-02-01 21:40:30 +02:00
Elad 394fc8eb79 Enable Time-based TSC for non-Ryzen CPUs 2025-01-31 14:35:08 +02:00
Elad 57b6ced957 PPU Analyzer: Fix per-instruction code submission 2025-01-31 13:01:53 +02:00
Malcolm Jestadt 506d92107c SPU LLVM: Use 512bit xorsum for SPU verification
- Provides a 2-3% uplift in SPU limited titles
- Removes the full_width_avx512 option
- Adds a precise spu verification option, for debugging (config file only)
2025-01-31 12:03:05 +02:00
Elad 665bb83297
Fix Savestates recent regression 2025-01-28 18:49:19 +02:00
Elad 7fc0f69e48 PPU LLVM: Fix HLE patches 2025-01-28 12:51:52 +02:00
Megamouse 67703b49d8 Update LLVM to 18.1.8 2025-01-25 18:15:13 +01:00
Megamouse ad6eba1670 Fix some warnings 2025-01-25 17:06:35 +01:00
Megamouse 0ef2e96121 Fix segfault on missing firmware
Wait until kill to close the gs_frame on error
2025-01-25 17:06:35 +01:00
Megamouse 664e09f1ff Qt: Fix Recent savestate path 2025-01-25 15:39:05 +01:00
Megamouse 27baab992a Qt: Add path to recent game/savestate tooltip 2025-01-25 15:39:05 +01:00
Megamouse 099e3c67b2 Qt: fix recent savestate shortcuts 2025-01-25 15:39:05 +01:00
Megamouse 959d8fc25c Qt: Fix recent savestates menu settings 2025-01-25 15:39:05 +01:00
Elad 5ef442c2b8 Disable ARM trampolines 2025-01-25 12:47:44 +02:00
Elad ba79e092a0 Protect RPCS3 from built-in PS2 emulator 2025-01-25 12:47:44 +02:00
Elad 9677a3a9ea Fix Emulator::IsPaused() to allow measurements during module compilation
Also fix a potential deadlock in access violation handler for non-cpu_thread
2025-01-25 12:47:44 +02:00
Elad 4c0832e6e6 PPU LLVM: Reduce size of JIT-transition treampolines to 16 2025-01-25 12:47:44 +02:00
Elad 3f4210437d JIT.h: Add option for lowered function size 2025-01-25 12:47:44 +02:00
Elad 81d0dd686b LLVM: Add explicit resource-freeing at emulation stop 2025-01-25 12:47:44 +02:00
Elad a24e747e16 PPU LLVM: Disable an experimental limit 2025-01-25 12:47:44 +02:00
Elad 05f52246a2 PPU LLVM: Simplify module progress
Do not mix module compilation with linking.
2025-01-25 12:47:44 +02:00
Elad b46408d554 PPU Analyzer: Report invalid functions 2025-01-25 12:47:44 +02:00
Elad 58701000cd PPU Analyzer: Clean addr_heap from non-relocations (PRX) 2025-01-25 12:47:44 +02:00
Elad 5a5e475c6e PPU Analyzer: Move ppu_function::callers to lower sizeof(ppu_function) 2025-01-25 12:47:44 +02:00
Elad ff89a08ee4 PPU Analyzer: Remove ppu_function::calls to lower sizeof(ppu_function)
Use blocks to get calls.
2025-01-25 12:47:44 +02:00
Elad f5487e9137 PPU Analyzer: Use std::map::extract to reduce peak memory consumption 2025-01-25 12:47:44 +02:00
Elad 857eac3d10 PPU Analyzer: Remove ppu_function::name to lower sizeof(ppu_function) 2025-01-25 12:47:44 +02:00
Elad f0fa8e3bc3 Remove ppu_attr::known_addr 2025-01-25 12:47:44 +02:00
Elad 9d5b75bb7a LLVM: Slice PPU executable memory 2025-01-25 12:47:44 +02:00
Megamouse 10d038e43f Qt: Fix device notification registration segfault
The main window does not exist if we boot with no-gui
2025-01-25 00:57:22 +01:00
Sanjay Govind f1f85335a7
sys_usbd: Fix emulated devices not being created without a physical device (#16608) 2025-01-24 08:44:10 +01:00
Megamouse bd1ebb7a10 Qt: add savestate manager dialog 2025-01-24 05:32:19 +01:00
Sanjay Govind e2bbaa2430
libusb: support hotplug (#16580) 2025-01-23 23:49:24 +01:00
Megamouse ba702509c8 Qt: Add Recent savestates menu 2025-01-23 22:55:07 +01:00
Megamouse 448666c896 Log LLVM version 2025-01-23 18:01:16 +01:00
Megamouse 8f660fc6b1 cellGem: update gun handler connection periodically 2025-01-23 12:35:02 +01:00
Sanjay Govind fd66b6b103 cellPad: Send disconnection notification when swapping device class 2025-01-23 09:19:37 +01:00
Megamouse e83eeb3cca cellGem: Move the cursor out of the screen (Time Crisis 4 needs this) 2025-01-23 08:18:07 +01:00
Megamouse f537a62ca6 cellGem: Set 255 as value for analog_t 2025-01-23 08:18:07 +01:00
Megamouse b30ea34d05 cellGem: mark device as not visible at the screen borders 2025-01-23 08:18:07 +01:00
Megamouse 6fddb31a07 Qt/input: reset gui pad thread when saving pad settings 2025-01-22 20:47:07 +01:00
Megamouse 79d79aa80c cellCamera: move attach event to thread
Time crisis doesn't seem to like the immediate push to the queue.
2025-01-22 02:18:07 +01:00
Megamouse fbc7ad6788 cellGem: move some locks around wait loops 2025-01-22 02:18:07 +01:00
Megamouse fcac6a9322 sys_event: remove unnecessary copy 2025-01-22 02:18:07 +01:00
Megamouse dc700ad620 cellCamera: close Qt camera on error (e.g. when usb is pulled) 2025-01-22 02:18:07 +01:00
Megamouse 74540844d2 cellGem: ignore missing pad handler
This is a hacky way to fix cellGem savestates
2025-01-22 02:18:07 +01:00
Megamouse 23483a80c7 cellGem: Fix camera image when loading savestates 2025-01-22 02:18:07 +01:00
Megamouse ade2698bb4 cellCamera: start camera when loading savestates 2025-01-22 02:18:07 +01:00
Megamouse 85de7432a2 cellGem: improve convert_image_format logging 2025-01-22 02:18:07 +01:00
Megamouse 6805c36004 Decrease log level of config file move error 2025-01-22 02:18:07 +01:00
Megamouse 1cff5b35d4 input: add vibration multiplier 2025-01-21 08:44:38 +01:00
kd-11 2af497efbb rsx: Fix texcoord transformation bug caused by incorrect BFE usage 2025-01-19 19:31:59 +03:00
kd-11 58a09e6838 vk: Use common pipeline layout in interpreter
- Avoids the layouts going out of sync every time something changes
2025-01-19 19:31:59 +03:00
kd-11 b5b93e962b vk: Factor out common pipeline layout generator into reusable parts 2025-01-19 19:31:59 +03:00
Emma 10e0fb2b54
sys_prx: implement get_module_id_by_name, module_info_v2 (#16573) 2025-01-18 15:16:38 +02:00
Megamouse 0a6f9ed967 windows: Ignore OneDrive in PATH. It leads to false positives 2025-01-17 00:32:54 +01:00
Megamouse a7edfa221e windows: move logs to log dir 2025-01-16 21:33:33 +01:00
Megamouse 451e953d26 windows: move config.yml and games.yml to /config/ 2025-01-16 21:33:33 +01:00
Megamouse 5c2c4a6649 input: issue basic mouse move event on window leave
This may help with moving the mouse to the screen borders in windowed mode
2025-01-16 18:27:16 +01:00
kd-11 09580594e6 rsx: Fix shader cache loading 2025-01-16 02:43:33 +03:00
kd-11 efc9ae98ed vk: Fix out-of-bounds write when emitting MSAA unresolve clear command for NVIDIA fallback 2025-01-15 11:27:04 +03:00
kd-11 7da0822419 rsx/shaders: Fix MSAA coords wrapping when input is negative 2025-01-15 11:27:04 +03:00
kd-11 e1c6df0df3 rsx: Fix dynamic constants patching when draw call is skipped
- Also adds an optimization to skip reuploads when patch occurs outside our critical range.
2025-01-15 11:27:04 +03:00
kd-11 7965a0313c rsx: Improved shader interpreter support when hw instancing is active 2025-01-15 11:27:04 +03:00
Megamouse 0cc61d0ef0 windows: check for OneDrive paths 2025-01-14 23:32:02 +01:00
Megamouse d91927ee97 Qt/input: allow keypresses in raw mouse handler 2025-01-14 15:52:46 +01:00
capriots ae670c35f7 cellAtracXdec: use lv2 mutexes + conds 2025-01-14 11:32:32 +02:00
Megamouse d1ccadbac2 cellGem: ignore intercepted input 2025-01-14 08:53:36 +01:00
Megamouse 78a661db79 input: simplify raw mouse button press handling 2025-01-14 00:00:50 +01:00