Seq16 is a simple step sequencer for the grid.

Make a new page with monolith:seq16-new

(monolith:seq16-new "seq")

Import seq16 wrappers into scheme with:

(monolith:load "seq16.scm")

Before the seq16 page can be used, it must be clocked by an external clock source via seq16clk.

(seq16clk (clock 0 120 4) "seq")

There are two kinds of signals provided: the value and the gate. These are provided with seq16val and seq16gt. All that's needed is the page name here. Be sure to call these after seq16clk.

Playhead is turned off by default. Turn it on with monolith:seq16-playhead.

(monolith:seq16-playhead "seq" 1)

Multiplying the main clock signal with seq16gt gets a trigger signal.

Using this trigger signal with a samphold will make it suitable when using it for gated/articulated notes. Note that this means the signal output will go from 1-8, with 0 being ignored.

(samphold (mul (seq-clk) (seq16gt "seq")) (seq16val "seq"))

It is often useful to snap seq16 back to the beginning. Do this with monolith:seq16-reset.