Make separate macros for each ADSR param

This commit is contained in:
LTVA1 2023-10-27 17:20:32 +03:00
parent 1207eb1e32
commit 50b314bd77
2 changed files with 15 additions and 13 deletions

View file

@ -235,13 +235,21 @@ void DivPlatformC64::tick(bool sysTick) {
}
if (chan[i].std.ex5.had) {
chan[i].attack = chan[i].std.ex5.val >> 4;
chan[i].decay = chan[i].std.ex5.val & 15;
chan[i].attack = chan[i].std.ex5.val & 15;
rWrite(i * 7 + 5, (chan[i].attack << 4) | (chan[i].decay));
}
if (chan[i].std.ex6.had) {
chan[i].sustain = chan[i].std.ex6.val >> 4;
chan[i].decay = chan[i].std.ex5.val & 15;
rWrite(i * 7 + 6, (chan[i].sustain << 4) | (chan[i].release));
}
if (chan[i].std.ex7.had) {
chan[i].sustain = chan[i].std.ex6.val & 15;
rWrite(i * 7 + 6, (chan[i].sustain << 4) | (chan[i].release));
}
if (chan[i].std.ex8.had) {
chan[i].release = chan[i].std.ex6.val & 15;
rWrite(i * 7 + 6, (chan[i].sustain << 4) | (chan[i].release));
}