::|CONTENTS
- Existing Effects
- Global Effects
- General Effects
- 2A03 / MMC5 Effects
- FDS Effects
- N163 Effects
- See Also
The pattern effects in
0CC-FamiTracker expand upon those found in
FamiTracker.
This article is written based on version 0.3.14.5.
Existing Effects
The following effects are directly carried over from
FamiTracker: 0, 1, 2, 3, 4, 7, A, B, C, D, F, G, H (2A03 / FDS), I (2A03 / FDS), J (FDS), P, Q, R, S, V (2A03 / MMC5 / VRC6 / VRC7 / N163), W (DPCM), X, Y, Z (DPCM).
The following effects have been ported from vanilla 0.5.0 beta: H (VRC7 / 5B), I (VRC7 / 5B), V (5B), W (5B).
The following effects have extra meanings in 0CC-FamiTracker:
-
0xy: The
x and
y parameters can be used in scheme arpeggio sequences. (This is how everything started)
-
Fxx: Cancels the current groove.
-
I0x (FDS): Disables automatic FM.
-
Jxx (FDS): Ineffective if automatic FM is active.
-
Sxx: On the triangle channel, disables the length counter and the linear counter.
Global Effects
Oxx: Groove setting.
xx = Groove index
Valid range = 00 - 1F
Note: The tracker ignores indices corresponding to blank grooves; it is
undefined behaviour to use blank grooves in exported NSFs.
General Effects
Lxx: Delayed note release.
xx = Delay amount in ticks
Note:
L00 is equivalent to the usual note release (
===).
Mxy: Delayed channel volume. Restores existing channel volume on next note.
x = Delay amount in ticks
y = New channel volume
Valid range for
x and
y = 1 - F
Txy: Delayed transpose.
If
x = 0 - 7: Delay
x ticks, transpose upwards
If
x = 8 - F: Delay (
x - 8) ticks, transpose downwards
y = Semitones to transpose
Valid range for
y = 0 - F
Note: Affects the echo buffer.
2A03 / MMC5 Effects
Exx: Length counter setting; enables length counter.
xx: Length counter index: (default 01)
xx
+00
+01
+02
+03
+04
+05
+06
+07
+08
+09
+0A
+0B
+0C
+0D
+0E
+0F
+00
10
254
20
2
40
4
80
6
160
8
60
10
14
12
26
14
+10
12
16
24
18
48
20
96
22
192
24
72
26
16
28
32
30
Note: Length counter is retriggered on new notes or when updating the high period register. Speed is twice as fast on the triangle channel.
Applies to: 2A03 Pulse, 2A03 Triangle, 2A03 Noise, MMC5 Pulse
EEx: Configure hardware envelope.
If
x = 0: Disable hardware envelopes (default)
If
x = 1: Enable hardware decay, looping
If
x = 2: Enable length counter
If
x = 3: Enable hardware decay, once
Note: When hardware decay is enabled, the channel volume will control the decay rate; 0 is the fastest.
Applies to: 2A03 Pulse, 2A03 Noise, MMC5 Pulse
EEx: Configure hardware envelope.
If
x = 0: Disable hardware envelopes (default)
If
x = 1 - 3: Enable length counter and linear counter
Applies to: 2A03 Triangle
Sxx: Triangle linear counter setting.
If
xx = 80 - FF: Cut notes after (
xx - 80) / 240 seconds for all new notes
Applies to: 2A03 Triangle
FDS Effects
Exx: FDS hardware volume envelope setting.
If
xx = 00 - 3F: Attack envelope, 00 is the fastest
If
xx = 40 - 7F: Decay envelope, 40 is the fastest
If
xx = E0: Disable hardware volume envelope
Hxx: Automatic FM multiplier setting.
xx - 80 = Frequency multiplier
Valid range for
xx = 80 - FF
Ixy: Automatic FM; binds modulation rate to output frequency.
x = Frequency multiplier
y + 1 = Frequency divider
Valid range for
x = 1 - F
Valid range for
y = 0 - F
Zxx: Automatic FM rate bias.
If
xx < 80: Decrease FM rate after multiplication
If
xx = 80: Zero bias
If
xx > 80: Increase FM rate after multiplication
N163 Effects
Zxx: Wave buffer position setting.
If
xx = 00 - 7E: Override channel's wave position to
xx × 2
If
xx = 7F: Return control to N163 instruments
Note: It is
undefined behaviour to use a wave position that conflicts with the channel registers. The tracker automatically ignores invalid parameters.
See Also
-
0CC-FamiTracker
-
List of Effects Commands