Virtual Boy: write waveforms before init channels

This commit is contained in:
tildearrow 2025-02-18 00:36:20 -05:00
parent 07e33aee7f
commit 63ee7cf5d8
2 changed files with 5 additions and 5 deletions

View file

@ -472,6 +472,7 @@ void DivPlatformVB::reset() {
modulation=0; modulation=0;
modType=false; modType=false;
memset(modTable,0,32); memset(modTable,0,32);
updateROMWaves();
// set per-channel initial values // set per-channel initial values
for (int i=0; i<6; i++) { for (int i=0; i<6; i++) {
chWrite(i,0x01,isMuted[i]?0:chan[i].pan); chWrite(i,0x01,isMuted[i]?0:chan[i].pan);
@ -483,7 +484,6 @@ void DivPlatformVB::reset() {
chWrite(i,0x06,i); chWrite(i,0x06,i);
} }
} }
updateROMWaves();
delay=500; delay=500;
} }

View file

@ -2478,14 +2478,14 @@ bool FurnaceGUI::drawSysConf(int chan, int sysPos, DivSystem type, DivConfig& fl
ImGui::Text(_("Waveform storage mode:")); ImGui::Text(_("Waveform storage mode:"));
ImGui::Indent(); ImGui::Indent();
if (ImGui::RadioButton(_("Dynamic (unconfirmed)"),!romMode)) {
romMode=false;
altered=true;
}
if (ImGui::RadioButton(_("Static (up to 5 waves)"),romMode)) { if (ImGui::RadioButton(_("Static (up to 5 waves)"),romMode)) {
romMode=true; romMode=true;
altered=true; altered=true;
} }
if (ImGui::RadioButton(_("Dynamic (phase reset on wave change!)"),!romMode)) {
romMode=false;
altered=true;
}
ImGui::Unindent(); ImGui::Unindent();
if (altered) { if (altered) {