new arp strategy, part 1

This commit is contained in:
tildearrow 2022-12-17 02:07:24 -05:00
parent 3eb3d8a6f1
commit 6f22ade69a
58 changed files with 150 additions and 116 deletions

View file

@ -99,7 +99,7 @@ int DivPlatformT6W28::snCalcFreq(int ch) {
if (ret<0) ret=0;
return ret;
}
return parent->calcFreq(chan[ch].baseFreq,chan[ch].pitch,true,0,chan[ch].pitch2,chipClock,ch==3?15:16);
return parent->calcFreq(chan[ch].baseFreq,chan[ch].pitch,chan[ch].fixedArp?chan[ch].baseNoteOverride:chan[ch].arpOff,chan[ch].fixedArp,true,0,chan[ch].pitch2,chipClock,ch==3?15:16);
}
void DivPlatformT6W28::tick(bool sysTick) {
@ -250,7 +250,7 @@ int DivPlatformT6W28::dispatch(DivCommand c) {
break;
}
case DIV_CMD_LEGATO:
chan[c.chan].baseFreq=NOTE_SN(c.chan,c.value+((chan[c.chan].std.arp.will && !chan[c.chan].std.arp.mode)?(chan[c.chan].std.arp.val):(0)));
chan[c.chan].baseFreq=NOTE_SN(c.chan,c.value+((HACKY_LEGATO_MESS)?(chan[c.chan].std.arp.val):(0)));
chan[c.chan].freqChanged=true;
chan[c.chan].note=c.value;
break;