From 0a63399dcf580d944f73c1955b33ae8047b4a661 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Wed, 8 Feb 2023 18:04:09 -0500 Subject: [PATCH] PCE: reset wave on VGM export reset --- src/engine/vgmOps.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/engine/vgmOps.cpp b/src/engine/vgmOps.cpp index 208f317b0..8da86c76c 100644 --- a/src/engine/vgmOps.cpp +++ b/src/engine/vgmOps.cpp @@ -130,7 +130,15 @@ void DivEngine::performVGMWrite(SafeWriter* w, DivSystem sys, DivRegWrite& write w->writeC(i); w->writeC(0xb9); w->writeC(4|baseAddr2); - w->writeC(0); + w->writeC(0x5f); + w->writeC(0xb9); + w->writeC(4|baseAddr2); + w->writeC(0x1f); + for (int j=0; j<32; j++) { + w->writeC(0xb9); + w->writeC(6|baseAddr2); + w->writeC(0); + } } break; case DIV_SYSTEM_NES: @@ -1054,7 +1062,7 @@ SafeWriter* DivEngine::saveVGM(bool* sysToExport, bool loop, int version, bool p std::vector chipVol; std::vector delayedWrites[DIV_MAX_CHIPS]; std::vector> sortedWrites; - std::vector tickPos; + std::vector tickPos; for (int i=0; itell()); if (nextTick(false,true) || !playing) { done=true; if (!loop) {