Haha, well, as I've mentioned before, every single soundtrack I start working on for the SNES MIDI Remaster Project throws some kind of thing at me that hasn't been present in any of the other soundtracks. So, once again, I am adding more new features to MIDI-MIS to compensate.
The current soundtrack I am working on, Battletoads in Battlemaniacs, does something strange yet rather clever. The SNES has 8 sound channels, and each can only play a single sound at a time. In all other games I've worked on thus far, each instrument is placed on a few channels, and when one instrument is done with its part, it might switch over to a different one. So one channel may end up with various instruments, and sometimes percussion mixed in. Generally percussion ends up mostly on a single channel with occasional jump over to another during the more percussion heavy sections of a song.
Well, THIS soundtrack uses EVERY channel, for everything, one note at a time. So every instrument and every percussion plays across all 8 channels, wherever there is a free spot that is not currently playing a sound. So sequential notes for, let's say, bass guitar, might play on 1, 2, 3, 4, 5, 6, 7, 8, 2, 5, 6, 8, 1, 2, 4, 5
Quite an interesting way to do it, which eliminates the need for cutting a lot of notes short as they might have to do if using only 1 or 2 channels.
HOWEVER, what this means for me in converting them to MIDI, is that now all percussion ALSO spans all 8 channels, and so I need to have all percussion mapped on to channels 9-16 in the MIDI files. For all percussion. This means they all share channels, where in all the previous soundtracks I've covered I was able to isolate each percussion to a few channels each, so I could use pitch bends to replicate the percussion note changes present in the original music, that are not possible in MIDI otherwise.
Now that all my percussion is layered per channel, I found that pitch bending one percussion instrument was inadvertently affecting the others. I had tried simply merging all of each percussion on to a single channel instead, but there are tons of volume commands carried over from the original 8 channels that were then also all stacked on top of each other, and the percussion volumes were incorrectly fluctuating all over with the rhythms. So I had to keep them each spread out over channels 9-16. I've recently added in assorted extra pitch bend manipulation functionality to MIDI-MIS, so I just (fingers crossed) finished adding in yet ANOTHER bit to force a pitch bend command to happen before every percussion note, so now if the pitch bend is adjusted previously, it'll be set back to what it should be when the next note on a different instrument plays.
So far, so good 😀 Hopefully no more surprises with this one. And on the plus side, having the instruments playing across all channels may actually be keeping me from experiencing many of the other bizarre issues I saw with other soundtracks, with sequential notes creating conflicting MIDI data 🤩
An additional issue this introduced is that many commands that would normally apply to a single instrument now affect many instruments. This soundtrack has some audio level balance issues between instruments after being converted to MIDI. As a result, I had to implement individual volume modification in my editor MIDI-MIS. This requires inserting additional volume commands before each program change if one is not already present outside of another program.
For example, prior to adding this, if I had VOL, PGM A, Note, PGM B, Note, and wanted to change the volume just for PGM A, PGM B would also erroneously be affected by the volume change. Now I can adjust each without affecting non-related programs.
I've also made various other updates/improvements to MIDI-MIS so future soundtracks are easier to work on.
The most recent version of MIDI-MIS (always a work in progress) can be found here:
https://drive.google.com/drive/folders/114K2TuMGXu7w_vX-iBWI0Kf9RCb9wi6K?usp=drive_link