aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornotaz2013-01-02 00:33:53 +0200
committernotaz2013-01-03 01:06:43 +0200
commit1d753163fcfe8f75fad07c413ebbdb8cfe448f8b (patch)
tree538880dd477cce2af819d66baf7938dec20800f4
parent77160d47414eb2c6cb59be1ee1c2d95e2f39866e (diff)
downloadpcsx_rearmed-1d753163fcfe8f75fad07c413ebbdb8cfe448f8b.tar.gz
pcsx_rearmed-1d753163fcfe8f75fad07c413ebbdb8cfe448f8b.tar.bz2
pcsx_rearmed-1d753163fcfe8f75fad07c413ebbdb8cfe448f8b.zip
spu: fix decode buffers
sync is still broken :(
-rw-r--r--plugins/dfsound/xa.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/plugins/dfsound/xa.c b/plugins/dfsound/xa.c
index 1c5425e..e58bca2 100644
--- a/plugins/dfsound/xa.c
+++ b/plugins/dfsound/xa.c
@@ -78,8 +78,9 @@ INLINE void MixXA(void)
r = ((int)(short)(v >> 16) * iLeftXAVol) >> 15;
SSumLR[ns++] += l;
SSumLR[ns++] += r;
- spuMem[cursor] = l;
- spuMem[cursor + 0x400/2] = r;
+
+ spuMem[cursor] = v;
+ spuMem[cursor + 0x400/2] = v >> 16;
cursor = (cursor + 1) & 0x1ff;
}
XALastVal = v;
@@ -94,8 +95,9 @@ INLINE void MixXA(void)
r = ((int)(short)(v >> 16) * iLeftXAVol) >> 15;
SSumLR[ns++] += l;
SSumLR[ns++] += r;
- spuMem[cursor] = l;
- spuMem[cursor + 0x400/2] = r;
+
+ spuMem[cursor] = v;
+ spuMem[cursor + 0x400/2] = v >> 16;
cursor = (cursor + 1) & 0x1ff;
}
}