T6W28: actually fix the phase reset issue

issue #2665
This commit is contained in:
tildearrow 2025-09-07 04:34:59 -05:00
parent d0c4fb0b42
commit 3a66e0ceee

View file

@ -153,7 +153,9 @@ void DivPlatformT6W28::tick(bool sysTick) {
chan[i].freqChanged=true; chan[i].freqChanged=true;
} }
if (chan[i].std.phaseReset.had) { if (chan[i].std.phaseReset.had) {
rWrite(1,0xe0+chan[i].duty); if (chan[i].std.phaseReset.val==1) {
rWrite(1,0xe0+chan[i].duty);
}
} }
if (chan[i].freqChanged || chan[i].keyOn || chan[i].keyOff) { if (chan[i].freqChanged || chan[i].keyOn || chan[i].keyOff) {
chan[i].freq=snCalcFreq(i); chan[i].freq=snCalcFreq(i);