From 63ee7cf5d817d9e94d80ad96f66d476f7e3e3ca1 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 18 Feb 2025 00:36:20 -0500 Subject: [PATCH] Virtual Boy: write waveforms before init channels --- src/engine/platform/vb.cpp | 2 +- src/gui/sysConf.cpp | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/engine/platform/vb.cpp b/src/engine/platform/vb.cpp index c855b007c..0b806fc5f 100644 --- a/src/engine/platform/vb.cpp +++ b/src/engine/platform/vb.cpp @@ -472,6 +472,7 @@ void DivPlatformVB::reset() { modulation=0; modType=false; memset(modTable,0,32); + updateROMWaves(); // set per-channel initial values for (int i=0; i<6; i++) { chWrite(i,0x01,isMuted[i]?0:chan[i].pan); @@ -483,7 +484,6 @@ void DivPlatformVB::reset() { chWrite(i,0x06,i); } } - updateROMWaves(); delay=500; } diff --git a/src/gui/sysConf.cpp b/src/gui/sysConf.cpp index eb2aef8e0..9d6f045ac 100644 --- a/src/gui/sysConf.cpp +++ b/src/gui/sysConf.cpp @@ -2478,14 +2478,14 @@ bool FurnaceGUI::drawSysConf(int chan, int sysPos, DivSystem type, DivConfig& fl ImGui::Text(_("Waveform storage mode:")); ImGui::Indent(); - if (ImGui::RadioButton(_("Dynamic (unconfirmed)"),!romMode)) { - romMode=false; - altered=true; - } if (ImGui::RadioButton(_("Static (up to 5 waves)"),romMode)) { romMode=true; altered=true; } + if (ImGui::RadioButton(_("Dynamic (phase reset on wave change!)"),!romMode)) { + romMode=false; + altered=true; + } ImGui::Unindent(); if (altered) {