In between turn events

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search

00070e6c: 27bdffe0 addiu r29,r29,0xffe0
00070e70: 00002021 addu r4,r0,r0
00070e74: afbf0018 sw r31,0x0018(r29)
00070e78: afb10014 sw r17,0x0014(r29)
00070e7c: 0c0609fc jal 0x001827f0			In-between turn routine
00070e80: afb00010 sw r16,0x0010(r29)
00070e84: 3043ff00 andi r3,r2,0xff00		Return value for action interrupt
00070e88: 305100ff andi r17,r2,0x00ff		unit ID of mimicing/casting unit
00070e8c: 3402ff00 ori r2,r0,0xff00
00070e90: 3c01800a lui r1,0x800a
00070e94: ac238d84 sw r3,-0x727c(r1)		store return value
00070e98: 10620055 beq r3,r2,0x00070ff0		branch if no action occurring
00070e9c: 00000000 nop
00070ea0: 0c01e9c9 jal 0x0007a724			get misc data
00070ea4: 02202021 addu r4,r17,r0
00070ea8: 00408021 addu r16,r2,r0
00070eac: 12000006 beq r16,r0,0x00070ec8	branch if not found
00070eb0: 00000000 nop
00070eb4: 92020004 lbu r2,0x0004(r16)		load misc ID
00070eb8: 3c018009 lui r1,0x8009
00070ebc: ac226118 sw r2,0x6118(r1)			store misc ID
00070ec0: 0801c3b4 j 0x00070ed0
00070ec4: 00000000 nop
00070ec8: 0c01128d jal 0x00044a34
00070ecc: 3404000c ori r4,r0,0x000c
00070ed0: 3c03800a lui r3,0x800a
00070ed4: 8c638d84 lw r3,-0x727c(r3)		load action code
00070ed8: 34020300 ori r2,r0,0x0300
00070edc: 10620017 beq r3,r2,0x00070f3c		branch if = 0x0300 (removing status?)
00070ee0: 28620301 slti r2,r3,0x0301
00070ee4: 10400007 beq r2,r0,0x00070f04		branch if > 0x301 (mimic, others)
00070ee8: 34020100 ori r2,r0,0x0100
00070eec: 1062000e beq r3,r2,0x00070f28		branch if = 0x0100 (turn setting)
00070ef0: 34020200 ori r2,r0,0x0200
00070ef4: 1062000c beq r3,r2,0x00070f28		branch if = 0x200 / ability CT resolution
00070ef8: 00000000 nop
00070efc: 0801c3ed j 0x00070fb4
00070f00: 00000000 nop
00070f04: 34020500 ori r2,r0,0x0500
00070f08: 1062002c beq r3,r2,0x00070fbc		branch if mimicing ability
00070f0c: 28620501 slti r2,r3,0x0501
00070f10: 10400028 beq r2,r0,0x00070fb4		??
00070f14: 34020400 ori r2,r0,0x0400
00070f18: 10620014 beq r3,r2,0x00070f6c		??
00070f1c: 00000000 nop
00070f20: 0801c3ed j 0x00070fb4
00070f24: 00000000 nop
0x100, 0x200 (Ability Resolution)
00070f28: 92040004 lbu r4,0x0004(r16)		load misc ID
00070f2c: 0c02344e jal 0x0008d138
00070f30: 00000000 nop
00070f34: 0801c3ef j 0x00070fbc
00070f38: 00000000 nop
0x0300 (remove status)
00070f3c: 0c062f82 jal 0x0018be08			action hardcoding
00070f40: 02202021 addu r4,r17,r0
00070f44: 2403ffff addiu r3,r0,0xffff
00070f48: 1443001c bne r2,r3,0x00070fbc
00070f4c: ae020180 sw r2,0x0180(r16)
00070f50: 02202021 addu r4,r17,r0
00070f54: 0c05fb06 jal 0x0017ec18			some map/panel routine
00070f58: 26050184 addiu r5,r16,0x0184
00070f5c: 0c0206e2 jal 0x00081b88			store some movement coordinate data
00070f60: 02002021 addu r4,r16,r0
00070f64: 0801c3ef j 0x00070fbc
00070f68: 00000000 nop
0x0400 (trap?)
00070f6c: 0c062f82 jal 0x0018be08			Main Reaction Routine - performs ability effects
00070f70: 02202021 addu r4,r17,r0
00070f74: 2403ffff addiu r3,r0,0xffff
00070f78: 14430006 bne r2,r3,0x00070f94
00070f7c: ae020180 sw r2,0x0180(r16)		store target ID?
00070f80: 02202021 addu r4,r17,r0
00070f84: 0c05fb06 jal 0x0017ec18			map / panel routine
00070f88: 26050184 addiu r5,r16,0x0184
00070f8c: 0c0206e2 jal 0x00081b88			store some movement coordinate data?
00070f90: 02002021 addu r4,r16,r0
00070f94: 92040004 lbu r4,0x0004(r16)
00070f98: 0c01a2f5 jal 0x00068bd4			set numerical display?
00070f9c: 00000000 nop
00070fa0: 92040004 lbu r4,0x0004(r16)
00070fa4: 0c01a38c jal 0x00068e30			check status/transformation changes
00070fa8: 00000000 nop
00070fac: 0801c3ef j 0x00070fbc
00070fb0: 00000000 nop
00070fb4: 0c01128d jal 0x00044a34
00070fb8: 34040014 ori r4,r0,0x0014
0x0500 Mimic
00070fbc: 0c01e886 jal 0x0007a218				get units misc data
00070fc0: 00000000 nop
00070fc4: 00408021 addu r16,r2,r0
00070fc8: 12000009 beq r16,r0,0x00070ff0
00070fcc: 34020400 ori r2,r0,0x0400
00070fd0: a200013c sb r0,0x013c(r16)			clear ??
00070fd4: 3c03800a lui r3,0x800a
00070fd8: 8c638d84 lw r3,-0x727c(r3)			load type of action code
00070fdc: 00000000 nop
00070fe0: 10620003 beq r3,r2,0x00070ff0			branch if = 0x0400
00070fe4: 00000000 nop
00070fe8: 0c01a0f9 jal 0x000683e4				store X/Y/Map level
00070fec: 02002021 addu r4,r16,r0
00070ff0: 8fbf0018 lw r31,0x0018(r29)
00070ff4: 8fb10014 lw r17,0x0014(r29)
00070ff8: 8fb00010 lw r16,0x0010(r29)
00070ffc: 27bd0020 addiu r29,r29,0x0020
00071000: 03e00008 jr r31
00071004: 00000000 nop