KungFuFurby / AddMusicKFF

Fork of AddMusicK, a compiler/inserter of music for Super Mario World
23 stars 15 forks source link

Add support for MSU-1 data storage for the sound data #437

Open KungFuFurby opened 2 months ago

KungFuFurby commented 2 months ago

Requested by Fernap and Burning Loaf on the SMWCentral Discord Server. Instead of storing the music data in the ROM and potentially consuming space there, the music data could instead be stored on the MSU-1 side via its internal data file. The amount of space that is available there is up to I think 4GB... the only game I can think of at this time that has taken full advantage of this, at least in terms of the graphical data, is Super Road Blaster.

This requires both a C++ side and a SNES side modification. The C++ side must be modified in order to compile all of the music data for the MSU-1 data file (and that's not counting if there are any potential conflicts). The SNES side has to be modified to read from the MSU-1 in order to load all of that data to the SPC700. Read times are not guaranteed to be instantaneous, so load times to the SPC700 can becomes less consistent when done this way, so I need to be careful on that one.

There also must be a fallback in case of no MSU-1: namely, no music, but have all stock SFX and samples on hand so that the audio doesn't completely break.