These subroutines generate composite waveforms made up of weighted sums of simple sinusoids. The specification of each contributing partial requires 1 pfield using GEN10.
size -- number of points in the table. Must be a power of 2 or power-of-2 plus 1 (see f statement).
str1, str2, str3, etc. -- relative strengths of the fixed harmonic partial numbers 1,2,3, etc., beginning in p5. Partials not required should be given a strength of zero.
![]() | Note |
---|---|
|
Here is a simple example of the GEN10 routine. It uses the files gen10.orc and gen10.sco. It will generate a simple sine wave. Here is its diagram:
Diagram of the waveform generated by GEN10.
Example 1. A simple example of the GEN10 routine.
/* gen10.orc */
; Initialize the global variables.
sr = 44100
kr = 4410
ksmps = 10
nchnls = 1
; Instrument #1.
instr 1
kamp = 30000
kcps = 440
ifn = 1
; Play the sine wave stored in Table #1.
a1 oscil kamp, kcps, ifn
out a1
endin
/* gen10.orc */
/* gen10.sco */
; Table #1: a simple sine wave (using GEN10).
f 1 0 16384 10 1
; Play Instrument #1 for 2 seconds.
i 1 0 2
e
/* gen10.sco */