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

@ -137,6 +137,13 @@ void DivPlatformSegaPCM::tick(bool sysTick) {
if (chan[i].freqChanged || chan[i].keyOn || chan[i].keyOff) {
chan[i].freq=chan[i].baseFreq+(chan[i].pitch>>1)-64;
if (!parent->song.oldArpStrategy) {
if (chan[i].fixedArp) {
chan[i].freq=(chan[i].baseNoteOverride<<7)+(chan[i].pitch>>1)-64+chan[i].pitch2;
} else {
chan[i].freq+=chan[i].arpOff<<7;
}
}
if (chan[i].furnacePCM) {
double off=1.0;
if (chan[i].pcm.sample>=0 && chan[i].pcm.sample<parent->song.sampleLen) {