gbt-player
gbt-player copied to clipboard
[Request] Portamento effect (pitch bend) for `s3m2gbt`
A Game Boy tracker, called Little Sound DJ (LSDj), supports pitch bend effect as Pxx
.
As this effect is quite useful for the song, there are lots of LSDj songs that use this. example song
It would be nice if s3m2gbt
supports Exx
, Fxx
and Gxx
effects.
I did experiment a bit with it, but I think I decided to ignore it because changing frequencies on the fly created a lot of noise.
I'm going to be busy for a bit, but I'll try to look into this at some point and see if there is some way to do it cleanly.
Thanks for considering this feature!
I forgot to mention that the Tone Portamento (Gxx
effect on s3m) is also used a lot on LSDj (Lxx
on LSDj).
I would really appreciate it if you could also look into this effect.
I coded pitch bends in the fork of gbt-player (GBT-Rulz) used in gb studio, unfortunately it's only for the deprecated GBDK branch. https://github.com/chrismaltby/gb-studio/pull/505 You can find all the changes made here.
I think the only "breaking" change was reworking noise to pass the 8bit value directly (so note pitch could affect noise in a linear fashion, not just c-5) but that requires all songs to be recompiled, and some artists modified the noises in the player directly (the start noise values were moved mod2gbt.c).
But, it could be worth looking at.
it overhauls sound re trigger for effects, meaning less popping and the ability to use these effects at all, adds 1xx 2xx pitch bends (not accurate to .mod) and a non standard effect, 9ve, which directly sets the volume and hardware envelope for the channel (fade envelope stays with new volumes).
That last one is a little abstract because you must build and run to hear it correctly, but it makes gbt-player very competitive. This user, https://twitter.com/ScottSemanski has made ample use of 9ve, 101 201 for vibrato and kick drums, can hardly believe it's still gbt.