This is dliget.c in view mode; [Download] [Up]
extern float SR; float dliget(a,wait,l) float *a,wait; int *l; { /* get interpolated value from delay line, wait seconds old */ register im1; float x = wait * SR; register i = x; float frac = x - i; i = *l - i; im1 = i - 1; if(i <= 0) { if(i < 0) i += *(l+1); if(i < 0) return(0.); if(im1 < 0) im1 += *(l+1); } return(*(a+i) + frac * (*(a+im1) - *(a+i))); }
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.