1eecd50f3d
SPU: Run SPU when changing regs on voice pending key-on
...
Fixes menu/cursor sounds with different frequencies in Final Fantasy 7.
2020-05-18 00:59:13 +10:00
03080351c8
SPU: Reset ADPCM decoder last samples on key on
2020-05-18 00:50:55 +10:00
d461d7c87a
SPU: Fix reverb write regression from e07d3c9d
2020-05-13 13:47:33 +10:00
e07d3c9db2
SPU: Fix array bounds overflow in register reads
2020-05-13 12:37:13 +10:00
634880b5e3
SPU: Clamp before applying main volume not after
...
Fixes popping in Monkey Magic.
2020-05-12 02:15:18 +10:00
9959440a3a
SPU: Align starting addresses to two words
...
Fixes interrupts firing early and occasional broken speech in Valkyrie
Profile.
2020-05-08 21:36:47 +10:00
226459b60f
SPU: Add missing register read for ENDX
2020-04-30 01:12:17 +10:00
a5ff904b33
SPU: Clear ENDX flag on key on
2020-04-28 20:30:16 +10:00
be9033b6c0
SPU: Add missing clamp in ADPCM decoder
2020-04-28 17:55:43 +10:00
b16ecd7a86
SPU: ENDX register should get set when looping as well as muting
2020-04-28 16:57:14 +10:00
8605620c24
SPU: Force all voices off when SPUCNT.15=0
2020-04-27 23:33:24 +10:00
191c3450cc
SPU: Port reverb algorithm from Mednafen-PSX
2020-04-25 00:37:02 +10:00
e34b78ab80
SPU: Fix pitch modulation
2020-04-24 15:50:35 +10:00
045c4d1745
SPU: Fix adsr_volume read for pending key-on voice
...
Fixes cutscene audio in Spyro 2, probably others.
2020-04-19 18:19:55 +10:00
fc3efebb38
Revert "SPU: Use reverb formula from Mednafen-PSX"
...
This reverts commit 809b9f89ca .
2020-04-11 15:04:04 +10:00
809b9f89ca
SPU: Use reverb formula from Mednafen-PSX
2020-04-11 00:40:28 +10:00
0006052728
SPU: Fix some registers not being saved to state
2020-04-08 20:33:39 +10:00
1d948a53e0
SPU: Reinitialize transfer event on loading state
2020-04-02 00:17:15 +10:00
423f04325f
SPU: Implement timing for RAM reads/writes
2020-03-29 01:12:37 +10:00
f23bcc0faa
SPU: Ignore loop start flag when repeat address is explicitly set
...
Fixes dialog/softlock in Thousand Arms.
2020-03-27 01:42:59 +10:00
08ad5aad53
SPU: Run muted voices when IRQ is enabled
...
Fixes SPU timeout in Casper. We can still optimize for most games where
interrupts are not used by completely ignoring muted voices in those.
2020-03-27 01:42:43 +10:00
18cc3d5932
SPU: Stub out external volume registers
...
If nothing else, it'll avoid spamming the log.
2020-03-24 00:22:02 +10:00
7317c83a3c
SPU: Implement internal volume sweep register reads
...
Fixes muted audio in Michelin Rally Masters.
2020-03-24 00:21:52 +10:00
4c2597acf3
SPU: Process key on/off at next 44100hz cycle
...
Some games, particularly CART World Series and Monkey Hero, depend on
this behaviour.
2020-03-24 00:21:32 +10:00
7ac48cd8d6
SPU: Swap read/write ready bits
...
Nocash might be incorrect here.
2020-03-23 00:29:18 +10:00
7a89c787b8
SPU: Fix some reverb registers not being saved to state
2020-03-23 00:29:10 +10:00
d47a82d591
SPU: Implement noise functionality
2020-03-23 00:29:00 +10:00
0a6295a9b4
SPU: Implement volume sweep functionality
2020-03-23 00:28:51 +10:00
b86e0bc846
SPU: Implement reverb
...
Possibly still not complete.
2020-03-17 12:48:03 +10:00
8e20d0d4ff
SPU: Add audio dumping support
2020-03-15 22:04:17 +10:00
6a6aa72f3a
SPU: Add a tick counter and delay between key on/off writes
...
Not yet tested on hardware. We believe that writing to a specific
voice's key on/off register within 2 samples/ticks of the first
write will result in the second write being ignored. This still
needs to be tested on hardware for confirmation.
Thanks to @PSI-Rockin for the idea.
Fixes sound effects in Monkey Hero.
2020-03-14 15:33:24 +10:00
d42f155512
SPU: Use "ticks" instead of "sample" in variable names
2020-03-14 15:23:23 +10:00
90d6babfb0
SPU: Always run, not only when enabled
2020-03-14 15:01:23 +10:00
34ae0dae13
CDROM: Fix upper bound for XA audio frames and sync SPU
2020-03-07 17:29:41 +10:00
82eb14efb1
Core: Apply DPI scaling to debug windows
2020-02-28 16:59:51 +10:00
278aa86d14
SPU: Refactor ADSR/implement exponential mode
2020-02-11 23:10:00 +09:00
1b9609ef61
Implement event-based scheduler instead of lock-step components
2020-01-24 16:23:39 +10:00
71c1e243fe
Remove YBaseLib dependency
2020-01-10 13:40:53 +10:00
5bb2b3ec63
Frontend: Add audio backend to settings (switch-while-running)
2019-12-27 20:38:07 +10:00
f11d357ab9
Compile fixes for Android
2019-11-28 01:55:33 +10:00
2399c1dab7
SPU: Fix incorrect step value in attack phase
2019-11-16 01:43:34 +10:00
e02ebb1b2a
SPU: Mute voice without release phase on loop/end flag
...
Fixes channels getting stuck in Syphon Filter.
2019-11-15 17:24:11 +10:00
5b5d22fd27
SPU: Stub out transfer control register
...
Fixes sound in Ridge Racer.
2019-11-15 16:44:23 +10:00
d9c27c4ee3
SPU: Fix sustain step being ignored
2019-11-15 16:42:25 +10:00
85413218cb
SPU: Check upper 8 byte block of ADPCM block for interrupt
...
Fixes NFS2 stuck after selecting Race.
2019-11-12 18:56:55 +10:00
6f4cf7d5e3
System: Support changing BIOS path
2019-11-11 19:43:39 +10:00
99c264947d
SPU: Implement capture buffers
...
Fixes Crash Team Racing and lipsyncing within.
2019-11-11 14:06:30 +10:00
26437e31dd
SPU: Fire interrupt on DMA reads/writes too
2019-11-11 14:05:58 +10:00
8722757412
SPU: Implement pitch modulation
2019-11-11 00:41:09 +10:00
9f5bd6e5f9
SPU: Correct sample rate display in debugger
2019-10-29 22:54:16 +10:00