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.scm12
1 files changed, 12 insertions, 0 deletions
diff --git a/guile/nanolight/fixture.scm b/guile/nanolight/fixture.scm
index b532e8b..ff45c22 100644
--- a/guile/nanolight/fixture.scm
+++ b/guile/nanolight/fixture.scm
@@ -104,12 +104,24 @@
(fixture-address-string fix)))
+(define (home-attribute attr)
+ (let ((attr-home-value (home-value attr)))
+ (set-value-func! attr (lambda () attr-home-value))))
+
+
+(define (home-all-attributes fix)
+ (for-each
+ home-attribute
+ (attributes fix)))
+
+
(define (patch-fixture output attributes universe start-addr friendly-name)
(let ((new-fixture (make <fixture>
#:attributes (copy-tree attributes)
#:uni universe
#:sa start-addr
#:friendly-name friendly-name)))
+ (home-all-attributes new-fixture)
(output 'add-fixture new-fixture)
new-fixture))