So, learned the very basics of Famitracker a while back. Snapped in some a simple tune as a placeholder just to get Famitone implemented and working in the engine. Well, the other day, sat down to really learn all the nuts and bolts of Famitracker. Made a gorgeous piece that I was really happy with. Then...
1) Found that Famitone doesn't support the effects or volumes (which I should've known, but it'd been a while since I'd looked at the documentation)...so I completely reworked the song to handle fades and vibratos at the instrument level rather than as effects...
only to find...
2) Pitch shifting on A3 gives the ugly crackling sound (which I researched and found was officially a thing due to the pitch boundaries), so I made another instrument to handle just the A3s, which was essentially a clone that did not 'pitch bend' vibrato, so that any time an A3 was played, it would use this instrument and avoid the pops...
but then...
3) The game essentially freezes every time it gets to one of these 'instrument changes' during playback. I did some testing, created just a scratch file that has an instrument change on one of the square channels, and it crashed upon the 'new instrument' playing every time. This completely changes my perception of how this works...
I just want to make sure that I'm not going crazy. Do I understand it that in a particular famitracker 'frame', on the square channels, you can not change instruments? What I mean is, on Square Channel one, let's say I wanted to play 2 bars with a legato "instrument 0" that uses duty cycle 02, but then on the same channel wanted to have a more clavy instrument play for 2 bars; "instrument 1". What seems to be happening is that every time the game gets to the point where "instrument 1" is about to play a note, the game (running Famitone 2) freezes.
What I find strange about this is that on my 'noise' channel, I successfully have "perc Loud", "perc Med", and "perc Quiet" instruments, and they change out just fine on the noise channel. However, even the most rudimentary tests crash my game when an instrument changes on the square wave channels.
Is there something anomalous happening or is that just how this works?
Thanks!
1) Found that Famitone doesn't support the effects or volumes (which I should've known, but it'd been a while since I'd looked at the documentation)...so I completely reworked the song to handle fades and vibratos at the instrument level rather than as effects...
only to find...
2) Pitch shifting on A3 gives the ugly crackling sound (which I researched and found was officially a thing due to the pitch boundaries), so I made another instrument to handle just the A3s, which was essentially a clone that did not 'pitch bend' vibrato, so that any time an A3 was played, it would use this instrument and avoid the pops...
but then...
3) The game essentially freezes every time it gets to one of these 'instrument changes' during playback. I did some testing, created just a scratch file that has an instrument change on one of the square channels, and it crashed upon the 'new instrument' playing every time. This completely changes my perception of how this works...
I just want to make sure that I'm not going crazy. Do I understand it that in a particular famitracker 'frame', on the square channels, you can not change instruments? What I mean is, on Square Channel one, let's say I wanted to play 2 bars with a legato "instrument 0" that uses duty cycle 02, but then on the same channel wanted to have a more clavy instrument play for 2 bars; "instrument 1". What seems to be happening is that every time the game gets to the point where "instrument 1" is about to play a note, the game (running Famitone 2) freezes.
What I find strange about this is that on my 'noise' channel, I successfully have "perc Loud", "perc Med", and "perc Quiet" instruments, and they change out just fine on the noise channel. However, even the most rudimentary tests crash my game when an instrument changes on the square wave channels.
Is there something anomalous happening or is that just how this works?
Thanks!