;--------------------------------;
; Pinkston Delay Instruments 8-9 ;
;--------------------------------;

	sr	=	22050
	kr	=	2205
	ksmps	=	10
	nchnls	=	1

	instr	8	;soundin instrument
gasend	init	0	;init the global var
idry	=	p4	;amt of signal to out
iwet	=	p5	;amt of signal to effect
ainput	soundin	p6	
	out	ainput*idry	
gasend	=	gasend+ainput*iwet	
	endin		
;=========================================================			
	instr	9	;harmonizer instr
igain	=	p4	;overall gain
idelay	=	p5	;n seconds delay
insemis	=	p6	;n semitones to shift
ifeed	=	p7	;feedback factor
ilfohz	=	p8	;LFO freq
ifract	=	insemis/12	;fraction of an oct
ibasehz	=	cpsoct(8)	;middle c as basis
inewhz	=	cpsoct(8+ifract)	;desired rel pitch
iratio	=	inewhz/ibasehz	;ratio new hz to old
irate	=	(iratio-1)/idelay	;subtract 1/1 speed
krate	init	irate	;copy to kvar
	if	(ilfohz==0)	goto continue
krate	oscili	irate,ilfohz,2	;LFO sine fn
continue:			
kenv	linen	igain,.01,p3,.05	;overall env control
actl1	phasor	-irate	;moving phase 1-0
agate1	tablei	actl1,1,1,0,1	;triangle window func
actl2	phasor	-irate,.5	;phase offset of .5
agate2	tablei	actl2,1,1,0,1	;triangle window func
ajunk	delayr	idelay	;alloc delay line
asig1	deltapi	actl1*idelay	;2 variable taps
asig2	deltapi	actl2*idelay	;offset 1/2 buff len
asig1	=	asig1*agate1	;gate tap outputs
asig2	=	asig2*agate2	;separately
asum	=	asig1+asig2	;and sum
ainput	=	gasend+asum*ifeed	
	delayw	ainput	
	out	asum*kenv	;overall envelope
gasend	=	0	;zero global variable
	endin					
	


;Sample Score for Pinkston Delay Chapter Instruments 8-9
f01	0	513	20	3	;triangle window fn
f02	0	513	10	1	;sine fn
; Play soundin.890 - a single cello sample
;	st	dur	dry	wet	soundin#
i08	0	2	0	1	890			
; arpeggio: harmonize up 5 semitones with feedback
;	st	dur	gain	delay	nsemis	ifeed	lfohz	
i09	0	4	.45	.33	5	.9	0	
; Play soundin.891 - a single timpani stroke
;	st	dur	dry	wet	soundin#
i08	4	2	0	1	891			
; gliss: harmonize down .1 semitones with max feedback
;	st	dur	gain	delay	nsemis	ifeed	lfohz	
i09	4	4	.4	.0123	-.1	.99	0	
; Play soundin.892 - a single bass sample
;	st	dur	dry	wet	soundin#
i08	8	4	.5	.8	892			
; flange: +/- .2 semitones with feedback and slow lfo
;	st	dur	gain	delay	nsemis	ifeed	lfohz	
i09	8	4.5	.75	.05	-.2	.7	.5	
e		


Download delins89.orc

Download delsnds.zip

Download delins89.sco