The PokéCommunity Forums Fan Games ROM Hacking Tools, Tutorials & Resources
Tool [Gen III] Repoint Master ALPHA - Repointing made too easy!

Tools, Tutorials & Resources Various tools to help you develop your hacks can be found here.

Reply
 
Thread Tools
  #1    
Old April 29th, 2014 (3:58 AM). Edited May 3rd, 2014 by OronDF343.
OronDF343's Avatar
OronDF343 OronDF343 is offline
     
    Join Date: Apr 2012
    Location: Israel
    Gender: Male
    Nature: Lonely
    Posts: 7
    For the people who are lazy and/or want a fully automated way to repoint things, I present to you: Repoint Master!

    (Screenshot: When I can...)

    Features:
    * Repoint data and automatically replace all the pointers
    * Find some free space automatically
    * Save a backup before repointing (works, but is touchy)
    * Option to wipe the original data
    * Some extra safety: Checking that the values you entered are valid, that the free space is actually free, and warnings about stuff.
    * Fast repointing; lightweight program
    * Open Source!

    Planned: Presets, Advanced Pointer Search, ROM expansion, other improvements...

    Important notes:
    * USE AT YOUR OWN RISK. I did my best to prevent errors, including user errors, but this tool still remains an advanced & powerful tool to be used with care. I am not responsible if this messes up your ROM!
    * All of the numbers are in hexadecimal, including the lengths! There is no way to insert a decimal number! The only decimal number is the reported number of pointers changed.
    * This is an Alpha version. I have tested it, but not enough to make me satisfied. Be careful when the offsets are overlapping!
    * Currently this program only recognizes 0xFF as free space. See this:
    Quote:
    Originally Posted by ThomasWinwood View Post
    As I understand it the issue is that Emerald uses 00 for free space while also having blocks of 00 which are NOT free space - using that will gradually corrupt music data. (To be honest I'm not sure why that's the case - a 00 byte has to be deliberately written since PROMs default to FF for bytes not written.) Searching for free space by looking for runs of a particular byte is poor form anyway, since it's not impossible for meaningful data to consist of long runs of the same value.

    At any rate, this thread on PHO indicates the free space (identified thus far) in Emerald is in the ranges 0x9C0B20-0xAFFFFF, 0xDE4018-0xE3CF48 and 0xE3CF64-0xFFFFFF.
    Please let me know if you find any bugs, or have any questions about how it works!

    Supported platforms:
    I'm really sorry, anyone who doesn't use Windows, but I only have experience with GUIs in C# / MS Visual Studio. If you want to port this to another platform, feel free to use the source code that I provide.

    Windows XP, Vista, 7, 8, and 8.1 are supported. However, you need to install the .NET Framework version 4.
    Note to Windows XP users: You must use .NET Framework 4. Not any newer version.
    If you have problems with .NET Framework: Repair the installation of .NET Framework 4 Client Profile.

    Download:
    The files are attached below:
    __________________
    ===========================================================
    Author of FuwaTeaWin
    Always failing at socializing online...

    Stuff I made here:
    * Repoint Master - repointing made too easy!
    ===========================================================
    Reply With Quote

    Relevant Advertising!

      #2    
    Old April 29th, 2014 (3:47 PM).
    Kawaii Shoujo Duskull's Avatar
    Kawaii Shoujo Duskull Kawaii Shoujo Duskull is offline
    The Cutest Duskull
       
      Join Date: Jul 2013
      Location: Far too deep in my thoughts.
      Age: 21
      Gender: Female
      Nature: Timid
      Posts: 281
      Wow, this seems like a pretty sweet tool. I'll try it out when I get the chance for sure!
      Its good to see that there's a repointing tool now. ^^
      Reply With Quote
        #3    
      Old May 2nd, 2014 (2:06 AM).
      Kakarot1212's Avatar
      Kakarot1212 Kakarot1212 is offline
      Resident Programmer
         
        Join Date: Oct 2013
        Location: Phillipines
        Gender: Male
        Nature: Adamant
        Posts: 547
        Yay! Another gen 3 tool!
        Good job! Ang good luck!
        __________________
        Reply With Quote
          #4    
        Old May 2nd, 2014 (8:46 PM).
        ThomasWinwood ThomasWinwood is offline
           
          Join Date: Nov 2013
          Gender: Male
          Nature: Relaxed
          Posts: 70
          Quote:
          Originally Posted by tURuI View Post
          * Only 0xFF is free space! It is a common misconception that Emerald uses 0x00 as free space. Once I can, I will link to a thread by Chaos Rush which explains this. This program only recgonizes 0xFF as free space.
          As I understand it the issue is that Emerald uses 00 for free space while also having blocks of 00 which are NOT free space - using that will gradually corrupt music data. (To be honest I'm not sure why that's the case - a 00 byte has to be deliberately written since PROMs default to FF for bytes not written.) Searching for free space by looking for runs of a particular byte is poor form anyway, since it's not impossible for meaningful data to consist of long runs of the same value.

          At any rate, this thread on PHO indicates the free space (identified thus far) in Emerald is in the ranges 0x9C0B20-0xAFFFFF, 0xDE4018-0xE3CF48 and 0xE3CF64-0xFFFFFF.
          Reply With Quote
            #5    
          Old May 3rd, 2014 (9:45 AM).
          OronDF343's Avatar
          OronDF343 OronDF343 is offline
             
            Join Date: Apr 2012
            Location: Israel
            Gender: Male
            Nature: Lonely
            Posts: 7
            Quote:
            Originally Posted by ThomasWinwood View Post
            As I understand it the issue is that Emerald uses 00 for free space while also having blocks of 00 which are NOT free space - using that will gradually corrupt music data. (To be honest I'm not sure why that's the case - a 00 byte has to be deliberately written since PROMs default to FF for bytes not written.) Searching for free space by looking for runs of a particular byte is poor form anyway, since it's not impossible for meaningful data to consist of long runs of the same value.

            At any rate, this thread on PHO indicates the free space (identified thus far) in Emerald is in the ranges 0x9C0B20-0xAFFFFF, 0xDE4018-0xE3CF48 and 0xE3CF64-0xFFFFFF.
            Thanks for the info! I'm not sure if I can implement it in this tool, but I'll add it to the first post for now
            __________________
            ===========================================================
            Author of FuwaTeaWin
            Always failing at socializing online...

            Stuff I made here:
            * Repoint Master - repointing made too easy!
            ===========================================================
            Reply With Quote
            Reply
            Quick Reply

            Sponsored Links
            Thread Tools

            Posting Rules
            You may not post new threads
            You may not post replies
            You may not post attachments
            You may not edit your posts

            BB code is On
            Smilies are On
            [IMG] code is On
            HTML code is Off

            Forum Jump


            All times are GMT -8. The time now is 12:51 PM.