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]