Final Fantasy III (NES)/RAM map

From Data Crystal
< Final Fantasy III (NES)
Revision as of 06:44, 22 October 2014 by Alphamule (talk | contribs) (→‎WRAM: Base/Boosted stats)
Jump to navigation Jump to search

Chip tiny.png The following article is a RAM map for Final Fantasy III (NES).

SRAM

File Structure (0x2000 = 8192 bytes, starts at 0x6000 when mapped)

	Offset | Len  | Description
	_______|______|____________
	0x0000 | 1024 | Last Save
	0x0400 | 1024 | Slot #1
	0x0800 | 1024 | Slot #2
	0x0C00 | 1024 | Slot #3

Save Slot Structure (0x400 = 1024 bytes)

	Offset | Len | Description
	_______|_____|______________________
	0x0000 |   1 | Any Airship Visible
	0x0001 |   1 | Airship X
	0x0002 |   1 | Airship Y
	0x0004 |   1 | Big Airship Visible
	0x0005 |   1 | Big Airship X
	0x0006 |   1 | Big Airship Y
	0x0008 |   1 | Map ID
	0x0009 |   1 | Player X
	0x000A |   1 | Player Y
	0x000B |   1 | Following
	0x000E |   1 | Player Icon
	0x000F |   1 | Player Vehicle
	0x0014 |   1 | Save Count
	0x001A |   1 | Checksum
	0x001B |   1 | CP (Change Points)
	0x001C |   3 | Gold
	0x0021 |   1 | Crystal Level (Max: 0x1F)
	0x00C0 |  32 | Inventory IDs
	0x00E0 |  32 | Inventory Count
	0x0100 | 256 | Characters A x 4
	0x0200 | 256 | Characters B x 4

Character Structure A (0x40 = 64 bytes)

	Offset | Len | Description
	_______|_____|_____________________
	0x0000 |   1 | Job ID
	0x0001 |   1 | Level (Starts at 0)
	0x0002 |   1 | Status
	0x0003 |   3 | Experience
	0x0006 |   6 | Name
	0x000C |   2 | Current HP
	0x000E |   2 | Maximum HP
	0x0010 |   1 | Current Job Level
	0x0011 |   1 | Current Job Experience
	0x0012 |   5 | Stats w/o Equip
	0x0017 |   5 | Stats with Equip
	0x001E |   1 | Magic Evade %
	0x001F |   1 | Magic Defense
	0x0021 |   1 | Attack Roll
	0x0022 |   1 | Hit %
	0x0023 |   1 | Attack Power
	0x0026 |   1 | Bonus Attack Roll
	0x0027 |   1 | Hit % Modifier
	0x0028 |   1 | Bonus Attack Power
	0x002B |   1 | Guard Roll
	0x002C |   1 | Evade %
	0x002D |   1 | Guard Power
	0x0030 |  16 | Curr/Max MP x 8

Character Structure B (0x40 = 64 bytes)

	Offset | Len | Description
	_______|_____|_____________________
	0x0000 |   1 | Equip: Head
	0x0001 |   1 | Equip: Body
	0x0002 |   1 | Equip: Arms
	0x0003 |   1 | Equip: Right
	0x0004 |   1 | Equip: Left
	0x0007 |   8 | Equip: Magic
	0x000F |   1 | Row (2: Front, 3: Back)
	0x0010 |  44 | Job Level, Experience x 22

WRAM

Zero Page Variables

	Offset | Len | Description
	_______|_____|_____________________
	0027   |   1 | Horizontal position (Overworld)
	0029   |   1 | Horizontal position (Non-overworld) in area
	002A   |   1 | Vertical position (Non-overworld) in area (needs more details/incomplete)
	002B   |   1 | Horizontal position (Overworld) that tile engine sees?
	0031   |   1 | Horizontal position (Overworld) that tile engine sees?
	0033   |  4b | Direction character walks/faces (Non-overworld) 01=Right 02=Left 04=Down 08=Up
	0068   |   1 | Horizontal position that NPCs think you're at (They can walk through you if you change this)
	00F5   |   1 | Encounter Counter (Goes up when doing stuff like using potions or moving on screen)
40-7F pages

	Offset    | Len  | Description
	__________|______|_____________________
	4000-5FFF | 2000 | Open bus
	6000-7FFF | 2000 | Battery-backed SRAM when enabled (Also used as work RAM)
	60C0-60DF | 0020 | Item types in inventory screen
	60E0-60FF | 0020 | Item quantity in inventory screen
	6101      | 0001 | 1P Level
	6103-6105 | 0003 | 1P Experience
	6112-6116 | 0004 | 1P Strength, Agility, Vitality, Intellect, Spirit (Base)
	6117-611B | 0004 | 1P Strength, Agility, Vitality, Intellect, Spirit (After equipment)
	6141      | 0001 | 2P Level
	6143-6145 | 0003 | 2P Experience
	6152-6156 | 0004 | 2P Strength, Agility, Vitality, Intellect, Spirit (Base)
	6157-615B | 0004 | 2P Strength, Agility, Vitality, Intellect, Spirit (After equipment)
	6181      | 0001 | 3P Level
	6183-6185 | 0003 | 3P Experience
	6192-6196 | 0004 | 3P Strength, Agility, Vitality, Intellect, Spirit (Base)
	6197-619B | 0004 | 3P Strength, Agility, Vitality, Intellect, Spirit (After equipment)
	61C1      | 0001 | 4P Level
	61C3-61C5 | 0003 | 4P Experience
	61D2-61D6 | 0004 | 4P Strength, Agility, Vitality, Intellect, Spirit (Base)
	61D7-61DB | 0004 | 4P Strength, Agility, Vitality, Intellect, Spirit (After equipment)
	6200      | 0001 | 1P head equipment type
	6201      | 0001 | 1P body equipment type
	6202      | 0001 | 1P hand equipment type
	6203      | 0001 | 1P RHand type
	6204      | 0001 | 1P RHand quantity (Say, for arrows)
	6205      | 0001 | 1P LHand type
	6206      | 0001 | 1P LHand quantity
	6207      | 0001 | 1P LHand type
	6208      | 0001 | 1P LHand quantity
	6240      | 0001 | 2P head equipment type
	6241      | 0001 | 2P body equipment type
	6242      | 0001 | 2P hand equipment type
	6243      | 0001 | 2P RHand type
	6244      | 0001 | 2P RHand quantity (Say, for arrows)
	6245      | 0001 | 2P LHand type
	6246      | 0001 | 2P LHand quantity
	6247      | 0001 | 2P LHand type
	6248      | 0001 | 2P LHand quantity
	6280      | 0001 | 3P head equipment type
	6281      | 0001 | 3P body equipment type
	6282      | 0001 | 3P hand equipment type
	6283      | 0001 | 3P RHand type
	6284      | 0001 | 3P RHand quantity (Say, for arrows)
	6285      | 0001 | 3P LHand type
	6286      | 0001 | 3P LHand quantity
	6287      | 0001 | 3P LHand type
	6288      | 0001 | 3P LHand quantity
	62C0      | 0001 | 4P head equipment type
	62C1      | 0001 | 4P body equipment type
	62C2      | 0001 | 4P hand equipment type
	62C3      | 0001 | 4P RHand type
	62C4      | 0001 | 4P RHand quantity (Say, for arrows)
	62C5      | 0001 | 4P LHand type
	62C6      | 0001 | 4P LHand quantity
	62C7      | 0001 | 4P LHand type
	62C8      | 0001 | 4P LHand quantity

PPU

CHR-RAM

	Offset    | Len  | Description
	__________|______|_____________________
	0000-07FF | 2000 | Bank pair (2KB)
	0800-0FFF | 2000 | Bank pair (2KB)
	1000-13FF | 2000 | Bank (1KB)
	1400-17FF | 2000 | Bank (1KB)
	1800-1BFF | 2000 | Bank (1KB)
	1C00-1FFF | 2000 | Bank (1KB)


See also for 8000-FFFF: Final_Fantasy_III:ROM_map Note: Not done yet - need to find out why this was deleted.