The PokéCommunity Forums  

Go Back   The PokéCommunity Forums > Creative Discussions > Emulation & ROM Hacking > Research & Development
Sign Up Rules/FAQ Live Battle Blogs Mark Forums Read

Notices

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!
New threads in this forum are to be approved by a moderator before they are displayed. The thread revival limit does not apply here.


Reply
 
Thread Tools
  #1    
Old November 5th, 2010, 06:12 AM
knizz's Avatar
knizz
 
Join Date: Aug 2007
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.1 DB: https://www.dropbox.com/s/hvvmxxoo1dkmdzc/firered.idb
VBA-M with lua scripting support (no longer in development)

Last edited by knizz; February 8th, 2012 at 04:46 AM.
Reply With Quote
  #2    
Old November 6th, 2010, 12:57 PM
Shiny Quagsire's Avatar
Shiny Quagsire
Working on a Follow-Me
 
Join Date: May 2009
Location: Hoenn Safari Zone
Age: 16
Gender: Male
Nature: Jolly
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, 05:04 AM
Platinum Lucario's Avatar
Platinum Lucario
The Legendary Master of Light!
 
Join Date: Jan 2008
Location: Warrnambool, Victoria, Australia.
Age: 21
Gender: Male
Nature: Calm
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]
Researching the NDS ROMs...

sure does feel like a brand new adventure!

I'm really looking forward to learning how to understand what the hex values mean and how to create programs using Microsoft Visual Studio!

Always focus on the present, best thing to do! Never look back into the past and never worry about anything bad of the future!
Reply With Quote
  #4    
Old November 7th, 2010, 12:49 PM
sonic1's Avatar
sonic1
ASM is my life now...
 
Join Date: May 2008
Location: Portugal
Age: 19
Gender: Male
Nature: Timid
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
__________________

My Site (UNDER CONSTRUCTION):

(mage by Xryo)

PORTUGUESE USER
Sou o Dark rayquaza da antiga myutsu.net


My Laptop SPECS:


Credits to Eagledelt for the wonderfull sign :D

Reply With Quote
  #5    
Old November 7th, 2010, 06:26 PM
Team Fail's Avatar
Team Fail
 
Join Date: May 2009
Age: 18
Gender: Male
Nature: Brave
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.
__________________



Team Fail

Community Supporter Collab
☆ ☆ ☆


Reply With Quote
  #6    
Old November 7th, 2010, 08:19 PM
knizz's Avatar
knizz
 
Join Date: Aug 2007
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.1 DB: https://www.dropbox.com/s/hvvmxxoo1dkmdzc/firered.idb
VBA-M with lua scripting support (no longer in development)
Reply With Quote
  #7    
Old November 8th, 2010, 12:28 AM
sonic1's Avatar
sonic1
ASM is my life now...
 
Join Date: May 2008
Location: Portugal
Age: 19
Gender: Male
Nature: Timid
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
__________________

My Site (UNDER CONSTRUCTION):

(mage by Xryo)

PORTUGUESE USER
Sou o Dark rayquaza da antiga myutsu.net


My Laptop SPECS:


Credits to Eagledelt for the wonderfull sign :D

Reply With Quote
  #8    
Old November 8th, 2010, 06:21 AM
knizz's Avatar
knizz
 
Join Date: Aug 2007
Thats right. I reuploaded the file btw. Fixed a few mistakes and added the names of the script-commands.
__________________
Firered IDA 6.1 DB: https://www.dropbox.com/s/hvvmxxoo1dkmdzc/firered.idb
VBA-M with lua scripting support (no longer in development)
Reply With Quote
  #9    
Old November 8th, 2010, 07:42 PM
Shiny Quagsire's Avatar
Shiny Quagsire
Working on a Follow-Me
 
Join Date: May 2009
Location: Hoenn Safari Zone
Age: 16
Gender: Male
Nature: Jolly
I'm loving the script commands... but why is one of the names call "annoying_orange"?
__________________



Reply With Quote
  #10    
Old November 9th, 2010, 07:27 AM
knizz's Avatar
knizz
 
Join Date: Aug 2007
Because I couldn't find out what it does.
__________________
Firered IDA 6.1 DB: https://www.dropbox.com/s/hvvmxxoo1dkmdzc/firered.idb
VBA-M with lua scripting support (no longer in development)
Reply With Quote
  #11    
Old November 16th, 2010, 12:33 PM
sab's Avatar
sab
Now too much of a life.
 
Join Date: Jul 2008
Location: Midgar
Age: 17
Gender: Male
Nature: Timid
This is great! It's sad that your leaving pkmn rom hacking, but everyone does sometime or another.
__________________
anCay ouyay eakspay igpay atinlay? Ifay osay easeplay m.p.ay
emay enthay opycay anday astepay isthay inay ouryay ignaturesay.
Reply With Quote
  #12    
Old November 24th, 2010, 12:23 PM
Full Metal's Avatar
Full Metal
C(++) Developer.
 
Join Date: Jan 2008
Location: In my mind.
Age: 18
Gender: Male
Nature: Timid
Send a message via Windows Live Messenger to Full Metal
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

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
Minimum Characters Per Post: 25



All times are UTC -8. The time now is 01:47 AM.


Style by Nymphadora, artwork by Sa-Dui.
Like our Facebook Page Follow us on Twitter © 2002 - 2014 The PokéCommunity™, pokecommunity.com.
Pokémon characters and images belong to The Pokémon Company International and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, The Pokémon Company or The Pokémon Company International. We just love Pokémon.
All forum styles, their images (unless noted otherwise) and site designs are © 2002 - 2014 The PokéCommunity / PokéCommunity.com.
PokéCommunity™ is a trademark of The PokéCommunity. All rights reserved. Sponsor advertisements do not imply our endorsement of that product or service. User generated content remains the property of its creator.