Manual: Effect Reference

Here is a list of all effect commands that can be used in patterns. Commands that go into the volume column use a lowercase effect letter, while effects that go into the effect column use uppercase effect letters. The behaviour of some effect commands might be influced by the compatible playback option.

It should be noted that the MOD and XM formats share most of their similar commands, while S3M, IT and MPTM formats share a different set, even though they duplicate most of the MOD / XM functions and features.

Most effect commands do not affect instrument plugins currently; most of them only affect sample playback. Since this might change in the future, such effects should be avoided on channels that make use of instrument plugins.

An effect command consists of one character (the “effect letter”) followed by the value that will be applied (the “parameter”), which is a hexadecimal number in the effect column and a decimal number in the volume column. If the notation is given as xx, this means the value is expecting a number between 00h and FFh, which is a decimal value of 0 – 255. If the notation is xy, each digit is independent of the other, and each will be using a value between 0h and Fh (0 – 15). For example, for the Txx command, xx will be a value between 00h and FFh; so for a value of 98, convert the decimal value to hex (62h) and enter it in the fourth column (in the row it should apply) as T62. As another example, the Hxy command uses two values, x and y; so if x is 4 (vibrato speed) and y is 12 (vibrato depth), you enter the command as H4C.

If you do not feel comfortable with decimal ↔ hexadecimal conversion, you can also double-click on an effect to open the Note Properties dialog. From there, you can adjust the effect parameters using sliders, and their exact meaning is shown as well.

Note that the parameter range of some commands is limited, such as the XM command Cxx, whose maximum value is 40h (64). Entering out-of-range values is not recommended as they might be interpreted differently by non-conforming players.

Common Effect Parameters
Most effect parameter follow a simple scheme, but some effects also use a lookup table for their parameters. Depending on the effect, different parameters might do completely different things. Some common lookup table effects are described below.

Waveform Types
Some oscillator effects (namely Vibrato, Tremolo and Panbrello) use preset oscillator waveforms. They can be changed using special commands; the possible parameters of these commands are listed here:

Retrigger means that the oscillator waveform is retriggered when a new note is played. Continue means that the waveform continues at its last playback position when a new note is played. In the S3M / IT / MPTM formats, only the first four parameters are available.

Every vibrato / tremolo / panbrello waveform is 64 points long, and the speed parameter denotes by how many points per tick the play position is advanced. So at a vibrato speed of 2, the vibrato waveform repeats after 32 ticks.

Retrigger Volume
The retrigger command (Rxy in XM files and Qxy in S3M / IT / MPTM files) does not only retrigger the note every y ticks, it also changes the sample volume, depending on the x value. The following table explains the meaning of every possible x parameter:

Sound Control
The sound control effect (S9x in the S3M / IT / MPTM format, X9x in the XM format) can be used to control various aspects of sound playback. Possible parameters are explained here.

Effect Column
The following commands can be entered into the effect column. The MOD format does not make use of the volume column, so no commands can be used in the volume column. All parameter values are hexadecimal.

† Effect Memory:
 * No means that this effect does nothing if the effect parameter is 00h.
 * Yes means that this effect has an own parameter memory. If the effect is called with the parameter 00h, the previous effect parameter on this channel is recalled. For example, if the effect 482 is followed by the effect 400 on a subsequent row, the 400 effect recalls the effect parameter 82h.
 * — means that the effect parameter 00h has no special meaning. For example C00 mutes the channel, B00 jumps to the first pattern, and so on.

XM Effect Commands
The XM format uses an extended version of the MOD command set. As Fasttracker 2 was a rather buggy program, many effect commands may behave in a quirky way. Always enable more FT2 compatible playback for the best possible emulation of those quirks.

Effect Column
The following commands can be entered into the effect column. All parameter values are hexadecimal.

† Effect Memory:
 * No means that this effect does nothing if the effect parameter is 00h.
 * Yes means that this effect has an own parameter memory. If the effect is called with the parameter 00h, the previous effect parameter on this channel is recalled. For example, if the effect 482 is followed by the effect 400 on a subsequent row, the 400 effect recalls the effect parameter 82h. Sometimes, parameter memory is shared between similar effects. If two effects share the same effect letter (e.g. A0x and Ax0), they generally use the same memory as well.
 * — means that the effect parameter 00h has no special meaning. For example C00 mutes the channel, B00 jumps to the first pattern, and so on.

Volume Column
The following commands can be entered into the volume column. The only effect in this list that has an effect memory is “Vibrato Depth”. Volume Slides etc. have no memory. All parameter values are decimal.

S3M Effect Commands
Scream Tracker′s S3M format uses a command set that is entirely different from the MOD and XM command set. It was the first of the supported trackers to have a volume column, thus its use is quite limited.

The format was soon extended by other programs and players to support more effect commands (e.g. 7-Bit panning, panning slides, channel volume, etc.) — ModPlug supports those extensions, and most of them are marked as such in the effect table below.

Effect Column
The following commands can be entered into the effect column. All parameter values are hexadecimal.

† Effect Memory:
 * No means that this effect does nothing if the effect parameter is 00h.
 * Yes means that this effect has a parameter memory. If the effect is called with the parameter 00h, the previous effect parameter on this channel is recalled. For example, if the effect H82 is followed by the effect H00 on a subsequent row, the H00 effect recalls the effect parameter 82h. Sometimes, parameter memory is shared between similar effects. If two effects share the same effect letter (e.g. N0x and Nx0), they generally use the same memory as well.
 * Non-Zero means that this effect uses the last non-zero effect parameter in this column as memory, no matter which command it was assigned to. For example if A02 is followed by E00 on a subsequent row, the E00 recalls the effect parameter 02h. When the corresponding compatibility setting is disabled, Non-Zero behaves the same as Yes.
 * — means that the effect parameter 00h has no special meaning. For example X00 sets the panning position to full left, B00 jumps to the first pattern, and so on.

Volume Column
The following commands can be entered into the volume column. None of them have an effect memory. All parameter values are decimal.

IT Effect Commands
Impulse Tracker′s command set is based on the S3M command set; it adds some more commands and makes better use of effect memory.

Effect Column
The following commands can be entered into the effect column. All parameter values are hexadecimal.

† Effect Memory:
 * No means that this effect does nothing if the effect parameter is 00h.
 * Yes means that this effect has a parameter memory. If the effect is called with the parameter 00h, the previous effect parameter on this channel is recalled. For example, if the effect H82 is followed by the effect H00 on a subsequent row, the H00 effect recalls the effect parameter 82h. Sometimes, parameter memory is shared between similar effects. If two effects share the same effect letter (e.g. N0x and Nx0), they generally use the same memory as well.
 * — means that the effect parameter 00h has no special meaning. For example X00 sets the panning position to full left, B00 jumps to the first pattern, and so on.

Volume Column
The following commands can be entered into the volume column. All parameter values are decimal.

MPTM Effect Commands
OpenMPT′s own format is heavily based on the IT format and its effect command set.

Effect Column
The MPTM format generally makes use of the same effect commands as the IT format. However, there are some additional commands that cannot be used in the IT format:

Volume Column
The following commands are supported in addition to everything that is supported by the IT format:

Parameter Control Events
Another feature that is only available in MPTM files are Parameter Control Events, which can be used to automate plugin parameters. They are explained in a separate article.

de:Handbuch: Effektbefehle