If you are still using the old URL (datacrystal.romhacking.net), please update your bookmarks! The old URL may stop working at any time.
The current URL is datacrystal.tcrf.net.
The current URL is datacrystal.tcrf.net.
Arcana/ROM map: Difference between revisions
< Arcana
Jump to navigation
Jump to search
(Initial creation.) |
(Added a lot more offsets) |
||
Line 3: | Line 3: | ||
<pre> | <pre> | ||
==Bank $00== | ==Bank $00== | ||
$00/89F1 Sub: RNG into $0A | |||
$00/8C34 Flag table for de/buffs | $00/8C34 Flag table for de/buffs | ||
$00/9051 Sub: Main event handler | |||
$00/9B07 Sub: Main event handler | |||
$00/BE07 Sub: Clears the screen of text | |||
$00/C055 Sub: Hit calculation start | |||
$00/C07C Sub: Unknown mod; probably adds 0 to $00 | |||
$00/C0B9 Sub: Miss check/crit check | |||
$00/C132 Sub: No-element handling | |||
$00/C2D4 Sub: Check if damage is over 999 | |||
$00/C30C Sub: Load attacking Element | |||
$00/C3CA Sub: More element handling | |||
$00/C431 Sub: Attack vs. Defense | |||
$00/C585 Sub: Load stat boost modifier | |||
$00/C5B1 Sub: Check for dead/removed actors, more | |||
$00/C658 Sub: Load Strength modifier | |||
$00/C66A Sub: Load Endurance modifier | |||
$00/C676 Sub: Load Alertness modifier | |||
$00/C68A Sub: Load Intelligence | |||
$00/C6A7 Sub: Load Intelligence | |||
$00/C6C4 Sub: Load Intelligence | |||
$00/C6DC Sub: Lots of branching. Returns crit chance or other variables | |||
$00/C781 Sub: Load Armor defense | |||
$00/C856 Sub: Loads spell power/element | |||
$00/C88B Sub: Multiplication (A * X) | |||
$00/C8A1 Sub: Multiplication (AA * X) | |||
$00/C8C2 Sub: Division (Returns A remainder, X result) | |||
$00/D137 Sub: Checks if loaded music is the credits | |||
$00/D1AA Sub: Loads HAL Logo theme | |||
==Bank $02== | ==Bank $02== | ||
$02/8F00 Suspected RNG table (referenced by [$10] which is at RAM $1E10). Does not take kindly to corruption. | $02/8F00 Suspected RNG table (referenced by [$10] which is at RAM $1E10). Does not take kindly to corruption. | ||
$02/913D Sub: Initializes a character/monster's stats from ROM at battle start | |||
==Bank $03== | ==Bank $03== | ||
Line 95: | Line 124: | ||
==Bank $07== | ==Bank $07== | ||
$07/8CC4 Sub: Deducts HP from target | |||
$07/8EDF FINIS (tile bytes) (appears 2x for some reason) | $07/8EDF FINIS (tile bytes) (appears 2x for some reason) | ||
$07/8F6E SLEEP (appears 3x for some reason) | $07/8F6E SLEEP (appears 3x for some reason) | ||
Line 101: | Line 131: | ||
$07/903A SALAH | $07/903A SALAH | ||
$07/906A End of names' sprite values | $07/906A End of names' sprite values | ||
$07/A942 Sub: Reads a card name from ROM | |||
$07/A96C Sub: Reads an item name from ROM | |||
$07/AA27 Max # item slots x 2, when taking items from chests. Default $60 = $30 slots (48 items @ 8 per page) | $07/AA27 Max # item slots x 2, when taking items from chests. Default $60 = $30 slots (48 items @ 8 per page) | ||
$07/AA3D Sub: Adds a weapon to the inventory | |||
$07/AA4D Max # equipment slots x 2, when taking items from chests. Default $40 = $20 slots (32 items @ 8 per page) | $07/AA4D Max # equipment slots x 2, when taking items from chests. Default $40 = $20 slots (32 items @ 8 per page) | ||
$07/B29E Should be #87 to avoid a patch conflict | $07/B29E Should be #87 to avoid a patch conflict | ||
$07/B2DB Sub: When Teefa/Salah/Axs join, assigns them Rooks' LV | |||
$07/B2F5 Sub: When Darwin joins, assigns him Rooks' LV + 3 | |||
$07/BBEA Pointer table for character stats in RAM | $07/BBEA Pointer table for character stats in RAM | ||
$07/BBF6 Honey stat boost amounts (Str, Int, End, Alt, HP, MP) | $07/BBF6 Honey stat boost amounts (Str, Int, End, Alt, HP, MP) | ||
$07/BC7C Sub: Recovers MP, sets to full MP if more than max | |||
$07/BCF1 Sub: Loop for full party healing; ends when X=08 | |||
$07/BF3A Sub: Related to running | |||
$07/BF54 Sub: Deducts MP from a spell | |||
$07/C355 Pointer table for spell effects | $07/C355 Pointer table for spell effects | ||
$07/C8DE SFX for Healing (See Music tab for values) | $07/C8DE SFX for Healing (See Music tab for values) | ||
Line 138: | Line 177: | ||
$18/0A00 Suspected block for treasure chests | $18/0A00 Suspected block for treasure chests | ||
$18/10F0 End of suspected block | $18/10F0 End of suspected block | ||
$18/85D2 Sub: Updates $18E3 after opening a chest | |||
$18/9001 Location of Robe of Valor in Bintel Castle first room | $18/9001 Location of Robe of Valor in Bintel Castle first room | ||
$18/900D Location of Gold Flask in Bintel Castle first room ^_^ | $18/900D Location of Gold Flask in Bintel Castle first room ^_^ | ||
Line 143: | Line 183: | ||
$18/1023-27 Desiree | $18/1023-27 Desiree | ||
$18/1047-4A Return Ring in "A Tunnel". | $18/1047-4A Return Ring in "A Tunnel". | ||
$18/802E Sub: Random encounter logic | |||
$18/8056 Sub: Random encounter | |||
$18/91B3 Encounter data (1C 1D 1E 1A 1B -> 5 monsters in Ice Cave) | $18/91B3 Encounter data (1C 1D 1E 1A 1B -> 5 monsters in Ice Cave) | ||
</pre> | </pre> |
Revision as of 20:18, 12 April 2020
(Back to Main page)
==Bank $00== $00/89F1 Sub: RNG into $0A $00/8C34 Flag table for de/buffs $00/9051 Sub: Main event handler $00/9B07 Sub: Main event handler $00/BE07 Sub: Clears the screen of text $00/C055 Sub: Hit calculation start $00/C07C Sub: Unknown mod; probably adds 0 to $00 $00/C0B9 Sub: Miss check/crit check $00/C132 Sub: No-element handling $00/C2D4 Sub: Check if damage is over 999 $00/C30C Sub: Load attacking Element $00/C3CA Sub: More element handling $00/C431 Sub: Attack vs. Defense $00/C585 Sub: Load stat boost modifier $00/C5B1 Sub: Check for dead/removed actors, more $00/C658 Sub: Load Strength modifier $00/C66A Sub: Load Endurance modifier $00/C676 Sub: Load Alertness modifier $00/C68A Sub: Load Intelligence $00/C6A7 Sub: Load Intelligence $00/C6C4 Sub: Load Intelligence $00/C6DC Sub: Lots of branching. Returns crit chance or other variables $00/C781 Sub: Load Armor defense $00/C856 Sub: Loads spell power/element $00/C88B Sub: Multiplication (A * X) $00/C8A1 Sub: Multiplication (AA * X) $00/C8C2 Sub: Division (Returns A remainder, X result) $00/D137 Sub: Checks if loaded music is the credits $00/D1AA Sub: Loads HAL Logo theme ==Bank $02== $02/8F00 Suspected RNG table (referenced by [$10] which is at RAM $1E10). Does not take kindly to corruption. $02/913D Sub: Initializes a character/monster's stats from ROM at battle start ==Bank $03== $03/A52A Dungeon BGM (See Music tab for ID list) $03/D5BF Max # item slots x 2, when buying items in town. Default $60 = $30 slots (48 items @ 8 per page) (see $07/AA28) $03/DDD6 Max # items - 1 (x 2), used after selling an item in town to check when to stop rearranging. (see $07/AA28) $03/DF27 Bar prices (you know, the Alchemist guy) (NOTE: His prices are also plaintext in his dialogue and need to be edited separately) $03/DFA2 Bar option 2 HP gain $03/DFA4 Bar option 3 HP gain $03/DFA6 Bar option 4 HP gain $03/DFA8 Bar option 2 MP gain $03/DFAA Bar option 3 MP gain $03/DFAC Bar option 4 MP gain $03/E052 Card prices (see Inventory) ==Bank $05== $05/9F7B Names, Characters ($0A bytes per entry + 00 delimeter) $05/9FE9 Names, Enemies ($10 bytes per entry + 00 delimeter) $05/A539 Enemy postfixes A-H (I forget what 81 40 means though) $05/A554 Classes, Characters ($10 bytes per entry + 00 delimeter) NOTE: Using too long a name will result in a blank line. $05/A5FE Names, Areas ($10 bytes per entry + 00 delimeter) $05/A895 Names, Elements ($06 bytes per entry + 00 delimeter) $05/A8BF Names, Status effects ($0C bytes per entry + 00 delimeter) $05/AD6A Level-up stats, Rooks (HP, MP, Str, End, Int, Alt) (2 bytes per entry) $05/B03A Level-up stats, Sylph $05/B2FD Level-up stats, Dao $05/B5CE Level-up stats, Marid $05/B89E Level-up stats, Efrite $05/BB7A Level-up stats, Teefa $05/BE4A Level-up stats, Salah $05/C11A Level-up stats, Darwin $05/C3EA Level-up stats, Axs $05/C8D4 Level-up spells, Rooks $05/C8E2 Level-up spells, Sylph $05/C8F2 Level-up spells, Dao $05/C8F2 Level-up spells, Marid $05/C8FB Level-up spells, Efrite $05/C904 Level-up spells, Teefa $05/C911 Level-up spells, Salah $05/C91F Level-up spells, Darwin $05/C929 Level-up spells, Axs $05/C92D Monster race/element (2 bytes per entry) (ends at 2C9CB) $05/C9CD Monster Equipment stats, several unknown (start) $05/CE54 Monster Equipment stats (end) $05/CE55 Monster HP $05/CEF5 Monster EXP $05/CF95 Monster GP $05/D035 Monster Lvl $05/D0D5 Monster ?? stat - $20 entries of 00 through 05. No idea what this is. $05/D195 Monster boss music (00 none, 01 Boss1, 03 Boss2, 02 Rimsala) $05/D1E5 Monster boss flag (00-0F are bosses, FF are not bosses) $05/D235 Monster spell. (If nonzero, there's a random chance they'll use that spell instead of attacking.) (see Spells page) $05/D285 Monster ?? stat $05/D405 Monster Armor Def table (bugged?): offset = Armor * 2 $05/D445 Monster Accessory Def table: offset = Accessory * 2 $05/D4A5 Possible monster stat $05/D565 Possible monster stat $05/DE88 Equipment prices (see Equipment tab) $05/DF79 Equipment "can be equipped by" data (see Equipment tab) $05/DFF3 Equipment power/defense $05/E0E3 Equipment race bonus/element (2 bytes per item) $05/E1D5 Equipment: weapon crit rate $05/E226 Equipment: shield mag def ($05/E1D5) $05/E24E Equipment ??2 $05/E2C8 Equipment - spell cast in battle $05/E356 Spells' names $05/EA4D Spells’ “battle only flag” (01: out of battle only, 02: battle only, 03: either) $05/EA9F Spells’ “single/multi target flag” (00: single, 01: multi); Change Attribute is broken as ST $05/EAF1 Spells’ accuracy $05/EB4D Spells' power $05/EC04 Spells' element (paired with an unknown byte, so skip a byte for each entry) (see Magic tab) $05/ECA6 Spells' MP cost $05/ECF8 Spells' color palette (see Magic tab) $05/ED57 Spells’ sfx $05/EE9A Item names (look for LDA $05/EE9A,x or "BF 9A EE 05") $05/F038 Card names (look for LDA $05/F038,x or "BF 38 F0 05") $05/F17E Sleeping Bag HP heal amount (200 HP) (Heals everyone but the spirits) $05/F180 Sleeping Bag MP heal amount (25 MP) $05/F194 Tent HP heal amount (999 MP) (Heals everyone but the spirits) $05/F196 Tent MP heal amount (999 MP) $05/F20A Herbs heal amount (70 HP) $05/F21F Medicine heal amount (200 HP) $05/F234 Silver Flask heal amount (15 MP) $05/F249 Gold Flask heal amount (40 MP) ==Bank $07== $07/8CC4 Sub: Deducts HP from target $07/8EDF FINIS (tile bytes) (appears 2x for some reason) $07/8F6E SLEEP (appears 3x for some reason) $07/8FEC ROOKS $07/9020 EFRITE $07/903A SALAH $07/906A End of names' sprite values $07/A942 Sub: Reads a card name from ROM $07/A96C Sub: Reads an item name from ROM $07/AA27 Max # item slots x 2, when taking items from chests. Default $60 = $30 slots (48 items @ 8 per page) $07/AA3D Sub: Adds a weapon to the inventory $07/AA4D Max # equipment slots x 2, when taking items from chests. Default $40 = $20 slots (32 items @ 8 per page) $07/B29E Should be #87 to avoid a patch conflict $07/B2DB Sub: When Teefa/Salah/Axs join, assigns them Rooks' LV $07/B2F5 Sub: When Darwin joins, assigns him Rooks' LV + 3 $07/BBEA Pointer table for character stats in RAM $07/BBF6 Honey stat boost amounts (Str, Int, End, Alt, HP, MP) $07/BC7C Sub: Recovers MP, sets to full MP if more than max $07/BCF1 Sub: Loop for full party healing; ends when X=08 $07/BF3A Sub: Related to running $07/BF54 Sub: Deducts MP from a spell $07/C355 Pointer table for spell effects $07/C8DE SFX for Healing (See Music tab for values) $07/C8E5 SFX for Change Attribute $07/C8E4 SFX for Buffs ==Bank $08== $08/8000 Script, Battle/Towns/Items/Magic $08/9650 Spell descriptions ==Bank $0C== $0C/2010 Main Script ==Bank $0E== $0E/95A3 Sylph gfx $0E/A12C Marid gfx $0E/AC91 Dao gfx $0E/B715 Efrite gfx $0E/C292 Teefa gfx $0E/D25E Salah gfx ==Bank $13== $13/EBF7 Balnea Temple 1F map (These are all preceded by FF E4. Read break on $7FFC42 or similar and follow the DMA address given.) $13/ECFF Balnea Temple 2F map $13/F764 Bintel Castle map ==Bank $17== $17/8130 Intro script ("This is an historic land") ==Bank $18== $18/8044 Encounter rate (higher = fewer encounters) $18/0A00 Suspected block for treasure chests $18/10F0 End of suspected block $18/85D2 Sub: Updates $18E3 after opening a chest $18/9001 Location of Robe of Valor in Bintel Castle first room $18/900D Location of Gold Flask in Bintel Castle first room ^_^ $18/1079 Location of Grand Shield $18/1023-27 Desiree $18/1047-4A Return Ring in "A Tunnel". $18/802E Sub: Random encounter logic $18/8056 Sub: Random encounter $18/91B3 Encounter data (1C 1D 1E 1A 1B -> 5 monsters in Ice Cave)