+  RHDN Forum Archive
|-+  Romhacking
| |-+  ROM Hacking Discussion
| | |-+  Replacing music in Nintendo DS games
Pages: [1]
Author Topic: Replacing music in Nintendo DS games  (Read 2 times)
tssf
Guest
« on: December 02, 2008, 10:07:52 am »

I read through the rules and didn't find anything about the hacking of current generation games listed so, I'm gonna go ahead and post this. I wrote details on my work journal, so I'm just going to copy and paste from there to here.

The goal mainly is to get this song at 1:31. (Called Zerovos Lavomus, a remix I did years ago) into Chrono Trigger DS. Here are the steps I attempted to get this to work:

Quote
I'm attempting to inject the song into the ROM itself..but so far my efforts are in vein. Here are the steps I took:

Step 1: Extracted BGM_32.SSEQ and Bank_32.DLS from the CT DS ROM. This was the easy part.

Step 2: Took Zerolavo_GMstandard.mid and modified it to use the instrumentation in bank_32.dls ..it doesn't sound as good, but it works. I'm not sure how to convert a DLS back to a sound bank file that the DS could understand, so I can't add samples to instrumentation. I opted to simply keep the instrumentation from this song itself.

Step 3: I converted the new zerolavo_gmstandard.mid to SSEQ using a MIDI2SSEQ tool. The tool said the conversion was successful, I don't really trust it though. But I'm sure it worked fine. I also renamed my modified MIDI file to BGM_32.sseq

Step 4: I took a tool called "editor" or kiwi.ds or whatever.. it extracts the entire file contents of a ROM, and can recompile it. I extracted sound_data.sdat from the data/sound folder. Then, I extracted the entire contents of that file into a sub folder.

Step 5: I replaced BGM_32.sseq with my copy in the folder.

Step 6: Using that kiwi editor program, I recompiled the sound_data.sdat with the new MIDI sequencer data. It did it successfully. All the folders appeared to go where they were supposed to.

Step 7: After that, I extract the entire contents of the Chrono Trigger ROM itself and put it into it's own folder.

Step 8: After the extraction was complete, I then replaced the original sound_data.sdat with my version in the data/sound folder on my hard drive (the extracted version)

Step 9: Using that kiwi editor program again, I compiled the entire folder structure and it appeared all the data folders went where they were supposed to.

Step 10: I tried running the newly compiled ROM in No$GBA ..the font is completely black now, and it's giving me an error saying that it can't read the SRAM.. So I readjusted No$GBA's SRAM format and success.. sort of. It loaded. It got to the company splash screens, then it goes black.

I tried it in another emulator (iDeas) and it didn't even get to the splash screen.

I then loaded the ROM into my actual Nintendo DS, and the ROM crashed right at load time.. I also had "ROM Trim" enabled in my games patcher, though. So I'll try recompiling without that to see if the game will load on the actual DS.

Nope, no luck. It sees the logo and the company info, but the game just crashes now.

It's interesting to note that when I load up my modified sound_data.sdat or actual NDS ROM into VGMTrans, the music data is all there, however the sample data is all messed up. None of the music plays properly. If I play BGM11 for instance, then shift my cursor to BGM10, then BGM11's music plays fine. Interesting.

When converting my SSEQ back to MID, the song plays fine in Cakewalk..just like I designed it to. So it must be Kiwi.ds not recompiling it correctly.

Perhaps Kiwi.ds isn't compiling the sound_data.sdat file properly? The music seems to be completely out of it's original ROM order as well.

Hmm, it seems I am defeated.. This time. Smiley

If anyone's had any luck at music replacement in DS games, can you let me know? Smiley
Kitsune Sniper
Guest
« Reply #1 on: December 04, 2008, 02:46:57 am »

Maybe the file you created was too big, or too small. I've seen games that don't like it if you try to load files bigger or smaller than expected into memory, due to limitations or Konamicrack.
Pages: [1]  


Powered by SMF 1.1.4 | SMF © 2006-2007, Simple Machines LLC