Skip to content

Commit

Permalink
aica: don't disable channel when reaching full attenuation
Browse files Browse the repository at this point in the history
Some games rely on the channel still being processed and CA/LP being
updated. Courtesy of @kihato
Issues #472, #483, #1180, #1249, #1030 (partial)
  • Loading branch information
flyinghead committed Dec 31, 2023
1 parent 9f9b29b commit a7702c6
Showing 1 changed file with 1 addition and 2 deletions.
3 changes: 1 addition & 2 deletions core/hw/aica/sgc_if.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1211,8 +1211,7 @@ void AegStep(ChannelEx* ch)
if (ch->AEG.GetValue() >= 0x3FF)
{
aeg_printf("[%d]AEG_step : EG_Release End @ %x", ch->ChannelNumber, ch->AEG.GetValue());
ch->AEG.SetValue(0x3FF); // TODO: mnn, should we do anything about it running wild ?
ch->disable(); // TODO: Is this ok here? It's a speed optimisation (since the channel is muted)
ch->AEG.SetValue(0x3FF);
}
break;
}
Expand Down

0 comments on commit a7702c6

Please sign in to comment.