Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /storage/content/49/145849/famitracker.com/public_html/forum/classes/dbHandler.php on line 29
I made an instrument that sweeps the triangle upwards with a looping pitch envelope, and with a looping volume envelope turning it on and off.
In Famitracker it silences itself when it reaches a very high pitch.
In the exported NSF / hardware the triangle channel makes an unpleasant rhythmic popping noise once it gets there. (I haven't determined exactly what's going on there, yet, but NSFPlay seems to emulate it correctly.)
It's easy to work around this by stopping the note when it gets there, but I thought I'd point it out in case it exposes some deeper problem with the triangle emulation.
Triangle channel simply keeps running at the minimum period value, and that's what it sounds like what it does. Famitracker is probably checking for a period value less than 8 and silencing the channel.
The Codemasters logo does the exact same thing by the way.
I tried it in NSFplay but didn't get the noise there for some reason. Actually the only emulator I got it in was FCEUX, I haven't tried it on the NES yet.
Anyway the triangle is silenced when period is less than 2 since the resulting frequency would be inaudible. Removing that check results in the same noise, which makes sense since the DAC will output different levels depending on if the channel is on or off (even if the wave itself is inaudible). So perhaps the triangle should be halted by software when reaching these periods, instead of relying on the emulator/hardware doing it.
Ah, yeah that makes sense. I guess every time it halts it's basically going to come out of its inaudible tone at a "random" state.
It only happens in the NSFPlay 2.3 beta... I guess I must have removed similar auto-silencing code at some point. Though... I might have to put that back, as I think I'm getting a little bit of aliasing leaking out.