77 Commits

Author SHA1 Message Date
Stenzek
26db661a05
GPU: Remove global indirection 2024-12-21 14:35:12 +10:00
Stenzek
2d659fc3eb
GPU: Move backend work off CPU thread 2024-12-19 23:32:15 +10:00
Stenzek
a1928de4d0
ImGuiOverlays: Pack SaveStateSelectorUI state 2024-12-09 15:35:07 +10:00
Stenzek
5d7cb6c5dc
System: Move state compression/writing to worker thread
Reduce hitches when saving.
2024-12-09 14:16:55 +10:00
Stenzek
31d953dac2
System: Prevent memcard blocking resume state save
Because otherwise you end up with a stale/old resume state, which is
arguably worse.
2024-12-09 13:42:41 +10:00
Stenzek
0befbf8021
GPU: Add Uncorrected Borders crop mode
Should behave the same as the old "All Borders" mode.
The pixel aspect ratio WILL BE WRONG.

Also fixes the size of screenshots in internal resolution mode.
2024-11-26 18:00:19 +10:00
Stenzek
3ff1b04576
GPUDevice: Support generating mipmaps 2024-11-24 23:29:28 +10:00
Stenzek
f67eacc071
CPU: Default to new recompiler/remove old recompiler 2024-11-23 18:52:46 +10:00
Stenzek
c2316dfdc8
InputManager: Fix relative mode engaging for gun controllers
It still needs to activate when using raw input.
2024-11-14 00:17:28 +10:00
Stenzek
a3d55c6e30
Misc: Android build fixes 2024-10-30 15:19:10 +10:00
Stenzek
21d19a6297
System: Move perf counters to separate namespace 2024-10-28 14:31:22 +10:00
Stenzek
2c57817803
System: Invalidate display on debug window change
Fixes these windows displaying black if the VM is paused.
2024-10-27 15:15:20 +10:00
Stenzek
cdd230c040
ImGuiOverlays: Fix input overlay glyph clipping 2024-10-25 12:45:50 +10:00
Stenzek
056b629837
ImGuiManager: Add 'Screen Margins' (i.e. safe zone) 2024-10-20 13:17:22 +10:00
Stenzek
86a28d5dc0
ImGuiOverlays: Move debug state to auxiliary windows 2024-10-18 20:48:30 +10:00
Stenzek
eb46142ee7
GPUDevice: Extract swap chain to separate class 2024-10-18 20:48:29 +10:00
Stenzek
d32143b319
ImGuiOverlays: Make escape close save state selector 2024-09-29 15:29:40 +10:00
Stenzek
4e880280bd
Qt: Fix inconsistent multitap addressing
And remove multiple copies of the same variables while we're at it.
2024-09-27 20:59:04 +10:00
Stenzek
991927151c
ImGuiOverlays: Fix scrolling offscreen with no-serial 2024-09-26 13:38:57 +10:00
Stenzek
3dca598063
Log: Switch to enum class
Need to change the channel to a bitset too.. the string lookups are
horribly slow, and conflict when one is a prefix of another.
2024-09-21 22:26:06 +10:00
Stenzek
b5df06a54a
GPU/HW: Rewrite automatic internal resolution selection
Make it aspect ratio aware, as well as updating when/if the game changes
resolution. Also include the padding area in the OSD/status resolution.
2024-09-21 22:26:05 +10:00
Stenzek
ac5a2a153a
GPUDevice: Remove BeginPresent() skip parameter
It wasn't used - System does its own present skipping.
2024-09-07 12:53:55 +10:00
Stenzek
4b0c1fdbf2
GPUDevice: Add recovery from lost device 2024-09-07 12:48:44 +10:00
Stenzek
1446e3035f
Settings: Make Disable Interlacing a Deinterlacing mode
Saving that precious vertical space.
2024-09-03 20:02:01 +10:00
Stenzek
f9a594058f
Settings: Force Frame Timings => Force Video Timing
Also drop from GameDB, an override doesn't make sense here anyway,
due to the low success rate with the enhancement.
2024-09-03 19:06:26 +10:00
spacepaw
63abdb7afd
Reworked the "Force NTSC Timings" feature to support both NTSC and PAL frame timings (#3287) 2024-09-03 10:50:45 +02:00
Stenzek
51cfea49fe
ImGuiManager: Split OSD and debug window fonts
Fixes the latter not fitting on screen anymore.
2024-09-02 00:27:48 +10:00
Stenzek
7f4e5d55db
Misc: Update copyright headers 2024-09-01 22:08:31 +10:00
Stenzek
63bf64b05d
ImGuiOverlays: Use actual recording icon 2024-08-26 18:55:15 +10:00
Stenzek
e54c4c8101
ImGuiManager: Tweak OSD message size 2024-08-26 14:41:58 +10:00
Stenzek
e8b787fb57
Misc: Change various icons 2024-08-25 23:17:05 +10:00
Stenzek
f2c0303875
Misc: Use lightgun controller icon 2024-08-25 13:57:05 +10:00
Stenzek
aa9a5e383d
ImGuiOverlays: Change icon colour depending on controller mode 2024-08-18 20:30:45 +10:00
Stenzek
3772706603
System: Look up media capture settings on-demand
No need to store them, save some memory.
2024-08-18 15:52:54 +10:00
Stenzek
af47eb6956
System: Add video capture feature 2024-08-11 21:06:58 +10:00
Stenzek
a2f98541b3
Misc: Slim down some header includes 2024-08-04 14:49:55 +10:00
Stenzek
3a83c4265c
Misc: Fix a bunch of code analysis warnings
Some of which were even actual errors.
2024-08-02 23:56:07 +10:00
Stenzek
a6518ff9dc
System: Rewrite save state I/O
No more ByteStream or virtual calls for every piece of data.
2024-07-29 17:27:32 +10:00
Stenzek
0407f939fc
CPU: Fix loading recompiler-saved states with interpreter 2024-07-23 21:11:01 +10:00
Stenzek
69471950f0
ImGuiOverlays: Use GSVector 2024-07-03 00:24:12 +10:00
Stenzek
34f20798a1
GPU/HW: Add separate 3D/2D (sprite) texture filtering 2024-06-17 15:56:56 +10:00
Stenzek
328a3cd7af
System: Prevent save states while memory cards are being saved 2024-05-25 17:42:12 +10:00
Stenzek
4e922a34a7
Log: Simplify macros 2024-05-24 02:08:14 +10:00
Stenzek
b6d019db66
Misc: Replace log printf calls with fmt 2024-05-24 00:29:49 +10:00
Stenzek
d80aa91d49
ImGuiOverlays: Fix >1 controller display 2024-04-27 12:41:47 +10:00
Stenzek
f666816943
ImGuiOverlays: Fix possible crash in save state selector 2024-04-18 00:40:31 +10:00
Stenzek
c149d66d4d
System: Add 'Reduce Input Latency' option
i.e. pre-frame sleep.
2024-04-13 19:57:25 +10:00
Stenzek
7344661801
GPUDevice: Split submission and presentation 2024-04-11 22:53:02 +10:00
Stenzek
1b1e42d003
System: Add Error to boot/load/save state 2024-04-11 13:42:10 +10:00
Stenzek
de1a1af908
FullscreenUI: Avoid per-frame memory allocations with SmallString 2024-04-09 19:54:25 +10:00