resetCycles

-- BOOM
do
setcps (100/60/4)
d1
  $ "b . b(<1!3 3>,8,3)"
  # "jazz"
  # gain 0.8
d2
  $ sometimesBy 0.8 (fast 2)
  $ fast "4 8"
  $ "[drum:8,cpu2:8]"
  # gain 0.85
  # pan 0.3
d4 -- Boom steps
  $ mask "<f!4 t f!3 t!8 f!4 t f!3 t f!3 f!3 t> t!7"
  $ slice 8 (
    "<0!3 <2 7>> <1!7 7> <2!7 6> <3!3 <0 7>>"
    )
  $ loopAt 2
  $ "fbreak100"
  # n 5
  # pan 0.75
  # gain 0.65
  # cut 3

once $ note ("c3'min")
# "marimba" # gain 1.2

do
d1
  $ loopAt 1
  $ "breaks125:1"
  # cps ("<125!2 120 125>"/60/4)
  # gain 0.35
  # cut 1
d2 --
  $ "hh*[8 . <[8 16]!3 4>]"
  # gain (slow 64 $ range 0.35 0.55 sine)
  # cut 2


-- Danse des Sirenes
do
-- resetCycles
setcps (80/60/4)
let chords = "<cs4 <b3!3 e4>>"
d1
  $ mask "<f!8 t!24>"
  $ "jazz*4"
  # lpf (slow 64 $ range 0 10000 saw)
  # gain (slow 64 $ range 0.65 1.05 saw)
d2
  $ mask "<f!3 t!29>"
  $ sometimesBy (slow 16 $ sine) (off "-0.125" id)
  $ whenmod 32 16 (|<| "hh*<16 16 [32 16] 16>")
  $ "hh(<1 2>,8)"
  # gain 0.65
  # room 0.5 # dry 0.95
d3
  $ mask "<f!16 t!48>"
  $ chop (
    "<1!4 2!4 0.5!4 1!4>"
  * "<1!16 2!8 [4 2]!8>"
  -- * "[<2 4>|<4 2>]"
  )
  $ note (chords - 12)
  # "bassWarsaw"
  # gain 0.65
  # room 0.8
  # cut 3
d4
  $ mask "<t!16 f!4 t!3 f>"
  $ superimpose (
    (fast 4)
    . (|- note 12)
    . (# cut 31)
  )
  $ loopAt 2
  $ "fepiano"
  # room (slow 64 $ range 0 0.5 saw)
  # lpf (slow 64 $ range 5000 10000 saw)
  # gain (slow 64 $ range 0.6 0.35 isaw)
  # sz 0.5
  # legato 2
  # cut 3
  # pan 0.7
d5
  $ mask "<t!4 f!16 t!4 f!4 f!3 t!4 f>"
  $ note ("0/2" + chords)
  # "supersiren"
  # gain 0.3
  # sustain "<16!4 8!28>"
  # cut 5
  # pan 0.2
  # room 0.3
d8
  $ mask "<f!32 t!32>"
  $ n ("<<0!3 <2!4 3!4>> <2!4 3!4>>*4")
  # "kurt"
  # gain 0.55
  # pan "0.4 0.6"


d3 -- Marimbodance
  $ (<| "k(<<5 3> 5 3 [5 8]>,8)")
  $ off "h" id
  $ whenmod 8 4 (scramble 2)
  $ note (
    scale "locrian" (run 8)
  )
  # "marimba1"
  # pan 0.2
  # gain 0.7
  # room 0.6
  # size 0.5

scaleList

d3
  $ loopAt 2
  -- $ splice 8 "0 1 2 3 2 3 6 7"
  $ "fbreak100"
  # n 6
  # gain 0.95
  # cut 3

once
$ "fbreak100"
# n 3
# gain 0.85
# cut 1