comparison src/console/Spc_Dsp.cxx @ 1498:a1fccf242404

made SPC playback reverb a configuration option till the problem can be solved
author mf0102 <0102@gmx.at>
date Thu, 16 Aug 2007 14:47:14 +0200
parents b391fddc35b2
children
comparison
equal deleted inserted replaced
1497:318e3bcdf51d 1498:a1fccf242404
1 // snes_spc 0.9.0. http://www.slack.net/~ant/ 1 // snes_spc 0.9.0. http://www.slack.net/~ant/
2
3 // TODO: we can remove this as soon as the reverb problem is fixed. -- mf0102
4 #include "Audacious_Config.h"
2 5
3 #include "Spc_Dsp.h" 6 #include "Spc_Dsp.h"
4 7
5 #include "blargg_endian.h" 8 #include "blargg_endian.h"
6 #include <string.h> 9 #include <string.h>
587 DO_FIR( 6 ); 590 DO_FIR( 6 );
588 591
589 // Echo out 592 // Echo out
590 if ( !(REG(flg) & 0x20) ) 593 if ( !(REG(flg) & 0x20) )
591 { 594 {
592 int l = (echo_out_l >> 7) + ((echo_in_l * (int8_t) REG(efb)) >> 16); 595 unsigned shift = audcfg.inc_spc_reverb ? 14 : 16;
593 int r = (echo_out_r >> 7) + ((echo_in_r * (int8_t) REG(efb)) >> 16); 596 int l = (echo_out_l >> 7) + ((echo_in_l * (int8_t) REG(efb)) >> shift);
597 int r = (echo_out_r >> 7) + ((echo_in_r * (int8_t) REG(efb)) >> shift);
594 598
595 // just to help pass more validation tests 599 // just to help pass more validation tests
596 #if SPC_MORE_ACCURACY 600 #if SPC_MORE_ACCURACY
597 l &= ~1; 601 l &= ~1;
598 r &= ~1; 602 r &= ~1;