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
Stenzek
092b2803c5
GPU/HW: Flipping the mask bit test should flush
2025-01-16 23:50:40 +10:00
Stenzek
cd8a160d8d
GPU/HW: Clear alpha channel in opaque replacements
...
This is the value for bit15 in the framebuffer. 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-16 23:25:24 +10:00
Stenzek
add76c267a
Achievements: Fix request spam downloading own badge icon
2025-01-16 22:13:02 +10:00
Stenzek
c4a7456689
GPU/SW: Use no_unique_address for potentially-unused varyings
2025-01-16 22:13:02 +10:00
Stenzek
804b8ff777
CDROM: Remove redundant min()
2025-01-16 21:45:34 +10:00
Stenzek
10de915ae0
System: Remove 'sync_to_host_with_vsync'
...
Disabling the throttler with threaded rendering just leads to the CPU
thread pushing multiple frames, and getting backpressured from the GPU
thread. In other words, input lag.
2025-01-16 21:45:30 +10:00
Stenzek
074a8a2653
GPUThread: Fix input OSD with threaded rendering off
2025-01-16 21:38:45 +10:00
Stenzek
f6f709bcc5
System: Fix vsync preventing fast forward/turbo
2025-01-16 21:14:21 +10:00
Stenzek
0507054675
Common: Add vector rsize()
2025-01-16 21:01:30 +10:00
Stenzek
93771981a6
FullscreenUI: Add sort alphabetically option to cheat page
2025-01-16 13:47:09 +10:00
Stenzek
79245b6cd6
FullscreenUI: Make footer text background semitransparent
2025-01-16 01:14:22 +10:00
Stenzek
57f3fee28c
Common: Further optimize alltrue()/allfalse() on ARM
2025-01-16 00:43:33 +10:00
Stenzek
0189e1ef81
Common: Fix vector allfalse() on ARM32
2025-01-15 23:53:48 +10:00
Stenzek
45b500bc2c
GPU/HW: Fix draw call count spiking in some scenarios
2025-01-15 22:50:29 +10:00
Stenzek
3687697d0e
CPU/CodeCache: Only reset used portion of buffer
...
Saves writing 48MB every reset.
2025-01-15 21:02:56 +10:00
Stenzek
1952869cdc
Cheats: Author field should be exported
2025-01-15 21:02:56 +10:00
Daniel Nylander
68d9971171
Updated Swedish translation ( #3355 )
2025-01-15 21:02:40 +10:00
Stenzek
050bda8cd2
FullscreenUI: Fix scroll reset on resume state popup
2025-01-14 21:07:00 +10:00
Stenzek
135d99ac17
FullscreenUI: Fix incorrect help text
2025-01-14 21:07:00 +10:00
Stenzek
7973a91438
FullscreenUI: Make menu item backgrounds slightly transparent
...
Blends with background.
2025-01-14 21:07:00 +10:00
Stenzek
2e95667ec2
Qt: Fix returning to desktop mode from Big Picture
2025-01-14 20:51:13 +10:00
Stenzek
bbb1befa43
RegTest: Build fix
2025-01-14 20:51:13 +10:00
Stenzek
2fd89403f8
FullscreenUI: Name landing icon files after action
2025-01-14 19:05:18 +10:00
Stenzek
3130e16438
FullscreenUI: Add user-selectable backgrounds
2025-01-14 18:59:42 +10:00
Stenzek
ccb2b61444
FullscreenUI: Fix incorrect back button
2025-01-14 16:33:24 +10:00
Stenzek
1aa1b5a7ec
Qt: Make main toolbar editable
2025-01-14 16:33:24 +10:00
Anderson Cardoso
6a6d36267d
Atualização Português do Brasil ( #3354 )
...
Atualizado para a última versão.
2025-01-14 13:53:37 +10:00
Stenzek
880c76da24
Qt: Fix columns being hidden after editing cheats
2025-01-14 13:53:09 +10:00
Stenzek
3a13806f73
Hotkeys: Fix Toggle OSD hotkey
2025-01-14 13:49:49 +10:00
Stenzek
88e18a8659
Image: Fix crash on loading corrupted JPEG file
2025-01-14 13:29:14 +10:00
Stenzek
da1590ed5f
Qt: Fix cheats sort button tooltip
2025-01-13 23:49:59 +10:00
Stenzek
6db1dbbe02
GameList: Don't return nonexistant path on icon extract fail
2025-01-13 23:49:09 +10:00
Stenzek
33c0674a9f
Qt: Remove unused struct
2025-01-13 23:18:52 +10:00
Stenzek
991405ce06
Qt: Add search and sorting to cheat list
2025-01-13 22:45:59 +10:00
Stenzek
0dc257abe4
System: Set time constraints for GPU thread on MacOS
...
Fixes erratic frame times.
2025-01-13 19:51:35 +10:00
Stenzek
d3854d095e
AnalogController: Use variant vibration icon for large motor
2025-01-13 19:49:56 +10:00
Stenzek
f6c7681ef0
ImGuiOverlays: Double buffer input OSD and add vibration
2025-01-13 16:49:31 +10:00
Stenzek
dd7fd32501
Controller: Add GetVibrationMotorState()
2025-01-13 16:49:14 +10:00
Stenzek
aaf2a4b614
InputManager: Adjust scope of constants
2025-01-13 16:35:40 +10:00
Stenzek
3476140ba2
GPUThread: Add BeginASyncBufferCall()
2025-01-13 16:08:20 +10:00
Stenzek
462a4a3b50
Controller: Refactor so that GetControllerInfo() can't return null
2025-01-13 16:07:43 +10:00
Stenzek
062776c1c7
ImGuiManager: Map left stick to dpad
2025-01-13 14:28:39 +10:00
Stenzek
c45e59fe22
SDLInputSource: Arrays to std::array and forward generic axis
2025-01-13 14:28:28 +10:00
Stenzek
21aef088ed
XInputSource: Arrays to std::array and forward generic axis
2025-01-13 14:25:51 +10:00
Stenzek
9d3c56fe6c
ImGuiManager: Fix data races in input forwarding
2025-01-13 13:52:07 +10:00
Stenzek
17e8930e94
ImGuiManager: Pack state based on thread access
2025-01-13 13:33:15 +10:00
Stenzek
3621705933
Achievements: Ensure loading old states behave the same as new
2025-01-13 13:13:15 +10:00
Stenzek
8f39dbb464
Achievements: Fix race condition invalidating images
2025-01-13 13:03:41 +10:00
Stenzek
2f854de9d0
Qt: Invalidate FSUI cover cache when cover changed
2025-01-13 12:54:18 +10:00
Stenzek
738c96ffb3
FullscreenUI: Fix slot disappearing after delete in save state menu
2025-01-13 12:44:11 +10:00
Stenzek
ea82dacb0e
FullscreenUI: Fix a couple of GPU thread race conditions
...
State saving/loading, memory card state read on shutdown.
2025-01-13 12:44:06 +10:00
Stenzek
a422e06628
Qt: Fix incorrect InitialSortOrderRole use
2025-01-12 21:44:05 +10:00
Stenzek
d3ee12d358
Achievements: Login error notification should be translatable
2025-01-12 19:16:22 +10:00
Stenzek
19ee37cd10
FullscreenUI: Render notifications on top of OSD
2025-01-12 19:14:59 +10:00
Stenzek
035762af94
System: Fix subimage change OSD message
2025-01-12 19:03:53 +10:00
Stenzek
be7cff5964
CDROM: Fix loading of subimage SBI files
2025-01-12 19:03:48 +10:00
Stenzek
e4dea69713
System: Drop state load OSD duration to quick
2025-01-12 17:50:33 +10:00
Stenzek
e43d7046ba
Achievements: Attempt relogin on system boot
...
And display an error notification if login fails, instead of
invalidating the token.
2025-01-12 17:50:33 +10:00
Stenzek
0f76543685
Achivements: Set rc_client log level from host log level
2025-01-12 16:54:58 +10:00
Stenzek
ce0689687c
Qt: Fix editing first controller preset
2025-01-12 02:09:55 +10:00
Stenzek
c43533f8d8
FullscreenUI: Extend achievement overlays to screen margins
...
Fixes overlays getting caught in rounded corners on Android.
2025-01-12 01:02:58 +10:00
Stenzek
ab790ed54b
Common: Fix ARM32 build (again)
2025-01-12 00:25:48 +10:00
Stenzek
ee1da343ab
GPU/HW: Use default initialization for BatchConfig
...
Reduce the risk of below...
2025-01-12 00:03:45 +10:00
Stenzek
9779cee934
GPU/HW: Ensure texture window bits are initialized
...
Fixes broken rendering after loading state or switching renderer in some
games, e.g. GTA2.
2025-01-12 00:03:18 +10:00
Stenzek
9c35b0e76d
FullscreenUI: Get rid of Timer global
2025-01-11 23:32:21 +10:00
Stenzek
36590f3c71
InputManager: Fix crash on controller connect on Windows
2025-01-11 23:29:55 +10:00
Stenzek
6785285f31
Qt: Fix game list toolbar/view menu desync
2025-01-11 23:29:40 +10:00
Stenzek
54780d4fbf
Qt: Fix fullscreen state stuck after exit
2025-01-11 21:37:39 +10:00
Stenzek
348e33562e
Qt: Fix BP start/stop menu item after first activation
2025-01-11 21:34:20 +10:00
Stenzek
234e1f721f
FullscreenUI: Improve controller settings page
...
- Add 'Clear Bindings' menu item.
- Show icons in controller types.
- Add confirmation to Reset Settings.
2025-01-11 21:29:04 +10:00
Stenzek
d6ce322eba
Controller: Use additional icons
2025-01-11 20:51:16 +10:00
Stenzek
e6c0725656
InputManager: Hold lock while manipulating devices/sources
...
Since we're enumerating on the GPU thread now, need to protect it.
2025-01-11 20:28:00 +10:00
Stenzek
d3bee3ce67
Qt: Rename 'Input Profile' to 'Controller Preset'
...
Hopefully more noob-proof?
2025-01-11 20:25:12 +10:00
Stenzek
e4c11aa905
Qt: Separate controller settings to global and profiles
2025-01-11 20:25:11 +10:00
Stenzek
2d63b34d48
Qt: Add icons/decorations to input devices
2025-01-11 20:25:11 +10:00
Stenzek
2298227054
FullscreenUI: Add binding of vibration motors
2025-01-11 20:25:11 +10:00
Stenzek
6f9caa6b12
InputManager: Add proper binds for vibration motors
...
Instead of the janky "vibration capabilities" flag.
Fixes the "Clear Mappings" button not applying to vibration motors.
2025-01-11 20:25:11 +10:00
Stenzek
13b85728a0
Qt: Refactor input device/motor tracking
...
Remove multiple sources of truth.
2025-01-11 20:25:11 +10:00
Stenzek
844287b722
FullscreenUI: Fix scrollbar on choice dialog at some screen sizes
...
e.g. game list right click
2025-01-11 20:25:11 +10:00
Stenzek
4b0bb9f70d
FullscreenUI: Increase input dialog padding
...
Way too small.
2025-01-11 20:13:53 +10:00
Stenzek
4af5e96ff6
Controller: Remove analog-mode-start OSD message
...
It's arguably not very useful, and the sticks are mapped to the
dpad in digital mode anyway.
2025-01-11 15:15:01 +10:00
Stenzek
440aaf2644
FullscreenUI: Modernize achievement popup a bit
2025-01-11 15:07:17 +10:00
Stenzek
05b0b03fd6
Cheats: Order special characters before alpha characters
2025-01-11 12:51:33 +10:00
Stenzek
93a7e7cef5
Cheats: Add bounds check to 5107/5147
2025-01-11 12:40:46 +10:00
Anderson Cardoso
c98dbb9d9e
Atualização Português do Brasil ( #3353 )
...
Atualizado para a última versão.
2025-01-11 12:37:16 +10:00
PugsyMAME
a26cac18e9
Cheats: Added register cheat types 5107 & 5147 ( #3352 )
...
This is new cheat type uses the general purpose cheat registers in a relative easy method to allow arrays of arrays cheats to be quickly created and will also cut down massively on cheats. For instance this method allows the following 15 cheats for Vandal Hearts II which would otherwise need 18886 separate cheats to replicate:
#Technique Slot Modifier\[MASTER] Select Slot Number for following cheats to act on (1 - 1349)
518500F1 001CF3C3
514500F2 0000000F
514500F3 0000????
514500F4 0000D0D0
OptionRange = 1:1349
#Technique Slot Modifier\Select Weapon
510700F1 000000??
OptionRange = 0x00:0xFF
#Technique Slot Modifier\Technique 1 Learned
510700F1 00020001
#Technique Slot Modifier\Select Technique 1
510700F1 000300??
OptionRange = 0x00:0xFF
#Technique Slot Modifier\Technique 2 Learned
510700F1 00040001
#Technique Slot Modifier\Select Technique 2
510700F1 000500??
OptionRange = 0x00:0xFF
#Technique Slot Modifier\Technique 3 Learned
510700F1 00060001
#Technique Slot Modifier\Select Technique 3
510700F1 000700??
OptionRange = 0x00:0xFF
#Technique Slot Modifier\Technique 4 Learned
510700F1 00080001
#Technique Slot Modifier\Select Technique 4
510700F1 000900??
OptionRange = 0x00:0xFF
#Technique Slot Modifier\Technique 5 Learned
510700F1 000A0001
#Technique Slot Modifier\Select Technique 5
510700F1 000B00??
OptionRange = 0x00:0xFF
#Technique Slot Modifier\Technique 6 Learned
510700F1 000C0001
#Technique Slot Modifier\Select Technique 6
510700F1 000D00??
OptionRange = 0x00:0xFF
#Technique Slot Modifier\100% (Max) Technique Learned
510700F1 000E0064
2025-01-11 12:37:03 +10:00
Stenzek
ee33044f3d
InputManager: Fix SDL sub-options not copying to profile
2025-01-10 20:42:17 +10:00
Stenzek
7ac4a85765
InputManager: Fix per-bind sensitivity/deadzone not copying to profile
2025-01-10 20:14:21 +10:00
Stenzek
ccfc60ec94
GPU/HW: Remove extra barrier on VRAM download
...
Seems to work around download texture corruption on AMD/Vulkan/Windows.
2025-01-10 20:06:56 +10:00
Stenzek
18c90718c6
GPU/SW: Skip pixel load if none preserved
...
~12% performance improvement on Cortex-A35.
2025-01-10 18:46:05 +10:00
Stenzek
1320d9b456
Common: Use __builtin_shufflevector() for NEON blend()
2025-01-10 17:12:45 +10:00
Stenzek
29934d62c4
System: Improve rewind behaviour
...
- Fix crash when rewinding before first state is saved.
- Always save a rewind state immediately after normal save state load.
- Don't toss the last rewind state when rewinding, that way there is
always at least one state to rewind to.
2025-01-09 23:46:06 +10:00
Stenzek
d25cffebd5
GPU/HW: Disable depth testing with semitransparency
...
But provide an option to enable it.
2025-01-09 21:45:14 +10:00
Stenzek
d9c9b3038d
GPU/HW: Fix ROV depth being written with semitransparency
2025-01-09 21:21:12 +10:00
Stenzek
7d2898b94c
GPU/HW: Exclude 2D polygons from depth buffer
...
Fixes UI getting obscured in Kingsley's Adventure.
2025-01-09 21:21:12 +10:00
Stenzek
1c9b9ca37a
GPUThread: Restore context after backend creation
...
Might help with random VRAM loss? I can't seem to reproduce it now..
2025-01-09 21:21:12 +10:00
Stenzek
40589dcd93
Settings: Add advanced option to set delay for max CD speedup
...
Affects both seeks and reads.
2025-01-09 21:21:12 +10:00
Stenzek
4449ae7904
Settings: Rearrange fields to avoid padding
2025-01-09 21:21:12 +10:00
Stenzek
9b339d4bff
PostProcessing: Remove StageCount key for game settings
...
Potentially removes the ini file if it's otherwise empty.
2025-01-09 21:21:12 +10:00
Stenzek
2b4e60a5bf
FullscreenUI: Fix loading screen font
2025-01-09 21:21:12 +10:00
Stenzek
bed3dd6950
FullscreenUI: Use span for DrawIntListSetting()
2025-01-09 17:54:12 +10:00
Stenzek
b76ebd2a7b
FullscreenUI: Fix scrollbar rounding in choice dialogs
2025-01-09 17:53:52 +10:00
Stenzek
561397a53c
CDROM: Add 'maximum' read speedup option
...
"Instant" seek is now renamed to Maximum as well, for consistency.
2025-01-09 15:23:47 +10:00
Anderson Cardoso
0ad0859e9d
Atualização Português do Brasil ( #3351 )
...
Atualizado para a última versão
2025-01-09 15:23:25 +10:00
Stenzek
fc8fbd8f08
Qt: Disable shared memcard settings outside of shared mode
2025-01-08 16:36:05 +10:00
Stenzek
08a3c31bff
CMake: Fix scmversion PRE_BUILD warning
2025-01-08 15:34:21 +10:00
Stenzek
87743c776d
FullscreenUI: Fix crash reloading postfx shaders
2025-01-08 15:29:56 +10:00
Stenzek
45afc8f7b1
OpenGLDevice: Add map-based stream buffer paths
...
MapAndSync ends up around 25% faster on ancient Mali drivers without
ARB_buffer_storage support.
2025-01-08 14:14:06 +10:00
Stenzek
1daa60c64d
GPU: Use tristrips for presentation as well
2025-01-08 00:14:15 +10:00
Stenzek
670dc461c1
GPU/HW: Slight re-shuffling of field offsets
...
Free up some bits in the middle.
2025-01-07 23:20:26 +10:00
Stenzek
0030bc2699
GPUDevice: Ensure 16 byte minimum UBO alignment
2025-01-07 23:20:25 +10:00
Stenzek
4c801c3ff3
GPUDevice: Move size-matches check into ResizeTexture()
2025-01-07 23:20:25 +10:00
Stenzek
b9186139d0
GPU/HW: Use sized tristrips instead of fullscreen quads
2025-01-07 23:20:25 +10:00
Stenzek
9bc5ffe091
Common: Add Vector4i xyxy(Vector2i)
2025-01-07 23:20:25 +10:00
Stenzek
1063c3da7f
Qt: Add 'Enable Touchpad' to Controller Settings
...
Have to shuffle a few other things around to fit in 768p.
2025-01-07 13:42:45 +10:00
Stenzek
0a124ee839
SDLInputSource: Support forwarding touchpad to pointer
2025-01-07 13:40:42 +10:00
Stenzek
2b7b3d8729
SDLInputSource: Allow inverting pad axes
...
Not really sure where this would happen, but whatever.
2025-01-07 13:01:37 +10:00
Stenzek
dacbb7c718
Qt: Behaviour -> Behavior
...
US English is used everywhere else, consistency > *.
2025-01-07 12:50:48 +10:00
Stenzek
6318223f58
Qt: Remove Apperance/Update settings from Game Properties
2025-01-07 12:48:27 +10:00
Stenzek
092e819a07
ImGuiFullscreen: Move texture loading to async tasks
...
Two threads instead of one, speeds things up a bit.
2025-01-07 12:40:08 +10:00
Stenzek
cae1ddc971
GPU: Ensure batches are flushed before presenting frame
...
Fixes occasional assertion failing when using the debugger.
2025-01-07 12:28:15 +10:00
Stenzek
dc9cdddd4c
Qt: Add zst/xz GPU dumps to file filter
2025-01-06 21:18:13 +10:00
Stenzek
0960160589
System: Don't check for subchannel with GPU dump
2025-01-06 21:17:27 +10:00
Stenzek
1765590a6f
Qt: Add 'Disable Window Rounded Corners' option
2025-01-05 16:39:57 +10:00
Stenzek
5ee069fc63
FullscreenUI: Add option to display PS buttons instead of Xbox
2025-01-05 16:00:15 +10:00
Stenzek
4d6124d41b
Platform: Fix AppImage dbus library mismatch
2025-01-05 14:08:22 +10:00
Stenzek
6043b2331f
Platform: Fix incorrect dbus shared library name
...
Fixes screensaver inhibit on Linux.
2025-01-04 21:14:46 +10:00
Stenzek
886040b257
Qt: Display 'No Image' instead of 0x0 in status
2025-01-04 19:21:47 +10:00
Stenzek
8353a33e89
X11Tools: Fix refresh rate query failing with XLib handle
2025-01-04 18:35:15 +10:00
Stenzek
076f4a6293
Qt: Fix delay in progress dialog opening
...
Applies to updater, verify, etc.
2025-01-04 16:59:33 +10:00
Stenzek
920f25427e
Qt: Simplify Fullscreen UI state tracking
...
Fixes application closing if the system was shut down while fullscreen.
2025-01-04 16:09:35 +10:00
Stenzek
78ccbc710c
Cheats: Fix error while exporting
2025-01-04 12:52:26 +10:00
Anderson Cardoso
548f1da5af
Atualização Português do Brasil ( #3350 )
2025-01-04 12:51:08 +10:00
Stenzek
9054801341
ImGuiManager: Update viewport and display size
...
Fixes the single frame of incorrect draw size when resizing
the window with the Big Picture UI.
2025-01-03 20:16:38 +10:00
Stenzek
80855090d5
Qt: Rewrite cover loading/generation
...
This was always wrong, QPixmaps shouldn't be manipulated outside of
the UI thread, and it used to crash in debug builds.
Also uses a placeholder image instead of a black image while covers
are loading/generating.
2025-01-03 20:16:38 +10:00
Stenzek
db14824d61
System: Use task queue for saving states/screenshots/gpudumps
...
System shutdown no longer needs to block. Gets rid of the slight
hitch when shutting down and saving state with the Big Picture UI.
2025-01-03 20:16:38 +10:00
Stenzek
547601559c
Common: Add TaskQueue class
2025-01-03 20:16:37 +10:00
Stenzek
52e6e8ff1e
PostProcessing: Compile warning fix
2025-01-03 18:19:12 +10:00
Stenzek
f9bb413a40
Qt: Enable clear button on hotkey search
2025-01-03 15:28:43 +10:00
Stenzek
dda10d3576
Qt: Add search box to hotkey settings
2025-01-03 14:58:50 +10:00
Stenzek
b2c8d25638
GPUBackend: Only display CPU thread blocked messages if queueing
2025-01-03 14:49:53 +10:00
Stenzek
88cd086633
Cheats: Eliminate extra newlines during code editing
2025-01-03 13:36:58 +10:00
Daniel Nylander
e096827df8
Updated Swedish translation ( #3349 )
2025-01-03 13:36:40 +10:00
Stenzek
e08dda0a0a
CPU: Declare state with constinit
2025-01-02 21:42:41 +10:00
Stenzek
87e367076d
PostProcessing: Get rid of Timer global
2025-01-02 21:40:01 +10:00
Stenzek
ba15a76d7b
ImGuiManager: Pack state in struct
2025-01-02 21:33:53 +10:00
Stenzek
d3fe1dfc2c
ImGuiManager: Separate debug and OSD fonts
...
Don't need to rasterize the former if it's not used, and saves blowing
up the debug window font size if the OSD scale is not 100%.
2025-01-02 21:25:25 +10:00
Stenzek
fc5553a8c7
GTE: Improve reverse transform freecam
...
Transform the move direction, that way it behaves more FPS-camera like.
2025-01-02 20:56:22 +10:00
Stenzek
90cb266886
Common: Small tidy-up and constexpr-ify GSMatrix4x4
2025-01-02 20:52:19 +10:00
Stenzek
83b4757788
Qt: Controller Test should be disabled while running
2025-01-02 02:11:50 +10:00
Stenzek
08cd649187
InputManager: Fix pointer-bound bind movement
...
i.e. psmouse
Regression from c4e0e7fadea0bf4f9da7bdea4335f619a6f14385
2025-01-02 02:10:31 +10:00
Stenzek
cd873eb6c1
GTE: Add 'Reverse Transform Order' option to freecam
2025-01-02 02:09:02 +10:00
Stenzek
3a64c5e4b3
FullscreenUI: Improve field alignment in achievements login
2025-01-02 01:07:18 +10:00
Stenzek
b21312867b
FullscreenUI: Fix popup sizes for postfx settings
2025-01-02 01:07:11 +10:00
Stenzek
179e2f1999
FullscrenUI: Fix field spacing scaling in game list view
2025-01-02 00:52:40 +10:00
Stenzek
0fdf984b71
GTE: Disable freecam on Android
...
Freecam is disabled on Android because there's no windowed UI for it.
And because users can't be trusted to not crash games and complain.
2025-01-02 00:38:29 +10:00
Stenzek
e036318559
Qt: Add 'Controller Test' to tools menu
2025-01-02 00:31:15 +10:00
Stenzek
c11468b9f1
Qt: Drop log messages if rate is too high
...
Prevents the application locking up and memory usage going bananas
if log messages do end up spammed at crazy rates.
2025-01-02 00:14:11 +10:00
Stenzek
37e5e64ddc
System: Move state display updates to call sites
...
Fixes black frames when changing settings with runahead/rewind enabled.
2025-01-01 23:05:08 +10:00
Stenzek
f3b7686457
System: Fix crash with memory save states + renderer switch
2025-01-01 22:55:31 +10:00
Stenzek
5ac5a1d246
Hotkeys: Fix resolution scale with memory save states
2025-01-01 22:02:55 +10:00
Stenzek
1d63648d68
Qt: Forward text input to aux render windows
...
Fixes text input in freecam window.
2025-01-01 22:02:55 +10:00
Stenzek
dcd439e7d8
GTE: Add 'Free Camera' feature
2025-01-01 22:02:55 +10:00
Stenzek
22202f1607
Common: Fix vector blend32() and dot() on SSE2
2025-01-01 22:02:55 +10:00
Stenzek
d0e1efb1fd
Common: Add more GSMatrix ops
2025-01-01 21:28:16 +10:00
Stenzek
f51dda3e66
GPUDevice: Allow this-frame pooled textures when not uploading data
...
It won't break the render pass.
2025-01-01 19:38:48 +10:00
Stenzek
a08acdb93a
System: Improve texture recycling when changing rewind/runahead settings
...
Fix suprious failures when changing rewind settings when low on VRAM.
2025-01-01 19:33:01 +10:00
Stenzek
57be62ffd1
FullscreenUI: Remove a couple of untranslated titles
2025-01-01 14:28:05 +10:00
Stenzek
884459d1cf
FullscreenUI: Fade alpha change when switching to postfx settings
2025-01-01 14:25:56 +10:00
Stenzek
ffef0c2e38
CPU/CodeCache: Don't compile invalid jumps via block links
2025-01-01 14:10:55 +10:00
Stenzek
d69d25431e
VulkanDevice: Hopefully fix init under Vulkan 1.0 drivers
2024-12-31 23:43:38 +10:00
Stenzek
f25302c847
CPU/Recompiler: Actually use fetch ticks for uncached EXP1
2024-12-31 17:29:40 +10:00
Stenzek
34f2600f99
CPU/Recompiler: Fix ICache update codegen on RISCV64
2024-12-31 16:12:19 +10:00
Stenzek
4c08c716c4
CPU/Recompiler: Fix dispatcher crash on RISCV64
2024-12-31 15:33:34 +10:00
Stenzek
a4b359672c
Common: Switch fastjmp.cpp asm to tabs
...
Consistency.
2024-12-31 15:33:17 +10:00
Stenzek
79b0533df2
Common: Fix RISC-V/64 fastjmp buffer size
2024-12-31 15:30:26 +10:00
Stenzek
b76618fdf4
System: Should call PGXP Reset not Initialize() in InternalReset()
2024-12-31 15:24:36 +10:00
Stenzek
1bf076c74f
VulkanDevice: Fix crash on shutdown if swapchain creation fails
2024-12-31 15:10:55 +10:00
Stenzek
e0877c1922
System: Add IsUsingPS2BIOS()
2024-12-31 14:58:31 +10:00
Stenzek
69826f2101
FullscreenUI: Fix incorrect section for Deinterlacing Mode
2024-12-31 14:15:42 +10:00
Stenzek
7228f6f1cf
System: Don't fail startup if cpuinfo init fails
2024-12-30 18:11:56 +10:00
Stenzek
3c5db39ee4
GPU/SW: Remove polygon size checks from backend
...
It's already checked before the draw is handed off.
2024-12-30 18:11:52 +10:00
Stenzek
4d4523dc04
GPU: Use same early culling rules for lines as polygons
2024-12-30 18:11:52 +10:00
Stenzek
c5bd4101b3
GPU: Refactor and simplify deinterlacing
...
Both HW and SW deal with half-height buffers coming in now.
2024-12-30 14:36:17 +10:00
Stenzek
4e928d7ce1
Common: Work around LLVM LTO inline asm issue
...
LLVM bug 61991.
2024-12-30 02:57:22 +10:00
Stenzek
401582bb2b
PlatformMisc: Load libdbus at runtime
...
The static library can't link to the ARM binary when cross-compiling.
2024-12-30 01:57:08 +10:00
Stenzek
9cba1decad
GPU/HW: Compiler warning fix
2024-12-29 22:34:39 +10:00
Stenzek
468c907fd6
Cheats: Compiler warning fix
2024-12-29 22:34:31 +10:00
Stenzek
d4e393f1a8
Common: Fix write overflow with nosimd vector
2024-12-29 22:34:14 +10:00
Stenzek
242561debf
CPU/Recompiler: Align dispatchers and JIT blocks
...
A couple of percent difference if we're lucky. Practically probably <1%.
2024-12-29 18:11:58 +10:00
Stenzek
82a843c121
RegTest: Log state and RAM hashes on exit
...
Useful for checking determinism.
2024-12-29 17:25:55 +10:00
Stenzek
1ed9e609a5
RegTest: Support replaying GPU dumps
2024-12-29 17:25:55 +10:00
Stenzek
b7832e609f
GPU/HW: Vectorize flipped sprite handling
2024-12-29 17:25:55 +10:00
Stenzek
1a211e0a21
GPU/HW: Fix mask bit regression from FF8 fix
...
Fixes overbright polygons appearing in Silent Hill.
2024-12-29 17:25:54 +10:00
Stenzek
0e6ade067c
FileSystem: Add error reporting to DeleteDirectory()
2024-12-29 17:25:54 +10:00
Stenzek
5c3abb490d
Common: Fix vector sse2_max_u16()
...
Fixes UV clamping in SSE2 build, e.g. Jumping Flash.
2024-12-29 13:56:10 +10:00
Stenzek
799f5bdf97
GPU: Assume vertex commands are 8-byte aligned
2024-12-28 20:24:22 +10:00
Stenzek
8c807118c0
GPUDevice: End timer on command flush
...
Fixes incorrect GPU usage readings in OpenGL, D3D11 is still
problematic, at least on AMD.
2024-12-28 20:24:21 +10:00
Stenzek
7bb0c7d1fb
InputManager: Fix pointer scale loading
2024-12-28 20:24:21 +10:00
Stenzek
c2589461e9
GPU/HW: Remove extra debug group pop
2024-12-28 20:24:21 +10:00
Stenzek
74fd217afb
GPU/HW: Always update/load/save CLUT
...
We have the headroom with multithreading now, and it prevents issues
saving/loading state in loading screens in some games.
2024-12-28 20:24:21 +10:00
Stenzek
25b0bb752a
GPU/HW: Try truncating culled vertices
...
What is this monstrosity? Final Fantasy VIII relies on X coordinates
being truncated during scanline drawing, with negative coordinates
becoming positive and vice versa. Fortunately the bits that we need
are consistent across the entire polygon, so we can get away with
truncating the vertices. However, we can't do this to all vertices,
because other game's vertices break in various ways. For example,
+1024 becomes -1024, which is a valid vertex position as the ending
coordinate is exclusive. Therefore, 1024 is never truncated, only
1023. Luckily, FF8's vertices get culled as they do not intersect
with the clip rectangle, so we can do this fixup only when culled,
and everything seems happy.
2024-12-28 20:24:21 +10:00
Stenzek
c99625e4c3
GPU: Move vertex culling to GPU thread
...
i.e. push all primitives through unless they are oversized, which the
GPU will definitely skip.
Needed because of coordinate truncation in Final Fantasy VIII, these
scenes will now render correctly with the software renderer again.
2024-12-28 20:24:09 +10:00
Stenzek
58b0ccf3fc
Common: Add 2D vector formatters
2024-12-28 19:59:25 +10:00
Stenzek
69ed6e5e58
Hotkeys: Screenshot should not be present on Android
...
Since it saves to app-private, users would complain that the app is
using too much data.
2024-12-27 19:39:23 +10:00
Stenzek
2da692b341
CPU/Recompiler: Swap bl{x,r} for b{x,r} on ARM
...
Not a subroutine call.
2024-12-27 15:02:40 +10:00
Stenzek
2a8cfc7922
CPU/CodeCache: Simplify code LUT addressing
...
One more instruction on x86/ARM32, no additional instructions on ARM64.
Worth it so that the application doesn't crash if the game jumps to an
invalid PC. Note that the lower 2 bits are truncated, so an unaligned
jump will round down to the closest instruction. Obviously not correct,
but if a game ends up doing this, it's a lost cause anyway.
2024-12-27 15:02:40 +10:00
Stenzek
4e5b4ba071
CPU: Fix AdEL/IBE on instruction fetch
...
CAUSE and EPC were swapped for the latter.
2024-12-27 15:02:40 +10:00
Stenzek
4b34825afd
CPU/CodeCache: Remove InstructionInfo pc field
...
No longer needed since oldrecs are gone.
2024-12-27 15:02:40 +10:00
Stenzek
ce71b168c3
CPU/CodeCache: Add static to a couple of missing functions
2024-12-27 15:02:40 +10:00
Stenzek
a44dd1882f
RegTest: Update CLI help
2024-12-27 15:02:40 +10:00
Anderson Cardoso
7b9664d6f2
Atualização Português do Brasil ( #3348 )
...
Atualizado para a última versão.
2024-12-27 15:02:31 +10:00
Stenzek
9921d2074c
Achievements: Fix serialization on Linux
2024-12-26 18:00:29 +10:00
Stenzek
5c83bbe5c5
FullscreenUI: Slight tidy-up to achievements login dialog
2024-12-26 18:00:29 +10:00
Stenzek
272aa4f933
ImGuiManager: Add Begin/EndTextInput()
2024-12-26 18:00:29 +10:00
Stenzek
fa993849f7
Qt: Update English/Plural strings
2024-12-26 01:58:24 +10:00
Stenzek
6903abba55
CDROM: Adjust missed INT1 sector behaviour
...
Max Power Racing and C3 Racing are slow with their DMAs out,
and get confused when an additional INT1 comes inbetween reading
the sector header and data.
Fixes these games crashing during loading. 5000 cycles is more in
line with what the real mech would do anyway, it's pretty slow.
2024-12-26 01:55:55 +10:00
Stenzek
0528ce567c
Achievement: Fix glitchy fade indicator animation
2024-12-25 23:01:58 +10:00