Set Post Effect Messages data
Revision as of 13:49, 20 June 2023 by Orkney (talk | contribs) (Orkney moved page 00072d8c - 00073160 to Set Post Effect Messages data)
BATTLE.BIN : Set Post Effect Messages data ---------------------------------------------------------------------- Parameters : r4 - Unit Misc data pointer Returns : Nothing Set Message data in post effect message table (0x80096248) ------------------------------------------------------------------------- 00072d8c: 108000f3 beq r4,r0,0x0007315c #If pointer is invalid Exit routine 00072d90: 00000000 nop | 00072d94: 8c830134 lw r3,0x0134(r4) |Load Unit Battle data pointer 00072d98: 00000000 nop | 00072d9c: 106000ef beq r3,r0,0x0007315c #If pointer is invalid Exit routine 00072da0: 00000000 nop | 00072da4: 3c028009 lui r2,0x8009 | 00072da8: 8c426244 lw r2,0x6244(r2) |Load Unit Number (Position in Target list for effect displaying? - Message counter ?) 00072dac: 00000000 nop | 00072db0: 28420010 slti r2,r2,0x0010 | 00072db4: 104000e9 beq r2,r0,0x0007315c #If number is invalid (> 0x0f) Exit routine 00072db8: 00000000 nop | 00072dbc: 9062018c lbu r2,0x018c(r3) |Unit current action hit flag 00072dc0: 00000000 nop | 00072dc4: 104000e5 beq r2,r0,0x0007315c #If Action hit flag is ON 00072dc8: 2465018c addiu r5,r3,0x018c |r5 = Unit Current Action data pointer 00072dcc: 00003821 addu r7,r0,r0 | 00072dd0: 2ce2000b sltiu r2,r7,0x000b | @Loop 11 Times 00072dd4: 104000ce beq r2,r0,0x00073110 #If counter is off limit : Exit loop 00072dd8: 00003021 addu r6,r0,r0 |Initialize r6 00072ddc: 00071080 sll r2,r7,0x02 |counter * 4 00072de0: 3c018006 lui r1,0x8006 | 00072de4: 00220821 addu r1,r1,r2 | 00072de8: 8c227548 lw r2,0x7548(r1) |Load Some pointer based on loop counter 00072dec: 00000000 nop | 00072df0: 00400008 jr r2 >>Jump in Iteration section 00072df4: 00000000 nop | ---- 1st Iteration Section (Speed Change)---- 00072df8: 90a20012 lbu r2,0x0012(r5) |Load Current Action Speed change 00072dfc: 00000000 nop | 00072e00: 104000c3 beq r2,r0,0x00073110 | 00072e04: 34020028 ori r2,r0,0x0028 | 00072e08: 3c038009 lui r3,0x8009 | 00072e0c: 8c636244 lw r3,0x6244(r3) | 00072e10: 00000000 nop | 00072e14: 000318c0 sll r3,r3,0x03 | 00072e18: 3c018009 lui r1,0x8009 | 00072e1c: 00230821 addu r1,r1,r3 | 00072e20: a0226248 sb r2,0x6248(r1) |Store 0x28 in Post Effect list 00072e24: 3c028009 lui r2,0x8009 | 00072e28: 8c426244 lw r2,0x6244(r2) | 00072e2c: 90a30012 lbu r3,0x0012(r5) | 00072e30: 0801cc40 j 0x00073100 >>Jump to resolution 00072e34: 34060001 ori r6,r0,0x0001 | ---- 2nd Iteration Section (CT Change)---- 00072e38: 90a20013 lbu r2,0x0013(r5) |Load Current Action CT change 00072e3c: 00000000 nop | 00072e40: 104000b3 beq r2,r0,0x00073110 #If CT change is null : go to Next iteration 00072e44: 34020027 ori r2,r0,0x0027 |Ct Change flag 00072e48: 3c038009 lui r3,0x8009 | 00072e4c: 8c636244 lw r3,0x6244(r3) |Unit Nb in Target List 00072e50: 00000000 nop | 00072e54: 000318c0 sll r3,r3,0x03 |Nb*8 00072e58: 3c018009 lui r1,0x8009 | 00072e5c: 00230821 addu r1,r1,r3 |Unit Offset in post effect list 00072e60: a0226248 sb r2,0x6248(r1) |Store 0x27 in Post Effect list 00072e64: 3c028009 lui r2,0x8009 | 00072e68: 8c426244 lw r2,0x6244(r2) |Unit Nb in Target List 00072e6c: 90a30013 lbu r3,0x0013(r5) |Load Current Action CT change (Displayed Value) 00072e70: 0801cc40 j 0x00073100 >>Jump to resolution (message found) 00072e74: 34060001 ori r6,r0,0x0001 |"Message is found" flag ---- 3rd Iteration Section (Brave Change)---- 00072e78: 90a20016 lbu r2,0x0016(r5) |Load Current Action Brave change 00072e7c: 00000000 nop | 00072e80: 104000a3 beq r2,r0,0x00073110 | 00072e84: 34020029 ori r2,r0,0x0029 | 00072e88: 3c038009 lui r3,0x8009 | 00072e8c: 8c636244 lw r3,0x6244(r3) | 00072e90: 00000000 nop | 00072e94: 000318c0 sll r3,r3,0x03 | 00072e98: 3c018009 lui r1,0x8009 | 00072e9c: 00230821 addu r1,r1,r3 | 00072ea0: a0226248 sb r2,0x6248(r1) |Store 0x29 in Post Effect list 00072ea4: 3c028009 lui r2,0x8009 | 00072ea8: 8c426244 lw r2,0x6244(r2) | 00072eac: 90a30016 lbu r3,0x0016(r5) | 00072eb0: 0801cc40 j 0x00073100 | 00072eb4: 34060001 ori r6,r0,0x0001 | ---- 4th Iteration Section (Faith Change)---- 00072eb8: 90a20017 lbu r2,0x0017(r5) |Load Current Action Faith change 00072ebc: 00000000 nop | 00072ec0: 10400093 beq r2,r0,0x00073110 | 00072ec4: 3402002a ori r2,r0,0x002a | 00072ec8: 3c038009 lui r3,0x8009 | 00072ecc: 8c636244 lw r3,0x6244(r3) | 00072ed0: 00000000 nop | 00072ed4: 000318c0 sll r3,r3,0x03 | 00072ed8: 3c018009 lui r1,0x8009 | 00072edc: 00230821 addu r1,r1,r3 | 00072ee0: a0226248 sb r2,0x6248(r1) |Store 0x2a in Post Effect list 00072ee4: 3c028009 lui r2,0x8009 | 00072ee8: 8c426244 lw r2,0x6244(r2) | 00072eec: 90a30017 lbu r3,0x0017(r5) | 00072ef0: 0801cc40 j 0x00073100 | 00072ef4: 34060001 ori r6,r0,0x0001 | ---- 5th Iteration Section (PA Change)---- 00072ef8: 90a20014 lbu r2,0x0014(r5) |Load Current Action PA change 00072efc: 00000000 nop | 00072f00: 10400083 beq r2,r0,0x00073110 | 00072f04: 3402002b ori r2,r0,0x002b | 00072f08: 3c038009 lui r3,0x8009 | 00072f0c: 8c636244 lw r3,0x6244(r3) | 00072f10: 00000000 nop | 00072f14: 000318c0 sll r3,r3,0x03 | 00072f18: 3c018009 lui r1,0x8009 | 00072f1c: 00230821 addu r1,r1,r3 | 00072f20: a0226248 sb r2,0x6248(r1) |Store 0x2b in Post Effect list 00072f24: 3c028009 lui r2,0x8009 | 00072f28: 8c426244 lw r2,0x6244(r2) | 00072f2c: 90a30014 lbu r3,0x0014(r5) | 00072f30: 0801cc40 j 0x00073100 | 00072f34: 34060001 ori r6,r0,0x0001 | ---- 6th Iteration Section (MA Change)---- 00072f38: 90a20015 lbu r2,0x0015(r5) |Load Current Action MA change 00072f3c: 00000000 nop | 00072f40: 10400073 beq r2,r0,0x00073110 | 00072f44: 3402002c ori r2,r0,0x002c | 00072f48: 3c038009 lui r3,0x8009 | 00072f4c: 8c636244 lw r3,0x6244(r3) | 00072f50: 00000000 nop | 00072f54: 000318c0 sll r3,r3,0x03 | 00072f58: 3c018009 lui r1,0x8009 | 00072f5c: 00230821 addu r1,r1,r3 | 00072f60: a0226248 sb r2,0x6248(r1) |Store 0x2c in Post Effect list 00072f64: 3c028009 lui r2,0x8009 | 00072f68: 8c426244 lw r2,0x6244(r2) | 00072f6c: 90a30015 lbu r3,0x0015(r5) | 00072f70: 0801cc40 j 0x00073100 | 00072f74: 34060001 ori r6,r0,0x0001 | ---- 7th Iteration Section (Stolen Gils)---- 00072f78: 84a2000c lh r2,0x000c(r5) |Load Current Action Stolen/Lost Gils 00072f7c: 00000000 nop | 00072f80: 18400063 blez r2,0x00073110 | 00072f84: 3402002e ori r2,r0,0x002e | 00072f88: 3c038009 lui r3,0x8009 | 00072f8c: 8c636244 lw r3,0x6244(r3) | 00072f90: 00000000 nop | 00072f94: 000318c0 sll r3,r3,0x03 | 00072f98: 3c018009 lui r1,0x8009 | 00072f9c: 00230821 addu r1,r1,r3 | 00072fa0: a0226248 sb r2,0x6248(r1) |Store 0x2e in Post Effect list 00072fa4: 3c028009 lui r2,0x8009 | 00072fa8: 8c426244 lw r2,0x6244(r2) | 00072fac: 84a3000c lh r3,0x000c(r5) | 00072fb0: 0801cc40 j 0x00073100 | 00072fb4: 34060001 ori r6,r0,0x0001 | ---- 8th Iteration Section (Stolen Xp)---- 00072fb8: 90a20028 lbu r2,0x0028(r5) |Load Current Action Stolen/Lost Xp 00072fbc: 00000000 nop | 00072fc0: 30420080 andi r2,r2,0x0080 | 00072fc4: 10400052 beq r2,r0,0x00073110 | 00072fc8: 3402002f ori r2,r0,0x002f | 00072fcc: 3c038009 lui r3,0x8009 | 00072fd0: 8c636244 lw r3,0x6244(r3) | 00072fd4: 00000000 nop | 00072fd8: 000318c0 sll r3,r3,0x03 | 00072fdc: 3c018009 lui r1,0x8009 | 00072fe0: 00230821 addu r1,r1,r3 | 00072fe4: a0226248 sb r2,0x6248(r1) |Store 0x2f in Post Effect list 00072fe8: 3c028009 lui r2,0x8009 | 00072fec: 8c426244 lw r2,0x6244(r2) | 00072ff0: 90a30028 lbu r3,0x0028(r5) | 00072ff4: 0801cc40 j 0x00073100 | 00072ff8: 34060001 ori r6,r0,0x0001 | ---- 9th Iteration Section (Golem stuff)---- 00072ffc: 94a20010 lhu r2,0x0010(r5) |Current Action special flags 00073000: 00000000 nop | 00073004: 30420180 andi r2,r2,0x0180 |Golem flags 00073008: 10400041 beq r2,r0,0x00073110 | 0007300c: 3402002d ori r2,r0,0x002d | 00073010: 3c038009 lui r3,0x8009 | 00073014: 8c636244 lw r3,0x6244(r3) | 00073018: 00000000 nop | 0007301c: 000318c0 sll r3,r3,0x03 | 00073020: 3c018009 lui r1,0x8009 | 00073024: 00230821 addu r1,r1,r3 | 00073028: a0226248 sb r2,0x6248(r1) |Store 0x2d in Post Effect list 0007302c: 3c028009 lui r2,0x8009 | 00073030: 8c426244 lw r2,0x6244(r2) | 00073034: 94a30010 lhu r3,0x0010(r5) | 00073038: 0801cc40 j 0x00073100 | 0007303c: 34060001 ori r6,r0,0x0001 | ---- 10th Iteration Section (Broken stuff)---- 00073040: 94a20010 lhu r2,0x0010(r5) |Current Action special flags 00073044: 00000000 nop | 00073048: 30421004 andi r2,r2,0x1004 |Item or Katana breakage flags 0007304c: 10400030 beq r2,r0,0x00073110 | 00073050: 3403001d ori r3,r0,0x001d | 00073054: 3c028009 lui r2,0x8009 | 00073058: 8c426244 lw r2,0x6244(r2) | 0007305c: 00000000 nop | 00073060: 000210c0 sll r2,r2,0x03 | 00073064: 3c018009 lui r1,0x8009 | 00073068: 00220821 addu r1,r1,r2 | 0007306c: a0236248 sb r3,0x6248(r1) |Store 0x1d in Post effect list 00073070: 3c028009 lui r2,0x8009 | 00073074: 8c426244 lw r2,0x6244(r2) | 00073078: 90a30003 lbu r3,0x0003(r5) |Current action Item to remove 0007307c: 000230c0 sll r6,r2,0x03 | 00073080: 3c018009 lui r1,0x8009 | 00073084: 00260821 addu r1,r1,r6 | 00073088: ac23624c sw r3,0x624c(r1) |Store Item in Post Effect list (0x04) 0007308c: 94a20010 lhu r2,0x0010(r5) | 00073090: 00000000 nop | 00073094: 30421000 andi r2,r2,0x1000 |Katana ? 00073098: 10400007 beq r2,r0,0x000730b8 #If Broken katana 0007309c: 00000000 nop | 000730a0: 90a20003 lbu r2,0x0003(r5) |Item ID 000730a4: 00000000 nop | 000730a8: 34428000 ori r2,r2,0x8000 |Katana flag ? 000730ac: 3c018009 lui r1,0x8009 | 000730b0: 00260821 addu r1,r1,r6 | 000730b4: ac22624c sw r2,0x624c(r1) |Store Item ID + katana flag in Post Effect list (0x04) 000730b8: 0801cc44 j 0x00073110 >>Jump to resolution 000730bc: 34060001 ori r6,r0,0x0001 | ---- 11th Iteration Section (Item Stolen)---- 000730c0: 94a20010 lhu r2,0x0010(r5) |Current Action special flags 000730c4: 00000000 nop | 000730c8: 30420010 andi r2,r2,0x0010 |Item Stolen 000730cc: 10400010 beq r2,r0,0x00073110 | 000730d0: 3402001c ori r2,r0,0x001c | 000730d4: 34060001 ori r6,r0,0x0001 | 000730d8: 3c038009 lui r3,0x8009 | 000730dc: 8c636244 lw r3,0x6244(r3) | 000730e0: 00000000 nop | 000730e4: 000318c0 sll r3,r3,0x03 | 000730e8: 3c018009 lui r1,0x8009 | 000730ec: 00230821 addu r1,r1,r3 | 000730f0: a0226248 sb r2,0x6248(r1) |Store 0x1c in Post effect list 000730f4: 3c028009 lui r2,0x8009 | 000730f8: 8c426244 lw r2,0x6244(r2) | 000730fc: 90a30003 lbu r3,0x0003(r5) |Stolen item ID 00073100: 000210c0 sll r2,r2,0x03 | 00073104: 3c018009 lui r1,0x8009 | 00073108: 00220821 addu r1,r1,r2 | 0007310c: ac23624c sw r3,0x624c(r1) | ---- Resolution Section (message or not ?)---- 00073110: 10c0000f beq r6,r0,0x00073150 #If r6 is not null 00073114: 24e70001 addiu r7,r7,0x0001 |Loop counter + 1 00073118: 8c830134 lw r3,0x0134(r4) |Unit battle data pointer 0007311c: 3c028009 lui r2,0x8009 | 00073120: 8c426244 lw r2,0x6244(r2) |Unit Number (in target list) 00073124: 9063018a lbu r3,0x018a(r3) |Unit ID (without 0xff checks) 00073128: 000210c0 sll r2,r2,0x03 |Unit Nb * 8 0007312c: 3c018009 lui r1,0x8009 | 00073130: 00220821 addu r1,r1,r2 |This unit Offset 00073134: a0236249 sb r3,0x6249(r1) |Store unit ID in Post action effect list 00073138: 3c028009 lui r2,0x8009 | 0007313c: 8c426244 lw r2,0x6244(r2) |Unit Number (in target list) 00073140: 00000000 nop | 00073144: 24420001 addiu r2,r2,0x0001 |Unit Nb + 1 00073148: 3c018009 lui r1,0x8009 | 0007314c: ac226244 sw r2,0x6244(r1) |Update Unit Nb (Probably used as some kind of counter) 00073150: 28e2000b slti r2,r7,0x000b |Check limit 00073154: 1440ff1f bne r2,r0,0x00072dd4 #Loop 11 Times 00073158: 2ce2000b sltiu r2,r7,0x000b |Unsigned check limit (used at the start of the loop) 0007315c: 03e00008 jr r31 00073160: 00000000 nop
Return location
BATTLE.BIN 000731ac: 00073164_-_000731d4 000731f4: 000731d8_-_0007324c