-- url: "/home/pln/Work/Art/GLITCHWAVE/outputs/decolle.gif"
do
-- resetCycles
setcps (120/60/4)
d1 $ gF1 $ gM1
  $ midiOn  "^41" (<| "k k . k(<2 2 [2 4] <3 4 3 5>>,8)")
  $ midiOff "^41" (<| "k . ~ k ~ <~!3 k*2>")
  $ fix ((|* gain 0.9) . (# lpf 1000)) "jazz"
  -- $ fix ((# att 0.02) . (# rel 0.5) . (# lpf 400)) "kick:4"
  $ "[jazz,kick:4]"
  # gain 1.1
  # lpf 300
d2 $ gF1 $ gM2 
  $ midiOff "^42" (<| "~ . s@3 <~ s*<1 <2 [4 2]>>>")
  $ midiOn "^42"  (<| "~ s ~ <s!3 s*<2 [4 2]>>")
  $ fix (# lpf 4000) "snare:30"
  $ "[vec1_snare:38]" 
  # lpf 4800 
  # gain 1.3
  # cut 2
d3 $ gF1 $ gM2 -- Hihat
  $ midiOn "^43" (ply "2 <2!3 4>")
  -- FIXME(#94) d3 drives more controls than the grid gives it (BT3 only — BL1-3 are the family mutes). ^44 now belongs to another orbit, so this step STILL FIRES ACROSS COLUMNS — turning ^44 for its new owner also moves this. NOT commented out: this is a `$`-step and something above it is a partial application waiting for it, so removing it would stop the whole block compiling. Fold it onto d3's own control with gSel.
  -- FIXME(#94) d3 drives more controls than the grid gives it (BT3 only — BL1-3 are the family mutes). ^44 now belongs to another orbit, so this step STILL FIRES ACROSS COLUMNS — turning ^44 for its new owner also moves this. NOT commented out: this is a `$`-step and something above it is a partial application waiting for it, so removing it would stop the whole block compiling. Fold it onto d3's own control with gSel.
  $ midiOn "^44" (ply "2 <2!3 4>")
  $ "~ h ~ h ~ h*<1 2 1 <1 [4 2]>> ~ h*<1 <1 1 0 2> 1 <2 4>>" 
  -- # "db:0" 
  # "h2ogmhh" 
  -- # attbus 32 (slow 32 $ range 0.4 0.04 saw)
  # legato (range 0.1 0.5 "^31") 
  # room 0.2 
  # dry 1.3  
  # gain 2.9
  # pan 0.3
d8 $ gF1 $ gM2 -- BROKEN BEAT | BREAKS STACK 
  -- FIXME(#94) d8 drives more controls than the grid gives it (BT8 + BL8). ^60 now belongs to another orbit, so this step STILL FIRES ACROSS COLUMNS — turning ^60 for its new owner also moves this. NOT commented out: this is a `$`-step and something above it is a partial application waiting for it, so removing it would stop the whole block compiling. Fold it onto d8's own control with gSel.
  $ midiOff "^60" (mask "t(4,8,1)" . chop 4)
  $ loopAt 2 $ chop 16
  $ midiOn "^92" (ply "<2 [2 4]>")
  $ midiOn "^60" ( -- Broken Beat!
    whenmod 8 "<7 7 7 3>" rev 
  . splice 8 "0 3 2 7 . [1 5]*<1!3 2> [4 6]*<1 2>")
  $ midiOn "^36" ((|* gain 1.1) . (# n "29"))
  $ midiOn "^56" (loopAt 2 . (# n "19"))
  $ loopAt 0.5 $ "jungle_breaks:95"
  # pan 0.7
  # gain 1.45
  # lpf 4000
d7 $ gF1 $ gM3
  $ midiOff "^59" (mask "t(4,8,1)" . chop 4)
  -- $ jux (rev . (# cut 71))
  -- $ slice 16 (run 8) 
  $ loopAt 2
  $ chop 8 
  $ "trance_loops:1" 
  # pan "0.2 0.8"
  # cut 7
  # gain 1.3
d10 -- FIXME Other RISER
  $ chop 4
  $ mask "<f!24 t!8>"
  $ loopAt 8
  $ "risers:8"
  # cut 10
  # hpf 2000
d11 $ gF1 $ gM3 
  $ "~ h ~ [h*2 ~]" 
  # "h2ogmcy" # n "<1 1 1 1 2 2 3 2 3 4 3 2>" 
  # gain 1.2 
  # room 0.4 # sz 0.9 
  # delay 0.4
  # pan (slow 16 $ range 0.2 0.8 sine)
  -- # octer 0.5
  # cut 11
