Difference between revisions of "Remove Status"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(Created page with " 0018b9f8: 3c028019 lui r2,0x8019 0018b9fc: 90423906 lbu r2,0x3906(r2) Load Status Infliction Type 0018ba00: 00000000 nop 0018ba04: 30420010 andi r2,r2,0x0010 001...")
 
m (notes + return link)
Line 1: Line 1:
 
  0018b9f8: 3c028019 lui r2,0x8019
 
  0018b9f8: 3c028019 lui r2,0x8019
  0018b9fc: 90423906 lbu r2,0x3906(r2) Load Status Infliction Type
+
  0018b9fc: 90423906 lbu r2,0x3906(r2) r2 =Current ability Status Infliction Type
 
  0018ba00: 00000000 nop
 
  0018ba00: 00000000 nop
  0018ba04: 30420010 andi r2,r2,0x0010
+
  0018ba04: 30420010 andi r2,r2,0x0010           r2 = 0x10 if cancel / Else 0x00
  0018ba08: 1040000c beq r2,r0,0x0018ba3c Branch to end if Infliction type is not Cancel
+
  0018ba08: 1040000c beq r2,r0,0x0018ba3c #If Infliction type is cancel / Else return
  0018ba0c: 00000000 nop
+
  0018ba0c: 00000000 nop                             |
  0018ba10: 00001821 addu r3,r0,r0 r3 = 0x00 (set counter)
+
  0018ba10: 00001821 addu r3,r0,r0                   |r3 = 0x00 (loop counter)
  0018ba14: 3c018019 lui r1,0x8019
+
  0018ba14: 3c018019 lui r1,0x8019                   @ Loop start
  0018ba18: 00230821 addu r1,r1,r3 0x80190000 + Counter
+
  0018ba18: 00230821 addu r1,r1,r3                       |r1 = 0x80190000 + Counter
  0018ba1c: 90223907 lbu r2,0x3907(r1) Load Status Set  
+
  0018ba1c: 90223907 lbu r2,0x3907(r1)                   |Load Status Set X (1 to 5 while looping)
  0018ba20: 3c018019 lui r1,0x8019
+
  0018ba20: 3c018019 lui r1,0x8019                       |
  0018ba24: 00230821 addu r1,r1,r3 Status Set 1
+
  0018ba24: 00230821 addu r1,r1,r3                       |r1 = 0x80190000 + Counter
  0018ba28: a0223860 sb r2,0x3860(r1) Store cured status 0x80193860 - 0x80193864
+
  0018ba28: a0223860 sb r2,0x3860(r1)                   |Store cured status in current ability section 0x80193860 - 0x80193864
  0018ba2c: 24630001 addiu r3,r3,0x0001 Counter + 1
+
  0018ba2c: 24630001 addiu r3,r3,0x0001                 |r3 = r3 +1 - Counter + 1
  0018ba30: 28620005 slti r2,r3,0x0005 Counter limit
+
  0018ba30: 28620005 slti r2,r3,0x0005                   |r2 = 0x01 while r3 < 5 (Counter limit)
  0018ba34: 1440fff7 bne r2,r0,0x0018ba14 Branch if limit has yet been reached
+
  0018ba34: 1440fff7 bne r2,r0,0x0018ba14           ^Loop while r2 = 0x01
 
  0018ba38: 00000000 nop
 
  0018ba38: 00000000 nop
  0018ba3c: 03e00008 jr r31 Return
+
  0018ba3c: 03e00008 jr r31 |Return
 
  0018ba40: 00000000 nop
 
  0018ba40: 00000000 nop
 +
 +
==Return locations==
 +
0018b930: [[Pre_Formula_Setup_(FDC)]]

Revision as of 19:52, 6 June 2021

0018b9f8: 3c028019 lui r2,0x8019		
0018b9fc: 90423906 lbu r2,0x3906(r2)		r2 =Current ability Status Infliction Type
0018ba00: 00000000 nop				
0018ba04: 30420010 andi r2,r2,0x0010           r2 = 0x10 if cancel / Else 0x00
0018ba08: 1040000c beq r2,r0,0x0018ba3c	#If Infliction type is cancel / Else return
0018ba0c: 00000000 nop	                            |			
0018ba10: 00001821 addu r3,r0,r0                   |r3 = 0x00 (loop counter)
0018ba14: 3c018019 lui r1,0x8019                   @ Loop start
0018ba18: 00230821 addu r1,r1,r3                       |r1 = 0x80190000 + Counter
0018ba1c: 90223907 lbu r2,0x3907(r1)                   |Load Status Set X (1 to 5 while looping)
0018ba20: 3c018019 lui r1,0x8019                       |
0018ba24: 00230821 addu r1,r1,r3                       |r1 = 0x80190000 + Counter
0018ba28: a0223860 sb r2,0x3860(r1)                    |Store cured status in current ability section 0x80193860 - 0x80193864
0018ba2c: 24630001 addiu r3,r3,0x0001                  |r3 = r3 +1 - Counter + 1
0018ba30: 28620005 slti r2,r3,0x0005                   |r2 = 0x01 while r3 < 5 (Counter limit)
0018ba34: 1440fff7 bne r2,r0,0x0018ba14            ^Loop while r2 = 0x01 
0018ba38: 00000000 nop				
0018ba3c: 03e00008 jr r31			|Return
0018ba40: 00000000 nop

Return locations

0018b930: Pre_Formula_Setup_(FDC)