• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

All-Instrument Patch (FireRed, Ruby, Emerald)

48
Posts
9
Years
  • Age 31
  • Seen Oct 26, 2015
Over in the Fire Emblem hacking community, a hacker named Blazer created a patch that added all 127 MIDI instruments to FE7, gathered together in a 'universal' voicegroup. My thought? Why couldn't we have that?

With permission from Blazer, I have adapted the patch for Pokemon FireRed. I have combined it with drums from GoGo's brilliant HGSS Music Patch, to create a 'universal' voicegroup for FireRed. This voicegroup includes every single instrument, which, aside from the drums, correspond with normal MIDI/Sappy instrument numbers. The instruments are high-quality too. A song I tested sounded almost exactly like the original MIDI in-game when I assembled it using the voicegroup.

The Gunshot and Applause instruments were replaced in the voicegroup with two drumsets from the HGSS Music Patch. They are instruments 127 and 126 respectively. 127 corresponds to the 'normal' drum kit. I'm not quite sure what 126 is, but it fills the role of the D#5 note in drum tracks, and is therefore included for completion sake.

To use this patch is simple: Assemble your song in the voicegroup. For FireRed and Ruby, the voicegroup offset is 0xB30C5C. For Emerald, the voicegroup offset is 0x1130C5C.

The Read Me includes much of this information, along with the offsets for the Gunshot and Applause instruments, which remain in the patch.

The FireRed and Ruby patches are IPS patches, and are compatible with GoGo's HGSS Music Patch. The Emerald patch, however, is a UPS patch. It will expand your ROM if it's not already, and it is NOT compatible with the HGSS Music Patch.

The FireRed patch is compatible with JPAN's Hacked Engine, and MrDollSteak's Decap and Attack Rombase.

I hope everyone enjoys this! I would appreciate any feedback, comments, etc.

Special Thanks

Blazer-The FEShrine webmaster who created the original All-Instrument Hack for FE7, and happily granted me permission to adapt and distribute a similar patch for FireRed.

GoGo-Who created the HGSS Music Patch and taught me EVERYTHING I know about music hacking. Both through his amazing tutorial, and through patiently answering every single one of my questions. You rock dude!

Downloads
FireRed:
https://www.dropbox.com/s/3t10e0vih4j9f5q/All-Instrument%20Patch%20%28FireRed%29.zip

Ruby:
https://www.dropbox.com/s/psrdm459n0wzmr4/All-Instrument%20Patch%20%28Ruby%29.zip

Emerald
https://www.dropbox.com/s/a1sztwd3odigea8/All-Instrument%20Patch%20%28Emerald%29.zip
 
Last edited:

Queen Azura

Mistress of Midnight
59
Posts
9
Years
This sounds wonderful! Is there any possibility of making this patch suitable for Emerald? That would be utterly amazing.
 
48
Posts
9
Years
  • Age 31
  • Seen Oct 26, 2015
Yes, it's more then possible. It would actually be very easy.

But first, I want to make adjustments to the patch so it doesn't have such large swaths of free space. This will mean changing hundreds of pointers. Quite a large task.

If you would like to have this for Emerald, what you need to do is simple. Patch this to a FireRed ROM, copy everything from the various offsets which I have listed, and paste them in the EXACT same spots on the Emerald ROM. That should work.
 

Queen Azura

Mistress of Midnight
59
Posts
9
Years
Yes, it's more then possible. It would actually be very easy.

But first, I want to make adjustments to the patch so it doesn't have such large swaths of free space. This will mean changing hundreds of pointers. Quite a large task.

If you would like to have this for Emerald, what you need to do is simple. Patch this to a FireRed ROM, copy everything from the various offsets which I have listed, and paste them in the EXACT same spots on the Emerald ROM. That should work.

I wish you good luck in all your hard work. It's really wonderful. ^^ I'm afraid that I'm not quite yet skilled enough in editing ROMs (do not know how to expand a ROM even, truthfully) to try and do that on my own, but I'll look into it.
 
48
Posts
9
Years
  • Age 31
  • Seen Oct 26, 2015
Well, once the re-pointing is done, I'm going to put this up as a UPS patch. A UPS patch will expand a ROM automatically. That will help.

Thank you for the support! I'm hoping this will turn into a useful resource!
 
3,830
Posts
14
Years
  • Age 27
  • OH
  • Seen Feb 26, 2024
Once you finish the repointing of the data to a new area, this will be quite impressive!
Does it really take up so much space as to warrant an expanded ROM?
 
48
Posts
9
Years
  • Age 31
  • Seen Oct 26, 2015
Not really. At least, I'm pretty sure not.

Both the original FE7 patch and the HGSS Music Patch use expanded ROMs, so it's me following precedent more then anything else.

What takes up most of the space right now, as I've said before, is the huge swaths of free space between the various parts of the patch. FE7 doesn't have nearly as much flexibility with free space as FireRed does, so the original patch had to start at 0x107D7D0. And even after that, a second version of the patch had to be released which was completely re-pointed and expanded the ROM even further, in order not to interfere with data.

I put the D#5 drums at 0x1000000 and the HGSS Drums in their original spots, to make things easier on myself while pulling together this first version of the patch. Which didn't really help the free space thing.

Luckily for us, FireRed, in contrast to FE7, has huge swaths of free space, even on a clean ROM. I will definitely try getting the patch fitted onto a non-expanded ROM first!
 
3,830
Posts
14
Years
  • Age 27
  • OH
  • Seen Feb 26, 2024
Not really. At least, I'm pretty sure not.

Both the original FE7 patch and the HGSS Music Patch use expanded ROMs, so it's me following precedent more then anything else.

What takes up most of the space right now, as I've said before, is the huge swaths of free space between the various parts of the patch. FE7 doesn't have nearly as much flexibility with free space as FireRed does, so the original patch had to start at 0x107D7D0. And even after that, a second version of the patch had to be released which was completely re-pointed and expanded the ROM even further, in order not to interfere with data.

I put the D#5 drums at 0x1000000 and the HGSS Drums in their original spots, to make things easier on myself while pulling together this first version of the patch. Which didn't really help the free space thing.

Luckily for us, FireRed, in contrast to FE7, has huge swaths of free space, even on a clean ROM. I will definitely try getting the patch fitted onto a non-expanded ROM first!

That's true. I can't see such a voicegroup using so much space. You could probably do the voicegroup anywhere in FireRed with freespace and not take up too much data. (Each instrument takes about 12 bytes, right?)
 
48
Posts
9
Years
  • Age 31
  • Seen Oct 26, 2015
You misunderstand. It's not just the voicegroup. The patch comes with data for ALL of the instruments. Blazer went, and imported every single one of the 127 MIDI instruments for the original patch, regardless of whether it was originally included in the game or not. I can't even begin to imagine how much work it must have been. Simply putting in two or three high-quality multi instruments takes a while for me.

I just did some calculations. Including the drums I added, the size of the patch is about 13FF14.

At some point, I'm going to upload something to tindeck to demonstrate; the instruments are extremely high quality.
 

Flandre Scarlet

Free your mind.
356
Posts
16
Years
This is beautiful. I've always wondered if this sort of thing can be accomplished and it has. Awesome work! I'll definitely be taking a look at this.
 

Windsong

—the dream is dead
30
Posts
16
Years
Nice work! I tried something like that back in 2010 but it literally took ages and I just abandoned the project. Thank you for sharing this and keep up the awesome work.
 

kearnseyboy6

Aussie's Toughest Mudder
300
Posts
15
Years
  • Seen Jun 22, 2019
Yes this is awesome, I have a suggestion though.

Wav. files of the samples for people to import seperately.

I have a whole missing instruments.
 
48
Posts
9
Years
  • Age 31
  • Seen Oct 26, 2015
New version of the patch is up! Everything has been completely re-pointed. There is also now Ruby and Emerald versions of the patch! Both the FireRed and Ruby patches are IPS patches which insert the data at A00000. The Emerald patch is a UPS patch that inserts the data at 1000000.

I've gotten rid of all that free space between the instruments, so things are now much more condensed. I've also added a Read Me with relevant information, including the data for the Gunshot and Applause instruments.

Yes this is awesome, I have a suggestion though.

Wav. files of the samples for people to import seperately.

I have a whole missing instruments.

Unfortunately, that's not really a thing I can make happen. I don't have the original Wav. files, for one. Just the data. And I have no idea how to convert hex data back to Wav. This is meant to be a complete package.

You can go through the patch yourself and find the relevant instrument data. Or, you can use the patch, look up the addresses of the instruments you want, and input them into your custom voicegroup.

I may create a list of all the instruments and their relevant offsets at some point. That might be useful for some people.

I think this is almost ready to be added to the Tools, Tutorials, and Resources section. I could use any suggestions for improvements, tweaks, etc. And of course, if anyone finds an issue, please tell me!
 

ipatix

Sound Expert
145
Posts
15
Years
Well it's pretty nice someone finally did this. The thing I don't like about that is that it uses those very old Roland Sound Canvas samples (which are almost 20 years old?) which imo don't sound very natural and have this typical MIDI synthesized sound everyone knows. I'd go for some more high quality samples but, well, it's still a decent job you ported it from FE.
 
48
Posts
9
Years
  • Age 31
  • Seen Oct 26, 2015
Well it's pretty nice someone finally did this. The thing I don't like about that is that it uses those very old Roland Sound Canvas samples (which are almost 20 years old?) which imo don't sound very natural and have this typical MIDI synthesized sound everyone knows. I'd go for some more high quality samples but, well, it's still a decent job you ported it from FE.

I don't really consider that a downside. For the hack I'm planning, I have several amazing MIDIs of the songs I want to insert. I nearly fell out of my chair when I inserted one of the songs, and it sounded just like the original MIDI in-game.

Though I guess it was exaggerating when I called the samples 'high-quality?' I don't know. It was just so epic to finally hear that MIDI in my game with this patch. Inserting it in my hack was looking less and less like a likely prospect due to trouble finding samples for all the instruments. To finally have that...I guess it colored my statements a bit.

Part of the problem is it's often extremely difficult to find high quality samples of the instruments you want, especially if the instrument is more obscure. For example, you won't believe the lengths I went to find shamisen samples, before I realized the HGSS Music patch had it. And I had no idea where I could find skakuhachi samples without paying for it. And samples for the Rain FX instrument were non-existent.

You can import from DS, but that can only take you so far. For those without good ears, it can be hard for us to discern between undocumented instruments. And even in games with documented sound fonts, no game has every instrument. Like, none of the Pokemon games seemed to have Electric Bass (Pick), an endless source of frustration for me. Not much luck finding samples for it online either.

With this patch, someone can finally have all the instruments on hand. This patch is aimed at people who were like me. Who tried to find instruments for their patch and failed, sometimes quite spectacularly (I can remember my attempt to import cymbal samples for my drums before finding the HGSS Music Patch. Yeah, that didn't go so well.). For those who want higher-quality instruments, the option is still there to import and adjust the voicegroup accordingly. But quality aside, I suspect many, like me, will find this patch a godsend.

Thank you for the feedback!
 

DuoRyan

Hack'in as usual, it seem.
335
Posts
14
Years
I don't really consider that a downside. For the hack I'm planning, I have several amazing MIDIs of the songs I want to insert. I nearly fell out of my chair when I inserted one of the songs, and it sounded just like the original MIDI in-game.

Though I guess it was exaggerating when I called the samples 'high-quality?' I don't know. It was just so epic to finally hear that MIDI in my game with this patch. Inserting it in my hack was looking less and less like a likely prospect due to trouble finding samples for all the instruments. To finally have that...I guess it colored my statements a bit.

Part of the problem is it's often extremely difficult to find high quality samples of the instruments you want, especially if the instrument is more obscure. For example, you won't believe the lengths I went to find shamisen samples, before I realized the HGSS Music patch had it. And I had no idea where I could find skakuhachi samples without paying for it. And samples for the Rain FX instrument were non-existent.

You can import from DS, but that can only take you so far. For those without good ears, it can be hard for us to discern between undocumented instruments. And even in games with documented sound fonts, no game has every instrument. Like, none of the Pokemon games seemed to have Electric Bass (Pick), an endless source of frustration for me. Not much luck finding samples for it online either.

With this patch, someone can finally have all the instruments on hand. This patch is aimed at people who were like me. Who tried to find instruments for their patch and failed, sometimes quite spectacularly (I can remember my attempt to import cymbal samples for my drums before finding the HGSS Music Patch. Yeah, that didn't go so well.). For those who want higher-quality instruments, the option is still there to import and adjust the voicegroup accordingly. But quality aside, I suspect many, like me, will find this patch a godsend.

Thank you for the feedback!
A god send it is! Finally, music hacking has gotten slightly more easier. Thank for the patch!
 

Queen Azura

Mistress of Midnight
59
Posts
9
Years
First of all, I'd like to thank you for your hard work on this patch and for making it for Emerald as I had hoped ♥

However, I'm having a slight problem. When trying to apply the UPS patch to my clean Emerald ROM with Tsukuyomi, I'm getting an error: "Failed! Input checksum is invalid". Anyone know why this is? I'm 100% certain it's a perfectly clean ROM.

Also, would it be possible for you to make it into an IPS patch that does not expand the ROM in the future, or is that an impossibility?
 
Last edited:

BrandoSheriff

Has a tendency to figure things out
776
Posts
16
Years
Wow, I can't believe I haven't seen this until now! Thanks a bunch for creating this, it will definitely shave tons of time off inserting custom MIDIs, especially for a music hacking n00b like me. xD
 

destinedjagold

You can contact me in PC's discord server...
8,593
Posts
16
Years
  • Age 33
  • Seen Dec 23, 2023
This is an amazing patch. :D

But, I take it that this isn't compatible with already-hacked ROMs?
May I ask the range of offsets that you've used on Ruby for this?
So far, I can see that you've used the offset A00000 and further, which I've already used. =/
 
Back
Top