# HG changeset patch # User nenolod # Date 1180501026 25200 # Node ID b391fddc35b252fa9881f97468bbe5bd5f1dc2b8 # Parent 949457464b28cb38410bdf857842015a54087ef4 [svn] Fix handling of SPC efb register when echo instruction has been called. Shift right of 14 is too high of a modifier and does not match the response of the FIR filter in the SPC700. Shift right of 16 delivers a more accurate result. diff -r 949457464b28 -r b391fddc35b2 ChangeLog --- a/ChangeLog Tue May 29 03:58:22 2007 -0700 +++ b/ChangeLog Tue May 29 21:57:06 2007 -0700 @@ -1,3 +1,11 @@ +2007-05-29 10:58:22 +0000 Yoshiki Yazawa + revision [2470] + - fix for crash when file extension is not available. + + trunk/src/tta/libtta.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + + 2007-05-29 07:59:45 +0000 William Pitcock revision [2468] - fix FD leakage. closes #954. diff -r 949457464b28 -r b391fddc35b2 src/console/Spc_Dsp.cxx --- a/src/console/Spc_Dsp.cxx Tue May 29 03:58:22 2007 -0700 +++ b/src/console/Spc_Dsp.cxx Tue May 29 21:57:06 2007 -0700 @@ -589,8 +589,8 @@ // Echo out if ( !(REG(flg) & 0x20) ) { - int l = (echo_out_l >> 7) + ((echo_in_l * (int8_t) REG(efb)) >> 14); - int r = (echo_out_r >> 7) + ((echo_in_r * (int8_t) REG(efb)) >> 14); + int l = (echo_out_l >> 7) + ((echo_in_l * (int8_t) REG(efb)) >> 16); + int r = (echo_out_r >> 7) + ((echo_in_r * (int8_t) REG(efb)) >> 16); // just to help pass more validation tests #if SPC_MORE_ACCURACY