Difference between revisions of "Effect Related (0x1a18d8)"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
(Created page with " 801a18d8: 3c04801b lui r4,0x801b 801a18dc: 8c8463e8 lw r4,0x63e8(r4) # value = *0x801b63e8 801a18e0: 27bdffe0 addiu r29,r29,-0x0020 801a18e4: afb00010 sw r16...")
 
(Redirected page to Effect Stage Processing)
Tag: New redirect
 
Line 1: Line 1:
801a18d8: 3c04801b lui r4,0x801b
+
#REDIRECT [[Effect Stage Processing]]
801a18dc: 8c8463e8 lw r4,0x63e8(r4)            #   value = *0x801b63e8
 
801a18e0: 27bdffe0 addiu r29,r29,-0x0020
 
801a18e4: afb00010 sw r16,0x0010(r29)
 
801a18e8: 3c10801c lui r16,0x801c
 
801a18ec: 8610bf90 lh r16,-0x4070(r16)          #  *0x801bbf90
 
801a18f0: afbf001c sw r31,0x001c(r29)
 
801a18f4: afb20018 sw r18,0x0018(r29)
 
801a18f8: 2c820007 sltiu r2,r4,0x0007
 
801a18fc: 104000c8 beq r2,r0,0x801a1c20        #  if (*0x801b63e8 >= 7) return an unpredictable value (uninitialized GPR $v1)
 
801a1900: afb10014 sw r17,0x0014(r29)
 
801a1904: 00041080 sll r2,r4,0x02              #  value * 4
 
801a1908: 3c01801a lui r1,0x801a
 
801a190c: 00220821 addu r1,r1,r2
 
801a1910: 8c220dc4 lw r2,0x0dc4(r1)            #  [Code pointer] = *0x801a0dc4 + (value * 4)
 
801a1914: 00000000 nop
 
801a1918: 00400008 jr r2                        #  Jump to [Code pointer] - see switch statement below
 
801a191c: 00000000 nop
 
 
#  [value]     [RAM Address]  [Code pointer]
 
#  0          801a0dc4        801a1bb8
 
#  1          801a0dc8        801a195c
 
#  2          801a0dcc        801a1920
 
#  3          801a0dd0        801a1964
 
#  4          801a0dd4        801a1ab0
 
#  5          801a0dd8        801a1c20
 
#  6          801a0ddc        801a1bc0
 
 
                                                #  if (*0x801b63e8 == 5) return an unpredictable value (uninitialized GPR $v1)
 
                                                #  switch (value) {
 
                                                #      case 2:
 
801a1920: 0c024c46 jal 0x80093118
 
801a1924: 00000000 nop
 
801a1928: 0c04d0ef jal 0x801343bc
 
801a192c: 00000000 nop
 
801a1930: 3c04801c lui r4,0x801c
 
801a1934: 848424d0 lh r4,0x24d0(r4)
 
801a1938: 0c0683a0 jal 0x801a0e80
 
801a193c: 00000000 nop
 
801a1940: 34020003 ori r2,r0,0x0003
 
801a1944: 3c01801b lui r1,0x801b
 
801a1948: ac2263e8 sw r2,0x63e8(r1)
 
801a194c: 3c01801c lui r1,0x801c
 
801a1950: a420f000 sh r0,-0x1000(r1)
 
801a1954: 0c0237a4 jal 0x8008de90
 
801a1958: 00000000 nop
 
                                                #      case 1:
 
801a195c: 08068708 j 0x801a1c20                #          return 1;
 
801a1960: 34030001 ori r3,r0,0x0001
 
                                                #      case 3:
 
801a1964: 3c04801c lui r4,0x801c
 
801a1968: 8c84bf80 lw r4,-0x4080(r4)
 
801a196c: 3c058001 lui r5,0x8001
 
801a1970: 8ca5000c lw r5,0x000c(r5)
 
801a1974: 0c069367 jal 0x801a4d9c
 
801a1978: 00a42823 subu r5,r5,r4
 
801a197c: 0c06aa3a jal 0x801aa8e8
 
801a1980: 00000000 nop
 
801a1984: 0c06aa48 jal 0x801aa920
 
801a1988: 00000000 nop
 
801a198c: 0c0238d2 jal 0x8008e348
 
801a1990: 00000000 nop
 
801a1994: 3c04801c lui r4,0x801c
 
801a1998: 848424d0 lh r4,0x24d0(r4)
 
801a199c: 0c0683e8 jal 0x801a0fa0
 
801a19a0: 00000000 nop
 
801a19a4: 3c04801c lui r4,0x801c
 
801a19a8: 848424d0 lh r4,0x24d0(r4)
 
801a19ac: 0c0683f6 jal 0x801a0fd8
 
801a19b0: 00000000 nop
 
801a19b4: 3c04801c lui r4,0x801c
 
801a19b8: 848424d0 lh r4,0x24d0(r4)
 
801a19bc: 0c068404 jal 0x801a1010
 
801a19c0: 00000000 nop
 
801a19c4: 3c04801c lui r4,0x801c
 
801a19c8: 848424d0 lh r4,0x24d0(r4)
 
801a19cc: 0c068411 jal 0x801a1044
 
801a19d0: 00000000 nop
 
801a19d4: 3c04801c lui r4,0x801c
 
801a19d8: 848424d0 lh r4,0x24d0(r4)
 
801a19dc: 0c06841e jal 0x801a1078
 
801a19e0: 00000000 nop
 
801a19e4: 3c04801c lui r4,0x801c
 
801a19e8: 848424d0 lh r4,0x24d0(r4)
 
801a19ec: 0c06842b jal 0x801a10ac
 
801a19f0: 00000000 nop
 
801a19f4: 3c04801c lui r4,0x801c
 
801a19f8: 848424d0 lh r4,0x24d0(r4)
 
801a19fc: 0c06843b jal 0x801a10ec
 
801a1a00: 00000000 nop
 
801a1a04: 3c04801c lui r4,0x801c
 
801a1a08: 848424d0 lh r4,0x24d0(r4)
 
801a1a0c: 0c068466 jal 0x801a1198
 
801a1a10: 00000000 nop
 
801a1a14: 3c04801c lui r4,0x801c
 
801a1a18: 848424d0 lh r4,0x24d0(r4)
 
801a1a1c: 0c068473 jal 0x801a11cc
 
801a1a20: 00000000 nop
 
801a1a24: 3c02801c lui r2,0x801c
 
801a1a28: 9042ad0f lbu r2,-0x52f1(r2)
 
801a1a2c: 00000000 nop
 
801a1a30: 10400012 beq r2,r0,0x801a1a7c
 
801a1a34: 00002821 addu r5,r0,r0
 
801a1a38: 3c04801c lui r4,0x801c
 
801a1a3c: 8c84acc8 lw r4,-0x5338(r4)
 
801a1a40: 00000000 nop
 
801a1a44: 90820004 lbu r2,0x0004(r4)
 
801a1a48: 00000000 nop
 
801a1a4c: 10400006 beq r2,r0,0x801a1a68
 
801a1a50: 34020064 ori r2,r0,0x0064
 
801a1a54: 3c03801c lui r3,0x801c
 
801a1a58: 8c63c0c8 lw r3,-0x3f38(r3)
 
801a1a5c: 90820004 lbu r2,0x0004(r4)
 
801a1a60: 0806869f j 0x801a1a7c
 
801a1a64: a4620006 sh r2,0x0006(r3)
 
801a1a68: 3c03801c lui r3,0x801c
 
801a1a6c: 8c63c0c8 lw r3,-0x3f38(r3)
 
801a1a70: 00000000 nop
 
801a1a74: a4620006 sh r2,0x0006(r3)
 
801a1a78: 00002821 addu r5,r0,r0
 
801a1a7c: 3c04801c lui r4,0x801c
 
801a1a80: 8c84c094 lw r4,-0x3f6c(r4)
 
801a1a84: 0c06883a jal 0x801a20e8
 
801a1a88: 00003021 addu r6,r0,r0
 
801a1a8c: 3c01801c lui r1,0x801c
 
801a1a90: a42224d4 sh r2,0x24d4(r1)
 
801a1a94: 34020004 ori r2,r0,0x0004
 
801a1a98: 3c01801b lui r1,0x801b
 
801a1a9c: ac2263e8 sw r2,0x63e8(r1)
 
801a1aa0: 0c03bda8 jal 0x800ef6a0
 
801a1aa4: 34040088 ori r4,r0,0x0088
 
801a1aa8: 08068708 j 0x801a1c20                #          return 1;
 
801a1aac: 34030001 ori r3,r0,0x0001
 
                                                #      case 4:
 
801a1ab0: 0c011298 jal 0x80044a60
 
801a1ab4: 00000000 nop
 
801a1ab8: 3c01801c lui r1,0x801c
 
801a1abc: ac22c088 sw r2,-0x3f78(r1)
 
801a1ac0: 0c0694bc jal 0x801a52f0              #          (Doesn't matter for color)
 
801a1ac4: 00000000 nop
 
801a1ac8: 12000019 beq r16,r0,0x801a1b30
 
801a1acc: 00101140 sll r2,r16,0x05
 
801a1ad0: 3c12801c lui r18,0x801c
 
801a1ad4: 2652f02c addiu r18,r18,-0x0fd4
 
 
801a1ad8: 00501023 subu r2,r2,r16
 
801a1adc: 000210c0 sll r2,r2,0x03
 
801a1ae0: 02002021 addu r4,r16,r0
 
801a1ae4: 3c01801c lui r1,0x801c
 
801a1ae8: 00220821 addu r1,r1,r2
 
801a1aec: 9423f04c lhu r3,-0x0fb4(r1)
 
801a1af0: 3c01801c lui r1,0x801c
 
801a1af4: 00220821 addu r1,r1,r2
 
801a1af8: 8431f02c lh r17,-0x0fd4(r1)
 
801a1afc: 00521021 addu r2,r2,r18
 
801a1b00: 3c01801c lui r1,0x801c
 
801a1b04: a430f004 sh r16,-0x0ffc(r1)
 
801a1b08: 24630001 addiu r3,r3,0x0001
 
801a1b0c: 0c06933c jal 0x801a4cf0              #          execute_result = (Execute current effect instruction) (*0x801bbf90);
 
801a1b10: a4430020 sh r3,0x0020(r2)
 
801a1b14: 14400003 bne r2,r0,0x801a1b24        #          if (execute_result == 0) {
 
801a1b18: 00000000 nop
 
801a1b1c: 0c068767 jal 0x801a1d9c              #              (Resolve effect command / command block?) (*0x801bbf90);      // (Effect doesn't resolve properly if removed)
 
801a1b20: 02002021 addu r4,r16,r0
 
                                                #          }
 
801a1b24: 02208021 addu r16,r17,r0
 
801a1b28: 1600ffeb bne r16,r0,0x801a1ad8
 
801a1b2c: 00101140 sll r2,r16,0x05
 
 
801a1b30: 3c02801c lui r2,0x801c
 
801a1b34: 8442bf90 lh r2,-0x4070(r2)            #          *0x801bbf90
 
801a1b38: 00000000 nop
 
801a1b3c: 14400038 bne r2,r0,0x801a1c20        #          if (*0x801bbf90 != 0)
 
801a1b40: 34030001 ori r3,r0,0x0001            #              return 1;
 
801a1b44: 3c02801c lui r2,0x801c
 
801a1b48: 8c42acc8 lw r2,-0x5338(r2)
 
801a1b4c: 00000000 nop
 
801a1b50: 8c420000 lw r2,0x0000(r2)
 
801a1b54: 00000000 nop
 
801a1b58: 30420010 andi r2,r2,0x0010
 
801a1b5c: 10400003 beq r2,r0,0x801a1b6c
 
801a1b60: 00000000 nop
 
801a1b64: 0c010ee8 jal 0x80043ba0
 
801a1b68: 34040078 ori r4,r0,0x0078
 
801a1b6c: 3c04801c lui r4,0x801c
 
801a1b70: 8c84bf74 lw r4,-0x408c(r4)
 
801a1b74: 00000000 nop
 
801a1b78: 10800005 beq r4,r0,0x801a1b90
 
801a1b7c: 00000000 nop
 
801a1b80: 0c005fae jal 0x80017eb8
 
801a1b84: 00000000 nop
 
801a1b88: 3c01801c lui r1,0x801c
 
801a1b8c: ac20bf74 sw r0,-0x408c(r1)
 
801a1b90: 0c03bda8 jal 0x800ef6a0
 
801a1b94: 34040087 ori r4,r0,0x0087
 
801a1b98: 0c024c51 jal 0x80093144
 
801a1b9c: 00000000 nop
 
801a1ba0: 0c04d0f4 jal 0x801343d0
 
801a1ba4: 00000000 nop
 
801a1ba8: 0c0238d2 jal 0x8008e348
 
801a1bac: 00000000 nop
 
801a1bb0: 3c01801b lui r1,0x801b
 
801a1bb4: ac2063e8 sw r0,0x63e8(r1)
 
                                                #      case 0:
 
801a1bb8: 08068708 j 0x801a1c20                #          return 0;
 
801a1bbc: 00001821 addu r3,r0,r0
 
                                                #      case 6:
 
801a1bc0: 3c04801c lui r4,0x801c
 
801a1bc4: 8c84bf80 lw r4,-0x4080(r4)
 
801a1bc8: 3c058001 lui r5,0x8001
 
801a1bcc: 8ca5000c lw r5,0x000c(r5)
 
801a1bd0: 0c069367 jal 0x801a4d9c
 
801a1bd4: 00a42823 subu r5,r5,r4
 
801a1bd8: 0c06aa3a jal 0x801aa8e8
 
801a1bdc: 00000000 nop
 
801a1be0: 0c0683dc jal 0x801a0f70
 
801a1be4: 00000000 nop
 
801a1be8: 0c0683e2 jal 0x801a0f88
 
801a1bec: 00000000 nop
 
801a1bf0: 00002821 addu r5,r0,r0
 
801a1bf4: 3c04801c lui r4,0x801c
 
801a1bf8: 8c84c094 lw r4,-0x3f6c(r4)
 
801a1bfc: 0c06883a jal 0x801a20e8
 
801a1c00: 00003021 addu r6,r0,r0
 
801a1c04: 3c01801c lui r1,0x801c
 
801a1c08: a42224d4 sh r2,0x24d4(r1)
 
801a1c0c: 34030004 ori r3,r0,0x0004
 
801a1c10: 3c01801b lui r1,0x801b
 
801a1c14: ac2363e8 sw r3,0x63e8(r1)
 
801a1c18: 08068709 j 0x801a1c24                #          return 1;
 
801a1c1c: 34020001 ori r2,r0,0x0001
 
                                                #  }
 
801a1c20: 00601021 addu r2,r3,r0
 
801a1c24: 8fbf001c lw r31,0x001c(r29)
 
801a1c28: 8fb20018 lw r18,0x0018(r29)
 
801a1c2c: 8fb10014 lw r17,0x0014(r29)
 
801a1c30: 8fb00010 lw r16,0x0010(r29)
 
801a1c34: 27bd0020 addiu r29,r29,0x0020
 
801a1c38: 03e00008 jr r31
 
801a1c3c: 00000000 nop
 

Latest revision as of 16:34, 16 May 2020