Transparent removal routine
Jump to navigation
Jump to search
BATTLE.BIN : - Transparent removal routine ------------------------------------------------------------ Parameter : r4 - Unit Data Pointer Return : r2 - 0x00 if Unit is dead, crystal, petrified, treasure or jumping r2 - Unit Current Action Attack type ------------------------------------------------------------ 0018d868: 27bdffe8 addiu r29,r29,-0x0018 0018d86c: afb00010 sw r16,0x0010(r29) 0018d870: afbf0014 sw r31,0x0014(r29) | 0018d874: 0c063691 jal 0x0018da44 |-->Crystal, Dead, Jump, Petrify, Treasure check *returns r2 0018d878: 00808021 addu r16,r4,r0 |Preserves and send Unit ID 0018d87c: 1440001f bne r2,r0,0x0018d8fc #Exit if Crystal, Dead, Jump, Petrify, or Treasure 0018d880: 00001021 addu r2,r0,r0 |r2 = 0 0018d884: 0c063681 jal 0x0018da04 |-->Set Action Target Variables *Set 0x80192d90, 0x80192d98 and 0x801938c1, reset Current action data 0018d888: 02002021 addu r4,r16,r0 |Send Unit ID 0018d88c: 92020188 lbu r2,0x0188(r16) |Load Unit Action Taken? 0018d890: 00000000 nop | 0018d894: 10400015 beq r2,r0,0x0018d8ec #If Action Taken 0018d898: 00000000 nop | 0018d89c: 3c038019 lui r3,0x8019 | 0018d8a0: 8c632d98 lw r3,0x2d98(r3) |Load Defender's Stats 0018d8a4: 00000000 nop | 0018d8a8: 906201bd lbu r2,0x01bd(r3) |Load Inflicted Status List 3 0018d8ac: 00000000 nop | 0018d8b0: 30420010 andi r2,r2,0x0010 | 0018d8b4: 1040000d beq r2,r0,0x0018d8ec #If Unit is Transparent 0018d8b8: 00000000 nop | 0018d8bc: 90620027 lbu r2,0x0027(r3) |Load... Unit's Turn? 0018d8c0: 00000000 nop | 0018d8c4: 10400009 beq r2,r0,0x0018d8ec #If Unit 0x27 is not null (Unit turn ?) 0018d8c8: 34020010 ori r2,r0,0x0010 |r2 = 0x10 0018d8cc: 3c038019 lui r3,0x8019 | 0018d8d0: 8c632d90 lw r3,0x2d90(r3) |Load Current Action Data Pointer 0018d8d4: 00000000 nop | 0018d8d8: a0620022 sb r2,0x0022(r3) |Store Transparent Removal 0018d8dc: 3c038019 lui r3,0x8019 | 0018d8e0: 8c632d90 lw r3,0x2d90(r3) |Load Current Action Data Pointer 0018d8e4: 34020008 ori r2,r0,0x0008 | 0018d8e8: a0620025 sb r2,0x0025(r3) |Store Attack-Type as Status Change 0018d8ec: 3c028019 lui r2,0x8019 | 0018d8f0: 8c422d90 lw r2,0x2d90(r2) |Load Current Action Data Pointer 0018d8f4: 00000000 nop | 0018d8f8: 90420025 lbu r2,0x0025(r2) |Load Current Action Attack type 0018d8fc: 8fbf0014 lw r31,0x0014(r29) 0018d900: 8fb00010 lw r16,0x0010(r29) 0018d904: 27bd0018 addiu r29,r29,0x0018 0018d908: 03e00008 jr r31 0018d90c: 00000000 nop
Return locations
BATTLE.BIN 00182f1c: In_between_turn_control_routine