MOD import: more improvements

- prepare for old Soundtracker MOD import
- add "bypass limits" flag - dope.mod plays correctly now
- automatic channel names
This commit is contained in:
tildearrow 2022-03-15 18:32:15 -05:00
parent 10cea9956b
commit 0a307fc4a6
4 changed files with 47 additions and 17 deletions

View file

@ -93,7 +93,11 @@ void DivPlatformAmiga::acquire(short* bufL, short* bufR, size_t start, size_t le
chan[i].busClock=0;
}
}*/
chan[i].audSub+=MAX(114,chan[i].freq);
if (bypassLimits) {
chan[i].audSub+=MAX(AMIGA_DIVIDER,chan[i].freq);
} else {
chan[i].audSub+=MAX(114,chan[i].freq);
}
}
}
if (!isMuted[i]) {
@ -355,6 +359,8 @@ void DivPlatformAmiga::setFlags(unsigned int flags) {
rate=chipClock/AMIGA_DIVIDER;
sep1=((flags>>8)&127)+127;
sep2=127-((flags>>8)&127);
amigaModel=flags&2;
bypassLimits=flags&4;
}
int DivPlatformAmiga::init(DivEngine* p, int channels, int sugRate, unsigned int flags) {

View file

@ -66,6 +66,8 @@ class DivPlatformAmiga: public DivDispatch {
};
Channel chan[4];
bool isMuted[4];
bool bypassLimits;
bool amigaModel;
int sep1, sep2;