Davide Pesavento
70225f8345
Always use CTAD with std::unique_lock
2025-06-14 13:10:57 +10:00
Davide Pesavento
2c7d07b245
Qt: Implement reset play time for disc sets
2025-06-14 13:10:57 +10:00
Stenzek
9c4e15ef1c
Host: Remove now-unused ReadCompressedResourceFile()
2025-06-14 02:30:11 +10:00
Stenzek
0cf5618a05
FullscreenUI: Fix crash in JogCon controller settings
2025-06-14 02:30:11 +10:00
Stenzek
c06da318d6
FullscreenUI: Fix trophy placement on non-square covers
2025-06-14 02:30:10 +10:00
Stenzek
06da45b3f2
FullscreenUI: Polish dialogs
2025-06-14 02:30:10 +10:00
Stenzek
77457a3b1d
ImGuiManager: Switch to dynamic fonts
2025-06-14 02:30:10 +10:00
Stenzek
9c4aaca7c8
FullscreenUI: Avoid losing game list selection inbetween mouse move and popups
2025-06-13 21:42:40 +10:00
Stenzek
a2d351ca90
FullscreenUI: Improve title truncation in game grid
...
Use the computed text length, rather than an arbitrary size.
2025-06-13 21:26:54 +10:00
Stenzek
94b88fad23
GPU/HW: Avoid texture filter dual-source output when unnecessary
...
Because we all know how much mobile drivers crapping themselves
whenever anyone mutters dual-source blending.
2025-06-13 21:02:07 +10:00
Stenzek
a8db46a6b8
GPU/HW: Use signed difference in luma_distance()
...
Fixes the warning, and also underflowing, since both were unsigned
it would overflow if the second was greater the first.
2025-06-13 20:54:48 +10:00
Stenzek
ac0c4544e1
GPU/HW: Work around fxc uninitialized variable false positive
2025-06-13 20:54:48 +10:00
Stenzek
824b91a1f8
GPU/HW: Split MMPX to MMPX and MMPX Enhanced
2025-06-13 16:42:32 +10:00
crashGG
98798fec66
mmpx enhance ( #3443 )
...
enhance MMPX algorithm, fix some minor graphics defects.
Update gpu_hw_shadergen.cpp
2025-06-13 16:34:54 +10:00
Stenzek
5eb8578edc
System: Save undo state on reset
2025-06-08 17:08:52 +10:00
Stenzek
cb2dfabeeb
Qt: Backport undo load state timestamps
2025-06-08 17:08:50 +10:00
Stenzek
bd9e206165
FullscreenUI: Fix layout calculations in game grid
2025-06-08 12:04:06 +10:00
Stenzek
59f7d0b2ff
Cheats: Fix compiler warnings
2025-06-05 19:58:45 +10:00
Stenzek
d54077e345
Achievements: Add 'Refresh Progress' option
...
Manually refreshes the all progress database if you have completed
unlocks on other devices/machines.
2025-06-05 19:58:45 +10:00
Stenzek
0205f9fa04
Achievements: Update progress database unconditionally on unlock
...
Doesn't make sense to preserve the greater count, since it can be
reset through the RA webpage, and SC/HC seems to work fine here.
2025-06-05 13:35:04 +10:00
Stenzek
9ab2608ba0
GPU/TextureCache: Fix replacement background name length
2025-06-03 22:55:21 +10:00
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