summaryrefslogtreecommitdiff
path: root/dev
diff options
context:
space:
mode:
authorJake Zerrer <him@jakezerrer.com>2025-11-06 14:15:51 -0500
committerJake Zerrer <him@jakezerrer.com>2025-11-06 15:10:01 -0500
commitc62ed160a04c1ee5d08297d13a26630a590c5d6a (patch)
tree57f43c2b6b4ad3d8f427f8375cc33228e3780ef6 /dev
parent1941fed92200e60c0912115e4eb87d114c206383 (diff)
Define minilab3 values
Diffstat (limited to 'dev')
-rw-r--r--dev/scratch.clj15
1 files changed, 9 insertions, 6 deletions
diff --git a/dev/scratch.clj b/dev/scratch.clj
index 9bfac2c..9775320 100644
--- a/dev/scratch.clj
+++ b/dev/scratch.clj
@@ -1,6 +1,8 @@
(ns scratch
(:require [unheard.midi :as midi]
[unheard.midi.percussion :refer [kick snare hat]]
+ [unheard.instrument.minilab3 :as minilab3]
+ [unheard.midi-util :as mu]
[unheard.clock :refer [clock]]
[unheard.theory :refer [note poly]]
[missionary.core :as m]))
@@ -55,18 +57,19 @@
p (song >c >tonic)]
(m/amb=
(let [[t f] (m/?> 2 (midi/keyboard v))
- [ch k v] (rest (m/?< f))]
- (if (= t :control)
+ [ch k v] (rest (m/?< f))
+ chkv [ch k v]]
+ (if (mu/control-message? t)
(m/amb
- (if (and (= ch 0) (= k 74))
+ (if (minilab3/is-knob 1 chkv)
(do (reset! c v) (m/amb))
(m/amb))
- (if (and (= ch 0) (= k 71))
+ (if (minilab3/is-knob 2 chkv)
(do (reset! tonic v) (m/amb))
(m/amb)))
(m/amb)))
- [:n (m/?< (m/eduction (dedupe) p))]
- [:c (m/?< (m/eduction (dedupe) >c))]))))))
+ [:n (m/?< (m/eduction (dedupe) p))]
+ [:c (m/?< (m/eduction (dedupe) >c))]))))))
(def cancel
(run prn prn))