Connor McLaughlin
8c7a192128
Misc: Add copyright/license statement to applicable files
...
Should've did this in the beginning.
3 years ago
Connor McLaughlin
201a671709
System: Fix dumping audio on boot
3 years ago
Connor McLaughlin
5b2c18e27c
SPU: Convert to namespace
3 years ago
Connor McLaughlin
68b5dd869c
SPU: Add time stretched audio output
3 years ago
Connor McLaughlin
701780e2ef
Qt: Regression fixes
3 years ago
Connor McLaughlin
b42b5501f6
UI: Massive revamp, new features and improvements
3 years ago
Connor McLaughlin
b7fbde31a7
Move utility classes from common to own static lib
3 years ago
Connor McLaughlin
fd76f437b3
Core: Purge WITH_IMGUI define
4 years ago
Connor McLaughlin
c346dfe8a4
SPU: Drop OOB register warnings to dev level
4 years ago
Connor McLaughlin
8769a55298
SPU: Add a couple more reverb registers to debug window
4 years ago
Connor McLaughlin
4fac032ff6
SPU: Add a macro to enable per-voice dumping
4 years ago
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.
5 years ago
Connor McLaughlin
e01d66d18e
System: Implement runahead
5 years ago
Connor McLaughlin
4e802e90ca
SPU: Move voice key off/on outside sample loop
...
Should be a very tiny performance boost with no difference in behaviour.
5 years ago
Connor McLaughlin
3c012ec6ef
SPU: Consider partial ticks when generating pending samples
...
Fixes hitches in opening FMV in Soul Blade (Europe).
5 years ago
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.
5 years ago
Connor McLaughlin
11992bde4e
TimingEvents: Use function pointers instead of std::function
5 years ago
Connor McLaughlin
15652b4c1f
SPU: Fix a few cases where SPU interrupts weren't firing
5 years ago
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.
5 years ago
Connor McLaughlin
a90c25d0e7
SPU: Ignore manually set loop address only on first block
...
Fixes occasional missing dialogue in Valkyrie Profile.
5 years ago
Connor McLaughlin
917fa5dd0e
SPU: Only ignore loop address for not-pending-on voices
...
Fixes softlocks during dialog in The Misadventures of Tron Bonne.
5 years ago
Connor McLaughlin
65be904d15
SPU: Only log warning about FIFO lost on writes
5 years ago
Connor McLaughlin
3f937a2a39
SPU: Port reverb algorithm changes from Mednafen
5 years ago
Connor McLaughlin
34a808c258
SPU: Zero previous block ADPCM samples on key on
...
Fixes clicking in background in Breath of Fire III.
5 years ago
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.
5 years ago
Connor McLaughlin
98987643b3
SPU: Always reset address on loop end regardless of repeat
...
Fixes menu music in Madden NFL 99.
5 years ago
Connor McLaughlin
325f83065c
SPU: Always inline SPU::ExecuteVoice
5 years ago
Connor McLaughlin
245edd94d7
SPU: Eliminiate conditional in interpolation
5 years ago
Connor McLaughlin
6a4a47fbdf
SPU: Set block counter to zero on key on
...
Fixes clicking in Final Fantasy VIII intro FMV.
5 years ago
Connor McLaughlin
27697d0508
System: Implement CPU overclocking [SAVEVERSION+]
...
Partial credit to @CookiePLMonster as well.
5 years ago
Connor McLaughlin
13e3095801
Core: Don't link to imgui for libretro core
5 years ago
Connor McLaughlin
223074b78f
SPU: Fix activating transfer event with a downcount of 0
...
Happened when loading states.
5 years ago
Connor McLaughlin
b6f871d2b9
JIT optimizations and refactoring ( #675 )
...
* CPU/Recompiler: Use rel32 call where possible for no-args
* JitCodeBuffer: Support using preallocated buffer
* CPU/Recompiler/AArch64: Use bl instead of blr for short branches
* CPU/CodeCache: Allocate recompiler buffer in program space
This means we don't need 64-bit moves for every call out of the
recompiler.
* GTE: Don't store as u16 and load as u32
* CPU/Recompiler: Add methods to emit global load/stores
* GTE: Convert class to namespace
* CPU/Recompiler: Call GTE functions directly
* Settings: Turn into a global variable
* GPU: Replace local pointers with global
* InterruptController: Turn into a global pointer
* System: Replace local pointers with global
* Timers: Turn into a global instance
* DMA: Turn into a global instance
* SPU: Turn into a global instance
* CDROM: Turn into a global instance
* MDEC: Turn into a global instance
* Pad: Turn into a global instance
* SIO: Turn into a global instance
* CDROM: Move audio FIFO to the heap
* CPU/Recompiler: Drop ASMFunctions
No longer needed since we have code in the same 4GB window.
* CPUCodeCache: Turn class into namespace
* Bus: Local pointer -> global pointers
* CPU: Turn class into namespace
* Bus: Turn into namespace
* GTE: Store registers in CPU state struct
Allows relative addressing on ARM.
* CPU/Recompiler: Align code storage to page size
* CPU/Recompiler: Fix relative branches on A64
* HostInterface: Local references to global
* System: Turn into a namespace, move events out
* Add guard pages
* Android: Fix build
5 years ago
Connor McLaughlin
f28ef01d24
CDROM: Move audio FIFO to CDROM class and skip sectors when unempty
...
Fixes cutscene audio in Nickelodeon Rugrats - Search for Reptar.
5 years ago
Connor McLaughlin
a5fe740e30
Fix a bunch of compiler warnings
5 years ago
Connor McLaughlin
614ea632a5
SPU: Log warning when data is lost due to reg clear
5 years ago
Connor McLaughlin
531c3ad5fa
AudioStream: Replace buffer queue with ring buffer
...
Should achieve a decent overall minimum latency reduction.
6 years ago
Connor McLaughlin
8eb3ac69b2
SPU: Update ADSR envelope when register changes
...
Fixes menu sounds in Final Fantasy 7 staying audible for too long.
6 years ago
Connor McLaughlin
1eecd50f3d
SPU: Run SPU when changing regs on voice pending key-on
...
Fixes menu/cursor sounds with different frequencies in Final Fantasy 7.
6 years ago
Connor McLaughlin
03080351c8
SPU: Reset ADPCM decoder last samples on key on
6 years ago
Connor McLaughlin
d461d7c87a
SPU: Fix reverb write regression from e07d3c9d
6 years ago
Connor McLaughlin
e07d3c9db2
SPU: Fix array bounds overflow in register reads
6 years ago
Connor McLaughlin
634880b5e3
SPU: Clamp before applying main volume not after
...
Fixes popping in Monkey Magic.
6 years ago
Connor McLaughlin
9959440a3a
SPU: Align starting addresses to two words
...
Fixes interrupts firing early and occasional broken speech in Valkyrie
Profile.
6 years ago
Connor McLaughlin
226459b60f
SPU: Add missing register read for ENDX
6 years ago
Connor McLaughlin
a5ff904b33
SPU: Clear ENDX flag on key on
6 years ago
Connor McLaughlin
be9033b6c0
SPU: Add missing clamp in ADPCM decoder
6 years ago
Connor McLaughlin
b16ecd7a86
SPU: ENDX register should get set when looping as well as muting
6 years ago
Connor McLaughlin
8605620c24
SPU: Force all voices off when SPUCNT.15=0
6 years ago
Connor McLaughlin
191c3450cc
SPU: Port reverb algorithm from Mednafen-PSX
6 years ago