User:Kevsprksky/Wii U Address Notes: Difference between revisions
User:Kevsprksky/Wii U Address Notes (view source)
Revision as of 02:23, 29 September 2019
, 5 years agoadd info about argument list data
imported>Kevsprksky (add some example data) |
imported>Kevsprksky (add info about argument list data) |
||
Line 40: | Line 40: | ||
| 0x00 || 0 || I think this is the target actor? For example, when EventSystemActor.Demo_PlayerWarp is called, this points to the "ActorData" structure representing EventSystemActor | | 0x00 || 0 || I think this is the target actor? For example, when EventSystemActor.Demo_PlayerWarp is called, this points to the "ActorData" structure representing EventSystemActor | ||
|- | |- | ||
| 0x04 || 4 || | | 0x04 || 4 || Pointer to the first element in a linked list containing argument data. Only used during the initial parsing - not used during actual execution of an instruction. By that point, this data has been read and written to the instruction data structure. Format described below. | ||
|- | |- | ||
| 0x08 || 2 || This is set to (short)(the second 4 bytes pointed at by the second parameter to the build function). Not sure what it is yet. | | 0x08 || 2 || This is set to (short)(the second 4 bytes pointed at by the second parameter to the build function). Not sure what it is yet. | ||
Line 51: | Line 51: | ||
|- | |- | ||
| 0x10 + X || ? || Parameter data (plus more??) | | 0x10 + X || ? || Parameter data (plus more??) | ||
|} | |||
Parameter data linked list element structure | |||
{| class="wikitable" | |||
|- | |||
! Offset !! Length !! Explanation | |||
|- | |||
| 0x00 || 4 || Pointer to next element in list or null | |||
|- | |||
| 0x04 || 4 || Seems to always be a unique value? Not sure what this is, but it isn't a pointer. | |||
|- | |||
| 0x08 || 4 || Pointer to argument name | |||
|- | |||
| 0x0C || 4 || Pointer to offset 0x14 | |||
|- | |||
| 0x10 || 4 || Seems to indicate the argument type. String: 0x00000100, Bool: 0x00040400 | |||
|- | |||
| 0x14 || 4 || Either the value itself (if it fits in 4 bytes, like bool), or a pointer to the value (string). | |||
|} | |} | ||
Line 63: | Line 82: | ||
| 0x00 || 4 || 0x4329A1E0 || Pointer to EventSystemData's ActorData | | 0x00 || 4 || 0x4329A1E0 || Pointer to EventSystemData's ActorData | ||
|- | |- | ||
| 0x04 || 4 || 0x432AA5F0 || | | 0x04 || 4 || 0x432AA5F0 || ? | ||
|- | |- | ||
| 0x08 || 2 || 0x00DE || Not sure what this is yet | | 0x08 || 2 || 0x00DE || Not sure what this is yet | ||
Line 195: | Line 214: | ||
|- | |- | ||
| 0x88 || 4 || 0x45C19AE0 || | | 0x88 || 4 || 0x45C19AE0 || | ||
|} | |||
Instruction for CheckRupee when speaking to Kish (hotel guy) at Woodland Stable: | |||
{| class="wikitable" | |||
|- | |||
! Offset !! Length !! Value !! Explanation | |||
|- | |||
| 0x00 || 4 || 0x4329A1E0 || Pointer to ActorData for EventSystemActor | |||
|- | |||
| 0x04 || 4 || 0x432AC868 || ? | |||
|- | |||
| 0x08 || 4 || 0x00000044 || ? | |||
|- | |||
| 0x0C || 4 || 0x101952A4 || Pointer to CheckRupee's SymbolData | |||
|- | |||
| 0x10 || 4 || 0x432AC87C || Pointer to 4-bytes for argument Value: 0x00000014 | |||
|} | |} | ||
Line 206: | Line 242: | ||
|- | |- | ||
| 0x64 || 4 || Pointer to the function to call for the given action IF it does have parameters? (Ex: NPCTalk, PlayerWarp) | | 0x64 || 4 || Pointer to the function to call for the given action IF it does have parameters? (Ex: NPCTalk, PlayerWarp) | ||
|- | |||
| 0x74 || 4 || Pointer to the function to call for parsing out arguments to the call (writes them to the given instruction at appropriate offsets) | |||
|} | |} | ||