Stenzek
536b48d706
SPU: Pack state in struct
2024-07-06 19:18:25 +10:00
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
4e922a34a7
Log: Simplify macros
2024-05-24 02:08:14 +10:00
Stenzek
14ba3b7312
System: Fix sync to host refresh audio stretching
2024-05-22 22:32:51 +10:00
Stenzek
864b0ad5fe
Qt: Save audio output latency value separately to minimal flag
2024-05-12 17:36:15 +10:00
Stenzek
4139bf63d8
AudioStream: Backport changes
2024-04-25 01:13:51 +10:00
Stenzek
b26a9556f7
System: Improve reset determinism
2024-04-22 00:19:44 +10:00
Stenzek
0fbc1a3a8a
AudioStream: Add surround expansion via FreeSurround
2024-04-21 23:30:46 +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
a4a58c6ba2
SPU: Implement volume sweep phase inversion
2024-03-20 21:55:55 +10:00
Stenzek
fa6850902a
CPU: Make interrupts actually edge-triggered
2024-03-18 01:46:19 +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
79c226efff
SmallString: fmt -> format, format -> sprintf
2023-12-13 21:06:15 +10:00
Stenzek
cce7be4723
Misc: Make struct member functions file-local
2023-11-18 16:46:11 +10:00
Stenzek
01e505ec8b
Common: Add intrin.h
2023-10-01 17:24:34 +10:00
Stenzek
2efda31694
Misc: More enum cast warning fixes
2023-09-05 22:10:50 +10:00
Stenzek
e23c9875d5
Misc: Split core and util Host
2023-08-30 00:44:00 +10:00
Stenzek
991f7312b2
SPU: Fix building with SPU_DUMP_ALL_VOICES
2023-04-23 13:19:43 +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
0683b9fa0e
InterruptController: 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
dd73811628
CDROM: Convert to namespace
2023-01-09 22:20:27 +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
201a671709
System: Fix dumping audio on boot
2022-11-21 12:55:24 +10:00
Connor McLaughlin
5b2c18e27c
SPU: Convert to namespace
2022-08-15 17:22:23 +10:00
Connor McLaughlin
68b5dd869c
SPU: Add time stretched audio output
2022-07-28 22:10:47 +10:00
Connor McLaughlin
701780e2ef
Qt: Regression fixes
2022-07-22 22:53:06 +10:00
Connor McLaughlin
b42b5501f6
UI: Massive revamp, new features and improvements
2022-07-22 21:19:54 +10:00
Connor McLaughlin
b7fbde31a7
Move utility classes from common to own static lib
2022-07-21 17:29:58 +10:00
Connor McLaughlin
fd76f437b3
Core: Purge WITH_IMGUI define
2022-03-27 16:59:02 +10:00
Connor McLaughlin
c346dfe8a4
SPU: Drop OOB register warnings to dev level
2021-11-26 11:31:59 +10:00
Connor McLaughlin
8769a55298
SPU: Add a couple more reverb registers to debug window
2021-09-01 15:05:05 +10:00
Connor McLaughlin
4fac032ff6
SPU: Add a macro to enable per-voice dumping
2021-08-07 13:21:53 +10:00
Connor McLaughlin
c6c67b7b27
ImGui: Remove close button from debug windows
...
They can be closed by unchecking the setting instead, and it stays in
sync with the config this way.
2021-02-12 01:01:30 +10:00
Connor McLaughlin
e01d66d18e
System: Implement runahead
2021-01-25 01:15:46 +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
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
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
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
73f6521452
SPU: Check voice addresses on IRQ re-enable
...
NASCAR 2001 music depends on the IRQ firing multiple times, when the
voice address is still set to the IRQ address.
2021-01-05 00:46:41 +10:00
Connor McLaughlin
a90c25d0e7
SPU: Ignore manually set loop address only on first block
...
Fixes occasional missing dialogue in Valkyrie Profile.
2020-12-06 00:35:54 +10:00
Connor McLaughlin
917fa5dd0e
SPU: Only ignore loop address for not-pending-on voices
...
Fixes softlocks during dialog in The Misadventures of Tron Bonne.
2020-11-25 22:45:03 +10:00
Connor McLaughlin
65be904d15
SPU: Only log warning about FIFO lost on writes
2020-11-14 23:20:28 +10:00
Connor McLaughlin
3f937a2a39
SPU: Port reverb algorithm changes from Mednafen
2020-11-14 23:20:28 +10:00
Connor McLaughlin
34a808c258
SPU: Zero previous block ADPCM samples on key on
...
Fixes clicking in background in Breath of Fire III.
2020-10-29 01:30:40 +10:00
Connor McLaughlin
1b618b8c46
SPU: Don't block ADPCM loop flag when setting/keying on in same slice
...
Fixes repeated sounds in Re-Loaded: The Hardcore Sequel.
2020-10-24 20:27:06 +10:00
Connor McLaughlin
98987643b3
SPU: Always reset address on loop end regardless of repeat
...
Fixes menu music in Madden NFL 99.
2020-10-24 19:42:23 +10:00
Connor McLaughlin
325f83065c
SPU: Always inline SPU::ExecuteVoice
2020-10-18 14:54:38 +10:00
Connor McLaughlin
245edd94d7
SPU: Eliminiate conditional in interpolation
2020-10-18 14:54:38 +10:00