Difference between revisions of "Arcana:SRAM map"
Jump to navigation
Jump to search
m (added srammap at the top) |
|||
(8 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | + | {{srammap|game=Arcana}} | |
This contains the format for an Arcana save file. Each file takes up $500 bytes, and has a copy for protection. | This contains the format for an Arcana save file. Each file takes up $500 bytes, and has a copy for protection. | ||
+ | They are tranferred 8 bytes at a time via MVN at $00/CAB6, which uses X= RAM address, Y= SRAM address, A= # bytes to copy | ||
+ | During the saving process, a ton of checksums are written by looping through the data at least 20 times. | ||
==File ranges== | ==File ranges== | ||
Line 22: | Line 24: | ||
{| class="wikitable" | {| class="wikitable" | ||
!Bytes | !Bytes | ||
+ | !Save RAM | ||
+ | !RAM | ||
!Description | !Description | ||
|- | |- | ||
− | | | + | |8 |
− | | | + | |100-107 |
+ | |$11C3-11CA | ||
+ | |Party Condition word: Rooks, Spirit, Guest1, Guest2<br>(odd bytes: 00 Satisfactory, 01 Deceased, 02 Not here, 03 Paralyzed, 04 Petrified, 05 Confused, 06 Sleeping) <br>(even bytes: 01 indicates a party member) | ||
|- | |- | ||
− | | | + | |8 |
− | |? | + | |108-10F |
+ | |$11DB-11E2 | ||
+ | |Copy of $11C3? | ||
|- | |- | ||
+ | |8 | ||
|110-117 | |110-117 | ||
+ | |$11F3-11FA | ||
|Party order | |Party order | ||
|- | |- | ||
+ | |8 | ||
|118-11F | |118-11F | ||
+ | |$1223-122A | ||
|Stats: Attack (Rooks, Spirit, Guest1, Guest2) | |Stats: Attack (Rooks, Spirit, Guest1, Guest2) | ||
|- | |- | ||
+ | |8 | ||
|120-127 | |120-127 | ||
+ | |$123B-1242 | ||
|Stats: Intelligence (Rooks, Spirit, Guest1, Guest2) | |Stats: Intelligence (Rooks, Spirit, Guest1, Guest2) | ||
|- | |- | ||
+ | |8 | ||
|128-12F | |128-12F | ||
+ | |$1253-125A | ||
|Stats: Endurance (Rooks, Spirit, Guest1, Guest2) | |Stats: Endurance (Rooks, Spirit, Guest1, Guest2) | ||
|- | |- | ||
+ | |8 | ||
|130-137 | |130-137 | ||
+ | |$126B-1272 | ||
|Stats: Alertness (Rooks, Spirit, Guest1, Guest2) | |Stats: Alertness (Rooks, Spirit, Guest1, Guest2) | ||
|- | |- | ||
− | |138 | + | |8 |
− | | | + | |138-13F |
+ | |$1283-128A | ||
+ | |Equipped weapons | ||
|- | |- | ||
− | | | + | |8 |
− | | | + | |140-147 |
+ | |$129B-12A2 | ||
+ | |Equipped armors | ||
|- | |- | ||
+ | |8 | ||
+ | |148-14F | ||
+ | |$12B3-12BA | ||
+ | |Equipped accessories | ||
+ | |- | ||
+ | |8 | ||
+ | |150-157 | ||
+ | |$12CB-12D2 | ||
+ | |Equipped rings | ||
+ | |- | ||
+ | |8 | ||
|158-15F | |158-15F | ||
+ | |$12F3-12FA | ||
|Stats: Party current HP (Rooks, Spirit, Guest1, Guest2) | |Stats: Party current HP (Rooks, Spirit, Guest1, Guest2) | ||
|- | |- | ||
+ | |8 | ||
|160-167 | |160-167 | ||
− | |Copy of | + | |$130B-1312 |
+ | |Copy of $12F3 | ||
|- | |- | ||
+ | |8 | ||
|168-16F | |168-16F | ||
+ | |$1323-132A | ||
|Stats: Party current MP (Rooks, Spirit, Guest1, Guest2) | |Stats: Party current MP (Rooks, Spirit, Guest1, Guest2) | ||
|- | |- | ||
+ | |8 | ||
|170-177 | |170-177 | ||
− | |Copy of | + | |$133B-1342 |
+ | |Copy of $1323 | ||
|- | |- | ||
+ | |8 | ||
|178-17F | |178-17F | ||
+ | |$1353-135A | ||
|Stats: Spirits' current HP (Sylph, Dao, Marid, Efrite) | |Stats: Spirits' current HP (Sylph, Dao, Marid, Efrite) | ||
|- | |- | ||
+ | |8 | ||
|180-187 | |180-187 | ||
+ | |$135B-1362 | ||
|Stats: Spirits' current MP (Sylph, Dao, Marid, Efrite) | |Stats: Spirits' current MP (Sylph, Dao, Marid, Efrite) | ||
|- | |- | ||
+ | |8 | ||
|188-18F | |188-18F | ||
+ | |$1363-136A | ||
|Stats: Party EXP (Rooks, Spirit, Guest1, Guest2) (Spirit uses Rooks' EXP/LV) | |Stats: Party EXP (Rooks, Spirit, Guest1, Guest2) (Spirit uses Rooks' EXP/LV) | ||
|- | |- | ||
+ | |8 | ||
|190-197 | |190-197 | ||
+ | |$137B-1382 | ||
|Stats: Party LV (Rooks, Spirit, Guest1, Guest2) | |Stats: Party LV (Rooks, Spirit, Guest1, Guest2) | ||
|- | |- | ||
+ | |8 | ||
|198-19F | |198-19F | ||
+ | |$1393-139A | ||
|Stats: Party max HP (Rooks, Spirit, Guest1, Guest2) | |Stats: Party max HP (Rooks, Spirit, Guest1, Guest2) | ||
|- | |- | ||
+ | |8 | ||
|1A0-1A7 | |1A0-1A7 | ||
+ | |$139B-13A2 | ||
|Stats: Party max MP (Rooks, Spirit, Guest1, Guest2) | |Stats: Party max MP (Rooks, Spirit, Guest1, Guest2) | ||
|- | |- | ||
+ | |2 | ||
|1A8-1A9 | |1A8-1A9 | ||
+ | |$13A7-13A8 | ||
|00 00 (Unused?) | |00 00 (Unused?) | ||
|- | |- | ||
+ | |16 | ||
|1AA-1B9 | |1AA-1B9 | ||
+ | |$13A9-13B8 | ||
|Card inventory (2 bytes each, ID/quantity, 8 slots) | |Card inventory (2 bytes each, ID/quantity, 8 slots) | ||
|- | |- | ||
+ | |96 | ||
|1BA-219 | |1BA-219 | ||
+ | |$13B9-1418 | ||
|Item inventory (2 bytes each, 48 slots) | |Item inventory (2 bytes each, 48 slots) | ||
|- | |- | ||
+ | |64 | ||
|21A-259 | |21A-259 | ||
+ | |$1419-1458 | ||
|Equipment inventory (2 bytes each, ID/User) | |Equipment inventory (2 bytes each, ID/User) | ||
|- | |- | ||
− | |25A- | + | |64 |
− | | | + | |25A-299 |
+ | |$1459-1498 | ||
+ | |Rooks' spell list (2 bytes per spell, 32 spells per character) | ||
+ | |- | ||
+ | |64 | ||
+ | |29A-2D9 | ||
+ | |$1499-14D8 | ||
+ | |Current Spirit's spell list (2 bytes per spell, 32 spells per character) | ||
+ | |- | ||
+ | |64 | ||
+ | |2DA-319 | ||
+ | |$14D9-1518 | ||
+ | |Guest1's spell list (2 bytes per spell, 32 spells per character) | ||
|- | |- | ||
+ | |64 | ||
+ | |31A-359 | ||
+ | |$1519-1558 | ||
+ | |Guest2's spell list (2 bytes per spell, 32 spells per character) | ||
+ | |- | ||
+ | |2 | ||
|35A-35B | |35A-35B | ||
+ | |$1559-155A | ||
|GP | |GP | ||
|- | |- | ||
+ | |8 | ||
|35C-363 | |35C-363 | ||
+ | |$155B-1562 | ||
|Current party (00 = Rooks; 2 bytes each) | |Current party (00 = Rooks; 2 bytes each) | ||
|- | |- | ||
− | |364 | + | |2 |
− | |?? (00 or 04) | + | |364-365 |
+ | |$1573-1574 | ||
+ | |?? (00 or 04) (Checked before changing music, before boss fight) | ||
|- | |- | ||
+ | |2 | ||
|366-367 | |366-367 | ||
− | | | + | |$1577-1578 |
+ | |Window color (Bit depth: 0BBB B0GG GG0R RRR0) | ||
|- | |- | ||
− | |368 | + | |2 |
+ | |368-369 | ||
+ | |$18CD-18CE | ||
|Chapter # (01-05) | |Chapter # (01-05) | ||
|- | |- | ||
− | | | + | |2 |
+ | |36A-36B | ||
+ | |$18DF-18E0 | ||
+ | |Bosses defeated? | ||
+ | |- | ||
+ | |8 | ||
+ | |36C-373 | ||
+ | |$18E3-18EA | ||
+ | |Treasure chests opened | ||
+ | |- | ||
+ | |2 | ||
+ | |374-375 | ||
+ | |$18FF-1900 | ||
|?? | |?? | ||
|- | |- | ||
− | |376 | + | |2 |
+ | |376-377 | ||
+ | |$16F7-16F8 | ||
|Dungeon X pos | |Dungeon X pos | ||
|- | |- | ||
− | |378 | + | |2 |
+ | |378-379 | ||
+ | |$16F9-16FA | ||
|Dungeon Y pos | |Dungeon Y pos | ||
|- | |- | ||
− | |37A | + | |2 |
+ | |37A-37B | ||
+ | |$16FB-16FC | ||
|Dungeon compass facing | |Dungeon compass facing | ||
|- | |- | ||
− | |37D | + | |2 |
+ | |37C-37D | ||
+ | |$187F-1880 | ||
|?? | |?? | ||
|- | |- | ||
− | |37E | + | |2 |
+ | |37E-37F | ||
+ | |$1881-1882 | ||
|?? | |?? | ||
|- | |- | ||
− | |380- | + | |192 |
+ | |380-43F | ||
+ | |$16FF-17BE | ||
|Suspected block for dungeon map progress | |Suspected block for dungeon map progress | ||
+ | |- | ||
+ | |192 | ||
+ | |440-4FF | ||
+ | |$17BF-187E | ||
+ | |Suspected block for dungeon map progress | ||
+ | |- | ||
+ | | | ||
+ | |500-51C | ||
+ | | | ||
+ | |Suspected save checksums and colossal waste of time | ||
+ | |- | ||
+ | |220 | ||
+ | |520-5FF | ||
+ | | | ||
+ | |Stores 20-FF for some reason | ||
|- | |- | ||
|} | |} |
Latest revision as of 08:58, 20 March 2021
This contains the format for an Arcana save file. Each file takes up $500 bytes, and has a copy for protection.
They are tranferred 8 bytes at a time via MVN at $00/CAB6, which uses X= RAM address, Y= SRAM address, A= # bytes to copy
During the saving process, a ton of checksums are written by looping through the data at least 20 times.
File ranges
Slot 1 | 0100-05FF, 1100-15FF |
Slot 2 | 0600-0AFF, 1600-1AFF |
Slot 3 | 0B00-0FFF, 1B00-1FFF |
Save file format
This assumes Slot 1. Add $0500 for Slot 2, and $0A00 for Slot 3.
Bytes | Save RAM | RAM | Description |
---|---|---|---|
8 | 100-107 | $11C3-11CA | Party Condition word: Rooks, Spirit, Guest1, Guest2 (odd bytes: 00 Satisfactory, 01 Deceased, 02 Not here, 03 Paralyzed, 04 Petrified, 05 Confused, 06 Sleeping) (even bytes: 01 indicates a party member) |
8 | 108-10F | $11DB-11E2 | Copy of $11C3? |
8 | 110-117 | $11F3-11FA | Party order |
8 | 118-11F | $1223-122A | Stats: Attack (Rooks, Spirit, Guest1, Guest2) |
8 | 120-127 | $123B-1242 | Stats: Intelligence (Rooks, Spirit, Guest1, Guest2) |
8 | 128-12F | $1253-125A | Stats: Endurance (Rooks, Spirit, Guest1, Guest2) |
8 | 130-137 | $126B-1272 | Stats: Alertness (Rooks, Spirit, Guest1, Guest2) |
8 | 138-13F | $1283-128A | Equipped weapons |
8 | 140-147 | $129B-12A2 | Equipped armors |
8 | 148-14F | $12B3-12BA | Equipped accessories |
8 | 150-157 | $12CB-12D2 | Equipped rings |
8 | 158-15F | $12F3-12FA | Stats: Party current HP (Rooks, Spirit, Guest1, Guest2) |
8 | 160-167 | $130B-1312 | Copy of $12F3 |
8 | 168-16F | $1323-132A | Stats: Party current MP (Rooks, Spirit, Guest1, Guest2) |
8 | 170-177 | $133B-1342 | Copy of $1323 |
8 | 178-17F | $1353-135A | Stats: Spirits' current HP (Sylph, Dao, Marid, Efrite) |
8 | 180-187 | $135B-1362 | Stats: Spirits' current MP (Sylph, Dao, Marid, Efrite) |
8 | 188-18F | $1363-136A | Stats: Party EXP (Rooks, Spirit, Guest1, Guest2) (Spirit uses Rooks' EXP/LV) |
8 | 190-197 | $137B-1382 | Stats: Party LV (Rooks, Spirit, Guest1, Guest2) |
8 | 198-19F | $1393-139A | Stats: Party max HP (Rooks, Spirit, Guest1, Guest2) |
8 | 1A0-1A7 | $139B-13A2 | Stats: Party max MP (Rooks, Spirit, Guest1, Guest2) |
2 | 1A8-1A9 | $13A7-13A8 | 00 00 (Unused?) |
16 | 1AA-1B9 | $13A9-13B8 | Card inventory (2 bytes each, ID/quantity, 8 slots) |
96 | 1BA-219 | $13B9-1418 | Item inventory (2 bytes each, 48 slots) |
64 | 21A-259 | $1419-1458 | Equipment inventory (2 bytes each, ID/User) |
64 | 25A-299 | $1459-1498 | Rooks' spell list (2 bytes per spell, 32 spells per character) |
64 | 29A-2D9 | $1499-14D8 | Current Spirit's spell list (2 bytes per spell, 32 spells per character) |
64 | 2DA-319 | $14D9-1518 | Guest1's spell list (2 bytes per spell, 32 spells per character) |
64 | 31A-359 | $1519-1558 | Guest2's spell list (2 bytes per spell, 32 spells per character) |
2 | 35A-35B | $1559-155A | GP |
8 | 35C-363 | $155B-1562 | Current party (00 = Rooks; 2 bytes each) |
2 | 364-365 | $1573-1574 | ?? (00 or 04) (Checked before changing music, before boss fight) |
2 | 366-367 | $1577-1578 | Window color (Bit depth: 0BBB B0GG GG0R RRR0) |
2 | 368-369 | $18CD-18CE | Chapter # (01-05) |
2 | 36A-36B | $18DF-18E0 | Bosses defeated? |
8 | 36C-373 | $18E3-18EA | Treasure chests opened |
2 | 374-375 | $18FF-1900 | ?? |
2 | 376-377 | $16F7-16F8 | Dungeon X pos |
2 | 378-379 | $16F9-16FA | Dungeon Y pos |
2 | 37A-37B | $16FB-16FC | Dungeon compass facing |
2 | 37C-37D | $187F-1880 | ?? |
2 | 37E-37F | $1881-1882 | ?? |
192 | 380-43F | $16FF-17BE | Suspected block for dungeon map progress |
192 | 440-4FF | $17BF-187E | Suspected block for dungeon map progress |
500-51C | Suspected save checksums and colossal waste of time | ||
220 | 520-5FF | Stores 20-FF for some reason |