Final Fantasy I & II: Dawn of Souls:RAM map
From Data Crystal
All addresses are given in hexadecimal.
Address Size Description -------- ---- ----------- 02000584 4 Pointer to Variable Memory base address 02001A18 4 RNG state 02002074 32 Chest state bitfield 020026CC 48*4 Player character data 020027EC B2*4 Out-of-battle inventory (4 bytes per item) 02002AB4 4 Party Gil
+$2880: Unit ID of currently selected character in battle +$3826: Step counter; increments up to 0xF, resets when a battle happens; used for encounter rates +$48E7: Stores if battle-to-be is normal, Ambush, or Preemptive +$4AEC: Pointer to Player Characters' data in memory +$4AF0: Pointer to inbattle inventory +$4AFC: Sets of four-byte ministructs, one for each PC, that indicate item usage during a combat round: +$4B30: Pointer to list of swappable gear (by inventory slot) when re-equipping an equip slot +$4B71: When changing equips, refers to the equipment slot being changed (0-4) +$4B72: Encounter ID to load for battle +$4B76-79: List of monster species in this battle (up to 4) +$4B7A-7B: Number monsters in battle per monster species (also counts deads!) +$4B7E: Battle config for this encounter (9 small, 4 large, 2 Large+6 small, etc) +$4C90: Base offset of player unit data in battle +$4CB0: Used to index to monster unit data (monsters have smaller structs, so need this additional) +$4CE0: For first PC, this and next few bytes indicate item being used + type + position in inventory? +$4CE4: Byte indicating horizontal position in in-battle Equip menu +$4CE5: Byte indicating vertical scroll position in in-battle Equip menu +$4E10: Monster data in battle +$4E51: Indexes to monster battle data +$41 (Monster ID) +$5714: Pointer to start of player data +$90C4: Current X Position on World Map +$90C6: Current Y Position on World Map +$B57C: Caster's actor ID, when casting a spell +$B57D: Spell target's actor ID