Stenzek
e507fdcb1f
System: Load state before calling OnSystemStarted()
...
Needed for transitent state cleanup on Android.
2024-12-11 22:04:21 +10:00
Stenzek
1edcc8c0ac
System: Merge system taints with state taints on load
2024-12-10 20:19:27 +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
5c4d95fd51
Settings: Add missing GPU feature disables
2024-12-06 15:07:56 +10:00
Stenzek
0c7636b3c3
System: Add missing safe mode disable messages
2024-12-05 17:04:09 +10:00
Stenzek
5b6e3a952c
System: Reset code cache on fastmem mode change
...
Fixes excess backpatching and potential crashes when changing mode.
2024-12-03 17:29:47 +10:00
Stenzek
b7fff840c8
System: Move thread name init to host
...
Prevents funky thread names for regtest on Linux.
2024-11-29 21:21:27 +10:00
Stenzek
aafc029682
Misc: Un-namespace Timer
2024-11-29 20:13:37 +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
5fd79254bd
GPU: Fix crash when toggling software renderer
2024-11-26 12:58:12 +10:00
Stenzek
b180b26728
GPU: Rework "All Borders" cropping to be aspect correct
...
The "All Borders" crop mode was previously creating an aspect ratio that
was completely incorrect when using modes outside of Auto/4:3. We now
scale the aspect ratio relative to the PAL/NTSC aspect ratio to account
for this, regardless of how much of a border the game configures.
Overscan cropping also produced an incorrect aspect ratio outside of 4:3
mode, resulting in minor horizontal stretching. It is now correct,
however, this results in black borders being added in 16:9 for most
games.
To remove these borders, you have two options:
- Use the "Stretch to Fill" aspect ratio. This will scale the GTE
aspect ratio to fill the screen.
- Use the "Only Overscan Area (Aspect Uncorrected)" crop mode. This
mode retains the "old" behaviour, resulting in a stretched image.
2024-11-25 16:26:16 +10:00
Stenzek
24dfd30839
Image: Refactor to a more generic class
2024-11-24 23:29:29 +10:00
Stenzek
b984f343ae
System: Fix audio CD images not showing title
2024-11-23 18:52:45 +10:00
Stenzek
8ec9c90c82
Qt: Fix settings not applying immediately when editing profile
2024-11-14 00:35:25 +10:00
Stenzek
8611f4f438
System: Handle GPU device loss in BP-only mode
2024-11-10 15:48:41 +10:00
Stenzek
ead9e56c4d
System: Support loading ELF files
2024-11-05 17:54:12 +10:00
Stenzek
8bd0e6c3f7
CPU/CodeCache: Clear blocks on system shutdown
...
Means we release all allocated memory on system shutdown, rather
than waiting until the next VM/system start.
2024-11-05 13:06:46 +10:00
Stenzek
6551358212
Log: Replace channel string search with bitset
...
Knocks off around ~20KB of code.
2024-10-31 14:41:33 +10:00
Stenzek
2043128f98
System: Fix per-game fast boot applying too late
2024-10-30 15:19:10 +10:00
Stenzek
bfadd608fb
System: Add 'Task Threads'
...
Used for saving screenshots/GPU dumps.
2024-10-30 15:19:10 +10:00
Stenzek
53fb5cd9e1
GTE: Remove dependency on GPUDevice
2024-10-28 14:31:22 +10:00
Stenzek
d34707a377
System: Pack state in struct
...
Don't trust the linker...
2024-10-28 14:31:22 +10:00
Stenzek
166c930738
System: Move private functions to separate header
2024-10-28 14:31:22 +10:00
Stenzek
21d19a6297
System: Move perf counters to separate namespace
2024-10-28 14:31:22 +10:00
Stenzek
875ccecb90
System: Use frame rate for speed calculation
...
Instead of cycles. Makes it invariant to OC changes, and can
be managed on the (future) GPU thread.
2024-10-27 22:01:00 +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
1ae2dcf192
GPU: Propagate initialization error to caller
...
Avoids double error popup.
2024-10-26 01:41:29 +10:00
Stenzek
b92eeec962
System: Warning fix
2024-10-25 20:45:11 +10:00
Stenzek
080807e557
CDROM: Move subchannel replacement from CDImage
...
This will allow you to use SBI/LSD files with real discs, if your
drive does not support reading subchannels, or has an incorrect
skew.
2024-10-25 15:35:12 +10:00
Stenzek
7d2216c289
GameList: Avoid double fopen/read of EXEs
2024-10-23 21:20:28 +10:00
Stenzek
2d04f2eff9
System: Support loading .CPE files
2024-10-23 21:08:17 +10:00
Stenzek
485f81a02f
GPUDump: Support XZ compression
2024-10-22 19:40:03 +10:00
Stenzek
396e7d994a
System: Make global safe mode always take precedence
2024-10-22 01:11:31 +10:00
Stenzek
a9bfe2642f
System: Simplify error path in BootSystem()
2024-10-21 00:18:12 +10:00
Stenzek
b62e58776e
System: Fix GPU usage disappearing on renderer change
2024-10-21 00:12:20 +10:00
Stenzek
c250209336
System: Fix input profiles inheriting base settings
2024-10-21 00:05:32 +10:00
Stenzek
4ab22921c4
GPUDump: Add GPU dump recording and playback
...
Implements the specification from:
https://github.com/ps1dev/standards/blob/main/GPUDUMP.md
2024-10-20 22:02:24 +10:00
Stenzek
056b629837
ImGuiManager: Add 'Screen Margins' (i.e. safe zone)
2024-10-20 13:17:22 +10:00
Stenzek
76208f5f2d
System: Display localized trait names
2024-10-19 01:16:05 +10:00
Stenzek
57cf0f2643
System: Reload cheats/patches on safe mode toggle
2024-10-19 01:13:32 +10:00
Stenzek
baa9065d2e
System: Add taints to save states
...
This informs the user they are loading a save state that at some point
had potentially-game-breaking options enabled, and a reset is necessary
to clear them.
2024-10-19 01:13:32 +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
005d48a387
System: Don't display setting warnings without game
2024-10-18 20:48:29 +10:00
Stenzek
11c212260c
System: Only check controller changes when valid
2024-10-14 12:46:54 +10:00
Stenzek
e0b6f6f1b2
Cheats: Rewrite cheat management system
2024-10-13 16:43:22 +10:00
Stenzek
26b6c704f0
MemMap: Support dynamic page size selection
...
i.e. 4K to 16K on ARM64.
2024-10-05 19:25:23 +10:00
Stenzek
3fb5fb4c72
System: Fix saving of subimage index
2024-10-06 18:06:51 +10:00
Stenzek
c9f7ef5f9a
System: Fix reset when booting EXE
2024-10-06 13:36:46 +10:00