Stenzek
e25f287d60
Qt: Avoid stuck in temporary render-to-separate mode
2025-03-10 21:54:45 +10:00
Stenzek
9f0bbccd50
Achievements: Fix progress bar text alignment
2025-03-10 21:54:45 +10:00
Víctor "IlDucci
29f19d0ab6
Spanish (Spain) translation update ( #3386 )
...
- Adding new strings.
2025-03-09 16:10:49 +10:00
Stenzek
58dc7562a3
GPU/HW: Add in-pass clear depth pipeline
...
Instead of clearing the entire buffer, we only need to wipe out the
current drawing area. Saves a decent chunk of memory bandwidth in games
that end up spamming clears.
2025-03-07 21:33:06 +10:00
Stenzek
ee6887b68a
GPU/HW: Add stat for depth buffer clears
2025-03-07 21:33:02 +10:00
Stenzek
2bfbec3e9e
Settings: Use new key name for depth threshold
...
Because of the changed range.
2025-03-07 21:32:57 +10:00
Stenzek
705fe11e07
Qt: Fix incorrect file filter for memory card import
2025-03-07 21:32:57 +10:00
Stenzek
e73ca9e052
Qt: Fix new range for depth clear threshold
2025-03-07 18:05:20 +10:00
Stenzek
6437a5db60
GPU/TextureCache: Dump textures asynchronously
...
Saves lagging the emulation.
2025-03-07 16:05:36 +10:00
Stenzek
95797b05f1
GPU: Force early run on GP0 FIFO overflow
...
And don't crash if a game spams GP0 writes and it overflows.
2025-03-07 15:49:07 +10:00
Stenzek
9939f1cd05
CPU/Interpreter: Use __builtin_{add,sub}_overflow for exceptions
...
Recompiler already does this.
2025-03-07 15:48:28 +10:00
Stenzek
7eb7ad684c
CPU/Recompiler: Remove load delay flag from lwc2
...
Shouldn't make any difference since it's not a register write.
2025-03-07 15:08:00 +10:00
Stenzek
826f10239c
CPU/Recompiler: Flush GTE completion cycle on load without fastmem
2025-03-06 22:41:10 +10:00
Stenzek
78bb14bd23
CPU: Fix disassembly of GTE instructions in log
2025-03-06 22:41:10 +10:00
Stenzek
b230c9c639
CPU/PGXP: Use GTE MAX_Z for Z normalization
...
Fixes clipping with depth buffer in some games, e.g. Final Fantasy VII battles.
2025-03-06 22:41:10 +10:00
Stenzek
8cfd843d8f
System: Fix depth clear threshold not applying immediately
2025-03-06 22:41:09 +10:00
Stenzek
160f1ea8a0
Qt: Fix vibration motor binding not showing some devices
2025-03-06 22:41:09 +10:00
Anderson Cardoso
c3ce0eece2
Atualização Português do Brasil ( #3385 )
...
Melhoria de consistência dos textos e adição de novos conforme última atualização mais recente.
2025-03-06 22:40:54 +10:00
Stenzek
0bf0b5c22b
Qt: Fix typo in setup wizard
2025-03-04 14:07:17 +10:00
Stenzek
4c64e4879f
Mini: Log fatal errors to stderr
2025-03-04 14:07:17 +10:00
Daniel Nylander
af4eb68065
Updated Swedish translation ( #3383 )
2025-03-04 14:06:10 +10:00
Stenzek
859f5090c8
FullscreenUI: Update translation strings
2025-03-02 12:01:55 +10:00
KamFretoZ
38146f2023
FullscreenUI: Fix toast colors and add more themes ( #3381 )
2025-03-02 12:01:27 +10:00
Stenzek
a0fef2d5ab
Qt: Merge gamelistmodel.cpp and gamelistwidget.cpp
...
They're constantly referring to each other.
2025-03-01 18:13:37 +10:00
Stenzek
4bfb37f8fb
Qt: Add graphics and achievements to setup wizard
2025-03-01 18:05:48 +10:00
Stenzek
965da856db
FullscreenUI: Add additional rounding to some dialogs
2025-03-01 17:10:09 +10:00
Stenzek
34fdbafe85
FullscreenUI: Add drop shadows to most text
...
Improves readability with custom backgrounds.
2025-03-01 16:00:05 +10:00
Stenzek
9bfc3e90cc
FullscreenUI: Hook up dynamic toast colour
2025-03-01 13:10:50 +10:00
Stenzek
9d9da94b7b
FullscreenUI: Default to dark theme on unknown value
2025-03-01 13:10:50 +10:00
Stenzek
5a4e87aba3
FullscreenUI: Reorder interface settings to match Qt
2025-03-01 13:10:44 +10:00
KamFretoZ
5dc0a3630a
FullscreenUI: Add Themes ( #3380 )
2025-03-01 12:41:06 +10:00
Stenzek
89d9842c7e
FullscreenUI: Fix popup title colours
2025-03-01 01:11:26 +10:00
Stenzek
be970bcfe4
Qt: Handle inverted+negated axes when mapping
2025-02-28 18:06:51 +10:00
Stenzek
ec7c83a58e
Settings: Fix race toggling OSD messages
2025-02-28 16:29:18 +10:00
Stenzek
6a86c80445
CPU: Correct wording about cop2 and IRQs
2025-02-28 16:29:18 +10:00
Stenzek
37fa0d135c
Mini: Add duckstation-mini interface
2025-02-28 16:29:18 +10:00
Stenzek
df9f15eb68
OpenGLDevice: Support SDL window type
2025-02-28 16:29:18 +10:00
Stenzek
ee1a3b904e
VulkanDevice: Support SDL window type
2025-02-28 15:46:53 +10:00
Stenzek
4bddd38d70
WindowInfo: Add SDL window type
2025-02-28 15:46:53 +10:00
Stenzek
0733e173b2
FullscreenUI: Add BackgroundProgressCallback
2025-02-28 15:46:53 +10:00
Stenzek
498e7aac56
X11Tools: Load libxcb and friends dynamically
2025-02-28 15:46:53 +10:00
Stenzek
f7f17a077c
Cheats: Add Enable8MBRAM option for patches
2025-02-26 22:43:18 +10:00
Anderson Cardoso
0b167aad52
Atualização Português do Brasil ( #3379 )
...
Atualizado para a última versão.
2025-02-26 22:42:50 +10:00
Renzo Pigliacampo
08bbb4a981
Updated Spanish (Latin America) translation ( #3378 )
2025-02-26 22:42:42 +10:00
Stenzek
fbbc4943f6
FullscreenUI: Fix crash in game properties on non-scanned file
2025-02-24 23:48:23 +10:00
Stenzek
eda32e0695
Qt: Fix image key in overlay export
2025-02-23 18:03:02 +10:00
Stenzek
b764ed4682
DDGoController: Fix incorrect translation context
2025-02-23 18:03:02 +10:00
zkdpower
2011c5511c
Update the Simple-Chinese translation to latest. ( #3377 )
2025-02-23 18:02:52 +10:00
Stenzek
3ea26cc910
GPU: Rewrite automatic resolution scaling
...
Make it play nice with rewind/runahead.
2025-02-21 23:58:05 +10:00
Stenzek
d812463649
Qt: Ensure SIGCHLD is ignored properly
2025-02-21 23:58:04 +10:00
Stenzek
5fea81c07d
Qt: Show only HC achievement count if HC == SC
2025-02-21 23:58:04 +10:00
Stenzek
91370ee5ac
Achievements: Update both HC and SC counts on unlock/boot
2025-02-21 23:58:04 +10:00
Stenzek
fa3815d681
Achievements: Fix progress database corruption
2025-02-21 23:58:04 +10:00
KamFretoZ
6a0c73b547
Qt: Add AMOLED theme ( #3374 )
2025-02-20 13:18:27 +10:00
Stenzek
78bd0fdf3e
Qt: Always use ARGB32 for padded cover images
...
Fixes black background around non-square covers.
2025-02-17 22:53:10 +10:00
Stenzek
72ac4f94db
CDROM: Increase delay for pause-when-paused
...
Fixes lockup in Tama - Adventurous Ball in Giddy Labyrinth.
2025-02-17 22:53:10 +10:00
Stenzek
6f25cf31a7
CDROM: Add randomness to repeated seek times
...
I hate it, but it fixes lockups in Dino Crisis 2, and probably
other games with dodgy code too.
Also Simple 1500 Series Vol. 57 - The Meiro.
2025-02-17 22:52:56 +10:00
Stenzek
2f5c4d819e
Common: Add xorshift-based PRNG class
2025-02-17 21:33:37 +10:00
Stenzek
9a75af2fa9
Qt: Explicitly set desktop file path on startup
...
Fixes window icon when running under Wayland.
Or, well, as much as it can given the fact that smug GNOME developers
think that windows should not be able to set their own icons.
2025-02-16 23:49:19 +10:00
Stenzek
0c30acb285
Qt: Work around QtWayland bugs
...
- Render to main no longer screws up the game list/menu bar.
- Toggling render to main no longer breaks the main window.
Positioning still sucks, but the various groups involved would
rather sit around arguing with each other rather than actually
shipping solutions ¯\_(ツ)_/¯.
2025-02-16 22:16:19 +10:00
Stenzek
cb10c6fbf4
Qt: Ensure build warning is themed
2025-02-16 22:16:17 +10:00
Stenzek
5bd1a492be
GameDatabase: Turn PGXPPreserveProjFP into a boolean setting
2025-02-16 19:02:56 +10:00
Stenzek
e688e24eb9
GTE: Use floating-point math for preserve-proj-fp
2025-02-16 18:04:24 +10:00
Stenzek
9928d01ac4
Common: Fix ARM64 build on clang-cl 19
...
Also fix Vector4 extract32().
2025-02-16 18:03:33 +10:00
Stenzek
cba9d00019
Qt: Further improve async cover loading
...
- Fix non-square images not centering.
- Fix possible crash when changing scale quickly.
- Avoid repeatedly resizing placeholder.
2025-02-16 13:18:37 +10:00
Anderson Cardoso
b45f9c39c7
Atualização Português do Brasil ( #3373 )
...
Atualizado para a última versão.
2025-02-16 13:18:22 +10:00
Stenzek
1b3ca81efc
Qt: Fix hotkey search placeholder localisation
2025-02-15 23:02:19 +10:00
Stenzek
369f62318f
Cheats: Only display codes for selected revision
2025-02-15 22:45:17 +10:00
shikulja
4562573711
Update Russian translation ( #3372 )
...
* Update ts
* Update Russian translation
* .
2025-02-15 22:44:50 +10:00
Stenzek
ce8b1f0996
GPU: Small optimization to lanczos shader
...
Apparently the Adreno shader compiler can't do this on its own.
~23% performance improvement.
2025-02-15 17:44:41 +10:00
Stenzek
958fd0049c
GPU/HW: Don't use shader for self-overlapping copies
...
If we use the shader here, we're going to immediately end the
render pass since the area we read and wrote to is going to be
dirty again.
This is problematic on Mali where the render passes are really
expensive. Test case: Dino Crisis 2 - open menu
2025-02-15 17:20:30 +10:00
Stenzek
8772c336ec
CPU: Don't stall until GTE completion on write
...
Apparently this is what the real CPU does, and some very optimized
code can run slower if we stall early.
Obviously if you write to a register being read by the command,
things are going to break.
2025-02-15 12:57:18 +10:00
Stenzek
7d80a74dc3
GameDatabase: Remove now-unused traits
2025-02-15 12:57:02 +10:00
Stenzek
2bfc408242
Bus: Enable mmap fastmem on uppermost KSEG0 mirror
...
Instead of mapping all the RAM mirrors, we only map the KSEG0
uppermost mirror. This is where some games place their stack, so
we avoid the backpatching overhead/slowdown, but don't pay the
cost of 4x the mprotect() calls when a page's protection changes,
which can have a non-trivial impact on slow ARM devices.
2025-02-15 12:42:43 +10:00
Stenzek
e9bfca8cca
System: Add 'Fast Forward Memory Card Access' option
...
Does what it says on the tin.
2025-02-15 12:38:32 +10:00
Stenzek
13d58d8ed0
Qt: Move fast boot/fast forward to console settings
...
Makes more sense there, and matches Android.
2025-02-15 12:32:22 +10:00
Stenzek
f4aa5e1b98
MemoryCard: Filename -> Path
2025-02-15 11:39:31 +10:00
Stenzek
e0620fcd40
System: Fix setting-altering game patch behaviour
...
e.g. overclock was only half applying
2025-02-14 23:50:34 +10:00
Stenzek
bceadadcb4
Image: Fix possible unaligned movaps
2025-02-14 22:51:29 +10:00
Stenzek
6802f77cb9
CrashHandler: More Wcast-function-type-mismatch fixes
2025-02-14 22:06:44 +10:00
Stenzek
ced9ee4b0b
Qt: Update glyph ranges
2025-02-14 19:02:22 +10:00
Stenzek
dc6d6b91d4
PostProcessing: Fix abort on slow compile in big picture
2025-02-14 19:01:40 +10:00
Stenzek
5060e72b96
Qt: Fix missing vibration binding for NegConRumble
2025-02-14 19:01:40 +10:00
Stenzek
5ae32d3c70
System: Fix black screen when changing options while paused
2025-02-14 19:01:40 +10:00
Stenzek
953bd0919b
RegTest: Fix flipped images in OpenGL
...
We're reading the framebuffer, not rendered image.
2025-02-14 19:01:40 +10:00
Stenzek
b68d7c8adb
Image: Vectorize RGBA8 conversion and add A1BGR5
2025-02-14 19:01:40 +10:00
Stenzek
9b2cf0abbd
InputSource: Fix Wcast-function-type-mismatch
2025-02-14 19:01:40 +10:00
Stenzek
5913de947f
VulkanDevice: Fix incorrect texture format for A1BGR5
2025-02-14 19:01:40 +10:00
Stenzek
3a44c3a758
GPU: Fix prerotated presenting with OpenGL
2025-02-14 19:01:39 +10:00
zkdpower
f90fdf66c8
Update the Simple-Chinese translation to latest. ( #3371 )
...
* Update the Simple-Chinese translation to latest.
2025-02-14 19:01:28 +10:00
Stenzek
7bc18c8538
DDGoController: Rewrite to support axis input
...
And add virtual buttons for each of the possible states.
2025-02-12 21:52:02 +10:00
Anderson Cardoso
cd89f62935
Atualização Português do Brasil ( #3369 )
...
Atualizado para a última versão.
2025-02-12 19:22:13 +10:00
Stenzek
ce616f1c5c
Cheats: Reapply frame end codes immediately on reload
...
Otherwise you end up with a single frame where the old code is used.
2025-02-10 23:45:24 +10:00
Stenzek
c137c562cd
Qt: Fix incorrect recommended value
2025-02-10 23:45:24 +10:00
Stenzek
36d5708391
GPU/HW: Fall back to replacements from first disc
...
So you only need one copy.
2025-02-10 23:45:24 +10:00
Daniel Nylander
f6e8ebec99
Updating Swedish translation (100%) ( #3367 )
2025-02-10 23:44:23 +10:00
zkdpower
2876713f0f
Update the Simple-Chinese translation to latest. ( #3368 )
...
* Update the Simple-Chinese translation to latest.
* Update the Simple-Chinese translation to latest.
2025-02-10 23:44:11 +10:00
Stenzek
ef4c00a896
Qt: Use display name for a couple of recommended values
2025-02-10 02:21:19 +10:00
Stenzek
7a587d927f
Qt: Fix overlapping widgets in macro trigger shift-click
2025-02-10 02:15:27 +10:00
zkdpower
788b9cd3bf
Update the Simple-Chinese translation to latest. ( #3365 )
2025-02-10 02:00:38 +10:00
Víctor "IlDucci
c1f8a525ca
Spanish (Spain) translation update 2025-02-09 ( #3366 )
...
Adding latest changes and cleaning up unused translations.
2025-02-10 01:59:49 +10:00
Stenzek
5fb5dcdd70
Achievements: Improve summary popup
...
Put hardcore mode notice on its own line, rather than in
parenthesis in the title.
2025-02-09 18:24:06 +10:00
Stenzek
46ae3e55ea
Cheats: Show disabled code count when HC/safe mode is active
2025-02-09 17:45:19 +10:00
Stenzek
4ce48abfc1
GPU/HW: Fix incorrect source rect for page replacements
2025-02-09 17:45:16 +10:00
Stenzek
ac4ef4f853
Gt: Update glyph ranges
2025-02-09 16:50:02 +10:00
zkdpower
07f973076d
update the Simple-Chinese Translation to latest. ( #3363 )
2025-02-09 16:49:38 +10:00
Stenzek
8132c51a12
Cheats: Add 'Ignore' field to file format
...
Codes with Ignore set to true will not be listed/loaded.
2025-02-09 15:58:23 +10:00
Stenzek
4236beabaf
System: Fix setting-altering patches not applying on startup
2025-02-09 15:38:12 +10:00
Stenzek
0428a93315
Qt: Fix possible crash when rescanning game list
2025-02-09 15:04:09 +10:00
Stenzek
901927d7fe
CDROM: Don't panic on unknown register read
2025-02-09 13:23:37 +10:00
Stenzek
94b2060979
GPU: Clear display texture on fatal error
2025-02-09 13:22:03 +10:00
Stenzek
06b02183cb
GPU/HW: Split transparent draws if dual-source blend unsupported
...
The ordering is not correct otherwise. Ape Escape has a bunch of
overlapping sprites that have a mix of opaque and transparent texels,
and the transparent texels are repeated multiple times when the
opaque texels should cancel them out.
Only affects old Mali drivers.
2025-02-09 13:07:53 +10:00
Stenzek
2663ac9666
CDImage: Improve PBP load error reporting
2025-02-08 17:33:58 +10:00
Stenzek
160c34ef28
CDROM: Avoid additional stat() call loading subchannel
...
And use BuildRelativePath() for title-based subchannel files.
Fixes flaky loading on Android, some devices return a zero-sized file
when querying a non-existant file.........
2025-02-08 15:54:38 +10:00
Stenzek
81bca06707
System: Add hash to OnGameChanged
2025-02-08 15:03:17 +10:00
Stenzek
acb355a8c3
CDImage: Make .bin loader track length match .cue
...
Fixes different hashes for loading single-track .bin games directly.
2025-02-08 15:02:56 +10:00
Stenzek
f2cca01e29
ImGuiManager: Fix achievement unlock icon not showing
2025-02-08 01:46:44 +10:00
Daniel Nylander
084422355a
Updated Swedish translation ( #3362 )
2025-02-08 01:46:34 +10:00
Stenzek
063bb96e5d
D3D11Device: Always query timestamp before present start
...
Fixes high GPU usage reporting in D3D11 with AMD GPUs + Optimal Frame
Pacing.
2025-02-07 15:58:35 +10:00
zkdpower
5ae6d9084a
update Chinese translation. ( #3361 )
...
just UI.
2025-02-07 12:31:58 +10:00
Anderson Cardoso
51480818cd
Atualização Português do Brasil ( #3360 )
...
Atualizado para a última versão
2025-02-06 22:04:07 +10:00
Stenzek
f8c39ace1c
GPU/HW: Warning fix
2025-02-05 22:40:59 +10:00
Stenzek
bee2dabc77
Misc: Replace stringstream str() with C++20 move str()
...
No extra heap allocation/copy.
2025-02-05 22:38:48 +10:00
Stenzek
2cfc39e874
System: Move cheat reload to Initialize()
2025-02-05 22:13:51 +10:00
Stenzek
57cb2f846e
FullscreenUI: Fix system unpausing on shutdown
2025-02-05 20:03:58 +10:00
Stenzek
ecbb79c4bf
GPU: Add Lanczos scaling option
2025-02-05 20:01:26 +10:00
Stenzek
99e81f1559
GPU: Fix incorrect condition in WaitForOneQueuedFrame()
2025-02-05 19:31:01 +10:00
Stenzek
c6563a4656
VulkanDevice: Require Vulkan 1.1 for most extension probing
...
Too much of a headache to deal with these ancient Mali drivers that
support some extensions but not full Vulkan 1.1, and VMA does not
support this scenario.
2025-02-04 17:15:29 +10:00
Stenzek
4ad2d0ac2d
GPU: Fix incorrect PAL overscan range
2025-02-03 19:31:23 +10:00
Stenzek
455836af89
CMake: Check C++20 features that are missing on some systems
2025-02-03 00:30:59 +10:00
Stenzek
cb205c4c36
Qt: Show icon in settings console region dropdown
2025-02-02 22:57:59 +10:00
Stenzek
af277d4d14
Settings: Default to nearest sprite texture filtering
...
Instead of whatever the 3D texture filter is.
Less confusing since the UI is not disconnected when upgrading from very
old releases, or Android.
2025-02-02 22:57:31 +10:00
Stenzek
59773509af
System: Recreate memory save states when device options change
2025-02-02 22:54:32 +10:00
Stenzek
1f5a10371e
GPUThread: Handle rare race condition in frame queueing
2025-02-02 22:18:13 +10:00
Stenzek
1ca5782396
Threading: Handle EINTR on sem_wait()
2025-02-02 22:17:56 +10:00
Stenzek
4ceeb58dbc
GPU: Use display size for calculating internal screenshot size
...
Fixes detail being lost due to added padding when not cropping.
2025-02-02 17:14:35 +10:00
Stenzek
64d3716cfd
GPU: Further simplify draw rect calculation
...
Remove "Stretch Vertically" option, it was very confusing to users.
Integer scale will prefer whichever direction gets a larger draw
rectangle/preserves as much detail.
2025-02-02 17:02:58 +10:00
Stenzek
0c3d55a1a1
GPU: Fix incorrect PAR with overscan cropping
2025-02-02 16:07:06 +10:00
Stenzek
a5940b2e21
GPU: Use constants for display overscan range
2025-02-02 15:39:20 +10:00
Stenzek
24354cb39f
GPU: Fix more GPU thread-reading-CPU-thread-settings locations
2025-02-02 13:08:08 +10:00
Stenzek
804d90d48f
System: Fix overriding console region
2025-02-02 13:00:18 +10:00
Stenzek
a681386f28
Qt: Fix some options not being disabled with SW
2025-02-01 23:19:12 +10:00
Stenzek
b01c06b412
GPU/TextureCache: Prevent wrapping for replacement lookup
...
Fixes replacements for 8 and 16-bit textures placed in the right-most
page of VRAM.
2025-01-31 20:56:11 +10:00
Stenzek
635ae5de31
GPU/HW: Don't use sprites-as-fills for small/offscreen points
2025-01-31 19:50:33 +10:00
Stenzek
d65c4efdd8
GPU/TextureCache: Prefill dumped texture list with replacements
...
Allows skipping dumping replaced textures without replacements enabled.
2025-01-31 15:47:22 +10:00
Stenzek
b5925ab139
Achievements: Include any codepoints above 0x100 in dynamic range
2025-01-31 13:48:57 +10:00
Stenzek
03181d1179
GPUThread: Fix crash during FSUI language switch
2025-01-31 13:47:29 +10:00
Stenzek
96058f5d7e
System: Use recreation logic for toggling GPU threading
2025-01-31 12:56:19 +10:00
Stenzek
f7d7eecb6c
GPU/TextureCache: Fix replacements starting in second page
2025-01-30 13:33:00 +10:00
Stenzek
44a75d6586
GPUThread: Fix setting change crash with thread off
2025-01-30 13:32:32 +10:00
Stenzek
369879e685
Settings: Log when creating EmuFolders fails
2025-01-30 02:11:23 +10:00
Stenzek
aae7573e63
Achievements: Fix build with regtest
2025-01-30 02:10:49 +10:00
Stenzek
9b6021b79e
FullscreenUI: Fix progress bar padding in loading screen
2025-01-30 01:43:22 +10:00
Stenzek
0d9e6bd482
FullscreenUI: Use effective value for achievement options enable
2025-01-30 01:18:47 +10:00
Stenzek
d314b25f91
System: Fix per-game achievements hardcore mode
...
By mostly reverting 4dd6365a99
, I didn't
think of all the implications. Not just per-game HC mode, but it's also
problematic on Android too.
2025-01-30 01:18:47 +10:00
Stenzek
02234715c5
FullscreenUI: Move UpdateRunIdleState() for system soft-fail to host
...
That way it's always in the correct state for e.g. memory card shutdown
confirmations.
2025-01-29 20:40:14 +10:00
Stenzek
128bab29f8
Host: Allow button title override in ConfirmMessageAsync()
2025-01-29 19:19:53 +10:00
Stenzek
4dd6365a99
System: Simplify HC disable confirm on startup
...
Use one path on all platforms, always asynchronous.
2025-01-29 19:19:53 +10:00
Stenzek
28f6358ec5
Qt: Use FSUI to service ConfirmMessageAsync() if active
2025-01-29 19:19:53 +10:00
Stenzek
4da7692a2d
System: Adjust initialization order to better fit FullscreenUI
...
Fixes jankyness of rendering the landing page when trying to resume
a game with achievements active, or when loading state.
2025-01-29 19:19:53 +10:00
Stenzek
1b678d0ebc
FullscreenUI: Allow using right mouse button for 'back'
2025-01-29 19:19:53 +10:00
Stenzek
224cb6ac8e
FullscreenUI: Fix ClosePauseMenu() running on wrong thread
2025-01-29 19:19:49 +10:00
Stenzek
231ba050a2
GPUThread: Switch to borderless if exclusive fullscreen fails
...
Better than ending up windowed.
2025-01-29 18:20:41 +10:00
Stenzek
e36dbaf255
Qt: Show current fullscreen resolution in UI even if invalid
2025-01-29 18:20:08 +10:00
Stenzek
70c45f7cf8
GPU/TextureCache: Handle replacements larger than 256x256
...
I left this unfinished because it was a pain...
2025-01-28 17:36:00 +10:00
Stenzek
f58fa2297e
GPU/TextureCache: Only use a single palette record for C16
...
Stops C16 textures larger than 256x256 being split up.
2025-01-28 17:36:00 +10:00
Stenzek
b0c0d6444c
GPU/TextureCache: Fix parsing of C16 replacement names
2025-01-28 17:36:00 +10:00
Stenzek
7188ab863a
GPU/HW: Treat fill-like sprites as fills if TC is enabled
...
Umihara Kawase Shun clears the framebuffer with a single large
sprite, which causes the texture cache to think the pages have
been drawn.
2025-01-28 17:35:52 +10:00
Stenzek
d7c78eedce
GPU/HW: Fix box downsampling on OpenGL ES
2025-01-28 15:59:35 +10:00
Stenzek
0665cb5306
FullscreenUI: Further refine achievements login dialog
2025-01-27 13:34:45 +10:00
Stenzek
5630f3958b
Qt: Fix loading webp images on Windows
2025-01-26 14:01:42 +10:00
Stenzek
0e3668a7bb
GameList: Show achievement information in game list
2025-01-26 13:49:08 +10:00
Stenzek
6512ed8a8c
Achievements: Add offline tracking of progress and hash library
2025-01-26 13:49:08 +10:00
Stenzek
d4b0b7fc29
Achievements: Include rc_client version in user agent
2025-01-26 13:49:08 +10:00
Stenzek
6a09d6ecda
Achievements: Don't store hash as a string
...
This is needed to store achievement metadata in the game list.
2025-01-26 13:30:26 +10:00
Stenzek
ca509a8b97
StringUtil: Add fixed-length DecodeHex()
2025-01-25 22:35:06 +10:00
Stenzek
543704d57c
HTTPDownloader: Drop some log messages to debug
2025-01-25 22:35:06 +10:00
Stenzek
2b7a4f8d19
Qt: Avoid game list refresh on shutdown
...
We only need to invalidate the entries that have had their play times
changed, not the entire list.
2025-01-25 19:45:42 +10:00
Stenzek
4e97420b3b
InputManager: Switch to SDL3
2025-01-24 15:54:31 +10:00
Stenzek
573b2eb529
SPU: Move device failure message to OSD
2025-01-24 14:54:57 +10:00
Stenzek
9666abc172
FullscreenUI: Hook up to disc change hotkey
2025-01-24 13:47:55 +10:00
Stenzek
dc5f85a34e
System: Display safe mode warning when toggling on
2025-01-24 12:50:35 +10:00
Anderson Cardoso
807094d627
Atualização Português do Brasil ( #3357 )
...
Atualizado para a última versão
2025-01-23 12:38:43 +10:00
Stenzek
13c7b8542d
GPUThread: Fix starting big picture mode
2025-01-23 12:37:26 +10:00
Stenzek
4da1f613b6
System: Simplify CD speedup warnings
2025-01-23 12:22:32 +10:00
Stenzek
df8822760a
GPU/HW: Further tweaks to replacement alpha handling
...
We can't simply clear the alpha channel unconditionally here, because that
would result in any black pixels with zero alpha being transparency-culled.
Instead, we set it to a minimum value (2/255 in case of rounding error, I
don't trust drivers here) so that transparent polygons in the source still
set bit 15 to zero in the framebuffer, but are not transparency-culled.
Silent Hill needs it to be zero, I'm not aware of anything that needs
specific values yet. If it did, we'd need a different dumping technique.
2025-01-23 12:12:58 +10:00
Stenzek
9113a6e6a6
Qt: Add 'Multiple Devices' to automatic mapping
...
Also populate the "current device" label with the device from
the config when running the setup wizard, instead of always setting
the label to Keyboard.
2025-01-22 18:38:37 +10:00
Stenzek
b08ab9f712
Qt: Fix border overlay export button
2025-01-22 18:38:37 +10:00
Stenzek
d395be07ee
Qt: Fix global setting showing incorrectly for int-list
2025-01-22 18:38:37 +10:00
Stenzek
89504b0184
GPUThread: Push settings through FIFO
...
Saves the std::function heap allocation.
2025-01-22 18:38:37 +10:00
Stenzek
f045a1742d
GPUThread: Fix order of updating state
...
Fixes unoverwritten textures not dumping on system shutdown.
2025-01-22 18:38:37 +10:00
Stenzek
8eaa1f312d
GPU: Fix overlay destination alpha with postfx
...
Also don't assume the image has premultiplied alpha.
2025-01-22 18:38:37 +10:00
Stenzek
0129679bb0
GPU: Reduce overdraw when using overlays
...
Clear the four borders individually instead of a blit over the
entire texture.
2025-01-22 18:38:37 +10:00
Stenzek
0166939609
PostProcessing/GLSL: Clear alpha to 1.0
2025-01-22 18:23:12 +10:00
Stenzek
be75a97efe
GPUDevice: Fix swap chain clear colour normalization
2025-01-22 18:23:11 +10:00
Stenzek
af58740f5d
System: Always display OSD warning messages
...
I regretted what I did in f2720b98dd
less than a week after I pushed the change.
As a compromise, only display the unsafe settings warnings on startup.
2025-01-22 18:23:10 +10:00
Stenzek
4e588bb6c1
GPU: Fix incorrect interface for postfx config
2025-01-21 20:55:26 +10:00
Stenzek
78f6e11b91
GPUThread: Skip debug window update on Android
2025-01-21 20:22:10 +10:00
Stenzek
19ca9cb47d
GPU/HW: Use texture loads for native resolution
...
Hopefully work around sampling precision issues in older AMD drivers
and Mali Midgard if we're lucky. But I don't have anything this old
to verify with.
2025-01-21 20:15:07 +10:00
Stenzek
080eccd8fc
GPUThread: Shutdown instead of panicing on switch failure
2025-01-21 20:12:38 +10:00
Stenzek
9c4b2112ae
GPU: Fix incorrect screen draw rect
...
Fixes loading screen in Alundra 2, as well as incorrect effective
PAR when using None crop mode.
2025-01-21 19:54:54 +10:00
Stenzek
fb3e290133
GPUDevice: Move exclusive fullscreen to features
...
Also fixes it not enabling in D3D12 renderer.
2025-01-21 19:12:44 +10:00
Stenzek
389276bb03
GPUDevice: Normalize supports_texture_buffers => texture_buffers
2025-01-21 19:06:59 +10:00
Stenzek
9d4789e082
FullscreenUI: Fix blank screen flicker starting game
...
Also returns to whichever menu the system boot was initiated from.
2025-01-20 23:17:24 +10:00
Stenzek
17b0da7283
GameList: URL encode custom properties paths with brackets
...
Fixes custom properties not applying on restart to games with
brackets in their paths.
2025-01-20 21:59:24 +10:00
Stenzek
4b20fc6922
Path: Fix several errors in URLEncode/Decode and add tests
2025-01-20 21:44:44 +10:00
Stenzek
78902d7632
FullscreenUI: Fix several more unsafe reads
2025-01-20 19:00:51 +10:00
Stenzek
f219b47e98
FullscreenUI: Use constant width/height scale on Android
...
Fixes achievement notifications being differently sized
depending on the screen rotation.
2025-01-20 00:01:46 +10:00
Stenzek
7c2488c942
PostProcessing/GLSL: Fix image moved off-screen with alignment
2025-01-19 21:40:38 +10:00
Stenzek
c03b6f3d84
Misc: Replace isspace() usage with StringUtil::IsWhitespace()
...
Avoids the UB if the character is negative (e.g. reading from a binary
file), as well as locale-specific rubbish.
2025-01-19 21:29:14 +10:00
Stenzek
21b167d382
CDImage: Tidy up Open() method
2025-01-19 21:29:14 +10:00
Stenzek
7905793ae0
GPU: Use screen alignment for overlay instead of display rect
2025-01-19 21:13:16 +10:00
Stenzek
8c5c0e6114
Common: Fix Vector2->Vector4 zero-extend constructor
...
And add loadl(const GSVector2i&) as an easier-to-read overload.
2025-01-19 21:13:16 +10:00
Stenzek
ade8bf7b3b
GPU: Fix overlay+postprocessing combination
2025-01-19 21:13:16 +10:00
Stenzek
9fdeeb3fb6
GPU: Add alpha blending support to overlay
2025-01-19 16:37:51 +10:00
Stenzek
9b8d2a88de
System: Required changes for Android
2025-01-19 15:31:58 +10:00
Stenzek
e1cbb50c64
GPU: Fix various capture/screenshot issues
...
- Simplify functions for rendering display.
- Post-processing should only when the target size matches the window.
Otherwise the shaders are constantly recompiled.
- Include border overlay in capture/screenshots when above condition
is satisfied.
- Relax video alignment size when using screen resolution + auto.
- Fix "Internal Resolution (Uncorrected)" capture mode.
2025-01-19 13:42:38 +10:00
Stenzek
725dcea05a
GPU: Fix crash toggling border overlays
2025-01-19 12:25:19 +10:00
Stenzek
6131ddbefe
GPU: Fill in unused/padded area in overlays
2025-01-18 22:59:49 +10:00
Stenzek
88b43370dc
GPUDevice: Replace explicit GL_PUSH/GL_POP with nested GL_SCOPE
2025-01-18 22:59:49 +10:00
Stenzek
d62261e7a4
GPUDevice: Allow nested GL_SCOPE macros
2025-01-18 22:59:49 +10:00
Stenzek
e0a9bbe600
PostProcessing: Move into GPU presenter
...
Means that the renderer can be changed without reloading shaders,
and speeds up config change detection.
2025-01-18 22:59:48 +10:00
Stenzek
d589696eff
PostProcessing: Get rid of GPU-dependent globals
2025-01-18 22:59:48 +10:00
Stenzek
338d29d271
GPUDevice: Move empty/null texture to base class
2025-01-18 22:59:48 +10:00
Stenzek
609fa5c7d7
GPUDevice: Add sampler cache to base class
...
Removes per-backend bookkeeping in D3D12 and Vulkan.
2025-01-18 22:59:48 +10:00
Stenzek
da13579356
GPU: Align presenter/backends to cache line
2025-01-18 22:59:48 +10:00
Stenzek
dd9788262e
GPU: Refactor display presentation workflow
...
Adds the ability to set overlays, and fixes postfx with prerotation.
2025-01-18 22:59:48 +10:00
Stenzek
6cba825bac
System: Add fatal error shutdown path
...
Switch to a null backend and shut down the system instead of crashing.
2025-01-18 22:59:48 +10:00
Stenzek
d52bf795e4
GPU: Split backend into Backend+Presenter
2025-01-18 22:59:48 +10:00
Stenzek
8f19ac2dee
System: Set rapidyaml error handlers on startup
...
That way it can be used in multiple places.
2025-01-18 22:59:48 +10:00
Stenzek
08d2586a86
System: Allow host to set async worker count
...
For regtest.
2025-01-18 22:59:48 +10:00
Stenzek
e41f179108
PostProcessing: Fix erroneous reload message
2025-01-18 22:59:48 +10:00
Stenzek
1481c1d231
System: Post-processing is shut down on GPU thread
2025-01-18 22:59:48 +10:00
Stenzek
b9822602b2
FullscreenUI: Show game icons in game list
2025-01-18 22:59:48 +10:00
Stenzek
f98b904c50
FullscreenUI: Add 'Set Cover Image' to game list
2025-01-18 22:59:48 +10:00
Stenzek
7cc47551a4
FullscreenUI: Fix parent scroll resetting on directory change
2025-01-18 22:59:48 +10:00
Stenzek
e34d23c8e7
FullscreenUI: Implicitly close non-multichoice dialogs
...
Also fixes disc swap using a multichoice instead of single.
2025-01-18 22:59:47 +10:00
Stenzek
a7ab53f02c
GPU: Fix GLSL ES compile error with weave deinterlacing
2025-01-18 22:59:47 +10:00
Stenzek
43e7be902c
Misc: Add missing error reporting to a couple of WriteBinaryFiles()
2025-01-18 22:59:47 +10:00
Stenzek
227c249d7f
FullscreenUI: Skip SVG prefix if image is not a SVG
2025-01-18 22:59:47 +10:00
Stenzek
c34dda39b7
FullscreenUI: Fix invalidating images with size hints
2025-01-18 22:59:11 +10:00
Stenzek
e8a4296fd6
FullscreenUI: Add missing settings lock acquire
2025-01-18 22:59:10 +10:00
Stenzek
e94973cd28
FullscreenUI: Fix disc swap running on GPU thread
2025-01-18 13:48:05 +10:00
Stenzek
d054d76a76
FileSystem: Add Error to CopyFilePath()
2025-01-18 13:48:05 +10:00
Stenzek
fbb63a81a8
FullscreenUI: Change default background and add Strobe
2025-01-17 16:05:24 +10:00
Stenzek
7deaaa8b26
FullscreenUI: Use ImGui dialogs for boot failure
2025-01-17 14:30:22 +10:00
Stenzek
e554456a00
System: Fix blank display on pause-on-start
2025-01-17 14:20:37 +10:00
Stenzek
3be4f1983d
GPU: Fix playback of VRAM updates during draws
2025-01-17 13:22:40 +10:00
Stenzek
bf7ca1951e
Qt: Fix game list search box oversizing
2025-01-17 12:56:06 +10:00
Anderson Cardoso
2957f55450
Atualização Português do Brasil ( #3356 )
...
Atualizado para a última versão
2025-01-17 13:56:32 +10:00