Discussion
 
13547 views
 
101% HertzDevil
0CC-FamiTracker Effects Commands View HTML Version
 

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%20Effects%20Commands[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:

- '[t[mono]0xy'[/t]: The '[t[b0]x'[/t] and '[t[b0]y'[/t] parameters can be used in scheme arpeggio sequences. (This is how everything started)
- '[t[mono]Fxx'[/t]: Cancels the current groove.
- '[t[mono]I0x'[/t] (FDS): Disables automatic FM.
- '[t[mono]Jxx'[/t] (FDS): Ineffective if automatic FM is active.
- '[t[mono]Sxx'[/t]: On the triangle channel, disables the length counter and the linear counter.


'[#[Global Effects]
'[t[mono]Oxx'[/t]: Groove setting.
'[t[b0]xx'[/t] = Groove index
Valid range = 00 - 1F

Note: The tracker ignores indices corresponding to blank grooves; it is '[b]undefined behaviour'[/b] to use blank grooves in exported NSFs.


'[#[General Effects]
'[t[mono]Lxx'[/t]: Delayed note release.
'[t[b0]xx'[/t] = Delay amount in ticks

Note: '[t[mono]L00'[/t] is equivalent to the usual note release ('[t[mono]==='[/t]).


'[t[mono]Mxy'[/t]: Delayed channel volume. Restores existing channel volume on next note.
'[t[b0]x'[/t] = Delay amount in ticks
'[t[b0]y'[/t] = New channel volume
Valid range for '[t[b0]x'[/t] and '[t[b0]y'[/t] = 1 - F


'[t[mono]Txy'[/t]: Delayed transpose.
If '[t[b0]x'[/t] = 0 - 7: Delay '[t[b0]x'[/t] ticks, transpose upwards
If '[t[b0]x'[/t] = 8 - F: Delay ('[t[b0]x'[/t] - 8) ticks, transpose downwards
'[t[b0]y'[/t] = Semitones to transpose
Valid range for '[t[b0]y'[/t] = 0 - F

Note: Affects the echo buffer.


'[#[2A03 / MMC5 Effects]
'[t[mono]Exx'[/t]: Length counter setting; enables length counter.
'[t[b0]xx'[/t]: Length counter index: (default 01)

'[t[b0]'[tab[xx[30]'[tab[+00[30]'[tab[+01[30]'[tab[+02[30]'[tab[+03[30]'[tab[+04[30]'[tab[+05[30]'[tab[+06[30]'[tab[+07[30]'[tab[+08[30]'[tab[+09[30]'[tab[+0A[30]'[tab[+0B[30]'[tab[+0C[30]'[tab[+0D[30]'[tab[+0E[30]'[tab[+0F[30]'[/t]
'[t[b0]'[tab[+00[30]'[/t]'[t[0]'[tab[10[30]'[tab[254[30]'[tab[20[30]'[tab[2[30]'[tab[40[30]'[tab[4[30]'[tab[80[30]'[tab[6[30]'[tab[160[30]'[tab[8[30]'[tab[60[30]'[tab[10[30]'[tab[14[30]'[tab[12[30]'[tab[26[30]'[tab[14[30]'[/t]
'[t[b0]'[tab[+10[30]'[/t]'[t[0]'[tab[12[30]'[tab[16[30]'[tab[24[30]'[tab[18[30]'[tab[48[30]'[tab[20[30]'[tab[96[30]'[tab[22[30]'[tab[192[30]'[tab[24[30]'[tab[72[30]'[tab[26[30]'[tab[16[30]'[tab[28[30]'[tab[32[30]'[tab[30[30]'[/t]

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


'[t[mono]EEx'[/t]: Configure hardware envelope.
If '[t[b0]x'[/t] = 0: Disable hardware envelopes (default)
If '[t[b0]x'[/t] = 1: Enable hardware decay, looping
If '[t[b0]x'[/t] = 2: Enable length counter
If '[t[b0]x'[/t] = 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


'[t[mono]EEx'[/t]: Configure hardware envelope.
If '[t[b0]x'[/t] = 0: Disable hardware envelopes (default)
If '[t[b0]x'[/t] = 1 - 3: Enable length counter and linear counter

Applies to: 2A03 Triangle


'[t[mono]Sxx'[/t]: Triangle linear counter setting.
If '[t[b0]xx'[/t] = 80 - FF: Cut notes after ('[t[b0]xx'[/t] - 80) / 240 seconds for all new notes

Applies to: 2A03 Triangle


'[#[FDS Effects]
'[t[mono]Exx'[/t]: FDS hardware volume envelope setting.
If '[t[b0]xx'[/t] = 00 - 3F: Attack envelope, 00 is the fastest
If '[t[b0]xx'[/t] = 40 - 7F: Decay envelope, 40 is the fastest
If '[t[b0]xx'[/t] = E0: Disable hardware volume envelope


'[t[mono]Hxx'[/t]: Automatic FM multiplier setting.
'[t[b0]xx'[/t] - 80 = Frequency multiplier
Valid range for '[t[b0]xx'[/t] = 80 - FF


'[t[mono]Ixy'[/t]: Automatic FM; binds modulation rate to output frequency.
'[t[b0]x'[/t] = Frequency multiplier
'[t[b0]y'[/t] + 1 = Frequency divider
Valid range for '[t[b0]x'[/t] = 1 - F
Valid range for '[t[b0]y'[/t] = 0 - F


'[t[mono]Zxx'[/t]: Automatic FM rate bias.
If '[t[b0]xx'[/t] < 80: Decrease FM rate after multiplication
If '[t[b0]xx'[/t] = 80: Zero bias
If '[t[b0]xx'[/t] > 80: Increase FM rate after multiplication


'[#[N163 Effects]
'[t[mono]Zxx'[/t]: Wave buffer position setting.
If '[t[b0]xx'[/t] = 00 - 7E: Override channel's wave position to '[t[b0]xx'[/t] × 2
If '[t[b0]xx'[/t] = 7F: Return control to N163 instruments

Note: It is '[b]undefined behaviour'[/b] 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]

 
C A T E G O R I E S
 
 
Effects Commands