From 9b363eb04c94250d134f57768a28c41a0356f554 Mon Sep 17 00:00:00 2001 From: AArt1256 Date: Fri, 9 Aug 2024 12:09:11 +0300 Subject: [PATCH] fixed more bugs yay --- src/engine/platform/supervision.cpp | 11 +++++++++-- src/gui/insEdit.cpp | 1 - 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/engine/platform/supervision.cpp b/src/engine/platform/supervision.cpp index 502bf2dcb..c291115e3 100644 --- a/src/engine/platform/supervision.cpp +++ b/src/engine/platform/supervision.cpp @@ -353,6 +353,13 @@ int DivPlatformSupervision::dispatch(DivCommand c) { chan[c.chan].hasOffset=c.value; chan[c.chan].keyOn=true; break; + case DIV_CMD_PANNING: { + chan[c.chan].pan=0; + if (c.value&0xf0) chan[c.chan].pan|=2; + if (c.value2>>4) chan[c.chan].pan|=1; + if (chan[c.chan].pan==0) chan[c.chan].pan=3; + break; + } case DIV_CMD_LEGATO: chan[c.chan].baseFreq=NOTE_PERIODIC(c.value+chan[c.chan].sampleNoteDelta+((HACKY_LEGATO_MESS)?(chan[c.chan].std.arp.val):(0))); chan[c.chan].freqChanged=true; @@ -449,13 +456,13 @@ void DivPlatformSupervision::notifyInsDeletion(void* ins) { } void DivPlatformSupervision::setFlags(const DivConfig& flags) { - if (flags.getInt("swapDuty",0)) { + if (flags.getInt("swapDuty",true)) { duty_swap=1; } else { duty_swap=0; } otherFlags=0; - if (flags.getInt("sqStereo",0)) { + if (flags.getInt("sqStereo",false)) { otherFlags |= 1; } chipClock=4000000; diff --git a/src/gui/insEdit.cpp b/src/gui/insEdit.cpp index f2f7d8817..803b2c721 100644 --- a/src/gui/insEdit.cpp +++ b/src/gui/insEdit.cpp @@ -7415,7 +7415,6 @@ void FurnaceGUI::drawInsEdit() { macroList.push_back(FurnaceGUIMacroDesc(_("Duty/Noise"),&ins->std.dutyMacro,0,3,160,uiColors[GUI_COLOR_MACRO_NOISE])); macroList.push_back(FurnaceGUIMacroDesc(_("Panning"),&ins->std.panLMacro,0,2,32,uiColors[GUI_COLOR_MACRO_OTHER],false,NULL,NULL,true,panBits)); macroList.push_back(FurnaceGUIMacroDesc(_("Pitch"),&ins->std.pitchMacro,-2048,2047,160,uiColors[GUI_COLOR_MACRO_PITCH],true,macroRelativeMode)); - macroList.push_back(FurnaceGUIMacroDesc(_("Phase Reset"),&ins->std.phaseResetMacro,0,1,32,uiColors[GUI_COLOR_MACRO_OTHER],false,NULL,NULL,true)); break; case DIV_INS_SM8521: macroList.push_back(FurnaceGUIMacroDesc(_("Volume"),&ins->std.volMacro,0,31,160,uiColors[GUI_COLOR_MACRO_VOLUME]));