Difference between revisions of "Set target state for all units panels"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(Created page with "<font face='Courier New'> 0017a64c: 00003021 addu r6,r0,r0 0017a650: 00002821 addu r5,r0,r0 0017a654: 3407003f ori r7,r0,0x003f 0017a658: 3c038019 lui r3,0x8019 0017a65...")
 
Line 1: Line 1:
 
<font face='Courier New'>
 
<font face='Courier New'>
 +
Set target state for all units panels 17a6dc: [[0017a6dc - 0017a7b8]]
 
   
 
   
  0017a64c: 00003021 addu r6,r0,r0
+
001810a0: [[Map Location Calculation]]
  0017a650: 00002821 addu r5,r0,r0
+
  0017a654: 3407003f ori r7,r0,0x003f
+
0017a6dc: 27bdffc8 addiu r29,r29,0xffc8
  0017a658: 3c038019 lui r3,0x8019
+
  0017a6e0: afb10014 sw r17,0x0014(r29) Store 0x0 onto Stack
  0017a65c: 2463f8cc addiu r3,r3,0xf8cc
+
0017a6e4: 00808821 addu r17,r4,r0
  0017a660: 3c048019 lui r4,0x8019
+
0017a6e8: afb7002c sw r23,0x002c(r29) Store 0x0 onto Stack
  0017a664: 24842dd8 addiu r4,r4,0x2dd8
+
0017a6ec: 30b70080 andi r23,r5,0x0080 0x0 & 0x80
  0017a668: 90820001 lbu r2,0x0001(r4)
+
0017a6f0: afb60028 sw r22,0x0028(r29) Store 0x0 onto Stack
  0017a66c: 00000000 nop
+
0017a6f4: 30b60040 andi r22,r5,0x0040 0x0 & 0x40
  0017a670: 1040000f beq r2,r0,0x0017a6b0
+
0017a6f8: afb3001c sw r19,0x001c(r29) Store 0x0 onto Stack
  0017a674: 00000000 nop
+
  0017a6fc: 00009821 addu r19,r0,r0
  0017a678: 90620006 lbu r2,0x0006(r3)
+
  0017a700: afb40020 sw r20,0x0020(r29) Store 0x0 onto Stack
  0017a67c: 00000000 nop
+
0017a704: 34140001 ori r20,r0,0x0001 r20 = (0x1) 1
  0017a680: 30420001 andi r2,r2,0x0001
+
0017a708: afbf0030 sw r31,0x0030(r29) Store 0x0 onto Stack
  0017a684: 1440000a bne r2,r0,0x0017a6b0
+
  0017a70c: afb50024 sw r21,0x0024(r29) Store 0x0 onto Stack
  0017a688: 00000000 nop
+
0017a710: afb20018 sw r18,0x0018(r29) Store 0x0 onto Stack
  0017a68c: 90620000 lbu r2,0x0000(r3)
+
0017a714: afb00010 sw r16,0x0010(r29) Store 0x0 onto Stack
  0017a690: 00000000 nop
+
  0017a718: 92350005 lbu r21,0x0005(r17) Load ENTD Flags
  0017a694: 3042003f andi r2,r2,0x003f
+
0017a71c: 92230001 lbu r3,0x0001(r17) Load ???
  0017a698: 10470005 beq r2,r7,0x0017a6b0
+
  0017a720: 340200ff ori r2,r0,0x00ff r2 = (0xFF) 255
  0017a69c: 00000000 nop
+
0017a724: 10620015 beq r3,r2,0x0017a77c Branch if  == FF (255)
  0017a6a0: 90620005 lbu r2,0x0005(r3)
+
  0017a728: 02202021 addu r4,r17,r0
  0017a6a4: 24c60001 addiu r6,r6,0x0001
+
  0017a72c: 922201ba lbu r2,0x01ba(r17) Load ???
  0017a6a8: 0805e9af j 0x0017a6bc
+
  0017a730: 00000000 nop
  0017a6ac: 34420040 ori r2,r2,0x0040
+
  0017a734: 02a28026 xor r16,r21,r2 r16 =
  0017a6b0: 90620005 lbu r2,0x0005(r3)
+
0017a738: 0c060428 jal 0x001810a0 [[Map Location Calculation]]
  0017a6b4: 00000000 nop
+
0017a73c: 02009021 addu r18,r16,r0
  0017a6b8: 304200bf andi r2,r2,0x00bf
+
0017a740: 00021880 sll r3,r2,0x02 Shift left 2 bits (*0x4) (*4)
  0017a6bc: a0620005 sb r2,0x0005(r3)
+
0017a744: 00621821 addu r3,r3,r2
  0017a6c0: 24630008 addiu r3,r3,0x0008
+
  0017a748: 3c028019 lui r2,0x8019
  0017a6c4: 24a50001 addiu r5,r5,0x0001
+
  0017a74c: 24422dd8 addiu r2,r2,0x2dd8
  0017a6c8: 28a20200 slti r2,r5,0x0200
+
0017a750: 12e00005 beq r23,r0,0x0017a768 Branch if  == 0x0
  0017a6cc: 1440ffe6 bne r2,r0,0x0017a668
+
  0017a754: 00621821 addu r3,r3,r2
  0017a6d0: 24840005 addiu r4,r4,0x0005
+
  0017a758: 32020030 andi r2,r16,0x0030 r2 = team check
  0017a6d4: 03e00008 jr r31
+
  0017a75c: 14400002 bne r2,r0,0x0017a768 Branch if enemy
  0017a6d8: 00c01021 addu r2,r6,r0
+
  0017a760: 00000000 nop
</font>
+
  0017a764: a0740001 sb r20,0x0001(r3) Store panel is targeted
 +
  0017a768: 12c00004 beq r22,r0,0x0017a77c Branch if  == 0x0
 +
  0017a76c: 32420030 andi r2,r18,0x0030 r2 = team check
 +
  0017a770: 10400002 beq r2,r0,0x0017a77c Branch if  ally team?
 +
  0017a774: 00000000 nop
 +
  0017a778: a0740001 sb r20,0x0001(r3) Store panel is targeted
 +
  0017a77c: 26730001 addiu r19,r19,0x0001
 +
  0017a780: 2a620015 slti r2,r19,0x0015 Do for each unit
 +
  0017a784: 1440ffe5 bne r2,r0,0x0017a71c
 +
0017a788: 00000000 nop
 +
  0017a78c: 8fbf0030 lw r31,0x0030(r29) Load Stack + 0x30
 +
  0017a790: 8fb7002c lw r23,0x002c(r29) Load Stack + 0x2C
 +
  0017a794: 8fb60028 lw r22,0x0028(r29) Load Stack + 0x28
 +
0017a798: 8fb50024 lw r21,0x0024(r29) Load Stack + 0x24
 +
  0017a79c: 8fb40020 lw r20,0x0020(r29) Load Stack + 0x20
 +
  0017a7a0: 8fb3001c lw r19,0x001c(r29) Load Stack + 0x1C
 +
  0017a7a4: 8fb20018 lw r18,0x0018(r29) Load Stack + 0x18
 +
  0017a7a8: 8fb10014 lw r17,0x0014(r29) Load Stack + 0x14
 +
  0017a7ac: 8fb00010 lw r16,0x0010(r29) Load Stack + 0x10
 +
  0017a7b0: 27bd0038 addiu r29,r29,0x0038
 +
  0017a7b4: 03e00008 jr r31 Jump to Address
 +
  0017a7b8: 00000000 nop
 +
 +
</font>

Revision as of 22:19, 14 February 2015

Set target state for all units panels 17a6dc: 0017a6dc - 0017a7b8

	001810a0: Map Location Calculation

0017a6dc: 27bdffc8 addiu r29,r29,0xffc8			
0017a6e0: afb10014 sw r17,0x0014(r29)			Store 0x0 onto Stack
0017a6e4: 00808821 addu r17,r4,r0
0017a6e8: afb7002c sw r23,0x002c(r29)			Store 0x0 onto Stack
0017a6ec: 30b70080 andi r23,r5,0x0080			0x0 & 0x80
0017a6f0: afb60028 sw r22,0x0028(r29)			Store 0x0 onto Stack
0017a6f4: 30b60040 andi r22,r5,0x0040			0x0 & 0x40
0017a6f8: afb3001c sw r19,0x001c(r29)			Store 0x0 onto Stack
0017a6fc: 00009821 addu r19,r0,r0
0017a700: afb40020 sw r20,0x0020(r29)			Store 0x0 onto Stack
0017a704: 34140001 ori r20,r0,0x0001			r20 = (0x1) 1
0017a708: afbf0030 sw r31,0x0030(r29)			Store 0x0 onto Stack
0017a70c: afb50024 sw r21,0x0024(r29)			Store 0x0 onto Stack
0017a710: afb20018 sw r18,0x0018(r29)			Store 0x0 onto Stack
0017a714: afb00010 sw r16,0x0010(r29)			Store 0x0 onto Stack
0017a718: 92350005 lbu r21,0x0005(r17)			Load ENTD Flags
0017a71c: 92230001 lbu r3,0x0001(r17)			Load ???
0017a720: 340200ff ori r2,r0,0x00ff			r2 = (0xFF) 255
0017a724: 10620015 beq r3,r2,0x0017a77c			Branch if  == FF (255)
0017a728: 02202021 addu r4,r17,r0
0017a72c: 922201ba lbu r2,0x01ba(r17)			Load ???
0017a730: 00000000 nop
0017a734: 02a28026 xor r16,r21,r2			r16 = 
0017a738: 0c060428 jal 0x001810a0			Map Location Calculation
0017a73c: 02009021 addu r18,r16,r0
0017a740: 00021880 sll r3,r2,0x02			Shift left 2 bits (*0x4) (*4)
0017a744: 00621821 addu r3,r3,r2
0017a748: 3c028019 lui r2,0x8019			
0017a74c: 24422dd8 addiu r2,r2,0x2dd8
0017a750: 12e00005 beq r23,r0,0x0017a768			Branch if  == 0x0
0017a754: 00621821 addu r3,r3,r2
0017a758: 32020030 andi r2,r16,0x0030			 r2 = team check
0017a75c: 14400002 bne r2,r0,0x0017a768			Branch if enemy
0017a760: 00000000 nop
0017a764: a0740001 sb r20,0x0001(r3)			Store panel is targeted
0017a768: 12c00004 beq r22,r0,0x0017a77c			Branch if  == 0x0
0017a76c: 32420030 andi r2,r18,0x0030			r2 = team check
0017a770: 10400002 beq r2,r0,0x0017a77c			Branch if  ally team?
0017a774: 00000000 nop
0017a778: a0740001 sb r20,0x0001(r3)			Store panel is targeted
0017a77c: 26730001 addiu r19,r19,0x0001
0017a780: 2a620015 slti r2,r19,0x0015			Do for each unit
0017a784: 1440ffe5 bne r2,r0,0x0017a71c			
0017a788: 00000000 nop
0017a78c: 8fbf0030 lw r31,0x0030(r29)			Load Stack + 0x30
0017a790: 8fb7002c lw r23,0x002c(r29)			Load Stack + 0x2C
0017a794: 8fb60028 lw r22,0x0028(r29)			Load Stack + 0x28
0017a798: 8fb50024 lw r21,0x0024(r29)			Load Stack + 0x24
0017a79c: 8fb40020 lw r20,0x0020(r29)			Load Stack + 0x20
0017a7a0: 8fb3001c lw r19,0x001c(r29)			Load Stack + 0x1C
0017a7a4: 8fb20018 lw r18,0x0018(r29)			Load Stack + 0x18
0017a7a8: 8fb10014 lw r17,0x0014(r29)			Load Stack + 0x14
0017a7ac: 8fb00010 lw r16,0x0010(r29)			Load Stack + 0x10
0017a7b0: 27bd0038 addiu r29,r29,0x0038			
0017a7b4: 03e00008 jr r31			Jump to Address
0017a7b8: 00000000 nop