Skip to content

Pattern Effect List

rerrahkr edited this page Jan 22, 2023 · 14 revisions

Effect List

Effect FM SSG Rhythm ADPCM ADPCM Drumkit
00xy Arpeggio Arpeggio - Arpeggio -
01xx Portamento Up Portamento Up - Portamento Up -
02xx Portamento Down Portamento Down - Portamento Down -
03xx Tone Portamento Tone Portamento - Tone Portamento -
04xy Vibrato Vibrato - Vibrato -
07xy Tremolo Tremolo - Tremolo Tremolo
08xx Panning - Panning Panning Panning
0A0x Volume Slide Down Volume Slide Down - Volume Slide Down Volume Slide Down
0Ax0 Volume Slide Up Volume Slide Up - Volume Slide Up Volume Slide Up
0Bxx Position Jump Position Jump Position Jump Position Jump Position Jump
0Cxx Song End Song End Song End Song End Song End
0Dxx Pattern Break Pattern Break Pattern Break Pattern Break Pattern Break
0Fxx Speed/Tempo Change Speed/Tempo Change Speed/Tempo Change Speed/Tempo Change Speed/Tempo Change
0Gxx Note Delay Note Delay Note Delay Note Delay Note Delay
0Hxy - Auto Envelope - - -
0Ixx - Hardware Envelope Period 1 - - -
0Jxx - Hardware Envelope Period 2 - - -
0Kxy Retrigger Retrigger Retrigger Retrigger Retrigger
0Oxx Groove Groove Groove Groove Groove
0Pxx Detune Detune - Detune -
0Qxy Note Slide Up Note Slide Up - Note Slide Up -
0Rxy Note Slide Down Note Slide Down - Note Slide Down -
0Sxx Note Release Note Release Note Release Note Release Note Release
0Txy Transpose Delay Transpose Delay - Transpose Delay Key Change Delay
0Vxx - Tone/Noise mix Master Volume - -
0Wxx - Noise Pitch - - -
0Xxx Register Address Bank 0 Register Address Bank 0 Register Address Bank 0 Register Address Bank 0 Register Address Bank 0
0Yxx Register Address Bank 1 Register Address Bank 1 Register Address Bank 1 Register Address Bank 1 Register Address Bank 1
0Zxx Register Value Set Register Value Set Register Value Set Register Value Set Register Value Set
Axyy AR Control - - - -
B0xx Brightness - - - -
Dxyy DR Control - - - -
EAxy Extended Volume Slide Extended Volume Slide - Extended Volume Slide Extended Volume Slide
ESxx Note Cut Note Cut Note Cut Note Cut Note Cut
FBxx FB Control - - - -
FPxx Fine Detune Fine Detune - Fine Detune -
Mxyy Volume Delay Volume Delay Volume Delay Volume Delay Volume Delay
MLxy ML Control - - - -
RRxy RR Control - - - -
Txyy TL Control - - - -

Effect Details

Arpeggio

  • FM, SSG, ADPCM: 00xy
    x: Difference between the first sound (current sound) and the second sound [0-F]
    y: Difference between the first sound (current sound) and the third sound [0-F]

Used for arpeggios. Execute in order of 1→2→3→1→2→3→1→... in tick units. The difference between each pitch is higher for notes that are pronounced later in semitone steps. The execution is stopped to set 0000.

Portamento Up

  • FM, SSG, ADPCM: 01xx
    xx: Depth [00-FF]

Repeats adding the depth to the current pitch in ticks. The execution is stopped to set 0100.

Portamento Down

  • FM, SSG, ADPCM: 02xx
    xx: Depth [00-FF]

Repeats the subtraction by the depth to the current pitch in ticks. The execution is stopped to set 0200.

Tone Portamento

  • FM, SSG, ADPCM: 03xx
    xx: Depth [00-FF]

The pitch changes smoothly between notes. The pitch is changed by the depth in ticks. It affects the notes after the same step as the effect declaration. The execution is stopped to set 0300.

Vibrato

  • FM, SSG, ADPCM: 04xy
    x: Period [0-F]
    y: depth [0-F]

Performs vibrato (pitch fluctuation). Changes pitch periodically in ticks. As an example, the changes when period = 2 and depth = 1 are as shown in the figure below.

Period and depth

The execution is stopped when period or depth is set to 0.

Tremolo

  • FM, SSG, ADPCM, Drumkit: 07xy
    x: Period [0-F]
    y: depth [0-F]

Performs tremolo (volume fluctuation). Changes the volume periodically in ticks. The relationship between period and depth is similar to vibrato. The execution is stopped when period or depth is set to 0.

Panning

  • FM, Rhythm, ADPCM, Drumkit: 08xx

    xx Position
    00 Silent
    01 Right
    02 Left
    03 Center

Change the position where the sound is played.

Volume Slide Down

  • FM, SSG, ADPCM, Drumkit: 0A0x
    x: Depth [0-F]

Decreases the volume in ticks. Depth is the amount of attenuation per tick. The execution is stopped to set 0A00.
Unlike Extended Volume Slide, the volume is reset at each note on.

Volume Slide Up

  • FM, SSG, ADPCM, Drumkit: 0Ax0
    x: Depth [0-F]

Amplifies the volume in ticks. Depth is the amount of attenuation per tick. The execution is stopped to set 0A00.
Unlike Extended Volume Slide, the volume is reset at each note on.

Position Jump

  • FM, SSG, Rhythm, ADPCM, Drumkit: 0Bxx
    xx: Order number

After executing this step, move to the beginning of order xx. Invalid if order xx does not exist.

Song End

  • FM, SSG, Rhythm, ADPCM, Drumkit: 0Cxx
    xx: Any value

After performing this step, the song will stop playing.

Pattern Break

  • FM, SSG, Rhythm, ADPCM, Drumkit: 0Dxx
    xx: Step number

After executing this step, move to step xx of the next order. Invalid if step xx does not exist.

Speed/Tempo Change

  • FM, SSG, Rhythm, ADPCM, Drumkit: 0Fxx

    xx Effect
    00-1F Speed
    20-FF Tempo

Change the speed or tempo to xx. Depending on the value of xx, the change target changes to either.

Note Delay

  • FM, SSG, Rhythm, ADPCM, Drumkit: 0Gxx
    xx: Delay count [00-FF]

Delay note on this step by tick xx counts. This effect also affects the execution of effects declared in the same step. The count that delays execution must be less than the number of ticks per step.

Auto Envelope

  • SSG: 0Hxy

    x Effect
    0 Control envelope period by 0Ixx and 0Jxx
    1-7 Left-shift envelope period by 8-x
    8 Set envelope to default period
    9-F Right-shift envelope period by x-8
    y Effect
    0 Stop the execution of hardware envelope
    1-3, 9 Set envelope shape to SSGEG Type 1
    4-7, D Set envelope shape to SSGEG Type 5
    8 Set envelope shape to SSGEG Type 0
    A Set envelope shape to SSGEG Type 2
    B Set envelope shape to SSGEG Type 3
    C Set envelope shape to SSGEG Type 4
    E Set envelope shape to SSGEG Type 6
    F Set envelope shape to SSGEG Type 7

Set hardware envelope. For the envelope shape types, check Sound Chip.
Don't use this effect while using the buzzer effect.
This effect was added in v0.3.0.

Hardware Envelope Period 1

  • SSG: 0Ixx
    xx: High byte of envelope period [00-FF]

Set high byte of hardware envelope period.
This effect was added in v0.3.0.

Hardware Envelope Period 2

  • SSG: 0Jxx
    xx: Low byte of envelope period [00-FF]

Set low byte of hardware envelope period.
This effect was added in v0.3.0.

Retrigger

  • FM, SSG, Rhythm, ADPCM, DrumKit: 0Kxy.

    x Effect
    0-7 add x to volume for each execution
    8-F subtract x-8 from volume for each execution

    y: Count until next note on [1-F]

Repeat the note-on for every y count in the step. You can also increase or decrease the volume with each repeated note-on.
This effect was added in v0.5.0.

Groove

  • FM, SSG, Rhythm, ADPCM, Drumkit: 0Oxx
    xx: Groove number

Enable groove xx. Invalid when groove xx does not exist.

Detune

  • FM, SSG, ADPCM: 0Pxx
    xx: Pitch [00-FF]

Add xx-80 to the track pitch.

Note Slide Up

  • FM, SSG, ADPCM: 0Qxy
    x: Speed [0-F]
    y: semitone [0-F]

From the start of this step or note-on to tick x count, the current note is changed to a pitch higher by y in semitones.

Note Slide Down

  • FM, SSG, ADPCM: 0Rxy
    x: Speed [0-F]
    y: semitone [0-F]

From the start of this step or note-on to tick x count, the current note is changed to a lower pitch by y in semitones.

Note Release

  • FM, SSG, Rhythm, ADPCM, Drumkit: 0Sxx
    xx: Delay count [00-FF]

Take note-off after xx counts from the start of this step or note-on.
This effect was called as "Note Cut" before v0.5.3.

Transpose Delay

  • FM, SSG, ADPCM: 0Txy

    x Effect
    0-7 Delay count(Upward)
    8-F Delay count(Downward)

    y: Semitone count [0-F]

The pitch is changed after xx counts from the start of this step or note-on. The actual delay count for the downward change is x-8. This effect affects only the notes that are sounding.

Key Change Delay

  • Drumkit: 0Txy

    x Effect
    0-7 Delay count(Upward)
    8-F Delay count(Downward)

    y: Semitone count [0-F]

Plays the sample assigned to (the current key + specified semitones) of the drumkit xx counts after the start of this step or note-on. The actual delay count for a downward change is x-8. This effect only affects the note that is sounding.
This effect was added in v0.4.2.

Tone/Noise Mix

  • SSG: 0Vxx

    xx Effect
    00 No sound
    01 Tone
    02 Noise
    03 Tone & Noise

Set tone/noise output of SSG channel.
This effect was added in v0.3.0.

Master Volume

  • Rhythm: 0Vxx
    xx: Volume [00-3F]

Sets the volume of the entire rhythm channels.

Noise Pitch

  • SSG: 0Wxx
    xx: Pitch [00-1F]

Sets the SSG noise pitch.
This effect was added in v0.3.0.

Register Address Bank 0

  • FM, SSG, Rhythm, ADPCM, Drumkit: 0Xxx
    xx: Register address [00-B6]

Set the register address of bank 0 whose value will be rewritten with 0Zxx.
With this effect, you can specify SSG, rhythm sound source, FM common setting, FM 1-3ch register.
Be sure to set it to the left of the declaration position in the same step as the paired 0Zxx.
This effect was added in v0.3.1.

Register Address Bank 1

  • FM, SSG, Rhythm, ADPCM, Drumkit: 0Xxx
    xx: Register address [00-B6]

Set the register address of bank 1 whose value will be rewritten with 0Zxx.
With this effect, ADPCM and FM 4-6ch registers can be specified.
Be sure to set it to the left of the declaration position in the same step as the paired 0Zxx.
This effect was added in v0.3.1.

Register Value Set

  • FM, SSG, Rhythm, ADPCM, Drumkit: 0Xxx
    xx: Register value [00-FF]

Write the value to the register specified by 0Xxx or 0Yxx.
Be sure to set it to the right of the declaration position in the same step as the paired 0Xxx or 0Yxx.
This effect was added in v0.3.1.

AR Control

  • FM: Axyy
    x: Operator number [1-4] yy: Attack rate [00-1F]

Set the AR value of the operator x.
This effect was added in v0.3.0.

Brightness

  • FM: B0xx
    xx: relative value [01-FF]

Add xx-80 to TL of the modulators directly connected to cariers.
This effect was added in v0.3.1.

DR Control

  • FM: Dxyy
    x: Operator number [1-4] yy: Decay rate [00-1F]

Set the DR value of the operator x.
This effect was added in v0.3.0.

Extended Volume Slide

  • FM, SSG, ADPCM, Drumkit: EAxy
    x: Up factor [0-F]
    y: Down factor [0-F]

Fade a channel volume.
Fading speed is controled by factor which is calculated as x-y. The volume slide is stopped when x-y is 0.
Unlike Volume Slide Up/Down, this effect ignores note on events.
This effect was added in v0.5.1.

Note Cut

  • FM, SSG, Rhythm, ADPCM, Drumkit: ESxx
    xx: count [00-FF]

Take note-off and silence after xx counts from the start of this step or note-on.
This effect was added in v0.5.0. This effect was called as "Envelope Reset" before v0.5.3.

FB Control

  • FM: FBxx
    xx: Feedback [00-07]

Set the FB value.
This effect was added in v0.3.0.

Fine Detune

  • FM, SSG, ADPCM: FPxx
    xx: Pitch [00-FF]

Add xx-80 to the track register pitch.
This make finer changes than normal detune.
This effect was added in v0.4.5.

Volume Delay

  • FM, SSG, Rhythm, ADPCM, Drumkit: Mxyy
    x: Delay count [0-F]
    yy: Volume [00-FF]

The volume is changed after xx counts from the start of this step or note-on. This effect affects only the notes that are sounding.

ML Control

  • FM: MLxy
    x: Operator number [1-4] y: Multiple [0-F]

Set the ML value of the operator x.
This effect was added in v0.3.0.

RR Control

  • FM: RRxy
    x: Operator number [1-4] y: Release rate [0-F]

Set the RR value of the operator x.
This effect was added in v0.3.0.

TL Control

  • FM: Txyy
    x: Operator number [1-4] yy: Total level [00-7F]

Set the TL value of the operator x.
This effect was added in v0.3.0.

Exclusive Effects

Some effects are executed exclusively.

  • Portamento effects (01xx, 02xx, 03xx)
  • Volume slide (0A0x, 0Ax0)
  • Note slide effects (0Qxy, 0Rxy)

Other effects can be used simultaneously.

Trigger Events of Effects

The timing for loading each effect is as follows.

Trigger event Effect
Note on or 0G note on
If not, begin step
00xy, 01xx, 02xx, 03xx, 04xy, 07xy, 08xx, 0Axy, 0Hxy, 0Ixx, 0Jxx, 0Kxy, 0Pxx, 0Qxy, 0Rxy, 0Sxx, 0Txy, 0Vxx, 0Wxx, 0Xxx, 0Yxx, 0Zxx, Axyy, B0xx, Dxyy, EAyx, ESxx, FBxx, FPxx, Mxyy, MLxy, RRxy, Txyy
Begin step 0Fxx, 0Gxx, 0Oxx
End step 0Bxx, 0Cxx, 0Dxx
Clone this wiki locally