git: 9front

Download patch

ref: 85e593d4dd9252c29afd82d0925e578af51877da
parent: c91327661e61f4b162dce20c6dc8374f56d46529
author: Michael Forney <mforney@mforney.org>
date: Wed Feb 17 06:19:39 EST 2021

games/snes: fix BRR decoding with filters 2 and 3

s1 and s2 should store the last and next to last output, but were set
in the wrong order, causing them both to be the last output. This
breaks filters 2 and 3, which both utilize s2.

--- a/sys/src/games/snes/dsp.c
+++ b/sys/src/games/snes/dsp.c
@@ -275,8 +275,8 @@
 		d = (s16int)(clamp16(d) << 1);
 		p->buf[p->bp] = d;
 		p->buf[p->bp++ + 12] = d;
-		s1 = d;
 		s2 = s1;
+		s1 = d;
 		brr <<= 4;
 	}
 	if(p->bp == 12)
--