diff options
Diffstat (limited to 'asm')
26 files changed, 892 insertions, 11377 deletions
diff --git a/asm/battle_1.s b/asm/battle_1.s index 9a981e222..9665b0d11 100644 --- a/asm/battle_1.s +++ b/asm/battle_1.s @@ -1888,7 +1888,7 @@ sub_8035C4C: @ 8035C4C bne _08035C68 ldr r0, =gText_Draw movs r1, 0x15 - bl sub_814F9EC + bl BattleHandleAddTextPrinter b _08035D68 .pool _08035C68: @@ -1964,10 +1964,10 @@ _08035CE2: _08035CFC: ldr r0, =gText_Win movs r1, 0x17 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gText_Loss movs r1, 0x16 - bl sub_814F9EC + bl BattleHandleAddTextPrinter b _08035D68 .pool _08035D20: @@ -1985,19 +1985,19 @@ _08035D20: _08035D36: ldr r0, =gText_Win movs r1, 0x16 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gText_Loss movs r1, 0x17 - bl sub_814F9EC + bl BattleHandleAddTextPrinter b _08035D68 .pool _08035D58: ldr r0, =gText_Win movs r1, 0x17 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gText_Loss movs r1, 0x16 - bl sub_814F9EC + bl BattleHandleAddTextPrinter _08035D68: pop {r0} bx r0 @@ -2068,14 +2068,14 @@ _08035DDC: _08035DE6: adds r0, r1, 0 movs r1, 0x11 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldrb r1, [r4, 0x18] movs r0, 0x4 b _08035E14 _08035DF4: adds r0, r1, 0 movs r1, 0x12 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldrb r1, [r4, 0x18] movs r0, 0x4 str r0, [sp] @@ -2085,7 +2085,7 @@ _08035DF4: _08035E08: adds r0, r1, 0 movs r1, 0x13 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldrb r1, [r4, 0x18] movs r0, 0x8 _08035E14: @@ -2099,7 +2099,7 @@ _08035E1A: _08035E22: adds r0, r1, 0 movs r1, 0x14 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldrb r1, [r4, 0x18] movs r0, 0x8 str r0, [sp] @@ -2139,14 +2139,14 @@ _08035E66: adds r1, r0, r4 adds r0, r1, 0 movs r1, 0xF - bl sub_814F9EC + bl BattleHandleAddTextPrinter lsls r0, r6, 3 subs r0, r6 lsls r0, 2 adds r1, r0, r4 adds r0, r1, 0 movs r1, 0x10 - bl sub_814F9EC + bl BattleHandleAddTextPrinter movs r4, 0x7 str r4, [sp] adds r0, r7, 0 diff --git a/asm/battle_7.s b/asm/battle_7.s index ea6fc40b3..d86c68dfc 100644 --- a/asm/battle_7.s +++ b/asm/battle_7.s @@ -67,8 +67,8 @@ _0805D192: .pool thumb_func_end FreeBattleSpritesData - thumb_func_start sub_805D19C -sub_805D19C: @ 805D19C + thumb_func_start ChooseMoveAndTargetInBattlePalace +ChooseMoveAndTargetInBattlePalace: @ 805D19C push {r4-r7,lr} mov r7, r10 mov r6, r9 @@ -448,7 +448,7 @@ _0805D496: pop {r1} bx r1 .pool - thumb_func_end sub_805D19C + thumb_func_end ChooseMoveAndTargetInBattlePalace thumb_func_start sub_805D4A8 sub_805D4A8: @ 805D4A8 @@ -834,8 +834,8 @@ _0805D800: .pool thumb_func_end sub_805D7EC - thumb_func_start move_anim_start_t2_for_situation -move_anim_start_t2_for_situation: @ 805D808 + thumb_func_start DoStatusAnimation +DoStatusAnimation: @ 805D808 push {r4-r6,lr} adds r4, r1, 0 lsls r0, 24 @@ -962,10 +962,10 @@ _0805D902: pop {r4-r6} pop {r0} bx r0 - thumb_func_end move_anim_start_t2_for_situation + thumb_func_end DoStatusAnimation - thumb_func_start move_anim_start_t3 -move_anim_start_t3: @ 805D908 + thumb_func_start DoBattleAnimationFromTable +DoBattleAnimationFromTable: @ 805D908 push {r4-r7,lr} mov r7, r10 mov r6, r9 @@ -1070,7 +1070,7 @@ _0805D9CC: ldr r0, =gUnknown_082C9320 adds r1, r5, 0 movs r2, 0 - bl DoBattleAnim + bl LaunchBattleAnimation ldr r0, =task0A_0803415C movs r1, 0xA bl CreateTask @@ -1105,7 +1105,7 @@ _0805DA1E: pop {r1} bx r1 .pool - thumb_func_end move_anim_start_t3 + thumb_func_end DoBattleAnimationFromTable thumb_func_start task0A_0803415C task0A_0803415C: @ 805DA48 @@ -1172,8 +1172,8 @@ _0805DABE: bx r1 thumb_func_end sub_805DAA0 - thumb_func_start move_anim_start_t4 -move_anim_start_t4: @ 805DAC4 + thumb_func_start DoSpecialBattleAnimation +DoSpecialBattleAnimation: @ 805DAC4 push {r4,lr} adds r4, r0, 0 lsls r4, 24 @@ -1187,7 +1187,7 @@ move_anim_start_t4: @ 805DAC4 ldr r0, =gUnknown_082C937C adds r1, r3, 0 movs r2, 0 - bl DoBattleAnim + bl LaunchBattleAnimation ldr r0, =task0A_08034248 movs r1, 0xA bl CreateTask @@ -1216,7 +1216,7 @@ move_anim_start_t4: @ 805DAC4 pop {r0} bx r0 .pool - thumb_func_end move_anim_start_t4 + thumb_func_end DoSpecialBattleAnimation thumb_func_start task0A_08034248 task0A_08034248: @ 805DB34 @@ -1258,11 +1258,11 @@ _0805DB76: .pool thumb_func_end task0A_08034248 - thumb_func_start sub_805DB8C -sub_805DB8C: @ 805DB8C + thumb_func_start IsMoveWithoutAnimation +IsMoveWithoutAnimation: @ 805DB8C movs r0, 0 bx lr - thumb_func_end sub_805DB8C + thumb_func_end IsMoveWithoutAnimation thumb_func_start mplay_80342A4 mplay_80342A4: @ 805DB90 @@ -1357,7 +1357,7 @@ BattleLoadOpponentMonSpriteGfx: @ 805DC0C .pool _0805DC50: ldrh r5, [r2, 0x2] - ldr r0, =gUnknown_020244BC + ldr r0, =gTransformedPersonalities adds r0, r1, r0 ldr r6, [r0] _0805DC58: @@ -1510,7 +1510,7 @@ BattleLoadPlayerMonSpriteGfx: @ 805DD7C .pool _0805DDC0: ldrh r5, [r2, 0x2] - ldr r0, =gUnknown_020244BC + ldr r0, =gTransformedPersonalities adds r0, r1, r0 ldr r4, [r0] _0805DDC8: @@ -1670,8 +1670,8 @@ nullsub_24: @ 805DF34 bx lr thumb_func_end nullsub_24 - thumb_func_start sub_805DF38 -sub_805DF38: @ 805DF38 + thumb_func_start DecompressTrainerFrontPic +DecompressTrainerFrontPic: @ 805DF38 push {r4,lr} adds r4, r0, 0 adds r0, r1, 0 @@ -1701,10 +1701,10 @@ sub_805DF38: @ 805DF38 pop {r0} bx r0 .pool - thumb_func_end sub_805DF38 + thumb_func_end DecompressTrainerFrontPic - thumb_func_start LoadBackTrainerBankSpriteGfx -LoadBackTrainerBankSpriteGfx: @ 805DF84 + thumb_func_start DecompressTrainerBackPic +DecompressTrainerBackPic: @ 805DF84 push {r4,r5,lr} adds r5, r0, 0 adds r4, r1, 0 @@ -1742,15 +1742,15 @@ LoadBackTrainerBankSpriteGfx: @ 805DF84 pop {r0} bx r0 .pool - thumb_func_end LoadBackTrainerBankSpriteGfx + thumb_func_end DecompressTrainerBackPic thumb_func_start nullsub_25 nullsub_25: @ 805DFE0 bx lr thumb_func_end nullsub_25 - thumb_func_start sub_805DFE4 -sub_805DFE4: @ 805DFE4 + thumb_func_start FreeTrainerFrontPicPalette +FreeTrainerFrontPicPalette: @ 805DFE4 push {lr} lsls r0, 16 ldr r1, =gTrainerFrontPicPaletteTable @@ -1761,7 +1761,7 @@ sub_805DFE4: @ 805DFE4 pop {r0} bx r0 .pool - thumb_func_end sub_805DFE4 + thumb_func_end FreeTrainerFrontPicPalette thumb_func_start sub_805DFFC sub_805DFFC: @ 805DFFC @@ -2229,8 +2229,8 @@ _0805E3EA: .pool thumb_func_end sub_805E394 - thumb_func_start sub_805E408 -sub_805E408: @ 805E408 + thumb_func_start SetBattleSpriteInvisibilityBitToSpriteInvisibility +SetBattleSpriteInvisibilityBitToSpriteInvisibility: @ 805E408 lsls r0, 24 lsrs r0, 24 ldr r1, =gBattleSpritesDataPtr @@ -2258,7 +2258,7 @@ sub_805E408: @ 805E408 strb r0, [r3] bx lr .pool - thumb_func_end sub_805E408 + thumb_func_end SetBattleSpriteInvisibilityBitToSpriteInvisibility thumb_func_start sub_805E448 sub_805E448: @ 805E448 @@ -2441,7 +2441,7 @@ _0805E59C: adds r1, 0x4 adds r1, r2 ldr r1, [r1] - ldr r3, =gUnknown_020244BC + ldr r3, =gTransformedPersonalities lsls r2, r7, 2 adds r2, r3 ldr r3, [r2] @@ -2479,7 +2479,7 @@ _0805E618: adds r1, 0x4 adds r1, r2 ldr r1, [r1] - ldr r3, =gUnknown_020244BC + ldr r3, =gTransformedPersonalities lsls r2, r7, 2 adds r2, r3 ldr r3, [r2] @@ -2795,8 +2795,8 @@ _0805E93E: bx r0 thumb_func_end refresh_graphics_maybe - thumb_func_start sub_805E94C -sub_805E94C: @ 805E94C + thumb_func_start TrySetBehindSubstituteSpriteBit +TrySetBehindSubstituteSpriteBit: @ 805E94C push {lr} lsls r0, 24 lsrs r2, r0, 24 @@ -2817,7 +2817,7 @@ _0805E96C: pop {r0} bx r0 .pool - thumb_func_end sub_805E94C + thumb_func_end TrySetBehindSubstituteSpriteBit thumb_func_start sub_805E974 sub_805E974: @ 805E974 @@ -3572,8 +3572,8 @@ _0805EF6A: .pool thumb_func_end sub_805EF14 - thumb_func_start sub_805EF84 -sub_805EF84: @ 805EF84 + thumb_func_start ClearTemporarySpeciesSpriteData +ClearTemporarySpeciesSpriteData: @ 805EF84 push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 @@ -3598,7 +3598,7 @@ _0805EFAC: pop {r0} bx r0 .pool - thumb_func_end sub_805EF84 + thumb_func_end ClearTemporarySpeciesSpriteData thumb_func_start AllocateMonSpritesGfx AllocateMonSpritesGfx: @ 805EFBC diff --git a/asm/rom_80A5C6C.s b/asm/battle_anim_80A5C6C.s index bf273ac53..fa05e36ce 100644 --- a/asm/rom_80A5C6C.s +++ b/asm/battle_anim_80A5C6C.s @@ -217,7 +217,7 @@ _080A5E04: b _080A5E42 .pool _080A5E3C: - ldr r0, =gUnknown_020244BC + ldr r0, =gTransformedPersonalities adds r0, r1, r0 ldr r2, [r0] _080A5E42: @@ -307,7 +307,7 @@ _080A5EC8: b _080A5F0A .pool _080A5F04: - ldr r0, =gUnknown_020244BC + ldr r0, =gTransformedPersonalities adds r0, r1, r0 ldr r2, [r0] _080A5F0A: @@ -5522,7 +5522,7 @@ _080A86C4: .pool _080A871C: ldrh r7, [r1, 0x2] - ldr r0, =gUnknown_020244BC + ldr r0, =gTransformedPersonalities adds r0, r2, r0 ldr r2, [r0] _080A8724: @@ -5612,7 +5612,7 @@ _080A8790: .pool _080A87DC: ldrh r7, [r1, 0x2] - ldr r0, =gUnknown_020244BC + ldr r0, =gTransformedPersonalities adds r0, r2, r0 ldr r2, [r0] _080A87E4: diff --git a/asm/battle_anim_80A9C70.s b/asm/battle_anim_80A9C70.s index 9b2939673..681802e12 100644 --- a/asm/battle_anim_80A9C70.s +++ b/asm/battle_anim_80A9C70.s @@ -869,7 +869,7 @@ move_anim_start_t2: @ 80AA364 strb r4, [r0] ldr r0, =gUnknown_082C92FC movs r2, 0 - bl DoBattleAnim + bl LaunchBattleAnimation ldr r0, =task0A_80788BC movs r1, 0xA bl CreateTask diff --git a/asm/battle_anim_80FE840.s b/asm/battle_anim_80FE840.s index dc927cacc..315f884cf 100644 --- a/asm/battle_anim_80FE840.s +++ b/asm/battle_anim_80FE840.s @@ -50443,8 +50443,8 @@ _081181CA: bx r1 thumb_func_end sub_8118140 - thumb_func_start battle_intro_launch -battle_intro_launch: @ 81181D4 + thumb_func_start HandleIntroSlide +HandleIntroSlide: @ 81181D4 push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 @@ -50521,7 +50521,7 @@ _08118258: pop {r0} bx r0 .pool - thumb_func_end battle_intro_launch + thumb_func_end HandleIntroSlide thumb_func_start sub_811828C sub_811828C: @ 811828C diff --git a/asm/battle_controller_linkopponent.s b/asm/battle_controller_linkopponent.s index d4e248d8c..1b4a01f2a 100644 --- a/asm/battle_controller_linkopponent.s +++ b/asm/battle_controller_linkopponent.s @@ -6,23 +6,6 @@ .text - thumb_func_start nullsub_28 -nullsub_28: @ 8064390 - bx lr - thumb_func_end nullsub_28 - - thumb_func_start SetBankFuncToLinkOpponentBufferRunCommand -SetBankFuncToLinkOpponentBufferRunCommand: @ 8064394 - ldr r1, =gBattleBankFunc - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, =LinkOpponentBufferRunCommand - str r1, [r0] - bx lr - .pool - thumb_func_end SetBankFuncToLinkOpponentBufferRunCommand thumb_func_start LinkOpponentBufferRunCommand LinkOpponentBufferRunCommand: @ 80643B0 @@ -130,7 +113,7 @@ sub_8064470: @ 8064470 bne _080644C2 adds r0, r2, r5 ldrh r0, [r0, 0x6] - bl sub_805DFE4 + bl FreeTrainerFrontPicPalette ldrb r0, [r4] adds r0, r6 ldrb r1, [r0] @@ -1180,7 +1163,7 @@ sub_8064D60: @ 8064D60 adds r1, r3, 0 adds r2, r3, 0 movs r3, 0x6 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _08064DA0: ldr r0, =gBattleBankFunc ldrb r1, [r4] @@ -1329,7 +1312,7 @@ sub_8064E50: @ 8064E50 ldrb r0, [r0] bl SetHealthboxSpriteVisible ldrb r0, [r5] - bl sub_805E408 + bl SetBattleSpriteInvisibilityBitToSpriteInvisibility ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -1525,8 +1508,8 @@ _080650CE: .pool thumb_func_end LinkOpponentBufferExecCompleted - thumb_func_start dp01t_00_2_getattr -dp01t_00_2_getattr: @ 80650E0 + thumb_func_start LinkOpponentHandleGetMonData +LinkOpponentHandleGetMonData: @ 80650E0 push {r4-r6,lr} sub sp, 0x100 movs r6, 0 @@ -1578,7 +1561,7 @@ _0806513A: pop {r4-r6} pop {r0} bx r0 - thumb_func_end dp01t_00_2_getattr + thumb_func_end LinkOpponentHandleGetMonData thumb_func_start dp01_getattr_by_ch1_for_opponent_pokemon dp01_getattr_by_ch1_for_opponent_pokemon: @ 8065154 @@ -2458,16 +2441,16 @@ _080658EA: .pool thumb_func_end dp01_getattr_by_ch1_for_opponent_pokemon - thumb_func_start sub_8065900 -sub_8065900: @ 8065900 + thumb_func_start LinkOpponentHandleGetRawMonData +LinkOpponentHandleGetRawMonData: @ 8065900 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8065900 + thumb_func_end LinkOpponentHandleGetRawMonData - thumb_func_start sub_806590C -sub_806590C: @ 806590C + thumb_func_start LinkOpponentHandleSetMonData +LinkOpponentHandleSetMonData: @ 806590C push {r4,r5,lr} ldr r1, =gBattleBufferA ldr r0, =gActiveBank @@ -2507,7 +2490,7 @@ _0806595A: pop {r4,r5} pop {r0} bx r0 - thumb_func_end sub_806590C + thumb_func_end LinkOpponentHandleSetMonData thumb_func_start sub_8065964 sub_8065964: @ 8065964 @@ -3494,8 +3477,8 @@ _08066270: .pool thumb_func_end sub_8065964 - thumb_func_start sub_8066284 -sub_8066284: @ 8066284 + thumb_func_start LinkOpponentHandleSetRawMonData +LinkOpponentHandleSetRawMonData: @ 8066284 push {r4-r7,lr} ldr r1, =gBattlePartyID ldr r7, =gActiveBank @@ -3547,10 +3530,10 @@ _080662DC: pop {r0} bx r0 .pool - thumb_func_end sub_8066284 + thumb_func_end LinkOpponentHandleSetRawMonData - thumb_func_start sub_80662F8 -sub_80662F8: @ 80662F8 + thumb_func_start LinkOpponentHandleLoadMonSprite +LinkOpponentHandleLoadMonSprite: @ 80662F8 push {r4-r7,lr} mov r7, r10 mov r6, r9 @@ -3688,10 +3671,10 @@ sub_80662F8: @ 80662F8 pop {r0} bx r0 .pool - thumb_func_end sub_80662F8 + thumb_func_end LinkOpponentHandleLoadMonSprite - thumb_func_start sub_8066448 -sub_8066448: @ 8066448 + thumb_func_start LinkOpponentHandleSwitchInAnim +LinkOpponentHandleSwitchInAnim: @ 8066448 push {r4,lr} ldr r1, =gBattlePartyID ldr r4, =gActiveBank @@ -3720,7 +3703,7 @@ sub_8066448: @ 8066448 pop {r0} bx r0 .pool - thumb_func_end sub_8066448 + thumb_func_end LinkOpponentHandleSwitchInAnim thumb_func_start sub_8066494 sub_8066494: @ 8066494 @@ -3735,7 +3718,7 @@ sub_8066494: @ 8066494 lsls r1, 24 lsrs r1, 24 adds r0, r6, 0 - bl sub_805EF84 + bl ClearTemporarySpeciesSpriteData ldr r0, =gBattlePartyID lsls r4, r6, 1 adds r4, r0 @@ -3895,8 +3878,8 @@ sub_8066494: @ 8066494 .pool thumb_func_end sub_8066494 - thumb_func_start sub_8066624 -sub_8066624: @ 8066624 + thumb_func_start LinkOpponentHandleReturnMonToBall +LinkOpponentHandleReturnMonToBall: @ 8066624 push {r4-r6,lr} ldr r1, =gBattleBufferA ldr r6, =gActiveBank @@ -3954,7 +3937,7 @@ _080666A8: pop {r0} bx r0 .pool - thumb_func_end sub_8066624 + thumb_func_end LinkOpponentHandleReturnMonToBall thumb_func_start sub_80666BC sub_80666BC: @ 80666BC @@ -3987,7 +3970,7 @@ _080666E4: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _080666FE: ldr r0, [r6] ldrb r1, [r5] @@ -4012,7 +3995,7 @@ _08066712: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x2 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -4026,8 +4009,8 @@ _0806673A: .pool thumb_func_end sub_80666BC - thumb_func_start sub_8066748 -sub_8066748: @ 8066748 + thumb_func_start LinkOpponentHandleDrawTrainerPic +LinkOpponentHandleDrawTrainerPic: @ 8066748 push {r4-r7,lr} mov r7, r9 mov r6, r8 @@ -4265,7 +4248,7 @@ _0806693A: lsls r1, 2 adds r1, r6 ldrb r0, [r1, 0x13] - bl sub_806F000 + bl PlayerGenderToFrontTrainerPicId _08066948: lsls r0, 16 lsrs r0, 16 @@ -4273,7 +4256,7 @@ _0806694C: mov r8, r0 ldr r5, =gActiveBank ldrb r1, [r5] - bl sub_805DF38 + bl DecompressTrainerFrontPic ldrb r0, [r5] bl GetBankIdentity adds r1, r0, 0 @@ -4378,10 +4361,10 @@ _0806694C: pop {r0} bx r0 .pool - thumb_func_end sub_8066748 + thumb_func_end LinkOpponentHandleDrawTrainerPic - thumb_func_start sub_8066A58 -sub_8066A58: @ 8066A58 + thumb_func_start LinkOpponentHandleTrainerSlide +LinkOpponentHandleTrainerSlide: @ 8066A58 push {r4-r6,lr} mov r6, r8 push {r6} @@ -4402,7 +4385,7 @@ _08066A76: mov r8, r0 ldr r6, =gActiveBank ldrb r1, [r6] - bl sub_805DF38 + bl DecompressTrainerFrontPic ldrb r0, [r6] bl GetBankIdentity adds r1, r0, 0 @@ -4510,10 +4493,10 @@ _08066A76: pop {r0} bx r0 .pool - thumb_func_end sub_8066A58 + thumb_func_end LinkOpponentHandleTrainerSlide - thumb_func_start sub_8066B94 -sub_8066B94: @ 8066B94 + thumb_func_start LinkOpponentHandleTrainerSlideBack +LinkOpponentHandleTrainerSlideBack: @ 8066B94 push {r4-r6,lr} ldr r6, =gBankSpriteIds ldr r4, =gActiveBank @@ -4584,10 +4567,10 @@ sub_8066B94: @ 8066B94 pop {r0} bx r0 .pool - thumb_func_end sub_8066B94 + thumb_func_end LinkOpponentHandleTrainerSlideBack - thumb_func_start sub_8066C40 -sub_8066C40: @ 8066C40 + thumb_func_start LinkOpponentHandleFaintAnimation +LinkOpponentHandleFaintAnimation: @ 8066C40 push {r4-r6,lr} ldr r6, =gBattleSpritesDataPtr ldr r4, [r6] @@ -4612,7 +4595,7 @@ sub_8066C40: @ 8066C40 adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _08066C74: ldr r0, [r6] ldrb r1, [r5] @@ -4661,42 +4644,42 @@ _08066CD0: pop {r0} bx r0 .pool - thumb_func_end sub_8066C40 + thumb_func_end LinkOpponentHandleFaintAnimation - thumb_func_start sub_8066CEC -sub_8066CEC: @ 8066CEC + thumb_func_start LinkOpponentHandleCmd11 +LinkOpponentHandleCmd11: @ 8066CEC push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8066CEC + thumb_func_end LinkOpponentHandleCmd11 - thumb_func_start sub_8066CF8 -sub_8066CF8: @ 8066CF8 + thumb_func_start LinkOpponentHandleCmd12 +LinkOpponentHandleCmd12: @ 8066CF8 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8066CF8 + thumb_func_end LinkOpponentHandleCmd12 - thumb_func_start sub_8066D04 -sub_8066D04: @ 8066D04 + thumb_func_start LinkOpponentHandleBallThrow +LinkOpponentHandleBallThrow: @ 8066D04 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8066D04 + thumb_func_end LinkOpponentHandleBallThrow - thumb_func_start sub_8066D10 -sub_8066D10: @ 8066D10 + thumb_func_start LinkOpponentHandlePause +LinkOpponentHandlePause: @ 8066D10 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8066D10 + thumb_func_end LinkOpponentHandlePause - thumb_func_start sub_8066D1C -sub_8066D1C: @ 8066D1C + thumb_func_start LinkOpponentHandleMoveAnimation +LinkOpponentHandleMoveAnimation: @ 8066D1C push {r4-r7,lr} mov r7, r8 push {r7} @@ -4798,7 +4781,7 @@ _08066D32: adds r0, 0x10 adds r1, r0 str r1, [r7] - ldr r2, =gUnknown_020244BC + ldr r2, =gTransformedPersonalities ldrb r0, [r5] lsls r0, 2 adds r0, r2 @@ -4807,7 +4790,7 @@ _08066D32: mov r0, r8 ldrb r1, [r0] adds r0, r6, 0 - bl sub_805DB8C + bl IsMoveWithoutAnimation lsls r0, 24 lsrs r3, r0, 24 cmp r3, 0 @@ -4842,7 +4825,7 @@ _08066E58: pop {r0} bx r0 .pool - thumb_func_end sub_8066D1C + thumb_func_end LinkOpponentHandleMoveAnimation thumb_func_start sub_8066E70 sub_8066E70: @ 8066E70 @@ -4907,7 +4890,7 @@ _08066ED2: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _08066EF4: ldr r0, [r7] ldrb r1, [r6] @@ -4965,7 +4948,7 @@ _08066F32: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x6 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r0, [r7] ldrb r1, [r6] ldr r0, [r0] @@ -5008,7 +4991,7 @@ _08066FA8: ldrb r2, [r2] lsls r2, 8 orrs r1, r2 - bl sub_805E94C + bl TrySetBehindSubstituteSpriteBit ldr r0, [r7] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -5028,8 +5011,8 @@ _08066FE4: bx r0 thumb_func_end sub_8066E70 - thumb_func_start sub_8066FF4 -sub_8066FF4: @ 8066FF4 + thumb_func_start LinkOpponentHandlePrintString +LinkOpponentHandlePrintString: @ 8066FF4 push {r4,r5,lr} ldr r0, =gBattle_BG0_X movs r1, 0 @@ -5045,7 +5028,7 @@ sub_8066FF4: @ 8066FF4 bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -5058,66 +5041,66 @@ sub_8066FF4: @ 8066FF4 pop {r0} bx r0 .pool - thumb_func_end sub_8066FF4 + thumb_func_end LinkOpponentHandlePrintString - thumb_func_start sub_806704C -sub_806704C: @ 806704C + thumb_func_start LinkOpponentHandlePrintStringPlayerOnly +LinkOpponentHandlePrintStringPlayerOnly: @ 806704C push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_806704C + thumb_func_end LinkOpponentHandlePrintStringPlayerOnly - thumb_func_start sub_8067058 -sub_8067058: @ 8067058 + thumb_func_start LinkOpponentHandleChooseAction +LinkOpponentHandleChooseAction: @ 8067058 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8067058 + thumb_func_end LinkOpponentHandleChooseAction - thumb_func_start sub_8067064 -sub_8067064: @ 8067064 + thumb_func_start LinkOpponentHandleCmd19 +LinkOpponentHandleCmd19: @ 8067064 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8067064 + thumb_func_end LinkOpponentHandleCmd19 - thumb_func_start sub_8067070 -sub_8067070: @ 8067070 + thumb_func_start LinkOpponentHandleChooseMove +LinkOpponentHandleChooseMove: @ 8067070 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8067070 + thumb_func_end LinkOpponentHandleChooseMove - thumb_func_start sub_806707C -sub_806707C: @ 806707C + thumb_func_start LinkOpponentHandleOpenBag +LinkOpponentHandleOpenBag: @ 806707C push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_806707C + thumb_func_end LinkOpponentHandleOpenBag - thumb_func_start sub_8067088 -sub_8067088: @ 8067088 + thumb_func_start LinkOpponentHandleChoosePokemon +LinkOpponentHandleChoosePokemon: @ 8067088 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8067088 + thumb_func_end LinkOpponentHandleChoosePokemon - thumb_func_start sub_8067094 -sub_8067094: @ 8067094 + thumb_func_start LinkOpponentHandleCmd23 +LinkOpponentHandleCmd23: @ 8067094 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8067094 + thumb_func_end LinkOpponentHandleCmd23 - thumb_func_start sub_80670A0 -sub_80670A0: @ 80670A0 + thumb_func_start LinkOpponentHandleHealthBarUpdate +LinkOpponentHandleHealthBarUpdate: @ 80670A0 push {r4-r7,lr} mov r7, r9 mov r6, r8 @@ -5210,18 +5193,18 @@ _0806715A: pop {r0} bx r0 .pool - thumb_func_end sub_80670A0 + thumb_func_end LinkOpponentHandleHealthBarUpdate - thumb_func_start sub_8067190 -sub_8067190: @ 8067190 + thumb_func_start LinkOpponentHandleExpUpdate +LinkOpponentHandleExpUpdate: @ 8067190 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8067190 + thumb_func_end LinkOpponentHandleExpUpdate - thumb_func_start sub_806719C -sub_806719C: @ 806719C + thumb_func_start LinkOpponentHandleStatusIconUpdate +LinkOpponentHandleStatusIconUpdate: @ 806719C push {r4,lr} ldr r4, =gActiveBank ldrb r0, [r4] @@ -5267,10 +5250,10 @@ _080671F0: pop {r0} bx r0 .pool - thumb_func_end sub_806719C + thumb_func_end LinkOpponentHandleStatusIconUpdate - thumb_func_start sub_8067214 -sub_8067214: @ 8067214 + thumb_func_start LinkOpponentHandleStatusAnimation +LinkOpponentHandleStatusAnimation: @ 8067214 push {r4,r5,lr} ldr r5, =gActiveBank ldrb r0, [r5] @@ -5302,7 +5285,7 @@ sub_8067214: @ 8067214 ldrb r2, [r3] lsls r2, 24 orrs r1, r2 - bl move_anim_start_t2_for_situation + bl DoStatusAnimation ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -5314,82 +5297,82 @@ _08067264: pop {r0} bx r0 .pool - thumb_func_end sub_8067214 + thumb_func_end LinkOpponentHandleStatusAnimation - thumb_func_start sub_806727C -sub_806727C: @ 806727C + thumb_func_start LinkOpponentHandleStatusXor +LinkOpponentHandleStatusXor: @ 806727C push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_806727C + thumb_func_end LinkOpponentHandleStatusXor - thumb_func_start sub_8067288 -sub_8067288: @ 8067288 + thumb_func_start LinkOpponentHandleDataTransfer +LinkOpponentHandleDataTransfer: @ 8067288 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8067288 + thumb_func_end LinkOpponentHandleDataTransfer - thumb_func_start sub_8067294 -sub_8067294: @ 8067294 + thumb_func_start LinkOpponentHandleDMA3Transfer +LinkOpponentHandleDMA3Transfer: @ 8067294 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8067294 + thumb_func_end LinkOpponentHandleDMA3Transfer - thumb_func_start sub_80672A0 -sub_80672A0: @ 80672A0 + thumb_func_start LinkOpponentHandlePlayBGM +LinkOpponentHandlePlayBGM: @ 80672A0 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_80672A0 + thumb_func_end LinkOpponentHandlePlayBGM - thumb_func_start sub_80672AC -sub_80672AC: @ 80672AC + thumb_func_start LinkOpponentHandleCmd32 +LinkOpponentHandleCmd32: @ 80672AC push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_80672AC + thumb_func_end LinkOpponentHandleCmd32 - thumb_func_start sub_80672B8 -sub_80672B8: @ 80672B8 + thumb_func_start LinkOpponentHandleCmd33 +LinkOpponentHandleCmd33: @ 80672B8 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_80672B8 + thumb_func_end LinkOpponentHandleCmd33 - thumb_func_start sub_80672C4 -sub_80672C4: @ 80672C4 + thumb_func_start LinkOpponentHandleCmd34 +LinkOpponentHandleCmd34: @ 80672C4 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_80672C4 + thumb_func_end LinkOpponentHandleCmd34 - thumb_func_start sub_80672D0 -sub_80672D0: @ 80672D0 + thumb_func_start LinkOpponentHandleCmd35 +LinkOpponentHandleCmd35: @ 80672D0 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_80672D0 + thumb_func_end LinkOpponentHandleCmd35 - thumb_func_start sub_80672DC -sub_80672DC: @ 80672DC + thumb_func_start LinkOpponentHandleCmd36 +LinkOpponentHandleCmd36: @ 80672DC push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_80672DC + thumb_func_end LinkOpponentHandleCmd36 - thumb_func_start sub_80672E8 -sub_80672E8: @ 80672E8 + thumb_func_start LinkOpponentHandleCmd37 +LinkOpponentHandleCmd37: @ 80672E8 push {lr} ldr r2, =gUnknown_02022D0C ldrb r1, [r2] @@ -5401,10 +5384,10 @@ sub_80672E8: @ 80672E8 pop {r0} bx r0 .pool - thumb_func_end sub_80672E8 + thumb_func_end LinkOpponentHandleCmd37 - thumb_func_start sub_8067304 -sub_8067304: @ 8067304 + thumb_func_start LinkOpponentHandleCmd38 +LinkOpponentHandleCmd38: @ 8067304 push {lr} ldr r3, =gUnknown_02022D0C ldr r1, =gBattleBufferA @@ -5426,10 +5409,10 @@ sub_8067304: @ 8067304 pop {r0} bx r0 .pool - thumb_func_end sub_8067304 + thumb_func_end LinkOpponentHandleCmd38 - thumb_func_start sub_806733C -sub_806733C: @ 806733C + thumb_func_start LinkOpponentHandleCmd39 +LinkOpponentHandleCmd39: @ 806733C push {lr} ldr r2, =gUnknown_02022D0C ldrb r1, [r2] @@ -5440,10 +5423,10 @@ sub_806733C: @ 806733C pop {r0} bx r0 .pool - thumb_func_end sub_806733C + thumb_func_end LinkOpponentHandleCmd39 - thumb_func_start sub_8067354 -sub_8067354: @ 8067354 + thumb_func_start LinkOpponentHandleCmd40 +LinkOpponentHandleCmd40: @ 8067354 push {lr} ldr r3, =gUnknown_02022D0C ldr r1, [r3] @@ -5461,10 +5444,10 @@ sub_8067354: @ 8067354 pop {r0} bx r0 .pool - thumb_func_end sub_8067354 + thumb_func_end LinkOpponentHandleCmd40 - thumb_func_start sub_806737C -sub_806737C: @ 806737C + thumb_func_start LinkOpponentHandleHitAnimation +LinkOpponentHandleHitAnimation: @ 806737C push {r4,lr} ldr r3, =gSprites ldr r2, =gBankSpriteIds @@ -5498,7 +5481,7 @@ _080673B0: movs r1, 0 strh r1, [r0, 0x30] ldrb r0, [r4] - bl sub_80769F4 + bl DoHitAnimHealthboxEffect ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 @@ -5510,18 +5493,18 @@ _080673DA: pop {r0} bx r0 .pool - thumb_func_end sub_806737C + thumb_func_end LinkOpponentHandleHitAnimation - thumb_func_start sub_80673EC -sub_80673EC: @ 80673EC + thumb_func_start LinkOpponentHandleCmd42 +LinkOpponentHandleCmd42: @ 80673EC push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_80673EC + thumb_func_end LinkOpponentHandleCmd42 - thumb_func_start sub_80673F8 -sub_80673F8: @ 80673F8 + thumb_func_start LinkOpponentHandleEffectivenessSound +LinkOpponentHandleEffectivenessSound: @ 80673F8 push {r4,lr} ldr r4, =gActiveBank ldrb r0, [r4] @@ -5551,10 +5534,10 @@ _0806740C: pop {r0} bx r0 .pool - thumb_func_end sub_80673F8 + thumb_func_end LinkOpponentHandleEffectivenessSound - thumb_func_start sub_806743C -sub_806743C: @ 806743C + thumb_func_start LinkOpponentHandlePlayFanfareOrBGM +LinkOpponentHandlePlayFanfareOrBGM: @ 806743C push {r4,r5,lr} ldr r4, =gBattleBufferA ldr r5, =gActiveBank @@ -5594,10 +5577,10 @@ _0806748C: pop {r4,r5} pop {r0} bx r0 - thumb_func_end sub_806743C + thumb_func_end LinkOpponentHandlePlayFanfareOrBGM - thumb_func_start sub_8067498 -sub_8067498: @ 8067498 + thumb_func_start LinkOpponentHandleFaintingCry +LinkOpponentHandleFaintingCry: @ 8067498 push {lr} ldr r1, =gBattlePartyID ldr r0, =gActiveBank @@ -5620,10 +5603,10 @@ sub_8067498: @ 8067498 pop {r0} bx r0 .pool - thumb_func_end sub_8067498 + thumb_func_end LinkOpponentHandleFaintingCry - thumb_func_start sub_80674D4 -sub_80674D4: @ 80674D4 + thumb_func_start LinkOpponentHandleIntroSlide +LinkOpponentHandleIntroSlide: @ 80674D4 push {lr} ldr r1, =gBattleBufferA ldr r0, =gActiveBank @@ -5632,7 +5615,7 @@ sub_80674D4: @ 80674D4 adds r1, 0x1 adds r0, r1 ldrb r0, [r0] - bl battle_intro_launch + bl HandleIntroSlide ldr r2, =gUnknown_020243FC ldrh r0, [r2] movs r1, 0x1 @@ -5642,10 +5625,10 @@ sub_80674D4: @ 80674D4 pop {r0} bx r0 .pool - thumb_func_end sub_80674D4 + thumb_func_end LinkOpponentHandleIntroSlide - thumb_func_start sub_8067508 -sub_8067508: @ 8067508 + thumb_func_start LinkOpponentHandleIntroTrainerBallThrow +LinkOpponentHandleIntroTrainerBallThrow: @ 8067508 push {r4-r6,lr} ldr r5, =gBankSpriteIds ldr r6, =gActiveBank @@ -5757,7 +5740,7 @@ _080675CA: pop {r0} bx r0 .pool - thumb_func_end sub_8067508 + thumb_func_end LinkOpponentHandleIntroTrainerBallThrow thumb_func_start c3_08038DC4 c3_08038DC4: @ 8067618 @@ -5862,7 +5845,7 @@ sub_80676FC: @ 80676FC push {r4,lr} adds r4, r0, 0 ldrh r0, [r4, 0x6] - bl sub_805DFE4 + bl FreeTrainerFrontPicPalette adds r0, r4, 0 bl FreeSpriteOamMatrix adds r0, r4, 0 @@ -5872,8 +5855,8 @@ sub_80676FC: @ 80676FC bx r0 thumb_func_end sub_80676FC - thumb_func_start sub_8067718 -sub_8067718: @ 8067718 + thumb_func_start LinkOpponentHandleDrawPartyStatusSummary +LinkOpponentHandleDrawPartyStatusSummary: @ 8067718 push {r4-r7,lr} ldr r1, =gBattleBufferA ldr r0, =gActiveBank @@ -5995,7 +5978,7 @@ _08067812: pop {r0} bx r0 .pool - thumb_func_end sub_8067718 + thumb_func_end LinkOpponentHandleDrawPartyStatusSummary thumb_func_start sub_806782C sub_806782C: @ 806782C @@ -6033,8 +6016,8 @@ _08067864: .pool thumb_func_end sub_806782C - thumb_func_start sub_8067874 -sub_8067874: @ 8067874 + thumb_func_start LinkOpponentHandleCmd49 +LinkOpponentHandleCmd49: @ 8067874 push {lr} ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] @@ -6065,18 +6048,18 @@ _080678A6: pop {r0} bx r0 .pool - thumb_func_end sub_8067874 + thumb_func_end LinkOpponentHandleCmd49 - thumb_func_start sub_80678C4 -sub_80678C4: @ 80678C4 + thumb_func_start LinkOpponentHandleCmd50 +LinkOpponentHandleCmd50: @ 80678C4 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_80678C4 + thumb_func_end LinkOpponentHandleCmd50 - thumb_func_start sub_80678D0 -sub_80678D0: @ 80678D0 + thumb_func_start LinkOpponentHandleSpriteInvisibility +LinkOpponentHandleSpriteInvisibility: @ 80678D0 push {r4,lr} ldr r4, =gActiveBank ldrb r0, [r4] @@ -6109,17 +6092,17 @@ sub_80678D0: @ 80678D0 orrs r0, r1 strb r0, [r2] ldrb r0, [r4] - bl sub_805E408 + bl SetBattleSpriteInvisibilityBitToSpriteInvisibility _08067916: bl LinkOpponentBufferExecCompleted pop {r4} pop {r0} bx r0 .pool - thumb_func_end sub_80678D0 + thumb_func_end LinkOpponentHandleSpriteInvisibility - thumb_func_start sub_8067930 -sub_8067930: @ 8067930 + thumb_func_start LinkOpponentHandleBattleAnimation +LinkOpponentHandleBattleAnimation: @ 8067930 push {r4-r6,lr} sub sp, 0x4 ldr r5, =gActiveBank @@ -6146,7 +6129,7 @@ sub_8067930: @ 8067930 adds r0, r2, 0 adds r1, r2, 0 adds r3, r6, 0 - bl move_anim_start_t3 + bl DoBattleAnimationFromTable lsls r0, 24 cmp r0, 0 beq _08067980 @@ -6169,10 +6152,10 @@ _08067992: pop {r0} bx r0 .pool - thumb_func_end sub_8067930 + thumb_func_end LinkOpponentHandleBattleAnimation - thumb_func_start sub_80679A4 -sub_80679A4: @ 80679A4 + thumb_func_start LinkOpponentHandleLinkStandbyMsg +LinkOpponentHandleLinkStandbyMsg: @ 80679A4 push {lr} ldr r0, =gActiveBank ldrb r0, [r0] @@ -6184,18 +6167,18 @@ sub_80679A4: @ 80679A4 pop {r0} bx r0 .pool - thumb_func_end sub_80679A4 + thumb_func_end LinkOpponentHandleLinkStandbyMsg - thumb_func_start sub_80679C4 -sub_80679C4: @ 80679C4 + thumb_func_start LinkOpponentHandleResetActionMoveSelection +LinkOpponentHandleResetActionMoveSelection: @ 80679C4 push {lr} bl LinkOpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_80679C4 + thumb_func_end LinkOpponentHandleResetActionMoveSelection - thumb_func_start sub_80679D0 -sub_80679D0: @ 80679D0 + thumb_func_start LinkOpponentHandleCmd55 +LinkOpponentHandleCmd55: @ 80679D0 push {r4,r5,lr} ldr r5, =gActiveBank ldrb r0, [r5] @@ -6255,7 +6238,7 @@ _08067A08: pop {r0} bx r0 .pool - thumb_func_end sub_80679D0 + thumb_func_end LinkOpponentHandleCmd55 thumb_func_start nullsub_92 nullsub_92: @ 8067A70 diff --git a/asm/battle_controller_linkpartner.s b/asm/battle_controller_linkpartner.s index adc5cdb84..e8581c396 100644 --- a/asm/battle_controller_linkpartner.s +++ b/asm/battle_controller_linkpartner.s @@ -736,7 +736,7 @@ sub_814B4E0: @ 814B4E0 cmp r1, r0 bne _0814B532 adds r0, r3, 0 - bl sub_805E408 + bl SetBattleSpriteInvisibilityBitToSpriteInvisibility ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r2, [r4] @@ -751,7 +751,7 @@ sub_814B4E0: @ 814B4E0 adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x6 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _0814B526: ldr r0, =gBattleBankFunc ldrb r1, [r4] @@ -3265,7 +3265,7 @@ sub_814CC28: @ 814CC28 adds r6, r4, 0x2 adds r1, r6 ldrb r1, [r1] - bl sub_805EF84 + bl ClearTemporarySpeciesSpriteData ldr r2, =gBattlePartyID ldrb r0, [r5] lsls r1, r0, 1 @@ -3314,7 +3314,7 @@ sub_814CC98: @ 814CC98 lsls r1, 24 lsrs r1, 24 adds r0, r6, 0 - bl sub_805EF84 + bl ClearTemporarySpeciesSpriteData ldr r0, =gBattlePartyID lsls r2, r6, 1 adds r2, r0 @@ -3554,7 +3554,7 @@ _0814CECC: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _0814CEE6: ldr r0, [r6] ldrb r1, [r5] @@ -3579,7 +3579,7 @@ _0814CEFA: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x1 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -3696,7 +3696,7 @@ _0814D002: ldr r5, =gActiveBank ldrb r1, [r5] adds r0, r4, 0 - bl LoadBackTrainerBankSpriteGfx + bl DecompressTrainerBackPic ldrb r0, [r5] bl GetBankIdentity adds r1, r0, 0 @@ -3893,7 +3893,7 @@ sub_814D19C: @ 814D19C adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _0814D1D0: ldr r0, [r6] ldrb r1, [r5] @@ -4107,7 +4107,7 @@ _0814D2CE: adds r0, 0x10 adds r1, r0 str r1, [r7] - ldr r2, =gUnknown_020244BC + ldr r2, =gTransformedPersonalities ldrb r0, [r5] lsls r0, 2 adds r0, r2 @@ -4116,7 +4116,7 @@ _0814D2CE: mov r0, r8 ldrb r1, [r0] adds r0, r6, 0 - bl sub_805DB8C + bl IsMoveWithoutAnimation lsls r0, 24 lsrs r3, r0, 24 cmp r3, 0 @@ -4216,7 +4216,7 @@ _0814D46E: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _0814D490: ldr r0, [r7] ldrb r1, [r6] @@ -4274,7 +4274,7 @@ _0814D4CE: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x6 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r0, [r7] ldrb r1, [r6] ldr r0, [r0] @@ -4317,7 +4317,7 @@ _0814D544: ldrb r2, [r2] lsls r2, 8 orrs r1, r2 - bl sub_805E94C + bl TrySetBehindSubstituteSpriteBit ldr r0, [r7] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -4354,7 +4354,7 @@ sub_814D590: @ 814D590 bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -4611,7 +4611,7 @@ sub_814D7B0: @ 814D7B0 ldrb r2, [r3] lsls r2, 24 orrs r1, r2 - bl move_anim_start_t2_for_situation + bl DoStatusAnimation ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -4807,7 +4807,7 @@ _0814D94C: movs r1, 0 strh r1, [r0, 0x30] ldrb r0, [r4] - bl sub_80769F4 + bl DoHitAnimHealthboxEffect ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 @@ -4942,7 +4942,7 @@ dp01t_2E_4_battle_intro: @ 814DA74 adds r1, 0x1 adds r0, r1 ldrb r0, [r0] - bl battle_intro_launch + bl HandleIntroSlide ldr r2, =gUnknown_020243FC ldrh r0, [r2] movs r1, 0x1 @@ -5503,7 +5503,7 @@ sub_814DF40: @ 814DF40 orrs r0, r1 strb r0, [r2] ldrb r0, [r4] - bl sub_805E408 + bl SetBattleSpriteInvisibilityBitToSpriteInvisibility _0814DF86: bl LinkPartnerBufferExecCompleted pop {r4} @@ -5540,7 +5540,7 @@ sub_814DFA0: @ 814DFA0 adds r0, r2, 0 adds r1, r2, 0 adds r3, r6, 0 - bl move_anim_start_t3 + bl DoBattleAnimationFromTable lsls r0, 24 cmp r0, 0 beq _0814DFF0 diff --git a/asm/battle_controller_opponent.s b/asm/battle_controller_opponent.s index b66e373ca..b627404c8 100644 --- a/asm/battle_controller_opponent.s +++ b/asm/battle_controller_opponent.s @@ -5,24 +5,6 @@ .text - - thumb_func_start nullsub_26 -nullsub_26: @ 805F160 - bx lr - thumb_func_end nullsub_26 - - thumb_func_start SetBankFuncToOpponentBufferRunCommand -SetBankFuncToOpponentBufferRunCommand: @ 805F164 - ldr r1, =gBattleBankFunc - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, =OpponentBufferRunCommand - str r1, [r0] - bx lr - .pool - thumb_func_end SetBankFuncToOpponentBufferRunCommand thumb_func_start OpponentBufferRunCommand OpponentBufferRunCommand: @ 805F180 @@ -130,7 +112,7 @@ sub_805F240: @ 805F240 bne _0805F292 adds r0, r2, r5 ldrh r0, [r0, 0x6] - bl sub_805DFE4 + bl FreeTrainerFrontPicPalette ldrb r0, [r4] adds r0, r6 ldrb r1, [r0] @@ -1274,7 +1256,7 @@ sub_805FC10: @ 805FC10 adds r1, r3, 0 adds r2, r3, 0 movs r3, 0x6 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _0805FC50: ldr r0, =gBattleBankFunc ldrb r1, [r4] @@ -1423,7 +1405,7 @@ sub_805FD00: @ 805FD00 ldrb r0, [r0] bl SetHealthboxSpriteVisible ldrb r0, [r5] - bl sub_805E408 + bl SetBattleSpriteInvisibilityBitToSpriteInvisibility ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -1619,8 +1601,8 @@ _0805FF7E: .pool thumb_func_end OpponentBufferExecCompleted - thumb_func_start dp01t_00_7_getattr -dp01t_00_7_getattr: @ 805FF90 + thumb_func_start OpponentHandleGetMonData +OpponentHandleGetMonData: @ 805FF90 push {r4-r6,lr} sub sp, 0x100 movs r6, 0 @@ -1672,7 +1654,7 @@ _0805FFEA: pop {r4-r6} pop {r0} bx r0 - thumb_func_end dp01t_00_7_getattr + thumb_func_end OpponentHandleGetMonData thumb_func_start sub_8060004 sub_8060004: @ 8060004 @@ -2552,8 +2534,8 @@ _0806079A: .pool thumb_func_end sub_8060004 - thumb_func_start dp01t_01_2_read_pokmon_data_slice -dp01t_01_2_read_pokmon_data_slice: @ 80607B0 + thumb_func_start OpponentHandleGetRawMonData +OpponentHandleGetRawMonData: @ 80607B0 push {r4-r7,lr} sub sp, 0x58 ldr r2, =gBattlePartyID @@ -2614,10 +2596,10 @@ _08060806: pop {r0} bx r0 .pool - thumb_func_end dp01t_01_2_read_pokmon_data_slice + thumb_func_end OpponentHandleGetRawMonData - thumb_func_start dp01t_02_7_setattr -dp01t_02_7_setattr: @ 8060838 + thumb_func_start OpponentHandleSetMonData +OpponentHandleSetMonData: @ 8060838 push {r4,r5,lr} ldr r1, =gBattleBufferA ldr r0, =gActiveBank @@ -2657,7 +2639,7 @@ _08060886: pop {r4,r5} pop {r0} bx r0 - thumb_func_end dp01t_02_7_setattr + thumb_func_end OpponentHandleSetMonData thumb_func_start sub_8060890 sub_8060890: @ 8060890 @@ -3644,8 +3626,8 @@ _0806119C: .pool thumb_func_end sub_8060890 - thumb_func_start sub_80611B0 -sub_80611B0: @ 80611B0 + thumb_func_start OpponentHandleSetRawMonData +OpponentHandleSetRawMonData: @ 80611B0 push {r4-r7,lr} ldr r1, =gBattlePartyID ldr r7, =gActiveBank @@ -3697,10 +3679,10 @@ _08061208: pop {r0} bx r0 .pool - thumb_func_end sub_80611B0 + thumb_func_end OpponentHandleSetRawMonData - thumb_func_start sub_8061224 -sub_8061224: @ 8061224 + thumb_func_start OpponentHandleLoadMonSprite +OpponentHandleLoadMonSprite: @ 8061224 push {r4-r7,lr} mov r7, r10 mov r6, r9 @@ -3843,10 +3825,10 @@ sub_8061224: @ 8061224 pop {r0} bx r0 .pool - thumb_func_end sub_8061224 + thumb_func_end OpponentHandleLoadMonSprite - thumb_func_start sub_806137C -sub_806137C: @ 806137C + thumb_func_start OpponentHandleSwitchInAnim +OpponentHandleSwitchInAnim: @ 806137C push {r4,lr} ldr r4, =gActiveBank ldrb r0, [r4] @@ -3882,7 +3864,7 @@ sub_806137C: @ 806137C pop {r0} bx r0 .pool - thumb_func_end sub_806137C + thumb_func_end OpponentHandleSwitchInAnim thumb_func_start sub_80613DC sub_80613DC: @ 80613DC @@ -3897,7 +3879,7 @@ sub_80613DC: @ 80613DC lsls r1, 24 lsrs r1, 24 adds r0, r6, 0 - bl sub_805EF84 + bl ClearTemporarySpeciesSpriteData ldr r0, =gBattlePartyID lsls r4, r6, 1 adds r4, r0 @@ -4057,8 +4039,8 @@ sub_80613DC: @ 80613DC .pool thumb_func_end sub_80613DC - thumb_func_start sub_806156C -sub_806156C: @ 806156C + thumb_func_start OpponentHandleReturnMonToBall +OpponentHandleReturnMonToBall: @ 806156C push {r4-r6,lr} ldr r1, =gBattleBufferA ldr r6, =gActiveBank @@ -4116,7 +4098,7 @@ _080615F0: pop {r0} bx r0 .pool - thumb_func_end sub_806156C + thumb_func_end OpponentHandleReturnMonToBall thumb_func_start sub_8061604 sub_8061604: @ 8061604 @@ -4149,7 +4131,7 @@ _0806162C: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _08061646: ldr r0, [r6] ldrb r1, [r5] @@ -4174,7 +4156,7 @@ _0806165A: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x2 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -4188,8 +4170,8 @@ _08061682: .pool thumb_func_end sub_8061604 - thumb_func_start sub_8061690 -sub_8061690: @ 8061690 + thumb_func_start OpponentHandleDrawTrainerPic +OpponentHandleDrawTrainerPic: @ 8061690 push {r4-r7,lr} mov r7, r9 mov r6, r8 @@ -4329,7 +4311,7 @@ _080617CA: ldr r5, =gActiveBank ldrb r1, [r5] mov r0, r8 - bl sub_805DF38 + bl DecompressTrainerFrontPic ldrb r0, [r5] bl GetBankIdentity adds r1, r0, 0 @@ -4434,10 +4416,10 @@ _080617CA: pop {r0} bx r0 .pool - thumb_func_end sub_8061690 + thumb_func_end OpponentHandleDrawTrainerPic - thumb_func_start sub_80618D8 -sub_80618D8: @ 80618D8 + thumb_func_start OpponentHandleTrainerSlide +OpponentHandleTrainerSlide: @ 80618D8 push {r4-r6,lr} mov r6, r8 push {r6} @@ -4555,7 +4537,7 @@ _080619DE: mov r8, r0 ldr r6, =gActiveBank ldrb r1, [r6] - bl sub_805DF38 + bl DecompressTrainerFrontPic ldrb r0, [r6] bl GetBankIdentity adds r1, r0, 0 @@ -4662,10 +4644,10 @@ _080619DE: pop {r0} bx r0 .pool - thumb_func_end sub_80618D8 + thumb_func_end OpponentHandleTrainerSlide - thumb_func_start sub_8061AF0 -sub_8061AF0: @ 8061AF0 + thumb_func_start OpponentHandleTrainerSlideBack +OpponentHandleTrainerSlideBack: @ 8061AF0 push {r4-r6,lr} ldr r6, =gBankSpriteIds ldr r4, =gActiveBank @@ -4736,10 +4718,10 @@ sub_8061AF0: @ 8061AF0 pop {r0} bx r0 .pool - thumb_func_end sub_8061AF0 + thumb_func_end OpponentHandleTrainerSlideBack - thumb_func_start sub_8061B9C -sub_8061B9C: @ 8061B9C + thumb_func_start OpponentHandleFaintAnimation +OpponentHandleFaintAnimation: @ 8061B9C push {r4-r6,lr} ldr r6, =gBattleSpritesDataPtr ldr r4, [r6] @@ -4764,7 +4746,7 @@ sub_8061B9C: @ 8061B9C adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _08061BD0: ldr r0, [r6] ldrb r1, [r5] @@ -4813,42 +4795,42 @@ _08061C2C: pop {r0} bx r0 .pool - thumb_func_end sub_8061B9C + thumb_func_end OpponentHandleFaintAnimation - thumb_func_start sub_8061C48 -sub_8061C48: @ 8061C48 + thumb_func_start OpponentHandleCmd11 +OpponentHandleCmd11: @ 8061C48 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8061C48 + thumb_func_end OpponentHandleCmd11 - thumb_func_start sub_8061C54 -sub_8061C54: @ 8061C54 + thumb_func_start OpponentHandleCmd12 +OpponentHandleCmd12: @ 8061C54 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8061C54 + thumb_func_end OpponentHandleCmd12 - thumb_func_start sub_8061C60 -sub_8061C60: @ 8061C60 + thumb_func_start OpponentHandleBallThrow +OpponentHandleBallThrow: @ 8061C60 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8061C60 + thumb_func_end OpponentHandleBallThrow - thumb_func_start sub_8061C6C -sub_8061C6C: @ 8061C6C + thumb_func_start OpponentHandlePause +OpponentHandlePause: @ 8061C6C push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8061C6C + thumb_func_end OpponentHandlePause - thumb_func_start sub_8061C78 -sub_8061C78: @ 8061C78 + thumb_func_start OpponentHandleMoveAnimation +OpponentHandleMoveAnimation: @ 8061C78 push {r4-r6,lr} ldr r6, =gActiveBank ldrb r0, [r6] @@ -4946,14 +4928,14 @@ _08061C8A: adds r1, 0x10 adds r2, r1 str r2, [r3] - ldr r3, =gUnknown_020244BC + ldr r3, =gTransformedPersonalities ldrb r1, [r6] lsls r1, 2 adds r1, r3 ldr r2, [r2] str r2, [r1] ldrb r1, [r5] - bl sub_805DB8C + bl IsMoveWithoutAnimation lsls r0, 24 lsrs r3, r0, 24 cmp r3, 0 @@ -4982,7 +4964,7 @@ _08061D9E: pop {r0} bx r0 .pool - thumb_func_end sub_8061C78 + thumb_func_end OpponentHandleMoveAnimation thumb_func_start bx_move_anim_7 bx_move_anim_7: @ 8061DB0 @@ -5047,7 +5029,7 @@ _08061E12: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _08061E34: ldr r0, [r7] ldrb r1, [r6] @@ -5105,7 +5087,7 @@ _08061E72: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x6 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r0, [r7] ldrb r1, [r6] ldr r0, [r0] @@ -5148,7 +5130,7 @@ _08061EE8: ldrb r2, [r2] lsls r2, 8 orrs r1, r2 - bl sub_805E94C + bl TrySetBehindSubstituteSpriteBit ldr r0, [r7] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -5168,8 +5150,8 @@ _08061F24: bx r0 thumb_func_end bx_move_anim_7 - thumb_func_start sub_8061F34 -sub_8061F34: @ 8061F34 + thumb_func_start OpponentHandlePrintString +OpponentHandlePrintString: @ 8061F34 push {r4,r5,lr} ldr r0, =gBattle_BG0_X movs r1, 0 @@ -5185,7 +5167,7 @@ sub_8061F34: @ 8061F34 bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -5199,35 +5181,35 @@ sub_8061F34: @ 8061F34 pop {r0} bx r0 .pool - thumb_func_end sub_8061F34 + thumb_func_end OpponentHandlePrintString - thumb_func_start sub_8061F90 -sub_8061F90: @ 8061F90 + thumb_func_start OpponentHandlePrintStringPlayerOnly +OpponentHandlePrintStringPlayerOnly: @ 8061F90 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8061F90 + thumb_func_end OpponentHandlePrintStringPlayerOnly - thumb_func_start sub_8061F9C -sub_8061F9C: @ 8061F9C + thumb_func_start OpponentHandleChooseAction +OpponentHandleChooseAction: @ 8061F9C push {lr} bl AI_TrySwitchOrUseItem bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8061F9C + thumb_func_end OpponentHandleChooseAction - thumb_func_start sub_8061FAC -sub_8061FAC: @ 8061FAC + thumb_func_start OpponentHandleCmd19 +OpponentHandleCmd19: @ 8061FAC push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8061FAC + thumb_func_end OpponentHandleCmd19 - thumb_func_start sub_8061FB8 -sub_8061FB8: @ 8061FB8 + thumb_func_start OpponentHandleChooseMove +OpponentHandleChooseMove: @ 8061FB8 push {r4-r6,lr} ldr r0, =gBattleTypeFlags ldr r2, [r0] @@ -5236,14 +5218,14 @@ sub_8061FB8: @ 8061FB8 ands r0, r2 cmp r0, 0 beq _08061FE4 - bl sub_805D19C + bl ChooseMoveAndTargetInBattlePalace adds r2, r0, 0 lsls r2, 16 lsrs r2, 16 movs r0, 0x1 movs r1, 0xA _08061FD6: - bl EmitCmd33 + bl EmitTwoReturnValues _08061FDA: bl OpponentBufferExecCompleted b _08062156 @@ -5347,7 +5329,7 @@ _0806209C: movs r0, 0x1 movs r1, 0xA adds r2, r4, 0 - bl EmitCmd33 + bl EmitTwoReturnValues b _08061FDA .pool _080620C4: @@ -5378,7 +5360,7 @@ _080620C6: movs r0, 0x1 movs r1, 0xA adds r2, r4, 0 - bl EmitCmd33 + bl EmitTwoReturnValues b _08062152 .pool _08062108: @@ -5401,7 +5383,7 @@ _08062108: orrs r2, r4 movs r0, 0x1 movs r1, 0xA - bl EmitCmd33 + bl EmitTwoReturnValues b _08062152 .pool _0806213C: @@ -5413,17 +5395,17 @@ _0806213C: orrs r2, r4 movs r0, 0x1 movs r1, 0xA - bl EmitCmd33 + bl EmitTwoReturnValues _08062152: bl OpponentBufferExecCompleted _08062156: pop {r4-r6} pop {r0} bx r0 - thumb_func_end sub_8061FB8 + thumb_func_end OpponentHandleChooseMove - thumb_func_start sub_806215C -sub_806215C: @ 806215C + thumb_func_start OpponentHandleOpenBag +OpponentHandleOpenBag: @ 806215C push {lr} ldr r0, =gActiveBank ldrb r0, [r0] @@ -5435,15 +5417,15 @@ sub_806215C: @ 806215C adds r0, 0xC0 ldrb r1, [r0] movs r0, 0x1 - bl EmitCmd35 + bl EmitOneReturnValue bl OpponentBufferExecCompleted pop {r0} bx r0 .pool - thumb_func_end sub_806215C + thumb_func_end OpponentHandleOpenBag - thumb_func_start sub_8062188 -sub_8062188: @ 8062188 + thumb_func_start OpponentHandleChoosePokemon +OpponentHandleChoosePokemon: @ 8062188 push {r4-r7,lr} ldr r0, =gActiveBank ldrb r0, [r0] @@ -5550,24 +5532,24 @@ _0806225A: lsrs r1, 24 movs r0, 0x1 movs r2, 0 - bl EmitCmd34 + bl EmitChosenMonReturnValue bl OpponentBufferExecCompleted pop {r4-r7} pop {r0} bx r0 .pool - thumb_func_end sub_8062188 + thumb_func_end OpponentHandleChoosePokemon - thumb_func_start sub_8062288 -sub_8062288: @ 8062288 + thumb_func_start OpponentHandleCmd23 +OpponentHandleCmd23: @ 8062288 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8062288 + thumb_func_end OpponentHandleCmd23 - thumb_func_start sub_8062294 -sub_8062294: @ 8062294 + thumb_func_start OpponentHandleHealthBarUpdate +OpponentHandleHealthBarUpdate: @ 8062294 push {r4-r7,lr} mov r7, r9 mov r6, r8 @@ -5660,18 +5642,18 @@ _0806234E: pop {r0} bx r0 .pool - thumb_func_end sub_8062294 + thumb_func_end OpponentHandleHealthBarUpdate - thumb_func_start sub_8062384 -sub_8062384: @ 8062384 + thumb_func_start OpponentHandleExpUpdate +OpponentHandleExpUpdate: @ 8062384 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8062384 + thumb_func_end OpponentHandleExpUpdate - thumb_func_start sub_8062390 -sub_8062390: @ 8062390 + thumb_func_start OpponentHandleStatusIconUpdate +OpponentHandleStatusIconUpdate: @ 8062390 push {r4,lr} ldr r4, =gActiveBank ldrb r0, [r4] @@ -5717,10 +5699,10 @@ _080623E4: pop {r0} bx r0 .pool - thumb_func_end sub_8062390 + thumb_func_end OpponentHandleStatusIconUpdate - thumb_func_start sub_8062408 -sub_8062408: @ 8062408 + thumb_func_start OpponentHandleStatusAnimation +OpponentHandleStatusAnimation: @ 8062408 push {r4,r5,lr} ldr r5, =gActiveBank ldrb r0, [r5] @@ -5752,7 +5734,7 @@ sub_8062408: @ 8062408 ldrb r2, [r3] lsls r2, 24 orrs r1, r2 - bl move_anim_start_t2_for_situation + bl DoStatusAnimation ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -5764,82 +5746,82 @@ _08062458: pop {r0} bx r0 .pool - thumb_func_end sub_8062408 + thumb_func_end OpponentHandleStatusAnimation - thumb_func_start sub_8062470 -sub_8062470: @ 8062470 + thumb_func_start OpponentHandleStatusXor +OpponentHandleStatusXor: @ 8062470 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8062470 + thumb_func_end OpponentHandleStatusXor - thumb_func_start sub_806247C -sub_806247C: @ 806247C + thumb_func_start OpponentHandleDataTransfer +OpponentHandleDataTransfer: @ 806247C push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_806247C + thumb_func_end OpponentHandleDataTransfer - thumb_func_start sub_8062488 -sub_8062488: @ 8062488 + thumb_func_start OpponentHandleDMA3Transfer +OpponentHandleDMA3Transfer: @ 8062488 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8062488 + thumb_func_end OpponentHandleDMA3Transfer - thumb_func_start sub_8062494 -sub_8062494: @ 8062494 + thumb_func_start OpponentHandlePlayBGM +OpponentHandlePlayBGM: @ 8062494 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8062494 + thumb_func_end OpponentHandlePlayBGM - thumb_func_start sub_80624A0 -sub_80624A0: @ 80624A0 + thumb_func_start OpponentHandleCmd32 +OpponentHandleCmd32: @ 80624A0 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_80624A0 + thumb_func_end OpponentHandleCmd32 - thumb_func_start sub_80624AC -sub_80624AC: @ 80624AC + thumb_func_start OpponentHandleCmd33 +OpponentHandleCmd33: @ 80624AC push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_80624AC + thumb_func_end OpponentHandleCmd33 - thumb_func_start sub_80624B8 -sub_80624B8: @ 80624B8 + thumb_func_start OpponentHandleCmd34 +OpponentHandleCmd34: @ 80624B8 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_80624B8 + thumb_func_end OpponentHandleCmd34 - thumb_func_start sub_80624C4 -sub_80624C4: @ 80624C4 + thumb_func_start OpponentHandleCmd35 +OpponentHandleCmd35: @ 80624C4 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_80624C4 + thumb_func_end OpponentHandleCmd35 - thumb_func_start sub_80624D0 -sub_80624D0: @ 80624D0 + thumb_func_start OpponentHandleCmd36 +OpponentHandleCmd36: @ 80624D0 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_80624D0 + thumb_func_end OpponentHandleCmd36 - thumb_func_start sub_80624DC -sub_80624DC: @ 80624DC + thumb_func_start OpponentHandleCmd37 +OpponentHandleCmd37: @ 80624DC push {lr} ldr r2, =gUnknown_02022D0C ldrb r1, [r2] @@ -5851,10 +5833,10 @@ sub_80624DC: @ 80624DC pop {r0} bx r0 .pool - thumb_func_end sub_80624DC + thumb_func_end OpponentHandleCmd37 - thumb_func_start sub_80624F8 -sub_80624F8: @ 80624F8 + thumb_func_start OpponentHandleCmd38 +OpponentHandleCmd38: @ 80624F8 push {lr} ldr r3, =gUnknown_02022D0C ldr r1, =gBattleBufferA @@ -5876,10 +5858,10 @@ sub_80624F8: @ 80624F8 pop {r0} bx r0 .pool - thumb_func_end sub_80624F8 + thumb_func_end OpponentHandleCmd38 - thumb_func_start sub_8062530 -sub_8062530: @ 8062530 + thumb_func_start OpponentHandleCmd39 +OpponentHandleCmd39: @ 8062530 push {lr} ldr r2, =gUnknown_02022D0C ldrb r1, [r2] @@ -5890,10 +5872,10 @@ sub_8062530: @ 8062530 pop {r0} bx r0 .pool - thumb_func_end sub_8062530 + thumb_func_end OpponentHandleCmd39 - thumb_func_start sub_8062548 -sub_8062548: @ 8062548 + thumb_func_start OpponentHandleCmd40 +OpponentHandleCmd40: @ 8062548 push {lr} ldr r3, =gUnknown_02022D0C ldr r1, [r3] @@ -5911,10 +5893,10 @@ sub_8062548: @ 8062548 pop {r0} bx r0 .pool - thumb_func_end sub_8062548 + thumb_func_end OpponentHandleCmd40 - thumb_func_start dp01t_29_7_blink -dp01t_29_7_blink: @ 8062570 + thumb_func_start OpponentHandleHitAnimation +OpponentHandleHitAnimation: @ 8062570 push {r4,lr} ldr r3, =gSprites ldr r2, =gBankSpriteIds @@ -5948,7 +5930,7 @@ _080625A4: movs r1, 0 strh r1, [r0, 0x30] ldrb r0, [r4] - bl sub_80769F4 + bl DoHitAnimHealthboxEffect ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 @@ -5960,18 +5942,18 @@ _080625CE: pop {r0} bx r0 .pool - thumb_func_end dp01t_29_7_blink + thumb_func_end OpponentHandleHitAnimation - thumb_func_start sub_80625E0 -sub_80625E0: @ 80625E0 + thumb_func_start OpponentHandleCmd42 +OpponentHandleCmd42: @ 80625E0 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_80625E0 + thumb_func_end OpponentHandleCmd42 - thumb_func_start sub_80625EC -sub_80625EC: @ 80625EC + thumb_func_start OpponentHandleEffectivenessSound +OpponentHandleEffectivenessSound: @ 80625EC push {r4,lr} ldr r4, =gActiveBank ldrb r0, [r4] @@ -6001,10 +5983,10 @@ _08062600: pop {r0} bx r0 .pool - thumb_func_end sub_80625EC + thumb_func_end OpponentHandleEffectivenessSound - thumb_func_start sub_8062630 -sub_8062630: @ 8062630 + thumb_func_start OpponentHandlePlayFanfareOrBGM +OpponentHandlePlayFanfareOrBGM: @ 8062630 push {r4,r5,lr} ldr r4, =gBattleBufferA ldr r5, =gActiveBank @@ -6044,10 +6026,10 @@ _08062680: pop {r4,r5} pop {r0} bx r0 - thumb_func_end sub_8062630 + thumb_func_end OpponentHandlePlayFanfareOrBGM - thumb_func_start sub_806268C -sub_806268C: @ 806268C + thumb_func_start OpponentHandleFaintingCry +OpponentHandleFaintingCry: @ 806268C push {lr} ldr r1, =gBattlePartyID ldr r0, =gActiveBank @@ -6070,10 +6052,10 @@ sub_806268C: @ 806268C pop {r0} bx r0 .pool - thumb_func_end sub_806268C + thumb_func_end OpponentHandleFaintingCry - thumb_func_start dp01t_2E_7_battle_intro -dp01t_2E_7_battle_intro: @ 80626C8 + thumb_func_start OpponentHandleIntroSlide +OpponentHandleIntroSlide: @ 80626C8 push {lr} ldr r1, =gBattleBufferA ldr r0, =gActiveBank @@ -6082,7 +6064,7 @@ dp01t_2E_7_battle_intro: @ 80626C8 adds r1, 0x1 adds r0, r1 ldrb r0, [r0] - bl battle_intro_launch + bl HandleIntroSlide ldr r2, =gUnknown_020243FC ldrh r0, [r2] movs r1, 0x1 @@ -6092,10 +6074,10 @@ dp01t_2E_7_battle_intro: @ 80626C8 pop {r0} bx r0 .pool - thumb_func_end dp01t_2E_7_battle_intro + thumb_func_end OpponentHandleIntroSlide - thumb_func_start sub_80626FC -sub_80626FC: @ 80626FC + thumb_func_start OpponentHandleIntroTrainerBallThrow +OpponentHandleIntroTrainerBallThrow: @ 80626FC push {r4-r6,lr} ldr r5, =gBankSpriteIds ldr r6, =gActiveBank @@ -6207,14 +6189,14 @@ _080627BE: pop {r0} bx r0 .pool - thumb_func_end sub_80626FC + thumb_func_end OpponentHandleIntroTrainerBallThrow thumb_func_start sub_806280C sub_806280C: @ 806280C push {r4,lr} adds r4, r0, 0 ldrh r0, [r4, 0x6] - bl sub_805DFE4 + bl FreeTrainerFrontPicPalette adds r0, r4, 0 bl FreeSpriteOamMatrix adds r0, r4, 0 @@ -6327,8 +6309,8 @@ _080628E0: .pool thumb_func_end sub_8062828 - thumb_func_start dp01t_30_7_0803D67C -dp01t_30_7_0803D67C: @ 8062918 + thumb_func_start OpponentHandleDrawPartyStatusSummary +OpponentHandleDrawPartyStatusSummary: @ 8062918 push {r4-r7,lr} ldr r1, =gBattleBufferA ldr r0, =gActiveBank @@ -6450,7 +6432,7 @@ _08062A12: pop {r0} bx r0 .pool - thumb_func_end dp01t_30_7_0803D67C + thumb_func_end OpponentHandleDrawPartyStatusSummary thumb_func_start bx_0803D790_t7 bx_0803D790_t7: @ 8062A2C @@ -6488,8 +6470,8 @@ _08062A64: .pool thumb_func_end bx_0803D790_t7 - thumb_func_start sub_8062A74 -sub_8062A74: @ 8062A74 + thumb_func_start OpponentHandleCmd49 +OpponentHandleCmd49: @ 8062A74 push {lr} ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] @@ -6520,18 +6502,18 @@ _08062AA6: pop {r0} bx r0 .pool - thumb_func_end sub_8062A74 + thumb_func_end OpponentHandleCmd49 - thumb_func_start sub_8062AC4 -sub_8062AC4: @ 8062AC4 + thumb_func_start OpponentHandleCmd50 +OpponentHandleCmd50: @ 8062AC4 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8062AC4 + thumb_func_end OpponentHandleCmd50 - thumb_func_start sub_8062AD0 -sub_8062AD0: @ 8062AD0 + thumb_func_start OpponentHandleSpriteInvisibility +OpponentHandleSpriteInvisibility: @ 8062AD0 push {r4,lr} ldr r4, =gActiveBank ldrb r0, [r4] @@ -6564,17 +6546,17 @@ sub_8062AD0: @ 8062AD0 orrs r0, r1 strb r0, [r2] ldrb r0, [r4] - bl sub_805E408 + bl SetBattleSpriteInvisibilityBitToSpriteInvisibility _08062B16: bl OpponentBufferExecCompleted pop {r4} pop {r0} bx r0 .pool - thumb_func_end sub_8062AD0 + thumb_func_end OpponentHandleSpriteInvisibility - thumb_func_start dp01t_34_7_move_anim_start_t3 -dp01t_34_7_move_anim_start_t3: @ 8062B30 + thumb_func_start OpponentHandleBattleAnimation +OpponentHandleBattleAnimation: @ 8062B30 push {r4-r6,lr} sub sp, 0x4 ldr r6, =gActiveBank @@ -6600,7 +6582,7 @@ dp01t_34_7_move_anim_start_t3: @ 8062B30 str r4, [sp] adds r0, r2, 0 adds r1, r2, 0 - bl move_anim_start_t3 + bl DoBattleAnimationFromTable lsls r0, 24 cmp r0, 0 beq _08062B7C @@ -6620,26 +6602,26 @@ _08062B88: pop {r0} bx r0 .pool - thumb_func_end dp01t_34_7_move_anim_start_t3 + thumb_func_end OpponentHandleBattleAnimation - thumb_func_start sub_8062B98 -sub_8062B98: @ 8062B98 + thumb_func_start OpponentHandleLinkStandbyMsg +OpponentHandleLinkStandbyMsg: @ 8062B98 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8062B98 + thumb_func_end OpponentHandleLinkStandbyMsg - thumb_func_start sub_8062BA4 -sub_8062BA4: @ 8062BA4 + thumb_func_start OpponentHandleResetActionMoveSelection +OpponentHandleResetActionMoveSelection: @ 8062BA4 push {lr} bl OpponentBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8062BA4 + thumb_func_end OpponentHandleResetActionMoveSelection - thumb_func_start sub_8062BB0 -sub_8062BB0: @ 8062BB0 + thumb_func_start OpponentHandleCmd55 +OpponentHandleCmd55: @ 8062BB0 push {lr} ldr r0, =gBattleTypeFlags ldr r0, [r0] @@ -6665,7 +6647,7 @@ _08062BDA: pop {r0} bx r0 .pool - thumb_func_end sub_8062BB0 + thumb_func_end OpponentHandleCmd55 thumb_func_start nullsub_91 nullsub_91: @ 8062BF4 diff --git a/asm/battle_controller_player.s b/asm/battle_controller_player.s deleted file mode 100644 index 10b675714..000000000 --- a/asm/battle_controller_player.s +++ /dev/null @@ -1,10419 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start nullsub_21 -nullsub_21: @ 8057458 - bx lr - thumb_func_end nullsub_21 - - thumb_func_start SetBankFuncToPlayerBufferRunCommand -SetBankFuncToPlayerBufferRunCommand: @ 805745C - ldr r1, =gBattleBankFunc - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, =PlayerBufferRunCommand - str r1, [r0] - ldr r0, =gDoingBattleAnim - movs r1, 0 - strb r1, [r0] - ldr r0, =gUnknown_020244CC - strb r1, [r0] - bx lr - .pool - thumb_func_end SetBankFuncToPlayerBufferRunCommand - - thumb_func_start PlayerBufferExecCompleted -PlayerBufferExecCompleted: @ 805748C - push {r4,lr} - sub sp, 0x4 - ldr r1, =gBattleBankFunc - ldr r4, =gActiveBank - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, =PlayerBufferRunCommand - str r1, [r0] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080574E0 - bl GetMultiplayerId - mov r1, sp - strb r0, [r1] - movs r0, 0x2 - movs r1, 0x4 - mov r2, sp - bl PrepareBufferDataTransferLink - ldr r1, =gBattleBufferA - ldrb r0, [r4] - lsls r0, 9 - adds r0, r1 - movs r1, 0x38 - strb r1, [r0] - b _080574F2 - .pool -_080574E0: - ldr r2, =gBattleExecBuffer - ldr r1, =gBitTable - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - ldr r0, [r2] - bics r0, r1 - str r0, [r2] -_080574F2: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end PlayerBufferExecCompleted - - thumb_func_start PlayerBufferRunCommand -PlayerBufferRunCommand: @ 8057504 - push {lr} - ldr r2, =gBattleExecBuffer - ldr r1, =gBitTable - ldr r0, =gActiveBank - ldrb r3, [r0] - lsls r0, r3, 2 - adds r0, r1 - ldr r1, [r2] - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _08057550 - ldr r0, =gBattleBufferA - lsls r1, r3, 9 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x38 - bhi _0805754C - ldr r0, =gPlayerBufferCommands - ldrb r1, [r1] - lsls r1, 2 - adds r1, r0 - ldr r0, [r1] - bl _call_via_r0 - b _08057550 - .pool -_0805754C: - bl PlayerBufferExecCompleted -_08057550: - pop {r0} - bx r0 - thumb_func_end PlayerBufferRunCommand - - thumb_func_start bx_0802E404 -bx_0802E404: @ 8057554 - push {lr} - ldr r2, =gSprites - ldr r1, =gBankSpriteIds - ldr r0, =gActiveBank - ldrb r0, [r0] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0x24 - ldrsh r0, [r0, r1] - cmp r0, 0 - bne _08057576 - bl PlayerBufferExecCompleted -_08057576: - pop {r0} - bx r0 - .pool - thumb_func_end bx_0802E404 - - thumb_func_start sub_8057588 -sub_8057588: @ 8057588 - push {r4-r7,lr} - ldr r3, =gBattleBufferA - ldr r4, =gActiveBank - ldrb r0, [r4] - lsls r2, r0, 9 - adds r1, r3, 0x2 - adds r1, r2, r1 - ldrb r5, [r1] - adds r3, 0x3 - adds r2, r3 - ldrb r1, [r2] - lsls r1, 8 - orrs r5, r1 - movs r1, 0x1 - movs r2, 0x7 - movs r3, 0x1 - bl dp11b_obj_instanciate - ldrb r0, [r4] - movs r1, 0 - movs r2, 0x7 - movs r3, 0x1 - bl dp11b_obj_instanciate - ldr r0, =gMain - ldrh r1, [r0, 0x30] - movs r0, 0xF0 - ands r0, r1 - cmp r0, 0 - beq _080575EC - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x13] - cmp r0, 0x2 - bne _080575EC - ldr r1, =gUnknown_020244CC - ldrb r0, [r1] - adds r0, 0x1 - b _080575F0 - .pool -_080575EC: - ldr r1, =gUnknown_020244CC - movs r0, 0 -_080575F0: - strb r0, [r1] - ldr r0, =gMain - ldrh r2, [r0, 0x2E] - movs r3, 0x1 - adds r0, r3, 0 - ands r0, r2 - cmp r0, 0 - beq _08057658 - movs r0, 0x5 - bl PlaySE - ldr r1, =gActionSelectionCursor - ldr r0, =gActiveBank - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08057640 - cmp r0, 0x1 - bgt _08057630 - cmp r0, 0 - beq _0805763A - b _080577C2 - .pool -_08057630: - cmp r0, 0x2 - beq _08057646 - cmp r0, 0x3 - beq _0805764C - b _080577C2 -_0805763A: - movs r0, 0x1 - movs r1, 0 - b _080577BC -_08057640: - movs r0, 0x1 - movs r1, 0x1 - b _080577BC -_08057646: - movs r0, 0x1 - movs r1, 0x2 - b _080577BC -_0805764C: - movs r0, 0x1 - movs r1, 0x3 - movs r2, 0 - bl EmitCmd33 - b _080577C2 -_08057658: - movs r0, 0x20 - ands r0, r2 - cmp r0, 0 - beq _08057698 - ldr r5, =gActionSelectionCursor - ldr r4, =gActiveBank - ldrb r0, [r4] - adds r0, r5 - ldrb r1, [r0] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _08057674 - b _080577E8 -_08057674: - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - bl ActionSelectionDestroyCursorAt - ldrb r1, [r4] - adds r1, r5 - ldrb r0, [r1] - movs r2, 0x1 - b _08057732 - .pool -_08057698: - movs r0, 0x10 - ands r0, r2 - cmp r0, 0 - beq _080576D8 - ldr r5, =gActionSelectionCursor - ldr r4, =gActiveBank - ldrb r0, [r4] - adds r0, r5 - ldrb r1, [r0] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _080576B4 - b _080577E8 -_080576B4: - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - bl ActionSelectionDestroyCursorAt - ldrb r1, [r4] - adds r1, r5 - ldrb r0, [r1] - movs r2, 0x1 - b _08057732 - .pool -_080576D8: - movs r7, 0x40 - adds r0, r7, 0 - ands r0, r2 - cmp r0, 0 - beq _08057700 - ldr r5, =gActionSelectionCursor - ldr r4, =gActiveBank - ldrb r0, [r4] - adds r0, r5 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080577E8 - b _0805771A - .pool -_08057700: - movs r0, 0x80 - ands r0, r2 - cmp r0, 0 - beq _0805774C - ldr r5, =gActionSelectionCursor - ldr r4, =gActiveBank - ldrb r0, [r4] - adds r0, r5 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080577E8 -_0805771A: - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - bl ActionSelectionDestroyCursorAt - ldrb r1, [r4] - adds r1, r5 - ldrb r0, [r1] - movs r2, 0x2 -_08057732: - eors r0, r2 - strb r0, [r1] - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - movs r1, 0 - bl ActionSelectionCreateCursorAt - b _080577E8 - .pool -_0805774C: - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - bne _0805775A - ldrb r0, [r1] - cmp r0, 0x3B - bls _080577DC -_0805775A: - ldr r4, =gBattleTypeFlags - ldr r0, [r4] - ands r0, r3 - cmp r0, 0 - beq _080577E8 - ldr r6, =gActiveBank - ldrb r0, [r6] - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _080577E8 - movs r0, 0 - bl GetBankByIdentity - ldr r1, =gAbsentBankFlags - ldrb r1, [r1] - ldr r2, =gBitTable - lsls r0, 24 - lsrs r0, 22 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _080577E8 - ldr r0, [r4] - ands r0, r7 - cmp r0, 0 - bne _080577E8 - ldr r0, =gBattleBufferA - ldrb r1, [r6] - lsls r1, 9 - adds r0, 0x1 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x1 - bne _080577B2 - cmp r5, 0xC - bhi _080577E8 - adds r0, r5, 0 - movs r1, 0x1 - bl AddBagItem -_080577B2: - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - movs r1, 0xC -_080577BC: - movs r2, 0 - bl EmitCmd33 -_080577C2: - bl PlayerBufferExecCompleted - b _080577E8 - .pool -_080577DC: - movs r0, 0x8 - ands r0, r2 - cmp r0, 0 - beq _080577E8 - bl SwapHpBarsWithHpText -_080577E8: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8057588 - - thumb_func_start sub_80577F0 -sub_80577F0: @ 80577F0 - push {r4,lr} - ldr r4, =gActiveBank - ldrb r0, [r4] - movs r1, 0x1 - bl dp11b_obj_free - ldrb r0, [r4] - movs r1, 0 - bl dp11b_obj_free - ldr r1, =gBattleBankFunc - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_8057824 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80577F0 - - thumb_func_start sub_8057824 -sub_8057824: @ 8057824 - push {r4,r5,lr} - sub sp, 0x4 - ldr r1, =gUnknown_0831C5F8 - mov r0, sp - movs r2, 0x4 - bl memcpy - ldr r0, =gUnknown_03005D74 - ldrb r0, [r0] - movs r1, 0x1 - movs r2, 0xF - movs r3, 0x1 - bl dp11b_obj_instanciate - movs r4, 0 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r0, 0 - beq _08057866 -_0805784A: - ldr r0, =gUnknown_03005D74 - ldrb r0, [r0] - cmp r4, r0 - beq _0805785C - lsls r0, r4, 24 - lsrs r0, 24 - movs r1, 0x1 - bl dp11b_obj_free -_0805785C: - adds r4, 0x1 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r4, r0 - blt _0805784A -_08057866: - ldr r2, =gMain - ldrh r1, [r2, 0x2C] - movs r0, 0xF0 - ands r0, r1 - cmp r0, 0 - beq _0805789C - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x13] - cmp r0, 0x2 - bne _0805789C - ldr r1, =gUnknown_020244CC - ldrb r0, [r1] - adds r0, 0x1 - b _080578A0 - .pool -_0805789C: - ldr r1, =gUnknown_020244CC - movs r0, 0 -_080578A0: - strb r0, [r1] - ldrh r2, [r2, 0x2E] - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - beq _08057910 - movs r0, 0x5 - bl PlaySE - ldr r2, =gSprites - ldr r1, =gBankSpriteIds - ldr r4, =gUnknown_03005D74 - ldrb r0, [r4] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, =sub_8039B2C - str r1, [r0] - ldr r1, =gMoveSelectionCursor - ldr r0, =gActiveBank - ldrb r0, [r0] - adds r0, r1 - ldrb r2, [r0] - ldrb r0, [r4] - lsls r0, 8 - orrs r2, r0 - movs r0, 0x1 - movs r1, 0xA - bl EmitCmd33 - ldrb r0, [r4] - movs r1, 0x1 - bl dp11b_obj_free - bl PlayerBufferExecCompleted - b _08057BC8 - .pool -_08057910: - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - bne _0805791E - ldrb r0, [r1] - cmp r0, 0x3B - bls _0805798C -_0805791E: - movs r0, 0x5 - bl PlaySE - ldr r2, =gSprites - ldr r1, =gBankSpriteIds - ldr r5, =gUnknown_03005D74 - ldrb r0, [r5] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, =sub_8039B2C - str r1, [r0] - ldr r1, =gBattleBankFunc - ldr r4, =gActiveBank - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_8057BFC - str r1, [r0] - ldrb r0, [r4] - movs r1, 0x1 - movs r2, 0x7 - movs r3, 0x1 - bl dp11b_obj_instanciate - ldrb r0, [r4] - movs r1, 0 - movs r2, 0x7 - movs r3, 0x1 - bl dp11b_obj_instanciate - ldrb r0, [r5] - movs r1, 0x1 - bl dp11b_obj_free - b _08057BC8 - .pool -_0805798C: - movs r0, 0x60 - ands r0, r2 - cmp r0, 0 - bne _08057996 - b _08057AB0 -_08057996: - movs r0, 0x5 - bl PlaySE - ldr r2, =gSprites - ldr r1, =gBankSpriteIds - ldr r3, =gUnknown_03005D74 - ldrb r0, [r3] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, =sub_8039B2C - str r1, [r0] - adds r5, r3, 0 -_080579B8: - ldrb r0, [r5] - bl GetBankIdentity - lsls r0, 24 - lsrs r1, r0, 24 - movs r4, 0 - mov r0, sp - b _080579E2 - .pool -_080579D8: - adds r4, 0x1 - cmp r4, 0x3 - bgt _080579E8 - mov r2, sp - adds r0, r2, r4 -_080579E2: - ldrb r0, [r0] - cmp r1, r0 - bne _080579D8 -_080579E8: - subs r4, 0x1 - cmp r4, 0 - bge _080579F0 - movs r4, 0x4 -_080579F0: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - bl GetBankByIdentity - strb r0, [r5] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - beq _080579E8 - movs r4, 0 - ldrb r0, [r5] - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08057A6E - cmp r0, 0x1 - bgt _08057A28 - cmp r0, 0 - beq _08057A32 - b _08057A70 - .pool -_08057A28: - cmp r0, 0x2 - beq _08057A32 - cmp r0, 0x3 - beq _08057A6E - b _08057A70 -_08057A32: - ldr r2, =gActiveBank - ldrb r0, [r2] - ldrb r1, [r5] - cmp r0, r1 - bne _08057A6E - ldr r1, =gBattlePartyID - ldrb r2, [r2] - lsls r0, r2, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gMoveSelectionCursor - adds r2, r1 - ldrb r1, [r2] - adds r1, 0xD - bl GetMonData - ldr r2, =gBattleMoves - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r1, [r1, 0x6] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08057A70 -_08057A6E: - adds r4, 0x1 -_08057A70: - ldr r0, =gAbsentBankFlags - ldrb r1, [r0] - ldr r2, =gBitTable - ldrb r0, [r5] - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - ldr r0, =gUnknown_03005D74 - cmp r1, 0 - beq _08057A88 - movs r4, 0 -_08057A88: - cmp r4, 0 - beq _080579B8 - b _08057BB0 - .pool -_08057AB0: - movs r0, 0x90 - ands r0, r2 - cmp r0, 0 - bne _08057ABA - b _08057BC8 -_08057ABA: - movs r0, 0x5 - bl PlaySE - ldr r2, =gSprites - ldr r1, =gBankSpriteIds - ldr r3, =gUnknown_03005D74 - ldrb r0, [r3] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, =sub_8039B2C - str r1, [r0] - adds r5, r3, 0 -_08057ADC: - ldrb r0, [r5] - bl GetBankIdentity - lsls r0, 24 - lsrs r1, r0, 24 - movs r4, 0 - mov r0, sp - b _08057B06 - .pool -_08057AFC: - adds r4, 0x1 - cmp r4, 0x3 - bgt _08057B0C - mov r2, sp - adds r0, r2, r4 -_08057B06: - ldrb r0, [r0] - cmp r1, r0 - bne _08057AFC -_08057B0C: - adds r4, 0x1 - cmp r4, 0x3 - ble _08057B14 - movs r4, 0 -_08057B14: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - bl GetBankByIdentity - strb r0, [r5] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - beq _08057B0C - movs r4, 0 - ldrb r0, [r5] - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08057B92 - cmp r0, 0x1 - bgt _08057B4C - cmp r0, 0 - beq _08057B56 - b _08057B94 - .pool -_08057B4C: - cmp r0, 0x2 - beq _08057B56 - cmp r0, 0x3 - beq _08057B92 - b _08057B94 -_08057B56: - ldr r2, =gActiveBank - ldrb r0, [r2] - ldrb r1, [r5] - cmp r0, r1 - bne _08057B92 - ldr r1, =gBattlePartyID - ldrb r2, [r2] - lsls r0, r2, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gMoveSelectionCursor - adds r2, r1 - ldrb r1, [r2] - adds r1, 0xD - bl GetMonData - ldr r2, =gBattleMoves - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r1, [r1, 0x6] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08057B94 -_08057B92: - adds r4, 0x1 -_08057B94: - ldr r0, =gAbsentBankFlags - ldrb r1, [r0] - ldr r2, =gBitTable - ldrb r0, [r5] - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - ldr r0, =gUnknown_03005D74 - cmp r1, 0 - beq _08057BAC - movs r4, 0 -_08057BAC: - cmp r4, 0 - beq _08057ADC -_08057BB0: - ldr r2, =gSprites - ldr r1, =gBankSpriteIds - ldrb r0, [r0] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, =sub_8039AD8 - str r1, [r0] -_08057BC8: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8057824 - - thumb_func_start sub_8057BFC -sub_8057BFC: @ 8057BFC - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r0, 0 - mov r8, r0 - ldr r3, =gActiveBank - ldrb r0, [r3] - lsls r0, 9 - ldr r1, =gBattleBufferA + 4 - adds r6, r0, r1 - ldr r2, =gMain - ldrh r1, [r2, 0x2C] - movs r0, 0xF0 - ands r0, r1 - adds r7, r3, 0 - cmp r0, 0 - beq _08057C44 - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x13] - cmp r0, 0x2 - bne _08057C44 - ldr r1, =gUnknown_020244CC - ldrb r0, [r1] - adds r0, 0x1 - b _08057C48 - .pool -_08057C44: - ldr r1, =gUnknown_020244CC - movs r0, 0 -_08057C48: - strb r0, [r1] - ldrh r2, [r2, 0x2E] - movs r5, 0x1 - adds r0, r5, 0 - ands r0, r2 - cmp r0, 0 - bne _08057C58 - b _08057E04 -_08057C58: - movs r0, 0x5 - bl PlaySE - ldr r1, =gMoveSelectionCursor - ldr r0, =gActiveBank - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - lsls r0, 1 - adds r1, r6, r0 - ldrh r0, [r1] - cmp r0, 0xAE - bne _08057C98 - ldrb r0, [r6, 0x12] - movs r4, 0 - cmp r0, 0x7 - beq _08057CA6 - ldrb r1, [r6, 0x13] - movs r0, 0x7 - eors r1, r0 - negs r0, r1 - orrs r0, r1 - asrs r4, r0, 31 - movs r0, 0x10 - ands r4, r0 - b _08057CA6 - .pool -_08057C98: - ldr r2, =gBattleMoves - ldrh r1, [r1] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r4, [r0, 0x6] -_08057CA6: - movs r0, 0x10 - ands r0, r4 - cmp r0, 0 - beq _08057CC4 - ldr r0, =gUnknown_03005D74 - ldr r1, =gActiveBank - ldrb r1, [r1] - strb r1, [r0] - b _08057CDE - .pool -_08057CC4: - ldr r0, =gActiveBank - ldrb r0, [r0] - bl GetBankIdentity - adds r1, r0, 0 - movs r2, 0x1 - movs r0, 0x1 - ands r0, r1 - eors r0, r2 - bl GetBankByIdentity - ldr r1, =gUnknown_03005D74 - strb r0, [r1] -_08057CDE: - ldr r5, =gBattleBufferA - ldr r0, =gActiveBank - ldrb r3, [r0] - lsls r2, r3, 9 - adds r1, r5, 0x1 - adds r1, r2, r1 - ldrb r1, [r1] - adds r7, r0, 0 - cmp r1, 0 - bne _08057D18 - movs r0, 0x2 - ands r0, r4 - cmp r0, 0 - beq _08057D5A - adds r0, r5, 0x2 - adds r0, r2, r0 - ldrb r0, [r0] - cmp r0, 0 - bne _08057D5A - movs r0, 0x1 - add r8, r0 - b _08057D5A - .pool -_08057D18: - movs r0, 0x7D - ands r0, r4 - cmp r0, 0 - bne _08057D24 - movs r0, 0x1 - add r8, r0 -_08057D24: - ldr r0, =gMoveSelectionCursor - adds r0, r3, r0 - adds r1, r6, 0 - adds r1, 0x8 - ldrb r0, [r0] - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _08057D62 - movs r0, 0x12 - ands r0, r4 - cmp r0, 0 - bne _08057D5A - movs r0, 0 - bl CountAliveMonsInBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08057D5A - ldrb r0, [r7] - bl sub_8069F34 - ldr r1, =gUnknown_03005D74 - strb r0, [r1] - movs r0, 0 - mov r8, r0 -_08057D5A: - ldr r7, =gActiveBank - mov r0, r8 - cmp r0, 0 - bne _08057D80 -_08057D62: - ldr r1, =gMoveSelectionCursor - ldrb r0, [r7] - adds r0, r1 - ldrb r2, [r0] - ldr r0, =gUnknown_03005D74 - ldrb r0, [r0] - lsls r0, 8 - orrs r2, r0 - b _08057E1C - .pool -_08057D80: - ldr r1, =gBattleBankFunc - ldrb r0, [r7] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_8057824 - str r1, [r0] - movs r0, 0x12 - ands r4, r0 - cmp r4, 0 - beq _08057DA8 - ldr r1, =gUnknown_03005D74 - ldrb r0, [r7] - b _08057DD8 - .pool -_08057DA8: - movs r0, 0x1 - bl GetBankByIdentity - ldr r1, =gAbsentBankFlags - ldrb r1, [r1] - ldr r2, =gBitTable - lsls r0, 24 - lsrs r0, 22 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _08057DD0 - movs r0, 0x3 - b _08057DD2 - .pool -_08057DD0: - movs r0, 0x1 -_08057DD2: - bl GetBankByIdentity - ldr r1, =gUnknown_03005D74 -_08057DD8: - strb r0, [r1] - ldr r2, =gSprites - ldr r1, =gBankSpriteIds - ldr r0, =gUnknown_03005D74 - ldrb r0, [r0] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, =sub_8039AD8 - b _08057F9C - .pool -_08057E04: - movs r6, 0x2 - adds r0, r6, 0 - ands r0, r2 - cmp r0, 0 - bne _08057E14 - ldrb r0, [r1] - cmp r0, 0x3B - bls _08057E30 -_08057E14: - movs r0, 0x5 - bl PlaySE - ldr r2, =0x0000ffff -_08057E1C: - movs r0, 0x1 - movs r1, 0xA - bl EmitCmd33 - bl PlayerBufferExecCompleted - b _08057F9E - .pool -_08057E30: - movs r0, 0x20 - ands r0, r2 - cmp r0, 0 - beq _08057E60 - ldr r4, =gMoveSelectionCursor - ldrb r0, [r7] - adds r2, r0, r4 - ldrb r1, [r2] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _08057E4A - b _08057F9E -_08057E4A: - ldrb r0, [r2] - bl battle_menu_cursor_related - ldrb r1, [r7] - adds r1, r4 - ldrb r0, [r1] - movs r2, 0x1 - eors r0, r2 - b _08057F08 - .pool -_08057E60: - movs r0, 0x10 - ands r0, r2 - cmp r0, 0 - beq _08057EA4 - ldr r4, =gMoveSelectionCursor - ldrb r0, [r7] - adds r3, r0, r4 - ldrb r2, [r3] - movs r6, 0x1 - adds r0, r5, 0 - ands r0, r2 - cmp r0, 0 - beq _08057E7C - b _08057F9E -_08057E7C: - ldr r1, =gUnknown_03005D78 - adds r0, r6, 0 - eors r0, r2 - ldrb r1, [r1] - cmp r0, r1 - bcc _08057E8A - b _08057F9E -_08057E8A: - ldrb r0, [r3] - bl battle_menu_cursor_related - ldrb r1, [r7] - adds r1, r4 - ldrb r0, [r1] - eors r0, r6 - b _08057F08 - .pool -_08057EA4: - movs r0, 0x40 - ands r0, r2 - cmp r0, 0 - beq _08057ED4 - ldr r4, =gMoveSelectionCursor - ldrb r0, [r7] - adds r2, r0, r4 - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08057F9E - ldrb r0, [r2] - bl battle_menu_cursor_related - ldrb r1, [r7] - adds r1, r4 - ldrb r0, [r1] - movs r2, 0x2 - eors r0, r2 - b _08057F08 - .pool -_08057ED4: - movs r0, 0x80 - ands r0, r2 - cmp r0, 0 - beq _08057F30 - ldr r4, =gMoveSelectionCursor - ldrb r0, [r7] - adds r3, r0, r4 - ldrb r2, [r3] - movs r5, 0x2 - adds r0, r6, 0 - ands r0, r2 - cmp r0, 0 - bne _08057F9E - ldr r1, =gUnknown_03005D78 - adds r0, r5, 0 - eors r0, r2 - ldrb r1, [r1] - cmp r0, r1 - bcs _08057F9E - ldrb r0, [r3] - bl battle_menu_cursor_related - ldrb r1, [r7] - adds r1, r4 - ldrb r0, [r1] - eors r0, r5 -_08057F08: - strb r0, [r1] - movs r0, 0x5 - bl PlaySE - ldrb r0, [r7] - adds r0, r4 - ldrb r0, [r0] - movs r1, 0 - bl battle_menu_cursor_related_2 - bl sub_8059B3C - bl sub_8059BB0 - b _08057F9E - .pool -_08057F30: - movs r0, 0x4 - ands r0, r2 - cmp r0, 0 - beq _08057F9E - ldr r0, =gUnknown_03005D78 - ldrb r0, [r0] - cmp r0, 0x1 - bls _08057F9E - ldr r0, =gBattleTypeFlags - ldr r5, [r0] - ands r5, r6 - cmp r5, 0 - bne _08057F9E - ldr r4, =gMoveSelectionCursor - ldrb r0, [r7] - adds r0, r4 - ldrb r0, [r0] - movs r1, 0x1D - bl battle_menu_cursor_related_2 - ldrb r0, [r7] - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _08057F78 - ldr r0, =gUnknown_03005D74 - strb r5, [r0] - b _08057F80 - .pool -_08057F78: - ldr r1, =gUnknown_03005D74 - adds r0, 0x1 - strb r0, [r1] - adds r0, r1, 0 -_08057F80: - ldrb r0, [r0] - movs r1, 0x1B - bl battle_menu_cursor_related_2 - ldr r0, =gText_BattleSwitchWhich - movs r1, 0xB - bl sub_814F9EC - ldr r1, =gBattleBankFunc - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_8058138 -_08057F9C: - str r1, [r0] -_08057F9E: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8057BFC - - thumb_func_start sub_8057FBC -sub_8057FBC: @ 8057FBC - push {r4-r7,lr} - movs r7, 0 - ldr r4, =gMain - ldrh r1, [r4, 0x2E] - movs r6, 0x1 - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08057FD6 - movs r0, 0x5 - bl PlaySE - movs r7, 0x1 -_08057FD6: - ldrh r1, [r4, 0x2E] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08057FF8 - movs r0, 0x5 - bl PlaySE - ldr r1, =gBattle_BG0_X - movs r0, 0 - strh r0, [r1] - ldr r1, =gBattle_BG0_Y - movs r2, 0xA0 - lsls r2, 1 - adds r0, r2, 0 - strh r0, [r1] - movs r7, 0xFF -_08057FF8: - ldrh r1, [r4, 0x2E] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08058038 - ldr r5, =gMoveSelectionCursor - ldr r4, =gActiveBank - ldrb r0, [r4] - adds r2, r0, r5 - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08058038 - ldrb r0, [r2] - bl battle_menu_cursor_related - ldrb r1, [r4] - adds r1, r5 - ldrb r0, [r1] - movs r2, 0x1 - eors r0, r2 - strb r0, [r1] - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - movs r1, 0 - bl battle_menu_cursor_related_2 -_08058038: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08058086 - ldr r5, =gMoveSelectionCursor - ldr r4, =gActiveBank - ldrb r0, [r4] - adds r3, r0, r5 - ldrb r2, [r3] - movs r6, 0x1 - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - bne _08058086 - ldr r1, =gUnknown_03005D78 - adds r0, r6, 0 - eors r0, r2 - ldrb r1, [r1] - cmp r0, r1 - bcs _08058086 - ldrb r0, [r3] - bl battle_menu_cursor_related - ldrb r1, [r4] - adds r1, r5 - ldrb r0, [r1] - eors r0, r6 - strb r0, [r1] - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - movs r1, 0 - bl battle_menu_cursor_related_2 -_08058086: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080580C8 - ldr r5, =gMoveSelectionCursor - ldr r4, =gActiveBank - ldrb r0, [r4] - adds r2, r0, r5 - ldrb r1, [r2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080580C8 - ldrb r0, [r2] - bl battle_menu_cursor_related - ldrb r1, [r4] - adds r1, r5 - ldrb r0, [r1] - movs r2, 0x2 - eors r0, r2 - strb r0, [r1] - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - movs r1, 0 - bl battle_menu_cursor_related_2 -_080580C8: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08058116 - ldr r5, =gMoveSelectionCursor - ldr r4, =gActiveBank - ldrb r0, [r4] - adds r3, r0, r5 - ldrb r2, [r3] - movs r6, 0x2 - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - bne _08058116 - ldr r1, =gUnknown_03005D78 - adds r0, r6, 0 - eors r0, r2 - ldrb r1, [r1] - cmp r0, r1 - bcs _08058116 - ldrb r0, [r3] - bl battle_menu_cursor_related - ldrb r1, [r4] - adds r1, r5 - ldrb r0, [r1] - eors r0, r6 - strb r0, [r1] - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - movs r1, 0 - bl battle_menu_cursor_related_2 -_08058116: - adds r0, r7, 0 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8057FBC - - thumb_func_start sub_8058138 -sub_8058138: @ 8058138 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x5 - ands r0, r1 - cmp r0, 0 - bne _08058152 - b _08058500 -_08058152: - movs r0, 0x5 - bl PlaySE - ldr r0, =gMoveSelectionCursor - mov r10, r0 - ldr r1, =gActiveBank - mov r8, r1 - ldrb r1, [r1] - adds r2, r1, r0 - ldr r5, =gUnknown_03005D74 - ldrb r0, [r2] - ldrb r3, [r5] - cmp r0, r3 - bne _08058170 - b _080584A8 -_08058170: - lsls r1, 9 - ldr r0, =gBattleBufferA + 4 - adds r1, r0 - mov r9, r1 - ldrb r1, [r2] - lsls r1, 1 - add r1, r9 - ldrh r6, [r1] - ldrb r0, [r5] - lsls r0, 1 - add r0, r9 - ldrh r0, [r0] - strh r0, [r1] - ldrb r0, [r5] - lsls r0, 1 - add r0, r9 - strh r6, [r0] - mov r1, r8 - ldrb r0, [r1] - add r0, r10 - ldrb r1, [r0] - mov r7, r9 - adds r7, 0x8 - adds r1, r7, r1 - ldrb r6, [r1] - ldrb r0, [r5] - adds r0, r7, r0 - ldrb r0, [r0] - strb r0, [r1] - ldrb r0, [r5] - adds r0, r7, r0 - strb r6, [r0] - mov r2, r8 - ldrb r0, [r2] - add r0, r10 - ldrb r1, [r0] - mov r2, r9 - adds r2, 0xC - adds r1, r2, r1 - ldrb r6, [r1] - ldrb r0, [r5] - adds r0, r2, r0 - ldrb r0, [r0] - strb r0, [r1] - ldrb r0, [r5] - adds r2, r0 - strb r6, [r2] - mov r3, r8 - ldrb r1, [r3] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r2, =gDisableStructs - adds r6, r0, r2 - ldrb r4, [r6, 0x18] - lsls r3, r4, 24 - lsrs r2, r3, 28 - ldr r0, =gBitTable - mov r12, r0 - add r1, r10 - ldrb r0, [r1] - lsls r0, 2 - add r0, r12 - ldr r0, [r0] - ands r2, r0 - cmp r2, 0 - beq _0805822A - lsrs r1, r3, 28 - bics r1, r0 - lsls r1, 4 - movs r2, 0xF - adds r0, r2, 0 - ands r0, r4 - orrs r0, r1 - strb r0, [r6, 0x18] - mov r1, r8 - ldrb r0, [r1] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - ldr r3, =gDisableStructs - adds r1, r3 - ldrb r4, [r1, 0x18] - lsrs r3, r4, 4 - ldrb r0, [r5] - lsls r0, 2 - add r0, r12 - ldr r0, [r0] - orrs r0, r3 - lsls r0, 4 - ands r2, r4 - orrs r2, r0 - strb r2, [r1, 0x18] -_0805822A: - bl sub_8059AAC - movs r6, 0 - mov r12, r7 - mov r5, sp - adds r5, 0x18 - str r5, [sp, 0x1C] - ldr r2, =gBattleMons - mov r0, r8 - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - adds r4, r0, 0 - adds r4, 0x3B - mov r7, r8 - mov r10, r2 - movs r5, 0x3 -_0805824E: - mov r1, sp - adds r3, r1, r6 - ldrb r1, [r4] - lsls r2, r6, 1 - adds r0, r5, 0 - lsls r0, r2 - ands r1, r0 - asrs r1, r2 - strb r1, [r3] - adds r6, 0x1 - cmp r6, 0x3 - ble _0805824E - ldr r1, =gMoveSelectionCursor - ldrb r0, [r7] - adds r0, r1 - ldrb r0, [r0] - add r0, sp - ldrb r0, [r0] - ldr r2, [sp, 0x1C] - strb r0, [r2] - ldrb r0, [r7] - adds r0, r1 - ldrb r0, [r0] - mov r3, sp - adds r2, r3, r0 - ldr r1, =gUnknown_03005D74 - ldrb r0, [r1] - add r0, sp - ldrb r0, [r0] - movs r3, 0 - strb r0, [r2] - ldrb r0, [r1] - mov r5, sp - adds r1, r5, r0 - ldr r2, [sp, 0x1C] - ldrb r0, [r2] - strb r0, [r1] - strb r3, [r2] - movs r6, 0 - ldr r2, [sp, 0x1C] -_0805829E: - mov r3, sp - adds r0, r3, r6 - ldrb r1, [r0] - lsls r0, r6, 1 - lsls r1, r0 - ldrb r0, [r2] - orrs r0, r1 - strb r0, [r2] - adds r6, 0x1 - cmp r6, 0x3 - ble _0805829E - ldrb r1, [r7] - movs r0, 0x58 - muls r0, r1 - add r0, r10 - adds r0, 0x3B - ldr r5, [sp, 0x1C] - ldrb r1, [r5] - strb r1, [r0] - movs r6, 0 - adds r4, r7, 0 - movs r3, 0x58 - movs r0, 0x24 - add r0, r10 - mov r8, r0 - mov r2, r9 - mov r7, r10 - adds r7, 0xC - mov r5, r12 -_080582D8: - lsls r1, r6, 1 - ldrb r0, [r4] - muls r0, r3 - adds r1, r0 - adds r1, r7 - ldrh r0, [r2] - strh r0, [r1] - ldrb r0, [r4] - adds r1, r0, 0 - muls r1, r3 - adds r1, r6, r1 - add r1, r8 - adds r0, r5, r6 - ldrb r0, [r0] - strb r0, [r1] - adds r2, 0x2 - adds r6, 0x1 - cmp r6, 0x3 - ble _080582D8 - ldr r2, =gActiveBank - ldrb r1, [r2] - movs r0, 0x58 - muls r0, r1 - mov r1, r10 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 14 - ands r0, r1 - cmp r0, 0 - beq _0805831A - b _080584A8 -_0805831A: - movs r6, 0 - mov r1, sp - adds r1, 0x4 - str r1, [sp, 0x20] - add r3, sp, 0xC - mov r10, r3 - ldr r5, =gBattlePartyID - mov r9, r5 - mov r8, r2 - movs r7, 0x64 - ldr r5, =gPlayerParty - adds r4, r1, 0 -_08058332: - mov r1, r8 - ldrb r0, [r1] - lsls r0, 1 - add r0, r9 - ldrh r0, [r0] - muls r0, r7 - adds r0, r5 - adds r1, r6, 0 - adds r1, 0xD - bl GetMonData - strh r0, [r4] - mov r2, r8 - ldrb r0, [r2] - lsls r0, 1 - add r0, r9 - ldrh r0, [r0] - muls r0, r7 - adds r0, r5 - adds r1, r6, 0 - adds r1, 0x11 - bl GetMonData - mov r3, r10 - adds r1, r3, r6 - strb r0, [r1] - adds r4, 0x2 - adds r6, 0x1 - cmp r6, 0x3 - ble _08058332 - ldr r1, =gBattlePartyID - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x15 - bl GetMonData - ldr r5, [sp, 0x1C] - strb r0, [r5] - movs r6, 0 - movs r5, 0x3 - ldr r4, [sp, 0x1C] -_08058392: - mov r0, sp - adds r3, r0, r6 - lsls r2, r6, 1 - adds r1, r5, 0 - lsls r1, r2 - ldrb r0, [r4] - ands r0, r1 - asrs r0, r2 - strb r0, [r3] - adds r6, 0x1 - cmp r6, 0x3 - ble _08058392 - ldr r4, =gMoveSelectionCursor - ldr r3, =gActiveBank - ldrb r0, [r3] - adds r0, r4 - ldrb r1, [r0] - lsls r1, 1 - ldr r2, [sp, 0x20] - adds r1, r2, r1 - ldrh r6, [r1] - ldr r2, =gUnknown_03005D74 - ldrb r0, [r2] - lsls r0, 1 - ldr r5, [sp, 0x20] - adds r0, r5, r0 - ldrh r0, [r0] - movs r5, 0 - strh r0, [r1] - ldrb r0, [r2] - lsls r0, 1 - ldr r1, [sp, 0x20] - adds r0, r1, r0 - strh r6, [r0] - ldrb r0, [r3] - adds r0, r4 - ldrb r1, [r0] - add r1, r10 - ldrb r6, [r1] - ldrb r0, [r2] - add r0, r10 - ldrb r0, [r0] - strb r0, [r1] - ldrb r0, [r2] - add r0, r10 - strb r6, [r0] - ldrb r0, [r3] - adds r0, r4 - ldrb r0, [r0] - add r0, sp - ldrb r0, [r0] - ldr r1, [sp, 0x1C] - strb r0, [r1] - ldrb r0, [r3] - adds r0, r4 - ldrb r0, [r0] - mov r3, sp - adds r1, r3, r0 - ldrb r0, [r2] - add r0, sp - ldrb r0, [r0] - strb r0, [r1] - ldrb r0, [r2] - adds r1, r3, r0 - ldr r2, [sp, 0x1C] - ldrb r0, [r2] - strb r0, [r1] - strb r5, [r2] - movs r6, 0 - ldr r2, [sp, 0x1C] -_0805841E: - mov r3, sp - adds r0, r3, r6 - ldrb r1, [r0] - lsls r0, r6, 1 - lsls r1, r0 - ldrb r0, [r2] - orrs r0, r1 - strb r0, [r2] - adds r6, 0x1 - cmp r6, 0x3 - ble _0805841E - movs r6, 0 - ldr r5, =gBattlePartyID - mov r10, r5 - ldr r0, =gActiveBank - mov r9, r0 - movs r1, 0x64 - mov r8, r1 - ldr r7, =gPlayerParty - ldr r5, [sp, 0x20] - adds r5, 0x8 - ldr r4, [sp, 0x20] -_0805844A: - mov r2, r9 - ldrb r0, [r2] - lsls r0, 1 - add r0, r10 - ldrh r0, [r0] - mov r3, r8 - muls r3, r0 - adds r0, r3, 0 - adds r0, r7 - adds r1, r6, 0 - adds r1, 0xD - adds r2, r4, 0 - bl SetMonData - mov r1, r9 - ldrb r0, [r1] - lsls r0, 1 - add r0, r10 - ldrh r0, [r0] - mov r2, r8 - muls r2, r0 - adds r0, r2, 0 - adds r0, r7 - adds r1, r6, 0 - adds r1, 0x11 - adds r2, r5, 0 - bl SetMonData - adds r5, 0x1 - adds r4, 0x2 - adds r6, 0x1 - cmp r6, 0x3 - ble _0805844A - ldr r1, =gBattlePartyID - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x15 - ldr r2, [sp, 0x1C] - bl SetMonData -_080584A8: - ldr r1, =gBattleBankFunc - ldr r2, =gActiveBank - ldrb r0, [r2] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_8057BFC - str r1, [r0] - ldr r3, =gMoveSelectionCursor - ldrb r0, [r2] - adds r0, r3 - ldr r1, =gUnknown_03005D74 - ldrb r1, [r1] - strb r1, [r0] - ldrb r0, [r2] - adds r0, r3 - ldrb r0, [r0] - movs r1, 0 - bl battle_menu_cursor_related_2 - b _08058532 - .pool -_08058500: - movs r0, 0x6 - ands r0, r1 - cmp r0, 0 - beq _08058554 - movs r0, 0x5 - bl PlaySE - ldr r0, =gUnknown_03005D74 - ldrb r0, [r0] - bl battle_menu_cursor_related - ldr r1, =gMoveSelectionCursor - ldr r4, =gActiveBank - ldrb r0, [r4] - adds r0, r1 - ldrb r0, [r0] - movs r1, 0 - bl battle_menu_cursor_related_2 - ldr r1, =gBattleBankFunc - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_8057BFC - str r1, [r0] -_08058532: - bl sub_8059B18 - bl sub_8059B3C - bl sub_8059BB0 - b _080586E8 - .pool -_08058554: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080585A4 - ldr r3, =gUnknown_03005D74 - ldrb r2, [r3] - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - bne _0805856A - b _080586E8 -_0805856A: - ldr r0, =gMoveSelectionCursor - ldr r1, =gActiveBank - ldrb r1, [r1] - adds r1, r0 - ldrb r5, [r1] - cmp r2, r5 - bne _08058590 -_08058578: - ldrb r0, [r1] - movs r1, 0x1D - bl battle_menu_cursor_related_2 - b _08058596 - .pool -_08058590: - ldrb r0, [r3] - bl battle_menu_cursor_related -_08058596: - ldr r4, =gUnknown_03005D74 - ldrb r0, [r4] - movs r1, 0x1 - b _0805862C - .pool -_080585A4: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080585E8 - ldr r3, =gUnknown_03005D74 - ldrb r2, [r3] - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - beq _080585BA - b _080586E8 -_080585BA: - ldr r1, =gUnknown_03005D78 - movs r0, 0x1 - eors r0, r2 - ldrb r1, [r1] - cmp r0, r1 - bcc _080585C8 - b _080586E8 -_080585C8: - ldr r0, =gMoveSelectionCursor - ldr r1, =gActiveBank - ldrb r1, [r1] - adds r1, r0 - ldrb r0, [r1] - cmp r2, r0 - beq _08058578 - b _08058590 - .pool -_080585E8: - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0805865C - ldr r3, =gUnknown_03005D74 - ldrb r2, [r3] - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - beq _080586E8 - ldr r0, =gMoveSelectionCursor - ldr r1, =gActiveBank - ldrb r1, [r1] - adds r1, r0 - ldrb r5, [r1] - cmp r2, r5 - bne _08058620 - ldrb r0, [r1] - movs r1, 0x1D - bl battle_menu_cursor_related_2 - b _08058626 - .pool -_08058620: - ldrb r0, [r3] - bl battle_menu_cursor_related -_08058626: - ldr r4, =gUnknown_03005D74 - ldrb r0, [r4] - movs r1, 0x2 -_0805862C: - eors r0, r1 - strb r0, [r4] - movs r0, 0x5 - bl PlaySE - ldr r1, =gMoveSelectionCursor - ldr r0, =gActiveBank - ldrb r0, [r0] - adds r0, r1 - ldrb r1, [r4] - ldrb r0, [r0] - cmp r1, r0 - beq _080586CA - ldrb r0, [r4] - movs r1, 0x1B - bl battle_menu_cursor_related_2 - b _080586E8 - .pool -_0805865C: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080586E8 - ldr r3, =gUnknown_03005D74 - ldrb r2, [r3] - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - bne _080586E8 - ldr r1, =gUnknown_03005D78 - movs r0, 0x2 - eors r0, r2 - ldrb r1, [r1] - cmp r0, r1 - bcs _080586E8 - ldr r0, =gMoveSelectionCursor - ldr r1, =gActiveBank - ldrb r1, [r1] - adds r1, r0 - ldrb r0, [r1] - cmp r2, r0 - bne _080586A4 - ldrb r0, [r1] - movs r1, 0x1D - bl battle_menu_cursor_related_2 - b _080586AA - .pool -_080586A4: - ldrb r0, [r3] - bl battle_menu_cursor_related -_080586AA: - ldr r4, =gUnknown_03005D74 - ldrb r0, [r4] - movs r1, 0x2 - eors r0, r1 - strb r0, [r4] - movs r0, 0x5 - bl PlaySE - ldr r1, =gMoveSelectionCursor - ldr r0, =gActiveBank - ldrb r0, [r0] - adds r0, r1 - ldrb r1, [r4] - ldrb r0, [r0] - cmp r1, r0 - bne _080586E0 -_080586CA: - adds r0, r1, 0 - movs r1, 0 - bl battle_menu_cursor_related_2 - b _080586E8 - .pool -_080586E0: - ldrb r0, [r4] - movs r1, 0x1B - bl battle_menu_cursor_related_2 -_080586E8: - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8058138 - - thumb_func_start sub_80586F8 -sub_80586F8: @ 80586F8 - push {lr} - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - bne _0805875C - ldr r0, =gReceivedRemoteLinkPlayers - ldrb r0, [r0] - cmp r0, 0 - bne _08058798 - movs r0, 0x5A - bl m4aSongNumStop - ldr r3, =gMain - ldr r0, =0x00000439 - adds r2, r3, r0 - ldrb r1, [r2] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - ldr r0, =gPreBattleCallback1 - ldr r0, [r0] - str r0, [r3] - ldr r0, =sub_8038D64 - bl SetMainCallback2 - ldr r0, =gBattleOutcome - ldrb r0, [r0] - cmp r0, 0x1 - bne _08058738 - bl sub_817E3F4 -_08058738: - bl FreeAllWindowBuffers - b _08058798 - .pool -_0805875C: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - beq _08058798 - movs r0, 0x5A - bl m4aSongNumStop - ldr r3, =gMain - ldr r0, =0x00000439 - adds r2, r3, r0 - ldrb r1, [r2] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - ldr r0, =gPreBattleCallback1 - ldr r0, [r0] - str r0, [r3] - ldr r0, =sub_8038D64 - bl SetMainCallback2 - ldr r0, =gBattleOutcome - ldrb r0, [r0] - cmp r0, 0x1 - bne _08058794 - bl sub_817E3F4 -_08058794: - bl FreeAllWindowBuffers -_08058798: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80586F8 - - thumb_func_start sub_80587B0 -sub_80587B0: @ 80587B0 - push {lr} - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08058832 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08058810 - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - beq _08058832 - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - bne _080587F0 - bl sub_800AC34 - b _080587F4 - .pool -_080587F0: - bl sub_800ADF8 -_080587F4: - ldr r1, =gBattleBankFunc - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_80586F8 - str r1, [r0] - b _08058832 - .pool -_08058810: - movs r0, 0x5A - bl m4aSongNumStop - ldr r2, =gMain - ldr r0, =0x00000439 - adds r3, r2, r0 - ldrb r1, [r3] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r3] - ldr r0, =gPreBattleCallback1 - ldr r0, [r0] - str r0, [r2] - ldr r0, [r2, 0x8] - bl SetMainCallback2 -_08058832: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80587B0 - - thumb_func_start sub_8058844 -sub_8058844: @ 8058844 - push {lr} - ldr r2, =gSprites - ldr r1, =gBankSpriteIds - ldr r0, =gActiveBank - ldrb r0, [r0] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, [r0] - ldr r0, =SpriteCallbackDummy - cmp r1, r0 - bne _08058868 - bl PlayerBufferExecCompleted -_08058868: - pop {r0} - bx r0 - .pool - thumb_func_end sub_8058844 - - thumb_func_start sub_805887C -sub_805887C: @ 805887C - push {lr} - ldr r2, =gSprites - ldr r1, =gBankSpriteIds - ldr r0, =gActiveBank - ldrb r0, [r0] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, [r0] - ldr r0, =SpriteCallbackDummy - cmp r1, r0 - bne _080588A0 - bl PlayerBufferExecCompleted -_080588A0: - pop {r0} - bx r0 - .pool - thumb_func_end sub_805887C - - thumb_func_start bx_802F7A0 -bx_802F7A0: @ 80588B4 - push {r4-r6,lr} - ldr r6, =gSprites - ldr r5, =gBankSpriteIds - ldr r4, =gActiveBank - ldrb r0, [r4] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r6, 0 - adds r1, 0x1C - adds r0, r1 - ldr r1, [r0] - ldr r0, =SpriteCallbackDummy - cmp r1, r0 - bne _08058908 - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x8] - bl nullsub_25 - ldrb r0, [r4] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - bl FreeSpriteOamMatrix - ldrb r0, [r4] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - bl DestroySprite - bl PlayerBufferExecCompleted -_08058908: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end bx_802F7A0 - - thumb_func_start sub_8058924 -sub_8058924: @ 8058924 - push {r4,lr} - ldr r4, =gBattleSpritesDataPtr - ldr r1, [r4] - ldr r3, =gActiveBank - ldrb r0, [r3] - ldr r2, [r1, 0x4] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r0, [r1, 0x9] - subs r0, 0x1 - strb r0, [r1, 0x9] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - bne _0805895C - ldr r0, [r4] - ldrb r1, [r3] - ldr r2, [r0, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0 - strb r1, [r0, 0x9] - bl PlayerBufferExecCompleted -_0805895C: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8058924 - - thumb_func_start sub_805896C -sub_805896C: @ 805896C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r7, 0 - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _08058998 - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _080589D0 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080589D0 -_08058998: - ldr r2, =gSprites - ldr r1, =gHealthBoxesIds - ldr r3, =gActiveBank - ldrb r0, [r3] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, [r0] - ldr r0, =SpriteCallbackDummy - mov r10, r3 - cmp r1, r0 - bne _08058A0A - b _08058A0E - .pool -_080589D0: - ldr r3, =gSprites - ldr r6, =gHealthBoxesIds - ldr r2, =gActiveBank - ldrb r4, [r2] - adds r0, r4, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r5, r3, 0 - adds r5, 0x1C - adds r0, r5 - ldr r3, [r0] - ldr r0, =SpriteCallbackDummy - mov r10, r2 - cmp r3, r0 - bne _08058A0A - movs r0, 0x2 - eors r4, r0 - adds r0, r4, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r0, [r0] - cmp r0, r3 - bne _08058A0A - movs r7, 0x1 -_08058A0A: - cmp r7, 0 - beq _08058B08 -_08058A0E: - ldr r0, =gBattleSpritesDataPtr - mov r9, r0 - ldr r0, [r0] - mov r6, r10 - ldrb r2, [r6] - ldr r3, [r0, 0x4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r4, r0, r3 - ldrb r1, [r4, 0x1] - movs r5, 0x1 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _08058B08 - movs r1, 0x2 - mov r8, r1 - mov r1, r8 - eors r1, r2 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrb r1, [r0, 0x1] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _08058B08 - ldrb r1, [r4] - movs r3, 0x7F - adds r0, r3, 0 - ands r0, r1 - strb r0, [r4] - mov r2, r9 - ldr r0, [r2] - ldrb r2, [r6] - ldr r0, [r0, 0x4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 2 - adds r1, r0 - ldrb r2, [r1, 0x1] - movs r4, 0x2 - negs r4, r4 - adds r0, r4, 0 - ands r0, r2 - strb r0, [r1, 0x1] - mov r0, r9 - ldr r2, [r0] - ldrb r0, [r6] - mov r1, r8 - eors r1, r0 - ldr r2, [r2, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - ands r3, r1 - strb r3, [r0] - mov r1, r9 - ldr r2, [r1] - ldrb r0, [r6] - mov r1, r8 - eors r1, r0 - ldr r2, [r2, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x1] - ands r4, r1 - strb r4, [r0, 0x1] - ldr r4, =0x000027f9 - adds r0, r4, 0 - bl FreeSpriteTilesByTag - adds r0, r4, 0 - bl FreeSpritePaletteByTag - ldr r7, =gBattlePartyID - ldrb r1, [r6] - lsls r0, r1, 1 - adds r0, r7 - ldrh r0, [r0] - movs r5, 0x64 - muls r0, r5 - ldr r4, =gPlayerParty - adds r0, r4 - bl sub_805E990 - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _08058AE4 - ldrb r0, [r6] - mov r1, r8 - eors r1, r0 - lsls r0, r1, 1 - adds r0, r7 - ldrh r0, [r0] - muls r0, r5 - adds r0, r4 - bl sub_805E990 -_08058AE4: - mov r2, r9 - ldr r0, [r2] - mov r2, r10 - ldrb r1, [r2] - ldr r2, [r0, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0x3 - strb r1, [r0, 0x9] - ldr r1, =gBattleBankFunc - mov r2, r10 - ldrb r0, [r2] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_8058924 - str r1, [r0] -_08058B08: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805896C - - thumb_func_start sub_8058B40 -sub_8058B40: @ 8058B40 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r0, 0 - mov r9, r0 - mov r8, r0 - ldr r4, =gBattleSpritesDataPtr - ldr r0, [r4] - ldr r7, =gActiveBank - ldrb r2, [r7] - ldr r1, [r0, 0x4] - lsls r3, r2, 1 - adds r0, r3, r2 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0] - movs r5, 0x88 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _08058B80 - ldr r0, =gBattlePartyID - adds r0, r3, r0 - ldrh r1, [r0] - movs r0, 0x64 - muls r1, r0 - ldr r0, =gPlayerParty - adds r1, r0 - adds r0, r2, 0 - bl sub_8172EF0 -_08058B80: - ldr r1, [r4] - ldrb r0, [r7] - movs r6, 0x2 - adds r2, r6, 0 - eors r2, r0 - ldr r1, [r1, 0x4] - lsls r3, r2, 1 - adds r0, r3, r2 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _08058BB2 - ldr r0, =gBattlePartyID - adds r0, r3, r0 - ldrh r1, [r0] - movs r0, 0x64 - muls r1, r0 - ldr r0, =gPlayerParty - adds r1, r0 - adds r0, r2, 0 - bl sub_8172EF0 -_08058BB2: - ldr r0, [r4] - ldrb r2, [r7] - ldr r3, [r0, 0x4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r4, r0, r3 - ldrb r1, [r4] - movs r5, 0x8 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _08058C82 - adds r1, r6, 0 - eors r1, r2 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrb r1, [r0] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _08058C82 - ldrb r1, [r4, 0x1] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08058C68 - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _08058C38 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - bne _08058C38 - ldr r4, =gHealthBoxesIds - ldrb r0, [r7] - adds r1, r6, 0 - eors r1, r0 - adds r0, r1, r4 - ldrb r0, [r0] - ldr r2, =gBattlePartyID - lsls r1, 1 - adds r1, r2 - ldrh r2, [r1] - movs r1, 0x64 - muls r1, r2 - ldr r2, =gPlayerParty - adds r1, r2 - movs r2, 0 - bl UpdateHealthboxAttribute - ldrb r0, [r7] - eors r0, r6 - bl sub_8076918 - ldrb r0, [r7] - eors r0, r6 - adds r0, r4 - ldrb r0, [r0] - bl SetHealthboxSpriteVisible -_08058C38: - ldr r5, =gHealthBoxesIds - ldr r4, =gActiveBank - ldrb r1, [r4] - adds r0, r1, r5 - ldrb r0, [r0] - ldr r2, =gBattlePartyID - lsls r1, 1 - adds r1, r2 - ldrh r2, [r1] - movs r1, 0x64 - muls r1, r2 - ldr r2, =gPlayerParty - adds r1, r2 - movs r2, 0 - bl UpdateHealthboxAttribute - ldrb r0, [r4] - bl sub_8076918 - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - bl SetHealthboxSpriteVisible -_08058C68: - ldr r0, =gBattleSpritesDataPtr - ldr r2, [r0] - ldr r0, =gActiveBank - ldrb r1, [r0] - ldr r2, [r2, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x1] - movs r2, 0x80 - orrs r1, r2 - strb r1, [r0, 0x1] -_08058C82: - ldr r5, =gBattleSpritesDataPtr - ldr r0, [r5] - ldr r4, =gActiveBank - ldrb r2, [r4] - ldr r3, [r0, 0x4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r0, r3 - ldrb r1, [r0, 0x1] - movs r0, 0xC0 - ands r0, r1 - cmp r0, 0x80 - bne _08058D32 - movs r1, 0x2 - eors r1, r2 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrb r1, [r0, 0x1] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _08058D32 - bl IsCryPlayingOrClearCrySongs - lsls r0, 24 - cmp r0, 0 - bne _08058D32 - ldr r0, [r5] - ldrb r1, [r4] - ldr r2, [r0, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x1] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _08058D14 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x42 - ands r0, r1 - cmp r0, 0x42 - bne _08058D08 - ldr r0, =gMPlay_BGM - bl m4aMPlayContinue - b _08058D14 - .pool -_08058D08: - ldr r0, =gMPlay_BGM - ldr r1, =0x0000ffff - movs r2, 0x80 - lsls r2, 1 - bl m4aMPlayVolumeControl -_08058D14: - ldr r0, =gBattleSpritesDataPtr - ldr r2, [r0] - ldr r0, =gActiveBank - ldrb r1, [r0] - ldr r2, [r2, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x1] - movs r2, 0x20 - orrs r1, r2 - strb r1, [r0, 0x1] - movs r0, 0x1 - mov r9, r0 -_08058D32: - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _08058D52 - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _08058DAC - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08058DAC -_08058D52: - ldr r2, =gSprites - ldr r0, =gUnknown_03005D7C - ldr r1, =gActiveBank - ldrb r4, [r1] - adds r0, r4, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r3, [r0] - ldr r0, =SpriteCallbackDummy - cmp r3, r0 - bne _08058E0A - ldr r0, =gBankSpriteIds - adds r0, r4, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - cmp r0, r3 - bne _08058E0A - b _08058E06 - .pool -_08058DAC: - ldr r2, =gSprites - ldr r7, =gUnknown_03005D7C - ldr r0, =gActiveBank - ldrb r3, [r0] - adds r0, r3, r7 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r4, [r0] - ldr r0, =SpriteCallbackDummy - cmp r4, r0 - bne _08058E0A - ldr r6, =gBankSpriteIds - adds r0, r3, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r5, [r0] - cmp r5, r4 - bne _08058E0A - movs r0, 0x2 - eors r3, r0 - adds r0, r3, r7 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r4, [r0] - cmp r4, r5 - bne _08058E0A - adds r0, r3, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - cmp r0, r4 - bne _08058E0A -_08058E06: - movs r0, 0x1 - mov r8, r0 -_08058E0A: - mov r0, r9 - cmp r0, 0 - beq _08058EAA - mov r0, r8 - cmp r0, 0 - beq _08058EAA - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _08058E48 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - bne _08058E48 - ldr r2, =gUnknown_03005D7C - ldr r0, =gActiveBank - ldrb r1, [r0] - movs r0, 0x2 - eors r0, r1 - adds r0, r2 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - bl DestroySprite -_08058E48: - ldr r1, =gUnknown_03005D7C - ldr r4, =gActiveBank - ldrb r0, [r4] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - bl DestroySprite - ldr r3, =gBattleSpritesDataPtr - ldr r0, [r3] - ldr r2, [r0, 0x8] - ldrb r1, [r2, 0x9] - movs r0, 0x2 - negs r0, r0 - ands r0, r1 - strb r0, [r2, 0x9] - ldr r0, [r3] - ldrb r2, [r4] - ldr r0, [r0, 0x4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 2 - adds r1, r0 - ldrb r2, [r1, 0x1] - movs r0, 0x21 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x1] - ldr r0, [r3] - ldrb r2, [r4] - ldr r0, [r0, 0x4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 2 - adds r1, r0 - ldrb r2, [r1, 0x1] - movs r0, 0x7F - ands r0, r2 - strb r0, [r1, 0x1] - ldr r1, =gBattleBankFunc - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_805896C - str r1, [r0] -_08058EAA: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8058B40 - - thumb_func_start sub_8058EDC -sub_8058EDC: @ 8058EDC - push {r4-r6,lr} - ldr r2, =gSprites - ldr r0, =gHealthBoxesIds - ldr r6, =gActiveBank - ldrb r3, [r6] - adds r0, r3, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r4, [r0] - ldr r0, =SpriteCallbackDummy - cmp r4, r0 - bne _08058F94 - ldr r5, =gBattleSpritesDataPtr - ldr r0, [r5] - ldr r1, [r0, 0x4] - lsls r0, r3, 1 - adds r0, r3 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0, 0x1] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08058F94 - ldr r0, =gBankSpriteIds - adds r0, r3, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - cmp r0, r4 - bne _08058F94 - adds r0, r3, 0 - bl sub_805E408 - ldr r0, [r5] - ldrb r2, [r6] - ldr r0, [r0, 0x4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 2 - adds r1, r0 - ldrb r2, [r1] - movs r0, 0x7F - ands r0, r2 - strb r0, [r1] - ldr r0, [r5] - ldrb r2, [r6] - ldr r0, [r0, 0x4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 2 - adds r1, r0 - ldrb r2, [r1, 0x1] - movs r0, 0x2 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x1] - ldr r4, =0x000027f9 - adds r0, r4, 0 - bl FreeSpriteTilesByTag - adds r0, r4, 0 - bl FreeSpritePaletteByTag - ldr r0, [r5] - ldrb r2, [r6] - ldr r1, [r0] - lsls r0, r2, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08058F88 - adds r0, r2, 0 - adds r1, r2, 0 - movs r3, 0x6 - bl move_anim_start_t4 -_08058F88: - ldr r0, =gBattleBankFunc - ldrb r1, [r6] - lsls r1, 2 - adds r1, r0 - ldr r0, =sub_8058FC0 - str r0, [r1] -_08058F94: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8058EDC - - thumb_func_start sub_8058FC0 -sub_8058FC0: @ 8058FC0 - push {r4,lr} - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r4, =gActiveBank - ldrb r1, [r4] - ldr r2, [r0, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _0805900E - bl IsCryPlayingOrClearCrySongs - lsls r0, 24 - cmp r0, 0 - bne _0805900E - ldr r0, =gMPlay_BGM - ldr r1, =0x0000ffff - movs r2, 0x80 - lsls r2, 1 - bl m4aMPlayVolumeControl - ldr r2, =gBattlePartyID - ldrb r1, [r4] - lsls r0, r1, 1 - adds r0, r2 - ldrh r2, [r0] - movs r0, 0x64 - muls r0, r2 - ldr r2, =gPlayerParty - adds r0, r2 - bl sub_805E990 - bl PlayerBufferExecCompleted -_0805900E: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8058FC0 - - thumb_func_start sub_805902C -sub_805902C: @ 805902C - push {r4-r6,lr} - ldr r6, =gBattleSpritesDataPtr - ldr r0, [r6] - ldr r5, =gActiveBank - ldrb r2, [r5] - ldr r1, [r0, 0x4] - lsls r3, r2, 1 - adds r0, r3, r2 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x88 - ands r0, r1 - cmp r0, 0 - bne _0805905E - ldr r0, =gBattlePartyID - adds r0, r3, r0 - ldrh r1, [r0] - movs r0, 0x64 - muls r1, r0 - ldr r0, =gPlayerParty - adds r1, r0 - adds r0, r2, 0 - bl sub_8172EF0 -_0805905E: - ldr r4, =gSprites - ldr r0, =gUnknown_03005D7C - ldrb r2, [r5] - adds r0, r2, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r3, r0, 2 - adds r0, r4, 0 - adds r0, 0x1C - adds r0, r3, r0 - ldr r1, [r0] - ldr r0, =SpriteCallbackDummy - cmp r1, r0 - bne _080590D2 - ldr r0, [r6] - ldr r1, [r0, 0x4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _080590D2 - adds r0, r3, r4 - bl DestroySprite - ldr r4, =gHealthBoxesIds - ldrb r1, [r5] - adds r0, r1, r4 - ldrb r0, [r0] - ldr r2, =gBattlePartyID - lsls r1, 1 - adds r1, r2 - ldrh r2, [r1] - movs r1, 0x64 - muls r1, r2 - ldr r2, =gPlayerParty - adds r1, r2 - movs r2, 0 - bl UpdateHealthboxAttribute - ldrb r0, [r5] - bl sub_8076918 - ldrb r0, [r5] - adds r0, r4 - ldrb r0, [r0] - bl SetHealthboxSpriteVisible - ldr r1, =gBattleBankFunc - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_8058EDC - str r1, [r0] -_080590D2: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805902C - - thumb_func_start c3_0802FDF4 -c3_0802FDF4: @ 8059100 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsCryPlayingOrClearCrySongs - lsls r0, 24 - cmp r0, 0 - bne _08059122 - ldr r0, =gMPlay_BGM - ldr r1, =0x0000ffff - movs r2, 0x80 - lsls r2, 1 - bl m4aMPlayVolumeControl - adds r0, r4, 0 - bl DestroyTask -_08059122: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end c3_0802FDF4 - - thumb_func_start bx_t1_healthbar_update -bx_t1_healthbar_update: @ 8059130 - push {r4-r6,lr} - ldr r5, =gActiveBank - ldrb r0, [r5] - ldr r6, =gHealthBoxesIds - adds r1, r0, r6 - ldrb r1, [r1] - movs r2, 0 - movs r3, 0 - bl sub_8074AA0 - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldrb r0, [r5] - adds r0, r6 - ldrb r0, [r0] - bl SetHealthboxSpriteVisible - lsls r4, 16 - asrs r1, r4, 16 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08059178 - ldrb r0, [r5] - adds r0, r6 - ldrb r0, [r0] - movs r2, 0 - bl UpdateHpTextInHealthbox - b _08059192 - .pool -_08059178: - ldr r2, =gBattlePartyID - ldrb r1, [r5] - lsls r0, r1, 1 - adds r0, r2 - ldrh r2, [r0] - movs r0, 0x64 - muls r0, r2 - ldr r2, =gPlayerParty - adds r0, r2 - bl sub_805E990 - bl PlayerBufferExecCompleted -_08059192: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end bx_t1_healthbar_update - - thumb_func_start sub_80591A0 -sub_80591A0: @ 80591A0 - push {lr} - movs r0, 0 - bl IsTextPrinterActive - lsls r0, 16 - cmp r0, 0 - bne _080591B2 - bl PlayerBufferExecCompleted -_080591B2: - pop {r0} - bx r0 - thumb_func_end sub_80591A0 - - thumb_func_start sub_80591B8 -sub_80591B8: @ 80591B8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - ldr r1, =gTasks - lsls r0, 2 - add r0, r9 - lsls r0, 3 - adds r0, r1 - mov r8, r0 - ldrb r0, [r0, 0x8] - mov r10, r0 - mov r1, r8 - ldrb r7, [r1, 0xC] - str r7, [sp, 0x8] - ldrh r2, [r1, 0xA] - str r2, [sp, 0xC] - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080591FE - ldr r1, =gBattlePartyID - lsls r0, r7, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r10, r0 - bne _080591FE - b _08059314 -_080591FE: - movs r0, 0x64 - mov r1, r10 - muls r1, r0 - ldr r0, =gPlayerParty - adds r6, r1, r0 - adds r0, r6, 0 - movs r1, 0xB - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - adds r0, r6, 0 - movs r1, 0x38 - bl GetMonData - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - movs r1, 0x19 - bl GetMonData - str r0, [sp, 0x4] - ldr r3, =gExperienceTables - adds r4, 0x1 - lsls r4, 2 - ldr r2, =gBaseStats - lsls r1, r5, 3 - subs r1, r5 - lsls r1, 2 - adds r1, r2 - ldrb r2, [r1, 0x13] - movs r1, 0xCA - lsls r1, 1 - muls r1, r2 - adds r4, r1 - adds r4, r3 - ldr r2, [r4] - str r2, [sp] - ldr r3, [sp, 0xC] - lsls r1, r3, 16 - asrs r1, 16 - adds r0, r1 - cmp r0, r2 - bcc _080592EC - adds r0, r6, 0 - movs r1, 0x19 - mov r2, sp - bl SetMonData - adds r0, r6, 0 - bl CalculateMonStats - ldr r2, [sp] - add r0, sp, 0x4 - ldrh r0, [r0] - subs r2, r0 - ldr r0, [sp, 0xC] - subs r2, r0, r2 - ldr r4, =gActiveBank - ldrb r5, [r4] - strb r7, [r4] - lsls r2, 16 - lsrs r2, 16 - movs r0, 0x1 - movs r1, 0xB - bl EmitCmd33 - strb r5, [r4] - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080592D4 - ldr r2, =gBattlePartyID - lsls r0, r7, 1 - adds r0, r2 - mov r1, r10 - ldrh r0, [r0] - cmp r1, r0 - beq _080592B2 - movs r0, 0x2 - eors r7, r0 - lsls r0, r7, 1 - adds r0, r2 - ldrh r0, [r0] - cmp r1, r0 - bne _080592D4 -_080592B2: - ldr r0, =sub_8059544 - b _08059316 - .pool -_080592D4: - ldr r0, =gTasks - mov r2, r9 - lsls r1, r2, 2 - add r1, r9 - lsls r1, 3 - adds r1, r0 - ldr r0, =sub_805965C - b _08059318 - .pool -_080592EC: - str r0, [sp, 0x4] - add r2, sp, 0x4 - adds r0, r6, 0 - movs r1, 0x19 - bl SetMonData - ldr r1, =gBattleBankFunc - ldr r3, [sp, 0x8] - lsls r0, r3, 2 - adds r0, r1 - ldr r1, =sub_80591A0 - str r1, [r0] - mov r0, r9 - bl DestroyTask - b _0805931A - .pool -_08059314: - ldr r0, =sub_8059330 -_08059316: - mov r1, r8 -_08059318: - str r0, [r1] -_0805931A: - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80591B8 - - thumb_func_start sub_8059330 -sub_8059330: @ 8059330 - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gTasks - lsls r2, r0, 2 - mov r8, r2 - add r8, r0 - mov r0, r8 - lsls r0, 3 - mov r8, r0 - add r8, r1 - mov r2, r8 - ldrb r1, [r2, 0x8] - movs r0, 0xA - ldrsh r2, [r2, r0] - mov r9, r2 - mov r2, r8 - ldrb r2, [r2, 0xC] - mov r10, r2 - movs r0, 0x64 - adds r6, r1, 0 - muls r6, r0 - ldr r0, =gPlayerParty - adds r6, r0 - adds r0, r6, 0 - movs r1, 0x38 - bl GetMonData - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - movs r1, 0xB - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - adds r0, r6, 0 - movs r1, 0x19 - bl GetMonData - adds r3, r0, 0 - ldr r6, =gExperienceTables - lsls r1, r4, 2 - ldr r2, =gBaseStats - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - adds r0, r2 - ldrb r2, [r0, 0x13] - movs r0, 0xCA - lsls r0, 1 - muls r0, r2 - adds r1, r0 - adds r1, r6 - ldr r1, [r1] - subs r3, r1 - adds r4, 0x1 - lsls r4, 2 - adds r4, r0 - adds r4, r6 - ldr r2, [r4] - subs r2, r1 - ldr r0, =gHealthBoxesIds - add r0, r10 - ldrb r1, [r0] - mov r0, r9 - negs r0, r0 - str r0, [sp] - mov r0, r10 - bl SetBattleBarStruct - movs r0, 0x21 - bl PlaySE - ldr r0, =sub_8059400 - mov r1, r8 - str r0, [r1] - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8059330 - - thumb_func_start sub_8059400 -sub_8059400: @ 8059400 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r1, =gTasks - lsls r0, 2 - add r0, r8 - lsls r0, 3 - adds r6, r0, r1 - ldrh r1, [r6, 0x1C] - movs r2, 0x1C - ldrsh r0, [r6, r2] - cmp r0, 0xC - bgt _08059430 - adds r0, r1, 0x1 - strh r0, [r6, 0x1C] - b _0805952C - .pool -_08059430: - ldrb r0, [r6, 0x8] - mov r9, r0 - ldrh r2, [r6, 0xA] - mov r10, r2 - ldrb r7, [r6, 0xC] - ldr r5, =gHealthBoxesIds - adds r5, r7, r5 - ldrb r1, [r5] - adds r0, r7, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8074AA0 - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldrb r0, [r5] - bl SetHealthboxSpriteVisible - lsls r4, 16 - asrs r4, 16 - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - bne _0805952C - movs r0, 0x21 - bl m4aSongNumStop - movs r0, 0x64 - mov r1, r9 - muls r1, r0 - ldr r0, =gPlayerParty - adds r5, r1, r0 - adds r0, r5, 0 - movs r1, 0x38 - bl GetMonData - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x19 - bl GetMonData - str r0, [sp, 0x4] - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - ldr r3, =gExperienceTables - adds r4, 0x1 - lsls r4, 2 - ldr r2, =gBaseStats - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r1, [r1, 0x13] - movs r0, 0xCA - lsls r0, 1 - muls r0, r1 - adds r4, r0 - adds r4, r3 - ldr r1, [r4] - str r1, [sp] - mov r2, r10 - lsls r0, r2, 16 - asrs r4, r0, 16 - ldr r0, [sp, 0x4] - adds r0, r4 - cmp r0, r1 - blt _08059510 - adds r0, r5, 0 - movs r1, 0x19 - mov r2, sp - bl SetMonData - adds r0, r5, 0 - bl CalculateMonStats - ldr r2, [sp] - add r0, sp, 0x4 - ldrh r0, [r0] - subs r2, r0 - subs r2, r4, r2 - ldr r4, =gActiveBank - ldrb r5, [r4] - strb r7, [r4] - lsls r2, 16 - lsrs r2, 16 - movs r0, 0x1 - movs r1, 0xB - bl EmitCmd33 - strb r5, [r4] - ldr r0, =sub_8059544 - str r0, [r6] - b _0805952C - .pool -_08059510: - str r0, [sp, 0x4] - add r2, sp, 0x4 - adds r0, r5, 0 - movs r1, 0x19 - bl SetMonData - ldr r1, =gBattleBankFunc - lsls r0, r7, 2 - adds r0, r1 - ldr r1, =sub_80591A0 - str r1, [r0] - mov r0, r8 - bl DestroyTask -_0805952C: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8059400 - - thumb_func_start sub_8059544 -sub_8059544: @ 8059544 - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldrb r4, [r0, 0xC] - ldrb r6, [r0, 0x8] - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08059578 - ldr r1, =gBattlePartyID - movs r0, 0x2 - adds r2, r4, 0 - eors r2, r0 - lsls r0, r2, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r6, r0 - bne _08059578 - adds r4, r2, 0 -_08059578: - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r4, 0 - movs r3, 0 - bl move_anim_start_t4 - ldr r0, =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, =sub_80595A4 - str r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8059544 - - thumb_func_start sub_80595A4 -sub_80595A4: @ 80595A4 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r1, =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r2, r0, r1 - ldrb r5, [r2, 0xC] - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r1, [r0, 0x4] - lsls r0, r5, 1 - adds r0, r5 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _08059646 - ldrb r4, [r2, 0x8] - movs r0, 0x64 - adds r1, r4, 0 - muls r1, r0 - ldr r0, =gPlayerParty - adds r7, r1, r0 - adds r0, r7, 0 - movs r1, 0x38 - bl GetMonData - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08059624 - ldr r1, =gBattlePartyID - movs r0, 0x2 - adds r2, r5, 0 - eors r2, r0 - lsls r0, r2, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r4, r0 - bne _08059624 - ldr r0, =gHealthBoxesIds - adds r0, r2, r0 - ldrb r0, [r0] - adds r1, r7, 0 - movs r2, 0 - bl UpdateHealthboxAttribute - b _08059638 - .pool -_08059624: - ldr r0, =gHealthBoxesIds - adds r0, r5, r0 - ldrb r0, [r0] - movs r1, 0x64 - muls r1, r4 - ldr r2, =gPlayerParty - adds r1, r2 - movs r2, 0 - bl UpdateHealthboxAttribute -_08059638: - ldr r0, =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldr r0, =sub_805965C - str r0, [r1] -_08059646: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80595A4 - - thumb_func_start sub_805965C -sub_805965C: @ 805965C - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r0, =gTasks - lsls r4, r5, 2 - adds r4, r5 - lsls r4, 3 - adds r4, r0 - ldrb r1, [r4, 0x8] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x38 - bl GetMonData - ldrb r0, [r4, 0xC] - ldr r1, =gBattleBankFunc - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_80591A0 - str r1, [r0] - adds r0, r5, 0 - bl DestroyTask - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805965C - - thumb_func_start sub_80596A8 -sub_80596A8: @ 80596A8 - push {r4-r6,lr} - ldr r6, =gSprites - ldr r5, =gBankSpriteIds - ldr r4, =gActiveBank - ldrb r2, [r4] - adds r0, r2, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - movs r3, 0x22 - ldrsh r1, [r0, r3] - movs r3, 0x26 - ldrsh r0, [r0, r3] - adds r1, r0 - cmp r1, 0xA0 - ble _08059724 - ldr r1, =gBattlePartyID - lsls r0, r2, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - bl nullsub_24 - ldrb r0, [r4] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - ldrb r0, [r0, 0x3] - lsls r0, 26 - lsrs r0, 27 - bl FreeOamMatrix - ldrb r0, [r4] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - bl DestroySprite - ldr r1, =gHealthBoxesIds - ldrb r0, [r4] - adds r0, r1 - ldrb r0, [r0] - bl SetHealthboxSpriteInvisible - bl PlayerBufferExecCompleted -_08059724: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80596A8 - - thumb_func_start sub_8059744 -sub_8059744: @ 8059744 - push {r4-r6,lr} - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r6, =gActiveBank - ldrb r2, [r6] - ldr r1, [r0, 0x4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _08059798 - ldr r5, =gBankSpriteIds - adds r0, r2, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r4, =gSprites - adds r0, r4 - bl FreeSpriteOamMatrix - ldrb r0, [r6] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl DestroySprite - ldr r1, =gHealthBoxesIds - ldrb r0, [r6] - adds r0, r1 - ldrb r0, [r0] - bl SetHealthboxSpriteInvisible - bl PlayerBufferExecCompleted -_08059798: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8059744 - - thumb_func_start sub_80597B4 -sub_80597B4: @ 80597B4 - push {lr} - movs r0, 0 - bl IsTextPrinterActive - lsls r0, 16 - cmp r0, 0 - bne _080597C6 - bl PlayerBufferExecCompleted -_080597C6: - pop {r0} - bx r0 - thumb_func_end sub_80597B4 - - thumb_func_start sub_80597CC -sub_80597CC: @ 80597CC - push {r4,lr} - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0805980A - ldr r1, =gBattleBankFunc - ldr r2, =gActiveBank - ldrb r0, [r2] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_8059828 - str r1, [r0] - ldr r3, =gTasks - ldr r1, =gUnknown_03005D7C - ldrb r0, [r2] - adds r0, r1 - ldrb r0, [r0] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r3 - ldrb r4, [r1, 0x8] - bl DestroyTask - bl FreeAllWindowBuffers - adds r0, r4, 0 - bl sub_81B89AC -_0805980A: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80597CC - - thumb_func_start sub_8059828 -sub_8059828: @ 8059828 - push {lr} - ldr r0, =gMain - ldr r1, [r0, 0x4] - ldr r0, =BattleMainCB2 - cmp r1, r0 - bne _08059898 - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08059898 - ldr r0, =gUnknown_0203CEE8 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08059870 - ldr r0, =gUnknown_0203CEE9 - ldrb r1, [r0] - ldr r2, =gUnknown_0203CF00 - movs r0, 0x1 - bl EmitCmd34 - b _0805987A - .pool -_08059870: - movs r0, 0x1 - movs r1, 0x6 - movs r2, 0 - bl EmitCmd34 -_0805987A: - ldr r1, =gBattleBufferA - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 9 - adds r1, 0x1 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x1 - bne _08059894 - bl b_link_standby_message -_08059894: - bl PlayerBufferExecCompleted -_08059898: - pop {r0} - bx r0 - .pool - thumb_func_end sub_8059828 - - thumb_func_start sub_80598A4 -sub_80598A4: @ 80598A4 - push {lr} - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080598CC - ldr r1, =gBattleBankFunc - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_80598E0 - str r1, [r0] - bl nullsub_35 - bl FreeAllWindowBuffers - bl sub_81AABB0 -_080598CC: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80598A4 - - thumb_func_start sub_80598E0 -sub_80598E0: @ 80598E0 - push {lr} - ldr r0, =gMain - ldr r1, [r0, 0x4] - ldr r0, =BattleMainCB2 - cmp r1, r0 - bne _08059906 - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08059906 - ldr r0, =gScriptItemId - ldrh r1, [r0] - movs r0, 0x1 - bl EmitCmd35 - bl PlayerBufferExecCompleted -_08059906: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80598E0 - - thumb_func_start bx_wait_t1 -bx_wait_t1: @ 805991C - push {lr} - ldr r0, =gDoingBattleAnim - ldrb r0, [r0] - cmp r0, 0 - beq _08059942 - ldr r0, =gBattleSpritesDataPtr - ldr r2, [r0] - ldr r0, =gActiveBank - ldrb r1, [r0] - ldr r2, [r2, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _08059946 -_08059942: - bl PlayerBufferExecCompleted -_08059946: - pop {r0} - bx r0 - .pool - thumb_func_end bx_wait_t1 - - thumb_func_start bx_blink_t1 -bx_blink_t1: @ 8059958 - push {r4,lr} - ldr r1, =gBankSpriteIds - ldr r0, =gActiveBank - ldrb r0, [r0] - adds r0, r1 - ldrb r1, [r0] - ldr r2, =gSprites - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r4, r0, r2 - movs r1, 0x30 - ldrsh r0, [r4, r1] - cmp r0, 0x20 - bne _080599A4 - movs r3, 0 - movs r0, 0 - strh r0, [r4, 0x30] - adds r2, r4, 0 - adds r2, 0x3E - ldrb r1, [r2] - subs r0, 0x5 - ands r0, r1 - strb r0, [r2] - ldr r0, =gDoingBattleAnim - strb r3, [r0] - bl PlayerBufferExecCompleted - b _080599CE - .pool -_080599A4: - ldrh r0, [r4, 0x30] - movs r1, 0x3 - ands r0, r1 - cmp r0, 0 - bne _080599C8 - adds r3, r4, 0 - adds r3, 0x3E - ldrb r2, [r3] - lsls r0, r2, 29 - lsrs r0, 31 - movs r1, 0x1 - eors r1, r0 - lsls r1, 2 - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] -_080599C8: - ldrh r0, [r4, 0x30] - adds r0, 0x1 - strh r0, [r4, 0x30] -_080599CE: - pop {r4} - pop {r0} - bx r0 - thumb_func_end bx_blink_t1 - - thumb_func_start sub_80599D4 -sub_80599D4: @ 80599D4 - push {r4,lr} - sub sp, 0x4 - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08059A02 - ldr r4, =gUnknown_03005D74 - ldrb r0, [r4] - cmp r0, 0 - beq _08059A02 - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4] - bl BattleDestroyCursorAt - movs r0, 0 - strb r0, [r4] - movs r0, 0 - bl BattleCreateCursorAt -_08059A02: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08059A2C - ldr r4, =gUnknown_03005D74 - ldrb r0, [r4] - cmp r0, 0 - bne _08059A2C - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4] - bl BattleDestroyCursorAt - movs r0, 0x1 - strb r0, [r4] - movs r0, 0x1 - bl BattleCreateCursorAt -_08059A2C: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r2, 0x1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _08059A7A - str r2, [sp] - movs r0, 0x18 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl sub_8056A3C - movs r0, 0x5 - bl PlaySE - ldr r0, =gUnknown_03005D74 - ldrb r0, [r0] - cmp r0, 0 - beq _08059A6C - movs r0, 0x1 - movs r1, 0xE - movs r2, 0 - bl EmitCmd33 - b _08059A76 - .pool -_08059A6C: - movs r0, 0x1 - movs r1, 0xD - movs r2, 0 - bl EmitCmd33 -_08059A76: - bl PlayerBufferExecCompleted -_08059A7A: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08059AA0 - movs r0, 0x1 - str r0, [sp] - movs r0, 0x18 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl sub_8056A3C - movs r0, 0x5 - bl PlaySE - bl PlayerBufferExecCompleted -_08059AA0: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80599D4 - - thumb_func_start sub_8059AAC -sub_8059AAC: @ 8059AAC - push {r4-r7,lr} - ldr r0, =gActiveBank - ldrb r1, [r0] - lsls r1, 9 - ldr r3, =gBattleBufferA + 4 - ldr r2, =gUnknown_03005D78 - movs r0, 0 - strb r0, [r2] - movs r5, 0 - ldr r7, =gDisplayedStringBattle - adds r4, r1, r3 - adds r6, r2, 0 -_08059AC4: - lsls r0, r5, 24 - lsrs r0, 24 - bl battle_menu_cursor_related - ldrh r1, [r4] - movs r0, 0xD - muls r1, r0 - ldr r0, =gMoveNames - adds r1, r0 - adds r0, r7, 0 - bl StringCopy - adds r1, r5, 0x3 - lsls r1, 24 - lsrs r1, 24 - adds r0, r7, 0 - bl sub_814F9EC - ldrh r0, [r4] - cmp r0, 0 - beq _08059AF4 - ldrb r0, [r6] - adds r0, 0x1 - strb r0, [r6] -_08059AF4: - adds r4, 0x2 - adds r5, 0x1 - cmp r5, 0x3 - ble _08059AC4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8059AAC - - thumb_func_start sub_8059B18 -sub_8059B18: @ 8059B18 - push {r4,lr} - ldr r4, =gDisplayedStringBattle - ldr r1, =gText_MoveInterfacePP - adds r0, r4, 0 - bl StringCopy - adds r0, r4, 0 - movs r1, 0x7 - bl sub_814F9EC - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8059B18 - - thumb_func_start sub_8059B3C -sub_8059B3C: @ 8059B3C - push {r4-r7,lr} - ldr r5, =gBattleBufferA - ldr r7, =gActiveBank - ldrb r0, [r7] - lsls r0, 9 - adds r1, r5, 0x2 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08059B98 - bl SetPpNumbersPaletteInMoveSelection - ldrb r1, [r7] - lsls r4, r1, 9 - adds r0, r5, 0x4 - adds r4, r0 - ldr r6, =gDisplayedStringBattle - ldr r5, =gMoveSelectionCursor - adds r1, r5 - adds r0, r4, 0 - adds r0, 0x8 - ldrb r1, [r1] - adds r0, r1 - ldrb r1, [r0] - adds r0, r6, 0 - movs r2, 0x1 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - movs r1, 0xBA - strb r1, [r0] - adds r0, 0x1 - ldrb r1, [r7] - adds r1, r5 - adds r4, 0xC - ldrb r1, [r1] - adds r4, r1 - ldrb r1, [r4] - movs r2, 0x1 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - adds r0, r6, 0 - movs r1, 0x9 - bl sub_814F9EC -_08059B98: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8059B3C - - thumb_func_start sub_8059BB0 -sub_8059BB0: @ 8059BB0 - push {r4-r6,lr} - ldr r5, =gActiveBank - ldrb r4, [r5] - lsls r4, 9 - ldr r0, =gBattleBufferA + 4 - adds r4, r0 - ldr r6, =gDisplayedStringBattle - ldr r1, =gText_MoveInterfaceType - adds r0, r6, 0 - bl StringCopy - movs r1, 0xFC - strb r1, [r0] - adds r0, 0x1 - movs r1, 0x6 - strb r1, [r0] - adds r0, 0x1 - movs r1, 0x1 - strb r1, [r0] - adds r0, 0x1 - ldr r3, =gBattleMoves - ldr r2, =gMoveSelectionCursor - ldrb r1, [r5] - adds r1, r2 - ldrb r1, [r1] - lsls r1, 1 - adds r4, r1 - ldrh r2, [r4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 2 - adds r1, r3 - ldrb r2, [r1, 0x2] - lsls r1, r2, 3 - subs r1, r2 - ldr r2, =gTypeNames - adds r1, r2 - bl StringCopy - adds r0, r6, 0 - movs r1, 0xA - bl sub_814F9EC - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8059BB0 - - thumb_func_start battle_menu_cursor_related_2 -battle_menu_cursor_related_2: @ 8059C28 - push {lr} - sub sp, 0x10 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - lsls r1, 24 - lsrs r1, 24 - add r2, sp, 0xC - adds r0, r1, 0x1 - strh r0, [r2] - adds r0, r2, 0 - adds r1, 0x2 - strh r1, [r0, 0x2] - movs r1, 0x1 - adds r0, r3, 0 - ands r0, r1 - lsls r2, r0, 3 - adds r2, r0 - adds r2, 0x1 - movs r0, 0x2 - ands r3, r0 - adds r3, 0x37 - str r1, [sp] - str r0, [sp, 0x4] - movs r0, 0x11 - str r0, [sp, 0x8] - movs r0, 0 - add r1, sp, 0xC - bl CopyToBgTilemapBufferRect_ChangePalette - movs r0, 0 - bl CopyBgTilemapBufferToVram - add sp, 0x10 - pop {r0} - bx r0 - thumb_func_end battle_menu_cursor_related_2 - - thumb_func_start battle_menu_cursor_related -battle_menu_cursor_related: @ 8059C70 - push {lr} - sub sp, 0x10 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - add r0, sp, 0xC - ldr r1, =0x00001016 - strh r1, [r0] - strh r1, [r0, 0x2] - movs r1, 0x1 - adds r0, r3, 0 - ands r0, r1 - lsls r2, r0, 3 - adds r2, r0 - adds r2, 0x1 - movs r0, 0x2 - ands r3, r0 - adds r3, 0x37 - str r1, [sp] - str r0, [sp, 0x4] - movs r0, 0x11 - str r0, [sp, 0x8] - movs r0, 0 - add r1, sp, 0xC - bl CopyToBgTilemapBufferRect_ChangePalette - movs r0, 0 - bl CopyBgTilemapBufferToVram - add sp, 0x10 - pop {r0} - bx r0 - .pool - thumb_func_end battle_menu_cursor_related - - thumb_func_start ActionSelectionCreateCursorAt -ActionSelectionCreateCursorAt: @ 8059CB4 - push {r4,lr} - sub sp, 0x10 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - add r0, sp, 0xC - movs r4, 0x1 - strh r4, [r0] - movs r1, 0x2 - strh r1, [r0, 0x2] - adds r0, r3, 0 - ands r0, r4 - lsls r2, r0, 3 - subs r2, r0 - adds r2, 0x10 - lsls r2, 24 - lsrs r2, 24 - ands r3, r1 - adds r3, 0x23 - str r4, [sp] - str r1, [sp, 0x4] - movs r0, 0x11 - str r0, [sp, 0x8] - movs r0, 0 - add r1, sp, 0xC - bl CopyToBgTilemapBufferRect_ChangePalette - movs r0, 0 - bl CopyBgTilemapBufferToVram - add sp, 0x10 - pop {r4} - pop {r0} - bx r0 - thumb_func_end ActionSelectionCreateCursorAt - - thumb_func_start ActionSelectionDestroyCursorAt -ActionSelectionDestroyCursorAt: @ 8059CF8 - push {lr} - sub sp, 0x10 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - add r0, sp, 0xC - ldr r1, =0x00001016 - strh r1, [r0] - strh r1, [r0, 0x2] - movs r1, 0x1 - adds r0, r3, 0 - ands r0, r1 - lsls r2, r0, 3 - subs r2, r0 - adds r2, 0x10 - lsls r2, 24 - lsrs r2, 24 - movs r0, 0x2 - ands r3, r0 - adds r3, 0x23 - str r1, [sp] - str r0, [sp, 0x4] - movs r0, 0x11 - str r0, [sp, 0x8] - movs r0, 0 - add r1, sp, 0xC - bl CopyToBgTilemapBufferRect_ChangePalette - movs r0, 0 - bl CopyBgTilemapBufferToVram - add sp, 0x10 - pop {r0} - bx r0 - .pool - thumb_func_end ActionSelectionDestroyCursorAt - - thumb_func_start sub_8059D40 -sub_8059D40: @ 8059D40 - push {lr} - ldr r0, =ReshowBattleScreenAfterMenu - bl SetMainCallback2 - pop {r0} - bx r0 - .pool - thumb_func_end sub_8059D40 - - thumb_func_start sub_8059D50 -sub_8059D50: @ 8059D50 - push {lr} - ldr r0, =ReshowBattleScreenAfterMenu - bl SetMainCallback2 - pop {r0} - bx r0 - .pool - thumb_func_end sub_8059D50 - - thumb_func_start sub_8059D60 -sub_8059D60: @ 8059D60 - push {lr} - ldr r0, =gBattleSpritesDataPtr - ldr r2, [r0] - ldr r0, =gActiveBank - ldrb r1, [r0] - ldr r2, [r2, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08059D82 - bl PlayerBufferExecCompleted -_08059D82: - pop {r0} - bx r0 - .pool - thumb_func_end sub_8059D60 - - thumb_func_start bx_8030B2C -bx_8030B2C: @ 8059D90 - push {lr} - ldr r0, =gBattleSpritesDataPtr - ldr r2, [r0] - ldr r0, =gActiveBank - ldrb r1, [r0] - ldr r2, [r2, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _08059DB2 - bl PlayerBufferExecCompleted -_08059DB2: - pop {r0} - bx r0 - .pool - thumb_func_end bx_8030B2C - - thumb_func_start b_link_standby_message -b_link_standby_message: @ 8059DC0 - push {lr} - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08059DE0 - ldr r0, =gBattle_BG0_X - movs r1, 0 - strh r1, [r0] - ldr r0, =gBattle_BG0_Y - strh r1, [r0] - ldr r0, =gText_LinkStandby - movs r1, 0 - bl sub_814F9EC -_08059DE0: - pop {r0} - bx r0 - .pool - thumb_func_end b_link_standby_message - - thumb_func_start dp01t_00_1_getattr -dp01t_00_1_getattr: @ 8059DF4 - push {r4-r6,lr} - sub sp, 0x100 - movs r6, 0 - ldr r1, =gBattleBufferA - ldr r0, =gActiveBank - ldrb r2, [r0] - lsls r0, r2, 9 - adds r1, 0x2 - adds r1, r0, r1 - ldrb r0, [r1] - cmp r0, 0 - bne _08059E2C - ldr r0, =gBattlePartyID - lsls r1, r2, 1 - adds r1, r0 - ldrb r0, [r1] - mov r1, sp - bl dp01_getattr_by_ch1_for_player_pokemon_ - adds r6, r0, 0 - b _08059E4E - .pool -_08059E2C: - ldrb r4, [r1] - movs r5, 0 -_08059E30: - movs r0, 0x1 - ands r0, r4 - cmp r0, 0 - beq _08059E46 - lsls r0, r5, 24 - lsrs r0, 24 - mov r2, sp - adds r1, r2, r6 - bl dp01_getattr_by_ch1_for_player_pokemon_ - adds r6, r0 -_08059E46: - lsrs r4, 1 - adds r5, 0x1 - cmp r5, 0x5 - ble _08059E30 -_08059E4E: - lsls r1, r6, 16 - lsrs r1, 16 - movs r0, 0x1 - mov r2, sp - bl EmitDataTransfer - bl PlayerBufferExecCompleted - add sp, 0x100 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end dp01t_00_1_getattr - - thumb_func_start dp01_getattr_by_ch1_for_player_pokemon_ -dp01_getattr_by_ch1_for_player_pokemon_: @ 8059E68 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x90 - adds r7, r1, 0 - lsls r0, 24 - lsrs r5, r0, 24 - movs r6, 0 - ldr r2, =gBattleBufferA - ldr r3, =gActiveBank - ldrb r0, [r3] - lsls r0, 9 - adds r1, r2, 0x1 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x3B - bls _08059E92 - bl _0805A5FE -_08059E92: - lsls r0, 2 - ldr r1, =_08059EA8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08059EA8: - .4byte _08059F98 - .4byte _0805A1BC - .4byte _0805A1CC - .4byte _0805A1DC - .4byte _0805A244 - .4byte _0805A244 - .4byte _0805A244 - .4byte _0805A244 - .4byte _0805A260 - .4byte _0805A29C - .4byte _0805A29C - .4byte _0805A29C - .4byte _0805A29C - .4byte _0805A5FE - .4byte _0805A5FE - .4byte _0805A5FE - .4byte _0805A5FE - .4byte _0805A2B8 - .4byte _0805A2C8 - .4byte _0805A2F8 - .4byte _0805A308 - .4byte _0805A318 - .4byte _0805A328 - .4byte _0805A338 - .4byte _0805A348 - .4byte _0805A358 - .4byte _0805A368 - .4byte _0805A378 - .4byte _0805A388 - .4byte _0805A398 - .4byte _0805A3A8 - .4byte _0805A3B8 - .4byte _0805A408 - .4byte _0805A418 - .4byte _0805A428 - .4byte _0805A438 - .4byte _0805A448 - .4byte _0805A458 - .4byte _0805A468 - .4byte _0805A478 - .4byte _0805A488 - .4byte _0805A4BC - .4byte _0805A4CC - .4byte _0805A4DC - .4byte _0805A4EC - .4byte _0805A4FC - .4byte _0805A50C - .4byte _0805A51C - .4byte _0805A52C - .4byte _0805A54C - .4byte _0805A55C - .4byte _0805A56C - .4byte _0805A57C - .4byte _0805A58C - .4byte _0805A59C - .4byte _0805A5AC - .4byte _0805A5BC - .4byte _0805A5CC - .4byte _0805A5DC - .4byte _0805A5EC -_08059F98: - movs r0, 0x64 - adds r4, r5, 0 - muls r4, r0 - ldr r0, =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - mov r1, sp - strh r0, [r1] - adds r0, r4, 0 - movs r1, 0xC - bl GetMonData - mov r1, sp - strh r0, [r1, 0x2E] - movs r6, 0 - add r0, sp, 0x24 - mov r9, r0 - movs r1, 0x3B - add r1, sp - mov r10, r1 - mov r2, sp - adds r2, 0x2B - str r2, [sp, 0x80] - mov r0, sp - adds r0, 0x2A - str r0, [sp, 0x7C] - mov r1, sp - adds r1, 0x68 - str r1, [sp, 0x8C] - adds r2, 0x5 - str r2, [sp, 0x84] - adds r0, 0x12 - str r0, [sp, 0x88] - mov r8, r4 - add r4, sp, 0xC -_08059FE4: - adds r1, r6, 0 - adds r1, 0xD - mov r0, r8 - bl GetMonData - strh r0, [r4] - adds r1, r6, 0 - adds r1, 0x11 - mov r0, r8 - bl GetMonData - mov r2, r9 - adds r1, r2, r6 - strb r0, [r1] - adds r4, 0x2 - adds r6, 0x1 - cmp r6, 0x3 - ble _08059FE4 - movs r0, 0x64 - adds r4, r5, 0 - muls r4, r0 - ldr r0, =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x15 - bl GetMonData - mov r1, r10 - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x20 - bl GetMonData - ldr r2, [sp, 0x80] - strb r0, [r2] - adds r0, r4, 0 - movs r1, 0x19 - bl GetMonData - str r0, [sp, 0x44] - adds r0, r4, 0 - movs r1, 0x27 - bl GetMonData - mov r3, sp - movs r5, 0x1F - ands r0, r5 - ldrb r2, [r3, 0x14] - movs r1, 0x20 - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r3, 0x14] - adds r0, r4, 0 - movs r1, 0x28 - bl GetMonData - mov r3, sp - movs r6, 0x1F - ands r0, r6 - lsls r0, 5 - ldrh r2, [r3, 0x14] - ldr r1, =0xfffffc1f - ands r1, r2 - orrs r1, r0 - strh r1, [r3, 0x14] - adds r0, r4, 0 - movs r1, 0x29 - bl GetMonData - mov r3, sp - ands r0, r5 - lsls r0, 2 - ldrb r2, [r3, 0x15] - movs r1, 0x7D - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r3, 0x15] - adds r0, r4, 0 - movs r1, 0x2A - bl GetMonData - movs r1, 0x1F - ands r1, r0 - lsls r1, 15 - ldr r0, [sp, 0x14] - ldr r2, =0xfff07fff - ands r0, r2 - orrs r0, r1 - str r0, [sp, 0x14] - adds r0, r4, 0 - movs r1, 0x2B - bl GetMonData - mov r3, sp - ands r0, r6 - lsls r0, 4 - ldrh r2, [r3, 0x16] - ldr r1, =0xfffffe0f - ands r1, r2 - orrs r1, r0 - strh r1, [r3, 0x16] - adds r0, r4, 0 - movs r1, 0x2C - bl GetMonData - mov r3, sp - ands r0, r5 - lsls r0, 1 - ldrb r2, [r3, 0x17] - movs r1, 0x3F - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r3, 0x17] - adds r0, r4, 0 - movs r1, 0 - bl GetMonData - str r0, [sp, 0x48] - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData - str r0, [sp, 0x4C] - adds r0, r4, 0 - movs r1, 0x38 - bl GetMonData - ldr r1, [sp, 0x7C] - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - mov r1, sp - strh r0, [r1, 0x28] - adds r0, r4, 0 - movs r1, 0x3A - bl GetMonData - mov r1, sp - strh r0, [r1, 0x2C] - adds r0, r4, 0 - movs r1, 0x3B - bl GetMonData - mov r1, sp - strh r0, [r1, 0x2] - adds r0, r4, 0 - movs r1, 0x3C - bl GetMonData - mov r1, sp - strh r0, [r1, 0x4] - adds r0, r4, 0 - movs r1, 0x3D - bl GetMonData - mov r1, sp - strh r0, [r1, 0x6] - adds r0, r4, 0 - movs r1, 0x3E - bl GetMonData - mov r1, sp - strh r0, [r1, 0x8] - adds r0, r4, 0 - movs r1, 0x3F - bl GetMonData - mov r1, sp - strh r0, [r1, 0xA] - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - mov r3, sp - movs r1, 0x1 - ands r0, r1 - lsls r0, 6 - ldrb r2, [r3, 0x17] - movs r1, 0x41 - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r3, 0x17] - adds r0, r4, 0 - movs r1, 0x2E - bl GetMonData - mov r3, sp - lsls r0, 7 - ldrb r2, [r3, 0x17] - movs r1, 0x7F - ands r1, r2 - orrs r1, r0 - strb r1, [r3, 0x17] - adds r0, r4, 0 - movs r1, 0x1 - bl GetMonData - str r0, [sp, 0x54] - adds r0, r4, 0 - movs r1, 0x2 - ldr r2, [sp, 0x8C] - bl GetMonData - ldr r0, [sp, 0x84] - ldr r1, [sp, 0x8C] - bl StringCopy10 - adds r0, r4, 0 - movs r1, 0x7 - ldr r2, [sp, 0x88] - bl GetMonData - mov r2, sp - movs r6, 0 -_0805A19C: - adds r0, r7, r6 - adds r1, r2, r6 - ldrb r1, [r1] - strb r1, [r0] - adds r6, 0x1 - cmp r6, 0x57 - bls _0805A19C - b _0805A5FE - .pool -_0805A1BC: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0xB - b _0805A536 - .pool -_0805A1CC: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0xC - b _0805A536 - .pool -_0805A1DC: - movs r6, 0 - add r2, sp, 0x58 - mov r9, r2 - add r0, sp, 0x60 - mov r10, r0 - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, =gPlayerParty - adds r4, r1, r0 - mov r8, r9 -_0805A1F2: - adds r1, r6, 0 - adds r1, 0xD - adds r0, r4, 0 - bl GetMonData - mov r1, r8 - strh r0, [r1] - adds r1, r6, 0 - adds r1, 0x11 - adds r0, r4, 0 - bl GetMonData - mov r2, r10 - adds r1, r2, r6 - strb r0, [r1] - movs r0, 0x2 - add r8, r0 - adds r6, 0x1 - cmp r6, 0x3 - ble _0805A1F2 - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x15 - bl GetMonData - mov r1, r9 - strb r0, [r1, 0xC] - mov r2, r9 - movs r6, 0 -_0805A230: - adds r0, r7, r6 - adds r1, r2, r6 - ldrb r1, [r1] - strb r1, [r0] - adds r6, 0x1 - cmp r6, 0xF - bls _0805A230 - b _0805A5FE - .pool -_0805A244: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldrb r1, [r3] - lsls r1, 9 - adds r2, 0x1 - adds r1, r2 - ldrb r1, [r1] - adds r1, 0x9 - b _0805A536 - .pool -_0805A260: - movs r6, 0 - movs r0, 0x64 - adds r4, r5, 0 - muls r4, r0 - ldr r2, =gPlayerParty - mov r8, r2 -_0805A26C: - adds r1, r6, 0 - adds r1, 0x11 - mov r2, r8 - adds r0, r4, r2 - bl GetMonData - adds r1, r7, r6 - strb r0, [r1] - adds r6, 0x1 - cmp r6, 0x3 - ble _0805A26C - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x15 - bl GetMonData - adds r1, r7, r6 - strb r0, [r1] - adds r6, 0x1 - b _0805A5FE - .pool -_0805A29C: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldrb r1, [r3] - lsls r1, 9 - adds r2, 0x1 - adds r1, r2 - ldrb r1, [r1] - adds r1, 0x8 - b _0805A5F6 - .pool -_0805A2B8: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x1 - b _0805A2D2 - .pool -_0805A2C8: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x19 -_0805A2D2: - bl GetMonData - adds r1, r0, 0 - strb r1, [r7] - movs r0, 0xFF - lsls r0, 8 - ands r0, r1 - lsrs r0, 8 - strb r0, [r7, 0x1] - movs r0, 0xFF - lsls r0, 16 - ands r0, r1 - lsrs r0, 16 - strb r0, [r7, 0x2] - movs r6, 0x3 - b _0805A5FE - .pool -_0805A2F8: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x1A - b _0805A5F6 - .pool -_0805A308: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x1B - b _0805A5F6 - .pool -_0805A318: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x1C - b _0805A5F6 - .pool -_0805A328: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x1D - b _0805A5F6 - .pool -_0805A338: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x1E - b _0805A5F6 - .pool -_0805A348: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x1F - b _0805A5F6 - .pool -_0805A358: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x20 - b _0805A5F6 - .pool -_0805A368: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x22 - b _0805A5F6 - .pool -_0805A378: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x23 - b _0805A5F6 - .pool -_0805A388: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x24 - b _0805A5F6 - .pool -_0805A398: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x25 - b _0805A5F6 - .pool -_0805A3A8: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x26 - b _0805A5F6 - .pool -_0805A3B8: - movs r0, 0x64 - adds r4, r5, 0 - muls r4, r0 - ldr r0, =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x27 - bl GetMonData - strb r0, [r7] - adds r0, r4, 0 - movs r1, 0x28 - bl GetMonData - strb r0, [r7, 0x1] - adds r0, r4, 0 - movs r1, 0x29 - bl GetMonData - strb r0, [r7, 0x2] - adds r0, r4, 0 - movs r1, 0x2A - bl GetMonData - strb r0, [r7, 0x3] - adds r0, r4, 0 - movs r1, 0x2B - bl GetMonData - strb r0, [r7, 0x4] - adds r0, r4, 0 - movs r1, 0x2C - bl GetMonData - strb r0, [r7, 0x5] - movs r6, 0x6 - b _0805A5FE - .pool -_0805A408: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x27 - b _0805A5F6 - .pool -_0805A418: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x28 - b _0805A5F6 - .pool -_0805A428: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x29 - b _0805A5F6 - .pool -_0805A438: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2A - b _0805A5F6 - .pool -_0805A448: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2B - b _0805A5F6 - .pool -_0805A458: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2C - b _0805A5F6 - .pool -_0805A468: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0 - b _0805A492 - .pool -_0805A478: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x9 - b _0805A536 - .pool -_0805A488: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x37 -_0805A492: - bl GetMonData - adds r1, r0, 0 - strb r1, [r7] - movs r0, 0xFF - lsls r0, 8 - ands r0, r1 - lsrs r0, 8 - strb r0, [r7, 0x1] - movs r0, 0xFF - lsls r0, 16 - ands r0, r1 - lsrs r0, 16 - strb r0, [r7, 0x2] - lsrs r0, r1, 24 - strb r0, [r7, 0x3] - movs r6, 0x4 - b _0805A5FE - .pool -_0805A4BC: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x38 - b _0805A5F6 - .pool -_0805A4CC: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x39 - b _0805A536 - .pool -_0805A4DC: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x3A - b _0805A536 - .pool -_0805A4EC: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x3B - b _0805A536 - .pool -_0805A4FC: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x3C - b _0805A536 - .pool -_0805A50C: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x3D - b _0805A536 - .pool -_0805A51C: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x3E - b _0805A536 - .pool -_0805A52C: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x3F -_0805A536: - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - strb r0, [r7] - lsrs r0, 8 - strb r0, [r7, 0x1] - movs r6, 0x2 - b _0805A5FE - .pool -_0805A54C: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x16 - b _0805A5F6 - .pool -_0805A55C: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x17 - b _0805A5F6 - .pool -_0805A56C: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x18 - b _0805A5F6 - .pool -_0805A57C: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x21 - b _0805A5F6 - .pool -_0805A58C: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2F - b _0805A5F6 - .pool -_0805A59C: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x30 - b _0805A5F6 - .pool -_0805A5AC: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x32 - b _0805A5F6 - .pool -_0805A5BC: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x33 - b _0805A5F6 - .pool -_0805A5CC: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x34 - b _0805A5F6 - .pool -_0805A5DC: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x35 - b _0805A5F6 - .pool -_0805A5EC: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x36 -_0805A5F6: - bl GetMonData - strb r0, [r7] - movs r6, 0x1 -_0805A5FE: - adds r0, r6, 0 - add sp, 0x90 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end dp01_getattr_by_ch1_for_player_pokemon_ - - thumb_func_start sub_805A614 -sub_805A614: @ 805A614 - push {r4-r7,lr} - sub sp, 0x58 - ldr r2, =gBattlePartyID - ldr r5, =gActiveBank - ldrb r1, [r5] - lsls r0, r1, 1 - adds r0, r2 - ldrh r2, [r0] - movs r0, 0x64 - adds r4, r2, 0 - muls r4, r0 - ldr r3, =gBattleBufferA - lsls r1, 9 - adds r0, r3, 0x1 - adds r0, r1, r0 - ldrb r2, [r0] - ldr r0, =gPlayerParty - adds r0, r2, r0 - adds r6, r4, r0 - mov r0, sp - adds r4, r0, r2 - movs r2, 0 - adds r0, r3, 0x2 - adds r1, r0 - adds r7, r5, 0 - mov r12, r3 - ldrb r1, [r1] - cmp r2, r1 - bcs _0805A66A - adds r3, r0, 0 -_0805A650: - adds r1, r4, r2 - adds r0, r6, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - ldrb r0, [r5] - lsls r0, 9 - adds r0, r3 - ldrb r0, [r0] - cmp r2, r0 - bcc _0805A650 -_0805A66A: - ldrb r0, [r7] - lsls r0, 9 - mov r1, r12 - adds r1, 0x2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x1 - adds r2, r4, 0 - bl EmitDataTransfer - bl PlayerBufferExecCompleted - add sp, 0x58 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805A614 - - thumb_func_start dp01t_02_1_setattr -dp01t_02_1_setattr: @ 805A69C - push {r4,r5,lr} - ldr r1, =gBattleBufferA - ldr r0, =gActiveBank - ldrb r2, [r0] - lsls r0, r2, 9 - adds r1, 0x2 - adds r1, r0, r1 - ldrb r0, [r1] - cmp r0, 0 - bne _0805A6CC - ldr r0, =gBattlePartyID - lsls r1, r2, 1 - adds r1, r0 - ldrb r0, [r1] - bl dp01_setattr_by_ch1_for_player_pokemon - b _0805A6EA - .pool -_0805A6CC: - ldrb r4, [r1] - movs r5, 0 -_0805A6D0: - movs r0, 0x1 - ands r0, r4 - cmp r0, 0 - beq _0805A6DE - adds r0, r5, 0 - bl dp01_setattr_by_ch1_for_player_pokemon -_0805A6DE: - lsrs r4, 1 - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x5 - bls _0805A6D0 -_0805A6EA: - bl PlayerBufferExecCompleted - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end dp01t_02_1_setattr - - thumb_func_start dp01_setattr_by_ch1_for_player_pokemon -dp01_setattr_by_ch1_for_player_pokemon: @ 805A6F4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x34 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 9 - ldr r2, =gBattleBufferA + 3 - adds r3, r0, r2 - adds r6, r3, 0 - subs r1, r2, 0x2 - adds r0, r1 - ldrb r0, [r0] - adds r7, r2, 0 - cmp r0, 0x3B - bls _0805A720 - bl _0805B0BA -_0805A720: - lsls r0, 2 - ldr r1, =_0805A738 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0805A738: - .4byte _0805A828 - .4byte _0805A9C0 - .4byte _0805A9E0 - .4byte _0805AA00 - .4byte _0805AA58 - .4byte _0805AA58 - .4byte _0805AA58 - .4byte _0805AA58 - .4byte _0805AA80 - .4byte _0805AAE4 - .4byte _0805AAE4 - .4byte _0805AAE4 - .4byte _0805AAE4 - .4byte _0805B0BA - .4byte _0805B0BA - .4byte _0805B0BA - .4byte _0805B0BA - .4byte _0805AB14 - .4byte _0805AB34 - .4byte _0805AB54 - .4byte _0805AB74 - .4byte _0805AB94 - .4byte _0805ABB4 - .4byte _0805ABD4 - .4byte _0805ABF4 - .4byte _0805AC14 - .4byte _0805AC34 - .4byte _0805AC54 - .4byte _0805AC74 - .4byte _0805AC94 - .4byte _0805ACB4 - .4byte _0805ACD4 - .4byte _0805AD44 - .4byte _0805AD64 - .4byte _0805AD84 - .4byte _0805ADA4 - .4byte _0805ADC4 - .4byte _0805ADE4 - .4byte _0805AE04 - .4byte _0805AE24 - .4byte _0805AE44 - .4byte _0805AE64 - .4byte _0805AE84 - .4byte _0805AEA4 - .4byte _0805AEC4 - .4byte _0805AEE4 - .4byte _0805AF04 - .4byte _0805AF24 - .4byte _0805AF44 - .4byte _0805AF64 - .4byte _0805AF84 - .4byte _0805AFA4 - .4byte _0805AFC4 - .4byte _0805AFE4 - .4byte _0805B004 - .4byte _0805B024 - .4byte _0805B044 - .4byte _0805B064 - .4byte _0805B084 - .4byte _0805B0A4 -_0805A828: - movs r0, 0x64 - adds r4, r5, 0 - muls r4, r0 - ldr r0, =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0xB - adds r2, r6, 0 - bl SetMonData - adds r2, r6, 0 - adds r2, 0x2E - adds r0, r4, 0 - movs r1, 0xC - bl SetMonData - movs r0, 0 - mov r8, r0 - movs r0, 0x3B - adds r0, r6 - mov r10, r0 - adds r0, r6, 0 - adds r0, 0x2B - str r0, [sp, 0x20] - adds r0, 0x19 - str r0, [sp, 0x28] - adds r0, 0x4 - str r0, [sp, 0x2C] - adds r0, 0x4 - str r0, [sp, 0x30] - subs r0, 0x22 - str r0, [sp, 0x1C] - subs r0, 0x2 - str r0, [sp, 0x18] - adds r0, 0x4 - str r0, [sp, 0x24] - adds r0, r6, 0x2 - str r0, [sp, 0x4] - adds r0, r6, 0x4 - str r0, [sp, 0x8] - adds r0, r6, 0x6 - str r0, [sp, 0xC] - adds r0, 0x2 - str r0, [sp, 0x10] - adds r0, 0x2 - str r0, [sp, 0x14] - mov r9, r4 - adds r7, r6, 0 - adds r7, 0x24 - adds r4, r6, 0 - adds r4, 0xC -_0805A88E: - mov r1, r8 - adds r1, 0xD - mov r0, r9 - adds r2, r4, 0 - bl SetMonData - mov r1, r8 - adds r1, 0x11 - mov r0, r9 - adds r2, r7, 0 - bl SetMonData - adds r7, 0x1 - adds r4, 0x2 - movs r0, 0x1 - add r8, r0 - mov r0, r8 - cmp r0, 0x3 - ble _0805A88E - movs r0, 0x64 - adds r4, r5, 0 - muls r4, r0 - ldr r0, =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x15 - mov r2, r10 - bl SetMonData - adds r0, r4, 0 - movs r1, 0x20 - ldr r2, [sp, 0x20] - bl SetMonData - adds r0, r4, 0 - movs r1, 0x19 - ldr r2, [sp, 0x28] - bl SetMonData - ldrb r0, [r6, 0x14] - lsls r0, 27 - lsrs r0, 27 - mov r1, sp - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x27 - mov r2, sp - bl SetMonData - mov r1, sp - ldrh r0, [r6, 0x14] - lsls r0, 22 - lsrs r0, 27 - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x28 - mov r2, sp - bl SetMonData - mov r1, sp - ldrb r0, [r6, 0x15] - lsls r0, 25 - lsrs r0, 27 - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x29 - mov r2, sp - bl SetMonData - mov r1, sp - ldr r0, [r6, 0x14] - lsls r0, 12 - lsrs r0, 27 - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x2A - mov r2, sp - bl SetMonData - mov r1, sp - ldrh r0, [r6, 0x16] - lsls r0, 23 - lsrs r0, 27 - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x2B - mov r2, sp - bl SetMonData - mov r1, sp - ldrb r0, [r6, 0x17] - lsls r0, 26 - lsrs r0, 27 - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x2C - mov r2, sp - bl SetMonData - adds r0, r4, 0 - movs r1, 0 - ldr r2, [sp, 0x2C] - bl SetMonData - adds r0, r4, 0 - movs r1, 0x37 - ldr r2, [sp, 0x30] - bl SetMonData - adds r0, r4, 0 - movs r1, 0x38 - ldr r2, [sp, 0x1C] - bl SetMonData - adds r0, r4, 0 - movs r1, 0x39 - ldr r2, [sp, 0x18] - bl SetMonData - adds r0, r4, 0 - movs r1, 0x3A - ldr r2, [sp, 0x24] - bl SetMonData - adds r0, r4, 0 - movs r1, 0x3B - ldr r2, [sp, 0x4] - bl SetMonData - adds r0, r4, 0 - movs r1, 0x3C - ldr r2, [sp, 0x8] - bl SetMonData - adds r0, r4, 0 - movs r1, 0x3D - ldr r2, [sp, 0xC] - bl SetMonData - adds r0, r4, 0 - movs r1, 0x3E - ldr r2, [sp, 0x10] - bl SetMonData - adds r0, r4, 0 - movs r1, 0x3F - ldr r2, [sp, 0x14] - bl SetMonData - b _0805B0BA - .pool -_0805A9C0: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0xB - bl SetMonData - b _0805B0BA - .pool -_0805A9E0: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0xC - bl SetMonData - b _0805B0BA - .pool -_0805AA00: - movs r0, 0 - mov r8, r0 - movs r0, 0xC - adds r0, r3 - mov r9, r0 - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, =gPlayerParty - adds r7, r1, r0 - adds r6, r3, 0 - adds r6, 0x8 - adds r4, r3, 0 -_0805AA1A: - mov r1, r8 - adds r1, 0xD - adds r0, r7, 0 - adds r2, r4, 0 - bl SetMonData - mov r1, r8 - adds r1, 0x11 - adds r0, r7, 0 - adds r2, r6, 0 - bl SetMonData - adds r6, 0x1 - adds r4, 0x2 - movs r0, 0x1 - add r8, r0 - mov r0, r8 - cmp r0, 0x3 - ble _0805AA1A - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x15 - mov r2, r9 - bl SetMonData - b _0805B0BA - .pool -_0805AA58: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r3, =gBattleBufferA - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r1, r3, 0x1 - adds r1, r2, r1 - ldrb r1, [r1] - adds r1, 0x9 - b _0805AAFC - .pool -_0805AA80: - movs r0, 0x64 - adds r4, r5, 0 - muls r4, r0 - ldr r0, =gPlayerParty - adds r4, r0 - ldr r5, =gActiveBank - ldrb r2, [r5] - lsls r2, 9 - adds r2, r7 - adds r0, r4, 0 - movs r1, 0x11 - bl SetMonData - ldrb r2, [r5] - lsls r2, 9 - adds r0, r7, 0x1 - adds r2, r0 - adds r0, r4, 0 - movs r1, 0x12 - bl SetMonData - ldrb r2, [r5] - lsls r2, 9 - adds r0, r7, 0x2 - adds r2, r0 - adds r0, r4, 0 - movs r1, 0x13 - bl SetMonData - ldrb r2, [r5] - lsls r2, 9 - adds r0, r7, 0x3 - adds r2, r0 - adds r0, r4, 0 - movs r1, 0x14 - bl SetMonData - ldrb r2, [r5] - lsls r2, 9 - adds r0, r7, 0x4 - adds r2, r0 - adds r0, r4, 0 - movs r1, 0x15 - bl SetMonData - b _0805B0BA - .pool -_0805AAE4: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r3, =gBattleBufferA - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r1, r3, 0x1 - adds r1, r2, r1 - ldrb r1, [r1] - adds r1, 0x8 -_0805AAFC: - adds r3, 0x3 - adds r2, r3 - bl SetMonData - b _0805B0BA - .pool -_0805AB14: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x1 - bl SetMonData - b _0805B0BA - .pool -_0805AB34: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x19 - bl SetMonData - b _0805B0BA - .pool -_0805AB54: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x1A - bl SetMonData - b _0805B0BA - .pool -_0805AB74: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x1B - bl SetMonData - b _0805B0BA - .pool -_0805AB94: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x1C - bl SetMonData - b _0805B0BA - .pool -_0805ABB4: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x1D - bl SetMonData - b _0805B0BA - .pool -_0805ABD4: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x1E - bl SetMonData - b _0805B0BA - .pool -_0805ABF4: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x1F - bl SetMonData - b _0805B0BA - .pool -_0805AC14: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x20 - bl SetMonData - b _0805B0BA - .pool -_0805AC34: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x22 - bl SetMonData - b _0805B0BA - .pool -_0805AC54: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x23 - bl SetMonData - b _0805B0BA - .pool -_0805AC74: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x24 - bl SetMonData - b _0805B0BA - .pool -_0805AC94: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x25 - bl SetMonData - b _0805B0BA - .pool -_0805ACB4: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x26 - bl SetMonData - b _0805B0BA - .pool -_0805ACD4: - movs r0, 0x64 - adds r4, r5, 0 - muls r4, r0 - ldr r0, =gPlayerParty - adds r4, r0 - ldr r5, =gActiveBank - ldrb r2, [r5] - lsls r2, 9 - adds r2, r7 - adds r0, r4, 0 - movs r1, 0x27 - bl SetMonData - ldrb r2, [r5] - lsls r2, 9 - adds r0, r7, 0x1 - adds r2, r0 - adds r0, r4, 0 - movs r1, 0x28 - bl SetMonData - ldrb r2, [r5] - lsls r2, 9 - adds r0, r7, 0x2 - adds r2, r0 - adds r0, r4, 0 - movs r1, 0x29 - bl SetMonData - ldrb r2, [r5] - lsls r2, 9 - adds r0, r7, 0x3 - adds r2, r0 - adds r0, r4, 0 - movs r1, 0x2A - bl SetMonData - ldrb r2, [r5] - lsls r2, 9 - adds r0, r7, 0x4 - adds r2, r0 - adds r0, r4, 0 - movs r1, 0x2B - bl SetMonData - ldrb r2, [r5] - lsls r2, 9 - adds r0, r7, 0x5 - adds r2, r0 - adds r0, r4, 0 - b _0805ADF4 - .pool -_0805AD44: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x27 - bl SetMonData - b _0805B0BA - .pool -_0805AD64: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x28 - bl SetMonData - b _0805B0BA - .pool -_0805AD84: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x29 - bl SetMonData - b _0805B0BA - .pool -_0805ADA4: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x2A - bl SetMonData - b _0805B0BA - .pool -_0805ADC4: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x2B - bl SetMonData - b _0805B0BA - .pool -_0805ADE4: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 -_0805ADF4: - movs r1, 0x2C - bl SetMonData - b _0805B0BA - .pool -_0805AE04: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0 - bl SetMonData - b _0805B0BA - .pool -_0805AE24: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x9 - bl SetMonData - b _0805B0BA - .pool -_0805AE44: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x37 - bl SetMonData - b _0805B0BA - .pool -_0805AE64: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x38 - bl SetMonData - b _0805B0BA - .pool -_0805AE84: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x39 - bl SetMonData - b _0805B0BA - .pool -_0805AEA4: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x3A - bl SetMonData - b _0805B0BA - .pool -_0805AEC4: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x3B - bl SetMonData - b _0805B0BA - .pool -_0805AEE4: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x3C - bl SetMonData - b _0805B0BA - .pool -_0805AF04: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x3D - bl SetMonData - b _0805B0BA - .pool -_0805AF24: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x3E - bl SetMonData - b _0805B0BA - .pool -_0805AF44: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x3F - bl SetMonData - b _0805B0BA - .pool -_0805AF64: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x16 - bl SetMonData - b _0805B0BA - .pool -_0805AF84: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x17 - bl SetMonData - b _0805B0BA - .pool -_0805AFA4: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x18 - bl SetMonData - b _0805B0BA - .pool -_0805AFC4: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x21 - bl SetMonData - b _0805B0BA - .pool -_0805AFE4: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x2F - bl SetMonData - b _0805B0BA - .pool -_0805B004: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x30 - bl SetMonData - b _0805B0BA - .pool -_0805B024: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x32 - bl SetMonData - b _0805B0BA - .pool -_0805B044: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x33 - bl SetMonData - b _0805B0BA - .pool -_0805B064: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x34 - bl SetMonData - b _0805B0BA - .pool -_0805B084: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x35 - bl SetMonData - b _0805B0BA - .pool -_0805B0A4: - movs r0, 0x64 - muls r0, r5 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gActiveBank - ldrb r2, [r1] - lsls r2, 9 - adds r2, r7 - movs r1, 0x36 - bl SetMonData -_0805B0BA: - ldr r2, =gBattlePartyID - ldr r0, =gActiveBank - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r2 - ldrh r2, [r0] - movs r0, 0x64 - muls r0, r2 - ldr r2, =gPlayerParty - adds r0, r2 - bl sub_805E990 - add sp, 0x34 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_setattr_by_ch1_for_player_pokemon - - thumb_func_start sub_805B0F0 -sub_805B0F0: @ 805B0F0 - push {r4-r7,lr} - ldr r1, =gBattlePartyID - ldr r7, =gActiveBank - ldrb r2, [r7] - lsls r0, r2, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - adds r3, r1, 0 - muls r3, r0 - ldr r4, =gBattleBufferA - lsls r2, 9 - adds r0, r4, 0x1 - adds r0, r2, r0 - ldrb r0, [r0] - ldr r1, =gPlayerParty - adds r0, r1 - adds r5, r3, r0 - movs r3, 0 - adds r0, r4, 0x2 - adds r2, r0 - ldrb r2, [r2] - cmp r3, r2 - bcs _0805B148 - adds r6, r4, 0 - adds r2, r7, 0 - adds r4, r0, 0 -_0805B126: - adds r1, r5, r3 - ldrb r0, [r2] - lsls r0, 9 - adds r0, 0x3 - adds r0, r3, r0 - adds r0, r6 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - ldrb r0, [r2] - lsls r0, 9 - adds r0, r4 - ldrb r0, [r0] - cmp r3, r0 - bcc _0805B126 -_0805B148: - bl PlayerBufferExecCompleted - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805B0F0 - - thumb_func_start sub_805B164 -sub_805B164: @ 805B164 - push {r4,lr} - ldr r2, =gBattlePartyID - ldr r4, =gActiveBank - ldrb r1, [r4] - lsls r0, r1, 1 - adds r0, r2 - ldrh r2, [r0] - movs r0, 0x64 - muls r0, r2 - ldr r2, =gPlayerParty - adds r0, r2 - bl BattleLoadPlayerMonSpriteGfx - ldr r2, =gSprites - ldr r0, =gBankSpriteIds - ldrb r3, [r4] - adds r0, r3, r0 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - lsls r3, 4 - ldrb r2, [r1, 0x5] - movs r0, 0xF - ands r0, r2 - orrs r0, r3 - strb r0, [r1, 0x5] - ldr r1, =gBattleBankFunc - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, =bx_0802E404 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805B164 - - thumb_func_start sub_805B1CC -sub_805B1CC: @ 805B1CC - push {r4-r6,lr} - ldr r5, =gActiveBank - ldrb r0, [r5] - ldr r4, =gBattleBufferA - lsls r1, r0, 9 - adds r6, r4, 0x2 - adds r1, r6 - ldrb r1, [r1] - bl sub_805EF84 - ldr r2, =gBattlePartyID - ldrb r0, [r5] - lsls r1, r0, 1 - adds r1, r2 - lsls r0, 9 - adds r4, 0x1 - adds r0, r4 - ldrb r0, [r0] - movs r4, 0 - strh r0, [r1] - ldrb r1, [r5] - lsls r0, r1, 1 - adds r0, r2 - ldrh r2, [r0] - movs r0, 0x64 - muls r0, r2 - ldr r2, =gPlayerParty - adds r0, r2 - bl BattleLoadPlayerMonSpriteGfx - ldr r1, =gActionSelectionCursor - ldrb r0, [r5] - adds r0, r1 - strb r4, [r0] - ldr r1, =gMoveSelectionCursor - ldrb r0, [r5] - adds r0, r1 - strb r4, [r0] - ldrb r0, [r5] - lsls r1, r0, 9 - adds r1, r6 - ldrb r1, [r1] - bl sub_805B258 - ldr r1, =gBattleBankFunc - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_805902C - str r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805B1CC - - thumb_func_start sub_805B258 -sub_805B258: @ 805B258 - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - adds r6, r0, 0 - lsls r6, 24 - lsrs r6, 24 - lsls r1, 24 - lsrs r1, 24 - adds r0, r6, 0 - bl sub_805EF84 - ldr r0, =gBattlePartyID - lsls r2, r6, 1 - adds r2, r0 - ldr r0, =gBattleBufferA - lsls r1, r6, 9 - adds r0, 0x1 - adds r1, r0 - ldrb r0, [r1] - strh r0, [r2] - ldrh r1, [r2] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - mov r8, r0 - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - ldr r0, =sub_805D714 - bl CreateInvisibleSpriteWithCallback - ldr r1, =gUnknown_03005D7C - mov r9, r1 - add r9, r6 - mov r1, r9 - strb r0, [r1] - adds r0, r6, 0 - bl GetBankIdentity - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - mov r0, r8 - bl sub_806A068 - ldr r0, =gUnknown_0202499C - mov r10, r0 - adds r0, r6, 0 - movs r1, 0x2 - bl sub_80A5C6C - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - adds r0, r6, 0 - bl sub_80A6138 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - bl sub_80A82E4 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - mov r0, r10 - adds r1, r5, 0 - adds r2, r4, 0 - bl CreateSprite - ldr r4, =gBankSpriteIds - adds r4, r6, r4 - strb r0, [r4] - ldr r5, =gSprites - mov r0, r9 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrb r1, [r4] - strh r1, [r0, 0x30] - mov r0, r9 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - strh r6, [r0, 0x32] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - strh r6, [r0, 0x2E] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - mov r1, r8 - strh r1, [r0, 0x32] - ldrb r0, [r4] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - lsls r3, r6, 4 - ldrb r2, [r1, 0x5] - movs r0, 0xF - ands r0, r2 - orrs r0, r3 - strb r0, [r1, 0x5] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r1, =gBattleMonForms - adds r6, r1 - ldrb r1, [r6] - bl StartSpriteAnim - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r5, 0 - adds r1, 0x1C - adds r0, r1 - ldr r1, =SpriteCallbackDummy - str r1, [r0] - movs r0, 0 - movs r1, 0xFF - bl sub_80753E8 - mov r1, r9 - ldrb r2, [r1] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r5 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r1, 0x2E] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805B258 - - thumb_func_start sub_805B3D4 -sub_805B3D4: @ 805B3D4 - push {r4-r6,lr} - ldr r1, =gBattleBufferA - ldr r6, =gActiveBank - ldrb r2, [r6] - lsls r0, r2, 9 - adds r1, 0x1 - adds r0, r1 - ldrb r3, [r0] - cmp r3, 0 - bne _0805B41C - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r1, [r0, 0x4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - strb r3, [r0, 0x4] - ldr r1, =gBattleBankFunc - ldrb r0, [r6] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_805B464 - str r1, [r0] - b _0805B452 - .pool -_0805B41C: - ldr r5, =gBankSpriteIds - adds r0, r2, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r4, =gSprites - adds r0, r4 - bl FreeSpriteOamMatrix - ldrb r0, [r6] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl DestroySprite - ldr r1, =gHealthBoxesIds - ldrb r0, [r6] - adds r0, r1 - ldrb r0, [r0] - bl SetHealthboxSpriteInvisible - bl PlayerBufferExecCompleted -_0805B452: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805B3D4 - - thumb_func_start sub_805B464 -sub_805B464: @ 805B464 - push {r4-r6,lr} - ldr r6, =gBattleSpritesDataPtr - ldr r4, [r6] - ldr r5, =gActiveBank - ldrb r2, [r5] - ldr r1, [r4, 0x4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r3, r0, r1 - ldrb r0, [r3, 0x4] - cmp r0, 0 - beq _0805B48C - cmp r0, 0x1 - beq _0805B4BA - b _0805B4E2 - .pool -_0805B48C: - ldr r1, [r4] - lsls r0, r2, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0805B4A6 - adds r0, r2, 0 - adds r1, r2, 0 - movs r3, 0x5 - bl move_anim_start_t4 -_0805B4A6: - ldr r0, [r6] - ldrb r1, [r5] - ldr r2, [r0, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0x1 - strb r1, [r0, 0x4] - b _0805B4E2 -_0805B4BA: - ldrb r1, [r3] - movs r0, 0x40 - ands r0, r1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _0805B4E2 - strb r0, [r3, 0x4] - ldrb r2, [r5] - adds r0, r2, 0 - adds r1, r2, 0 - movs r3, 0x1 - bl move_anim_start_t4 - ldr r1, =gBattleBankFunc - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_8059744 - str r1, [r0] -_0805B4E2: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805B464 - - thumb_func_start sub_805B4F0 -sub_805B4F0: @ 805B4F0 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0805B5B4 - bl GetMultiplayerId - ldr r5, =gLinkPlayers - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r5 - movs r4, 0xFF - ldrb r0, [r1] - cmp r0, 0x4 - beq _0805B538 - bl GetMultiplayerId - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r5 - ldrh r1, [r1] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0x5 - bne _0805B558 -_0805B538: - bl GetMultiplayerId - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r5 - ldrb r0, [r1, 0x13] - adds r4, r0, 0x2 - b _0805B5BA - .pool -_0805B558: - bl GetMultiplayerId - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r5 - ldrh r1, [r1] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0x2 - beq _0805B58A - bl GetMultiplayerId - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r5 - ldrh r0, [r1] - ands r4, r0 - cmp r4, 0x1 - bne _0805B5A0 -_0805B58A: - bl GetMultiplayerId - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r5 - ldrb r0, [r1, 0x13] - adds r4, r0, 0x4 - b _0805B5BA -_0805B5A0: - bl GetMultiplayerId - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r5 - ldrb r4, [r1, 0x13] - b _0805B5BA -_0805B5B4: - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r4, [r0, 0x8] -_0805B5BA: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r2, 0x40 - ands r1, r2 - adds r5, r0, 0 - cmp r1, 0 - beq _0805B63C - ldr r0, =gActiveBank - ldrb r0, [r0] - bl GetBankIdentity - movs r1, 0x2 - ands r1, r0 - movs r0, 0x20 - mov r9, r0 - cmp r1, 0 - beq _0805B5E0 - movs r1, 0x5A - mov r9, r1 -_0805B5E0: - ldr r0, [r5] - movs r1, 0x80 - lsls r1, 15 - ands r0, r1 - cmp r0, 0 - beq _0805B618 - ldr r0, =gPartnerTrainerId - ldrh r1, [r0] - ldr r0, =0x00000c03 - cmp r1, r0 - beq _0805B618 - movs r0, 0x5A - mov r9, r0 - ldr r1, =gTrainerFrontPicCoords - b _0805B642 - .pool -_0805B618: - ldr r1, =gTrainerBackPicCoords - lsls r0, r4, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x8 - subs r0, r1 - lsls r0, 18 - movs r1, 0xA0 - lsls r1, 15 - adds r0, r1 - lsrs r7, r0, 16 - ldr r5, =gBattleTypeFlags - b _0805B656 - .pool -_0805B63C: - movs r0, 0x50 - mov r9, r0 - ldr r1, =gTrainerBackPicCoords -_0805B642: - lsls r0, r4, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x8 - subs r0, r1 - lsls r0, 18 - movs r1, 0xA0 - lsls r1, 15 - adds r0, r1 - lsrs r7, r0, 16 -_0805B656: - ldr r0, [r5] - movs r1, 0x80 - lsls r1, 15 - ands r0, r1 - cmp r0, 0 - bne _0805B664 - b _0805B794 -_0805B664: - ldr r0, =gPartnerTrainerId - ldrh r1, [r0] - ldr r0, =0x00000c03 - cmp r1, r0 - bne _0805B670 - b _0805B794 -_0805B670: - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x8] - bl sub_806F000 - lsls r0, 16 - lsrs r4, r0, 16 - adds r5, r4, 0 - ldr r6, =gActiveBank - ldrb r1, [r6] - adds r0, r5, 0 - bl sub_805DF38 - ldrb r0, [r6] - bl GetBankIdentity - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl sub_806A1C0 - ldr r0, =gUnknown_0202499C - mov r8, r0 - lsls r4, r7, 16 - asrs r4, 16 - ldrb r0, [r6] - bl sub_80A82E4 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - mov r0, r8 - mov r1, r9 - adds r2, r4, 0 - bl CreateSprite - ldr r4, =gBankSpriteIds - ldrb r1, [r6] - adds r1, r4 - strb r0, [r1] - ldr r0, =gTrainerFrontPicPaletteTable - lsls r5, 3 - adds r5, r0 - ldrh r0, [r5, 0x4] - bl IndexOfSpritePaletteTag - ldr r5, =gSprites - ldrb r1, [r6] - adds r1, r4 - ldrb r1, [r1] - lsls r2, r1, 4 - adds r2, r1 - lsls r2, 2 - adds r2, r5 - lsls r0, 4 - ldrb r3, [r2, 0x5] - movs r1, 0xF - ands r1, r3 - orrs r1, r0 - strb r1, [r2, 0x5] - ldrb r0, [r6] - adds r0, r4 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - movs r1, 0xF0 - strh r1, [r0, 0x24] - ldrb r0, [r6] - adds r0, r4 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - movs r1, 0x30 - strh r1, [r0, 0x26] - ldrb r0, [r6] - adds r0, r4 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r1, =0x0000fffe - strh r1, [r0, 0x2E] - ldrb r0, [r6] - adds r0, r4 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r5, 0 - adds r1, 0x1C - adds r0, r1 - ldr r1, =sub_805D7AC - str r1, [r0] - ldrb r0, [r6] - adds r0, r4 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - ldrb r2, [r1, 0x1] - movs r0, 0x4 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x1] - ldrb r0, [r6] - adds r0, r4 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - adds r0, 0x3F - ldrb r1, [r0] - movs r2, 0x1 - orrs r1, r2 - strb r1, [r0] - b _0805B82A - .pool -_0805B794: - ldr r5, =gActiveBank - ldrb r1, [r5] - adds r0, r4, 0 - bl LoadBackTrainerBankSpriteGfx - ldrb r0, [r5] - bl GetBankIdentity - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_806A12C - ldr r6, =gUnknown_0202499C - mov r8, r9 - lsls r4, r7, 16 - asrs r4, 16 - ldrb r0, [r5] - bl sub_80A82E4 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r6, 0 - mov r1, r8 - adds r2, r4, 0 - bl CreateSprite - ldr r6, =gBankSpriteIds - ldrb r1, [r5] - adds r1, r6 - strb r0, [r1] - ldr r4, =gSprites - ldrb r3, [r5] - adds r0, r3, r6 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - lsls r3, 4 - ldrb r2, [r1, 0x5] - movs r0, 0xF - ands r0, r2 - orrs r0, r3 - strb r0, [r1, 0x5] - ldrb r0, [r5] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0xF0 - strh r1, [r0, 0x24] - ldrb r0, [r5] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldr r1, =0x0000fffe - strh r1, [r0, 0x2E] - ldrb r0, [r5] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r4, 0x1C - adds r0, r4 - ldr r1, =sub_805D7AC - str r1, [r0] -_0805B82A: - ldr r1, =gBattleBankFunc - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_8058844 - str r1, [r0] - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805B4F0 - - thumb_func_start dp01t_08_1_8032428 -dp01t_08_1_8032428: @ 805B864 - push {r4-r6,lr} - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0805B920 - bl GetMultiplayerId - ldr r5, =gLinkPlayers - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r5 - movs r4, 0xFF - ldrb r0, [r1] - cmp r0, 0x4 - beq _0805B8A6 - bl GetMultiplayerId - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r5 - ldrh r1, [r1] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0x5 - bne _0805B8C4 -_0805B8A6: - bl GetMultiplayerId - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r5 - ldrb r0, [r1, 0x13] - adds r4, r0, 0x2 - b _0805B926 - .pool -_0805B8C4: - bl GetMultiplayerId - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r5 - ldrh r1, [r1] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0x2 - beq _0805B8F6 - bl GetMultiplayerId - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r5 - ldrh r0, [r1] - ands r4, r0 - cmp r4, 0x1 - bne _0805B90C -_0805B8F6: - bl GetMultiplayerId - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r5 - ldrb r0, [r1, 0x13] - adds r4, r0, 0x4 - b _0805B926 -_0805B90C: - bl GetMultiplayerId - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r5 - ldrb r4, [r1, 0x13] - b _0805B926 -_0805B920: - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r4, [r0, 0x8] -_0805B926: - ldr r5, =gActiveBank - ldrb r1, [r5] - adds r0, r4, 0 - bl LoadBackTrainerBankSpriteGfx - ldrb r0, [r5] - bl GetBankIdentity - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_806A12C - ldr r0, =gUnknown_0202499C - ldr r1, =gTrainerBackPicCoords - lsls r4, 2 - adds r4, r1 - ldrb r1, [r4] - movs r2, 0x8 - subs r2, r1 - lsls r2, 18 - movs r1, 0xA0 - lsls r1, 15 - adds r2, r1 - asrs r2, 16 - movs r1, 0x50 - movs r3, 0x1E - bl CreateSprite - ldr r6, =gBankSpriteIds - ldrb r1, [r5] - adds r1, r6 - strb r0, [r1] - ldr r4, =gSprites - ldrb r3, [r5] - adds r0, r3, r6 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - lsls r3, 4 - ldrb r2, [r1, 0x5] - movs r0, 0xF - ands r0, r2 - orrs r0, r3 - strb r0, [r1, 0x5] - ldrb r0, [r5] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldr r1, =0x0000ffa0 - strh r1, [r0, 0x24] - ldrb r0, [r5] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0x2 - strh r1, [r0, 0x2E] - ldrb r0, [r5] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r4, 0x1C - adds r0, r4 - ldr r1, =sub_805D7AC - str r1, [r0] - ldr r1, =gBattleBankFunc - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_805887C - str r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end dp01t_08_1_8032428 - - thumb_func_start sub_805B9F8 -sub_805B9F8: @ 805B9F8 - push {r4-r6,lr} - ldr r5, =gBankSpriteIds - ldr r6, =gActiveBank - ldrb r0, [r6] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r4, =gSprites - adds r0, r4 - bl oamt_add_pos2_onto_pos1 - ldrb r0, [r6] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0x32 - strh r1, [r0, 0x2E] - ldrb r0, [r6] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldr r1, =0x0000ffd8 - strh r1, [r0, 0x32] - ldrb r0, [r6] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x22] - strh r1, [r0, 0x36] - ldrb r0, [r6] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r4, 0 - adds r1, 0x1C - adds r0, r1 - ldr r1, =sub_80A6EEC - str r1, [r0] - ldrb r0, [r6] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldr r1, =SpriteCallbackDummy - bl StoreSpriteCallbackInData6 - ldrb r0, [r6] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0x1 - bl StartSpriteAnim - ldr r1, =gBattleBankFunc - ldrb r0, [r6] - lsls r0, 2 - adds r0, r1 - ldr r1, =bx_802F7A0 - str r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805B9F8 - - thumb_func_start sub_805BAB8 -sub_805BAB8: @ 805BAB8 - push {r4-r6,lr} - ldr r6, =gBattleSpritesDataPtr - ldr r4, [r6] - ldr r5, =gActiveBank - ldrb r2, [r5] - ldr r0, [r4, 0x4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 2 - adds r3, r1, r0 - ldrb r0, [r3, 0x4] - cmp r0, 0 - bne _0805BB0C - ldr r1, [r4] - lsls r0, r2, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0805BAEC - adds r0, r2, 0 - adds r1, r2, 0 - movs r3, 0x5 - bl move_anim_start_t4 -_0805BAEC: - ldr r0, [r6] - ldrb r1, [r5] - ldr r2, [r0, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x4] - adds r1, 0x1 - strb r1, [r0, 0x4] - b _0805BB82 - .pool -_0805BB0C: - ldrb r1, [r3] - movs r0, 0x40 - ands r0, r1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _0805BB82 - strb r4, [r3, 0x4] - ldr r2, =gBattlePartyID - ldrb r1, [r5] - lsls r0, r1, 1 - adds r0, r2 - ldrh r2, [r0] - movs r0, 0x64 - muls r0, r2 - ldr r2, =gPlayerParty - adds r0, r2 - bl sub_805E990 - movs r1, 0x40 - negs r1, r1 - movs r0, 0x10 - bl PlaySE12WithPanning - ldr r2, =gSprites - ldr r3, =gBankSpriteIds - ldrb r0, [r5] - adds r0, r3 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - strh r4, [r0, 0x30] - ldrb r0, [r5] - adds r0, r3 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0x5 - strh r1, [r0, 0x32] - ldrb r0, [r5] - adds r0, r3 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, =sub_8039C00 - str r1, [r0] - ldr r1, =gBattleBankFunc - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_80596A8 - str r1, [r0] -_0805BB82: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805BAB8 - - thumb_func_start sub_805BBA4 -sub_805BBA4: @ 805BBA4 - push {lr} - sub sp, 0x4 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r1, 0x2 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - bl PlayerBufferExecCompleted - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_805BBA4 - - thumb_func_start sub_805BBC4 -sub_805BBC4: @ 805BBC4 - push {r4,r5,lr} - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r1, [r0, 0x8] - movs r0, 0x4 - strb r0, [r1, 0x8] - ldr r1, =gDoingBattleAnim - movs r0, 0x1 - strb r0, [r1] - ldr r5, =gActiveBank - ldrb r4, [r5] - movs r0, 0x1 - bl GetBankByIdentity - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r4, 0 - movs r3, 0x3 - bl move_anim_start_t4 - ldr r1, =gBattleBankFunc - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, =bx_wait_t1 - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805BBC4 - - thumb_func_start sub_805BC18 -sub_805BC18: @ 805BC18 - push {r4,r5,lr} - ldr r1, =gBattleBufferA - ldr r5, =gActiveBank - ldrb r0, [r5] - lsls r0, 9 - adds r1, 0x1 - adds r0, r1 - ldrb r1, [r0] - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r0, [r0, 0x8] - strb r1, [r0, 0x8] - ldr r1, =gDoingBattleAnim - movs r0, 0x1 - strb r0, [r1] - ldrb r4, [r5] - movs r0, 0x1 - bl GetBankByIdentity - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r4, 0 - movs r3, 0x3 - bl move_anim_start_t4 - ldr r1, =gBattleBankFunc - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, =bx_wait_t1 - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805BC18 - - thumb_func_start sub_805BC78 -sub_805BC78: @ 805BC78 - push {lr} - ldr r1, =gBattleBufferA - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 9 - adds r1, 0x1 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0805BC96 -_0805BC8C: - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _0805BC8C -_0805BC96: - bl PlayerBufferExecCompleted - pop {r0} - bx r0 - .pool - thumb_func_end sub_805BC78 - - thumb_func_start dp01t_0F_1_move_anim -dp01t_0F_1_move_anim: @ 805BCA8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r5, =gActiveBank - ldrb r0, [r5] - bl mplay_80342A4 - lsls r0, 24 - cmp r0, 0 - beq _0805BCBE - b _0805BDE4 -_0805BCBE: - ldr r0, =gBattleBufferA - mov r12, r0 - ldrb r1, [r5] - lsls r1, 9 - adds r0, 0x1 - adds r0, r1, r0 - ldrb r6, [r0] - mov r0, r12 - adds r0, 0x2 - adds r0, r1, r0 - ldrb r0, [r0] - lsls r0, 8 - orrs r6, r0 - ldr r0, =gAnimMoveTurn - mov r8, r0 - mov r0, r12 - adds r0, 0x3 - adds r1, r0 - ldrb r0, [r1] - mov r1, r8 - strb r0, [r1] - ldr r3, =gAnimMovePower - ldrb r1, [r5] - lsls r1, 9 - mov r0, r12 - adds r0, 0x4 - adds r0, r1, r0 - ldrb r2, [r0] - mov r0, r12 - adds r0, 0x5 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 8 - orrs r2, r0 - strh r2, [r3] - ldr r3, =gAnimMoveDmg - ldrb r1, [r5] - lsls r1, 9 - mov r0, r12 - adds r0, 0x6 - adds r0, r1, r0 - ldrb r2, [r0] - mov r0, r12 - adds r0, 0x7 - adds r0, r1, r0 - ldrb r0, [r0] - lsls r0, 8 - orrs r2, r0 - mov r0, r12 - adds r0, 0x8 - adds r0, r1, r0 - ldrb r0, [r0] - lsls r0, 16 - orrs r2, r0 - mov r0, r12 - adds r0, 0x9 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 24 - orrs r2, r0 - str r2, [r3] - ldr r2, =gAnimFriendship - ldrb r0, [r5] - lsls r0, 9 - mov r1, r12 - adds r1, 0xA - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - ldr r4, =gWeatherMoveAnim - ldrb r1, [r5] - lsls r1, 9 - mov r0, r12 - adds r0, 0xC - adds r0, r1, r0 - ldrb r2, [r0] - mov r0, r12 - adds r0, 0xD - adds r1, r0 - ldrb r0, [r1] - lsls r0, 8 - orrs r2, r0 - strh r2, [r4] - ldr r7, =gAnimDisableStructPtr - ldrb r1, [r5] - lsls r1, 9 - mov r0, r12 - adds r0, 0x10 - adds r1, r0 - str r1, [r7] - ldr r2, =gUnknown_020244BC - ldrb r0, [r5] - lsls r0, 2 - adds r0, r2 - ldr r1, [r1] - str r1, [r0] - mov r0, r8 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_805DB8C - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0 - beq _0805BDBC - bl PlayerBufferExecCompleted - b _0805BDE4 - .pool -_0805BDBC: - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldrb r1, [r5] - ldr r2, [r0, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - strb r3, [r0, 0x4] - ldr r1, =gBattleBankFunc - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, =bx_move_anim_1 - str r1, [r0] - ldrh r1, [r4] - ldr r2, [r7] - adds r0, r6, 0 - bl sub_817E0FC -_0805BDE4: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end dp01t_0F_1_move_anim - - thumb_func_start bx_move_anim_1 -bx_move_anim_1: @ 805BDFC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r2, =gBattleBufferA - ldr r6, =gActiveBank - ldrb r3, [r6] - lsls r1, r3, 9 - adds r0, r2, 0x1 - mov r10, r0 - adds r0, r1, r0 - ldrb r4, [r0] - adds r5, r2, 0x2 - mov r9, r5 - adds r0, r1, r5 - ldrb r0, [r0] - lsls r0, 8 - orrs r4, r0 - adds r2, 0xB - adds r1, r2 - ldrb r1, [r1] - mov r8, r1 - ldr r7, =gBattleSpritesDataPtr - ldr r5, [r7] - ldr r1, [r5, 0x4] - lsls r0, r3, 1 - adds r0, r3 - lsls r0, 2 - adds r0, r1 - ldrb r2, [r0, 0x4] - cmp r2, 0x1 - beq _0805BE94 - cmp r2, 0x1 - bgt _0805BE54 - cmp r2, 0 - beq _0805BE5E - b _0805BF70 - .pool -_0805BE54: - cmp r2, 0x2 - beq _0805BEBE - cmp r2, 0x3 - beq _0805BF34 - b _0805BF70 -_0805BE5E: - ldr r1, [r5] - lsls r0, r3, 2 - adds r1, r0, r1 - ldrb r2, [r1] - movs r0, 0xC - ands r0, r2 - cmp r0, 0x4 - bne _0805BE80 - movs r0, 0x8 - orrs r0, r2 - strb r0, [r1] - ldrb r2, [r6] - adds r0, r2, 0 - adds r1, r2, 0 - movs r3, 0x5 - bl move_anim_start_t4 -_0805BE80: - ldr r0, [r7] - ldrb r1, [r6] - ldr r2, [r0, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0x1 - strb r1, [r0, 0x4] - b _0805BF70 -_0805BE94: - ldrb r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _0805BF70 - movs r0, 0 - bl sub_805EB9C - adds r0, r4, 0 - bl DoMoveAnim - ldr r0, [r7] - ldrb r1, [r6] - ldr r2, [r0, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0x2 - strb r1, [r0, 0x4] - b _0805BF70 -_0805BEBE: - ldr r0, =gAnimScriptCallback - ldr r0, [r0] - bl _call_via_r0 - ldr r0, =gAnimScriptActive - ldrb r0, [r0] - cmp r0, 0 - bne _0805BF70 - movs r0, 0x1 - bl sub_805EB9C - ldr r0, [r7] - ldrb r2, [r6] - ldr r1, [r0] - lsls r0, r2, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0805BF0C - mov r0, r8 - cmp r0, 0x1 - bhi _0805BF0C - adds r0, r2, 0 - adds r1, r2, 0 - movs r3, 0x6 - bl move_anim_start_t4 - ldr r0, [r7] - ldrb r1, [r6] - ldr r0, [r0] - lsls r1, 2 - adds r1, r0 - ldrb r2, [r1] - movs r0, 0x9 - negs r0, r0 - ands r0, r2 - strb r0, [r1] -_0805BF0C: - ldr r0, =gBattleSpritesDataPtr - ldr r2, [r0] - ldr r0, =gActiveBank - ldrb r1, [r0] - ldr r2, [r2, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0x3 - strb r1, [r0, 0x4] - b _0805BF70 - .pool -_0805BF34: - ldrb r1, [r0] - movs r0, 0x40 - ands r0, r1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _0805BF70 - bl sub_805E394 - ldrb r0, [r6] - lsls r2, r0, 9 - mov r3, r10 - adds r1, r2, r3 - ldrb r1, [r1] - add r2, r9 - ldrb r2, [r2] - lsls r2, 8 - orrs r1, r2 - bl sub_805E94C - ldr r0, [r7] - ldrb r1, [r6] - ldr r2, [r0, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - strb r4, [r0, 0x4] - bl PlayerBufferExecCompleted -_0805BF70: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end bx_move_anim_1 - - thumb_func_start sub_805BF80 -sub_805BF80: @ 805BF80 - push {r4,r5,lr} - ldr r0, =gBattle_BG0_X - movs r1, 0 - strh r1, [r0] - ldr r0, =gBattle_BG0_Y - strh r1, [r0] - ldr r5, =gActiveBank - ldrb r4, [r5] - lsls r4, 9 - ldr r0, =gBattleBufferA + 2 - adds r4, r0 - ldrh r0, [r4] - bl BufferStringBattle - ldr r0, =gDisplayedStringBattle - movs r1, 0 - bl sub_814F9EC - ldr r1, =gBattleBankFunc - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_80597B4 - str r1, [r0] - ldrh r0, [r4] - bl sub_817C95C - ldrb r0, [r5] - ldrh r1, [r4] - bl sub_81A57E4 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805BF80 - - thumb_func_start dp01t_11_1_message_for_player_only -dp01t_11_1_message_for_player_only: @ 805BFE0 - push {lr} - ldr r0, =gActiveBank - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0805BFFC - bl sub_805BF80 - b _0805C000 - .pool -_0805BFFC: - bl PlayerBufferExecCompleted -_0805C000: - pop {r0} - bx r0 - thumb_func_end dp01t_11_1_message_for_player_only - - thumb_func_start sub_805C004 -sub_805C004: @ 805C004 - push {lr} - bl IsDma3ManagerBusyWithBgCopy - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805C02A - ldr r0, =gBattle_BG0_X - strh r1, [r0] - ldr r1, =gBattle_BG0_Y - movs r0, 0xA0 - strh r0, [r1] - ldr r1, =gBattleBankFunc - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_8057588 - str r1, [r0] -_0805C02A: - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C004 - - thumb_func_start dp01t_12_6_battle_menu -dp01t_12_6_battle_menu: @ 805C044 - push {r4,lr} - ldr r1, =gBattleBankFunc - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_805C004 - str r1, [r0] - bl sub_817F2A8 - ldr r0, =gText_BattleMenu - movs r1, 0x2 - bl sub_814F9EC - movs r4, 0 -_0805C062: - lsls r0, r4, 24 - lsrs r0, 24 - bl ActionSelectionDestroyCursorAt - adds r4, 0x1 - cmp r4, 0x3 - ble _0805C062 - ldr r1, =gActionSelectionCursor - ldr r0, =gActiveBank - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - movs r1, 0 - bl ActionSelectionCreateCursorAt - ldr r0, =gText_WhatWillPkmnDo - bl BattleStringExpandPlaceholdersToDisplayedString - ldr r0, =gDisplayedStringBattle - movs r1, 0x1 - bl sub_814F9EC - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end dp01t_12_6_battle_menu - - thumb_func_start sub_805C0B0 -sub_805C0B0: @ 805C0B0 - push {r4,lr} - sub sp, 0x4 - ldr r4, =gActiveBank - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _0805C108 - str r0, [sp] - movs r0, 0x18 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl sub_8056A3C - ldr r0, =gText_BattleYesNoChoice - movs r1, 0xC - bl sub_814F9EC - ldr r1, =gUnknown_03005D74 - movs r0, 0x1 - strb r0, [r1] - movs r0, 0x1 - bl BattleCreateCursorAt - ldr r1, =gBattleBankFunc - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_80599D4 - str r1, [r0] - b _0805C10C - .pool -_0805C108: - bl PlayerBufferExecCompleted -_0805C10C: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_805C0B0 - - thumb_func_start sub_805C114 -sub_805C114: @ 805C114 - push {lr} - bl IsDma3ManagerBusyWithBgCopy - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805C13E - ldr r0, =gBattle_BG0_X - strh r1, [r0] - ldr r1, =gBattle_BG0_Y - movs r2, 0xA0 - lsls r2, 1 - adds r0, r2, 0 - strh r0, [r1] - ldr r1, =gBattleBankFunc - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_8057BFC - str r1, [r0] -_0805C13E: - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C114 - - thumb_func_start sub_805C158 -sub_805C158: @ 805C158 - push {lr} - ldr r0, =gActiveBank - ldrb r1, [r0] - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r1, r0 - movs r0, 0xA6 - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1] - subs r0, 0x1 - strb r0, [r1] - lsls r0, 24 - cmp r0, 0 - bne _0805C194 - ldr r1, =gBattlePalaceMoveSelectionRngValue - ldr r0, =gRngValue - ldr r0, [r0] - str r0, [r1] - bl sub_805D19C - adds r2, r0, 0 - lsls r2, 16 - lsrs r2, 16 - movs r0, 0x1 - movs r1, 0xA - bl EmitCmd33 - bl PlayerBufferExecCompleted -_0805C194: - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C158 - - thumb_func_start dp01t_14_5_move_menu_pokedude -dp01t_14_5_move_menu_pokedude: @ 805C1A8 - push {lr} - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 10 - ands r0, r1 - cmp r0, 0 - beq _0805C1EC - ldr r2, =gActiveBank - ldrb r0, [r2] - ldr r1, =gBattleStruct - ldr r1, [r1] - adds r0, r1 - movs r1, 0xA6 - lsls r1, 2 - adds r0, r1 - movs r1, 0x8 - strb r1, [r0] - ldr r1, =gBattleBankFunc - ldrb r0, [r2] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_805C158 - b _0805C1FC - .pool -_0805C1EC: - bl sub_805C210 - ldr r1, =gBattleBankFunc - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_805C114 -_0805C1FC: - str r1, [r0] - pop {r0} - bx r0 - .pool - thumb_func_end dp01t_14_5_move_menu_pokedude - - thumb_func_start sub_805C210 -sub_805C210: @ 805C210 - push {lr} - bl sub_8059AAC - ldr r1, =gUnknown_03005D74 - movs r0, 0xFF - strb r0, [r1] - ldr r1, =gMoveSelectionCursor - ldr r0, =gActiveBank - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - movs r1, 0 - bl battle_menu_cursor_related_2 - bl sub_8059B18 - bl sub_8059B3C - bl sub_8059BB0 - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C210 - - thumb_func_start sub_805C248 -sub_805C248: @ 805C248 - push {r4,r5,lr} - sub sp, 0x4 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, =gBattleBankFunc - ldr r2, =gActiveBank - ldrb r0, [r2] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_80598A4 - str r1, [r0] - ldr r1, =gBankInMenu - ldrb r0, [r2] - strb r0, [r1] - movs r3, 0 - ldr r5, =gUnknown_0203CF00 - ldr r4, =gBattleBufferA -_0805C276: - adds r0, r3, r5 - ldrb r1, [r2] - lsls r1, 9 - adds r1, 0x1 - adds r1, r3, r1 - adds r1, r4 - ldrb r1, [r1] - strb r1, [r0] - adds r3, 0x1 - cmp r3, 0x2 - ble _0805C276 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C248 - - thumb_func_start sub_805C2AC -sub_805C2AC: @ 805C2AC - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - movs r3, 0 - ldr r0, =gUnknown_0203CF00 - mov r12, r0 - ldr r1, =gBattleBufferA - mov r8, r1 - ldr r2, =gActiveBank - ldr r7, =gBattleTypeFlags - mov r6, r12 - mov r5, r8 - adds r4, r2, 0 -_0805C2C8: - adds r0, r3, r6 - ldrb r1, [r4] - lsls r1, 9 - adds r1, 0x4 - adds r1, r3, r1 - adds r1, r5 - ldrb r1, [r1] - strb r1, [r0] - adds r3, 0x1 - cmp r3, 0x2 - ble _0805C2C8 - ldr r0, [r7] - movs r1, 0x80 - lsls r1, 11 - ands r0, r1 - cmp r0, 0 - beq _0805C330 - ldrb r3, [r2] - lsls r0, r3, 9 - mov r1, r8 - adds r1, 0x1 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x2 - beq _0805C330 - ldr r1, =gBattlePartyID - lsls r0, r3, 1 - adds r0, r1 - ldrb r1, [r0] - adds r1, 0x1 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0x1 - mov r2, r12 - bl EmitCmd34 - bl PlayerBufferExecCompleted - b _0805C3BC - .pool -_0805C330: - ldr r0, =TaskDummy - movs r1, 0xFF - bl CreateTask - ldr r3, =gUnknown_03005D7C - ldr r4, =gActiveBank - ldrb r1, [r4] - adds r1, r3 - movs r2, 0 - mov r8, r2 - strb r0, [r1] - ldr r5, =gTasks - ldrb r2, [r4] - adds r3, r2, r3 - ldrb r0, [r3] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r5 - ldr r5, =gBattleBufferA - lsls r2, 9 - adds r6, r5, 0x1 - adds r2, r6 - ldrb r2, [r2] - movs r0, 0xF - ands r0, r2 - strh r0, [r1, 0x8] - ldr r3, =gBattleStruct - ldr r1, [r3] - adds r1, 0x49 - ldrb r0, [r4] - lsls r0, 9 - adds r0, r6 - ldrb r0, [r0] - lsrs r0, 4 - strb r0, [r1] - ldr r2, [r3] - adds r2, 0x8B - ldrb r0, [r4] - lsls r0, 9 - adds r1, r5, 0x2 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - ldr r1, [r3] - adds r1, 0xB0 - ldrb r0, [r4] - lsls r0, 9 - adds r5, 0x3 - adds r0, r5 - ldrb r0, [r0] - strb r0, [r1] - movs r0, 0x1 - negs r0, r0 - mov r1, r8 - str r1, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, =gBattleBankFunc - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_80597CC - str r1, [r0] - ldr r1, =gBankInMenu - ldrb r0, [r4] - strb r0, [r1] -_0805C3BC: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C2AC - - thumb_func_start sub_805C3EC -sub_805C3EC: @ 805C3EC - push {lr} - sub sp, 0x4 - bl BattleMusicStop - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r1, 0x2 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - bl PlayerBufferExecCompleted - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_805C3EC - - thumb_func_start sub_805C410 -sub_805C410: @ 805C410 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - movs r0, 0 - bl LoadBattleBarGfx - ldr r3, =gBattleBufferA - ldr r0, =gActiveBank - mov r9, r0 - ldrb r1, [r0] - lsls r1, 9 - adds r0, r3, 0x2 - adds r0, r1, r0 - ldrb r2, [r0] - adds r3, 0x3 - adds r1, r3 - ldrb r0, [r1] - lsls r0, 8 - orrs r2, r0 - lsls r2, 16 - asrs r7, r2, 16 - cmp r7, 0 - ble _0805C44A - ldr r1, =gUnknown_0203CD70 - ldr r0, [r1] - adds r0, r7 - str r0, [r1] -_0805C44A: - ldr r0, =0x00007fff - cmp r7, r0 - beq _0805C4B4 - ldr r6, =gBattlePartyID - mov r1, r9 - ldrb r0, [r1] - lsls r0, 1 - adds r0, r6 - ldrh r0, [r0] - movs r5, 0x64 - muls r0, r5 - ldr r4, =gPlayerParty - adds r0, r4 - movs r1, 0x3A - bl GetMonData - mov r8, r0 - mov r2, r9 - ldrb r0, [r2] - lsls r0, 1 - adds r0, r6 - ldrh r0, [r0] - muls r0, r5 - adds r0, r4 - movs r1, 0x39 - bl GetMonData - adds r3, r0, 0 - mov r1, r9 - ldrb r0, [r1] - ldr r1, =gHealthBoxesIds - adds r1, r0, r1 - ldrb r1, [r1] - str r7, [sp] - mov r2, r8 - bl SetBattleBarStruct - b _0805C4F2 - .pool -_0805C4B4: - ldr r1, =gBattlePartyID - mov r2, r9 - ldrb r0, [r2] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x3A - bl GetMonData - adds r2, r0, 0 - mov r1, r9 - ldrb r0, [r1] - ldr r4, =gHealthBoxesIds - adds r1, r0, r4 - ldrb r1, [r1] - str r7, [sp] - movs r3, 0 - bl SetBattleBarStruct - mov r2, r9 - ldrb r0, [r2] - adds r0, r4 - ldrb r0, [r0] - movs r1, 0 - movs r2, 0 - bl UpdateHpTextInHealthbox -_0805C4F2: - ldr r1, =gBattleBankFunc - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, =bx_t1_healthbar_update - str r1, [r0] - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C410 - - thumb_func_start sub_805C528 -sub_805C528: @ 805C528 - push {r4-r7,lr} - ldr r5, =gBattleBufferA - ldr r6, =gActiveBank - ldrb r0, [r6] - lsls r0, 9 - adds r1, r5, 0x1 - adds r0, r1 - ldrb r7, [r0] - movs r0, 0x64 - adds r1, r7, 0 - muls r1, r0 - ldr r0, =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x38 - bl GetMonData - cmp r0, 0x63 - bls _0805C560 - bl PlayerBufferExecCompleted - b _0805C5AC - .pool -_0805C560: - movs r0, 0x1 - bl LoadBattleBarGfx - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - ldrb r1, [r6] - lsls r1, 9 - adds r0, r5, 0x2 - adds r0, r1, r0 - ldrb r4, [r0] - adds r0, r5, 0x3 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 8 - orrs r4, r0 - ldr r0, =sub_80591B8 - movs r1, 0xA - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - strh r7, [r1, 0x8] - strh r4, [r1, 0xA] - ldrb r0, [r6] - strh r0, [r1, 0xC] - ldr r1, =gBattleBankFunc - ldrb r0, [r6] - lsls r0, 2 - adds r0, r1 - ldr r1, =nullsub_21 - str r1, [r0] -_0805C5AC: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C528 - - thumb_func_start sub_805C5C4 -sub_805C5C4: @ 805C5C4 - push {r4,lr} - ldr r4, =gActiveBank - ldrb r0, [r4] - bl mplay_80342A4 - lsls r0, 24 - cmp r0, 0 - bne _0805C618 - ldr r0, =gHealthBoxesIds - ldrb r1, [r4] - adds r0, r1, r0 - ldrb r0, [r0] - ldr r2, =gBattlePartyID - lsls r1, 1 - adds r1, r2 - ldrh r2, [r1] - movs r1, 0x64 - muls r1, r2 - ldr r2, =gPlayerParty - adds r1, r2 - movs r2, 0x9 - bl UpdateHealthboxAttribute - ldrb r2, [r4] - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r0, [r0, 0x4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 2 - adds r1, r0 - ldrb r2, [r1] - movs r0, 0x11 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - ldr r1, =gBattleBankFunc - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_8059D60 - str r1, [r0] -_0805C618: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C5C4 - - thumb_func_start sub_805C63C -sub_805C63C: @ 805C63C - push {r4,r5,lr} - ldr r5, =gActiveBank - ldrb r0, [r5] - bl mplay_80342A4 - lsls r0, 24 - cmp r0, 0 - bne _0805C68C - ldr r4, =gBattleBufferA - ldrb r3, [r5] - lsls r3, 9 - adds r0, r4, 0x1 - adds r0, r3, r0 - ldrb r0, [r0] - adds r1, r4, 0x2 - adds r1, r3, r1 - ldrb r1, [r1] - adds r2, r4, 0x3 - adds r2, r3, r2 - ldrb r2, [r2] - lsls r2, 8 - orrs r1, r2 - adds r2, r4, 0x4 - adds r2, r3, r2 - ldrb r2, [r2] - lsls r2, 16 - orrs r1, r2 - adds r4, 0x5 - adds r3, r4 - ldrb r2, [r3] - lsls r2, 24 - orrs r1, r2 - bl move_anim_start_t2_for_situation - ldr r1, =gBattleBankFunc - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_8059D60 - str r1, [r0] -_0805C68C: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C63C - - thumb_func_start sub_805C6A4 -sub_805C6A4: @ 805C6A4 - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x4 - ldr r0, =gBattlePartyID - mov r8, r0 - ldr r4, =gActiveBank - ldrb r0, [r4] - lsls r0, 1 - add r0, r8 - ldrh r0, [r0] - movs r6, 0x64 - muls r0, r6 - ldr r5, =gPlayerParty - adds r0, r5 - movs r1, 0x37 - bl GetMonData - ldr r2, =gBattleBufferA - ldrb r1, [r4] - lsls r1, 9 - adds r2, 0x1 - adds r1, r2 - ldrb r1, [r1] - eors r0, r1 - mov r1, sp - strb r0, [r1] - ldrb r0, [r4] - lsls r0, 1 - add r0, r8 - ldrh r0, [r0] - muls r0, r6 - adds r0, r5 - movs r1, 0x37 - mov r2, sp - bl SetMonData - bl PlayerBufferExecCompleted - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C6A4 - - thumb_func_start sub_805C710 -sub_805C710: @ 805C710 - push {lr} - bl PlayerBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end sub_805C710 - - thumb_func_start sub_805C71C -sub_805C71C: @ 805C71C - push {r4,r5,lr} - ldr r3, =gBattleBufferA - ldr r0, =gActiveBank - ldrb r2, [r0] - lsls r2, 9 - adds r0, r3, 0x1 - adds r0, r2, r0 - ldrb r5, [r0] - adds r0, r3, 0x2 - adds r0, r2, r0 - ldrb r0, [r0] - lsls r0, 8 - orrs r5, r0 - adds r0, r3, 0x3 - adds r0, r2, r0 - ldrb r0, [r0] - lsls r0, 16 - orrs r5, r0 - adds r0, r3, 0x4 - adds r0, r2, r0 - ldrb r4, [r0] - lsls r4, 24 - adds r0, r3, 0x5 - adds r0, r2, r0 - ldrb r1, [r0] - adds r0, r3, 0x6 - adds r0, r2, r0 - ldrb r0, [r0] - lsls r0, 8 - orrs r1, r0 - lsls r1, 16 - adds r3, 0x7 - adds r2, r3 - orrs r5, r4 - lsrs r4, r1, 16 - movs r0, 0x80 - lsls r0, 5 - cmp r4, r0 - bhi _0805C78C - ldr r0, =0x040000d4 - str r2, [r0] - str r5, [r0, 0x4] - lsrs r1, 17 - movs r2, 0x80 - lsls r2, 24 - orrs r1, r2 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - b _0805C7B8 - .pool -_0805C78C: - ldr r3, =0x040000d4 - str r2, [r3] - str r5, [r3, 0x4] - ldr r0, =0x80000800 - str r0, [r3, 0x8] - ldr r0, [r3, 0x8] - movs r0, 0x80 - lsls r0, 5 - adds r2, r0 - adds r5, r0 - ldr r1, =0xfffff000 - adds r4, r1 - cmp r4, r0 - bhi _0805C78C - str r2, [r3] - str r5, [r3, 0x4] - lsrs r0, r4, 1 - movs r1, 0x80 - lsls r1, 24 - orrs r0, r1 - str r0, [r3, 0x8] - ldr r0, [r3, 0x8] -_0805C7B8: - bl PlayerBufferExecCompleted - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C71C - - thumb_func_start sub_805C7D0 -sub_805C7D0: @ 805C7D0 - push {lr} - ldr r2, =gBattleBufferA - ldr r0, =gActiveBank - ldrb r1, [r0] - lsls r1, 9 - adds r0, r2, 0x1 - adds r0, r1, r0 - ldrb r0, [r0] - adds r2, 0x2 - adds r1, r2 - ldrb r1, [r1] - lsls r1, 8 - orrs r0, r1 - bl PlayBGM - bl PlayerBufferExecCompleted - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C7D0 - - thumb_func_start sub_805C800 -sub_805C800: @ 805C800 - push {lr} - bl PlayerBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end sub_805C800 - - thumb_func_start sub_805C80C -sub_805C80C: @ 805C80C - push {lr} - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - bl EmitCmd33 - bl PlayerBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end sub_805C80C - - thumb_func_start sub_805C820 -sub_805C820: @ 805C820 - push {lr} - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - bl EmitCmd34 - bl PlayerBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end sub_805C820 - - thumb_func_start sub_805C834 -sub_805C834: @ 805C834 - push {lr} - movs r0, 0x1 - movs r1, 0 - bl EmitCmd35 - bl PlayerBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end sub_805C834 - - thumb_func_start sub_805C848 -sub_805C848: @ 805C848 - push {lr} - movs r0, 0x1 - movs r1, 0 - bl EmitCmd36 - bl PlayerBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end sub_805C848 - - thumb_func_start sub_805C85C -sub_805C85C: @ 805C85C - push {lr} - ldr r2, =gUnknown_02022D0C - ldrb r1, [r2] - movs r0, 0x80 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - bl PlayerBufferExecCompleted - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C85C - - thumb_func_start sub_805C878 -sub_805C878: @ 805C878 - push {lr} - ldr r3, =gUnknown_02022D0C - ldr r1, =gBattleBufferA - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 9 - adds r1, 0x1 - adds r0, r1 - ldrb r0, [r0] - movs r1, 0x7F - ands r1, r0 - ldrb r2, [r3] - movs r0, 0x80 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] - bl PlayerBufferExecCompleted - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C878 - - thumb_func_start sub_805C8B0 -sub_805C8B0: @ 805C8B0 - push {lr} - ldr r2, =gUnknown_02022D0C - ldrb r1, [r2] - movs r0, 0x7F - ands r0, r1 - strb r0, [r2] - bl PlayerBufferExecCompleted - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C8B0 - - thumb_func_start sub_805C8C8 -sub_805C8C8: @ 805C8C8 - push {lr} - ldr r3, =gUnknown_02022D0C - ldr r1, [r3] - lsls r1, 24 - lsrs r1, 31 - movs r0, 0x1 - eors r1, r0 - lsls r1, 7 - ldrb r2, [r3] - movs r0, 0x7F - ands r0, r2 - orrs r0, r1 - strb r0, [r3] - bl PlayerBufferExecCompleted - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C8C8 - - thumb_func_start dp01t_29_1_blink -dp01t_29_1_blink: @ 805C8F0 - push {r4,lr} - ldr r3, =gSprites - ldr r2, =gBankSpriteIds - ldr r4, =gActiveBank - ldrb r0, [r4] - adds r0, r2 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - adds r0, 0x3E - ldrb r0, [r0] - lsls r0, 29 - cmp r0, 0 - bge _0805C924 - bl PlayerBufferExecCompleted - b _0805C94E - .pool -_0805C924: - ldr r1, =gDoingBattleAnim - movs r0, 0x1 - strb r0, [r1] - ldrb r0, [r4] - adds r0, r2 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - movs r1, 0 - strh r1, [r0, 0x30] - ldrb r0, [r4] - bl sub_80769F4 - ldr r1, =gBattleBankFunc - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, =bx_blink_t1 - str r1, [r0] -_0805C94E: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end dp01t_29_1_blink - - thumb_func_start sub_805C960 -sub_805C960: @ 805C960 - push {lr} - bl PlayerBufferExecCompleted - pop {r0} - bx r0 - thumb_func_end sub_805C960 - - thumb_func_start sub_805C96C -sub_805C96C: @ 805C96C - push {r4,lr} - ldr r4, =gActiveBank - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - movs r3, 0x3F - cmp r0, 0 - bne _0805C980 - movs r3, 0xC0 -_0805C980: - ldr r2, =gBattleBufferA - ldrb r1, [r4] - lsls r1, 9 - adds r0, r2, 0x1 - adds r0, r1, r0 - ldrb r0, [r0] - adds r2, 0x2 - adds r1, r2 - ldrb r1, [r1] - lsls r1, 8 - orrs r0, r1 - lsls r1, r3, 24 - asrs r1, 24 - bl PlaySE12WithPanning - bl PlayerBufferExecCompleted - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805C96C - - thumb_func_start sub_805C9B0 -sub_805C9B0: @ 805C9B0 - push {r4,r5,lr} - ldr r4, =gBattleBufferA - ldr r5, =gActiveBank - ldrb r0, [r5] - lsls r3, r0, 9 - adds r0, r4, 0x3 - adds r0, r3, r0 - ldrb r0, [r0] - cmp r0, 0 - beq _0805C9EC - bl BattleMusicStop - ldrb r1, [r5] - lsls r1, 9 - adds r0, r4, 0x1 - adds r0, r1, r0 - ldrb r0, [r0] - adds r2, r4, 0x2 - adds r1, r2 - ldrb r1, [r1] - lsls r1, 8 - orrs r0, r1 - bl PlayBGM - b _0805CA00 - .pool -_0805C9EC: - adds r0, r4, 0x1 - adds r0, r3, r0 - ldrb r0, [r0] - adds r1, r4, 0x2 - adds r1, r3, r1 - ldrb r1, [r1] - lsls r1, 8 - orrs r0, r1 - bl PlayFanfare -_0805CA00: - bl PlayerBufferExecCompleted - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_805C9B0 - - thumb_func_start sub_805CA0C -sub_805CA0C: @ 805CA0C - push {lr} - ldr r1, =gBattlePartyID - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x19 - negs r1, r1 - movs r2, 0x5 - bl PlayCry3 - bl PlayerBufferExecCompleted - pop {r0} - bx r0 - .pool - thumb_func_end sub_805CA0C - - thumb_func_start dp01t_2E_1_battle_intro -dp01t_2E_1_battle_intro: @ 805CA4C - push {lr} - ldr r1, =gBattleBufferA - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 9 - adds r1, 0x1 - adds r0, r1 - ldrb r0, [r0] - bl battle_intro_launch - ldr r2, =gUnknown_020243FC - ldrh r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strh r0, [r2] - bl PlayerBufferExecCompleted - pop {r0} - bx r0 - .pool - thumb_func_end dp01t_2E_1_battle_intro - - thumb_func_start dp01t_2F_1_pokemon_enter -dp01t_2F_1_pokemon_enter: @ 805CA80 - push {r4-r7,lr} - ldr r6, =gBankSpriteIds - ldr r7, =gActiveBank - ldrb r0, [r7] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r5, =gSprites - adds r0, r5 - bl oamt_add_pos2_onto_pos1 - ldrb r0, [r7] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - movs r1, 0x32 - strh r1, [r0, 0x2E] - ldrb r0, [r7] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r1, =0x0000ffd8 - strh r1, [r0, 0x32] - ldrb r0, [r7] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrh r1, [r0, 0x22] - strh r1, [r0, 0x36] - ldrb r0, [r7] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r5, 0 - adds r1, 0x1C - adds r0, r1 - ldr r1, =sub_80A6EEC - str r1, [r0] - ldrb r2, [r7] - adds r0, r2, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - strh r2, [r0, 0x38] - ldrb r0, [r7] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r1, =sub_805CC00 - bl StoreSpriteCallbackInData6 - ldrb r0, [r7] - adds r0, r6 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - movs r1, 0x1 - bl StartSpriteAnim - ldr r0, =0x0000d6f8 - bl AllocSpritePalette - adds r4, r0, 0 - lsls r4, 24 - ldr r1, =gTrainerBackPicPaletteTable - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x8] - lsls r0, 3 - adds r0, r1 - ldr r0, [r0] - lsrs r4, 20 - movs r2, 0x80 - lsls r2, 1 - adds r1, r4, r2 - movs r2, 0x20 - bl LoadCompressedPalette - ldrb r0, [r7] - adds r0, r6 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - ldrb r2, [r1, 0x5] - movs r0, 0xF - ands r0, r2 - orrs r0, r4 - strb r0, [r1, 0x5] - ldr r0, =task05_08033660 - movs r1, 0x5 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r4, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r4 - ldrb r0, [r7] - strh r0, [r1, 0x8] - ldr r3, =gBattleSpritesDataPtr - ldr r0, [r3] - ldrb r2, [r7] - ldr r1, [r0, 0x4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0805CBA2 - ldr r0, =gUnknown_020244B4 - adds r0, r2, r0 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r4 - ldr r1, =sub_8073C30 - str r1, [r0] -_0805CBA2: - ldr r0, [r3] - ldr r2, [r0, 0x8] - ldrb r0, [r2, 0x9] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2, 0x9] - ldr r1, =gBattleBankFunc - ldrb r0, [r7] - lsls r0, 2 - adds r0, r1 - ldr r1, =nullsub_21 - str r1, [r0] - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end dp01t_2F_1_pokemon_enter - - thumb_func_start sub_805CC00 -sub_805CC00: @ 805CC00 - push {r4,r5,lr} - adds r5, r0, 0 - ldrh r4, [r5, 0x38] - lsls r4, 24 - lsrs r4, 24 - bl FreeSpriteOamMatrix - ldrb r0, [r5, 0x5] - lsrs r0, 4 - bl GetSpritePaletteTagByPaletteNum - lsls r0, 16 - lsrs r0, 16 - bl FreeSpritePaletteByTag - adds r0, r5, 0 - bl DestroySprite - ldr r1, =gBattlePartyID - lsls r0, r4, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - adds r1, r4, 0 - bl BattleLoadPlayerMonSpriteGfx - ldr r0, =gBankSpriteIds - adds r4, r0 - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - movs r1, 0 - bl StartSpriteAnim - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805CC00 - - thumb_func_start task05_08033660 -task05_08033660: @ 805CC68 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r1, =gTasks - lsls r0, 2 - add r0, r8 - lsls r0, 3 - adds r1, r0, r1 - ldrh r2, [r1, 0xA] - movs r3, 0xA - ldrsh r0, [r1, r3] - cmp r0, 0x1E - bgt _0805CC94 - adds r0, r2, 0x1 - strh r0, [r1, 0xA] - b _0805CD50 - .pool -_0805CC94: - ldr r7, =gActiveBank - ldrb r0, [r7] - mov r9, r0 - ldrh r0, [r1, 0x8] - strb r0, [r7] - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _0805CCB4 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0805CCE4 -_0805CCB4: - ldr r0, =gBattleBufferA - ldrb r1, [r7] - lsls r2, r1, 9 - adds r0, 0x1 - adds r2, r0 - ldr r0, =gBattlePartyID - lsls r1, 1 - adds r1, r0 - ldrh r0, [r1] - strb r0, [r2] - ldrb r0, [r7] - movs r1, 0 - bl sub_805B258 - b _0805CD38 - .pool -_0805CCE4: - ldr r4, =gBattleBufferA - ldrb r0, [r7] - lsls r1, r0, 9 - adds r4, 0x1 - adds r1, r4 - ldr r5, =gBattlePartyID - lsls r0, 1 - adds r0, r5 - ldrh r0, [r0] - strb r0, [r1] - ldrb r0, [r7] - movs r1, 0 - bl sub_805B258 - ldrb r0, [r7] - movs r6, 0x2 - eors r0, r6 - strb r0, [r7] - ldrb r0, [r7] - lsls r1, r0, 9 - adds r1, r4 - lsls r0, 1 - adds r0, r5 - ldrh r0, [r0] - strb r0, [r1] - ldrb r1, [r7] - lsls r0, r1, 1 - adds r0, r5 - ldrh r2, [r0] - movs r0, 0x64 - muls r0, r2 - ldr r2, =gPlayerParty - adds r0, r2 - bl BattleLoadPlayerMonSpriteGfx - ldrb r0, [r7] - movs r1, 0 - bl sub_805B258 - ldrb r0, [r7] - eors r0, r6 - strb r0, [r7] -_0805CD38: - ldr r1, =gBattleBankFunc - ldr r2, =gActiveBank - ldrb r0, [r2] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_8058B40 - str r1, [r0] - mov r3, r9 - strb r3, [r2] - mov r0, r8 - bl DestroyTask -_0805CD50: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end task05_08033660 - - thumb_func_start sub_805CD74 -sub_805CD74: @ 805CD74 - push {r4-r6,lr} - ldr r1, =gBattleBufferA - ldr r0, =gActiveBank - ldrb r2, [r0] - lsls r0, r2, 9 - adds r1, 0x1 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0805CDA4 - adds r0, r2, 0 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0805CDA4 - bl PlayerBufferExecCompleted - b _0805CE18 - .pool -_0805CDA4: - ldr r6, =gBattleSpritesDataPtr - ldr r0, [r6] - ldr r5, =gActiveBank - ldrb r1, [r5] - ldr r2, [r0, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r2, 0x1 - orrs r1, r2 - strb r1, [r0] - ldrb r0, [r5] - lsls r3, r0, 9 - ldr r4, =gBattleBufferA + 4 - adds r1, r3, r4 - subs r2, r4, 0x3 - adds r2, r3, r2 - ldrb r2, [r2] - subs r4, 0x2 - adds r3, r4 - ldrb r3, [r3] - bl CreatePartyStatusSummarySprites - ldr r2, =gUnknown_020244B4 - ldrb r1, [r5] - adds r1, r2 - movs r3, 0 - strb r0, [r1] - ldr r0, [r6] - ldrb r1, [r5] - ldr r2, [r0, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - strb r3, [r0, 0x5] - ldrb r2, [r5] - lsls r0, r2, 9 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _0805CE0C - ldr r0, [r6] - ldr r1, [r0, 0x4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - movs r1, 0x5D - strb r1, [r0, 0x5] -_0805CE0C: - ldr r0, =gBattleBankFunc - ldrb r1, [r5] - lsls r1, 2 - adds r1, r0 - ldr r0, =sub_805CE38 - str r0, [r1] -_0805CE18: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805CD74 - - thumb_func_start sub_805CE38 -sub_805CE38: @ 805CE38 - push {r4,lr} - ldr r4, =gBattleSpritesDataPtr - ldr r0, [r4] - ldr r3, =gActiveBank - ldrb r1, [r3] - ldr r2, [r0, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x5] - adds r2, r1, 0x1 - strb r2, [r0, 0x5] - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0x5C - bls _0805CE70 - ldr r0, [r4] - ldrb r1, [r3] - ldr r2, [r0, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0 - strb r1, [r0, 0x5] - bl PlayerBufferExecCompleted -_0805CE70: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805CE38 - - thumb_func_start sub_805CE80 -sub_805CE80: @ 805CE80 - push {lr} - ldr r0, =gBattleSpritesDataPtr - ldr r1, [r0] - ldr r0, =gActiveBank - ldrb r3, [r0] - ldr r1, [r1, 0x4] - lsls r0, r3, 1 - adds r0, r3 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0805CEB2 - ldr r2, =gTasks - ldr r0, =gUnknown_020244B4 - adds r0, r3, r0 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldr r1, =sub_8073C30 - str r1, [r0] -_0805CEB2: - bl PlayerBufferExecCompleted - pop {r0} - bx r0 - .pool - thumb_func_end sub_805CE80 - - thumb_func_start sub_805CED0 -sub_805CED0: @ 805CED0 - push {r4,lr} - ldr r4, =gActiveBank - ldrb r0, [r4] - movs r1, 0x1 - bl dp11b_obj_free - ldrb r0, [r4] - movs r1, 0 - bl dp11b_obj_free - bl PlayerBufferExecCompleted - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805CED0 - - thumb_func_start dp01t_33_1_enemy_move -dp01t_33_1_enemy_move: @ 805CEF4 - push {r4,lr} - ldr r4, =gActiveBank - ldrb r0, [r4] - bl AnimBankSpriteExists - lsls r0, 24 - cmp r0, 0 - beq _0805CF3A - ldr r3, =gSprites - ldr r0, =gBankSpriteIds - ldrb r1, [r4] - adds r0, r1, r0 - ldrb r0, [r0] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r3 - ldr r0, =gBattleBufferA - lsls r1, 9 - adds r0, 0x1 - adds r1, r0 - adds r2, 0x3E - movs r0, 0x1 - ldrb r1, [r1] - ands r1, r0 - lsls r1, 2 - ldrb r3, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2] - ldrb r0, [r4] - bl sub_805E408 -_0805CF3A: - bl PlayerBufferExecCompleted - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end dp01t_33_1_enemy_move - - thumb_func_start sub_805CF54 -sub_805CF54: @ 805CF54 - push {r4-r6,lr} - sub sp, 0x4 - ldr r5, =gActiveBank - ldrb r0, [r5] - bl mplay_80342A4 - lsls r0, 24 - cmp r0, 0 - bne _0805CFB6 - ldr r4, =gBattleBufferA - ldrb r2, [r5] - lsls r1, r2, 9 - adds r0, r4, 0x1 - adds r0, r1, r0 - ldrb r6, [r0] - adds r0, r4, 0x2 - adds r0, r1, r0 - ldrb r3, [r0] - adds r4, 0x3 - adds r1, r4 - ldrb r0, [r1] - lsls r0, 8 - orrs r3, r0 - str r3, [sp] - adds r0, r2, 0 - adds r1, r2, 0 - adds r3, r6, 0 - bl move_anim_start_t3 - lsls r0, 24 - cmp r0, 0 - beq _0805CFA4 - bl PlayerBufferExecCompleted - b _0805CFB0 - .pool -_0805CFA4: - ldr r0, =gBattleBankFunc - ldrb r1, [r5] - lsls r1, 2 - adds r1, r0 - ldr r0, =bx_8030B2C - str r0, [r1] -_0805CFB0: - adds r0, r6, 0 - bl sub_817E32C -_0805CFB6: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805CF54 - - thumb_func_start dp01t_35_1_link_standby_message_and_free_vram -dp01t_35_1_link_standby_message_and_free_vram: @ 805CFC8 - push {r4,r5,lr} - ldr r5, =gActiveBank - ldrb r0, [r5] - lsls r0, 9 - ldr r4, =gBattleBufferA + 2 - adds r0, r4 - bl sub_81851A8 - ldrb r0, [r5] - lsls r0, 9 - subs r4, 0x1 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0805D002 - cmp r0, 0x1 - bgt _0805CFF8 - cmp r0, 0 - beq _0805CFFE - b _0805D020 - .pool -_0805CFF8: - cmp r0, 0x2 - beq _0805D01C - b _0805D020 -_0805CFFE: - bl b_link_standby_message -_0805D002: - ldr r4, =gActiveBank - ldrb r0, [r4] - movs r1, 0x1 - bl dp11b_obj_free - ldrb r0, [r4] - movs r1, 0 - bl dp11b_obj_free - b _0805D020 - .pool -_0805D01C: - bl b_link_standby_message -_0805D020: - bl PlayerBufferExecCompleted - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end dp01t_35_1_link_standby_message_and_free_vram - - thumb_func_start sub_805D02C -sub_805D02C: @ 805D02C - push {r4,lr} - ldr r1, =gBattleBufferA - ldr r4, =gActiveBank - ldrb r3, [r4] - lsls r0, r3, 9 - adds r1, 0x1 - adds r0, r1 - ldrb r2, [r0] - cmp r2, 0x1 - beq _0805D074 - cmp r2, 0x1 - bgt _0805D054 - cmp r2, 0 - beq _0805D05A - b _0805D084 - .pool -_0805D054: - cmp r2, 0x2 - beq _0805D07C - b _0805D084 -_0805D05A: - ldr r0, =gActionSelectionCursor - adds r0, r3, r0 - strb r2, [r0] - ldr r1, =gMoveSelectionCursor - ldrb r0, [r4] - adds r0, r1 - strb r2, [r0] - b _0805D084 - .pool -_0805D074: - ldr r0, =gActionSelectionCursor - b _0805D07E - .pool -_0805D07C: - ldr r0, =gMoveSelectionCursor -_0805D07E: - adds r0, r3, r0 - movs r1, 0 - strb r1, [r0] -_0805D084: - bl PlayerBufferExecCompleted - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805D02C - - thumb_func_start sub_805D094 -sub_805D094: @ 805D094 - push {r4,r5,lr} - ldr r5, =gActiveBank - ldrb r0, [r5] - lsls r0, 9 - ldr r4, =gBattleBufferA + 4 - adds r0, r4 - bl sub_81851A8 - ldr r2, =gBattleOutcome - ldrb r0, [r5] - lsls r0, 9 - subs r1, r4, 0x3 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - ldr r0, =gSaveBlock2Ptr - ldr r3, [r0] - ldrb r0, [r5] - lsls r0, 9 - subs r4, 0x2 - adds r0, r4 - ldrb r0, [r0] - ldr r1, =0x00000ca9 - adds r3, r1 - movs r1, 0x1 - ands r1, r0 - lsls r1, 3 - ldrb r2, [r3] - movs r0, 0x9 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] - movs r0, 0x5 - bl FadeOutMapMusic - movs r0, 0x3 - bl BeginFastPaletteFade - bl PlayerBufferExecCompleted - ldr r1, =gBattleBankFunc - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, =sub_80587B0 - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_805D094 - - thumb_func_start nullsub_22 -nullsub_22: @ 805D114 - bx lr - thumb_func_end nullsub_22 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/battle_controller_player_partner.s b/asm/battle_controller_player_partner.s index f82e1c3c3..dd96fda80 100644 --- a/asm/battle_controller_player_partner.s +++ b/asm/battle_controller_player_partner.s @@ -645,7 +645,7 @@ _081BB2E2: lsrs r2, 16 movs r0, 0x1 movs r1, 0xB - bl EmitCmd33 + bl EmitTwoReturnValues strb r5, [r4] bl IsDoubleBattle lsls r0, 24 @@ -918,7 +918,7 @@ _081BB514: lsrs r2, 16 movs r0, 0x1 movs r1, 0xB - bl EmitCmd33 + bl EmitTwoReturnValues strb r5, [r4] ldr r0, =sub_81BB628 str r0, [r6] @@ -981,7 +981,7 @@ _081BB65C: adds r1, r4, 0 adds r2, r4, 0 movs r3, 0 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r0, =gTasks lsls r1, r5, 2 adds r1, r5 @@ -1311,7 +1311,7 @@ sub_81BB92C: @ 81BB92C cmp r1, r0 bne _081BB97E adds r0, r3, 0 - bl sub_805E408 + bl SetBattleSpriteInvisibilityBitToSpriteInvisibility ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r2, [r4] @@ -1326,7 +1326,7 @@ sub_81BB92C: @ 81BB92C adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x6 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _081BB972: ldr r0, =gBattleBankFunc ldrb r1, [r4] @@ -3840,7 +3840,7 @@ sub_81BD074: @ 81BD074 adds r6, r4, 0x2 adds r1, r6 ldrb r1, [r1] - bl sub_805EF84 + bl ClearTemporarySpeciesSpriteData ldr r2, =gBattlePartyID ldrb r0, [r5] lsls r1, r0, 1 @@ -3889,7 +3889,7 @@ sub_81BD0E4: @ 81BD0E4 lsls r1, 24 lsrs r1, 24 adds r0, r6, 0 - bl sub_805EF84 + bl ClearTemporarySpeciesSpriteData ldr r0, =gBattlePartyID lsls r2, r6, 1 adds r2, r0 @@ -4129,7 +4129,7 @@ _081BD318: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _081BD332: ldr r0, [r6] ldrb r1, [r5] @@ -4154,7 +4154,7 @@ _081BD346: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x1 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -4213,7 +4213,7 @@ _081BD3BE: ldr r5, =gActiveBank ldrb r1, [r5] adds r0, r4, 0 - bl LoadBackTrainerBankSpriteGfx + bl DecompressTrainerBackPic ldrb r0, [r5] bl GetBankIdentity adds r1, r0, 0 @@ -4287,7 +4287,7 @@ _081BD494: ldr r6, =gActiveBank ldrb r1, [r6] adds r0, r5, 0 - bl sub_805DF38 + bl DecompressTrainerFrontPic ldrb r0, [r6] bl GetBankIdentity adds r1, r0, 0 @@ -4517,7 +4517,7 @@ sub_81BD674: @ 81BD674 adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _081BD6A8: ldr r0, [r6] ldrb r1, [r5] @@ -4727,14 +4727,14 @@ _081BD7A2: adds r1, 0x10 adds r2, r1 str r2, [r3] - ldr r3, =gUnknown_020244BC + ldr r3, =gTransformedPersonalities ldrb r1, [r6] lsls r1, 2 adds r1, r3 ldr r2, [r2] str r2, [r1] ldrb r1, [r5] - bl sub_805DB8C + bl IsMoveWithoutAnimation lsls r0, 24 lsrs r3, r0, 24 cmp r3, 0 @@ -4828,7 +4828,7 @@ _081BD92A: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _081BD94C: ldr r0, [r7] ldrb r1, [r6] @@ -4886,7 +4886,7 @@ _081BD98A: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x6 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r0, [r7] ldrb r1, [r6] ldr r0, [r0] @@ -4929,7 +4929,7 @@ _081BDA00: ldrb r2, [r2] lsls r2, 8 orrs r1, r2 - bl sub_805E94C + bl TrySetBehindSubstituteSpriteBit ldr r0, [r7] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -4966,7 +4966,7 @@ sub_81BDA4C: @ 81BDA4C bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 @@ -5068,7 +5068,7 @@ _081BDB3C: orrs r2, r5 movs r0, 0x1 movs r1, 0xA - bl EmitCmd33 + bl EmitTwoReturnValues bl PlayerPartnerBufferExecCompleted pop {r4-r6} pop {r0} @@ -5138,7 +5138,7 @@ _081BDBD0: lsrs r1, 24 movs r0, 0x1 movs r2, 0 - bl EmitCmd34 + bl EmitChosenMonReturnValue bl PlayerPartnerBufferExecCompleted pop {r4-r6} pop {r0} @@ -5398,7 +5398,7 @@ sub_81BDE14: @ 81BDE14 ldrb r2, [r3] lsls r2, 24 orrs r1, r2 - bl move_anim_start_t2_for_situation + bl DoStatusAnimation ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -5594,7 +5594,7 @@ _081BDFB0: movs r1, 0 strh r1, [r0, 0x30] ldrb r0, [r4] - bl sub_80769F4 + bl DoHitAnimHealthboxEffect ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 @@ -5729,7 +5729,7 @@ dp01t_2E_3_battle_intro: @ 81BE0D8 adds r1, 0x1 adds r0, r1 ldrb r0, [r0] - bl battle_intro_launch + bl HandleIntroSlide ldr r2, =gUnknown_020243FC ldrh r0, [r2] movs r1, 0x1 @@ -6236,7 +6236,7 @@ sub_81BE53C: @ 81BE53C orrs r0, r1 strb r0, [r2] ldrb r0, [r4] - bl sub_805E408 + bl SetBattleSpriteInvisibilityBitToSpriteInvisibility _081BE582: bl PlayerPartnerBufferExecCompleted pop {r4} @@ -6272,7 +6272,7 @@ sub_81BE59C: @ 81BE59C str r4, [sp] adds r0, r2, 0 adds r1, r2, 0 - bl move_anim_start_t3 + bl DoBattleAnimationFromTable lsls r0, 24 cmp r0, 0 beq _081BE5E8 diff --git a/asm/battle_controller_recorded_opponent.s b/asm/battle_controller_recorded_opponent.s index f98c10a6c..0f5477e88 100644 --- a/asm/battle_controller_recorded_opponent.s +++ b/asm/battle_controller_recorded_opponent.s @@ -129,7 +129,7 @@ sub_81865C8: @ 81865C8 bne _0818661A adds r0, r2, r5 ldrh r0, [r0, 0x6] - bl sub_805DFE4 + bl FreeTrainerFrontPicPalette ldrb r0, [r4] adds r0, r6 ldrb r1, [r0] @@ -1161,7 +1161,7 @@ sub_8186EA4: @ 8186EA4 adds r1, r3, 0 adds r2, r3, 0 movs r3, 0x6 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _08186EE4: ldr r0, =gBattleBankFunc ldrb r1, [r4] @@ -1310,7 +1310,7 @@ sub_8186F94: @ 8186F94 ldrb r0, [r0] bl SetHealthboxSpriteVisible ldrb r0, [r5] - bl sub_805E408 + bl SetBattleSpriteInvisibilityBitToSpriteInvisibility ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -3716,7 +3716,7 @@ sub_81885D8: @ 81885D8 lsls r1, 24 lsrs r1, 24 adds r0, r6, 0 - bl sub_805EF84 + bl ClearTemporarySpeciesSpriteData ldr r0, =gBattlePartyID lsls r4, r6, 1 adds r4, r0 @@ -3968,7 +3968,7 @@ _08188828: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _08188842: ldr r0, [r6] ldrb r1, [r5] @@ -3993,7 +3993,7 @@ _08188856: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x2 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -4078,7 +4078,7 @@ _08188910: adds r0, r2 ldrb r0, [r0, 0x13] _08188924: - bl sub_806F000 + bl PlayerGenderToFrontTrainerPicId _08188928: lsls r0, 16 lsrs r0, 16 @@ -4086,7 +4086,7 @@ _0818892C: mov r8, r0 ldr r5, =gActiveBank ldrb r1, [r5] - bl sub_805DF38 + bl DecompressTrainerFrontPic ldrb r0, [r5] bl GetBankIdentity adds r1, r0, 0 @@ -4301,7 +4301,7 @@ sub_8188AF8: @ 8188AF8 adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _08188B2C: ldr r0, [r6] ldrb r1, [r5] @@ -4483,14 +4483,14 @@ _08188BE6: adds r1, 0x10 adds r2, r1 str r2, [r3] - ldr r3, =gUnknown_020244BC + ldr r3, =gTransformedPersonalities ldrb r1, [r6] lsls r1, 2 adds r1, r3 ldr r2, [r2] str r2, [r1] ldrb r1, [r5] - bl sub_805DB8C + bl IsMoveWithoutAnimation lsls r0, 24 lsrs r3, r0, 24 cmp r3, 0 @@ -4584,7 +4584,7 @@ _08188D6E: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _08188D90: ldr r0, [r7] ldrb r1, [r6] @@ -4642,7 +4642,7 @@ _08188DCE: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x6 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r0, [r7] ldrb r1, [r6] ldr r0, [r0] @@ -4685,7 +4685,7 @@ _08188E44: ldrb r2, [r2] lsls r2, 8 orrs r1, r2 - bl sub_805E94C + bl TrySetBehindSubstituteSpriteBit ldr r0, [r7] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -4722,7 +4722,7 @@ sub_8188E90: @ 8188E90 bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 @@ -4754,7 +4754,7 @@ sub_8188EF0: @ 8188EF0 lsrs r1, 24 movs r0, 0x1 movs r2, 0 - bl EmitCmd33 + bl EmitTwoReturnValues bl RecordedOpponentBufferExecCompleted pop {r0} bx r0 @@ -4779,13 +4779,13 @@ sub_8188F20: @ 8188F20 ands r0, r1 cmp r0, 0 beq _08188F48 - bl sub_805D19C + bl ChooseMoveAndTargetInBattlePalace adds r2, r0, 0 lsls r2, 16 lsrs r2, 16 movs r0, 0x1 movs r1, 0xA - bl EmitCmd33 + bl EmitTwoReturnValues b _08188F6C .pool _08188F48: @@ -4803,7 +4803,7 @@ _08188F48: orrs r2, r4 movs r0, 0x1 movs r1, 0xA - bl EmitCmd33 + bl EmitTwoReturnValues _08188F6C: bl RecordedOpponentBufferExecCompleted pop {r4,r5} @@ -4839,7 +4839,7 @@ sub_8188F88: @ 8188F88 ldrb r1, [r0] movs r0, 0x1 movs r2, 0 - bl EmitCmd34 + bl EmitChosenMonReturnValue bl RecordedOpponentBufferExecCompleted pop {r4} pop {r0} @@ -5041,7 +5041,7 @@ sub_8189144: @ 8189144 ldrb r2, [r3] lsls r2, 24 orrs r1, r2 - bl move_anim_start_t2_for_situation + bl DoStatusAnimation ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -5237,7 +5237,7 @@ _081892E0: movs r1, 0 strh r1, [r0, 0x30] ldrb r0, [r4] - bl sub_80769F4 + bl DoHitAnimHealthboxEffect ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 @@ -5371,7 +5371,7 @@ sub_8189404: @ 8189404 adds r1, 0x1 adds r0, r1 ldrb r0, [r0] - bl battle_intro_launch + bl HandleIntroSlide ldr r2, =gUnknown_020243FC ldrh r0, [r2] movs r1, 0x1 @@ -5601,7 +5601,7 @@ sub_818962C: @ 818962C push {r4,lr} adds r4, r0, 0 ldrh r0, [r4, 0x6] - bl sub_805DFE4 + bl FreeTrainerFrontPicPalette adds r0, r4, 0 bl FreeSpriteOamMatrix adds r0, r4, 0 @@ -5848,7 +5848,7 @@ sub_8189800: @ 8189800 orrs r0, r1 strb r0, [r2] ldrb r0, [r4] - bl sub_805E408 + bl SetBattleSpriteInvisibilityBitToSpriteInvisibility _08189846: bl RecordedOpponentBufferExecCompleted pop {r4} @@ -5884,7 +5884,7 @@ sub_8189860: @ 8189860 str r4, [sp] adds r0, r2, 0 adds r1, r2, 0 - bl move_anim_start_t3 + bl DoBattleAnimationFromTable lsls r0, 24 cmp r0, 0 beq _081898AC diff --git a/asm/battle_controller_recorded_player.s b/asm/battle_controller_recorded_player.s index 6f3976205..451b6178b 100644 --- a/asm/battle_controller_recorded_player.s +++ b/asm/battle_controller_recorded_player.s @@ -1112,7 +1112,7 @@ sub_818A2B4: @ 818A2B4 cmp r1, r0 bne _0818A306 adds r0, r3, 0 - bl sub_805E408 + bl SetBattleSpriteInvisibilityBitToSpriteInvisibility ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r2, [r4] @@ -1127,7 +1127,7 @@ sub_818A2B4: @ 818A2B4 adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x6 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _0818A2FA: ldr r0, =gBattleBankFunc ldrb r1, [r4] @@ -3641,7 +3641,7 @@ sub_818B9FC: @ 818B9FC adds r6, r4, 0x2 adds r1, r6 ldrb r1, [r1] - bl sub_805EF84 + bl ClearTemporarySpeciesSpriteData ldr r2, =gBattlePartyID ldrb r0, [r5] lsls r1, r0, 1 @@ -3690,7 +3690,7 @@ sub_818BA6C: @ 818BA6C lsls r1, 24 lsrs r1, 24 adds r0, r6, 0 - bl sub_805EF84 + bl ClearTemporarySpeciesSpriteData ldr r0, =gBattlePartyID lsls r2, r6, 1 adds r2, r0 @@ -3930,7 +3930,7 @@ _0818BCA0: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _0818BCBA: ldr r0, [r6] ldrb r1, [r5] @@ -3955,7 +3955,7 @@ _0818BCCE: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x1 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -4063,14 +4063,14 @@ _0818BDC0: ldr r0, =gSaveBlock2Ptr ldr r0, [r0] ldrb r0, [r0, 0x8] - bl sub_806F000 + bl PlayerGenderToFrontTrainerPicId lsls r0, 16 lsrs r4, r0, 16 adds r5, r4, 0 ldr r6, =gActiveBank ldrb r1, [r6] adds r0, r5, 0 - bl sub_805DF38 + bl DecompressTrainerFrontPic ldrb r0, [r6] bl GetBankIdentity adds r1, r0, 0 @@ -4182,7 +4182,7 @@ _0818BEDC: ldr r5, =gActiveBank ldrb r1, [r5] adds r0, r4, 0 - bl LoadBackTrainerBankSpriteGfx + bl DecompressTrainerBackPic ldrb r0, [r5] bl GetBankIdentity adds r1, r0, 0 @@ -4373,7 +4373,7 @@ sub_818C064: @ 818C064 adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _0818C098: ldr r0, [r6] ldrb r1, [r5] @@ -4583,14 +4583,14 @@ _0818C192: adds r1, 0x10 adds r2, r1 str r2, [r3] - ldr r3, =gUnknown_020244BC + ldr r3, =gTransformedPersonalities ldrb r1, [r6] lsls r1, 2 adds r1, r3 ldr r2, [r2] str r2, [r1] ldrb r1, [r5] - bl sub_805DB8C + bl IsMoveWithoutAnimation lsls r0, 24 lsrs r3, r0, 24 cmp r3, 0 @@ -4684,7 +4684,7 @@ _0818C31A: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _0818C33C: ldr r0, [r7] ldrb r1, [r6] @@ -4742,7 +4742,7 @@ _0818C37A: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x6 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r0, [r7] ldrb r1, [r6] ldr r0, [r0] @@ -4785,7 +4785,7 @@ _0818C3F0: ldrb r2, [r2] lsls r2, 8 orrs r1, r2 - bl sub_805E94C + bl TrySetBehindSubstituteSpriteBit ldr r0, [r7] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -4822,7 +4822,7 @@ sub_818C43C: @ 818C43C bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 @@ -4861,7 +4861,7 @@ sub_818C49C: @ 818C49C lsrs r1, 24 movs r0, 0x1 movs r2, 0 - bl EmitCmd33 + bl EmitTwoReturnValues bl RecordedPlayerBufferExecCompleted _0818C4C6: pop {r0} @@ -4897,7 +4897,7 @@ _0818C508: lsrs r1, 24 movs r0, 0x1 movs r2, 0 - bl EmitCmd33 + bl EmitTwoReturnValues bl RecordedPlayerBufferExecCompleted _0818C522: pop {r0} @@ -4923,13 +4923,13 @@ sub_818C538: @ 818C538 ands r0, r1 cmp r0, 0 beq _0818C560 - bl sub_805D19C + bl ChooseMoveAndTargetInBattlePalace adds r2, r0, 0 lsls r2, 16 lsrs r2, 16 movs r0, 0x1 movs r1, 0xA - bl EmitCmd33 + bl EmitTwoReturnValues b _0818C584 .pool _0818C560: @@ -4947,7 +4947,7 @@ _0818C560: orrs r2, r4 movs r0, 0x1 movs r1, 0xA - bl EmitCmd33 + bl EmitTwoReturnValues _0818C584: bl RecordedPlayerBufferExecCompleted pop {r4,r5} @@ -4983,7 +4983,7 @@ sub_818C5A0: @ 818C5A0 ldrb r1, [r0] movs r0, 0x1 movs r2, 0 - bl EmitCmd34 + bl EmitChosenMonReturnValue bl RecordedPlayerBufferExecCompleted pop {r4} pop {r0} @@ -5192,7 +5192,7 @@ sub_818C76C: @ 818C76C ldrb r2, [r3] lsls r2, 24 orrs r1, r2 - bl move_anim_start_t2_for_situation + bl DoStatusAnimation ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -5388,7 +5388,7 @@ _0818C908: movs r1, 0 strh r1, [r0, 0x30] ldrb r0, [r4] - bl sub_80769F4 + bl DoHitAnimHealthboxEffect ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 @@ -5523,7 +5523,7 @@ dp01t_2E_2_battle_intro: @ 818CA30 adds r1, 0x1 adds r0, r1 ldrb r0, [r0] - bl battle_intro_launch + bl HandleIntroSlide ldr r2, =gUnknown_020243FC ldrh r0, [r2] movs r1, 0x1 @@ -6032,7 +6032,7 @@ sub_818CE98: @ 818CE98 orrs r0, r1 strb r0, [r2] ldrb r0, [r4] - bl sub_805E408 + bl SetBattleSpriteInvisibilityBitToSpriteInvisibility _0818CEDE: bl RecordedPlayerBufferExecCompleted pop {r4} @@ -6068,7 +6068,7 @@ sub_818CEF8: @ 818CEF8 str r4, [sp] adds r0, r2, 0 adds r1, r2, 0 - bl move_anim_start_t3 + bl DoBattleAnimationFromTable lsls r0, 24 cmp r0, 0 beq _0818CF44 diff --git a/asm/battle_controller_safari.s b/asm/battle_controller_safari.s index d7efd69fe..4093d433b 100644 --- a/asm/battle_controller_safari.s +++ b/asm/battle_controller_safari.s @@ -103,13 +103,13 @@ _0815942A: movs r1, 0x7 _0815942E: movs r2, 0 - bl EmitCmd33 + bl EmitTwoReturnValues b _08159440 _08159436: movs r0, 0x1 movs r1, 0x8 movs r2, 0 - bl EmitCmd33 + bl EmitTwoReturnValues _08159440: bl SafariBufferExecCompleted b _0815954E @@ -399,7 +399,7 @@ sub_8159698: @ 8159698 ldr r0, =gScriptItemId ldrh r1, [r0] movs r0, 0x1 - bl EmitCmd35 + bl EmitOneReturnValue bl SafariBufferExecCompleted _081596BE: pop {r0} @@ -569,7 +569,7 @@ sub_8159800: @ 8159800 ldrb r0, [r0, 0x8] ldr r5, =gActiveBank ldrb r1, [r5] - bl LoadBackTrainerBankSpriteGfx + bl DecompressTrainerBackPic ldr r0, [r4] ldrb r6, [r0, 0x8] ldrb r0, [r5] @@ -707,7 +707,7 @@ sub_8159910: @ 8159910 adds r0, r4, 0 adds r1, r4, 0 movs r3, 0x4 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -746,7 +746,7 @@ sub_8159964: @ 8159964 adds r0, r4, 0 adds r1, r4, 0 movs r3, 0x4 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -792,7 +792,7 @@ dp01t_10_6_message: @ 81599DC bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 @@ -862,7 +862,7 @@ sub_8159A94: @ 8159A94 str r1, [r0] ldr r0, =gText_SafariZoneMenu movs r1, 0x2 - bl sub_814F9EC + bl BattleHandleAddTextPrinter movs r4, 0 _08159AAE: lsls r0, r4, 24 @@ -882,7 +882,7 @@ _08159AAE: bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0x1 - bl sub_814F9EC + bl BattleHandleAddTextPrinter pop {r4} pop {r0} bx r0 @@ -1227,7 +1227,7 @@ dp01t_2E_6_battle_intro: @ 8159D5C adds r1, 0x1 adds r0, r1 ldrb r0, [r0] - bl battle_intro_launch + bl HandleIntroSlide ldr r2, =gUnknown_020243FC ldrh r0, [r2] movs r1, 0x1 @@ -1329,7 +1329,7 @@ sub_8159E1C: @ 8159E1C str r4, [sp] adds r0, r2, 0 adds r1, r2, 0 - bl move_anim_start_t3 + bl DoBattleAnimationFromTable lsls r0, 24 cmp r0, 0 beq _08159E5C diff --git a/asm/battle_controller_wally.s b/asm/battle_controller_wally.s index e1d92de0d..10b6d30be 100644 --- a/asm/battle_controller_wally.s +++ b/asm/battle_controller_wally.s @@ -5,38 +5,6 @@ .text - - thumb_func_start nullsub_117 -nullsub_117: @ 81683B4 - bx lr - thumb_func_end nullsub_117 - - thumb_func_start SetBankFuncToWallyBufferRunCommand -SetBankFuncToWallyBufferRunCommand: @ 81683B8 - ldr r1, =gBattleBankFunc - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, =WallyBufferRunCommand - str r1, [r0] - ldr r2, =gBattleStruct - ldr r0, [r2] - adds r0, 0x94 - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - adds r0, 0x95 - strb r1, [r0] - ldr r0, [r2] - adds r0, 0x96 - strb r1, [r0] - ldr r0, [r2] - adds r0, 0x97 - strb r1, [r0] - bx lr - .pool - thumb_func_end SetBankFuncToWallyBufferRunCommand thumb_func_start WallyBufferRunCommand WallyBufferRunCommand: @ 81683F4 @@ -153,7 +121,7 @@ _081684CE: movs r1, 0x9 _081684E4: movs r2, 0 - bl EmitCmd33 + bl EmitTwoReturnValues bl WallyBufferExecCompleted ldr r1, [r4] adds r1, 0x94 @@ -208,7 +176,7 @@ _08168540: movs r0, 0x1 movs r1, 0x1 movs r2, 0 - bl EmitCmd33 + bl EmitTwoReturnValues bl WallyBufferExecCompleted _08168564: pop {r4,r5} @@ -311,7 +279,7 @@ sub_8168610: @ 8168610 ldr r0, =gScriptItemId ldrh r1, [r0] movs r0, 0x1 - bl EmitCmd35 + bl EmitOneReturnValue bl WallyBufferExecCompleted _08168636: pop {r0} @@ -928,8 +896,8 @@ _08168B92: .pool thumb_func_end sub_8168B70 - thumb_func_start dp01t_00_5_getattr -dp01t_00_5_getattr: @ 8168BA0 + thumb_func_start WallyHandleGetMonData +WallyHandleGetMonData: @ 8168BA0 push {r4-r6,lr} sub sp, 0x100 movs r6, 0 @@ -981,7 +949,7 @@ _08168BFA: pop {r4-r6} pop {r0} bx r0 - thumb_func_end dp01t_00_5_getattr + thumb_func_end WallyHandleGetMonData thumb_func_start sub_8168C14 sub_8168C14: @ 8168C14 @@ -1861,16 +1829,16 @@ _081693AA: .pool thumb_func_end sub_8168C14 - thumb_func_start sub_81693C0 -sub_81693C0: @ 81693C0 + thumb_func_start WallyHandleGetRawMonData +WallyHandleGetRawMonData: @ 81693C0 push {lr} - bl sub_805A614 + bl PlayerHandleGetRawMonData pop {r0} bx r0 - thumb_func_end sub_81693C0 + thumb_func_end WallyHandleGetRawMonData - thumb_func_start sub_81693CC -sub_81693CC: @ 81693CC + thumb_func_start WallyHandleSetMonData +WallyHandleSetMonData: @ 81693CC push {r4,r5,lr} ldr r1, =gBattleBufferA ldr r0, =gActiveBank @@ -1910,7 +1878,7 @@ _0816941A: pop {r4,r5} pop {r0} bx r0 - thumb_func_end sub_81693CC + thumb_func_end WallyHandleSetMonData thumb_func_start sub_8169424 sub_8169424: @ 8169424 @@ -2945,32 +2913,32 @@ _08169DEA: .pool thumb_func_end sub_8169424 - thumb_func_start sub_8169E20 -sub_8169E20: @ 8169E20 + thumb_func_start WallyHandleSetRawMonData +WallyHandleSetRawMonData: @ 8169E20 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8169E20 + thumb_func_end WallyHandleSetRawMonData - thumb_func_start sub_8169E2C -sub_8169E2C: @ 8169E2C + thumb_func_start WallyHandleLoadMonSprite +WallyHandleLoadMonSprite: @ 8169E2C push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8169E2C + thumb_func_end WallyHandleLoadMonSprite - thumb_func_start sub_8169E38 -sub_8169E38: @ 8169E38 + thumb_func_start WallyHandleSwitchInAnim +WallyHandleSwitchInAnim: @ 8169E38 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_8169E38 + thumb_func_end WallyHandleSwitchInAnim - thumb_func_start sub_8169E44 -sub_8169E44: @ 8169E44 + thumb_func_start WallyHandleReturnMonToBall +WallyHandleReturnMonToBall: @ 8169E44 push {r4-r6,lr} ldr r0, =gBattleBufferA ldr r6, =gActiveBank @@ -2984,7 +2952,7 @@ sub_8169E44: @ 8169E44 adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x1 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r0, =gBattleBankFunc ldrb r1, [r6] lsls r1, 2 @@ -3022,15 +2990,15 @@ _08169EB6: pop {r0} bx r0 .pool - thumb_func_end sub_8169E44 + thumb_func_end WallyHandleReturnMonToBall - thumb_func_start sub_8169EC8 -sub_8169EC8: @ 8169EC8 + thumb_func_start WallyHandleDrawTrainerPic +WallyHandleDrawTrainerPic: @ 8169EC8 push {r4-r6,lr} ldr r4, =gActiveBank ldrb r1, [r4] movs r0, 0x6 - bl LoadBackTrainerBankSpriteGfx + bl DecompressTrainerBackPic ldrb r0, [r4] bl GetBankIdentity adds r1, r0, 0 @@ -3107,15 +3075,15 @@ sub_8169EC8: @ 8169EC8 pop {r0} bx r0 .pool - thumb_func_end sub_8169EC8 + thumb_func_end WallyHandleDrawTrainerPic - thumb_func_start dp01t_07_6_ -dp01t_07_6_: @ 8169F94 + thumb_func_start WallyHandleTrainerSlide +WallyHandleTrainerSlide: @ 8169F94 push {r4-r6,lr} ldr r4, =gActiveBank ldrb r1, [r4] movs r0, 0x6 - bl LoadBackTrainerBankSpriteGfx + bl DecompressTrainerBackPic ldrb r0, [r4] bl GetBankIdentity adds r1, r0, 0 @@ -3192,34 +3160,34 @@ dp01t_07_6_: @ 8169F94 pop {r0} bx r0 .pool - thumb_func_end dp01t_07_6_ + thumb_func_end WallyHandleTrainerSlide - thumb_func_start sub_816A060 -sub_816A060: @ 816A060 + thumb_func_start WallyHandleTrainerSlideBack +WallyHandleTrainerSlideBack: @ 816A060 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A060 + thumb_func_end WallyHandleTrainerSlideBack - thumb_func_start sub_816A06C -sub_816A06C: @ 816A06C + thumb_func_start WallyHandleFaintAnimation +WallyHandleFaintAnimation: @ 816A06C push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A06C + thumb_func_end WallyHandleFaintAnimation - thumb_func_start sub_816A078 -sub_816A078: @ 816A078 + thumb_func_start WallyHandleCmd11 +WallyHandleCmd11: @ 816A078 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A078 + thumb_func_end WallyHandleCmd11 - thumb_func_start sub_816A084 -sub_816A084: @ 816A084 + thumb_func_start WallyHandleCmd12 +WallyHandleCmd12: @ 816A084 push {r4,r5,lr} ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] @@ -3239,7 +3207,7 @@ sub_816A084: @ 816A084 adds r0, r4, 0 adds r1, r4, 0 movs r3, 0x4 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -3250,10 +3218,10 @@ sub_816A084: @ 816A084 pop {r0} bx r0 .pool - thumb_func_end sub_816A084 + thumb_func_end WallyHandleCmd12 - thumb_func_start sub_816A0D8 -sub_816A0D8: @ 816A0D8 + thumb_func_start WallyHandleBallThrow +WallyHandleBallThrow: @ 816A0D8 push {r4,r5,lr} ldr r1, =gBattleBufferA ldr r5, =gActiveBank @@ -3278,7 +3246,7 @@ sub_816A0D8: @ 816A0D8 adds r0, r4, 0 adds r1, r4, 0 movs r3, 0x4 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -3289,18 +3257,18 @@ sub_816A0D8: @ 816A0D8 pop {r0} bx r0 .pool - thumb_func_end sub_816A0D8 + thumb_func_end WallyHandleBallThrow - thumb_func_start sub_816A138 -sub_816A138: @ 816A138 + thumb_func_start WallyHandlePause +WallyHandlePause: @ 816A138 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A138 + thumb_func_end WallyHandlePause - thumb_func_start sub_816A144 -sub_816A144: @ 816A144 + thumb_func_start WallyHandleMoveAnimation +WallyHandleMoveAnimation: @ 816A144 push {r4-r6,lr} ldr r0, =gBattleBufferA mov r12, r0 @@ -3391,14 +3359,14 @@ sub_816A144: @ 816A144 adds r1, 0x10 adds r2, r1 str r2, [r3] - ldr r3, =gUnknown_020244BC + ldr r3, =gTransformedPersonalities ldrb r1, [r6] lsls r1, 2 adds r1, r3 ldr r2, [r2] str r2, [r1] ldrb r1, [r5] - bl sub_805DB8C + bl IsMoveWithoutAnimation lsls r0, 24 lsrs r3, r0, 24 cmp r3, 0 @@ -3427,7 +3395,7 @@ _0816A25A: pop {r0} bx r0 .pool - thumb_func_end sub_816A144 + thumb_func_end WallyHandleMoveAnimation thumb_func_start bx_move_anim_5 bx_move_anim_5: @ 816A26C @@ -3484,7 +3452,7 @@ _0816A2C6: adds r1, r3, 0 adds r2, r3, 0 movs r3, 0x5 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _0816A2E2: ldr r0, [r7] ldrb r1, [r6] @@ -3539,7 +3507,7 @@ _0816A320: adds r0, r2, 0 adds r1, r2, 0 movs r3, 0x6 - bl move_anim_start_t4 + bl DoSpecialBattleAnimation _0816A354: ldr r0, [r7] ldrb r1, [r6] @@ -3570,7 +3538,7 @@ _0816A370: ldrb r2, [r2] lsls r2, 8 orrs r1, r2 - bl sub_805E94C + bl TrySetBehindSubstituteSpriteBit ldr r0, [r7] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -3589,8 +3557,8 @@ _0816A3AC: bx r0 thumb_func_end bx_move_anim_5 - thumb_func_start sub_816A3B8 -sub_816A3B8: @ 816A3B8 + thumb_func_start WallyHandlePrintString +WallyHandlePrintString: @ 816A3B8 push {r4,lr} ldr r0, =gBattle_BG0_X movs r1, 0 @@ -3606,7 +3574,7 @@ sub_816A3B8: @ 816A3B8 bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 @@ -3617,10 +3585,10 @@ sub_816A3B8: @ 816A3B8 pop {r0} bx r0 .pool - thumb_func_end sub_816A3B8 + thumb_func_end WallyHandlePrintString - thumb_func_start dp01t_11_5_message_for_player_only -dp01t_11_5_message_for_player_only: @ 816A40C + thumb_func_start WallyHandlePrintStringPlayerOnly +WallyHandlePrintStringPlayerOnly: @ 816A40C push {lr} ldr r0, =gActiveBank ldrb r0, [r0] @@ -3628,7 +3596,7 @@ dp01t_11_5_message_for_player_only: @ 816A40C lsls r0, 24 cmp r0, 0 bne _0816A428 - bl sub_816A3B8 + bl WallyHandlePrintString b _0816A42C .pool _0816A428: @@ -3636,7 +3604,7 @@ _0816A428: _0816A42C: pop {r0} bx r0 - thumb_func_end dp01t_11_5_message_for_player_only + thumb_func_end WallyHandlePrintStringPlayerOnly thumb_func_start sub_816A430 sub_816A430: @ 816A430 @@ -3664,8 +3632,8 @@ _0816A456: .pool thumb_func_end sub_816A430 - thumb_func_start dp01t_12_1_battle_menu -dp01t_12_1_battle_menu: @ 816A470 + thumb_func_start WallyHandleChooseAction +WallyHandleChooseAction: @ 816A470 push {r4,lr} ldr r1, =gBattleBankFunc ldr r0, =gActiveBank @@ -3676,7 +3644,7 @@ dp01t_12_1_battle_menu: @ 816A470 str r1, [r0] ldr r0, =gText_BattleMenu movs r1, 0x2 - bl sub_814F9EC + bl BattleHandleAddTextPrinter movs r4, 0 _0816A48A: lsls r0, r4, 24 @@ -3696,23 +3664,23 @@ _0816A48A: bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0x1 - bl sub_814F9EC + bl BattleHandleAddTextPrinter pop {r4} pop {r0} bx r0 .pool - thumb_func_end dp01t_12_1_battle_menu + thumb_func_end WallyHandleChooseAction - thumb_func_start sub_816A4D8 -sub_816A4D8: @ 816A4D8 + thumb_func_start WallyHandleCmd19 +WallyHandleCmd19: @ 816A4D8 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A4D8 + thumb_func_end WallyHandleCmd19 - thumb_func_start sub_816A4E4 -sub_816A4E4: @ 816A4E4 + thumb_func_start WallyHandleChooseMove +WallyHandleChooseMove: @ 816A4E4 push {r4,lr} ldr r4, =gBattleStruct ldr r1, [r4] @@ -3732,7 +3700,7 @@ _0816A504: beq _0816A550 b _0816A574 _0816A50A: - bl sub_805C210 + bl InitMoveSelectionsVarsAndStrings ldr r1, [r4] adds r1, 0x95 ldrb r0, [r1] @@ -3777,16 +3745,16 @@ _0816A550: lsls r2, 1 movs r0, 0x1 movs r1, 0xA - bl EmitCmd33 + bl EmitTwoReturnValues bl WallyBufferExecCompleted _0816A574: pop {r4} pop {r0} bx r0 - thumb_func_end sub_816A4E4 + thumb_func_end WallyHandleChooseMove - thumb_func_start sub_816A57C -sub_816A57C: @ 816A57C + thumb_func_start WallyHandleOpenBag +WallyHandleOpenBag: @ 816A57C push {lr} sub sp, 0x4 movs r0, 0x1 @@ -3810,26 +3778,26 @@ sub_816A57C: @ 816A57C pop {r0} bx r0 .pool - thumb_func_end sub_816A57C + thumb_func_end WallyHandleOpenBag - thumb_func_start sub_816A5BC -sub_816A5BC: @ 816A5BC + thumb_func_start WallyHandleChoosePokemon +WallyHandleChoosePokemon: @ 816A5BC push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A5BC + thumb_func_end WallyHandleChoosePokemon - thumb_func_start sub_816A5C8 -sub_816A5C8: @ 816A5C8 + thumb_func_start WallyHandleCmd23 +WallyHandleCmd23: @ 816A5C8 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A5C8 + thumb_func_end WallyHandleCmd23 - thumb_func_start sub_816A5D4 -sub_816A5D4: @ 816A5D4 + thumb_func_start WallyHandleHealthBarUpdate +WallyHandleHealthBarUpdate: @ 816A5D4 push {r4-r7,lr} mov r7, r9 mov r6, r8 @@ -3929,138 +3897,138 @@ _0816A69E: pop {r0} bx r0 .pool - thumb_func_end sub_816A5D4 + thumb_func_end WallyHandleHealthBarUpdate - thumb_func_start sub_816A6D4 -sub_816A6D4: @ 816A6D4 + thumb_func_start WallyHandleExpUpdate +WallyHandleExpUpdate: @ 816A6D4 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A6D4 + thumb_func_end WallyHandleExpUpdate - thumb_func_start sub_816A6E0 -sub_816A6E0: @ 816A6E0 + thumb_func_start WallyHandleStatusIconUpdate +WallyHandleStatusIconUpdate: @ 816A6E0 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A6E0 + thumb_func_end WallyHandleStatusIconUpdate - thumb_func_start sub_816A6EC -sub_816A6EC: @ 816A6EC + thumb_func_start WallyHandleStatusAnimation +WallyHandleStatusAnimation: @ 816A6EC push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A6EC + thumb_func_end WallyHandleStatusAnimation - thumb_func_start sub_816A6F8 -sub_816A6F8: @ 816A6F8 + thumb_func_start WallyHandleStatusXor +WallyHandleStatusXor: @ 816A6F8 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A6F8 + thumb_func_end WallyHandleStatusXor - thumb_func_start sub_816A704 -sub_816A704: @ 816A704 + thumb_func_start WallyHandleDataTransfer +WallyHandleDataTransfer: @ 816A704 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A704 + thumb_func_end WallyHandleDataTransfer - thumb_func_start sub_816A710 -sub_816A710: @ 816A710 + thumb_func_start WallyHandleDMA3Transfer +WallyHandleDMA3Transfer: @ 816A710 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A710 + thumb_func_end WallyHandleDMA3Transfer - thumb_func_start sub_816A71C -sub_816A71C: @ 816A71C + thumb_func_start WallyHandlePlayBGM +WallyHandlePlayBGM: @ 816A71C push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A71C + thumb_func_end WallyHandlePlayBGM - thumb_func_start sub_816A728 -sub_816A728: @ 816A728 + thumb_func_start WallyHandleCmd32 +WallyHandleCmd32: @ 816A728 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A728 + thumb_func_end WallyHandleCmd32 - thumb_func_start sub_816A734 -sub_816A734: @ 816A734 + thumb_func_start WallyHandleCmd33 +WallyHandleCmd33: @ 816A734 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A734 + thumb_func_end WallyHandleCmd33 - thumb_func_start sub_816A740 -sub_816A740: @ 816A740 + thumb_func_start WallyHandleCmd34 +WallyHandleCmd34: @ 816A740 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A740 + thumb_func_end WallyHandleCmd34 - thumb_func_start sub_816A74C -sub_816A74C: @ 816A74C + thumb_func_start WallyHandleCmd35 +WallyHandleCmd35: @ 816A74C push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A74C + thumb_func_end WallyHandleCmd35 - thumb_func_start sub_816A758 -sub_816A758: @ 816A758 + thumb_func_start WallyHandleCmd36 +WallyHandleCmd36: @ 816A758 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A758 + thumb_func_end WallyHandleCmd36 - thumb_func_start sub_816A764 -sub_816A764: @ 816A764 + thumb_func_start WallyHandleCmd37 +WallyHandleCmd37: @ 816A764 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A764 + thumb_func_end WallyHandleCmd37 - thumb_func_start sub_816A770 -sub_816A770: @ 816A770 + thumb_func_start WallyHandleCmd38 +WallyHandleCmd38: @ 816A770 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A770 + thumb_func_end WallyHandleCmd38 - thumb_func_start sub_816A77C -sub_816A77C: @ 816A77C + thumb_func_start WallyHandleCmd39 +WallyHandleCmd39: @ 816A77C push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A77C + thumb_func_end WallyHandleCmd39 - thumb_func_start sub_816A788 -sub_816A788: @ 816A788 + thumb_func_start WallyHandleCmd40 +WallyHandleCmd40: @ 816A788 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A788 + thumb_func_end WallyHandleCmd40 - thumb_func_start sub_816A794 -sub_816A794: @ 816A794 + thumb_func_start WallyHandleHitAnimation +WallyHandleHitAnimation: @ 816A794 push {r4,lr} ldr r3, =gSprites ldr r2, =gBankSpriteIds @@ -4094,7 +4062,7 @@ _0816A7C8: movs r1, 0 strh r1, [r0, 0x30] ldrb r0, [r4] - bl sub_80769F4 + bl DoHitAnimHealthboxEffect ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 @@ -4106,18 +4074,18 @@ _0816A7F2: pop {r0} bx r0 .pool - thumb_func_end sub_816A794 + thumb_func_end WallyHandleHitAnimation - thumb_func_start sub_816A804 -sub_816A804: @ 816A804 + thumb_func_start WallyHandleCmd42 +WallyHandleCmd42: @ 816A804 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816A804 + thumb_func_end WallyHandleCmd42 - thumb_func_start sub_816A810 -sub_816A810: @ 816A810 + thumb_func_start WallyHandleEffectivenessSound +WallyHandleEffectivenessSound: @ 816A810 push {lr} ldr r2, =gBattleBufferA ldr r0, =gActiveBank @@ -4136,10 +4104,10 @@ sub_816A810: @ 816A810 pop {r0} bx r0 .pool - thumb_func_end sub_816A810 + thumb_func_end WallyHandleEffectivenessSound - thumb_func_start sub_816A840 -sub_816A840: @ 816A840 + thumb_func_start WallyHandlePlayFanfareOrBGM +WallyHandlePlayFanfareOrBGM: @ 816A840 push {r4,r5,lr} ldr r4, =gBattleBufferA ldr r5, =gActiveBank @@ -4179,10 +4147,10 @@ _0816A890: pop {r4,r5} pop {r0} bx r0 - thumb_func_end sub_816A840 + thumb_func_end WallyHandlePlayFanfareOrBGM - thumb_func_start sub_816A89C -sub_816A89C: @ 816A89C + thumb_func_start WallyHandleFaintingCry +WallyHandleFaintingCry: @ 816A89C push {lr} ldr r1, =gBattlePartyID ldr r0, =gActiveBank @@ -4204,10 +4172,10 @@ sub_816A89C: @ 816A89C pop {r0} bx r0 .pool - thumb_func_end sub_816A89C + thumb_func_end WallyHandleFaintingCry - thumb_func_start dp01t_2E_5_battle_intro -dp01t_2E_5_battle_intro: @ 816A8D8 + thumb_func_start WallyHandleIntroSlide +WallyHandleIntroSlide: @ 816A8D8 push {lr} ldr r1, =gBattleBufferA ldr r0, =gActiveBank @@ -4216,7 +4184,7 @@ dp01t_2E_5_battle_intro: @ 816A8D8 adds r1, 0x1 adds r0, r1 ldrb r0, [r0] - bl battle_intro_launch + bl HandleIntroSlide ldr r2, =gUnknown_020243FC ldrh r0, [r2] movs r1, 0x1 @@ -4226,10 +4194,10 @@ dp01t_2E_5_battle_intro: @ 816A8D8 pop {r0} bx r0 .pool - thumb_func_end dp01t_2E_5_battle_intro + thumb_func_end WallyHandleIntroSlide - thumb_func_start sub_816A90C -sub_816A90C: @ 816A90C + thumb_func_start WallyHandleIntroTrainerBallThrow +WallyHandleIntroTrainerBallThrow: @ 816A90C push {r4-r7,lr} ldr r6, =gBankSpriteIds ldr r7, =gActiveBank @@ -4381,7 +4349,7 @@ _0816AA24: pop {r0} bx r0 .pool - thumb_func_end sub_816A90C + thumb_func_end WallyHandleIntroTrainerBallThrow thumb_func_start sub_816AA80 sub_816AA80: @ 816AA80 @@ -4601,8 +4569,8 @@ _0816AC5E: .pool thumb_func_end sub_816AC04 - thumb_func_start sub_816AC78 -sub_816AC78: @ 816AC78 + thumb_func_start WallyHandleDrawPartyStatusSummary +WallyHandleDrawPartyStatusSummary: @ 816AC78 push {r4,r5,lr} ldr r1, =gBattleBufferA ldr r0, =gActiveBank @@ -4656,34 +4624,34 @@ _0816ACE6: pop {r0} bx r0 .pool - thumb_func_end sub_816AC78 + thumb_func_end WallyHandleDrawPartyStatusSummary - thumb_func_start sub_816ACFC -sub_816ACFC: @ 816ACFC + thumb_func_start WallyHandleCmd49 +WallyHandleCmd49: @ 816ACFC push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816ACFC + thumb_func_end WallyHandleCmd49 - thumb_func_start sub_816AD08 -sub_816AD08: @ 816AD08 + thumb_func_start WallyHandleCmd50 +WallyHandleCmd50: @ 816AD08 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816AD08 + thumb_func_end WallyHandleCmd50 - thumb_func_start sub_816AD14 -sub_816AD14: @ 816AD14 + thumb_func_start WallyHandleSpriteInvisibility +WallyHandleSpriteInvisibility: @ 816AD14 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816AD14 + thumb_func_end WallyHandleSpriteInvisibility - thumb_func_start sub_816AD20 -sub_816AD20: @ 816AD20 + thumb_func_start WallyHandleBattleAnimation +WallyHandleBattleAnimation: @ 816AD20 push {r4-r6,lr} sub sp, 0x4 ldr r5, =gBattleBufferA @@ -4704,7 +4672,7 @@ sub_816AD20: @ 816AD20 str r4, [sp] adds r0, r2, 0 adds r1, r2, 0 - bl move_anim_start_t3 + bl DoBattleAnimationFromTable lsls r0, 24 cmp r0, 0 beq _0816AD60 @@ -4724,26 +4692,26 @@ _0816AD6C: pop {r0} bx r0 .pool - thumb_func_end sub_816AD20 + thumb_func_end WallyHandleBattleAnimation - thumb_func_start sub_816AD7C -sub_816AD7C: @ 816AD7C + thumb_func_start WallyHandleLinkStandbyMsg +WallyHandleLinkStandbyMsg: @ 816AD7C push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816AD7C + thumb_func_end WallyHandleLinkStandbyMsg - thumb_func_start sub_816AD88 -sub_816AD88: @ 816AD88 + thumb_func_start WallyHandleResetActionMoveSelection +WallyHandleResetActionMoveSelection: @ 816AD88 push {lr} bl WallyBufferExecCompleted pop {r0} bx r0 - thumb_func_end sub_816AD88 + thumb_func_end WallyHandleResetActionMoveSelection - thumb_func_start sub_816AD94 -sub_816AD94: @ 816AD94 + thumb_func_start WallyHandleCmd55 +WallyHandleCmd55: @ 816AD94 push {r4,lr} ldr r2, =gBattleOutcome ldr r1, =gBattleBufferA @@ -4776,7 +4744,7 @@ _0816ADD0: pop {r0} bx r0 .pool - thumb_func_end sub_816AD94 + thumb_func_end WallyHandleCmd55 thumb_func_start nullsub_118 nullsub_118: @ 816ADF0 diff --git a/asm/battle_frontier_1.s b/asm/battle_frontier_1.s index 7ac60f1be..799e93e4f 100755 --- a/asm/battle_frontier_1.s +++ b/asm/battle_frontier_1.s @@ -6956,7 +6956,7 @@ _08192574: cmp r2, r0 bne _08192598 ldrb r0, [r1, 0x8] - bl sub_806F000 + bl PlayerGenderToFrontTrainerPicId lsls r0, 16 lsrs r0, 16 b _081925B6 @@ -8535,7 +8535,7 @@ _081932A2: ldr r0, =gSaveBlock2Ptr ldr r0, [r0] ldrb r0, [r0, 0x8] - bl sub_806F000 + bl PlayerGenderToFrontTrainerPicId lsls r0, 16 lsrs r0, 16 mov r2, r8 @@ -8621,7 +8621,7 @@ _0819335A: ldr r0, =gSaveBlock2Ptr ldr r0, [r0] ldrb r0, [r0, 0x8] - bl sub_806F000 + bl PlayerGenderToFrontTrainerPicId lsls r0, 16 lsrs r0, 16 b _081933B0 diff --git a/asm/battle_frontier_2.s b/asm/battle_frontier_2.s index 37ddc7ac6..ac92b3c2a 100755 --- a/asm/battle_frontier_2.s +++ b/asm/battle_frontier_2.s @@ -20557,7 +20557,7 @@ _081A5306: movs r1, 0 movs r2, 0x18 movs r3, 0xD - bl sub_8056A3C + bl HandleBattleWindow b _081A553E .pool _081A531C: @@ -20582,29 +20582,29 @@ _081A5328: ldr r4, =gDisplayedStringBattle adds r0, r4, 0 movs r1, 0xF - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gText_Vs movs r1, 0x10 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gText_OpponentMon1Name bl BattleStringExpandPlaceholdersToDisplayedString adds r0, r4, 0 movs r1, 0x11 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gText_Mind movs r1, 0x12 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gText_Skill movs r1, 0x13 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gText_Body movs r1, 0x14 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gText_Judgement bl BattleStringExpandPlaceholdersToDisplayedString adds r0, r4, 0 movs r1, 0x15 - bl sub_814F9EC + bl BattleHandleAddTextPrinter b _081A553E .pool _081A53B4: @@ -20688,7 +20688,7 @@ _081A5464: bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0x15 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldrb r0, [r5] adds r0, 0x1 strb r0, [r5] @@ -20733,7 +20733,7 @@ _081A54D4: movs r1, 0 movs r2, 0x18 movs r3, 0xD - bl sub_8056A3C + bl HandleBattleWindow movs r0, 0 bl CopyBgTilemapBufferToVram ldr r0, =gMPlay_BGM diff --git a/asm/battle_link_817C95C.s b/asm/battle_link_817C95C.s index aa887bc25..fedb50c45 100644 --- a/asm/battle_link_817C95C.s +++ b/asm/battle_link_817C95C.s @@ -110,7 +110,7 @@ _0817CA4C: ldr r1, =gStringInfo ldr r1, [r1] ldrh r1, [r1] - bl sub_817F33C + bl GetBankMoveSlotId lsls r0, 24 lsrs r0, 24 mov r10, r0 @@ -2572,7 +2572,7 @@ _0817E122: mov r1, r10 ldrb r0, [r1] adds r1, r7, 0 - bl sub_817F33C + bl GetBankMoveSlotId lsls r0, 24 lsrs r6, r0, 24 cmp r6, 0x3 @@ -4793,8 +4793,8 @@ _0817F324: .pool thumb_func_end sub_817F2A8 - thumb_func_start sub_817F33C -sub_817F33C: @ 817F33C + thumb_func_start GetBankMoveSlotId +GetBankMoveSlotId: @ 817F33C push {r4-r7,lr} lsls r0, 24 lsrs r5, r0, 24 @@ -4835,7 +4835,7 @@ _0817F388: pop {r4-r7} pop {r1} bx r1 - thumb_func_end sub_817F33C + thumb_func_end GetBankMoveSlotId thumb_func_start sub_817F394 sub_817F394: @ 817F394 @@ -4888,97 +4888,4 @@ _0817F3E6: bx r0 thumb_func_end sub_817F394 - thumb_func_start nullsub_69 -nullsub_69: @ 817F3EC - bx lr - thumb_func_end nullsub_69 - - thumb_func_start sub_817F3F0 -sub_817F3F0: @ 817F3F0 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x4 - mov r9, r0 - mov r8, r1 - adds r5, r2, 0 - adds r4, r3, 0 - lsls r5, 16 - negs r5, r5 - lsls r4, 16 - negs r4, r4 - lsrs r4, 16 - mov r0, r8 - lsls r0, 16 - asrs r0, 16 - mov r8, r0 - asrs r5, 16 - adds r1, r5, 0 - bl Cos - adds r6, r0, 0 - lsls r4, 16 - asrs r4, 16 - mov r0, r8 - adds r1, r4, 0 - bl Sin - subs r6, r0 - lsls r6, 16 - lsrs r6, 16 - mov r0, r8 - adds r1, r4, 0 - bl Cos - adds r2, r0, 0 - mov r0, r8 - adds r1, r5, 0 - str r2, [sp] - bl Sin - ldr r2, [sp] - adds r2, r0 - negs r5, r5 - negs r4, r4 - lsls r6, 16 - asrs r6, 16 - lsls r5, 16 - asrs r5, 16 - adds r6, r5 - mov r0, r9 - strh r6, [r0, 0x24] - lsls r2, 16 - asrs r2, 16 - lsls r4, 16 - asrs r4, 16 - adds r2, r4 - strh r2, [r0, 0x26] - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_817F3F0 - - thumb_func_start GetSpeciesBackAnimId -GetSpeciesBackAnimId: @ 817F474 - push {lr} - lsls r0, 16 - lsrs r0, 16 - ldr r1, =gUnknown_0860A8C8 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _0817F48C - movs r0, 0 - b _0817F492 - .pool -_0817F48C: - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 -_0817F492: - pop {r1} - bx r1 - thumb_func_end GetSpeciesBackAnimId - .align 2, 0 @ Don't pad with nop. diff --git a/asm/battle_transition.s b/asm/battle_transition.s index 2f9637594..6ffa17320 100644 --- a/asm/battle_transition.s +++ b/asm/battle_transition.s @@ -4348,7 +4348,7 @@ sub_8148218: @ 8148218 ldr r0, =gSaveBlock2Ptr ldr r0, [r0] ldrb r0, [r0, 0x8] - bl sub_806F000 + bl PlayerGenderToFrontTrainerPicId lsls r0, 24 lsrs r0, 24 movs r1, 0x88 diff --git a/asm/evolution_scene.s b/asm/evolution_scene.s index e5e9aaab9..1dd5cb4f1 100644 --- a/asm/evolution_scene.s +++ b/asm/evolution_scene.s @@ -1338,7 +1338,7 @@ _0813E6E4: bl StringExpandPlaceholders adds r0, r4, 0 movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gTasks mov r2, r8 adds r1, r2, r7 @@ -1626,7 +1626,7 @@ _0813E99E: bl StringExpandPlaceholders adds r0, r4, 0 movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =0x00000173 bl PlayBGM ldr r2, =gTasks @@ -1868,7 +1868,7 @@ _0813EBE4: _0813EBEC: ldr r0, =gStringVar4 movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r1, =gTasks mov r2, r8 adds r0, r2, r7 @@ -1900,7 +1900,7 @@ _0813EC2A: bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gTasks mov r3, r8 adds r1, r3, r7 @@ -1997,7 +1997,7 @@ _0813ED16: bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gTasks mov r2, r8 adds r1, r2, r7 @@ -2026,7 +2026,7 @@ _0813ED62: bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gTasks mov r3, r8 adds r1, r3, r7 @@ -2051,7 +2051,7 @@ _0813ED90: bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gTasks mov r2, r8 adds r1, r2, r7 @@ -2084,10 +2084,10 @@ _0813EDEA: movs r1, 0x8 movs r2, 0x1D movs r3, 0xD - bl sub_8056A3C + bl HandleBattleWindow ldr r0, =gText_BattleYesNoChoice movs r1, 0xC - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gTasks mov r3, r8 adds r1, r3, r7 @@ -2100,7 +2100,7 @@ _0813EDEA: ldr r0, =gBattleCommunication strb r2, [r0, 0x1] movs r0, 0 - bl BattleCreateCursorAt + bl BattleCreateYesNoCursorAt b _0813F1A4 .pool _0813EE34: @@ -2117,10 +2117,10 @@ _0813EE34: movs r0, 0x5 bl PlaySE ldrb r0, [r4, 0x1] - bl BattleDestroyCursorAt + bl BattleDestroyYesNoCursorAt movs r0, 0 strb r0, [r4, 0x1] - bl BattleCreateCursorAt + bl BattleCreateYesNoCursorAt _0813EE5C: ldr r0, =gMain ldrh r1, [r0, 0x2E] @@ -2135,10 +2135,10 @@ _0813EE5C: movs r0, 0x5 bl PlaySE ldrb r0, [r4, 0x1] - bl BattleDestroyCursorAt + bl BattleDestroyYesNoCursorAt movs r0, 0x1 strb r0, [r4, 0x1] - bl BattleCreateCursorAt + bl BattleCreateYesNoCursorAt _0813EE84: ldr r0, =gMain ldrh r1, [r0, 0x2E] @@ -2152,7 +2152,7 @@ _0813EE84: movs r1, 0x8 movs r2, 0x1D movs r3, 0xD - bl sub_8056A3C + bl HandleBattleWindow movs r0, 0x5 bl PlaySE ldr r0, =gBattleCommunication @@ -2202,7 +2202,7 @@ _0813EF00: movs r1, 0x8 movs r2, 0x1D movs r3, 0xD - bl sub_8056A3C + bl HandleBattleWindow movs r0, 0x5 bl PlaySE ldr r1, =gTasks @@ -2292,7 +2292,7 @@ _0813EFC8: bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r1, =gTasks mov r2, r8 adds r0, r2, r7 @@ -2341,7 +2341,7 @@ _0813F05C: bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gTasks mov r2, r8 adds r1, r2, r7 @@ -2370,7 +2370,7 @@ _0813F0AA: bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r0, =gTasks mov r3, r8 adds r1, r3, r7 @@ -2398,7 +2398,7 @@ _0813F0D8: bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r1, =gTasks mov r2, r8 adds r0, r2, r7 @@ -2414,7 +2414,7 @@ _0813F120: bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r1, =gTasks mov r3, r8 adds r0, r3, r7 @@ -2434,7 +2434,7 @@ _0813F154: bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl sub_814F9EC + bl BattleHandleAddTextPrinter ldr r1, =gTasks mov r2, r8 adds r0, r2, r7 diff --git a/asm/item_menu.s b/asm/item_menu.s index 1e4dfca49..06c0a86ed 100755 --- a/asm/item_menu.s +++ b/asm/item_menu.s @@ -47,14 +47,14 @@ sub_81AABB0: @ 81AABB0 lsls r0, 24 cmp r0, 0 bne _081AABCC - ldr r2, =sub_8059D50 + ldr r2, =SetCB2ToReshowScreenAfterMenu2 movs r0, 0x1 movs r1, 0x5 bl GoToBagMenu b _081AABD4 .pool _081AABCC: - ldr r1, =sub_8059D50 + ldr r1, =SetCB2ToReshowScreenAfterMenu2 movs r0, 0x1 bl sub_81C4F98 _081AABD4: @@ -5634,7 +5634,7 @@ DoWallyTutorialBagMenu: @ 81ADD70 movs r0, 0x4 movs r1, 0x1 bl AddBagItem - ldr r2, =sub_8059D50 + ldr r2, =SetCB2ToReshowScreenAfterMenu2 movs r0, 0xA movs r1, 0 bl GoToBagMenu diff --git a/asm/party_menu.s b/asm/party_menu.s index f2e681b9b..0ab4eb318 100755 --- a/asm/party_menu.s +++ b/asm/party_menu.s @@ -15908,7 +15908,7 @@ sub_81B89AC: @ 81B89AC str r0, [sp] ldr r0, =sub_81B1370 str r0, [sp, 0x4] - ldr r0, =sub_8059D40 + ldr r0, =SetCB2ToReshowScreenAfterMenu str r0, [sp, 0x8] movs r0, 0x1 adds r2, r4, 0 @@ -16828,7 +16828,7 @@ _081B9136: thumb_func_start sub_81B9140 sub_81B9140: @ 81B9140 push {lr} - ldr r0, =sub_8059D40 + ldr r0, =SetCB2ToReshowScreenAfterMenu bl SetMainCallback2 pop {r0} bx r0 diff --git a/asm/pokeball.s b/asm/pokeball.s index fed227c80..0afd27932 100755 --- a/asm/pokeball.s +++ b/asm/pokeball.s @@ -2685,8 +2685,8 @@ _080769EA: .pool thumb_func_end sub_80769CC - thumb_func_start sub_80769F4 -sub_80769F4: @ 80769F4 + thumb_func_start DoHitAnimHealthboxEffect +DoHitAnimHealthboxEffect: @ 80769F4 push {r4,r5,lr} adds r4, r0, 0 lsls r4, 24 @@ -2714,7 +2714,7 @@ sub_80769F4: @ 80769F4 pop {r0} bx r0 .pool - thumb_func_end sub_80769F4 + thumb_func_end DoHitAnimHealthboxEffect thumb_func_start oamc_804BEB4 oamc_804BEB4: @ 8076A38 diff --git a/asm/pokedex.s b/asm/pokedex.s index f9ee0eeab..3d69281c2 100644 --- a/asm/pokedex.s +++ b/asm/pokedex.s @@ -7923,7 +7923,7 @@ _080BF982: ldr r0, =gSaveBlock2Ptr ldr r0, [r0] ldrb r0, [r0, 0x8] - bl sub_806F000 + bl PlayerGenderToFrontTrainerPicId lsls r0, 16 lsrs r0, 16 movs r1, 0x98 diff --git a/asm/pokemon_animation.s b/asm/pokemon_animation.s index a29ecb729..870e658f7 100644 --- a/asm/pokemon_animation.s +++ b/asm/pokemon_animation.s @@ -4,6 +4,100 @@ .syntax unified .text + + + thumb_func_start nullsub_69 +nullsub_69: @ 817F3EC + bx lr + thumb_func_end nullsub_69 + + thumb_func_start sub_817F3F0 +sub_817F3F0: @ 817F3F0 + push {r4-r6,lr} + mov r6, r9 + mov r5, r8 + push {r5,r6} + sub sp, 0x4 + mov r9, r0 + mov r8, r1 + adds r5, r2, 0 + adds r4, r3, 0 + lsls r5, 16 + negs r5, r5 + lsls r4, 16 + negs r4, r4 + lsrs r4, 16 + mov r0, r8 + lsls r0, 16 + asrs r0, 16 + mov r8, r0 + asrs r5, 16 + adds r1, r5, 0 + bl Cos + adds r6, r0, 0 + lsls r4, 16 + asrs r4, 16 + mov r0, r8 + adds r1, r4, 0 + bl Sin + subs r6, r0 + lsls r6, 16 + lsrs r6, 16 + mov r0, r8 + adds r1, r4, 0 + bl Cos + adds r2, r0, 0 + mov r0, r8 + adds r1, r5, 0 + str r2, [sp] + bl Sin + ldr r2, [sp] + adds r2, r0 + negs r5, r5 + negs r4, r4 + lsls r6, 16 + asrs r6, 16 + lsls r5, 16 + asrs r5, 16 + adds r6, r5 + mov r0, r9 + strh r6, [r0, 0x24] + lsls r2, 16 + asrs r2, 16 + lsls r4, 16 + asrs r4, 16 + adds r2, r4 + strh r2, [r0, 0x26] + add sp, 0x4 + pop {r3,r4} + mov r8, r3 + mov r9, r4 + pop {r4-r6} + pop {r0} + bx r0 + thumb_func_end sub_817F3F0 + + thumb_func_start GetSpeciesBackAnimId +GetSpeciesBackAnimId: @ 817F474 + push {lr} + lsls r0, 16 + lsrs r0, 16 + ldr r1, =gUnknown_0860A8C8 + adds r0, r1 + ldrb r0, [r0] + cmp r0, 0 + bne _0817F48C + movs r0, 0 + b _0817F492 + .pool +_0817F48C: + subs r0, 0x1 + lsls r0, 24 + lsrs r0, 24 +_0817F492: + pop {r1} + bx r1 + thumb_func_end GetSpeciesBackAnimId thumb_func_start sub_817F498 sub_817F498: @ 817F498 diff --git a/asm/pokemon_summary_screen.s b/asm/pokemon_summary_screen.s index 7c314f8db..50018de9c 100755 --- a/asm/pokemon_summary_screen.s +++ b/asm/pokemon_summary_screen.s @@ -9861,7 +9861,7 @@ sub_81C4EFC: @ 81C4EFC thumb_func_start sub_81C4F10 sub_81C4F10: @ 81C4F10 push {lr} - ldr r1, =sub_8059D50 + ldr r1, =SetCB2ToReshowScreenAfterMenu2 movs r0, 0x1 bl sub_81C4F98 pop {r0} diff --git a/asm/rom6.s b/asm/rom6.s index b729369c8..87b780ba5 100644 --- a/asm/rom6.s +++ b/asm/rom6.s @@ -547,7 +547,7 @@ _081358D4: thumb_func_start sub_81358F4 sub_81358F4: @ 81358F4 push {lr} - ldr r1, =sub_8059D50 + ldr r1, =SetCB2ToReshowScreenAfterMenu2 movs r0, 0x1 bl sub_81357FC pop {r0} |