From 23744021be6962fdd20841c1ee7676c83ff71832 Mon Sep 17 00:00:00 2001 From: Rene Stange Date: Mon, 28 Feb 2022 08:56:40 +0100 Subject: [PATCH] Fix: Invalid handling of .syx file indexes Indexes of voice banks are zero-based now in any case (for the user and internally). In CSysExFileLoader::Load() do not decrement file index any more to calculate internal voice bank index. Do not increment internal index, when generating user messages. --- src/sysexfileloader.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/sysexfileloader.cpp b/src/sysexfileloader.cpp index ed1be99..968242d 100644 --- a/src/sysexfileloader.cpp +++ b/src/sysexfileloader.cpp @@ -80,11 +80,9 @@ void CSysExFileLoader::Load (void) continue; } - nBank--; // zero-based internally - if (m_pVoiceBank[nBank]) { - LOGWARN ("Bank #%u already loaded", nBank+1); + LOGWARN ("Bank #%u already loaded", nBank); continue; } @@ -105,7 +103,7 @@ void CSysExFileLoader::Load (void) && m_pVoiceBank[nBank]->Format == 0x09 && m_pVoiceBank[nBank]->StatusEnd == 0xF7) { - LOGDBG ("Bank #%u successfully loaded", nBank+1); + LOGDBG ("Bank #%u successfully loaded", nBank); } else {