-- maquinitas-tidal -- parameters for instruments by Korg module Boss.DR880 where import qualified Sound.Tidal.Params import Sound.Tidal.Pattern -- Drum machine 1 drum1 :: Pattern String -> ControlPattern drum1 = Sound.Tidal.Params.n . (subtract 60 . drum1midi <$>) drum1midi :: Num a => String -> a drum1midi m = case m of "kick1" -> 36 "kick2" -> 35 "snare1" -> 38 "snare2" -> 40 "closedHH" -> 42 "crossStick" -> 37 "clap" -> 39 "cowbell" -> 56 "pedalHH" -> 44 "openHH" -> 46 "tom1" -> 50 "tom2" -> 48 "tom3" -> 45 "tom4" -> 41 "chinaCym" -> 52 "crash1" -> 49 "crash2" -> 57 "splashCym" -> 55 "bell" -> 53 "ride" -> 51 _ -> 0 -- no match -- Drum machine 2 drum2 :: Pattern String -> ControlPattern drum2 = Sound.Tidal.Params.n . (subtract 60 . drum2midi <$>) drum2midi :: Num a => String -> a drum2midi m = case m of "kick1" -> 60 "kick2" -> 61 "snare1" -> 62 "snare2" -> 63 "closedHH" -> 64 "crossStick" -> 54 "clap" -> 91 "cowbell" -> 95 "pedalHH" -> 96 "openHH" -> 97 "tom1" -> 69 "tom2" -> 94 "tom3" -> 70 "tom4" -> 82 "chinaCym" -> 92 "crash1" -> 89 "crash2" -> 90 "splashCym" -> 93 "bell" -> 84 "ride" -> 59 _ -> 0 -- no match -- Drum machine 3 drum3 :: Pattern String -> ControlPattern drum3 = Sound.Tidal.Params.n . (subtract 60 . drum3midi <$>) drum3midi :: Num a => String -> a drum3midi m = case m of "kick1" -> 86 "kick2" -> 87 "snare1" -> 78 "snare2" -> 79 "closedHH" -> 83 "crossStick" -> 76 "clap" -> 77 "cowbell" -> 85 "pedalHH" -> 66 "openHH" -> 65 "tom1" -> 71 "tom2" -> 72 "tom3" -> 75 "tom4" -> 67 "chinaCym" -> 68 "crash1" -> 73 "crash2" -> 74 "splashCym" -> 58 "bell" -> 80 "ride" -> 81 _ -> 0 -- no match