This is gen24.c in view mode; [Download] [Up]
#include "/musr/H/ugens.h" gen24(gen) register struct gen *gen; { float scaler,amp2,amp1; int j,k,l; int i = 0; scaler = ((float) gen->size)/gen->pvals[gen->nargs-2]; amp2 = gen->pvals[1]; for(k = 1; k < gen->nargs; k += 2) { amp1 = amp2; amp2 = gen->pvals[k+2]; j = i + 1; i = gen->pvals[k+1]*scaler + 1; for(l=j; l<=i; l++) { if(l <= gen->size) gen->array[l-1] = amp1 + (amp2-amp1) * (float)(l-j) / (i-j+1); } } fnscl(gen); }
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.