From f75803c3b2ceb2f259d2f2f4cc0682600ee9604a Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 1 Feb 2022 03:16:03 -0500 Subject: [PATCH] C64: fix filter reset not working well --- src/engine/platform/c64.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/engine/platform/c64.cpp b/src/engine/platform/c64.cpp index 679cb269b..5b5ebc4ba 100644 --- a/src/engine/platform/c64.cpp +++ b/src/engine/platform/c64.cpp @@ -249,8 +249,10 @@ int DivPlatformC64::dispatch(DivCommand c) { case DIV_CMD_C64_FILTER_RESET: if (c.value&15) { DivInstrument* ins=parent->getIns(chan[c.chan].ins); - filtCut=ins->c64.cut; - updateFilter(); + if (ins->c64.initFilter) { + filtCut=ins->c64.cut; + updateFilter(); + } } chan[c.chan].resetFilter=c.value>>4; break; @@ -342,7 +344,7 @@ void DivPlatformC64::reset() { filtControl=0; filtRes=0; - filtCut=0; + filtCut=2047; resetTime=1; vol=15; }