packages feed

maquinitas-tidal 0.2.13 → 0.2.16

raw patch · 5 files changed

+172/−101 lines, 5 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Roland: sh01a :: Pattern String -> ControlPattern
- Roland: sh01aMidiCC :: Num a => String -> a
- Roland: tr08 :: Pattern String -> ControlPattern
- Roland: tr08MidiCC :: Num a => String -> a
+ Boss.DR880: drum1 :: Pattern String -> ControlPattern
+ Boss.DR880: drum1midi :: Num a => String -> a
+ Boss.DR880: drum2 :: Pattern String -> ControlPattern
+ Boss.DR880: drum2midi :: Num a => String -> a
+ Boss.DR880: drum3 :: Pattern String -> ControlPattern
+ Boss.DR880: drum3midi :: Num a => String -> a
+ Korg.MR16: mr16 :: Pattern String -> ControlPattern
+ Korg.MR16: mr16MidiNote :: Num a => String -> a
+ Roland.TB3: ccn :: Pattern String -> ControlPattern
+ Roland.TB3: ccnList :: Num a => String -> a

Files

maquinitas-tidal.cabal view
@@ -1,5 +1,5 @@ name:                maquinitas-tidal-version:             0.2.13+version:             0.2.16 synopsis:            library for MIDI control of hardware description:         maquinitas is a library for MIDI control of hardware homepage:            https://github.com/maquinitas/maquinitas-tidal@@ -18,9 +18,11 @@                       Korg.VolcaBeats                       Korg.VolcaBass                       Korg.VolcaKeys+                      Korg.MR16+                      Boss.DR880+                      Roland.TB3                       MFBTanzbar                       OtoBam-                      Roland    -- other-modules:   -- other-extensions:
+ src/Boss/DR880.hs view
@@ -0,0 +1,99 @@+-- 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
+ src/Korg/MR16.hs view
@@ -0,0 +1,39 @@+-- maquinitas-tidal++module Korg.MR16 where++  import Korg.KorgBase+  import qualified Sound.Tidal.Params+  import Sound.Tidal.Pattern++  -- MIDI notes+  -- Korg MR-16 drum machine++  mr16 :: Pattern String -> ControlPattern+  mr16 = Sound.Tidal.Params.n . (subtract 60 . mr16MidiNote <$>)+  +  mr16MidiNote :: Num a => String -> a+  mr16MidiNote m =+    case m of+      "bd" -> 35 -- bass drum+      "rs" -> 37 -- rimshot+      "sd" -> 38 -- snare drum+      "cp" -> 39 -- clap+      "lt" -> 41 -- low tom+      "ch" -> 42 -- closed hihat+      "oh" -> 46 -- open hihat+      "ht" -> 47 -- high tom+      "cr" -> 49 -- crash+      "rd" -> 51 -- ride+      "lc" -> 52 -- low conga+      "hc" -> 53 -- high conga+      "ta" -> 54 -- tambourine+      "cb" -> 56 -- cow bell+      "ti" -> 57 -- timbale+      "ca" -> 58 -- cabasa+      "wb" -> 60 -- wood block+      "la" -> 61 -- low agogo+      "ha" -> 63 -- high agogo+      "mp" -> 64 -- metronome piano+      "mf" -> 65 -- metronome forte+      _    -> 0  -- no match
− src/Roland.hs
@@ -1,99 +0,0 @@--- maquinitas-tidal--- parameters for instruments by Roland--module Roland where-  import Sound.Tidal.Params-  import Sound.Tidal.Pattern-  -  -- i copied this from volcaBeats-  -- where this notation was used for midi notes-  -- so this needs to be adapted to CC-  sh01a :: Pattern String -> ControlPattern-  sh01a = n . (subtract 60 . sh01aMidiCC <$>)--  sh01aMidiCC :: Num a => String -> a-  sh01aMidiCC "modulation" = 1-  sh01aMidiCC "lfoRate" = 3-  sh01aMidiCC "portamentoTime" = 5-  sh01aMidiCC "expressionPedal" = 11-  sh01aMidiCC "lfoWaveform" = 12-  sh01aMidiCC "vcoModDepth" = 13-  sh01aMidiCC "vcoRange" = 14-  sh01aMidiCC "vcoPulseWidth" = 15-  sh01aMidiCC "vcoPwmSource" = 16-  sh01aMidiCC "vcoModSens" = 17-  sh01aMidiCC "vcoBendDepth" = 18-  sh01aMidiCC "vcoPwmLevel" = 19-  sh01aMidiCC "vcoSawLevel" = 20-  sh01aMidiCC "vcoSubLevel" = 21-  sh01aMidiCC "vcoSubType" = 22-  sh01aMidiCC "vcoNoiseLevel" = 23-  sh01aMidiCC "vcfEnvDepth" = 24-  sh01aMidiCC "vcfModDepth" = 25-  sh01aMidiCC "vcfKeyFollow" = 26-  sh01aMidiCC "vcfBendDepth" = 27-  sh01aMidiCC "vcaEnvSw" = 28-  sh01aMidiCC "vcaEnvMode" = 29-  sh01aMidiCC "envSustain" = 30-  sh01aMidiCC "portamentMode" = 31-  sh01aMidiCC "hold" = 64-  sh01aMidiCC "portamento" = 65-  sh01aMidiCC "vcfResonance" = 71-  sh01aMidiCC "envRelease" = 72-  sh01aMidiCC "envAttack" = 73-  sh01aMidiCC "vcfCutoff" = 74-  sh01aMidiCC "envDecay" = 75-  sh01aMidiCC "tune" = 76-  sh01aMidiCC "transposeSw" = 77-  sh01aMidiCC "noiseMode" = 78-  sh01aMidiCC "lfoMode" = 79-  sh01aMidiCC "assignMode" = 80-  sh01aMidiCC "chordVoice2Sw" = 81-  sh01aMidiCC "chordVoice3Sw" = 82-  sh01aMidiCC "chordVoice4Sw" = 83-  sh01aMidiCC "chordVoice2KeyShift" = 85-  sh01aMidiCC "chordVoice3KeyShift" = 86-  sh01aMidiCC "chordVoice4KeyShift" = 87--  -- TODO: also needs to be adapted-  tr08 :: Pattern String -> ControlPattern-  tr08 = n . (subtract 60 . tr08MidiCC <$>)--  tr08MidiCC "bdTune" = 20-  tr08MidiCC "bdTone" = 21-  tr08MidiCC "bdComp" = 22-  tr08MidiCC "bdDecay" = 23-  tr08MidiCC "bdLevel" = 24-  tr08MidiCC "sdTone" = 25-  tr08MidiCC "sdSnappy" = 26-  tr08MidiCC "sdComp" = 27-  tr08MidiCC "sdDecay" = 28-  tr08MidiCC "sdLevel" = 29-  tr08MidiCC "ltTune" = 46-  tr08MidiCC "ltDecay" = 47-  tr08MidiCC "ltLevel" = 48-  tr08MidiCC "mtTune" = 49-  tr08MidiCC "mtDecay" = 50-  tr08MidiCC "mtLevel" = 51-  tr08MidiCC "htTune" = 52-  tr08MidiCC "htDecay" = 53-  tr08MidiCC "htLevel" = 54-  tr08MidiCC "rsTune" = 55-  tr08MidiCC "rsDecay" = 56-  tr08MidiCC "rsLevel" = 57-  tr08MidiCC "cpTune" = 58-  tr08MidiCC "cpDecay" = 59-  tr08MidiCC "cpLevel" = 60-  tr08MidiCC "chTune" = 61-  tr08MidiCC "chDecay" = 62-  tr08MidiCC "chLevel" = 63-  tr08MidiCC "accent" = 71-  tr08MidiCC "ohTune" = 80-  tr08MidiCC "ohDecay" = 81-  tr08MidiCC "ohLevel" = 82-  tr08MidiCC "cyTune" = 83-  tr08MidiCC "cyDecay" = 84-  tr08MidiCC "cyLevel" = 85-  tr08MidiCC "cbTune" = 86-  tr08MidiCC "cbDecay" = 87-  tr08MidiCC "cbLevel" = 88
+ src/Roland/TB3.hs view
@@ -0,0 +1,30 @@+-- maquinitas-tidal+-- parameters for instruments by Korg++module Roland.TB3 where++  import qualified Sound.Tidal.Params+  import Sound.Tidal.Pattern++  -- ControlChange list++  ccn :: Pattern String -> ControlPattern+  ccn = Sound.Tidal.Params.ccn . (ccnList <$>)+  +  ccnList :: Num a => String -> a+  ccnList m =+    case m of+      "padZ"          -> 1+      "padYplay"      -> 11+      "padXenvMod"    -> 12+      "padYenvMod"    -> 13+      "accent"        -> 16+      "effect"        -> 17+      "scatterType"   -> 68+      "scatterDepth"  -> 69+      "resonance"     -> 71+      "cutoff"        -> 74+      "patternSlide"  -> 102+      "patternAccent" -> 103+      "tuning"        -> 104+      _                 -> 0