From 0a498dc4c4ecea19449fc936fde8a903c17f9040 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 17 Mar 2024 15:57:41 -0500 Subject: [PATCH] GBA: update to latest dispatch spec remove ALWAYS_SET_VOLUME implement macro restart --- src/engine/dispatch.h | 6 ++---- src/engine/platform/gbadma.cpp | 4 ++-- src/engine/platform/gbaminmod.cpp | 4 ++-- src/engine/playback.cpp | 5 ++--- 4 files changed, 8 insertions(+), 11 deletions(-) diff --git a/src/engine/dispatch.h b/src/engine/dispatch.h index dee8efe75..12238cfe2 100644 --- a/src/engine/dispatch.h +++ b/src/engine/dispatch.h @@ -252,16 +252,14 @@ enum DivDispatchCmds { DIV_CMD_POWERNOISE_COUNTER_LOAD, // (which, val) DIV_CMD_POWERNOISE_IO_WRITE, // (port, value) - DIV_CMD_MINMOD_ECHO, - - DIV_ALWAYS_SET_VOLUME, // () -> alwaysSetVol - DIV_CMD_DAVE_HIGH_PASS, DIV_CMD_DAVE_RING_MOD, DIV_CMD_DAVE_SWAP_COUNTERS, DIV_CMD_DAVE_LOW_PASS, DIV_CMD_DAVE_CLOCK_DIV, + DIV_CMD_MINMOD_ECHO, + DIV_CMD_MAX }; diff --git a/src/engine/platform/gbadma.cpp b/src/engine/platform/gbadma.cpp index cf28a6c62..79e8b7880 100644 --- a/src/engine/platform/gbadma.cpp +++ b/src/engine/platform/gbadma.cpp @@ -333,8 +333,8 @@ int DivPlatformGBADMA::dispatch(DivCommand c) { case DIV_CMD_MACRO_ON: chan[c.chan].std.mask(c.value,false); break; - case DIV_ALWAYS_SET_VOLUME: - return 1; + case DIV_CMD_MACRO_RESTART: + chan[c.chan].std.restart(c.value); break; default: break; diff --git a/src/engine/platform/gbaminmod.cpp b/src/engine/platform/gbaminmod.cpp index 14b7717ec..2ad6713b4 100644 --- a/src/engine/platform/gbaminmod.cpp +++ b/src/engine/platform/gbaminmod.cpp @@ -519,8 +519,8 @@ int DivPlatformGBAMinMod::dispatch(DivCommand c) { case DIV_CMD_MACRO_ON: chan[c.chan].std.mask(c.value,false); break; - case DIV_ALWAYS_SET_VOLUME: - return 1; + case DIV_CMD_MACRO_RESTART: + chan[c.chan].std.restart(c.value); break; default: break; diff --git a/src/engine/playback.cpp b/src/engine/playback.cpp index 978274076..1e7d823c2 100644 --- a/src/engine/playback.cpp +++ b/src/engine/playback.cpp @@ -247,6 +247,8 @@ const char* cmdName[]={ "ESFM_MODIN", "ESFM_ENV_DELAY", + "MACRO_RESTART", + "POWERNOISE_COUNTER_LOAD", "POWERNOISE_IO_WRITE", @@ -256,10 +258,7 @@ const char* cmdName[]={ "DAVE_LOW_PASS", "DAVE_CLOCK_DIV", - "MACRO_RESTART", "MINMOD_ECHO", - - "ALWAYS_SET_VOLUME" }; static_assert((sizeof(cmdName)/sizeof(void*))==DIV_CMD_MAX,"update cmdName!");