::|CONTENTS
- Global Effects
- YAMAHA YMU759
- SEGA Genesis (YM2612)
- SEGA Master System (SN76489)
- NINTENDO Game Boy (Z80 variant)
- NEC PC-Engine (HuC6280)
- NINTENDO Entertainment System (RP2A03)
- COMMODORE 64 (SID)
- See Also
These are the effects commands available for the 6 chips supported thus far by
DefleMask Tracker. The ones that begin with a 1 are always system-specific (also 2 for the SN76489) so make sure you do not mix them up after switching systems!
Global Effects
00xy - Arpeggio; fast note shifting in half steps.
x = Number of half steps from root note for first shift
y = Number of half steps from root note for second shift
Ex: 037 = Minor chord. 047 = Major chord.
View article on
arps for more examples.
01xx - Portamento up; smooth pitch glide up.
02xx - Portamento down; smooth pitch glide down.
If xx > 00: Speed
If xx = 00: Off
03xx - Glissando; pitch glide to next note.
If xx > 00: Speed
If xx = 00: Off
04xy - Vibrato; pitch vibration.
If x > 0: Speed
If x = 0: Off
y = Depth
Overridden by YMU759; see below.
05xy - Glissando + Volume slide; see Axy below.
Continues previous 03xx effect without modifying it.
06xy - Vibrato + Volume slide; see Axy below.
Continued previous 04xy effect without modifying it.
07xy - Tremolo; volume tremor.
If x > 0: Speed
If x = 0: Off
y = Depth
08xy - L/R output setting.
If x = 0: Left channel output off
If x = 1: Left channel output on
If y = 0: Right channel output off
If y = 1: Right channel output on
Overridden by YMU759 and HuC6280; see below.
09xx - Speed 1 setting; see 0Fxx below.
If xx = 01-20: Ticks per row for odd rows
0Axy - Volume slide.
If x = 0 & y = 0: Halt slide
If x = 0 & y > 0: Volume slide up x ticks depth
If x > 0 & y = 0: Volume slide down y ticks depth
Note: Same parameters for effects 05xy and 06xy above.
0Bxx - Jump to frame.
xx = Destination frame number
0Cxx - Retrigger, works only for current row.
xx = Rate in ticks
0Dxx - Skip to next frame at row xx.
xx = Destination row number
0Fxx - Speed 2 setting; see 09xx above.
If xx = 01-20: Ticks per row for even rows
E1xy - Note slide up
E2xy - Note slide down
x = speed of slide
y = semitones to slide
E5xx - Channel fine pitch setting.
If xx = 80: Default
If xx > 80: Increase pitch
If xx < 80: Decrease pitch
EBxx - Set sample bank to xx.
If xx = 00-0B: Sample bank 0 to 11 is used.
If xx > 0B: nothin'
ECxx - Delayed note cut.
xx = number of ticks to delay
EDxx - Note delay.
xx = number of ticks to delay
EFxx - Global fine pitch setting.
If xx = 80: Default
If xx > 80: Increase pitch
If xx < 80: Decrease pitch
YAMAHA YMU759
04xx - Built-in vibrato.
If xx = 00: Vibrato off
If xx = 01-1F: Vibrato on, directly using settings from instrument
If xx = 20-3F: Vibrato on, +1 to settings from instrument
If xx = 40-5F: Vibrato on, +2 to settings from instrument
If xx = 60-7F: Vibrato on, +3 to settings from instrument
08xx - Panning setting.
If xx = 00-7F: Position; 00 is full left, 7F is full right
10xx - Legato; disables attack of the current note.
xx: Inconsequential
SEGA Genesis (YM2612)
10xy - Amplitude LFO and frequency LFO rate setting.
If x = 0: Disable LFO
If x > 0: Enable LFO
If y = 0-7: Rate
11xx - Feedback setting.
If xx = 00-07: Feedback amount
12xx - Operator 1 total level setting.
13xx - Operator 2 total level setting.
14xx - Operator 3 total level setting.
15xx - Operator 4 total level setting.
If xx = 00-7F: New TL value
16xy - Operator multiplier factor setting.
If x = 0: Operator 1
If x = 1: Operator 2
If x = 2: Operator 3
If x = 3: Operator 4
y = Multiplier factor
17xx - FM channel 6 sample toggle.
If xx = 00: Disable samples
If xx > 00: Enable samples
19xx - All operators attack rate setting.
1Axx - Operator 1 attack rate setting.
1Bxx - Operator 2 attack rate setting.
1Cxx - Operator 3 attack rate setting.
1Dxx - Operator 4 attack rate setting.
If xx = 00-1F: New AR value
SEGA Master System (SN76489)
20xy - PSG noise channel setting.
If x = 0: 3-pitch fixed noise
If x > 0: Variable-pitch noise
If y = 0: Periodic noise
If y > 0: White noise
This effect is also available when the current system is set to Genesis, via the PSG channels.
NINTENDO Game Boy (Z80 variant)
10xx - GB wave channel selector.
If xx = 00-1E: Waveform number
11xx - GB noise channel setting.
If xx = 00: White noise
If xx = 01: Periodic noise
12xx - GB square channel duty setting.
If xx = 00: 12.5% duty
If xx = 01: 25% duty
If xx = 02: 50% duty
If xx = 03: 75% duty
13xy - GB square channel 1 sweep settings.
If x = 0: Sweep down
If x = 1: Sweep up
If y = 0: Sweep off
If y = 1-7: Sweep shift amount
14xx - GB square channel 1 sweep period.
If xx = 00-07: Sweep period
NEC PC-Engine (HuC6280)
08xy - L/R output setting.
x = Left output volume
y = Right output volume
10xx - Instrument waveform selector
If xx = 00-0E: Waveform number
11xx - Channels 5/6 noise toggle.
If xx = 00: Note output
If xx > 00: Noise output
12xx - Channel 2 LFO setting.
If xx = 00: LFO mode off
If xx = 01: LFO mode on, depth 1
If xx = 02: LFO mode on, depth 16
If xx = 03: LFO mode on, depth 256
Channel 2 will produce no audio output itself when LFO mode is enabled, and instrument waveforms on this channel are used to modulate the pitch of channel 1.
13xx - LFO speed setting.
xx = speed; actual rate varies jointly with channel 2's frequency and this effect
17xx - Toggle sample output.
If xx = 00: outputs from wavetable
If xx = 01: outputs from samples
NINTENDO Entertainment System (RP2A03)
12xx - 2A03 square channel duty setting.
If xx = 00: 12.5% duty
If xx = 01: 25% duty
If xx = 02: 50% duty
If xx = 03: 75% duty
COMMODORE 64 (SID)
10xx - Set wave.
If xx = 00: No wave
If xx = 01: Triangle
If xx = 02: Saw
If xx = 03: Saw + Triangle
If xx = 04: Pulse
If xx = 05: Pulse + Triangle
If xx = 06: Pulse + Saw
If xx = 07: Pulse + Triangle + Saw
If xx = 08: Noise
11xy - Set filter cutoff.
If xx = 00-3F: Cutoff value
12xx - Set pulse width.
If xx = 00-3F: Pulse width
13xx - Set filter resonance.
If xx = 00-0F: Filter resonance
14xx - Set filter mode.
If xx = 00: No filter
If xx = 01: Low pass
If xx = 02: Band pass
If xx = 03: Band pass + Low pass
If xx = 04: High pass
If xx = 05: High pass + Low pass
If xx = 06: High pass + Band pass
If xx = 07: High pass + Band pass + Low pass
1Axx - Reset ADSR on new notes.
If xx = 00: Do not reset ADSR
If xx = 01: Reset ADSR on new notes
1Bxx - Reset filter cutoff.
If x = 00: Do not reset filter cutoff on every new note
If x > 00: Reset filter cutoff on every new note
If y = 00: Do not reset filter cutoff instantly
If y > 00: Reset filter cutoff instantly
1Cxx - Reset pulse width.
If x = 00: Do not reset filter cutoff on every new note
If x > 00: Reset filter cutoff on every new note
If y = 00: Do not reset filter cutoff instantly
If y > 00: Reset filter cutoff instantly
1Exy - Set ADSR parameters.
If x = 0, y = 0-F: Set attack
If x = 1, y = 0-F: Set decay
If x = 2, y = 0-F: Set sustain
If x = 3, y = 0-F: Set release
If x = 4, y = 0-1: Set ring modulation off (0) or on (1)
If x = 5, y = 0-1: Set sync off (0) or on (1)
If x = 6, y = 0-1: Set CH2OFF off (0) or on (1)
See Also
DefleMask Tracker
List of Effects Commands