Merge branch 'master' of https://github.com/tildearrow/furnace into x16
This commit is contained in:
commit
43cfb09acf
25 changed files with 1546 additions and 230 deletions
|
|
@ -1551,6 +1551,7 @@ const char* aboutLine[]={
|
|||
"",
|
||||
"-- program --",
|
||||
"tildearrow",
|
||||
"akumanatt",
|
||||
"cam900",
|
||||
"laoo",
|
||||
"superctr",
|
||||
|
|
@ -4629,11 +4630,18 @@ bool FurnaceGUI::loop() {
|
|||
sysAddOption(DIV_SYSTEM_OPLL);
|
||||
sysAddOption(DIV_SYSTEM_OPLL_DRUMS);
|
||||
sysAddOption(DIV_SYSTEM_VRC7);
|
||||
sysAddOption(DIV_SYSTEM_OPL);
|
||||
sysAddOption(DIV_SYSTEM_OPL_DRUMS);
|
||||
sysAddOption(DIV_SYSTEM_OPL2);
|
||||
sysAddOption(DIV_SYSTEM_OPL2_DRUMS);
|
||||
sysAddOption(DIV_SYSTEM_OPL3);
|
||||
sysAddOption(DIV_SYSTEM_OPL3_DRUMS);
|
||||
sysAddOption(DIV_SYSTEM_TIA);
|
||||
sysAddOption(DIV_SYSTEM_SAA1099);
|
||||
sysAddOption(DIV_SYSTEM_AY8930);
|
||||
sysAddOption(DIV_SYSTEM_LYNX);
|
||||
sysAddOption(DIV_SYSTEM_QSOUND);
|
||||
sysAddOption(DIV_SYSTEM_SWAN);
|
||||
sysAddOption(DIV_SYSTEM_VERA);
|
||||
ImGui::EndMenu();
|
||||
}
|
||||
|
|
@ -4928,6 +4936,7 @@ bool FurnaceGUI::loop() {
|
|||
break;
|
||||
}
|
||||
case DIV_SYSTEM_GB:
|
||||
case DIV_SYSTEM_SWAN:
|
||||
case DIV_SYSTEM_VERA:
|
||||
case DIV_SYSTEM_YM2610:
|
||||
case DIV_SYSTEM_YM2610_EXT:
|
||||
|
|
@ -4976,11 +4985,18 @@ bool FurnaceGUI::loop() {
|
|||
sysChangeOption(i,DIV_SYSTEM_OPLL);
|
||||
sysChangeOption(i,DIV_SYSTEM_OPLL_DRUMS);
|
||||
sysChangeOption(i,DIV_SYSTEM_VRC7);
|
||||
sysChangeOption(i,DIV_SYSTEM_OPL);
|
||||
sysChangeOption(i,DIV_SYSTEM_OPL_DRUMS);
|
||||
sysChangeOption(i,DIV_SYSTEM_OPL2);
|
||||
sysChangeOption(i,DIV_SYSTEM_OPL2_DRUMS);
|
||||
sysChangeOption(i,DIV_SYSTEM_OPL3);
|
||||
sysChangeOption(i,DIV_SYSTEM_OPL3_DRUMS);
|
||||
sysChangeOption(i,DIV_SYSTEM_TIA);
|
||||
sysChangeOption(i,DIV_SYSTEM_SAA1099);
|
||||
sysChangeOption(i,DIV_SYSTEM_AY8930);
|
||||
sysChangeOption(i,DIV_SYSTEM_LYNX);
|
||||
sysChangeOption(i,DIV_SYSTEM_QSOUND);
|
||||
sysChangeOption(i,DIV_SYSTEM_SWAN);
|
||||
sysChangeOption(i,DIV_SYSTEM_VERA);
|
||||
ImGui::EndMenu();
|
||||
}
|
||||
|
|
@ -6399,6 +6415,12 @@ FurnaceGUI::FurnaceGUI():
|
|||
0
|
||||
}
|
||||
));
|
||||
cat.systems.push_back(FurnaceGUISysDef(
|
||||
"WonderSwan", {
|
||||
DIV_SYSTEM_SWAN, 64, 0, 0,
|
||||
0
|
||||
}
|
||||
));
|
||||
sysCategories.push_back(cat);
|
||||
|
||||
cat=FurnaceGUISysCategory("Computers");
|
||||
|
|
|
|||
|
|
@ -797,7 +797,8 @@ void FurnaceGUI::drawInsEdit() {
|
|||
int asInt[256];
|
||||
float loopIndicator[256];
|
||||
int opCount=4;
|
||||
if (ins->type==DIV_INS_OPL || ins->type==DIV_INS_OPLL) opCount=2;
|
||||
if (ins->type==DIV_INS_OPLL) opCount=2;
|
||||
if (ins->type==DIV_INS_OPL) opCount=(ins->fm.ops==4)?4:2;
|
||||
|
||||
if (ImGui::BeginTabItem("FM")) {
|
||||
if (ImGui::BeginTable("fmDetails",3,ImGuiTableFlags_SizingStretchSame)) {
|
||||
|
|
@ -817,7 +818,19 @@ void FurnaceGUI::drawInsEdit() {
|
|||
ImGui::TableNextColumn();
|
||||
drawAlgorithm(ins->fm.alg,FM_ALGS_4OP,ImVec2(ImGui::GetContentRegionAvail().x,48.0*dpiScale));
|
||||
break;
|
||||
case DIV_INS_OPL:
|
||||
case DIV_INS_OPL: {
|
||||
bool fourOp=(ins->fm.ops==4);
|
||||
ImGui::TableNextColumn();
|
||||
P(ImGui::SliderScalar(FM_NAME(FM_FB),ImGuiDataType_U8,&ins->fm.fb,&_ZERO,&_SEVEN)); rightClickable
|
||||
if (ImGui::Checkbox("4-op",&fourOp)) { PARAMETER
|
||||
ins->fm.ops=fourOp?4:2;
|
||||
}
|
||||
ImGui::TableNextColumn();
|
||||
P(ImGui::SliderScalar(FM_NAME(FM_ALG),ImGuiDataType_U8,&ins->fm.alg,&_ZERO,&_SEVEN)); rightClickable
|
||||
ImGui::TableNextColumn();
|
||||
drawAlgorithm(ins->fm.alg&1,FM_ALGS_2OP_OPL,ImVec2(ImGui::GetContentRegionAvail().x,48.0*dpiScale));
|
||||
break;
|
||||
}
|
||||
case DIV_INS_OPLL: {
|
||||
bool dc=ins->fm.fms;
|
||||
bool dm=ins->fm.ams;
|
||||
|
|
@ -1065,7 +1078,7 @@ void FurnaceGUI::drawInsEdit() {
|
|||
ImGui::TableNextRow();
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||
if (ImGui::SliderInt("##DT",&detune,-3,3)) { PARAMETER
|
||||
if (ImGui::SliderInt("##DT",&detune,-3,4)) { PARAMETER
|
||||
op.dt=detune+3;
|
||||
} rightClickable
|
||||
ImGui::TableNextColumn();
|
||||
|
|
@ -1368,6 +1381,10 @@ void FurnaceGUI::drawInsEdit() {
|
|||
if (ins->type==DIV_INS_PCE) {
|
||||
dutyMax=1;
|
||||
}
|
||||
if (ins->type==DIV_INS_SWAN) {
|
||||
dutyLabel="Noise";
|
||||
dutyMax=8;
|
||||
}
|
||||
if (ins->type==DIV_INS_OPLL || ins->type==DIV_INS_OPL) {
|
||||
dutyMax=0;
|
||||
}
|
||||
|
|
@ -1791,7 +1808,7 @@ void FurnaceGUI::drawWaveEdit() {
|
|||
DivWavetable* wave=e->song.wave[curWave];
|
||||
ImGui::Text("Width");
|
||||
if (ImGui::IsItemHovered()) {
|
||||
ImGui::SetTooltip("use a width of 32 on Game Boy and PC Engine.\nany other widths will be scaled during playback.");
|
||||
ImGui::SetTooltip("use a width of 32 on Game Boy, PC Engine and WonderSwan.\nany other widths will be scaled during playback.");
|
||||
}
|
||||
ImGui::SameLine();
|
||||
ImGui::SetNextItemWidth(128.0f*dpiScale);
|
||||
|
|
@ -1805,7 +1822,7 @@ void FurnaceGUI::drawWaveEdit() {
|
|||
ImGui::SameLine();
|
||||
ImGui::Text("Height");
|
||||
if (ImGui::IsItemHovered()) {
|
||||
ImGui::SetTooltip("use a height of:\n- 15 for Game Boy\n- 31 for PC Engine\nany other heights will be scaled during playback.");
|
||||
ImGui::SetTooltip("use a height of:\n- 15 for Game Boy and WonderSwan\n- 31 for PC Engine\nany other heights will be scaled during playback.");
|
||||
}
|
||||
ImGui::SameLine();
|
||||
ImGui::SetNextItemWidth(128.0f*dpiScale);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue