Tracker Effects
How FX work in ChipNomad
Each track can have all FX running simultaneously but only one instance of each FX. A few examples to explain this:
- Put
PVBin FX1 column in a phrase, and then putPBNin the same column lower in the phrase. Pitch bend won’t stop the vibrato, both FX will run at the same time. - Put
PBNin FX2 column in aphrase, then put anotherPBNlower in the phrase in FX1 column. The secondPBNwill simply update the pitch bend speed in the track. To stop pitch bend later you can putPBN 00in any FX column.
Effects can be stopped with the value 00. Only TBL and TBX effects are an exception, they’re stopped with value FF.
FX in phrases take priority over FX in tables. For example, if you put AYM 01 in a table, and then in phrase you put AYM 03, the value from the phrase will take over. Overall priority order: instrument table, aux table, phrase.
FX are fully reset when a new instrument is triggered. When you trigger a note with an empty instrument value, currently active FX will either continue (e.g. arpeggio, vibrato) or restart (e.g. pitch bend).
General Effects
ARP XY – Arpeggio
Arpeggiate three notes: base note, +X steps, and +Y steps from the base note. Arpeggio speed and mode is controlled by ARC command.
Example: ARP 37 will play a minor chord arpeggio.
ARC XY – Arpeggio configuration
Arpeggio configuration. X is the arpeggio mode (up, down, up/down, octave range), Y is the speed in ticks.
PVB XY – Vibrato
Pitch vibrato with the speed of X and Y depth. In linear pitch mode the depth is set in 10 cent steps. Vibrato period in ticks is calculated with the formula: 32 - Speed * 2. So, a vibrato with the speed C will have period 32 - 12 * 2 = 8 ticks.
PBN XX – Pitch bend
Bend pitch by XX every phrase/table row. XX is a signed hex number, so FF = -1, etc.
PSL XX – Pitch slide (portamento)
Slide from the previous pitch to the new pitch for XX ticks.
PIT XX – Pitch offset
Offset tone pitch by XX semitones. The offset is accumulated.
FIN XX - Fine pitch offset
Offset tone pitch by XX. In linear pitch mode the offset is in cents. In regular mode the value is tone period offset (equivalent to PRD FX). The offset is accumulated.
PRD XX - Tone period offset
Offset tone period by XX. The offset is accumulated.
VOL XX – Volume offset
Offset volume by XX. The offset is accumulated.
RET XY – Retrigger
Retrigger note every Y tics. X controls volume change. Y=0 stops the effect.
DEL XX – Delay note
Delay note start by XX tics. If XX is greater that the groove value, the note will be skipped.
OFF XX – Note off
Turn note off after XX tics. Equivalent to putting OFF in the note column and delaying it with DEL FX. Triggers the release stage of ADSR envelopes.
KIL XX – Kill note
Turns off note after XX tics. ADSR release stage is not be triggered, the note is fully silenced.
TIC XX – Set table speed
Set table speed to XX ticks per row. Changes speed for all table FX columns.
TBL XX – Set instrument table
Replace the instrument table with a different table. Value FF stops table.
TBX XX – Set aux table
Set aux table. Aux table plays together with the instrument table. Value FF stops aux table.
THO XX – Hop all table columns
Hop to row XX in the instrument table. When used in a table, all FX columns hop to this row.
TXH XX — Hop all aux table columns
Hop to row XX in the aux table. Doesn’t work in tables.
HOP XY — Conditional jump
Conditional jumps in phrases and tables. In tables this FX hops only in the column where FX is placed (unlike THO which hops all columns).
Hops X times to row Y. If X = 0, it creates an infinite loop. You can create nested loops with HOP FX.
GRV XX – Set track groove
Set groove XX for this track.
GGR XX – Global groove
Set groove XX for all tracks.
AY-Specific Effects
AYM XY – AY mixer
Update AY mixer settings for the instrument: X - envelope shape, Y - tone/noise control (0 - off, 1 - tone, 2 - noise, 3 - tone+noise)
ERT -- – Retrig envelope
Retrigger amplitude envelope (writes the current envelope shape value to register 13).
NOI XX – Noise period (relative)
Offsets noise period by XX. The value is accumulated.
NOA XX – Noise period (absolute)
Sets absolute noise period value to XX. When XX = FF, disables sending noise period from this track to make noise period values from previous tracks take priority.
EAU XY – Auto-envelope settings
Set auto envelope rate to X:Y. If X = 0, auto envelope is turned off.
EVB XY – Envelope vibrato
Envelope vibrato with X speed and Y depth. Similar to PVB command but affects only envelope period.
EBN XX – Envelope pitch bend
Bend envelope period by XX per phrase/table row. Similar to PBN command but affects only envelope period.
ESL XX – Envelope pitch slide (portamento)
Slide from the previous to the new envelope period value for XX ticks. Similar to PSL command but affects only envelope period.
ENT XX – Envelope pitch as a note
Set envelope period to a value matching a note. See the bottom line on the screen for the note name.
EPT XX – Envelope period offset
Offset envelope period by XX. The value is accumulated.
EPH XX — Envelope period high
Set the high byte of envelope period.
EPL XX — Envelope period low
Set the low byte of envelope period.