RAM map (Boktai 3): Difference between revisions

From Boktai Hacking Wiki
No edit summary
No edit summary
Line 22: Line 22:
| 0x0203db08 || void* || Pointer to [[#World struct]], defaults to 0x0203e200 on hard reset (but moves on soft resets)
| 0x0203db08 || void* || Pointer to [[#World struct]], defaults to 0x0203e200 on hard reset (but moves on soft resets)
|-
|-
| 0x0203e308 || void* || Pointer to [[#Stat struct]], defaults to 0x0203c400 on hard reset (but moves on soft resets)
| 0x0203e308 || void* || Pointer to [[#Scratch struct]], defaults to 0x0203e200 on hard reset (but moves on soft resets)
|}
|}


Line 37: Line 37:
|-
|-
| 0x48 || i32 || Total EXP
| 0x48 || i32 || Total EXP
|-
| 0x50 || i16[8] || Current equipment (Weapon/Lens/Head/Body/Arms/Legs/?/?)
|-
| 0x68 || || Quick change list (sword)
|-
| 0x78 || || Quick change list (frame)
|-
| 0x90 || || Quick change list (lens)
|-
| 0xa0 || i16[48] || Item [[Inventory (Boktai 3)|inventory]] slots
|-
| 0xc0 || || Warehouse item box 1
|-
| 0xe0 || || Warehouse item box 2
|-
| 0x100 || || Item inventory status
|-
| 0x160 || || Accessory inventory
|-
| 0x180 || || Warehouse accessory box 1
|-
| 0x1a0 || || Warehouse accessory box 2
|-
| 0x1c0 || || Sword inventory
|-
| 0x2c0 || || Warehouse sword box 1
|-
| 0x3c0 || || Warehouse sword box 2
|-
| 0x4c0 || || Frame inventory
|-
| 0x596 || i16 || Stuffed dolls (bitmask)
|-
| 0x5b8 || i32 || Acquired maps
|-
| 0x608 || i32 || TRC gauge (0-1000)
|-
| 0x610 || i16 || Mr. Rainnot enabled
|-
| 0x638 || i32 || Red Django use
|-
| 0x63c || i32 || Black Django use
|-
| 0x6f0 || || Library: Monsters
|-
| 0x701 || || Library: Monster items
|-
| 0x720 || || Library: Head
|-
| 0x721 || || Library: Body
|-
| 0x722 || || Library: Body
|-
| 0x723 || || Library: Arms
|-
| 0x724 || || Library: Legs
|-
| 0x72c || || Library: Swords
|-
| 0x77c || i32 || Solar station balance
|-
| 0x780 || char[16] || Player name
|-
| 0x780 || char[?] || Coffin bike name
|-
| 0x7b0 || i16 || Solar bank balance
|-
| 0x7b2 || i16 || Bike points
|-
| 0x7b8 || || [[Bike]] parts: Front
|-
| 0x7bc || || Bike parts: Tires
|-
| 0x7c0 || || Bike parts: Body
|-
| 0x7c4 || || Bike parts: Special
|-
| 0x7f8 || || Bike parts: Color
|-
| 0x81c || || Bike parts: Options
|-
| 0x828 || || Lens inventory
|-
| 0x838 || || Key item inventory
|-
| 0x876 || || Solar sensor: Bars
|}
|}


Line 46: Line 132:
! Offset || Type || Description
! Offset || Type || Description
|-
|-
| 0x15d || bit[9] || Titles
|-
| 0x19c:4 || bit[20] || ??? (bit 4 = Title: Grand master)
|}
|}


Line 77: Line 166:
|-
|-
| 0x03005418 || i16[3] || [[Coordinate systems|Camera]] position
| 0x03005418 || i16[3] || [[Coordinate systems|Camera]] position
|-
| 0x0300543a || u8 || Sunrise hours
|-
| 0x0300543b || u8 || Sunrise minutes
|-
| 0x0300543c || u8 || Sunset hours
|-
| 0x0300543d || u8 || Sunrise minutes
|}
|}



Revision as of 16:08, 10 August 2024

This is the RAM map for Boktai 3 (J).

EWRAM

Address Type Description
0x02000580 void* Pointer to to Django's actor data?
+ 0x30 i16[3] Current position
+ 0x424 i16 Current HP
+ 0x428 i16 Current ENE
0x0200eec0 Boss HP
0x020031c1 i8 Dialogue box portrait
0x0203c508 void* Pointer to #Stat struct, defaults to 0x0203c400 on hard reset (but moves on soft resets)
0x0203db08 void* Pointer to #World struct, defaults to 0x0203e200 on hard reset (but moves on soft resets)
0x0203e308 void* Pointer to #Scratch struct, defaults to 0x0203e200 on hard reset (but moves on soft resets)

Stat struct

Access this struct via 0x0203c508. See also: Inventory (Boktai 3).

Offset Type Description
0x18 i16[4] Stats (VIT/SPR/STR/?) - updated from *0x0200580 + ?? on screen transitions
0x42 i16 Allocatable stat points
0x48 i32 Total EXP
0x50 i16[8] Current equipment (Weapon/Lens/Head/Body/Arms/Legs/?/?)
0x68 Quick change list (sword)
0x78 Quick change list (frame)
0x90 Quick change list (lens)
0xa0 i16[48] Item inventory slots
0xc0 Warehouse item box 1
0xe0 Warehouse item box 2
0x100 Item inventory status
0x160 Accessory inventory
0x180 Warehouse accessory box 1
0x1a0 Warehouse accessory box 2
0x1c0 Sword inventory
0x2c0 Warehouse sword box 1
0x3c0 Warehouse sword box 2
0x4c0 Frame inventory
0x596 i16 Stuffed dolls (bitmask)
0x5b8 i32 Acquired maps
0x608 i32 TRC gauge (0-1000)
0x610 i16 Mr. Rainnot enabled
0x638 i32 Red Django use
0x63c i32 Black Django use
0x6f0 Library: Monsters
0x701 Library: Monster items
0x720 Library: Head
0x721 Library: Body
0x722 Library: Body
0x723 Library: Arms
0x724 Library: Legs
0x72c Library: Swords
0x77c i32 Solar station balance
0x780 char[16] Player name
0x780 char[?] Coffin bike name
0x7b0 i16 Solar bank balance
0x7b2 i16 Bike points
0x7b8 Bike parts: Front
0x7bc Bike parts: Tires
0x7c0 Bike parts: Body
0x7c4 Bike parts: Special
0x7f8 Bike parts: Color
0x81c Bike parts: Options
0x828 Lens inventory
0x838 Key item inventory
0x876 Solar sensor: Bars

World struct

Access this struct via 0x0203db08.

Offset Type Description
0x15d bit[9] Titles
0x19c:4 bit[20] ??? (bit 4 = Title: Grand master)

Scratch struct

Access this struct via 0x0203e308.

Offset Type Description

IWRAM

Address Type Description
0x030052f4 struct* 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
0x03005308 i32 RNG index
0x03005418 i16[3] Camera position
0x0300543a u8 Sunrise hours
0x0300543b u8 Sunrise minutes
0x0300543c u8 Sunset hours
0x0300543d u8 Sunrise minutes

EEPROM

TODO

Save data checksums