diff --git a/src/engine/playback.cpp b/src/engine/playback.cpp index d672c2d47..329c5b54d 100644 --- a/src/engine/playback.cpp +++ b/src/engine/playback.cpp @@ -334,6 +334,11 @@ void DivEngine::processRow(int i, bool afterDelay) { if (chan[i].lastIns!=pat->data[whatRow][2]) { chan[i].lastIns=pat->data[whatRow][2]; insChanged=true; + if (song.legacyVolumeSlides && chan[i].volume==chan[i].volMax+1) { + logV("forcing volume"); + chan[i].volume=chan[i].volMax; + dispatchCmd(DivCommand(DIV_CMD_VOLUME,i,chan[i].volume>>8)); + } } } // note