Connor McLaughlin
4bb3fb48f9
System: Add a new throttler/pacer which can catch up on lost time
...
This can result in worse frame pacing, so if you have a decent machine
you'll probably want to turn on "display all frames" in display
settings.
But, it's sadly needed for Android.
2021-01-28 21:04:23 +10:00
Connor McLaughlin
16a32bf696
Qt: Simplify runahead settings
2021-01-26 03:38:31 +10:00
Connor McLaughlin
1b16ba3d98
Warning fixes
2021-01-26 03:38:31 +10:00
Connor McLaughlin
e79dff1731
System: Use hybrid sleep on Android
2021-01-26 03:38:31 +10:00
Connor McLaughlin
24dd49e05d
GPU: Fix runahead with MSAA enabled in D3D11/Vulkan
2021-01-26 03:22:23 +10:00
Connor McLaughlin
b7752ff30b
CDROM: Update position when pausing while seeking instead of erroring
...
This was causing freezes in FF7 - needs more research.
2021-01-25 01:49:35 +10:00
Connor McLaughlin
b3ce2b21c0
System: Prevent using both runahead and rewind concurrently
2021-01-25 01:15:46 +10:00
Connor McLaughlin
3f96473fb5
System: Reuse existing texture/buffers for runahead/rewind
2021-01-25 01:15:46 +10:00
Connor McLaughlin
e01d66d18e
System: Implement runahead
2021-01-25 01:15:46 +10:00
Connor McLaughlin
516d685dd0
System: Add memory-only save states and rewind
2021-01-25 01:15:45 +10:00
Connor McLaughlin
6c6fdeb15e
HostDisplay: Make textures have levels/layers/samples attributes
2021-01-24 20:41:40 +10:00
Connor McLaughlin
b62f31fd96
System: Use region from exe/psf when booting
2021-01-24 17:37:09 +10:00
Connor McLaughlin
253b115b11
PSFLoader: Detect region from exe
2021-01-24 17:37:09 +10:00
Connor McLaughlin
10135e08a2
PSFLoader: Support loading minipsfs/libraries
2021-01-24 17:37:09 +10:00
Connor McLaughlin
4433197665
CPU/Recompiler: Fix hang in AArch32/armv7
2021-01-21 13:20:02 +10:00
Connor McLaughlin
4e802e90ca
SPU: Move voice key off/on outside sample loop
...
Should be a very tiny performance boost with no difference in behaviour.
2021-01-20 12:32:37 +10:00
Connor McLaughlin
8c8f29c047
CDROM: Double audio FIFO low watermark size
...
Gives a better chance to catch up in case of desyncs.
2021-01-20 12:09:44 +10:00
Connor McLaughlin
3c012ec6ef
SPU: Consider partial ticks when generating pending samples
...
Fixes hitches in opening FMV in Soul Blade (Europe).
2021-01-20 12:05:06 +10:00
Connor McLaughlin
a927bfbe50
GPU/HW: Flush after each primitive for B-F transparency
...
Slow, but necessary for some games such as Suikoden II, where it draws
multiple polygons to the same area on screen with different transparency
modes.
2021-01-20 01:08:36 +10:00
Connor McLaughlin
d4f52f1ec7
GTE: Force inline a few of the helper functions
...
Tiny performance improvement.
2021-01-19 00:07:26 +10:00
Connor McLaughlin
914b9bf738
SPU: Drain transfer FIFO when cancelling transfer
...
The busy bit got stuck on otherwise, which broke the Spanish translation
of Vagrant Story.
2021-01-18 20:43:10 +10:00
Connor McLaughlin
699d599d00
GPU: Clear display when disabling DAC and interlaced
...
Fixes old output showing up briefly when it's re-enabled.
2021-01-18 03:28:14 +10:00
Connor McLaughlin
29690c4635
GPU/SW: Fix interlaced output getting corrupted when size changes
...
Fixes glitches in screen when tilting table in Pro Pinball.
2021-01-17 02:45:13 +10:00
Connor McLaughlin
e81df6bddd
Settings: Disable host refresh rate sync by default
2021-01-16 02:56:04 +10:00
Connor McLaughlin
02948f988d
CDROM: Return 0x00 on response FIFO overread
...
Fixes CyberSled hanging on boot.
2021-01-14 01:51:01 +10:00
Connor McLaughlin
ffa3744b3b
Settings: Add 20:9 display aspect ratio
2021-01-14 00:45:46 +10:00
Connor McLaughlin
d44de3a9dc
System: Use SetWaitableTimer() for throttling on Windows
2021-01-14 00:40:25 +10:00
Connor McLaughlin
93959a9d88
CPU: Fix crash with some block cycle counts on ARM
...
Fixes crash in Capcom vs SNK Pro.
2021-01-13 20:19:24 +10:00
Connor McLaughlin
2b5cfb272c
Qt: Add dump VRAM and SPU RAM actions
2021-01-13 19:24:41 +10:00
Connor McLaughlin
b5ffbfe826
Qt: Fix audio sliders not applying correctly
2021-01-13 02:37:04 +10:00
Connor McLaughlin
a0a24c7752
GPU/Vulkan: Only update sample texture when render area dirty
...
Fixes crash when using Show VRAM in some games with Vulkan.
2021-01-12 02:19:23 +10:00
Connor McLaughlin
13cba122ef
HostDisplay: Move Windows fallback for refresh rate query to HostInterface
2021-01-11 15:24:38 +10:00
Connor McLaughlin
fd166a4485
ShaderCache: Add a data version field
...
We can increment this to prevent people's shader caches from growing too
large with shader changes.
2021-01-11 15:24:38 +10:00
Connor McLaughlin
97971464d1
GPU/ShaderGen: Remove texcoord offset
...
Doesn't seem to be needed anymore, and causes issues in some games (e.g.
flickering polygons in Evil Dead)
2021-01-11 15:12:16 +10:00
Connor McLaughlin
43d01776dc
HostInterface: Add "Sync To Host Refresh Rate" option
2021-01-11 03:50:44 +10:00
Connor McLaughlin
bb572741ae
HostDisplay: Add GetHostRefreshRate() function
...
Only implemented in Windows for now.
2021-01-11 03:50:13 +10:00
Connor McLaughlin
ce965e89ca
Qt/Android: Add help text for resampling, turn on by default
2021-01-11 02:27:14 +10:00
Connor McLaughlin
54f5563321
Qt: Add turbo speed setting
2021-01-11 01:57:10 +10:00
Connor McLaughlin
a5f9aa11e1
Settings: Add audio resampling when running at non-standard speed
2021-01-11 01:14:32 +10:00
Connor McLaughlin
54c7fc6b08
AudioStream: Support resampling input
2021-01-11 01:14:32 +10:00
Connor McLaughlin
19032750b4
CDROM: Don't treat no-region discs as audio CDs
...
Fixes some homebrew games not booting.
2021-01-11 01:05:21 +10:00
Connor McLaughlin
11992bde4e
TimingEvents: Use function pointers instead of std::function
2021-01-10 01:45:07 +10:00
Connor McLaughlin
15652b4c1f
SPU: Fix a few cases where SPU interrupts weren't firing
2021-01-10 01:39:21 +10:00
Connor McLaughlin
df98a0b04e
CPU/Recompiler: Fix incorrect speculative byte/halfword reads
...
Fixes crash on boot in Monkey Magic.
2021-01-10 01:38:35 +10:00
Albert Liu
5ff3299384
Controller: Add method for reading analog input bytes
2021-01-07 15:04:23 -08:00
Connor McLaughlin
419726f4cc
Remove libretro core - core will now be maintained by libretro
...
libretro have agreed to take over maintenance of the core.
Please see their fork at https://github.com/libretro/duckstation if you
wish to continue to use it.
2021-01-08 01:37:59 +10:00
Connor McLaughlin
24c373245e
MemoryCard: Make formatting OSD message translatable
2021-01-07 12:15:57 +10:00
Connor McLaughlin
f832dca975
Bus: Don't force inline EXP1/EXP2 access
2021-01-06 01:02:30 +10:00
Connor McLaughlin
f3cdfe97a7
Bus/EXP2: Support openbios putc address
2021-01-06 00:56:35 +10:00
Connor McLaughlin
845cd37835
DMA: Determine slice size based on whether pad is transmitting
...
Plenty of games seem to suffer from this issue where they have
a linked list DMA going while polling the controller. Using a
too-large slice size will result in the serial timing being off,
and the game thinking the controller is disconnected. So we
don't hurt performance too much for the general case, we reduce
this to equal CPU and DMA time when the controller is
transferring, but otherwise leave it at the higher size.
2021-01-06 00:15:42 +10:00