mirror of
https://github.com/tildearrow/furnace.git
synced 2024-11-30 08:23:01 +00:00
SegaPCM: fix new arp strat
This commit is contained in:
parent
ae4cb78c2c
commit
e31f8a2115
2 changed files with 3 additions and 2 deletions
|
@ -133,9 +133,9 @@ void DivPlatformSegaPCM::tick(bool sysTick) {
|
||||||
chan[i].freq=chan[i].baseFreq+(chan[i].pitch>>1)-64;
|
chan[i].freq=chan[i].baseFreq+(chan[i].pitch>>1)-64;
|
||||||
if (!parent->song.oldArpStrategy) {
|
if (!parent->song.oldArpStrategy) {
|
||||||
if (chan[i].fixedArp) {
|
if (chan[i].fixedArp) {
|
||||||
chan[i].freq=(chan[i].baseNoteOverride<<7)+(chan[i].pitch>>1)-64+chan[i].pitch2;
|
chan[i].freq=(chan[i].baseNoteOverride<<6)+(chan[i].pitch>>1)-64+chan[i].pitch2;
|
||||||
} else {
|
} else {
|
||||||
chan[i].freq+=chan[i].arpOff<<7;
|
chan[i].freq+=chan[i].arpOff<<6;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (chan[i].furnacePCM) {
|
if (chan[i].furnacePCM) {
|
||||||
|
|
|
@ -1586,6 +1586,7 @@ void DivEngine::nextBuf(float** in, float** out, int inChans, int outChans, unsi
|
||||||
|
|
||||||
// logic starts here
|
// logic starts here
|
||||||
for (int i=0; i<song.systemLen; i++) {
|
for (int i=0; i<song.systemLen; i++) {
|
||||||
|
// TODO: we may have a problem here
|
||||||
disCont[i].lastAvail=blip_samples_avail(disCont[i].bb[0]);
|
disCont[i].lastAvail=blip_samples_avail(disCont[i].bb[0]);
|
||||||
if (disCont[i].lastAvail>0) {
|
if (disCont[i].lastAvail>0) {
|
||||||
disCont[i].flush(disCont[i].lastAvail);
|
disCont[i].flush(disCont[i].lastAvail);
|
||||||
|
|
Loading…
Reference in a new issue