fix superstar saga sound glitch

This commit is contained in:
dborth 2012-06-26 23:08:42 +00:00
parent 5899704220
commit f492e8f460

View File

@ -113,7 +113,7 @@ void Gb_Sweep_Square::clock_sweep()
int Gb_Wave::access( unsigned addr ) const int Gb_Wave::access( unsigned addr ) const
{ {
if ( enabled ) if ( enabled && mode != Gb_Apu::mode_agb )
{ {
addr = phase & (bank_size - 1); addr = phase & (bank_size - 1);
if ( mode == Gb_Apu::mode_dmg ) if ( mode == Gb_Apu::mode_dmg )
@ -442,7 +442,7 @@ static unsigned run_lfsr( unsigned s, unsigned mask, int count )
{ {
// won't fully replace upper 8 bits, so have to do the unoptimized way // won't fully replace upper 8 bits, so have to do the unoptimized way
while ( --count >= 0 ) while ( --count >= 0 )
s = (s >> 1 | mask) ^ (mask & -((s - 1) & 2)); s = (s >> 1 | mask) ^ (mask & (0 - ((s - 1) & 2)));
} }
else else
{ {