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

[ASM & Hex] Changing SFX ID Hidden Item Fire Red

45
Posts
11
Years
    • Seen Jun 26, 2023
    I don't suppose this has been asked as of yet as I cannot locate any such thread: Does anyone know the address for which the fanfare for finding a hidden item is in Fire Red upon finding said item? It seems to share the same ID# as finding a regular item but changing the value in that routine for a regular item does not affect hidden items (implying that though they share the same ID value, they are separate routine calls). So, any help would be appreciated, thanks.

    I'm not looking to create new SFXs, merely to change the ID value for hidden items to something else. Thanks.
     
    45
    Posts
    11
    Years
    • Seen Jun 26, 2023
    232
    Posts
    13
    Years
    • Seen Sep 10, 2019
    Thanks, that is kind of what I was looking for except I was wrong. Regular items and hidden items share the same address for the song ID (value 101). Is there a way to make hidden items call a different song ID instead of sharing the address with regular items? So, in the end, I'd have regular items having an ID apart from hidden items. Thanks.

    You would probably have to rewrite the routine for it and I can't help you there.
     
    45
    Posts
    11
    Years
    • Seen Jun 26, 2023
    You would probably have to rewrite the routine for it and I can't help you there.

    Thanks for trying. My goal here was to use a separate theme for finding items like in R/B/Y (which I was able to do thanks to your link). But I was also hoping to use ID 0x103 for finding hidden items, just like how R/B/Y uses something like that one. It is similar to when a Pokemon is finished evolving and that final jingle after the evolution music plays, if that makes sense. Thanks again for your help.
     

    Squeetz

    ROM Hacker
    191
    Posts
    10
    Years
  • Thanks for trying. My goal here was to use a separate theme for finding items like in R/B/Y (which I was able to do thanks to your link). But I was also hoping to use ID 0x103 for finding hidden items, just like how R/B/Y uses something like that one. It is similar to when a Pokemon is finished evolving and that final jingle after the evolution music plays, if that makes sense. Thanks again for your help.

    You could use a debugger and put a breakpoint on fanfare_play (0x08071C60) and see where it's called from, then change the assembly there to your liking.
     
    45
    Posts
    11
    Years
    • Seen Jun 26, 2023
    You could use a debugger and put a breakpoint on fanfare_play (0x08071C60) and see where it's called from, then change the assembly there to your liking.

    Well, this is a good start but can you be a little more specific, please? Which debuggers are available for GBA? I tried no$GBA but I can't seem to find the debugger. Also, when I find a good debugger, what type of breakpoint should I use? A read, correct?
     

    Squeetz

    ROM Hacker
    191
    Posts
    10
    Years
  • Well, this is a good start but can you be a little more specific, please? Which debuggers are available for GBA? I tried no$GBA but I can't seem to find the debugger. Also, when I find a good debugger, what type of breakpoint should I use? A read, correct?

    In this case you would use a thumb breakpoint. A break on read is used if you want to find when a piece of data you specified is loaded into a register, a thumb breakpoint is used if you want to find out when it runs the specific function you put a breakpoint on.
    I recommend VBA-SDL-H, it's the one I use: https://www.romhacking.net/utilities/297/
     
    Back
    Top