diff --git a/src/engine/platform/lynx.cpp b/src/engine/platform/lynx.cpp index 8624c049b..8c835fcc9 100644 --- a/src/engine/platform/lynx.cpp +++ b/src/engine/platform/lynx.cpp @@ -195,6 +195,13 @@ void DivPlatformLynx::tick(bool sysTick) { chan[i].freqChanged=true; } + if (chan[i].std.phaseReset.had) { + if (chan[i].std.phaseReset.val==1) { + WRITE_LFSR(i, 0); + WRITE_OTHER(i, 0); + } + } + if (chan[i].freqChanged) { if (chan[i].lfsr >= 0) { WRITE_LFSR(i, (chan[i].lfsr&0xff)); diff --git a/src/gui/insEdit.cpp b/src/gui/insEdit.cpp index 3133b7c6a..545c11493 100644 --- a/src/gui/insEdit.cpp +++ b/src/gui/insEdit.cpp @@ -3137,7 +3137,8 @@ void FurnaceGUI::drawInsEdit() { ins->type==DIV_INS_AY8930 || ins->type==DIV_INS_SWAN || ins->type==DIV_INS_MULTIPCM || - ins->type==DIV_INS_SU) { + ins->type==DIV_INS_SU || + ins->type==DIV_INS_MIKEY) { macroList.push_back(FurnaceGUIMacroDesc("Phase Reset",&ins->std.phaseResetMacro,0,1,32,uiColors[GUI_COLOR_MACRO_OTHER],false,NULL,NULL,true)); } if (ex1Max>0) {