Pokémon Red, Blue & Yellow (Probably Green) - Extended Music Hacking Tutorial [By YORAMRW (Me)]
I have found how to edit the music of Pokémon Red and Blue.
First, you have to download rbyImport (For FTMs). Then, you have to open the ''route202.FTM'' file with FamiTracker (Not the newer ones). To make your own song, you can erase the music in the patterns. You can customize the order of the patterns in the upper left corner. Keep the instruments like they are. However, if it is necessary, you can change the ''#Sequence'' or edit it. You always have to keep the Volume string ''3''.
If you have made your song, save it. You can call your song everything, most commonly is ''pokeredblu[SONGNAME].FTM''. You have to open it up in FamiTracker 0.3.5. Then, save it in that version.
The next step is: Inject the song in the ROM.
Open up the program ''rbyImport.EXE''. You will see a button ''Load FTM'', below the ''FTM -> ASM'' string. So, load the song you made in FamiTracker.
Just follow the steps in the order they are. The next thing is the ''Start Offset (Hex)''. Type in an start location of a song which is in the game. The start offstets can be found at http://datacrystal.romhacking.net/wiki/Pokemon_Red/Blue:ROM_map#Music_Pointers. Don't type in the number that is under ''Music Pointers'', but go first to the song name itself. An example: If you want to replace the Pallet Town music with your own, don't type in ''$822E'', but type ''A7C5''.
Then, you have to look at the Tempo. At the official ''rbyImport'' thread, there is a list with FamiTracker to ASM tempos. The default tempo is ''$A0'', which means in FamiTracker ''120''. Then, you can choose if you also want the Noise channel on Pokémon Red/Blue. Then, just click on ''Make ASM File''
Now, there is a box, named ''ASM -> BIN''. Click on ''Load ASM'' and select the ASM file, the program made. Now, click the ''Inject Music Into ROM'' option. Load a valid copy of a Pokémon Red/Blue (Probably Green) ROM.
Type in the Inject Offset and the Pointer will be very important. In the Offset Box, you just have to type in the same value as in the ''Start Offset'' box from the beginning.
Then, the Pointer is also very important. This time, you certainly have to look at the DataCrystal ''Music Pointers''. Type in the number in the list by the song you want to replace. At Pallet Town, it is ''$822E''.
If you have done this all, just click on ''Compile BIN File''.
Congratulatons! You have injected custom music into a Pokémon Red/BlueYellow ROM.
Here is a video I uploaded about I remade the Pallet Town music this way:
As you can hear, the sound of the instrument is VERY annoying. That is because you can't make the instrument bigger than 3 columns. You have to place velocity values by every note. Then, it sounds much more correctly.
Without Velocity, it looks like this:
[[SORRY, THIS PART CAN'T BE DONE UNTIL IT'S POSSIBLE TO CHANGE FONT.]]
WITH Velocity, it looks like this:
[[SORRY, THIS PART IS STILL NOT DONE.]]
In the second pattern, the song has Velocity values. That is how the music sounds in the video below. So, with the values, you will get rid of the annoying, whinious sound.
This video plays the sound with the Velocity:
Now, I have made a demake of the Pokémon Black and White music of Acculuma Town. The main sound gets Triangle, not very handy. Listen and enjoy.
And... An example from Koolboyman, who made the Pokémon Diamond, Pearl and Platinum Route 201 theme in FamiTracker.