CC-BY-SA www.triceratupuz.altervista.org triceratupuz@libero.it -iadc -odac -m3 -d Organoise
InputVol
current Note:
WG feedback
Filter resonance

Delays

Delay1 - Current tempo:
Dly 1 In
HP
LP
Feedback
Pan Move
Delay2 - Current tempo:
Dly 2 In
HP
LP
Feedback
Pan Move
Delay2 - Current tempo:
Dly 2 In
HP
LP
Feedback
Pan Move

Reverb

rev input
Room
LP

Nothing

More

sr = 48000 ksmps = 256 nchnls = 2 0dbfs = 1 zakinit 4, 10; a, k opcode AtanLimit, a, a ain xin aout = 2 * taninv(ain) / 3.1415927 xout aout endop gkBpm init 60 instr 1;controllers ;inVolume k_inVol init 0 k_inVol_ chnget "InVol" if k_inVol_ != 0 then k_inVol = k_inVol_ endif zkw k_inVol, 0 ;base note k_innote init 0 k_innote_ chnget "currentnote" if k_innote_ != 0 then k_innote = k_innote_ endif zkw k_innote, 1 ;Wawguide Feedback k_wgFeed init 0 k_wgFeed_ chnget "wgFeed" if k_wgFeed_ != 0 then k_wgFeed = k_wgFeed_ endif zkw k_wgFeed, 2 ;Filter Resonance k_resoVol init 0 k_resoVol_ chnget "resoVol" if k_resoVol_ != 0 then k_resoVol = k_resoVol_ endif zkw k_resoVol, 3 ;k_bpm init 0 k_bpm_ chnget "BpM" if k_bpm_ != 0 then gkBpm = k_bpm_ endif printk2 gkBpm ;schedule other instruments event_i "i", 2, 0, -1 event_i "i", 4, 0, -1 event_i "i", 15, 0, -1 event_i "i", 16, 0, -1 event_i "i", 17, 0, -1 event_i "i", 100, 0, -1 endin instr 2;Slider input ainl, ainr ins kinV zkr 0 alimit AtanLimit (ainl + ainr) zawm alimit * kinV, 0 endin instr 4;wg & Filter ain zar 0 k_innote zkr 1 k_innotep port k_innote, 0.05 ;Waveguide k_wgFeed zkr 2 k_wgFeedp port k_wgFeed, 0.01 klp init 6000 awg5 wguide1 ain, cpspch(5 + 0.01 * k_innotep), klp, k_wgFeedp awg6 wguide1 ain, cpspch(6 + 0.01 * k_innotep), klp, k_wgFeedp awg7 wguide1 ain, cpspch(7 + 0.01 * k_innotep), klp, k_wgFeedp awg8 wguide1 ain, cpspch(8 + 0.01 * k_innotep), klp, k_wgFeedp awg9 wguide1 ain, cpspch(9 + 0.01 * k_innotep), klp, k_wgFeedp awg = (awg5 + awg6 + awg7 + awg8 + awg9) * .2 ;Filter k_resoVol zkr 3 k_resoVolp port k_resoVol, 0.01 amoo5 moogvcf ain, cpspch(5 + 0.01 * k_innotep), k_resoVolp amoo6 moogvcf ain, cpspch(6 + 0.01 * k_innotep), k_resoVolp amoo7 moogvcf ain, cpspch(7 + 0.01 * k_innotep), k_resoVolp amoo8 moogvcf ain, cpspch(8 + 0.01 * k_innotep), k_resoVolp amoo9 moogvcf ain, cpspch(9 + 0.01 * k_innotep), k_resoVolp amoo = (amoo5 + amoo6 + amoo7 + amoo8 + amoo9) * .2 ;Out aout AtanLimit awg + amoo zawm aout, 1 endin instr 15;delay 1 ain zar 1 ;Time calculation k_curt init 0 k_curt_ chnget "currentTempo1" if k_curt_ != 0 then k_curt = k_curt_ endif kdltp port k_curt * 60 / gkBpm, 0.01 ;HP k_hp init 0 k_hp_ chnget "d1HP" if k_hp_ != 0 then k_hp = k_hp_ endif khpp port 50 + (sr/2 - 150)* k_hp * k_hp, 0.1 ;LP k_lp init 1 k_lp_ chnget "d1LP" if k_lp_ != 0 then k_lp = k_lp_ endif klpp port (sr/2 - 100) * k_lp * k_lp, 0.1 ;Feedback k_infeed init 0 k_infeed_ chnget "d1Feed" if k_infeed_ != 0 then k_infeed = k_infeed_ endif ;Delay abuf delayr 3.5 * 6 afeedt deltap kdltp afeedh buthp afeedt, khpp afeed butlp afeedh, klpp ;feedback limiter krms rms ain + afeed kpeak = 2.82885 * krms kfeed = (kpeak > k_infeed ? k_infeed / kpeak : k_infeed) kfeedp portk kfeed, .05 * (1 - krms) delayw ain + afeed * kfeedp afeedl AtanLimit afeed ;Panning control k_pm init 0 k_pm_ chnget "d1pm" if k_pm_ != 0 then k_pm = k_pm_ endif k_pmp port k_pm * .5, 0.01 ;panning klfo lfo k_pmp, 3 / kdltp adlyl, adlyr pan2 afeedl, 0.5 + klfo zawm adlyl, 2 zawm adlyr, 3 endin instr 16;delay 2 ain zar 1 ;Time calculation k_curt init 0 k_curt_ chnget "currentTempo2" if k_curt_ != 0 then k_curt = k_curt_ endif kdltp port k_curt * 60 / gkBpm, 0.01 ;HP k_hp init 0 k_hp_ chnget "d2HP" if k_hp_ != 0 then k_hp = k_hp_ endif khpp port 50 + (sr/2 - 150)* k_hp * k_hp, 0.1 ;LP k_lp init 1 k_lp_ chnget "d2LP" if k_lp_ != 0 then k_lp = k_lp_ endif klpp port (sr/2 - 100) * k_lp * k_lp, 0.1 ;Feedback k_infeed init 0 k_infeed_ chnget "d2Feed" if k_infeed_ != 0 then k_infeed = k_infeed_ endif ;Delay abuf delayr 3.5 * 6 afeedt deltap kdltp afeedh buthp afeedt, khpp afeed butlp afeedh, klpp ;feedback limiter krms rms ain + afeed kpeak = 2.82885 * krms kfeed = (kpeak > k_infeed ? k_infeed / kpeak : k_infeed) kfeedp portk kfeed, .05 * (1 - krms) delayw ain + afeed * kfeedp afeedl AtanLimit afeed ;Panning control k_pm init 0 k_pm_ chnget "d2pm" if k_pm_ != 0 then k_pm = k_pm_ endif k_pmp port k_pm * .5, 0.01 ;panning klfo lfo k_pmp, 3 / kdltp adlyl, adlyr pan2 afeedl, 0.5 + klfo zawm adlyl, 2 zawm adlyr, 3 endin instr 17;delay 3 ain zar 1 ;Time calculation k_curt init 0 k_curt_ chnget "currentTempo3" if k_curt_ != 0 then k_curt = k_curt_ endif kdltp port k_curt * 60 / gkBpm, 0.01 ;HP k_hp init 0 k_hp_ chnget "d3HP" if k_hp_ != 0 then k_hp = k_hp_ endif khpp port 50 + (sr/2 - 150)* k_hp * k_hp, 0.1 ;LP k_lp init 1 k_lp_ chnget "d3LP" if k_lp_ != 0 then k_lp = k_lp_ endif klpp port (sr/2 - 100) * k_lp * k_lp, 0.1 ;Feedback k_infeed init 0 k_infeed_ chnget "d3Feed" if k_infeed_ != 0 then k_infeed = k_infeed_ endif ;Delay abuf delayr 3.5 * 6 afeedt deltap kdltp afeedh buthp afeedt, khpp afeed butlp afeedh, klpp ;feedback limiter krms rms ain + afeed kpeak = 2.82885 * krms kfeed = (kpeak > k_infeed ? k_infeed / kpeak : k_infeed) kfeedp portk kfeed, .05 * (1 - krms) delayw ain + afeed * kfeedp afeedl AtanLimit afeed ;Panning control k_pm init 0 k_pm_ chnget "d3pm" if k_pm_ != 0 then k_pm = k_pm_ endif k_pmp port k_pm * .5, 0.01 ;panning klfo lfo k_pmp, 3 / kdltp adlyl, adlyr pan2 afeedl, 0.5 + klfo zawm adlyl, 2 zawm adlyr, 3 endin instr 100;output ;Room k_rRoom init 0.5 k_rRoom_ chnget "rRoom" if k_rRoom_ != 0 then k_rRoom = k_rRoom_ endif k_rRoomp port k_rRoom, 0.05 ;Room k_rLp init 0.5 k_rLp_ chnget "rLp" if k_rLp_ != 0 then k_rLp = k_rLp_ endif k_rLpp port k_rLp * k_rLp * 13000, 0.05 ;Output Volume k_voOut init 0.25 k_voOut_ chnget "voOut" if k_voOut_ != 0 then k_voOut = k_voOut_ endif k_voOutp port k_voOut, 0.05 ain zar 1 adlyl zar 2 adlyr zar 3 alin = (ain + adlyl) * k_voOutp arin = (ain + adlyr) * k_voOutp aleft, aright reverbsc alin, arin, k_rRoomp, k_rLpp aleftl AtanLimit aleft arightl AtanLimit aright outs aleftl, arightl ; record output fout "/mnt/sdcard/organoise_yyyymmdd.wav", 14, aleftl, arightl; or 16 ;clean z space zacl 0, 4 zkcl 0, 9 endin i 1 0 36000