-- url: "/home/pln/Work/Art/GLITCHWAVE/outputs/decolle.gif"



once $ "ai_welcome:12" # cut 9 # orbit 8 
# gain 1.6


-- Feature
once $ "ai_raise:5" 
# gain 1.8
# begin 0.52
# end 0.66
-- # room 0.4
# cut 9 # orbit 8

-- Revolution
once $ "ai_raise:3" # cut 9 # orbit 8
# gain 1.8
# begin 0.8
# room 0.4 

-- The 4th
once 
  $ "ai_raise" 
  # n 4
  -- # begin 0.5 -- 0.8 
  # cut 9 # orbit 8
  # gain 1.5
  -- # room 0.24
 
once 
  $ slice 2 "1" "ai_raise:2" -- UNDERHYPed 
  # gain 2 # cut 9 # orbit 8


d9 
  $ struct "t(8,16)" 
  $ chop 8 $ "ai_raise:1"
 
-- Welcome.
once $ "ai_welcome:3" # orbit 8 #  cut 9
# gain 1.8 # delay 0 # delayfb 0
# end 0.58 -- Welcome
-- # speed 0.82
-- # crush 3.4
-- # hpf (slow 8 $ range 1200 0 sine)

-- OOOOH
once $ "ai_welcome:3" # orbit 8 #  cut 9
# end 0.5
# gain 2

d3
-- $ struct "t(4,8)" 
$ "ai_welcome:3" 
# orbit 8 #  cut 9
# begin 0
-- # octave 4
-- # begin 0.1 # end 0.6

once $ "ai_welcome:2" # orbit 8 #  cut 9
-- # begin 0.1 # end 0.6

d1 
  $ whenmod 4 3 (slice 4 "<0(3,8) 1>")
  $ "ai_welcome:3/2" # cut 1 # gain 1.4


do
-- resetCycles
setcps (120/60/4)
let gMask = (midiOn "^41" (mask "t . <f t f <f t>> <t f f <t f>>"))
let gMute = (midiOn "^73" (mask "f*16"))
let gMute2 = (midiOn "^74" (mask "f*16"))
let gMute3 = (midiOn "^75" (mask "f*16"))
let gM1 = gMask . gMute
let gM2 = gMask . gMute2
let gM3   = gMask . gMute3
d1 $ gF1 $ gM2
  $ midiOn  "^42" (<| "k k k k*2")
  $ midiOff "^42" (<| "k . ~ k ~ ~")
  $ fix ((|* gain 0.9) . (# lpf 1000)) "jazz"
  -- $ fix ((# att 0.02) . (# rel 0.5) . (# lpf 400)) "kick:4"
  $ "[jazz,kick:4]"
  # gain 1
d2 $ gF1 $ gM1 
  $ midiOff "^43" (<| "~ . s@3 <~ s*<1 <2 [4 2]>>>")
  $ midiOn "^43"  (<| "~ s ~ <s!3 s*<2 [4 2]>>")
  $ fix (# lpf 4000) "snare:30"
  $ "[snare:30]" 
  # lpf 2800 
  # gain 1.1
  # cut 2
d3 $ gF1 $ gM1 
  $ "~ h ~ h ~ h*<1 2 1 <1 [4 2]>> ~ h*<1 <1 1 0 2> 1 <2 4>>" 
  # "hh" 
  # att (slow 32 $ range 0.4 0.04 saw)
  # rel 2 
  # room 0.2 # dry 1.3  
  # gain 1.4
d4 $ gF2 $ gM3 
  $ midiOn "^57" (sometimesBy 0.5 ((|- note 12) . (# cut 41)))
  $ midiOn "^89" (ply 2)
  -- $ note ("d3" + scale "mixolydian" ("[<0!12 3!4> <4!12 6!4>]*4")) -- ORIGINAL.
  $ note ("d3" + scale "mixolydian" ( -- NICE VARIATIONS
    "[0 4 <0 [0 <5 6>] 0> 4 <0!3 2> 4 <0 2> 4]" + "<0!3 [4 6]*2!1>")
    )
  # "bassWarsaw" 
  -- # "bass3:3" |+ note 24
  # octersubbus 41 (range 0 2.5 "^33")
  # crushbus 42 (range 16 2.5 "^53")
  # roombus 43 (range 0 0.5 "^33")
  # gain 1.3
  # pan 0.3
  # cut 4 
d5 $ gF3 $ gM3 
  $ midiOn "^90" (ply 2)
  $ slow 16 $ chop 16 
  $ "airports" # cut 5
  # pan 0.3
  # delaybus 51 (range 0 0.8 "^54") 
  # delaytime "^34"
  # room 0.4 # sz 0.8 # dry 1.1
  -- # crushbus 51 (range 16 3.5 "^54")
d7 $ gF3 $ gM3 
  $ midiOn "^91" (ply "<2 4 <8 [16 8]>>")
  $ slow 4 
  $ midiOn "^55" (slow 4)
  $ slice 16 (run 6) 
  $ chop 16 
  $ "airports" # cut 5 # speed 0.5
  # gain 1.2
  # room 0.4
  # att 0.02
  # rel 2
  # freezebus 71 "^55"
  # pan 0.8
d8 $ gF1 $ gM1 -- BROKEN BEAT | BREAKS STACK 
  $ loopAt 2 $ chop 16
  $ midiOn "^92" (ply 2)
  $ 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" (# n "29")
  $ midiOn "^56" (# n "25") 
  $ "jungle_breaks:24"
d11 $ gM3 $ gF3 $ slice 4 (slow 4 $ run 4) $ "airports:1" 
  # cut 11 
  # pan (slow 16 $ range 0 0.4 saw)
  # lpf ("<6000 4500 3000 2000>")
d12 $ gM3 $ gF3 -- DRINK ME <3 
  -- $ slice 16 (slow 8 $ rev $ run 16) 
  $ (note "<d3 d3 <g3!3 fs3> <fs3!3 a4>>") 
  # "moogBass" 
  # cut 12 
  # pan (slow 16 $ range 1 0.6 saw)
  # room 0.8 # dry 0.4
d10 -- FIXME Other RISER
  $ chop 4
  -- $ mask "<f!24 t!8>"
  $ loopAt 8
  $ "risers:8"
  # cut 10
  # hpf 2000
  -- # octer 0.5
