Difference between revisions of "Transparent Calculation"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
m
Line 1: Line 1:
  Transparent Calculation
+
=== Transparent Calculation ===
  001854b8: 3c028019 lui r2,0x8019
+
Parameters : None - Returns Nothing
  001854bc: 8c422d94 lw r2,0x2d94(r2) Load Attacker's Data Pointer
+
  001854c0: 27bdffe8 addiu r29,r29,0xffe8
+
If Attacker is Transparent : Nullify all current ability Evasion Byte (0x801938de to 0x801938e1)
  001854c4: afbf0010 sw r31,0x0010(r29)
+
---------------------------------------------------------------------------------------------------------
  001854c8: 9042005a lbu r2,0x005a(r2) Load Attacker's 3rd set of statuses
+
  001854b8: 3c028019 lui r2,0x8019           |
  001854cc: 00000000 nop
+
  001854bc: 8c422d94 lw r2,0x2d94(r2)         |{{f/adr|<nowiki>r2 = Attacker data pointer</nowiki>}} {{f/adr|Load Attacker's Data Pointer}}
  001854d0: 30420010 andi r2,r2,0x0010
+
  001854c0: 27bdffe8 addiu r29,r29,-0x0018    |
  001854d4: 10400005 beq r2,r0,0x001854ec Branch if Attacker isn't Transparent
+
  001854c4: afbf0010 sw r31,0x0010(r29)       |
  001854d8: 00000000 nop
+
  001854c8: 9042005a lbu r2,0x005a(r2)       |{{f/load|<nowiki>r2 = Attacker 3rd set of statuses byte</nowiki>}} {{f/load|Load Attacker's 3rd set of statuses}}
  001854dc: 3c048019 lui r4,0x8019
+
  001854cc: 00000000 nop                     |
  001854e0: 248438de addiu r4,r4,0x38de Prep Evade Pointer
+
  001854d0: 30420010 andi r2,r2,0x0010       |{{f/std|<nowiki>r2 = 0x10 if Attacker is Transparent</nowiki>}}
  001854e4: 0c017991 jal 0x0005e644 [[Data Nullifying]] (evade)
+
  001854d4: 10400005 beq r2,r0,0x001854ec     {{f/Cond|If Attacker is transparent}} {{f/Cond|Branch if Attacker isn't Transparent}}
  001854e8: 34050004 ori r5,r0,0x0004 r5 = 4 (all 4 evades)
+
  001854d8: 00000000 nop                         |{{f/std|}}
  001854ec: 8fbf0010 lw r31,0x0010(r29)
+
  001854dc: 3c048019 lui r4,0x8019               |{{f/std|}}
  001854f0: 27bd0018 addiu r29,r29,0x0018
+
  001854e0: 248438de addiu r4,r4,0x38de           |{{f/adr|<nowiki>r4 = 0x801938de (Current Ability Accessory Evade data pointer)</nowiki>}} {{f/std|Prep Evade Pointer}}
  001854f4: 03e00008 jr r31
+
  001854e4: 0c017991 jal 0x0005e644               |{{f/jal|Data Nullifying |Data Nullifying }} Nullify All Ability Evasion byte (0x801938de to 0x801938e1)
  001854f8: 00000000 nop
+
  001854e8: 34050004 ori r5,r0,0x0004             |{{f/std|<nowiki>r5 = 0x04 (number of byte to nullify)</nowiki>}}
 
+
  001854ec: 8fbf0010 lw r31,0x0010(r29)       '''END'''
 
+
  001854f0: 27bd0018 addiu r29,r29,0x0018    
== Return Locations ==
+
  001854f4: 03e00008 jr r31                  
 
+
  001854f8: 00000000 nop                    
*Battle.bin
+
=== Return Locations ===
 
+
'''Battle.bin'''
  00185364: [[Dark/Confuse Caclulation]]
+
  0018536c: [[Dark/Confuse Caclulation]]
  001885c8: [[Magical Evade Calculation]]
+
  001885d0: [[Magical Evade Calculation]]

Revision as of 20:00, 22 March 2022

Transparent Calculation

Parameters : None  - Returns Nothing

If Attacker is Transparent : Nullify all current ability Evasion Byte (0x801938de to 0x801938e1)
---------------------------------------------------------------------------------------------------------
001854b8: 3c028019 lui r2,0x8019            |
001854bc: 8c422d94 lw r2,0x2d94(r2)         |r2 = Attacker data pointer Load Attacker's Data Pointer
001854c0: 27bdffe8 addiu r29,r29,-0x0018    |
001854c4: afbf0010 sw r31,0x0010(r29)       |
001854c8: 9042005a lbu r2,0x005a(r2)        |r2 = Attacker 3rd set of statuses byte Load Attacker's 3rd set of statuses
001854cc: 00000000 nop                      |
001854d0: 30420010 andi r2,r2,0x0010        |r2 = 0x10 if Attacker is Transparent
001854d4: 10400005 beq r2,r0,0x001854ec     #If Attacker is transparent #Branch if Attacker isn't Transparent
001854d8: 00000000 nop                          |
001854dc: 3c048019 lui r4,0x8019                |
001854e0: 248438de addiu r4,r4,0x38de           |r4 = 0x801938de (Current Ability Accessory Evade data pointer) Prep Evade Pointer
001854e4: 0c017991 jal 0x0005e644               |-->Data Nullifying  Nullify All Ability Evasion byte (0x801938de to 0x801938e1)
001854e8: 34050004 ori r5,r0,0x0004             |r5 = 0x04 (number of byte to nullify)
001854ec: 8fbf0010 lw r31,0x0010(r29)       END
001854f0: 27bd0018 addiu r29,r29,0x0018     
001854f4: 03e00008 jr r31                   
001854f8: 00000000 nop                      

Return Locations

Battle.bin
0018536c: Dark/Confuse Caclulation
001885d0: Magical Evade Calculation