diff --git a/src/engine/instrument.cpp b/src/engine/instrument.cpp index b04da0735..37bd99f57 100644 --- a/src/engine/instrument.cpp +++ b/src/engine/instrument.cpp @@ -3156,13 +3156,17 @@ bool DivInstrument::saveDMP(const char* path) { w->writeC(std.dutyMacro.len); for (int i=0; iwriteI(std.dutyMacro.val[i]+12); + w->writeI(std.dutyMacro.val[i]); } if (std.dutyMacro.len>0) w->writeC(std.dutyMacro.loop); w->writeC(std.waveMacro.len); for (int i=0; iwriteI(std.waveMacro.val[i]+12); + if (type==DIV_INS_AY) { + w->writeI(std.waveMacro.val[i]-1); + } else { + w->writeI(std.waveMacro.val[i]); + } } if (std.waveMacro.len>0) w->writeC(std.waveMacro.loop);