Does DeSmuME have any memory watch function that allows me to see how much RAM is currently not being used? I'm trying to see how much I can fit into my RAM before the game will refuse to load my file.
The SWAR is determined by the SBNK. When building a SDAT with Nitro Sound Maker, you are able to configure which SWAR the sequence uses.I'm pretty sure the SWAR is determined by the SBNK, but I'm not sure exactly how the logic works because although I believe I know what I'm reading, the hex always seems to point to SWAR 0. There are around 500 SWARS with just a single SWAV in them for Pokemon cries that come before the instrument banks, but it doesn't start at 500 or anything, so I'm not sure what to make of that. All of my knowledge of these formats come from this specification description: http://www.feshrine.net/hacking/doc/nds-sdat.php. Generally what I find agrees with this specification, but I don't understand the indexing of the SWARs. Or does it not even matter? As long as the note is defined in a SBNK, does the game just figure out where it is somehow? I doubt it would be that easy. I might study some more SBNKs, but I remember looking through Black and White, which has a SBNK for every song, I seem to remember the SWAR index always being 0.
The fact that you can technically use the GBA slot for memory is interesting, though I highly doubt I have anywhere near the technical ability to figure that out. I'm hoping to be able to accomplish this just via file editing and replacing; if I have to modify code, I honestly think it will be beyond me to make it work. Thank you for helping me so far, though, you've given me some good information.
The main reason I doubt that it's a RAM issue is because of the fact that I made a small SWAR using Nitro Sound Maker (which is part of the NitroSDK) and a SBNK pair. I replaced some files in game with the ones that I made, and of course that caused the game to not play them. I think the main problem is the SDAT working in tandem with the game, as when you replace a SWAR with a bigger SWAR, it will cause some things to move around. Probably the same with SSEQ, SBNK, etc. Just speculation though, since the SDAT does work outside of the game.Why do you doubt that? I tested it by making a custom file that was smaller than the original, and things played properly. This was by replacing the SWAR instead of adding a new one, though, but I think it pretty much confirms the fact that the issue was RAM (my new SWAR is around 1.1MB, up from the old one which was around 400KB). Is Nitro Sound Maker part of the DS/Nitro SDK, or is it available somewhere else? If it's part of the SDK, I think I'm pretty much out of luck there unless someone knows how it actually works in the files.