If you are still using the old URL (datacrystal.romhacking.net), please update your bookmarks! The old URL may stop working soon.
The current URL is datacrystal.tcrf.net.
The current URL is datacrystal.tcrf.net.
Final Fantasy IV (SNES)/RAM map
Jump to navigation
Jump to search
The following article is a RAM map for Final Fantasy IV (SNES).
Battle
- 7EEF8D - Current target of cursor. Possible values:
- 0 through 7: One of the 8 possible enemy targets.
- 8 through 12: One of the 5 possible ally targets.
- 13: All allies
- 255 / -1: All enemies
- 7E000E - bit flags for which of 8 possible enemies are being targeted. 255 (all flags set) for targeting all enemies.
- 7E00D0 - slot of party member that currently has their battle menu open (0 through 4), or 255 / -1 if nobody does.
- 7E1822 - same as above, but does not switch to 255 after the character had chosen their action; stays on the last character to have their battle menu optin.
- 7E00D7 - 1 when a party member's battle menu is open, 0 otherwise.
- 7E1820 - 1 when a battle menu is in the middle of opening/closing, 0 otherwise.
- 7E1823 - battle cursor state. Known values are:
- 0 - no cursor
- 1 - base menu
- 2 - right-side Defend menu
- 3 - left-side Change menu
- 4 - choosing a target for an Attack command
- 5 - Item menu
- 6 - Spell menu
- 7 - Choosing a target for a Skill (Aim, Kick, Jump, etc.)
- 8 - Base menu closing after an action has been chosen
- 9 - Spell menu opening
- 10 - Spell menu closing
- 11 - Equipment menu above the item menu
- 12 - Choosing a target for an item or spell
- 13,14 - ???
- 15 - Closing item menu
- 7E0060 - Cursor position in battle base menu. Can be 0 through 4.
- 7E0063 - Cursor position in item/spell menu. Can be 0 through 23 for spell menu, 0 through 47 for item menu.
- 7E38D8 - 128 when surprised or back attack, 1 when first strike, 0 for a regular battle.
- 7E030B - 113 when in back attack, 49 when party is oriented normally. Flickers onto 240 at start of a fight.
- 7E00CE - Slot number of ally targeted by most recent enemy attack. Can be 0 through 4.
- 7E29CD - Current enemy count. Updates as enemies are killed.
- 7E29CA - 3 bytes, one for how many enemies of the 3 possible enemy types are left in the fight. Updates as enemies are killed.
- 7E29AD - 3 bytes, each representing the ID of one of the enemy types in the current fight. 255 for no enemy type. Values change to 255 if all enemies of that type have been killed.
- 7E29B5 - 8 bytes, can be 0, 1, or 2, representing which enemy group from 7E29AD this enemy is. Value is 255 if no enemy is in that slot or if the enemy has been killed.
- 7E29BD - same as 7E29B5, but retains the values from the start of the fight.
- 7E29A3 - value that represents how the enemies are arranged; this is independent of which enemies you're actually fighting. For example, 0 is just one enemy in the middle - used for most boss fights.
- 7EEF8E - Ability to Target single and multiple targets (00 for no)
- 7EEF8F - Enemy target
- 7EEF90 - Playable Character target
- 7EF0C2 - Hit effect (graphic animation) for Fight
Map Data
- 7E06A2 - Makes screen flash when walking, like damage
- 7E06C2 - Makes screen pixelate when walking, like poison
- 7E06C4 - Makes location's colors inverted (not sprites)
- 7E06C9 - Layer 2's scrolling method
- 7E06E3 - change this for screen shake
- 7E0EDB - Tile properties for town (solid, non-solid, exit, harmful,etc...)
- 7E1A02 - Can you save and use a tent here? (00 - no, 01 - yes)
- 7E1E00 - Music data (instruments and the likes)
- 7E09CF - Event for location?
- 7E09D1 - Storyline point for location?
- 7E1703 - Current location map
- 7E0649 - Location name displayed (00-not currently displaying, 01-currently displaying)
- 7E08F0 - Location NPC sprite data, palette, location, movement, etc..
- 7F5000 - Location MAP data in RAM
- 7E172C - Location Exit destination
- 7E0FDE - Location NPC Layout
- 7E0FDD - Location tileset
- 7E0FD6 - Location Name displayed upon entering
- 7E0FD4 - Layer 1 visibility, On/Off
- 7E0FD3 - Layer 1 tileset (Whole maps, used for water and the likes)
- 7E0FE0 - Layer 1 palette for locations
- 7F4480 - Town Baron Level Data
Game/Menu Settings
- 7E16A3 - Menu 'Time' counter (always counting up)
- 7E1440 - Begining of Items
- 7E16AD - Menu customize settings - Battle Speed
- 7E16AE - Menu customize settings - Battle Message
- 7E16B6 - Menu customize settings - Sound (Stereo/Mono)
- 7E16AA - Menu customize settings - Window Color
- 7E16AB - Menu customize settings - Window Color
- 7E16A8 - Menu customize settings - Change (Front/Back)
- 7E1500 - 7E1553 - Character Names
(Cecil/Kain/Rydia/Tellah/Edward/Rosa/Yang/Palom/Porom/Cid/Edge/FuSoYa/Golbez/Anna)
- 7EC6B0 - Menu string "Item"
- 7EC730 - Menu string "Magic"
- 7EC7B0 - Menu string "Equip"
- 7EC830 - Menu string "Status"
- 7EC8B0 - Menu string "Form"
- 7EC930 - Menu string "Change"
- 7EC9B0 - Menu string "Custom"
- 7ECA30 - Menu string "Save"
- 7E0774 -7E0877 Popup window text (found so and so, people's text, etc.)
- 7E8CBC - Character command strings - character slot #1
- 7E8D20 - Character command strings - character slot #2
- 7E8D84 - Character command strings - character slot #3
- 7E8DE8 - Character command strings - character slot #4
- 7E8E4C - Character command strings - character slot #5
- 7E8EC0 -7E97A4 - Battle Item menu strings and numbers (example - Cure1: 01)
- 7EBEEA - Enemy Names and number of (Imp 4)
- 7EBF02 - In-battle character name (Slot #1)
- 7EBF12 - In-battle character Current/Max HP (Slot #1)
- 7EBF82 - In-battle character name (Slot #1)
- 7EBF92 - In-battle character Current/Max HP (Slot #1)
- 7E0302 - Item menu hand graphic (top menu)
- 7E0303 - Item menu hand graphic (attribute top menu)
- 7E0312 - Item menu hand graphic (bottom menu)
- 7E0313 - Item menu hand graphic attribute (bottom menu)
- 7E0300 - X coordinate of graphic hand pointer for Main Menu
- 7E0301 - Y coordinate of graphic hand pointer for Main Menu
- 7E0302 - Graphic for hand pointer for Main Menu
- 7E0301 - Y coordinate of graphic hand pointer for Equip Menu (choosing which area of equipment you are changing in top menu)
- 7E0300 - X coordinate of graphic hand pointer for Equip Menu (choosing which area of equipment you are changing in top menu)
- 7E0301 - Y coordinate of graphic hand pointer for Equip Menu (choosing which area of equipment you are changing in top menu)
- 7E0310 - X coordinate of graphic hand pointer for Equip Menu (choosing which area of equipment you are changing in bottom menu
- 7E0311 - Y coordinate of graphic hand pointer for Equip Menu (choosing which area of equipment you are changing in bottom menu)
Characters
The following 64-byte memory blocks contain out-of-battle character data:
- 7E1000: Center Character
- 7E1040: Upper Character
- 7E1080: Lower Character
- 7E10C0: Center-up Character
- 7E1100: Center-low Character
The following 128-byte memory blocks contain in-battle character data:
- 7E2000: Center Character
- 7E2080: Upper Character
- 7E2100: Lower Character
- 7E2180: Center-up Character
- 7E2200: Center-low Character
Use the following offsets to gather information about each character:
- +0: Character identifier. Read this modulo 64 - the 2 most significant bits appear to be flags. Known values are:
- 1: Cecil (Dark Knight)
- 2: Kain (beginning of game)
- 3: Young Rydia
- 4: Tellah (pre-Damycam)
- 5: Gilbert
- 6: Rosa (pre-Fabul)
- 7: Yang (pre-Baron)
- 8: Palom
- 9: Porom
- 10: Tellah (pre-Paladin)
- 11: Cecil (Paladin)
- 12: Tellah (post-Paladin)
- 13: Yang (post-Baron)
- 14: Cid
- 15: Kain (pre-Sealed Cave)
- 16: Rosa (final)
- 17: Rydia (final)
- 18: Edge
- 19: FuSoYa
- 20: Kain (final)
- +2: Level.
- +3: Status flags. (4 bytes)
- +7: Current HP. (2 bytes)
- +9: Max HP. (2 bytes)
- +11: Current MP. (2 bytes)
- +13: Max MP. (2 bytes)
- +16 through +47: Various stats (Strength, Agility, etc.)
- +48: Head equipment slot
- +49: Body equipment slot
- +50: Arms equipment slot
- +51: Right hand equipment slot
- +52: ???
- +53: Left hand equipment slot
Miscellaneous
- 7E06DF - Dialog/Text Window open amount (00 = closed, 08 = fully extended)