From 89d47da79529a0159b5d094e1c798aae57b9ac25 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 8 Feb 2022 15:32:10 -0500 Subject: [PATCH] prepare to add more compatibility flags --- src/engine/song.h | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/engine/song.h b/src/engine/song.h index ab8c7daf9..1a467a196 100644 --- a/src/engine/song.h +++ b/src/engine/song.h @@ -210,8 +210,8 @@ struct DivSong { float tuning; // compatibility flags - bool limitSlides; // limit slide range - bool linearPitch; // E5xx behavior control + bool limitSlides; + bool linearPitch; // loop behavior // 0: reset on loop // 1: fake reset on loop @@ -219,6 +219,11 @@ struct DivSong { unsigned char loopModality; bool properNoiseLayout; bool waveDutyIsVol; + bool resetMacroOnPorta; + bool legacyVolumeSlides; + bool compatibleArpeggio; + bool noteOffResetsSlides; + bool targetResetsSlides; DivOrders orders; std::vector ins; @@ -269,7 +274,12 @@ struct DivSong { linearPitch(true), loopModality(0), properNoiseLayout(false), - waveDutyIsVol(false) { + waveDutyIsVol(false), + resetMacroOnPorta(false), + legacyVolumeSlides(false), + compatibleArpeggio(false), + noteOffResetsSlides(true), + targetResetsSlides(true) { for (int i=0; i<32; i++) { system[i]=DIV_SYSTEM_NULL; systemVol[i]=64;