Index: src/backend/CSoundPlayerChannel.cpp
===================================================================
RCS file: /cvsroot/rezound/rezound/src/backend/CSoundPlayerChannel.cpp,v
retrieving revision 1.37
diff -c -r1.37 CSoundPlayerChannel.cpp
*** src/backend/CSoundPlayerChannel.cpp	21 Aug 2005 01:01:15 -0000	1.37
--- src/backend/CSoundPlayerChannel.cpp	9 Nov 2005 07:55:36 -0000
***************
*** 721,728 ****
  			if(!muted[i])  // ??? this memory needs to be locked for JACK's sake
  			{
  				// populate for interpolation
! 				readBuffer[-(2*channelCount)+i]=prevLast2Frames[0][i]; 
! 				readBuffer[-   channelCount +i]=prevLast2Frames[1][i];
  				const sample_t * const rreadBuffer=readBuffer-(2*channelCount);
  
  				const vector outputRouting=getOutputRoute(0,i); // ??? this needs to be put into a data member of memory NOT TO BE SWAPPED for jack's sake and it needs to be updated in updateAfterEdit()
--- 721,728 ----
  			if(!muted[i])  // ??? this memory needs to be locked for JACK's sake
  			{
  				// populate for interpolation
! 				readBuffer[-(2*(int)channelCount)+(int)i]=prevLast2Frames[0][i]; 
! 				readBuffer[-   (int)channelCount +(int)i]=prevLast2Frames[1][i];
  				const sample_t * const rreadBuffer=readBuffer-(2*channelCount);
  
  				const vector outputRouting=getOutputRoute(0,i); // ??? this needs to be put into a data member of memory NOT TO BE SWAPPED for jack's sake and it needs to be updated in updateAfterEdit()
***************
*** 765,772 ****
  			}
  
  			// save the last 2 samples and (later) the offset into the next-to-last so that we can use it for interpolation the next go around
! 			prevLast2Frames[0][i]=readBuffer[((framesRead-2)*channelCount)+i];
! 			prevLast2Frames[1][i]=readBuffer[((framesRead-1)*channelCount)+i];
  		}
  
  		// if all channels were muted, or none were mapped to an output device then this value never got set
--- 765,772 ----
  			}
  
  			// save the last 2 samples and (later) the offset into the next-to-last so that we can use it for interpolation the next go around
! 			prevLast2Frames[0][i]=readBuffer[(((int)framesRead-2)*(int)channelCount)+(int)i];
! 			prevLast2Frames[1][i]=readBuffer[(((int)framesRead-1)*(int)channelCount)+(int)i];
  		}
  
  		// if all channels were muted, or none were mapped to an output device then this value never got set
Index: src/backend/DSP/Convolver.h
===================================================================
RCS file: /cvsroot/rezound/rezound/src/backend/DSP/Convolver.h,v
retrieving revision 1.6
diff -c -r1.6 Convolver.h
*** src/backend/DSP/Convolver.h	22 Jul 2003 21:12:00 -0000	1.6
--- src/backend/DSP/Convolver.h	9 Nov 2005 07:55:36 -0000
***************
*** 64,70 ****
  	const sample_t processSample(const sample_t input)
  	{
  		coefficient_t output=input*coefficients[0];
! 		for(size_t t=coefficientCountSub1;t>0;t--)
  			output+=delay.getSample(t)*coefficients[t];
  
  		delay.putSample((coefficient_t)input);
--- 64,70 ----
  	const sample_t processSample(const sample_t input)
  	{
  		coefficient_t output=input*coefficients[0];
! 		for(unsigned t=coefficientCountSub1;t>0;t--)
  			output+=delay.getSample(t)*coefficients[t];
  
  		delay.putSample((coefficient_t)input);

