Research & Development Got a well-founded knack with ROM hacking? Love reverse-engineering the Pokémon games? Or perhaps you love your assembly language. This is the spot for polling and gathering your ideas, and then implementing them! Share your hypothesis, get ideas from others, and collaborate to create!

TrollandToad.com
Reply
 
Thread Tools
  #1    
Old November 5th, 2010 (6:12 AM). Edited February 8th, 2012 by knizz.
knizz's Avatar
knizz knizz is offline
     
    Join Date: Aug 2007
    Posts: 192
    I like romhacking. It taught me a lot but I think the time has come to move on so I'll leave my IDA file to you. It is the product of 100 hours of work and contains nearly all structures that have been reverse engineered, a huge collection of named(!) functions and tons of cross-references.

    Edit: Link is in the signature

    If you are a serious ASM Hacker I can give you IDA-Lessons via TeamViewer. But basically thats the end of my romhacking-activites.
    __________________
    Firered IDA 6.6 DB: https://www.dropbox.com/s/d856o3pyndyr5sr/firered.idb
    VBA-M with lua scripting support
    Reply With Quote

    Relevant Advertising!

      #2    
    Old November 6th, 2010 (12:57 PM).
    Shiny Quagsire's Avatar
    Shiny Quagsire Shiny Quagsire is offline
    I'm Still Alive, Elsewhere
       
      Join Date: May 2009
      Location: Hoenn Safari Zone
      Age: 19
      Gender: Male
      Nature: Jolly
      Posts: 700
      Awwwww.... that sucks that it's the last of your ROM hacking. I'll be sure to study it!
      __________________



      Reply With Quote
        #3    
      Old November 7th, 2010 (5:04 AM).
      Platinum Lucario's Avatar
      Platinum Lucario Platinum Lucario is offline
      The Legendary Master of Light!
      • Crystal Tier
       
      Join Date: Jan 2008
      Location: Warrnambool, Victoria, Australia.
      Gender: Male
      Nature: Calm
      Posts: 1,561
      Oh wow, this is the last of Knizz's ROM Hacking? Well I'll have to learn how to ASM edit and hex edit. Then maybe one day I might be able to study where Knizz has left off. Hm... IDA, eh? I don't think I've heard about it before.
      __________________
      [Platinum Lucario's Signature]
      If you need to disable my signature, please give me some advice on how to improve the CSS-DIV code. Thanks!
      Signature Status: Strikes: 1/3 | Infractions: 0/3
      It's time to change the future...
      to a positive direction!

      Let's prevent things from getting bad!

      I'm a ROM and ISO Researcher
      Current Project: Researching Pokémon Mystery Dungeon Adventure Squad games (WiiWare)
      Reply With Quote
        #4    
      Old November 7th, 2010 (12:49 PM).
      sonic1's Avatar
      sonic1 sonic1 is offline
      ASM is my life now...
         
        Join Date: May 2008
        Location: Portugal
        Age: 22
        Gender: Male
        Nature: Timid
        Posts: 79
        Quote:
        Originally Posted by PokémonShinySilver View Post
        Hm... IDA, eh? I don't think I've heard about it before.
        Thats a asm Disassembler. Check it out here.

        Its really sad that you're quitting rom hacking. You're a really good ASM hacker.
        But that's your choice, so nobody can force you to continue.

        I've seen your work, and its really huge and well researched, and a work you should be proud of. Now lets hope that the next generation of rom hackers make a good use of it.

        But tell me something, what's that callback functions?What's their purpose?

        With best regards, sonic1
        __________________
        This signature has been disabled.
        over 350px high
        Please review and fix the issues by reading the signature rules.

        You must edit it to meet the limits set by the rules before you may remove the [sig-reason] code from your signature. Removing this tag will re-enable it.

        Do not remove the tag until you fix the issues in your signature. You may be infracted for removing this tag if you do not fix the specified issues. Do not use this tag for decoration purposes.
        Reply With Quote
          #5    
        Old November 7th, 2010 (6:26 PM).
        Incineroar's Avatar
        Incineroar Incineroar is online now
        the spirit of the fighter
        • Moderator
        • Platinum Tier
        • Developer
         
        Join Date: May 2009
        Location: Iki Town
        Age: 22
        Gender: Male
        Nature: Brave
        Posts: 13,529
        It was nice to have you in the Rom Hacking scene. Especially when you walked in with your model/map viewer. I'll learn ASM, then I'll look at that pack. It could help in the development of JPAN's Hacked Engine.
        __________________
        Reply With Quote
          #6    
        Old November 7th, 2010 (8:19 PM).
        knizz's Avatar
        knizz knizz is offline
           
          Join Date: Aug 2007
          Posts: 192
          Quote:
          Originally Posted by sonic1 View Post
          Thats a asm Disassembler. Check it out here.

          Its really sad that you're quitting rom hacking. You're a really good ASM hacker.
          But that's your choice, so nobody can force you to continue.

          I've seen your work, and its really huge and well researched, and a work you should be proud of. Now lets hope that the next generation of rom hackers make a good use of it.

          But tell me something, what's that callback functions?What's their purpose?

          With best regards, sonic1
          First. Thank you for actually looking into it.

          The callback functions are functions that are responsible for a certain part of the game and that are called PER FRAME via the "call_back" functions. Callback 1,2,4,5,6 have function pointers somewhere in RAM. Callback 3 is actually a list of function pointers. The most important callbacks are 2 and 3. I talked about them in my "gamemode"-thread. (middle and right column) When I look back I think the naming is stupid. Anyway. When setting breakpoints to find function-offsets in c3. Don't just make a breakpoint on the function that adds a function-offset to the list. Cause not all functions do it that way. You have to put a writing-breakpoint on each entry.

          The link above is a bit outdated because when I wrote it I didn't know that c3
          is a list. Here is the complete sequence of function-offsets in the c3-list during the intro
          Code:
          If not menioned otherwise these functions are triggered via 0807741C.
          
          00000000 Copyright message
          080ecab1 Intro starts. A star flies through the screen until it's in the middle.
          btw Did you know that the star uses the same ping-pong animation as the arrows in the bag? Its strange.
          080ede05 The star continues and eventually leaves the view. The sparks blink.
          080edeed Most particles vanish
          0812e9f9 "Game Freak" appears on the screen
          0812e9f9 The logo fades in
          0812e9f9 "Game Freak" and the logo fade out
          080ed0ad Grass
          080ed141 Zoom in.
          080ed40d Gengar vs. Nidorino
          080ed429 Change of perspecive
          080ed715
          080ee201
          080ed69d Nidorino makes noise
          080ee025 Gengar hits Nidorino. Nidorino strikes back. The scene freezes. Zoom in.
          00000000
          08078c25
          08078bed
          080792c9 pokemon silloutte
          080718b9 pokemon blink
          080718b9 cyan ribbon
          080718b9 orange and red ribbon
          080718b9 pokemon blink
          080718b9 all texts except title: press start (c) 2004 game freak inc
          080718b9 pokemon blink
          0807941d title and pokemon blink
          0807941d Fire! ... Press A or START
          08072235 Fadeout
          00000000
          0800c4d10800c705 (by 0800c5fe) screen turns gray
          0812eb59
          0812f0b1 (by 0812ee70) controls
          0812f181 (by 0812f160) text fadeout
          0812ef51 (by 0812f240) change first line (title, meaning of A and B)
          0812f0b1 (by 0812f08e) controls (after page flipping)
          0812f275 (by 0812f25e) controls fadeout
          0812f33d (by 0812f31e) pause
          0812f4a9 (by 0812f474) story
          0812f72d (by 0812f71a) story fadeout
          0812f7c1 (by 0812f7a4) pause
          0812f881 (by 0812f860) oak fadein
          0812f945 (by 0812f92c) oak: "Hello there. Glad to meet you. Welcome..."
          0812f9ed (by 0812f9d4) oak: "This world..."
          0812fa79 (by 0812fa5a) oak's pokeball appears
          08072235
          080f06a5
          080f12e1
          080f1371 (by 080f12ac) pokemon jumps out, screen turns white, "..is i"
          080f13c1 (by 080f13a6) pokemon lands on the floor, "..is inhabited fa"
          0812fb4d (by 0812fa9e) oak: "..is inhabited far and wide by creatures called Pokemon"
          0812fbf1 (by 0812fbd8) oak: "..."
          0812fc69 (by 0812fc4c) Textbox disappears
          080f06a5
          080f12e1
          080f1371 (by 080f12ac) Pokemon returns into ball
          080f13c1 (by 080f13a6) Remaining sparks disappear
          0812fd79 (by 0812fd60) oak: "But first tell me a little about yourself"
          08131339
          0812fdc1 (by 0812fdb0) oak fadeout
          0812fe89 (by 0812fe70) "Now tell me. Are you a boy or a girl?"
          0812ffa5 (by 0812ff7c) BOY / GIRL
          0812fff1 (by 0812ffda)
          08130051 (by 0813003c)
          081314dd
          081300a1 (by 08130090) hero fadein
          0800ca95 (by 0800c772) "Let's begin with your name. What is it?"
          081303b5 (by 08130198) fadeout
          0809f26d
          0809e58d
          0809dd89 Choose your name
          08130465 "Right... So your name is ..."
          08130555 (by 08130542) YES / NO
          08131339
          08130651 (by 081305ac) Menu and Character fade out
          081306d5 (by 08130688)
          081314dd
          0813071d (by 08130708) grandson fadein
          081301b1 (by 081307ba) "This is my grandson." ... move away
          08130325 (by 08130216) name-multibox
          08130465 (by 081303ac) "...Er, was it ??? ?"
          08130555 (by 08130542) YES / NO
          08130695 (by 081305f4) "Thats right! I remember now!"
          08131339
          081307d1 (by 081306c2) Grandson fadeout
          081314dd
          08130859 (by 08130844) Hero fadein
          081308d1 (by 081308b2) "Let's go!"
          08130915 (by 08130908)
          08130a81
          08130b11
          08130981 (by 08130970) Shrink
          08130bf1 (by 08130be0) Fadeout
          08130c21 (by 08130c21)
          00000000
          The next thing I wanted to do is to type in the name of all script commands. ... Maybe I'll do it myself.
          __________________
          Firered IDA 6.6 DB: https://www.dropbox.com/s/d856o3pyndyr5sr/firered.idb
          VBA-M with lua scripting support
          Reply With Quote
            #7    
          Old November 8th, 2010 (12:28 AM).
          sonic1's Avatar
          sonic1 sonic1 is offline
          ASM is my life now...
             
            Join Date: May 2008
            Location: Portugal
            Age: 22
            Gender: Male
            Nature: Timid
            Posts: 79
            Hey thanks for your explanation. It was very good. Now i understand what callback functions are. It’s like a small queue that allows the game to run several things “at once”, right?

            And by the way, your research helped me in finding the offset of the new game option - 12Eb2d. You really did a awesome work in rom hacking.

            Im very gratefull to you

            With best regards, sonic1
            __________________
            This signature has been disabled.
            over 350px high
            Please review and fix the issues by reading the signature rules.

            You must edit it to meet the limits set by the rules before you may remove the [sig-reason] code from your signature. Removing this tag will re-enable it.

            Do not remove the tag until you fix the issues in your signature. You may be infracted for removing this tag if you do not fix the specified issues. Do not use this tag for decoration purposes.
            Reply With Quote
              #8    
            Old November 8th, 2010 (6:21 AM).
            knizz's Avatar
            knizz knizz is offline
               
              Join Date: Aug 2007
              Posts: 192
              Thats right. I reuploaded the file btw. Fixed a few mistakes and added the names of the script-commands.
              __________________
              Firered IDA 6.6 DB: https://www.dropbox.com/s/d856o3pyndyr5sr/firered.idb
              VBA-M with lua scripting support
              Reply With Quote
                #9    
              Old November 8th, 2010 (7:42 PM).
              Shiny Quagsire's Avatar
              Shiny Quagsire Shiny Quagsire is offline
              I'm Still Alive, Elsewhere
                 
                Join Date: May 2009
                Location: Hoenn Safari Zone
                Age: 19
                Gender: Male
                Nature: Jolly
                Posts: 700
                I'm loving the script commands... but why is one of the names call "annoying_orange"?
                __________________



                Reply With Quote
                  #10    
                Old November 9th, 2010 (7:27 AM).
                knizz's Avatar
                knizz knizz is offline
                   
                  Join Date: Aug 2007
                  Posts: 192
                  Because I couldn't find out what it does.
                  __________________
                  Firered IDA 6.6 DB: https://www.dropbox.com/s/d856o3pyndyr5sr/firered.idb
                  VBA-M with lua scripting support
                  Reply With Quote
                    #11    
                  Old November 16th, 2010 (12:33 PM).
                  sab's Avatar
                  sab sab is offline
                  Now too much of a life.
                     
                    Join Date: Jul 2008
                    Location: Midgar
                    Age: 21
                    Gender: Male
                    Nature: Timid
                    Posts: 995
                    This is great! It's sad that your leaving pkmn rom hacking, but everyone does sometime or another.
                    __________________
                    Reply With Quote
                      #12    
                    Old November 24th, 2010 (12:23 PM).
                    Full Metal's Avatar
                    Full Metal Full Metal is offline
                    C(++) Developer.
                    • Silver Tier
                     
                    Join Date: Jan 2008
                    Location: In my mind.
                    Age: 22
                    Gender: Male
                    Nature: Timid
                    Posts: 806
                    Quote:
                    Originally Posted by knizz View Post
                    Because I couldn't find out what it does.
                    yup, youre still epic!
                    now, to use Ida on a wii... hmm :p
                    __________________

                    ★ full metal.

                    I like to push it,
                    and push it,
                    until my luck is over.
                    Reply With Quote
                    Reply

                    Quick Reply

                    Join the conversation!

                    Create an account to post a reply in this thread, participate in other discussions, and more!

                    Create a PokéCommunity Account

                    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 2:46 AM.