• Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
  • Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
  • 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.

[Script] Firered Special 0x20 0x21

  • 4
    Posts
    3
    Years
    Hello, I have been editing a hackrom, and I wanted to test the link battles and link trades, but I have noticed that it is somewhat unstable, the connection is established but, sometimes at a random moment the connection drops out of nowhere. If I remember correctly the special 0x20 and 0x21 correspond to the Battles and Trades function, but I don't know what offsets the rom is in and I would like to know where it is to check if changes were made without realizing it. I know the Special Table starts at 15FD60, but I don't know where it ends.

    Does anyone know the offset of the special 0x20 and 0x21? Or where does the Special table end?

    Additionally, I am also interested in knowing what function the other specials fulfill in Fire Red. Thanks in advance.
     
    Does anyone know the offset of the special 0x20 and 0x21? Or where does the Special table end?
    Each special is a 4 byte function pointer. Thus the pointer for special 0x20 starts 4*0x20 = 0x80 bytes after the start of the table.

    Additionally, I am also interested in knowing what function the other specials fulfill in Fire Red. Thanks in advance.
    You can find a list of specials with descriptive names here.
    For example if we want to find the name for special 0x20: The special definitions start at line 11 in the file, 0x20 in decimal is 32, the definition for special 0x20 is on line 11+32=43:
    Code:
    def_special EnterColosseumPlayerSpot

    You can then search for the function name to find the code for it if you want to see what it does.
     
    Each special is a 4 byte function pointer. Thus the pointer for special 0x20 starts 4*0x20 = 0x80 bytes after the start of the table.


    You can find a list of specials with descriptive names here.
    For example if we want to find the name for special 0x20: The special definitions start at line 11 in the file, 0x20 in decimal is 32, the definition for special 0x20 is on line 11+32=43:
    Code:
    def_special EnterColosseumPlayerSpot

    You can then search for the function name to find the code for it if you want to see what it does.

    Oh cool, that was a very accurate answer, thank you very much for that and your time.
     
    Back
    Top