ref: bf43cbd3c958fff8abc63c1a12afe878c2b06299
parent: 6057aff755d8ad6ef6a0b624053a44eceeff4aab
author: allkern <lisandroaalarcon@gmail.com>
date: Sat Sep 30 21:05:45 EDT 2023
Fix ADPCM filter mask
--- a/psx/dev/spu.c
+++ b/psx/dev/spu.c
@@ -123,7 +123,7 @@
spu->data[v].block_flags = spu->ram[addr + 1];
unsigned shift = 12 - (hdr & 0x0f);
- unsigned filter = (hdr & 0x30) >> 4;
+ unsigned filter = (hdr >> 4) & 7;
int32_t f0 = g_spu_pos_adpcm_table[filter];
int32_t f1 = g_spu_neg_adpcm_table[filter];
--
⑨