summaryrefslogtreecommitdiff
path: root/guile/nanolight/fixture.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guile/nanolight/fixture.scm')
-rw-r--r--guile/nanolight/fixture.scm7
1 files changed, 6 insertions, 1 deletions
diff --git a/guile/nanolight/fixture.scm b/guile/nanolight/fixture.scm
index 0c67975..9bfa3d9 100644
--- a/guile/nanolight/fixture.scm
+++ b/guile/nanolight/fixture.scm
@@ -7,7 +7,7 @@
#:export (<fixture> <fixture-attribute>
make-output patch-fixture
fixture-string fixture-address-string
- percent->dmxval chan
+ percent->dmxval msb lsb chan
start-addr universe
assign-attr!))
@@ -133,6 +133,11 @@
(define (percent->dmxval val)
(round-dmx (/ (* 256 val) 100)))
+(define (msb val)
+ (round-dmx (/ val 256)))
+
+(define (lsb val)
+ (round-dmx (logand (round val) #b11111111)))
(define (chan channel start-addr)
(- (+ channel start-addr) 1))