Difference between revisions of "BATTLE.BIN Routines"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
 
(137 intermediate revisions by 11 users not shown)
Line 1: Line 1:
== BATTLE.BIN RAM ==
+
[[BATTLE.BIN Data Tables]]
 +
==Animation & Display==
 +
00067000 - 00067794: Return Addresses
 +
00067798 - 0006780c: ??? some data
 +
00067810 - 000683b8: Return addresses and sparse data
 +
000683c0 - 000683d0: [[Store AT list ID = 1]]
 +
000683d4 - 000683e0: [[Store AT list ID = 0]]
 +
000683e4 - 00068414: [[Transfer Unit's X/Y/Map Level]]
 +
00068418 - 00068490: [[X/Y Data Gathering for Attacks?]]
 +
00068494 - 00068530: [[Store Palette data for each unit]]
 +
00068534 - 00068630: [[Palette modification based on team]]
 +
00068634 - 00068678: [[Highlight units based on Team 2]] (Square pressed during free cursor)
 +
0006867c - 000686ac: [[Increment AT List ID]]
 +
000686b0 - 00068764: [[AT List Check if Unit is Charging Ability]]
 +
[[00068768 - 00068790]]:
 +
00068794 - 000687a0: [[Clear AT list ID]]
 +
000687a4 - 000687b8: [[Clear 960f8 and 960fc]]
 +
000687bc - 000687dc: [[Setup Secondary effect initialise table]]
 +
000687e0 - 00068948: [[Set evade special effects based on Evade Type]] Weapon Break, Golem Hand, etc.
 +
0006894c - 000689a0: [[Set evade type data and weapon element effect]]
 +
000689a4 - 00068a1c: [[Set evade type data, item and throw stone hardcoding]]
 +
00068a20 - 00068a70: [[Set Secondary Effect Struct]]
 +
00068a74 - 00068a90: [[Zodiac Poof: Set Secondary Effect Struct]]
 +
00068a94 - 00068ab0: [[Death Smoke: Set Secondary Effect Struct]]
 +
00068ab4 - 00068ad0: [[Level Up: Set Secondary Effect Struct]]
 +
00068ad4 - 00068af0: [[Venom Trap: Set Secondary Effect Struct]]
 +
00068af4 - 00068b10: [[Splash: Set Secondary Effect Struct]]
 +
00068b14 - 00068b30: [[Fall Dust Cloud: Set Secondary Effect Struct]]
 +
00068b34 - 00068b50: [[Teleport: Set Secondary Effect Struct]]
 +
00068b54 - 00068b90: [[Set targets animation 1]] based on attack type
 +
00068b94 - 00068bd0: [[Set targets animation 2]] based on attack type
 +
00068bd4 - 00068c14: [[Jump to post action display]]
 +
00068c18 - 00068c7c: [[Set Bow Hardcoding]]
 +
00068c80 - 00068cc0: [[Call Bow Hardcoding routine]]
 +
00068cc4 - 00068d04: [[Call Bow Hardcoding routine Copy]]
 +
00068d08 - 00068e2c: [[Status/sprite transformation/animation display setting]]
 +
00068e30 - 00068e54: [[Update Status/Sprite/Animation Display By Unit Misc ID]] | [[Jump to 68d08]]
 +
00068e58 - 00068e7c: [[Jump to 68d08 2]]
 +
00068e80 - 000690f4: [[Special Status Flag Enabling]]
 +
000690f8 - 0006912c: [[Jump to set item graphic/palette]] (83758)
 +
[[00069130 - 00069250]]:
 +
00069254 - 000692b8: [[Set some data for Mounted Units]]
 +
000692bc - 00069338: [[0x692bc]] (WalkTo Animation inner routine for Mounted units?) | [[Set Animation/Facing for Mounted Units]]
 +
[[0006933c - 000693f0]]:
 +
[[000693f4 - 000694d4]]:
 +
[[000694d8 - 00069740]]:
 +
[[00069744 - 000699f0]]:
 +
[[000699f4 - 00069af4]]:
 +
[[00069af8 - 00069bf4]]:
 +
[[00069bf8 - 00069cf8]]:
 +
[[00069cfc - 00069df8]]:
 +
[[00069dfc - 00069e64]]:
 +
00069e68 - 00069edc: [[Initialize Units Coordinates, Animation, Facing]]
 +
00069ee0 - 00069f10: [[Transfer Palette and store 0x7F in misc data]]
 +
[[00069f14 - 0006a07c]]:
 +
[[0006a080 - 0006a208]]:
 +
0006a20c - 0006a37c: [[Move target coordinates after knockback]]
 +
[[0006a380 - 0006a534]]:
 +
[[0006a538 - 0006a7bc]]:
 +
[[0006a7c0 - 0006aa7c]]:
 +
[[0006aa80 - 0006ad14]]:
 +
[[0006ad18 - 0006af78]]:
 +
[[0006af7c - 0006b95c]]:
 +
[[0006b960 - 0006b990]]:
 +
[[0006b994 - 0006ba34]]:
 +
0006ba38 - 0006bad4: [[Palette adjustment based on Tile Type]]
 +
[[0006bad8 - 0006bbf8]]:
 +
0006bbfc - 0006bce0: [[Store Coordinate,Mount,Animation Data]] | [[0x6bbfc]]
 +
[[0006bce4 - 0006bda4]]:
 +
[[0006bda8 - 0006be88]]:
 +
[[0006be8c - 0006c020]]:
 +
[[0006c024 - 0006c2b8]]: [[0x6c024]]
 +
[[0006c2bc - 0006c31c]]:
 +
[[0006c320 - 0006c3d4]]:
 +
[[0006c3d8 - 0006c418]]:
 +
[[0006c41c - 0006c4f4]]:
 +
[[0006c4f8 - 0006c78c]]:
 +
[[0006c790 - 0006c874]]:
 +
[[0006c878 - 0006c948]]:
 +
[[0006c94c - 0006ca38]]:
 +
0006ca3c - 0006cacc: [[test]]
 +
[[0006cad0 - 0006cbb4]]:
 +
[[0006cbb8 - 0006cc90]]:
 +
0006cc94 - 0006d05c: [[Some Knockback Handling]]
 +
[[0006d060 - 0006d19c]]:
 +
[[0006d1a0 - 0006d284]]:
 +
[[0006d288 - 0006d340]]:
 +
[[0006d344 - 0006d430]]:
 +
[[0006d434 - 0006d594]]:
 +
[[0006d598 - 0006d798]]:
 +
[[0006d79c - 0006d7c0]]:
 +
0006d7c4 - 0006d7e0: [[Call Initialize Units Coordinates, Animation, Facing ]]
 +
[[0006d7e4 - 0006d814]]:
 +
[[0006d818 - 0006db0c]]: [[Process Single Unit Movement]]
 +
0006db10 - 0006dc88: [[Knockback Processing]]
 +
0006dc8c - 0006dda8: [[Knockback with bows]]
 +
0006ddac - 0006dde8: [[Transfer Target Coordinates (knockback)]] knockback with bows?
  
00067000 - 00067794: Return Addresses
+
==Free Cursor & Inputs During==
 +
0006ddec - 0006e558: [[free cursor input related]]
 +
0006e55c - 0006e5bc: [[Store Name and data of unit selected by cursor]]
 +
0006e5c0 - 0006e630: [[Store Name and Data of unit selected by cursor 2]]
 +
0006e634 - 0006e6ac: [[Store Casting Units Name and Data selected by cursor]]
 +
0006e6b0 - 0006e7c4: [[Free Cursor Selection Routine]]
 +
[[0006e7c8 - 0006eed8]]:
 +
0006eedc - 0006eeec: [[Set Game Flow Variable to 1]]
 +
0006eef0 - 0006eefc: [[Set Game Flow Variable to 0]]
 +
[[0006ef00 - 0006f138]]:
 +
0006f13c - 0006f170: [[Rotate Map (L1) 2]] L1 controller input
 +
0006f174 - 0006f1a4: [[Rotate Map (L1)]]
 +
0006f1a8 - 0006f1dc: [[Rotate Map (R1) 2]] R1 Controller input
 +
0006f1e0 - 0006f214: [[Rotate Map (R1)]]
 +
[[0006f218 - 0006f288]]: [[L1 and R1 rotation]]
 +
[[0006f28c - 0006f31c]]:
 +
[[0006f320 - 0006f4ac]]:
 +
[[0006f4b0 - 0006f5b8]]: [[Change Map Zoom 2]]
 +
[[0006f5bc - 0006f630]]: [[Player Camera Zoom]] (L1 Button)
 +
0006f634 - 0006f674: [[Change Map Zoom]] (L2 Controller Input)
 +
[[0006f678 - 0006f7c0]]: [[Camera Zoom Related (0x6f678)]]
 +
[[0006f7c4 - 0006f8c4]]: [[Tilt Map/Zoom 2]]
 +
[[0006f8c8 - 0006f964]]:
 +
0006f968 - 0006f9a8: [[Tilt Map/Zoom]](R2 Controller Input)
 +
[[0006f9ac - 0006fb4c]]:
 +
[[0006fb50 - 0006fc04]]:
 +
[[0006fc08 - 0006fc64]]:
 +
[[0006fc68 - 0006fdf4]]:
 +
[[0006fdf8 - 0006fe54]]:
 +
[[0006fe58 - 000700b8]]:
 +
[[000700bc - 000702e0]]:
 +
[[000702e4 - 0007063c]]:
 +
[[00070640 - 000707c0]]:
  
00067798 - 0006780c: ??? some data
+
==Input & Between Actions==
 +
[[000707c4 - 0007081c]]: [[Process Unit Movement]]
 +
00070820 - 00070994: [[Some Tile - map rotation interaction]]
 +
00070998 - 000709f8: [[Set casting unit ID = FF 2]]
 +
000709fc - 00070a34: [[Set casting unit ID = FF 1]]
 +
00070a38 - 00070b78: [[Some system routines for ramza crystal, ability CT resolution]]
 +
00070b7c - 00070c00: [[Store ENTD flags into misc data w/o control flag]]
 +
00070c04 - 00070c74: [[Set next script = action menus]]Pressed confirm while not highlighting any unit, also happens after completing move
 +
// Stores Script 0x03
 +
[[00070c78 - 00070cd8]]:
 +
00070cdc - 00070d14: [[Store next Battle flow script = 1]] (Select pressed during free cursor)
 +
[[00070d18 - 00070dd8]]:
 +
[[00070ddc - 00070e20]]:
 +
[[00070e24 - 00070e68]]:
 +
00070e6c - 00071004: [[In between turn events]] mimic, ability cast, traps, etc.
 +
[[00071008 - 000711a0]]: - ???? happened for me before and after Mimic action
 +
// Stores Script 0x27
 +
[[000711a4 - 000712d4]]: - This happened after music started. I believe the map had not been shown yet. Was in mid-rotation of map if i remember correctly. Please test.
 +
// Stores Script 0x27
 +
[[000712d8 - 00071348]]:
 +
0007134c - 0007139c: [[Highlight units based on team]] (Square pressed during free cursor)
 +
000713a0 - 00071430: [[Menu stuff?]] - selecting the active unit.
 +
// Stores Script 0x04
 +
[[00071434 - 000714f0]]:- every time you select a unit, and there are choices. For example, selecting one of your own non active units, or checking enemy unit status. Number does not change if you go deeper into the menus
 +
// Stores Script 0x04
 +
000714f4 - 000715a4: [[Menu stuff]]
 +
[[000715a8 - 000715e4]]:- pressing select to read further information on an action command or status screen. Basically any time while the above is true- Pressing Cancel on a unit to check how far they can move.
 +
// Stores Script 0x06, 0x07
 +
[[000715e8 - 00071664]]:
 +
[[00071668 - 00071698]]:- Pressing Triangle to bring up the AT, Unit list and Options. Does not change if you go deeper into the menus unless you select a unit in AT list.
 +
// Stores Script 0x08
 +
[[0007169c - 000716d8]]:
 +
[[000716dc - 00071718]]:- pressing select while in the AT, Unit list and Options. Pressing Select while in Unit List does not change number.
 +
// Stores Script 0x09
 +
0007171c - 000717c8: [[Get next acting unit]] - Selecting a unit in the AT list.
 +
// Stores Script 0x0a
 +
[[000717cc - 00071820]]:- Pressed "Move" Command
 +
// Stores Script 0x0c
 +
[[00071824 - 00071878]]:
 +
[[0007187c - 00071928]]:- Pressed Circle to remove the reminder on how to move a unit, also after removing "Select within movable range" box
 +
// Stores Script 0x0d
 +
[[0007192c - 00071980]]:- "select within movable range" box appeared. selected tree (unpathable) as movement location. works for spaces outside of range as well
 +
// Stores Script 0x0f
 +
[[00071984 - 00071a78]]: - selected a spot within legal distance (blue square)
 +
// Stores Script 0x10
 +
[[00071a7c - 00071ab4]]:
 +
[[00071ab8 - 00071b48]]:- blue squares disappeared, unit walks to location
 +
// Stores Script 0x11
 +
[[00071b4c - 00071c88]]: - unit finishes walking to location "are you sure you want to move here?" box appears
 +
// Stores Script 0x12
 +
[[00071c8c - 00071ce8]]: - happens right after confirming move command, attack command
 +
// Stores Script 0x25
 +
[[00071cec - 00071de4]]:
  
00067810 - 000683b8: Return addresses and sparse data
+
==Post Action Menuing==
 +
[[00071de8 - 00071e64]]: [[Level up animation and report]]
 +
[[00071e68 - 00071ee4]]: [[Post Movement Display]]- confirm move command
 +
00071ee8 - 000723d0: [[Main Post Movement ]]
 +
// Stores Script 0x15
 +
000723d4 - 0007245c: [[Post Movement Display Prep]]
 +
[[00072460 - 00072540]]: - begin choosing facing for Wait
 +
// Stores Script 0x13
 +
[[00072544 - 00072670]]: - Choose Wait action, or Move/Act used up
 +
// Stores Script 0x14
 +
[[00072674 - 00072708]]:
  
000683c0 - 000683d0: [[Store AT list ID = 1]]
+
==Some Attack related Display Processing==
 +
0007270c - 00072738: [[Turn sprite towards attack]]
 +
0007273c - 00072924: [[Movement/action direction setting]]
 +
00072928 - 00072a0c: [[Rider/Mount X/Y/Facing Setting]]
 +
[[00072a10 - 00072a84]]:
 +
00072a88 - 00072acc: [[Check if Facing Needs Changed]]
 +
[[00072ad0 - 00072b10]]: - also happens after confirming move command or attack command, happens after 0x71c9c
 +
// Stores Script 0x26
 +
[[00072b14 - 00072b4c]]:
 +
00072b50 - 00072bec: [[Range 1 Ability Used]]
 +
// Stores Script 0x16
 +
- happens right after 0x73bac, unit attacks, this section will happen twice for 2 swords attacks
 +
// Stores Script 0x2d
 +
00072bf0 - 00072ce4: [[Set item/throw stone ability display stuff]]
 +
[[00072ce8 - 00072d88]]:- unit stands straight, break happened twice in a row, goes back to 0x73bac for 2 swords
 +
ori r2,r0,0x2f
 +
// Stores SCript 0x2f
 +
00072d8c - 00073160: [[Set_Post_Effect_Messages_data]]
 +
00073164 - 000731d4 :[[Prep_Targets_Post_Action_message]]
 +
[[000731d8 - 0007324c]]:
 +
[[00073250 - 000732c4]]:
 +
000732c8 - 000734c8: [[Battle Message Display]]- attack finishes, this section will happen twice for 2 swords attacks
 +
// Stores Script 0x2e
 +
[[000734cc - 00073634]]: [[Some post action (including learn on hit setup)]] - finish Attack command, happened 3x in a row
 +
// Stores Script 0x28
 +
[[00073638 - 000736d0]]:
 +
000736d4 - 000739c8: [[Ability effect calculations]] critical hit, reflect, etc.
  
000683d4 - 000683e0: [[Store AT list ID = 0]]
+
==Action Phase Control Related==
 +
000739cc - 00073b98: [[Action phase control]]- ???? Something about Mimic- also happens after executing command, happens after 0x7418c
 +
// Stores Script 0x29
 +
// Stores Script 0x29
 +
00073b9c - 00073ee8: [[set some target coordinates/attacker animation, others]] - unit status compltely gone, unit is about to attack, this section will happen twice for 2 swords attacks
 +
// Stores Script 0x2c
 +
00073eec - 00073fb4: [[Set damage display type based on ability]] - ???? Only during Mimic
 +
// Stores Script 0x2b (Return from mimic?)
 +
[[00073fb8 - 00073fdc]]:- happens after 0x73a78, unit status at bottom of screen almost completely disappeared. Means one of the previous menus was to hide the unit status
 +
// Stores Script 0x2a
 +
00073fe0 - 00074064: [[Store animation and facing based on animation flag 1]]- Execute action chosen
 +
// Stores Script 0x1c
 +
[[00074068 - 000740d0]]:
 +
[[000740d4 - 00074200]]: - happens right after choosing Execute
 +
// Stores Script 0x1e
 +
[[00074204 - 000742c4]]:- ????happened during Mimic
 +
// Stores Script 0x1e
 +
[[000742c8 - 00074304]]:
 +
[[00074308 - 0007446c]]: [[Select Target Tile]] | - choosing valid location (red box)
 +
// Stores Script 0x19
 +
[[00074470 - 000744c4]]:- choosing out of range target location
 +
// Stores Script 0x18
 +
[[000744c8 - 000745a8]]: - happens right before red boxes appear for targetting
 +
// Stores Script 0x17
 +
[[000745ac - 000746a8]]: - confirming location, "Executing action" box appears
 +
// Stores Script 0x1b
 +
[[000746ac - 000747b4]]:
 +
[[000747b8 - 00074810]]:
 +
[[00074814 - 00074858]]:
 +
[[0007485c - 0007492c]]:
 +
[[00074930 - 000749c4]]:
 +
[[000749c8 - 00074a38]]:
 +
[[00074a3c - 00074abc]]:
 +
[[00074ac0 - 00074af4]]:
 +
[[00074af8 - 00074b14]]: - Something about Mimic
 +
// Stores Script 0x17
 +
[[00074b18 - 00074b34]]:
 +
[[00074b38 - 00074b64]]:
  
000683e4 - 00068414: [[Transfer Unit's X/Y/Map Level]]
+
==Main BATTLE.BIN Loop==
 +
[[00074b68 - 00074ba8]]:
 +
[[00074bac - 00074bf4]]: [[Free Cursor Controller Input]]
 +
[[00074bf8 - 00074dcc]]:
 +
// Script 0x00
 +
00074dd0 - 00074e28: [[Get Tile Information]] when Select is pressed
 +
// Script 0x01
 +
[[00074e2c - 00074e90]]: Controller input related
 +
// Script 0x02
 +
[[00074e94 - 00074f58]]: Action Menus
 +
// Script 0x03
 +
00074f5c - 0007530c:  [[Decide what to do based on skillset/ability selections]]
 +
// Script 0x04
 +
00075310 - 000755f8: [[Set move/act based on skillset]] mainly for defend/eq.change - also sets other flags
 +
// Script 0x05
 +
[[000755fc - 0007568c]]:
 +
// Script 0x06
 +
[[00075690 - 00075718]]: has more controller input
 +
// Script 0x07
 +
[[0007571c - 000757c0]]: has more controller input
 +
// Script 0x08
 +
[[000757c4 - 0007581c]]:
 +
// Script 0x09
 +
[[00075820 - 00075878]]: has more controller input
 +
// Script 0x0a
 +
[[0007587c - 0007590c]]:
 +
// Script 0x0f
 +
[[00075910 - 00075c30]]:
 +
// Script 0x10
 +
[[00075c34 - 00075c9c]]:
 +
// Script 0x11
 +
[[00075ca0 - 00075d08]]:
 +
// Script 0x12
 +
[[00075d0c - 00075dac]]:
 +
// Script 0x13
 +
[[00075db0 - 00075e64]]:
 +
// Script 0x14
 +
[[00075e68 - 00075f0c]]:
 +
[[00075f10 - 00076018]]:
 +
[[0007601c - 000761c8]]:
 +
[[000761cc - 00076298]]:
 +
// Script 0x15
 +
[[0007629c - 00076354]]:
 +
// Script 0x17
 +
[[00076358 - 0007642c]]:
 +
[[00076430 - 00076654]]:
 +
// Script 0x16
 +
[[00076658 - 00076918]]: has learn from crystal, move XX up
 +
// Script 0x18
 +
[[0007691c - 000769ac]]:
 +
// Script 0x19
 +
[[000769b0 - 00076b78]]: while unit is moving?
 +
// Script 0x1a
 +
[[00076b7c - 00076be4]]:
 +
// Script 0x1b
 +
[[00076be8 - 00076c4c]]: Sets next script = 1?
 +
// Script 0x1d
 +
[[00076c50 - 00076d80]]: [[Ability Preview handling]]
 +
// Script 0x1c
 +
00076d84 - 00076f0c: stores animation/facing based on ability flags 1
 +
// Script 0x1e
 +
[[00076d84 - 00076f10]]:
 +
[[00076f14 - 00076fcc]]:
 +
// Script 0x1f -
 +
[[00076fd0 - 00077094]]:
 +
// Script 0x20
 +
[[00077098 - 00077130]]:  Action occurring
 +
// Script 0x21 -
 +
[[00077134 - 0007719c]]: action related
 +
// Script 0x22
 +
[[000771a0 - 00077310]]: action related
 +
// Script 0x23
 +
[[00077314 - 00077374]]: loads effect LBA sector
 +
// Script 0x24
 +
[[00077378 - 000773b0]]: Item, throw stone hardcoding
 +
// script 0x25
 +
[[000773b4 - 000773f4]]:
 +
[[000773f8 - 0007775c]]: [[0x773f8]] | Big action/ability display
 +
// Script 0x26
 +
[[00077760 - 000777e8]]:
 +
// Script 0x27
 +
[[000777ec - 0007799c]]: action related
 +
// Script 0x28
 +
[[000779a0 - 00077b54]]:
 +
// Script 0x29
 +
[[00077b58 - 00077bd4]]:
 +
[[00077bd8 - 00077c04]]: small one
 +
// Script 0x2a
 +
[[00077c08 - 00077c34]]: also small
 +
// Script 0x2b
 +
[[00077c38 - 00077ca0]]:
 +
// Script 0x2c
 +
[[00077ca4 - 00077e18]]: controller input checked
 +
// Script 0x2d
 +
[[00077e1c - 00077e84]]:
 +
// Script 0x2e
 +
00077e88 - 00077f64: [[AI target processing?]]
 +
// Script 0x2f
 +
[[00077f68 - 0007802c]]:
 +
// Script 0x30
 +
[[00078030 - 0007809c]]: Controller input checked
 +
// Script 0x31
 +
[[000780a0 - 00078144]]:
 +
// Script 0x0b
 +
00078148 - 00078324: [[Copy 0x16e in unit data to misc data, display processing]]
 +
// Script 0x0e
 +
[[00078328 - 00078438]]:
 +
// Script 0x0d
 +
[[0007843c - 00078500]]:
 +
// Script 0x0e
 +
[[00078504 - 000785a8]]: this one looks cool
 +
// Script 0x32
 +
[[000785ac - 000787d8]]: checks each unit for something and controller input
 +
// Script 0x33
 +
[[000787dc - 000787f8]]:
 +
[[000787fc - 00078960]]:
 +
// Script 0x34
 +
[[00078964 - 00078ac8]]:
 +
// Script 0x37
 +
[[00078acc - 00078bf0]]:
 +
// Script 0x3a
 +
[[00078bf4 - 00078d1c]]:
 +
// Script 0x35
 +
[[00078d20 - 00078e54]]:
 +
// Script 0x38
 +
[[00078e58 - 00078fb0]]:
 +
// Script 0x36
 +
[[00078fb4 - 000791e4]]:
 +
// Script 0x39
 +
[[000791e8 - 00079294]]:
 +
[[00079298 - 00079a94]]:
 +
00079a98 - 0007a1d0: [[Main BATTLE.BIN Loop]] | [[Game Flow Control routine]]
 +
*[[Game Flow Control Return Addresses]]
  
00068418 - 00068490: [[X/Y Data Gathering for Attacks?]]
+
==Miscellaneous Processing & Get Data==
 +
0007a1d4 - 0007a214: [[Get casting unit's misc data]] data that matches 0x9112c
 +
0007a218 - 0007a258: [[Get Source Unit Misc Data Pointer]] | [[Get Casting units Misc Data]]
 +
0007a25c - 0007a2b4: [[Get Misc Data of unit that matches register inputs]]
 +
0007a2b8 - 0007a3f4: [[Find Unit at Coordinates (Misc Data) (0x7a2b8)]] | [[Check if unit is on panel]]
 +
0007a3f8 - 0007a4f0: [[Get misc data of unit that matches register inputs that isn't crystal/treasure]]
 +
0007a4f4 - 0007a5cc: [[Some thing wtih check if chocobo is on panel]]
 +
[[0007a5d0 - 0007a6e0]]: [[Get Overlapping Unit Misc Data Pointer]]
 +
0007a6e4 - 0007a720: [[Get Unit Misc Data Pointer]] | [[Find Current Misc Unit Data Pointer (external ID)?]]
 +
0007a724 - 0007a770: [[Get Unit Misc Data Pointer By Battle Unit Index]] | [[Find Misc Unit Data Pointer (checking for specific unit)]] | [[Get unit misc data that matches r4 ID]]
 +
0007a774 - 0007a7b4: [[Count number of Crystals on map]]
 +
[[0007a7b8 - 0007a83c]]:
 +
[[0007a840 - 0007a964]]:
 +
[[0007a968 - 0007a9ac]]:
 +
[[0007a9b0 - 0007aa30]]:
 +
[[0007aa34 - 0007abcc]]:
 +
0007abd0 - 0007ac5c: [[Initialize some display data]]
 +
0007ac60 - 0007aca8: [[Unit RGB/Sprite Type/etc Initialization]]
 +
0007acac - 0007ad04: [[Initialize WEP1 sprite RGB]]
 +
0007ad08 - 0007adb0: [[Initialize RGB and some more stuff]]
 +
0007adb4 - 0007ae44: [[Initialize Status bubble sprite displays]]
 +
0007ae48 - 0007aec8: [[Initialize item sprite display]]
 +
0007aecc - 0007af04: [[Call store screen offsets to GTE]]
 +
[[0007af08 - 0007af40]]:
 +
[[0007af44 - 0007b4e8]]: [[Display Related (0x7af44)]]
 +
0007b4ec - 0007b52c: [[Store Sprite Display Data]]
 +
[[0007b530 - 0007b550]]:
 +
[[0007b554 - 0007b588]]:
 +
[[0007b58c - 0007b684]]:
 +
[[0007b688 - 0007b6a4]]:
 +
[[0007b6a8 - 0007b6c4]]:
 +
[[0007b6c8 - 0007b928]]:
 +
[[0007b92c - 0007b948]]:
 +
[[0007b94c - 0007b968]]:
 +
0007b96c - 0007b9cc: [[Store vx, vy, vz vectors]]
 +
[[0007b9d0 - 0007c440]]:
 +
[[0007c444 - 0007c808]]:
 +
[[0007c80c - 0007cff4]]: [[Slope Calculations]] (HUGE)
 +
[[0007cff8 - 0007d09c]]:
 +
[[0007d0a0 - 0007d0d0]]:
 +
[[0007d0d4 - 0007d2d8]]:
 +
[[0007d2dc - 0007d34c]]:
 +
[[0007d350 - 0007d3f0]]:
 +
[[0007d3f4 - 0007d474]]:
 +
[[0007d478 - 0007d518]]:
 +
[[0007d51c - 0007d5cc]]:
 +
[[0007d5d0 - 0007db18]]:
 +
[[0007db1c - 0007e300]]:
 +
[[0007e304 - 0007e728]]:
 +
[[0007e72c - 0007e9a4]]:
 +
[[0007e9a8 - 0007eb88]]:
  
00068494 - 00068530: [[Store Palette data for each unit]]
+
==Extra Unit Graphic Display==
 +
eg. status bubbles, damage, missed! text.
 +
[[0007eb8c - 0007eebc]]: [[Determine Status Bubble Parameters]]
 +
[[0007eec0 - 0007f1d0]]: [[Display Status Bubble]]
 +
[[0007f1d4 - 0007f23c]]: [[(Status Bubble Related)]]
 +
[[0007f240 - 0007f2a8]]:
 +
[[0007f2ac - 0007f3fc]]:
 +
[[0007f400 - 0007f458]]:
 +
0007f45c - 0007f508: [[Store Item's Display Data]]
 +
[[0007f50c - 0007f5f4]]:
 +
0007f5f8 - 0007ff40: [[Post Action Display Routine]]
 +
0007ff44 - 0007ff78: [["Speed" display]]
 +
0007ff7c - 0007ffac: [["CT" display]]
 +
0007ffb0 - 0007ffe4: [["Br" display]]
 +
0007ffe8 - 0008001c: [["Fa" display]]
 +
00080020 - 00080050: [["Attack" Sword display]]
 +
00080054 - 00080088: [["Magic" Rod display]]
 +
0008008c - 000800b8: [["Missed" display]]
 +
000800bc - 000800e8: [["Guarded" display]]
 +
000800ec - 00080114: [["Caught" display]]
 +
000803e4 - 000808b4: [[Post-Action Display Setup]]
 +
000808b8 - 00080bc0: [[Set Exp/JP Display Data and get Palette]]
 +
00080bc4 - 00080c3c: [[*One-Digit Experience*]]
 +
00080c40 - 00080cf4: [[*Two-Digit Experience*]]
 +
00080cf8 - 00080d80: [[*One-Digit JP*]]
 +
00080d84 - 00080e38: [[*Two-Digit JP*]]
 +
00080e3c - 00080e78: [[*"No Target" Display*]]
 +
00080e7c - 00080eb8: [[*"Silenced" Display*]]
 +
00080ebc - 00080f00: [[*"No MP" Display*]]
 +
[[00080f04 - 00080f40]]: Something to do with palette
 +
00080f44 - 00080fe8: [[Prep for Displaying Earned Exp/JP]]
 +
00080fec - 000810a0: [[Activate numerical sprite data]]
  
00068534 - 00068630: [[Palette modification based on team]]
+
==Unit Animation Processing==
 +
000810a4 - 00081974: [[Calculate XYZ, UV, and Palette of Post Action Text]]
 +
00081978 - 00081984: [[Store unit animation and facing value]]
 +
00081988 - 000819a4: [[Store unit animation/facing/someothervalue]]
 +
000819a8 - 00081a04: [[Get some Spritesheet data address]]
 +
[[00081a08 - 00081a54]]:
 +
[[00081a58 - 00081a90]]:
 +
[[00081a94 - 00081acc]]:
 +
00081ad0 - 00081adc: [[r2 = 0x800b669c]]
 +
00081ae0 - 00081aec: [[r2 = 0x800b6edc]]
 +
[[00081af0 - 00081b08]]: [[Get Spritesheet Graphic Height]]
 +
00081b0c - 00081b84: [[Store some coordinate data]]
 +
00081b88 - 00081c18: [[Store some movement coordinate data]]
 +
00081c1c - 00081c5c: [[Save Spritesheet ID to spritesheet data]]
 +
[[00081c60 - 00081d50]]:
 +
00081d54 - 0008210c: [[Weather/time of day/tile palette modification]]
 +
00082110 - 000822b8: [[Special spritesheet ID palette mods]]
 +
000822bc - 00082464: [[palette mod by status]]
 +
00082468 - 00082504: [[check for tile, status palette mod]]
 +
00082508 - 0008254c: [[Determine Status Bubble Activation Byte]] | [[Status/unknown Misc ID checks]]
 +
00082550 - 00082588: [[Transparent Check]] (for opacity?)
 +
0008258c - 0008261c: [[Set some display/anim data for weapon/evade types]]
 +
[[00082620 - 00082788]]: This routine still needs documenting
 +
0008278c - 00082888: [[Movement validation - float/fly]]
 +
0008288c - 00082a40: [[Target spritesheet calculations?]]
 +
00082a44 - 00082b18: [[Set animation for Item abilities]]
 +
00082b1c - 00082b7c: [[Store attack animation flags and facing 1]]
 +
00082b80 - 00082c0c: [[Set attack animation flags and facing 2]]
 +
00082c10 - 00082cc0: [[Set attack animation flags and facing 3]]
 +
00082cc4 - 00082d4c: [[Set Level up/Job level up animations]]
 +
00082d50 - 00082df4: [[Set In-Motion animation based on status (not MON)]] | [[Set Animation Based On Unit Mounted State]]
 +
00082df8 - 00082ee8: [[Set Idle Animation based on status (not MON)]]
 +
00082eec - 000831b4: [[Set Animation Based On Unit Status]]
 +
000831b8 - 00083468: [[More animation based on status, death sound effects]]
 +
0008346c - 0008356c: [[Poach/Morbol Transformation]] Can change spritesheet ID here
 +
00083570 - 00083754: [[Sprite changing stuff]] crystal, frog, etc.
 +
00083758 - 00083850: [[Set thrown item graphic/palette]] also throw stone
 +
00083854 - 00083870: [[Call Set Animation Based on Status]]
 +
00083874 - 00083974: [[Set attacker animation for shield block]]
 +
00083978 - 00083c54: [[Set targets animation based on attack type]]
 +
00083c58 - 00083cd0: [[Sprite display setting for all units based on attack]]
 +
[[00083cd4 - 00083e0c]]:
 +
00083e10 - 00083f14: [[Unit graphic information loading]]
 +
00083f18 - 00084210: [[Update Sprite display data]]
 +
00084214 - 000846ac: [[Trap & Unit graphic information loading]]
 +
000846b0 - 00084754: [[Move Unit Right+/Left-]]
 +
00084758 - 0008476c: [[Move Unit Down+/Up-]]
 +
00084770 - 00084814: [[Move Unit Forward+/Back-]]
 +
00084818 - 00085230: [[Load Unit graphics from sprite sheet]]
 +
[[00085234 - 00085268]]:
 +
0008526c - 00085a14: [[Load WEP graphic from WEP1 Sheet]]
 +
00085a18 - 00085b9c: [[Move Atk sprites to Frame Buffer from RAM]]
 +
00085ba0 - 00085c08: [[Mark Unit's VRAM Slot as Unoccupied]]
 +
00085c0c - 000865a0: [[Update & Animate Unit/WEP/EFF]]
 +
000865a4 - 0008663c: [[Process Status Bubble Display]]
 +
[[00086640 - 00086b40]]:
 +
[[00086b44 - 00086dc0]]:
 +
[[00086dc4 - 00086f28]]:
 +
[[00086f2c - 00087060]]:
 +
[[00087064 - 000870a8]]:
 +
[[000870ac - 00087198]]:
 +
[[0008719c - 000871f0]]:
 +
[[000871f4 - 000872e8]]:
 +
[[000872ec - 000873b8]]:
 +
[[000873bc - 000875ec]]:
 +
[[000875f0 - 00087700]]:
 +
[[00087704 - 000878a0]]:
 +
[[000878a4 - 000879b4]]:
 +
[[000879b8 - 00087a24]]:
  
00068634 - 00068678: [[Highlight units based on Team 2]] (Square pressed during free cursor)
+
==Sprite & Display Initialisation==
 +
00087a28 - 00088014: [[Misc unit data initialization]]
 +
[[00088018 - 0008812c]]:
 +
[[00088130 - 00088804]]: [[Load unit SHP & SEQ data to RAM]]
 +
[[00088808 - 0008883c]]: [[Perform Animate All Units 3 times]]
 +
[[00088840 - 00088864]]:
 +
[[00088868 - 00088900]]:
 +
[[00088904 - 00088ee8]]: [[Load lucavi SHP & SEQ data to RAM]]
 +
[[00088eec - 000890b4]]:
 +
[[000890b8 - 00089248]]:
 +
[[0008924c - 00089380]]:
 +
[[00089384 - 00089458]]:
 +
[[0008945c - 00089524]]:
 +
[[00089528 - 00089550]]:
 +
[[00089554 - 00089578]]:
 +
[[0008957c - 000895c0]]:
 +
[[000895c4 - 00089634]]:
 +
[[00089638 - 00089744]]:
 +
[[00089748 - 000897d8]]:
 +
[[000897dc - 0008989c]]:
 +
[[000898a0 - 00089b9c]]:
 +
[[00089ba0 - 00089d9c]]:
 +
[[00089da0 - 00089dbc]]:
 +
[[00089dc0 - 00089ddc]]:
 +
[[00089de0 - 00089dfc]]:
 +
[[00089e00 - 00089e1c]]:
 +
[[00089e20 - 00089f20]]:
 +
[[00089f24 - 0008a114]]:
 +
[[0008a118 - 0008a348]]:
 +
[[0008a34c - 0008a358]]:
 +
[[0008a35c - 0008a4a8]]:
 +
[[0008a4ac - 0008a6d4]]:
 +
[[0008a6d8 - 0008a6fc]]:
 +
[[0008a700 - 0008a77c]]:
 +
[[0008a780 - 0008a7fc]]:
 +
[[0008a800 - 0008a880]]:
 +
[[0008a884 - 0008a920]]:
 +
[[0008a924 - 0008ab30]]:
 +
[[0008ab34 - 0008adf4]]:
 +
[[0008adf8 - 0008b0c4]]:
 +
[[0008b0c8 - 0008b230]]:
 +
[[0008b234 - 0008b288]]:
 +
[[0008b28c - 0008b2c0]]:
 +
[[0008b2c4 - 0008b2f8]]:
 +
[[0008b2fc - 0008b308]]:
 +
[[0008b30c - 0008b334]]:
 +
[[0008b338 - 0008b3c8]]:
 +
[[0008b3cc - 0008b43c]]:
 +
[[0008b440 - 0008b4b4]]:
 +
[[0008b4b8 - 0008b4ec]]:
 +
[[0008b4f0 - 0008b524]]:
 +
[[0008b528 - 0008b534]]:
 +
[[0008b538 - 0008b560]]:
 +
[[0008b564 - 0008b628]]:
 +
[[0008b62c - 0008b6e0]]:
 +
[[0008b6e4 - 0008b7b0]]:
 +
[[0008b7b4 - 0008b7e8]]:
 +
[[0008b7ec - 0008b820]]:
 +
[[0008b824 - 0008b830]]:
 +
[[0008b834 - 0008b85c]]: [[Set Camera Zoom Parameters]]
 +
[[0008b860 - 0008b8f0]]: [[Set Camera Rotation Values]]
 +
[[0008b8f4 - 0008b964]]:
 +
[[0008b968 - 0008b9dc]]:
 +
[[0008b9e0 - 0008ba14]]:
 +
[[0008ba18 - 0008ba4c]]:
 +
[[0008ba50 - 0008ba5c]]:
 +
[[0008ba60 - 0008ba88]]:
 +
[[0008ba8c - 0008bb1c]]:
 +
[[0008bb20 - 0008bb90]]:
 +
[[0008bb94 - 0008bc08]]:
 +
[[0008bc0c - 0008bc40]]:
 +
[[0008bc44 - 0008bca8]]:
 +
[[0008bcac - 0008bcb8]]:
 +
[[0008bcbc - 0008bd08]]:
 +
[[0008bd0c - 0008bde0]]:
 +
==Uncertain==
 +
[[0008bde4 - 0008be00]]: [[Update Status/Sprite/Animation Display By Unit Misc ID (Wrapper Function)]]
 +
[[0008be04 - 0008be28]]: [[Set Animation Based On Unit Mounted State From Unit Misc ID]]
 +
[[0008be2c - 0008be50]]:
 +
[[0008be54 - 0008be78]]: [[Set Animation Based On Unit Status From Unit Misc ID]]
 +
[[0008be7c - 0008beb8]]: [[Set Specific Animation Value From Unit Misc ID]]
 +
[[0008bebc - 0008bf10]]:
 +
[[0008bf14 - 0008bf80]]:
 +
0008bf1c - 0008bf80: [[0x8bf1c]]
 +
[[0008bf84 - 0008bff8]]:
 +
[[0008bffc - 0008c050]]:
 +
[[0008c054 - 0008c0a8]]:
 +
[[0008c0ac - 0008c110]]:
 +
[[0008c114 - 0008c188]]:
 +
[[0008c18c - 0008c1e0]]:
 +
[[0008c1e4 - 0008c264]]:
 +
[[0008c268 - 0008c2a0]]:
 +
[[0008c2a4 - 0008c2d8]]:
 +
[[0008c2dc - 0008c31c]]:
 +
[[0008c320 - 0008c360]]:
 +
[[0008c364 - 0008c39c]]: Store script = 0x3a  This happened after I accepted a team at Formation. Music had not started yet. (FFM)
 +
[[0008c3a0 - 0008c3e0]]:
 +
[[0008c3e4 - 0008c40c]]:
 +
[[0008c410 - 0008c438]]: [[Get Unit Screen Location Data Pointer]]
 +
[[0008c43c - 0008c464]]:
 +
[[0008c468 - 0008c514]]:
 +
[[0008c518 - 0008c54c]]:
 +
[[0008c550 - 0008c5e4]]:
 +
[[0008c5e8 - 0008c660]]:
 +
[[0008c664 - 0008c7c8]]: [[Walk To]]
 +
[[0008c7cc - 0008c8e0]]:
 +
[[0008c8e4 - 0008c93c]]:
 +
[[0008c940 - 0008c9c0]]:
 +
[[0008c9c4 - 0008ca44]]:
 +
0008ca48 - 0008ca78: [[0x8ca48]] | [[get misc data, do something else if none found]]
 +
[[0008ca7c - 0008cbb0]]:
 +
[[0008cbb4 - 0008cbd4]]: [[Does Misc Unit Exist With ID]]
 +
[[0008cbd8 - 0008cc10]]:
 +
[[0008cc14 - 0008cc4c]]:
 +
[[0008cc50 - 0008cc7c]]:
 +
[[0008cc80 - 0008cca8]]:
 +
[[0008ccac - 0008cce4]]:
 +
[[0008cce8 - 0008cd20]]:
 +
[[0008cd24 - 0008cd54]]:
 +
[[0008cd58 - 0008cd90]]:
 +
[[0008cd94 - 0008cdcc]]:
 +
[[0008cdd0 - 0008ce1c]]: [[Get Battle Unit Index By Unit Misc ID]]
 +
[[0008ce20 - 0008ce74]]: [[Get Unit Misc ID By Unit Index]]
 +
[[0008ce78 - 0008cecc]]:
 +
0008ced0 - 0008cef8: [[Find Unit's Misc Data Pointer (+0x15c)]]
 +
[[0008cefc - 0008cf38]]:
 +
[[0008cf3c - 0008cf74]]:
 +
[[0008cf78 - 0008d058]]:
 +
[[0008d05c - 0008d100]]:
 +
[[0008d104 - 0008d134]]:
 +
0008d138 - 0008d188: [[store mimicking misc data, existence/entd checks]]
 +
[[0008d18c - 0008d1c4]]: [[Reset Misc Unit Graphic Trigger]]
 +
[[0008d1c8 - 0008d224]]: [[Reset Jumping Unit Graphic Triggers]]
 +
[[0008d228 - 0008d268]]:
 +
[[0008d26c - 0008d29c]]:
 +
[[0008d2a0 - 0008d5c4]]:
 +
[[0008d5c8 - 0008d64c]]:
 +
[[0008d650 - 0008d6a4]]:
 +
[[0008d6a8 - 0008d704]]:
 +
[[0008d708 - 0008d8e0]]:
 +
[[0008d8e4 - 0008d94c]]:
 +
[[0008d950 - 0008d994]]:
 +
[[0008d998 - 0008dabc]]:
 +
[[0008dac0 - 0008db50]]:
 +
[[0008db54 - 0008dc20]]:
 +
0008dc24 - 0008dc70: [[Get Unit's Spritesheet Value]]
 +
[[0008dc74 - 0008dc98]]:
 +
0008dc9c - 0008dcc0: [[Find Unit's Misc Data Pointer and Load Spritesheet Value]]
 +
[[0008dcc4 - 0008dd0c]]:
  
0006867c - 000686ac: [[Increment AT List ID]]
+
==Pre-Effect display==
 +
?
 +
[[0008dd10 - 0008dda4]]: [[Start New Effect]]
 +
[[0008dda8 - 0008ddc8]]:
 +
[[0008ddcc - 0008dde8]]:
 +
[[0008ddec - 0008ddf8]]:
 +
[[0008ddfc - 0008de84]]:
 +
[[0008de88 - 0008de9c]]:
 +
[[0008dea0 - 0008dec4]]:
 +
[[0008dec8 - 0008ded4]]:
 +
[[0008ded8 - 0008dee4]]:
 +
[[0008dee8 - 0008df0c]]: [[Set Event Speed Inner]]
 +
[[0008df10 - 0008df44]]: [[Store Selected Tile Coordinates]]
 +
[[0008df48 - 0008df74]]: [[Store Map Max Coordinates]]
 +
[[0008df78 - 0008dfa8]]: [[Get Tile Data Pointer From Unit Misc ID]]
 +
[[0008dfac - 0008dfdc]]:
 +
[[0008dfe0 - 0008e064]]:
 +
[[0008e068 - 0008e090]]:
 +
[[0008e094 - 0008e0b8]]:
 +
[[0008e0bc - 0008e0ec]]:
 +
[[0008e0f0 - 0008e118]]:
 +
[[0008e11c - 0008e14c]]:
 +
[[0008e150 - 0008e178]]:
 +
[[0008e17c - 0008e1f4]]: [[0x8e17c]]
 +
[[0008e1f8 - 0008e230]]:
 +
[[0008e234 - 0008e2c4]]:
 +
[[0008e2c8 - 0008e300]]:
 +
[[0008e304 - 0008e314]]:
 +
[[0008e318 - 0008e324]]:
 +
[[0008e328 - 0008e344]]:
 +
[[0008e348 - 0008e354]]:
 +
[[0008e358 - 0008e464]]:
 +
[[0008e468 - 0008e53c]]:
 +
[[0008e540 - 0008e6cc]]:
 +
[[0008e6d0 - 0008e7b4]]:
 +
[[0008e7b8 - 0008e808]]: [[Get ENTD data pointer and load units]]
 +
[[0008e80c - 0008ea68]]:
 +
[[0008ea6c - 0008ec6c]]:
 +
[[0008ec70 - 0008ef20]]:
 +
[[0008ef24 - 0008ef40]]:
 +
[[0008ef44 - 0008ef78]]:
 +
[[0008ef7c - 0008efb0]]:
  
000686b0 - 00068764: [[AT List Check if Unit is Charging Ability]]
+
==Colour & Palette Modification==
 +
[[0008efb4 - 0008f12c]]: [[Color Screen Related (0x8efb4)]]
 +
[[0008f130 - 0008f204]]:
 +
[[0008f208 - 0008f31c]]:
 +
[[0008f320 - 0008f494]]:
 +
[[0008f498 - 0008f538]]:
 +
[[0008f53c - 0008f638]]:
 +
[[0008f63c - 0008f70c]]:
 +
0008f710 - 00090044: [[Palette Modification]]
 +
[[00090048 - 000901f4]]:
 +
[[000901f8 - 00090254]]:
 +
[[00090258 - 00090698]]:
 +
[[0009069c - 000907f8]]:
 +
[[000907fc - 0009083c]]:
 +
[[00090840 - 00090c44]]: [[Map Darkness]]
 +
[[00090c48 - 00090da4]]:
 +
[[00090da8 - 00090de8]]:
 +
[[00090dec - 000911f0]]:
 +
[[000911f4 - 00091244]]:
 +
[[00091248 - 0009127c]]:
 +
[[00091280 - 000912a0]]:
 +
[[000912a4 - 00092598]]:
 +
[[0009259c - 0009261c]]:
 +
00092620 - 000926d4: [[Extract Colors Data]] | [[Extract RGB+Alpha from Palette]]
 +
000926d8 - 000927b8: [[Extract Palette Data]] | [[Get Palette Data]]
 +
[[000927bc - 00092d48]]:
 +
[[00092d4c - 00092dbc]]:
 +
[[00092dc0 - 00092e94]]:
 +
[[00092e98 - 00092f14]]:
 +
[[00092f18 - 00092f94]]:
 +
[[00092f98 - 00093044]]: [[0x92f98]]
 +
[[00093048 - 00093114]]:
 +
[[00093118 - 00093140]]:
 +
[[00093144 - 0009316c]]:
 +
[[00093170 - 000931c0]]: [[Color Field]]
 +
[[000931c4 - 000933c0]]:
 +
[[000933c4 - 00093498]]:
 +
[[0009349c - 000934cc]]:
 +
[[000934d0 - 00093500]]: [[Map Darkness Wrapper]]
 +
[[00093504 - 00093534]]:
 +
[[00093538 - 00093560]]:
 +
[[00093564 - 000935f0]]:
 +
[[000935f4 - 00093610]]:
 +
[[00093614 - 00093630]]:
 +
[[00093634 - 00093650]]:
 +
[[00093654 - 000937f4]]: [[0x93654]]
 +
[[000937f8 - 00093868]]:
 +
[[0009386c - 00093a94]]:
 +
[[00093a98 - 00093bec]]:
 +
[[00093bf0 - 00093c94]]:
 +
00093c98 - 000e729c:
 +
[[000e72a0 - 000e7678]]:
 +
[[000e767c - 000e77b4]]:
 +
[[000e77b8 - 000e78bc]]:
 +
[[000e78c0 - 000e818c]]:
 +
[[000e8190 - 000e8408]]:
 +
[[000e840c - 000ec714]]: [[Background Tile Color For Targeting/Movement]]
 +
[[000ec718 - 000ee100]]: [[Background Tile Color For Targeting/Movement (Partial Tiles)]]
 +
[[000ee104 - 000ee434]]:
 +
[[000ee438 - 000ee958]]:
 +
[[000ee95c - 000eeaf4]]:
 +
[[000eeaf8 - 000eeec8]]:
 +
[[000eeecc - 000ef69c]]:
 +
[[000ef6a0 - 000ef6ec]]:
 +
[[000ef6f0 - 000f0bdc]]:
 +
[[000f0be0 - 000f1200]]:
 +
[[000f1204 - 000f2290]]:
 +
[[000f2294 - 000f2614]]:
 +
[[000f2618 - 000f26b8]]:
 +
[[000f26bc - 000f34c0]]:
 +
[[000f34c4 - 000f3634]]:
 +
[[000f3638 - 000f36c0]]:
 +
[[000f36c4 - 000f3714]]:
 +
[[000f3718 - 000f4ac8]]:
 +
[[000f4acc - 000f4dd0]]:
 +
[[000f4dd4 - 000f5574]]:
 +
[[000f5578 - 000f5980]]:
 +
[[000f5984 - 000f59ec]]:
 +
[[000f59f0 - 000f5a28]]:
 +
[[000f5a2c - 000f5a60]]:
 +
[[000f5a64 - 000f5ae8]]:
  
00068768 - 00068790: [[check something and clear AT list ID]]
+
==Targetting Determination==
 +
000f5aec - 0011467c:
 +
00114680 - 0011474c: [[Math Skill targeting calculations]]
 +
00114750 - 0012cce4:
 +
0011acdc - 0011aeec: [[Throw Determination Routine]]
 +
0012cc54 - 0012cf40: [[Set Tile Background Color (Partial Tiles)]]
 +
0012cf44 - 0012d2b0: [[Set Tile Background Color]]
 +
[[0012d2b4 - 0012d874]]:
 +
0012d8e4 - 0012da08: [[Process Inflict Status Event Commands]]
 +
0012da0c - 0012dafc: [[Set Specific Unit Animation Value When Battle Init]]
 +
[[0012db00 - 0012db8c]]:
 +
[[0012db90 - 0012dbd8]]:
 +
[[0012dbdc - 0012dc2c]]:
 +
[[0012dc30 - 0012dc80]]:
 +
[[0012dc84 - 0012dca8]]:
 +
==Uncertain 2==
 +
[[0012dcac - 0012dcf4]]: [[Get Battle Unit Index By ENTD Unit ID]]
 +
[[0012dcf8 - 0012dd08]]:
 +
[[0012dd0c - 0012dd18]]:
 +
[[0012dd1c - 0012dd2c]]:
 +
[[0012dd30 - 0012dd40]]:
 +
[[0012dd44 - 0012dd54]]:
 +
[[0012dd58 - 0012dd68]]:
 +
[[0012dd6c - 0012dd90]]:
 +
[[0012dd94 - 0012ddc0]]:
 +
[[0012ddc4 - 0012dde4]]:
 +
[[0012dde8 - 0012df08]]: [[Battle Camera Initialize]]
 +
[[0012df0c - 0012df3c]]:
 +
[[0012df40 - 0012df64]]: [[Get Attacker Data Pointer]]
 +
[[0012df68 - 0012df94]]:
 +
[[0012df98 - 0012e18c]]: [[0x12df98]]
 +
[[0012e190 - 0012e194]]: (Empty routine)
 +
[[0012e198 - 0012e240]]:
 +
[[0012e244 - 0012e2b4]]:
 +
[[0012e2b8 - 0012e31c]]:
 +
[[0012e320 - 0012e344]]:
 +
[[0012e348 - 0012e598]]:
 +
[[0012e59c - 0012e648]]:
 +
[[0012e64c - 0012e658]]:
 +
[[0012e65c - 0012e9bc]]:
 +
[[0012e9c0 - 0012e9f8]]:
 +
[[0012e9fc - 0012ec8c]]:
 +
[[0012ec90 - 0012ee38]]:
 +
[[0012ee3c - 0012eeac]]:
 +
[[0012eeb0 - 0012f028]]:
 +
[[0012f02c - 0012f048]]:
 +
[[0012f04c - 0012f108]]: [[0x12f04c]]
 +
[[0012f10c - 0012f35c]]:
 +
[[0012f360 - 0012f3c8]]:
 +
[[0012f3cc - 0012f450]]:
 +
[[0012f454 - 0012f4dc]]:
 +
[[0012f4e0 - 0012f658]]:
 +
[[0012f65c - 0012f6ac]]:
 +
[[0012f6b0 - 0012f6d0]]:
 +
[[0012f6d4 - 0012fd1c]]:
 +
[[0012fd20 - 0012fd88]]: [[Text Format String Fetching]]
 +
[[0012fd8c - 00130188]]:
 +
[[0013018c - 00130624]]:
 +
[[00130628 - 00130714]]:
 +
[[00130718 - 001307d0]]:
 +
[[001307d4 - 00130870]]:
 +
[[00130874 - 001308bc]]:
 +
[[001308c0 - 00132820]]:
 +
00132824 - 00132858: [[Prep for Loading Text]]
 +
[[0013285c - 001328a8]]:
 +
[[001328ac - 00132910]]:
 +
[[00132914 - 00132bc0]]:
 +
[[00132bc4 - 00132e4c]]:
 +
[[00132e50 - 00132e70]]:
 +
[[00132e74 - 00132f98]]:
 +
[[00132f9c - 00132fec]]:
 +
[[00132ff0 - 00133044]]:
 +
[[00133048 - 00133084]]:
 +
[[00133088 - 001330e0]]:
 +
[[001330e4 - 0013312c]]: [[Copy Unit Screen Location Data]]
 +
[[00133130 - 0013314c]]:
 +
[[00133150 - 00133154]]: jr r31
 +
00133158 - 00133490: [[Get misc ID]] (goes through a bunch of event command checks and more)
 +
[[00133494 - 001334a0]]:
 +
[[001334a4 - 00133564]]:
 +
[[00133568 - 00133584]]:
 +
00133588 - 00133750: [[Store level,exp, HP/MP hardcoding, store CT]]
 +
00133754 - 00133c94: [[Store units small in battle display data]]
 +
[[00133c98 - 00133ce8]]: [[Has Status Effect (For Status Window)]]
 +
[[00133cec - 00133eec]]: [[Display Inner Character Window]]
 +
[[00133ef0 - 00133f74]]:
 +
[[00133f78 - 00133fe4]]:
 +
[[00133fe8 - 0013401c]]:
 +
[[00134020 - 00134070]]:
 +
[[00134074 - 001340a8]]:
 +
[[001340ac - 0013417c]]: [[Dismiss Unit Event Instruction]]
 +
[[00134180 - 00134220]]:
 +
[[00134224 - 00134244]]: [[Advance Date By One Year]]
 +
[[00134248 - 001342c8]]:
 +
[[001342cc - 001343b8]]:
 +
[[001343bc - 001343cc]]:
 +
[[001343d0 - 001343dc]]:
 +
[[001343e0 - 0013442c]]:
  
00068794 - 000687a0: [[Clear AT list ID]]
+
==Uncertain (Display Related)==
 +
00134438 - 001346f0: [[Display Height]]
 +
001346f4 - 0013493c: [[Height Number Display Setup]]
 +
[[00134940 - 00134a68]]:
 +
00134a74 - 001352b8: [[Display Projected Action Effect]]
 +
[[001352bc - 00136124]]:
 +
[[00136128 - 00136184]]:
 +
[[00136188 - 001361e4]]:
 +
[[001361e8 - 00136320]]:
 +
[[00136324 - 001363d8]]:
 +
[[001363dc - 00136b0c]]:
 +
00136b10 - 00136bcc: [[Get Item Graphic Data]]
 +
[[00136bd0 - 00136d30]]: [[Something to do with special portraits]]
 +
[[00136d34 - 001370a0]]:
 +
[[001370a4 - 00137b8c]]:
 +
[[00137b90 - 00137c0c]]:
 +
==Menuing==
 +
00137c10 - 00137ed0: [[Handle Menu Action]]
 +
[[00137ed4 - 00137f80]]:
 +
[[00137f84 - 00138090]]:
 +
00138094 - 00138170: [[0x138094]]
 +
00138174 - 001383c4: [[0x138174]]
 +
[[001383c8 - 00138410]]:
 +
[[00138414 - 0013845c]]:
 +
[[00138460 - 001384dc]]:
 +
[[001384e0 - 0013856c]]:
 +
[[00138570 - 00138718]]:
 +
[[0013871c - 00138768]]:
 +
[[0013876c - 00138908]]:
 +
[[0013890c - 00138ad8]]:
 +
[[00138adc - 00138b0c]]:
 +
[[00138b10 - 00138b60]]:
 +
[[00138b64 - 00138ed4]]:
 +
[[00138ed8 - 001390b8]]: [[Display Simple Selection Menu]] | [[Move/Act/Wait menu Idle routine]]
 +
==Uncertain (Display Related 2)
 +
[[00136b10 - 00136bcc]]: [[Get Item Graphic Data]]
 +
[[001390bc - 00139578]]:
 +
[[0013957c - 001395a8]]:
 +
[[001395ac - 001398f8]]:
 +
[[001398fc - 00139bd8]]:
 +
[[00139bdc - 00139be8]]:
 +
[[00139bec - 0013aed8]]:
 +
[[0013aedc - 0013aee8]]:
 +
[[0013aeec - 0013b008]]:
 +
[[0013b00c - 0013b27c]]:
 +
[[0013b280 - 0013b4f8]]:
 +
[[0013b4fc - 0013b58c]]:
  
000687a4 - 000687b8: [[Clear 960f8 and 960fc]]
+
==Uncertain (Miscellany?)==
 +
0013b590 - 0013b640: [[Get Script Variable]]
 +
[[0013b644 - 0013b6e0]]: [[Set Script Variable]]
 +
[[0013b6e4 - 0013b894]]:
 +
[[0013b898 - 0013ba64]]:
 +
[[0013ba68 - 0013bb6c]]:
 +
[[0013bb70 - 0013bbe8]]: [[0x13bb70]]
 +
[[0013bbec - 0013bc10]]:
 +
[[0013bc14 - 0013bcb8]]: [[Load File (0x13bc14)]]
 +
[[0013bcbc - 0013bd60]]:
 +
[[0013bd64 - 0013bd90]]:
 +
[[0013bd94 - 0013bdc0]]:
 +
[[0013bdc4 - 0013bf28]]:
 +
[[0013bf2c - 0013bf58]]:
 +
[[0013bf5c - 0013bf88]]:
 +
[[0013bf8c - 0013bfb8]]:
 +
0013bfbc - 0013c024: [[Display Triangle Selection Menu]]
 +
[[0013c028 - 0013c12c]]:
 +
[[0013c130 - 0013c230]]:
 +
[[0013c234 - 0013c280]]:
 +
[[0013c284 - 0013c2d8]]: [[0x13c284]]
 +
[[0013c2dc - 0013c3a0]]:
 +
[[0013c3a4 - 0013c568]]: [[Equip Change Routine]]
 +
[[0013c56c - 0013c664]]:
 +
[[0013c668 - 0013c70c]]:
 +
0013c710 - 0013c73c: [[Show Graphic (Outer Routine)]]
 +
[[0013c740 - 0013c7c0]]:
 +
[[0013c7c4 - 0013c8a4]]:
 +
[[0013c8a8 - 0013c9bc]]:
  
000687bc - 000687dc: [[Transfer Palette]]
+
==Eventing==
 +
[[0013c9c0 - 0013ca6c]]: [[Load Event]]
 +
[[0013ca70 - 0013cac0]]:
 +
[[0013cac4 - 0013caf0]]:
 +
[[0013caf4 - 0013cbd8]]:
 +
[[0013cbdc - 0013ccc8]]:
 +
[[0013cccc - 0013cce8]]:
 +
[[0013ccec - 0013cf54]]:
 +
[[0013cf58 - 0013d0a8]]: [[menu Routine]]
 +
[[0013d0ac - 0013d184]]:
 +
[[0013d188 - 0013d198]]:
 +
[[0013d19c - 0013d1ec]]:
 +
[[0013d1f0 - 0013d22c]]:
 +
[[0013d230 - 0013d274]]:
 +
[[0013d278 - 0013d31c]]:
 +
[[0013d320 - 0013d4d8]]:
 +
[[0013d4dc - 0013d574]]:
 +
[[0013d578 - 0013d60c]]:
 +
[[0013d610 - 0013d620]]:
 +
[[0013d624 - 0013d630]]:
 +
0013d634 - 0013d700: [[Store unit names and some event block data]]
 +
[[0013d704 - 0013d9fc]]:
 +
0013da00 - 0013da24: [[Set Event Speed]]
 +
[[0013da28 - 0013da5c]]:
 +
[[0013da60 - 0013da6c]]:
 +
[[0013da70 - 0013da7c]]:
 +
[[0013da80 - 0013dae0]]:
 +
[[0013dae4 - 0013db98]]:
 +
[[0013db9c - 0013dfac]]: [[Camera Fusion Event Instruction]]
 +
[[0013dfb0 - 0013e544]]: [[Camera Fusion Inner Routine]]
 +
[[0013e548 - 0013e580]]:
 +
[[0013e584 - 0013e5bc]]:
 +
0013e5c0 - 0013e658: [[Walk To Event Instruction]]
 +
[[0013e65c - 0013e6c0]]:
 +
[[0013e6c4 - 0013e704]]:
 +
[[0013e708 - 0013e7cc]]:
 +
[[0013e7d0 - 0013e818]]:
 +
[[0013e81c - 0013e870]]:
 +
[[0013e874 - 0013e8d0]]:
 +
[[0013e8d4 - 0013e900]]:
 +
0013e904 - 0013edd4: [[Block Start Event Instruction]]
 +
[[0013edd8 - 0013efa8]]:
 +
[[0013efac - 0013eff0]]:
 +
[[0013eff4 - 0013f07c]]:
 +
[[0013f080 - 0013f0bc]]:
 +
[[0013f0c0 - 0013f164]]:
 +
[[0013f168 - 0013f208]]:
 +
[[0013f20c - 0013f3f8]]:
 +
[[0013f3fc - 0013f49c]]:
 +
[[0013f4a0 - 0013f4f4]]:
 +
[[0013f4f8 - 0013f51c]]:
 +
0013f520 - 0013f664: [[Data setting from menu selections]]
 +
0013f668 - 0013f768: [[Store Selected Tile Data]]
 +
==Act Menuing==
 +
[[0013f76c - 0013f7a8]]: [[Initialize menu counters]]
 +
[[0013f7ac - 0013f7b0]]:
 +
[[0013f7b4 - 0013f8b0]]: [[Store some data for menus]]
 +
[[0013f8b4 - 0013f8fc]]:
 +
[[0013f900 - 0013f974]]:
 +
[[0013f978 - 0013f984]]:
 +
[[0013f988 - 0013f9c0]]:
 +
[[0013f9c4 - 0013f9fc]]:
 +
[[0013fa00 - 0013fa34]]:
 +
[[0013fa38 - 0013fa68]]:
 +
0013fa6c - 00140224: [[Main Skillset/ability loading]] (abilities greyed/blinking red)
 +
00140228 - 001404c8: [[Main act menu loading]]
 +
[[001404cc - 00140728]]:
 +
[[0014072c - 00140888]]:
 +
[[0014088c - 00140904]]:
 +
[[00140908 - 0014097c]]:
 +
[[00140980 - 001409a0]]:
 +
[[001409a4 - 001409e8]]:
 +
[[001409ec - 00140a2c]]:
 +
00140a30 - 00140b00: [[Disable Move/Act based on menu ID]]
 +
[[00140b04 - 00140cd0]]: [[Return Act-use Error Message]]
 +
[[00140cd4 - 00140ed0]]: [[Ability selected routine]] (Good grief, can any of you put these in the right spot?)
 +
00140ed4 - 0014115c:
 +
[[00141160 - 001411b0]]:
 +
001411b4 - 00141460: [[Set used item based on skillset]]
 +
*Bad name for this routine, I think it does much more important shit
 +
**Change loaded skillset here to make non-default abilities work in default skillset
 +
00141464 - 00141650: [[Store message/menu type]]
 +
[[00141654 - 0014169c]]:
 +
[[001416a0 - 00141718]]:
 +
0014171c - 00141758: [[Store main target ID/auto battle]]
 +
0014175c - 001419b4: [[Spell Quote determination]]
 +
001419b8 - 00141a88: [[System function setup routine]]
 +
[[00141a8c - 00141b08]]:
 +
[[00141b0c - 00142504]]: [[System function routine]]
 +
*00141c14 - 00141cb8: Gameover checks (both)
 +
*00141db0 - 00141e24: Gameover (party incapacitated) checks
 +
*00142074 - 001420e0: Calculator skillset loading?
 +
*0014227c - 001422f4: recieve item whos quantity = 99 (increase gil)
 +
*001422f8 - 00142334: Increment item quantity
 +
[[00142508 - 001425ac]]: [[Get Battle Unit By Unit ID]]  (For scenario conditionals?)
 +
[[001425b0 - 00142688]]: [[Process Scenario Conditionals]]
 +
00142694 - 00142b58: [[Process Scenario Conditional]]
 +
[[00142b5c - 00142ba0]]: [[0x142b5c]]
 +
[[00142ba4 - 00142bcc]]:
 +
[[00142bd0 - 00142c20]]: [[0x142bd0]]
 +
[[00142c24 - 00142ca4]]: [[0x142c24]]
 +
[[00142ca8 - 00142d28]]: [[0x142ca8]]
 +
[[00142d2c - 00142d54]]: [[0x142d2c]]
 +
[[00142d58 - 001433a8]]: [[0x142d58]]
 +
[[001433ac - 001433e4]]:
 +
[[001433e8 - 00143414]]:
 +
[[00143418 - 001439bc]]: [[0x143418]]
 +
[[001439c0 - 00143a98]]:
 +
[[00143a9c - 00143b64]]:
 +
[[00143b68 - 00143b7c]]:
 +
[[00143b80 - 00143ba4]]:
 +
[[00143ba8 - 00143bcc]]:
 +
[[00143bd0 - 00145f74]]:
  
000687e0 - 00068948: [[Set evade special effects based on Evade Type]] Weapon Break, Golem Hand, etc.
+
==Eventing 2==
 +
00143bd8 - 001449f8: [[Event Instruction Main Routine 1]]
 +
001449fc - 00145750: [[Event Instruction Main Routine 2]]
 +
*00145268 - 00145298: [[Event Instruction 0x76: DarkScreen]]
 +
*001452d8 - 00145320: [[Event Instruction 0x78: DisplayConditions]]
 +
*001455d8 - 00145648: [[Event Instruction 0x44: Draw]]
 +
00145754 - 00145f70: [[Event Instruction Main Routine 3]]
 +
*00145964 - 001459c4: [[Event Instruction 0xe5: WaitForInstruction]]
 +
*001459e8 - 00145a34: [[Event Instruction 0xf1: Wait]]
 +
*00145e10 - 00145e68: [[Event Instruction 0x91: ShowMapTitle]]
 +
[[00145f78 - 00146000]]: [[Load Next Event]]
 +
[[00146004 - 00146074]]:
 +
00146078 - 00146090: [[Load Halfword]] | [[Load event command bytes]]
 +
[[00146094 - 001460a0]]: [[Store Halfword]]
 +
[[001460a4 - 001460e0]]:
 +
[[001460e4 - 0014610c]]:
 +
00146110 - 001466b0: [[Camera Event Instruction]]
 +
001466b4 - 00146728: [[Map Darkness (Async)]]
 +
[[0014672c - 001467d8]]:
 +
001467dc - 0014693c: [[Color Screen Event Instruction]]
 +
00146940 - 00146ee0: [[Sprite Move]]
 +
00146ee4 - 00146f1c: [[Sprite Move (Outer)]]
 +
00146f20 - 00146f58: [[Sprite Move Beta]]
 +
[[00146f5c - 00147018]]:
 +
[[0014701c - 00147038]]:
 +
0014703c - 001472d8: [[Map Light (Async)]]
 +
[[001472dc - 00147314]]:
 +
[[00147318 - 001474a0]]:
 +
[[001474a4 - 00147580]]: [[0x1474a4]]
 +
[[00147584 - 0014777c]]: [[Focus Event Instruction]]
 +
[[00147780 - 00147914]]: [[Focus Speed Event Instruction]]
 +
[[00147918 - 00147924]]:
 +
[[00147928 - 001479a8]]: [[Try Get Unit Misc Data By Unit ID]]
 +
[[001479ac - 00147bcc]]: [[Process Unit Misc State Value]]
 +
[[00147bd0 - 00147ca4]]:
 +
[[00147ca8 - 00147cec]]:
 +
[[00147cf0 - 00147d94]]:
 +
[[00147d98 - 00147e5c]]:
 +
00147e60 - 00147fa8: [[Warp Unit]]
 +
[[00147fac - 00148080]]:
 +
[[00148084 - 00148280]]:
 +
[[00148284 - 00148484]]:
 +
[[00148488 - 00148538]]:
 +
[[0014853c - 0014857c]]: [[Clear Some Staging Data]]
 +
[[00148580 - 001488a4]]: [[Update Unit Status And Staged Status Data]]
 +
[[001488a8 - 00148cd4]]: [[Apply Staged Status Data To Unit]]
 +
[[00148cd8 - 00148e84]]: [[Process Unit Staged Status Data]]
 +
[[00148e88 - 001490fc]]: [[Inflict Status Event Command]]
 +
[[00149100 - 001491d4]]: [[Inflict Unit Status By ENTD Unit ID]]
 +
[[001491d8 - 00149394]]:
 +
00149398 - 0014948c: [[Unit Anim]]
 +
[[00149490 - 00149528]]:
 +
[[0014952c - 001495dc]]:
 +
001495e0 - 00149688: [[Color Unit Event Instruction]]
 +
[[0014968c - 00149730]]:
 +
[[00149734 - 00149788]]:
 +
[[0014978c - 001498f8]]:
 +
[[001498fc - 001499a8]]:
 +
[[001499ac - 00149a50]]:
 +
[[00149a54 - 00149b34]]:
 +
[[00149b38 - 00149be0]]:
 +
00149bec - 00149c44: [[Get Next Available Thread ID]]
 +
[[00149c48 - 00149cb8]]:
 +
[[00149cbc - 00149d44]]: [[Get Thread Running Task]]
 +
[[00149d48 - 00149d68]]: [[Set Thread Task ID]]
 +
[[00149d6c - 00149eb8]]: [[Event Jump]]
 +
00149ebc - 00149f0c: [[Find Event Instruction Byte Offset]]
 +
[[00149f10 - 0014a014]]:
 +
0014a018 - 0014a2e8: [[Run Script Variable Command]] <s>Jumped to from subroutines of steal routine - [[Calculate party inventory?]]</s>
 +
[[0014a2ec - 0014a398]]:
 +
[[0014a39c - 0014a3f4]]:
 +
[[0014a3f8 - 0014a460]]: [[Wait Value Event Instruction]]
 +
[[0014a464 - 0014a488]]:
 +
[[0014a48c - 0014a4d4]]:
 +
[[0014a4d8 - 0014a518]]:
 +
[[0014a51c - 0014a574]]:
 +
[[0014a578 - 0014a594]]:
 +
[[0014a598 - 0014a5e4]]:
  
0006894c - 000689a0: [[Set evade type data and weapon element effect]]
+
==Display Related==
 +
[[0014a5e8 - 0014a65c]]: [[Image Loading Setup (0x14a5e8)]]
 +
[[0014a660 - 0014a6a0]]:
 +
[[0014a6a4 - 0014a6c8]]:
 +
[[0014a6cc - 0014a6e0]]: [[0x14a6cc]]
 +
[[0014a6e4 - 0014a7a4]]:
 +
[[0014a7a8 - 0014a818]]:
 +
[[0014a81c - 0014a828]]:
 +
0014a82c - 0014a830: jr r31
 +
0014a834 - 0014aa78: [[Image loading setup (0x14a834)]]
 +
[[0014aa7c - 0014ab54]]:
 +
[[0014ab58 - 0014ac2c]]:
 +
[[0014ac30 - 0014aebc]]:
 +
[[0014aec0 - 0014b260]]:
 +
[[0014b264 - 0014b2ec]]:
 +
0014b2f0 - 0014b31c: [[Display Menu Text Entry]]
 +
0014b320 - 0014b34c: [[Display Menu Text Entry (Unused)]]
 +
[[0014b350 - 0014b390]]: [[Display Specific Menu Text]]
 +
0014b394 - 0014ba24: [[Display Menu Text]] | [[Giant message/menu loading routine]]
 +
0014ba28 - 0014bae0: [[Find Next Text Character]]
 +
[[0014bae4 - 0014bd84]]:
 +
[[0014bd88 - 0014bed4]]:
 +
[[0014bed8 - 0014bf50]]:
 +
0014bf54 - 0014bf78: [[Copy Bytes (0x14bf54)]]
 +
[[0014bf7c - 0014bfc0]]:
 +
[[0014bfc4 - 0014c010]]:
 +
[[0014c014 - 0014c160]]:
 +
[[0014c164 - 0014c188]]:
 +
[[0014c18c - 0014c4a4]]:
 +
0014c4a8 - 0014c754: [[0x14c4a8]]
 +
[[0014c758 - 0014c854]]:
  
000689a4 - 00068a1c: [[Set evade type data, item and throw stone hardcoding]]
+
==Thread Management==
 +
[[0014c858 - 0014c89c]]: [[Wait]] (Switch To Next Thread Multiple Times)
 +
[[0014c8a0 - 0014c920]]: [[Initialize Thread]]
 +
0014c924 - 0014c93c: [[Mark Thread As Running]]
 +
0014c940 - 0014c954: [[Mark Thread As Stopped]]
 +
[[0014c958 - 0014c990]]: [[Stop Current Thread]]
 +
[[0014c994 - 0014c9cc]]:
 +
[[0014c9d0 - 0014ca18]]: [[Wait For Thread]]
 +
[[0014ca1c - 0014ca34]]:
 +
0014ca38 - 0014ca54: [[Store Thread Function Parameters]] <s>[[Store event command bytes]]</s>
 +
0014ca58 - 0014ca7c: [[Store Thread Parameters (0x14ca58)]] <s>[[Store event command bytes 2]]</s>
 +
0014ca80 - 0014cbb0: [[Switch To Next Thread]] <s>[[Some event data setting routine]] runs many many times, jr r31's to a new location</s>
 +
0014cbb4 - 0014cbbc: [[Return Global Pointer]]
 +
0014cbc0 - 0014cbf0: [[Get First Thread Parameter]] | [[Get menu address]]
 +
0014cbf4 - 0014cc24: [[Get Second Thread Parameter]]
 +
[[0014cc28 - 0014cc58]]:
 +
[[0014cc5c - 0014cc90]]:
 +
0014cc94 - 0014ccb4: [[Check Thread Running Status]]
 +
[[0014ccb8 - 0014ce04]]:
 +
[[0014ce08 - 0014ce74]]:
 +
0014ce78 - 0014ceb0: [[Find Text ID's Location]]
 +
0014ceb4 - 0014cf54: [[Call Inner Subroutine]]
 +
*[[0014cf28 - 0014cf54]]:
 +
[[0014cf58 - 0014cf64]]:
 +
0014cf68 - 001743c4:
 +
00174068 - 00174294: Return addresses
 +
00174298: nop
 +
[[Reaction abilities return adress table|0017429c - 001742fc]]: Return addresses : reaction abilities for [[Perform_reaction_abilities]]
 +
00174300: nop
 +
[[Action_menu_return_adress_(routine_0018b274_-_Store_used_weapon)|00174304 - 00174340]]: Return addresses : action menu for [[Store_used_weapon]]
 +
[[Action_menu_return_address_(pre_formula_set_up)|00174344 - 0017436c]]: Return addresses : action menu for [[Pre_Formula_Setup_(FDC)]]
  
00068a20 - 00068a70: [[set some palette stuff]]
+
==Movement Calculations==
 +
001743c8 - 0017442c: [[Chocobo Check]]
 +
00174430 - 00174b88: [[Store movement stuff into scratch pad]]
 +
00174b8c - 00174df4: [[Set_Reachable_Tiles]]
 +
00174df8 - 00174e80: [[Disable_Tile_Flag_0x10_For_Dead_and_Jumping_Units]]
 +
00174e84 - 00175284: [[Set_Tile_Flags_for_Pathfinding]]
 +
00175288 - 001754cc: [[Set_Reachable_Tile_Flag]]
 +
001754d0 - 001754f0: [[Spread_Move_to_East_Preset]]
 +
001754f4 - 00175518: [[Spread_Move_to_North_Preset]]
 +
0017551c - 0017553c: [[Spread Move to West Preset]]
 +
00175540 - 00175564: [[Spread Move to South Preset]]
 +
001755a8 - 001755e4: [[Transfer_Tiles_Height_Halves_and_Slope_in_Scratch_Pad]]
 +
001755e8 - 00175614: [[Set_spreading_Tile_X_and_Y_coordinates]]
 +
00175618 - 00175678: [[Check_Spreading_Tile_Coordinates]]
 +
0017567c - 00175954: [[Set_Origin_Height_Data]]
 +
00175958 - 00175e9c: [[Movement routine]] Highlights panels blue
 +
00175ea0 - 00175fa0: [[Check_and_Spread_Movement_One_Tile_Around]]
 +
[[00175fa4 - 00176160]]:
 +
00176164 - 00176228: [[Calculate_Tile_Ceiling]]
 +
0017622c - 001764d4: [[Check_Horizontal_Jump_option]]
 +
001764d8 - 001766b0: [[Spread_Horizontal_Jump]]
 +
[[001766b4 - 00176c0c]]:
 +
[[00176c10 - 00176c8c]]: Contains teleport chances
 +
[[00176c90 - 0017717c]]:
 +
[[00177180 - 001773b4]]:
 +
[[001773b8 - 00177790]]:
 +
[[00177794 - 001779d8]]:
 +
[[001779dc - 00177b60]]:
 +
[[00177b64 - 00177c04]]:
 +
[[00177c08 - 00177e60]]:
 +
[[00177e64 - 00178094]]:
 +
[[00178098 - 001780e8]]:
 +
001780ec - 00178138: [[Calculate WalkTo Pathing]]
 +
0017813c - 00178ca0: [[Calculate Pathing]]
 +
[[00178ca4 - 00179200]]:
 +
==Targetting Calculations==
 +
00179204 - 00179258: [[Moldball Virus Depth Check]]
 +
0017925c - 001792a0: [[Clear Some stuff for Untargetable Terrain]]
 +
001792a4 - 001793fc: [[Check Vert Tolerance and if Tiles can be Chosen]]
 +
00179400 - 00179420: [[Null some Tile Data (192dd9)]]
 +
[[00179424 - 00179514]]: [[Remove Close Range Routine]]
 +
00179518 - 00179638: [[Calculate Tiles Hit by Ability]]
 +
0017963c - 001797b0: [[Calculate Possible AoE Tiles]]
 +
001797b4 - 001798ac: [[Depth Calculation]]
 +
001798b0 - 00179a1c: [[Set initial panels]]
 +
00179a20 - 00179b54: [[Set targeting for weapon attack]]
 +
00179b58 - 00179c98: [[Striking/lunging modification]]
 +
00179c9c - 00179d80: [[Depth Calculation 2]] ???
 +
00179d84 - 00179dc4: [[Remove targets for unclear reasons]]
 +
00179dc8 - 0017a168: [[Set Ability Targeting]] | Or, more accurately, [[Set Jump Ability Targeting]]?
 +
0017a16c - 0017a28c: [[calculate ability range with map parameters]]
 +
0017a290 - 0017a514: [[Set panels affected by ability]]
 +
0017a518 - 0017a5b8: [[Set targeting for weapon attack 2]]
 +
0017a5bc - 0017a648: [[Set all panels targeted if targetable]]
 +
0017a64c - 0017a6d8: [[Remove Selection state of all panels]]
 +
0017a6dc - 0017a7b8: [[Set target state for all units panels]]
 +
0017a7bc - 0017a8bc: [[Vertical Fixed Routine]]
 +
0017a8c0 - 0017aaf4: [[Calculate Target Panels]] / Alt version [[Set_Target_Tiles]]
 +
0017aaf8 - 0017ac8c: [[Calculate Targeting for Menu Types]]
 +
0017ac90 - 0017afbc: [[Targeting validation (weapon flags)]]
 +
0017afc0 - 0017b3f0: [[Auxilary targeting validation]]
 +
0017b3f4 - 0017b49c: [[Height/coordinate validation]]
 +
0017b4a0 - 0017b4cc: [[Disable Green Panel Flags]] (initialization?)
 +
0017b4d0 - 0017b7b0: [[Calculator Routine]]
 +
0017b7b4 - 0017b870: [[Disable Green Panel on all but Target's Tile]]
 +
0017b874 - 0017bc74: [[Targeting routine]]
 +
0017bc78 - 0017bdcc: [[Check Allies/Enemies that can be Targeted]]
 +
0017bdd0 - 0017be64: [[Check if Unit can be Targeted]]
 +
0017be68 - 0017c040: [[Linear/3-direction AoE Calculation]]
 +
0017c044 - 0017c154: [[Linear Attack Tile Calculation]]
 +
0017c158 - 0017c3b4: [[Calculate Height Data]]
 +
0017c3b8 - 0017c3d8: [[Call Attack Preparation (ability selected)]]
 +
0017c3dc - 0017c458: [[Call Attack Preparation (AT list preview)]]
 +
0017c45c - 0017c908: [[Attack Preparation]]
 +
0017c90c - 0017c950: [[Unit exists/party member check]]Returns 0x16e in unit data
 +
0017c954 - 0017c9b4: [[Player Item Quantity decrement]]
 +
0017c9b8 - 0017cac8: [[Prep Current Action Data]]
 +
0017cacc - 0017cd20: [[Reaction Target/Hit Calculation]]
 +
0017cd24 - 0017ce40: [[Map calculations for attack]] Attack, charge, ranged weapon flag
 +
0017ce44 - 0017d34c: [[Main ability loading routine]]
 +
0017d350 - 0017d40c: [[set target coordinates for ability]] also set regenerator target
 +
0017d410 - 0017d49c: [[draw out routine dealing with experience gain]]
 +
0017d4a0 - 0017d704: [[Current Action Ability Data Setting / Multi Hit Formulas]]
 +
[[0017d708 - 0017d84c]]: Targeting/panel routine
 +
[[0017d850 - 0017da1c]]: [[List and Sort Targeted Units]]
 +
==Acting Caster Calculations==
 +
0017da20 - 0017dbc4: [[Ability Usage Checks and MP Reduction]]
 +
0017dbc8 - 0017dc84: [[Store Some Acting Unit Data]]
 +
0017dc88 - 0017dca4: [[Get ID of Unit if Tile is Targetable]]
 +
0017dca8 - 0017decc: [[Find Unit at Specified Coordinates]] | [[Check if another unit is on the same Tile]]
 +
0017ded0 - 0017def8: [[Clear targeting panel data]]
 +
0017defc - 0017e174: [[Big... Contains Hamedo check]] Pre Attack Phase
 +
0017e178 - 0017e58c: [[Main reaction routine]]
 +
0017e590 - 0017e64c: [[Counter magic targeting]]
 +
0017e650 - 0017e77c: [[Store counter ability]]
 +
0017e780 - 0017e7e0: [[Auto Potion]]
 +
0017e7e4 - 0017ea24: [[Award EXP and JP for actions]]
 +
0017ea28 - 0017ea7c: [[Load Job Level]]
 +
0017ea80 - 0017ec14: [[Store JP; Calculate Unlocked Jobs]]
 +
0017ec18 - 0017f01c: [[big map/panel routine]]
 +
0017f020 - 0017f0e8: [[Float/Float/Fly movements]]
 +
0017f0ec - 0017f178: [[Calculate Move EXP/JP UP To earn]]
 +
0017f17c - 0017f2d4: [[Calculate Projected Action Effect]]
 +
0017f2d8 - 0017f318: [[Get Elemental Ability ID]]
  
00068a74 - 00068a90: [[Call palette routine 1]]
+
==Battle Initialisation==
 +
0017f31c - 0017f384: [[Initialize party members Job data, Sp cap, Status initialization]]
 +
0017f388 - 0017f5f4: [[Initialize units battlefield data]](ENTD ID/flags, Map location, palette, control, etc.)
 +
0017f5f8 - 0017f61c: [[Initialize players battlefield units]]
 +
0017f620 - 0017f63c: [[Initialize enemy battlefield units]]
 +
0017f640 - 0017f6c0: [[Set unit placement and validate]]
 +
0017f6c4 - 0017f89c: [[Validate unit placement]]
 +
0017f8a0 - 0017fbe8: [[Load ENTD Units]] | [[Big ENTD unit loading routine]]
 +
0017fbec - 0017fcc4: [[Add Unique Value to List]]
 +
0017fcc8 - 0017fd04: [[Disable/Remove unit]]
 +
0017fd08 - 0017fd7c: [[Check if unit present and ENTD level setting]]
 +
0017fd80 - 0017fda8: [[Set unit cannot exist(but can), return r2 = 0]]
 +
0017fdac - 0017fdd8: [[Erase unit, set to be removed from party]]
  
00068a94 - 00068ab0:  [[Call palette routine 2]]
+
==Movement Calculations 2==
 +
0017fddc - 0017ffbc: [[Set Rider/Mount's X/Y Data]]
 +
0017ffc0 - 00180130: [[Set target for mounted unit, move find item/trap]]
 +
00180134 - 00180174: [[Get movement support flags (move-MP/HP/EXP/JP up)]]
 +
00180178 - 0018020c: [[Remove charging status/ability CT]]
 +
00180210 - 0018022c: [[Disable acting statuses]]
 +
00180230 - 001802c4: [[Rare/common item determination]]
 +
001802c8 - 001804c0: [[Set map Item/trap data]]
 +
001804c4 - 0018052c: [[Move find item flag calculation]]
 +
==Unit Death Handling==
 +
00180530 - 00180900: [[Generate Crystal or Treasure]]
 +
00180904 - 00180a04: [[Learn from Crystal]]
 +
00180a08 - 00180af8: [[Generate Treasure]]
 +
00180afc - 00180b28: [[Get Unit's Data Pointer]]
 +
00180b2c - 00180c8c: [[Check Base Class]] | [[Ramza Causes Game Over]]
 +
00180c90 - 00180dac: [[Find Unit Data Pointer For ENTD Unit ID]] | [[Unit Existence/crystaltreasure check]] Uses 0x183 byte, 0x161 ENTD ID
 +
00180db0 - 00180dfc: [[Party level XX modification]] | [[Set Enemy Level Data]]
 +
00180e00 - 00180f3c: [[Find War Trophies and Bonus Money]] | [[Store some ENTD Data(War Trophy, gil), party level calculation]]
 +
[[00180f40 - 00180fe0]]:
 +
==Player Action & Menuing==
 +
00180fe4 - 0018109c: [[Prep for Special Status Flag Enabling]]
 +
001810a0 - 001810d0: [[Map Location Calculation]]
 +
001810d4 - 00181110: [[Get Existent Battle Unit Pointer]] | [[Load unit Data]] (exists check within)
 +
00181114 - 00181148: [[Find Active Unit Data Pointer]]
 +
0018114c - 001811f4: [[Get Menu ID based on mount, moveable/actable]]
 +
001811f8 - 00181308: [[Player Control Routine]]
 +
0018130c - 001813bc: [[Weapon Guard Usability ]] (Check if Unit can React)
 +
001813c0 - 00181580: [[Setup Act Menu]] | [[Player Skill Set]]
 +
00181584 - 0018171c: [[Skillset Loading]]
 +
00181720 - 001817bc: [[Get Number of Turns to Resolve]] | [[Get Number of Turns to Resolve(Alt)]]
 +
001817c0 - 00181b6c: [[Get Unit Skillset Ability Data]] | [[Load ability data for skillset]] (MP, CT, req. sword booleans)
 +
00181b70 - 00181b90: [[Item Inventory Ability Display]]
 +
00181b94 - 00181cb4: [[Item Ability Loading]]
 +
00181cb8 - 00181cd8: [[Throw]]
 +
00181cdc - 00181eec: [[Throw Determination Routine]]
 +
00181ef0 - 00181f10: [[Math Skill Ability Display]]
 +
  00181f14 - 00181f34: [[Math skill ability loading routine]]
 +
[[00181f38 - 00182064]]:
 +
00182068 - 001821c8: [[Math Skill ability loading]]
 +
001821cc - 001822c8: [[Elemental ability loading]]
 +
001822cc - 0018242c: [[Monster skill, frog attack ability loading]]
 +
00182430 - 00182504: [[Monster Skill check prep]]
 +
00182508 - 00182660: [[Monster Skill check]]
 +
00182664 - 00182684: [[Draw Out]]
 +
00182688 - 00182784: [[Draw Out 2 (main routine)]]
 +
00182788 - 001827b0: [[Call Charge Skillset Loading]]
 +
001827b4 - 001827ec: [[Charge Skillset Loading]]
  
00068ab4 - 00068ad0: [[Call palette routine 3]]
+
==In-Between Turns Unit & Status Processing==
 +
001827f0 - 00183074: [[In between turn control routine]]
 +
*0018282c - 001828ac: Initialize data?
 +
*001828b0 - 00182920: Validate mime action?
 +
*00182924 - 00182978: Set active turn
 +
*001829b8 - 00182a40: Next clocktick - CT increment
 +
00182a44 - 00182ba8: [[Dead/next turn processing (100CT)]]
 +
*00182bac - 00182c04: Ability CT decrement
 +
*00182c08 - 00182c8c: Post-ability CT setting
 +
*00182c90 - 00182ce4: Status CT decrement
 +
*00182ce8 - 00182d4c: Set Mime bytes
 +
*00182d50 - 00182d88: Clear Mime bytes
 +
*00182d8c - 00182dfc: Find highest CT
 +
*00182e00 - 00182e6c: Validate units turn
 +
*00182e70 - 00182ea8: Poison and regen
 +
*00182eac - 00182ee4: Poison marsh
 +
*00182ee8 - 00182f30: Transparent Removal
 +
*00182f34 - 00182fa0: Check if mimicable ability occurred
 +
*00182fa4 - 00183074: Mimic ability setting
 +
00183078 - 001832c8: [[Death sentence, crystalization, treasurization, etc]] also reraise, defend removal, chicken brave increment
 +
001832cc - 00183370: [[Status checks]]
 +
00183374 - 001834b8: [[Check Battle Outcome]] | [[Gameover by party incapacitated]]
 +
001834bc - 00183540: [[Check some list for Unit Battle ID]]
 +
00183544 - 001835a4: [[Calculate AT List and Get Specific Unit ID]]
 +
[[001835a8 - 001835f4]]: [[Unit doesn't exist/deadcrystaltreasurepetrify/being ridden check]]
 +
001835f8 - 00183708: [[AT List Preview]]
 +
0018370c - 00183ac8: [[Calculate AT List]]
 +
00183acc - 00183ba4: [[AT List Sorting]]
 +
00183ba8 - 00183bc8: [[Set Only Action Taken]]
 +
00183bcc - 00183bec: [[Set Only Movement Taken]]
 +
00183bf0 - 00183c68: [[Set move/act flags]] used in defend/equip change routines
 +
00183c6c - 00183d0c: [[End of Turn]]
 +
00183d10 - 00183d6c: [[Able to move/act checks (Menu)]]
 +
00183d70 - 00183ddc: [[Change of Turn check]]
 +
00183de0 - 00183dfc: [[Enable/disable acting status]]
 +
00183e00 - 00183e38: [[another intermediate routine]]
 +
[[00183e3c - 00183e90]]: [[Unit exists checks]]
 +
[[00183e94 - 00183e9c]]: [[Activates move/act]]
 +
00183ea0 - 00183f5c: [[something involving map coordinates]]
 +
00183f60 - 00183fb0: [[Load Move Find-Item data to Current Map]]
 +
00183fb4 - 00184018: [[Get Tile Data Pointer]] | [[Deals with map coordinates 1]]
 +
0018401c - 00184148: [[Return Various Tile Data]]
 +
0018414c - 001842f4: [[deals with map coordinates 3]]
 +
001842f8 - 00184308: [[Clear r2 2]]
  
00068ad4 - 00068af0: [[Call palette routine 4]]
+
==Formula Processing Subroutines==
 +
0018430c - 00184338: [[Force Attack Miss]]
 +
0018433c - 0018435c: [[Cause Action Miss]] | [[Force Attack Miss 2]]
 +
[[00184360 - 001843e8]]: [[Dance/Song hit %]] Returns if attack hit or not
 +
001843ec - 0018460c: [[Knockback Calculation]]
 +
00184610 - 001848d4: [[Knockback 2]]
 +
001848d8 - 00184960: [[Attack Evaded Calculations]]
 +
00184964 - 00184b20:  [[Compatibility]]
 +
00184b24 - 00184e3c: [[Modify Status Inflictions]] | [[Validate Status Changes]]
 +
00184e40 - 00184e94: [[Nullify Action]] | [[Elemental Nullification]]
 +
00184e98 - 00184f98: [[Elemental Damage Modification]]
 +
00184f9c - 001851c0: [[Equipment Evasion Setting (Physical)]]
 +
001851c4 - 001852e0: [[Equipment Evasion Setting (Magical)]]
 +
001852e4 - 00185324: [[Concentrate Calculation]]
 +
00185328 - 00185378: [[Dark/Confuse Caclulation]]
 +
0018537c - 001853f0: [[Abandon Calculation]]
 +
001853f4 - 001854b4: [[Evasion Changes due to Statuses]]
 +
001854b8 - 001854f8: [[Transparent Calculation]]
 +
001854fc - 00185734: [[Facing Evade Calculation]]
 +
00185738 - 00185810: [[Weather effects on Bows]]
 +
00185814 - 00185a98: [[Calculate Final Hit %]]
 +
00185a9c - 00185c90: [[Base XA Calculation]]
 +
00185c94 - 00185cbc: [[Store MA and Y]]
 +
[[00185cc0 - 00185cfc]]: [[Base XA and YA for MA + Y / 2 ]]
 +
[[00185d00 - 00185d3c]]: [[Store PA and PA + Y / 2]]
 +
00185d40 - 00185d7c: [[Store MA and PA + Y / 2]]
 +
00185d80 - 00185da8: [[Store MA and X]]
 +
00185dac - 00185dd4: [[Store PA and X]]
 +
00185dd8 - 00185e00: [[Store PA and WP]]
 +
00185e04 - 00185e2c: [[Store PA and Y]]
 +
00185e30 - 00185e58: [[Store Speed and X]]
 +
00185e5c - 00185e90: [[Store PA and WP + Y]]
 +
00185e94 - 00185f7c: [[Formula 64 or Jump Base XA / YA]]
 +
00185f80 - 00185fa0: [[Charge Calculation]]
 +
00185fa4 - 00185ff8: [[Weapon Element Strengthen]]
 +
00185ffc - 00186050: [[Elemental Strengthen]]
 +
00186054 - 00186148: [[Attack UP/Two Hands/Martial Arts]]
 +
0018614c - 00186200: [[Formula 32, 33, 34, 35 Attack Up and Martial Arts]]
 +
00186204 - 00186250: [[Magic Attack Up routine]]
 +
00186254 - 001862c8: [[Attacker Berserk/Frog Check]]
 +
001862cc - 00186318: [[Defense UP routine]]
 +
0018631c - 00186368: [[Magic Defense Up routine]]
 +
0018636c - 0018645c: [[Target XA affecting Statuses (Physical)]]
 +
00186460 - 001864f4: [[Target's Status Affecting XA (Magical)]]
 +
001864f8 - 00186564: [[Critical Hit Calculation]]
 +
00186568 - 00186598: [[XA * YA Calculation]]
 +
0018659c - 00186620: [[Set XA + YA for Status Formulas (Stupid section)]]
 +
00186624 - 00186688: [[Calculate % of damage]]
 +
0018668c - 001866e8: [[MP Damage Routine (Uses Y instead of X.)]]
 +
001866ec - 00186740: [[Gravi2 Damage Routine]]
 +
00186744 - 00186810: [[Steal Gil]]
 +
00186814 - 001868ec: [[Set EXP Stolen]]
 +
[[001868f0 - 00186918]]:  Formula 36
 +
0018691c - 001869e8: [[Damage and Knockback Routine (Dash, tackle, throw stone)]]
 +
001869ec - 00186af4: [[Song abilities]]
 +
00186af8 - 00186c00: [[Dance abilities]]
 +
00186c04 - 00186cfc: [[Talk Skill]]
 +
[[00186d00 - 00186d28]]:  [[3A +Brave (Y)]]
 +
[[00186d2c - 00186d54]]:  [[39 +SP (Y)]]
 +
[[00186d58 - 00186db8]]:  [[3B +Brave (X) +PA/MA/SP (Y)]]
 +
[[00186dbc - 00186e24]]:  [[3C Heal (CasMaxHP*2/5) DmgCas (CasMaxHP/5)]]
 +
[[00186e28 - 00186e50]]:  [[43 Dmg (CasMaxHP-CasCurHP)]]
 +
[[00186e54 - 00186e74]]:  [[44 Dmg (TarCurMP)]]
 +
[[00186e78 - 00186ea0]]:  [[45 Dmg (TarMaxHP-TarCurHP)]]
 +
00186ea4 - 00186ecc: [[Y brave]]
 +
00186ed0 - 00186fcc: [[Weather Elemental effects]]?
 +
00186fd0 - 00186ff4: [[Elemental Damage Modification (Prep)]]
 +
00186ff8 - 001870f8: [[Ability Elemental?]] Apply Elemental - Glain
 +
001870fc - 0018714c: [[Elemental Absorption]]
 +
00187150 - 00187244: [[Faith Calculation]]
 +
00187248 - 0018734c: [[HP Absorbtion]] (Seems needlessly complex)
 +
00187350 - 001873d4: [[Undead Reversal]]
 +
001873d8 - 00187468: [[Undead Absorb Attack]]
 +
0018746c - 001874e8: [[MP Recovery Routine]] -MP Absorb*
 +
001874ec - 0018750c: [[Convert HP Damage into MP Recovery]]
 +
00187510 - 001875b8: [[Use Specific Action Hit Percentage]] | [[Set XA*YA as hit%]]
 +
001875bc - 001875f8: [[Dragon Check]]
 +
001875fc - 00187634: [[Sleep Check]]
 +
00187638 - 0018768c: [[Maintenance]]
 +
00187690 - 001876e0: [[Conditional Status Proc Roll (19%) Inner Routine]]
 +
001876e4 - 0018772c: [[Store Reaction/Proc ID and Target]]
 +
00187730 - 00187838: [[Magic Gun Ability Decision]]
 +
0018783c - 0018785c: [[Quick Effect]]
 +
00187860 - 0018790c: [[Determine which stat will be reduced ]]
 +
00187910 - 001879c4: [[Katana Break Chance]]
 +
001879c8 - 00187c9c: [[Steal/Break/Might Sword Hard Coding]]
 +
00187ca0 - 00187eb0: [[Formula 01 - 06 Aftermath]]
 +
00187eb4 - 00187f20: [[Apply status (to action) - (Preserve hit status, evade type, hit %)]]
 +
00187f24 - 00188284: [[Apply status (to action)]] Formula 38
 +
00188288 - 001882c4: [[MP Healing Item Formula]]
 +
001882c8 - 001882f4: [[100% HP/MP Healing (actual)]]
 +
001882f8 - 001883a8: [[Finger Guard]]
 +
001883ac - 00188484: [[Catch]]
 +
00188488 - 001884bc: [[Calculate Hit %]]
 +
001884c0 - 0018850c: [[Conditional Status Proc Roll (19%)]]
 +
00188510 - 00188564: [[Physical Evade Calculation]]
 +
00188568 - 001885b4: [[Physical Evade Calculation(Charge)]]
 +
001885b8 - 001885f4: [[Magical Evade Calculation]]
 +
001885f8 - 00188634: [[Physical XA Modifying Statuses/Support ]]
 +
00188638 - 001886a0: [[Weapon Damage Calculation]]
 +
001886a4 - 001886d0: [[Damage Calculation]]
 +
001886d4 - 00188718: [[Calculate_Accuracy_for_Physical]]
 +
0018871c - 00188740: [[Elemental Absorb and status roll]] 19% conditional status
 +
00188744 - 00188778: [[Magical Support/Status/Compat]]
 +
0018877c - 001887c0: [[Elemental XA * YA]]
 +
001887c4 - 001887fc: [[Elemental Absorb/Status]]
 +
00188800 - 00188854: [[MA + X]]
 +
00188858 - 00188884: [[Magical XA * YA]]
 +
[[00188888 - 00188960]]: Calculate Accuracy as User Faith * (MA + X)%
 +
00188964 - 001889a0: [[Truth/Formula 5E-5F Magical damage]]
 +
001889a4 - 001889c8: [[2Truth/Formula 5E-5F Calculate damage]]
 +
001889cc - 00188a20: [[Calculate Accuracy for Magical Spells ]]
 +
00188a24 - 00188a80: [[Calculate Accuracy for Magical]]
 +
00188a84 - 00188ad8: [[MA + X without faith]]
 +
00188adc - 00188b10: [[Cluster of Physical Routines]]
 +
00188b14 - 00188b60: [[Physical Routine for Hit % abilities]]
  
00068af4 - 00068b10: [[Call palette routine 5]]
+
==Formulas==
 +
00188b64 - 0018ac70: [[Formulas]]
 +
[[00188b64 - 00188ba0]]: [[01 Dmg_(Weapon)]]
 +
[[00188ba4 - 00188be0]]: [[02 Dmg_(Weapon)]]
 +
[[00188be4 - 00188c20]]: [[03 Dmg_(WP^2)]]
 +
[[00188c24 - 00188c98]]: [[04 Magic Gun]]
 +
[[00188c9c - 00188cf0]]: [[05 Dmg (Weapon)]]
 +
[[00188cf4 - 00188d38]]: [[06 AbsHP (Weapon)]]
 +
[[00188d3c - 00188d80]]: [[07 Heal (Weapon)]]
 +
[[00188d84 - 00188df0]]: [[08 Dmg F(MA*Y)]]
 +
[[00188df4 - 00188e74]]: [[09 Dmg (Y/100)% Hit F(MA+X)%]]
 +
[[00188e78 - 00188eb4]]: [[0A Hit F(MA+X)%]]
 +
[[00188eb8 - 00188ef4]]: [[0B Hit F(MA+X)%]]
 +
[[00188ef8 - 00188f34]]: [[0C Heal F(MA*Y)]]
 +
[[00188f38 - 00188f8c]]: [[0D Heal (Y)% Hit F(MA+X)%]]
 +
[[00188f90 - 00189080]]: [[0E Dmg (Y)% Hit F(MA+X)% 100% Status Hide Status]]
 +
[[00189084 - 001890d8]]: [[0F AbsMP (Y)% Hit F(MA+X)%]]
 +
[[001890dc - 00189120]]: [[10 AbsHP (Y)% Hit F(MA+X)%]]
 +
[[00189124 - 00189160]]: 11 (does nothing), [[12 Set Quick Hit F(MA+X)%]]
 +
[[00189164 - 001891a8]]: 13 (does nothing), [[14 Set Golem Hit CasF/100*(MA+X)%]]
 +
[[001891ac - 00189200]]: [[15 Set CT00 Hit F(MA+X)%]]
 +
[[00189204 - 00189258]]: [[16 DmgMP (TarCurMP) Hit F(MA+X)%]]
 +
[[0018925c - 00189298]]: [[17 Dmg (TarCurHP-1) Hit F(MA+X)%]]
 +
[[0018929c - 001892a8]]: [[18]], [[19]] (does nothing)
 +
[[001892ac - 00189338]]: [[1A Hit F(MA+Y)% // -PA/MA/SP (X)]]
 +
[[0018933c - 00189378]]: [[1B DmgMP (MA+Y)% Hit F(X)%]]
 +
[[0018937c - 001893d4]]: [[1C Hit (X)%]] Sing
 +
[[001893d8 - 00189430]]: [[1D Hit (X)%]] Dance
 +
[[00189434 - 00189460]]: [[1E Dmg ((MA+Y)*MA/2)]]
 +
[[00189464 - 001895c0]]: [[1F Dmg ((100-CasF)*(100-TarF)*(MA+Y)*MA/2)]]
 +
[[001895c4 - 001895f0]]: [[20 Dmg (MA*Y)]] Draw Out
 +
[[001895f4 - 00189650]]: [[21 DmgMP (MA*Y)]] Draw Out
 +
[[00189654 - 00189678]]: [[22]] Draw Out Hit 100%
 +
[[0018967c - 001896b0]]: [[23 Heal (MA*Y)]] Draw Out
 +
[[001896b4 - 001896e8]]: [[24 Dmg ((PA+Y)/2*MA)]]
 +
[[001896ec - 00189790]]: [[25 Equipped: Break Hit (PA+WP+X)%]]
 +
[[00189794 - 00189824]]: [[26 Equipped: Steal Hit (SP+X)%]]
 +
[[00189828 - 0018986c]]: [[27 StealGil (CasLVL*SP) Hit (SP+X)%]]
 +
[[00189870 - 0018990c]]: [[28 StealExp (Lowest of TarCurExp & SP+Y) Hit (SP+X)%]]
 +
[[00189910 - 001899a0]]: [[29 OppositeSex: Hit (MA+X)%]]
 +
[[001899a4 - 00189a8c]]: [[2A Hit (MA+X)% // AffectBraveOrFaith(Y)]]
 +
[[00189a90 - 00189ad4]]: [[2B Hit (PA+X)% // -PA/MA/SP (X)]]
 +
[[00189ad8 - 00189b1c]]: [[2C DmgMP (X)% Hit (PA+Y)%]]
 +
[[00189b20 - 00189b90]]: [[2D Dmg (PA*(WP+Y)) 100% Status]]
 +
[[00189b94 - 00189c4c]]: [[2E Equipped:Break Dmg (PA*WP)]]
 +
[[00189c50 - 00189c8c]]: [[2F AbsMP (PA*WP)]]
 +
[[00189c90 - 00189ccc]]: [[30 AbsHP (PA*WP)]]
 +
[[00189cd0 - 00189d70]]: [[31 Dmg ((PA+Y)/2*PA)]]
 +
[[00189d74 - 00189e24]]: [[32 Dmg (Rdm(1…X)*(PA*3+Y))]]
 +
[[00189e28 - 00189e90]]: [[33 Hit (PA+X)%]]
 +
[[00189e94 - 00189f04]]: [[34 Heal (PA*Y) HealMP (PA*Y/2)]]
 +
[[00189f08 - 00189f80]]: [[35 Heal (Y)% Hit (PA+X)%]]
 +
[[00189f84 - 00189fc8]]: [[37 Dmg (Rdm(1…Y)*PA)]]
 +
[[00189fcc - 0018a008]]: [[3D Hit (MA+X)%]]
 +
[[0018a00c - 0018a028]]: [[3E Dmg (TarMaxHP-1)]]
 +
[[0018a02c - 0018a084]]: [[3F Hit (SP+X)%]]
 +
[[0018a088 - 0018a110]]: [[40 Undead: Hit (SP+X)%]]
 +
[[0018a114 - 0018a178]]: [[41 Hit (MA+X)%]]
 +
[[0018a17c - 0018a214]]: [[42 Dmg (PA*Y) DmgCas (PA*Y/X)]]
 +
[[0018a218 - 0018a24c]]: [[46]] (doesn't work), [[47 AbsHP (Y)% 100% Status]]
 +
[[0018a250 - 0018a2a0]]: [[48 Heal (Z*10)]]
 +
[[0018a2a4 - 0018a2c0]]: [[49 HealMP (Z*10)]]
 +
[[0018a2c4 - 0018a2e8]]: Formula 4a - Elixir
 +
[[0018a2ec - 0018a39c]]: [[4B Heal (Rdm(1..9)) 100% Status]]
 +
[[0018a3a0 - 0018a3cc]]: [[4C Heal (MA*Y)]]
 +
[[0018a3d0 - 0018a41c]]: [[4D AbsHP (Y)% Hit (MA+X)%]]
 +
[[0018a420 - 0018a454]]: [[4E Dmg (MA*Y)]]
 +
[[0018a458 - 0018a49c]]: [[4F Dmg (CasMaxHP-CasCurHP) Hit (PA+X)%]]
 +
[[0018a4a0 - 0018a4e4]]: [[50 Hit (MA+X)%]]
 +
[[0018a4e8 - 0018a550]]: [[51 Hit (MA+X)%]]
 +
[[0018a554 - 0018a5e0]]: [[52 Dmg (CasMaxHP-CasCurHP) 100% Add Status Caster in AoE: DmgSelf (CasCurHP)]]
 +
[[0018a5e4 - 0018a664]]: [[53 Dmg (X)% Hit (MA+X)%]]
 +
[[0018a668 - 0018a694]]: [[54 HealMP (MA*Y)]]
 +
[[0018a698 - 0018a6f4]]: [[55 –PA (Y) Hit (MA+X)%]]
 +
[[0018a6f8 - 0018a754]]: [[56 –MA (Y) Hit (MA+X)%]]
 +
[[0018a758 - 0018a820]]: [[57 +Lvl(1) NS 100% Add Status on Caster]]
 +
[[0018a824 - 0018a904]]: [[58 Generic: Set Morbol: Hit(MA+X)%]]
 +
[[0018a908 - 0018a97c]]: [[59 –Lvl(1) Hit (MA+X)%]]
 +
[[0018a980 - 0018a9c0]]: [[5A Dragon: Hit(100)%]]
 +
[[0018a9c4 - 0018aa0c]]: [[5B Dragon: Heal (Y)% 100% Add Status]]
 +
[[0018aa10 - 0018aa50]]: [[5C Dragon: +Brave (X) +PA/MA/SP(Y)]]
 +
[[0018aa54 - 0018aa94]]: [[5D Dragon: Set Quick]]
 +
[[0018aa98 - 0018aac4]]: [[5E Dmg ((MA+Y)/2*MA)]]
 +
[[0018aac8 - 0018aaf4]]: [[5F Dmg ((MA+Y)/2*MA)]]
 +
[[0018aaf8 - 0018ab14]]: [[60 Dmg ((MA+Y)/2*MA) 6.25 Status]]
 +
[[0018ab18 - 0018ab54]]: [[61 –Brave (Y) Hit F(MA+X)%]]
 +
[[0018ab58 - 0018ab94]]: [[62 –Brave (Y) Hit (MA+X)%]]
 +
[[0018ab98 - 0018ac40]]: [[63 Dmg (SP*WP)]]
 +
[[0018ac44 - 0018ac70]]: [[64 Dmg (PA * WP); if using Spear (PA * 3/2 * WP); if weaponless (PA * Brave /100 * WP)]]
 +
==Post Formula Handling==
 +
0018ac74 - 0018acd8: [[remove transparent status if Jump is used]]
 +
0018acdc - 0018ad54: [[Apply Status and Check Undead]] | <s>[[Pheonix down on undead]]</s>
 +
0018ad58 - 0018adf0: [[Switch_Ability_to_default_Attack]]
 +
0018adf4 - 0018ae38: [[action data nulling]]
 +
0018ae3c - 0018af28: [[Knockback]]
 +
0018af2c - 0018b270: [[Perform reaction abilities]]
 +
0018b274 - 0018b348: [[Store used weapon]] based on action menu byte
 +
0018b34c - 0018b9f4: [[Pre Formula Setup (FDC)]]
 +
0018b9f8 - 0018ba40: [[Remove Status]]
 +
0018ba44 - 0018bcec: [[set some data for current attack]]
 +
0018bcf0 - 0018bd30: [[Called by Nullify Action]] - Glain
 +
0018bd34 - 0018bd70: [[Remove Knockback Flag]] | [[Possibly nullify steal item]]
 +
0018bd74 - 0018bdd0: [[Current Action Data Nulling]]
 +
0018bdd4 - 0018be04: [[Null Some Status Data]]
 +
0018be08 - 0018c67c: [[Main Reaction Routine - performs ability effects]]
 +
0018c680 - 0018c754: [[Poach Inventory Routine]]
 +
0018c758 - 0018c858: [[some kind of ENTD/Unit manipulation]]
 +
0018c85c - 0018c91c: [[Level up/down ability]]
  
00068b14 - 00068b30: [[Call palette routine 6]]
+
==Reaction processing==
 +
0018c920 - 0018c964: [[Check if unit can react 1]]
 +
0018c968 - 0018c99c: [[Check if unit can react]]
 +
0018c9a0 - 0018c9e0: [[Reaction check]]
 +
0018c9e4 - 0018cafc: [['Reflect', Blade Grasp, and Arrow Guard]]
 +
0018cb00 - 0018cc30: [[Sunken State, Caution, Dragon Spirit, etc. usability]]
 +
0018cc34 - 0018ccd4: [[MP Switch, Distribute, and Damage Split usability]]
 +
0018ccd8 - 0018ce00: [[PA Save, MA Save, Speed Save Regenerator, HP Restore, MP Restore, Critical Quick, Meatbone Slash, Auto Potion, Gilgame Heart check]]
 +
0018ce04 - 0018ce84:  [[Counter, Counter Tackle, Counter Flood, Brave Up, Dragon Spirit, Sunken State, and Caution Usability usability]]
 +
0018ce88 - 0018cef0: [[PA Save, MA Save, Speed Save, Regenerator, Auto Potion, Gilgame Heart usability]]
 +
0018cef4 - 0018cf70: [[Critical Quick, HP Restore, MP Restore, Meatbone Slash usability]]
 +
0018cf74 - 0018cfe4: [[Face Up and Absorb Used MP usability]]
 +
0018cfe8 - 0018d04c: [[Reflect "Reaction"]]
 +
0018d050 - 0018d0e4: [[Blade Grasp Usability]]
 +
0018d0e8 - 0018d1b4: [[Arrow Guard Usability]]
 +
0018d1b8 - 0018d2a4: [[MP Switch Usability]]
 +
0018d2a8 - 0018d314: [[Distribute Usability]]
 +
0018d318 - 0018d380: [[Damage Split Usability]]
 +
0018d384 - 0018d3bc: [[Chance to React]]
  
00068b34 - 00068b50: [[Call palette routine 7]]
+
==Post Action Handling==
 +
0018d3c0 - 0018d56c: [[Steal Routine]]
 +
0018d570 - 0018d61c: [[Stat Increment/Decrement]]
 +
0018d620 - 0018d708: [[Attacker's Earned Experience]]
 +
0018d70c - 0018d7c4: [[Store target stats pointer data]] calls main action loading routine
 +
0018d7c8 - 0018d864: [[Poison and Regen]]
 +
0018d868 - 0018d90c: [[Transparent removal routine]]
 +
0018d910 - 0018da00: [[Process Expiring Statuses]] | [[status CT decrement and innate statuses]]
 +
0018da04 - 0018da40: [[Set Action Target Variables]] | [[target pointers]]
 +
0018da44 - 0018da84: [[Crystal, Dead, Jump, Petrify, Treasure check ]]
 +
0018da88 - 0018dbac: [[Poison Marsh Routine]]
 +
0018dbb0 - 0018dd40: [[Traps Routine]]
 +
0018dd44 - 0018df08: [[Move-HP Up, Move-MP Up, Gained Exp Up]]
 +
0018df0c - 0018dff4: [[Prep gained exp/jp/level/job level]] + other stuff?
 +
0018dff8 - 0018e078: [[Main Reaction subroutine - ENTD/ID stuff]] - Calculate Unlocked Jobs/set ability element = dark?
 +
0018e07c - 0018e1ac: [[Post Ability Hardcoding]] dead hp=0, remove ability CT, remove player control
 +
0018e1b0 - 0018e244: [[Remove control based on status]]
 +
0018e248 - 0018e30c: [[Inflicted status CT setting, xfer last used CT]]
 +
0018e310 - 0018e5e0: [[Store status,modified ENTD for current attack]]
 +
0018e5e4 - 0018e624: [[Transfer Considered Action Data to AI]] - duplicated [[Store current attack data into AI]]
 +
0018e628 - 0018e65c: [[0018e628_-_0018e65c]]
 +
[[0018e660 - 0018e6b4]]: Used by Weather Elemental effects routine
 +
0018e6b8 - 0018e8a8: [[Process Learn on Hit]] | [[Learn on hit 1]]
 +
0018e8ac - 0018e9b8: [[Learn Used Ability]] | [[Learn on hit 2]]
 +
0018e9bc - 0018e9e4: [[Enable Special Status Flags]] | [[Determine if Status Flags can be Enabled]]
 +
0018e9e8 - 0018ea94: [[Item quantity increment for steal/break?]]
 +
0018ea98 - 0018eb4c: [[Add price of item / 4 to total gil]]
 +
0018eb50 - 0018ec0c: [[Handle Steal Exp]] | [[Apply Exp gain / Level up]]
 +
0018ec10 - 0018ec40: [[Store targeting/executing state, call 18e07c]]
 +
0018ec44 - 0018ed78: [[Apply Unit Action Status Removal]] | [[More status infliction/removal]] also deals with innate status
 +
0018ed7c - 0018edf4: [[Sort target list]] at 80193868
 +
0018edf8 - 0018ee20: [[Store ability data]] 80193868 + 0x10 bytes
 +
0018ee24 - 0018ee64: [[Count number of targets hit by ability]]
 +
0018ee68 - 0018ee9c: [[store 8019837c if not reacting]]
 +
0018eea0 - 0018eed4: [[Random Process, gives a number between 0-7fff]]
 +
0018eed8 - 0018ef28: [[Random Process, (gives a random based on r4 (MOD) and checks against r5 (chance to work))]]
 +
0018ef2c - 0018ef30: jr r31
 +
0018ef34 - 0018f034: [[Current Action Attacker Data Setting]]
 +
0018f038 - 0018f2ac: [[Mimic ability setting]]
 +
0018f2b0 - 0018f4c4: [[Map Max X,Y, targetable panel checks]]
 +
0018f4c8 - 0018f4d4: [[Load last used ability]]
 +
0018f4d8 - 001941f4:
 +
0018f510 - 0018f610:  ????? Table
 +
0018f624 - 0018f7a0:  Formula Table
  
00068b54 - 00068b90: [[Set targets animation 1]] based on attack type
+
==AI Calculations==
 +
00193d48 - 00193e4c: AI Return addresses
 +
00193e50 - 001941f4: [[Main AI action setup]]?
 +
001941f8 - 00194310: [[Acting Unit's Data Setup]] (AI?)
 +
00194314 - 0019456c: [[Set type of target for all targets]]
 +
00194570 - 00194718: [[Some targetability setting]]
 +
0019471c - 00194908: [[Set AI flags for target consideration]]
 +
0019490c - 00194940: [[Store main target ID and focus on target flag]]
 +
00194944 - 00194e54: [[AI movement/panel data setting]]
 +
00194e58 - 001957bc: [[Set AI ability considerations for all units and self]]
 +
001957c0 - 00195874: [[Some type of checking algorithm]]
 +
00195878 - 00195d90: [[AI Ability Data Setting]]  *This is called when ability is chosen by AI, r4 = address of move in units move list
 +
    00195944 - 001959d0: [[AI Ability Data Setting - Attack]]
 +
    001959d4 - 00195a20: [[AI Ability Data Setting - AI Item Inventory]]
 +
    00195a24 - 00195a2c: [[AI Ability Data Setting - Katana Inventory]]
 +
    00195a30 - 00195a8c: [[AI Ability Data Setting - Weapon Inventory]]
 +
    00195a90 - 00195b9c: [[AI Ability Data Setting - Jump]]
 +
    00195ba0 - 00195bb8: [[AI Ability Data Setting - Charge]]
 +
    00195bbc - 00195bfc: [[AI Ability Data Setting - Arithmeticks]]
 +
    00195c00 - 00195d90: [[AI Ability Data Setting - Default]]
 +
00195d94 - 00195f68: [[AI Initial Targeting Selection]]
 +
00195f6c - 00195f88: [[Initialize some AI Data (mount, base hit %)]]
 +
00195f8c - 00196198: [[set current ability CT/status change]]
 +
0019619c - 0019629c: [[Non-Specific AI AutoBattle (Enemies)]]
 +
001962a0 - 00196308: [[Get Longest Range Ability or Move]]
 +
[[0019630c - 00196388]]:
 +
0019638c - 00196898: [[Map movement decision/data setting]]
 +
[[0019689c - 00196904]]:
 +
[[00196908 - 00196938]]:
 +
[[0019693c - 00196ad8]]:
 +
[[00196adc - 00196c88]]:
 +
00196c8c - 00196ce4: [[Check target type]] (r2 = 1 if target can't be targeted/dead without? reraise)
 +
00196ce8 - 00196dac: [[Check if Unit can be Targeted (Cryst/Trea/Mount/Trans)]]
 +
[[00196db0 - 00196e1c]]:
 +
[[00196e20 - 00196ef0]]:
 +
[[00196ef4 - 00196fc0]]:
 +
[[00196fc4 - 001970b8]]:
 +
[[001970bc - 001971b4]]:
 +
001971b8 - 00197534: [[Set chosen ability/target for AI status]] (berserk, blood suck, confuse, frog, chicken)
 +
00197538 - 001978e0: [[Store ability/skillset data, set AI settings for ability]]
 +
001978e4 - 00197958: [[Find Direction of Target]]
 +
0019795c - 00197b28: [[Range Calculation]]
 +
[[00197b2c - 00197c64]]:
 +
00197c68 - 00197d08: [[Checks map max X and Y]]
 +
00197d0c - 00197e5c: [[Find which units are active]]
 +
00197e60 - 00197f10: [[Chose Move from Move List]]
 +
00197f14 - 00197ff0: [[Auto Battle Handling]]
 +
00197ff4 - 001982d4: [[Choose Target and Set a bunch of stuff]]
 +
[[001982d8 - 001984e8]]:
 +
[[001984ec - 00198818]]:
 +
[[0019881c - 00198b00]]:
 +
00198b04 - 00198d7c: [[Find Peril Most Unit (00198b04)]]
 +
00198d80 - 00198dec: [[Check for 0x00 status]]
 +
[[00198df0 - 00198e5c]]:
 +
[[00198e60 - 00199058]]:
 +
[[0019905c - 00199120]]:
 +
00199124 - 00199368: [[Calculate Physical Target]]
 +
0019936c - 0019939c: [[Calculate Distance Between Units]]
 +
[[001993a0 - 00199494]]:
 +
[[00199498 - 001994f4]]:
 +
001994f8 - 00199718: [[See if able to move to target]]
 +
0019971c - 001998c4: [[Check for good units to target (based on distance,status,coordinate)]]
 +
001998c8 - 001999c4: [[Check if Regen/Charm/DM/Reraise/DA Can be Inflicted]]
 +
[[001999c8 - 00199b94]]:
 +
00199b98 - 00199c84: [[Calculate Clockticks Until Unit Acts]]
 +
00199c88 - 00199d1c: [[Get number of clockticks till able to revive dead unit]]
 +
00199d20 - 00199ec4: [[Store hardcoded AI stuff (blood suck, frog, berserk abilities)]]
 +
00199ec8 - 0019a2c8: [[Usable Ability Setting/ENTD AI Calculations]]
 +
0019a2cc - 0019a2ec: [[Dividend * 4 / Divisor]]
 +
0019a2f0 - 0019a528: [[Set AI Flags/Usable Abilities]]
 +
0019a52c - 0019a5f4: [[Store Weapon? Attack Data]]
 +
0019a5f8 - 0019aa4c: [[Usable Ability Setting]]
 +
0019a63c - 0019a66c:  [[Part of the Weapon Inventory]]
 +
0019a670 - 0019aa4c: [[Ability Loading]]
 +
0019aa50 - 0019ab04: [[Load Known Ability Flag]]
 +
0019ab08 - 0019ab44: [[Transfer Halfword Values]]
 +
0019ab48 - 0019ab74: [[Transfer Byte Values]]
 +
0019ab78 - 0019abb0: [[Word Nulling]]
 +
0019abb4 - 0019ad70: [[Some Map calculations - height diff., coordinates]]
 +
[[0019ad74 - 0019ae2c]]: Determine if Height Difference < 3
 +
[[0019ae30 - 0019ae54]]:
 +
[[0019ae58 - 0019aeec]]:
 +
[[0019aef0 - 0019af14]]:
 +
0019af18 - 0019b308: [[AI ability use control routine]]
 +
[[0019b30c - 0019b4f0]]:
 +
[[0019b4f4 - 0019b6ac]]:
 +
0019b6b0 - 0019b750: [[Calculate Height Difference Between Units]]
 +
0019b754 - 0019b7b4: [[See if elemental ability can be used]]
 +
[[0019b7b8 - 0019bb1c]]:
 +
[[0019bb20 - 0019bbb8]]: [[Check Unit for Crystal or Treasure Status]]
 +
[[0019bbbc - 0019bf28]]:
 +
[[0019bf2c - 0019c208]]: [[Find Highest Target Priority in Ability Range (0019bf2c)]]
 +
[[0019c20c - 0019c27c]]:
 +
[[0019c280 - 0019c3d0]]: [[Start searching for Highest Target Priority (0019c280)]]
 +
[[0019c3d4 - 0019c8e8]]: [[Evaluate Linear Ability Behaviors]]
 +
[[0019c8ec - 0019cb90]]: [[Check if Linear Ability hits anything (0019c8ec)]]
 +
0019cb94 - 0019cd98: [[Some height/Map coordinate calculation for all units]]
 +
[[0019cd9c - 0019d214]]:
 +
0019d218 - 0019d290: [[See if any units are on target panel]]
 +
0019d294 - 0019d304: [[Find Unit at Coordinates (0x19d294)]] | [[Get unit that matches coordinates]]
 +
[[0019d308 - 0019d378]]:
 +
0019d37c - 0019db7c: [[AI End of turn, in between turn, etc.]]
 +
[[0019db80 - 0019dca8]]:
 +
0019dcac - 0019dcb8: [[Store Skillset = 0]]
 +
0019dcbc - 0019dd88: [[Call AI Ability Processing]]
 +
0019dd8c - 0019e15c: [[AI ability processing]]
 +
0019e160 - 0019e374: [[Transfer Unit Data to AI Data]]
 +
0019e378 - 0019e53c: [[Transfer AI Data to Unit Data]]
 +
0019e540 - 0019e5d4: [[See if any unit decided to use an ability]]
 +
0019e5d8 - 0019ef20: [[AI Ability Use Decisions]]
 +
0019ef24 - 0019efac: [[Check if Status Should/Can be Added]]
 +
[[0019efb0 - 0019f018]]:
 +
0019f01c - 0019f0d4: [[Set unit untargetable based on 19f0d8 routine]]
 +
0019f0d8 - 0019f158: [[See if ability should be used based on CT]]
 +
0019f15c - 0019f254: [[Status/CT based decision]]
 +
0019f258 - 0019f2a0: [[Save Coordinates to Temp Unit]] | [[Store units coordinates]]
 +
0019f2a4 - 0019f2f0: [[Transfer Unit Coordinates to AI]]
  
00068b94 - 00068bd0: [[Set targets animation 2]] based on attack type
+
==Effect, Projectile, & Particle Handling==
 
+
001a0e80 - 001a0f6c: [[Effect Palette Setup]]
00068bd4 - 00068c14: [[Jump to post action display]]
+
[[001a0f70 - 001a0f84]]:
 
+
[[001a0f88 - 001a0f9c]]:
00068c18 - 00068c7c: [[Set Bow Hardcoding]]
+
001a0fa0 - 001a0fd0: [[Set Effect Frame Data Pointer]] | [[Get Start of Frame Pointers Address]]
 
+
[[001a0fa0 - 001a0fd4]]:
00068c80 - 00068cc0: [[Call Bow Hardcoding routine]]
+
001a0fd4 - 001a100c: [[Get Start of Parameter Sets Address]]
 
+
[[001a0fd8 - 001a100c]]:
00068cc4 - 00068d04: [[Call Bow Hardcoding routine]]
+
001a1010 - 001a1040: [[Get Header before Motion Data Address]]
 
+
001a1044 - 001a1074: [[Get Coordinate Data Address]]
00068d08 - 00068e2c: [[Status/sprite transformation/animation display setting]]
+
001a1078 - 001a10a8: [[Get Motion Data Address]]
 
+
001a10ac - 001a10e8: [[Get Misc. Data and Palette Data Addresses]]
00068e30 - 00068e54: [[Jump to 68d08]]
+
001a10ec - 001a1194: [[Some sound effect prep]]
 
+
001a1198 - 001a11c8: [[Get (Unknown) Data Address]]
00068e58 - 00068e7c: [[Jump to 68d08 2]]
+
[[001a11cc - 001a11fc]]:
 
+
[[001a1200 - 001a1240]]:
00068e80 - 000690f4: [[Special Status Flag Enabling?]]
+
[[001a1244 - 001a1284]]:
 
+
[[001a1288 - 001a12a0]]:
000690f8 - 0006912c: [[Jump to set item graphic/palette]] (83758)
+
001a12a4 - 001a12d8: [[Load LBA sector and Byte
 
 
[[00069130 - 00069250]]:
 
 
 
00069254 - 000692b8: [[Set some data for Mounted Units]]
 
 
 
000692bc - 00069338: [[Set Animation/Facing for Mounted Units]]
 
 
 
[[0006933c - 000693f0]]:
 
 
 
[[000693f4 - 000694d4]]:
 
 
 
[[000694d8 - 00069740]]:
 
 
 
[[00069744 - 000699f0]]:
 
 
 
[[000699f4 - 00069af4]]:
 
 
 
[[00069af8 - 00069bf4]]:
 
 
 
[[00069bf8 - 00069cf8]]:
 
 
 
[[00069cfc - 00069df8]]:
 
 
 
[[00069dfc - 00069e64]]:
 
 
 
00069e68 - 00069edc: [[Initialize Units Coordinates, Animation, Facing]]
 
 
 
00069ee0 - 00069f10: [[Transfer Palette and store 0x7F in misc data]]
 
 
 
[[00069f14 - 0006a07c]]:
 
 
 
[[0006a080 - 0006a208]]:
 
 
 
0006a20c - 0006a37c: [[Move target coordinates after knockback]]
 
 
 
[[0006a380 - 0006a534]]:
 
 
 
[[0006a538 - 0006a7bc]]:
 
 
 
[[0006a7c0 - 0006aa7c]]:
 
 
 
[[0006aa80 - 0006ad14]]:
 
 
 
[[0006ad18 - 0006af78]]:
 
 
 
[[0006af7c - 0006b95c]]:
 
 
 
[[0006b960 - 0006b990]]:
 
 
 
[[0006b994 - 0006ba34]]:
 
 
 
0006ba38 - 0006bad4: [[Palette adjustment based on Tile Type]]
 
 
 
[[0006bad8 - 0006bbf8]]:
 
 
 
0006bbfc - 0006bce0: [[Store Coordinate,Mount,Animation Data]]
 
 
 
[[0006bce4 - 0006bda4]]:
 
 
 
[[0006bda8 - 0006be88]]:
 
 
 
[[0006be8c - 0006c020]]:
 
 
 
[[0006c024 - 0006c2b8]]:
 
 
 
[[0006c2bc - 0006c31c]]:
 
 
 
[[0006c320 - 0006c3d4]]:
 
 
 
[[0006c3d8 - 0006c418]]:
 
 
 
[[0006c41c - 0006c4f4]]:
 
 
 
[[0006c4f8 - 0006c78c]]:
 
 
 
[[0006c790 - 0006c874]]:
 
 
 
[[0006c878 - 0006c948]]:
 
 
 
[[0006c94c - 0006ca38]]:
 
 
 
0006ca3c - 0006cacc: [[test]]
 
 
 
[[0006cad0 - 0006cbb4]]:
 
 
 
[[0006cbb8 - 0006cc90]]:
 
 
 
0006cc94 - 0006d05c: [[Some Knockback Handling]]
 
 
 
[[0006d060 - 0006d19c]]:
 
 
 
[[0006d1a0 - 0006d284]]:
 
 
 
[[0006d288 - 0006d340]]:
 
 
 
[[0006d344 - 0006d430]]:
 
 
 
[[0006d434 - 0006d594]]:
 
 
 
[[0006d598 - 0006d798]]:
 
 
 
[[0006d79c - 0006d7c0]]:
 
 
 
0006d7c4 - 0006d7e0: [[Call Initialize Units Coordinates, Animation, Facing ]]
 
 
 
[[0006d7e4 - 0006d814]]:
 
 
 
[[0006d818 - 0006db0c]]:
 
 
 
0006db10 - 0006dc88: [[Knockback Processing]]
 
 
 
0006dc8c - 0006dda8: [[Knockback with bows?]]
 
 
 
0006ddac - 0006dde8: [[Transfer Target Coordinates (knockback)]] knockback with bows?
 
 
 
0006ddec - 0006e558: [[free cursor input related]]
 
 
 
0006e55c - 0006e5bc: [[Store Name and data of unit selected by cursor]]
 
 
 
0006e5c0 - 0006e630: [[Store Name and Data of unit selected by cursor 2]]
 
 
 
0006e634 - 0006e6ac: [[Store Casting Units Name and Data selected by cursor]]
 
 
 
[[0006e6b0 - 0006e7c4]]:
 
 
 
0006e7c8 - 0006eed8: [[Free Cursor Selection Routine]]
 
 
 
0006eedc - 0006eeec: [[Set Game Flow Variable to 1]]
 
 
 
0006eef0 - 0006eefc: [[Set Game Flow Variable to 0]]
 
 
 
[[0006ef00 - 0006f138]]:
 
 
 
0006f13c - 0006f170: [[Rotate Map (Counterclockwise?) 2]] L1 controller input
 
 
 
0006f174 - 0006f1a4: [[Rotate Map (Counterclockwise?)]]
 
 
 
0006f1a8 - 0006f1dc: [[Rotate Map (Clockwise?) 2]] R1 Controller input
 
 
 
0006f1e0 - 0006f214: [[Rotate Map (Clockwise?)]]
 
 
 
[[0006f218 - 0006f288]]: [[L1 and R1 rotation]]
 
 
 
[[0006f28c - 0006f31c]]:
 
 
 
[[0006f320 - 0006f4ac]]:
 
 
 
[[0006f4b0 - 0006f5b8]]: [[Change Map Zoom 2]]
 
 
 
[[0006f5bc - 0006f630]]:
 
 
 
0006f634 - 0006f674: [[Change Map Zoom]] (L2 Controller Input)
 
 
 
[[0006f678 - 0006f7c0]]:
 
 
 
[[0006f7c4 - 0006f8c4]]: [[Tilt Map/Zoom 2]]
 
 
 
[[0006f8c8 - 0006f964]]:
 
 
 
0006f968 - 0006f9a8: [[Tilt Map/Zoom]](R2 Controller Input)
 
 
 
[[0006f9ac - 0006fb4c]]:
 
 
 
[[0006fb50 - 0006fc04]]:
 
 
 
[[0006fc08 - 0006fc64]]:
 
 
 
[[0006fc68 - 0006fdf4]]:
 
 
 
[[0006fdf8 - 0006fe54]]:
 
 
 
[[0006fe58 - 000700b8]]:
 
 
 
[[000700bc - 000702e0]]:
 
 
 
[[000702e4 - 0007063c]]:
 
 
 
[[00070640 - 000707c0]]:
 
 
 
[[000707c4 - 0007081c]]:
 
 
 
00070820 - 00070994: [[Some Tile - map rotation interaction]]
 
 
 
00070998 - 000709f8: [[Set casting unit ID = FF 2]]
 
 
 
000709fc - 00070a34: [[Set casting unit ID = FF 1]]
 
 
 
00070a38 - 00070b78: [[Some system routines for ramza crystal, ability CT resolution]]
 
 
 
00070b7c - 00070c00: [[Store ENTD flags into misc data w/o control flag]]
 
 
 
00070c04 - 00070c74: [[Set next script = action menus]]Pressed confirm while not highlighting any unit, also happens after completing move
 
*Stores Script 0x03
 
 
 
[[00070c78 - 00070cd8]]:
 
 
 
00070cdc - 00070d14: [[Store next Battle flow script = 1]] (Select pressed during free cursor)
 
 
 
[[00070d18 - 00070dd8]]:
 
 
 
[[00070ddc - 00070e20]]:
 
 
 
[[00070e24 - 00070e68]]:
 
 
 
00070e6c - 00071004: [[In between turn events]] mimic, ability cast, traps, etc.
 
 
 
[[00071008 - 000711a0]]: - ???? happened for me before and after Mimic action
 
*Stores Script 0x27
 
 
 
[[000711a4 - 000712d4]]: - This happened after music started. I believe the map had not been shown yet. Was in mid-rotation of map if i remember correctly. Please test.
 
*Stores Script 0x27
 
 
 
[[000712d8 - 00071348]]:
 
 
 
0007134c - 0007139c: [[Highlight units based on team]] (Square pressed during free cursor)
 
 
 
000713a0 - 00071430: [[Menu stuff?]] - selecting the active unit.
 
*Stores Script 0x04
 
 
 
[[00071434 - 000714f0]]:- every time you select a unit, and there are choices. For example, selecting one of your own non active units, or checking enemy unit status. Number does not change if you go deeper into the menus
 
*Stores Script 0x04
 
 
 
000714f4 - 000715a4: [[Menu stuff]]
 
 
 
[[000715a8 - 000715e4]]:- pressing select to read further information on an action command or status screen. Basically any time while the above is true- Pressing Cancel on a unit to check how far they can move.
 
*Stores Script 0x06, 0x07
 
 
 
[[000715e8 - 00071664]]:
 
 
 
[[00071668 - 00071698]]:- Pressing Triangle to bring up the AT, Unit list and Options. Does not change if you go deeper into the menus unless you select a unit in AT list.
 
*Stores Script 0x08
 
 
 
[[0007169c - 000716d8]]:
 
 
 
[[000716dc - 00071718]]:- pressing select while in the AT, Unit list and Options. Pressing Select while in Unit List does not change number.
 
*Stores Script 0x09
 
 
 
0007171c - 000717c8: [[Get next acting unit?]] - Selecting a unit in the AT list.
 
*Stores Script 0x0a
 
 
 
[[000717cc - 00071820]]:- Pressed "Move" Command
 
*Stores Script 0x0c
 
 
 
[[00071824 - 00071878]]:
 
 
 
[[0007187c - 00071928]]:- Pressed Circle to remove the reminder on how to move a unit, also after removing "Select within movable range" box
 
*Stores Script 0x0d
 
 
 
[[0007192c - 00071980]]:- "select within movable range" box appeared. selected tree (unpathable) as movement location. works for spaces outside of range as well
 
*Stores Script 0x0f
 
 
 
[[00071984 - 00071a78]]: - selected a spot within legal distance (blue square)
 
*Stores Script 0x10
 
 
 
[[00071a7c - 00071ab4]]:
 
 
 
 
 
[[00071ab8 - 00071b48]]:- blue squares disappeared, unit walks to location
 
*Stores Script 0x11
 
 
 
[[00071b4c - 00071c88]]: - unit finishes walking to location "are you sure you want to move here?" box appears
 
*Stores Script 0x12
 
 
 
[[00071c8c - 00071ce8]]: - happens right after confirming move command, attack command
 
*Stores Script 0x25
 
 
 
[[00071cec - 00071de4]]:
 
 
 
[[00071de8 - 00071e64]]:
 
 
 
[[00071e68 - 00071ee4]]:[[Post Movement Display]]- confirm move command
 
 
 
00071ee8 - 000723d0: [[Main Post Movement ]]
 
*Stores Script 0x15
 
 
 
000723d4 - 0007245c: [[Post Movement Display Prep]]
 
 
 
[[00072460 - 00072540]]: - begin choosing facing for Wait
 
*Stores Script 0x13
 
 
 
[[00072544 - 00072670]]: - Choose Wait action, or Move/Act used up
 
*Stores Script 0x14
 
 
 
[[00072674 - 00072708]]:
 
 
 
0007270c - 00072738: [[Turn sprite towards attack]]
 
 
 
0007273c - 00072924: [[Movement/action direction setting?]]
 
 
 
00072928 - 00072a0c: [[Rider/Mount X/Y/Facing Setting?]]
 
 
 
[[00072a10 - 00072a84]]:
 
 
 
00072a88 - 00072acc: [[Check if Facing Needs Changed?]]
 
 
 
[[00072ad0 - 00072b10]]: - also happens after confirming move command or attack command, happens after 0x71c9c
 
*Stores Script 0x26
 
 
 
[[00072b14 - 00072b4c]]:
 
 
 
00072b50 - 00072bec: [[Range 1 Ability Used]]
 
*Stores Script 0x16
 
- happens right after 0x73bac, unit attacks, this section will happen twice for 2 swords attacks
 
*Stores Script 0x2d
 
 
 
00072bf0 - 00072ce4: [[Set item/throw stone ability display stuff?]]
 
 
 
[[00072ce8 - 00072d88]]:- unit stands straight, break happened twice in a row, goes back to 0x73bac for 2 swords
 
ori r2,r0,0x2f
 
*Stores SCript 0x2f
 
 
 
[[00072d8c - 00073160]]:
 
 
 
[[00073164 - 000731d4]]:
 
 
 
[[000731d8 - 0007324c]]:
 
 
 
[[00073250 - 000732c4]]:
 
 
 
000732c8 - 000734c8: [[Battle Message Display]]- attack finishes, this section will happen twice for 2 swords attacks
 
*Stores Script 0x2e
 
 
 
[[000734cc - 00073634]]:- finish Attack command, happened 3x in a row
 
*Stores Script 0x28
 
 
 
[[00073638 - 000736d0]]:
 
 
 
000736d4 - 000739c8: [[Ability effect calculations]]  critical hit, reflect, etc.
 
 
 
000739cc - 00073b98: [[Action phase control]]- ???? Something about Mimic- also happens after executing command, happens after 0x7418c
 
*Stores Script 0x29
 
*Stores Script 0x29
 
 
 
00073b9c - 00073ee8: [[set some target coordinates/attacker animation, others]] - unit status compltely gone, unit is about to attack, this section will happen twice for 2 swords attacks
 
*Stores Script 0x2c
 
 
 
00073eec - 00073fb4: [[Set damage display type based on ability]] - ???? Only during Mimic
 
*Stores Script 0x2b (Return from mimic?)
 
 
 
[[00073fb8 - 00073fdc]]:- happens after 0x73a78, unit status at bottom of screen almost completely disappeared. Means one of the previous menus was to hide the unit status
 
*Stores Script 0x2a
 
 
 
00073fe0 - 00074064: [[Store animation and facing based on animation flag 1]]- Execute action chosen
 
*Stores Script 0x1c
 
 
 
[[00074068 - 000740d0]]:
 
 
 
[[000740d4 - 00074200]]: - happens right after choosing Execute
 
*Stores Script 0x1e
 
 
 
[[00074204 - 000742c4]]:- ????happened during Mimic
 
*Stores Script 0x1e
 
 
 
[[000742c8 - 00074304]]:
 
 
 
[[00074308 - 0007446c]]: - choosing valid location (red box)
 
*Stores Script 0x19
 
 
 
[[00074470 - 000744c4]]:- choosing out of range target location
 
*Stores Script 0x18
 
 
 
[[000744c8 - 000745a8]]: - happens right before red boxes appear for targetting
 
*Stores Script 0x17
 
 
 
[[000745ac - 000746a8]]: - confirming location, "Executing action" box appears
 
*Stores Script 0x1b
 
 
 
[[000746ac - 000747b4]]:
 
 
 
[[000747b8 - 00074810]]:
 
 
 
[[00074814 - 00074858]]:
 
 
 
[[0007485c - 0007492c]]:
 
 
 
[[00074930 - 000749c4]]:
 
 
 
[[000749c8 - 00074a38]]:
 
 
 
[[00074a3c - 00074abc]]:
 
 
 
[[00074ac0 - 00074af4]]:
 
 
 
[[00074af8 - 00074b14]]: - Something about Mimic
 
*Stores Script 0x17
 
 
 
[[00074b18 - 00074b34]]:
 
 
 
[[00074b38 - 00074b64]]:
 
 
 
[[00074b68 - 00074ba8]]:
 
 
 
[[00074bac - 00074bf4]]:
 
 
 
00074bf8 - 00074dcc: [[Free Cursor Controller Input]]
 
*Script 0x00
 
 
 
00074dd0 - 00074e28: [[Get Tile Information]] when Select is pressed
 
*Script 0x01
 
 
 
[[00074e2c - 00074e90]]: Controller input related
 
*Script 0x02
 
 
 
[[00074e94 - 00074f58]]: Action Menus
 
*Script 0x03
 
 
 
00074f5c - 0007530c:  [[Decide what to do based on skillset/ability selections?]]
 
*Script 0x04
 
 
 
00075310 - 000755f8: [[Set move/act based on skillset]] mainly for defend/eq.change - also sets other flags
 
*Script 0x05
 
 
 
[[000755fc - 0007568c]]:
 
*Script 0x06
 
 
 
[[00075690 - 00075718]]: has more controller input
 
*Script 0x07
 
 
 
[[0007571c - 000757c0]]: has more controller input
 
*Script 0x08
 
 
 
[[000757c4 - 0007581c]]:
 
*Script 0x09
 
 
 
[[00075820 - 00075878]]: has more controller input
 
*Script 0x0a
 
 
 
[[0007587c - 0007590c]]:
 
*Script 0x0f
 
 
 
[[00075910 - 00075c30]]:
 
*Script 0x10
 
 
 
[[00075c34 - 00075c9c]]:
 
*Script 0x11
 
 
 
[[00075ca0 - 00075d08]]:
 
*Script 0x12
 
 
 
[[00075d0c - 00075dac]]:
 
*Script 0x13
 
 
 
[[00075db0 - 00075e64]]:
 
*Script 0x14
 
 
 
[[00075e68 - 00075f0c]]:
 
 
 
[[00075f10 - 00076018]]:
 
 
 
[[0007601c - 000761c8]]:
 
 
 
[[000761cc - 00076298]]:
 
*Script 0x15
 
 
 
[[0007629c - 00076354]]:
 
*Script 0x17
 
 
 
[[00076358 - 0007642c]]:
 
 
 
[[00076430 - 00076654]]:
 
*Script 0x16
 
 
 
[[00076658 - 00076918]]: has learn from crystal, move XX up
 
*Script 0x18
 
 
 
[[0007691c - 000769ac]]:
 
*Script 0x19
 
 
 
[[000769b0 - 00076b78]]: while unit is moving?
 
*Script 0x1a
 
 
 
[[00076b7c - 00076be4]]:
 
*Script 0x1b
 
 
 
[[00076be8 - 00076c4c]]: Sets next script = 1?
 
*Script 0x1d
 
 
 
[[00076c50 - 00076d80]]:
 
*Script 0x1c
 
 
 
00076d84 - 00076f0c: stores animation/facing based on ability flags 1
 
*Script 0x1e
 
 
 
[[00076d84 - 00076f10]]:
 
 
 
[[00076f14 - 00076fcc]]:
 
*Script 0x1f -
 
 
 
[[00076fd0 - 00077094]]:
 
*Script 0x20
 
 
 
[[00077098 - 00077130]]:  Action occurring
 
*Script 0x21 -
 
 
 
[[00077134 - 0007719c]]: action related
 
*Script 0x22
 
 
 
[[000771a0 - 00077310]]: action related
 
*Script 0x23
 
 
 
[[00077314 - 00077374]]: loads effect LBA sector
 
*Script 0x24
 
 
 
[[00077378 - 000773b0]]: Item, throw stone hardcoding
 
*script 0x25
 
 
 
[[000773b4 - 000773f4]]:
 
 
 
[[000773f8 - 0007775c]]: Big action/ability display
 
*Script 0x26
 
 
 
[[00077760 - 000777e8]]:
 
*Script 0x27
 
 
 
[[000777ec - 0007799c]]: action related
 
*Script 0x28
 
 
 
[[000779a0 - 00077b54]]:
 
*Script 0x29
 
 
 
[[00077b58 - 00077bd4]]:
 
 
 
[[00077bd8 - 00077c04]]: small one
 
*Script 0x2a
 
 
 
[[00077c08 - 00077c34]]: also small
 
*Script 0x2b
 
 
 
[[00077c38 - 00077ca0]]:
 
*Script 0x2c
 
 
 
[[00077ca4 - 00077e18]]: controller input checked
 
*Script 0x2d
 
 
 
[[00077e1c - 00077e84]]:
 
*Script 0x2e
 
 
 
00077e88 - 00077f64: [[AI target processing?]]
 
*
 

Latest revision as of 15:00, 26 December 2024

BATTLE.BIN Data Tables

Animation & Display

00067000 - 00067794: Return Addresses
00067798 - 0006780c: ??? some data
00067810 - 000683b8: Return addresses and sparse data
000683c0 - 000683d0: Store AT list ID = 1
000683d4 - 000683e0: Store AT list ID = 0
000683e4 - 00068414: Transfer Unit's X/Y/Map Level
00068418 - 00068490: X/Y Data Gathering for Attacks?
00068494 - 00068530: Store Palette data for each unit
00068534 - 00068630: Palette modification based on team
00068634 - 00068678: Highlight units based on Team 2 (Square pressed during free cursor)
0006867c - 000686ac: Increment AT List ID
000686b0 - 00068764: AT List Check if Unit is Charging Ability
00068768 - 00068790: 
00068794 - 000687a0: Clear AT list ID
000687a4 - 000687b8: Clear 960f8 and 960fc
000687bc - 000687dc: Setup Secondary effect initialise table
000687e0 - 00068948: Set evade special effects based on Evade Type Weapon Break, Golem Hand, etc.
0006894c - 000689a0: Set evade type data and weapon element effect
000689a4 - 00068a1c: Set evade type data, item and throw stone hardcoding
00068a20 - 00068a70: Set Secondary Effect Struct
00068a74 - 00068a90: Zodiac Poof: Set Secondary Effect Struct
00068a94 - 00068ab0: Death Smoke: Set Secondary Effect Struct
00068ab4 - 00068ad0: Level Up: Set Secondary Effect Struct
00068ad4 - 00068af0: Venom Trap: Set Secondary Effect Struct
00068af4 - 00068b10: Splash: Set Secondary Effect Struct
00068b14 - 00068b30: Fall Dust Cloud: Set Secondary Effect Struct
00068b34 - 00068b50: Teleport: Set Secondary Effect Struct
00068b54 - 00068b90: Set targets animation 1 based on attack type
00068b94 - 00068bd0: Set targets animation 2 based on attack type
00068bd4 - 00068c14: Jump to post action display
00068c18 - 00068c7c: Set Bow Hardcoding
00068c80 - 00068cc0: Call Bow Hardcoding routine
00068cc4 - 00068d04: Call Bow Hardcoding routine Copy
00068d08 - 00068e2c: Status/sprite transformation/animation display setting
00068e30 - 00068e54: Update Status/Sprite/Animation Display By Unit Misc ID | Jump to 68d08
00068e58 - 00068e7c: Jump to 68d08 2
00068e80 - 000690f4: Special Status Flag Enabling
000690f8 - 0006912c: Jump to set item graphic/palette (83758) 
00069130 - 00069250:
00069254 - 000692b8: Set some data for Mounted Units
000692bc - 00069338: 0x692bc (WalkTo Animation inner routine for Mounted units?) | Set Animation/Facing for Mounted Units
0006933c - 000693f0:
000693f4 - 000694d4:
000694d8 - 00069740:
00069744 - 000699f0:
000699f4 - 00069af4:
00069af8 - 00069bf4:
00069bf8 - 00069cf8:
00069cfc - 00069df8:
00069dfc - 00069e64:
00069e68 - 00069edc: Initialize Units Coordinates, Animation, Facing
00069ee0 - 00069f10: Transfer Palette and store 0x7F in misc data
00069f14 - 0006a07c:
0006a080 - 0006a208:
0006a20c - 0006a37c: Move target coordinates after knockback
0006a380 - 0006a534:
0006a538 - 0006a7bc:
0006a7c0 - 0006aa7c:
0006aa80 - 0006ad14:
0006ad18 - 0006af78:
0006af7c - 0006b95c:
0006b960 - 0006b990:
0006b994 - 0006ba34:
0006ba38 - 0006bad4: Palette adjustment based on Tile Type
0006bad8 - 0006bbf8:
0006bbfc - 0006bce0: Store Coordinate,Mount,Animation Data | 0x6bbfc
0006bce4 - 0006bda4:
0006bda8 - 0006be88:
0006be8c - 0006c020:
0006c024 - 0006c2b8: 0x6c024
0006c2bc - 0006c31c:
0006c320 - 0006c3d4:
0006c3d8 - 0006c418:
0006c41c - 0006c4f4:
0006c4f8 - 0006c78c:
0006c790 - 0006c874:
0006c878 - 0006c948:
0006c94c - 0006ca38:
0006ca3c - 0006cacc: test
0006cad0 - 0006cbb4:
0006cbb8 - 0006cc90:
0006cc94 - 0006d05c: Some Knockback Handling
0006d060 - 0006d19c:
0006d1a0 - 0006d284:
0006d288 - 0006d340:
0006d344 - 0006d430:
0006d434 - 0006d594:
0006d598 - 0006d798:
0006d79c - 0006d7c0:
0006d7c4 - 0006d7e0: Call Initialize Units Coordinates, Animation, Facing 
0006d7e4 - 0006d814:
0006d818 - 0006db0c: Process Single Unit Movement
0006db10 - 0006dc88: Knockback Processing
0006dc8c - 0006dda8: Knockback with bows
0006ddac - 0006dde8: Transfer Target Coordinates (knockback) knockback with bows?

Free Cursor & Inputs During

0006ddec - 0006e558: free cursor input related
0006e55c - 0006e5bc: Store Name and data of unit selected by cursor
0006e5c0 - 0006e630: Store Name and Data of unit selected by cursor 2
0006e634 - 0006e6ac: Store Casting Units Name and Data selected by cursor
0006e6b0 - 0006e7c4: Free Cursor Selection Routine
0006e7c8 - 0006eed8: 
0006eedc - 0006eeec: Set Game Flow Variable to 1
0006eef0 - 0006eefc: Set Game Flow Variable to 0
0006ef00 - 0006f138:
0006f13c - 0006f170: Rotate Map (L1) 2 L1 controller input
0006f174 - 0006f1a4: Rotate Map (L1)
0006f1a8 - 0006f1dc: Rotate Map (R1) 2 R1 Controller input
0006f1e0 - 0006f214: Rotate Map (R1)
0006f218 - 0006f288: L1 and R1 rotation
0006f28c - 0006f31c:
0006f320 - 0006f4ac:
0006f4b0 - 0006f5b8: Change Map Zoom 2
0006f5bc - 0006f630: Player Camera Zoom (L1 Button)
0006f634 - 0006f674: Change Map Zoom (L2 Controller Input)
0006f678 - 0006f7c0: Camera Zoom Related (0x6f678)
0006f7c4 - 0006f8c4: Tilt Map/Zoom 2
0006f8c8 - 0006f964:
0006f968 - 0006f9a8: Tilt Map/Zoom(R2 Controller Input)
0006f9ac - 0006fb4c:
0006fb50 - 0006fc04:
0006fc08 - 0006fc64:
0006fc68 - 0006fdf4:
0006fdf8 - 0006fe54:
0006fe58 - 000700b8:
000700bc - 000702e0:
000702e4 - 0007063c:
00070640 - 000707c0:

Input & Between Actions

000707c4 - 0007081c: Process Unit Movement
00070820 - 00070994: Some Tile - map rotation interaction
00070998 - 000709f8: Set casting unit ID = FF 2
000709fc - 00070a34: Set casting unit ID = FF 1
00070a38 - 00070b78: Some system routines for ramza crystal, ability CT resolution
00070b7c - 00070c00: Store ENTD flags into misc data w/o control flag
00070c04 - 00070c74: Set next script = action menusPressed confirm while not highlighting any unit, also happens after completing move
// Stores Script 0x03
00070c78 - 00070cd8:
00070cdc - 00070d14: Store next Battle flow script = 1 (Select pressed during free cursor)
00070d18 - 00070dd8:
00070ddc - 00070e20:
00070e24 - 00070e68:
00070e6c - 00071004: In between turn events mimic, ability cast, traps, etc.
00071008 - 000711a0: - ???? happened for me before and after Mimic action
// Stores Script 0x27
000711a4 - 000712d4: - This happened after music started. I believe the map had not been shown yet. Was in mid-rotation of map if i remember correctly. Please test.
// Stores Script 0x27
000712d8 - 00071348:
0007134c - 0007139c: Highlight units based on team (Square pressed during free cursor)
000713a0 - 00071430: Menu stuff? - selecting the active unit.
// Stores Script 0x04
00071434 - 000714f0:- every time you select a unit, and there are choices. For example, selecting one of your own non active units, or checking enemy unit status. Number does not change if you go deeper into the menus
// Stores Script 0x04
000714f4 - 000715a4: Menu stuff
000715a8 - 000715e4:- pressing select to read further information on an action command or status screen. Basically any time while the above is true- Pressing Cancel on a unit to check how far they can move.
// Stores Script 0x06, 0x07
000715e8 - 00071664:
00071668 - 00071698:- Pressing Triangle to bring up the AT, Unit list and Options. Does not change if you go deeper into the menus unless you select a unit in AT list.
// Stores Script 0x08
0007169c - 000716d8:
000716dc - 00071718:- pressing select while in the AT, Unit list and Options. Pressing Select while in Unit List does not change number.
// Stores Script 0x09
0007171c - 000717c8: Get next acting unit - Selecting a unit in the AT list.
// Stores Script 0x0a
000717cc - 00071820:- Pressed "Move" Command
// Stores Script 0x0c
00071824 - 00071878:
0007187c - 00071928:- Pressed Circle to remove the reminder on how to move a unit, also after removing "Select within movable range" box
// Stores Script 0x0d
0007192c - 00071980:- "select within movable range" box appeared. selected tree (unpathable) as movement location. works for spaces outside of range as well
// Stores Script 0x0f
00071984 - 00071a78: - selected a spot within legal distance (blue square)
// Stores Script 0x10
00071a7c - 00071ab4: 
00071ab8 - 00071b48:- blue squares disappeared, unit walks to location
// Stores Script 0x11
00071b4c - 00071c88: - unit finishes walking to location "are you sure you want to move here?" box appears
// Stores Script 0x12
00071c8c - 00071ce8: - happens right after confirming move command, attack command
// Stores Script 0x25
00071cec - 00071de4:

Post Action Menuing

00071de8 - 00071e64: Level up animation and report
00071e68 - 00071ee4: Post Movement Display- confirm move command
00071ee8 - 000723d0: Main Post Movement 
// Stores Script 0x15
000723d4 - 0007245c: Post Movement Display Prep
00072460 - 00072540: - begin choosing facing for Wait
// Stores Script 0x13
00072544 - 00072670: - Choose Wait action, or Move/Act used up
// Stores Script 0x14
00072674 - 00072708:

Some Attack related Display Processing

0007270c - 00072738: Turn sprite towards attack
0007273c - 00072924: Movement/action direction setting
00072928 - 00072a0c: Rider/Mount X/Y/Facing Setting
00072a10 - 00072a84:
00072a88 - 00072acc: Check if Facing Needs Changed
00072ad0 - 00072b10: - also happens after confirming move command or attack command, happens after 0x71c9c
// Stores Script 0x26
00072b14 - 00072b4c:
00072b50 - 00072bec: Range 1 Ability Used
// Stores Script 0x16
- happens right after 0x73bac, unit attacks, this section will happen twice for 2 swords attacks
// Stores Script 0x2d
00072bf0 - 00072ce4: Set item/throw stone ability display stuff
00072ce8 - 00072d88:- unit stands straight, break happened twice in a row, goes back to 0x73bac for 2 swords
ori r2,r0,0x2f
// Stores SCript 0x2f
00072d8c - 00073160: Set_Post_Effect_Messages_data
00073164 - 000731d4 :Prep_Targets_Post_Action_message
000731d8 - 0007324c:
00073250 - 000732c4:
000732c8 - 000734c8: Battle Message Display- attack finishes, this section will happen twice for 2 swords attacks
// Stores Script 0x2e
000734cc - 00073634: Some post action (including learn on hit setup) - finish Attack command, happened 3x in a row
// Stores Script 0x28
00073638 - 000736d0:
000736d4 - 000739c8: Ability effect calculations  critical hit, reflect, etc.

Action Phase Control Related

000739cc - 00073b98: Action phase control- ???? Something about Mimic- also happens after executing command, happens after 0x7418c
// Stores Script 0x29
// Stores Script 0x29
00073b9c - 00073ee8: set some target coordinates/attacker animation, others - unit status compltely gone, unit is about to attack, this section will happen twice for 2 swords attacks
// Stores Script 0x2c
00073eec - 00073fb4: Set damage display type based on ability - ???? Only during Mimic
// Stores Script 0x2b (Return from mimic?)
00073fb8 - 00073fdc:- happens after 0x73a78, unit status at bottom of screen almost completely disappeared. Means one of the previous menus was to hide the unit status
// Stores Script 0x2a
00073fe0 - 00074064: Store animation and facing based on animation flag 1- Execute action chosen
// Stores Script 0x1c
00074068 - 000740d0:
000740d4 - 00074200: - happens right after choosing Execute
// Stores Script 0x1e
00074204 - 000742c4:- ????happened during Mimic
// Stores Script 0x1e
000742c8 - 00074304:
00074308 - 0007446c: Select Target Tile | - choosing valid location (red box)
// Stores Script 0x19
00074470 - 000744c4:- choosing out of range target location
// Stores Script 0x18
000744c8 - 000745a8: - happens right before red boxes appear for targetting
// Stores Script 0x17
000745ac - 000746a8: - confirming location, "Executing action" box appears
// Stores Script 0x1b
000746ac - 000747b4:
000747b8 - 00074810:
00074814 - 00074858:
0007485c - 0007492c:
00074930 - 000749c4:
000749c8 - 00074a38:
00074a3c - 00074abc:
00074ac0 - 00074af4:
00074af8 - 00074b14: - Something about Mimic
// Stores Script 0x17
00074b18 - 00074b34:
00074b38 - 00074b64:

Main BATTLE.BIN Loop

00074b68 - 00074ba8:
00074bac - 00074bf4: Free Cursor Controller Input
00074bf8 - 00074dcc: 
// Script 0x00 
00074dd0 - 00074e28: Get Tile Information when Select is pressed
// Script 0x01
00074e2c - 00074e90: Controller input related
// Script 0x02
00074e94 - 00074f58: Action Menus
// Script 0x03
00074f5c - 0007530c:  Decide what to do based on skillset/ability selections
// Script 0x04
00075310 - 000755f8: Set move/act based on skillset mainly for defend/eq.change - also sets other flags
// Script 0x05
000755fc - 0007568c:
// Script 0x06
00075690 - 00075718: has more controller input
// Script 0x07
0007571c - 000757c0: has more controller input
// Script 0x08
000757c4 - 0007581c:
// Script 0x09
00075820 - 00075878: has more controller input
// Script 0x0a
0007587c - 0007590c:
// Script 0x0f
00075910 - 00075c30:
// Script 0x10
00075c34 - 00075c9c:
// Script 0x11
00075ca0 - 00075d08:
// Script 0x12
00075d0c - 00075dac:
// Script 0x13
00075db0 - 00075e64:
// Script 0x14
00075e68 - 00075f0c:
00075f10 - 00076018:
0007601c - 000761c8:
000761cc - 00076298:
// Script 0x15
0007629c - 00076354:
// Script 0x17
00076358 - 0007642c:
00076430 - 00076654:
// Script 0x16
00076658 - 00076918: has learn from crystal, move XX up
// Script 0x18
0007691c - 000769ac:
// Script 0x19
000769b0 - 00076b78: while unit is moving?
// Script 0x1a
00076b7c - 00076be4:
// Script 0x1b
00076be8 - 00076c4c: Sets next script = 1?
// Script 0x1d
00076c50 - 00076d80: Ability Preview handling
// Script 0x1c
00076d84 - 00076f0c: stores animation/facing based on ability flags 1
// Script 0x1e
00076d84 - 00076f10:
00076f14 - 00076fcc:
// Script 0x1f - 
00076fd0 - 00077094:
// Script 0x20
00077098 - 00077130:  Action occurring
// Script 0x21 -
00077134 - 0007719c: action related
// Script 0x22
000771a0 - 00077310: action related
// Script 0x23
00077314 - 00077374: loads effect LBA sector
// Script 0x24
00077378 - 000773b0: Item, throw stone hardcoding
// script 0x25
000773b4 - 000773f4:
000773f8 - 0007775c: 0x773f8 | Big action/ability display 
// Script 0x26
00077760 - 000777e8:
// Script 0x27
000777ec - 0007799c: action related
// Script 0x28
000779a0 - 00077b54:
// Script 0x29
00077b58 - 00077bd4:
00077bd8 - 00077c04: small one
// Script 0x2a
00077c08 - 00077c34: also small
// Script 0x2b
00077c38 - 00077ca0:
// Script 0x2c
00077ca4 - 00077e18: controller input checked
// Script 0x2d
00077e1c - 00077e84:
// Script 0x2e
00077e88 - 00077f64: AI target processing?
// Script 0x2f
00077f68 - 0007802c:
// Script 0x30
00078030 - 0007809c: Controller input checked
// Script 0x31
000780a0 - 00078144:
// Script 0x0b
00078148 - 00078324: Copy 0x16e in unit data to misc data, display processing
// Script 0x0e
00078328 - 00078438:
// Script 0x0d
0007843c - 00078500:
// Script 0x0e
00078504 - 000785a8: this one looks cool
// Script 0x32
000785ac - 000787d8: checks each unit for something and controller input
// Script 0x33
000787dc - 000787f8:
000787fc - 00078960:
// Script 0x34
00078964 - 00078ac8:
// Script 0x37
00078acc - 00078bf0:
// Script 0x3a
00078bf4 - 00078d1c:
// Script 0x35
00078d20 - 00078e54:
// Script 0x38
00078e58 - 00078fb0:
// Script 0x36
00078fb4 - 000791e4:
// Script 0x39
000791e8 - 00079294:
00079298 - 00079a94:
00079a98 - 0007a1d0: Main BATTLE.BIN Loop | Game Flow Control routine
*Game Flow Control Return Addresses

Miscellaneous Processing & Get Data

0007a1d4 - 0007a214: Get casting unit's misc data data that matches 0x9112c
0007a218 - 0007a258: Get Source Unit Misc Data Pointer | Get Casting units Misc Data
0007a25c - 0007a2b4: Get Misc Data of unit that matches register inputs
0007a2b8 - 0007a3f4: Find Unit at Coordinates (Misc Data) (0x7a2b8) | Check if unit is on panel
0007a3f8 - 0007a4f0: Get misc data of unit that matches register inputs that isn't crystal/treasure
0007a4f4 - 0007a5cc: Some thing wtih check if chocobo is on panel
0007a5d0 - 0007a6e0: Get Overlapping Unit Misc Data Pointer
0007a6e4 - 0007a720: Get Unit Misc Data Pointer | Find Current Misc Unit Data Pointer (external ID)?
0007a724 - 0007a770: Get Unit Misc Data Pointer By Battle Unit Index | Find Misc Unit Data Pointer (checking for specific unit) | Get unit misc data that matches r4 ID
0007a774 - 0007a7b4: Count number of Crystals on map
0007a7b8 - 0007a83c:
0007a840 - 0007a964:
0007a968 - 0007a9ac:
0007a9b0 - 0007aa30:
0007aa34 - 0007abcc:
0007abd0 - 0007ac5c: Initialize some display data
0007ac60 - 0007aca8: Unit RGB/Sprite Type/etc Initialization
0007acac - 0007ad04: Initialize WEP1 sprite RGB
0007ad08 - 0007adb0: Initialize RGB and some more stuff
0007adb4 - 0007ae44: Initialize Status bubble sprite displays
0007ae48 - 0007aec8: Initialize item sprite display
0007aecc - 0007af04: Call store screen offsets to GTE
0007af08 - 0007af40:
0007af44 - 0007b4e8: Display Related (0x7af44)
0007b4ec - 0007b52c: Store Sprite Display Data
0007b530 - 0007b550:
0007b554 - 0007b588:
0007b58c - 0007b684:
0007b688 - 0007b6a4:
0007b6a8 - 0007b6c4:
0007b6c8 - 0007b928:
0007b92c - 0007b948:
0007b94c - 0007b968:
0007b96c - 0007b9cc: Store vx, vy, vz vectors
0007b9d0 - 0007c440:
0007c444 - 0007c808:
0007c80c - 0007cff4: Slope Calculations (HUGE)
0007cff8 - 0007d09c:
0007d0a0 - 0007d0d0:
0007d0d4 - 0007d2d8:
0007d2dc - 0007d34c:
0007d350 - 0007d3f0:
0007d3f4 - 0007d474:
0007d478 - 0007d518:
0007d51c - 0007d5cc:
0007d5d0 - 0007db18:
0007db1c - 0007e300:
0007e304 - 0007e728:
0007e72c - 0007e9a4:
0007e9a8 - 0007eb88:

Extra Unit Graphic Display

eg. status bubbles, damage, missed! text.

0007eb8c - 0007eebc: Determine Status Bubble Parameters
0007eec0 - 0007f1d0: Display Status Bubble
0007f1d4 - 0007f23c: (Status Bubble Related)
0007f240 - 0007f2a8:
0007f2ac - 0007f3fc:
0007f400 - 0007f458:
0007f45c - 0007f508: Store Item's Display Data
0007f50c - 0007f5f4:
0007f5f8 - 0007ff40: Post Action Display Routine
0007ff44 - 0007ff78: "Speed" display
0007ff7c - 0007ffac: "CT" display
0007ffb0 - 0007ffe4: "Br" display
0007ffe8 - 0008001c: "Fa" display
00080020 - 00080050: "Attack" Sword display
00080054 - 00080088: "Magic" Rod display
0008008c - 000800b8: "Missed" display
000800bc - 000800e8: "Guarded" display
000800ec - 00080114: "Caught" display
000803e4 - 000808b4: Post-Action Display Setup
000808b8 - 00080bc0: Set Exp/JP Display Data and get Palette
00080bc4 - 00080c3c: *One-Digit Experience*
00080c40 - 00080cf4: *Two-Digit Experience*
00080cf8 - 00080d80: *One-Digit JP*
00080d84 - 00080e38: *Two-Digit JP*
00080e3c - 00080e78: *"No Target" Display*
00080e7c - 00080eb8: *"Silenced" Display*
00080ebc - 00080f00: *"No MP" Display*
00080f04 - 00080f40: Something to do with palette
00080f44 - 00080fe8: Prep for Displaying Earned Exp/JP
00080fec - 000810a0: Activate numerical sprite data

Unit Animation Processing

000810a4 - 00081974: Calculate XYZ, UV, and Palette of Post Action Text
00081978 - 00081984: Store unit animation and facing value
00081988 - 000819a4: Store unit animation/facing/someothervalue
000819a8 - 00081a04: Get some Spritesheet data address
00081a08 - 00081a54:
00081a58 - 00081a90:
00081a94 - 00081acc:
00081ad0 - 00081adc: r2 = 0x800b669c
00081ae0 - 00081aec: r2 = 0x800b6edc
00081af0 - 00081b08: Get Spritesheet Graphic Height
00081b0c - 00081b84: Store some coordinate data
00081b88 - 00081c18: Store some movement coordinate data
00081c1c - 00081c5c: Save Spritesheet ID to spritesheet data
00081c60 - 00081d50:
00081d54 - 0008210c: Weather/time of day/tile palette modification
00082110 - 000822b8: Special spritesheet ID palette mods
000822bc - 00082464: palette mod by status
00082468 - 00082504: check for tile, status palette mod
00082508 - 0008254c: Determine Status Bubble Activation Byte | Status/unknown Misc ID checks
00082550 - 00082588: Transparent Check (for opacity?)
0008258c - 0008261c: Set some display/anim data for weapon/evade types
00082620 - 00082788: This routine still needs documenting
0008278c - 00082888: Movement validation - float/fly
0008288c - 00082a40: Target spritesheet calculations?
00082a44 - 00082b18: Set animation for Item abilities
00082b1c - 00082b7c: Store attack animation flags and facing 1
00082b80 - 00082c0c: Set attack animation flags and facing 2
00082c10 - 00082cc0: Set attack animation flags and facing 3
00082cc4 - 00082d4c: Set Level up/Job level up animations
00082d50 - 00082df4: Set In-Motion animation based on status (not MON) | Set Animation Based On Unit Mounted State
00082df8 - 00082ee8: Set Idle Animation based on status (not MON)
00082eec - 000831b4: Set Animation Based On Unit Status
000831b8 - 00083468: More animation based on status, death sound effects
0008346c - 0008356c: Poach/Morbol Transformation Can change spritesheet ID here
00083570 - 00083754: Sprite changing stuff crystal, frog, etc.
00083758 - 00083850: Set thrown item graphic/palette also throw stone
00083854 - 00083870: Call Set Animation Based on Status
00083874 - 00083974: Set attacker animation for shield block
00083978 - 00083c54: Set targets animation based on attack type
00083c58 - 00083cd0: Sprite display setting for all units based on attack
00083cd4 - 00083e0c:
00083e10 - 00083f14: Unit graphic information loading
00083f18 - 00084210: Update Sprite display data
00084214 - 000846ac: Trap & Unit graphic information loading
000846b0 - 00084754: Move Unit Right+/Left-
00084758 - 0008476c: Move Unit Down+/Up-
00084770 - 00084814: Move Unit Forward+/Back-
00084818 - 00085230: Load Unit graphics from sprite sheet 
00085234 - 00085268:
0008526c - 00085a14: Load WEP graphic from WEP1 Sheet
00085a18 - 00085b9c: Move Atk sprites to Frame Buffer from RAM
00085ba0 - 00085c08: Mark Unit's VRAM Slot as Unoccupied
00085c0c - 000865a0: Update & Animate Unit/WEP/EFF
000865a4 - 0008663c: Process Status Bubble Display
00086640 - 00086b40:
00086b44 - 00086dc0:
00086dc4 - 00086f28:
00086f2c - 00087060:
00087064 - 000870a8:
000870ac - 00087198:
0008719c - 000871f0:
000871f4 - 000872e8:
000872ec - 000873b8:
000873bc - 000875ec:
000875f0 - 00087700:
00087704 - 000878a0:
000878a4 - 000879b4:
000879b8 - 00087a24:

Sprite & Display Initialisation

00087a28 - 00088014: Misc unit data initialization
00088018 - 0008812c:
00088130 - 00088804: Load unit SHP & SEQ data to RAM
00088808 - 0008883c: Perform Animate All Units 3 times
00088840 - 00088864: 
00088868 - 00088900: 
00088904 - 00088ee8: Load lucavi SHP & SEQ data to RAM
00088eec - 000890b4:
000890b8 - 00089248:
0008924c - 00089380:
00089384 - 00089458:
0008945c - 00089524:
00089528 - 00089550:
00089554 - 00089578:
0008957c - 000895c0:
000895c4 - 00089634:
00089638 - 00089744:
00089748 - 000897d8:
000897dc - 0008989c:
000898a0 - 00089b9c:
00089ba0 - 00089d9c:
00089da0 - 00089dbc:
00089dc0 - 00089ddc:
00089de0 - 00089dfc:
00089e00 - 00089e1c:
00089e20 - 00089f20:
00089f24 - 0008a114:
0008a118 - 0008a348:
0008a34c - 0008a358:
0008a35c - 0008a4a8:
0008a4ac - 0008a6d4:
0008a6d8 - 0008a6fc:
0008a700 - 0008a77c:
0008a780 - 0008a7fc:
0008a800 - 0008a880:
0008a884 - 0008a920:
0008a924 - 0008ab30:
0008ab34 - 0008adf4:
0008adf8 - 0008b0c4:
0008b0c8 - 0008b230:
0008b234 - 0008b288:
0008b28c - 0008b2c0:
0008b2c4 - 0008b2f8:
0008b2fc - 0008b308:
0008b30c - 0008b334:
0008b338 - 0008b3c8:
0008b3cc - 0008b43c:
0008b440 - 0008b4b4:
0008b4b8 - 0008b4ec:
0008b4f0 - 0008b524:
0008b528 - 0008b534:
0008b538 - 0008b560:
0008b564 - 0008b628:
0008b62c - 0008b6e0:
0008b6e4 - 0008b7b0:
0008b7b4 - 0008b7e8:
0008b7ec - 0008b820:
0008b824 - 0008b830:
0008b834 - 0008b85c: Set Camera Zoom Parameters
0008b860 - 0008b8f0: Set Camera Rotation Values
0008b8f4 - 0008b964:
0008b968 - 0008b9dc:
0008b9e0 - 0008ba14:
0008ba18 - 0008ba4c:
0008ba50 - 0008ba5c:
0008ba60 - 0008ba88:
0008ba8c - 0008bb1c:
0008bb20 - 0008bb90:
0008bb94 - 0008bc08:
0008bc0c - 0008bc40:
0008bc44 - 0008bca8:
0008bcac - 0008bcb8:
0008bcbc - 0008bd08:
0008bd0c - 0008bde0:

Uncertain

0008bde4 - 0008be00: Update Status/Sprite/Animation Display By Unit Misc ID (Wrapper Function)
0008be04 - 0008be28: Set Animation Based On Unit Mounted State From Unit Misc ID
0008be2c - 0008be50:
0008be54 - 0008be78: Set Animation Based On Unit Status From Unit Misc ID
0008be7c - 0008beb8: Set Specific Animation Value From Unit Misc ID
0008bebc - 0008bf10:
0008bf14 - 0008bf80:
0008bf1c - 0008bf80: 0x8bf1c
0008bf84 - 0008bff8:
0008bffc - 0008c050:
0008c054 - 0008c0a8:
0008c0ac - 0008c110:
0008c114 - 0008c188:
0008c18c - 0008c1e0:
0008c1e4 - 0008c264:
0008c268 - 0008c2a0:
0008c2a4 - 0008c2d8:
0008c2dc - 0008c31c:
0008c320 - 0008c360:
0008c364 - 0008c39c: Store script = 0x3a  This happened after I accepted a team at Formation. Music had not started yet. (FFM)
0008c3a0 - 0008c3e0:
0008c3e4 - 0008c40c:
0008c410 - 0008c438: Get Unit Screen Location Data Pointer
0008c43c - 0008c464:
0008c468 - 0008c514:
0008c518 - 0008c54c:
0008c550 - 0008c5e4:
0008c5e8 - 0008c660:
0008c664 - 0008c7c8: Walk To
0008c7cc - 0008c8e0:
0008c8e4 - 0008c93c:
0008c940 - 0008c9c0:
0008c9c4 - 0008ca44:
0008ca48 - 0008ca78: 0x8ca48 | get misc data, do something else if none found
0008ca7c - 0008cbb0:
0008cbb4 - 0008cbd4: Does Misc Unit Exist With ID
0008cbd8 - 0008cc10:
0008cc14 - 0008cc4c:
0008cc50 - 0008cc7c:
0008cc80 - 0008cca8:
0008ccac - 0008cce4:
0008cce8 - 0008cd20:
0008cd24 - 0008cd54:
0008cd58 - 0008cd90:
0008cd94 - 0008cdcc:
0008cdd0 - 0008ce1c: Get Battle Unit Index By Unit Misc ID
0008ce20 - 0008ce74: Get Unit Misc ID By Unit Index
0008ce78 - 0008cecc:
0008ced0 - 0008cef8: Find Unit's Misc Data Pointer (+0x15c)
0008cefc - 0008cf38:
0008cf3c - 0008cf74:
0008cf78 - 0008d058:
0008d05c - 0008d100:
0008d104 - 0008d134:
0008d138 - 0008d188: store mimicking misc data, existence/entd checks
0008d18c - 0008d1c4: Reset Misc Unit Graphic Trigger
0008d1c8 - 0008d224: Reset Jumping Unit Graphic Triggers
0008d228 - 0008d268:
0008d26c - 0008d29c:
0008d2a0 - 0008d5c4:
0008d5c8 - 0008d64c:
0008d650 - 0008d6a4:
0008d6a8 - 0008d704:
0008d708 - 0008d8e0:
0008d8e4 - 0008d94c:
0008d950 - 0008d994:
0008d998 - 0008dabc:
0008dac0 - 0008db50:
0008db54 - 0008dc20:
0008dc24 - 0008dc70: Get Unit's Spritesheet Value
0008dc74 - 0008dc98:
0008dc9c - 0008dcc0: Find Unit's Misc Data Pointer and Load Spritesheet Value
0008dcc4 - 0008dd0c:

Pre-Effect display

?

0008dd10 - 0008dda4: Start New Effect
0008dda8 - 0008ddc8:
0008ddcc - 0008dde8:
0008ddec - 0008ddf8:
0008ddfc - 0008de84:
0008de88 - 0008de9c:
0008dea0 - 0008dec4:
0008dec8 - 0008ded4:
0008ded8 - 0008dee4:
0008dee8 - 0008df0c: Set Event Speed Inner
0008df10 - 0008df44: Store Selected Tile Coordinates
0008df48 - 0008df74: Store Map Max Coordinates
0008df78 - 0008dfa8: Get Tile Data Pointer From Unit Misc ID
0008dfac - 0008dfdc:
0008dfe0 - 0008e064:
0008e068 - 0008e090:
0008e094 - 0008e0b8:
0008e0bc - 0008e0ec:
0008e0f0 - 0008e118:
0008e11c - 0008e14c:
0008e150 - 0008e178:
0008e17c - 0008e1f4: 0x8e17c
0008e1f8 - 0008e230:
0008e234 - 0008e2c4:
0008e2c8 - 0008e300:
0008e304 - 0008e314:
0008e318 - 0008e324:
0008e328 - 0008e344:
0008e348 - 0008e354:
0008e358 - 0008e464:
0008e468 - 0008e53c:
0008e540 - 0008e6cc:
0008e6d0 - 0008e7b4:
0008e7b8 - 0008e808: Get ENTD data pointer and load units
0008e80c - 0008ea68:
0008ea6c - 0008ec6c:
0008ec70 - 0008ef20:
0008ef24 - 0008ef40:
0008ef44 - 0008ef78:
0008ef7c - 0008efb0:

Colour & Palette Modification

0008efb4 - 0008f12c: Color Screen Related (0x8efb4)
0008f130 - 0008f204:
0008f208 - 0008f31c:
0008f320 - 0008f494:
0008f498 - 0008f538:
0008f53c - 0008f638:
0008f63c - 0008f70c:
0008f710 - 00090044: Palette Modification
00090048 - 000901f4:
000901f8 - 00090254:
00090258 - 00090698:
0009069c - 000907f8:
000907fc - 0009083c:
00090840 - 00090c44: Map Darkness
00090c48 - 00090da4:
00090da8 - 00090de8:
00090dec - 000911f0:
000911f4 - 00091244:
00091248 - 0009127c:
00091280 - 000912a0:
000912a4 - 00092598:
0009259c - 0009261c:
00092620 - 000926d4: Extract Colors Data | Extract RGB+Alpha from Palette
000926d8 - 000927b8: Extract Palette Data | Get Palette Data
000927bc - 00092d48:
00092d4c - 00092dbc:
00092dc0 - 00092e94:
00092e98 - 00092f14:
00092f18 - 00092f94:
00092f98 - 00093044: 0x92f98
00093048 - 00093114:
00093118 - 00093140:
00093144 - 0009316c:
00093170 - 000931c0: Color Field
000931c4 - 000933c0:
000933c4 - 00093498:
0009349c - 000934cc:
000934d0 - 00093500: Map Darkness Wrapper
00093504 - 00093534:
00093538 - 00093560:
00093564 - 000935f0:
000935f4 - 00093610:
00093614 - 00093630:
00093634 - 00093650:
00093654 - 000937f4: 0x93654
000937f8 - 00093868:
0009386c - 00093a94:
00093a98 - 00093bec:
00093bf0 - 00093c94:
00093c98 - 000e729c:
000e72a0 - 000e7678:
000e767c - 000e77b4:
000e77b8 - 000e78bc:
000e78c0 - 000e818c:
000e8190 - 000e8408:
000e840c - 000ec714: Background Tile Color For Targeting/Movement
000ec718 - 000ee100: Background Tile Color For Targeting/Movement (Partial Tiles)
000ee104 - 000ee434:
000ee438 - 000ee958:
000ee95c - 000eeaf4:
000eeaf8 - 000eeec8:
000eeecc - 000ef69c:
000ef6a0 - 000ef6ec:
000ef6f0 - 000f0bdc:
000f0be0 - 000f1200:
000f1204 - 000f2290:
000f2294 - 000f2614:
000f2618 - 000f26b8:
000f26bc - 000f34c0:
000f34c4 - 000f3634:
000f3638 - 000f36c0:
000f36c4 - 000f3714:
000f3718 - 000f4ac8:
000f4acc - 000f4dd0:
000f4dd4 - 000f5574:
000f5578 - 000f5980:
000f5984 - 000f59ec:
000f59f0 - 000f5a28:
000f5a2c - 000f5a60:
000f5a64 - 000f5ae8:

Targetting Determination

000f5aec - 0011467c:
00114680 - 0011474c: Math Skill targeting calculations
00114750 - 0012cce4:
0011acdc - 0011aeec: Throw Determination Routine
0012cc54 - 0012cf40: Set Tile Background Color (Partial Tiles)
0012cf44 - 0012d2b0: Set Tile Background Color
0012d2b4 - 0012d874:
0012d8e4 - 0012da08: Process Inflict Status Event Commands
0012da0c - 0012dafc: Set Specific Unit Animation Value When Battle Init
0012db00 - 0012db8c:
0012db90 - 0012dbd8:
0012dbdc - 0012dc2c:
0012dc30 - 0012dc80:
0012dc84 - 0012dca8:

Uncertain 2

0012dcac - 0012dcf4: Get Battle Unit Index By ENTD Unit ID
0012dcf8 - 0012dd08:
0012dd0c - 0012dd18:
0012dd1c - 0012dd2c:
0012dd30 - 0012dd40:
0012dd44 - 0012dd54:
0012dd58 - 0012dd68:
0012dd6c - 0012dd90:
0012dd94 - 0012ddc0:
0012ddc4 - 0012dde4:
0012dde8 - 0012df08: Battle Camera Initialize
0012df0c - 0012df3c:
0012df40 - 0012df64: Get Attacker Data Pointer
0012df68 - 0012df94:
0012df98 - 0012e18c: 0x12df98
0012e190 - 0012e194: (Empty routine)
0012e198 - 0012e240:
0012e244 - 0012e2b4:
0012e2b8 - 0012e31c:
0012e320 - 0012e344:
0012e348 - 0012e598:
0012e59c - 0012e648:
0012e64c - 0012e658:
0012e65c - 0012e9bc:
0012e9c0 - 0012e9f8:
0012e9fc - 0012ec8c:
0012ec90 - 0012ee38:
0012ee3c - 0012eeac:
0012eeb0 - 0012f028:
0012f02c - 0012f048:
0012f04c - 0012f108: 0x12f04c
0012f10c - 0012f35c:
0012f360 - 0012f3c8:
0012f3cc - 0012f450:
0012f454 - 0012f4dc:
0012f4e0 - 0012f658:
0012f65c - 0012f6ac:
0012f6b0 - 0012f6d0:
0012f6d4 - 0012fd1c:
0012fd20 - 0012fd88: Text Format String Fetching
0012fd8c - 00130188:
0013018c - 00130624:
00130628 - 00130714:
00130718 - 001307d0:
001307d4 - 00130870:
00130874 - 001308bc:
001308c0 - 00132820:
00132824 - 00132858: Prep for Loading Text
0013285c - 001328a8:
001328ac - 00132910:
00132914 - 00132bc0:
00132bc4 - 00132e4c:
00132e50 - 00132e70:
00132e74 - 00132f98:
00132f9c - 00132fec:
00132ff0 - 00133044:
00133048 - 00133084:
00133088 - 001330e0:
001330e4 - 0013312c: Copy Unit Screen Location Data
00133130 - 0013314c:
00133150 - 00133154: jr r31
00133158 - 00133490: Get misc ID (goes through a bunch of event command checks and more)
00133494 - 001334a0:
001334a4 - 00133564:
00133568 - 00133584:
00133588 - 00133750: Store level,exp, HP/MP hardcoding, store CT
00133754 - 00133c94: Store units small in battle display data
00133c98 - 00133ce8: Has Status Effect (For Status Window)
00133cec - 00133eec: Display Inner Character Window
00133ef0 - 00133f74:
00133f78 - 00133fe4:
00133fe8 - 0013401c:
00134020 - 00134070:
00134074 - 001340a8:
001340ac - 0013417c: Dismiss Unit Event Instruction
00134180 - 00134220:
00134224 - 00134244: Advance Date By One Year
00134248 - 001342c8:
001342cc - 001343b8:
001343bc - 001343cc:
001343d0 - 001343dc:
001343e0 - 0013442c:

Uncertain (Display Related)

00134438 - 001346f0: Display Height
001346f4 - 0013493c: Height Number Display Setup
00134940 - 00134a68:
00134a74 - 001352b8: Display Projected Action Effect
001352bc - 00136124:
00136128 - 00136184:
00136188 - 001361e4:
001361e8 - 00136320:
00136324 - 001363d8:
001363dc - 00136b0c:
00136b10 - 00136bcc: Get Item Graphic Data
00136bd0 - 00136d30: Something to do with special portraits
00136d34 - 001370a0:
001370a4 - 00137b8c:
00137b90 - 00137c0c:

Menuing

00137c10 - 00137ed0: Handle Menu Action
00137ed4 - 00137f80:
00137f84 - 00138090:
00138094 - 00138170: 0x138094
00138174 - 001383c4: 0x138174
001383c8 - 00138410:
00138414 - 0013845c:
00138460 - 001384dc:
001384e0 - 0013856c:
00138570 - 00138718:
0013871c - 00138768:
0013876c - 00138908:
0013890c - 00138ad8:
00138adc - 00138b0c:
00138b10 - 00138b60:
00138b64 - 00138ed4:
00138ed8 - 001390b8: Display Simple Selection Menu | Move/Act/Wait menu Idle routine

==Uncertain (Display Related 2)

00136b10 - 00136bcc: Get Item Graphic Data
001390bc - 00139578:
0013957c - 001395a8:
001395ac - 001398f8:
001398fc - 00139bd8:
00139bdc - 00139be8:
00139bec - 0013aed8:
0013aedc - 0013aee8:
0013aeec - 0013b008:
0013b00c - 0013b27c:
0013b280 - 0013b4f8:
0013b4fc - 0013b58c:

Uncertain (Miscellany?)

0013b590 - 0013b640: Get Script Variable
0013b644 - 0013b6e0: Set Script Variable
0013b6e4 - 0013b894:
0013b898 - 0013ba64:
0013ba68 - 0013bb6c:
0013bb70 - 0013bbe8: 0x13bb70
0013bbec - 0013bc10:
0013bc14 - 0013bcb8: Load File (0x13bc14)
0013bcbc - 0013bd60:
0013bd64 - 0013bd90:
0013bd94 - 0013bdc0:
0013bdc4 - 0013bf28:
0013bf2c - 0013bf58:
0013bf5c - 0013bf88:
0013bf8c - 0013bfb8:
0013bfbc - 0013c024: Display Triangle Selection Menu
0013c028 - 0013c12c:
0013c130 - 0013c230:
0013c234 - 0013c280:
0013c284 - 0013c2d8: 0x13c284
0013c2dc - 0013c3a0:
0013c3a4 - 0013c568: Equip Change Routine
0013c56c - 0013c664:
0013c668 - 0013c70c:
0013c710 - 0013c73c: Show Graphic (Outer Routine)
0013c740 - 0013c7c0:
0013c7c4 - 0013c8a4:
0013c8a8 - 0013c9bc:

Eventing

0013c9c0 - 0013ca6c: Load Event
0013ca70 - 0013cac0:
0013cac4 - 0013caf0:
0013caf4 - 0013cbd8:
0013cbdc - 0013ccc8:
0013cccc - 0013cce8:
0013ccec - 0013cf54:
0013cf58 - 0013d0a8: menu Routine
0013d0ac - 0013d184:
0013d188 - 0013d198:
0013d19c - 0013d1ec:
0013d1f0 - 0013d22c:
0013d230 - 0013d274:
0013d278 - 0013d31c:
0013d320 - 0013d4d8:
0013d4dc - 0013d574:
0013d578 - 0013d60c:
0013d610 - 0013d620:
0013d624 - 0013d630:
0013d634 - 0013d700: Store unit names and some event block data
0013d704 - 0013d9fc:
0013da00 - 0013da24: Set Event Speed
0013da28 - 0013da5c:
0013da60 - 0013da6c:
0013da70 - 0013da7c:
0013da80 - 0013dae0:
0013dae4 - 0013db98:
0013db9c - 0013dfac: Camera Fusion Event Instruction
0013dfb0 - 0013e544: Camera Fusion Inner Routine
0013e548 - 0013e580:
0013e584 - 0013e5bc:
0013e5c0 - 0013e658: Walk To Event Instruction
0013e65c - 0013e6c0:
0013e6c4 - 0013e704:
0013e708 - 0013e7cc:
0013e7d0 - 0013e818:
0013e81c - 0013e870:
0013e874 - 0013e8d0:
0013e8d4 - 0013e900:
0013e904 - 0013edd4: Block Start Event Instruction
0013edd8 - 0013efa8:
0013efac - 0013eff0:
0013eff4 - 0013f07c:
0013f080 - 0013f0bc:
0013f0c0 - 0013f164:
0013f168 - 0013f208:
0013f20c - 0013f3f8:
0013f3fc - 0013f49c:
0013f4a0 - 0013f4f4:
0013f4f8 - 0013f51c:
0013f520 - 0013f664: Data setting from menu selections
0013f668 - 0013f768: Store Selected Tile Data

Act Menuing

0013f76c - 0013f7a8: Initialize menu counters
0013f7ac - 0013f7b0:
0013f7b4 - 0013f8b0: Store some data for menus
0013f8b4 - 0013f8fc:
0013f900 - 0013f974:
0013f978 - 0013f984:
0013f988 - 0013f9c0:
0013f9c4 - 0013f9fc:
0013fa00 - 0013fa34:
0013fa38 - 0013fa68:
0013fa6c - 00140224: Main Skillset/ability loading (abilities greyed/blinking red)
00140228 - 001404c8: Main act menu loading
001404cc - 00140728: 
0014072c - 00140888:
0014088c - 00140904:
00140908 - 0014097c:
00140980 - 001409a0:
001409a4 - 001409e8:
001409ec - 00140a2c:
00140a30 - 00140b00: Disable Move/Act based on menu ID
00140b04 - 00140cd0: Return Act-use Error Message
00140cd4 - 00140ed0: Ability selected routine (Good grief, can any of you put these in the right spot?)
00140ed4 - 0014115c: 
00141160 - 001411b0:
001411b4 - 00141460: Set used item based on skillset
*Bad name for this routine, I think it does much more important shit
**Change loaded skillset here to make non-default abilities work in default skillset
00141464 - 00141650: Store message/menu type
00141654 - 0014169c:
001416a0 - 00141718:
0014171c - 00141758: Store main target ID/auto battle
0014175c - 001419b4: Spell Quote determination
001419b8 - 00141a88: System function setup routine
00141a8c - 00141b08:
00141b0c - 00142504: System function routine
*00141c14 - 00141cb8: Gameover checks (both)
*00141db0 - 00141e24: Gameover (party incapacitated) checks
*00142074 - 001420e0: Calculator skillset loading?
*0014227c - 001422f4: recieve item whos quantity = 99 (increase gil)
*001422f8 - 00142334: Increment item quantity
00142508 - 001425ac: Get Battle Unit By Unit ID   (For scenario conditionals?)
001425b0 - 00142688: Process Scenario Conditionals
00142694 - 00142b58: Process Scenario Conditional
00142b5c - 00142ba0: 0x142b5c
00142ba4 - 00142bcc:
00142bd0 - 00142c20: 0x142bd0
00142c24 - 00142ca4: 0x142c24
00142ca8 - 00142d28: 0x142ca8
00142d2c - 00142d54: 0x142d2c
00142d58 - 001433a8: 0x142d58
001433ac - 001433e4:
001433e8 - 00143414:
00143418 - 001439bc: 0x143418
001439c0 - 00143a98:
00143a9c - 00143b64:
00143b68 - 00143b7c:
00143b80 - 00143ba4:
00143ba8 - 00143bcc:
00143bd0 - 00145f74:

Eventing 2

00143bd8 - 001449f8: Event Instruction Main Routine 1
001449fc - 00145750: Event Instruction Main Routine 2
*00145268 - 00145298: Event Instruction 0x76: DarkScreen
*001452d8 - 00145320: Event Instruction 0x78: DisplayConditions
*001455d8 - 00145648: Event Instruction 0x44: Draw
00145754 - 00145f70: Event Instruction Main Routine 3
*00145964 - 001459c4: Event Instruction 0xe5: WaitForInstruction
*001459e8 - 00145a34: Event Instruction 0xf1: Wait
*00145e10 - 00145e68: Event Instruction 0x91: ShowMapTitle
00145f78 - 00146000: Load Next Event
00146004 - 00146074:
00146078 - 00146090: Load Halfword | Load event command bytes
00146094 - 001460a0: Store Halfword
001460a4 - 001460e0:
001460e4 - 0014610c:
00146110 - 001466b0: Camera Event Instruction
001466b4 - 00146728: Map Darkness (Async)
0014672c - 001467d8:
001467dc - 0014693c: Color Screen Event Instruction
00146940 - 00146ee0: Sprite Move
00146ee4 - 00146f1c: Sprite Move (Outer)
00146f20 - 00146f58: Sprite Move Beta
00146f5c - 00147018:
0014701c - 00147038:
0014703c - 001472d8: Map Light (Async)
001472dc - 00147314:
00147318 - 001474a0:
001474a4 - 00147580: 0x1474a4
00147584 - 0014777c: Focus Event Instruction
00147780 - 00147914: Focus Speed Event Instruction
00147918 - 00147924:
00147928 - 001479a8: Try Get Unit Misc Data By Unit ID
001479ac - 00147bcc: Process Unit Misc State Value
00147bd0 - 00147ca4:
00147ca8 - 00147cec:
00147cf0 - 00147d94:
00147d98 - 00147e5c:
00147e60 - 00147fa8: Warp Unit
00147fac - 00148080:
00148084 - 00148280:
00148284 - 00148484:
00148488 - 00148538:
0014853c - 0014857c: Clear Some Staging Data
00148580 - 001488a4: Update Unit Status And Staged Status Data
001488a8 - 00148cd4: Apply Staged Status Data To Unit
00148cd8 - 00148e84: Process Unit Staged Status Data
00148e88 - 001490fc: Inflict Status Event Command
00149100 - 001491d4: Inflict Unit Status By ENTD Unit ID
001491d8 - 00149394:
00149398 - 0014948c: Unit Anim
00149490 - 00149528:
0014952c - 001495dc:
001495e0 - 00149688: Color Unit Event Instruction
0014968c - 00149730:
00149734 - 00149788:
0014978c - 001498f8:
001498fc - 001499a8:
001499ac - 00149a50:
00149a54 - 00149b34:
00149b38 - 00149be0:
00149bec - 00149c44: Get Next Available Thread ID
00149c48 - 00149cb8:
00149cbc - 00149d44: Get Thread Running Task
00149d48 - 00149d68: Set Thread Task ID
00149d6c - 00149eb8: Event Jump
00149ebc - 00149f0c: Find Event Instruction Byte Offset
00149f10 - 0014a014:
0014a018 - 0014a2e8:	Run Script Variable Command	Jumped to from subroutines of steal routine - Calculate party inventory?
0014a2ec - 0014a398:
0014a39c - 0014a3f4:
0014a3f8 - 0014a460: Wait Value Event Instruction
0014a464 - 0014a488:
0014a48c - 0014a4d4:
0014a4d8 - 0014a518:
0014a51c - 0014a574:
0014a578 - 0014a594:
0014a598 - 0014a5e4:

Display Related

0014a5e8 - 0014a65c: Image Loading Setup (0x14a5e8)
0014a660 - 0014a6a0:
0014a6a4 - 0014a6c8:
0014a6cc - 0014a6e0: 0x14a6cc
0014a6e4 - 0014a7a4:
0014a7a8 - 0014a818:
0014a81c - 0014a828:
0014a82c - 0014a830: jr r31
0014a834 - 0014aa78: Image loading setup (0x14a834)
0014aa7c - 0014ab54:
0014ab58 - 0014ac2c:
0014ac30 - 0014aebc:
0014aec0 - 0014b260:
0014b264 - 0014b2ec:
0014b2f0 - 0014b31c: Display Menu Text Entry
0014b320 - 0014b34c: Display Menu Text Entry (Unused)
0014b350 - 0014b390: Display Specific Menu Text
0014b394 - 0014ba24: Display Menu Text | Giant message/menu loading routine
0014ba28 - 0014bae0: Find Next Text Character
0014bae4 - 0014bd84:
0014bd88 - 0014bed4:
0014bed8 - 0014bf50:
0014bf54 - 0014bf78: Copy Bytes (0x14bf54)
0014bf7c - 0014bfc0:
0014bfc4 - 0014c010:
0014c014 - 0014c160:
0014c164 - 0014c188:
0014c18c - 0014c4a4:
0014c4a8 - 0014c754: 0x14c4a8
0014c758 - 0014c854:

Thread Management

0014c858 - 0014c89c: Wait (Switch To Next Thread Multiple Times)
0014c8a0 - 0014c920: Initialize Thread
0014c924 - 0014c93c: Mark Thread As Running
0014c940 - 0014c954: Mark Thread As Stopped
0014c958 - 0014c990: Stop Current Thread
0014c994 - 0014c9cc:
0014c9d0 - 0014ca18: Wait For Thread
0014ca1c - 0014ca34:
0014ca38 - 0014ca54: Store Thread Function Parameters Store event command bytes
0014ca58 - 0014ca7c: Store Thread Parameters (0x14ca58) Store event command bytes 2
0014ca80 - 0014cbb0: Switch To Next Thread Some event data setting routine runs many many times, jr r31's to a new location
0014cbb4 - 0014cbbc: Return Global Pointer
0014cbc0 - 0014cbf0: Get First Thread Parameter | Get menu address
0014cbf4 - 0014cc24: Get Second Thread Parameter
0014cc28 - 0014cc58:
0014cc5c - 0014cc90:
0014cc94 - 0014ccb4: Check Thread Running Status
0014ccb8 - 0014ce04:
0014ce08 - 0014ce74:
0014ce78 - 0014ceb0: Find Text ID's Location
0014ceb4 - 0014cf54: Call Inner Subroutine
*0014cf28 - 0014cf54:
0014cf58 - 0014cf64:
0014cf68 - 001743c4:
00174068 - 00174294: Return addresses
00174298: nop
0017429c - 001742fc: Return addresses : reaction abilities for Perform_reaction_abilities
00174300: nop 
00174304 - 00174340: Return addresses : action menu for Store_used_weapon
00174344 - 0017436c: Return addresses : action menu for Pre_Formula_Setup_(FDC)

Movement Calculations

001743c8 - 0017442c: Chocobo Check
00174430 - 00174b88: Store movement stuff into scratch pad
00174b8c - 00174df4: Set_Reachable_Tiles
00174df8 - 00174e80: Disable_Tile_Flag_0x10_For_Dead_and_Jumping_Units
00174e84 - 00175284: Set_Tile_Flags_for_Pathfinding
00175288 - 001754cc: Set_Reachable_Tile_Flag
001754d0 - 001754f0: Spread_Move_to_East_Preset
001754f4 - 00175518: Spread_Move_to_North_Preset
0017551c - 0017553c: Spread Move to West Preset
00175540 - 00175564: Spread Move to South Preset
001755a8 - 001755e4: Transfer_Tiles_Height_Halves_and_Slope_in_Scratch_Pad
001755e8 - 00175614: Set_spreading_Tile_X_and_Y_coordinates
00175618 - 00175678: Check_Spreading_Tile_Coordinates
0017567c - 00175954: Set_Origin_Height_Data
00175958 - 00175e9c: Movement routine Highlights panels blue
00175ea0 - 00175fa0: Check_and_Spread_Movement_One_Tile_Around
00175fa4 - 00176160:
00176164 - 00176228: Calculate_Tile_Ceiling
0017622c - 001764d4: Check_Horizontal_Jump_option
001764d8 - 001766b0: Spread_Horizontal_Jump
001766b4 - 00176c0c:
00176c10 - 00176c8c: Contains teleport chances
00176c90 - 0017717c:
00177180 - 001773b4:
001773b8 - 00177790:
00177794 - 001779d8:
001779dc - 00177b60:
00177b64 - 00177c04:
00177c08 - 00177e60:
00177e64 - 00178094:
00178098 - 001780e8:
001780ec - 00178138: Calculate WalkTo Pathing
0017813c - 00178ca0: Calculate Pathing
00178ca4 - 00179200:

Targetting Calculations

00179204 - 00179258: Moldball Virus Depth Check
0017925c - 001792a0: Clear Some stuff for Untargetable Terrain
001792a4 - 001793fc: Check Vert Tolerance and if Tiles can be Chosen
00179400 - 00179420: Null some Tile Data (192dd9)
00179424 - 00179514: Remove Close Range Routine
00179518 - 00179638: Calculate Tiles Hit by Ability
0017963c - 001797b0: Calculate Possible AoE Tiles
001797b4 - 001798ac: Depth Calculation
001798b0 - 00179a1c: Set initial panels
00179a20 - 00179b54: Set targeting for weapon attack
00179b58 - 00179c98: Striking/lunging modification
00179c9c - 00179d80: Depth Calculation 2 ???
00179d84 - 00179dc4: Remove targets for unclear reasons
00179dc8 - 0017a168: Set Ability Targeting | Or, more accurately, Set Jump Ability Targeting?
0017a16c - 0017a28c: calculate ability range with map parameters
0017a290 - 0017a514: Set panels affected by ability
0017a518 - 0017a5b8: Set targeting for weapon attack 2
0017a5bc - 0017a648: Set all panels targeted if targetable
0017a64c - 0017a6d8: Remove Selection state of all panels
0017a6dc - 0017a7b8: Set target state for all units panels
0017a7bc - 0017a8bc: Vertical Fixed Routine
0017a8c0 - 0017aaf4: Calculate Target Panels / Alt version Set_Target_Tiles
0017aaf8 - 0017ac8c: Calculate Targeting for Menu Types
0017ac90 - 0017afbc: Targeting validation (weapon flags)
0017afc0 - 0017b3f0: Auxilary targeting validation
0017b3f4 - 0017b49c: Height/coordinate validation
0017b4a0 - 0017b4cc: Disable Green Panel Flags (initialization?)
0017b4d0 - 0017b7b0: Calculator Routine
0017b7b4 - 0017b870: Disable Green Panel on all but Target's Tile
0017b874 - 0017bc74: Targeting routine
0017bc78 - 0017bdcc: Check Allies/Enemies that can be Targeted
0017bdd0 - 0017be64: Check if Unit can be Targeted
0017be68 - 0017c040: Linear/3-direction AoE Calculation
0017c044 - 0017c154: Linear Attack Tile Calculation
0017c158 - 0017c3b4: Calculate Height Data
0017c3b8 - 0017c3d8: Call Attack Preparation (ability selected)
0017c3dc - 0017c458: Call Attack Preparation (AT list preview)
0017c45c - 0017c908: Attack Preparation
0017c90c - 0017c950: Unit exists/party member checkReturns 0x16e in unit data
0017c954 - 0017c9b4: Player Item Quantity decrement
0017c9b8 - 0017cac8: Prep Current Action Data
0017cacc - 0017cd20: Reaction Target/Hit Calculation
0017cd24 - 0017ce40: Map calculations for attack Attack, charge, ranged weapon flag
0017ce44 - 0017d34c: Main ability loading routine
0017d350 - 0017d40c: set target coordinates for ability also set regenerator target
0017d410 - 0017d49c: draw out routine dealing with experience gain
0017d4a0 - 0017d704: Current Action Ability Data Setting / Multi Hit Formulas
0017d708 - 0017d84c: Targeting/panel routine
0017d850 - 0017da1c: List and Sort Targeted Units

Acting Caster Calculations

0017da20 - 0017dbc4: Ability Usage Checks and MP Reduction
0017dbc8 - 0017dc84: Store Some Acting Unit Data
0017dc88 - 0017dca4: Get ID of Unit if Tile is Targetable
0017dca8 - 0017decc: Find Unit at Specified Coordinates | Check if another unit is on the same Tile
0017ded0 - 0017def8: Clear targeting panel data
0017defc - 0017e174: Big... Contains Hamedo check Pre Attack Phase
0017e178 - 0017e58c: Main reaction routine
0017e590 - 0017e64c: Counter magic targeting
0017e650 - 0017e77c: Store counter ability
0017e780 - 0017e7e0: Auto Potion
0017e7e4 - 0017ea24: Award EXP and JP for actions
0017ea28 - 0017ea7c: Load Job Level
0017ea80 - 0017ec14: Store JP; Calculate Unlocked Jobs
0017ec18 - 0017f01c: big map/panel routine
0017f020 - 0017f0e8: Float/Float/Fly movements
0017f0ec - 0017f178: Calculate Move EXP/JP UP To earn
0017f17c - 0017f2d4: Calculate Projected Action Effect
0017f2d8 - 0017f318: Get Elemental Ability ID

Battle Initialisation

0017f31c - 0017f384: Initialize party members Job data, Sp cap, Status initialization
0017f388 - 0017f5f4: Initialize units battlefield data(ENTD ID/flags, Map location, palette, control, etc.)
0017f5f8 - 0017f61c: Initialize players battlefield units
0017f620 - 0017f63c: Initialize enemy battlefield units
0017f640 - 0017f6c0: Set unit placement and validate
0017f6c4 - 0017f89c: Validate unit placement
0017f8a0 - 0017fbe8: Load ENTD Units | Big ENTD unit loading routine
0017fbec - 0017fcc4: Add Unique Value to List
0017fcc8 - 0017fd04: Disable/Remove unit
0017fd08 - 0017fd7c: Check if unit present and ENTD level setting
0017fd80 - 0017fda8: Set unit cannot exist(but can), return r2 = 0
0017fdac - 0017fdd8: Erase unit, set to be removed from party

Movement Calculations 2

0017fddc - 0017ffbc: Set Rider/Mount's X/Y Data
0017ffc0 - 00180130: Set target for mounted unit, move find item/trap
00180134 - 00180174: Get movement support flags (move-MP/HP/EXP/JP up)
00180178 - 0018020c: Remove charging status/ability CT
00180210 - 0018022c: Disable acting statuses
00180230 - 001802c4: Rare/common item determination
001802c8 - 001804c0: Set map Item/trap data
001804c4 - 0018052c: Move find item flag calculation

Unit Death Handling

00180530 - 00180900: Generate Crystal or Treasure
00180904 - 00180a04: Learn from Crystal
00180a08 - 00180af8: Generate Treasure
00180afc - 00180b28: Get Unit's Data Pointer
00180b2c - 00180c8c: Check Base Class | Ramza Causes Game Over
00180c90 - 00180dac: Find Unit Data Pointer For ENTD Unit ID | Unit Existence/crystaltreasure check Uses 0x183 byte, 0x161 ENTD ID
00180db0 - 00180dfc: Party level XX modification | Set Enemy Level Data
00180e00 - 00180f3c: Find War Trophies and Bonus Money | Store some ENTD Data(War Trophy, gil), party level calculation
00180f40 - 00180fe0:

Player Action & Menuing

00180fe4 - 0018109c: Prep for Special Status Flag Enabling
001810a0 - 001810d0: Map Location Calculation
001810d4 - 00181110: Get Existent Battle Unit Pointer | Load unit Data (exists check within)
00181114 - 00181148: Find Active Unit Data Pointer
0018114c - 001811f4: Get Menu ID based on mount, moveable/actable
001811f8 - 00181308: Player Control Routine
0018130c - 001813bc: Weapon Guard Usability  (Check if Unit can React)
001813c0 - 00181580: Setup Act Menu | Player Skill Set
00181584 - 0018171c: Skillset Loading
00181720 - 001817bc: Get Number of Turns to Resolve | Get Number of Turns to Resolve(Alt)
001817c0 - 00181b6c: Get Unit Skillset Ability Data | Load ability data for skillset (MP, CT, req. sword booleans)
00181b70 - 00181b90: Item Inventory Ability Display
00181b94 - 00181cb4: Item Ability Loading
00181cb8 - 00181cd8: Throw
00181cdc - 00181eec: Throw Determination Routine
00181ef0 - 00181f10: Math Skill Ability Display 
00181f14 - 00181f34: Math skill ability loading routine
00181f38 - 00182064:
00182068 - 001821c8: Math Skill ability loading
001821cc - 001822c8: Elemental ability loading 
001822cc - 0018242c: Monster skill, frog attack ability loading
00182430 - 00182504: Monster Skill check prep
00182508 - 00182660: Monster Skill check
00182664 - 00182684: Draw Out
00182688 - 00182784: Draw Out 2 (main routine)
00182788 - 001827b0: Call Charge Skillset Loading
001827b4 - 001827ec: Charge Skillset Loading

In-Between Turns Unit & Status Processing

001827f0 - 00183074: In between turn control routine
*0018282c - 001828ac: Initialize data?
*001828b0 - 00182920: Validate mime action?
*00182924 - 00182978: Set active turn
*001829b8 - 00182a40: Next clocktick - CT increment
00182a44 - 00182ba8: Dead/next turn processing (100CT)
*00182bac - 00182c04: Ability CT decrement
*00182c08 - 00182c8c: Post-ability CT setting
*00182c90 - 00182ce4: Status CT decrement
*00182ce8 - 00182d4c: Set Mime bytes
*00182d50 - 00182d88: Clear Mime bytes
*00182d8c - 00182dfc: Find highest CT
*00182e00 - 00182e6c: Validate units turn
*00182e70 - 00182ea8: Poison and regen
*00182eac - 00182ee4: Poison marsh
*00182ee8 - 00182f30: Transparent Removal
*00182f34 - 00182fa0: Check if mimicable ability occurred
*00182fa4 - 00183074: Mimic ability setting
00183078 - 001832c8: Death sentence, crystalization, treasurization, etc also reraise, defend removal, chicken brave increment
001832cc - 00183370: Status checks
00183374 - 001834b8: Check Battle Outcome | Gameover by party incapacitated
001834bc - 00183540: Check some list for Unit Battle ID
00183544 - 001835a4: Calculate AT List and Get Specific Unit ID
001835a8 - 001835f4: Unit doesn't exist/deadcrystaltreasurepetrify/being ridden check
001835f8 - 00183708: AT List Preview
0018370c - 00183ac8: Calculate AT List
00183acc - 00183ba4: AT List Sorting
00183ba8 - 00183bc8: Set Only Action Taken
00183bcc - 00183bec: Set Only Movement Taken
00183bf0 - 00183c68: Set move/act flags used in defend/equip change routines
00183c6c - 00183d0c: End of Turn
00183d10 - 00183d6c: Able to move/act checks (Menu)
00183d70 - 00183ddc: Change of Turn check
00183de0 - 00183dfc: Enable/disable acting status
00183e00 - 00183e38: another intermediate routine
00183e3c - 00183e90: Unit exists checks
00183e94 - 00183e9c: Activates move/act
00183ea0 - 00183f5c: something involving map coordinates
00183f60 - 00183fb0: Load Move Find-Item data to Current Map
00183fb4 - 00184018: Get Tile Data Pointer | Deals with map coordinates 1
0018401c - 00184148: Return Various Tile Data
0018414c - 001842f4: deals with map coordinates 3
001842f8 - 00184308: Clear r2 2

Formula Processing Subroutines

0018430c - 00184338: Force Attack Miss
0018433c - 0018435c: Cause Action Miss | Force Attack Miss 2
00184360 - 001843e8: Dance/Song hit % Returns if attack hit or not
001843ec - 0018460c: Knockback Calculation
00184610 - 001848d4: Knockback 2
001848d8 - 00184960: Attack Evaded Calculations
00184964 - 00184b20:  Compatibility
00184b24 - 00184e3c: Modify Status Inflictions | Validate Status Changes
00184e40 - 00184e94: Nullify Action | Elemental Nullification
00184e98 - 00184f98: Elemental Damage Modification
00184f9c - 001851c0: Equipment Evasion Setting (Physical)
001851c4 - 001852e0: Equipment Evasion Setting (Magical)
001852e4 - 00185324: Concentrate Calculation
00185328 - 00185378: Dark/Confuse Caclulation
0018537c - 001853f0: Abandon Calculation
001853f4 - 001854b4: Evasion Changes due to Statuses
001854b8 - 001854f8: Transparent Calculation
001854fc - 00185734: Facing Evade Calculation
00185738 - 00185810: Weather effects on Bows
00185814 - 00185a98: Calculate Final Hit %
00185a9c - 00185c90: Base XA Calculation
00185c94 - 00185cbc: Store MA and Y
00185cc0 - 00185cfc: Base XA and YA for MA + Y / 2 
00185d00 - 00185d3c: Store PA and PA + Y / 2
00185d40 - 00185d7c: Store MA and PA + Y / 2
00185d80 - 00185da8: Store MA and X
00185dac - 00185dd4: Store PA and X
00185dd8 - 00185e00: Store PA and WP
00185e04 - 00185e2c: Store PA and Y
00185e30 - 00185e58: Store Speed and X
00185e5c - 00185e90: Store PA and WP + Y
00185e94 - 00185f7c: Formula 64 or Jump Base XA / YA
00185f80 - 00185fa0: Charge Calculation
00185fa4 - 00185ff8: Weapon Element Strengthen
00185ffc - 00186050: Elemental Strengthen
00186054 - 00186148: Attack UP/Two Hands/Martial Arts
0018614c - 00186200: Formula 32, 33, 34, 35 Attack Up and Martial Arts
00186204 - 00186250: Magic Attack Up routine
00186254 - 001862c8: Attacker Berserk/Frog Check
001862cc - 00186318: Defense UP routine
0018631c - 00186368: Magic Defense Up routine
0018636c - 0018645c: Target XA affecting Statuses (Physical)
00186460 - 001864f4: Target's Status Affecting XA (Magical)
001864f8 - 00186564: Critical Hit Calculation
00186568 - 00186598: XA * YA Calculation
0018659c - 00186620: Set XA + YA for Status Formulas (Stupid section)
00186624 - 00186688: Calculate % of damage
0018668c - 001866e8: MP Damage Routine (Uses Y instead of X.)
001866ec - 00186740: Gravi2 Damage Routine
00186744 - 00186810: Steal Gil
00186814 - 001868ec: Set EXP Stolen
001868f0 - 00186918:  Formula 36
0018691c - 001869e8: Damage and Knockback Routine (Dash, tackle, throw stone)
001869ec - 00186af4: Song abilities
00186af8 - 00186c00: Dance abilities
00186c04 - 00186cfc: Talk Skill
00186d00 - 00186d28:  3A +Brave (Y)
00186d2c - 00186d54:  39 +SP (Y)
00186d58 - 00186db8:  3B +Brave (X) +PA/MA/SP (Y)
00186dbc - 00186e24:  3C Heal (CasMaxHP*2/5) DmgCas (CasMaxHP/5)
00186e28 - 00186e50:  43 Dmg (CasMaxHP-CasCurHP)
00186e54 - 00186e74:  44 Dmg (TarCurMP)
00186e78 - 00186ea0:  45 Dmg (TarMaxHP-TarCurHP)
00186ea4 - 00186ecc: Y brave
00186ed0 - 00186fcc: Weather Elemental effects?
00186fd0 - 00186ff4: Elemental Damage Modification (Prep)
00186ff8 - 001870f8: Ability Elemental? Apply Elemental - Glain
001870fc - 0018714c: Elemental Absorption
00187150 - 00187244: Faith Calculation
00187248 - 0018734c: HP Absorbtion (Seems needlessly complex)
00187350 - 001873d4: Undead Reversal
001873d8 - 00187468: Undead Absorb Attack
0018746c - 001874e8: MP Recovery Routine -MP Absorb*
001874ec - 0018750c: Convert HP Damage into MP Recovery
00187510 - 001875b8: Use Specific Action Hit Percentage | Set XA*YA as hit%
001875bc - 001875f8: Dragon Check
001875fc - 00187634: Sleep Check
00187638 - 0018768c: Maintenance
00187690 - 001876e0: Conditional Status Proc Roll (19%) Inner Routine
001876e4 - 0018772c: Store Reaction/Proc ID and Target
00187730 - 00187838: Magic Gun Ability Decision
0018783c - 0018785c: Quick Effect
00187860 - 0018790c: Determine which stat will be reduced 
00187910 - 001879c4: Katana Break Chance
001879c8 - 00187c9c: Steal/Break/Might Sword Hard Coding
00187ca0 - 00187eb0: Formula 01 - 06 Aftermath
00187eb4 - 00187f20: Apply status (to action) - (Preserve hit status, evade type, hit %)
00187f24 - 00188284: Apply status (to action) Formula 38
00188288 - 001882c4: MP Healing Item Formula
001882c8 - 001882f4: 100% HP/MP Healing (actual)
001882f8 - 001883a8: Finger Guard
001883ac - 00188484: Catch
00188488 - 001884bc: Calculate Hit %
001884c0 - 0018850c: Conditional Status Proc Roll (19%)
00188510 - 00188564: Physical Evade Calculation
00188568 - 001885b4: Physical Evade Calculation(Charge)
001885b8 - 001885f4: Magical Evade Calculation
001885f8 - 00188634: Physical XA Modifying Statuses/Support 
00188638 - 001886a0: Weapon Damage Calculation
001886a4 - 001886d0: Damage Calculation
001886d4 - 00188718: Calculate_Accuracy_for_Physical
0018871c - 00188740: Elemental Absorb and status roll 19% conditional status
00188744 - 00188778: Magical Support/Status/Compat
0018877c - 001887c0: Elemental XA * YA
001887c4 - 001887fc: Elemental Absorb/Status
00188800 - 00188854: MA + X
00188858 - 00188884: Magical XA * YA
00188888 - 00188960: Calculate Accuracy as User Faith * (MA + X)%
00188964 - 001889a0: Truth/Formula 5E-5F Magical damage
001889a4 - 001889c8: 2Truth/Formula 5E-5F Calculate damage
001889cc - 00188a20: Calculate Accuracy for Magical Spells 
00188a24 - 00188a80: Calculate Accuracy for Magical
00188a84 - 00188ad8: MA + X without faith
00188adc - 00188b10: Cluster of Physical Routines
00188b14 - 00188b60: Physical Routine for Hit % abilities

Formulas

00188b64 - 0018ac70: Formulas
00188b64 - 00188ba0: 01 Dmg_(Weapon)
00188ba4 - 00188be0: 02 Dmg_(Weapon)
00188be4 - 00188c20: 03 Dmg_(WP^2)
00188c24 - 00188c98: 04 Magic Gun
00188c9c - 00188cf0: 05 Dmg (Weapon)
00188cf4 - 00188d38: 06 AbsHP (Weapon)
00188d3c - 00188d80: 07 Heal (Weapon)
00188d84 - 00188df0: 08 Dmg F(MA*Y)
00188df4 - 00188e74: 09 Dmg (Y/100)% Hit F(MA+X)%
00188e78 - 00188eb4: 0A Hit F(MA+X)%
00188eb8 - 00188ef4: 0B Hit F(MA+X)%
00188ef8 - 00188f34: 0C Heal F(MA*Y)
00188f38 - 00188f8c: 0D Heal (Y)% Hit F(MA+X)%
00188f90 - 00189080: 0E Dmg (Y)% Hit F(MA+X)% 100% Status Hide Status
00189084 - 001890d8: 0F AbsMP (Y)% Hit F(MA+X)%
001890dc - 00189120: 10 AbsHP (Y)% Hit F(MA+X)%
00189124 - 00189160: 11 (does nothing), 12 Set Quick Hit F(MA+X)%
00189164 - 001891a8: 13 (does nothing), 14 Set Golem Hit CasF/100*(MA+X)%
001891ac - 00189200: 15 Set CT00 Hit F(MA+X)%
00189204 - 00189258: 16 DmgMP (TarCurMP) Hit F(MA+X)%
0018925c - 00189298: 17 Dmg (TarCurHP-1) Hit F(MA+X)%
0018929c - 001892a8: 18, 19 (does nothing)
001892ac - 00189338: 1A Hit F(MA+Y)% // -PA/MA/SP (X) 
0018933c - 00189378: 1B DmgMP (MA+Y)% Hit F(X)%
0018937c - 001893d4: 1C Hit (X)% Sing
001893d8 - 00189430: 1D Hit (X)% Dance
00189434 - 00189460: 1E Dmg ((MA+Y)*MA/2)
00189464 - 001895c0: 1F Dmg ((100-CasF)*(100-TarF)*(MA+Y)*MA/2)
001895c4 - 001895f0: 20 Dmg (MA*Y) Draw Out
001895f4 - 00189650: 21 DmgMP (MA*Y) Draw Out
00189654 - 00189678: 22 Draw Out Hit 100%
0018967c - 001896b0: 23 Heal (MA*Y) Draw Out
001896b4 - 001896e8: 24 Dmg ((PA+Y)/2*MA)
001896ec - 00189790: 25 Equipped: Break Hit (PA+WP+X)%
00189794 - 00189824: 26 Equipped: Steal Hit (SP+X)%
00189828 - 0018986c: 27 StealGil (CasLVL*SP) Hit (SP+X)%
00189870 - 0018990c: 28 StealExp (Lowest of TarCurExp & SP+Y) Hit (SP+X)%
00189910 - 001899a0: 29 OppositeSex: Hit (MA+X)%
001899a4 - 00189a8c: 2A Hit (MA+X)% // AffectBraveOrFaith(Y)
00189a90 - 00189ad4: 2B Hit (PA+X)% // -PA/MA/SP (X)
00189ad8 - 00189b1c: 2C DmgMP (X)% Hit (PA+Y)%
00189b20 - 00189b90: 2D Dmg (PA*(WP+Y)) 100% Status
00189b94 - 00189c4c: 2E Equipped:Break Dmg (PA*WP)
00189c50 - 00189c8c: 2F AbsMP (PA*WP)
00189c90 - 00189ccc: 30 AbsHP (PA*WP)
00189cd0 - 00189d70: 31 Dmg ((PA+Y)/2*PA)
00189d74 - 00189e24: 32 Dmg (Rdm(1…X)*(PA*3+Y))
00189e28 - 00189e90: 33 Hit (PA+X)%
00189e94 - 00189f04: 34 Heal (PA*Y) HealMP (PA*Y/2)
00189f08 - 00189f80: 35 Heal (Y)% Hit (PA+X)%
00189f84 - 00189fc8: 37 Dmg (Rdm(1…Y)*PA)
00189fcc - 0018a008: 3D Hit (MA+X)%
0018a00c - 0018a028: 3E Dmg (TarMaxHP-1)
0018a02c - 0018a084: 3F Hit (SP+X)%
0018a088 - 0018a110: 40 Undead: Hit (SP+X)%
0018a114 - 0018a178: 41 Hit (MA+X)%
0018a17c - 0018a214: 42 Dmg (PA*Y) DmgCas (PA*Y/X)
0018a218 - 0018a24c: 46 (doesn't work), 47 AbsHP (Y)% 100% Status
0018a250 - 0018a2a0: 48 Heal (Z*10)
0018a2a4 - 0018a2c0: 49 HealMP (Z*10)
0018a2c4 - 0018a2e8: Formula 4a - Elixir
0018a2ec - 0018a39c: 4B Heal (Rdm(1..9)) 100% Status
0018a3a0 - 0018a3cc: 4C Heal (MA*Y)
0018a3d0 - 0018a41c: 4D AbsHP (Y)% Hit (MA+X)%
0018a420 - 0018a454: 4E Dmg (MA*Y)
0018a458 - 0018a49c: 4F Dmg (CasMaxHP-CasCurHP) Hit (PA+X)%
0018a4a0 - 0018a4e4: 50 Hit (MA+X)%
0018a4e8 - 0018a550: 51 Hit (MA+X)%
0018a554 - 0018a5e0: 52 Dmg (CasMaxHP-CasCurHP) 100% Add Status Caster in AoE: DmgSelf (CasCurHP)
0018a5e4 - 0018a664: 53 Dmg (X)% Hit (MA+X)%
0018a668 - 0018a694: 54 HealMP (MA*Y)
0018a698 - 0018a6f4: 55 –PA (Y) Hit (MA+X)%
0018a6f8 - 0018a754: 56 –MA (Y) Hit (MA+X)%
0018a758 - 0018a820: 57 +Lvl(1) NS 100% Add Status on Caster
0018a824 - 0018a904: 58 Generic: Set Morbol: Hit(MA+X)%
0018a908 - 0018a97c: 59 –Lvl(1) Hit (MA+X)%
0018a980 - 0018a9c0: 5A Dragon: Hit(100)%
0018a9c4 - 0018aa0c: 5B Dragon: Heal (Y)% 100% Add Status
0018aa10 - 0018aa50: 5C Dragon: +Brave (X) +PA/MA/SP(Y)
0018aa54 - 0018aa94: 5D Dragon: Set Quick
0018aa98 - 0018aac4: 5E Dmg ((MA+Y)/2*MA)
0018aac8 - 0018aaf4: 5F Dmg ((MA+Y)/2*MA)
0018aaf8 - 0018ab14: 60 Dmg ((MA+Y)/2*MA) 6.25 Status
0018ab18 - 0018ab54: 61 –Brave (Y) Hit F(MA+X)%
0018ab58 - 0018ab94: 62 –Brave (Y) Hit (MA+X)%
0018ab98 - 0018ac40: 63 Dmg (SP*WP)
0018ac44 - 0018ac70: 64 Dmg (PA * WP); if using Spear (PA * 3/2 * WP); if weaponless (PA * Brave /100 * WP)

Post Formula Handling

0018ac74 - 0018acd8: remove transparent status if Jump is used
0018acdc - 0018ad54: Apply Status and Check Undead | Pheonix down on undead
0018ad58 - 0018adf0: Switch_Ability_to_default_Attack
0018adf4 - 0018ae38: action data nulling
0018ae3c - 0018af28: Knockback
0018af2c - 0018b270: Perform reaction abilities
0018b274 - 0018b348: Store used weapon based on action menu byte
0018b34c - 0018b9f4: Pre Formula Setup (FDC)
0018b9f8 - 0018ba40: Remove Status
0018ba44 - 0018bcec: set some data for current attack
0018bcf0 - 0018bd30: Called by Nullify Action - Glain
0018bd34 - 0018bd70: Remove Knockback Flag | Possibly nullify steal item
0018bd74 - 0018bdd0: Current Action Data Nulling
0018bdd4 - 0018be04: Null Some Status Data
0018be08 - 0018c67c: Main Reaction Routine - performs ability effects
0018c680 - 0018c754: Poach Inventory Routine
0018c758 - 0018c858: some kind of ENTD/Unit manipulation
0018c85c - 0018c91c: Level up/down ability

Reaction processing

0018c920 - 0018c964: Check if unit can react 1
0018c968 - 0018c99c: Check if unit can react
0018c9a0 - 0018c9e0: Reaction check
0018c9e4 - 0018cafc: 'Reflect', Blade Grasp, and Arrow Guard
0018cb00 - 0018cc30: Sunken State, Caution, Dragon Spirit, etc. usability
0018cc34 - 0018ccd4: MP Switch, Distribute, and Damage Split usability
0018ccd8 - 0018ce00: PA Save, MA Save, Speed Save Regenerator, HP Restore, MP Restore, Critical Quick, Meatbone Slash, Auto Potion, Gilgame Heart check
0018ce04 - 0018ce84:  Counter, Counter Tackle, Counter Flood, Brave Up, Dragon Spirit, Sunken State, and Caution Usability usability
0018ce88 - 0018cef0: PA Save, MA Save, Speed Save, Regenerator, Auto Potion, Gilgame Heart usability
0018cef4 - 0018cf70: Critical Quick, HP Restore, MP Restore, Meatbone Slash usability
0018cf74 - 0018cfe4: Face Up and Absorb Used MP usability
0018cfe8 - 0018d04c: Reflect "Reaction"
0018d050 - 0018d0e4: Blade Grasp Usability
0018d0e8 - 0018d1b4: Arrow Guard Usability
0018d1b8 - 0018d2a4: MP Switch Usability
0018d2a8 - 0018d314: Distribute Usability
0018d318 - 0018d380: Damage Split Usability
0018d384 - 0018d3bc: Chance to React

Post Action Handling

0018d3c0 - 0018d56c: Steal Routine
0018d570 - 0018d61c: Stat Increment/Decrement
0018d620 - 0018d708: Attacker's Earned Experience
0018d70c - 0018d7c4: Store target stats pointer data calls main action loading routine
0018d7c8 - 0018d864: Poison and Regen
0018d868 - 0018d90c: Transparent removal routine
0018d910 - 0018da00: Process Expiring Statuses | status CT decrement and innate statuses
0018da04 - 0018da40: Set Action Target Variables | target pointers
0018da44 - 0018da84: Crystal, Dead, Jump, Petrify, Treasure check 
0018da88 - 0018dbac: Poison Marsh Routine
0018dbb0 - 0018dd40: Traps Routine
0018dd44 - 0018df08: Move-HP Up, Move-MP Up, Gained Exp Up
0018df0c - 0018dff4: Prep gained exp/jp/level/job level + other stuff?
0018dff8 - 0018e078: Main Reaction subroutine - ENTD/ID stuff - Calculate Unlocked Jobs/set ability element = dark?
0018e07c - 0018e1ac: Post Ability Hardcoding dead hp=0, remove ability CT, remove player control
0018e1b0 - 0018e244: Remove control based on status
0018e248 - 0018e30c: Inflicted status CT setting, xfer last used CT
0018e310 - 0018e5e0: Store status,modified ENTD for current attack
0018e5e4 - 0018e624: Transfer Considered Action Data to AI - duplicated Store current attack data into AI
0018e628 - 0018e65c: 0018e628_-_0018e65c 
0018e660 - 0018e6b4: Used by Weather Elemental effects routine
0018e6b8 - 0018e8a8: Process Learn on Hit | Learn on hit 1
0018e8ac - 0018e9b8: Learn Used Ability | Learn on hit 2
0018e9bc - 0018e9e4: Enable Special Status Flags | Determine if Status Flags can be Enabled
0018e9e8 - 0018ea94: Item quantity increment for steal/break?
0018ea98 - 0018eb4c: Add price of item / 4 to total gil
0018eb50 - 0018ec0c: Handle Steal Exp | Apply Exp gain / Level up
0018ec10 - 0018ec40: Store targeting/executing state, call 18e07c
0018ec44 - 0018ed78: Apply Unit Action Status Removal | More status infliction/removal also deals with innate status
0018ed7c - 0018edf4: Sort target list at 80193868
0018edf8 - 0018ee20: Store ability data 80193868 + 0x10 bytes
0018ee24 - 0018ee64: Count number of targets hit by ability
0018ee68 - 0018ee9c: store 8019837c if not reacting
0018eea0 - 0018eed4: Random Process, gives a number between 0-7fff
0018eed8 - 0018ef28: Random Process, (gives a random based on r4 (MOD) and checks against r5 (chance to work))
0018ef2c - 0018ef30: jr r31
0018ef34 - 0018f034: Current Action Attacker Data Setting
0018f038 - 0018f2ac: Mimic ability setting
0018f2b0 - 0018f4c4: Map Max X,Y, targetable panel checks
0018f4c8 - 0018f4d4: Load last used ability
0018f4d8 - 001941f4:
0018f510 - 0018f610:  ????? Table
0018f624 - 0018f7a0:  Formula Table

AI Calculations

00193d48 - 00193e4c: AI Return addresses
00193e50 - 001941f4: Main AI action setup?
001941f8 - 00194310: Acting Unit's Data Setup (AI?)
00194314 - 0019456c: Set type of target for all targets
00194570 - 00194718: Some targetability setting
0019471c - 00194908: Set AI flags for target consideration
0019490c - 00194940: Store main target ID and focus on target flag
00194944 - 00194e54: AI movement/panel data setting
00194e58 - 001957bc: Set AI ability considerations for all units and self
001957c0 - 00195874: Some type of checking algorithm
00195878 - 00195d90: AI Ability Data Setting  *This is called when ability is chosen by AI, r4 = address of move in units move list
    00195944 - 001959d0: AI Ability Data Setting - Attack
    001959d4 - 00195a20: AI Ability Data Setting - AI Item Inventory
    00195a24 - 00195a2c: AI Ability Data Setting - Katana Inventory
    00195a30 - 00195a8c: AI Ability Data Setting - Weapon Inventory
    00195a90 - 00195b9c: AI Ability Data Setting - Jump
    00195ba0 - 00195bb8: AI Ability Data Setting - Charge
    00195bbc - 00195bfc: AI Ability Data Setting - Arithmeticks
    00195c00 - 00195d90: AI Ability Data Setting - Default
00195d94 - 00195f68: AI Initial Targeting Selection
00195f6c - 00195f88: Initialize some AI Data (mount, base hit %)
00195f8c - 00196198: set current ability CT/status change
0019619c - 0019629c: Non-Specific AI AutoBattle (Enemies)
001962a0 - 00196308: Get Longest Range Ability or Move
0019630c - 00196388:
0019638c - 00196898: Map movement decision/data setting
0019689c - 00196904:
00196908 - 00196938:
0019693c - 00196ad8:
00196adc - 00196c88:
00196c8c - 00196ce4: Check target type (r2 = 1 if target can't be targeted/dead without? reraise)
00196ce8 - 00196dac: Check if Unit can be Targeted (Cryst/Trea/Mount/Trans)
00196db0 - 00196e1c:
00196e20 - 00196ef0:
00196ef4 - 00196fc0:
00196fc4 - 001970b8:
001970bc - 001971b4:
001971b8 - 00197534: Set chosen ability/target for AI status (berserk, blood suck, confuse, frog, chicken)
00197538 - 001978e0: Store ability/skillset data, set AI settings for ability
001978e4 - 00197958: Find Direction of Target
0019795c - 00197b28: Range Calculation
00197b2c - 00197c64:
00197c68 - 00197d08: Checks map max X and Y
00197d0c - 00197e5c: Find which units are active
00197e60 - 00197f10: Chose Move from Move List
00197f14 - 00197ff0: Auto Battle Handling
00197ff4 - 001982d4: Choose Target and Set a bunch of stuff
001982d8 - 001984e8:
001984ec - 00198818:
0019881c - 00198b00:
00198b04 - 00198d7c: Find Peril Most Unit (00198b04)
00198d80 - 00198dec: Check for 0x00 status
00198df0 - 00198e5c:
00198e60 - 00199058:
0019905c - 00199120:
00199124 - 00199368: Calculate Physical Target
0019936c - 0019939c: Calculate Distance Between Units
001993a0 - 00199494:
00199498 - 001994f4:
001994f8 - 00199718: See if able to move to target
0019971c - 001998c4: Check for good units to target (based on distance,status,coordinate)
001998c8 - 001999c4: Check if Regen/Charm/DM/Reraise/DA Can be Inflicted
001999c8 - 00199b94:
00199b98 - 00199c84: Calculate Clockticks Until Unit Acts
00199c88 - 00199d1c: Get number of clockticks till able to revive dead unit
00199d20 - 00199ec4: Store hardcoded AI stuff (blood suck, frog, berserk abilities)
00199ec8 - 0019a2c8: Usable Ability Setting/ENTD AI Calculations
0019a2cc - 0019a2ec: Dividend * 4 / Divisor
0019a2f0 - 0019a528: Set AI Flags/Usable Abilities
0019a52c - 0019a5f4: Store Weapon? Attack Data
0019a5f8 - 0019aa4c: Usable Ability Setting
0019a63c - 0019a66c:  Part of the Weapon Inventory
0019a670 - 0019aa4c: Ability Loading
0019aa50 - 0019ab04: Load Known Ability Flag
0019ab08 - 0019ab44: Transfer Halfword Values
0019ab48 - 0019ab74: Transfer Byte Values
0019ab78 - 0019abb0: Word Nulling
0019abb4 - 0019ad70: Some Map calculations - height diff., coordinates
0019ad74 - 0019ae2c: Determine if Height Difference < 3
0019ae30 - 0019ae54:
0019ae58 - 0019aeec:
0019aef0 - 0019af14:
0019af18 - 0019b308: AI ability use control routine
0019b30c - 0019b4f0:
0019b4f4 - 0019b6ac:
0019b6b0 - 0019b750: Calculate Height Difference Between Units
0019b754 - 0019b7b4: See if elemental ability can be used
0019b7b8 - 0019bb1c:
0019bb20 - 0019bbb8: Check Unit for Crystal or Treasure Status
0019bbbc - 0019bf28:
0019bf2c - 0019c208: Find Highest Target Priority in Ability Range (0019bf2c)
0019c20c - 0019c27c:
0019c280 - 0019c3d0: Start searching for Highest Target Priority (0019c280)
0019c3d4 - 0019c8e8: Evaluate Linear Ability Behaviors
0019c8ec - 0019cb90: Check if Linear Ability hits anything (0019c8ec)
0019cb94 - 0019cd98: Some height/Map coordinate calculation for all units
0019cd9c - 0019d214:
0019d218 - 0019d290: See if any units are on target panel
0019d294 - 0019d304: Find Unit at Coordinates (0x19d294) | Get unit that matches coordinates
0019d308 - 0019d378:
0019d37c - 0019db7c: AI End of turn, in between turn, etc.
0019db80 - 0019dca8:
0019dcac - 0019dcb8: Store Skillset = 0
0019dcbc - 0019dd88: Call AI Ability Processing
0019dd8c - 0019e15c: AI ability processing
0019e160 - 0019e374: Transfer Unit Data to AI Data
0019e378 - 0019e53c: Transfer AI Data to Unit Data
0019e540 - 0019e5d4: See if any unit decided to use an ability
0019e5d8 - 0019ef20: AI Ability Use Decisions
0019ef24 - 0019efac: Check if Status Should/Can be Added
0019efb0 - 0019f018:
0019f01c - 0019f0d4: Set unit untargetable based on 19f0d8 routine
0019f0d8 - 0019f158: See if ability should be used based on CT
0019f15c - 0019f254: Status/CT based decision
0019f258 - 0019f2a0: Save Coordinates to Temp Unit | Store units coordinates
0019f2a4 - 0019f2f0: Transfer Unit Coordinates to AI

Effect, Projectile, & Particle Handling

001a0e80 - 001a0f6c: Effect Palette Setup
001a0f70 - 001a0f84:
001a0f88 - 001a0f9c:
001a0fa0 - 001a0fd0: Set Effect Frame Data Pointer | Get Start of Frame Pointers Address 
001a0fa0 - 001a0fd4:
001a0fd4 - 001a100c: Get Start of Parameter Sets Address
001a0fd8 - 001a100c:
001a1010 - 001a1040: Get Header before Motion Data Address
001a1044 - 001a1074: Get Coordinate Data Address
001a1078 - 001a10a8: Get Motion Data Address
001a10ac - 001a10e8: Get Misc. Data and Palette Data Addresses
001a10ec - 001a1194: Some sound effect prep
001a1198 - 001a11c8: Get (Unknown) Data Address
001a11cc - 001a11fc:
001a1200 - 001a1240:
001a1244 - 001a1284:
001a1288 - 001a12a0:
001a12a4 - 001a12d8: Load LBA sector and Byte length of effect
001a12dc - 001a1300:
001a1304 - 001a1324:
001a1328 - 001a1348:
001a134c - 001a13b8:
001a13bc - 001a15b0: Effect Related (0x1a13bc) | Effect prep, default to cure if invalid LBA Sector
001a15b4 - 001a1810: Ability animation uses animation flags (Ball Hardcoding)
001a1814 - 001a1850: Load ability effect Stores pre-cast effects, has some hardcodings. Also transfers lots of important effect data to 0x1bad0c
001a1854 - 001a187c: Check if ability is Item ability Checks 0x0800 flag, returns 1 if not item effect
001a1880 - 001a18a0: Play Effect | Increment effect section address loading directive 801b63e8
001a18a4 - 001a18c4:
001a18c8 - 001a18d4:
001a18d8 - 001a1c3c: Effect Stage Processing | Effect Control Routine | Load Effect section addresses
001a1c40 - 001a1c8c: Effect Cycle Processing
001a1c90 - 001a1d24: Effect Related (0x1a1c90)
001a1d28 - 001a1d98: Effect Related (0x1a1d28)
001a1d9c - 001a2080: Effect Related (0x1a1d9c)
001a2084 - 001a20b0: Clear some data in temp effect data
001a20b4 - 001a20e4: Clear some data in temp effect data 2
001a20e8 - 001a2210: Effect Related (0x1a20e8) | Initialize temp effect data?
001a2214 - 001a2234: [[Effect code script >= 2E]]
001a2238 - 001a2258: Effect code script 00 - Store next half as new counter, return 0 This byte creates a loop in the header section
001a225c - 001a227c: Effect code script 01 - store next half as new counter, return 1
001a2280 - 001a22f4: Effect code script 02
001a22f8 - 001a2368: Effect code script 03
001a236c - 001a2370: Effect code script 04 End effect?
001a236c - 001a23a4:
001a2374 - 001a23a4: Effect Code Script 0x05 | Effect code script 05 - Increment counter, store 2nd byte / 4 at 801bf000
001a23a8 - 001a2410: Effect code script 06
001a2414 - 001a2484: Effect code script 07
001a2488 - 001a2520: Effect code script 08
001a2524 - 001a255c: Effect code script 09
001a2560 - 001a2598: Effect code script 0A
001a259c - 001a2628: Effect code script 0B
001a262c - 001a2664: Effect code script 0C
001a2668 - 001a26a0: Effect code script 0D
001a26a4 - 001a2730: Effect code script 0E
001a2734 - 001a276c: Effect code script 0F
001a2770 - 001a27ac: Effect code script 10
001a27b0 - 001a280c: Effect code script 11
001a2810 - 001a286c: Effect code script 12
001a2870 - 001a28d0: Effect code script 13
001a28d4 - 001a2934: Effect code script 14
001a2938 - 001a2994: Effect code script 15
001a2998 - 001a29dc: Effect Code Script 0x16 | Effect code script 16 - check counter against 0x1c in temp effect data 
// Sets next half as counter if check is true, jumps out of loop
001a29e0 - 001a2a28: Effect code script 17
001a2a2c - 001a2a78: Effect code script 18
001a2a7c - 001a2b14: Effect code script 19
001a2b18 - 001a2b6c: Effect code script 1A
001a2b70 - 001a2bc4: Effect code script 1B
001a2bc8 - 001a2c24: Effect code script 1C
001a2c28 - 001a2c78: Effect Code Script 0x1d | Effect code script 1D - check timer against effect duration 
*jump out of loop if timer > effect duration
001a2c7c - 001a2cf8: Effect code script 1E - check all timing bytes 
// Seems to deal with time in between moving to next target primarily
001a2cfc - 001a2d44: Effect code script 1F - go to end if hit counter = 0?
001a2d48 - 001a2d90: Effect code script 20
001a2d94 - 001a2ddc: Effect code script 21
001a2de0 - 001a2e28: Effect code script 22
001a2e2c - 001a2e74: Effect code script 23
001a2e78 - 001a2eb0: Effect code script 24
001a2eb4 - 001a30e8: Effect code script 25 - Runs effect?
001a30ec - 001a3144: Effect code script 26
001a3148 - 001a31a4: Effect code script 27 - store first 4 words of on hit effects data
001a31a8 - 001a32e4: Effect text/transformation/animation display timing
001a32e8 - 001a3404: On-Hit effect sounds like when the healing is displayed in moogle
001a3408 - 001a3d2c: Effect code script 28 - huge big ol' routine Handles timing
001a3d30 - 001a3ffc:
001a4000 - 001a419c: Effect Related (0x1a4000)
001a41a0 - 001a4368:
001a436c - 001a4448:
001a444c - 001a45c4:
001a45c8 - 001a4788:
001a478c - 001a4834:
001a4838 - 001a4c40: Effect code script 29 - 'nother huge routine
001a4c44 - 001a4c80: Effect code script 2A - clear some temp effect data
001a4c84 - 001a4cbc: Effect code script 2B - clear some temp effect data 2
001a4cc0 - 001a4cd4: Effect code script 2C - Increment counter Useful for editing
001a4cd8 - 001a4cec: Effect code script 2D - duplicate of 2C
001a4cf0 - 001a4d98: Run Effect Block | Effect code script loop
001a4d9c - 001a4de4:
001a4de8 - 001a4e98: 0x1a4de8
001a4e9c - 001a4fd0:
001a4fd4 - 001a510c:
001a5110 - 001a51b8:
001a51bc - 001a5218:
001a521c - 001a5228:
001a522c - 001a52b0:
001a52b4 - 001a52ec:
001a52f0 - 001a5338:
001a533c - 001a5390:
001a5394 - 001a5794:
001a5798 - 001a5b44:
001a5b48 - 001a5c38:
001a5c3c - 001a5d70: 0x1a5c3c
001a5d74 - 001a5ea0:
001a5ea4 - 001a600c:
001a6010 - 001a601c:
001a6020 - 001a60a8:
001a60ac - 001a7f58: Effect Graphics | Emitter Control Routine
001a7f5c - 001a8668:
001a866c - 001a868c:
001a8690 - 001a8738:
001a873c - 001a87d4:
001a87d8 - 001a8830:
001a8834 - 001a8894:
001a8898 - 001a88cc:
001a88d0 - 001a8948:
001a894c - 001a89ac:
001a89b0 - 001a8a10:
001a8a14 - 001a8a40:
001a8a44 - 001a8a68:
001a8a6c - 001a8ae4:
001a8ae8 - 001a8b48:
001a8b4c - 001a8bac:
001a8bb0 - 001a8bdc:
001a8be0 - 001a8bf4:
001a8bf8 - 001a8c10: Modify Data 1
001a8c14 - 001a8c88:
001a8c8c - 001a8d00:
001a8d04 - 001a8d78: Modify Data 2
001a8d7c - 001a8df0:
001a8df4 - 001a8e70:
001a8e74 - 001a8f10:
001a8f14 - 001a90cc:
001a90d0 - 001a9314: Get Effect Screen Location Data From Unit Data | Modify based on first word of timing section header
001a9318 - 001a936c:
001a9370 - 001a9390:
001a9394 - 001a93b4:
001a93b8 - 001a93e8:
001a93ec - 001a941c:
001a9420 - 001a9450:
001a9454 - 001a9490:
001a9494 - 001a94d0:
001a94d4 - 001a9510:
001a9514 - 001a95e4:
001a95e8 - 001a96c4:
001a96c8 - 001a971c:
001a9720 - 001a97e4:
001a97e8 - 001a9830:
001a9834 - 001a9844:
001a9848 - 001a9858:
001a985c - 001a986c:
001a9870 - 001a9880:
001a9884 - 001a98c0:
001a98c4 - 001a9900:
001a9904 - 001a9940:
001a9944 - 001a9980:
001a9984 - 001a99a8: Store first section of on hit effects data
001a99ac - 001a99b8:
001a99bc - 001a99ec:
001a99f0 - 001a9a20:
001a9a24 - 001a9a38:
001a9a3c - 001a9a50:
001a9a54 - 001a9bac:
001a9bb0 - 001a9f40: Matrix / effect mathematics?
001a9f44 - 001aa004:
001aa008 - 001aa0e4:
001aa0e8 - 001aa19c:
001aa1a0 - 001aa1f4: Some parameter set stuff
001aa1f8 - 001aa7c0: Composite frame loading for parameter sets
001aa7c4 - 001aa7d8:
001aa7dc - 001aa8e4:
001aa8e8 - 001aa91c:
001aa920 - 001aaaf8:
001aaafc - 001aab40:
001aab44 - 001aab8c:
001aab90 - 001aac24: 0x1aab90
001aac28 - 001aad2c:
001aad30 - 001aad38:
001aad3c - 001aad94:
001aad98 - 001ab1d0: Effect Camera Rotation
001ab1d4 - 001ab58c: Effect Camera Movement
001ab590 - 001ab720:
001ab724 - 001aca54: Effect Related (0x1ab724)
001aca58 - 001acb04:
001acb08 - 001acf8c:
001acf90 - 001ad194: 0x1acf90
001ad198 - 001ad628: 0x1ad198
001ad62c - 001ad824:
001ad828 - 001ad940: Effect Related (0x1ad828)
001ad944 - 001adadc:
001adae0 - 001adb08:
001adb0c - 001adb38:
001adb3c - 001adc20:
001adc24 - 001add50:
001add54 - 001ade78: Effect Related (0x1add54)
001ade7c - 001adfa8:
001adfac - 001adfe8: Get Ninja Ball effect based on weapons element. Only valid entries for fire,water,lightning
001adfec - 001ae1a4: 
001ae1a8 - 001ae2c4: 
001ae2c8 - 001ae33c: 
001ae340 - 001af104: 
001af108 - 001af3a0: 
001af3a4 - 001af3d8: 
001af3dc - 001af598: Maths For Arcing Trajectory
001af59c - 001af6d4: Trajectory/Vectors maths routines (for arcing weapons)
001af6d8 - 001af730: 
001af734 - 001af76c: Give Gravity Impact
001af770 - 001af8b0: List targeting data of all valid units
001af8b4 - 001afb34: Seek Obstacle On Trajectory
001afb38 - 001afd8c: Set Arcing Trajectory
001afd90 - 001aff14: 
001aff18 - 001b045c: Set and Validate Arc Trajectory
001b0460 - 001b04d8: Arctan angle mod stuff
001b04dc - 001b06cc: 
001b06d0 - 001b0814: 
001b0818 - 001b0a8c: 
001b0a90 - 001b0c84: 
001b0c88 - 001b0cec: 
001b0cf0 - 001b0f04: 
001b0f08 - 001b0fe8: 
001b0fec - 001b0ff8: 
001b0ffc - 001b1538: 
001b153c - 001b1ae8: 
001b1aec - 001b1c00: 
001b1c04 - 001b27d8: 
001b27dc - 001b2848: 
001b284c - 001b2964: 
001b2970 - 001b2a84: 
001b2a88 - 001b2bf8: 
001b2c0c - 001b2d24: 
001b2d28 - 001b2e5c: 
001b2e68 - 001b3114: 
001b3120 - 001b33d0: 
001b33d4 - 001b381c: 
001b3820 - 001b3934: 
001b3938 - 001b40f4: 
001b40f8 - 001b4230:
001b4234 - 001b47dc: 
001b47e0 - 001b48cc: Effect Related (0x1b47e0)
END