Mercurial > audlegacy-plugins
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; |