// Two clock tools in one file – every `module` block becomes a module of its own. module divider "Divider" hp 4 { desc de "Taktteiler: gibt jeden n-ten Takt als Trigger weiter (÷2 bis ÷8), RST beginnt von vorn." desc en "Clock divider: passes on every n-th clock as a trigger (÷2 to ÷8), RST starts over." knob div "DIV" 2..8 = 4 int in clk "CLK" gate in reset "RST" gate out q "OUT" gate led act yellow process { t = rise(clk) n = counter(t, rise(reset), div) fire = t and n == 1 q = gate(pulse(fire, 10)) act = pulse(fire, 60) } } module toggle "Toggle" { desc de "Flipflop: jeder Takt schaltet den Ausgang um – halbes Tempo mit 50 % Tastverhältnis, INV liefert das Gegenteil." desc en "Flip-flop: every clock flips the output – half tempo at 50 % duty cycle, INV gives the opposite." in clk "CLK" gate out q "Q" gate out nq "INV" gate led on green process { s = toggle(rise(clk)) q = gate(s) nq = gate(not s) on = s } }