Fadeout and Note Cut Effect combined result into an unwanted click

  1. A weird tick (?) seems to slip thru when using the Cxx effect after a fade-out.

  2. Also note how the second note ramps very smoothly compared to the first note. (trying with DirectSound atm though).

I wanted to make my chiparps (phrases) a bit more dynamic via the main pattern editor, but it turns out a bit too glitchy this way.

Cxx-tickweird.xrns (5.0 KB)

(Just for my own curiosity…)

So looking at the first 6 lines of the example joule gives:

00 C-400 .. -O30 ----
01 ---.. .. -O00 ----
02 ---.. .. -O00 ----
03 ---.. .. -O00 ----
04 ---.. .. -O00 ----
05 ---.. .. -O00 -C00

Is it fair to say that when the player hits line 05, the ‘C00’ command ramps up the volume (near on full volume as there is no volume written(?)) of the looped sample and then cuts down(?)

Messing around I tried putting a explicit volume on line 05 of roughly what the volume of the sample would be at the start of that line:

00 C-400 .. -O30 ----
01 ---.. .. -O00 ----
02 ---.. .. -O00 ----
03 ---.. .. -O00 ----
04 ---.. .. -O00 ----
05 ---.. 08 -O00 -C00

The 0CXY effect ramps up the volume on the first tick on purpose, then ramps down the volume as specified. It also doesn’t stop the sample, it only ramps down the volume to zero.

That’s was how the effect behaved in FastTracker too, so we took that over for backwards compatibility and because it was a useful musical effect. See little demonstration XRNS attached. Stutter Effect.xrns (105.7 KB)

The behaviour isn’t really obvious from the name and actually also isn’t documented. So this definitely should be changed/fixed.

This is surely a misunderstanding? It never behaved that way in XM or MOD. C00 will sound the same as EC0 (note cut at tick 0) in xm. Some effects have a tick delay, but not Cxx, unless I’ve been missed someting fundamental for the last 20+ years of tracking.

Anyhow, I can use Mxx which seems to be more similar to the good old Cxx effect. IMO, maybe those two should have been swapped from the start.