chorus_hist0 = hist0, chorus_hist1 = hist1; 
void do_stereo_chorus(int32* buf, register int32 count){#if OPT_MODE != 0	/* fixed-point implementation */	register int32 i;	int32 level, feedback, send_reverb, send_delay, delay, depth, output, div, v1l, v1r, f0, f1;	level = TIM_FSCALE(chorus_param.level_ratio * MASTER_CHORUS_LEVEL, 24);	feedback = TIM_FSCALE(chorus_param.feedback_ratio, 24);	send_reverb = TIM_FSCALE(chorus_param.send_reverb_ratio * REV_INP_LEV, 24);	send_delay = TIM_FSCALE(chorus_param.send_delay_ratio, 24);	depth = chorus_param.depth_in_sample;	delay = chorus_param.delay_in_sample;	div = TIM_FSCALE((SINE_CYCLE_LENGTH - 1) / (double)chorus_cyc0, 24) - 0.5;	f0 = imuldiv16(chorus_lfo0[imuldiv24(chorus_cnt0, div)], depth);	chorus_spt0 = chorus_wpt0 - delay - (f0 >> 8);	f0 &= 0xFF;	if(chorus_spt0 < 0) {chorus_spt0 += chorus_rpt0;}	f1 = imuldiv16(chorus_lfo1[imuldiv24(chorus_cnt0, div)], depth);	chorus_spt1 = chorus_wpt0 - delay - (f1 >> 8);	f1 &= 0xFF;	if(chorus_spt1 < 0) {chorus_spt1 += chorus_rpt0;}		for(i=0;i<count;i++) {		v1l = chorus_buf0_L[chorus_spt0];		v1r = chorus_buf0_R[chorus_spt1];		chorus_wpt1 = chorus_wpt0;		if(++chorus_wpt0 == chorus_rpt0) {chorus_wpt0 = 0;}		f0 = imuldiv16(chorus_lfo0[imuldiv24(chorus_cnt0, div)], depth);		chorus_spt0 = chorus_wpt0 - delay - (f0 >> 8);		f0 &= 0xFF;		if(chorus_spt0 < 0) {chorus_spt0 += chorus_rpt0;}		f1 = imuldiv16(chorus_lfo1[imuldiv24(chorus_cnt0, div)], depth);		chorus_spt1 = chorus_wpt0 - delay - (f1 >> 8);		f1 &= 0xFF;		if(chorus_spt1 < 0) {chorus_spt1 += chorus_rpt0;}		if(++chorus_cnt0 == chorus_cyc0) {chorus_cnt0 = 0;}		output = v1l + imuldiv8(chorus_buf0_L[chorus_spt0] - v1l, f0);		chorus_buf0_L[chorus_wpt1] = chorus_effect_buffer[i] + imuldiv24(output, feedback);		output = imuldiv24(output, level);		buf[i] += output;		effect_buffer[i] += imuldiv24(output, send_reverb);		delay_effect_buffer[i] += imuldiv24(output, send_delay);		chorus_effect_buffer[i] = 0;		output = v1r + imuldiv8(chorus_buf0_R[chorus_spt1] - v1r, f1);		chorus_buf0_R[chorus_wpt1] = chorus_effect_buffer[++i] + imuldiv24(output, feedback);		output = imuldiv24(output, level);		buf[i] += output;		effect_buffer[i] += imuldiv24(output, send_reverb);		delay_effect_buffer[i] += imuldiv24(output, send_delay);		chorus_effect_buffer[i] = 0;	}#endif /* OPT_MODE != 0 */}
4357	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4357/a0a868ae7b24ab45ed2530ad583ca81a77566781/reverb.c/buggy/timidity/reverb.c