prepare for Furnace Pro

This commit is contained in:
tildearrow 2023-04-01 05:06:13 -05:00
parent fe7ba3c56b
commit 6fe8bea50e
17 changed files with 693 additions and 167 deletions

View file

@ -4516,6 +4516,8 @@ void DivEngine::preInit() {
logI("Furnace version " DIV_VERSION ".");
loadConf();
if (getConfInt("seriousMode",0)) dejarteArriba=false;
}
bool DivEngine::init() {

View file

@ -53,8 +53,8 @@
#define EXTERN_BUSY_BEGIN_SOFT e->softLocked=true; e->isBusy.lock();
#define EXTERN_BUSY_END e->isBusy.unlock(); e->softLocked=false;
#define DIV_VERSION "dev145"
#define DIV_ENGINE_VERSION 145
#define DIV_VERSION "Pro"
#define DIV_ENGINE_VERSION 146
// for imports
#define DIV_VERSION_MOD 0xff01
#define DIV_VERSION_FC 0xff02

View file

@ -1642,6 +1642,13 @@ bool DivEngine::loadFur(unsigned char* file, size_t len) {
ds.version=reader.readS();
logI("module version %d (0x%.2x)",ds.version,ds.version);
if (ds.version==146 && dejarteArriba) {
logE("UNREGISTERED! register to open.");
lastError="this file was saved with an UNREGISTERED version of Furnace Pro. in order to open, you need to register.";
delete[] file;
return false;
}
if (ds.version>DIV_ENGINE_VERSION) {
logW("this module was created with a more recent version of Furnace!");
addWarning("this module was created with a more recent version of Furnace!");
@ -4832,7 +4839,7 @@ SafeWriter* DivEngine::saveFur(bool notPrimary) {
if (!notPrimary) {
song.isDMF=false;
song.version=DIV_ENGINE_VERSION;
song.version=dejarteArriba?DIV_ENGINE_VERSION:145;
}
SafeWriter* w=new SafeWriter;
@ -4842,7 +4849,7 @@ SafeWriter* DivEngine::saveFur(bool notPrimary) {
w->write(DIV_FUR_MAGIC,16);
// write version
w->writeS(DIV_ENGINE_VERSION);
w->writeS(dejarteArriba?DIV_ENGINE_VERSION:145);
// reserved
w->writeS(0);