Difference between revisions of "Prep Targets Post Action message"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(Created page with "<font face='Courier New'> 00073164: 27bdffd8 addiu r29,r29,0xffd8 00073168: afbf0020 sw r31,0x0020(r29) 0007316c: afb1001c sw r17,0x001c(r29) 00073170: afb00018 sw r16,0...")
 
Line 1: Line 1:
<font face='Courier New'>
+
BATTLE.BIN : Prep Targets Post Action message
 +
---------------------------------------------------------------------------------
 +
Parameters : nothing
 +
Returns : nothing
 
   
 
   
  00073164: 27bdffd8 addiu r29,r29,0xffd8
+
Loop through all target and set all post action messages data (0x80096248)
  00073168: afbf0020 sw r31,0x0020(r29)
+
---------------------------------------------------------------------------------
  0007316c: afb1001c sw r17,0x001c(r29)
+
  00073164: 27bdffd8 addiu r29,r29,-0x0028    |
  00073170: afb00018 sw r16,0x0018(r29)
+
  00073168: afbf0020 sw r31,0x0020(r29)       |
  00073174: 3c018009 lui r1,0x8009
+
  0007316c: afb1001c sw r17,0x001c(r29)       |
  00073178: ac206244 sw r0,0x6244(r1)
+
  00073170: afb00018 sw r16,0x0018(r29)       |
  0007317c: 0c01e875 jal 0x0007a1d4
+
  00073174: 3c018009 lui r1,0x8009           |
  00073180: 00008021 addu r16,r0,r0
+
  00073178: ac206244 sw r0,0x6244(r1)         |
  00073184: 00408821 addu r17,r2,r0
+
  0007317c: 0c01e875 jal 0x0007a1d4           |{{f/jal|Get casting unit's misc data|Get casting unit's misc data}}
  00073188: 9222018d lbu r2,0x018d(r17)
+
  00073180: 00008021 addu r16,r0,r0           |{{f/std|Initialize counter}}
  0007318c: 00000000 nop
+
  00073184: 00408821 addu r17,r2,r0           |{{f/std|Casting Unit misc data pointer}}
  00073190: 1840000b blez r2,0x000731c0
+
  00073188: 9222018d lbu r2,0x018d(r17)       |{{f/load|Nb of Target}}
  00073194: 02301021 addu r2,r17,r16
+
  0007318c: 00000000 nop                     |
  00073198: 9044018e lbu r4,0x018e(r2)
+
  00073190: 1840000b blez r2,0x000731c0       {{f/Cond|If no target : }} {{f/loc| Exit routine}}
  0007319c: 0c01e9c9 jal 0x0007a724
+
  00073194: 02301021 addu r2,r17,r16         |{{f/adr|Casting Unit misc data pointer - used to load Target ID}}
  000731a0: 26100001 addiu r16,r16,0x0001
+
                                            {{f/bloop|Loop through all targets}}
  000731a4: 0c01cb63 jal 0x00072d8c
+
  00073198: 9044018e lbu r4,0x018e(r2)           |{{f/load|This iteration Target ID}}
  000731a8: 00402021 addu r4,r2,r0
+
  0007319c: 0c01e9c9 jal 0x0007a724               |{{f/jal|Get_unit_misc_data_that_matches_r4_ID|Get_unit_misc_data_that_matches_r4_ID}}
  000731ac: 9222018d lbu r2,0x018d(r17)
+
  000731a0: 26100001 addiu r16,r16,0x0001         |{{f/std|Counter + 1}}
  000731b0: 00000000 nop
+
  000731a4: 0c01cb63 jal 0x00072d8c               |{{f/jal|Set_Post_Effect_Messages_data|Set_Post_Effect_Messages_data}}
  000731b4: 0202102a slt r2,r16,r2
+
  000731a8: 00402021 addu r4,r2,r0               |
  000731b8: 1440fff7 bne r2,r0,0x00073198
+
  000731ac: 9222018d lbu r2,0x018d(r17)           |{{f/load|Limit}}
  000731bc: 02301021 addu r2,r17,r16
+
  000731b0: 00000000 nop                         |
  000731c0: 8fbf0020 lw r31,0x0020(r29)
+
  000731b4: 0202102a slt r2,r16,r2               |
 +
  000731b8: 1440fff7 bne r2,r0,0x00073198     {{f/Cond|Loop}}
 +
  000731bc: 02301021 addu r2,r17,r16             |{{f/adr|Target offset in Casting unit Misc data}}
 +
  000731c0: 8fbf0020 lw r31,0x0020(r29)       END
 
  000731c4: 8fb1001c lw r17,0x001c(r29)
 
  000731c4: 8fb1001c lw r17,0x001c(r29)
 
  000731c8: 8fb00018 lw r16,0x0018(r29)
 
  000731c8: 8fb00018 lw r16,0x0018(r29)
Line 30: Line 36:
 
  000731d0: 03e00008 jr r31
 
  000731d0: 03e00008 jr r31
 
  000731d4: 00000000 nop
 
  000731d4: 00000000 nop
</font>
+
=== Return location ===
 +
'''BATTLE.BIN'''
 +
00073310: [[Battle_Message_Display]]

Revision as of 13:56, 20 June 2023

BATTLE.BIN : Prep Targets Post Action message
---------------------------------------------------------------------------------
Parameters : nothing
Returns : nothing

Loop through all target and set all post action messages data (0x80096248)
---------------------------------------------------------------------------------
00073164: 27bdffd8 addiu r29,r29,-0x0028    |
00073168: afbf0020 sw r31,0x0020(r29)       |
0007316c: afb1001c sw r17,0x001c(r29)       |
00073170: afb00018 sw r16,0x0018(r29)       |
00073174: 3c018009 lui r1,0x8009            |
00073178: ac206244 sw r0,0x6244(r1)         |
0007317c: 0c01e875 jal 0x0007a1d4           |-->Get casting unit's misc data
00073180: 00008021 addu r16,r0,r0           |Initialize counter
00073184: 00408821 addu r17,r2,r0           |Casting Unit misc data pointer
00073188: 9222018d lbu r2,0x018d(r17)       |Nb of Target
0007318c: 00000000 nop                      |
00073190: 1840000b blez r2,0x000731c0       #If no target :   Exit routine
00073194: 02301021 addu r2,r17,r16          |Casting Unit misc data pointer - used to load Target ID
                                            @Loop through all targets
00073198: 9044018e lbu r4,0x018e(r2)            |This iteration Target ID
0007319c: 0c01e9c9 jal 0x0007a724               |-->Get_unit_misc_data_that_matches_r4_ID
000731a0: 26100001 addiu r16,r16,0x0001         |Counter + 1
000731a4: 0c01cb63 jal 0x00072d8c               |-->Set_Post_Effect_Messages_data
000731a8: 00402021 addu r4,r2,r0                |
000731ac: 9222018d lbu r2,0x018d(r17)           |Limit
000731b0: 00000000 nop                          |
000731b4: 0202102a slt r2,r16,r2                |
000731b8: 1440fff7 bne r2,r0,0x00073198     #Loop
000731bc: 02301021 addu r2,r17,r16              |Target offset in Casting unit Misc data
000731c0: 8fbf0020 lw r31,0x0020(r29)       END
000731c4: 8fb1001c lw r17,0x001c(r29)
000731c8: 8fb00018 lw r16,0x0018(r29)
000731cc: 27bd0028 addiu r29,r29,0x0028
000731d0: 03e00008 jr r31
000731d4: 00000000 nop

Return location

BATTLE.BIN
00073310: Battle_Message_Display