Hi everyone, I'm Alex.
I create
MSU-MD patches for MegaDrive/Genesis games, replacing the chipsound with CD audio which works on flashcarts, real hardware and emulation. You can find my patches and sources on my
github.
I've been digging through all sorts of sound drivers and often times I'm struggeling with unexpected results when I mute the chipsounds by bypassing routines or setting registers from music-IDs to values that trigger a "stopAll" command. This is sometimes related to a bug in SMPS when no music is played where the original game expects music to be present. Seeing so many experts here, I'd like to ask for some information.
I've experienced that the most reliable way to mute SMPS is to null all the sound data. I've done that with Toki but it was more or less accidently that I found the correct location of the music tracks, while leaving the headers of each track intact.
What would be to right way to do it?
I'm also having a hard time with GEMS, which is doable for me, but since I don't know better, I patch each and every instruction where music is supposed to play. There's gotta be a better way, hijacking the driver itself.
If you had any useful tips for me, that'd be very much appreciated! Maybe you know of a tool that would come handy when trying to find locations, headers, data etc.? Thank you very much!