summaryrefslogtreecommitdiff
path: root/guile/nanolight/fixture-library/robe.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guile/nanolight/fixture-library/robe.scm')
-rw-r--r--guile/nanolight/fixture-library/robe.scm38
1 files changed, 38 insertions, 0 deletions
diff --git a/guile/nanolight/fixture-library/robe.scm b/guile/nanolight/fixture-library/robe.scm
new file mode 100644
index 0000000..dcdd30b
--- /dev/null
+++ b/guile/nanolight/fixture-library/robe.scm
@@ -0,0 +1,38 @@
+(define-module (nanolight fixture-library robe)
+ #:use-module (oop goops)
+ #:use-module (nanolight fixture)
+ #:export (robe-dl7s-profile-mode1))
+
+
+(define (robe-dl7s-profile-mode1)
+ (list
+
+ (make <fixture-attribute> #:name 'pan
+ #:range '(0 540) #:type 'continuous #:home-value 270
+ #:translator (lambda (universe start-addr value set-dmx)
+ (set-dmx universe (+ 0 start-addr) 2
+ (percent->dmxval value))))
+
+ (make <fixture-attribute> #:name 'tilt
+ #:range '(0 270) #:type 'continuous #:home-value 135
+ #:translator (lambda (universe start-addr value set-dmx)
+ (set-dmx universe (+ 2 start-addr) 2
+ (percent->dmxval value))))
+
+ (make <fixture-attribute> #:name 'strobe
+ #:range '(#f #t) #:type 'step #:home-value #f
+ #:translator (lambda (universe start-addr value set-dmx)
+ (set-dmx universe (+ 48 start-addr) 1
+ (if value 95 32))))
+
+ (make <fixture-attribute> #:name 'intensity
+ #:range '(0 100) #:type 'continuous #:home-value 0
+ #:translator (lambda (universe start-addr value set-dmx)
+ (set-dmx universe (+ 49 start-addr) 2
+ (percent->dmxval value))))
+
+ (make <fixture-attribute> #:name 'prism
+ #:range '(#f #t) #:type 'step #:home-value #f
+ #:translator (lambda (universe start-addr value set-dmx)
+ (set-dmx universe (+ 27 start-addr) 1
+ (if value 50 0))))))