giga-refactor, part 2
This commit is contained in:
parent
a654d33df2
commit
db419dc6c8
27 changed files with 282 additions and 237 deletions
|
|
@ -1168,6 +1168,7 @@ bool DivEngine::loadDMF(unsigned char* file, size_t len) {
|
|||
}
|
||||
|
||||
ds.systemName=getSongSystemLegacyName(ds,!getConfInt("noMultiSystem",0));
|
||||
ds.initDefaultSystemChans();
|
||||
ds.recalcChans();
|
||||
|
||||
if (active) quitDispatch();
|
||||
|
|
@ -1175,6 +1176,7 @@ bool DivEngine::loadDMF(unsigned char* file, size_t len) {
|
|||
saveLock.lock();
|
||||
song.unload();
|
||||
song=ds;
|
||||
hasLoadedSomething=true;
|
||||
changeSong(0);
|
||||
// always convert to normal sample mode (I have no idea how will I do export)
|
||||
convertLegacySampleMode();
|
||||
|
|
|
|||
|
|
@ -664,6 +664,7 @@ bool DivEngine::loadFC(unsigned char* file, size_t len) {
|
|||
ds.subsong[0]->optimizePatterns();
|
||||
ds.subsong[0]->rearrangePatterns();
|
||||
|
||||
ds.initDefaultSystemChans();
|
||||
ds.recalcChans();
|
||||
|
||||
if (active) quitDispatch();
|
||||
|
|
@ -671,8 +672,8 @@ bool DivEngine::loadFC(unsigned char* file, size_t len) {
|
|||
saveLock.lock();
|
||||
song.unload();
|
||||
song=ds;
|
||||
hasLoadedSomething=true;
|
||||
changeSong(0);
|
||||
recalcChans();
|
||||
saveLock.unlock();
|
||||
BUSY_END;
|
||||
if (active) {
|
||||
|
|
|
|||
|
|
@ -2802,6 +2802,7 @@ bool DivEngine::loadFTM(unsigned char* file, size_t len, bool dnft, bool dnft_si
|
|||
}
|
||||
}
|
||||
|
||||
ds.initDefaultSystemChans();
|
||||
ds.recalcChans();
|
||||
|
||||
if (active) quitDispatch();
|
||||
|
|
@ -2809,6 +2810,7 @@ bool DivEngine::loadFTM(unsigned char* file, size_t len, bool dnft, bool dnft_si
|
|||
saveLock.lock();
|
||||
song.unload();
|
||||
song=ds;
|
||||
hasLoadedSomething=true;
|
||||
changeSong(0);
|
||||
saveLock.unlock();
|
||||
BUSY_END;
|
||||
|
|
|
|||
|
|
@ -2136,6 +2136,7 @@ bool DivEngine::loadFur(unsigned char* file, size_t len, int variantID) {
|
|||
saveLock.lock();
|
||||
song.unload();
|
||||
song=ds;
|
||||
hasLoadedSomething=true;
|
||||
changeSong(0);
|
||||
// removal of legacy sample mode
|
||||
if (song.version<239) {
|
||||
|
|
|
|||
|
|
@ -1675,6 +1675,7 @@ bool DivEngine::loadIT(unsigned char* file, size_t len) {
|
|||
ds.systemName="PC";
|
||||
|
||||
// find subsongs
|
||||
ds.initDefaultSystemChans();
|
||||
ds.recalcChans();
|
||||
ds.findSubSongs();
|
||||
|
||||
|
|
@ -1708,6 +1709,7 @@ bool DivEngine::loadIT(unsigned char* file, size_t len) {
|
|||
saveLock.lock();
|
||||
song.unload();
|
||||
song=ds;
|
||||
hasLoadedSomething=true;
|
||||
changeSong(0);
|
||||
saveLock.unlock();
|
||||
BUSY_END;
|
||||
|
|
|
|||
|
|
@ -431,6 +431,7 @@ bool DivEngine::loadMod(unsigned char* file, size_t len) {
|
|||
ds.insLen=ds.ins.size();
|
||||
|
||||
// find subsongs
|
||||
ds.initDefaultSystemChans();
|
||||
ds.recalcChans();
|
||||
ds.findSubSongs();
|
||||
|
||||
|
|
@ -439,6 +440,7 @@ bool DivEngine::loadMod(unsigned char* file, size_t len) {
|
|||
saveLock.lock();
|
||||
song.unload();
|
||||
song=ds;
|
||||
hasLoadedSomething=true;
|
||||
changeSong(0);
|
||||
saveLock.unlock();
|
||||
BUSY_END;
|
||||
|
|
|
|||
|
|
@ -1179,6 +1179,7 @@ bool DivEngine::loadS3M(unsigned char* file, size_t len) {
|
|||
}
|
||||
|
||||
// find subsongs
|
||||
ds.initDefaultSystemChans();
|
||||
ds.recalcChans();
|
||||
ds.findSubSongs();
|
||||
|
||||
|
|
@ -1215,6 +1216,7 @@ bool DivEngine::loadS3M(unsigned char* file, size_t len) {
|
|||
saveLock.lock();
|
||||
song.unload();
|
||||
song=ds;
|
||||
hasLoadedSomething=true;
|
||||
changeSong(0);
|
||||
saveLock.unlock();
|
||||
BUSY_END;
|
||||
|
|
|
|||
|
|
@ -302,7 +302,7 @@ SafeWriter* DivEngine::saveText(bool separatePatterns) {
|
|||
|
||||
for (int j=0; j<s->ordersLen; j++) {
|
||||
w->writeText(fmt::sprintf("%.2X |",j));
|
||||
for (int k=0; k<chans; k++) {
|
||||
for (int k=0; k<song.chans; k++) {
|
||||
w->writeText(fmt::sprintf(" %.2X",s->orders.ord[k][j]));
|
||||
}
|
||||
w->writeText("\n");
|
||||
|
|
@ -318,7 +318,7 @@ SafeWriter* DivEngine::saveText(bool separatePatterns) {
|
|||
for (int k=0; k<s->patLen; k++) {
|
||||
w->writeText(fmt::sprintf("%.2X ",k));
|
||||
|
||||
for (int l=0; l<chans; l++) {
|
||||
for (int l=0; l<song.chans; l++) {
|
||||
DivPattern* p=s->pat[l].getPattern(s->orders.ord[l][j],false);
|
||||
short note, octave;
|
||||
noteToSplitNote(p->newData[k][DIV_PAT_NOTE],note,octave);
|
||||
|
|
|
|||
|
|
@ -711,6 +711,7 @@ bool DivEngine::loadTFMv1(unsigned char* file, size_t len) {
|
|||
saveLock.lock();
|
||||
song.unload();
|
||||
song=ds;
|
||||
hasLoadedSomething=true;
|
||||
changeSong(0);
|
||||
saveLock.unlock();
|
||||
BUSY_END;
|
||||
|
|
@ -905,6 +906,7 @@ bool DivEngine::loadTFMv2(unsigned char* file, size_t len) {
|
|||
info.loopPos=loopPos;
|
||||
TFMParsePattern(info);
|
||||
|
||||
ds.initDefaultSystemChans();
|
||||
ds.recalcChans();
|
||||
|
||||
if (active) quitDispatch();
|
||||
|
|
@ -912,6 +914,7 @@ bool DivEngine::loadTFMv2(unsigned char* file, size_t len) {
|
|||
saveLock.lock();
|
||||
song.unload();
|
||||
song=ds;
|
||||
hasLoadedSomething=true;
|
||||
changeSong(0);
|
||||
saveLock.unlock();
|
||||
BUSY_END;
|
||||
|
|
|
|||
|
|
@ -1377,6 +1377,7 @@ bool DivEngine::loadXM(unsigned char* file, size_t len) {
|
|||
}
|
||||
|
||||
// find subsongs
|
||||
ds.initDefaultSystemChans();
|
||||
ds.recalcChans();
|
||||
ds.findSubSongs();
|
||||
|
||||
|
|
@ -1385,6 +1386,7 @@ bool DivEngine::loadXM(unsigned char* file, size_t len) {
|
|||
saveLock.lock();
|
||||
song.unload();
|
||||
song=ds;
|
||||
hasLoadedSomething=true;
|
||||
changeSong(0);
|
||||
saveLock.unlock();
|
||||
BUSY_END;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue