XM import: fix 4x0/40x

This commit is contained in:
tildearrow 2024-07-01 03:32:52 -05:00
parent 1fe1202ba0
commit 88c7e5ad42

View file

@ -819,7 +819,15 @@ bool DivEngine::loadXM(unsigned char* file, size_t len) {
break;
case 4: // vibrato
if (effectVal!=0) {
vibStatus[k]=effectVal;
if ((effectVal&0xf0)==0) { // only change depth
vibStatus[k]&=0xf0;
vibStatus[k]|=effectVal&0x0f;
} else if ((effectVal&0x0f)==0) { // only change speed
vibStatus[k]&=0x0f;
vibStatus[k]|=effectVal&0xf0;
} else {
vibStatus[k]=effectVal;
}
vibStatusChanged[k]=true;
}
vibing[k]=true;