Difference between revisions of "EarthBound:RAM map"

From Data Crystal
Jump to navigation Jump to search
m (cat)
 
(17 intermediate revisions by 10 users not shown)
Line 1: Line 1:
{{Rammap|game=[[EarthBound]]}}
+
{{rammap|game=EarthBound}}
 
 
==WRAM==
 
  
 
===Active Palettes===
 
===Active Palettes===
 +
* <tt>000200-00023F (000040)</tt> = Current text [[EarthBound:Palettes|palette]]
 +
* <tt>000240-0002FF (0000C0)</tt> = Current map [[EarthBound:Palettes|palette]]
 +
* <tt>000300-00039F (0000A0)</tt> = '''''Unclassified data'''''
 +
* <tt>0003A0-0003BF (000020)</tt> = Current party [[EarthBound:Palettes|palette]]
 +
* <tt>0003C0-0003DF (000020)</tt> = Current NPC [[EarthBound:Palettes|palette]] (humans?)
 +
* <tt>0003E0-0003FF (000020)</tt> = Current NPC [[EarthBound:Palettes|palette]] (nonhumans?)
  
* <tt>000200 to 00023F (000040)</tt> = [[EarthBound:Current text palette|Current text palette]]
+
===Credits Sequence===
* <tt>000240 to 0002FF (0000C0)</tt> = [[EarthBound:Current map palette|Current map palette]]
+
* <tt>001E60-001E6F (00000F)</tt> = Chosen four and pet's name stored for Credits parsing (Paula's mom, Paula's dad, Poo's Master).
* <tt>000300 to 00039F (0000A0)</tt> = '''''Unclassified data'''''
 
* <tt>0003A0 to 0003BF (000020)</tt> = [[EarthBound:Current party palette|Current party palette]]
 
* <tt>0003C0 to 0003DF (000020)</tt> = [[EarthBound:Current NPC palette (humans?)|Current NPC palette (humans?)]]
 
* <tt>0003E0 to 0003FF (000020)</tt> = [[EarthBound:Current NPC palette (nonhumans?)|Current NPC palette (nonhumans?)]]
 
  
 
===Miscellaneous===
 
===Miscellaneous===
 
+
* <tt>005D62-005D63 (000002)</tt> = Current [[EarthBound:Text pointer table|TPT entry]]
* <tt>005D62 to 005D63 (000002)</tt> = [[EarthBound:Current TPT entry|Current TPT entry]]
+
* <tt>005D64-005D9F (00003C)</tt> = '''''Unclassified data'''''
* <tt>005D64 to 005D9F (00003C)</tt> = '''''Unclassified data'''''
+
* <tt>005DA0-005DA1 (000002)</tt> = If nonzero, causes mushroomization walking-direction-jumbling.
* <tt>005DA0 to 005DA1 (000002)</tt> = If nonzero, causes mashroomization walking-direction-jumbling.
 
  
 
===Windows and text===
 
===Windows and text===
 
+
* <tt>008650-0088DF (000290)</tt> = [[EarthBound:Window statistics table|Window statistics table]]
* <tt>008650 to 0088DF (000290)</tt> = [[EarthBound:Window statistics table|Window statistics table]]
+
* <tt>0088E0-0088E3 (000004)</tt> = '''''Unclassified data'''''
* <tt>0088E0 to 0088E3 (000004)</tt> = '''''Unclassified data'''''
+
* <tt>0088E4-008957 (000074)</tt> = [[EarthBound:Window existence table|Window existence table]]
* <tt>0088E4 to 008957 (000074)</tt> = [[EarthBound:Window existence table|Window existence table]]
+
* <tt>008958-008958 (000001)</tt> = Current window with focus (what values does this use?)
* <tt>008958 to 008958 (000001)</tt> = [[EarthBound:Current window with focus|Current window with focus]]
+
* <tt>008959-009642 (000CF0)</tt> = '''''Unclassified data'''''
* <tt>008959 to 009642 (000CF0)</tt> = '''''Unclassified data'''''
+
* <tt>009643-009644 (000002)</tt> = 0x00 outside of battle, 0x01 in battle (if nonzero, treat like 0x01)
* <tt>009643 to 009644 (000002)</tt> = '''''0x00 outside of battle, 0x01 in battle (if nonzero, treat like 0x01)'''''
+
* <tt>009645-009645 (000001)</tt> = Locks button input during text parsing if 01 (used by [[EarthBound:Text control codes|1F 50 and 1F 51]])
* <tt>009645 to 009645 (000001)</tt> = '''''Locks button input during text parsing if 01 (used by [[EarthBound:Text control codes|1F 50 and 1F 51]])'''''
+
* <tt>009646-00964C (000007)</tt> = '''''Unclassified data'''''
* <tt>009646 to 00964C (000007)</tt> = '''''Unclassified data'''''
+
* <tt>00964D-00964D (000001)</tt> = 0x00 = Blinking triangle prompt, nonzero = Absence of this prompt
* <tt>00964D to 00964D (000001)</tt> = [[EarthBound:Triangle prompt status|Triangle prompt status]]
+
* <tt>00964E-0096C4 (000077)</tt> = '''''Unclassified data'''''
* <tt>00964E to 0096C4 (000077)</tt> = '''''Unclassified data'''''
+
* <tt>0096C5-0097B7 (0000F2)</tt> = [[EarthBound:Text parser call stack|Text parser call stack]]
* <tt>0096C5 to 0096C7 (000002)</tt> = [[EarthBound:Current text parser location|Current text parser location]]
+
* <tt>0097B8-0097B9 (000002)</tt> = [[EarthBound:Text parser call stack|Text parser stack pointer]]
* <tt>0096C8 to 0097B9 (0000F2)</tt> = '''''Unclassified data'''''
+
* <tt>0097BA-0097CA (000011)</tt> = [[EarthBound:Memory used by control code parser|Memory used by control code parser]]
* <tt>0097BA to 0097CA (000011)</tt> = [[EarthBound:Control code variables|Control code variables]]
 
  
 
===Player data===
 
===Player data===
 +
* <tt>0097F5-009800 (00000C)</tt> = '''''First twelve letters of player name with spaces (0x50) replaced with K (0x7B). Left over from translation - Tony would try-make the English version of your name in katakana or hirigana in Mother 2.'''''
 +
* <tt>009801-009818 (000018)</tt> = Player name
 +
* <tt>009819-00981E (000006)</tt> = Pet's name
 +
* <tt>00981F-009824 (000006)</tt> = Favourite food
 +
* <tt>009825-009828 (000004)</tt> = "PSI "
 +
* <tt>009829-00982E (000006)</tt> = Favourite thing
 +
* <tt>00982F-009830 (000002)</tt> = " " and 0x00, used with favourite thing text stuff
 +
* <tt>009831-009834 (000004)</tt> = Money on hand
 +
* <tt>009835-009838 (000004)</tt> = Money in ATM
 +
* <tt>009839-009839 (000001)</tt> = [[EarthBound:Learned PSI|Learned PSI]]
 +
* <tt>00983A-00983F (000006)</tt> = '''''Unclassified data'''''
 +
* <tt>009840-009840 (000001)</tt> = Status (00 = Normal, 01 = Burnt, 03 = Skip Sandwich)
 +
* <tt>009841-00984A (00000A)</tt> = '''''Unclassified data'''''
 +
* <tt>00984B-00986E (000024)</tt> = Escargo Express stored [[EarthBound:Item Properties Table|items]]
 +
* <tt>00986F-009876 (000008)</tt> = '''''Unclassified data'''''
 +
* <tt>009877-009878 (000002)</tt> = Party leader [[EarthBound:Map data#Coordinates|X coordinate]]
 +
* <tt>009879-00987A (000002)</tt> = '''''Unclassified data'''''
 +
* <tt>00987B-00987C (000002)</tt> = Party leader [[EarthBound:Map data#Coordinates|Y coordinate]]
 +
* <tt>00987D-00987E (000002)</tt> = '''''Unclassified data'''''
 +
* <tt>00987F-00987F (000001)</tt> = [[EarthBound:Facing direction|Direction]] Ness is facing
 +
* <tt>009880-009882 (000003)</tt> = '''''Unclassified data'''''
 +
* <tt>009883-009883 (000001)</tt> = [[EarthBound:Party movement style|Party movement style]]
 +
* <tt>009884-00988A (000007)</tt> = '''''Unclassified data'''''
 +
* <tt>00988B-009891 (000007)</tt> = ''Current [[EarthBound:Party members|party members]]
 +
* <tt>009892-009895 (000004)</tt> = ''Current player-controlled [[EarthBound:Party members|party members]]
 +
* <tt>009896-0098A2 (00000D)</tt> = '''''Unclassified data'''''
 +
* <tt>0098A3-0098A3 (000001)</tt> = Number of party members
 +
* <tt>0098A4-0098A4 (000001)</tt> = Number of player controlled party members
 +
* <tt>0098A5-0098B0 (00000C)</tt> = '''''Unclassified data'''''
 +
* <tt>0098B1-0098B1 (000001)</tt> = Auto Fight toggle (00 = Off, 01 = On)
 +
* <tt>0098B2-0098B5 (000004)</tt> = Exit Mouse [[EarthBound:Map data#Coordinates|coordinates]], stored when [[EarthBound:Text control codes|1F 68]] is used
 +
* <tt>0098B6-0098B6 (000001)</tt> = Text speed (1 = Fast, 2 = Medium, 3 = Slow)
 +
* <tt>0098B7-0098B7 (000001)</tt> = Sound setting (1 = Stereo, 2 = Mono)
 +
* <tt>0098B8-0099CD (000116)</tt> = '''''Unclassified data'''''
 +
* <tt>0099CE-009B49 (00017C)</tt> = [[EarthBound:Character stats table|Character stats table]]
  
''(Some data in this range is known but not yet formatted for this map. More information may be available in links.)''
+
===Miscellaneous===
* <tt>0099CE to 009B49 (00017C)</tt> = [[EarthBound:Character stats|Character stats]]
+
* <tt>009E54-009E55 (000002)</tt> = Timer for Dad's phone calls
 
+
* <tt>00A21C-00A??? (000???)</tt> = [[EarthBound:Enemies in battle table|Enemies in battle table]]
==SRAM==
+
* <tt>00AA10-00AA11 (000002)</tt> = [[EarthBound:Item Properties Table|Item]]-be received at the end of battle (High byte unused)
 +
* <tt>00B4A1-00B4A1 (000001)</tt> = Current selected save slot (1-3)
 +
* <tt>00B549-00B549 (000001)</tt> = [[EarthBound:Sector boundary behavior|Sector boundary behavior]]
  
[[Category:EarthBound|RAM map]]
+
===Enemy in-battle data===
 +
* <tt>7EA21C-7EA269 (00004e)</tt> = In Battle Enemy Entry (78 Addresses between each entry)
 +
* <tt>7EA21C-7EA21D (000002)</tt> = Enemy ID (includes the Enemy ID's attacks, does not update the enemy sprite nor their stats)
 +
* <tt>7EA21E-7EA21F (000002)</tt> = '''''Unclassified data'''''
 +
* <tt>7EA220-7EA220 (000001)</tt> = Enemy's Turn Action (The action number will be writen to this address before the enemy attacks)
 +
* <tt>7EA221-7EA226 (000006)</tt> = '''''Unclassified data'''''
 +
* <tt>7EA227-7EA227 (000001)</tt> = '''''Unclassified data'''''
 +
* <tt>7EA228-7EA228 (000001)</tt> = Enemy's Letter Number (Like "Enemy A" = 01 and "Enemy B" = 02)
 +
* <tt>7EA21E-7EA21F (000002)</tt> = Appearance? (00 = invisible, but can't attack and be attacked; 01 = visible and can attack/be attacked; 02+ = visible, can attack, and be targetable, but cannot be attacked)
 +
* <tt>7EA229-7EA229 (000001)</tt> = Has the enemy gotten a turn? (00 = false, 01 = true)
 +
* <tt>7EA22A-7EA22A (000001)</tt> = Same as 7EA228 in Battle appearance (Probably different in function, but can't be certain. As of right now, both addresses function the same)
 +
* <tt>7EA22B-7EA22B (000001)</tt> = '''''Unclassified data'''''
 +
* <tt>7EA22C-7EA22C (000001)</tt> = Row Placement(00 = Front Row, 01 = Back Row, 02+ = More Rows but does not show the enemy sprite, however it can be targeted)
 +
* <tt>7EA22D-7EA22F (000003)</tt> = Enemy HP (Both has to have the same number or it's get corrected to their default value[probably...])
 +
* <tt>7EA22E-7EA230 (000003)</tt> = '''''Unclassified data''''' (Going to assume that those are the PP values of the enemy, but can't be certain)
 +
* <tt>7EA231-7EA231 (000001)</tt> = Enemy's Max HP (?)
 +
* <tt>7EA232-7EA232 (000001)</tt> = Unknown (similar to 7EA22E and 7EA230)
 +
* <tt>7EA233-7EA238 (000006)</tt> = '''''Unclassified data'''''
 +
* <tt>7EA239-7EA239 (000001)</tt> = Enemy Status Condition (00 = normal, 01 = Death, 02 = Diamonized, 03 = Numb, 04 = Nausia, 05 = Poison, 06 = Heat Stroke, 07 = Cold, 08 = Mushroomized, 09 = Li'l Ghost, 0A+ = normal)
 +
* <tt>7EA23A-7EA241 (000008)</tt> = '''''Unclassified data'''''
 +
* <tt>7EA242-7EA243 (000002)</tt> = Enemy 1's Offense Stat
 +
* <tt>7EA244-7EA245 (000002)</tt> = Enemy 1's Defense Stat
 +
* <tt>7EA246-7EA247 (000002)</tt> = Enemy 1's Speed Stat
 +
* <tt>7EA248-7EA249 (000002)</tt> = Enemy 1's Guts Stat
 +
* <tt>7EA24A-7EA24B (000002)</tt> = Enemy 1's Luck Stat
 +
* <tt>7EA24C-7EA261 (000016)</tt> = '''''Unclassified data'''''
 +
* <tt>7EA262-7EA263 (000002)</tt> = Turn Priority (Highest number goes first, then next highest number. Speed Stat affects this.)
 +
* <tt>7EA264-7EA264 (000001)</tt> = Blinking Counter (Blinks transparent. For example: When an enemy takes damage)
 +
* <tt>7EA265-7EA265 (000001)</tt> = Blinking Counter (How long does the blinking last. Enemy's Turn: Blinks White, Player's Turn: Blinks Black)
 +
* <tt>7EA266-7EA266 (000001)</tt> = Blinking Target Indicator (But does not choose the actual target though. 00 = No blink but dark shade, 01 = Normal blinking)
 +
* <tt>7EA267-7EA267 (000001)</tt> = Darkens or Grays the Enemy Sprite (00 = Normal, 01+ = Dark shade if Player is deciding actions, Gray during battle interaction)
 +
* <tt>7EA268-7EA269 (000002)</tt> = "the" flag (If this number is not the same as the Enemy ID of the enemy being targeted, then "the" will be displayed with the Enemy's Name)
 +
{{Internal Data|game=EarthBound}}

Latest revision as of 10:26, 29 August 2017

Active Palettes

  • 000200-00023F (000040) = Current text palette
  • 000240-0002FF (0000C0) = Current map palette
  • 000300-00039F (0000A0) = Unclassified data
  • 0003A0-0003BF (000020) = Current party palette
  • 0003C0-0003DF (000020) = Current NPC palette (humans?)
  • 0003E0-0003FF (000020) = Current NPC palette (nonhumans?)

Credits Sequence

  • 001E60-001E6F (00000F) = Chosen four and pet's name stored for Credits parsing (Paula's mom, Paula's dad, Poo's Master).

Miscellaneous

  • 005D62-005D63 (000002) = Current TPT entry
  • 005D64-005D9F (00003C) = Unclassified data
  • 005DA0-005DA1 (000002) = If nonzero, causes mushroomization walking-direction-jumbling.

Windows and text

  • 008650-0088DF (000290) = Window statistics table
  • 0088E0-0088E3 (000004) = Unclassified data
  • 0088E4-008957 (000074) = Window existence table
  • 008958-008958 (000001) = Current window with focus (what values does this use?)
  • 008959-009642 (000CF0) = Unclassified data
  • 009643-009644 (000002) = 0x00 outside of battle, 0x01 in battle (if nonzero, treat like 0x01)
  • 009645-009645 (000001) = Locks button input during text parsing if 01 (used by 1F 50 and 1F 51)
  • 009646-00964C (000007) = Unclassified data
  • 00964D-00964D (000001) = 0x00 = Blinking triangle prompt, nonzero = Absence of this prompt
  • 00964E-0096C4 (000077) = Unclassified data
  • 0096C5-0097B7 (0000F2) = Text parser call stack
  • 0097B8-0097B9 (000002) = Text parser stack pointer
  • 0097BA-0097CA (000011) = Memory used by control code parser

Player data

  • 0097F5-009800 (00000C) = First twelve letters of player name with spaces (0x50) replaced with K (0x7B). Left over from translation - Tony would try-make the English version of your name in katakana or hirigana in Mother 2.
  • 009801-009818 (000018) = Player name
  • 009819-00981E (000006) = Pet's name
  • 00981F-009824 (000006) = Favourite food
  • 009825-009828 (000004) = "PSI "
  • 009829-00982E (000006) = Favourite thing
  • 00982F-009830 (000002) = " " and 0x00, used with favourite thing text stuff
  • 009831-009834 (000004) = Money on hand
  • 009835-009838 (000004) = Money in ATM
  • 009839-009839 (000001) = Learned PSI
  • 00983A-00983F (000006) = Unclassified data
  • 009840-009840 (000001) = Status (00 = Normal, 01 = Burnt, 03 = Skip Sandwich)
  • 009841-00984A (00000A) = Unclassified data
  • 00984B-00986E (000024) = Escargo Express stored items
  • 00986F-009876 (000008) = Unclassified data
  • 009877-009878 (000002) = Party leader X coordinate
  • 009879-00987A (000002) = Unclassified data
  • 00987B-00987C (000002) = Party leader Y coordinate
  • 00987D-00987E (000002) = Unclassified data
  • 00987F-00987F (000001) = Direction Ness is facing
  • 009880-009882 (000003) = Unclassified data
  • 009883-009883 (000001) = Party movement style
  • 009884-00988A (000007) = Unclassified data
  • 00988B-009891 (000007) = Current party members
  • 009892-009895 (000004) = Current player-controlled party members
  • 009896-0098A2 (00000D) = Unclassified data
  • 0098A3-0098A3 (000001) = Number of party members
  • 0098A4-0098A4 (000001) = Number of player controlled party members
  • 0098A5-0098B0 (00000C) = Unclassified data
  • 0098B1-0098B1 (000001) = Auto Fight toggle (00 = Off, 01 = On)
  • 0098B2-0098B5 (000004) = Exit Mouse coordinates, stored when 1F 68 is used
  • 0098B6-0098B6 (000001) = Text speed (1 = Fast, 2 = Medium, 3 = Slow)
  • 0098B7-0098B7 (000001) = Sound setting (1 = Stereo, 2 = Mono)
  • 0098B8-0099CD (000116) = Unclassified data
  • 0099CE-009B49 (00017C) = Character stats table

Miscellaneous

  • 009E54-009E55 (000002) = Timer for Dad's phone calls
  • 00A21C-00A??? (000???) = Enemies in battle table
  • 00AA10-00AA11 (000002) = Item-be received at the end of battle (High byte unused)
  • 00B4A1-00B4A1 (000001) = Current selected save slot (1-3)
  • 00B549-00B549 (000001) = Sector boundary behavior

Enemy in-battle data

  • 7EA21C-7EA269 (00004e) = In Battle Enemy Entry (78 Addresses between each entry)
  • 7EA21C-7EA21D (000002) = Enemy ID (includes the Enemy ID's attacks, does not update the enemy sprite nor their stats)
  • 7EA21E-7EA21F (000002) = Unclassified data
  • 7EA220-7EA220 (000001) = Enemy's Turn Action (The action number will be writen to this address before the enemy attacks)
  • 7EA221-7EA226 (000006) = Unclassified data
  • 7EA227-7EA227 (000001) = Unclassified data
  • 7EA228-7EA228 (000001) = Enemy's Letter Number (Like "Enemy A" = 01 and "Enemy B" = 02)
  • 7EA21E-7EA21F (000002) = Appearance? (00 = invisible, but can't attack and be attacked; 01 = visible and can attack/be attacked; 02+ = visible, can attack, and be targetable, but cannot be attacked)
  • 7EA229-7EA229 (000001) = Has the enemy gotten a turn? (00 = false, 01 = true)
  • 7EA22A-7EA22A (000001) = Same as 7EA228 in Battle appearance (Probably different in function, but can't be certain. As of right now, both addresses function the same)
  • 7EA22B-7EA22B (000001) = Unclassified data
  • 7EA22C-7EA22C (000001) = Row Placement(00 = Front Row, 01 = Back Row, 02+ = More Rows but does not show the enemy sprite, however it can be targeted)
  • 7EA22D-7EA22F (000003) = Enemy HP (Both has to have the same number or it's get corrected to their default value[probably...])
  • 7EA22E-7EA230 (000003) = Unclassified data (Going to assume that those are the PP values of the enemy, but can't be certain)
  • 7EA231-7EA231 (000001) = Enemy's Max HP (?)
  • 7EA232-7EA232 (000001) = Unknown (similar to 7EA22E and 7EA230)
  • 7EA233-7EA238 (000006) = Unclassified data
  • 7EA239-7EA239 (000001) = Enemy Status Condition (00 = normal, 01 = Death, 02 = Diamonized, 03 = Numb, 04 = Nausia, 05 = Poison, 06 = Heat Stroke, 07 = Cold, 08 = Mushroomized, 09 = Li'l Ghost, 0A+ = normal)
  • 7EA23A-7EA241 (000008) = Unclassified data
  • 7EA242-7EA243 (000002) = Enemy 1's Offense Stat
  • 7EA244-7EA245 (000002) = Enemy 1's Defense Stat
  • 7EA246-7EA247 (000002) = Enemy 1's Speed Stat
  • 7EA248-7EA249 (000002) = Enemy 1's Guts Stat
  • 7EA24A-7EA24B (000002) = Enemy 1's Luck Stat
  • 7EA24C-7EA261 (000016) = Unclassified data
  • 7EA262-7EA263 (000002) = Turn Priority (Highest number goes first, then next highest number. Speed Stat affects this.)
  • 7EA264-7EA264 (000001) = Blinking Counter (Blinks transparent. For example: When an enemy takes damage)
  • 7EA265-7EA265 (000001) = Blinking Counter (How long does the blinking last. Enemy's Turn: Blinks White, Player's Turn: Blinks Black)
  • 7EA266-7EA266 (000001) = Blinking Target Indicator (But does not choose the actual target though. 00 = No blink but dark shade, 01 = Normal blinking)
  • 7EA267-7EA267 (000001) = Darkens or Grays the Enemy Sprite (00 = Normal, 01+ = Dark shade if Player is deciding actions, Gray during battle interaction)
  • 7EA268-7EA269 (000002) = "the" flag (If this number is not the same as the Enemy ID of the enemy being targeted, then "the" will be displayed with the Enemy's Name)


Internal Data for EarthBound

ROM MapRAM MapText TableNotesTutorials