Stenzek
77488db3dc
Misc: Align CPU state and SPU voices to cache lines
...
Fixes the ~12% performance regression from the texture replacement
namespace'ify commit. Apparently LTO was placing the CPU struct in the
middle of a cache line...
2024-07-06 18:49:37 +10:00
Stenzek
4c0250716d
GPU/HW: Ensure buffers are freed prior to recreating
2024-07-04 21:54:44 +10:00
Stenzek
c02bf0f662
CPU/NewRec/RV64: Compile fix
2024-07-04 21:40:19 +10:00
Stenzek
87f2995f3d
TextureReplacements: Namespace-ify
2024-07-04 15:52:32 +10:00
Stenzek
69c35c9fcd
Deps: Remove rapidjson from in-tree
2024-07-04 15:52:32 +10:00
Stenzek
f6d3a7987d
System: Load discord-rpc dynamically
2024-07-04 15:52:32 +10:00
Stenzek
00d2d862c2
Build: Use shared discord-rpc
2024-07-04 15:52:32 +10:00
Stenzek
4b61a3cbf3
Qt: Unrestrict resolution scale up to device limits
2024-07-04 13:25:27 +10:00
Stenzek
2bcb85d431
GPU/HW: Push all draws/writes through a common path
2024-07-03 15:44:12 +10:00
Stenzek
9ef7e8c5d0
GPU/HW: Use GSVector instead of Rectangle
2024-07-03 15:44:12 +10:00
Stenzek
ef152c47a6
GPU/HW: Interpolate native texture coordinates when upscaling
2024-07-03 15:44:12 +10:00
Stenzek
044d7a4797
GPU: Eliminate heap allocation on state load
2024-07-03 00:24:12 +10:00
Stenzek
f9bf2e8239
GPU: Use GSVector for SW scanout
2024-07-03 00:24:12 +10:00
Stenzek
0968610ba7
CDROM: Use GSVector
2024-07-03 00:24:12 +10:00
Stenzek
69471950f0
ImGuiOverlays: Use GSVector
2024-07-03 00:24:12 +10:00
Stenzek
b094c9cd87
MDEC: Vectorize IDCT
2024-07-03 00:24:12 +10:00
Stenzek
baab966b4e
System: Check for SSE4.1 in early hardware checks
2024-07-03 00:24:12 +10:00
Stenzek
173a61039c
System: Use cpuinfo for cache line size check
2024-07-03 00:24:12 +10:00
Stenzek
aabe39d0f8
GPU: Allow DMAs in Mode 1
...
Exact behaviour is still unknown, but it works on console (Nicolas
Noble's torus demo).
2024-07-02 16:56:11 +10:00
Stenzek
e1f90e6baf
MDEC: Store scale/IDCT matrix transposed
2024-07-02 16:56:10 +10:00
Stenzek
6d6659c85e
MDEC: Increase intermediate IDCT precision
2024-07-02 16:56:07 +10:00
Stenzek
e169189441
GPU/HW: Fix possible crash when changing texture filtering
2024-07-01 01:07:27 +10:00
Stenzek
44142ab4f9
CPU/Recompiler: Prefer adrp over trampoline for +/-4GB branches
2024-06-30 16:45:51 +10:00
Stenzek
f3671d21f3
CPU/CodeCache: Reduce far code size when using NewRec
2024-06-30 16:45:51 +10:00
Stenzek
9b42ad3859
CPU/CodeCache: Purge JitCodeBuffer
2024-06-30 16:45:51 +10:00
Stenzek
be8fbafd71
CPU/CodeCache: Always dynamically allocate code buffer
...
Reduces .bss size.
2024-06-30 16:45:51 +10:00
Stenzek
890f3fcf5d
Common/Log: Make actually writing unlikely
...
Move it out of the hot path.
2024-06-30 16:45:51 +10:00
Stenzek
34d5cdec96
GPU/HW: Expose depth buffer to internal postprocessing
2024-06-29 14:25:36 +10:00
Stenzek
e39a2d00bf
GPU/HW: Use D32F for PGXP depth
...
16-bit isn't accurate enough for post processing.
2024-06-29 13:09:45 +10:00
Stenzek
1cb3e6bd49
ShaderGen: Support multiple render target output
2024-06-29 13:09:45 +10:00
Stenzek
80d1056ddf
GPU: Add virtual call when buffers are swapped
2024-06-28 21:15:47 +10:00
Stenzek
0c3cf1f5f8
PostProcessing: Split into internal and display chains
2024-06-28 20:17:15 +10:00
Stenzek
810ce1ce57
GPU: Remove duplicate display params fields
...
And enable postfx when the DAC is turned off.
2024-06-28 20:17:15 +10:00
Stenzek
3877486712
System: Ensure titles are sanitized for screenshots
2024-06-28 19:44:27 +10:00
Stenzek
a89ec0eaf9
Achievements: Always recompute state data size on save
...
It can be smaller, or, apparently fail in some cases...
2024-06-28 13:12:27 +10:00
Stenzek
ebf50edb79
System: Allocate JIT space before fastmem area
...
On Intel MacOS 14, the fastmem area gets allocated close to the
executable base, leaving no region free +/- 2GB for the JIT area.
2024-06-26 17:11:27 +10:00
Stenzek
db305660c1
Achievements: Implement disc change without state reset
2024-06-24 13:16:50 +10:00
Stenzek
b9ff358ab3
Achievements: Support scratchpad memory
2024-06-24 13:16:50 +10:00
Stenzek
e7e09023e2
Achievements: Avoid malloc on state save/load
2024-06-24 13:16:50 +10:00
Stenzek
63055f1e7f
FullscreenUI: Add sprite texture filtering option
2024-06-23 13:10:10 +10:00
Stenzek
ccb76d1451
GameList: Add custom title/regions
...
Largely inspired by https://github.com/PCSX2/pcsx2/pull/9330 , but almost
entirely rewritten.
2024-06-17 23:45:02 +10:00
Stenzek
01fc3258a3
CPU/Recompiler: Warning fix for ARM64/Clang
2024-06-17 17:13:23 +10:00
Stenzek
1ae79c89e3
System: Refactor unsafe settings warning
...
And warn about round upscaled texture coordinates option.
2024-06-17 17:02:55 +10:00
Stenzek
a5f8684bcd
BIOS: Add further detail to missing BIOS message
2024-06-17 16:47:21 +10:00
Stenzek
34f20798a1
GPU/HW: Add separate 3D/2D (sprite) texture filtering
2024-06-17 15:56:56 +10:00
Stenzek
be4abb016f
GPU/HW: Reduce multiple setting source of truth
2024-06-17 15:49:12 +10:00
Stenzek
6870010351
GPU/HW: Remove log spam
2024-06-16 21:15:37 +10:00
Stenzek
3d6b9e18c5
Settings: Include cheats in disable-all-enhancements
2024-06-16 19:22:09 +10:00
Stenzek
8455c9c3c6
GPU/HW: Add 'Force Round Upscaled Texture Coordinates'
2024-06-16 19:09:46 +10:00
Stenzek
1582b2ae5d
GPU/HW: Make texture filtering a fragment shadergen parameter
2024-06-16 19:09:46 +10:00
Stenzek
c1792108f4
GPU/HW: Eliminate raw texture pipeline permutations
2024-06-16 17:09:24 +10:00
Stenzek
ef69c31e9f
GPUDevice: Support transpiling shaders at compile time
...
And use it for GLSL postprocessing shaders.
2024-06-14 21:21:34 +10:00
Stenzek
f0c2832d03
Dep: Update vixl to 662828c
2024-06-14 17:42:24 +10:00
Stenzek
8124fb2ef5
CDROM: Fix incorrect sector dropped log message
2024-06-13 18:35:02 +10:00
Stenzek
9a88cbce09
Pad: Fix incorrect card mismatch OSD message
2024-06-13 18:35:02 +10:00
Stenzek
c86f6eb639
Achievements: Fix incorrect data source for mastery points
2024-06-13 18:35:02 +10:00
Stenzek
ac1bb905fe
GPU: Set idle bit during VRAM upload
...
Tenga Seiha does a bunch of completely-invalid VRAM writes on boot, then
expects GPU idle to be set. It's unclear what actually happens, I need to
write another test, but for now, just skip these uploads. Not setting GPU
idle during the write command breaks Doom, so that's not an option.
2024-06-13 18:35:02 +10:00
Stenzek
354b250642
PostProcessing: Add native width/height inputs
...
Available in GLSL as GetNativeSize(), GetUpscaleMultiplier(), and in
reshade as native_width/native_height/upscale_multiplier.
GetPaddedOriginalSize() is now deprecated, as it does not make since
since the postfx shader runs with a window-sized off-screen target as an
input, not the internal render texture.
2024-06-11 14:04:45 +10:00
Stenzek
b464b6d668
FullscreenUI: Fix loading undo state from menu
2024-06-11 13:07:47 +10:00
Stenzek
8595175267
CDROM: Improve accuracy of sector redelivery on DMA complete
...
Fixes hang in loading in Syphon Filter 2/3.
2024-06-09 19:47:51 +10:00
Stenzek
34861074c1
CDROM: Ensure complete IRQs for Init go through
...
Fixes booting games with OpenBIOS and its Init spam.
2024-06-08 16:58:08 +10:00
Stenzek
7222c21cd9
CDROM: Further refine interrupt delay
2024-05-31 23:59:44 +10:00
Stenzek
3e3572c410
DMA: Fix range check in mode0 when decrementing
...
Fixes lag on startup in Clone (Euro Demo 42).
2024-05-31 23:08:07 +10:00
Stenzek
c637e2b337
System: Fix title after loading state for EXE-boot
2024-05-31 21:08:45 +10:00
Stenzek
e70f155054
MemoryCard: Implement GetID command
2024-05-31 21:08:21 +10:00
Stenzek
8ef73203b2
Bus: Ignore SPU byte writes to unaligned addresses
2024-05-31 21:00:55 +10:00
Stenzek
a7543ab365
GPU/HW: Fix crash on VRAM write/copy with mask test
2024-05-31 20:39:31 +10:00
Stenzek
627c12bebe
GPU: Fix IRQ request
2024-05-31 20:39:18 +10:00
Stenzek
73136d7dc4
GPU: Tie idle bit to FIFO emptyness on VRAM write
...
Fixes Tenga Seiha lockup on boot.
2024-05-31 20:12:59 +10:00
Stenzek
53600746c7
GPU: Cancel VRAM writes on Reset
2024-05-31 19:49:40 +10:00
Stenzek
d013438810
CDROM: Rewrite BFRD handling
...
Fixes hang on startup in Unirom.
2024-05-31 19:45:42 +10:00
Stenzek
723af4de3a
Misc: Loading old save state versions is unlikely
2024-05-31 18:48:26 +10:00
Stenzek
3063101274
CDROM: Implement 0x60 test command
...
Apparently needed for unirom.
2024-05-30 22:34:06 +10:00
Stenzek
7682cd2c10
System: Generate hash serials when running PS-EXE
...
Allows for per-game settings.
2024-05-30 22:21:52 +10:00
Stenzek
25bf2b3adc
CDROM: Clear async interrupt on read/seek start
...
Fixes broken audio in Road Rash.
2024-05-30 20:49:58 +10:00
Stenzek
039796690c
GPU/HW: Fix a couple of out-of-order UBO pushes
2024-05-28 17:38:28 +10:00
Stenzek
2eb0085539
System: Fix inverted volume selection
2024-05-27 11:58:42 +10:00
Stenzek
015804c434
System: Move GDB server into core
2024-05-27 00:18:05 +10:00
Stenzek
55d96f86f0
System: Add "Disable Mailbox Presentation" option
...
Partial backport of https://github.com/PCSX2/pcsx2/pull/11296
2024-05-26 22:38:35 +10:00
Stenzek
83df785558
Settings: Default threaded presentation to off
2024-05-26 22:38:35 +10:00
Stenzek
4311e08726
System: Implement PINE server
2024-05-26 22:38:35 +10:00
Stenzek
328a3cd7af
System: Prevent save states while memory cards are being saved
2024-05-25 17:42:12 +10:00
Stenzek
2ff1f398a3
CDROM: Handle INT1 with pending command
...
Fixes lockup during track playback in Gokujou Parodius Da! Deluxe Pack.
2024-05-25 16:10:09 +10:00
Stenzek
60ee17e713
System: Fix regtest dumping
2024-05-25 15:58:41 +10:00
Stenzek
1565a2667d
Misc: More format string fixes
2024-05-25 15:48:31 +10:00
Stenzek
22c76d43c3
CPU/PGXP: Reduce vertex cache memory
2024-05-25 02:06:40 +10:00
Stenzek
0f9a255093
System: Fallback to FIFO on AMD (no mailbox support)
2024-05-24 22:48:26 +10:00
Stenzek
98520978a8
System: OSD message corrections
2024-05-24 22:13:35 +10:00
Stenzek
49e3663dfe
Settings: Purge max display FPS option
...
No longer needed since we pull it from the surface instead.
2024-05-24 02:33:33 +10:00
Stenzek
42a5fe0a6e
GPU: Further improve vsync handling
2024-05-24 02:33:33 +10:00
Stenzek
4e922a34a7
Log: Simplify macros
2024-05-24 02:08:14 +10:00
Stenzek
792717e03e
Misc: Get rid of format string for result logging
2024-05-24 00:30:06 +10:00
Stenzek
9f90f14c48
CPU/CodeCache: Only print code size stats on request
2024-05-24 00:30:06 +10:00
Stenzek
b6d019db66
Misc: Replace log printf calls with fmt
2024-05-24 00:29:49 +10:00
Stenzek
49b2e76dea
GPU/HW: Warning fix
2024-05-23 20:08:14 +10:00
Stenzek
d2f28b6926
GPU: Explicit RemovePathLimits() is no longer needed
2024-05-23 19:52:56 +10:00
Stenzek
10df7ba319
GPU/HW: Ensure CLUT cache is synced when using SW-for-readbacks
2024-05-23 14:30:18 +10:00
Stenzek
6cad97b404
GPUDevice: Make vsync actually tear-free
...
Apparently users prefer stutter over tearing...
2024-05-23 13:52:26 +10:00
Stenzek
dd98b630ea
GameList: Treat disc sets and discs equally when sorting
2024-05-23 12:45:57 +10:00
Stenzek
8709624751
GameList: Fix disc set last played time
2024-05-22 22:46:09 +10:00
Stenzek
14ba3b7312
System: Fix sync to host refresh audio stretching
2024-05-22 22:32:51 +10:00
Stenzek
d9cc80c7f9
WindowInfo: Get refresh rate from monitor config
...
DwmGetCompositionTimingInfo() returns a noisy refresh rate, at least on
Win11 22H2.
2024-05-22 22:16:31 +10:00
Stenzek
08125262bb
System: Fix Edit Memory Cards action for disc sets
2024-05-21 13:55:37 +10:00
Stenzek
1a4679def8
System: Use different conditions for frame dupe-skip
2024-05-20 01:32:33 +10:00
Stenzek
ab4c6f2dde
CPU/NewRec: Enable delay slot swapping in more situations
...
Load delay is always updated, so don't need to swap when it's reading
from a delayed register. Branching on a delayed register will also be
fine, since it won't be flushed by the the branch executes.
2024-05-20 01:12:32 +10:00
Stenzek
09b43f962a
CPU/NewRec: Clear needed on swapped delay slot
...
Fixes panic in BIOS on x86_64 Linux with PGXP enabled.
2024-05-20 01:12:32 +10:00
Stenzek
5b4f74122c
System: Add "Skip Duplicate Frame Display" option
...
Skips the presentation/display of frames that are not unique.
Can be combined with driver-level frame generation to increase
perceptible frame rate. Can result in worse frame pacing, and is
not compatible with syncing to host refresh.
2024-05-20 01:12:32 +10:00
Stenzek
14c30dfa80
FullscreenUI: Update string list
2024-05-19 13:19:51 +10:00
Stenzek
1205b75c51
GameList: Reduce logging verbosity
2024-05-19 13:19:51 +10:00
Stenzek
1adaea9005
GameList: Merge multi-disc games
2024-05-18 15:21:44 +10:00
Stenzek
9bdf23cba7
System: Load game settings from first disc of multi-disc games
2024-05-18 15:21:44 +10:00
Stenzek
073ac87be2
GameList: Use string_view for GetEntryForPath()
2024-05-18 15:21:43 +10:00
Stenzek
9b086b7807
CPU: Fix disassembly of rtps/nclip
2024-05-18 00:33:22 +10:00
Stenzek
7476baced6
CPU/PGXP: Track valid Z for lower/upper halves of 32-bit values
...
Dragon Valor writes both lower and upper halfwords separately from
non-valid-Z values. The Z needs to be cleared out.
2024-05-18 00:33:22 +10:00
Stenzek
ea4efb4e52
CPU/PGXP: Prefer fresh over tainted Z values
...
Fixes terrain polygon's Z in Wild Arms 2 after battles.
2024-05-18 00:33:22 +10:00
Stenzek
5672b0da95
CPU/PGXP: sub rd, rs, 0 => move rd, rs
2024-05-18 00:33:22 +10:00
Stenzek
bbac7a60a0
CPU/PGXP: Don't set high bits of flags
2024-05-18 00:33:22 +10:00
Stenzek
37b1aa45dd
CPU/PGXP: Minor optimization to shift instructions
2024-05-18 00:33:22 +10:00
Stenzek
3fd86a69a4
CPU/PGXP: Use component enum
2024-05-18 00:33:22 +10:00
Stenzek
e4bedbbbfa
CPU/PGXP: Readability improvements
2024-05-17 23:46:18 +10:00
Stenzek
29d4e04e3b
CPU/PGXP: Use bit math for flags instead of union
2024-05-17 23:46:18 +10:00
Stenzek
82f3e17b78
CPU: Value logging/tracing for PGXP
2024-05-17 23:46:18 +10:00
Stenzek
a59a42f35b
Qt: Fix translation of %n hours
2024-05-17 14:23:41 +10:00
Stenzek
35bdbf2a55
System: Check host page size on startup
2024-05-16 17:37:23 +10:00
Stenzek
c53717bbe4
System: Rewrite input profile hotkey priority logic
2024-05-16 16:53:13 +10:00
Stenzek
f0a4ceb909
InputManager: Add push to toggle for macros
2024-05-15 21:17:26 +10:00
Stenzek
446750fb66
FullscreenUI: Correct heading sizes
2024-05-15 20:31:12 +10:00
Stenzek
c116e5a1d5
Qt: Consider per-game overrides for Edit Memory Cards menu
2024-05-15 01:50:43 +10:00
Stenzek
18160a8e06
Qt: Add option to pause when controller is disconnected
2024-05-14 16:00:09 +10:00
Stenzek
8f415a44e6
CPU/NewRec: Fix register allocation crash on Linux
2024-05-14 15:13:18 +10:00
Stenzek
e517581041
System: Tidy up some unused code
2024-05-14 15:13:18 +10:00
Stenzek
f3aec0c965
Host: Re-introduce plural translation support
2024-05-13 01:46:45 +10:00
Stenzek
318fd0b0fd
System: Fix triple popup on missing BIOS
2024-05-13 00:07:47 +10:00
Stenzek
be920acf38
System: Get rid of double popup on renderer create error
2024-05-13 00:06:56 +10:00
Stenzek
5808e14b7e
GameDatabase: Warning fix
2024-05-13 00:06:56 +10:00
Stenzek
522c2e3458
FullscreenUI: Use native file selector on Flatpak
2024-05-12 20:28:20 +10:00
Stenzek
37a76a020a
FullscreenUI: Add horizontal padding to menu windows
2024-05-12 18:14:51 +10:00
Stenzek
69e0c1681c
FullscreenUI: Correct pixel alignment of some UI elements
...
Fixes scrollbars showing up at some window sizes.
2024-05-12 17:57:18 +10:00
Stenzek
864b0ad5fe
Qt: Save audio output latency value separately to minimal flag
2024-05-12 17:36:15 +10:00
Stenzek
e7765d26fb
System: Fix double popup on missing SBI file
2024-05-12 17:20:37 +10:00
Stenzek
a4a35b7e58
GPU: Add Bilinear (Integer) scaling option
2024-05-12 15:32:21 +10:00
Stenzek
d3546d18a1
Qt: Add compatibility report in game summary
2024-05-06 00:00:41 +10:00
Stenzek
ffb5682b43
Qt: Add game list excluded folders as well as files
...
Backport of https://github.com/PCSX2/pcsx2/pull/9730
2024-05-05 22:29:26 +10:00
Stenzek
fa104acdd1
Misc: Purge unused code and report startup error to host
2024-05-05 22:29:26 +10:00
Stenzek
ca3cfbaa99
Misc: Pass string_view by value
2024-05-05 22:28:29 +10:00
xujibbs
fea00d0149
FullscreenUI: Mark %d ms for translation ( #3196 )
2024-05-05 12:41:46 +10:00
Stenzek
1185f8f6aa
GPU: Implement CLUT cache (SW renderer only)
...
Fixes copyright screen in Shadow Master.
Fixes title splash in Castrol Honda Superbike Racing.
2024-05-02 01:03:58 +10:00
Stenzek
d1483d8077
GPU: Rework pre-draw clipping
2024-05-02 01:03:58 +10:00
Stenzek
7e22fb08d2
GPU: Add #define'able PSX GPU stats
2024-05-01 23:00:10 +10:00
Stenzek
fec210b1e1
GPU: Ensure coordinates are masked/clamped
2024-05-01 20:58:21 +10:00
Stenzek
25f725c263
GPU: Fix mask for drawing area coordinates
2024-04-28 15:44:41 +10:00
Stenzek
d094978214
Justifier: Add controller implementation
2024-04-28 15:25:24 +10:00
Stenzek
3be02c53c1
GPU: Improve CRTC hblank accuracy
...
And implement Timer0 gating, it was missing previously.
2024-04-28 15:25:24 +10:00
Stenzek
295081fe62
Misc: Replace offsetof with constexpr-friendly OFFSETOF
...
Fixes build with clang-18.
2024-04-28 15:25:24 +10:00
Stenzek
3e99084770
Settings: Fix double source of truth for controller names
2024-04-27 13:21:11 +10:00
Stenzek
d80aa91d49
ImGuiOverlays: Fix >1 controller display
2024-04-27 12:41:47 +10:00
Stenzek
2fc9a6d834
CPU/NewRec: Work around clang <16 structured binding capture bug
2024-04-26 19:23:46 +10:00
Stenzek
1cdfca155d
Qt: Clean and remove empty game settings
2024-04-25 14:02:16 +10:00
Stenzek
5e9a47f82b
Qt: Add volume reset button
2024-04-25 13:24:04 +10:00
Stenzek
7548113afd
System: Move COM init to common code
2024-04-25 12:56:02 +10:00
Stenzek
4139bf63d8
AudioStream: Backport changes
2024-04-25 01:13:51 +10:00
RSDuck
89c0d4900b
Fix post processing menu in the fullscreen UI ( #3187 )
2024-04-23 16:26:46 +10:00
Stenzek
b4999975db
System: Fix pause-on-start running unthrottled
2024-04-23 14:44:08 +10:00
Stenzek
eb91fe31e2
Hotkeys: Add OSD toggle hotkey
2024-04-22 01:52:02 +10:00
Stenzek
3b8afb39f6
System: Don't try to fast boot non-PS1 discs
2024-04-22 01:44:04 +10:00
Stenzek
3fa2bd1d3a
System: Confirm shutdown if memory card is being written
2024-04-22 01:41:42 +10:00
Stenzek
a5613fc815
System: Add OSD message when all enhancements are disabled
2024-04-22 00:38:46 +10:00
Stenzek
b26a9556f7
System: Improve reset determinism
2024-04-22 00:19:44 +10:00
Stenzek
35f0d7f623
CPU: Update debug dispatcher flag on init
2024-04-22 00:08:16 +10:00
Stenzek
0fbc1a3a8a
AudioStream: Add surround expansion via FreeSurround
2024-04-21 23:30:46 +10:00
Stenzek
d3c12fecb3
Qt: Move dump audio on startup out of settings
2024-04-21 20:28:20 +10:00
Stenzek
7d80cabf9f
BIOS: Remove questionable hashes
...
And add PS2 hashes.
2024-04-21 14:03:55 +10:00
Stenzek
8867bb129a
CMake: Tidy up build system
...
And fix Windows CMake... who knows how long for.
2024-04-20 21:19:31 +10:00
Stenzek
17b9736899
Misc: Use a 128b cache line size on Apple Silicon
...
Turns out it's not 64 bytes like I assumed. The things you learn.
2024-04-18 20:38:36 +10:00
Stenzek
60f12e77fa
Achievements: Fix fullscreen window height
2024-04-18 20:38:35 +10:00
Stenzek
3bb36f95e2
FullscreenUI: Get rid of extra scrollbar in save state selector
2024-04-18 00:41:37 +10:00
Stenzek
f666816943
ImGuiOverlays: Fix possible crash in save state selector
2024-04-18 00:40:31 +10:00
Stenzek
84b24c6228
Achievements: Fix HC mode activating on reset of non-cheevo game
2024-04-18 00:40:06 +10:00
Stenzek
c1bf1e5369
Qt: Add binding layout for NegConRumble
2024-04-16 15:40:31 +10:00
Matheus Fraguas
07c012aee5
Negcon rumble ( #3177 )
...
* Implemented NeGcon with rumble. Code is a mix of the existing NeGcon AnalogController modes.
* Fix negcon id reply and analog/digital toggle.
* Implemented NeGcon with rumble. Code is a mix of the existing NeGcon AnalogController modes.
* Fix negcon id reply and analog/digital toggle.
* Update macros
* Code cleanup
2024-04-16 15:40:31 +10:00
Stenzek
4d8ed49b24
FullscreenUI: Fix gaps between some UI elements
...
By rounding sizes up to the nearest pixel.
2024-04-16 15:40:31 +10:00
Stenzek
4e0c417add
FullscreenUI: Add "Open Containing Directory"
2024-04-16 12:49:54 +10:00
Stenzek
6e7a4c3909
FullscreenUI: Exit fullscreen for open-in-file-browser
2024-04-16 12:49:54 +10:00
KamFretoZ
79ccd5f3c3
FullscreenUI: Wire up Open in File Browser functionality ( #3178 )
2024-04-16 12:49:54 +10:00
Stenzek
be1d558be1
GPU/HW: Fix black screen in Metal after vertex ID wraparound
2024-04-15 23:30:58 +10:00
Stenzek
4bcc5a312a
System: Remove log spam
2024-04-14 17:25:23 +10:00
Stenzek
3dedf5fdd5
FullscreenUI: Add missing latency stats option
2024-04-14 17:25:23 +10:00
Stenzek
c149d66d4d
System: Add 'Reduce Input Latency' option
...
i.e. pre-frame sleep.
2024-04-13 19:57:25 +10:00
Stenzek
6258cb9e0e
FullscreenUI: Various minor bug fixes
2024-04-13 19:57:25 +10:00
PugsyMAME
7adbedd341
Renamed Mem Scanner Op Text&added Virtual Address ( #3172 )
...
* Renamed Mem Scanner Op Text&added Virtual Address
Renamed the Memory Scanner Operator Text for clarity. Replaced '...' with 'Value' and 'Previous' with 'Previous Result'.
Also changed "Any Value" to "Any Value ('New Search' or 'Reset Result Value')", Any Valur should really be at the top of the index and the Previous Results should come before the other Value operators. But that's a job for another time.
The Virtual Address extra will display the virtual address of DuckStation's PSX RAM so it can be easily edited with the likes of HXD or another tool where the location of the virtual memory needs to be known.
* Replaced Mem Scanner Op Text with latest English text
Not touched the translations, just added the updated english text for the Memory Scanner "Operator:" text
* Rearranged Memory Scanner Operator class
Re-arranged Memory Scanner Operator class into a more logical order - with likely frequency of use moving item up the list.
New Order:-
Better Order:-
Any Value ('New Search' or 'Reset Result Value') x Any.
Less Than Previous Result x LessThanLast,
Less or Equal to Previous Result x LessEqualLast,
Greater Than Previous Result x GreaterThanLast,
Greater or Equal to Previous Result x GreaterEqualLast,
Not Equal to Previous Result (Changed Value) x NotEqualLast,
Equal to Previous Result (Unchanged Value) x EqualLast,
Decreased By Value x DecreasedBy,
Increased By Value x IncreasedBy,
Changed By Value x ChangedBy,
Equal to Value x Equal,
Not Equal to Value x NotEqual,
Less Than Value x LessThan,
Less or Equal to Value x LessEqual,
Greater Than Value x GreaterThan,
Greater or Equal to Value x GreaterEqual
* Rearranged Memory Scanner Operator class
Changes operator order to:-
Any Value ('New Search' or 'Reset Result Value')
Less Than Previous Result
Less or Equal to Previous Result
Greater Than Previous Result
Greater or Equal to Previous Result
Not Equal to Previous Result (Changed Value)
Equal to Previous Result (Unchanged Value)
Decreased By Value
Increased By Value
Changed By Value
Equal to Value
Not Equal to Value
Less Than Value
Less or Equal to Value
Greater Than Value
Greater or Equal to Value
* Memory Scanner line references updates
Updated <location filename="../memoryscannerwindow.ui" line="???"/> line numbers for the Memory Scanner operation re-ordering.
These are currently the only 4 translation files that make reference to memoryscannerwindow.ui, the other 12 still reference cheatmanagerdialog.ui so not replicated for them as this would only partially fix them - so I left them alone as I hope there's some automated tools to handle it.
* Update src/duckstation-qt/memoryscannerwindow.cpp
2024-04-13 19:57:12 +10:00
Stenzek
e5a024ba85
MetalDevice: Add support for framebuffer fetch
2024-04-12 21:07:16 +10:00
Stenzek
7344661801
GPUDevice: Split submission and presentation
2024-04-11 22:53:02 +10:00
Stenzek
509a8a074c
GPUDevice: Remove unused file
2024-04-11 21:33:40 +10:00
Stenzek
88270771da
System: Combine VRR and Optimal Frame Pacing
...
GSync/FreeSync display users should:
- DISABLE VSync.
- ENABLE Optimal Frame Pacing.
2024-04-11 21:33:40 +10:00
Stenzek
fec36471b8
Settings: Use RealPath() for directories
2024-04-11 14:44:43 +10:00
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
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