yes yes - excellent!
but yeah, docs on monome.org are out of date, everythings out of date, best practice says we should keep some kinda doc in the repo (html or md or whatever) - agree / disagree? monome.org can take from git, no problem (i would hazard to state)
i’d also like to add a couple utility operators, if no-one objects:
-
LINLIN : inputs IMIN, IMAX, OMIN, OMAX, outputs VAL.
makes a linear mapping from an input range to an output range. (replacing combinations of MUL/ADD/DIV in many situations)
-
FLIP : inputs BANG and MUL, outputs A and B (POS and NEG? ON and OFF?). (replacing TOG + SPLIT + SUB (B=1, B_TRIG=1) and more MULs or whatever)
(that is: when an input to BANG is applied that is >0, A puts out the value at MUL [default 1] and B puts out 0. the next positive input to BANG reverses that state, putting out MUL at B and 0 at A. &c.)
-
TOG : change input STATE to BANG (cosmetic only. more obvious i think - i’m always forgetting whether it bangs the toggle or actually sets the state)
and am considering more elaborate operators:
-
ECA : an elementary (1d binary) cellular automaton
-
GRIDCOL: inputs X and COL, outputs X and COL.
a monome grid operator for direct column manipulation.
-
HIST8: output the last 8 values in a circular buffer (8 outputs)
-
HIST16: output the last 16 values in a circular buffer (16 outputs)
-
HIST should be renamed to MEAN or AVG. or maybe HISTX should also have mean/median outputs. or should be rolled into more general STATS op.
-
CHAOS: equivalent to CHAOS module discussed for teletype.
and, i dunno how to do it exactly, but something like GRIDHIST or GRIDSCROLL: i want to be able to make scrolling displays on a grid controller (arbitrary number of quads, but mostly considering m128), and also make arbitrary use of presses.