• 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.

Editing Menu Sounds and More (GBA)

Danno

Formerly Meowth, AKA InnerMobius
1,224
Posts
17
Years
  • Here's a tutorial on adding custom sounds over the lower tracks in Sappy for the default in-game menu sound effects and more. For this tutorial, I'm replacing the default bike chime in Firered with a horse sound from Zelda for my own hack.

    Things you'll need:

    Audacity(Optional)
    Sappy 2006 mod 17.1
    Mid2AGB
    Wavosaur
    Free Space Finder
    Anvil Studio



    STEP 1: SETTING UP YOUR WAV

    I always start off by using Audacity and using the Amplify option to make my .wav file as loud as I can. That's optional, however, because you can also raise the volume in Wavosaur by going to Process - Volume - +6DB.

    Anyways, after your wav is loud enough, open it in Wavosaur(if you haven't already.)

    Click on Process, then Bit depth converter. Convert your wav to 8 bits and hit ok. I'm not entirely sure if this step is necessary but it was a tip I received in a Pokemon Cry inserting tutorial by Chaos Rush and I've been using this step ever since. It also helps take up less space in your Rom.

    Editing Menu Sounds and More (GBA)


    Save your .wav and exit the program.




    STEP 2: FINDING YOUR OFFSET


    Open up Free Space Finder. In the Needed Bytes box, type 9999. You won't actually need that many bytes(or I should hope not anyways lol) but it'll just look for a bunch of free space for your wav to insert over. Again, going by Chaos Rush's advice for a Pokemon Cry tutorial, choose an offset that ends in 0, 4, 8, or C, and write down your offset somewhere after you click Copy.

    Editing Menu Sounds and More (GBA)


    Close Free Space Finder.




    STEP 3: IMPORTING YOUR SAMPLE

    Open up your rom in Sappy. MAKE SURE ALL OTHER ROM HACKING TOOLS AND HEX EDITORS ARE CLOSED FROM HERE ON OUT. It can interfere with the process and make things not work.

    For this example, I'm replacing the default chime that you hear when you select your Bicycle.
    A good way to find out which track your sound is on is by checking out GoGoJJTech's thread, The REAL Songtable (all games). The bike chime in Firered is track 11.

    On the left side of Sappy, click on Import Sample. Select the wav you modified earlier with Wavosaur and take your offset from Step 2. Since mine was 76F910, I use 0x76F910.

    Editing Menu Sounds and More (GBA)


    Click Import.




    STEP 4: SETTING UP YOUR SOUND AS AN INSTRUMENT

    As I said before, I'm using track 11, the bike chime sound, as my example for this tutorial. Sappy uses .mid files compiled into .s files for music insertion. It uses an almost identical instrument list to Anvil Studio, though the instruments are usually 1 off (Example: GBA Instrument 80 is Square, it's 81 in Anvil). To setup your wav as an instrument, click Edit Voice table. For Output Device, click DirectSound. In the Address1 box, place your offset you inserted your wav over like before. Use the format 0x000000. Change the ATK to 255, Dec to 0, Sus to 255, and Rel to 0. Make sure 'Fixed Frequency' is UNCHECKED, and change Base note to 72(C4). In the next step you'll notice we're using the note C5 in Anvil... for some reason, C5 in Anvil is C4 in Sappy. I have no idea why. Anyways, click Update and close it. You've made your wav an instrument.

    Editing Menu Sounds and More (GBA)





    STEP 5: MAKING YOUR .MID AND .S FILES

    With Sappy still open, open up Anvil Studio.

    Spoiler:


    Change your instrument to the one you want to replace. In this case, I know the voicegroup I'm assembling on isn't using Instrument 80, the Square, as I said before... so I'm using 81 in Anvil, which is 80 in GBA.

    On the top bar, go to View - Composer.

    Click the C5 key on the keyboard. You can see which one it is because it has a notch underneath it. Only click it once, as you only need 1 note for your custom sound to play on.

    Spoiler:


    If your sound isn't just a quick chime or chirp, you'll need a longer note. To do this, click on View - Piano Roll Editor. Scroll down until you see your note on the left. When you see it, hover over the right side of it and drag it until it's longer. This should do fine for mine:

    Spoiler:


    Now it's time to export it. Click on File -Export Midi-format 0 File. Save it in the same folder that you put Mid2AGB in. My Mid2AGB folder is in my Sappy Folder. You can take a copy of your MPlayDef.s file from your Sappy Folder and place it in there for it to work.

    Now go to your Mid2AGB folder and drag your .mid over mid2agb.exe. It will create a .s file for you to use in Sappy.




    STEP 6: FINISHING!

    You should still have Sappy open to the 'song' you're replacing at this point. Go back to Sappy and click Assemble Song. Find your .S file that mid2agb created, and click "Cook It".
    Sappy will ask "Do you want to set the proper entry in the Song Table ?" Click yes.

    And you're done! If all went well, you've inserted your wav as a custom sound in-game!

    NOTE: If your sound is too short, experiment with the Piano Roll Editor in Anvil Studio with making your note longer and following the directions again from there.

    I hope this helps other people out as I really had no idea how to do this until recently, and it can really add flair to a hack.

    NOTE 2: I've noticed that sometimes, when certain songs are playing in-game the sounds will be muted or shortened, and I'm not really sure if there's a fix to that. If anyone here knows how to fix that, please let us know.

    Special thanks to GogoJJTech for leading me in the right direction on figuring out how to do this, and for Kboy6 for giving me the idea to change the atk etc. to 255,0,255,0. I'd still be stuck without custom sounds otherwise :D

    -InnerMobius
     
    Last edited:

    Sniper

    ふゆかい
    1,412
    Posts
    10
    Years
  • This is very simple and easy tutorial. Would be helpful for my future references and additions c: thanks
     

    Danno

    Formerly Meowth, AKA InnerMobius
    1,224
    Posts
    17
    Years
  • My bad, wrong forum. Thanks Shiny Quagsire.

    I'd like someone to go through these steps and tell me how it worked out, of if I derped somewhere.
     
    Back
    Top