From de931c1d2f805ed17d468c2f9924d6e02cac83b2 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Tue, 1 Feb 2022 01:21:51 -0500 Subject: [PATCH] did I just make an instrument loader --- src/engine/engine.cpp | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/engine/engine.cpp b/src/engine/engine.cpp index 546eec49..429def8c 100644 --- a/src/engine/engine.cpp +++ b/src/engine/engine.cpp @@ -760,7 +760,7 @@ const char* DivEngine::getEffectDesc(unsigned char effect, int chan) { if (warnings.empty()) { \ warnings+=x; \ } else { \ - warnings+=("\n" x); \ + warnings+=(String("\n")+x); \ } bool DivEngine::loadDMF(unsigned char* file, size_t len) { @@ -4480,7 +4480,13 @@ bool DivEngine::addInstrumentFromFile(const char *path) { } if (mode) { // FM - if (version<10) ins->fm.ops=reader.readC()?2:4; + if (version<10) { + if (version>1) { + ins->fm.ops=reader.readC()?4:2; + } else { + ins->fm.ops=reader.readC()?2:4; + } + } if (version>1) { // HELP! in which version of the format did we start storing FMS! ins->fm.fms=reader.readC(); } @@ -4637,6 +4643,12 @@ bool DivEngine::addInstrumentFromFile(const char *path) { delete[] buf; return false; } + + if (reader.tell()