diff options
author | Marcus Huderle <huderlem@gmail.com> | 2018-06-26 19:55:08 -0500 |
---|---|---|
committer | Marcus Huderle <huderlem@gmail.com> | 2018-06-27 09:05:17 -0500 |
commit | 2f8d67642649374667f902736d8920cb38a03daa (patch) | |
tree | 8a3b5ff05d71bf1c0b7943c345dc42fd72e59597 /asm | |
parent | fa0e1ca4de35c9723a0972efeb6f7de4dca25594 (diff) |
Decompile more battle_anim_812C144
Diffstat (limited to 'asm')
-rw-r--r-- | asm/battle_anim_812C144.s | 1288 |
1 files changed, 0 insertions, 1288 deletions
diff --git a/asm/battle_anim_812C144.s b/asm/battle_anim_812C144.s index ec7a7211f..a72117c08 100644 --- a/asm/battle_anim_812C144.s +++ b/asm/battle_anim_812C144.s @@ -5,1294 +5,6 @@ .text - thumb_func_start sub_812EA4C -sub_812EA4C: @ 812EA4C - push {r4-r6,lr} - adds r5, r0, 0 - movs r1, 0x2E - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _0812EAAC - ldr r6, _0812EAA4 @ =gBattleAnimArgs - movs r2, 0x4 - ldrsh r0, [r6, r2] - cmp r0, 0 - bne _0812EA80 - ldr r4, _0812EAA8 @ =gAnimBankAttacker - ldrb r0, [r4] - movs r1, 0x2 - bl GetBattlerSpriteCoord - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x20] - ldrb r0, [r4] - movs r1, 0x3 - bl GetBattlerSpriteCoord - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x22] -_0812EA80: - ldrh r0, [r6] - ldrh r1, [r5, 0x20] - adds r0, r1 - strh r0, [r5, 0x20] - ldrh r1, [r6, 0x2] - ldrh r2, [r5, 0x22] - adds r0, r1, r2 - strh r0, [r5, 0x22] - movs r0, 0x80 - strh r0, [r5, 0x30] - movs r0, 0xC0 - lsls r0, 2 - strh r0, [r5, 0x32] - strh r1, [r5, 0x34] - ldrh r0, [r5, 0x2E] - adds r0, 0x1 - strh r0, [r5, 0x2E] - b _0812EB0A - .align 2, 0 -_0812EAA4: .4byte gBattleAnimArgs -_0812EAA8: .4byte gAnimBankAttacker -_0812EAAC: - ldrh r1, [r5, 0x30] - lsls r0, r1, 16 - asrs r0, 24 - strh r0, [r5, 0x24] - ldrh r0, [r5, 0x32] - lsls r0, 16 - asrs r0, 24 - ldrh r2, [r5, 0x26] - adds r0, r2 - strh r0, [r5, 0x26] - movs r2, 0x36 - ldrsh r0, [r5, r2] - adds r4, r1, 0 - cmp r0, 0 - bne _0812EAEA - movs r0, 0x26 - ldrsh r1, [r5, r0] - movs r2, 0x34 - ldrsh r0, [r5, r2] - cmn r1, r0 - ble _0812EAEA - movs r0, 0x1 - strh r0, [r5, 0x36] - movs r1, 0x32 - ldrsh r0, [r5, r1] - negs r0, r0 - movs r1, 0x3 - bl __divsi3 - lsls r0, 1 - strh r0, [r5, 0x32] -_0812EAEA: - adds r0, r4, 0 - adds r0, 0xC0 - strh r0, [r5, 0x30] - ldrh r0, [r5, 0x32] - adds r0, 0x80 - strh r0, [r5, 0x32] - adds r0, r5, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0812EB0A - adds r0, r5, 0 - bl DestroyAnimSprite -_0812EB0A: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_812EA4C - - thumb_func_start sub_812EB10 -sub_812EB10: @ 812EB10 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r0, 24 - adds r7, r0, 0 - ldr r1, _0812EB40 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r2, r0, r1 - movs r1, 0x8 - ldrsh r0, [r2, r1] - cmp r0, 0 - bne _0812EC1C - ldr r0, _0812EB44 @ =gBattleAnimArgs - movs r3, 0 - ldrsh r1, [r0, r3] - mov r8, r0 - cmp r1, 0 - bne _0812EB4C - ldr r0, _0812EB48 @ =gAnimBankAttacker - b _0812EB4E - .align 2, 0 -_0812EB40: .4byte gTasks -_0812EB44: .4byte gBattleAnimArgs -_0812EB48: .4byte gAnimBankAttacker -_0812EB4C: - ldr r0, _0812EB88 @ =gAnimBankTarget -_0812EB4E: - ldrb r0, [r0] - strh r0, [r2, 0x1E] - mov r1, r8 - ldrb r0, [r1] - bl GetAnimBattlerSpriteId - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, _0812EB8C @ =gTasks - lsls r4, r7, 2 - adds r0, r4, r7 - lsls r0, 3 - adds r6, r0, r1 - strh r5, [r6, 0x1C] - adds r0, r5, 0 - movs r1, 0 - bl sub_8078E70 - mov r2, r8 - movs r3, 0x2 - ldrsh r0, [r2, r3] - cmp r0, 0x1 - beq _0812EBB0 - cmp r0, 0x1 - bgt _0812EB90 - cmp r0, 0 - beq _0812EB98 - lsls r2, r5, 4 - b _0812EBF8 - .align 2, 0 -_0812EB88: .4byte gAnimBankTarget -_0812EB8C: .4byte gTasks -_0812EB90: - cmp r0, 0x2 - beq _0812EBBA - lsls r2, r5, 4 - b _0812EBF8 -_0812EB98: - movs r2, 0xA0 - lsls r2, 1 - adds r0, r5, 0 - movs r1, 0xE0 - movs r3, 0 - bl obj_id_set_rotscale - adds r0, r5, 0 - bl sub_8079A64 - lsls r2, r5, 4 - b _0812EBF8 -_0812EBB0: - movs r2, 0x98 - lsls r2, 1 - movs r3, 0xF0 - lsls r3, 4 - b _0812EBC2 -_0812EBBA: - movs r2, 0x98 - lsls r2, 1 - movs r3, 0xF1 - lsls r3, 8 -_0812EBC2: - adds r0, r5, 0 - movs r1, 0xD0 - bl obj_id_set_rotscale - adds r0, r5, 0 - bl sub_8079A64 - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _0812EBE8 - ldrb r0, [r6, 0x1E] - bl GetBattlerSide - lsls r0, 24 - lsls r2, r5, 4 - cmp r0, 0 - bne _0812EBF8 -_0812EBE8: - ldr r0, _0812EC14 @ =gSprites - lsls r2, r5, 4 - adds r1, r2, r5 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r1, 0x26] - adds r0, 0x10 - strh r0, [r1, 0x26] -_0812EBF8: - ldr r1, _0812EC14 @ =gSprites - adds r0, r2, r5 - lsls r0, 2 - adds r0, r1 - movs r1, 0x2 - strh r1, [r0, 0x24] - ldr r0, _0812EC18 @ =gTasks - adds r1, r4, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x8] - adds r0, 0x1 - strh r0, [r1, 0x8] - b _0812EC68 - .align 2, 0 -_0812EC14: .4byte gSprites -_0812EC18: .4byte gTasks -_0812EC1C: - ldrb r5, [r2, 0x1C] - ldrh r0, [r2, 0xC] - adds r0, 0x1 - movs r4, 0 - strh r0, [r2, 0xC] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x3 - bne _0812EC40 - strh r4, [r2, 0xC] - ldr r0, _0812EC74 @ =gSprites - lsls r1, r5, 4 - adds r1, r5 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r1, 0x24] - negs r0, r0 - strh r0, [r1, 0x24] -_0812EC40: - ldrh r0, [r2, 0xA] - adds r0, 0x1 - strh r0, [r2, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xD - bne _0812EC68 - adds r0, r5, 0 - bl sub_8078F40 - ldr r1, _0812EC74 @ =gSprites - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - adds r0, r1 - strh r4, [r0, 0x24] - strh r4, [r0, 0x26] - adds r0, r7, 0 - bl DestroyAnimVisualTask -_0812EC68: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0812EC74: .4byte gSprites - thumb_func_end sub_812EB10 - - thumb_func_start sub_812EC78 -sub_812EC78: @ 812EC78 - push {r4,r5,lr} - adds r4, r0, 0 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0xC - bl __umodsi3 - lsls r0, 24 - lsrs r0, 24 - ldrh r2, [r4, 0x4] - lsls r1, r2, 22 - lsrs r1, 22 - adds r1, r0 - ldr r3, _0812ECC4 @ =0x000003ff - adds r0, r3, 0 - ands r1, r0 - ldr r0, _0812ECC8 @ =0xfffffc00 - ands r0, r2 - orrs r0, r1 - strh r0, [r4, 0x4] - bl Random - ldr r5, _0812ECCC @ =0x000001ff - ands r5, r0 - bl Random - movs r1, 0xFF - ands r1, r0 - movs r0, 0x1 - ands r0, r5 - cmp r0, 0 - beq _0812ECD0 - movs r2, 0xBC - lsls r2, 3 - adds r0, r5, r2 - b _0812ECD8 - .align 2, 0 -_0812ECC4: .4byte 0x000003ff -_0812ECC8: .4byte 0xfffffc00 -_0812ECCC: .4byte 0x000001ff -_0812ECD0: - movs r3, 0xBC - lsls r3, 3 - adds r0, r3, 0 - subs r0, r5 -_0812ECD8: - strh r0, [r4, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0812ECEA - movs r2, 0x90 - lsls r2, 3 - adds r0, r1, r2 - b _0812ECF2 -_0812ECEA: - movs r3, 0x90 - lsls r3, 3 - adds r0, r3, 0 - subs r0, r1 -_0812ECF2: - strh r0, [r4, 0x30] - ldr r0, _0812ED04 @ =gBattleAnimArgs - ldrh r0, [r0] - strh r0, [r4, 0x32] - lsls r0, 16 - cmp r0, 0 - bne _0812ED0C - ldr r0, _0812ED08 @ =0x0000fff8 - b _0812ED0E - .align 2, 0 -_0812ED04: .4byte gBattleAnimArgs -_0812ED08: .4byte 0x0000fff8 -_0812ED0C: - movs r0, 0xF8 -_0812ED0E: - strh r0, [r4, 0x20] - movs r0, 0x68 - strh r0, [r4, 0x22] - ldr r0, _0812ED20 @ =sub_812ED24 - str r0, [r4, 0x1C] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0812ED20: .4byte sub_812ED24 - thumb_func_end sub_812EC78 - - thumb_func_start sub_812ED24 -sub_812ED24: @ 812ED24 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x32 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _0812ED3C - ldrh r3, [r4, 0x2E] - lsls r0, r3, 16 - asrs r0, 24 - ldrh r1, [r4, 0x24] - adds r0, r1 - b _0812ED46 -_0812ED3C: - ldrh r3, [r4, 0x2E] - lsls r1, r3, 16 - asrs r1, 24 - ldrh r0, [r4, 0x24] - subs r0, r1 -_0812ED46: - strh r0, [r4, 0x24] - ldrh r2, [r4, 0x30] - lsls r1, r2, 16 - asrs r1, 24 - ldrh r0, [r4, 0x26] - subs r0, r1 - strh r0, [r4, 0x26] - adds r0, r3, 0 - subs r0, 0x16 - strh r0, [r4, 0x2E] - adds r1, r2, 0 - subs r1, 0x30 - strh r1, [r4, 0x30] - lsls r0, 16 - cmp r0, 0 - bge _0812ED6A - movs r0, 0 - strh r0, [r4, 0x2E] -_0812ED6A: - ldrh r0, [r4, 0x34] - adds r0, 0x1 - strh r0, [r4, 0x34] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1F - bne _0812ED7E - adds r0, r4, 0 - bl DestroyAnimSprite -_0812ED7E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_812ED24 - - thumb_func_start sub_812ED84 -sub_812ED84: @ 812ED84 - push {r4,lr} - adds r4, r0, 0 - ldr r1, _0812EDE4 @ =REG_WINOUT - ldr r2, _0812EDE8 @ =0x00001f3f - adds r0, r2, 0 - strh r0, [r1] - movs r2, 0x80 - lsls r2, 19 - ldrh r0, [r2] - movs r3, 0x80 - lsls r3, 8 - adds r1, r3, 0 - orrs r0, r1 - strh r0, [r2] - ldr r0, _0812EDEC @ =gBattle_WIN0H - movs r1, 0 - strh r1, [r0] - ldr r0, _0812EDF0 @ =gBattle_WIN0V - strh r1, [r0] - ldr r0, _0812EDF4 @ =REG_WIN0H - strh r1, [r0] - adds r0, 0x4 - strh r1, [r0] - ldr r0, _0812EDF8 @ =gBattleAnimArgs - ldrh r0, [r0, 0x4] - strh r0, [r4, 0x2E] - adds r0, r4, 0 - movs r1, 0 - bl sub_8078764 - ldrb r1, [r4, 0x1] - movs r0, 0xD - negs r0, r0 - ands r0, r1 - movs r1, 0x8 - orrs r0, r1 - strb r0, [r4, 0x1] - adds r2, r4, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - ldr r0, _0812EDFC @ =sub_812EE00 - str r0, [r4, 0x1C] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0812EDE4: .4byte REG_WINOUT -_0812EDE8: .4byte 0x00001f3f -_0812EDEC: .4byte gBattle_WIN0H -_0812EDF0: .4byte gBattle_WIN0V -_0812EDF4: .4byte REG_WIN0H -_0812EDF8: .4byte gBattleAnimArgs -_0812EDFC: .4byte sub_812EE00 - thumb_func_end sub_812ED84 - - thumb_func_start sub_812EE00 -sub_812EE00: @ 812EE00 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x30 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _0812EE3E - cmp r0, 0x1 - bgt _0812EE16 - cmp r0, 0 - beq _0812EE20 - b _0812EE94 -_0812EE16: - cmp r0, 0x2 - beq _0812EE54 - cmp r0, 0x3 - beq _0812EE76 - b _0812EE94 -_0812EE20: - adds r2, r4, 0 - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - adds r0, r4, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0812EE94 - b _0812EE6E -_0812EE3E: - ldrh r0, [r4, 0x2E] - subs r0, 0x1 - strh r0, [r4, 0x2E] - lsls r0, 16 - cmp r0, 0 - bne _0812EE94 - adds r0, r4, 0 - movs r1, 0x1 - bl ChangeSpriteAffineAnim - b _0812EE6E -_0812EE54: - adds r0, r4, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0812EE94 - adds r2, r4, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] -_0812EE6E: - ldrh r0, [r4, 0x30] - adds r0, 0x1 - strh r0, [r4, 0x30] - b _0812EE94 -_0812EE76: - ldr r1, _0812EE9C @ =REG_WINOUT - ldr r2, _0812EEA0 @ =0x00003f3f - adds r0, r2, 0 - strh r0, [r1] - movs r2, 0x80 - lsls r2, 19 - ldrh r0, [r2] - movs r3, 0x80 - lsls r3, 8 - adds r1, r3, 0 - eors r0, r1 - strh r0, [r2] - adds r0, r4, 0 - bl DestroyAnimSprite -_0812EE94: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0812EE9C: .4byte REG_WINOUT -_0812EEA0: .4byte 0x00003f3f - thumb_func_end sub_812EE00 - - thumb_func_start sub_812EEA4 -sub_812EEA4: @ 812EEA4 - push {r4,r5,lr} - adds r4, r0, 0 - ldr r5, _0812EEE0 @ =gAnimBankAttacker - ldrb r0, [r5] - movs r1, 0x2 - bl GetBattlerSpriteCoord - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x20] - ldrb r0, [r5] - movs r1, 0x3 - bl GetBattlerSpriteCoord - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x22] - ldr r1, _0812EEE4 @ =gBattleAnimArgs - ldrh r0, [r1] - strh r0, [r4, 0x2E] - ldrh r0, [r1, 0x2] - strh r0, [r4, 0x30] - ldr r1, _0812EEE8 @ =sub_812EEEC - str r1, [r4, 0x1C] - adds r0, r4, 0 - bl _call_via_r1 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0812EEE0: .4byte gAnimBankAttacker -_0812EEE4: .4byte gBattleAnimArgs -_0812EEE8: .4byte sub_812EEEC - thumb_func_end sub_812EEA4 - - thumb_func_start sub_812EEEC -sub_812EEEC: @ 812EEEC - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x30 - ldrsh r0, [r4, r1] - ldrh r1, [r4, 0x32] - lsls r1, 16 - asrs r1, 24 - bl Sin - strh r0, [r4, 0x24] - movs r2, 0x30 - ldrsh r0, [r4, r2] - ldrh r1, [r4, 0x34] - lsls r1, 16 - asrs r1, 24 - bl Cos - strh r0, [r4, 0x26] - ldrh r0, [r4, 0x30] - adds r0, 0x9 - movs r1, 0xFF - ands r0, r1 - strh r0, [r4, 0x30] - lsls r1, r0, 16 - cmp r0, 0x3F - bls _0812EF26 - asrs r0, r1, 16 - cmp r0, 0xC3 - ble _0812EF38 -_0812EF26: - ldr r0, _0812EF34 @ =gAnimBankAttacker - ldrb r0, [r0] - bl sub_8079E90 - subs r0, 0x1 - b _0812EF42 - .align 2, 0 -_0812EF34: .4byte gAnimBankAttacker -_0812EF38: - ldr r0, _0812EF84 @ =gAnimBankAttacker - ldrb r0, [r0] - bl sub_8079E90 - adds r0, 0x1 -_0812EF42: - adds r1, r4, 0 - adds r1, 0x43 - strb r0, [r1] - movs r3, 0x38 - ldrsh r2, [r4, r3] - cmp r2, 0 - bne _0812EF88 - movs r1, 0x80 - lsls r1, 3 - adds r0, r1, 0 - ldrh r3, [r4, 0x32] - adds r0, r3 - strh r0, [r4, 0x32] - movs r1, 0x80 - lsls r1, 1 - adds r0, r1, 0 - ldrh r3, [r4, 0x34] - adds r0, r3 - strh r0, [r4, 0x34] - ldrh r0, [r4, 0x36] - adds r0, 0x1 - strh r0, [r4, 0x36] - lsls r0, 16 - asrs r0, 16 - movs r3, 0x2E - ldrsh r1, [r4, r3] - cmp r0, r1 - bne _0812EFB8 - strh r2, [r4, 0x36] - movs r0, 0x1 - strh r0, [r4, 0x38] - b _0812EFB8 - .align 2, 0 -_0812EF84: .4byte gAnimBankAttacker -_0812EF88: - cmp r2, 0x1 - bne _0812EFB8 - ldr r1, _0812EFC0 @ =0xfffffc00 - adds r0, r1, 0 - ldrh r2, [r4, 0x32] - adds r0, r2 - strh r0, [r4, 0x32] - ldr r3, _0812EFC4 @ =0xffffff00 - adds r0, r3, 0 - ldrh r1, [r4, 0x34] - adds r0, r1 - strh r0, [r4, 0x34] - ldrh r0, [r4, 0x36] - adds r0, 0x1 - strh r0, [r4, 0x36] - lsls r0, 16 - asrs r0, 16 - movs r2, 0x2E - ldrsh r1, [r4, r2] - cmp r0, r1 - bne _0812EFB8 - adds r0, r4, 0 - bl DestroyAnimSprite -_0812EFB8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0812EFC0: .4byte 0xfffffc00 -_0812EFC4: .4byte 0xffffff00 - thumb_func_end sub_812EEEC - - thumb_func_start sub_812EFC8 -sub_812EFC8: @ 812EFC8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x10] - movs r0, 0 - bl GetAnimBattlerSpriteId - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _0812F004 - movs r0, 0x1 - str r0, [sp, 0x14] - ldr r0, _0812F000 @ =gSharedMem + 0x19348 - ldr r1, [r0, 0x10] - mov r9, r1 - ldr r2, [r0, 0xC] - mov r8, r2 - ldrh r6, [r0, 0x2] - movs r3, 0x14 - b _0812F13C - .align 2, 0 -_0812F000: .4byte gSharedMem + 0x19348 -_0812F004: - ldr r0, _0812F070 @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - beq _0812F0AC - movs r0, 0 - str r0, [sp, 0x14] - ldr r6, _0812F074 @ =gBattlerPartyIndexes - ldr r4, _0812F078 @ =gAnimBankTarget - ldrb r0, [r4] - lsls r0, 1 - adds r0, r6 - ldrh r0, [r0] - movs r5, 0x64 - muls r0, r5 - ldr r7, _0812F07C @ =gPlayerParty - adds r0, r7 - movs r1, 0 - bl GetMonData - mov r9, r0 - ldrb r0, [r4] - lsls r0, 1 - adds r0, r6 - ldrh r0, [r0] - muls r0, r5 - adds r0, r7 - movs r1, 0x1 - bl GetMonData - mov r8, r0 - ldrb r2, [r4] - lsls r1, r2, 2 - ldr r0, _0812F080 @ =gSharedMem + 0x17800 - adds r1, r0 - ldrh r0, [r1, 0x2] - cmp r0, 0 - bne _0812F0A4 - adds r0, r2, 0 - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _0812F084 - ldrb r0, [r4] - lsls r0, 1 - adds r0, r6 - ldrh r0, [r0] - muls r0, r5 - adds r0, r7 - b _0812F092 - .align 2, 0 -_0812F070: .4byte gAnimBankAttacker -_0812F074: .4byte gBattlerPartyIndexes -_0812F078: .4byte gAnimBankTarget -_0812F07C: .4byte gPlayerParty -_0812F080: .4byte gSharedMem + 0x17800 -_0812F084: - ldrb r0, [r4] - lsls r0, 1 - adds r0, r6 - ldrh r0, [r0] - muls r0, r5 - ldr r1, _0812F0A0 @ =gEnemyParty - adds r0, r1 -_0812F092: - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r6, r0, 16 - b _0812F0A6 - .align 2, 0 -_0812F0A0: .4byte gEnemyParty -_0812F0A4: - ldrh r6, [r1, 0x2] -_0812F0A6: - movs r1, 0x14 - mov r10, r1 - b _0812F13E -_0812F0AC: - movs r2, 0x1 - str r2, [sp, 0x14] - ldr r6, _0812F10C @ =gBattlerPartyIndexes - ldr r4, _0812F110 @ =gAnimBankTarget - ldrb r0, [r4] - lsls r0, 1 - adds r0, r6 - ldrh r0, [r0] - movs r5, 0x64 - muls r0, r5 - ldr r7, _0812F114 @ =gEnemyParty - adds r0, r7 - movs r1, 0 - bl GetMonData - mov r9, r0 - ldrb r0, [r4] - lsls r0, 1 - adds r0, r6 - ldrh r0, [r0] - muls r0, r5 - adds r0, r7 - movs r1, 0x1 - bl GetMonData - mov r8, r0 - ldrb r2, [r4] - lsls r1, r2, 2 - ldr r0, _0812F118 @ =gSharedMem + 0x17800 - adds r1, r0 - ldrh r0, [r1, 0x2] - cmp r0, 0 - bne _0812F138 - adds r0, r2, 0 - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _0812F120 - ldrb r0, [r4] - lsls r0, 1 - adds r0, r6 - ldrh r0, [r0] - muls r0, r5 - ldr r1, _0812F11C @ =gPlayerParty - adds r0, r1 - b _0812F12C - .align 2, 0 -_0812F10C: .4byte gBattlerPartyIndexes -_0812F110: .4byte gAnimBankTarget -_0812F114: .4byte gEnemyParty -_0812F118: .4byte gSharedMem + 0x17800 -_0812F11C: .4byte gPlayerParty -_0812F120: - ldrb r0, [r4] - lsls r0, 1 - adds r0, r6 - ldrh r0, [r0] - muls r0, r5 - adds r0, r7 -_0812F12C: - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r6, r0, 16 - b _0812F13A -_0812F138: - ldrh r6, [r1, 0x2] -_0812F13A: - ldr r3, _0812F218 @ =0x0000ffec -_0812F13C: - mov r10, r3 -_0812F13E: - ldr r0, _0812F21C @ =gAnimBankAttacker - ldrb r0, [r0] - bl sub_8079ED4 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r5, _0812F21C @ =gAnimBankAttacker - ldrb r0, [r5] - movs r1, 0 - bl GetBattlerSpriteCoord - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldrb r0, [r5] - movs r1, 0x1 - bl GetBattlerSpriteCoord - lsls r0, 24 - mov r2, r10 - lsls r1, r2, 16 - asrs r1, 16 - adds r4, r1 - lsls r4, 16 - asrs r4, 16 - lsrs r0, 24 - str r0, [sp] - movs r0, 0x5 - str r0, [sp, 0x4] - mov r3, r9 - str r3, [sp, 0x8] - mov r0, r8 - str r0, [sp, 0xC] - adds r0, r6, 0 - ldr r1, [sp, 0x14] - movs r2, 0 - adds r3, r4, 0 - bl sub_8079F44 - adds r6, r0, 0 - lsls r6, 24 - lsrs r6, 24 - ldr r0, _0812F220 @ =gSprites - lsls r5, r6, 4 - adds r5, r6 - lsls r5, 2 - adds r5, r0 - movs r0, 0x3 - ands r7, r0 - lsls r7, 2 - mov r8, r7 - ldrb r0, [r5, 0x5] - movs r4, 0xD - negs r4, r4 - adds r1, r4, 0 - ands r1, r0 - mov r2, r8 - orrs r1, r2 - strb r1, [r5, 0x5] - ldrb r2, [r5, 0x1] - adds r0, r4, 0 - ands r0, r2 - movs r2, 0x4 - orrs r0, r2 - strb r0, [r5, 0x1] - ldr r0, _0812F224 @ =0x00007fff - lsrs r1, 4 - lsls r1, 4 - movs r3, 0x80 - lsls r3, 1 - adds r2, r3, 0 - orrs r1, r2 - movs r2, 0x20 - bl FillPalette - ldrb r0, [r5, 0x5] - ands r4, r0 - mov r0, r8 - orrs r4, r0 - strb r4, [r5, 0x5] - ldr r1, _0812F228 @ =REG_BLDCNT - movs r2, 0xFD - lsls r2, 6 - adds r0, r2, 0 - strh r0, [r1] - ldr r3, _0812F22C @ =REG_BLDALPHA - ldr r0, _0812F230 @ =gTasks - ldr r2, [sp, 0x10] - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldrh r2, [r1, 0xA] - movs r0, 0x10 - subs r0, r2 - lsls r0, 8 - orrs r0, r2 - strh r0, [r3] - strh r6, [r1, 0x8] - ldr r0, _0812F234 @ =sub_812F238 - str r0, [r1] - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0812F218: .4byte 0x0000ffec -_0812F21C: .4byte gAnimBankAttacker -_0812F220: .4byte gSprites -_0812F224: .4byte 0x00007fff -_0812F228: .4byte REG_BLDCNT -_0812F22C: .4byte REG_BLDALPHA -_0812F230: .4byte gTasks -_0812F234: .4byte sub_812F238 - thumb_func_end sub_812EFC8 - - thumb_func_start sub_812F238 -sub_812F238: @ 812F238 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0812F284 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r3, r1, r2 - ldrh r0, [r3, 0x1C] - adds r1, r0, 0x1 - strh r1, [r3, 0x1C] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - ble _0812F280 - movs r0, 0 - strh r0, [r3, 0x1C] - ldrh r1, [r3, 0xA] - adds r1, 0x1 - strh r1, [r3, 0xA] - ldr r2, _0812F288 @ =REG_BLDALPHA - movs r0, 0x10 - subs r0, r1 - lsls r0, 8 - orrs r1, r0 - strh r1, [r2] - movs r1, 0xA - ldrsh r0, [r3, r1] - cmp r0, 0xA - bne _0812F280 - movs r0, 0x80 - lsls r0, 1 - strh r0, [r3, 0x1C] - strh r0, [r3, 0x1E] - ldr r0, _0812F28C @ =sub_812F290 - str r0, [r3] -_0812F280: - pop {r0} - bx r0 - .align 2, 0 -_0812F284: .4byte gTasks -_0812F288: .4byte REG_BLDALPHA -_0812F28C: .4byte sub_812F290 - thumb_func_end sub_812F238 - - thumb_func_start sub_812F290 -sub_812F290: @ 812F290 - push {r4-r6,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0812F308 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r5, r1, r2 - ldrb r2, [r5, 0x8] - ldrh r0, [r5, 0x1C] - subs r0, 0x10 - movs r4, 0 - strh r0, [r5, 0x1C] - ldrh r0, [r5, 0x1E] - adds r0, 0x80 - strh r0, [r5, 0x1E] - ldr r1, _0812F30C @ =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r6, r0, r1 - ldrb r2, [r6, 0x1] - lsls r1, r2, 30 - lsrs r1, 30 - movs r0, 0x2 - orrs r1, r0 - subs r0, 0x6 - ands r0, r2 - orrs r0, r1 - strb r0, [r6, 0x1] - movs r0, 0x1C - ldrsh r2, [r5, r0] - movs r0, 0x1E - ldrsh r3, [r5, r0] - str r4, [sp] - adds r0, r6, 0 - movs r1, 0x1 - bl sub_8078FDC - ldrh r0, [r5, 0x20] - adds r0, 0x1 - strh r0, [r5, 0x20] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x9 - bne _0812F2FE - adds r0, r6, 0 - bl sub_8079098 - adds r0, r6, 0 - bl sub_807A0F4 - ldr r0, _0812F310 @ =sub_8078634 - str r0, [r5] -_0812F2FE: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0812F308: .4byte gTasks -_0812F30C: .4byte gSprites -_0812F310: .4byte sub_8078634 - thumb_func_end sub_812F290 - - thumb_func_start sub_812F314 -sub_812F314: @ 812F314 - push {r4-r7,lr} - sub sp, 0xC - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _0812F334 @ =gTasks - adds r4, r1, r0 - ldr r0, _0812F338 @ =gBattleAnimArgs - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - bne _0812F340 - ldr r0, _0812F33C @ =gAnimBankAttacker - b _0812F342 - .align 2, 0 -_0812F334: .4byte gTasks -_0812F338: .4byte gBattleAnimArgs -_0812F33C: .4byte gAnimBankAttacker -_0812F340: - ldr r0, _0812F3C0 @ =gAnimBankTarget -_0812F342: - ldrb r5, [r0] - movs r6, 0 - strh r6, [r4, 0x8] - strh r6, [r4, 0xA] - strh r6, [r4, 0xC] - movs r0, 0x10 - strh r0, [r4, 0xE] - strh r6, [r4, 0x10] - strh r5, [r4, 0x12] - movs r0, 0x20 - strh r0, [r4, 0x14] - strh r6, [r4, 0x16] - movs r0, 0x18 - strh r0, [r4, 0x18] - adds r0, r5, 0 - bl GetBattlerSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0812F374 - movs r2, 0x18 - ldrsh r0, [r4, r2] - negs r0, r0 - strh r0, [r4, 0x18] -_0812F374: - adds r0, r5, 0 - bl sub_8077FC0 - lsls r0, 24 - lsrs r0, 24 - subs r0, 0x22 - strh r0, [r4, 0x22] - cmp r0, 0 - bge _0812F388 - strh r6, [r4, 0x22] -_0812F388: - ldrh r0, [r4, 0x22] - adds r0, 0x42 - strh r0, [r4, 0x24] - ldr r0, _0812F3C4 @ =gBattleAnimArgs - ldrb r0, [r0] - bl GetAnimBattlerSpriteId - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x26] - adds r0, r5, 0 - bl GetBattlerPosition_permutated - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0812F3DC - ldr r0, _0812F3C8 @ =REG_BG1HOFS - str r0, [sp] - ldr r1, _0812F3CC @ =REG_BLDCNT - ldr r2, _0812F3D0 @ =0x00003f42 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _0812F3D4 @ =gBattle_BG1_X - ldrh r5, [r0] - ldr r0, _0812F3D8 @ =gBattle_BG1_Y - b _0812F3EE - .align 2, 0 -_0812F3C0: .4byte gAnimBankTarget -_0812F3C4: .4byte gBattleAnimArgs -_0812F3C8: .4byte REG_BG1HOFS -_0812F3CC: .4byte REG_BLDCNT -_0812F3D0: .4byte 0x00003f42 -_0812F3D4: .4byte gBattle_BG1_X -_0812F3D8: .4byte gBattle_BG1_Y -_0812F3DC: - ldr r0, _0812F454 @ =REG_BG2HOFS - str r0, [sp] - ldr r1, _0812F458 @ =REG_BLDCNT - ldr r2, _0812F45C @ =0x00003f44 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _0812F460 @ =gBattle_BG2_X - ldrh r5, [r0] - ldr r0, _0812F464 @ =gBattle_BG2_Y -_0812F3EE: - ldrh r3, [r0] - movs r7, 0 - movs r2, 0 - ldr r6, _0812F468 @ =gScanlineEffectRegBuffers - movs r0, 0xF0 - lsls r0, 3 - adds r0, r6 - mov r12, r0 -_0812F3FE: - lsls r2, 16 - asrs r2, 16 - lsls r1, r2, 1 - adds r0, r1, r6 - strh r5, [r0] - add r1, r12 - strh r5, [r1] - adds r0, r2, 0x1 - lsls r0, 1 - adds r1, r0, r6 - strh r3, [r1] - add r0, r12 - strh r3, [r0] - lsls r0, r7, 16 - movs r1, 0x80 - lsls r1, 9 - adds r0, r1 - adds r2, 0x2 - lsls r2, 16 - lsrs r2, 16 - lsrs r7, r0, 16 - asrs r0, 16 - cmp r0, 0x9F - ble _0812F3FE - ldr r0, _0812F46C @ =0xa6600001 - str r0, [sp, 0x4] - mov r1, sp - movs r2, 0 - movs r0, 0x1 - strb r0, [r1, 0x8] - mov r0, sp - strb r2, [r0, 0x9] - ldr r0, [sp] - ldr r1, [sp, 0x4] - ldr r2, [sp, 0x8] - bl ScanlineEffect_SetParams - ldr r0, _0812F470 @ =sub_812F474 - str r0, [r4] - add sp, 0xC - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0812F454: .4byte REG_BG2HOFS -_0812F458: .4byte REG_BLDCNT -_0812F45C: .4byte 0x00003f44 -_0812F460: .4byte gBattle_BG2_X -_0812F464: .4byte gBattle_BG2_Y -_0812F468: .4byte gScanlineEffectRegBuffers -_0812F46C: .4byte 0xa6600001 -_0812F470: .4byte sub_812F474 - thumb_func_end sub_812F314 - thumb_func_start sub_812F474 sub_812F474: @ 812F474 push {r4-r7,lr} |