aboutsummaryrefslogtreecommitdiff
path: root/guile
AgeCommit message (Collapse)Author
2023-08-29Fixture library: Add <generic-rgbw>Thomas White
2023-07-02Implement osc-cmy-potentiometerThomas White
2023-07-02Split smart potentiometer control logic out of osc-smart-potentiometerThomas White
2023-06-26osc-smart-potentiometer: Don't attempt to calculate gradients with empty ↵Thomas White
fixture list
2023-06-18Remove vestigial fixture friendly name stuffThomas White
2023-06-15Un-GOOPS some proceduresThomas White
These don't need to be generic any more, now that we only have one type of attribute.
2023-06-15Remove taw/controls.scmThomas White
Completely out of date.
2023-06-15Remove colour-component stuffThomas White
It's a bit of a hack, only needed for MIDI control. I have a better solution using OSC in mind.
2023-06-15Get rid of old MIDI control stuffThomas White
2023-06-15Add osc-smart-potentiometerThomas White
2023-06-15Use higher-level OSC interfaceThomas White
2023-06-06Slow down engine a bitThomas White
2023-06-05Fixture library: Add Lightmaxx LED COBThomas White
2023-06-05Fixture library: <stairville-z120m-6ch>: Add white-weirdness attributeThomas White
2023-06-04get-selection-as-string: Set dotted form of fixture nameThomas White
Previously it sent "(list-ref xxx nnn)", which is much harder to parse and defeats the point of using a string instead of a Scheme expression here. This routine is currently only used for OSC selection updates.
2023-06-04Rearrange arguments of osc-select-button and osc-parameter-encoderThomas White
2023-05-21Fixture library: <robe-dl7s-mode1>: Fix reversed true/false for animation wheelThomas White
2023-05-15Implement OSC encoders for list attributesosc-with-guileoscThomas White
2023-05-14Send selection via OSCThomas White
2023-05-11Programmer state should be LTPThomas White
2023-05-01Implement osc-state-faderThomas White
2023-04-30Implement osc-parameter-encoder (basic version)Thomas White
2023-04-30Move fixture-has-attr? to (starlet fixture) and export itThomas White
2023-04-29Add add-sel and toggle-selThomas White
2023-04-29Move selection stuff to a separate moduleThomas White
2023-04-25Add OSC utilitiesThomas White
2023-04-25Add selected? and deselThomas White
2023-04-13state-source: Quote symbol valuesThomas White
2023-04-13Fixture library: <robe-dl7s-mode1> Factor out gobo and gel listsThomas White
2023-04-11Fixture library: almost full Robe DL7S definitionThomas White
2023-04-11Add 'lookup' utilityThomas White
2023-04-11Add an optional comment field to the fixture's attributesThomas White
2023-04-11Add lots of default attribute namesThomas White
2023-04-11Get rid of 'categorize'Thomas White
Good riddance. Here's to proper argument handling.
2023-04-10Add attribute friendly namesThomas White
2023-04-09New transition effect syntaxThomas White
Instead of this: (cue 3 (lighting-state ...) (crossfade 3 5)) We now have this: (cue 3 (crossfade 3 5 (lighting-state ...))) This makes a simple snap blackout very succinct: (cue 6 (snap blackout))
2023-04-02Move stuff to (taw controls)Thomas White
2023-04-02Fixture library: Robe DL7S: add missing modules and fix typoThomas White
2023-04-01Scanout: Retrieve the combined state only onceThomas White
2023-04-01'colour -> colourThomas White
2023-04-01Separate 'engine' and 'scanout'Thomas White
The new module "engine" contains everything to do with working out the final attribute values. This module should be referenced for anything that needs to register states, get values etc. Now, "scanout" is only about converting attribute values to DMX values and sending them to OLA. This module only needs to be referenced by fixture definitions, and once by the top level program.
2023-04-01Send the combined state to OLAThomas White
2023-04-01Build a general combined stateThomas White
2022-11-13Some symbol-><starlet-attribute> conversions I missedThomas White
2022-11-12Add write method for <starlet-state>Thomas White
2022-11-12Introduce new type for attribute namesThomas White
There's a serious problem with the design so far, where symbols are used for attribute names (intensity, strobe, colour etc), and also for attribute values (on, off, random etc). There's no way for 'at' to tell the difference between the two. For example, this form is ambiguous: (at myfixture 'strobe 'on) This commit introduces a new class, <starlet-attribute>, to replace the use of symbols here. The attributes are enumerated in (starlet attributes), and new ones can be added later. The attribute objects remember their 'canonical' names, to allow states to be printed. Apart from solving the ambiguity problem, this has two further advantages. First, attribute names no longer need to be quoted everywhere. Second, multiple names can be used to refer to the same attribute. For example: (define color colour).
2022-11-12crossfade: Set default attribute fade timeThomas White
Previously it was zero, which is almost never what we want. Now it's the smaller of the up and down times.
2022-10-30Fixture library: <stairville-z120m-6ch> Add random strobe modeThomas White
2022-10-30Add flash-chaseThomas White
2022-10-30MIDI control: Set go button LED on startupThomas White
Previously, the LED would not be lit until the first playback event (go/back etc) after startup.