Back in 1991, when I first moved to York, I studied Music Technology and was first exposed to both the Composer's Desktop Project (CDP) and CSound. At the beginning of the year, we were running these on Atari STs which meant that a lot of pondering was done before actually creating soundless because it would typically take overnight. When we later had access to Silicon Graphics' Indigo machines, we were able to do *real-time audio* (This was a big thing in '92 for us!). Fast-forward to today and I have more computing power on my lap than was ever in one of those glorious Indigo boxes…
Anyway, in memory of those days I thought I'd download CSound and play with it again. It's even got a GUI now, tchah!
This is in three movements; same notes in each. Movement 2 uses a different instrument from Movements 1 & 3, whilst Movement 3 is a recapitulation of Movement 1, but 10 times as fast.
from
365/2015,
track released March 12, 2015
<CsoundSynthesizer>
<CsOptions>
</CsOptions>
<CsInstruments>
sr = 44100
ksmps = 128
nchnls = 2
0dbfs = 1.0
gal init 0
gar init 0
instr 1
k1 adsr p3 * 0.9, p3*0.1, 0, 0
k2 line 0, p3, 0.2
a1 oscil k1 * p5, p4, 1
a2 oscil k1 * p5, (1+k2) * p4, 1
outs a1,a2
gal = a1
gar = a2
endin
instr 2
k1 adsr p3 * 0.9, p3*0.1, 0, 0
k2 line 0, p3, 0.2
k3 oscil p5, 1.0
k4 oscil p5, 1.01
a1 oscili k1 * k3, p4, 1
a2 oscili k1 * k4, (1+k2) * p4, 1
outs a1,a2
gal = a1
gar = a2
endin
instr 99 ;(highest instr number executed last)
arvL,arvR freeverb gal, gar, 1, 0, sr, 0
outs arvL,arvR
ga1 = 0 ;clear
gar = 0 ;clear
endin
</CsInstruments>
<CsScore>
f1 0 4096 10 1 0.4 ; use GEN10 to compute a sine wave
;ins strt dur
i1 0 60 110 0.3
i1 20 60 55 0.3
i1 40 60 220 0.3
i1 60 60 110 0.3
i1 80 60 146.83 0.3
i1 100 60 293.66 0.3
i1 120 60 73.42 0.3
i1 140 60 196 0.3
i1 160 60 98 0.3
i1 180 60 49 0.3
i1 180 60 36.71 0.3
i1 180 60 55 0.3
s
i2 0 60 110 0.3
i2 20 60 55 0.3
i2 40 60 220 0.3
i2 60 60 110 0.3
i2 80 60 146.83 0.3
i2 100 60 293.66 0.3
i2 120 60 73.42 0.3
i2 140 60 196 0.3
i2 160 60 98 0.3
i2 180 60 49 0.3
i2 180 60 36.71 0.3
i2 180 60 55 0.3
i99 200 60
s
i1 0 6 110 0.3
i1 2 6 55 0.3
i1 4 6 220 0.3
i1 6 6 110 0.3
i1 8 6 146.83 0.3
i1 10 6 293.66 0.3
i1 12 6 73.42 0.3
i1 14 6 196 0.3
i1 16 6 98 0.3
i1 18 6 49 0.3
i1 18 6 36.71 0.3
i1 18 6 55 0.3
i99 0 40
e ; indicates the end of the score
</CsScore>
</CsoundSynthesizer>