From 35b4b0b6e94a0f175b9be07bcc6486b0618e891b Mon Sep 17 00:00:00 2001 From: Lunar Journal Date: Sun, 28 Jul 2024 21:00:38 +0200 Subject: FIR update --- src/emu8910.ts | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/emu8910.ts b/src/emu8910.ts index fc39745..aabfcbe 100644 --- a/src/emu8910.ts +++ b/src/emu8910.ts @@ -209,17 +209,20 @@ class FirFilter { this.offset = length - (index * m); let sub = buffer.slice(this.offset); - this.index = (index + 1) % (length / m - 1); - for( i = m -1; i >=0; i--){ - buffer[this.offset + i] = samples[i]; + + for( i = 0; i < m; i++){ + buffer[this.offset + i - 1] = samples[i]; } + for( i = 0; i < h.length; i++){ y += h[i] * (sub[i] + sub[h.length - i - 1]); } + for( i = 0; i < m; i++){ buffer[this.offset + length - m + i] = buffer[this.offset + i]; } - + + this.index = (index + 1) % (length / m - 1); return y; -- cgit v1.2.3-70-g09d2