spu: fix wrong volume shift
authornotaz <notasas@gmail.com>
Sat, 10 Sep 2022 13:46:05 +0000 (16:46 +0300)
committernotaz <notasas@gmail.com>
Sat, 10 Sep 2022 18:42:25 +0000 (21:42 +0300)
libretro/pcsx_rearmed#685

plugins/dfsound/spu.c

index e951b49..3b4c051 100644 (file)
@@ -1193,13 +1193,13 @@ static void do_samples_finish(int *SSumLR, int ns_to,
   for (ns = 0; ns < ns_to * 2; )
    {
     d = SSumLR[ns]; SSumLR[ns] = 0;
-    d = d * vol_l >> 15;
+    d = d * vol_l >> 14;
     ssat32_to_16(d);
     *spu.pS++ = d;
     ns++;
 
     d = SSumLR[ns]; SSumLR[ns] = 0;
-    d = d * vol_r >> 15;
+    d = d * vol_r >> 14;
     ssat32_to_16(d);
     *spu.pS++ = d;
     ns++;