Commit graph

2785 commits

Author SHA1 Message Date
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
Stenzek 23dff0a9b6
Bus: Properly set unmapped pages to NULL for LUT fastmem 2023-10-21 13:49:35 +10:00
Stenzek e36130158c
CPU/Recompiler: Fix incorrect shift in LUT fastmem 2023-10-21 13:49:35 +10:00
Stenzek c727ac33c7
CPU/CodeCache: Include hi/lo in state logging 2023-10-21 13:49:35 +10:00
Stenzek 9501439d6b
CPU: Add new experimental recompiler 2023-10-18 00:49:01 +10:00
Stenzek c179473c2b
Bus: Allow LUT fastmem on mirrors 2023-10-18 00:49:01 +10:00
Stenzek 9d40164f84
CPU/Recompiler: Offset LUT fastmem pointers 2023-10-18 00:49:01 +10:00
Stenzek a062b00c1a
Bus: Protect main RAM buffer
Get rid of write-time checks.
2023-10-18 00:49:01 +10:00
Stenzek 79e1ae3e54
CPU/CodeCache: Rewrite using new-rec's block management 2023-10-18 00:49:01 +10:00
Stenzek f82d08e223
TimingEvents: Reset downcount when head is resorted 2023-10-17 13:14:05 +10:00
Stenzek 78959f6339
MemoryCardImage: Swap over to fmt 2023-10-17 13:08:44 +10:00
Stenzek ad04f79e57
FullscreenUI: Fix controller strings not translating 2023-10-12 19:30:23 +10:00
Stenzek f9d8a49324
CPU: Fix incorrect writing of unaligned words via cheats 2023-10-11 01:10:31 +10:00
Stenzek 5c0dab4fe8
FullscreenUI: Fix button behaviour in Load/Save State 2023-10-08 13:58:59 +10:00
Stenzek ce7f6128e9
OpenGLDevice: Cache intermediate state 2023-10-08 01:47:29 +10:00
Stenzek eb080834ad
OpenGLDevice: Actually check max texture buffer size 2023-10-08 01:10:52 +10:00
Stenzek 7625d4769c Bus: Keep old behavior of memory being readable when Isc
Some games (e.g. Parasite Eve) write to cache control with Isc on.
Need some hardware tests here.
2023-10-06 22:57:54 +10:00
Stenzek da1c28bd16 Misc: Fix arm32 build 2023-10-02 23:59:01 +10:00
Stenzek 6fd7eda68f Misc: Fix build on Debian Bullseye 2023-10-02 23:50:56 +10:00
Stenzek a96111eaeb Misc: Swap make_array() for size deduction 2023-10-02 13:33:33 +10:00
Stenzek 56fc207af6 CPU: Use lookup tables for memory access 2023-10-01 20:48:02 +10:00
Stenzek 05fe925409 CPU: Make namespacing explicit 2023-10-01 20:48:02 +10:00
Stenzek ecb082b672 CDROM: Add NEON implementation of GetPeakVolume() 2023-10-01 17:24:34 +10:00
Stenzek 01e505ec8b Common: Add intrin.h 2023-10-01 17:24:34 +10:00
Stenzek b1bb33a566 Common: Move CPU macros to types.h 2023-10-01 13:57:25 +10:00
Stenzek dd204d116e CPU: Warning fix 2023-10-01 13:20:14 +10:00
Stenzek d5608bf12d GPU: Fix crash with Box Downsampling/Auto Resolution Scale 2023-09-30 23:20:09 +10:00
Stenzek 2171fd9a6f Bus: Fix RAM mirrors with LUT fastmem 2023-09-30 23:14:06 +10:00
Stenzek 8822698eaf Bus: Fix running multiple DuckStation instances 2023-09-30 21:49:30 +10:00
Stenzek 8f267c87c0 System: Only update played time when game list is loaded 2023-09-30 21:42:15 +10:00
Stenzek 15b29b4caa Settings: TTY logging is no longer an enhancement 2023-09-30 21:36:43 +10:00
Stenzek 7c102ec29d CI: Build fix 2023-09-30 15:17:31 +10:00
Stenzek 4ad777f54f Qt: Add log window 2023-09-30 15:09:07 +10:00
Mrlinkwii 062af59a8c Achievements: Different choice of words in achievement popup 2023-09-24 15:28:13 +01:00
Stenzek 4266f42257 Achievements: Don't turn HC off on login fail if we reauth 2023-09-24 12:21:19 +10:00
Stenzek 9517638bcb GPUDevice: Don't recreate device on SW switch in GLES: 2023-09-23 14:14:52 +10:00
Stenzek 7edb57ca15 Settings: Add Default renderer option 2023-09-23 14:14:52 +10:00
Stenzek aa1e59c9f1 Achievements: Don't disable HC while login pending 2023-09-23 14:14:52 +10:00
Stenzek b678fcd874 GPUDevice: Move debug messages over to fmt 2023-09-23 14:14:52 +10:00
Stenzek 184b0a1a52 Misc: Swap most C format strings for fmt 2023-09-23 14:14:52 +10:00
Stenzek 92440bdfcf Log: Add fmt overloads 2023-09-23 14:14:52 +10:00
Stenzek ac0601f408 Common: Drop String, add SmallString 2023-09-23 14:14:52 +10:00
Stenzek 3c68543491 Bus: 16KB page compatibility for mmap fastmem 2023-09-23 14:14:52 +10:00
Stenzek 7d76643c02 GunCon: Fix incorrect translation context 2023-09-20 21:38:49 +10:00
Stenzek c25c7070b6 Bus: Make variable prefixes consistent 2023-09-20 21:38:38 +10:00
Stenzek 0e0beec1f4 OpenGLDevice: Fix PBO and non-PBO path for SW renderer 2023-09-20 19:35:46 +10:00
Stenzek 3c47f9b1b1 Host: Report error on GPU device creation fail 2023-09-20 19:12:49 +10:00
Stenzek 18ae01bedb GPU/HW: Tidying up 2023-09-20 18:54:26 +10:00
Stenzek 3cd28f433b Controller: Use std::span 2023-09-20 17:11:29 +10:00
Stenzek 7e07d2feb8 GunCon: Add relative pointer binding 2023-09-20 17:11:29 +10:00
Stenzek 3a47c1eb52 Fullscreen: Light mode corrections 2023-09-20 00:10:08 +10:00
Stenzek 4ee71eb40f FullscreenUI: Update translation strings 2023-09-18 22:42:28 +10:00
Stenzek 2818eb2199 GPU/HW: Fix copy pipeline not getting destroyed 2023-09-18 22:38:15 +10:00
Stenzek 846f74c86d Achievements: Backports from PCSX2 2023-09-18 22:38:11 +10:00
Stenzek 68b59ee748 CMake: Swap USE_ and WITH_ for ENABLE_
Consistency.
2023-09-17 12:36:52 +10:00
Stenzek 57cdb180c6 Hotkeys: Fix crash when toggling PGXP 2023-09-17 00:55:30 +10:00
Stenzek 6b34c2a66d System: Swap to fmt for media errors 2023-09-17 00:51:28 +10:00
Stenzek 99c30b1e80 FullscreenUI: Mark some missing strings for localization 2023-09-16 19:06:59 +10:00
Stenzek a37e89b52f CMake: Remove unsupported options 2023-09-16 19:00:29 +10:00
Stenzek c773c763ef Achievements: Switch to rc_client 2023-09-16 19:00:29 +10:00
Stenzek a4911946ec FullscreenUI: Fix incorrect achievement points display 2023-09-16 19:00:28 +10:00
Stenzek a2f19143da MetalDevice: Support multisampling 2023-09-16 19:00:28 +10:00
Stenzek b30c86ed75 Build: Improve MacOS support 2023-09-16 19:00:28 +10:00
Stenzek 2efda31694 Misc: More enum cast warning fixes 2023-09-05 22:10:50 +10:00
Stenzek 60aca2fc4d Misc: Swap LIKELY/UNLIKELY macros for attributes 2023-09-05 22:10:50 +10:00
Stenzek adc124c759 Misc: Unreachable code warning fixes 2023-09-05 22:10:50 +10:00
Stenzek 605aa3c53a Misc: Swap gsl::span for std::span 2023-09-05 22:10:50 +10:00
Stenzek 391307efaa Common: Drop fallback path for HeterogeneousContainers 2023-09-05 21:37:04 +10:00
Stenzek 9b47561c89 Misc: C++20 fixes 2023-09-05 21:37:03 +10:00
Stenzek 4c5b650d11 FullscreenUI: Tag some missing translation strings 2023-09-04 22:45:44 +10:00
Stenzek a4c7293d28 CPU: Fix breakpoints/single stepping 2023-09-03 19:49:34 +10:00
Stenzek 4974a8015f GPU/HW: Fix texture filtering making everything transparent 2023-09-03 18:06:27 +10:00
Stenzek 585cf25ac4 GPU: Add downsample scale option 2023-09-03 17:10:40 +10:00
Stenzek 80e3d29ab8 Misc: clang-cl warning clean-up 2023-09-03 14:30:26 +10:00
Stenzek 7f446526d1 FullscreenUI: Fix some option values not being translated 2023-09-03 13:20:45 +10:00
Stenzek 0076ab5cc4 System: Restore context after pumping messages 2023-09-03 13:14:22 +10:00
Stenzek 25fb69564b GameDatabase: Fix stale database cache check 2023-09-02 23:17:56 +10:00
Stenzek 7ad1b8d093 GPU: Add wireframe rendering/overlay 2023-09-02 22:26:03 +10:00
Stenzek e804b5e701 GPUDevice: Support geometry shaders 2023-09-02 22:09:22 +10:00
Stenzek 4fc984e082 Qt: Add setup wizard 2023-09-02 21:44:15 +10:00
Stenzek 5480e42cd1 ImGuiManager: Fix changing global scale through FSUI 2023-09-02 21:44:08 +10:00
Stenzek bcda86d782 GPU: Fix non-internal resolution screenshots 2023-09-02 21:44:08 +10:00
Stenzek 9e8ff3969e GPU: Clamp UVs to active rect when presenting 2023-09-02 21:44:08 +10:00
Stenzek cee4f93097 Build: Use precompiled headers 2023-09-02 21:44:08 +10:00
Stenzek 0da14a5442 GPU/Vulkan: Fix MSAA
And disable sample rate shading ("SSAA") on AMD, Intel, and broken
mobile drivers, because it doesn't work.
2023-09-01 21:25:12 +10:00
Stenzek 09e7a5843f GPU: Add scaling shader support
Currently only Bilinear (Sharp).
2023-08-31 23:38:11 +10:00
Stenzek 9439cf65a3 AnalogController: Always use analog mode from save state 2023-08-31 22:09:17 +10:00
Stenzek 5421900bb2 System: Add InterruptExecution() 2023-08-30 22:20:36 +10:00
Stenzek 2915d4ce01 System: Remove memory card warnings on config change 2023-08-30 22:20:36 +10:00
Stenzek b483931444 System: Allow overriding BIOS in boot parameters 2023-08-30 22:20:36 +10:00
Stenzek 15af10e82a System: Expose memory save states 2023-08-30 22:20:36 +10:00
Stenzek ae9cf5b889 BIOS: Add FindBIOSPathWithHash() 2023-08-30 22:20:36 +10:00
Stenzek afaf5ddafd System: Centralize frame presentation 2023-08-30 22:20:36 +10:00
Stenzek 9e7d48cf85 Settings: Ensure Reshade directory gets created 2023-08-30 02:02:53 +10:00
Stenzek 199c53f3af BIOS: Replace TTY patch with syscall hook 2023-08-30 00:44:01 +10:00
Stenzek 92b1c21b8a CPU: Fix crash on breakpoint add/trace enable 2023-08-30 00:44:01 +10:00
Stenzek b217f64bcf PostProcessing: Refactor config to use separate sections 2023-08-30 00:44:01 +10:00
Stenzek 8db8baf33f GPUDevice: Move display logic to GPU 2023-08-30 00:44:00 +10:00
Stenzek 6c185ca17b GPUDevice: Remove mouse pointer position 2023-08-30 00:44:00 +10:00
Stenzek 674f9a5b1c Resources: Remove embedded crosshair image 2023-08-30 00:44:00 +10:00
Stenzek 259193a8e5 GPUDevice: Move software cursor to ImGuiManager 2023-08-30 00:44:00 +10:00
Stenzek 39b8dcda6e GPU/HW: Fix wrapped image writes 2023-08-30 00:44:00 +10:00
Stenzek e23c9875d5 Misc: Split core and util Host 2023-08-30 00:44:00 +10:00
Stenzek 3e82409c10 GPU/HW: Fix base settings not updating on change 2023-08-25 21:53:33 +10:00
Stenzek 08acc3144c Host: Avoid leaving GPU state unbound after represent 2023-08-24 18:04:52 +10:00
Stenzek dc9c99438b Misc: Post-refactor cleanups 2023-08-24 18:01:32 +10:00
Stenzek 82cdef45b3 System: Fix crash on non-database game 2023-08-23 19:39:22 +10:00
Stenzek c7f987bfb7 System: Share memory cards in multi-disc games
Even without playlists.
2023-08-23 18:41:14 +10:00
Stenzek 7d914a9384 Qt: Use disc sets for changing discs 2023-08-23 18:41:14 +10:00
Stenzek 2419008242 GameDatabase: Parse discSetName/discSetSerials 2023-08-23 18:41:14 +10:00
Stenzek 76b5b8ad06 MSBuild: Support building with clang-cl 2023-08-21 22:38:55 +10:00
Stenzek bf15d13eb7 dep/xbyak: Update to v6.73 2023-08-21 22:38:31 +10:00
Stenzek e3d9ba4c99 Rewrite host GPU abstraction
- Don't have to repeat the same thing for 4 renderers.
 - Add native Metal renderer.
2023-08-20 21:55:38 +10:00
Stenzek d09e5051ca Settings: Translate display names in core
Enables the values to show in the Big Picture UI.
2023-08-20 13:25:45 +10:00
Stenzek 496cf01369 FullscreenUI: Make translatable 2023-08-20 12:40:47 +10:00
Stenzek c88a558ae0 Misc: Make controller bindings translatable 2023-08-20 12:40:47 +10:00
Stenzek e57ad0b6aa Host: Backport translations cache
Note: You'll need a new command line for lupdate.

..\..\..\dep\msvc\qt\6.5.0\msvc2022_64\bin\lupdate.exe ../ ../../core/ ../../util/ -tr-function-alias QT_TRANSLATE_NOOP+=TRANSLATE,QT_TRANSLATE_NOOP+=TRANSLATE_SV,QT_TRANSLATE_NOOP+=TRANSLATE_STR,QT_TRANSLATE_NOOP+=TRANSLATE_FS,QT_TRANSLATE_N_NOOP3+=TRANSLATE_FMT,QT_TRANSLATE_NOOP+=TRANSLATE_NOOP -ts duckstation-qt_LANGUAGE.ts
2023-08-20 12:40:47 +10:00
Stenzek 1ec6aee5bf Host: Split translation macros dependent on return type 2023-08-20 12:40:47 +10:00
Stenzek 39f64a03ee Common: Error/FileSystem backports 2023-08-20 12:40:47 +10:00
Stenzek 4fbc9abe8a GameDatabase: Linux build fix 2023-08-19 23:06:27 +10:00
Stenzek cee5decec4 GameDB: Merge traits/compatibility into single file 2023-08-19 22:00:20 +10:00
Stenzek a00a4391ca Common: DynamicHeapArray/FixedHeapArray 2023-08-19 21:18:28 +10:00
Stenzek bb60170d9a Move frontend-common to util/core 2023-08-16 01:13:00 +10:00
Stenzek 5b980dafa5 System: Refactor main loop
Reduces JIT exits.
Improves runahead performance.
2023-08-16 01:13:00 +10:00
Stenzek 4ebd34fcb3 MSBuild: Use project referencing instead of .lib linking 2023-08-16 01:12:59 +10:00
Stenzek 56ac3d6c32 HostDisplay: Fix incorrectly positioned screenshots 2023-08-04 21:39:52 +10:00
Stenzek 6fbdb6d7db GPU: Enable GPUSTAT.28 in read mode
Fixes Celeste Classic.
2023-07-24 19:24:08 +10:00
Jamie Meyer 36c4345019
core / system: Disc-Region Fix For Netplay
Fixes an issue which is only really valid for netplay since can start from an non-auto region sinc eit pulls it from the host.
2023-05-24 12:33:24 +02:00
Stenzek 9aa6c24620 System: Store game hash as well as serial 2023-05-15 23:39:07 +10:00
Stenzek 7681551544 System: Don't auto enable analog on unknown games 2023-05-08 13:07:19 +10:00
Connor McLaughlin 481174255e
Merge pull request #2965 from stenzek/resize
HostDisplay: Treat internal res screenshots as a screenshot
2023-05-04 01:00:46 +10:00
Jamie Meyer 6afb267bb9
core: fix-comment 2023-05-03 16:44:48 +02:00
Dolphin 9526e15ec2
Update japanese translation (#2969)
* update base duckstation-qt_ja.ts

* update Japanese translation

* translate controller name on controllersettingsdialog
2023-05-02 21:46:06 +10:00
Stenzek 6b366afb05 HostDisplay: Treat internal res screenshots as a screenshot 2023-05-02 21:44:03 +10:00
Stenzek 84e5fbe0c6 CPU: HLE implementation of PCDrv (host file access) 2023-04-29 20:45:39 +10:00
Stenzek 991f7312b2 SPU: Fix building with SPU_DUMP_ALL_VOICES 2023-04-23 13:19:43 +10:00
Stenzek 2e3d924bc6 System: Fix crash when using unknown BIOS 2023-04-14 18:14:39 +10:00
Stenzek fe41e92579 CDROM: Improve handling of command spam
Fixes booting games with OpenBIOS.
2023-04-14 18:14:21 +10:00
Stenzek fd0d12a4f4 GL: Fix shader/memory leak 2023-04-10 23:50:09 +10:00
Stenzek 3bbce19df2 Pad: Don't backup card state unconditionally 2023-03-16 21:48:58 +10:00
Stenzek 3673827363 PAD: Intelligently skip saving memcard state for runahead 2023-03-16 21:22:08 +10:00
Stenzek 595abd27dd Settings: Disable block linking when runahead is active 2023-03-16 20:08:09 +10:00
Stenzek 33f5d9cb9c System: Remove BIOS from save state
Makes the states smaller, as well as not creating potential piracy
issues when sending across the wire.
2023-03-16 19:34:01 +10:00
Stenzek 1fcf16fc81 System: Store BIOS image info/hash after loading 2023-03-16 19:22:54 +10:00
Stenzek 70695d3a4d CPU: Don't leave fault_count uninitialized 2023-03-16 18:58:43 +10:00
Stenzek befbc7bc2e HostDisplay: Fix cursor texture leak 2023-02-07 20:06:29 +10:00
Stenzek bd1df7b25b Settings: Default to Vulkan/Metal renderer on Mac 2023-02-05 15:12:43 +10:00
Stenzek 0ef24398f8 Qt: Ensure system is shut down before closing
Fixes crash on shutdown on Mac.
2023-02-05 13:43:15 +10:00
Stenzek 178a659a98 GPU: Move graphics API reset state to System
Stops us trying to reset state on objects which don't exist if
initialization failed (apparently some Android devices.. of course).
2023-02-05 13:12:45 +10:00
Stenzek c8e7922c1a AnalogController: Fix incorrect locked message format 2023-02-05 13:12:45 +10:00
Stenzek e8f4bd5c5e GameDatabase: Fix ForceSoftwareRendererForReadbacks 2023-01-30 19:26:48 +10:00
Stenzek e88214966f Settings: Default to digital controller on Android 2023-01-30 19:17:11 +10:00
Stenzek 14cf865905 Misc: Correctness fixes for OpenGL
GLES2 fallback should be functional again.
2023-01-30 19:17:11 +10:00
Superstarxalien afaedfedc9 Revert "Improve Integer Scaling behavior" and instead offer as a setting 2023-01-23 13:44:44 -04:00
Superstarxalien 51d1587b21 Improve Integer Scaling behavior
...so it always upscales the display from the framebuffer to fit the aspect ratio by stretching either horizontally or vertically instead of always stretching horizontally, which sometimes (actually most of the time) downscales the image
2023-01-21 14:51:55 -04:00
NicknineTheEagle bd7517b0c9 CDROM: Try to reject non-PS1 discs 2023-01-20 05:46:22 +03:00
NicknineTheEagle 7270531c3d CDROM: Fix region check 2023-01-20 05:46:20 +03:00
Stenzek 55f716e69e Settings: Fix default value of depth clear threshold 2023-01-17 18:47:54 +10:00
Stenzek 95306d3362 CDROM: Slightly adjust seek timing when on target
Fixes Resident Evil 3 booting.
2023-01-17 18:38:19 +10:00
Connor McLaughlin fe08d34e52 Qt: Add COP0/GTE registers to debugger list 2023-01-15 15:13:54 +10:00
Connor McLaughlin 395e9a934b InputManager: Support inverted full axis
i.e. pedals
2023-01-15 15:13:54 +10:00
Connor McLaughlin 5b600602c2 Settings: Make disable-all-enhancements use new MDEC routines 2023-01-13 21:03:35 +10:00
Connor McLaughlin 1aa3be70c7 SPU: Bypass FIFO for direct memory writes
Aconcagua writes a single halfword with transfers halted, but never enables
DMA.. so when it eventually does later on, there's an extra halfword
written out to memory, which corrupted part of a sound effect.
2023-01-13 21:03:10 +10:00
Connor McLaughlin 2c2304b5b7 System: Fix inverted ifdef 2023-01-12 18:12:58 +10:00
Connor McLaughlin 3b038fd27d System: Further improve frame timing consistency 2023-01-12 18:02:12 +10:00
Connor McLaughlin af5d49649c MDEC: Add option to use old conversion routines
That way texture packs for games which use MDEC for decoding
backgrounds will still be compatible.
2023-01-12 17:01:04 +10:00
Connor McLaughlin 3e0be0a577 MDEC: Tweak block timing further
Improves frame rate during animated backgrounds in Final Fantasy VII.
2023-01-12 16:48:34 +10:00
Connor McLaughlin 50a616421f System: Add -exe parameter for overriding boot executable
Lets you re-use a disc image, but boot a different file.
2023-01-11 19:49:11 +10:00
Connor McLaughlin ba7517fccc Timers: Fix debug window rendering in hidpi 2023-01-11 19:15:59 +10:00
Connor McLaughlin 3e16746e85 Pad: Convert to namespace 2023-01-11 19:15:59 +10:00
Connor McLaughlin 835834f8f4 SIO: Convert to namespace 2023-01-11 19:15:59 +10:00
Connor McLaughlin 0683b9fa0e InterruptController: Convert to namespace 2023-01-11 19:15:59 +10:00
Connor McLaughlin db364d0e95 Timers: Convert to namespace 2023-01-11 19:15:59 +10:00
Connor McLaughlin 3acf569d67 DMA: Convert to namespace 2023-01-11 19:15:59 +10:00
Connor McLaughlin 90fe071dda CDROM: Adjust Init timing 2023-01-11 19:15:59 +10:00
Connor McLaughlin 05eea3cd2b CPU/CodeCache: Always compute uncached fetch ticks
Running code out of uncached ROM is slowwww.
2023-01-11 19:15:59 +10:00
Connor McLaughlin b74eb37996 ImGuiOverlays: Display PAL/NTSC in resolution 2023-01-09 22:20:27 +10:00
Connor McLaughlin 2c125bde8c CDROM: Fix size of debug window 2023-01-09 22:20:27 +10:00
Connor McLaughlin 9de849aa66 CDROM: Delay async interrupts immediately after ACKs
Fixes music playback stopping in Ogre Battle.

Closes #2596.
Closes #575.
2023-01-09 22:20:27 +10:00
Connor McLaughlin dd73811628 CDROM: Convert to namespace 2023-01-09 22:20:27 +10:00
Connor McLaughlin 19b4f4e921 System: Add frame time graph 2023-01-07 13:10:43 +10:00
Dolphin 91a6608118 mark some analog controller/joystick messages as translatable 2023-01-07 10:35:17 +09:00
Connor McLaughlin 1bb321c41f MDEC: Don't round when texture replacements are enabled
This changes texture hashes, and people got annoyed :/
2022-12-27 22:17:58 +10:00
Connor McLaughlin 928dd0e665 MDEC: Fix Linux compiling 2022-12-21 17:30:22 +10:00
Connor McLaughlin c2e15b0078 System: Fix toggling Show GPU Usage at runtime 2022-12-20 21:32:51 +10:00
Connor McLaughlin d65cbe42ae GPU: Truncate instead of rounding 24bpp->16bpp
Thanks to axetion for writing a test to confirm this is what the console
GPU indeed does.
2022-12-20 21:19:58 +10:00
Connor McLaughlin 1c8ef86f12 MDEC: Convert to namespace 2022-12-20 21:18:30 +10:00
Connor McLaughlin 3082fd55d7 Qt: Add output audio device selection 2022-12-14 17:58:14 +10:00
Connor McLaughlin 8ab46d0713 MDEC: Redo IDCT and conversion
RE2 backgrounds look better now (mainly due to the 24bpp->16bpp
conversion). Also implements signed output (untested).
2022-12-14 17:28:34 +10:00
Connor McLaughlin 1905ce3e01 CDROM: Don't prevent GetlocL after Init
Console apparently just returns whatever was in memory, even though it
seeked to the start. Fixes Meremanoid booting.
2022-12-08 19:56:00 +10:00
Connor McLaughlin e27f259bf8 System: Fix broken missing-SBI detection 2022-12-06 18:09:40 +10:00
Connor McLaughlin 7101b86d2f System: Don't unconditionally apply TTY enable patch
Fixes Intelligent Qube hang.
2022-12-06 13:31:35 +10:00
Connor McLaughlin 8c7a192128 Misc: Add copyright/license statement to applicable files
Should've did this in the beginning.
2022-12-04 21:03:49 +10:00
Connor McLaughlin 1ba877409f HostDisplay: Remove sleep logging
Accidentially left this in...
2022-12-04 18:34:02 +10:00
Connor McLaughlin f8cb480779 Timer: Improve SleepUntil() 2022-12-04 15:40:46 +10:00
Connor McLaughlin 7d3ac98cc6 HostDisplay: Manually throttle fullscreen UI presentation
Fixes flickering screen in fullscreen with Vulkan.
2022-12-04 14:06:56 +10:00
Connor McLaughlin eafa4fb1a3 HostDisplay: Simplify method naming
Match PCSX2.
2022-12-04 13:22:13 +10:00
Connor McLaughlin 71c558625e GPU/SW: Fix incorrect min/max in polylines
Thanks to FPGAzumSpass for catching.
2022-11-28 18:04:58 +10:00
Connor McLaughlin a6f5ac264e CDROM: Handle some edge cases
- Reel Fishing: Reads while an implicit seek is still going.
 - Transformers - Beast Wars: Needs a longer delay when it issues a
   ReadN after a SeekL and simulated position hits exactly.
2022-11-28 18:04:28 +10:00
Connor McLaughlin cf05037428 GPU: Fix GL shaders on Mesa with PGXP + uncorrected colours 2022-11-22 23:14:54 +10:00
Connor McLaughlin 201a671709 System: Fix dumping audio on boot 2022-11-21 12:55:24 +10:00
Connor McLaughlin 6db90e8116 BIOS: Add detection of OpenBIOS 2022-11-15 21:22:42 +10:00
Spencer Alves ffa120d4e2 Achievements: Fix building Qt frontend with achievements disabled 2022-11-15 18:32:40 +10:00
Connor McLaughlin a6a52b31ad Achievements: Add option to disable notifications 2022-11-05 15:01:48 +10:00
Connor McLaughlin 601e3586b2 CPU/CodeCache: Impove overflow handling 2022-11-05 14:43:52 +10:00
Connor McLaughlin 72dfbaf6cc Misc: Backports from PCSX2 UI 2022-10-23 14:49:44 +10:00
Connor McLaughlin f5b7311a45 Controllers: Make deadzone circular 2022-10-21 21:20:21 +10:00
Connor McLaughlin b6686b8239 System: Preserve controller type on core settings reset 2022-10-21 00:30:42 +10:00
Connor McLaughlin 11ba87059e HostDisplay: Remove parameters which get pulled from config
No point duplicating them.
2022-10-14 00:14:34 +10:00
Connor McLaughlin ccfe3925fc HostDisplay: Use border sampling for post processing shaders 2022-10-13 22:53:16 +10:00
Connor McLaughlin c9d13c028e CDROM: Debugger names for some commands 2022-10-13 22:53:16 +10:00
Connor McLaughlin adf41b9bbd D3D12HostDisplay: Implement post processing 2022-10-13 22:13:09 +10:00
Connor McLaughlin cc3fadba14 Qt: Move downsampling to enhancement settings 2022-10-13 17:55:25 +10:00
Connor McLaughlin 0709f92ac1 Misc: Cleanup/deduplicate from c9cba5e 2022-10-13 17:37:39 +10:00
Connor McLaughlin 5498ddfab7 RegTest: Port to new host abstractions 2022-10-13 17:27:09 +10:00
nobody 553d58052b Expose Display Host Aligment as a Setting in Ini 2022-10-09 00:55:56 -04:00
Connor McLaughlin e395a74832 Settings: Fix default values for achievements 2022-10-09 14:21:01 +10:00
Connor McLaughlin 4feb5ad548 Controller: Make InAnalogMode() virtual 2022-10-09 14:10:54 +10:00
Connor McLaughlin 3a3f571ecc Settings: Persist OSD options when resetting 2022-10-08 23:36:39 +10:00
Connor McLaughlin 1745d3e803 Settings: Don't allow both runahead and rewind 2022-10-08 23:36:24 +10:00
Connor McLaughlin 42768c3101 Achievements: Fix a few minor issues 2022-10-08 21:21:33 +10:00
Connor McLaughlin 550b4928c2 Achievements: Backports from PCSX2 2022-10-08 20:25:42 +10:00
Connor McLaughlin 10f98106dd Misc: Normalize code vs serial usage 2022-10-05 18:29:44 +10:00
Connor McLaughlin 5f6490f68b GPU/Vulkan: Fix downloads messing up later commands 2022-10-05 18:29:43 +10:00
Connor McLaughlin 587fbf6ca7 System: Disable auto analog mode when starting shell 2022-10-04 00:20:37 +10:00
Connor McLaughlin 8f39ad3555 GPU/OpenGL: Don't recreate context on sw switch when using GLES 2022-10-04 00:00:56 +10:00
Connor McLaughlin 106addf5a8 Qt: Fix shutdown and save state in fullscreen UI 2022-10-04 00:00:56 +10:00
Connor McLaughlin f25d7f6e09 Misc: Fix various warnings 2022-10-04 00:00:56 +10:00
Connor McLaughlin a9038133c8 HostDisplay: Common texture base class for all APIs 2022-10-04 00:00:56 +10:00
Connor McLaughlin 12d400b76a OpenGLHostDisplay: Replace GL ID handle with texture class 2022-10-03 21:08:42 +10:00
Connor McLaughlin 971bba07d6 GPU: Make perspective-correct color interpolation toggleable 2022-10-03 21:08:41 +10:00
Connor McLaughlin 8aa1c8827c GPU/D3D11: Purge D3D11::StagingTexture 2022-09-26 22:15:51 +10:00
Connor McLaughlin 6bafcea94f HostDisplay: Remove DestroyRenderDevice() 2022-09-26 22:15:51 +10:00
Connor McLaughlin 84917ec6aa Common/Image: Add resize methods 2022-09-26 22:15:51 +10:00
Connor McLaughlin f7aa7c659c D3D11/Texture: Add layers/texture arrays 2022-09-26 22:15:50 +10:00
Connor McLaughlin e7fb42347f GL/Texture: Add multi-layer/level support 2022-09-26 22:15:50 +10:00
Connor McLaughlin 5ef0ad1ec6 GPU/Vulkan: Get rid of additional stream buffer 2022-09-26 22:15:50 +10:00
Connor McLaughlin cb1e15da58 GPU/D3D12: Fix incorrect stream buffer upload size 2022-09-26 22:15:50 +10:00