From 0da42f18a6d503d1ec8d2b3b3cf499dfb0f94ffe Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 5 Sep 2025 13:26:52 -0500 Subject: [PATCH] T6W28: fix noise reset on all duty macro steps issue #2665 --- src/engine/platform/t6w28.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/engine/platform/t6w28.cpp b/src/engine/platform/t6w28.cpp index c54ab9c9d..6ea2accc4 100644 --- a/src/engine/platform/t6w28.cpp +++ b/src/engine/platform/t6w28.cpp @@ -129,7 +129,7 @@ void DivPlatformT6W28::tick(bool sysTick) { chan[i].freqChanged=true; } if (i==3 && chan[i].std.duty.had) { - if (chan[i].duty!=chan[i].std.duty.val) { + if (chan[i].duty!=(((chan[i].std.duty.val==1)?4:0)|3)) { chan[i].duty=((chan[i].std.duty.val==1)?4:0)|3; rWrite(1,0xe0+chan[i].duty); }