Thread: Research: Legacy
View Single Post
Old November 7th, 2010 (8:19 PM).
knizz's Avatar
knizz knizz is offline
Join Date: Aug 2007
Posts: 192
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
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
080ed69d Nidorino makes noise
080ee025 Gengar hits Nidorino. Nidorino strikes back. The scene freezes. Zoom in.
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
0800c4d10800c705 (by 0800c5fe) screen turns gray
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
080f1371 (by 080f12ac) pokemon jumps out, screen turns white, " i"
080f13c1 (by 080f13a6) pokemon lands on the floor, " inhabited fa"
0812fb4d (by 0812fa9e) oak: " inhabited far and wide by creatures called Pokemon"
0812fbf1 (by 0812fbd8) oak: "..."
0812fc69 (by 0812fc4c) Textbox disappears
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"
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)
081300a1 (by 08130090) hero fadein
0800ca95 (by 0800c772) "Let's begin with your name. What is it?"
081303b5 (by 08130198) fadeout
0809dd89 Choose your name
08130465 "Right... So your name is ..."
08130555 (by 08130542) YES / NO
08130651 (by 081305ac) Menu and Character fade out
081306d5 (by 08130688)
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!"
081307d1 (by 081306c2) Grandson fadeout
08130859 (by 08130844) Hero fadein
081308d1 (by 081308b2) "Let's go!"
08130915 (by 08130908)
08130981 (by 08130970) Shrink
08130bf1 (by 08130be0) Fadeout
08130c21 (by 08130c21)
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:
VBA-M with lua scripting support
Reply With Quote