This is an old revision of the document!
GBA Save File
All the test have been made on a (U) save file (.sav). A quick analysis suggest the first $1E00 bytes of the file are 3 blocks of $A00 bytes for the 3 save slots. They could be a close copy of the SNES SRAM $1600-$1FFF which would be logic but more test are needed. The data posted here is confirmed and match the order and offsets of the SNES SRAM. There is data in the $1E00-$37FF range but its purpose is unknown. Everything past that point is set to $00 so chances are it is unused space.
Offsets | Description |
---|---|
$0000-$09FF | Slot 1 data |
$0A00-$13FF | Slot 2 data |
$1400-$1DFF | Slot 3 data |
$1E00-$37FF | Unknown data |
$3800-$FFFF | Unused space ? |
Offsets | Description |
---|---|
Character block (repeat 16 times) | |
$0000 | Actor index |
$0001 | Graphic index |
$0002-$0007 | Name (A-Z $20-$39, a-z $3A-$53) |
$0008 | Level |
$0009-$000A | Current HP |
$000B-$000C | bbhhhhhh hhhhhhhh |
b: hp boost (none, 25%, 50% , 12.5%) | |
h: max hp | |
$000D-$000E | Current MP |
$000F-$0010 | bbmmmmmm mmmmmmmm |
b: mp boost (none, 25%, 50% , 12.5%) | |
h: max mp | |
$0011-$0013 | Current EXP |
$0014 | weicmpzd Status 1 |
w: wound | |
e: petrify | |
i: imp | |
c: clear | |
m: magitek | |
p: poison | |
z: zombie | |
d: dark | |
$0015 | fihcmlzr Status 4 |
f: float | |
i: interceptor | |
h: hide (?) | |
c: control (?) | |
m: morph (?) | |
l: life 3 (?) | |
z: freeze (?) | |
r: rage (?) | |
$0016-$0019 | Battle Commands |
$001A | Strenght |
$001B | Speed |
$001C | Stamina |
$001D | Magic |
$001E | Esper |
$001F | Right Hand |
$0020 | Left Hand |
$0021 | Head |
$0022 | Body |
$0023 | Relic 1 |
$0024 | Relic 2 |
End of character block | |
$0260-0262 | Gil |
$0266-0268 | Steps |
$0263 | Hours |
$0264 | Minutes |
$0265 | Seconds |
$08B6 | Save Related? ($81 to $C1, 1 save) |
$096D | Save Related? (same as $09A1) |
$09A1-09A5 | Save related? (5 same values) |
$09FE-09FF | Checksum |