Stenzek
5b40d7902a
System: Shut down GPU backend before other components
...
Prevents a rare crash on shutdown if OSD stats were enabled.
2025-06-03 19:06:17 +10:00
Stenzek
7fde697118
GPU/TextureCache: Add merging of adjacent palette records
...
So a texture spanning multiple pages can be merged at dump time.
Doing a merge instead of a union on the original palette rect
is safer, because gaps won't dump as larger textures with garbage
in the middle.
2025-06-03 19:05:22 +10:00
Stenzek
eee67a30da
GPU/HW: Fix off-by-one in sprite UV rect calculation
...
CheckForTexPageOverlap() makes it exclusive already.
Fixes replacements for FF8 title screen not applying in the third
texture page, because it thought it was sampling from an unwritten
area of VRAM.
2025-06-03 18:54:29 +10:00
Stenzek
d9367229e9
Achievements: Avoid duplicate tracker display
2025-06-03 17:57:29 +10:00
Stenzek
42813e8840
GameDatabase: Actually disable auto scale for DisableUpdating
2025-06-01 21:19:07 +10:00
Stenzek
ae3b295d95
FullscreenUI: Disable menu item borders by default
...
Looks nicer.
2025-06-01 15:10:40 +10:00
Stenzek
47405b081c
GameDatabase: Disable MSAA with DisableUpscaling
2025-06-01 14:37:16 +10:00
Stenzek
2cc0851116
GameDatabase: Fix DisableUpscaling trait with auto res
2025-06-01 14:37:16 +10:00
Stenzek
fc7934a2be
FullscreenUI: Fix nav focus loss in leaderboards
...
Stops hotkeys triggering when using mouse navigation.
Also fixes the first leaderboard entry not focusing on page swap.
2025-06-01 14:37:16 +10:00
Stenzek
2018eb77fe
GPU: Adjust draw timing approximation
...
Cache seems to be able to go up to 128x8? Constructor draws sprites that
fit exactly in the texture cache, and does so within vblank, so it can't
take too long to draw.
2025-05-30 19:26:49 +10:00
Sheng Jiang 蒋晟
b195f747cf
implement ExtConstantBitClear/Set on ExtImprovedSlide ( #3430 )
2025-05-28 21:42:11 +10:00
Stenzek
6b811df6d0
CDROM: Add "Switch to Next Disc on Stop" option.
...
NOTE: THIS WILL NOT WORK FOR ALL GAMES.
Plenty of games don't stop the CD-ROM drive when they're expecting a
disc change, leaving us with no way of knowing when it's needed.
2025-05-27 17:10:11 +10:00
Stenzek
24cd6fa11b
Hotkeys: Add switch to previous/next disc hotkeys
2025-05-27 17:03:39 +10:00
Stenzek
66934cc5b8
System: Include queued frames in input latency stats
2025-05-23 15:16:15 +10:00
Stenzek
03111befb9
Settings: Correct a couple of default values
2025-05-23 15:15:58 +10:00
Stenzek
a422402014
CPU: Fix bgez/blez disassembly with non-standard pattern
2025-05-18 13:43:41 +10:00
Stenzek
8ee0daaa17
GameDatabase: Bump cache version
...
Forgot to do this before.
2025-05-17 23:06:36 +10:00
Stenzek
5eedecd811
System: Swap back gamesettings->safe mode order
...
Fixes e.g. round texcoords warning being shown on games that need it.
But don't display CD speedup warnings if the gamedb will disable them.
2025-05-17 23:06:36 +10:00
Stenzek
17dfb95d6a
GPU/HW: Fix MSAA+depth buffer combination
...
Clear should wipe out all samples, copy should copy all samples.
2025-05-17 19:44:23 +10:00
Stenzek
4a707afae1
System: Show safe mode warning after applying gamesettings
...
Prevents warning about things that have already been disabled.
2025-05-17 18:44:03 +10:00
Stenzek
a6b59f9efe
GameDatabase: Add traits for disabling disc speedup
2025-05-17 18:40:58 +10:00
Stenzek
c729515118
AnalogController: Add option to use right stick as shoulder buttons
2025-05-17 18:40:38 +10:00
Stenzek
d35cefb02a
GPU/HW: Check for depth clears for lines
2025-05-17 15:22:01 +10:00
Stenzek
844869c0c1
GPU/HW: Fix precise lines failing depth test
2025-05-17 15:04:22 +10:00
Stenzek
a375d558f6
GPU/HW: ScaleNx/MMPX do not require blending
2025-05-17 14:05:56 +10:00
Stenzek
3d8f6bf7aa
GPU/HW: Fix filtered alpha blending in ROV path
2025-05-17 14:05:55 +10:00
Davide Pesavento
401f2652ca
Achievements: Use round instead of ceil for unlocked percentage ( #3418 )
2025-05-17 14:05:41 +10:00
Stenzek
21aaec99f1
Qt: Note when patches are not allowed for achievements
2025-05-17 01:07:55 +10:00
Stenzek
871323f4e1
Cheats: Fix setting overrides applying for blacklisted patches
2025-05-17 00:59:20 +10:00
Stenzek
4ea90f948d
CDROM: Display OSD message on backend read fail
2025-05-16 19:06:55 +10:00
Stenzek
7310aa509a
CDROM: Stop reading on backend read fail
...
Instead of panicing. Game's probably just going to crash anyway.
2025-05-16 18:14:08 +10:00
Stenzek
7932618424
Bus: Enable SIO2 on any unknown BIOS
...
Not all PS2 BIOSes are in the list.
2025-05-14 23:18:23 +10:00
Stenzek
2ed7aa5536
CPU: Clear pending bus error when interpreting block
...
It can get set from a failed rec access much earlier.
Also eliminates a redundant store from the main interpreter loop.
2025-05-14 23:18:22 +10:00
Stenzek
b91d219524
Qt: Clarify that XInput should only be used for wrappers
2025-05-13 21:31:00 +10:00
Stenzek
2b280bddd0
GPU/TextureCache: Display replacement info on game start
2025-05-13 21:21:16 +10:00
Stenzek
6cde51b7b5
Achievements: Tidy up API calls
2025-05-11 14:07:31 +10:00
Stenzek
aee66edd6e
Achievements: Unload RAIntegration on UI thread
...
Fixes crash when toggling it on/off.
2025-05-09 20:58:38 +10:00
Stenzek
b2dcf39f8b
FullscreenUI: Fix possible crash with RAIntegration
2025-05-06 22:50:32 +10:00
Stenzek
2aea3e1c3c
FullscreenUI: Add vertical padding to several windows
...
Looks less cluttered.
- Achievement/leaderboard lists.
- Game list/game grid.
- Save state selector.
2025-05-06 22:42:06 +10:00
Stenzek
30fe7f3e4a
Achievements: Manually generate badge URLs when using RAIntegration
...
It doesn't fill in these fields (currently at least).
2025-05-06 22:42:06 +10:00
Stenzek
03db7ea8ea
GPUThread: Remove unnecessary padding
2025-05-05 02:22:57 +10:00
Stenzek
c8a5712c10
FullscreenUI: Fix possible crash with achievements/leaderboards hotkey
2025-05-05 02:22:57 +10:00
Stenzek
d326d307b4
Achievements: Fix memory writes using CPU addresses
2025-05-05 02:22:57 +10:00
Stenzek
ad13b17bea
FullscreenUI: Fix slow fadeout on fast forward toggle
2025-05-03 00:46:18 +10:00
Stenzek
6cafb5cdea
FullscreenUI: Fix resume state dialog height at some window sizes
2025-05-03 00:45:45 +10:00
Stenzek
8d80ae123d
Controller: Remove 'f' from string float values
2025-04-26 14:41:45 +10:00
Stenzek
773ec046b5
Justifier: Fix byteswapped RGB colours
2025-04-24 21:41:38 +10:00
Stenzek
589b8f5139
Justifier: Handle byte 4 IRQ enable flag
...
Fixes games with two justifiers connected concurrently.
2025-04-24 21:41:31 +10:00
Stenzek
740758fdda
CPU/Recompiler: Call RaiseBreakException() on BP
...
For pcdrv.
2025-04-24 10:51:07 +10:00
Stenzek
559f831c30
Achievements: Defer login/game identify until after RAIntegration load
2025-04-23 22:16:27 +10:00
Stenzek
769e6f2bae
GPUThread: Fix command size blow-up
2025-04-21 19:10:18 +10:00
Stenzek
41ee9d9ff0
FullscreenUI: Use path from game list entry on resume
...
Fixes clean boot failing when selecting a game with a no-longer-valid
path.
2025-04-21 13:30:03 +10:00
Stenzek
b4019f325c
GPU/HW: Fix black dots with some texture filters
...
JINC2 specifically ended up with NaNs propagating through.
2025-04-21 13:06:09 +10:00
Stenzek
f4df18b7cf
Cheats: Make FormatCodeForFile() public
...
Needed for Android.
2025-04-20 00:23:23 +10:00
Stenzek
437430cbc4
System: Pull screenshot format from path extension
2025-04-19 22:49:16 +10:00
Stenzek
1f10cac42a
GPUThread: Align commands to 16 bytes
...
Apparently some of the types end up 16-byte aligned on Android x86_64.
2025-04-19 22:45:21 +10:00
Stenzek
bd558efaaa
CMake: Use upstream-compatible Findzstd
2025-04-19 20:43:27 +10:00
Stenzek
df2a5a5e67
ImGuiManager: Move drawing out of GPUDevice
2025-04-19 16:21:29 +10:00
Stenzek
75ae7deadb
FullscreenUI: Add padding to game list
2025-04-18 14:44:25 +10:00
Stenzek
1fa77e530b
FullscreenUI: Center achievement/leaderboard images
...
Fixes the placeholder image being stretched.
2025-04-17 21:05:54 +10:00
Stenzek
9a6725367b
FullscreenUI: Change default background name
2025-04-17 21:05:44 +10:00
Stenzek
def6b76116
FullscreenUI: Make menu item borders optional
2025-04-17 21:05:44 +10:00
Stenzek
5b5eef61d7
FullscreenUI: Increase spacing between menu items
2025-04-17 21:05:44 +10:00
Stenzek
7aa831c8df
FullscreenUI: Improve look of slider popups
2025-04-17 21:05:44 +10:00
Stenzek
ddf906f377
FullscreenUI: Polish achievements login dialog
2025-04-17 21:05:44 +10:00
Stenzek
c9ae4dcd0f
SPU: Enable VU meter in debug builds
2025-04-17 21:05:44 +10:00
Stenzek
3d2085f797
GPU: Fix some CPU thread state reads
2025-04-14 22:20:29 +10:00
Stenzek
4c1aba62fc
System: Remove unused function
...
And rename instances of "filename" to "path".
2025-04-14 22:20:29 +10:00
Stenzek
a0de2febad
GPUThread: Minor logic corrections
2025-04-14 22:19:17 +10:00
Stenzek
751d81eff0
GPU/TextureCache: Handle FetchTexture() fails
2025-04-14 22:19:17 +10:00
Stenzek
ebf33f32fa
FullscreenUI: Crash fix
2025-04-13 13:58:46 +10:00
Stenzek
ca46c11829
FullscreenUI: More string_view usage
2025-04-12 21:14:51 +10:00
Stenzek
65fd6f9ff3
FullscreenUI: Fix crash in hotkey settings
2025-04-12 21:14:47 +10:00
Stenzek
32963c3f6a
Controller: Use string_view() for localised strings
2025-04-12 14:51:58 +10:00
Stenzek
057398b4ab
FullscreenUI: Mostly replace C string usage with string_view
2025-04-12 14:13:05 +10:00
Stenzek
8f8f7cd1cb
Achievements: Queue RAIntegration writes on CPU thread
2025-04-12 12:35:05 +10:00
Stenzek
faa7ca5121
FullscreenUI: Add confirmation to hardcore mode enable/reset
2025-04-12 12:30:53 +10:00
Stenzek
c192bd798b
Bus: Stub out 0x1F802080
...
Used by some homebrew.
2025-04-11 22:18:27 +10:00
Stenzek
fca250257c
Achievements: Initialize RAIntegration in two parts
2025-04-11 22:13:07 +10:00
Stenzek
c1e01af511
Host: Expose RunOnUIThread() to core
...
I hate this, but sadly needed for RAIntegration...
2025-04-11 22:13:07 +10:00
Stenzek
2eecf6b79d
GPU/HW: Clear depth at vblank time in 480i games
...
If this is a 480i single buffer game, then rendering should complete within one vblank.
Therefore we should clear the depth buffer, because the drawing area may not change.
2025-04-10 22:02:40 +10:00
Stenzek
e7a3465598
Achievements: Display hardcore disabled subtitle in game summary
2025-04-10 21:45:45 +10:00
Stenzek
284b13cd43
Achievements: Fix starting with RAIntegration-forced HC mode
2025-04-10 21:40:34 +10:00
Stenzek
8e73b1db7e
Achievements: Display notification on subset complete
2025-04-10 21:32:26 +10:00
Stenzek
6165b504b8
Achievements: Use new badge_url/badge_locked_url fields
2025-04-10 21:24:08 +10:00
Stenzek
4708a8fda4
Achievements: Fix login while ingame
2025-04-10 21:12:35 +10:00
Stenzek
21560537c2
Achievements: Fix crash starting with no game
2025-04-10 02:29:45 +10:00
Stenzek
15a81e5543
Deps: Remove RAInterface
2025-04-10 02:18:17 +10:00
Stenzek
d286b96c2d
Achievements: Swap RAInterface for RAIntegration via rc_client
2025-04-10 02:16:12 +10:00
Stenzek
1bb1354d4e
Achievements: Use rc_client as source of truth for HC mode
2025-04-10 01:35:10 +10:00
Stenzek
a0aac8ef17
dep/rcheevos: Bump to latest upstream
2025-04-10 01:35:10 +10:00
Stenzek
e41543c38a
Achievements: Cache latest/nearest achievement info
...
When using RAIntegration through rc_client, the rc_client_achievement_t
pointer does not persist after rc_client_destroy_achievement_list().
2025-04-10 01:35:08 +10:00
Stenzek
a310d3a5e7
FullscreenUI: Fix load-and-resume-state HC popup
2025-04-09 22:47:39 +10:00
Stenzek
97c81edf39
FullscreenUI: Android build fix
2025-04-09 13:24:47 +10:00
Stenzek
182ba2aa7f
SPU: Devel build fix
2025-04-08 22:21:12 +10:00
Stenzek
8706f609dd
SPU: Add VU meter display in debug/devel builds
2025-04-08 22:06:03 +10:00
Stenzek
0479500357
CPU: Correctly mask upper 1.5GB of KUSEG
...
Stops fastmem going into a loop when trying to backpatch accesses
above 512MB.
2025-04-08 21:39:29 +10:00
Stenzek
0a1e8e27f0
ShaderGen: Emit packUnorm4x8() for GLSL ES 3.0
2025-04-08 20:11:01 +10:00
Stenzek
7971bb949b
GPU/HW: Add Scale2x/Scale3x texture filters
2025-04-08 20:10:58 +10:00
Stenzek
52f8a347c7
FullscreenUI: Fix Toggle Fast Forward being disabled
2025-04-07 20:48:32 +10:00