YMU759: interpret time base correctly
This commit is contained in:
parent
6858742d7b
commit
dec100b8aa
|
@ -600,6 +600,15 @@ void DivEngine::nextRow() {
|
||||||
changeOrd=-1;
|
changeOrd=-1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (song.system==DIV_SYSTEM_YMU759) {
|
||||||
|
if (speedAB) {
|
||||||
|
ticks=song.speed2;
|
||||||
|
nextSpeed=song.speed1;
|
||||||
|
} else {
|
||||||
|
ticks=song.speed1;
|
||||||
|
nextSpeed=song.speed2;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
if (speedAB) {
|
if (speedAB) {
|
||||||
ticks=song.speed2*(song.timeBase+1);
|
ticks=song.speed2*(song.timeBase+1);
|
||||||
nextSpeed=song.speed1;
|
nextSpeed=song.speed1;
|
||||||
|
@ -607,6 +616,7 @@ void DivEngine::nextRow() {
|
||||||
ticks=song.speed1*(song.timeBase+1);
|
ticks=song.speed1*(song.timeBase+1);
|
||||||
nextSpeed=song.speed2;
|
nextSpeed=song.speed2;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
speedAB=!speedAB;
|
speedAB=!speedAB;
|
||||||
|
|
||||||
// post row details
|
// post row details
|
||||||
|
@ -626,7 +636,31 @@ bool DivEngine::nextTick() {
|
||||||
if (song.customTempo) {
|
if (song.customTempo) {
|
||||||
divider=song.hz;
|
divider=song.hz;
|
||||||
} else {
|
} else {
|
||||||
if (song.pal) {
|
if (song.system==DIV_SYSTEM_YMU759) {
|
||||||
|
switch (song.timeBase) {
|
||||||
|
case 0:
|
||||||
|
divider=248;
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
divider=210;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
divider=100;
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
divider=50;
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
divider=25;
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
divider=20;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
divider=248;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
} else if (song.pal) {
|
||||||
divider=60;
|
divider=60;
|
||||||
} else {
|
} else {
|
||||||
divider=50;
|
divider=50;
|
||||||
|
|
Loading…
Reference in New Issue