This tutorial will attempt to demonstrate how to get midi files from other games to put into Gameboy Advance rom hacks. I have found 3 different systems that you can do this with, I will add more as I come across more. Now, to the tutorial, shall we?
1. Nintendo Entertainment System (NES)
Woohoo! The 8-bit glory system! It may seem odd that you can get MIDI sequences from the NES, but it is absolutely possible. Follow these instructions to get a MIDI from a NES rom.
1. You will need a .nsf (NES Sound Format) of the game in question. You can Google it, or make it yourself with NES2NSF.
3. Create your NSF or download it off the internet.
4. Open the NSF with nsf2midi, and go to the song you wish to export. The song will play. Let the song play for as long as you want your midi to be. At the point of time you wish to have it end, go File, then Log to SMF. Here, you can save your midi and continue on with insertion.
Do note, with this technique, it will generate anything between 1 and 5 channels, as the NES has limited sound capabilities. You may need to remove channels to make it fit correctly. It will also put all tracks on Patch #1, so you will want to open it in a midi editor and fix that.
2. Super Nintendo Entertainment System (SNES)
Nintendo's first 16-bit system. There are many good songs, like Super Mario World, Paper Mario and Earthbound. What can you think of?
1. You will need to make a .spc file of the song you want. Zophar's list of ripped .spc files You can also use the snes emulator, zsnes to make it as well. It may not always be compatible though.
2. Now, get spc2midi and open your .spc file. Just like the NES midi converter, all tracks will be put in patch #1, and there will be extra tracks added. You can determine the length, though.
3. Convert, loop and insert.
3. Nintendo DS (NDS)
Probably the easiest to do, you would have to be stupid to not know how to do this.
1. You will need ndssndext. Take your .nds file and drag it over the command-line program. Give it a few minutes, and in the location of the nds file, it will have a folder with the internal rom's name. This is where all your midis are.
2. Find your midi. Do note that some midis may have more than 10 channels, the maximum of a Gameboy advance game. You may have to fix that. Also, the patch channels that are in the game will be retained, so you may have to adjust the patch numbers.
I thank you for reading this. If you wish to redistribute this, please contact me via PM or VM. This was written on August 4, 2010. If there is any content that can be added or removed, please notify me and I will take an appropriate action.
Hey thanks. I've been looking for the nds tool to rip some midis I've been wanting to loop for a while.
Hey, also, I need to add this later today, but if ndssndext can't extract it, try VGMTrans. It's buggy, but I do plan on extending the use of VGMTrans and FL Studio in another tutorial VERY soon. Keep an eye out for it.