2622 Commits

Author SHA1 Message Date
Stenzek
57f6bda59b
ImGuiFullscreen: Use popup background for all popups 2024-04-11 13:50:04 +10:00
Stenzek
1b1e42d003
System: Add Error to boot/load/save state 2024-04-11 13:42:10 +10:00
Stenzek
1809885927
FullscreenUI: Fix crash with language select on Linux 2024-04-11 12:52:56 +10:00
Bobby Smith
b58862a64a Disable cheats by default 2024-04-11 12:20:51 +10:00
Stenzek
8c741d2d48
Qt: Update glyph range for zh-CN and purge old obsolete strings 2024-04-10 20:28:00 +10:00
Stenzek
440a1700c0
System: Interrupt execution when loading state and reset 2024-04-10 20:18:30 +10:00
Stenzek
417bf0c3bc
DMA: Better enforce CPU runtime during linked list
and get rid of the hack for Newman Haas.
2024-04-10 20:11:23 +10:00
Stenzek
e9ae49b3c4
FullscreenUI: Regenerate strings 2024-04-10 00:07:13 +10:00
Stenzek
bf4e8feb25
FullscreenUI: Redo landing page and add help bar 2024-04-09 23:49:24 +10:00
Stenzek
de1a1af908
FullscreenUI: Avoid per-frame memory allocations with SmallString 2024-04-09 19:54:25 +10:00
Stenzek
631fca3042
SettingsInterface: Add SmallString overloads 2024-04-09 19:54:25 +10:00
Stenzek
71f50566f3
System: Consider pending ticks when using global ticks 2024-04-07 19:01:48 +10:00
Stenzek
8a1b4d8bee
DMA: Halt linked list transfers during pad transfer
Plenty of games seem to suffer from this issue where they have a linked list
DMA going while polling the controller. Having a large slice size causes the
serial transfer to complete before the silly busy wait in the BIOS poll routine
returns, resulting in it thinking that the controller is disconnected. Some
games are very sensitive to this (e.g. Newman Haas Racing), to the point that
even using a slice size of 1 is insufficient for avoiding the race, probably
due to the linked list layout.

Therefore, without major refactoring to ensure the CPU runs every DMA block,
and the associated performance penalty, we just halt the DMA until the serial
transfers have completed. To reduce the chances of this significantly affecting
timing, we add accumulate the ticks that have been "lost", and allow them to be
"used up" when the transfer does happen.
2024-04-07 18:55:03 +10:00
Stenzek
8bdeb8bdac
MemoryCardImage: Handle 128KB GME files 2024-04-07 17:06:42 +10:00
Stenzek
1ee5f737ed
MemoryCardImage: Report errors to caller 2024-04-07 13:23:00 +10:00
Stenzek
99b0fb5911
GPU/HW: Move pipelines to end of struct
Helps keep the rest in range for ARM32's 4K displacement.
2024-04-06 21:51:52 +10:00
Stenzek
1097eab600
GPU/HW: Don't create shader blend pipelines if disallowed 2024-04-04 13:25:33 +10:00
Stenzek
c2a08bdb1d
CPU/NewRec: Fix ARM32 (again) 2024-04-04 13:25:33 +10:00
Stenzek
a432308908
GPU: Fix GLES compile error 2024-04-04 13:25:33 +10:00
Stenzek
cb6be52404
GameDatabase: Warn if CPU mode is enabled and unnecessary 2024-04-03 22:58:20 +10:00
Stenzek
74f3c8d1aa
GPU/HW: Enable feedback loops for rendering 2024-04-01 18:12:52 +10:00
Stenzek
72ab669e70
GPUDevice: Add support for feedback loops 2024-04-01 13:55:19 +10:00
Stenzek
71a07a5a8e
CPU/NewRec: Fix lwl/lwr on ARM 2024-03-31 23:49:40 +10:00
Stenzek
3ecc19c43f
GPU: Fix HW readback counter 2024-03-31 14:02:44 +10:00
Stenzek
8ebda3cdc8
CPU/NewRec: Fix register corruption in swl/swr 2024-03-31 13:55:19 +10:00
Stenzek
a3013efbca
CPU/NewRec: Fix PGXP desync
Wobbly geometry in Threads of Fate.
2024-03-30 00:46:38 +10:00
Stenzek
f9f9447013
SPU: Ignore End+Mute flag for noise channels
Fixes the noise effects cutting out too early in Motor Toon Grand Prix.
2024-03-29 15:08:14 +10:00
Stenzek
2b7008bd93
GPU/HW: Fix box downsampling with FMVs 2024-03-29 12:37:10 +10:00
Stenzek
c41563c7dc
Pad: Fix unconditional memory card replug on load state 2024-03-29 12:34:42 +10:00
Stenzek
e54ad1956a
GPU/HW: Fix height incorrect doubling in interleaved 480i mode 2024-03-29 12:17:13 +10:00
Stenzek
de1e5b24fb
CDROM: Don't send reports when subq isn't valid 2024-03-26 01:20:33 +10:00
Stenzek
83ebad1129
System: Leave title empty when booting physical audio CDs 2024-03-25 23:24:41 +10:00
Stenzek
7b8704aba1
System: Fix incorrect sanitization of memcard filenames 2024-03-25 23:24:41 +10:00
Stenzek
480c78502f
System: Fix crash toggling debug GPU device
When postfx is enabled.
2024-03-24 22:32:44 +10:00
Stenzek
43fc9f1ef2
Settings: Support saving WebP screenshots 2024-03-24 16:03:00 +10:00
Stenzek
b143d96476
Build: Use deps DLLs on Windows 2024-03-24 16:02:59 +10:00
Stenzek
8c09e9389d
GameDB: Add DisablePGXPPreserveProjFP trait
And add it to Crash Team Racing.
2024-03-23 14:11:28 +10:00
Stenzek
604dd5df40
Qt: Add copy/clear game settings 2024-03-21 00:50:57 +10:00
Stenzek
3085172ffd
FullscreenUI: Update translation strings 2024-03-20 22:48:23 +10:00
Stenzek
9703542775
AudioStream: Re-add SDL backend 2024-03-20 22:46:20 +10:00
Stenzek
e70f0e1bc1
GPU/HW: Use texelFetch() instead of sampler 2024-03-20 21:56:20 +10:00
Stenzek
a4a58c6ba2
SPU: Implement volume sweep phase inversion 2024-03-20 21:55:55 +10:00
Stenzek
2003c9452b
DMA: Properly handle bus errors and DICR transitions 2024-03-18 02:07:42 +10:00
Stenzek
fa6850902a
CPU: Make interrupts actually edge-triggered 2024-03-18 01:46:19 +10:00
Stenzek
e755e15c69
GPU: Fix GLSL compile error 2024-03-17 00:07:18 +10:00
Stenzek
1ab7850ed0
GPU: Rewrite deinterlacing and add adaptive/blend modes 2024-03-16 14:14:15 +10:00
Stenzek
43eb6e20fa
System: Improve screenshot naming 2024-03-16 14:14:15 +10:00
Stenzek
6aa491f863
GPU: Ensure screenshots are saved before shutdown 2024-03-16 14:14:15 +10:00
Stenzek
9211d9f2e3
Path: Add CreateFileURL() 2024-03-16 14:10:35 +10:00
Stenzek
d1a1cab9a9
Bus: Direct KUSEG+KSEG0 isolated cache reads to ICache 2024-03-13 14:14:40 +10:00
Stenzek
3395853ba2
CDROM: Fix overflow in UpdatePositionWhileSeeking() 2024-03-13 14:14:40 +10:00
Stenzek
8fe86ff690
GPU/HW: Fix another buffer unmapping case 2024-03-08 21:16:00 +10:00
Stenzek
7159330f63
GPU/HW: Ensure buffers are unmapped before present
Darn DX11...
2024-03-08 13:43:22 +10:00
Stenzek
25db163347
System: Fix incorrect save state screenshot size 2024-03-08 04:12:50 +10:00
Stenzek
c854b8f85e
Image: Swap stb for libpng/libjpeg 2024-03-07 00:02:35 +10:00
Stenzek
250b1bea8f
GPU: Use Image class for screenshot saving 2024-03-06 23:55:18 +10:00
Stenzek
620d08f72d
Build: Move Image from common to util 2024-03-06 16:09:21 +10:00
Stenzek
f80ead6a21
GameDB: More settings 2024-03-05 00:02:22 +10:00
Stenzek
e2024f6175
System: Change "Auto Load Cheats" to "Enable Cheats" 2024-03-03 14:03:07 +10:00
Stenzek
a1d7d214cf
GPUDevice: Add support for VRR and relaxed vsync 2024-03-03 14:03:07 +10:00
Stenzek
96f29d9b99
System: Warn if compatibility settings are disabled 2024-03-02 21:21:20 +10:00
Stenzek
04b837a418
Qt: Redesign graphics settings panel
Add screenshot format/type.
2024-03-02 21:21:20 +10:00
Stenzek
713d396a7e
GPU/HW: Add quad line detection (Wild Arms 2) 2024-03-02 17:13:19 +10:00
Stenzek
250fb56838
GPU/HW: Switch to indexed draws 2024-03-01 15:33:00 +10:00
Stenzek
b34742cdd2
GPU/HW: Slightly reduce struct size 2024-03-01 13:51:16 +10:00
Stenzek
d50ba989ae
Settings: Use bitfields for bool
Slightly more compact, memory-wise.
2024-03-01 13:42:29 +10:00
Stenzek
f936a36c85
GPUDevice: Add GPUDownloadTexture
Which can also be based in host/client memory.
Use it for screenshots and VRAM downloads.
2024-02-29 18:56:50 +10:00
Stenzek
411213d6a0
GPU: Make VRAM a global object 2024-02-29 17:00:51 +10:00
Stenzek
7340324ed9
CDROM: Accuracy improvements 2024-02-29 17:00:51 +10:00
Stenzek
71094a0e44
CPU: Implement memory breakpoints/watchpoints 2024-02-28 00:02:02 +10:00
Stenzek
ef4389cea8
Qt: Cache CPU register values
That way they don't update while running.
2024-02-27 22:38:43 +10:00
Stenzek
4599109854
CPU/CodeCache: Clear backpatch info for blocks when recompiled 2024-02-27 22:16:59 +10:00
Stenzek
454cceab80
CPU/CodeCache: Move backpatch lookup after RAM check
Saves a map lookup if we're just invalidating code.
2024-02-27 21:04:26 +10:00
Stenzek
eb7b6d217d
System: Ensure GPU is flushed before invalidating on pause 2024-02-27 21:04:26 +10:00
Stenzek
eeef0a92bb
CPU: Make single step go through the "normal" execution path
That way it exits and re-enters the dynarec as expected.
2024-02-27 21:04:25 +10:00
Stenzek
4a70164dac
CMake: Determine host page size at build time
Needed for running on Asahi Linux.
2024-02-25 20:30:41 +10:00
Stenzek
ab83247de3
GLContext: Rename to OpenGLContext 2024-02-25 20:30:41 +10:00
Stenzek
c1381cfda6
System: Gracefully handle memory allocaion failure 2024-02-25 20:30:41 +10:00
Stenzek
ff9dc11a38
CPU/CodeCache: Increase frame delta for manual protected blocks
Reduces stutter in Wild Arms 2.
2024-02-24 15:06:24 +10:00
Stenzek
35cdfc5ef7
CPU: Move PGXP registers earlier in struct 2024-02-24 14:57:31 +10:00
Stenzek
53c0dc8bbc
CPU/NewRec: Speculative execution for mult/div 2024-02-24 14:57:30 +10:00
Stenzek
175d2a17f7
CPU/NewRec: Don't panic on unused opcodes 2024-02-24 14:57:29 +10:00
KamFretoZ
1f6636f62b Qt: Icon updates 2024-02-18 15:44:12 +09:00
Stenzek
1faecd8853
Qt: Fix labels when changing multi-tap controller type 2024-02-15 22:06:01 +09:00
Tobias Jakobi
739729516e Core: Add missing standard library includes 2024-02-06 23:48:45 +10:00
Stenzek
8e7b212b03
System: Clear cheat list on reset 2024-02-06 22:24:33 +09:00
Stenzek
f6dc80cefa
GameDatabase: Use TitleCase for traits 2024-02-04 16:47:26 +10:00
Stenzek
8ffc50a2a5
Data: Remove JSON GameDB 2024-02-04 16:14:05 +10:00
Stenzek
d7a1c447c6
GameDatabase: Switch to YAML 2024-02-04 16:14:05 +10:00
Stenzek
a957fb669d
StringUtil: Fix inequal-length EqualNoCase 2024-02-04 15:22:38 +10:00
Stenzek
c2c3eac749
Build: Use shared webp/zstd/zlib 2024-02-03 19:41:56 +10:00
Stenzek
cdb614a51f
GPU/HW: Fix possible crash (again) 2024-02-03 16:00:24 +10:00
Stenzek
cdea4eb68b
GPU/HW: Fix possible crash on setting change 2024-01-31 20:02:34 +10:00
Stenzek
ad41c81fa8
ImGuiOverlays: Fix incorrect animation when opening state selector 2024-01-31 00:53:30 +10:00
Stenzek
af2042e713
GPU/HW: Fix toggling PGXP depth buffer causing black screen 2024-01-31 00:53:30 +10:00
Stenzek
14e3969736
Misc: Warning fixes 2024-01-26 14:31:03 +10:00
Stenzek
b545234152
CPU/NewRec/AArch32: Fix double condition 2024-01-25 13:42:41 +10:00
Stenzek
4f347bf626
Qt: Add missing display setting help text 2024-01-24 13:56:22 +10:00
Hugo Locurcio
1b8e75e90b
Take widescreen hack into account when determining automatic resolution scale
At widescreen aspect ratios, a greater resolution scale factor is required
to maintain crisp visuals. For instance, a 16:9 output requires ~1.333×
the resolution scale of a 4:3 output (as 16:9 is ~1.333× wider than 4:3).

This improves visuals at widescreen aspect ratios when the widescreen hack
is enabled, especially for ultrawide.
2024-01-22 14:41:19 +10:00
athenavr
5e2c6d24b9
Add independent settings for NeGcon axes (#3094)
* Add independent settings for NeGcon axes

* TOSQUASH coverage of the full NeGcon twisting range
2024-01-22 14:41:19 +10:00
Stenzek
37e8d1ab86
GPU/HW: Fix VRAM write replacements 2024-01-22 14:41:19 +10:00
Stenzek
a7b7ce2720
System: Fix crash with replacement precaching 2024-01-22 14:41:19 +10:00
Stenzek
a231fd4f22
Settings: Fix Match Window on Android 2024-01-22 14:41:19 +10:00
Stenzek
150ab8f4af
GPU: Add host/hardware stats 2024-01-22 14:41:19 +10:00
Stenzek
884c851079
CPU: Fix GTE control register disassembly 2024-01-21 02:45:09 +10:00
Stenzek
f66866ed73
GPUDevice: Use Error class for initialization errors 2024-01-21 00:18:33 +10:00
Stenzek
429cb4f351
Qt: Allow toggling fullscreen when VM is paused 2024-01-21 00:07:32 +10:00
Stenzek
b98ac8722a
FullscreenUI: Move functionality to Host 2024-01-20 20:29:33 +10:00
Stenzek
bc04854ed3
GPU/HW: Bump shader cache version 2024-01-20 02:14:56 +10:00
Stenzek
687e212dfe
GPU/HW: Shader compile fix 2024-01-20 02:14:36 +10:00
Stenzek
37276472eb
Qt: Tidy up Enhancement settings 2024-01-19 21:40:44 +10:00
Stenzek
f369724b7c
dep/imgui: Update to v1.90.1 2024-01-19 21:22:26 +10:00
Hugo Locurcio
cc94b76037
Add debanding option to improve gradient smoothness with truecolor
This option only has an effect if true color is also enabled.
2024-01-19 01:05:21 +01:00
Stenzek
5f9eef585f
Achievements: Wrap long achievement descriptions 2024-01-14 01:44:21 +10:00
Stenzek
eae4f73f94
Achievements: Open cheevo details in browser when selected 2024-01-14 01:44:21 +10:00
Stenzek
da9e3064c2
Achievements: Display missable/progression/win icons 2024-01-14 01:44:21 +10:00
Stenzek
e86cf51a48
GPU/HW: Handle palette VRAM wrapping
Fixes block colours in The Next Tetris.
2024-01-13 13:54:51 +10:00
Stenzek
73cee9f705
Settings: Add UserResources to EmuFolders
Allowing some resources, such as fonts/sounds to be overridden by the
user.
2024-01-10 22:46:57 +10:00
Stenzek
fcbae6cef3
GPU/HW: Fix off-by-one in dirty rect checks
Fixes transitions in Crash 3.
2024-01-08 15:49:05 +10:00
Stenzek
32f5482ad2
CPU: Inhibit debug dispatcher when COP0 BP is invalid 2024-01-01 15:25:48 +10:00
Stenzek
cc84952fdc
AnalogController: Minimum deadzone/activation threshold should be 1% 2023-12-31 19:42:52 +10:00
Stenzek
12b9cf1898
GPU: Fix crash when trying to postprocess surfaceless 2023-12-31 19:40:45 +10:00
Connor McLaughlin
e60654de38
Merge pull request #3080 from tobiasjakobi/different-types-fix
CPU/Recompiler: Fix build error
2023-12-28 18:54:36 +10:00
Stenzek
6d3e3f78da
System: Shorten libcrypt error on Android 2023-12-28 15:37:22 +10:00
Stenzek
958b033a66
PostProcessing: Fix assertion on some shader/texture formats 2023-12-28 15:31:03 +10:00
Stenzek
98d5b98ab1
GPU/HW: Fix incorrect pipeline layout with texture buffers disabled 2023-12-27 02:03:50 +10:00
Stenzek
044eb589f9
Settings: Expose disable texture buffers/copy to self options 2023-12-27 01:44:08 +10:00
Tobias Jakobi
dbe29bd5ca CPU/Recompiler: Fix build error
Build currently fails on a GCC 13.2.x with:

/var/tmp/portage/games-emulation/duckstation-9999/work/duckstation/src/core/cpu_recompiler_code_generator.cpp: In member function ‘bool CPU::Recompiler::CodeGenerator::Compile_Bitwise(CPU::Instruction, const CPU::CodeCache::InstructionInfo&)’:
/var/tmp/portage/games-emulation/duckstation-9999/work/duckstation/src/core/cpu_recompiler_code_generator.cpp:1330:81: error: operands to ‘?:’ have different types ‘BitField<unsigned int, CPU::Reg, 16, 5>’ and ‘BitField<unsigned int, CPU::Reg, 21, 5>’
 1330 |                                PGXP::PackMoveArgs(dest, lhs.HasConstantValue(0) ? instruction.r.rt : instruction.r.rs)),
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/tmp/portage/games-emulation/duckstation-9999/work/duckstation/src/core/cpu_recompiler_code_generator.cpp:1362:81: error: operands to ‘?:’ have different types ‘BitField<unsigned int, CPU::Reg, 16, 5>’ and ‘BitField<unsigned int, CPU::Reg, 21, 5>’
 1362 |                                PGXP::PackMoveArgs(dest, lhs.HasConstantValue(0) ? instruction.r.rt : instruction.r.rs)),
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2023-12-26 13:07:28 +01:00
Stenzek
62d2f12236
Settings: Expose exclusive fullscreen control 2023-12-25 23:44:15 +10:00
Silent
8d491d3faa
System: Mark the VM as Stopping in ShutdownSystem unconditionally
Fixes an issue where Discord RPC didn't revert to "No Game Running"
on shutdown.
2023-12-23 15:27:10 +01:00
Silent
d08a40bcd8
DiscordRPC: Show session time in Discord Rich Presence 2023-12-23 15:19:22 +01:00
Stenzek
8fe6ef1fa8
CPU/NewRec: Allocate callee-saved registers before caller-saved 2023-12-21 02:00:19 +10:00
Stenzek
b7c3c76014
CPU/NewRec/RISCV64: Implement PGXP 2023-12-21 02:00:19 +10:00
Stenzek
36643fe78b
GameList: Add "File Size" field 2023-12-20 23:40:28 +10:00
Stenzek
bbd021bd5f
DMA: Memory wraparound is unlikely 2023-12-20 22:44:50 +10:00
Stenzek
48a1282a08
GPU/HW: Fix incorrect layout for non-buffer VRAM write 2023-12-20 22:42:32 +10:00
Stenzek
dc5e4120cd
GPUDevice: Improve texture pooling 2023-12-20 22:42:32 +10:00
Stenzek
5ef2ba0eb2
GPU/HW: Add fallback path for no-texture-buffers
Yay, old Mali drivers without SSBOs...
2023-12-19 22:38:36 +10:00
Stenzek
f5ddd7ba32
DMA: Template transfer functions
~20% speedup in FMV playback on a Ryzen 9 7950X3D. CPUs hate branches.
2023-12-19 22:38:36 +10:00
Stenzek
b9665e83a3
MSBuild: Only link with Zydis in Debug builds 2023-12-19 22:38:35 +10:00
Stenzek
cf45047463
CI/Windows: Use Clang-CL instead of MSVC 2023-12-19 22:38:35 +10:00
Stenzek
21bbe5c76c
CPU/CodeCache: Fix page error when rewinding 2023-12-19 22:38:27 +10:00
Stenzek
6a7dea6908
CPU/CodeCache: Fix rewinding on Apple Silicon 2023-12-18 21:01:57 +10:00
Stenzek
7829abc014
MSBuild: We don't need WinPixEventRuntime in Release builds 2023-12-18 20:50:36 +10:00
Stenzek
df08e122c3
System: Fix rewind throttling at half speed 2023-12-18 20:50:36 +10:00
Stenzek
87d24d3259
System: Fix crash on emptying rewind buffer 2023-12-18 20:50:36 +10:00
Stenzek
e6be0532cb
System: Fix incorrect rewind VRAM estimation 2023-12-18 20:50:35 +10:00
Stenzek
8842a46a90
CPU: Fix namespacing in disassembler 2023-12-17 13:40:38 +10:00
Stenzek
73968ac526
SaveStateSelectorUI: Decouple current slot from list 2023-12-17 13:33:51 +10:00
Stenzek
cffb383c10
CPU: Add disassembly of GTE instructions 2023-12-17 00:38:11 +10:00
Stenzek
6328d08c14
System: Don't unconditionally refresh save state UI 2023-12-17 00:09:15 +10:00
Stenzek
e93fec49bb
Achievements: Reload settings after hardcode disabled 2023-12-16 21:12:05 +10:00
Stenzek
fb0ad26de8
Achievements: Fix incorrect fallback message 2023-12-15 23:54:31 +10:00
Stenzek
aa658047f6
CPU/Recompiler: Fix jal/jalr to load delayed register
NewRec already handled this correctly.
2023-12-15 21:46:30 +10:00
Stenzek
87a7c09466
GPU/HW: Improve heuristics for draw/write when copying 2023-12-15 16:05:44 +10:00
Stenzek
a499e21453
CPU/CodeCache: Don't try to compile direct double branches
Invalidation nightmare.
2023-12-15 13:46:48 +10:00
Stenzek
98a96db1bd
GPU: Remove redundant fields 2023-12-14 20:23:49 +10:00
Stenzek
23d5b20da6
GPU/HW: Split dirty rect into draw/write
Significant performance improvement in Persona 2.
2023-12-14 20:23:49 +10:00
Stenzek
5218ac6944
GPU/HW: Fix incorrect mask in VRAM offset calc 2023-12-14 20:23:48 +10:00
Stenzek
adfde45dc1
System: Add unsafe settings summary 2023-12-14 20:23:48 +10:00
Stenzek
57aa138808
PostProcessing: Add compile progress indicator 2023-12-14 20:23:48 +10:00
Stenzek
7e2afe82b5
FullscreenUI: Fix opening while paused 2023-12-14 20:23:48 +10:00
Stenzek
710698f7e1
Misc: Remove StringUtil::{Starts,Ends}With, use C++20 2023-12-13 21:18:19 +10:00
Stenzek
79c226efff
SmallString: fmt -> format, format -> sprintf 2023-12-13 21:06:15 +10:00
Stenzek
bc2c334370
Misc: Combine some redundant functions 2023-12-13 20:56:40 +10:00
Stenzek
ad96b1ec75
FullscreenUI: Improve menu button borders 2023-12-13 01:12:55 +10:00
Stenzek
c467825791
SaveStateSelectorUI: Make less ugly 2023-12-13 01:00:13 +10:00
Stenzek
39913b2a39
GPUDevice: Fix incorrect positioning with PostFX and GL 2023-12-10 23:26:43 +10:00
Stenzek
f1604db4a3
GPU/HW: Dynamically size downsampling textures 2023-12-09 22:08:14 +10:00
Stenzek
6b00bf016d
GPU/HW: Dynamically size display texture 2023-12-09 22:08:14 +10:00
Stenzek
a907e1f550
GPUDevice: Pool textures 2023-12-09 22:08:13 +10:00
Stenzek
3b2c70cda5
GPUDevice: Get rid of framebuffer abstraction 2023-12-09 22:08:13 +10:00
Stenzek
61783d4a34
GPU/HW: Remove unused variable 2023-12-08 20:24:59 +10:00
Stenzek
b7c53102c6
GameDB: P2 2023-12-07 20:16:22 +10:00
Stenzek
6557033b98
FullscreenUI: Replace some std::string instances with TinyString 2023-12-06 20:12:20 +10:00
Stenzek
e835f118b7
Hotkeys: Fix toggle CPU PGXP with Interpreter 2023-12-06 20:12:20 +10:00
Stenzek
591a2228d6
GTE: Add register names for debugging 2023-12-06 20:12:20 +10:00
Stenzek
185af2b039
CPU/NewRec: Fix lui/mfc0 not getting called in CPU PGXP mode 2023-12-06 20:12:20 +10:00
Stenzek
b166ec3403
CPU/NewRec: Allocate callee-saved before flush in lwx/swx
It might move a callee-saved -> caller-saved reg, in which case it's
going to get clobbered when the loadstore function is called.

SaGa Frontier 2 with PGXP on x64.
2023-12-05 00:27:55 +10:00
Stenzek
2071addce0
CPU/NewRec: Fix OOB reads on InstructionInfo 2023-12-05 00:27:55 +10:00
Stenzek
dc6bb357d4
Achievements: Handle dynamically-sized leaderboard trackers 2023-12-04 14:12:32 +10:00
Stenzek
90b14d6237
GPU/HW: Skip per-primitive flush for BG-FB with fbfetch 2023-12-03 21:37:26 +10:00
Connor McLaughlin
e5af7fefde
Merge pull request #3059 from CookiePLMonster/fix-total-unofficial-achievements
Achievements: Fix the percentage counter when only unofficial achievements exist
2023-12-02 16:17:26 +10:00
Silent
888582713b
Achievements: Fix the percentage counter when only unofficial achievements exist
Now correctly shows "This game has no achievements" and no percentage bar,
as per the RetroAchievements integration guide.
2023-12-01 22:24:59 +01:00
Silent
4854031a1c
FullscreenUI: Properly account for multiline Rich Presence in Title Info 2023-12-01 18:08:19 +01:00
Stenzek
2ca503639d
GPU/HW: Avoid extra texture copy in Vulkan/GL 2023-12-01 19:08:50 +10:00
Stenzek
d43efebcc5
GameDB: Add DisableTextureFiltering option 2023-12-01 17:36:37 +10:00
Stenzek
dc72f7a7af
GPU/HW: Fix texturing-and-drawing overlap
Worms Pinball.
2023-12-01 17:36:23 +10:00
Stenzek
df91c63b31
CDROM: Add PVD/directory entries to file map 2023-11-30 14:38:38 +10:00
Stenzek
7d5e2bf50c
FullscreenUI: More localization fixes 2023-11-30 14:21:44 +10:00
Stenzek
28556ee3e9
Achievements: Fix multiple leaderboard trackers 2023-11-30 14:10:28 +10:00
Stenzek
dfb27c14be
FullscreenUI: More localization fixes 2023-11-29 23:11:28 +10:00
Stenzek
4ac4388b08
GameDatabase: Fix identification of misnamed-exe games 2023-11-29 23:05:27 +10:00
Stenzek
35799aba47
CDROM: Add current file to debug window 2023-11-29 22:01:45 +10:00
Stenzek
5442242c64
IsoReader: Add GetEntriesInDirectory() 2023-11-29 21:56:40 +10:00
Stenzek
325dcc81ca
FullscreenUI: Allow changing UI language 2023-11-29 20:26:36 +10:00
Stenzek
8ce2be57c5
CPU/CodeCache: Call Block constructor/destructor
Fixes crash in MSVC Debug build.
2023-11-29 19:16:33 +10:00
Stenzek
eab9f57a5d
GameDB: Widescreen rendering disables 2023-11-29 16:08:05 +10:00
Stenzek
0b6cd330e5
System: Add missing controller poll while rewinding 2023-11-29 15:41:29 +10:00
Stenzek
26f3d5ba56
FullscreenUI: Add missing translation strings 2023-11-29 02:18:20 +10:00
Stenzek
5ff44ebcf5
CPU: Panic process on memory alloc fail 2023-11-29 02:01:24 +10:00
Stenzek
667b11121c
Qt: Update glyph ranges 2023-11-29 02:00:31 +10:00
Stenzek
08fcee2f56
CPU: Flush load delays before PCDrv calls 2023-11-28 18:25:12 +10:00
Stenzek
c482dfd27a
Qt: Fix 'Edit Memory Cards' using disc-specific cards 2023-11-28 15:06:12 +10:00
Stenzek
e382f2b64a
Settings: Add option to disable DSB/fbfetch 2023-11-28 14:38:38 +10:00
Stenzek
afe8384b6d
System: Use Async HC mode disable for resuming 2023-11-27 00:45:00 +10:00
Stenzek
c40cc4ef43
Hotkeys: Throttle pause requests 2023-11-27 00:15:52 +10:00
Stenzek
72716719b3
Achievements: Use big picture for confirm hardcore disable 2023-11-26 23:57:49 +10:00
Stenzek
c1d0419361
FullscreenUI: Use icon font for bindings 2023-11-26 23:57:49 +10:00
Stenzek
43c0ce0b3e
FullscreenUI: Put bindings on one line 2023-11-26 23:57:49 +10:00
Stenzek
fc6359457b
ImGuiManager: Use PromptFont icons for input OSD 2023-11-26 21:35:29 +10:00
Stenzek
8446856ecf
GPU/HW: Trace min/max UVs for hazards 2023-11-26 17:35:48 +10:00
Stenzek
dc75afeb3d
RegTest: Fix directory creation always failing 2023-11-25 22:04:05 +10:00
Stenzek
ff17444074
GPU/HW: Add framebuffer fetch blending path 2023-11-25 21:22:35 +10:00
Stenzek
a456741ae6
GPU/HW: Don't blend binary alpha texture filters 2023-11-25 19:49:05 +10:00
Stenzek
7cc52bba23
CMake: Support multiple CMAKE_OSX_ARCHITECTURES 2023-11-25 00:50:12 +10:00
Stenzek
cc6f22163c
HTTPDownloader: Add support for progress updates/cancelling 2023-11-25 00:50:12 +10:00
Stenzek
ca1dd27d4a
CPU/NewRec: Fix SR interrupts on non-x64 2023-11-24 20:35:12 +10:00
Stenzek
e10ff550d5
CPU/NewRec: Handle inside-block SMC
i.e. Spyro 2/3 PAL.
2023-11-21 22:31:18 +10:00
Stenzek
20de40a597
RegTest: Fix build on Mac 2023-11-21 22:31:18 +10:00
Stenzek
dbd052528e
CPU/NewRec: Fix build for AArch32 2023-11-18 17:16:51 +10:00
Stenzek
cce7be4723
Misc: Make struct member functions file-local 2023-11-18 16:46:11 +10:00
Stenzek
bee1f986a9
CMake: Fix incorrect library for HTTPDownloaderCurl 2023-11-18 14:58:45 +10:00
Stenzek
ad1716e376
GPU/HW: Correct OSD message 2023-11-15 19:26:02 +10:00
Stenzek
5fff97c9e1
GPU/HW: Clear instead of invalidating adaptive downsample RTs 2023-11-15 19:14:27 +10:00
Stenzek
3093d40869
Qt: Update link 2023-11-11 13:35:26 +10:00
Stenzek
312790c9a6
CPU/NewRec: Handle mtc0 rt, sr 2023-11-10 21:19:45 +10:00
Stenzek
3ab27e7220
FullscreenUI: Remove Pause on Menu open
And always pause. The option never really worked correctly.
2023-11-06 23:17:58 +10:00
Stenzek
b459a42fb7
Achievements: Use a 60 second timeout for server calls 2023-11-06 23:17:58 +10:00
Stenzek
0fe6e9170b
HTTPDownloader: Move to util project 2023-11-06 23:17:57 +10:00
Stenzek
3c6b6c5770
Achievements: Use retryable client error status code 2023-11-06 23:17:57 +10:00
Stenzek
3dfc3bd2ba
CPU: Fix incorrect scratchpad masking 2023-11-06 18:09:27 +10:00
Stenzek
928d137111
System: Add missing icons to some OSD messages 2023-11-05 22:38:25 +10:00
Stenzek
38bc2bd057
CDROM: Add option to choose emulated mechacon version 2023-11-05 14:43:38 +10:00
Stenzek
edae13d9e4
CDROM: Log command parameters 2023-11-05 13:32:25 +10:00
Stenzek
dde54fbba9
Settings: Fix incorrect type for Display/Scaling 2023-11-05 02:33:42 +10:00
Stenzek
9d88a373bd
GPU: Fix Guncon positioning with window padding 2023-11-04 20:11:51 +10:00
Stenzek
0e2c6676a3
Build: Compiling x64 builds on Apple Silicon host 2023-11-04 20:11:51 +10:00
Stenzek
f05ff4103e
Misc: Build fixes for Android 2023-11-04 20:11:51 +10:00
Stenzek
538266aacd
System: Fix Discord Rich Presence 2023-10-29 22:46:02 +10:00
Stenzek
bd49e0df63
System: Fix playlist memory card handling
But you really don't need to use them these days.
2023-10-29 20:37:42 +10:00
Stenzek
117cbeecaa
CPU/CodeCache: Fix NewRec on Apple Silicon 2023-10-28 14:41:29 +10:00
Stenzek
f786138175
CPU/CodeCache: Fix crash on Apple Silicon 2023-10-24 18:30:34 +10:00
Stenzek
06c4dc5e1b
GPU/OpenGL: Fix incorrect 1/4 blend on Mali 2023-10-22 00:07:46 +10:00
Stenzek
6592cafadc
CPU/NewRec: Add speculative constants 2023-10-22 00:07:46 +10:00
Stenzek
b3cbe5a7ee
CPU/NewRec: Add AArch32 backend 2023-10-21 20:22:51 +10:00
Stenzek
41bb9fddfc
CMake: Fix Debug x64 builds on Linux 2023-10-21 13:49:35 +10:00
Stenzek
d00ed000f9
CPU/NewRec/AArch64: Don't recreate assembler every time 2023-10-21 13:49:35 +10:00
Stenzek
52e0d8d473
CPU/Recompiler/AArch32: Load membase on demand 2023-10-21 13:49:35 +10:00
Stenzek
cce1ec598c
CPU/Recompiler/AArch32: Reduce register usage of Mul 2023-10-21 13:49:35 +10:00