the first step to deprecating Defle compat
Furnace will support .dmf loading/saving however in a far future, compatibility may not be guaranteed... I am not sure this setting is off by default (for now)
This commit is contained in:
parent
9d567d8cca
commit
1aef0079d1
|
@ -142,6 +142,7 @@ bool DivEngine::loadDMF(unsigned char* file, size_t len) {
|
|||
}
|
||||
|
||||
// compatibility flags
|
||||
if (!getConfInt("noDMFCompat",0)) {
|
||||
ds.limitSlides=true;
|
||||
ds.linearPitch=1;
|
||||
ds.loopModality=0;
|
||||
|
@ -213,6 +214,7 @@ bool DivEngine::loadDMF(unsigned char* file, size_t len) {
|
|||
if (ds.system[0]==DIV_SYSTEM_GB) {
|
||||
ds.systemFlags[0].set("enoughAlready",true);
|
||||
}
|
||||
}
|
||||
|
||||
logI("reading module data...");
|
||||
if (ds.version>0x0c) {
|
||||
|
|
|
@ -1523,6 +1523,7 @@ class FurnaceGUI {
|
|||
int newSongBehavior;
|
||||
int memUsageUnit;
|
||||
int cursorFollowsWheel;
|
||||
int noDMFCompat;
|
||||
unsigned int maxUndoSteps;
|
||||
String mainFontPath;
|
||||
String patFontPath;
|
||||
|
@ -1677,6 +1678,7 @@ class FurnaceGUI {
|
|||
newSongBehavior(0),
|
||||
memUsageUnit(1),
|
||||
cursorFollowsWheel(0),
|
||||
noDMFCompat(0),
|
||||
maxUndoSteps(100),
|
||||
mainFontPath(""),
|
||||
patFontPath(""),
|
||||
|
|
|
@ -676,6 +676,14 @@ void FurnaceGUI::drawSettings() {
|
|||
settings.blankIns=blankInsB;
|
||||
}
|
||||
|
||||
bool noDMFCompatB=settings.noDMFCompat;
|
||||
if (ImGui::Checkbox("Don't apply compatibility flags when loading .dmf",&noDMFCompatB)) {
|
||||
settings.noDMFCompat=noDMFCompatB;
|
||||
}
|
||||
if (ImGui::IsItemHovered()) {
|
||||
ImGui::SetTooltip("do not report any issues arising from the use of this option!");
|
||||
}
|
||||
|
||||
bool saveUnusedPatternsB=settings.saveUnusedPatterns;
|
||||
if (ImGui::Checkbox("Save unused patterns",&saveUnusedPatternsB)) {
|
||||
settings.saveUnusedPatterns=saveUnusedPatternsB;
|
||||
|
@ -2821,6 +2829,7 @@ void FurnaceGUI::syncSettings() {
|
|||
settings.newSongBehavior=e->getConfInt("newSongBehavior",0);
|
||||
settings.memUsageUnit=e->getConfInt("memUsageUnit",1);
|
||||
settings.cursorFollowsWheel=e->getConfInt("cursorFollowsWheel",0);
|
||||
settings.noDMFCompat=e->getConfInt("noDMFCompat",0);
|
||||
|
||||
clampSetting(settings.mainFontSize,2,96);
|
||||
clampSetting(settings.patFontSize,2,96);
|
||||
|
@ -2950,6 +2959,7 @@ void FurnaceGUI::syncSettings() {
|
|||
clampSetting(settings.newSongBehavior,0,1);
|
||||
clampSetting(settings.memUsageUnit,0,1);
|
||||
clampSetting(settings.cursorFollowsWheel,0,1);
|
||||
clampSetting(settings.noDMFCompat,0,1);
|
||||
|
||||
if (settings.exportLoops<0.0) settings.exportLoops=0.0;
|
||||
if (settings.exportFadeOut<0.0) settings.exportFadeOut=0.0;
|
||||
|
@ -3175,6 +3185,7 @@ void FurnaceGUI::commitSettings() {
|
|||
e->setConf("newSongBehavior",settings.newSongBehavior);
|
||||
e->setConf("memUsageUnit",settings.memUsageUnit);
|
||||
e->setConf("cursorFollowsWheel",settings.cursorFollowsWheel);
|
||||
e->setConf("noDMFCompat",settings.noDMFCompat);
|
||||
|
||||
// colors
|
||||
for (int i=0; i<GUI_COLOR_MAX; i++) {
|
||||
|
|
Loading…
Reference in New Issue