diff -c -N gramofile-1.6/signpr_cmf2.c gramofile-1.6-sjt/signpr_cmf2.c *** gramofile-1.6/signpr_cmf2.c Tue Mar 28 22:07:25 2000 --- gramofile-1.6-sjt/signpr_cmf2.c Tue Apr 17 08:29:02 2001 *************** *** 646,664 **** /* Should be /64, but the signal is extremely soft, so divide by less to get more quantization levels (more accurate) */ ! sum.left /= 10; ! sum.right /= 10; #endif ! if (sum.left < 32767) ! sample.left = sum.left; ! else sample.left = 32767; ! ! if (sum.right < 32767) ! sample.right = sum.right; else sample.right = 32767; return sample; } --- 646,670 ---- /* Should be /64, but the signal is extremely soft, so divide by less to get more quantization levels (more accurate) */ ! sum.left /= 4; ! sum.right /= 4; #endif ! if (sum.left > 32767) sample.left = 32767; ! else if (sum.left < -32768) ! sample.left = -32768; else + sample.left = sum.left; + + + if (sum.right > 32767) sample.right = 32767; + else if (sum.right < -32768) + sample.right = -32768; + else + sample.right = sum.right; + return sample; } *************** *** 762,767 **** --- 768,776 ---- b_t.left; if (i > 32767) i = 32767; + else if (i < -32768) + i = -32768; + returnval.left = i; i = (labs (w_t.right - b_t.right) * 1000) *************** *** 769,774 **** --- 778,785 ---- b_t.right; if (i > 32767) i = 32767; + else if (i < -32768) + i = -32768; returnval.right = i; return returnval;