boscili(amp,si,farray,len,phs,array,alen)      
float amp,si,*farray,*phs,*array;
register len,alen;
{
        register i,j,k;
        float frac,temp;
        float *fp = array; 
        temp = *phs;
        for (j=alen;j>0;--j) { 
		i =  temp;        
       		k =  (i + 1) % len;  
		frac = temp  - i;      
		temp += si;                 
		while(temp >= len)
			temp -= len;       
 		*fp++ = ((*(farray+i) + (*(farray+k) - *(farray+i)) *
		frac) * amp);
        	}
        *phs=temp;
        return(j);
	}
