Difference between revisions of "Arcana:SRAM map"

From Data Crystal
Jump to: navigation, search
m
(Elaborated on RAM ending ranges.)
Line 2: Line 2:
  
 
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
 +
The file is saved twice and a ton of checksums are written by looping through the data at least 20 times.
  
 
==File ranges==
 
==File ranges==
Line 26: Line 28:
 
|-
 
|-
 
|100-107
 
|100-107
|$11C3
+
|$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)
 
|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)
 
|-
 
|-
 
|108-10F
 
|108-10F
|$11DB
+
|$11DB-11E2
 
|Copy of $11C3?
 
|Copy of $11C3?
 
|-
 
|-
 
|110-117
 
|110-117
|$11F3
+
|$11F3-11FA
 
|Party order
 
|Party order
 
|-
 
|-
 
|118-11F
 
|118-11F
|$1223
+
|$1223-122A
 
|Stats: Attack (Rooks, Spirit, Guest1, Guest2)
 
|Stats: Attack (Rooks, Spirit, Guest1, Guest2)
 
|-
 
|-
 
|120-127
 
|120-127
|$123B
+
|$123B-1242
 
|Stats: Intelligence (Rooks, Spirit, Guest1, Guest2)
 
|Stats: Intelligence (Rooks, Spirit, Guest1, Guest2)
 
|-
 
|-
 
|128-12F
 
|128-12F
|$1253
+
|$1253-125A
 
|Stats: Endurance (Rooks, Spirit, Guest1, Guest2)
 
|Stats: Endurance (Rooks, Spirit, Guest1, Guest2)
 
|-
 
|-
 
|130-137
 
|130-137
|$126B
+
|$126B-1272
 
|Stats: Alertness (Rooks, Spirit, Guest1, Guest2)
 
|Stats: Alertness (Rooks, Spirit, Guest1, Guest2)
 
|-
 
|-
 
|138-13F
 
|138-13F
|$1283
+
|$1283-128A
 
|Equipped weapons
 
|Equipped weapons
 
|-
 
|-
 
|140-147
 
|140-147
|$129B
+
|$129B-12A2
 
|Equipped armors
 
|Equipped armors
 
|-
 
|-
 
|148-14F
 
|148-14F
|$12B3
+
|$12B3-12BA
 
|Equipped accessories
 
|Equipped accessories
 
|-
 
|-
 
|150-157
 
|150-157
|$12CB
+
|$12CB-12D2
 
|Equipped rings
 
|Equipped rings
 
|-
 
|-
 
|158-15F
 
|158-15F
|$12F3
+
|$12F3-12FA
 
|Stats: Party current HP (Rooks, Spirit, Guest1, Guest2)
 
|Stats: Party current HP (Rooks, Spirit, Guest1, Guest2)
 
|-
 
|-
 
|160-167
 
|160-167
|$130B
+
|$130B-1312
 
|Copy of $12F3
 
|Copy of $12F3
 
|-
 
|-
 
|168-16F
 
|168-16F
|$1323
+
|$1323-132A
 
|Stats: Party current MP (Rooks, Spirit, Guest1, Guest2)
 
|Stats: Party current MP (Rooks, Spirit, Guest1, Guest2)
 
|-
 
|-
 
|170-177
 
|170-177
|$133B
+
|$133B-1342
 
|Copy of $1323
 
|Copy of $1323
 
|-
 
|-
 
|178-17F
 
|178-17F
|$1353
+
|$1353-135A
 
|Stats: Spirits' current HP (Sylph, Dao, Marid, Efrite)
 
|Stats: Spirits' current HP (Sylph, Dao, Marid, Efrite)
 
|-
 
|-
 
|180-187
 
|180-187
|$135B
+
|$135B-1362
 
|Stats: Spirits' current MP (Sylph, Dao, Marid, Efrite)
 
|Stats: Spirits' current MP (Sylph, Dao, Marid, Efrite)
 
|-
 
|-
 
|188-18F
 
|188-18F
|$1363
+
|$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)
 
|-
 
|-
 
|190-197
 
|190-197
|$137B
+
|$137B-1382
 
|Stats: Party LV (Rooks, Spirit, Guest1, Guest2)
 
|Stats: Party LV (Rooks, Spirit, Guest1, Guest2)
 
|-
 
|-
 
|198-19F
 
|198-19F
|$1393
+
|$1393-139A
 
|Stats: Party max HP (Rooks, Spirit, Guest1, Guest2)
 
|Stats: Party max HP (Rooks, Spirit, Guest1, Guest2)
 
|-
 
|-
 
|1A0-1A7
 
|1A0-1A7
|$139B
+
|$139B-13A2
 
|Stats: Party max MP (Rooks, Spirit, Guest1, Guest2)
 
|Stats: Party max MP (Rooks, Spirit, Guest1, Guest2)
 
|-
 
|-
 
|1A8-1A9
 
|1A8-1A9
|$13A7
+
|$13A7-13A8
 
|00 00 (Unused?)
 
|00 00 (Unused?)
 
|-
 
|-
 
|1AA-1B9
 
|1AA-1B9
|$13A9
+
|$13A9-13B8 (16 bytes)
 
|Card inventory (2 bytes each, ID/quantity, 8 slots)
 
|Card inventory (2 bytes each, ID/quantity, 8 slots)
 
|-
 
|-
 
|1BA-219
 
|1BA-219
|$13B9
+
|$13B9-1418 (96 bytes)
 
|Item inventory (2 bytes each, 48 slots)
 
|Item inventory (2 bytes each, 48 slots)
 
|-
 
|-
 
|21A-259
 
|21A-259
|$1419
+
|$1419-1458 (64 bytes)
 
|Equipment inventory (2 bytes each, ID/User)
 
|Equipment inventory (2 bytes each, ID/User)
 
|-
 
|-
|25A-359
+
|25A-299
|$1459
+
|$1459-1498 (64 bytes)
|Current party spell lists (Rooks, Spirit, Guest1, Guest2) (2 bytes per spell, 32 spells per character)
+
|Rooks' spell list (2 bytes per spell, 32 spells per character)
 +
|-
 +
|29A-2D9
 +
|$1499-14D8 (64 bytes)
 +
|Current Spirit's spell list (2 bytes per spell, 32 spells per character)
 +
|-
 +
|2DA-319
 +
|$14D9-1518 (64 bytes)
 +
|Guest1's spell list (2 bytes per spell, 32 spells per character)
 +
|-
 +
|31A-359
 +
|$1519-1558 (64 bytes)
 +
|Guest2's spell list (2 bytes per spell, 32 spells per character)
 
|-
 
|-
 
|35A-35B
 
|35A-35B
|$1559
+
|$1559-155A
 
|GP
 
|GP
 
|-
 
|-
 
|35C-363
 
|35C-363
|$155B
+
|$155B-1562
 
|Current party (00 = Rooks; 2 bytes each)
 
|Current party (00 = Rooks; 2 bytes each)
 
|-
 
|-
 
|364-365
 
|364-365
|$1573
+
|$1573-1574
|?? (00 or 04) (Checked before changing music)
+
|?? (00 or 04) (Checked before changing music, before boss fight)
 
|-
 
|-
 
|366-367
 
|366-367
|$1577
+
|$1577-1578
 
|Window color (Bit depth: 0BBB B0GG GG0R RRR0)
 
|Window color (Bit depth: 0BBB B0GG GG0R RRR0)
 
|-
 
|-
 
|368-369
 
|368-369
|$18CD
+
|$18CD-18CE
 
|Chapter # (01-05)
 
|Chapter # (01-05)
 
|-
 
|-
 
|36A-36B
 
|36A-36B
|$18DF
+
|$18DF-18E0
 
|??
 
|??
 
|-
 
|-
|36C-36F
+
|36C-373
|$18E3
+
|$18E3-18EA
 
|Treasure chests opened
 
|Treasure chests opened
 
|-
 
|-
 
|370-374
 
|370-374
|$18FF
+
|$18FF-1900
 
|??
 
|??
 
|-
 
|-
 
|376-377
 
|376-377
|$16F7
+
|$16F7-16F8
 
|Dungeon X pos
 
|Dungeon X pos
 
|-
 
|-
 
|378-379
 
|378-379
|$16F9
+
|$16F9-16FA
 
|Dungeon Y pos
 
|Dungeon Y pos
 
|-
 
|-
 
|37A-37B
 
|37A-37B
|$16FB
+
|$16FB-16FC
 
|Dungeon compass facing
 
|Dungeon compass facing
 
|-
 
|-
 
|37D-37E
 
|37D-37E
|$187F
+
|$187F-1880
 
|??
 
|??
 
|-
 
|-
 
|37F
 
|37F
|$1881
+
|$1881-1882
 
|??
 
|??
 
|-
 
|-
|380-3FF
+
|380-43F
|$16FF
+
|$16FF-17BE (192 bytes)
 
|Suspected block for dungeon map progress
 
|Suspected block for dungeon map progress
 
|-
 
|-
|400-4BF
+
|440-4FF
|$17BF
+
|$17BF-187E
 
|Suspected block for dungeon map progress
 
|Suspected block for dungeon map progress
|-
 
|4C0-4FF
 
|
 
|Unknown data
 
 
|-
 
|-
 
|500-51C
 
|500-51C

Revision as of 22:12, 28 September 2020

(Back to Main page)

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 The file is saved twice and 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 Address Description
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)
108-10F $11DB-11E2 Copy of $11C3?
110-117 $11F3-11FA Party order
118-11F $1223-122A Stats: Attack (Rooks, Spirit, Guest1, Guest2)
120-127 $123B-1242 Stats: Intelligence (Rooks, Spirit, Guest1, Guest2)
128-12F $1253-125A Stats: Endurance (Rooks, Spirit, Guest1, Guest2)
130-137 $126B-1272 Stats: Alertness (Rooks, Spirit, Guest1, Guest2)
138-13F $1283-128A Equipped weapons
140-147 $129B-12A2 Equipped armors
148-14F $12B3-12BA Equipped accessories
150-157 $12CB-12D2 Equipped rings
158-15F $12F3-12FA Stats: Party current HP (Rooks, Spirit, Guest1, Guest2)
160-167 $130B-1312 Copy of $12F3
168-16F $1323-132A Stats: Party current MP (Rooks, Spirit, Guest1, Guest2)
170-177 $133B-1342 Copy of $1323
178-17F $1353-135A Stats: Spirits' current HP (Sylph, Dao, Marid, Efrite)
180-187 $135B-1362 Stats: Spirits' current MP (Sylph, Dao, Marid, Efrite)
188-18F $1363-136A Stats: Party EXP (Rooks, Spirit, Guest1, Guest2) (Spirit uses Rooks' EXP/LV)
190-197 $137B-1382 Stats: Party LV (Rooks, Spirit, Guest1, Guest2)
198-19F $1393-139A Stats: Party max HP (Rooks, Spirit, Guest1, Guest2)
1A0-1A7 $139B-13A2 Stats: Party max MP (Rooks, Spirit, Guest1, Guest2)
1A8-1A9 $13A7-13A8 00 00 (Unused?)
1AA-1B9 $13A9-13B8 (16 bytes) Card inventory (2 bytes each, ID/quantity, 8 slots)
1BA-219 $13B9-1418 (96 bytes) Item inventory (2 bytes each, 48 slots)
21A-259 $1419-1458 (64 bytes) Equipment inventory (2 bytes each, ID/User)
25A-299 $1459-1498 (64 bytes) Rooks' spell list (2 bytes per spell, 32 spells per character)
29A-2D9 $1499-14D8 (64 bytes) Current Spirit's spell list (2 bytes per spell, 32 spells per character)
2DA-319 $14D9-1518 (64 bytes) Guest1's spell list (2 bytes per spell, 32 spells per character)
31A-359 $1519-1558 (64 bytes) Guest2's spell list (2 bytes per spell, 32 spells per character)
35A-35B $1559-155A GP
35C-363 $155B-1562 Current party (00 = Rooks; 2 bytes each)
364-365 $1573-1574 ?? (00 or 04) (Checked before changing music, before boss fight)
366-367 $1577-1578 Window color (Bit depth: 0BBB B0GG GG0R RRR0)
368-369 $18CD-18CE Chapter # (01-05)
36A-36B $18DF-18E0 ??
36C-373 $18E3-18EA Treasure chests opened
370-374 $18FF-1900 ??
376-377 $16F7-16F8 Dungeon X pos
378-379 $16F9-16FA Dungeon Y pos
37A-37B $16FB-16FC Dungeon compass facing
37D-37E $187F-1880 ??
37F $1881-1882 ??
380-43F $16FF-17BE (192 bytes) Suspected block for dungeon map progress
440-4FF $17BF-187E Suspected block for dungeon map progress
500-51C Suspected save checksums and colossal waste of time
520-5FF Stores 20-FF for some reason