module Weihnachten where import Music import MDL -- import Haskore -- Alle Jahre wieder ajw :: Music ajw = let o = 4 in (g o dqn :+: a o en :+: g o qn :+: f o qn) :+: (e o hn :+: d o hn) :+: (c o qn :+: d o en :+: e o en :+: f o qn :+: e o qn) :+: d o dhn :+: qnr :+: e o qn :+: g o qn :+: a o qn :+: g o qn :+: c (o+1) hn :+: b o qn :+: a o qn :+: g o qn :+: f o en :+: e o en :+: f o qn :+: g o qn :+: e o dhn :+: qnr ajw2 :: Music ajw2 = let o = 4 in (e o dqn :+: f o en :+: e o qn :+: d o qn) :+: (c o hn :+: b (o-1) hn) :+: (c o qn :+: b (o-1) en :+: c o en :+: d o qn :+: c o qn) :+: b (o-1) dhn :+: qnr :+: e o hn :+: f o qn :+: e o qn :+: a o hn :+: g o qn :+: f o qn :+: e o qn :+: d o en :+: c o en :+: d o qn :+: b (o-1) qn :+: c o dhn :+: qnr test1 = Tempo 2 $ Instr Flute ajw test2 = Tempo 2 $ Trans 5 (Instr Flute $ ajw :=: Instr HammondOrgan ajw2) fMaj = [ n 4 qn | n <- [f,a] ] ++ [c 5 qn] gMaj = [ n 4 qn | n <- [g,b] ] ++ [d 5 qn] dMaj = [ n 4 qn | n <- [d,ff,a] ] bMaj = [ n 4 qn | n <- [f,bs] ] ++ [d 5 qn] ajw3 :: [Music] ajw3 = let o = 4 in [n (o-1) f, chord fMaj, n (o-1) c, chord cMaj, n (o-1) f, chord fMaj, n (o-1) c, chord cMaj, chord fMaj, qnr, n (o-1) e, n (o-1) f, n (o-1) c, chord cMaj, chord cMaj, chord cMaj, n (o-1) f, chord fMaj, qnr, chord fMaj, n (o-1) bs, chord bMaj, chord bMaj, chord bMaj, n (o-1) f, chord fMaj, n (o-1) c, chord cMaj, n (o-1) f, n (o+1) c, chord fMaj, qnr] where n o p = p o qn test3 = Tempo 2 ((Trans 5 (Instr Flute $ ajw :=: Instr Flute ajw2)) :=: Instr HammondOrgan (line ajw3)) -- mehrere Strophen repeatNM :: Int -> Music -> Music repeatNM 0 m = Rest 0 repeatNM n m = m :+: repeatNM (n-1) m test4 = repeatNM 3 test3 -- rückwärts -- revM :: Music -> Music test5 = revM test3 -- Begleitung begleit = let p1 = perc LowTom qn p2 = perc AcousticSnare en in Tempo 2 (Instr Percussion (cut 8 (repeatM ((p1 :+: qnr :+: p2 :+: qnr :+: p2 :+: p1 :+: p1 :+: qnr :+: p2 :+: enr) :=: roll en (perc ClosedHiHat 2) ) ))) test6 = test3 :=: begleit