RAM map (Boktai 1): Difference between revisions

From Boktai Hacking Wiki
mNo edit summary
Line 46: Line 46:
|-
|-
| + 0x14 || void* || Pointer to map file unknown block 2
| + 0x14 || void* || Pointer to map file unknown block 2
|-
| + 0x24 || zone_callback[] || List of zone callbacks:
struct zone_callback {
  /* offset 0x08 */ u16 zone_id;
  /* offset 0x24 */ void* bytecode_ptr; // Generally points into a [[Script directory|Script]]
};
|-
|-
| 0x03004620 || i32 || [[Random_number_generator|RNG]] index
| 0x03004620 || i32 || [[Random_number_generator|RNG]] index

Revision as of 20:30, 4 August 2024

This is the RAM map for Boktai 1 (U).

EWRAM

Stat struct

Address Type Description
0x0203d8b0 i32 Unlock Astro battery (must be set to *(*0x03001c90 + 0x7dc))
0x0203d8f0 i16[3] Django position

Scratch struct

Address Type Description
0x0203f1b4 u8[13] Carmilla: Pattern list - one of 4 hardcoded lists will be chosen at random when starting the fight
0x0203f1c1 u8[3] Carmilla: Pattern pool (indices into pattern list)
0x0203f1c4 u8[3] Carmilla: ???
0x0203f1c7 u8 Carmilla: Next pool value
0x0203f1c8 u8 Carmilla: Pattern index (index into pattern pool) - the (current/next?) pattern is pattern_list[pattern_pool[next_pool_value]]

IWRAM

Address Type Description
0x03004610 void** Pointer to current Map file descriptor (usually/always 0x02000010)
+ 0x00 i32 Number of Zones
+ 0x04 void* Pointer to map file tile data
+ 0x0c void* Pointer to map file zones
+ 0x10 void* Pointer to map file unknown block 1
+ 0x14 void* Pointer to map file unknown block 2
+ 0x24 zone_callback[] List of zone callbacks:
struct zone_callback {
  /* offset 0x08 */ u16 zone_id;
  /* offset 0x24 */ void* bytecode_ptr; // Generally points into a Script
};
0x03004620 i32 RNG index
0x030046e8 i16[3] Camera position

EEPROM

TODO

Save data checksums