dev189 - Merge branch 'chanoscchecklist' of https://github.com/Eknous-P/furnace
This commit is contained in:
commit
f5b41d5ac3
5 changed files with 54 additions and 14 deletions
|
|
@ -54,8 +54,8 @@ class DivWorkPool;
|
|||
|
||||
#define DIV_UNSTABLE
|
||||
|
||||
#define DIV_VERSION "dev188"
|
||||
#define DIV_ENGINE_VERSION 188
|
||||
#define DIV_VERSION "dev189"
|
||||
#define DIV_ENGINE_VERSION 189
|
||||
// for imports
|
||||
#define DIV_VERSION_MOD 0xff01
|
||||
#define DIV_VERSION_FC 0xff02
|
||||
|
|
|
|||
|
|
@ -2185,7 +2185,14 @@ bool DivEngine::loadFur(unsigned char* file, size_t len) {
|
|||
|
||||
if (ds.version>=39) {
|
||||
for (int i=0; i<tchans; i++) {
|
||||
subSong->chanShow[i]=reader.readC();
|
||||
if (ds.version<189) {
|
||||
subSong->chanShow[i]=reader.readC();
|
||||
subSong->chanShowChanOsc[i]=subSong->chanShow[i];
|
||||
} else {
|
||||
unsigned char tempchar=reader.readC();
|
||||
subSong->chanShow[i]=tempchar&1;
|
||||
subSong->chanShowChanOsc[i]=(tempchar&2);
|
||||
}
|
||||
}
|
||||
|
||||
for (int i=0; i<tchans; i++) {
|
||||
|
|
@ -2588,7 +2595,14 @@ bool DivEngine::loadFur(unsigned char* file, size_t len) {
|
|||
}
|
||||
|
||||
for (int i=0; i<tchans; i++) {
|
||||
subSong->chanShow[i]=reader.readC();
|
||||
if (ds.version<189) {
|
||||
subSong->chanShow[i]=reader.readC();
|
||||
subSong->chanShowChanOsc[i]=subSong->chanShow[i];
|
||||
} else {
|
||||
unsigned char tempchar=reader.readC();
|
||||
subSong->chanShow[i]=tempchar&1;
|
||||
subSong->chanShowChanOsc[i]=tempchar&2;
|
||||
}
|
||||
}
|
||||
|
||||
for (int i=0; i<tchans; i++) {
|
||||
|
|
@ -3457,12 +3471,14 @@ bool DivEngine::loadMod(unsigned char* file, size_t len) {
|
|||
}
|
||||
for(int i=0; i<chCount; i++) {
|
||||
ds.subsong[0]->chanShow[i]=true;
|
||||
ds.subsong[0]->chanShowChanOsc[i]=true;
|
||||
ds.subsong[0]->chanName[i]=fmt::sprintf("Channel %d",i+1);
|
||||
ds.subsong[0]->chanShortName[i]=fmt::sprintf("C%d",i+1);
|
||||
}
|
||||
for(int i=chCount; i<ds.systemLen*4; i++) {
|
||||
ds.subsong[0]->pat[i].effectCols=1;
|
||||
ds.subsong[0]->chanShow[i]=false;
|
||||
ds.subsong[0]->chanShowChanOsc[i]=false;
|
||||
}
|
||||
|
||||
// instrument creation
|
||||
|
|
@ -5410,7 +5426,10 @@ SafeWriter* DivEngine::saveFur(bool notPrimary, bool newPatternFormat) {
|
|||
}
|
||||
|
||||
for (int i=0; i<chans; i++) {
|
||||
w->writeC(subSong->chanShow[i]);
|
||||
w->writeC(
|
||||
(subSong->chanShow[i]?1:0)|
|
||||
(subSong->chanShowChanOsc[i]?2:0)
|
||||
);
|
||||
}
|
||||
|
||||
for (int i=0; i<chans; i++) {
|
||||
|
|
@ -5568,7 +5587,10 @@ SafeWriter* DivEngine::saveFur(bool notPrimary, bool newPatternFormat) {
|
|||
}
|
||||
|
||||
for (int i=0; i<chans; i++) {
|
||||
w->writeC(subSong->chanShow[i]);
|
||||
w->writeC(
|
||||
(subSong->chanShow[i]?1:0)|
|
||||
(subSong->chanShowChanOsc[i]?2:0)
|
||||
);
|
||||
}
|
||||
|
||||
for (int i=0; i<chans; i++) {
|
||||
|
|
|
|||
|
|
@ -164,6 +164,7 @@ struct DivSubSong {
|
|||
DivChannelData pat[DIV_MAX_CHANS];
|
||||
|
||||
bool chanShow[DIV_MAX_CHANS];
|
||||
bool chanShowChanOsc[DIV_MAX_CHANS];
|
||||
unsigned char chanCollapse[DIV_MAX_CHANS];
|
||||
String chanName[DIV_MAX_CHANS];
|
||||
String chanShortName[DIV_MAX_CHANS];
|
||||
|
|
@ -184,6 +185,7 @@ struct DivSubSong {
|
|||
ordersLen(1) {
|
||||
for (int i=0; i<DIV_MAX_CHANS; i++) {
|
||||
chanShow[i]=true;
|
||||
chanShowChanOsc[i]=true;
|
||||
chanCollapse[i]=0;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue