001ad944 - 001adadc

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
Failed/no secondary effect?
001ad944: 27bdffe0 addiu r29,r29,0xffe0
001ad948: afb10014 sw r17,0x0014(r29)
001ad94c: 00808821 addu r17,r4,r0
001ad950: 322400ff andi r4,r17,0x00ff			#effect target ID
001ad954: 00041080 sll r2,r4,0x02
001ad958: 00441021 addu r2,r2,r4
001ad95c: 00021080 sll r2,r2,0x02
001ad960: 00441021 addu r2,r2,r4
001ad964: 00021080 sll r2,r2,0x02			#times 0x54
001ad968: 3c03801c lui r3,0x801c
001ad96c: 24638b9c addiu r3,r3,0x8b9c			#effect target data
001ad970: afb00010 sw r16,0x0010(r29)
001ad974: 00438021 addu r16,r2,r3			#effect target data
001ad978: 10800050 beq r4,r0,0x001adabc		#branch if 0
001ad97c: afbf0018 sw r31,0x0018(r29)
001ad980: 2c820011 sltiu r2,r4,0x0011			#check if target is legal
001ad984: 1040004e beq r2,r0,0x001adac0		#branch if not
001ad988: 34040001 ori r4,r0,0x0001
001ad98c: 8e040050 lw r4,0x0050(r16)			#load effect data pointer
001ad990: 00000000 nop
001ad994: 10800004 beq r4,r0,0x001ad9a8		#branch if 0
001ad998: 00000000 nop
001ad99c: 0c011180 jal 0x00044600			#00044600 - 0004466c LBA stuff
001ad9a0: 00000000 nop
001ad9a4: ae000050 sw r0,0x0050(r16)			#store 0 effect data pointer
001ad9a8: 92030001 lbu r3,0x0001(r16)			#load current effect target ID
001ad9ac: 00000000 nop
001ad9b0: 1060000b beq r3,r0,0x001ad9e0		#branch if 0
001ad9b4: 00031080 sll r2,r3,0x02
001ad9b8: 00431021 addu r2,r2,r3
001ad9bc: 00021080 sll r2,r2,0x02
001ad9c0: 00431021 addu r2,r2,r3
001ad9c4: 92030000 lbu r3,0x0000(r16)			#load previous effect target's ID?
001ad9c8: 00021080 sll r2,r2,0x02			#* 0x54
001ad9cc: 3c01801c lui r1,0x801c
001ad9d0: 00220821 addu r1,r1,r2
001ad9d4: a0238b9c sb r3,-0x7464(r1)			#store previous effect target's ID back where it was just obtained? using current target's effect data pointer obtain with their ID?
001ad9d8: 0806b67b j 0x001ad9ec
001ad9dc: 00000000 nop
001ad9e0: 92020000 lbu r2,0x0000(r16)
001ad9e4: 3c01801c lui r1,0x801c
001ad9e8: a4229130 sh r2,-0x6ed0(r1)			#if current effect target ID is 0, load previous current effect target ID, and store it in 0x801b9130 (first target effect ID to load for)
001ad9ec: 3c03801c lui r3,0x801c
001ad9f0: 94639130 lhu r3,-0x6ed0(r3)			#load first effect target ID
001ad9f4: 00000000 nop
001ad9f8: 00031080 sll r2,r3,0x02
001ad9fc: 00431021 addu r2,r2,r3
001ada00: 00021080 sll r2,r2,0x02
001ada04: 00431021 addu r2,r2,r3
001ada08: 00021080 sll r2,r2,0x02
001ada0c: 3c01801c lui r1,0x801c
001ada10: 00220821 addu r1,r1,r2
001ada14: a0208b9d sb r0,-0x7463(r1)			#clear first current effect target's ID
001ada18: 3c03801c lui r3,0x801c
001ada1c: 94639134 lhu r3,-0x6ecc(r3)			#current to-animate current effect target ID
001ada20: 00000000 nop
001ada24: 1060001f beq r3,r0,0x001adaa4		#branch if 0
001ada28: 322200ff andi r2,r17,0x00ff
001ada2c: 0806b695 j 0x001ada54
001ada30: 00032080 sll r4,r3,0x02			
001ada34: 00021080 sll r2,r2,0x02
001ada38: 00431021 addu r2,r2,r3
001ada3c: 00021080 sll r2,r2,0x02
001ada40: 3c01801c lui r1,0x801c
001ada44: 00220821 addu r1,r1,r2
001ada48: 90238b9c lbu r3,-0x7464(r1)			#previous effect target ID
001ada4c: 00000000 nop
001ada50: 00032080 sll r4,r3,0x02
001ada54: 00831021 addu r2,r4,r3
001ada58: 00021080 sll r2,r2,0x02
001ada5c: 00431021 addu r2,r2,r3
001ada60: 00021080 sll r2,r2,0x02			#ID * 0x54
001ada64: 3c01801c lui r1,0x801c
001ada68: 00220821 addu r1,r1,r2
001ada6c: 90228b9c lbu r2,-0x7464(r1)			#load their previous effect target's ID
001ada70: 00000000 nop
001ada74: 1440ffef bne r2,r0,0x001ada34		#branch if it's not 0 (loop and find the first unit)
001ada78: 00831021 addu r2,r4,r3
001ada7c: 00031080 sll r2,r3,0x02
001ada80: 00431021 addu r2,r2,r3
001ada84: 00021080 sll r2,r2,0x02
001ada88: 00431021 addu r2,r2,r3
001ada8c: 00021080 sll r2,r2,0x02
001ada90: 3c01801c lui r1,0x801c
001ada94: 00220821 addu r1,r1,r2
001ada98: a0318b9c sb r17,-0x7464(r1)			#else store r17 effect target ID as previous effect ID (I wonder how often that even happens.)
001ada9c: 0806b6ac j 0x001adab0
001adaa0: a2030001 sb r3,0x0001(r16)			#store current effect target ID as 1
001adaa4: 3c01801c lui r1,0x801c
001adaa8: a4229134 sh r2,-0x6ecc(r1)
001adaac: a2000001 sb r0,0x0001(r16)
001adab0: a2000000 sb r0,0x0000(r16)			#clear both current and previous effect target ID
001adab4: 0806b6b2 j 0x001adac8
001adab8: ae000008 sw r0,0x0008(r16)			#store animation as no?
001adabc: 34040001 ori r4,r0,0x0001
001adac0: 0c01127e jal 0x000449f8			#only has a jr r31. error code 0x01 0x67?
001adac4: 34050067 ori r5,r0,0x0067
001adac8: 8fbf0018 lw r31,0x0018(r29)
001adacc: 8fb10014 lw r17,0x0014(r29)
001adad0: 8fb00010 lw r16,0x0010(r29)
001adad4: 27bd0020 addiu r29,r29,0x0020
001adad8: 03e00008 jr r31
001adadc: 00000000 nop