50% off with discount code EARLY50

Phrase FX Commands

Two FX slots per step, each a three-letter command plus a hex parameter (00–FF) (see Tracker Basics if hex bytes, signed bytes, and nibble pairs aren't familiar yet). Most commands act on the channel's currently-playing voice, so they need a note somewhere on that channel to have anything to affect - either on the same row or an earlier one. On a Drum instrument, most of these are inert, as pads use a separate voice pool instead of the channel voice. Only VOL, PAN, SDA, SDB, RTG, and KIL reach Drum pads. For more information on this, see the Drum section of Instrument Engines.

Command Parameter Description
VOL xx Set voice volume (00 = silent, FF = full)
PIT xx Pitch offset in semitones (signed byte: 80 = −128, FF = −1, 01 = +1)
KIL xx Release the voice after xx ticks into the row. Only meaningful for xx less than the project's SPEED (ticks per row). Larger values never fire.
HOP xx Jump to phrase row xx (wraps to the phrase length). Using HOP on a row also cancels that row's normal end-of-chain advance
TPO xx Set the project's BPM directly from a hex value (78 = 120, A8 = 168). Values below 28 (40 decimal) are ignored. This permanently changes and saves the project's tempo, it isn't a temporary per-row override.
RTG xx Retrigger the voice every xx ticks. 00 retriggers every tick; values at or beyond SPEED are clamped down to one retrigger per row.
PAN xx Pan: 00 = hard left, 80 = centre, FF = hard right.
SDA xx Set send level to reverb bus.
SDB xx Set send level to delay bus.
OFS xx Sampler only: start playback at xx/256 of the start..end region. The break-chopping command!
REV — Sampler only: play backwards from the current position. Stack after OFS to reverse from a specific point.
SLC xx Sampler only: jump to slice point xx (0-based, works regardless of the instrument's SLCMOD setting). Playback ends at the next slice or the END marker. Combine with RTG + OFS to ratchet within a slice.
ARP xy Arpeggio: cycles root → root+x → root+y → root → … as the row's ticks pass. x is the high nibble, y the low nibble, both unsigned 0–15. Set y=0 for a 2-note arp. Mutually exclusive with GLI on the same step. If both are present, GLI wins and ARP is ignored.
PRB xx Probability gate: the whole step (note, OFF, HOP, TPO — everything on that row) only fires if a fresh roll lands below xx. 00 = never, FF = always, otherwise roughly xx/256 chance (80 ≈ 50%). Two PRB commands on one step roll independently and both must pass.
GLI xx Glide / portamento: slide pitch from the previous note to this one over xx ticks. Smooth on Sampler, Sub, Wavetable, and Chip; pitch-quantised (semitone steps) on Macro, Multi, and Reso.
MO1–MO4 xx Write xx to the parameter assigned to the matching MOD slot. See MOD Commands.
CHD xx Play a paraphonic chord alongside the row's note. Up to 3 extra voices through the same instrument, sharing its filter and envelope. 00 = off (root only). See the chord table below. Works on every engine except Drum (including Sampler, which stacks extra pitched copies of the sample).

CHD tones glide along with GLI when both are used together, and are stopped by choke and by CHOKE groups just like the main voice (but they don't count toward a choke group themselves).

Chord shapes (CHD parameter)

The parameter is a hex byte, not a decimal count, so shapes past the 9th sit at 0A–10, not 10–16:

xx (hex) Name Intervals from root
01 MAJ +4, +7
02 MIN +3, +7
03 5TH +7
04 MAJ7 +4, +7, +11
05 MIN7 +3, +7, +10
06 DOM7 +4, +7, +10
07 SUS2 +2, +7
08 SUS4 +5, +7
09 AUG +4, +8
0A DIM +3, +6
0B DIM7 +3, +6, +9
0C MMAJ7 +3, +7, +11
0D MAJ6 +4, +7, +9
0E MIN6 +3, +7, +9
0F ADD9 +4, +7, +14
10 MADD9 +3, +7, +14

CHD is a row-level command; add it to every row where the chord should play, same as ARP; a note without CHD on the following row releases the previous chord's extra voices as usual.

Some cool FX command usage examples

Break-chopping a drum loop: on a Sampler with a breakbeat loaded, OFS 40 starts playback a quarter of the way into the region; stack RTG 04 on the same step to ratchet that starting point every 4 ticks for a classic chopped-break stutter.

Probability hats: put a hi-hat note on every 8th-note step with PRB A0 in FX1 — roughly 60% of hits play, giving a human, non-mechanical feel without hand-editing a pattern.

Arpeggiated chord: CHD 01 (major) on a synth note plus ARP 04 on the same step arpeggiates through root, root+4, root, root+4 while the chord's own extra voices ring underneath — a quick way to get a lot of movement out of one note.