diff options
Diffstat (limited to 'BUG5/instruments.udo')
-rw-r--r-- | BUG5/instruments.udo | 52 |
1 files changed, 43 insertions, 9 deletions
diff --git a/BUG5/instruments.udo b/BUG5/instruments.udo index 834f942..356d775 100644 --- a/BUG5/instruments.udo +++ b/BUG5/instruments.udo @@ -18,7 +18,12 @@ instr play_hat1 idel1 = random(0.01, 0.03) idel2 = random(0.01, 0.03) xtratim(max(idel1, idel2)) - p3 = 0.22 + isection = i(gksection) + if (isection == 5 || isection == 6 || isection == 7) then + p3 = 0.15 + else + p3 = 0.22 + endif kfreq linseg 1000, p3*0.2, 300, p3*0.8, 500 ; mid as 500 not 300 aenv expsega .1, .0005, 1, p3 - .0005, .01 asqr1 oscil 1, kfreq, gifnSquare, -1 @@ -53,7 +58,7 @@ instr play_hat2 a808 sum asqr1, asqr2, asqr3, asqr4, asqr5, asqr6 a808 butterhp a808, 3270 a808 butterhp a808, 3270 - aout = a808 * aenv * iamp + aout = a808 * aenv * iamp * 0.8 aL delay aout, idel1 aR delay aout, idel2 bus_mix("master", aL, aR) @@ -66,7 +71,7 @@ instr play_bass a1 pareq a1, 150, 0.24, 0.9 a1 pareq a1, 80, 1.3, 0.9 kenv linseg 1, p3, 0 - aout = a1*kenv + aout = a1*kenv * 1.2 bus_mix("master", aout, aout) endin @@ -261,6 +266,33 @@ instr play_303 bus_mix("master", aL*0.8, aR*0.8) endin +instr play_303b + iamp = bid_getparameter(p4, p5, 2) + ifilter = random(70, 90) + inote1 = cpsmidinn(tab_i(ftlen(gibid_chordfn) - 4, gibid_chordfn) + 12) + inote2 = cpsmidinn(tab_i(ftlen(gibid_chordfn) - 3, gibid_chordfn) + 12) + + ifrq1 = 440 * exp(log(2) * (ifilter - 69) / 12) ; filter start freq. + kcps linseg inote1, p3*0.2, inote1, p3*0.6, inote2, p3*0.2, inote2 + kffrq port 0, 60/150, ifrq1 ; filter frequency + a1 phasor kcps ; oscillator + a1 = 1 - 2 * a1 + + a1x butterbp a1, kffrq, kcps * 1.0 ; filters + a1x = a1x * (2 + kffrq / kcps) ; correct amplitude + a1 = a1x + a1 * 0.25 ; 0.5 + a1 butterlp a1, kffrq + + a1 = taninv(a1 * 2.5 * iamp) + + keqf limit kffrq * 4, 10, sr * 0.48 ; EQ frequency + a1 pareq a1 * 0.4, keqf, 4.0, 1.0, 2 + a1 butterhp a1, 250 + aL, aR pan2 a1, random(0.3, 0.7) + bus_mix("reverb", aL*1.3, aR*1.3) + bus_mix("master", aL*0.5, aR*0.5) +endin + instr chord1 inote = p4 iamp = p5 @@ -279,16 +311,18 @@ instr chord1 aR tablei (aphs2+a1)+av1R+koda, gifnSine, 1, 0, 1 kfi linseg 0, p3*0.2, 1, p3*0.8, 1 - aL phaser1 aL*kfi, oscil:k(7400, 0.1, gifnSine, random(0, 0.5)) + 1000, 8, .9 - aR phaser1 aR*kfi, oscil:k(7400, 0.1, gifnSine, random(0, 0.5)) + 1000, 8, .9 + isection = i(gksection) + if (isection == 3 || isection == 4 || isection == 5 || isection == 6) then + aL butterlp aL, 600 + aR butterlp aR, 600 + else + aL phaser1 aL*kfi, oscil:k(7400, 0.1, gifnSine, random(0, 0.5)) + 1000, 8, .9 + aR phaser1 aR*kfi, oscil:k(7400, 0.1, gifnSine, random(0, 0.5)) + 1000, 8, .9 + endif aL *= 0.16 * iamp aR *= 0.16 * iamp aL butterhp aL, 520 aR butterhp aR, 520 - if (i(gksection) == 3) then - aL butterlp aL, 1000 - aR butterlp aR, 1000 - endif bus_mix("delay1", aL, aR) ;bus_mix("master", aL, aR) endin |