Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt

This commit is contained in:
cam900 2023-02-06 08:56:14 +09:00
commit 03e0c8d8ee
30 changed files with 673 additions and 142 deletions

View file

@ -472,6 +472,8 @@ bool FurnaceGUI::drawSysConf(int chan, DivSystem type, DivConfig& flags, bool mo
int clockSel=flags.getInt("clockSel",0);
bool noExtMacros=flags.getBool("noExtMacros",false);
bool fbAllOps=flags.getBool("fbAllOps",false);
int ssgVol=flags.getInt("ssgVol",128);
int fmVol=flags.getInt("fmVol",256);
if (ImGui::RadioButton("8MHz (Neo Geo MVS)",clockSel==0)) {
clockSel=0;
@ -491,11 +493,25 @@ bool FurnaceGUI::drawSysConf(int chan, DivSystem type, DivConfig& flags, bool mo
}
}
if (CWSliderInt("SSG Volume",&ssgVol,0,256)) {
if (ssgVol<0) ssgVol=0;
if (ssgVol>256) ssgVol=256;
altered=true;
} rightClickable
if (CWSliderInt("FM/ADPCM Volume",&fmVol,0,256)) {
if (fmVol<0) fmVol=0;
if (fmVol>256) fmVol=256;
altered=true;
} rightClickable
if (altered) {
e->lockSave([&]() {
flags.set("clockSel",clockSel);
flags.set("noExtMacros",noExtMacros);
flags.set("fbAllOps",fbAllOps);
flags.set("ssgVol",ssgVol);
flags.set("fmVol",fmVol);
});
}
break;
@ -870,6 +886,8 @@ bool FurnaceGUI::drawSysConf(int chan, DivSystem type, DivConfig& flags, bool mo
int prescale=flags.getInt("prescale",0);
bool noExtMacros=flags.getBool("noExtMacros",false);
bool fbAllOps=flags.getBool("fbAllOps",false);
int ssgVol=flags.getInt("ssgVol",128);
int fmVol=flags.getInt("fmVol",256);
ImGui::Text("Clock rate:");
if (ImGui::RadioButton("3.58MHz (NTSC)",clockSel==0)) {
@ -910,6 +928,18 @@ bool FurnaceGUI::drawSysConf(int chan, DivSystem type, DivConfig& flags, bool mo
altered=true;
}
if (CWSliderInt("SSG Volume",&ssgVol,0,256)) {
if (ssgVol<0) ssgVol=0;
if (ssgVol>256) ssgVol=256;
altered=true;
} rightClickable
if (CWSliderInt("FM Volume",&fmVol,0,256)) {
if (fmVol<0) fmVol=0;
if (fmVol>256) fmVol=256;
altered=true;
} rightClickable
if (type==DIV_SYSTEM_YM2203_EXT || type==DIV_SYSTEM_YM2203_CSM) {
if (ImGui::Checkbox("Disable ExtCh FM macros (compatibility)",&noExtMacros)) {
altered=true;
@ -925,6 +955,8 @@ bool FurnaceGUI::drawSysConf(int chan, DivSystem type, DivConfig& flags, bool mo
flags.set("prescale",prescale);
flags.set("noExtMacros",noExtMacros);
flags.set("fbAllOps",fbAllOps);
flags.set("ssgVol",ssgVol);
flags.set("fmVol",fmVol);
});
}
break;
@ -936,6 +968,8 @@ bool FurnaceGUI::drawSysConf(int chan, DivSystem type, DivConfig& flags, bool mo
int prescale=flags.getInt("prescale",0);
bool noExtMacros=flags.getBool("noExtMacros",false);
bool fbAllOps=flags.getBool("fbAllOps",false);
int ssgVol=flags.getInt("ssgVol",128);
int fmVol=flags.getInt("fmVol",256);
ImGui::Text("Clock rate:");
if (ImGui::RadioButton("8MHz (Arcade)",clockSel==0)) {
@ -960,6 +994,18 @@ bool FurnaceGUI::drawSysConf(int chan, DivSystem type, DivConfig& flags, bool mo
altered=true;
}
if (CWSliderInt("SSG Volume",&ssgVol,0,256)) {
if (ssgVol<0) ssgVol=0;
if (ssgVol>256) ssgVol=256;
altered=true;
} rightClickable
if (CWSliderInt("FM/ADPCM Volume",&fmVol,0,256)) {
if (fmVol<0) fmVol=0;
if (fmVol>256) fmVol=256;
altered=true;
} rightClickable
if (type==DIV_SYSTEM_YM2608_EXT || type==DIV_SYSTEM_YM2608_CSM) {
if (ImGui::Checkbox("Disable ExtCh FM macros (compatibility)",&noExtMacros)) {
altered=true;
@ -975,6 +1021,8 @@ bool FurnaceGUI::drawSysConf(int chan, DivSystem type, DivConfig& flags, bool mo
flags.set("prescale",prescale);
flags.set("noExtMacros",noExtMacros);
flags.set("fbAllOps",fbAllOps);
flags.set("ssgVol",ssgVol);
flags.set("fmVol",fmVol);
});
}
break;