From 27e29284b86f69a1eeb23138b29b0079972e41d2 Mon Sep 17 00:00:00 2001 From: Thomas White Date: Mon, 11 Jan 2021 17:49:52 +0100 Subject: More consistent behaviour between 8-bit and 16-bit setters --- guile/starlet/fixture-library/generic.scm | 14 +++++++------- guile/starlet/fixture-library/robe.scm | 32 +++++++++++++++---------------- 2 files changed, 23 insertions(+), 23 deletions(-) (limited to 'guile/starlet/fixture-library') diff --git a/guile/starlet/fixture-library/generic.scm b/guile/starlet/fixture-library/generic.scm index 5806788..69f92f7 100644 --- a/guile/starlet/fixture-library/generic.scm +++ b/guile/starlet/fixture-library/generic.scm @@ -11,10 +11,10 @@ (define-method (scanout-fixture (fixture ) - get-attr set-chan set-chan-16bit) + get-attr set-chan8 set-chan16) ;; Set DMX value for intensity - (set-chan 1 (percent->dmxval (get-attr 'intensity)))) + (set-chan8 1 (percent->dmxval8 (get-attr 'intensity)))) (define (chan->attr chan) @@ -33,7 +33,7 @@ (add-method! scanout-fixture - (method ((fix new-class) get-attr set-chan set-chan-16bit) + (method ((fix new-class) get-attr set-chan8 set-chan16) (for-each (lambda (chan offset) @@ -41,13 +41,13 @@ (cond ((eq? chan '0) - (set-chan offset 0)) + (set-chan8 offset 0)) ((eq? chan 'FL) - (set-chan offset 255)) + (set-chan8 offset 255)) - (else (set-chan offset - (percent->dmxval + (else (set-chan8 offset + (percent->dmxval8 (get-attr chan)))))) chans (iota (length chans) 1)))) diff --git a/guile/starlet/fixture-library/robe.scm b/guile/starlet/fixture-library/robe.scm index 7ad12a6..5a19286 100644 --- a/guile/starlet/fixture-library/robe.scm +++ b/guile/starlet/fixture-library/robe.scm @@ -21,25 +21,25 @@ (define-method (scanout-fixture (fixture ) - get-attr set-chan set-chan-16bit) + get-attr set-chan8 set-chan16) - (set-chan-16bit 50 (get-attr 'intensity) 100) + (set-chan16 50 (percent->dmxval16 (get-attr 'intensity))) - (set-chan-16bit 1 (get-attr 'pan) 540) - (set-chan-16bit 3 (get-attr 'tilt) 270) + (set-chan16 1 (scale-to-range (get-attr 'pan) '(0 540) '(0 65535))) + (set-chan16 3 (scale-to-range (get-attr 'tilt) (0 270) '(0 65535))) - (set-chan 49 (if (get-attr 'strobe) 95 32)) + (set-chan8 49 (if (get-attr 'strobe) 95 32)) - (set-chan 28 (if (get-attr 'prism) 50 0)) + (set-chan8 28 (if (get-attr 'prism) 50 0)) - (set-chan 7 (assv-ref '((750 . 82) - (1000 . 88) - (1200 . 92) - (2000 . 97) - (2500 . 102) - (#f . 107)) - (get-attr 'tungsten-watts-emulation))) + (set-chan8 7 (assv-ref '((750 . 82) + (1000 . 88) + (1200 . 92) + (2000 . 97) + (2500 . 102) + (#f . 107)) + (get-attr 'tungsten-watts-emulation))) - (set-chan-16bit 9 (get-attr 'cyan) 100) - (set-chan-16bit 11 (get-attr 'magenta) 100) - (set-chan-16bit 13 (get-attr 'yellow) 100)) + (set-chan16 9 (percent->dmxval16 (get-attr 'cyan))) + (set-chan16 11 (percent->dmxval16 (get-attr 'magenta))) + (set-chan16 13 (percent->dmxval16 (get-attr 'yellow)))) -- cgit v1.2.3