diff options
Diffstat (limited to 'asm')
137 files changed, 5742 insertions, 125005 deletions
diff --git a/asm/battle_1.s b/asm/battle_1.s index d1a4e6ea0..9a981e222 100644 --- a/asm/battle_1.s +++ b/asm/battle_1.s @@ -1358,8 +1358,8 @@ _080356AA: .pool thumb_func_end trs_config - thumb_func_start c2_berry_program_update_menu -c2_berry_program_update_menu: @ 80356D0 + thumb_func_start sub_80356D0 +sub_80356D0: @ 80356D0 push {lr} movs r0, 0x2 bl DisableInterrupts @@ -1381,10 +1381,10 @@ c2_berry_program_update_menu: @ 80356D0 pop {r0} bx r0 .pool - thumb_func_end c2_berry_program_update_menu + thumb_func_end sub_80356D0 - thumb_func_start sub_803570C -sub_803570C: @ 803570C + thumb_func_start ApplyPlayerChosenFrameToBattleMenu +ApplyPlayerChosenFrameToBattleMenu: @ 803570C push {lr} movs r0, 0x2 movs r1, 0x12 @@ -1422,10 +1422,10 @@ _0803575A: pop {r0} bx r0 .pool - thumb_func_end sub_803570C + thumb_func_end ApplyPlayerChosenFrameToBattleMenu - thumb_func_start load_battle_oval_graphics -load_battle_oval_graphics: @ 8035770 + thumb_func_start DrawMainBattleBackground +DrawMainBattleBackground: @ 8035770 push {r4,r5,lr} ldr r0, =gBattleTypeFlags ldr r1, [r0] @@ -1547,8 +1547,8 @@ _080358E0: .4byte _08035A40 .4byte _08035A70 _08035904: - ldr r4, =gUnknown_0831ABA8 - ldr r5, =gUnknown_02022FF0 + ldr r4, =gBattleTerrainTable + ldr r5, =gBattleTerrain ldrb r1, [r5] lsls r0, r1, 2 adds r0, r1 @@ -1665,10 +1665,10 @@ _08035A8A: pop {r0} bx r0 .pool - thumb_func_end load_battle_oval_graphics + thumb_func_end DrawMainBattleBackground - thumb_func_start sub_8035AA4 -sub_8035AA4: @ 8035AA4 + thumb_func_start LoadBattleTextboxAndBackground +LoadBattleTextboxAndBackground: @ 8035AA4 push {lr} ldr r0, =gUnknown_08C00000 movs r1, 0xC0 @@ -1685,12 +1685,12 @@ sub_8035AA4: @ 8035AA4 movs r1, 0 movs r2, 0x40 bl LoadCompressedPalette - bl sub_803570C - bl load_battle_oval_graphics + bl ApplyPlayerChosenFrameToBattleMenu + bl DrawMainBattleBackground pop {r0} bx r0 .pool - thumb_func_end sub_8035AA4 + thumb_func_end LoadBattleTextboxAndBackground thumb_func_start sub_8035AE4 sub_8035AE4: @ 8035AE4 @@ -1888,7 +1888,7 @@ sub_8035C4C: @ 8035C4C bne _08035C68 ldr r0, =gText_Draw movs r1, 0x15 - bl battle_show_message_maybe + bl sub_814F9EC b _08035D68 .pool _08035C68: @@ -1964,10 +1964,10 @@ _08035CE2: _08035CFC: ldr r0, =gText_Win movs r1, 0x17 - bl battle_show_message_maybe + bl sub_814F9EC ldr r0, =gText_Loss movs r1, 0x16 - bl battle_show_message_maybe + bl sub_814F9EC b _08035D68 .pool _08035D20: @@ -1985,19 +1985,19 @@ _08035D20: _08035D36: ldr r0, =gText_Win movs r1, 0x16 - bl battle_show_message_maybe + bl sub_814F9EC ldr r0, =gText_Loss movs r1, 0x17 - bl battle_show_message_maybe + bl sub_814F9EC b _08035D68 .pool _08035D58: ldr r0, =gText_Win movs r1, 0x17 - bl battle_show_message_maybe + bl sub_814F9EC ldr r0, =gText_Loss movs r1, 0x16 - bl battle_show_message_maybe + bl sub_814F9EC _08035D68: pop {r0} bx r0 @@ -2068,14 +2068,14 @@ _08035DDC: _08035DE6: adds r0, r1, 0 movs r1, 0x11 - bl battle_show_message_maybe + bl sub_814F9EC ldrb r1, [r4, 0x18] movs r0, 0x4 b _08035E14 _08035DF4: adds r0, r1, 0 movs r1, 0x12 - bl battle_show_message_maybe + bl sub_814F9EC ldrb r1, [r4, 0x18] movs r0, 0x4 str r0, [sp] @@ -2085,7 +2085,7 @@ _08035DF4: _08035E08: adds r0, r1, 0 movs r1, 0x13 - bl battle_show_message_maybe + bl sub_814F9EC ldrb r1, [r4, 0x18] movs r0, 0x8 _08035E14: @@ -2099,7 +2099,7 @@ _08035E1A: _08035E22: adds r0, r1, 0 movs r1, 0x14 - bl battle_show_message_maybe + bl sub_814F9EC 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 battle_show_message_maybe + bl sub_814F9EC lsls r0, r6, 3 subs r0, r6 lsls r0, 2 adds r1, r0, r4 adds r0, r1, 0 movs r1, 0x10 - bl battle_show_message_maybe + bl sub_814F9EC movs r4, 0x7 str r4, [sp] adds r0, r7, 0 @@ -2236,7 +2236,7 @@ _08035F64: ldrsh r0, [r5, r1] cmp r0, 0 beq _08035FCC - ldr r4, =gUnknown_02022E18 + ldr r4, =gBattle_BG1_X ldrh r0, [r5, 0xA] bl Sin2 lsls r0, 16 @@ -2251,7 +2251,7 @@ _08035F7E: adds r0, r2, 0 subs r0, r1 strh r0, [r4] - ldr r4, =gUnknown_02022E1C + ldr r4, =gBattle_BG2_X ldrh r0, [r5, 0xC] bl Sin2 lsls r0, 16 @@ -2266,16 +2266,16 @@ _08035F9C: adds r0, r3, 0 subs r0, r1 strh r0, [r4] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y ldr r2, =0x0000ffdc adds r1, r2, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r1, [r0] b _08036038 .pool _08035FCC: - ldr r4, =gUnknown_02022E18 + ldr r4, =gBattle_BG1_X ldrh r0, [r5, 0xA] bl Sin2 lsls r0, 16 @@ -2290,7 +2290,7 @@ _08035FDE: adds r0, r3, 0 subs r0, r1 strh r0, [r4] - ldr r4, =gUnknown_02022E1A + ldr r4, =gBattle_BG1_Y ldrh r0, [r5, 0xA] bl Cos2 lsls r0, 16 @@ -2302,7 +2302,7 @@ _08035FFC: asrs r0, 5 subs r0, 0xA4 strh r0, [r4] - ldr r4, =gUnknown_02022E1C + ldr r4, =gBattle_BG2_X ldrh r0, [r5, 0xC] bl Sin2 lsls r0, 16 @@ -2317,7 +2317,7 @@ _08036014: adds r0, r2, 0 subs r0, r1 strh r0, [r4] - ldr r4, =gUnknown_02022E1E + ldr r4, =gBattle_BG2_Y ldrh r0, [r5, 0xC] bl Cos2 lsls r0, 16 @@ -2457,8 +2457,8 @@ _08036138: .pool thumb_func_end task00_0800F6FC - thumb_func_start sub_8036154 -sub_8036154: @ 8036154 + thumb_func_start LoadBattleEntryBackground +LoadBattleEntryBackground: @ 8036154 push {r4,r5,lr} ldr r0, =gBattleTypeFlags ldr r1, [r0] @@ -2504,11 +2504,11 @@ sub_8036154: @ 8036154 movs r0, 0x4A movs r1, 0x36 bl SetGpuReg - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y ldr r2, =0x0000ff5c adds r1, r2, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r1, [r0] ldr r0, =gUnknown_0831AA00 bl LoadCompressedObjectPicUsingHeap @@ -2632,8 +2632,8 @@ _08036350: lsls r0, 24 cmp r0, 0 bne _0803639C - ldr r4, =gUnknown_0831ABA8 - ldr r5, =gUnknown_02022FF0 + ldr r4, =gBattleTerrainTable + ldr r5, =gBattleTerrain ldrb r1, [r5] lsls r0, r1, 2 adds r0, r1 @@ -2668,10 +2668,10 @@ _080363AC: pop {r0} bx r0 .pool - thumb_func_end sub_8036154 + thumb_func_end LoadBattleEntryBackground - thumb_func_start sub_80363C4 -sub_80363C4: @ 80363C4 + thumb_func_start LoadChosenBattleElement +LoadChosenBattleElement: @ 80363C4 push {r4,lr} lsls r0, 24 lsrs r0, 24 @@ -2778,8 +2778,8 @@ _080364A8: .4byte _08036510 .4byte _08036518 _080364CC: - ldr r2, =gUnknown_0831ABA8 - ldr r0, =gUnknown_02022FF0 + ldr r2, =gBattleTerrainTable + ldr r0, =gBattleTerrain ldrb r1, [r0] lsls r0, r1, 2 adds r0, r1 @@ -2888,8 +2888,8 @@ _080365B4: .4byte _0803661C .4byte _08036624 _080365D8: - ldr r2, =gUnknown_0831ABA8 - ldr r0, =gUnknown_02022FF0 + ldr r2, =gBattleTerrainTable + ldr r0, =gBattleTerrain ldrb r1, [r0] lsls r0, r1, 2 adds r0, r1 @@ -3003,8 +3003,8 @@ _080366C8: .4byte _08036738 .4byte _08036740 _080366EC: - ldr r2, =gUnknown_0831ABA8 - ldr r0, =gUnknown_02022FF0 + ldr r2, =gBattleTerrainTable + ldr r0, =gBattleTerrain ldrb r1, [r0] lsls r0, r1, 2 adds r0, r1 @@ -3051,7 +3051,7 @@ _08036742: b _08036758 .pool _08036750: - bl sub_803570C + bl ApplyPlayerChosenFrameToBattleMenu b _08036758 _08036756: movs r4, 0x1 @@ -3060,6 +3060,6 @@ _08036758: pop {r4} pop {r1} bx r1 - thumb_func_end sub_80363C4 + thumb_func_end LoadChosenBattleElement .align 2, 0 @ Don't pad with nop. diff --git a/asm/battle_2.s b/asm/battle_2.s deleted file mode 100644 index fb0073566..000000000 --- a/asm/battle_2.s +++ /dev/null @@ -1,16487 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - - thumb_func_start sub_8036760 -sub_8036760: @ 8036760 - push {lr} - bl MoveSaveBlocks_ResetHeap - bl sub_8056F28 - bl dp11_init - bl init_uns_table_pokemon_copy - bl sub_8185F84 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080367CC - movs r0, 0x80 - lsls r0, 17 - ands r0, r1 - cmp r0, 0 - beq _08036798 - bl InitBattle - b _080367BA - .pool -_08036798: - movs r0, 0x80 - lsls r0, 15 - ands r1, r0 - cmp r1, 0 - bne _080367B4 - bl battle_wireless_setup_if_required_maybe - ldr r0, =sub_8037ADC - bl SetMainCallback2 - b _080367BA - .pool -_080367B4: - ldr r0, =intro_end - bl SetMainCallback2 -_080367BA: - ldr r1, =gBattleCommunication - movs r0, 0 - strb r0, [r1] - b _080367D0 - .pool -_080367CC: - bl InitBattle -_080367D0: - pop {r0} - bx r0 - thumb_func_end sub_8036760 - - thumb_func_start InitBattle -InitBattle: @ 80367D4 - push {r4,r5,lr} - sub sp, 0x4 - movs r0, 0 - bl SetHBlankCallback - movs r0, 0 - bl SetVBlankCallback - movs r0, 0 - str r0, [sp] - movs r1, 0xC0 - lsls r1, 19 - ldr r2, =0x05006000 - mov r0, sp - bl CpuSet - movs r0, 0x4C - movs r1, 0 - bl SetGpuReg - movs r0, 0x40 - movs r1, 0xF0 - bl SetGpuReg - ldr r1, =0x00005051 - movs r0, 0x44 - bl SetGpuReg - movs r0, 0x48 - movs r1, 0 - bl SetGpuReg - movs r0, 0x4A - movs r1, 0 - bl SetGpuReg - ldr r0, =gUnknown_02022E24 - movs r2, 0xF0 - strh r2, [r0] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 15 - ands r0, r1 - cmp r0, 0 - beq _08036870 - ldr r0, =gPartnerTrainerId - ldrh r1, [r0] - ldr r0, =0x00000c03 - cmp r1, r0 - beq _08036870 - ldr r1, =gUnknown_02022E26 - movs r0, 0x9F - strh r0, [r1] - ldr r0, =gUnknown_02022E28 - strh r2, [r0] - ldr r1, =gUnknown_02022E2A - movs r0, 0x20 - strh r0, [r1] - b _080368BE - .pool -_08036870: - ldr r0, =gUnknown_02022E26 - ldr r2, =0x00005051 - adds r1, r2, 0 - strh r1, [r0] - bl dp12_8087EA4 - ldr r0, =gUnknown_02038C28 - movs r3, 0xF0 - movs r5, 0xF0 - lsls r5, 3 - adds r2, r0, r5 - movs r1, 0x4F -_08036888: - strh r3, [r0] - strh r3, [r2] - adds r2, 0x2 - adds r0, 0x2 - subs r1, 0x1 - cmp r1, 0 - bge _08036888 - movs r1, 0x50 - ldr r4, =gUnknown_0831AC70 - ldr r0, =gUnknown_02038C28 - ldr r3, =0x0000ff10 - movs r5, 0x82 - lsls r5, 4 - adds r2, r0, r5 - adds r0, 0xA0 -_080368A6: - strh r3, [r0] - strh r3, [r2] - adds r2, 0x2 - adds r0, 0x2 - adds r1, 0x1 - cmp r1, 0x9F - ble _080368A6 - ldr r0, [r4] - ldr r1, [r4, 0x4] - ldr r2, [r4, 0x8] - bl sub_80BA038 -_080368BE: - bl ResetPaletteFade - ldr r0, =gUnknown_02022E14 - movs r1, 0 - strh r1, [r0] - ldr r0, =gUnknown_02022E16 - strh r1, [r0] - ldr r0, =gUnknown_02022E18 - strh r1, [r0] - ldr r0, =gUnknown_02022E1A - strh r1, [r0] - ldr r0, =gUnknown_02022E1C - strh r1, [r0] - ldr r0, =gUnknown_02022E1E - strh r1, [r0] - ldr r0, =gUnknown_02022E20 - strh r1, [r0] - ldr r0, =gUnknown_02022E22 - strh r1, [r0] - bl sub_80B0BD0 - ldr r2, =gUnknown_02022FF0 - strb r0, [r2] - ldr r4, =gBattleTypeFlags - ldr r0, [r4] - movs r1, 0x80 - lsls r1, 17 - ands r0, r1 - cmp r0, 0 - beq _080368FE - movs r0, 0x8 - strb r0, [r2] -_080368FE: - bl c2_berry_program_update_menu - bl sub_8035AA4 - bl ResetSpriteData - bl ResetTasks - bl sub_8036154 - bl FreeAllSpritePalettes - ldr r1, =gReservedSpritePaletteCount - movs r0, 0x4 - strb r0, [r1] - ldr r0, =vblank_cb_08078BB4 - bl SetVBlankCallback - bl sub_803269C - ldr r2, [r4] - movs r1, 0xA0 - lsls r1, 1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, r1 - beq _0803693E - ldr r1, =0x00400040 - adds r0, r2, 0 - ands r0, r1 - cmp r0, r1 - bne _08036994 -_0803693E: - ldr r0, =sub_8037458 - bl SetMainCallback2 - b _080369AE - .pool -_08036994: - movs r0, 0x40 - ands r2, r0 - cmp r2, 0 - beq _080369A8 - ldr r0, =sub_8037DF4 - bl SetMainCallback2 - b _080369AE - .pool -_080369A8: - ldr r0, =sub_8036FAC - bl SetMainCallback2 -_080369AE: - ldr r5, =gBattleTypeFlags - ldr r0, [r5] - ldr r1, =0x01000002 - ands r0, r1 - cmp r0, 0 - bne _080369E8 - ldr r4, =gEnemyParty - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - adds r0, r4, 0 - movs r2, 0x1 - bl CreateNPCTrainerParty - ldr r0, [r5] - movs r1, 0x80 - lsls r1, 8 - ands r0, r1 - cmp r0, 0 - beq _080369E4 - movs r1, 0x96 - lsls r1, 1 - adds r0, r4, r1 - ldr r1, =gTrainerBattleOpponent_B - ldrh r1, [r1] - movs r2, 0 - bl CreateNPCTrainerParty -_080369E4: - bl SetWildMonHeldItem -_080369E8: - ldr r1, =gMain - ldr r2, =0x00000439 - adds r1, r2 - ldrb r0, [r1] - movs r2, 0x2 - orrs r0, r2 - strb r0, [r1] - ldr r0, =gSaveBlock2Ptr - ldr r1, [r0] - ldr r5, =0x00000ca9 - adds r1, r5 - ldrb r2, [r1] - movs r0, 0x9 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - ldr r4, =gPlayerParty - movs r0, 0xFA - lsls r0, 1 - adds r5, r4, r0 -_08036A10: - adds r0, r4, 0 - movs r1, 0x3 - bl AdjustFriendship - adds r4, 0x64 - cmp r4, r5 - ble _08036A10 - movs r1, 0 - ldr r0, =gBattleCommunication - strb r1, [r0] - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end InitBattle - - thumb_func_start sub_8036A5C -sub_8036A5C: @ 8036A5C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r6, 0 - mov r9, r6 - movs r0, 0xCE - lsls r0, 1 - mov r10, r0 - mov r8, r6 -_08036A72: - movs r0, 0x64 - mov r4, r9 - muls r4, r0 - ldr r0, =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - lsls r0, 16 - lsrs r7, r0, 16 - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData - adds r1, r0, 0 - cmp r5, 0 - beq _08036AEE - cmp r5, r10 - beq _08036ABA - cmp r7, 0 - beq _08036ABA - cmp r1, 0 - bne _08036ABA - movs r0, 0x1 - mov r2, r8 - lsls r0, r2 - orrs r6, r0 - lsls r0, r6, 16 - lsrs r6, r0, 16 -_08036ABA: - cmp r5, 0 - beq _08036AEE - cmp r7, 0 - beq _08036AD6 - cmp r5, r10 - beq _08036ACA - cmp r1, 0 - beq _08036AD6 -_08036ACA: - movs r0, 0x2 - mov r1, r8 - lsls r0, r1 - orrs r6, r0 - lsls r0, r6, 16 - lsrs r6, r0, 16 -_08036AD6: - cmp r5, 0 - beq _08036AEE - cmp r5, r10 - beq _08036AEE - cmp r7, 0 - bne _08036AEE - movs r0, 0x3 - mov r2, r8 - lsls r0, r2 - orrs r6, r0 - lsls r0, r6, 16 - lsrs r6, r0, 16 -_08036AEE: - movs r0, 0x2 - add r8, r0 - movs r1, 0x1 - add r9, r1 - mov r2, r9 - cmp r2, 0x5 - ble _08036A72 - ldr r4, =gBattleStruct - ldr r0, [r4] - movs r1, 0xC1 - lsls r1, 1 - adds r0, r1 - strb r6, [r0] - ldr r0, [r4] - ldr r5, =0x00000183 - adds r0, r5 - lsrs r1, r6, 8 - strb r1, [r0] - ldr r0, =0x000008d2 - bl FlagGet - ldr r1, [r4] - adds r1, r5 - lsls r0, 7 - ldrb r2, [r1] - orrs r0, r2 - strb r0, [r1] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8036A5C - - thumb_func_start sub_8036B44 -sub_8036B44: @ 8036B44 - push {r4-r7,lr} - ldr r0, =gBattleStruct - ldr r5, [r0] - movs r0, 0xC2 - lsls r0, 1 - adds r4, r5, r0 - bl IsEnigmaBerryValid - cmp r0, 0x1 - bne _08036BC0 - movs r2, 0 - ldr r7, =gSaveBlock1Ptr - movs r1, 0xC6 - lsls r1, 1 - adds r5, r1 - adds r6, r7, 0 - ldr r3, =0x000031f8 -_08036B66: - adds r0, r4, r2 - ldr r1, [r6] - adds r1, r3 - adds r1, r2 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x5 - ble _08036B66 - adds r1, r4, r2 - movs r0, 0xFF - strb r0, [r1] - movs r2, 0 - adds r3, r5, 0 - ldr r6, =gSaveBlock1Ptr - ldr r5, =0x00003214 -_08036B86: - adds r0, r3, r2 - ldr r1, [r6] - adds r1, r5 - adds r1, r2 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x11 - ble _08036B86 - ldr r0, [r7] - ldr r1, =0x00003226 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r4, 0x7] - ldr r0, [r7] - adds r1, 0x1 - adds r0, r1 - ldrb r0, [r0] - b _08036C00 - .pool -_08036BC0: - movs r0, 0xAF - bl ItemIdToBerryType - lsls r0, 24 - lsrs r0, 24 - bl GetBerryInfo - adds r3, r0, 0 - movs r2, 0 - movs r0, 0xC6 - lsls r0, 1 - adds r5, r0 -_08036BD8: - adds r0, r4, r2 - adds r1, r3, r2 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x5 - ble _08036BD8 - adds r1, r4, r2 - movs r0, 0xFF - strb r0, [r1] - adds r0, r5, 0 - movs r2, 0 - adds r1, r0, 0 - adds r1, 0x11 -_08036BF4: - strb r2, [r1] - subs r1, 0x1 - cmp r1, r0 - bge _08036BF4 - movs r0, 0 - strb r0, [r4, 0x7] -_08036C00: - strb r0, [r4, 0x1A] - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8036B44 - - thumb_func_start berry_801017C -berry_801017C: @ 8036C08 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08036C20 - b _08036D4C -_08036C20: - bl IsEnigmaBerryValid - cmp r0, 0x1 - bne _08036CDC - movs r5, 0 - ldr r3, =gEnigmaBerries - ldr r0, =gSaveBlock1Ptr - mov r8, r0 - adds r6, r3, 0 - mov r4, r8 - ldr r2, =0x000031f8 - adds r7, r3, 0 - adds r7, 0x38 -_08036C3A: - adds r1, r5, r6 - ldr r0, [r4] - adds r0, r2 - adds r0, r5 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r5, r7 - ldr r0, [r4] - adds r0, r2 - adds r0, r5 - ldrb r0, [r0] - strb r0, [r1] - adds r5, 0x1 - cmp r5, 0x5 - ble _08036C3A - adds r1, r5, r3 - movs r0, 0xFF - strb r0, [r1] - adds r0, r3, 0 - adds r0, 0x38 - adds r0, r5, r0 - movs r1, 0x1 - negs r1, r1 - strb r1, [r0] - movs r5, 0 - adds r7, r3, 0 - adds r7, 0x8 - ldr r4, =gSaveBlock1Ptr - ldr r2, =0x00003214 - adds r6, r3, 0 - adds r6, 0x40 -_08036C78: - adds r1, r5, r7 - ldr r0, [r4] - adds r0, r2 - adds r0, r5 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r5, r6 - ldr r0, [r4] - adds r0, r2 - adds r0, r5 - ldrb r0, [r0] - strb r0, [r1] - adds r5, 0x1 - cmp r5, 0x11 - ble _08036C78 - mov r1, r8 - ldr r0, [r1] - ldr r2, =0x00003226 - adds r0, r2 - ldrb r1, [r0] - strb r1, [r3, 0x7] - ldrb r0, [r0] - adds r1, r3, 0 - adds r1, 0x3F - strb r0, [r1] - mov r4, r8 - ldr r0, [r4] - ldr r1, =0x00003227 - adds r0, r1 - ldrb r1, [r0] - strb r1, [r3, 0x1A] - ldrb r1, [r0] - adds r0, r3, 0 - adds r0, 0x52 - strb r1, [r0] - b _08036EA0 - .pool -_08036CDC: - movs r0, 0xAF - bl ItemIdToBerryType - lsls r0, 24 - lsrs r0, 24 - bl GetBerryInfo - adds r6, r0, 0 - movs r5, 0 - ldr r4, =gEnigmaBerries - adds r7, r4, 0 - adds r7, 0x38 - adds r3, r4, 0 -_08036CF6: - adds r1, r5, r4 - adds r2, r6, r5 - ldrb r0, [r2] - strb r0, [r1] - adds r1, r5, r7 - ldrb r0, [r2] - strb r0, [r1] - adds r5, 0x1 - cmp r5, 0x5 - ble _08036CF6 - adds r1, r5, r3 - movs r0, 0xFF - strb r0, [r1] - adds r0, r3, 0 - adds r0, 0x38 - adds r0, r5, r0 - movs r1, 0x1 - negs r1, r1 - strb r1, [r0] - movs r5, 0 - adds r4, r3, 0 - adds r4, 0x8 - movs r1, 0 - adds r2, r3, 0 - adds r2, 0x40 -_08036D28: - adds r0, r5, r4 - strb r1, [r0] - adds r0, r5, r2 - strb r1, [r0] - adds r5, 0x1 - cmp r5, 0x11 - ble _08036D28 - movs r1, 0 - strb r1, [r3, 0x7] - adds r0, r3, 0 - adds r0, 0x3F - strb r1, [r0] - strb r1, [r3, 0x1A] - adds r0, 0x13 - strb r1, [r0] - b _08036EA0 - .pool -_08036D4C: - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08036DF0 - movs r0, 0x80 - lsls r0, 1 - ands r1, r0 - movs r2, 0x4 - mov r8, r2 - cmp r1, 0 - beq _08036D66 - movs r4, 0x2 - mov r8, r4 -_08036D66: - movs r5, 0 - cmp r5, r8 - blt _08036D6E - b _08036EA0 -_08036D6E: - ldr r0, =gLinkPlayers - mov r12, r0 - ldr r3, =gEnigmaBerries - adds r6, r3, 0 - movs r1, 0x8 - adds r1, r6 - mov r9, r1 -_08036D7C: - lsls r1, r5, 8 - ldr r0, =gUnknown_020223C8 - adds r7, r1, r0 - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - add r0, r12 - ldrb r3, [r0, 0x18] - movs r4, 0 - adds r5, 0x1 - mov r10, r5 - lsls r1, r3, 3 - subs r0, r1, r3 - adds r5, r1, 0 - lsls r0, 2 - adds r1, r0, r6 -_08036D9C: - adds r0, r7, r4 - ldrb r0, [r0] - strb r0, [r1] - adds r1, 0x1 - adds r4, 0x1 - cmp r4, 0x5 - ble _08036D9C - subs r0, r5, r3 - lsls r0, 2 - adds r1, r4, r0 - adds r1, r6 - movs r2, 0xFF - strb r2, [r1] - movs r4, 0 - mov r2, r9 - adds r1, r0, r2 - adds r2, r7, 0 - adds r2, 0x8 -_08036DC0: - adds r0, r2, r4 - ldrb r0, [r0] - strb r0, [r1] - adds r1, 0x1 - adds r4, 0x1 - cmp r4, 0x11 - ble _08036DC0 - subs r0, r5, r3 - lsls r0, 2 - adds r0, r6 - ldrb r1, [r7, 0x7] - strb r1, [r0, 0x7] - ldrb r1, [r7, 0x1A] - strb r1, [r0, 0x1A] - mov r5, r10 - cmp r5, r8 - blt _08036D7C - b _08036EA0 - .pool -_08036DF0: - movs r5, 0 - ldr r4, =gEnigmaBerries - mov r9, r4 -_08036DF6: - lsls r0, r5, 8 - ldr r1, =gUnknown_020223C8 - adds r7, r0, r1 - movs r4, 0 - adds r2, r5, 0x1 - mov r10, r2 - lsls r0, r5, 3 - mov r8, r0 - adds r1, r5, 0x2 - mov r12, r1 - subs r1, r0, r5 - mov r2, r12 - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - mov r2, r9 - adds r3, r0, r2 - lsls r1, 2 - adds r2, r1, r2 -_08036E1C: - adds r0, r7, r4 - ldrb r1, [r0] - strb r1, [r2] - ldrb r0, [r0] - strb r0, [r3] - adds r3, 0x1 - adds r2, 0x1 - adds r4, 0x1 - cmp r4, 0x5 - ble _08036E1C - mov r0, r8 - subs r3, r0, r5 - lsls r3, 2 - adds r1, r4, r3 - add r1, r9 - ldrb r0, [r1] - movs r2, 0xFF - orrs r0, r2 - strb r0, [r1] - mov r0, r12 - lsls r2, r0, 3 - subs r2, r0 - lsls r2, 2 - adds r1, r4, r2 - add r1, r9 - ldrb r0, [r1] - movs r4, 0xFF - orrs r0, r4 - strb r0, [r1] - movs r4, 0 - ldr r0, =gEnigmaBerries - adds r0, 0x8 - adds r2, r0 - adds r3, r0 - adds r6, r7, 0 - adds r6, 0x8 -_08036E64: - adds r0, r6, r4 - ldrb r1, [r0] - strb r1, [r3] - ldrb r0, [r0] - strb r0, [r2] - adds r2, 0x1 - adds r3, 0x1 - adds r4, 0x1 - cmp r4, 0x11 - ble _08036E64 - mov r0, r8 - subs r2, r0, r5 - lsls r2, 2 - add r2, r9 - ldrb r0, [r7, 0x7] - strb r0, [r2, 0x7] - mov r1, r12 - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r9 - ldrb r1, [r7, 0x7] - strb r1, [r0, 0x7] - ldrb r1, [r7, 0x1A] - strb r1, [r2, 0x1A] - ldrb r1, [r7, 0x1A] - strb r1, [r0, 0x1A] - mov r5, r10 - cmp r5, 0x1 - ble _08036DF6 -_08036EA0: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end berry_801017C - - thumb_func_start sub_8036EB8 -sub_8036EB8: @ 8036EB8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r3, r1, 24 - movs r6, 0 - ldr r0, =gUnknown_020223C4 - ldrh r2, [r0] - movs r1, 0x80 - lsls r1, 1 - mov r12, r0 - cmp r2, r1 - bne _08036EFC - cmp r3, 0 - bne _08036EEC - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r2, 0xC - b _08036EF2 - .pool -_08036EEC: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r2, 0x8 -_08036EF2: - orrs r1, r2 - str r1, [r0] - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 -_08036EFC: - cmp r6, 0 - bne _08036FA0 - movs r2, 0 - cmp r2, r4 - bge _08036F20 - ldr r1, =gUnknown_020223C4 - mov r8, r1 - movs r5, 0x80 - lsls r5, 1 -_08036F0E: - adds r1, r5 - adds r2, 0x1 - cmp r2, r4 - bge _08036F20 - mov r7, r8 - ldrh r0, [r7] - ldrh r7, [r1] - cmp r0, r7 - beq _08036F0E -_08036F20: - cmp r2, r4 - bne _08036F48 - cmp r3, 0 - bne _08036F38 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r2, 0xC - b _08036F3E - .pool -_08036F38: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r2, 0x8 -_08036F3E: - orrs r1, r2 - str r1, [r0] - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 -_08036F48: - cmp r6, 0 - bne _08036FA0 - movs r2, 0 - ldr r5, =gBattleTypeFlags - cmp r2, r4 - bge _08036F8A - mov r0, r12 - ldrh r1, [r0] - movs r0, 0xC0 - lsls r0, 2 - cmp r1, r0 - beq _08036F82 -_08036F60: - lsls r0, r2, 8 - add r0, r12 - ldrh r0, [r0] - movs r1, 0xC0 - lsls r1, 2 - cmp r0, r1 - bls _08036F72 - cmp r2, r3 - bne _08036F8A -_08036F72: - adds r2, 0x1 - cmp r2, r4 - bge _08036F8A - lsls r0, r2, 8 - add r0, r12 - ldrh r0, [r0] - cmp r0, r1 - bne _08036F60 -_08036F82: - cmp r2, r3 - beq _08036F60 - cmp r2, r3 - bge _08036F60 -_08036F8A: - cmp r2, r4 - bne _08036F98 - ldr r0, [r5] - movs r1, 0xC - b _08036F9C - .pool -_08036F98: - ldr r0, [r5] - movs r1, 0x8 -_08036F9C: - orrs r0, r1 - str r0, [r5] -_08036FA0: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8036EB8 - - thumb_func_start sub_8036FAC -sub_8036FAC: @ 8036FAC - push {r4-r6,lr} - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl GetMultiplayerId - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, =gBattleScripting - adds r0, 0x25 - strb r6, [r0] - movs r0, 0x1 - adds r5, r6, 0 - eors r5, r0 - ldr r0, =gBattleCommunication - ldrb r0, [r0] - cmp r0, 0x12 - bls _08036FD8 - b _0803744C -_08036FD8: - lsls r0, 2 - ldr r1, =_08036FF0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08036FF0: - .4byte _0803703C - .4byte _08037080 - .4byte _08037144 - .4byte _080371D8 - .4byte _08037200 - .4byte _0803742C - .4byte _08037438 - .4byte _08037230 - .4byte _08037258 - .4byte _0803742C - .4byte _08037438 - .4byte _08037288 - .4byte _080372B0 - .4byte _0803742C - .4byte _08037438 - .4byte _08037318 - .4byte _08037378 - .4byte _080373A0 - .4byte _080373E0 -_0803703C: - bl IsDma3ManagerBusyWithBgCopy - lsls r0, 24 - cmp r0, 0 - bne _08037068 - movs r0, 0 - bl ShowBg - movs r0, 0x1 - bl ShowBg - movs r0, 0x2 - bl ShowBg - movs r0, 0x3 - bl ShowBg - bl sub_805EF14 - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1] -_08037068: - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - bne _08037072 - b _0803744C -_08037072: - bl sub_800E0E8 - b _0803744C - .pool -_08037080: - ldr r2, =gBattleTypeFlags - ldr r1, [r2] - movs r6, 0x2 - adds r0, r1, 0 - ands r0, r6 - cmp r0, 0 - beq _08037124 - ldr r0, =gUnknown_03003124 - ldrb r0, [r0] - cmp r0, 0 - bne _08037098 - b _0803744C -_08037098: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - beq _080370EE - ldr r4, =gBattleStruct - ldr r0, [r4] - movs r5, 0xC0 - lsls r5, 1 - adds r0, r5 - movs r1, 0 - strb r1, [r0] - ldr r0, [r4] - ldr r2, =0x00000181 - adds r1, r0, r2 - movs r0, 0x3 - strb r0, [r1] - bl sub_8036A5C - bl sub_8036B44 - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0xC0 - lsls r0, 4 - cmp r1, r0 - bne _080370D8 - ldr r0, =gLinkPlayers - movs r1, 0 - strh r1, [r0, 0x18] - movs r1, 0x1 - strh r1, [r0, 0x34] -_080370D8: - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, [r4] - adds r1, r5 - movs r2, 0x20 - bl link_0800A448 - ldr r0, =gBattleCommunication - strb r6, [r0] -_080370EE: - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - bne _080370F8 - b _0803744C -_080370F8: - movs r0, 0 - movs r1, 0 - bl sub_800DFB4 - b _0803744C - .pool -_08037124: - movs r0, 0x80 - lsls r0, 17 - ands r0, r1 - cmp r0, 0 - bne _08037134 - movs r0, 0x4 - orrs r1, r0 - str r1, [r2] -_08037134: - ldr r1, =gBattleCommunication - movs r0, 0xF - strb r0, [r1] - bl berry_801017C - b _0803744C - .pool -_08037144: - bl sub_800A550 - movs r1, 0x3 - ands r1, r0 - cmp r1, 0x3 - beq _08037152 - b _0803744C -_08037152: - bl sub_800A5B4 - movs r0, 0x2 - adds r1, r6, 0 - bl sub_8036EB8 - bl berry_801017C - ldr r0, =task00_0800F6FC - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gTasks - lsls r2, r0, 2 - adds r2, r0 - lsls r2, 3 - adds r2, r1 - movs r1, 0 - movs r0, 0x87 - lsls r0, 1 - strh r0, [r2, 0xA] - movs r0, 0x5A - strh r0, [r2, 0xC] - strh r1, [r2, 0x12] - ldr r0, =gBattleStruct - ldr r3, [r0] - movs r4, 0xC1 - lsls r4, 1 - adds r0, r3, r4 - ldrb r1, [r0] - adds r4, 0x1 - adds r0, r3, r4 - ldrb r0, [r0] - lsls r0, 8 - orrs r1, r0 - strh r1, [r2, 0xE] - ldr r1, =gUnknown_020223C4 - lsls r4, r5, 8 - adds r1, 0x2 - adds r4, r1 - ldrh r0, [r4] - strh r0, [r2, 0x10] - lsls r0, r6, 8 - adds r0, r1 - ldrh r0, [r0] - bl sub_8185F90 - ldrh r0, [r4] - bl sub_8185F90 - bl sub_8068AA4 - ldr r1, =gBattleCommunication - b _08037446 - .pool -_080371D8: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - bne _080371E4 - b _0803744C -_080371E4: - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gPlayerParty - movs r2, 0xC8 - bl link_0800A448 - ldr r1, =gBattleCommunication - b _08037446 - .pool -_08037200: - bl sub_800A550 - movs r1, 0x3 - ands r1, r0 - cmp r1, 0x3 - beq _0803720E - b _0803744C -_0803720E: - bl sub_800A5B4 - ldr r0, =gEnemyParty - lsls r1, r5, 8 - ldr r2, =gUnknown_020223C4 - adds r1, r2 - movs r2, 0xC8 - bl memcpy - ldr r1, =gBattleCommunication - b _08037446 - .pool -_08037230: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - bne _0803723C - b _0803744C -_0803723C: - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gPlayerParty + 200 - movs r2, 0xC8 - bl link_0800A448 - ldr r1, =gBattleCommunication - b _08037446 - .pool -_08037258: - bl sub_800A550 - movs r1, 0x3 - ands r1, r0 - cmp r1, 0x3 - beq _08037266 - b _0803744C -_08037266: - bl sub_800A5B4 - ldr r0, =gEnemyParty + 200 - lsls r1, r5, 8 - ldr r2, =gUnknown_020223C4 - adds r1, r2 - movs r2, 0xC8 - bl memcpy - ldr r1, =gBattleCommunication - b _08037446 - .pool -_08037288: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - bne _08037294 - b _0803744C -_08037294: - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gPlayerParty + 400 - movs r2, 0xC8 - bl link_0800A448 - ldr r1, =gBattleCommunication - b _08037446 - .pool -_080372B0: - bl sub_800A550 - movs r1, 0x3 - ands r1, r0 - cmp r1, 0x3 - beq _080372BE - b _0803744C -_080372BE: - bl sub_800A5B4 - ldr r4, =gEnemyParty + 400 - lsls r1, r5, 8 - ldr r0, =gUnknown_020223C4 - adds r1, r0 - adds r0, r4, 0 - movs r2, 0xC8 - bl memcpy - ldr r1, =0xfffffe70 - adds r0, r4, r1 - bl shedinja_something - ldr r2, =0xfffffed4 - adds r0, r4, r2 - bl shedinja_something - adds r0, r4, 0 - subs r0, 0xC8 - bl shedinja_something - adds r0, r4, 0 - subs r0, 0x64 - bl shedinja_something - adds r0, r4, 0 - bl shedinja_something - adds r0, r4, 0 - adds r0, 0x64 - bl shedinja_something - ldr r1, =gBattleCommunication - b _08037446 - .pool -_08037318: - bl sub_8032768 - bl sub_8184E58 - ldr r2, =gBattleCommunication - movs r0, 0 - strb r0, [r2, 0x1] - strb r0, [r2, 0x2] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08037372 - movs r3, 0 - ldr r1, =gLinkPlayers - ldrb r0, [r1] - adds r5, r2, 0 - cmp r0, 0x3 - bne _08037356 - movs r4, 0xFF - adds r2, r1, 0 -_08037344: - adds r2, 0x1C - adds r3, 0x1 - cmp r3, 0x1 - bgt _08037356 - ldrh r1, [r2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0x3 - beq _08037344 -_08037356: - cmp r3, 0x2 - bne _0803736C - movs r0, 0x10 - strb r0, [r5] - b _0803744C - .pool -_0803736C: - movs r0, 0x12 - strb r0, [r5] - b _0803744C -_08037372: - movs r0, 0x12 - strb r0, [r2] - b _0803744C -_08037378: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - beq _0803744C - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_0203BD2C - movs r2, 0x4 - bl link_0800A448 - ldr r1, =gBattleCommunication - b _08037446 - .pool -_080373A0: - bl sub_800A550 - movs r1, 0x3 - ands r1, r0 - cmp r1, 0x3 - bne _0803744C - bl sub_800A5B4 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x4 - ands r0, r1 - cmp r0, 0 - bne _080373CA - ldr r0, =gUnknown_0203BD2C - lsls r1, r5, 8 - ldr r2, =gUnknown_020223C4 - adds r1, r2 - movs r2, 0x4 - bl memcpy -_080373CA: - ldr r1, =gBattleCommunication - b _08037446 - .pool -_080373E0: - ldr r0, =gUnknown_02024333 - adds r1, r0, 0x1 - bl battle_load_something - lsls r0, 24 - cmp r0, 0 - beq _0803744C - ldr r2, =gUnknown_03005D00 - ldr r1, =gMain - ldr r0, [r1] - str r0, [r2] - ldr r0, =sub_8039EF0 - str r0, [r1] - ldr r0, =sub_8038420 - bl SetMainCallback2 - ldr r2, =gBattleTypeFlags - ldr r1, [r2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0803744C - movs r0, 0x20 - orrs r1, r0 - str r1, [r2] - b _0803744C - .pool -_0803742C: - ldr r0, =gBattleCommunication - ldrb r1, [r0] - adds r1, 0x1 - strb r1, [r0] - movs r1, 0x1 - strb r1, [r0, 0x1] -_08037438: - ldr r1, =gBattleCommunication - ldrb r0, [r1, 0x1] - subs r0, 0x1 - strb r0, [r1, 0x1] - lsls r0, 24 - cmp r0, 0 - bne _0803744C -_08037446: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_0803744C: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8036FAC - - thumb_func_start sub_8037458 -sub_8037458: @ 8037458 - push {r4-r7,lr} - sub sp, 0x4 - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl GetMultiplayerId - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, =gBattleScripting - adds r0, 0x25 - strb r6, [r0] - movs r0, 0x1 - adds r7, r6, 0 - eors r7, r0 - ldr r0, =gBattleCommunication - ldrb r0, [r0] - cmp r0, 0x10 - bls _08037486 - b _080379D6 -_08037486: - lsls r0, 2 - ldr r1, =_0803749C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0803749C: - .4byte _080374E0 - .4byte _08037518 - .4byte _0803761C - .4byte _08037670 - .4byte _08037694 - .4byte _08037710 - .4byte _08037734 - .4byte _080377B0 - .4byte _080377CC - .4byte _080377FC - .4byte _08037818 - .4byte _08037848 - .4byte _08037864 - .4byte _08037908 - .4byte _0803793A - .4byte _0803795C - .4byte _080379A0 -_080374E0: - bl IsDma3ManagerBusyWithBgCopy - lsls r0, 24 - cmp r0, 0 - bne _0803750C - movs r0, 0 - bl ShowBg - movs r0, 0x1 - bl ShowBg - movs r0, 0x2 - bl ShowBg - movs r0, 0x3 - bl ShowBg - bl sub_805EF14 - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1] -_0803750C: - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - beq _08037518 - bl sub_800E0E8 -_08037518: - ldr r2, =gBattleTypeFlags - ldr r1, [r2] - movs r3, 0x2 - adds r0, r1, 0 - ands r0, r3 - cmp r0, 0 - beq _080375FC - ldr r0, =gUnknown_03003124 - ldrb r0, [r0] - cmp r0, 0 - bne _08037530 - b _080379D6 -_08037530: - ldr r6, =gLinkPlayers - movs r0, 0 - strh r0, [r6, 0x18] - strh r3, [r6, 0x34] - adds r1, r6, 0 - adds r1, 0x50 - movs r0, 0x1 - strh r0, [r1] - adds r1, 0x1C - movs r0, 0x3 - strh r0, [r1] - adds r0, r6, 0 - adds r0, 0x40 - ldr r4, =gTrainerBattleOpponent_A - ldrh r1, [r4] - bl GetFrontierTrainerName - adds r0, r6, 0 - adds r0, 0x5C - ldr r5, =gTrainerBattleOpponent_B - ldrh r1, [r5] - bl GetFrontierTrainerName - ldrh r1, [r4] - mov r0, sp - bl sub_8165B88 - mov r0, sp - ldrb r0, [r0] - adds r1, r6, 0 - adds r1, 0x52 - strh r0, [r1] - ldrh r1, [r5] - mov r0, sp - bl sub_8165B88 - mov r0, sp - ldrb r1, [r0] - adds r0, r6, 0 - adds r0, 0x6E - strh r1, [r0] - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - beq _080375C4 - ldr r4, =gBattleStruct - ldr r0, [r4] - movs r5, 0xC0 - lsls r5, 1 - adds r0, r5 - movs r1, 0 - strb r1, [r0] - ldr r0, [r4] - ldr r2, =0x00000181 - adds r1, r0, r2 - movs r0, 0x3 - strb r0, [r1] - bl sub_8036A5C - bl sub_8036B44 - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, [r4] - adds r1, r5 - movs r2, 0x20 - bl link_0800A448 - ldr r1, =gBattleCommunication - movs r0, 0x2 - strb r0, [r1] -_080375C4: - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - bne _080375CE - b _080379D6 -_080375CE: - movs r0, 0 - movs r1, 0 - bl sub_800DFB4 - b _080379D6 - .pool -_080375FC: - movs r0, 0x80 - lsls r0, 17 - ands r0, r1 - cmp r0, 0 - bne _0803760C - movs r0, 0x4 - orrs r1, r0 - str r1, [r2] -_0803760C: - ldr r1, =gBattleCommunication - movs r0, 0xD - strb r0, [r1] - bl berry_801017C - b _080379D6 - .pool -_0803761C: - bl sub_800A550 - movs r1, 0x3 - ands r1, r0 - cmp r1, 0x3 - beq _0803762A - b _080379D6 -_0803762A: - bl sub_800A5B4 - movs r0, 0x2 - adds r1, r6, 0 - bl sub_8036EB8 - bl berry_801017C - ldr r0, =task00_0800F6FC - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r2, 0 - movs r0, 0x87 - lsls r0, 1 - strh r0, [r1, 0xA] - movs r0, 0x5A - strh r0, [r1, 0xC] - strh r2, [r1, 0x12] - adds r0, 0xEB - strh r0, [r1, 0xE] - strh r0, [r1, 0x10] - b _08037986 - .pool -_08037670: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - bne _0803767C - b _080379D6 -_0803767C: - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gPlayerParty -_08037686: - movs r2, 0xC8 - bl link_0800A448 - b _08037986 - .pool -_08037694: - bl sub_800A550 - movs r1, 0x3 - ands r1, r0 - cmp r1, 0x3 - beq _080376A2 - b _080379D6 -_080376A2: - bl sub_800A5B4 - ldr r0, =gLinkPlayers - lsls r1, r6, 3 - subs r1, r6 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r1, 0x18] - cmp r0, 0 - beq _080376E8 - ldr r4, =gPlayerParty - lsls r1, r7, 8 - ldr r5, =gUnknown_020223C4 - adds r1, r5 - adds r0, r4, 0 - movs r2, 0xC8 - bl memcpy - movs r0, 0x96 - lsls r0, 1 - adds r4, r0 - lsls r1, r6, 8 - adds r1, r5 - adds r0, r4, 0 - movs r2, 0xC8 - bl memcpy - b _08037986 - .pool -_080376E8: - ldr r4, =gPlayerParty - lsls r1, r6, 8 - ldr r5, =gUnknown_020223C4 - adds r1, r5 - adds r0, r4, 0 - movs r2, 0xC8 - bl memcpy - movs r1, 0x96 - lsls r1, 1 - adds r4, r1 - lsls r1, r7, 8 - adds r1, r5 - adds r0, r4, 0 - movs r2, 0xC8 - b _08037982 - .pool -_08037710: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - bne _0803771C - b _080379D6 -_0803771C: - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gPlayerParty + 200 - movs r2, 0x64 - bl link_0800A448 - b _08037986 - .pool -_08037734: - bl sub_800A550 - movs r1, 0x3 - ands r1, r0 - cmp r1, 0x3 - beq _08037742 - b _080379D6 -_08037742: - bl sub_800A5B4 - ldr r0, =gLinkPlayers - lsls r1, r6, 3 - subs r1, r6 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r1, 0x18] - cmp r0, 0 - beq _08037788 - ldr r4, =gPlayerParty + 200 - lsls r1, r7, 8 - ldr r5, =gUnknown_020223C4 - adds r1, r5 - adds r0, r4, 0 - movs r2, 0x64 - bl memcpy - movs r2, 0x96 - lsls r2, 1 - adds r4, r2 - lsls r1, r6, 8 - adds r1, r5 - adds r0, r4, 0 - movs r2, 0x64 - bl memcpy - b _08037986 - .pool -_08037788: - ldr r4, =gPlayerParty + 200 - lsls r1, r6, 8 - ldr r5, =gUnknown_020223C4 - adds r1, r5 - adds r0, r4, 0 - movs r2, 0x64 - bl memcpy - movs r0, 0x96 - lsls r0, 1 - adds r4, r0 - lsls r1, r7, 8 - adds r1, r5 - adds r0, r4, 0 - movs r2, 0x64 - b _08037982 - .pool -_080377B0: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - bne _080377BC - b _080379D6 -_080377BC: - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gEnemyParty - b _08037686 - .pool -_080377CC: - bl sub_800A550 - movs r1, 0x3 - ands r1, r0 - cmp r1, 0x3 - beq _080377DA - b _080379D6 -_080377DA: - bl sub_800A5B4 - bl GetMultiplayerId - lsls r0, 24 - cmp r0, 0 - bne _080377EA - b _08037986 -_080377EA: - ldr r0, =gEnemyParty - ldr r1, =gUnknown_020223C4 - movs r2, 0xC8 - b _08037982 - .pool -_080377FC: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - bne _08037808 - b _080379D6 -_08037808: - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gEnemyParty + 200 - b _08037686 - .pool -_08037818: - bl sub_800A550 - movs r1, 0x3 - ands r1, r0 - cmp r1, 0x3 - beq _08037826 - b _080379D6 -_08037826: - bl sub_800A5B4 - bl GetMultiplayerId - lsls r0, 24 - cmp r0, 0 - bne _08037836 - b _08037986 -_08037836: - ldr r0, =gEnemyParty + 200 - ldr r1, =gUnknown_020223C4 - movs r2, 0xC8 - b _08037982 - .pool -_08037848: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - bne _08037854 - b _080379D6 -_08037854: - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gEnemyParty + 400 - b _08037686 - .pool -_08037864: - bl sub_800A550 - movs r1, 0x3 - ands r1, r0 - cmp r1, 0x3 - beq _08037872 - b _080379D6 -_08037872: - bl sub_800A5B4 - bl GetMultiplayerId - lsls r0, 24 - cmp r0, 0 - beq _0803788A - ldr r0, =gEnemyParty + 400 - ldr r1, =gUnknown_020223C4 - movs r2, 0xC8 - bl memcpy -_0803788A: - ldr r4, =gPlayerParty - adds r0, r4, 0 - bl shedinja_something - adds r0, r4, 0 - adds r0, 0x64 - bl shedinja_something - adds r0, r4, 0 - adds r0, 0xC8 - bl shedinja_something - movs r1, 0x96 - lsls r1, 1 - adds r0, r4, r1 - bl shedinja_something - movs r2, 0xC8 - lsls r2, 1 - adds r0, r4, r2 - bl shedinja_something - movs r1, 0xFA - lsls r1, 1 - adds r0, r4, r1 - bl shedinja_something - ldr r4, =gEnemyParty - adds r0, r4, 0 - bl shedinja_something - adds r0, r4, 0 - adds r0, 0x64 - bl shedinja_something - adds r0, r4, 0 - adds r0, 0xC8 - bl shedinja_something - movs r2, 0x96 - lsls r2, 1 - adds r0, r4, r2 - bl shedinja_something - movs r1, 0xC8 - lsls r1, 1 - adds r0, r4, r1 - bl shedinja_something - movs r2, 0xFA - lsls r2, 1 - adds r0, r4, r2 - bl shedinja_something - b _08037986 - .pool -_08037908: - bl sub_8032768 - bl sub_8184E58 - ldr r2, =gBattleCommunication - movs r0, 0 - strb r0, [r2, 0x1] - strb r0, [r2, 0x2] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08037934 - movs r0, 0xE - strb r0, [r2] - b _080379D6 - .pool -_08037934: - movs r0, 0x10 - strb r0, [r2] - b _080379D6 -_0803793A: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - beq _080379D6 - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_0203BD2C - movs r2, 0x4 - bl link_0800A448 - b _08037986 - .pool -_0803795C: - bl sub_800A550 - movs r1, 0x3 - ands r1, r0 - cmp r1, 0x3 - bne _080379D6 - bl sub_800A5B4 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x4 - ands r0, r1 - cmp r0, 0 - bne _08037986 - ldr r0, =gUnknown_0203BD2C - lsls r1, r7, 8 - ldr r2, =gUnknown_020223C4 - adds r1, r2 - movs r2, 0x4 -_08037982: - bl memcpy -_08037986: - ldr r1, =gBattleCommunication - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _080379D6 - .pool -_080379A0: - ldr r0, =gUnknown_02024333 - adds r1, r0, 0x1 - bl battle_load_something - lsls r0, 24 - cmp r0, 0 - beq _080379D6 - bl sub_8166188 - ldr r2, =gUnknown_03005D00 - ldr r1, =gMain - ldr r0, [r1] - str r0, [r2] - ldr r0, =sub_8039EF0 - str r0, [r1] - ldr r0, =sub_8038420 - bl SetMainCallback2 - ldr r2, =gBattleTypeFlags - ldr r1, [r2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080379D6 - movs r0, 0x20 - orrs r1, r0 - str r1, [r2] -_080379D6: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8037458 - - thumb_func_start sub_80379F8 -sub_80379F8: @ 80379F8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - movs r0, 0 - mov r8, r0 - ldr r6, =gUnknown_02022FF8 - mov r10, r6 -_08037A12: - ldr r1, [sp] - add r1, r8 - movs r0, 0x64 - adds r4, r1, 0 - muls r4, r0 - ldr r0, =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - mov r1, r8 - lsls r5, r1, 5 - strh r0, [r6] - adds r0, r4, 0 - movs r1, 0xC - bl GetMonData - strh r0, [r6, 0x2] - movs r0, 0x4 - add r0, r10 - mov r9, r0 - adds r7, r5, r0 - adds r0, r4, 0 - movs r1, 0x2 - adds r2, r7, 0 - bl GetMonData - adds r0, r4, 0 - movs r1, 0x38 - bl GetMonData - strb r0, [r6, 0xF] - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - strh r0, [r6, 0x10] - adds r0, r4, 0 - movs r1, 0x3A - bl GetMonData - strh r0, [r6, 0x12] - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData - mov r1, r10 - adds r1, 0x14 - adds r5, r1 - str r0, [r5] - adds r0, r4, 0 - movs r1, 0 - bl GetMonData - str r0, [r6, 0x18] - adds r0, r4, 0 - bl GetMonGender - strb r0, [r6, 0x1C] - adds r0, r7, 0 - bl StripExtCtrlCodes - adds r0, r4, 0 - movs r1, 0x3 - bl GetMonData - cmp r0, 0x1 - beq _08037AA4 - adds r0, r7, 0 - movs r1, 0 - bl sub_81DB4DC -_08037AA4: - adds r6, 0x20 - movs r1, 0x1 - add r8, r1 - mov r0, r8 - cmp r0, 0x2 - ble _08037A12 - ldr r0, =gUnknown_02023058 - ldr r0, [r0] - mov r1, r9 - subs r1, 0x4 - movs r2, 0x60 - bl memcpy - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80379F8 - - thumb_func_start sub_8037ADC -sub_8037ADC: @ 8037ADC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - movs r0, 0x4 - mov r9, r0 - movs r4, 0xF - ldr r6, =gBattleTypeFlags - ldr r0, [r6] - movs r1, 0x80 - lsls r1, 1 - ands r0, r1 - cmp r0, 0 - beq _08037B02 - movs r1, 0x2 - mov r9, r1 - movs r4, 0x3 -_08037B02: - bl GetMultiplayerId - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, =gBattleScripting - adds r0, 0x25 - movs r2, 0 - mov r8, r2 - strb r7, [r0] - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r1, r0, 0 - adds r1, 0xB4 - str r1, [sp] - adds r0, 0xAC - mov r10, r0 - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - ldr r5, =gBattleCommunication - ldrb r0, [r5] - cmp r0, 0x1 - beq _08037BA4 - cmp r0, 0x1 - bgt _08037B50 - cmp r0, 0 - beq _08037B5E - b _08037D0A - .pool -_08037B50: - cmp r0, 0x2 - bne _08037B56 - b _08037C64 -_08037B56: - cmp r0, 0x3 - bne _08037B5C - b _08037C9E -_08037B5C: - b _08037D0A -_08037B5E: - ldr r0, =gUnknown_03003124 - ldrb r0, [r0] - cmp r0, 0 - bne _08037B68 - b _08037D0A -_08037B68: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - bne _08037B74 - b _08037D0A -_08037B74: - ldr r4, =gUnknown_02023058 - movs r0, 0x60 - bl Alloc - str r0, [r4] - movs r0, 0 - bl sub_80379F8 - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, [r4] - movs r2, 0x60 - bl link_0800A448 - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] - b _08037D0A - .pool -_08037BA4: - bl sub_800A550 - adds r1, r4, 0 - ands r1, r0 - cmp r1, r4 - beq _08037BB2 - b _08037D0A -_08037BB2: - bl sub_800A5B4 - movs r5, 0 - cmp r8, r9 - bge _08037C2E - lsls r0, r7, 3 - subs r0, r7 - lsls r6, r0, 2 - mov r8, r5 - ldr r4, =gUnknown_020223C4 -_08037BC6: - cmp r5, r7 - beq _08037C1E - mov r2, r9 - cmp r2, 0x4 - bne _08037C14 - ldr r2, =gLinkPlayers - mov r1, r8 - adds r0, r1, r2 - ldrh r1, [r0, 0x18] - movs r3, 0x1 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _08037BF8 - adds r0, r6, r2 - ldrh r1, [r0, 0x18] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08037C04 - b _08037C1E - .pool -_08037BF8: - adds r0, r6, r2 - ldrh r1, [r0, 0x18] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08037C1E -_08037C04: - ldr r0, =gUnknown_02022FF8 - adds r1, r4, 0 - movs r2, 0x60 - bl memcpy - b _08037C1E - .pool -_08037C14: - ldr r0, =gUnknown_02022FF8 - adds r1, r4, 0 - movs r2, 0x60 - bl memcpy -_08037C1E: - movs r2, 0x80 - lsls r2, 1 - adds r4, r2 - movs r0, 0x1C - add r8, r0 - adds r5, 0x1 - cmp r5, r9 - blt _08037BC6 -_08037C2E: - ldr r1, =gBattleCommunication - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r1, =gMain - ldr r0, [r1, 0x8] - ldr r2, [sp] - str r0, [r2] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - mov r2, r10 - str r0, [r2] - ldr r0, =sub_8037ADC - str r0, [r1, 0x8] - bl sub_81B9150 - b _08037D0A - .pool -_08037C64: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - beq _08037D0A - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08037D0A - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - beq _08037C98 - bl sub_800ADF8 - b _08037D0A - .pool -_08037C98: - bl sub_800AC34 - b _08037D0A -_08037C9E: - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - beq _08037CE4 - bl sub_8010500 - lsls r0, 24 - cmp r0, 0 - beq _08037D0A - mov r1, r10 - ldr r0, [r1] - str r0, [r6] - ldr r1, =gMain - ldr r2, [sp] - ldr r0, [r2] - str r0, [r1, 0x8] - ldr r0, =InitBattle - bl SetMainCallback2 - ldr r4, =gUnknown_02023058 - ldr r0, [r4] - bl Free - mov r0, r8 - str r0, [r4] - b _08037D0A - .pool -_08037CE4: - ldr r0, =gUnknown_03003124 - ldrb r5, [r0] - cmp r5, 0 - bne _08037D0A - mov r1, r10 - ldr r0, [r1] - str r0, [r6] - ldr r1, =gMain - ldr r2, [sp] - ldr r0, [r2] - str r0, [r1, 0x8] - ldr r0, =InitBattle - bl SetMainCallback2 - ldr r4, =gUnknown_02023058 - ldr r0, [r4] - bl Free - str r5, [r4] -_08037D0A: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8037ADC - - thumb_func_start intro_end -intro_end: @ 8037D2C - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, =gBattleStruct - ldr r0, [r0] - movs r1, 0xB4 - adds r1, r0 - mov r8, r1 - adds r7, r0, 0 - adds r7, 0xAC - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - ldr r5, =gBattleCommunication - ldrb r0, [r5] - cmp r0, 0 - beq _08037D64 - cmp r0, 0x1 - beq _08037DA4 - b _08037DD6 - .pool -_08037D64: - ldr r4, =gUnknown_02023058 - movs r0, 0x60 - bl Alloc - str r0, [r4] - movs r0, 0x3 - bl sub_80379F8 - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] - ldr r1, =gMain - ldr r0, [r1, 0x8] - mov r2, r8 - str r0, [r2] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - str r0, [r7] - ldr r0, =intro_end - str r0, [r1, 0x8] - bl sub_81B9150 - b _08037DD6 - .pool -_08037DA4: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - bne _08037DD6 - movs r0, 0x2 - strb r0, [r5] - ldr r1, =gBattleTypeFlags - ldr r0, [r7] - str r0, [r1] - ldr r1, =gMain - mov r2, r8 - ldr r0, [r2] - str r0, [r1, 0x8] - ldr r0, =InitBattle - bl SetMainCallback2 - ldr r4, =gUnknown_02023058 - ldr r0, [r4] - bl Free - str r6, [r4] -_08037DD6: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end intro_end - - thumb_func_start sub_8037DF4 -sub_8037DF4: @ 8037DF4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - bl GetMultiplayerId - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, =gBattleScripting - adds r0, 0x25 - strb r7, [r0] - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - ldr r0, =gBattleCommunication - ldrb r0, [r0] - cmp r0, 0xA - bls _08037E20 - b _080383F8 -_08037E20: - lsls r0, 2 - ldr r1, =_08037E38 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08037E38: - .4byte _08037E64 - .4byte _08037EA8 - .4byte _08037F50 - .4byte _08038026 - .4byte _0803804C - .4byte _08038140 - .4byte _08038164 - .4byte _080382CC - .4byte _0803832C - .4byte _0803836C - .4byte _080383BC -_08037E64: - bl IsDma3ManagerBusyWithBgCopy - lsls r0, 24 - cmp r0, 0 - bne _08037E90 - movs r0, 0 - bl ShowBg - movs r0, 0x1 - bl ShowBg - movs r0, 0x2 - bl ShowBg - movs r0, 0x3 - bl ShowBg - bl sub_805EF14 - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1] -_08037E90: - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - bne _08037E9A - b _080383F8 -_08037E9A: - bl sub_800E0E8 - b _080383F8 - .pool -_08037EA8: - ldr r2, =gBattleTypeFlags - ldr r1, [r2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08037F30 - ldr r0, =gUnknown_03003124 - ldrb r0, [r0] - cmp r0, 0 - bne _08037EBE - b _080383F8 -_08037EBE: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - beq _08037F02 - ldr r4, =gBattleStruct - ldr r0, [r4] - movs r5, 0xC0 - lsls r5, 1 - adds r0, r5 - movs r1, 0 - strb r1, [r0] - ldr r0, [r4] - ldr r2, =0x00000181 - adds r1, r0, r2 - movs r0, 0x3 - strb r0, [r1] - bl sub_8036A5C - bl sub_8036B44 - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, [r4] - adds r1, r5 - movs r2, 0x20 - bl link_0800A448 - ldr r1, =gBattleCommunication - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_08037F02: - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - bne _08037F0C - b _080383F8 -_08037F0C: - movs r0, 0 - movs r1, 0 - bl sub_800DFB4 - b _080383F8 - .pool -_08037F30: - movs r0, 0x80 - lsls r0, 17 - ands r0, r1 - cmp r0, 0 - bne _08037F40 - movs r0, 0x4 - orrs r1, r0 - str r1, [r2] -_08037F40: - ldr r1, =gBattleCommunication - movs r0, 0x7 - strb r0, [r1] - bl berry_801017C - b _080383F8 - .pool -_08037F50: - bl sub_800A550 - movs r1, 0xF - ands r1, r0 - cmp r1, 0xF - beq _08037F5E - b _080383F8 -_08037F5E: - bl sub_800A5B4 - movs r0, 0x4 - adds r1, r7, 0 - bl sub_8036EB8 - bl berry_801017C - bl sub_8068AA4 - ldr r0, =task00_0800F6FC - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r2, r0, 24 - ldr r1, =gTasks - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - movs r2, 0 - movs r1, 0x87 - lsls r1, 1 - strh r1, [r0, 0xA] - movs r1, 0x5A - strh r1, [r0, 0xC] - strh r2, [r0, 0x12] - strh r2, [r0, 0xE] - strh r2, [r0, 0x10] - ldr r1, =gUnknown_020223C4 - adds r4, r0, 0 - adds r5, r1, 0x2 - movs r7, 0x3F - movs r6, 0x3 -_08037FA4: - ldrh r0, [r5] - str r2, [sp] - bl sub_8185F90 - ldr r0, =gLinkPlayers - ldr r2, [sp] - adds r0, r2, r0 - ldrh r0, [r0, 0x18] - cmp r0, 0x1 - beq _08037FE6 - cmp r0, 0x1 - bgt _08037FD4 - cmp r0, 0 - beq _08037FDE - b _0803800C - .pool -_08037FD4: - cmp r0, 0x2 - beq _08037FEE - cmp r0, 0x3 - beq _08037FFE - b _0803800C -_08037FDE: - ldrh r0, [r5] - adds r1, r7, 0 - ands r1, r0 - b _08037FF6 -_08037FE6: - ldrh r0, [r5] - adds r1, r7, 0 - ands r1, r0 - b _08038006 -_08037FEE: - ldrh r0, [r5] - adds r1, r7, 0 - ands r1, r0 - lsls r1, 6 -_08037FF6: - ldrh r0, [r4, 0xE] - orrs r1, r0 - strh r1, [r4, 0xE] - b _0803800C -_08037FFE: - ldrh r0, [r5] - adds r1, r7, 0 - ands r1, r0 - lsls r1, 6 -_08038006: - ldrh r0, [r4, 0x10] - orrs r1, r0 - strh r1, [r4, 0x10] -_0803800C: - movs r0, 0x80 - lsls r0, 1 - adds r5, r0 - adds r2, 0x1C - subs r6, 0x1 - cmp r6, 0 - bge _08037FA4 - bl ZeroEnemyPartyMons - ldr r1, =gBattleCommunication - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_08038026: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - bne _08038032 - b _080383F8 -_08038032: - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gPlayerParty - movs r2, 0xC8 - bl link_0800A448 - b _080383A6 - .pool -_0803804C: - bl sub_800A550 - movs r1, 0xF - ands r1, r0 - cmp r1, 0xF - beq _0803805A - b _080383F8 -_0803805A: - bl sub_800A5B4 - movs r6, 0 - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - mov r8, r0 - ldr r4, =gUnknown_020223C4 - movs r5, 0 -_0803806C: - cmp r6, r7 - bne _080380A0 - ldr r0, =gLinkPlayers - adds r0, r5, r0 - ldrh r0, [r0, 0x18] - cmp r0, 0x2 - bgt _0803808C - cmp r0, 0x1 - bge _08038098 - cmp r0, 0 - beq _08038090 - b _0803812A - .pool -_0803808C: - cmp r0, 0x3 - bne _0803812A -_08038090: - ldr r0, =gPlayerParty - b _08038110 - .pool -_08038098: - ldr r0, =gPlayerParty + 300 - b _08038110 - .pool -_080380A0: - ldr r2, =gLinkPlayers - adds r0, r5, r2 - ldrh r1, [r0, 0x18] - movs r3, 0x1 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _080380C4 - mov r1, r8 - adds r0, r1, r2 - ldrh r1, [r0, 0x18] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _080380D2 - b _080380F8 - .pool -_080380C4: - mov r1, r8 - adds r0, r1, r2 - ldrh r1, [r0, 0x18] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _080380F8 -_080380D2: - adds r0, r5, r2 - ldrh r0, [r0, 0x18] - cmp r0, 0x2 - bgt _080380E4 - cmp r0, 0x1 - bge _080380F0 - cmp r0, 0 - beq _080380E8 - b _0803812A -_080380E4: - cmp r0, 0x3 - bne _0803812A -_080380E8: - ldr r0, =gPlayerParty - b _08038110 - .pool -_080380F0: - ldr r0, =gPlayerParty + 300 - b _08038110 - .pool -_080380F8: - adds r0, r5, r2 - ldrh r0, [r0, 0x18] - cmp r0, 0x2 - bgt _0803810A - cmp r0, 0x1 - bge _08038120 - cmp r0, 0 - beq _0803810E - b _0803812A -_0803810A: - cmp r0, 0x3 - bne _0803812A -_0803810E: - ldr r0, =gEnemyParty -_08038110: - adds r1, r4, 0 - movs r2, 0xC8 - bl memcpy - b _0803812A - .pool -_08038120: - ldr r0, =gEnemyParty + 300 - adds r1, r4, 0 - movs r2, 0xC8 - bl memcpy -_0803812A: - movs r2, 0x80 - lsls r2, 1 - adds r4, r2 - adds r5, 0x1C - adds r6, 0x1 - cmp r6, 0x3 - ble _0803806C - b _080383A6 - .pool -_08038140: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - bne _0803814C - b _080383F8 -_0803814C: - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gPlayerParty + 200 - movs r2, 0x64 - bl link_0800A448 - b _080383A6 - .pool -_08038164: - bl sub_800A550 - movs r1, 0xF - ands r1, r0 - cmp r1, 0xF - beq _08038172 - b _080383F8 -_08038172: - bl sub_800A5B4 - movs r6, 0 - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - mov r8, r0 - ldr r4, =gUnknown_020223C4 - movs r5, 0 -_08038184: - cmp r6, r7 - bne _080381B8 - ldr r0, =gLinkPlayers - adds r0, r5, r0 - ldrh r0, [r0, 0x18] - cmp r0, 0x2 - bgt _080381A4 - cmp r0, 0x1 - bge _080381B0 - cmp r0, 0 - beq _080381A8 - b _08038242 - .pool -_080381A4: - cmp r0, 0x3 - bne _08038242 -_080381A8: - ldr r0, =gPlayerParty + 200 - b _08038228 - .pool -_080381B0: - ldr r0, =gPlayerParty + 500 - b _08038228 - .pool -_080381B8: - ldr r2, =gLinkPlayers - adds r0, r5, r2 - ldrh r1, [r0, 0x18] - movs r3, 0x1 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _080381DC - mov r1, r8 - adds r0, r1, r2 - ldrh r1, [r0, 0x18] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _080381EA - b _08038210 - .pool -_080381DC: - mov r1, r8 - adds r0, r1, r2 - ldrh r1, [r0, 0x18] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08038210 -_080381EA: - adds r0, r5, r2 - ldrh r0, [r0, 0x18] - cmp r0, 0x2 - bgt _080381FC - cmp r0, 0x1 - bge _08038208 - cmp r0, 0 - beq _08038200 - b _08038242 -_080381FC: - cmp r0, 0x3 - bne _08038242 -_08038200: - ldr r0, =gPlayerParty + 200 - b _08038228 - .pool -_08038208: - ldr r0, =gPlayerParty + 500 - b _08038228 - .pool -_08038210: - adds r0, r5, r2 - ldrh r0, [r0, 0x18] - cmp r0, 0x2 - bgt _08038222 - cmp r0, 0x1 - bge _08038238 - cmp r0, 0 - beq _08038226 - b _08038242 -_08038222: - cmp r0, 0x3 - bne _08038242 -_08038226: - ldr r0, =gEnemyParty + 200 -_08038228: - adds r1, r4, 0 - movs r2, 0x64 - bl memcpy - b _08038242 - .pool -_08038238: - ldr r0, =gEnemyParty + 500 - adds r1, r4, 0 - movs r2, 0x64 - bl memcpy -_08038242: - movs r2, 0x80 - lsls r2, 1 - adds r4, r2 - adds r5, 0x1C - adds r6, 0x1 - cmp r6, 0x3 - ble _08038184 - ldr r4, =gPlayerParty - adds r0, r4, 0 - bl shedinja_something - adds r0, r4, 0 - adds r0, 0x64 - bl shedinja_something - adds r0, r4, 0 - adds r0, 0xC8 - bl shedinja_something - movs r1, 0x96 - lsls r1, 1 - adds r0, r4, r1 - bl shedinja_something - movs r2, 0xC8 - lsls r2, 1 - adds r0, r4, r2 - bl shedinja_something - movs r1, 0xFA - lsls r1, 1 - adds r0, r4, r1 - bl shedinja_something - ldr r4, =gEnemyParty - adds r0, r4, 0 - bl shedinja_something - adds r0, r4, 0 - adds r0, 0x64 - bl shedinja_something - adds r0, r4, 0 - adds r0, 0xC8 - bl shedinja_something - movs r2, 0x96 - lsls r2, 1 - adds r0, r4, r2 - bl shedinja_something - movs r1, 0xC8 - lsls r1, 1 - adds r0, r4, r1 - bl shedinja_something - movs r2, 0xFA - lsls r2, 1 - adds r0, r4, r2 - bl shedinja_something - b _080383A6 - .pool -_080382CC: - bl sub_8032768 - bl sub_8184E58 - ldr r3, =gBattleCommunication - movs r0, 0 - strb r0, [r3, 0x1] - strb r0, [r3, 0x2] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08038326 - movs r6, 0 - ldr r0, =gLinkPlayers - ldrb r1, [r0] - adds r4, r3, 0 - adds r2, r0, 0 - cmp r1, 0x3 - bne _0803830A - movs r3, 0xFF -_080382F8: - adds r2, 0x1C - adds r6, 0x1 - cmp r6, 0x3 - bgt _0803830A - ldrh r1, [r2] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0x3 - beq _080382F8 -_0803830A: - cmp r6, 0x4 - bne _08038320 - movs r0, 0x8 - strb r0, [r4] - b _080383F8 - .pool -_08038320: - movs r0, 0xA - strb r0, [r4] - b _080383F8 -_08038326: - movs r0, 0xA - strb r0, [r3] - b _080383F8 -_0803832C: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - beq _080383F8 - ldr r0, =gBattleStruct - ldr r4, [r0] - movs r0, 0xC0 - lsls r0, 1 - adds r4, r0 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - str r0, [r4] - ldr r0, =gUnknown_0203BD2C - ldr r0, [r0] - str r0, [r4, 0x4] - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - adds r1, r4, 0 - movs r2, 0x8 - bl link_0800A448 - b _080383A6 - .pool -_0803836C: - bl sub_800A550 - movs r1, 0xF - ands r1, r0 - cmp r1, 0xF - bne _080383F8 - bl sub_800A5B4 - movs r2, 0 - b _08038386 -_08038380: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 -_08038386: - cmp r2, 0x3 - bhi _080383A6 - ldr r4, =gUnknown_020223C4 - lsls r3, r2, 8 - adds r0, r3, r4 - ldrh r0, [r0] - movs r1, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08038380 - adds r1, r4, 0x4 - adds r1, r3, r1 - ldr r0, =gUnknown_0203BD2C - movs r2, 0x4 - bl memcpy -_080383A6: - ldr r1, =gBattleCommunication - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _080383F8 - .pool -_080383BC: - ldr r0, =gUnknown_02024333 - adds r1, r0, 0x1 - bl battle_load_something - lsls r0, 24 - cmp r0, 0 - beq _080383F8 - ldr r2, =gUnknown_03005D00 - ldr r1, =gMain - ldr r0, [r1] - str r0, [r2] - ldr r0, =sub_8039EF0 - str r0, [r1] - ldr r0, =sub_8038420 - bl SetMainCallback2 - ldr r3, =gBattleTypeFlags - ldr r2, [r3] - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - beq _080383F8 - ldr r0, =gTrainerBattleOpponent_A - movs r4, 0x80 - lsls r4, 4 - adds r1, r4, 0 - strh r1, [r0] - movs r0, 0x20 - orrs r2, r0 - str r2, [r3] -_080383F8: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8037DF4 - - thumb_func_start sub_8038420 -sub_8038420: @ 8038420 - push {lr} - sub sp, 0x4 - bl AnimateSprites - bl BuildOamBuffer - bl RunTextPrinters - bl UpdatePaletteFade - bl RunTasks - ldr r0, =gMain - ldrh r1, [r0, 0x2C] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08038482 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 17 - ands r0, r1 - cmp r0, 0 - beq _08038482 - bl rfu_lacks_rfufunc - lsls r0, 24 - cmp r0, 0 - beq _08038482 - ldr r2, =gScriptResult - ldr r1, =gBattleOutcome - movs r0, 0x5 - strb r0, [r1] - movs r0, 0x5 - strh r0, [r2] - bl ResetPaletteFadeControl - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, =sub_80384E4 - bl SetMainCallback2 -_08038482: - add sp, 0x4 - pop {r0} - bx r0 - .pool - thumb_func_end sub_8038420 - - thumb_func_start sub_803849C -sub_803849C: @ 803849C - push {lr} - ldr r1, =gMain - ldr r0, =gUnknown_03005D00 - ldr r0, [r0] - str r0, [r1] - ldr r2, =gUnknown_02039B28 - movs r0, 0x3 - strb r0, [r2, 0x15] - ldr r0, =0x00000439 - adds r1, r0 - ldrb r2, [r1] - movs r0, 0x3 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - bl ZeroEnemyPartyMons - movs r0, 0x5A - bl m4aSongNumStop - bl sub_805F094 - bl dp11_free - bl sub_8057028 - pop {r0} - bx r0 - .pool - thumb_func_end sub_803849C - - thumb_func_start sub_80384E4 -sub_80384E4: @ 80384E4 - push {lr} - bl UpdatePaletteFade - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08038512 - ldr r0, =gMPlay_SE1 - bl m4aMPlayStop - ldr r0, =gMPlay_SE2 - bl m4aMPlayStop - bl sub_803849C - bl FreeAllWindowBuffers - ldr r0, =gMain - ldr r0, [r0, 0x8] - bl SetMainCallback2 -_08038512: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80384E4 - - thumb_func_start sub_8038528 -sub_8038528: @ 8038528 - movs r1, 0 - strh r1, [r0, 0x2E] - ldr r1, =sub_8038538 - str r1, [r0, 0x1C] - bx lr - .pool - thumb_func_end sub_8038528 - - thumb_func_start sub_8038538 -sub_8038538: @ 8038538 - push {r4,r5,lr} - adds r3, r0, 0 - ldr r5, =0x0201c000 - movs r0, 0x2E - ldrsh r1, [r3, r0] - cmp r1, 0x1 - beq _0803856C - cmp r1, 0x1 - bgt _08038554 - cmp r1, 0 - beq _0803855A - b _080385DC - .pool -_08038554: - cmp r1, 0x2 - beq _080385C8 - b _080385DC -_0803855A: - ldrh r0, [r3, 0x2E] - adds r0, 0x1 - strh r0, [r3, 0x2E] - strh r1, [r3, 0x30] - ldr r0, =0x00000281 - strh r0, [r3, 0x32] - strh r1, [r3, 0x34] - movs r0, 0x1 - strh r0, [r3, 0x36] -_0803856C: - ldrh r0, [r3, 0x36] - subs r0, 0x1 - strh r0, [r3, 0x36] - lsls r0, 16 - cmp r0, 0 - bne _080385DC - movs r0, 0x2 - strh r0, [r3, 0x36] - movs r4, 0x30 - ldrsh r2, [r3, r4] - movs r0, 0x34 - ldrsh r1, [r3, r0] - lsls r1, 5 - adds r2, r1 - movs r4, 0x32 - ldrsh r0, [r3, r4] - subs r0, r1 - movs r4, 0x3D - lsls r0, 1 - adds r0, r5 - lsls r2, 1 - adds r2, r5 - movs r1, 0x1C -_0803859A: - strh r4, [r2] - strh r4, [r0] - adds r0, 0x4 - adds r2, 0x4 - subs r1, 0x2 - cmp r1, 0 - bge _0803859A - ldrh r0, [r3, 0x34] - adds r0, 0x1 - strh r0, [r3, 0x34] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x15 - bne _080385DC - ldrh r0, [r3, 0x2E] - adds r0, 0x1 - strh r0, [r3, 0x2E] - movs r0, 0x20 - strh r0, [r3, 0x30] - b _080385DC - .pool -_080385C8: - ldrh r0, [r3, 0x30] - subs r0, 0x1 - strh r0, [r3, 0x30] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x14 - bne _080385DC - ldr r0, =sub_8036760 - bl SetMainCallback2 -_080385DC: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8038538 - - thumb_func_start CreateNPCTrainerParty -CreateNPCTrainerParty: @ 80385E8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x28 - str r0, [sp, 0x10] - lsls r1, 16 - lsrs r1, 16 - str r1, [sp, 0x14] - lsls r2, 24 - lsrs r2, 24 - movs r0, 0 - mov r9, r0 - movs r0, 0x80 - lsls r0, 3 - cmp r1, r0 - bne _08038610 - movs r0, 0 - b _080389E2 -_08038610: - ldr r4, =gBattleTypeFlags - ldr r0, [r4] - ldr r1, =0x043f0908 - ands r0, r1 - ldr r1, [sp, 0x14] - lsls r1, 2 - str r1, [sp, 0x20] - cmp r0, 0x8 - beq _08038624 - b _080389D2 -_08038624: - cmp r2, 0x1 - bne _0803862C - bl ZeroEnemyPartyMons -_0803862C: - ldr r0, [r4] - movs r1, 0x80 - lsls r1, 8 - ands r0, r1 - cmp r0, 0 - beq _08038668 - ldr r0, =gTrainers - ldr r2, [sp, 0x20] - ldr r3, [sp, 0x14] - adds r1, r2, r3 - lsls r1, 3 - adds r1, r0 - adds r2, r1, 0 - adds r2, 0x20 - ldrb r1, [r2] - movs r4, 0x3 - str r4, [sp, 0x1C] - adds r4, r0, 0 - cmp r1, 0x3 - bhi _0803867C - adds r2, r1, 0 - str r2, [sp, 0x1C] - b _0803867C - .pool -_08038668: - ldr r1, =gTrainers - ldr r2, [sp, 0x20] - ldr r3, [sp, 0x14] - adds r0, r2, r3 - lsls r0, 3 - adds r0, r1 - adds r0, 0x20 - ldrb r0, [r0] - str r0, [sp, 0x1C] - adds r4, r1, 0 -_0803867C: - movs r0, 0 - str r0, [sp, 0x18] - b _080389B4 - .pool -_08038688: - ldr r2, [sp, 0x20] - ldr r3, [sp, 0x14] - adds r0, r2, r3 - lsls r0, 3 - adds r1, r0, r4 - ldrb r0, [r1, 0x18] - cmp r0, 0x1 - bne _0803869E - movs r0, 0x80 - mov r10, r0 - b _080386B0 -_0803869E: - ldrb r1, [r1, 0x2] - movs r0, 0x80 - ands r0, r1 - movs r1, 0x88 - mov r10, r1 - cmp r0, 0 - beq _080386B0 - movs r2, 0x78 - mov r10, r2 -_080386B0: - movs r6, 0 - ldr r2, [sp, 0x20] - ldr r3, [sp, 0x14] - adds r0, r2, r3 - lsls r0, 3 - adds r1, r4, 0x4 - adds r0, r1 - ldrb r0, [r0] - ldr r3, [sp, 0x18] - adds r3, 0x1 - str r3, [sp, 0x24] - cmp r0, 0xFF - beq _080386E6 - adds r3, r1, 0 -_080386CC: - ldr r0, [sp, 0x14] - adds r1, r2, r0 - lsls r1, 3 - adds r0, r6, r1 - adds r0, r3 - ldrb r0, [r0] - add r9, r0 - adds r6, 0x1 - adds r1, r6, r1 - adds r1, r3 - ldrb r0, [r1] - cmp r0, 0xFF - bne _080386CC -_080386E6: - ldr r1, [sp, 0x20] - ldr r2, [sp, 0x14] - adds r0, r1, r2 - lsls r1, r0, 3 - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08038794 - cmp r0, 0x1 - bgt _08038700 - cmp r0, 0 - beq _0803870E - b _080389AC -_08038700: - cmp r0, 0x2 - bne _08038706 - b _08038854 -_08038706: - cmp r0, 0x3 - bne _0803870C - b _080388E8 -_0803870C: - b _080389AC -_0803870E: - adds r0, r4, 0 - adds r0, 0x24 - adds r0, r1, r0 - ldr r4, [r0] - movs r6, 0 - ldr r3, [sp, 0x18] - lsls r2, r3, 3 - adds r0, r2, r4 - ldrh r1, [r0, 0x4] - movs r0, 0xB - muls r0, r1 - ldr r1, =gSpeciesNames - adds r0, r1 - ldrb r0, [r0] - adds r5, r2, 0 - cmp r0, 0xFF - beq _08038750 - adds r3, r1, 0 - movs r7, 0xB -_08038734: - adds r0, r2, r4 - ldrh r0, [r0, 0x4] - adds r1, r0, 0 - muls r1, r7 - adds r0, r6, r1 - adds r0, r3 - ldrb r0, [r0] - add r9, r0 - adds r6, 0x1 - adds r1, r6, r1 - adds r1, r3 - ldrb r0, [r1] - cmp r0, 0xFF - bne _08038734 -_08038750: - mov r2, r9 - lsls r0, r2, 8 - add r10, r0 - adds r4, r5, r4 - ldrh r1, [r4] - lsls r0, r1, 5 - subs r0, r1 - movs r1, 0xFF - bl __divsi3 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r3, [sp, 0x18] - movs r1, 0x64 - adds r0, r3, 0 - muls r0, r1 - ldr r2, [sp, 0x10] - adds r0, r2, r0 - ldrh r1, [r4, 0x4] - ldrb r2, [r4, 0x2] - movs r3, 0x1 - str r3, [sp] - mov r3, r10 - str r3, [sp, 0x4] - movs r3, 0x2 - str r3, [sp, 0x8] - movs r3, 0 - str r3, [sp, 0xC] - adds r3, r6, 0 - bl CreateMon - b _080389AC - .pool -_08038794: - adds r0, r4, 0 - adds r0, 0x24 - adds r0, r1, r0 - ldr r7, [r0] - movs r6, 0 - ldr r4, [sp, 0x18] - lsls r2, r4, 4 - adds r0, r2, r7 - ldrh r1, [r0, 0x4] - movs r0, 0xB - muls r0, r1 - ldr r1, =gSpeciesNames - adds r0, r1 - ldrb r0, [r0] - mov r8, r2 - cmp r0, 0xFF - beq _080387D6 - adds r3, r1, 0 - movs r4, 0xB -_080387BA: - adds r0, r2, r7 - ldrh r0, [r0, 0x4] - adds r1, r0, 0 - muls r1, r4 - adds r0, r6, r1 - adds r0, r3 - ldrb r0, [r0] - add r9, r0 - adds r6, 0x1 - adds r1, r6, r1 - adds r1, r3 - ldrb r0, [r1] - cmp r0, 0xFF - bne _080387BA -_080387D6: - mov r2, r9 - lsls r0, r2, 8 - add r10, r0 - mov r3, r8 - adds r4, r3, r7 - ldrh r1, [r4] - lsls r0, r1, 5 - subs r0, r1 - movs r1, 0xFF - bl __divsi3 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, [sp, 0x18] - movs r1, 0x64 - adds r5, r0, 0 - muls r5, r1 - ldr r2, [sp, 0x10] - adds r5, r2, r5 - ldrh r1, [r4, 0x4] - ldrb r2, [r4, 0x2] - movs r0, 0x1 - str r0, [sp] - mov r3, r10 - str r3, [sp, 0x4] - movs r0, 0x2 - str r0, [sp, 0x8] - movs r0, 0 - str r0, [sp, 0xC] - adds r0, r5, 0 - adds r3, r6, 0 - bl CreateMon - movs r6, 0 - mov r0, r8 - adds r0, 0x6 - adds r4, r7, r0 -_08038820: - adds r1, r6, 0 - adds r1, 0xD - adds r0, r5, 0 - adds r2, r4, 0 - bl SetMonData - adds r1, r6, 0 - adds r1, 0x11 - ldrh r0, [r4] - lsls r2, r0, 1 - adds r2, r0 - lsls r2, 2 - ldr r0, =gBattleMoves + 0x4 @ PP offset - adds r2, r0 - adds r0, r5, 0 - bl SetMonData - adds r4, 0x2 - adds r6, 0x1 - cmp r6, 0x3 - ble _08038820 - b _080389AC - .pool -_08038854: - adds r0, r4, 0 - adds r0, 0x24 - adds r0, r1, r0 - ldr r4, [r0] - movs r6, 0 - ldr r0, [sp, 0x18] - lsls r2, r0, 3 - adds r0, r2, r4 - ldrh r1, [r0, 0x4] - movs r0, 0xB - muls r0, r1 - ldr r1, =gSpeciesNames - adds r0, r1 - ldrb r0, [r0] - adds r5, r2, 0 - cmp r0, 0xFF - beq _08038896 - adds r3, r1, 0 - movs r7, 0xB -_0803887A: - adds r0, r2, r4 - ldrh r0, [r0, 0x4] - adds r1, r0, 0 - muls r1, r7 - adds r0, r6, r1 - adds r0, r3 - ldrb r0, [r0] - add r9, r0 - adds r6, 0x1 - adds r1, r6, r1 - adds r1, r3 - ldrb r0, [r1] - cmp r0, 0xFF - bne _0803887A -_08038896: - mov r2, r9 - lsls r0, r2, 8 - add r10, r0 - adds r5, r4 - ldrh r1, [r5] - lsls r0, r1, 5 - subs r0, r1 - movs r1, 0xFF - bl __divsi3 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r3, [sp, 0x18] - movs r0, 0x64 - adds r4, r3, 0 - muls r4, r0 - ldr r1, [sp, 0x10] - adds r4, r1, r4 - ldrh r1, [r5, 0x4] - ldrb r2, [r5, 0x2] - movs r0, 0x1 - str r0, [sp] - mov r3, r10 - str r3, [sp, 0x4] - movs r0, 0x2 - str r0, [sp, 0x8] - movs r0, 0 - str r0, [sp, 0xC] - adds r0, r4, 0 - adds r3, r6, 0 - bl CreateMon - adds r5, 0x6 - adds r0, r4, 0 - movs r1, 0xC - adds r2, r5, 0 - bl SetMonData - b _080389AC - .pool -_080388E8: - adds r0, r4, 0 - adds r0, 0x24 - adds r0, r1, r0 - ldr r7, [r0] - movs r6, 0 - ldr r4, [sp, 0x18] - lsls r2, r4, 4 - adds r0, r2, r7 - ldrh r1, [r0, 0x4] - movs r0, 0xB - muls r0, r1 - ldr r1, =gSpeciesNames - adds r0, r1 - ldrb r0, [r0] - mov r8, r2 - cmp r0, 0xFF - beq _0803892A - adds r3, r1, 0 - movs r4, 0xB -_0803890E: - adds r0, r2, r7 - ldrh r0, [r0, 0x4] - adds r1, r0, 0 - muls r1, r4 - adds r0, r6, r1 - adds r0, r3 - ldrb r0, [r0] - add r9, r0 - adds r6, 0x1 - adds r1, r6, r1 - adds r1, r3 - ldrb r0, [r1] - cmp r0, 0xFF - bne _0803890E -_0803892A: - mov r2, r9 - lsls r0, r2, 8 - add r10, r0 - mov r3, r8 - adds r5, r3, r7 - ldrh r1, [r5] - lsls r0, r1, 5 - subs r0, r1 - movs r1, 0xFF - bl __divsi3 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, [sp, 0x18] - movs r1, 0x64 - adds r4, r0, 0 - muls r4, r1 - ldr r2, [sp, 0x10] - adds r4, r2, r4 - ldrh r1, [r5, 0x4] - ldrb r2, [r5, 0x2] - movs r0, 0x1 - str r0, [sp] - mov r3, r10 - str r3, [sp, 0x4] - movs r0, 0x2 - str r0, [sp, 0x8] - movs r0, 0 - str r0, [sp, 0xC] - adds r0, r4, 0 - adds r3, r6, 0 - bl CreateMon - adds r5, 0x6 - adds r0, r4, 0 - movs r1, 0xC - adds r2, r5, 0 - bl SetMonData - movs r6, 0 - adds r5, r4, 0 - mov r0, r8 - adds r0, 0x8 - adds r4, r7, r0 -_08038982: - adds r1, r6, 0 - adds r1, 0xD - adds r0, r5, 0 - adds r2, r4, 0 - bl SetMonData - adds r1, r6, 0 - adds r1, 0x11 - ldrh r0, [r4] - lsls r2, r0, 1 - adds r2, r0 - lsls r2, 2 - ldr r0, =gBattleMoves + 0x4 @ PP offset - adds r2, r0 - adds r0, r5, 0 - bl SetMonData - adds r4, 0x2 - adds r6, 0x1 - cmp r6, 0x3 - ble _08038982 -_080389AC: - ldr r4, [sp, 0x24] - str r4, [sp, 0x18] - ldr r4, =gTrainers - ldr r0, [sp, 0x18] -_080389B4: - ldr r1, [sp, 0x1C] - cmp r0, r1 - bge _080389BC - b _08038688 -_080389BC: - ldr r2, =gBattleTypeFlags - ldr r1, =gTrainers - ldr r3, [sp, 0x20] - ldr r4, [sp, 0x14] - adds r0, r3, r4 - lsls r0, 3 - adds r0, r1 - ldrb r1, [r0, 0x18] - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] -_080389D2: - ldr r0, =gTrainers - ldr r2, [sp, 0x20] - ldr r3, [sp, 0x14] - adds r1, r2, r3 - lsls r1, 3 - adds r1, r0 - adds r1, 0x20 - ldrb r0, [r1] -_080389E2: - add sp, 0x28 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end CreateNPCTrainerParty - - thumb_func_start sub_8038A04 -sub_8038A04: @ 8038A04 - push {lr} - ldr r0, =0x04000006 - ldrh r0, [r0] - subs r0, 0x6F - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x30 - bhi _08038A1E - movs r1, 0x98 - lsls r1, 8 - movs r0, 0x8 - bl SetGpuReg -_08038A1E: - pop {r0} - bx r0 - .pool - thumb_func_end sub_8038A04 - - thumb_func_start vblank_cb_08078BB4 -vblank_cb_08078BB4: @ 8038A28 - push {lr} - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x013f0102 - ands r0, r1 - cmp r0, 0 - bne _08038A3A - bl Random -_08038A3A: - ldr r0, =gUnknown_02022E14 - ldrh r1, [r0] - movs r0, 0x10 - bl SetGpuReg - ldr r0, =gUnknown_02022E16 - ldrh r1, [r0] - movs r0, 0x12 - bl SetGpuReg - ldr r0, =gUnknown_02022E18 - ldrh r1, [r0] - movs r0, 0x14 - bl SetGpuReg - ldr r0, =gUnknown_02022E1A - ldrh r1, [r0] - movs r0, 0x16 - bl SetGpuReg - ldr r0, =gUnknown_02022E1C - ldrh r1, [r0] - movs r0, 0x18 - bl SetGpuReg - ldr r0, =gUnknown_02022E1E - ldrh r1, [r0] - movs r0, 0x1A - bl SetGpuReg - ldr r0, =gUnknown_02022E20 - ldrh r1, [r0] - movs r0, 0x1C - bl SetGpuReg - ldr r0, =gUnknown_02022E22 - ldrh r1, [r0] - movs r0, 0x1E - bl SetGpuReg - ldr r0, =gUnknown_02022E24 - ldrh r1, [r0] - movs r0, 0x40 - bl SetGpuReg - ldr r0, =gUnknown_02022E26 - ldrh r1, [r0] - movs r0, 0x44 - bl SetGpuReg - ldr r0, =gUnknown_02022E28 - ldrh r1, [r0] - movs r0, 0x42 - bl SetGpuReg - ldr r0, =gUnknown_02022E2A - ldrh r1, [r0] - movs r0, 0x46 - bl SetGpuReg - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - bl sub_80BA0A8 - pop {r0} - bx r0 - .pool - thumb_func_end vblank_cb_08078BB4 - - thumb_func_start nullsub_17 -nullsub_17: @ 8038B00 - bx lr - thumb_func_end nullsub_17 - - thumb_func_start sub_8038B04 -sub_8038B04: @ 8038B04 - push {r4,r5,lr} - adds r5, r0, 0 - movs r1, 0x2E - ldrsh r0, [r5, r1] - cmp r0, 0 - beq _08038B24 - movs r1, 0x32 - ldrsh r0, [r5, r1] - movs r1, 0xFF - lsls r1, 8 - ands r0, r1 - lsrs r0, 8 - ldrh r1, [r5, 0x30] - adds r0, r1 - strh r0, [r5, 0x20] - b _08038B36 -_08038B24: - movs r1, 0x32 - ldrsh r0, [r5, r1] - movs r1, 0xFF - lsls r1, 8 - ands r0, r1 - asrs r0, 8 - ldrh r1, [r5, 0x30] - subs r1, r0 - strh r1, [r5, 0x20] -_08038B36: - movs r1, 0xC0 - lsls r1, 1 - adds r0, r1, 0 - ldrh r1, [r5, 0x32] - adds r0, r1 - strh r0, [r5, 0x32] - adds r0, r5, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08038B6A - ldr r4, =0x00002710 - adds r0, r4, 0 - bl FreeSpriteTilesByTag - adds r0, r4, 0 - bl FreeSpritePaletteByTag - adds r0, r5, 0 - bl FreeSpriteOamMatrix - adds r0, r5, 0 - bl DestroySprite -_08038B6A: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8038B04 - - thumb_func_start sub_8038B74 -sub_8038B74: @ 8038B74 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x1 - bl StartSpriteAffineAnim - ldr r0, =sub_8038B04 - str r0, [r4, 0x1C] - movs r0, 0x68 - bl PlaySE - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8038B74 - - thumb_func_start sub_8038B94 -sub_8038B94: @ 8038B94 - 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 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - ldr r0, =gBattleScripting - adds r0, 0x25 - ldrb r2, [r0] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08038C04 - ldr r1, =gLinkPlayers - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0, 0x18] - cmp r0, 0x1 - beq _08038BF0 - cmp r0, 0x1 - bgt _08038BE8 - cmp r0, 0 - beq _08038C04 - b _08038C0C - .pool -_08038BE8: - cmp r0, 0x2 - beq _08038C04 - cmp r0, 0x3 - bne _08038C0C -_08038BF0: - ldr r0, =gEnemyParty - str r0, [sp, 0x4] - ldr r1, =gPlayerParty - str r1, [sp, 0x8] - b _08038C0C - .pool -_08038C04: - ldr r2, =gPlayerParty - str r2, [sp, 0x4] - ldr r3, =gEnemyParty - str r3, [sp, 0x8] -_08038C0C: - movs r7, 0 - movs r0, 0 - mov r8, r0 - ldr r1, [sp] - lsls r1, 2 - str r1, [sp, 0xC] - movs r2, 0xCE - lsls r2, 1 - mov r10, r2 - mov r9, r0 -_08038C20: - movs r0, 0x64 - mov r4, r8 - muls r4, r0 - ldr r3, [sp, 0x4] - adds r4, r3, r4 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - lsls r0, 16 - lsrs r6, r0, 16 - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData - adds r1, r0, 0 - cmp r5, 0 - beq _08038C90 - cmp r5, r10 - beq _08038C64 - cmp r6, 0 - beq _08038C64 - cmp r1, 0 - bne _08038C64 - movs r0, 0x1 - mov r2, r9 - lsls r0, r2 - orrs r7, r0 -_08038C64: - cmp r5, 0 - beq _08038C90 - cmp r6, 0 - beq _08038C7C - cmp r5, r10 - beq _08038C74 - cmp r1, 0 - beq _08038C7C -_08038C74: - movs r0, 0x2 - mov r3, r9 - lsls r0, r3 - orrs r7, r0 -_08038C7C: - cmp r5, 0 - beq _08038C90 - cmp r5, r10 - beq _08038C90 - cmp r6, 0 - bne _08038C90 - movs r0, 0x3 - mov r1, r9 - lsls r0, r1 - orrs r7, r0 -_08038C90: - movs r2, 0x2 - add r9, r2 - movs r3, 0x1 - add r8, r3 - mov r0, r8 - cmp r0, 0x5 - ble _08038C20 - ldr r1, =gTasks - ldr r2, [sp, 0xC] - ldr r3, [sp] - adds r0, r2, r3 - lsls r0, 3 - adds r0, r1 - strh r7, [r0, 0xE] - movs r7, 0 - movs r0, 0 - mov r8, r0 - movs r1, 0xCE - lsls r1, 1 - mov r10, r1 - mov r9, r0 -_08038CBA: - movs r0, 0x64 - mov r4, r8 - muls r4, r0 - ldr r2, [sp, 0x8] - adds r4, r2, r4 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - lsls r0, 16 - lsrs r6, r0, 16 - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData - adds r1, r0, 0 - cmp r5, 0 - beq _08038D2A - cmp r5, r10 - beq _08038CFE - cmp r6, 0 - beq _08038CFE - cmp r1, 0 - bne _08038CFE - movs r0, 0x1 - mov r3, r9 - lsls r0, r3 - orrs r7, r0 -_08038CFE: - cmp r5, 0 - beq _08038D2A - cmp r6, 0 - beq _08038D16 - cmp r5, r10 - beq _08038D0E - cmp r1, 0 - beq _08038D16 -_08038D0E: - movs r0, 0x2 - mov r1, r9 - lsls r0, r1 - orrs r7, r0 -_08038D16: - cmp r5, 0 - beq _08038D2A - cmp r5, r10 - beq _08038D2A - cmp r6, 0 - bne _08038D2A - movs r0, 0x3 - mov r2, r9 - lsls r0, r2 - orrs r7, r0 -_08038D2A: - movs r3, 0x2 - add r9, r3 - movs r0, 0x1 - add r8, r0 - mov r1, r8 - cmp r1, 0x5 - ble _08038CBA - ldr r1, =gTasks - ldr r2, [sp, 0xC] - ldr r3, [sp] - adds r0, r2, r3 - lsls r0, 3 - adds r0, r1 - strh r7, [r0, 0x10] - 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_8038B94 - - thumb_func_start sub_8038D64 -sub_8038D64: @ 8038D64 - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - bl SetHBlankCallback - movs r0, 0 - bl SetVBlankCallback - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r2, 0x21 - negs r2, r2 - ands r1, r2 - str r1, [r0] - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _08038DAC - ldr r0, =gMain - ldr r0, [r0, 0x8] - bl SetMainCallback2 - bl sub_8057028 - bl dp11_free - bl sub_805F094 - b _08038EB6 - .pool -_08038DAC: - str r0, [sp] - movs r1, 0xC0 - lsls r1, 19 - ldr r2, =0x05006000 - mov r0, sp - bl CpuSet - movs r0, 0x4C - movs r1, 0 - bl SetGpuReg - movs r0, 0x40 - movs r1, 0xF0 - bl SetGpuReg - ldr r4, =0x00005051 - movs r0, 0x44 - adds r1, r4, 0 - bl SetGpuReg - movs r0, 0x48 - movs r1, 0 - bl SetGpuReg - movs r0, 0x4A - movs r1, 0 - bl SetGpuReg - ldr r1, =gUnknown_02022E24 - movs r0, 0xF0 - strh r0, [r1] - ldr r0, =gUnknown_02022E26 - strh r4, [r0] - bl dp12_8087EA4 - ldr r0, =gUnknown_02038C28 - movs r3, 0xF0 - movs r1, 0xF0 - lsls r1, 3 - adds r2, r0, r1 - movs r1, 0x4F -_08038DFE: - strh r3, [r0] - strh r3, [r2] - adds r2, 0x2 - adds r0, 0x2 - subs r1, 0x1 - cmp r1, 0 - bge _08038DFE - movs r1, 0x50 - ldr r0, =gUnknown_02038C28 - ldr r3, =0x0000ff10 - movs r4, 0x82 - lsls r4, 4 - adds r2, r0, r4 - adds r0, 0xA0 -_08038E1A: - strh r3, [r0] - strh r3, [r2] - adds r2, 0x2 - adds r0, 0x2 - adds r1, 0x1 - cmp r1, 0x9F - ble _08038E1A - bl ResetPaletteFade - ldr r0, =gUnknown_02022E14 - movs r4, 0 - strh r4, [r0] - ldr r0, =gUnknown_02022E16 - strh r4, [r0] - ldr r0, =gUnknown_02022E18 - strh r4, [r0] - ldr r0, =gUnknown_02022E1A - strh r4, [r0] - ldr r0, =gUnknown_02022E1C - strh r4, [r0] - ldr r0, =gUnknown_02022E1E - strh r4, [r0] - ldr r0, =gUnknown_02022E20 - strh r4, [r0] - ldr r0, =gUnknown_02022E22 - strh r4, [r0] - bl c2_berry_program_update_menu - ldr r0, =gUnknown_08C004E0 - movs r1, 0 - movs r2, 0x40 - bl LoadCompressedPalette - bl sub_803570C - bl ResetSpriteData - bl ResetTasks - bl sub_8036154 - movs r0, 0x4A - movs r1, 0x37 - bl SetGpuReg - bl FreeAllSpritePalettes - ldr r1, =gReservedSpritePaletteCount - movs r0, 0x4 - strb r0, [r1] - ldr r0, =vblank_cb_08078BB4 - bl SetVBlankCallback - ldr r0, =task00_0800F6FC - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r2, 0x87 - lsls r2, 1 - strh r2, [r1, 0xA] - movs r2, 0x5A - strh r2, [r1, 0xC] - movs r2, 0x1 - strh r2, [r1, 0x12] - bl sub_8038B94 - ldr r0, =sub_8038F14 - bl SetMainCallback2 - ldr r0, =gBattleCommunication - strb r4, [r0] -_08038EB6: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8038D64 - - thumb_func_start sub_8038F14 -sub_8038F14: @ 8038F14 - push {lr} - bl sub_8038F34 - bl AnimateSprites - bl BuildOamBuffer - bl RunTextPrinters - bl UpdatePaletteFade - bl RunTasks - pop {r0} - bx r0 - thumb_func_end sub_8038F14 - - thumb_func_start sub_8038F34 -sub_8038F34: @ 8038F34 - push {r4-r6,lr} - sub sp, 0x8 - ldr r0, =gBattleCommunication - ldrb r1, [r0] - adds r4, r0, 0 - cmp r1, 0x9 - bls _08038F44 - b _080391C6 -_08038F44: - lsls r0, r1, 2 - ldr r1, =_08038F58 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08038F58: - .4byte _08038F80 - .4byte _08038FA0 - .4byte _08038FC2 - .4byte _080390C8 - .4byte _08039100 - .4byte _08039118 - .4byte _0803912C - .4byte _0803914C - .4byte _08039166 - .4byte _08039184 -_08038F80: - movs r0, 0 - bl ShowBg - movs r0, 0x1 - bl ShowBg - movs r0, 0x2 - bl ShowBg - ldr r1, =gBattleCommunication - movs r0, 0xFF - strb r0, [r1, 0x1] - b _08039174 - .pool -_08038FA0: - ldrb r0, [r4, 0x1] - subs r0, 0x1 - strb r0, [r4, 0x1] - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _08038FB0 - b _080391C6 -_08038FB0: - movs r0, 0x1 - negs r0, r0 - str r1, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - b _0803910C -_08038FC2: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08038FD0 - b _080391C6 -_08038FD0: - bl sub_8185FAC - ldr r2, =gMain - ldr r1, =0x00000439 - adds r2, r1 - movs r1, 0x1 - ands r1, r0 - lsls r1, 2 - ldrb r3, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - movs r3, 0x2 - cmp r0, 0 - beq _08038FFC - movs r3, 0x4 -_08038FFC: - movs r4, 0 - ldr r6, =gSaveBlock2Ptr - cmp r4, r3 - bge _08039022 - ldr r1, =gLinkPlayers - ldrb r0, [r1] - cmp r0, 0x3 - bne _08039022 - movs r5, 0xFF - adds r2, r1, 0 -_08039010: - adds r2, 0x1C - adds r4, 0x1 - cmp r4, r3 - bge _08039022 - ldrh r1, [r2] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0x3 - beq _08039010 -_08039022: - ldr r0, [r6] - ldr r1, =0x00000ca9 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _080390AC - cmp r4, r3 - bne _080390AC - ldr r0, =0x000008d2 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _08039074 - bl FreeAllWindowBuffers - ldr r0, =sub_80392A8 - bl SetMainCallback2 - b _080391C6 - .pool -_08039074: - ldr r2, =gMain - ldr r1, =0x00000439 - adds r0, r2, r1 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _08039090 - ldr r0, [r2, 0x8] - b _080390B0 - .pool -_08039090: - ldr r0, =gUnknown_03003124 - ldrb r0, [r0] - cmp r0, 0 - bne _08039172 - ldr r0, =sub_80B3AF8 - movs r1, 0x5 - bl CreateTask - b _08039172 - .pool -_080390AC: - ldr r0, =gMain - ldr r0, [r0, 0x8] -_080390B0: - bl SetMainCallback2 - bl sub_8057028 - bl dp11_free - bl sub_805F094 - b _080391C6 - .pool -_080390C8: - movs r0, 0 - str r0, [sp, 0x4] - movs r1, 0xC0 - lsls r1, 19 - ldr r2, =0x05006000 - add r0, sp, 0x4 - bl CpuSet - movs r4, 0 -_080390DA: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_80363C4 - adds r4, 0x1 - cmp r4, 0x1 - ble _080390DA - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - b _08039172 - .pool -_08039100: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080391C6 -_0803910C: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - b _080391C6 - .pool -_08039118: - ldr r0, =sub_80B3AF8 - bl FuncIsActiveTask - lsls r0, 24 - cmp r0, 0 - bne _080391C6 - b _08039172 - .pool -_0803912C: - bl sub_800A520 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080391C6 - bl sub_800ADF8 - ldr r0, =gUnknown_0824978D - movs r1, 0 - bl battle_show_message_maybe - b _08039172 - .pool -_0803914C: - movs r0, 0 - bl IsTextPrinterActive - lsls r0, 16 - cmp r0, 0 - bne _080391C6 - bl sub_800A520 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080391C6 - b _08039172 -_08039166: - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - bne _08039172 - bl sub_800AC34 -_08039172: - ldr r1, =gBattleCommunication -_08039174: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _080391C6 - .pool -_08039184: - ldr r2, =gMain - ldr r1, =0x00000439 - adds r0, r2, r1 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - adds r3, r2, 0 - cmp r0, 0 - beq _080391A6 - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - bne _080391A6 - ldr r0, =gUnknown_03003124 - ldrb r0, [r0] - cmp r0, 0x1 - beq _080391C6 -_080391A6: - ldr r0, =0x00000439 - adds r2, r3, r0 - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - ldr r0, [r3, 0x8] - bl SetMainCallback2 - bl sub_8057028 - bl dp11_free - bl sub_805F094 -_080391C6: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8038F34 - - thumb_func_start sub_80391E0 -sub_80391E0: @ 80391E0 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0 - cmp r1, 0x6 - bhi _080392A0 - lsls r0, r1, 2 - ldr r1, =_08039200 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08039200: - .4byte _0803921C - .4byte _08039230 - .4byte _08039244 - .4byte _08039258 - .4byte _0803926C - .4byte _08039280 - .4byte _08039294 -_0803921C: - ldr r0, =gUnknown_0831AA08 - lsls r1, r2, 2 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 30 - lsrs r0, 30 - b _080392A0 - .pool -_08039230: - ldr r0, =gUnknown_0831AA08 - lsls r1, r2, 2 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 28 - lsrs r0, 30 - b _080392A0 - .pool -_08039244: - ldr r0, =gUnknown_0831AA08 - lsls r1, r2, 2 - adds r1, r0 - ldrh r0, [r1] - lsls r0, 23 - lsrs r0, 27 - b _080392A0 - .pool -_08039258: - ldr r0, =gUnknown_0831AA08 - lsls r1, r2, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - lsls r0, 29 - lsrs r0, 30 - b _080392A0 - .pool -_0803926C: - ldr r0, =gUnknown_0831AA08 - lsls r1, r2, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - lsls r0, 28 - lsrs r0, 31 - b _080392A0 - .pool -_08039280: - ldr r0, =gUnknown_0831AA08 - lsls r1, r2, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - lsls r0, 26 - lsrs r0, 30 - b _080392A0 - .pool -_08039294: - ldr r0, =gUnknown_0831AA08 - lsls r1, r2, 2 - adds r1, r0 - ldr r0, [r1] - lsls r0, 8 - lsrs r0, 22 -_080392A0: - pop {r1} - bx r1 - .pool - thumb_func_end sub_80391E0 - - thumb_func_start sub_80392A8 -sub_80392A8: @ 80392A8 - push {r4,lr} - sub sp, 0x8 - movs r0, 0 - bl SetHBlankCallback - movs r0, 0 - bl SetVBlankCallback - movs r4, 0 - str r4, [sp, 0x4] - movs r1, 0xC0 - lsls r1, 19 - ldr r2, =0x05006000 - add r0, sp, 0x4 - bl CpuSet - bl ResetPaletteFade - ldr r0, =gUnknown_02022E14 - strh r4, [r0] - ldr r0, =gUnknown_02022E16 - strh r4, [r0] - ldr r0, =gUnknown_02022E18 - strh r4, [r0] - ldr r0, =gUnknown_02022E1A - strh r4, [r0] - ldr r0, =gUnknown_02022E1C - strh r4, [r0] - ldr r0, =gUnknown_02022E1E - strh r4, [r0] - ldr r0, =gUnknown_02022E20 - strh r4, [r0] - ldr r0, =gUnknown_02022E22 - strh r4, [r0] - bl c2_berry_program_update_menu - movs r1, 0x82 - lsls r1, 5 - movs r0, 0 - bl SetGpuReg - bl sub_803570C -_080392FE: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_80363C4 - adds r4, 0x1 - cmp r4, 0x1 - ble _080392FE - bl ResetSpriteData - bl ResetTasks - bl FreeAllSpritePalettes - ldr r1, =gReservedSpritePaletteCount - movs r0, 0x4 - strb r0, [r1] - ldr r0, =vblank_cb_08078BB4 - bl SetVBlankCallback - ldr r0, =sub_803937C - bl SetMainCallback2 - movs r0, 0x1 - negs r0, r0 - movs r4, 0 - str r4, [sp] - movs r1, 0 - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r0, =gBattleCommunication - strb r4, [r0] - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80392A8 - - thumb_func_start sub_803937C -sub_803937C: @ 803937C - push {lr} - bl sub_803939C - bl AnimateSprites - bl BuildOamBuffer - bl RunTextPrinters - bl UpdatePaletteFade - bl RunTasks - pop {r0} - bx r0 - thumb_func_end sub_803937C - - thumb_func_start sub_803939C -sub_803939C: @ 803939C - push {r4,r5,lr} - sub sp, 0x4 - ldr r0, =gBattleCommunication - ldrb r1, [r0] - adds r4, r0, 0 - cmp r1, 0xC - bls _080393AC - b _0803975E -_080393AC: - lsls r0, r1, 2 - ldr r1, =_080393C0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080393C0: - .4byte _080393F4 - .4byte _08039414 - .4byte _08039450 - .4byte _08039470 - .4byte _0803949C - .4byte _080394D8 - .4byte _0803957C - .4byte _08039704 - .4byte _080395CC - .4byte _08039610 - .4byte _08039678 - .4byte _080396A8 - .4byte _08039704 -_080393F4: - movs r0, 0 - bl ShowBg - movs r0, 0x1 - bl ShowBg - movs r0, 0x2 - bl ShowBg - ldr r1, =gBattleCommunication - ldrb r0, [r1] - adds r0, 0x1 - b _0803975C - .pool -_08039414: - ldr r0, =gMain - ldr r1, =0x00000439 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08039434 - ldr r0, =gUnknown_03003124 - ldrb r0, [r0] - cmp r0, 0 - bne _08039434 - ldr r0, =sub_80B3AF8 - movs r1, 0x5 - bl CreateTask -_08039434: - ldr r1, =gBattleCommunication - ldrb r0, [r1] - adds r0, 0x1 - b _0803975C - .pool -_08039450: - ldr r0, =sub_80B3AF8 - bl FuncIsActiveTask - lsls r0, 24 - cmp r0, 0 - beq _0803945E - b _0803975E -_0803945E: - ldr r1, =gBattleCommunication - ldrb r0, [r1] - adds r0, 0x1 - b _0803975C - .pool -_08039470: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0803947E - b _0803975E -_0803947E: - ldr r0, =gText_RecordBattleToPass - movs r1, 0 - bl battle_show_message_maybe - ldr r1, =gBattleCommunication - ldrb r0, [r1] - adds r0, 0x1 - b _0803975C - .pool -_0803949C: - movs r0, 0 - bl IsTextPrinterActive - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0 - beq _080394AC - b _0803975E -_080394AC: - 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 battle_show_message_maybe - ldr r4, =gBattleCommunication - movs r0, 0x1 - strb r0, [r4, 0x1] - bl sub_8056B74 - b _080396EA - .pool -_080394D8: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08039500 - ldrb r0, [r4, 0x1] - cmp r0, 0 - bne _080394EC - b _0803975E -_080394EC: - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4, 0x1] - bl sub_8056BAC - movs r0, 0 - b _0803951E - .pool -_08039500: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08039526 - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _08039510 - b _0803975E -_08039510: - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4, 0x1] - bl sub_8056BAC - movs r0, 0x1 -_0803951E: - strb r0, [r4, 0x1] - bl sub_8056B74 - b _0803975E -_08039526: - movs r5, 0x1 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _08039560 - movs r0, 0x5 - bl PlaySE - ldr r4, =gBattleCommunication - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _08039540 - b _080396EA -_08039540: - str r5, [sp] - movs r0, 0x18 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl sub_8056A3C - bl sub_8185338 - strb r0, [r4, 0x1] - movs r0, 0xA - strb r0, [r4] - b _0803975E - .pool -_08039560: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0803956A - b _0803975E -_0803956A: - movs r0, 0x5 - bl PlaySE - ldr r1, =gBattleCommunication - ldrb r0, [r1] - adds r0, 0x1 - b _0803975C - .pool -_0803957C: - bl sub_800A520 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0803958A - b _0803975E -_0803958A: - str r0, [sp] - movs r0, 0x18 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl sub_8056A3C - ldr r0, =gMain - ldr r1, =0x00000439 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080395B4 - bl sub_800ADF8 - ldr r0, =gUnknown_0824978D - movs r1, 0 - bl battle_show_message_maybe -_080395B4: - ldr r1, =gBattleCommunication - ldrb r0, [r1] - adds r0, 0x1 - b _0803975C - .pool -_080395CC: - ldrb r0, [r4, 0x1] - subs r0, 0x1 - strb r0, [r4, 0x1] - lsls r0, 24 - cmp r0, 0 - beq _080395DA - b _0803975E -_080395DA: - ldr r0, =gMain - ldr r1, =0x00000439 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080395F6 - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - bne _080395F6 - bl sub_800AC34 -_080395F6: - ldr r1, =gBattleCommunication - ldrb r0, [r1] - adds r0, 0x1 - b _0803975C - .pool -_08039610: - ldr r2, =gMain - ldr r1, =0x00000439 - adds r0, r2, r1 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - adds r3, r2, 0 - cmp r0, 0 - beq _08039634 - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - bne _08039634 - ldr r0, =gUnknown_03003124 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08039634 - b _0803975E -_08039634: - ldr r0, =0x00000439 - adds r2, r3, r0 - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08039650 - b _0803975E -_08039650: - ldr r0, [r3, 0x8] - bl SetMainCallback2 - bl sub_8057028 - bl dp11_free - bl sub_805F094 - b _0803975E - .pool -_08039678: - ldrb r0, [r4, 0x1] - cmp r0, 0x1 - bne _080396A0 - movs r0, 0x37 - bl PlaySE - ldr r0, =gText_BattleRecordedOnPass -_08039686: - bl StrCpyDecodeToDisplayedStringBattle - ldr r0, =gDisplayedStringBattle - movs r1, 0 - bl battle_show_message_maybe - movs r0, 0x80 - strb r0, [r4, 0x1] - b _080396EA - .pool -_080396A0: - ldr r0, =gUnknown_08242481 - b _08039686 - .pool -_080396A8: - bl sub_800A520 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0803975E - movs r0, 0 - bl IsTextPrinterActive - lsls r0, 16 - cmp r0, 0 - bne _0803975E - ldr r4, =gBattleCommunication - ldrb r0, [r4, 0x1] - subs r0, 0x1 - strb r0, [r4, 0x1] - lsls r0, 24 - cmp r0, 0 - bne _0803975E - ldr r0, =gMain - ldr r1, =0x00000439 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080396EA - bl sub_800ADF8 - ldr r0, =gUnknown_0824978D - movs r1, 0 - bl battle_show_message_maybe -_080396EA: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - b _0803975E - .pool -_08039704: - movs r0, 0 - bl IsTextPrinterActive - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0 - bne _0803975E - ldr r0, =gMain - ldr r1, =0x00000439 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _08039744 - bl sub_800A520 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0803975E - movs r0, 0x1 - negs r0, r0 - str r4, [sp] - b _0803974A - .pool -_08039744: - movs r0, 0x1 - negs r0, r0 - str r1, [sp] -_0803974A: - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, =gBattleCommunication - movs r0, 0x20 - strb r0, [r1, 0x1] - movs r0, 0x8 -_0803975C: - strb r0, [r1] -_0803975E: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803939C - - thumb_func_start shedinja_something -shedinja_something: @ 803976C - push {r4,r5,lr} - sub sp, 0x10 - adds r4, r0, 0 - add r5, sp, 0xC - movs r0, 0x1 - strb r0, [r5] - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - ldr r1, =0x0000012f - cmp r0, r1 - bne _080397B4 - adds r0, r4, 0 - movs r1, 0x3 - bl GetMonData - ldrb r1, [r5] - cmp r0, r1 - beq _080397B4 - adds r0, r4, 0 - movs r1, 0x2 - mov r2, sp - bl GetMonData - ldr r1, =gUnknown_0831ACA0 - mov r0, sp - bl StringCompareWithoutExtCtrlCodes - cmp r0, 0 - bne _080397B4 - adds r0, r4, 0 - movs r1, 0x3 - adds r2, r5, 0 - bl SetMonData -_080397B4: - add sp, 0x10 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end shedinja_something - - thumb_func_start sub_80397C4 -sub_80397C4: @ 80397C4 - ldr r2, =gUnknown_0831ABA0 - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - lsls r1, 3 - adds r1, r0 - ldrb r0, [r1, 0x3] - lsls r0, 3 - bx lr - .pool - thumb_func_end sub_80397C4 - - thumb_func_start oac_poke_opponent -oac_poke_opponent: @ 80397DC - push {lr} - sub sp, 0x4 - ldr r1, =sub_803980C - str r1, [r0, 0x1C] - movs r1, 0 - bl StartSpriteAnimIfDifferent - movs r0, 0x80 - lsls r0, 10 - ldr r1, =0x00002108 - str r1, [sp] - movs r1, 0 - movs r2, 0xA - movs r3, 0xA - bl BeginNormalPaletteFade - add sp, 0x4 - pop {r0} - bx r0 - .pool - thumb_func_end oac_poke_opponent - - thumb_func_start sub_803980C -sub_803980C: @ 803980C - push {lr} - adds r2, r0, 0 - ldr r0, =gUnknown_020243FC - ldrh r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0803982C - ldrh r0, [r2, 0x24] - adds r0, 0x2 - strh r0, [r2, 0x24] - lsls r0, 16 - cmp r0, 0 - bne _0803982C - ldr r0, =sub_8039838 - str r0, [r2, 0x1C] -_0803982C: - pop {r0} - bx r0 - .pool - thumb_func_end sub_803980C - - thumb_func_start sub_8039838 -sub_8039838: @ 8039838 - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08039880 - ldrh r0, [r4, 0x2E] - lsls r0, 24 - lsrs r0, 24 - bl sub_8076918 - ldr r1, =gHealthBoxesIds - movs r2, 0x2E - ldrsh r0, [r4, r2] - adds r0, r1 - ldrb r0, [r0] - bl sub_80729D0 - ldr r0, =sub_8039894 - str r0, [r4, 0x1C] - adds r0, r4, 0 - movs r1, 0 - bl StartSpriteAnimIfDifferent - movs r0, 0x80 - lsls r0, 10 - ldr r1, =0x00002108 - str r1, [sp] - movs r1, 0 - movs r2, 0xA - movs r3, 0 - bl BeginNormalPaletteFade -_08039880: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8039838 - - thumb_func_start sub_8039894 -sub_8039894: @ 8039894 - push {lr} - adds r2, r0, 0 - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080398B0 - ldrh r1, [r2, 0x32] - adds r0, r2, 0 - movs r2, 0 - movs r3, 0x1 - bl BattleAnimateFrontSprite -_080398B0: - pop {r0} - bx r0 - .pool - thumb_func_end sub_8039894 - - thumb_func_start SpriteCallbackDummy_2 -SpriteCallbackDummy_2: @ 80398B8 - bx lr - thumb_func_end SpriteCallbackDummy_2 - - thumb_func_start sub_80398BC -sub_80398BC: @ 80398BC - movs r1, 0x6 - strh r1, [r0, 0x34] - movs r1, 0x1 - strh r1, [r0, 0x36] - ldr r1, =sub_80398D0 - str r1, [r0, 0x1C] - bx lr - .pool - thumb_func_end sub_80398BC - - thumb_func_start sub_80398D0 -sub_80398D0: @ 80398D0 - push {r4,lr} - adds r3, r0, 0 - ldrh r0, [r3, 0x36] - subs r0, 0x1 - strh r0, [r3, 0x36] - lsls r0, 16 - cmp r0, 0 - bne _08039924 - movs r0, 0x8 - strh r0, [r3, 0x36] - movs r0, 0x3E - adds r0, r3 - mov r12, r0 - ldrb r2, [r0] - lsls r0, r2, 29 - lsrs r0, 31 - movs r1, 0x1 - eors r1, r0 - lsls r1, 2 - movs r4, 0x5 - negs r4, r4 - adds r0, r4, 0 - ands r0, r2 - orrs r0, r1 - mov r1, r12 - strb r0, [r1] - ldrh r0, [r3, 0x34] - subs r0, 0x1 - strh r0, [r3, 0x34] - lsls r0, 16 - asrs r2, r0, 16 - cmp r2, 0 - bne _08039924 - ldrb r1, [r1] - adds r0, r4, 0 - ands r0, r1 - mov r1, r12 - strb r0, [r1] - ldr r0, =SpriteCallbackDummy_2 - str r0, [r3, 0x1C] - ldr r0, =gUnknown_02022F88 - str r2, [r0] -_08039924: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80398D0 - - thumb_func_start sub_8039934 -sub_8039934: @ 8039934 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r9, r0 - ldrh r0, [r0, 0x2E] - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r1, [r0] - lsls r0, r6, 2 - adds r1, r0, r1 - ldrh r0, [r1, 0x2] - cmp r0, 0 - beq _0803995C - adds r4, r0, 0 - b _08039960 - .pool -_0803995C: - mov r0, r9 - ldrh r4, [r0, 0x32] -_08039960: - ldr r1, =gBattlePartyID - lsls r0, r6, 1 - adds r5, r0, r1 - ldrh r0, [r5] - movs r1, 0x64 - mov r8, r1 - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - ldr r7, =gEnemyParty - adds r0, r7 - movs r1, 0 - bl GetMonData - cmp r4, 0xC9 - bne _080399E4 - ldrh r0, [r5] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r7 - movs r1, 0 - bl GetMonData - adds r2, r0, 0 - movs r0, 0xC0 - lsls r0, 18 - ands r0, r2 - lsrs r0, 18 - movs r1, 0xC0 - lsls r1, 10 - ands r1, r2 - lsrs r1, 12 - orrs r0, r1 - movs r1, 0xC0 - lsls r1, 2 - ands r1, r2 - lsrs r1, 6 - orrs r0, r1 - movs r1, 0x3 - ands r1, r2 - orrs r0, r1 - movs r1, 0x1C - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0 - bne _080399D0 - movs r0, 0xC9 - b _080399DA - .pool -_080399D0: - movs r1, 0xCE - lsls r1, 1 - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 -_080399DA: - ldr r1, =gUnknown_08300D38 - lsls r0, 2 - b _08039A1C - .pool -_080399E4: - ldr r0, =0x00000181 - cmp r4, r0 - bne _08039A08 - ldr r0, =gUnknown_08525F78 - ldr r1, =gBattleMonForms - adds r1, r6, r1 - ldrb r1, [r1] - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - b _08039A20 - .pool -_08039A08: - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - bls _08039A18 - ldr r0, =gUnknown_08300D38 - b _08039A1E - .pool -_08039A18: - ldr r1, =gUnknown_08300D38 - lsls r0, r4, 2 -_08039A1C: - adds r0, r1 -_08039A1E: - ldrb r0, [r0, 0x1] -_08039A20: - lsrs r1, r0, 3 - movs r0, 0x8 - subs r0, r1 - mov r1, r9 - strh r0, [r1, 0x34] - movs r0, 0x1 - strh r0, [r1, 0x36] - ldr r0, =sub_8039A48 - str r0, [r1, 0x1C] - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8039934 - - thumb_func_start sub_8039A48 -sub_8039A48: @ 8039A48 - push {r4,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x36] - subs r0, 0x1 - strh r0, [r4, 0x36] - lsls r0, 16 - cmp r0, 0 - bne _08039AC8 - movs r0, 0x2 - strh r0, [r4, 0x36] - ldrh r0, [r4, 0x26] - adds r0, 0x8 - strh r0, [r4, 0x26] - ldrh r0, [r4, 0x34] - subs r0, 0x1 - strh r0, [r4, 0x34] - lsls r0, 16 - cmp r0, 0 - bge _08039A7C - adds r0, r4, 0 - bl FreeSpriteOamMatrix - adds r0, r4, 0 - bl DestroySprite - b _08039AC8 -_08039A7C: - ldrh r0, [r4, 0x2E] - lsls r0, 24 - lsrs r0, 24 - bl GetBankIdentity - ldr r1, =gBattleSpritesGfx - ldr r1, [r1] - lsls r0, 24 - lsrs r0, 22 - adds r1, 0x4 - adds r1, r0 - ldr r2, =gBattleMonForms - movs r3, 0x2E - ldrsh r0, [r4, r3] - adds r0, r2 - ldrb r0, [r0] - lsls r0, 11 - ldr r1, [r1] - adds r1, r0 - movs r2, 0x34 - ldrsh r0, [r4, r2] - lsls r0, 8 - adds r1, r0 - movs r2, 0 - movs r0, 0xFF -_08039AAE: - strb r2, [r1] - adds r1, 0x1 - subs r0, 0x1 - cmp r0, 0 - bge _08039AAE - ldr r0, =gBattleMonForms - movs r3, 0x2E - ldrsh r1, [r4, r3] - adds r1, r0 - ldrb r1, [r1] - adds r0, r4, 0 - bl StartSpriteAnim -_08039AC8: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8039A48 - - thumb_func_start sub_8039AD8 -sub_8039AD8: @ 8039AD8 - movs r1, 0x8 - strh r1, [r0, 0x34] - adds r1, r0, 0 - adds r1, 0x3E - ldrb r1, [r1] - lsls r1, 29 - lsrs r1, 31 - strh r1, [r0, 0x36] - ldr r1, =sub_8039AF4 - str r1, [r0, 0x1C] - bx lr - .pool - thumb_func_end sub_8039AD8 - - thumb_func_start sub_8039AF4 -sub_8039AF4: @ 8039AF4 - push {lr} - adds r3, r0, 0 - ldrh r0, [r3, 0x34] - subs r0, 0x1 - strh r0, [r3, 0x34] - lsls r0, 16 - cmp r0, 0 - bne _08039B26 - movs r0, 0x3E - adds r0, r3 - mov r12, r0 - ldrb r2, [r0] - 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 - mov r1, r12 - strb r0, [r1] - movs r0, 0x8 - strh r0, [r3, 0x34] -_08039B26: - pop {r0} - bx r0 - thumb_func_end sub_8039AF4 - - thumb_func_start sub_8039B2C -sub_8039B2C: @ 8039B2C - movs r1, 0x3E - adds r1, r0 - mov r12, r1 - movs r1, 0x1 - ldrh r2, [r0, 0x36] - ands r2, r1 - lsls r2, 2 - mov r1, r12 - ldrb r3, [r1] - movs r1, 0x5 - negs r1, r1 - ands r1, r3 - orrs r1, r2 - mov r2, r12 - strb r1, [r2] - movs r1, 0 - strh r1, [r0, 0x36] - ldr r1, =SpriteCallbackDummy_2 - str r1, [r0, 0x1C] - bx lr - .pool - thumb_func_end sub_8039B2C - - thumb_func_start sub_8039B58 -sub_8039B58: @ 8039B58 - push {r4,lr} - adds r4, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08039BA0 - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08039B80 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x02000002 - ands r0, r1 - cmp r0, 0 - beq _08039B94 -_08039B80: - ldrh r0, [r4, 0x32] - bl HasTwoFramesAnimation - lsls r0, 24 - cmp r0, 0 - beq _08039B94 - adds r0, r4, 0 - movs r1, 0x1 - bl StartSpriteAnim -_08039B94: - ldrh r1, [r4, 0x32] - adds r0, r4, 0 - movs r2, 0x1 - movs r3, 0x1 - bl BattleAnimateFrontSprite -_08039BA0: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8039B58 - - thumb_func_start sub_8039BB4 -sub_8039BB4: @ 8039BB4 - ldr r1, =oac_poke_ally_ - str r1, [r0, 0x1C] - bx lr - .pool - thumb_func_end sub_8039BB4 - - thumb_func_start oac_poke_ally_ -oac_poke_ally_: @ 8039BC0 - push {lr} - adds r2, r0, 0 - ldr r0, =gUnknown_020243FC - ldrh r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08039BE4 - ldrh r0, [r2, 0x24] - subs r0, 0x2 - strh r0, [r2, 0x24] - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0 - bne _08039BE4 - ldr r0, =nullsub_19 - str r0, [r2, 0x1C] - strh r1, [r2, 0x30] -_08039BE4: - pop {r0} - bx r0 - .pool - thumb_func_end oac_poke_ally_ - - thumb_func_start sub_8039BF0 -sub_8039BF0: @ 8039BF0 - ldr r1, =nullsub_19 - str r1, [r0, 0x1C] - bx lr - .pool - thumb_func_end sub_8039BF0 - - thumb_func_start nullsub_19 -nullsub_19: @ 8039BFC - bx lr - thumb_func_end nullsub_19 - - thumb_func_start sub_8039C00 -sub_8039C00: @ 8039C00 - push {lr} - adds r2, r0, 0 - ldr r0, =gUnknown_020243FC - ldrh r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08039C20 - ldrh r0, [r2, 0x30] - ldrh r1, [r2, 0x24] - adds r0, r1 - strh r0, [r2, 0x24] - ldrh r0, [r2, 0x32] - ldrh r1, [r2, 0x26] - adds r0, r1 - strh r0, [r2, 0x26] -_08039C20: - pop {r0} - bx r0 - .pool - thumb_func_end sub_8039C00 - - thumb_func_start dp11b_obj_instanciate -dp11b_obj_instanciate: @ 8039C28 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - lsls r2, 24 - lsrs r2, 24 - mov r9, r2 - lsls r3, 24 - lsrs r3, 24 - mov r10, r3 - cmp r1, 0 - beq _08039C64 - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r1, [r0, 0x4] - lsls r2, r4, 1 - adds r0, r2, r4 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x2 - b _08039C76 - .pool -_08039C64: - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r1, [r0, 0x4] - lsls r2, r4, 1 - adds r0, r2, r4 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x4 -_08039C76: - ands r0, r1 - adds r6, r2, 0 - cmp r0, 0 - bne _08039D2C - ldr r0, =objc_dp11b_pingpong - bl CreateInvisibleSpriteWithCallback - lsls r0, 24 - lsrs r5, r0, 24 - mov r0, r8 - cmp r0, 0x1 - bne _08039CD0 - ldr r0, =gHealthBoxesIds - adds r0, r4, r0 - ldrb r7, [r0] - ldr r2, =gUnknown_020244D0 - ldr r0, [r2] - ldr r0, [r0, 0x4] - adds r1, r6, r4 - lsls r1, 2 - adds r0, r1, r0 - strb r5, [r0, 0x2] - ldr r0, [r2] - ldr r0, [r0, 0x4] - adds r1, r0 - ldrb r0, [r1] - movs r2, 0x2 - orrs r0, r2 - strb r0, [r1] - ldr r2, =gSprites - lsls r3, r5, 4 - adds r0, r3, r5 - lsls r0, 2 - adds r0, r2 - movs r1, 0x80 - b _08039CFE - .pool -_08039CD0: - ldr r0, =gBankSpriteIds - adds r0, r4, r0 - ldrb r7, [r0] - ldr r2, =gUnknown_020244D0 - ldr r0, [r2] - ldr r0, [r0, 0x4] - adds r1, r6, r4 - lsls r1, 2 - adds r0, r1, r0 - strb r5, [r0, 0x3] - ldr r0, [r2] - ldr r0, [r0, 0x4] - adds r1, r0 - ldrb r0, [r1] - movs r2, 0x4 - orrs r0, r2 - strb r0, [r1] - ldr r2, =gSprites - lsls r3, r5, 4 - adds r0, r3, r5 - lsls r0, 2 - adds r0, r2 - movs r1, 0xC0 -_08039CFE: - strh r1, [r0, 0x2E] - adds r4, r2, 0 - adds r1, r3, r5 - lsls r1, 2 - adds r1, r4 - mov r2, r9 - lsls r0, r2, 24 - asrs r0, 24 - movs r2, 0 - strh r0, [r1, 0x30] - mov r3, r10 - lsls r0, r3, 24 - asrs r0, 24 - strh r0, [r1, 0x32] - strh r7, [r1, 0x34] - mov r0, r8 - strh r0, [r1, 0x36] - lsls r0, r7, 4 - adds r0, r7 - lsls r0, 2 - adds r0, r4 - strh r2, [r0, 0x24] - strh r2, [r0, 0x26] -_08039D2C: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end dp11b_obj_instanciate - - thumb_func_start dp11b_obj_free -dp11b_obj_free: @ 8039D48 - push {r4-r6,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0x1 - bne _08039D9C - ldr r6, =gUnknown_020244D0 - ldr r0, [r6] - ldr r1, [r0, 0x4] - lsls r0, r2, 1 - adds r0, r2 - lsls r5, r0, 2 - adds r3, r5, r1 - ldrb r1, [r3] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08039DEA - ldr r2, =gSprites - ldrb r1, [r3, 0x2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r1, [r0, 0x34] - lsls r1, 24 - lsrs r4, r1, 24 - bl DestroySprite - ldr r0, [r6] - ldr r1, [r0, 0x4] - adds r1, r5, r1 - ldrb r2, [r1] - movs r0, 0x3 - negs r0, r0 - b _08039DD6 - .pool -_08039D9C: - ldr r6, =gUnknown_020244D0 - ldr r0, [r6] - ldr r1, [r0, 0x4] - lsls r0, r2, 1 - adds r0, r2 - lsls r5, r0, 2 - adds r3, r5, r1 - ldrb r1, [r3] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08039DEA - ldr r2, =gSprites - ldrb r1, [r3, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r1, [r0, 0x34] - lsls r1, 24 - lsrs r4, r1, 24 - bl DestroySprite - ldr r0, [r6] - ldr r1, [r0, 0x4] - adds r1, r5, r1 - ldrb r2, [r1] - movs r0, 0x5 - negs r0, r0 -_08039DD6: - ands r0, r2 - strb r0, [r1] - ldr r0, =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - movs r0, 0 - strh r0, [r1, 0x24] - strh r0, [r1, 0x26] -_08039DEA: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end dp11b_obj_free - - thumb_func_start objc_dp11b_pingpong -objc_dp11b_pingpong: @ 8039DF8 - push {r4,r5,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x34] - lsls r0, 24 - lsrs r5, r0, 24 - movs r1, 0x36 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - bne _08039E10 - movs r2, 0x2E - ldrsh r0, [r4, r2] - b _08039E14 -_08039E10: - movs r1, 0x2E - ldrsh r0, [r4, r1] -_08039E14: - movs r2, 0x32 - ldrsh r1, [r4, r2] - bl Sin - ldr r2, =gSprites - lsls r1, r5, 4 - adds r1, r5 - lsls r1, 2 - adds r1, r2 - ldrh r2, [r4, 0x32] - adds r0, r2 - strh r0, [r1, 0x26] - ldrh r0, [r4, 0x30] - ldrh r1, [r4, 0x2E] - adds r0, r1 - movs r1, 0xFF - ands r0, r1 - strh r0, [r4, 0x2E] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end objc_dp11b_pingpong - - thumb_func_start sub_8039E44 -sub_8039E44: @ 8039E44 - push {lr} - adds r2, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08039E5C - ldrh r1, [r2, 0x32] - adds r0, r2, 0 - bl BattleAnimateBackSprite -_08039E5C: - pop {r0} - bx r0 - thumb_func_end sub_8039E44 - - thumb_func_start sub_8039E60 -sub_8039E60: @ 8039E60 - push {r4,lr} - adds r4, r0, 0 - bl sub_8039E9C - adds r0, r4, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08039E7A - ldr r0, =nullsub_19 - str r0, [r4, 0x1C] -_08039E7A: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8039E60 - - thumb_func_start sub_8039E84 -sub_8039E84: @ 8039E84 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x1 - bl StartSpriteAnim - ldr r0, =sub_8039E60 - str r0, [r4, 0x1C] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8039E84 - - thumb_func_start sub_8039E9C -sub_8039E9C: @ 8039E9C - push {lr} - adds r2, r0, 0 - adds r0, 0x2C - ldrb r1, [r0] - movs r0, 0x3F - ands r0, r1 - cmp r0, 0 - bne _08039EBE - ldr r1, =gUnknown_0831ACE0 - adds r0, r2, 0 - adds r0, 0x2B - ldrb r0, [r0] - adds r0, r1 - ldrb r1, [r0] - adds r0, r2, 0 - adds r0, 0x28 - strb r1, [r0] -_08039EBE: - pop {r0} - bx r0 - .pool - thumb_func_end sub_8039E9C - - thumb_func_start nullsub_20 -nullsub_20: @ 8039EC8 - bx lr - thumb_func_end nullsub_20 - - thumb_func_start sub_8039ECC -sub_8039ECC: @ 8039ECC - push {lr} - bl sub_8039F40 - ldr r1, =gBattleCommunication - movs r0, 0 - strb r0, [r1, 0x1] - ldr r1, =gBattleMainFunc - ldr r0, =bc_8012FAC - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end sub_8039ECC - - thumb_func_start sub_8039EF0 -sub_8039EF0: @ 8039EF0 - push {r4,r5,lr} - ldr r0, =gBattleMainFunc - ldr r0, [r0] - bl _call_via_r0 - ldr r1, =gActiveBank - movs r0, 0 - strb r0, [r1] - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r0, 0 - beq _08039F2A - ldr r5, =gBattleBankFunc - adds r4, r1, 0 -_08039F0C: - ldrb r0, [r4] - lsls r0, 2 - adds r0, r5 - ldr r0, [r0] - bl _call_via_r0 - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _08039F0C -_08039F2A: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8039EF0 - - thumb_func_start sub_8039F40 -sub_8039F40: @ 8039F40 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r0, 0 - bl sub_803D580 - bl sub_803D6A0 - movs r2, 0 - movs r3, 0 - ldr r0, =gUnknown_02024260 - mov r10, r0 - ldr r1, =gUnknown_02024258 - mov r9, r1 - ldr r0, =gUnknown_02024250 - mov r8, r0 - ldr r1, =gLastUsedMovesByBanks - mov r12, r1 - ldr r5, =gDisableStructs - movs r4, 0 - ldr r7, =gUnknown_02024240 - ldr r6, =gUnknown_02024268 -_08039F70: - ldr r0, =gStatuses3 - adds r0, r4, r0 - str r3, [r0] - movs r1, 0 -_08039F78: - adds r0, r5, r1 - strb r3, [r0] - adds r1, 0x1 - cmp r1, 0x1B - bls _08039F78 - movs r0, 0x2 - strb r0, [r5, 0x16] - ldr r1, =gUnknown_02024284 - adds r0, r2, r1 - strb r3, [r0] - mov r0, r12 - strh r3, [r0] - mov r1, r8 - strh r3, [r1] - mov r0, r9 - strh r3, [r0] - mov r1, r10 - strh r3, [r1] - ldr r0, =gUnknown_02024270 - adds r1, r2, r0 - movs r0, 0xFF - strb r0, [r1] - strh r3, [r6] - strh r3, [r7] - ldr r1, =gBattleResources - ldr r0, [r1] - ldr r0, [r0, 0x4] - adds r0, r4 - str r3, [r0] - ldr r1, =gUnknown_02024230 - adds r0, r4, r1 - str r3, [r0] - movs r0, 0x2 - add r10, r0 - add r9, r0 - add r8, r0 - add r12, r0 - adds r5, 0x1C - adds r4, 0x4 - adds r7, 0x2 - adds r6, 0x2 - adds r2, 0x1 - cmp r2, 0x3 - ble _08039F70 - movs r5, 0 - ldr r3, =gSideTimers - ldr r4, =gSideAffecting - movs r2, 0x1 -_08039FD8: - strh r5, [r4] - movs r1, 0 -_08039FDC: - adds r0, r3, r1 - strb r5, [r0] - adds r1, 0x1 - cmp r1, 0xB - bls _08039FDC - adds r3, 0xC - adds r4, 0x2 - subs r2, 0x1 - cmp r2, 0 - bge _08039FD8 - movs r1, 0 - ldr r2, =gBankAttacker - strb r1, [r2] - ldr r0, =gBankTarget - strb r1, [r0] - ldr r2, =gBattleWeather - strh r1, [r2] - ldr r1, =gWishFutureKnock - movs r2, 0 - movs r3, 0 -_0803A004: - adds r0, r1, r2 - strb r3, [r0] - adds r2, 0x1 - cmp r2, 0x2B - bls _0803A004 - ldr r2, =gHitMarker - movs r0, 0 - str r0, [r2] - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 17 - ands r0, r1 - cmp r0, 0 - bne _0803A090 - movs r0, 0x2 - ands r1, r0 - cmp r1, 0 - bne _0803A0AE - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r1, [r0, 0x15] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0803A0AE - movs r0, 0x80 - b _0803A0AC - .pool -_0803A090: - ldr r0, =0x02000002 - ands r1, r0 - cmp r1, 0 - bne _0803A0AE - bl sub_8185FB8 - lsls r0, 24 - cmp r0, 0 - beq _0803A0AE - ldr r1, =gHitMarker - ldr r0, [r1] - movs r1, 0x80 - orrs r0, r1 - ldr r2, =gHitMarker -_0803A0AC: - str r0, [r2] -_0803A0AE: - ldr r3, =gBattleScripting - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x15] - lsls r0, 30 - lsrs r0, 31 - movs r1, 0 - strb r0, [r3, 0x1D] - ldr r0, =gUnknown_02024212 - strb r1, [r0] - ldr r0, =gBattleOutcome - strb r1, [r0] - ldr r0, =gBattleExecBuffer - str r1, [r0] - ldr r0, =gUnknown_0202432E - movs r2, 0 - strh r1, [r0] - ldr r1, =gBattleResources - ldr r0, [r1] - ldr r0, [r0, 0x8] - adds r0, 0x20 - strb r2, [r0] - ldr r0, [r1] - ldr r0, [r0, 0xC] - adds r0, 0x20 - strb r2, [r0] - ldr r5, =gUnknown_0202432C - ldr r6, =gBattleMoveDamage - ldr r7, =gUnknown_020243FC - ldr r0, =gUnknown_03005D54 - mov r8, r0 - ldr r1, =gAbsentBankFlags - mov r9, r1 - ldr r2, =gEnemyParty - mov r10, r2 - ldr r1, =gBattleCommunication - movs r2, 0 - adds r0, r1, 0x7 -_0803A0FA: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _0803A0FA - movs r4, 0 - strh r4, [r5] - movs r0, 0 - str r0, [r6] - strh r0, [r7] - strb r4, [r3, 0x18] - strb r4, [r3, 0x19] - mov r0, r8 - strb r4, [r0] - mov r1, r9 - strb r4, [r1] - ldr r5, =gBattleStruct - ldr r0, [r5] - adds r0, 0x6C - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x79 - strb r4, [r0] - ldr r0, [r5] - adds r0, 0x7A - strb r4, [r0] - mov r0, r10 - movs r1, 0xB - bl GetMonData - ldr r6, [r5] - adds r6, 0x7C - ldr r2, =gBaseStats - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r1, [r1, 0x8] - movs r0, 0x64 - muls r0, r1 - ldr r1, =0x000004fb - bl __divsi3 - strb r0, [r6] - ldr r0, [r5] - adds r0, 0x7B - movs r1, 0x3 - strb r1, [r0] - ldr r0, [r5] - strb r4, [r0, 0x12] - ldr r0, [r5] - adds r0, 0x4A - movs r1, 0x1 - strb r1, [r0] - movs r2, 0 - movs r1, 0 - adds r6, r5, 0 -_0803A16A: - ldr r0, [r5] - adds r0, r2, r0 - adds r0, 0x98 - strb r1, [r0] - ldr r0, [r5] - adds r0, r2, r0 - adds r0, 0xB8 - strb r1, [r0] - ldr r0, [r5] - adds r0, r2, r0 - adds r0, 0xC8 - strb r1, [r0] - ldr r0, [r5] - adds r0, r2, r0 - adds r0, 0xD0 - strb r1, [r0] - ldr r0, [r5] - adds r0, r2, r0 - adds r0, 0xE0 - strb r1, [r0] - ldr r0, [r5] - adds r0, r2, r0 - adds r0, 0xE8 - strb r1, [r0] - ldr r0, [r5] - adds r0, r2, r0 - adds r0, 0xF0 - strb r1, [r0] - ldr r0, [r5] - adds r0, r2, r0 - adds r0, 0xF8 - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x7 - ble _0803A16A - movs r2, 0 - ldr r4, =gBattleStruct - movs r3, 0xA5 - lsls r3, 2 - movs r1, 0x6 -_0803A1BA: - ldr r0, [r4] - adds r0, r2, r0 - adds r0, r3 - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x3 - ble _0803A1BA - ldr r0, [r6] - adds r0, 0xDF - movs r1, 0 - strb r1, [r0] - ldr r0, [r6] - adds r0, 0x92 - strb r1, [r0] - bl Random - ldr r1, =gUnknown_02024330 - strh r0, [r1] - ldr r1, =gBattleResults - movs r2, 0 - movs r3, 0 -_0803A1E4: - adds r0, r1, r2 - strb r3, [r0] - adds r2, 0x1 - cmp r2, 0x43 - bls _0803A1E4 - ldr r0, =gEnemyParty - bl IsMonShiny - ldr r3, =gBattleResults - movs r1, 0x1 - ands r1, r0 - lsls r1, 6 - ldrb r2, [r3, 0x5] - movs r0, 0x41 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3, 0x5] - ldr r2, =gBattleStruct - ldr r0, [r2] - movs r1, 0xA8 - lsls r1, 2 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - ldr r2, =0x000002a1 - adds r0, r2 - strb r1, [r0] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8039F40 - - thumb_func_start sub_803A284 -sub_803A284: @ 803A284 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - ldr r4, =gDisableStructs - ldr r5, =gActiveBank - ldrb r1, [r5] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - mov r1, sp - adds r0, r4 - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - ldr r0, [r0] - str r0, [r1] - ldr r2, =gBattleMoves - ldr r3, =gCurrentMove - ldrh r1, [r3] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - mov r12, r4 - mov r9, r5 - ldr r6, =gStatuses3 - mov r10, r6 - cmp r0, 0x7F - beq _0803A35C - movs r5, 0 - mov r6, r9 - movs r4, 0x58 - ldr r2, =gBattleMons - adds r2, 0x18 - movs r1, 0x6 -_0803A2D4: - ldrb r0, [r6] - muls r0, r4 - adds r0, r5, r0 - adds r0, r2 - strb r1, [r0] - adds r5, 0x1 - cmp r5, 0x7 - ble _0803A2D4 - movs r5, 0 - ldr r7, =gNoOfAllBanks - ldrb r7, [r7] - cmp r5, r7 - bge _0803A348 - ldr r0, =gBattleMons + 0x50 - mov r8, r0 - ldr r4, =gDisableStructs - ldr r3, =gStatuses3 -_0803A2F6: - movs r0, 0x58 - muls r0, r5 - mov r1, r8 - adds r2, r0, r1 - ldr r1, [r2] - movs r0, 0x80 - lsls r0, 19 - ands r0, r1 - cmp r0, 0 - beq _0803A31A - ldrb r0, [r4, 0x14] - ldr r6, =gActiveBank - ldrb r6, [r6] - cmp r0, r6 - bne _0803A31A - ldr r0, =0xfbffffff - ands r1, r0 - str r1, [r2] -_0803A31A: - ldr r1, [r3] - movs r0, 0x18 - ands r0, r1 - cmp r0, 0 - beq _0803A33A - ldrb r0, [r4, 0x15] - ldr r7, =gActiveBank - ldrb r7, [r7] - cmp r0, r7 - bne _0803A33A - movs r0, 0x19 - negs r0, r0 - ands r1, r0 - str r1, [r3] - movs r0, 0 - strb r0, [r4, 0x15] -_0803A33A: - adds r4, 0x1C - adds r3, 0x4 - adds r5, 0x1 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r5, r0 - blt _0803A2F6 -_0803A348: - ldr r1, =gCurrentMove - ldrh r0, [r1] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - ldr r2, =gBattleMoves - adds r1, r2 - ldrb r0, [r1] - cmp r0, 0x7F - bne _0803A414 -_0803A35C: - mov r3, r9 - ldrb r1, [r3] - movs r0, 0x58 - adds r2, r1, 0 - muls r2, r0 - ldr r0, =gBattleMons - adds r0, 0x50 - adds r2, r0 - ldr r0, [r2] - ldr r1, =0x15100007 - ands r0, r1 - str r0, [r2] - ldrb r1, [r3] - lsls r1, 2 - add r1, r10 - ldr r0, [r1] - ldr r2, =0x0003043f - ands r0, r2 - str r0, [r1] - movs r5, 0 - ldr r6, =gNoOfAllBanks - ldrb r6, [r6] - cmp r5, r6 - bge _0803A430 - mov r7, r9 - movs r6, 0 -_0803A390: - ldrb r0, [r7] - bl GetBankSide - adds r4, r0, 0 - lsls r0, r5, 24 - lsrs r0, 24 - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - beq _0803A3D0 - ldr r1, =gStatuses3 - lsls r0, r5, 2 - adds r2, r0, r1 - ldr r1, [r2] - movs r0, 0x18 - ands r0, r1 - cmp r0, 0 - beq _0803A3D0 - ldr r0, =gDisableStructs - adds r0, r6, r0 - ldrb r0, [r0, 0x15] - ldrb r3, [r7] - cmp r0, r3 - bne _0803A3D0 - movs r0, 0x19 - negs r0, r0 - ands r1, r0 - movs r0, 0x10 - orrs r1, r0 - str r1, [r2] -_0803A3D0: - adds r6, 0x1C - adds r5, 0x1 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r5, r0 - blt _0803A390 - ldr r6, =gDisableStructs - mov r12, r6 - ldr r7, =gActiveBank - mov r9, r7 - b _0803A430 - .pool -_0803A414: - mov r0, r9 - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - ldr r1, =gBattleMons - adds r1, 0x50 - adds r0, r1 - movs r1, 0 - str r1, [r0] - mov r2, r9 - ldrb r0, [r2] - lsls r0, 2 - add r0, r10 - str r1, [r0] -_0803A430: - movs r5, 0 - ldr r3, =gBattleStruct - mov r8, r3 - ldr r6, =gUnknown_020244AC - mov r10, r6 - ldr r7, =gNoOfAllBanks - ldrb r7, [r7] - cmp r5, r7 - bge _0803A490 - ldr r3, =gBattleMons + 0x50 - ldr r7, =gBitTable - ldr r6, =gActiveBank -_0803A448: - movs r0, 0x58 - muls r0, r5 - adds r4, r0, r3 - ldrb r0, [r6] - lsls r0, 2 - adds r0, r7 - ldr r0, [r0] - lsls r2, r0, 16 - ldr r1, [r4] - adds r0, r1, 0 - ands r0, r2 - cmp r0, 0 - beq _0803A466 - bics r1, r2 - str r1, [r4] -_0803A466: - ldr r1, [r4] - movs r0, 0xE0 - lsls r0, 8 - ands r0, r1 - cmp r0, 0 - beq _0803A486 - mov r2, r8 - ldr r0, [r2] - adds r0, r5, r0 - ldrb r0, [r0, 0x14] - ldrb r2, [r6] - cmp r0, r2 - bne _0803A486 - ldr r0, =0xffff1fff - ands r1, r0 - str r1, [r4] -_0803A486: - adds r5, 0x1 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r5, r0 - blt _0803A448 -_0803A490: - mov r1, r9 - ldrb r0, [r1] - add r0, r10 - movs r1, 0 - strb r1, [r0] - mov r2, r9 - ldrb r0, [r2] - ldr r3, =gUnknown_020244B0 - adds r0, r3 - strb r1, [r0] - ldrb r1, [r2] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - mov r6, r12 - adds r1, r0, r6 - movs r5, 0 - movs r2, 0 -_0803A4B4: - adds r0, r1, r5 - strb r2, [r0] - adds r5, 0x1 - cmp r5, 0x1B - bls _0803A4B4 - ldr r7, =gCurrentMove - ldrh r0, [r7] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - ldr r0, =gBattleMoves - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x7F - bne _0803A540 - mov r2, r9 - ldrb r1, [r2] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r12 - mov r1, sp - ldrb r1, [r1, 0xA] - strb r1, [r0, 0xA] - ldrb r1, [r2] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r12 - mov r1, sp - ldrb r1, [r1, 0x15] - strb r1, [r0, 0x15] - ldrb r0, [r2] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - add r1, r12 - mov r0, sp - ldrb r2, [r0, 0xF] - lsls r2, 28 - movs r4, 0xF - lsrs r2, 28 - ldrb r3, [r1, 0xF] - movs r0, 0x10 - negs r0, r0 - ands r0, r3 - orrs r0, r2 - strb r0, [r1, 0xF] - mov r3, r9 - ldrb r1, [r3] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r12 - mov r1, sp - ldrb r1, [r1, 0xF] - lsrs r1, 4 - lsls r1, 4 - ldrb r2, [r0, 0xF] - ands r4, r2 - orrs r4, r1 - strb r4, [r0, 0xF] - ldrb r1, [r3] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r12 - mov r1, sp - ldrb r1, [r1, 0x14] - strb r1, [r0, 0x14] -_0803A540: - movs r0, 0 - ldr r6, =gBattleMoveFlags - strb r0, [r6] - mov r7, r9 - ldrb r1, [r7] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r12 - movs r4, 0 - movs r1, 0x2 - strb r1, [r0, 0x16] - ldrb r0, [r7] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - add r1, r12 - mov r0, sp - ldrb r0, [r0, 0x18] - movs r2, 0x2 - ands r2, r0 - ldrb r3, [r1, 0x18] - movs r0, 0x3 - negs r0, r0 - ands r0, r3 - orrs r0, r2 - strb r0, [r1, 0x18] - ldrb r0, [r7] - lsls r0, 1 - ldr r1, =gLastUsedMovesByBanks - adds r0, r1 - movs r2, 0 - strh r4, [r0] - ldrb r0, [r7] - lsls r0, 1 - ldr r3, =gUnknown_02024250 - adds r0, r3 - strh r4, [r0] - ldrb r0, [r7] - lsls r0, 1 - ldr r6, =gUnknown_02024258 - adds r0, r6 - strh r4, [r0] - ldrb r0, [r7] - lsls r0, 1 - ldr r7, =gUnknown_02024260 - adds r0, r7 - strh r4, [r0] - mov r1, r9 - ldrb r0, [r1] - lsls r0, 1 - ldr r3, =gUnknown_02024240 - adds r0, r3 - strh r4, [r0] - ldrb r0, [r1] - ldr r6, =gUnknown_02024270 - adds r0, r6 - movs r1, 0xFF - strb r1, [r0] - mov r7, r9 - ldrb r0, [r7] - mov r3, r8 - ldr r1, [r3] - lsls r0, 1 - adds r0, r1 - adds r0, 0x98 - strb r2, [r0] - ldrb r0, [r7] - ldr r1, [r3] - lsls r0, 1 - adds r0, r1 - adds r0, 0x99 - strb r2, [r0] - ldrb r0, [r7] - ldr r1, [r3] - lsls r0, 3 - adds r0, r1 - adds r0, 0xE0 - strb r2, [r0] - ldrb r0, [r7] - ldr r1, [r3] - lsls r0, 3 - adds r0, r1 - adds r0, 0xE1 - strb r2, [r0] - ldrb r0, [r7] - ldr r1, [r3] - lsls r0, 3 - adds r0, r1 - adds r0, 0xE2 - strb r2, [r0] - ldrb r0, [r7] - ldr r1, [r3] - lsls r0, 3 - adds r0, r1 - adds r0, 0xE3 - strb r2, [r0] - ldrb r0, [r7] - ldr r1, [r3] - lsls r0, 3 - adds r0, r1 - adds r0, 0xE4 - strb r2, [r0] - ldrb r0, [r7] - ldr r1, [r3] - lsls r0, 3 - adds r0, r1 - adds r0, 0xE5 - strb r2, [r0] - ldrb r0, [r7] - ldr r1, [r3] - lsls r0, 3 - adds r0, r1 - adds r0, 0xE6 - strb r2, [r0] - ldrb r0, [r7] - ldr r1, [r3] - lsls r0, 3 - adds r0, r1 - adds r0, 0xE7 - strb r2, [r0] - ldr r1, [r3] - adds r1, 0x92 - ldrb r0, [r7] - lsls r0, 2 - ldr r6, =gBitTable - adds r0, r6 - ldr r2, [r0] - ldrb r0, [r1] - bics r0, r2 - strb r0, [r1] - movs r5, 0 - ldr r7, =gNoOfAllBanks - ldrb r7, [r7] - cmp r5, r7 - bge _0803A6B4 - mov r3, r9 - mov r7, r8 - movs r6, 0 -_0803A656: - ldrb r0, [r3] - cmp r5, r0 - beq _0803A68C - lsls r0, r5, 24 - lsrs r0, 24 - str r3, [sp, 0x1C] - bl GetBankSide - adds r4, r0, 0 - ldr r3, [sp, 0x1C] - ldrb r0, [r3] - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - ldr r3, [sp, 0x1C] - cmp r4, r0 - beq _0803A68C - ldr r0, [r7] - lsls r1, r5, 1 - adds r0, r1, r0 - adds r0, 0x98 - strb r6, [r0] - ldr r0, [r7] - adds r1, r0 - adds r1, 0x99 - strb r6, [r1] -_0803A68C: - ldrb r0, [r3] - ldr r1, [r7] - lsls r0, 1 - lsls r2, r5, 3 - adds r0, r2 - adds r0, r1 - adds r0, 0xE0 - strb r6, [r0] - ldrb r0, [r3] - ldr r1, [r7] - lsls r0, 1 - adds r0, r2 - adds r0, r1 - adds r0, 0xE1 - strb r6, [r0] - adds r5, 0x1 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r5, r0 - blt _0803A656 -_0803A6B4: - mov r1, r9 - ldrb r0, [r1] - mov r2, r8 - ldr r1, [r2] - lsls r0, 1 - adds r0, r1 - adds r0, 0xC8 - movs r2, 0 - strb r2, [r0] - mov r3, r9 - ldrb r0, [r3] - mov r6, r8 - ldr r1, [r6] - lsls r0, 1 - adds r0, r1 - adds r0, 0xC9 - strb r2, [r0] - ldr r0, =gBattleResources - ldr r0, [r0] - ldr r1, [r0, 0x4] - ldrb r0, [r3] - lsls r0, 2 - adds r1, r0 - movs r2, 0 - str r2, [r1] - ldr r0, =gCurrentMove - strh r2, [r0] - ldr r0, [r6] - adds r0, 0xDA - movs r1, 0xFF - strb r1, [r0] - ldrb r0, [r3] - bl ClearBankMoveHistory - mov r7, r9 - ldrb r0, [r7] - bl ClearBankAbilityHistory - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803A284 - - thumb_func_start sub_803A75C -sub_803A75C: @ 803A75C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - movs r5, 0 - ldr r6, =gBattleMons - ldr r0, =gStatuses3 - mov r8, r0 - ldr r1, =gBattleStruct - mov r12, r1 - ldr r2, =gUnknown_020244AC - mov r9, r2 - ldr r3, =gUnknown_020244B0 - mov r10, r3 - ldr r7, =gProtectStructs - ldr r4, =gActiveBank - movs r3, 0x58 - adds r2, r6, 0 - adds r2, 0x18 - movs r1, 0x6 -_0803A788: - ldrb r0, [r4] - muls r0, r3 - adds r0, r5, r0 - adds r0, r2 - strb r1, [r0] - adds r5, 0x1 - cmp r5, 0x7 - ble _0803A788 - ldr r0, =gActiveBank - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r2, r6, 0 - adds r2, 0x50 - adds r0, r2 - movs r1, 0 - str r1, [r0] - ldr r3, =gActiveBank - ldrb r0, [r3] - lsls r0, 2 - add r0, r8 - str r1, [r0] - movs r5, 0 - ldr r6, =gNoOfAllBanks - ldrb r6, [r6] - cmp r5, r6 - bge _0803A830 - adds r3, r2, 0 - movs r4, 0 - ldr r0, =gBitTable - mov r8, r0 -_0803A7C6: - ldr r1, [r3] - movs r0, 0x80 - lsls r0, 19 - ands r0, r1 - cmp r0, 0 - beq _0803A7E6 - ldr r2, =gDisableStructs - adds r0, r4, r2 - ldrb r0, [r0, 0x14] - ldr r6, =gActiveBank - ldrb r6, [r6] - cmp r0, r6 - bne _0803A7E6 - ldr r0, =0xfbffffff - ands r1, r0 - str r1, [r3] -_0803A7E6: - ldr r1, =gActiveBank - ldrb r0, [r1] - lsls r0, 2 - add r0, r8 - ldr r0, [r0] - lsls r2, r0, 16 - ldr r1, [r3] - adds r0, r1, 0 - ands r0, r2 - cmp r0, 0 - beq _0803A800 - bics r1, r2 - str r1, [r3] -_0803A800: - ldr r1, [r3] - movs r0, 0xE0 - lsls r0, 8 - ands r0, r1 - cmp r0, 0 - beq _0803A822 - mov r2, r12 - ldr r0, [r2] - adds r0, r5, r0 - ldrb r0, [r0, 0x14] - ldr r6, =gActiveBank - ldrb r6, [r6] - cmp r0, r6 - bne _0803A822 - ldr r0, =0xffff1fff - ands r1, r0 - str r1, [r3] -_0803A822: - adds r3, 0x58 - adds r4, 0x1C - adds r5, 0x1 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r5, r0 - blt _0803A7C6 -_0803A830: - ldr r1, =gActiveBank - ldrb r0, [r1] - add r0, r9 - movs r1, 0 - strb r1, [r0] - ldr r2, =gActiveBank - ldrb r0, [r2] - add r0, r10 - strb r1, [r0] - ldrb r1, [r2] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r3, =gDisableStructs - adds r1, r0, r3 - movs r5, 0 - movs r2, 0 -_0803A852: - adds r0, r1, r5 - strb r2, [r0] - adds r5, 0x1 - cmp r5, 0x1B - bls _0803A852 - ldr r6, =gActiveBank - ldrb r1, [r6] - lsls r1, 4 - adds r1, r7 - ldrb r2, [r1] - movs r0, 0x2 - negs r0, r0 - mov r9, r0 - ands r0, r2 - strb r0, [r1] - ldrb r1, [r6] - lsls r1, 4 - adds r1, r7 - ldrb r2, [r1] - movs r3, 0x3 - negs r3, r3 - mov r8, r3 - mov r0, r8 - ands r0, r2 - strb r0, [r1] - ldrb r1, [r6] - lsls r1, 4 - adds r1, r7 - ldrb r2, [r1] - movs r6, 0x5 - negs r6, r6 - adds r0, r6, 0 - ands r0, r2 - strb r0, [r1] - ldr r0, =gActiveBank - ldrb r1, [r0] - lsls r1, 4 - adds r1, r7 - ldrb r2, [r1] - subs r3, 0x6 - mov r10, r3 - mov r0, r10 - ands r0, r2 - strb r0, [r1] - ldr r0, =gActiveBank - ldrb r1, [r0] - lsls r1, 4 - adds r1, r7 - ldrb r2, [r1] - movs r0, 0x11 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - ldr r2, =gActiveBank - ldrb r1, [r2] - lsls r1, 4 - adds r1, r7 - ldrb r2, [r1] - movs r5, 0x21 - negs r5, r5 - adds r0, r5, 0 - ands r0, r2 - strb r0, [r1] - ldr r3, =gActiveBank - ldrb r1, [r3] - lsls r1, 4 - adds r1, r7 - ldrb r2, [r1] - movs r4, 0x41 - negs r4, r4 - adds r0, r4, 0 - ands r0, r2 - strb r0, [r1] - ldrb r1, [r3] - lsls r1, 4 - adds r1, r7 - ldrb r2, [r1] - movs r3, 0x7F - adds r0, r3, 0 - ands r0, r2 - strb r0, [r1] - ldr r0, =gActiveBank - ldrb r1, [r0] - lsls r1, 4 - adds r1, r7 - ldrb r2, [r1, 0x1] - mov r0, r9 - ands r0, r2 - strb r0, [r1, 0x1] - ldr r2, =gActiveBank - ldrb r1, [r2] - lsls r1, 4 - adds r1, r7 - ldrb r2, [r1, 0x1] - mov r0, r8 - ands r0, r2 - strb r0, [r1, 0x1] - ldr r0, =gActiveBank - ldrb r1, [r0] - lsls r1, 4 - adds r1, r7 - ldrb r2, [r1, 0x1] - adds r0, r6, 0 - ands r0, r2 - strb r0, [r1, 0x1] - ldr r2, =gActiveBank - ldrb r1, [r2] - lsls r1, 4 - adds r1, r7 - ldrb r2, [r1, 0x1] - movs r0, 0x19 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x1] - ldr r1, =gActiveBank - ldrb r0, [r1] - lsls r0, 4 - adds r0, r7 - ldrb r1, [r0, 0x1] - ands r5, r1 - strb r5, [r0, 0x1] - ldr r2, =gActiveBank - ldrb r0, [r2] - lsls r0, 4 - adds r0, r7 - ldrb r1, [r0, 0x1] - ands r4, r1 - strb r4, [r0, 0x1] - ldrb r0, [r2] - lsls r0, 4 - adds r0, r7 - ldrb r1, [r0, 0x1] - ands r3, r1 - strb r3, [r0, 0x1] - ldrb r0, [r2] - lsls r0, 4 - adds r0, r7 - ldrb r1, [r0, 0x2] - mov r3, r9 - ands r3, r1 - strb r3, [r0, 0x2] - ldrb r0, [r2] - lsls r0, 4 - adds r0, r7 - ldrb r1, [r0, 0x2] - mov r2, r8 - ands r2, r1 - strb r2, [r0, 0x2] - ldr r3, =gActiveBank - ldrb r0, [r3] - lsls r0, 4 - adds r0, r7 - ldrb r1, [r0, 0x2] - ands r6, r1 - strb r6, [r0, 0x2] - ldrb r0, [r3] - lsls r0, 4 - adds r0, r7 - ldrb r1, [r0, 0x2] - mov r6, r10 - ands r6, r1 - strb r6, [r0, 0x2] - ldrb r1, [r3] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r1, =gDisableStructs - adds r0, r1 - movs r2, 0 - movs r1, 0x2 - strb r1, [r0, 0x16] - ldrb r0, [r3] - lsls r0, 1 - ldr r3, =gLastUsedMovesByBanks - adds r0, r3 - movs r3, 0 - strh r2, [r0] - ldr r6, =gActiveBank - ldrb r0, [r6] - lsls r0, 1 - ldr r1, =gUnknown_02024250 - adds r0, r1 - strh r2, [r0] - ldrb r0, [r6] - lsls r0, 1 - ldr r6, =gUnknown_02024258 - adds r0, r6 - strh r2, [r0] - ldr r1, =gActiveBank - ldrb r0, [r1] - lsls r0, 1 - ldr r6, =gUnknown_02024260 - adds r0, r6 - strh r2, [r0] - ldrb r0, [r1] - lsls r0, 1 - ldr r1, =gUnknown_02024240 - adds r0, r1 - strh r2, [r0] - ldr r2, =gActiveBank - ldrb r0, [r2] - ldr r6, =gUnknown_02024270 - adds r0, r6 - movs r1, 0xFF - strb r1, [r0] - ldrb r0, [r2] - mov r2, r12 - ldr r1, [r2] - lsls r0, 1 - adds r0, r1 - adds r0, 0xC8 - strb r3, [r0] - ldr r6, =gActiveBank - ldrb r0, [r6] - ldr r1, [r2] - lsls r0, 1 - adds r0, r1 - adds r0, 0xC9 - strb r3, [r0] - ldrb r0, [r6] - ldr r1, [r2] - lsls r0, 1 - adds r0, r1 - adds r0, 0x98 - strb r3, [r0] - ldrb r0, [r6] - ldr r1, [r2] - lsls r0, 1 - adds r0, r1 - adds r0, 0x99 - strb r3, [r0] - ldrb r0, [r6] - ldr r1, [r2] - lsls r0, 3 - adds r0, r1 - adds r0, 0xE0 - strb r3, [r0] - ldrb r0, [r6] - ldr r1, [r2] - lsls r0, 3 - adds r0, r1 - adds r0, 0xE1 - strb r3, [r0] - ldrb r0, [r6] - ldr r1, [r2] - lsls r0, 3 - adds r0, r1 - adds r0, 0xE2 - strb r3, [r0] - ldrb r0, [r6] - ldr r1, [r2] - lsls r0, 3 - adds r0, r1 - adds r0, 0xE3 - strb r3, [r0] - ldrb r0, [r6] - ldr r1, [r2] - lsls r0, 3 - adds r0, r1 - adds r0, 0xE4 - strb r3, [r0] - ldrb r0, [r6] - ldr r1, [r2] - lsls r0, 3 - adds r0, r1 - adds r0, 0xE5 - strb r3, [r0] - ldrb r0, [r6] - ldr r1, [r2] - lsls r0, 3 - adds r0, r1 - adds r0, 0xE6 - strb r3, [r0] - ldrb r0, [r6] - ldr r1, [r2] - lsls r0, 3 - adds r0, r1 - adds r0, 0xE7 - strb r3, [r0] - ldr r1, [r2] - adds r1, 0x92 - ldrb r0, [r6] - lsls r0, 2 - ldr r2, =gBitTable - adds r0, r2 - ldr r2, [r0] - ldrb r0, [r1] - bics r0, r2 - strb r0, [r1] - movs r5, 0 - ldr r3, =gNoOfAllBanks - ldrb r3, [r3] - cmp r5, r3 - bge _0803AB02 - adds r3, r6, 0 - mov r7, r12 - movs r6, 0 -_0803AAA4: - ldrb r0, [r3] - cmp r5, r0 - beq _0803AADA - lsls r0, r5, 24 - lsrs r0, 24 - str r3, [sp] - bl GetBankSide - adds r4, r0, 0 - ldr r3, [sp] - ldrb r0, [r3] - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - ldr r3, [sp] - cmp r4, r0 - beq _0803AADA - ldr r0, [r7] - lsls r1, r5, 1 - adds r0, r1, r0 - adds r0, 0x98 - strb r6, [r0] - ldr r0, [r7] - adds r1, r0 - adds r1, 0x99 - strb r6, [r1] -_0803AADA: - ldrb r0, [r3] - ldr r1, [r7] - lsls r0, 1 - lsls r2, r5, 3 - adds r0, r2 - adds r0, r1 - adds r0, 0xE0 - strb r6, [r0] - ldrb r0, [r3] - ldr r1, [r7] - lsls r0, 1 - adds r0, r2 - adds r0, r1 - adds r0, 0xE1 - strb r6, [r0] - adds r5, 0x1 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r5, r0 - blt _0803AAA4 -_0803AB02: - ldr r0, =gBattleResources - ldr r0, [r0] - ldr r1, [r0, 0x4] - ldr r2, =gActiveBank - ldrb r0, [r2] - lsls r0, 2 - adds r1, r0 - movs r0, 0 - str r0, [r1] - ldr r4, =gBattleMons - ldrb r0, [r2] - movs r3, 0x58 - adds r2, r0, 0 - muls r2, r3 - b _0803AB6C - .pool -_0803AB6C: - adds r2, r4 - ldr r5, =gBaseStats - ldrh r1, [r2] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r5 - ldrb r0, [r0, 0x6] - adds r2, 0x21 - strb r0, [r2] - ldr r6, =gActiveBank - ldrb r0, [r6] - adds r1, r0, 0 - muls r1, r3 - adds r1, r4 - ldrh r2, [r1] - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r5 - ldrb r0, [r0, 0x7] - adds r1, 0x22 - strb r0, [r1] - ldrb r0, [r6] - bl ClearBankMoveHistory - ldrb r0, [r6] - bl ClearBankAbilityHistory - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803A75C - - thumb_func_start bc_8012FAC -bc_8012FAC: @ 803ABC0 - push {r4,r5,lr} - ldr r5, =gBattleCommunication - ldrb r0, [r5] - cmp r0, 0 - beq _0803ABD4 - cmp r0, 0x1 - beq _0803ABF8 - b _0803AC2E - .pool -_0803ABD4: - ldr r4, =gActiveBank - ldrb r0, [r5, 0x1] - strb r0, [r4] - movs r0, 0 - movs r1, 0 - movs r2, 0 - bl dp01_build_cmdbuf_x00_a_b_0 - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] - b _0803AC2E - .pool -_0803ABF8: - ldr r0, =gBattleExecBuffer - ldr r2, [r0] - cmp r2, 0 - bne _0803AC2E - ldrb r0, [r5, 0x1] - adds r0, 0x1 - strb r0, [r5, 0x1] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bne _0803AC2C - ldr r1, =gBattleMainFunc - ldr r0, =bc_load_battlefield - str r0, [r1] - b _0803AC2E - .pool -_0803AC2C: - strb r2, [r5] -_0803AC2E: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end bc_8012FAC - - thumb_func_start bc_load_battlefield -bc_load_battlefield: @ 803AC34 - push {r4,r5,lr} - ldr r0, =gBattleExecBuffer - ldr r5, [r0] - cmp r5, 0 - bne _0803AC64 - movs r0, 0 - bl GetBankByPlayerAI - ldr r4, =gActiveBank - strb r0, [r4] - ldr r0, =gUnknown_02022FF0 - ldrb r1, [r0] - movs r0, 0 - bl dp01_build_cmdbuf_x2E_a - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r1, =gBattleMainFunc - ldr r0, =sub_803AC84 - str r0, [r1] - ldr r0, =gBattleCommunication - strb r5, [r0] - strb r5, [r0, 0x1] -_0803AC64: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end bc_load_battlefield - - thumb_func_start sub_803AC84 -sub_803AC84: @ 803AC84 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, =gBattleExecBuffer - ldr r1, [r0] - cmp r1, 0 - beq _0803AC98 - b _0803AF4E -_0803AC98: - ldr r2, =gActiveBank - strb r1, [r2] - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r1, r0 - bcc _0803ACA6 - b _0803AF48 -_0803ACA6: - movs r7, 0x58 - ldr r0, =gBattleMons - mov r8, r0 - mov r9, r2 - movs r1, 0x48 - add r1, r8 - mov r10, r1 -_0803ACB4: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0803ACFC - ldr r4, =gActiveBank - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0803ACFC - ldrb r0, [r4] - muls r0, r7 - mov r2, r8 - adds r3, r0, r2 - movs r2, 0 - movs r1, 0 -_0803ACDA: - adds r0, r3, r2 - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x57 - bls _0803ACDA - b _0803ADCA - .pool -_0803ACFC: - mov r1, r9 - ldrb r0, [r1] - muls r0, r7 - mov r2, r8 - adds r3, r0, r2 - movs r2, 0 - ldr r6, =gBaseStats - ldr r5, =gBattleBufferB - ldr r4, =gActiveBank -_0803AD0E: - adds r0, r3, r2 - ldrb r1, [r4] - lsls r1, 9 - adds r1, 0x4 - adds r1, r2, r1 - adds r1, r5 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x57 - bls _0803AD0E - mov r1, r9 - ldrb r0, [r1] - adds r2, r0, 0 - muls r2, r7 - add r2, r8 - ldrh r1, [r2] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r6 - ldrb r0, [r0, 0x6] - adds r2, 0x21 - strb r0, [r2] - mov r2, r9 - ldrb r0, [r2] - adds r2, r0, 0 - muls r2, r7 - add r2, r8 - ldrh r1, [r2] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r6 - ldrb r0, [r0, 0x7] - adds r2, 0x22 - strb r0, [r2] - mov r1, r9 - ldrb r0, [r1] - adds r1, r0, 0 - muls r1, r7 - add r1, r8 - ldrh r0, [r1] - ldrb r1, [r1, 0x17] - lsrs r1, 7 - bl GetAbilityBySpecies - mov r2, r9 - ldrb r1, [r2] - muls r1, r7 - add r1, r8 - adds r1, 0x20 - strb r0, [r1] - ldrb r0, [r2] - bl GetBankSide - ldr r1, =gBattleStruct - lsls r0, 24 - lsrs r0, 23 - adds r0, 0xA8 - ldr r1, [r1] - adds r1, r0 - mov r2, r9 - ldrb r0, [r2] - muls r0, r7 - add r0, r8 - ldrh r0, [r0, 0x28] - strh r0, [r1] - movs r2, 0 - ldr r4, =gActiveBank - movs r5, 0x58 - ldr r1, =gBattleMons + 0x18 - adds r6, r4, 0 - movs r0, 0x18 - negs r0, r0 - adds r0, r1 - mov r12, r0 - movs r3, 0x6 -_0803ADAA: - ldrb r0, [r4] - muls r0, r5 - adds r0, r2, r0 - adds r0, r1 - strb r3, [r0] - adds r2, 0x1 - cmp r2, 0x7 - ble _0803ADAA - ldrb r0, [r6] - adds r1, r0, 0 - muls r1, r7 - mov r0, r12 - adds r0, 0x50 - adds r1, r0 - movs r0, 0 - str r0, [r1] -_0803ADCA: - ldr r4, =gActiveBank - ldrb r0, [r4] - bl GetBankIdentity - lsls r0, 24 - cmp r0, 0 - bne _0803ADE4 - movs r0, 0 - bl dp01_build_cmdbuf_x07_7_7_7 - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0803ADE4: - ldr r5, =gBattleTypeFlags - ldr r0, [r5] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0803AE60 - ldrb r0, [r4] - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0803AE0A - movs r0, 0 - bl dp01_build_cmdbuf_x07_7_7_7 - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0803AE0A: - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0803AEC0 - ldr r0, [r5] - ldr r1, =0x063f0902 - ands r0, r1 - cmp r0, 0 - bne _0803AEC0 - ldrb r0, [r4] - muls r0, r7 - add r0, r8 - ldrh r0, [r0] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - ldrb r1, [r4] - muls r1, r7 - add r1, r10 - ldr r2, [r1] - movs r1, 0x2 - bl HandleSetPokedexFlag - b _0803AEC0 - .pool -_0803AE60: - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0803AEC0 - ldr r0, [r5] - ldr r1, =0x063f0902 - ands r0, r1 - cmp r0, 0 - bne _0803AE96 - ldrb r0, [r4] - muls r0, r7 - add r0, r8 - ldrh r0, [r0] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - ldrb r1, [r4] - muls r1, r7 - add r1, r10 - ldr r2, [r1] - movs r1, 0x2 - bl HandleSetPokedexFlag -_0803AE96: - movs r0, 0 - bl dp01_build_cmdbuf_x04_4_4_4 - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r1, =gBattlePartyID - ldrb r0, [r4] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0xB - movs r2, 0 - bl GetMonData - ldr r1, =gBattleResults - strh r0, [r1, 0x20] -_0803AEC0: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0803AEF6 - ldr r4, =gActiveBank - ldrb r0, [r4] - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - beq _0803AEEA - ldrb r0, [r4] - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bne _0803AEF6 -_0803AEEA: - movs r0, 0 - bl dp01_build_cmdbuf_x07_7_7_7 - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0803AEF6: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 8 - ands r0, r1 - cmp r0, 0 - beq _0803AF20 - ldr r4, =gActiveBank - ldrb r0, [r4] - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bne _0803AF20 - movs r0, 0 - bl dp01_build_cmdbuf_x07_7_7_7 - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0803AF20: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 11 - ands r0, r1 - cmp r0, 0 - beq _0803AF32 - bl sub_81A56B4 -_0803AF32: - mov r1, r9 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcs _0803AF48 - b _0803ACB4 -_0803AF48: - ldr r1, =gBattleMainFunc - ldr r0, =bc_801333C - str r0, [r1] -_0803AF4E: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803AC84 - - thumb_func_start bc_801333C -bc_801333C: @ 803AF80 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x30 - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - beq _0803AF92 - b _0803B10C -_0803AF92: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - bne _0803AFA0 - b _0803B0AC -_0803AFA0: - movs r7, 0 - add r0, sp, 0x4 - mov r8, r0 - mov r6, r8 - mov r5, sp -_0803AFAA: - movs r0, 0x64 - adds r1, r7, 0 - muls r1, r0 - ldr r0, =gEnemyParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - cmp r0, 0 - beq _0803AFD0 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - bne _0803AFE8 -_0803AFD0: - ldr r0, =0x0000ffff - strh r0, [r5] - movs r0, 0 - b _0803AFFA - .pool -_0803AFE8: - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - strh r0, [r5] - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData -_0803AFFA: - str r0, [r6] - adds r6, 0x8 - adds r5, 0x8 - adds r7, 0x1 - cmp r7, 0x5 - ble _0803AFAA - movs r0, 0x1 - bl GetBankByPlayerAI - ldr r4, =gActiveBank - strb r0, [r4] - movs r0, 0 - mov r1, sp - movs r2, 0x80 - bl dp01_build_cmdbuf_x30_TODO - ldrb r0, [r4] - bl MarkBufferBankForExecution - movs r7, 0 - mov r6, r8 - mov r5, sp -_0803B026: - movs r0, 0x64 - adds r1, r7, 0 - muls r1, r0 - ldr r0, =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - cmp r0, 0 - beq _0803B04C - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - bne _0803B060 -_0803B04C: - ldr r0, =0x0000ffff - strh r0, [r5] - movs r0, 0 - b _0803B072 - .pool -_0803B060: - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - strh r0, [r5] - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData -_0803B072: - str r0, [r6] - adds r6, 0x8 - adds r5, 0x8 - adds r7, 0x1 - cmp r7, 0x5 - ble _0803B026 - movs r0, 0 - bl GetBankByPlayerAI - ldr r4, =gActiveBank - strb r0, [r4] - movs r0, 0 - mov r1, sp - movs r2, 0x80 - bl dp01_build_cmdbuf_x30_TODO - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r1, =gBattleMainFunc - ldr r0, =bc_battle_begin_message - b _0803B10A - .pool -_0803B0AC: - movs r7, 0 - add r6, sp, 0x4 - mov r5, sp -_0803B0B2: - movs r0, 0x64 - adds r1, r7, 0 - muls r1, r0 - ldr r0, =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - cmp r0, 0 - beq _0803B0D8 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - bne _0803B0E8 -_0803B0D8: - ldr r0, =0x0000ffff - strh r0, [r5] - movs r0, 0 - b _0803B0FA - .pool -_0803B0E8: - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - strh r0, [r5] - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData -_0803B0FA: - str r0, [r6] - adds r6, 0x8 - adds r5, 0x8 - adds r7, 0x1 - cmp r7, 0x5 - ble _0803B0B2 - ldr r1, =gBattleMainFunc - ldr r0, =bc_8013568 -_0803B10A: - str r0, [r1] -_0803B10C: - add sp, 0x30 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end bc_801333C - - thumb_func_start bc_battle_begin_message -bc_battle_begin_message: @ 803B120 - push {lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0803B142 - movs r0, 0x1 - bl GetBankByPlayerAI - ldr r1, =gActiveBank - strb r0, [r1] - ldrb r1, [r1] - movs r0, 0 - bl b_std_message - ldr r1, =gBattleMainFunc - ldr r0, =sub_803B180 - str r0, [r1] -_0803B142: - pop {r0} - bx r0 - .pool - thumb_func_end bc_battle_begin_message - - thumb_func_start bc_8013568 -bc_8013568: @ 803B158 - push {lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0803B170 - ldr r1, =gBattleMainFunc - ldr r0, =sub_803B3CC - str r0, [r1] - movs r0, 0 - movs r1, 0 - bl b_std_message -_0803B170: - pop {r0} - bx r0 - .pool - thumb_func_end bc_8013568 - - thumb_func_start sub_803B180 -sub_803B180: @ 803B180 - push {lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0803B1D0 - ldr r0, =gBattleTypeFlags - ldr r2, [r0] - movs r0, 0x80 - lsls r0, 17 - ands r0, r2 - cmp r0, 0 - beq _0803B1B8 - movs r0, 0x80 - lsls r0, 18 - ands r0, r2 - cmp r0, 0 - beq _0803B1B8 - movs r1, 0x80 - lsls r1, 24 - ands r1, r2 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - b _0803B1BA - .pool -_0803B1B8: - movs r0, 0x1 -_0803B1BA: - bl GetBankByPlayerAI - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0x1 - bl b_std_message - ldr r1, =gBattleMainFunc - ldr r0, =sub_803B25C - str r0, [r1] -_0803B1D0: - pop {r0} - bx r0 - .pool - thumb_func_end sub_803B180 - - thumb_func_start sub_803B1DC -sub_803B1DC: @ 803B1DC - push {r4,r5,lr} - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 17 - ands r0, r1 - cmp r0, 0 - beq _0803B1FC - movs r0, 0x80 - lsls r0, 18 - ands r0, r1 - cmp r0, 0 - beq _0803B1FC - movs r5, 0x2 - cmp r1, 0 - bge _0803B1FE -_0803B1FC: - movs r5, 0x3 -_0803B1FE: - ldr r1, =gActiveBank - movs r0, 0 - strb r0, [r1] - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r0, 0 - beq _0803B23A - adds r4, r1, 0 -_0803B20E: - ldrb r0, [r4] - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, r5 - bne _0803B228 - movs r0, 0 - bl dp01_build_cmdbuf_x2F_2F_2F_2F - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0803B228: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _0803B20E -_0803B23A: - ldr r1, =gBattleMainFunc - ldr r0, =bc_801362C - str r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803B1DC - - thumb_func_start sub_803B25C -sub_803B25C: @ 803B25C - push {r4-r6,lr} - ldr r0, =gBattleTypeFlags - ldr r2, [r0] - movs r0, 0x80 - lsls r0, 17 - ands r0, r2 - cmp r0, 0 - beq _0803B298 - movs r0, 0x80 - lsls r0, 18 - ands r0, r2 - cmp r0, 0 - beq _0803B298 - movs r1, 0x80 - lsls r1, 24 - ands r1, r2 - negs r0, r1 - orrs r0, r1 - lsrs r5, r0, 31 - b _0803B29A - .pool -_0803B288: - ldr r1, =gBattleMainFunc - ldr r0, =sub_803B1DC - b _0803B2F0 - .pool -_0803B298: - movs r5, 0x1 -_0803B29A: - ldr r0, =gBattleExecBuffer - ldr r2, [r0] - cmp r2, 0 - bne _0803B2F2 - ldr r0, =gActiveBank - strb r2, [r0] - ldr r1, =gNoOfAllBanks - adds r4, r0, 0 - ldrb r1, [r1] - cmp r2, r1 - bcs _0803B2EC - adds r6, r4, 0 -_0803B2B2: - ldrb r0, [r4] - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, r5 - bne _0803B2D8 - movs r0, 0 - bl dp01_build_cmdbuf_x2F_2F_2F_2F - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x00008040 - ands r0, r1 - cmp r0, 0 - bne _0803B288 -_0803B2D8: - ldrb r0, [r6] - adds r0, 0x1 - strb r0, [r6] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldr r4, =gActiveBank - ldrb r1, [r1] - cmp r0, r1 - bcc _0803B2B2 -_0803B2EC: - ldr r1, =gBattleMainFunc - ldr r0, =bc_801362C -_0803B2F0: - str r0, [r1] -_0803B2F2: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803B25C - - thumb_func_start bc_801362C -bc_801362C: @ 803B314 - push {r4-r7,lr} - ldr r0, =gBattleExecBuffer - ldr r1, [r0] - cmp r1, 0 - bne _0803B384 - ldr r2, =gActiveBank - strb r1, [r2] - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r1, r0 - bcs _0803B37E - adds r4, r2, 0 - ldr r6, =gBattleMons - movs r5, 0x58 - adds r7, r6, 0 - adds r7, 0x48 -_0803B334: - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0803B36C - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x063f0902 - ands r0, r1 - cmp r0, 0 - bne _0803B36C - ldrb r0, [r4] - muls r0, r5 - adds r0, r6 - ldrh r0, [r0] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - ldrb r1, [r4] - muls r1, r5 - adds r1, r7 - ldr r2, [r1] - movs r1, 0x2 - bl HandleSetPokedexFlag -_0803B36C: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _0803B334 -_0803B37E: - ldr r1, =gBattleMainFunc - ldr r0, =sub_803B3CC - str r0, [r1] -_0803B384: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end bc_801362C - - thumb_func_start sub_803B3AC -sub_803B3AC: @ 803B3AC - push {lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0803B3BC - ldr r1, =gBattleMainFunc - ldr r0, =sub_803B3CC - str r0, [r1] -_0803B3BC: - pop {r0} - bx r0 - .pool - thumb_func_end sub_803B3AC - - thumb_func_start sub_803B3CC -sub_803B3CC: @ 803B3CC - push {lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0803B418 - ldr r1, =gBattleTypeFlags - ldr r2, [r1] - movs r0, 0x80 - lsls r0, 17 - ands r0, r2 - cmp r0, 0 - beq _0803B3F4 - movs r0, 0x80 - lsls r0, 18 - ands r0, r2 - cmp r0, 0 - beq _0803B3F4 - movs r3, 0x1 - cmp r2, 0 - bge _0803B3F6 -_0803B3F4: - movs r3, 0 -_0803B3F6: - ldr r0, [r1] - movs r1, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0803B412 - adds r0, r3, 0 - bl GetBankByPlayerAI - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0x1 - bl b_std_message -_0803B412: - ldr r1, =gBattleMainFunc - ldr r0, =sub_803B4C8 - str r0, [r1] -_0803B418: - pop {r0} - bx r0 - .pool - thumb_func_end sub_803B3CC - - thumb_func_start sub_803B42C -sub_803B42C: @ 803B42C - push {r4,r5,lr} - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 17 - ands r0, r1 - cmp r0, 0 - beq _0803B44C - movs r0, 0x80 - lsls r0, 18 - ands r0, r1 - cmp r0, 0 - beq _0803B44C - movs r5, 0x3 - cmp r1, 0 - bge _0803B44E -_0803B44C: - movs r5, 0x2 -_0803B44E: - ldr r1, =gActiveBank - movs r0, 0 - strb r0, [r1] - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r0, 0 - beq _0803B48A - adds r4, r1, 0 -_0803B45E: - ldrb r0, [r4] - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, r5 - bne _0803B478 - movs r0, 0 - bl dp01_build_cmdbuf_x2F_2F_2F_2F - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0803B478: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _0803B45E -_0803B48A: - ldr r2, =gBattleStruct - ldr r0, [r2] - adds r0, 0x4C - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - adds r0, 0xD9 - strb r1, [r0] - ldr r0, [r2] - movs r2, 0xD1 - lsls r2, 1 - adds r0, r2 - strb r1, [r0] - ldr r1, =gBattleMainFunc - ldr r0, =sub_803B628 - str r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803B42C - - thumb_func_start sub_803B4C8 -sub_803B4C8: @ 803B4C8 - push {r4-r6,lr} - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 17 - ands r0, r1 - cmp r0, 0 - beq _0803B500 - movs r0, 0x80 - lsls r0, 18 - ands r0, r1 - cmp r0, 0 - beq _0803B500 - movs r6, 0x1 - cmp r1, 0 - bge _0803B502 - b _0803B500 - .pool -_0803B4F0: - ldr r1, =gBattleMainFunc - ldr r0, =sub_803B42C - b _0803B572 - .pool -_0803B500: - movs r6, 0 -_0803B502: - ldr r0, =gBattleExecBuffer - ldr r2, [r0] - cmp r2, 0 - bne _0803B574 - ldr r0, =gActiveBank - strb r2, [r0] - ldr r1, =gNoOfAllBanks - adds r4, r0, 0 - ldrb r1, [r1] - cmp r2, r1 - bcs _0803B554 - adds r5, r4, 0 -_0803B51A: - ldrb r0, [r4] - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, r6 - bne _0803B540 - movs r0, 0 - bl dp01_build_cmdbuf_x2F_2F_2F_2F - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - bne _0803B4F0 -_0803B540: - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldr r4, =gActiveBank - ldrb r1, [r1] - cmp r0, r1 - bcc _0803B51A -_0803B554: - ldr r2, =gBattleStruct - ldr r0, [r2] - adds r0, 0x4C - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - adds r0, 0xD9 - strb r1, [r0] - ldr r0, [r2] - movs r2, 0xD1 - lsls r2, 1 - adds r0, r2 - strb r1, [r0] - ldr r1, =gBattleMainFunc - ldr r0, =sub_803B628 -_0803B572: - str r0, [r1] -_0803B574: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803B4C8 - - thumb_func_start sub_803B598 -sub_803B598: @ 803B598 - push {r4,r5,lr} - ldr r0, =gBattleExecBuffer - ldr r1, [r0] - cmp r1, 0 - bne _0803B606 - ldr r2, =gActiveBank - strb r1, [r2] - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r1, r0 - bcs _0803B5E6 - adds r4, r2, 0 - ldr r5, =gBattlePartyID -_0803B5B2: - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0803B5D4 - ldrb r0, [r4] - lsls r0, 1 - adds r0, r5 - ldrb r1, [r0] - movs r0, 0 - movs r2, 0 - bl dp01_build_cmdbuf_x05_a_b_c - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0803B5D4: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _0803B5B2 -_0803B5E6: - ldr r2, =gBattleStruct - ldr r0, [r2] - adds r0, 0x4C - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - adds r0, 0xD9 - strb r1, [r0] - ldr r0, [r2] - movs r2, 0xD1 - lsls r2, 1 - adds r0, r2 - strb r1, [r0] - ldr r1, =gBattleMainFunc - ldr r0, =sub_803B628 - str r0, [r1] -_0803B606: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803B598 - - thumb_func_start sub_803B628 -sub_803B628: @ 803B628 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - movs r0, 0 - mov r9, r0 - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - beq _0803B642 - b _0803B8B2 -_0803B642: - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x4C - ldrb r0, [r0] - cmp r0, 0 - bne _0803B6C2 - movs r5, 0 - ldr r1, =gNoOfAllBanks - mov r10, r1 - ldrb r3, [r1] - cmp r5, r3 - bge _0803B668 - ldr r2, =gTurnOrder -_0803B65C: - adds r0, r5, r2 - strb r5, [r0] - adds r5, 0x1 - ldrb r0, [r1] - cmp r5, r0 - blt _0803B65C -_0803B668: - movs r5, 0 - b _0803B6B8 - .pool -_0803B67C: - adds r4, r5, 0x1 - mov r8, r4 - ldrb r1, [r1] - cmp r8, r1 - bge _0803B6B6 - ldr r6, =gTurnOrder - ldr r1, =gNoOfAllBanks - mov r10, r1 - lsls r7, r5, 24 -_0803B68E: - adds r0, r5, r6 - ldrb r0, [r0] - adds r1, r4, r6 - ldrb r1, [r1] - movs r2, 0x1 - bl b_first_side - lsls r0, 24 - cmp r0, 0 - beq _0803B6AC - lsls r1, r4, 24 - lsrs r1, 24 - lsrs r0, r7, 24 - bl sub_803CEDC -_0803B6AC: - adds r4, 0x1 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r4, r0 - blt _0803B68E -_0803B6B6: - mov r5, r8 -_0803B6B8: - mov r1, r10 - ldrb r0, [r1] - subs r0, 0x1 - cmp r5, r0 - blt _0803B67C -_0803B6C2: - ldr r5, =gBattleStruct - ldr r0, [r5] - movs r4, 0xD1 - lsls r4, 1 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _0803B6FC - str r0, [sp] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0xFF - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - beq _0803B6FC - ldr r0, [r5] - adds r0, r4 - movs r1, 0x1 - strb r1, [r0] - b _0803B8B2 - .pool -_0803B6FC: - ldr r2, =gBattleStruct - ldr r0, [r2] - adds r0, 0x4C - ldr r1, =gNoOfAllBanks - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - bcs _0803B756 - ldr r5, =gTurnOrder - adds r4, r2, 0 -_0803B710: - ldr r0, [r4] - adds r0, 0x4C - ldrb r0, [r0] - adds r0, r5 - ldrb r1, [r0] - movs r0, 0 - str r0, [sp] - movs r2, 0 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - beq _0803B736 - mov r0, r9 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 -_0803B736: - ldr r1, [r4] - adds r1, 0x4C - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - mov r3, r9 - cmp r3, 0 - beq _0803B748 - b _0803B8B2 -_0803B748: - ldr r0, [r4] - adds r0, 0x4C - ldr r1, =gNoOfAllBanks - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - bcc _0803B710 -_0803B756: - movs r0, 0 - str r0, [sp] - movs r0, 0x9 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _0803B770 - b _0803B8B2 -_0803B770: - str r0, [sp] - movs r0, 0xB - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - beq _0803B786 - b _0803B8B2 -_0803B786: - ldr r2, =gBattleStruct - ldr r0, [r2] - adds r0, 0xD9 - ldr r1, =gNoOfAllBanks - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - bcs _0803B7DA - ldr r5, =gTurnOrder - adds r4, r2, 0 -_0803B79A: - ldr r0, [r4] - adds r0, 0xD9 - ldrb r0, [r0] - adds r0, r5 - ldrb r1, [r0] - movs r0, 0 - movs r2, 0 - bl ItemBattleEffects - lsls r0, 24 - cmp r0, 0 - beq _0803B7BC - mov r0, r9 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 -_0803B7BC: - ldr r1, [r4] - adds r1, 0xD9 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - mov r0, r9 - cmp r0, 0 - bne _0803B8B2 - ldr r0, [r4] - adds r0, 0xD9 - ldr r1, =gNoOfAllBanks - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - bcc _0803B79A -_0803B7DA: - movs r5, 0 - ldr r1, =gBattleStruct - mov r8, r1 - movs r7, 0x6 - ldr r6, =gUnknown_0202421C - ldr r2, =gChosenMovesByBanks - movs r4, 0xFF - movs r3, 0 -_0803B7EA: - mov r1, r8 - ldr r0, [r1] - adds r0, r5, r0 - adds r0, 0x5C - strb r7, [r0] - adds r1, r5, r6 - ldrb r0, [r1] - orrs r0, r4 - strb r0, [r1] - strh r3, [r2] - adds r2, 0x2 - adds r5, 0x1 - cmp r5, 0x3 - ble _0803B7EA - movs r0, 0 - bl sub_803D580 - bl sub_803D6A0 - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x91 - ldr r1, =gAbsentBankFlags - ldrb r1, [r1] - strb r1, [r0] - ldr r0, =gText_EmptyString3 - movs r1, 0 - bl battle_show_message_maybe - ldr r1, =gBattleMainFunc - ldr r0, =sub_803BE74 - str r0, [r1] - bl sub_803F988 - ldr r1, =gBattleCommunication - movs r2, 0 - adds r0, r1, 0x7 -_0803B834: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _0803B834 - movs r5, 0 - ldr r3, =gNoOfAllBanks - ldr r2, =gBattleStruct - ldr r6, =gBattleScripting - ldr r7, =gBattleMoveFlags - ldrb r0, [r3] - cmp r5, r0 - bge _0803B866 - ldr r0, =gBattleMons - movs r4, 0x9 - negs r4, r4 - adds r1, r0, 0 - adds r1, 0x50 -_0803B856: - ldr r0, [r1] - ands r0, r4 - str r0, [r1] - adds r1, 0x58 - adds r5, 0x1 - ldrb r0, [r3] - cmp r5, r0 - blt _0803B856 -_0803B866: - ldr r0, [r2] - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - strb r1, [r0, 0x1] - ldr r0, [r2] - movs r3, 0xD0 - lsls r3, 1 - adds r0, r3 - strb r1, [r0] - ldr r0, [r2] - adds r3, 0x1 - adds r0, r3 - strb r1, [r0] - movs r1, 0 - strb r1, [r6, 0x14] - ldr r0, [r2] - adds r0, 0x4D - strb r1, [r0] - ldr r0, [r2] - strb r1, [r0, 0x3] - strb r1, [r7] - bl Random - ldr r1, =gUnknown_02024330 - strh r0, [r1] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 11 - ands r0, r1 - cmp r0, 0 - beq _0803B8B2 - bl StopCryAndClearCrySongs - ldr r0, =gUnknown_082DB8BE - bl b_call_bc_move_exec -_0803B8B2: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803B628 - - thumb_func_start bc_8013B1C -bc_8013B1C: @ 803B904 - push {r4-r6,lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0803B994 - ldr r1, =gBattleMainFunc - ldr r0, =BattleTurnPassed - str r0, [r1] - ldr r3, =gNoOfAllBanks - ldr r1, =gBattleCommunication - movs r2, 0 - adds r0, r1, 0x7 -_0803B91C: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _0803B91C - movs r4, 0 - ldrb r3, [r3] - cmp r4, r3 - bge _0803B96E - ldr r5, =gBattleMons - adds r6, r5, 0 - adds r6, 0x4C -_0803B932: - movs r0, 0x58 - adds r2, r4, 0 - muls r2, r0 - adds r1, r5, 0 - adds r1, 0x50 - adds r1, r2, r1 - ldr r3, [r1] - subs r0, 0x61 - ands r3, r0 - str r3, [r1] - adds r2, r6 - ldr r0, [r2] - movs r1, 0x7 - ands r0, r1 - cmp r0, 0 - beq _0803B964 - movs r0, 0x80 - lsls r0, 5 - ands r3, r0 - cmp r3, 0 - beq _0803B964 - lsls r0, r4, 24 - lsrs r0, 24 - bl CancelMultiTurnMoves -_0803B964: - adds r4, 0x1 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r4, r0 - blt _0803B932 -_0803B96E: - ldr r2, =gBattleStruct - ldr r0, [r2] - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - strb r1, [r0, 0x1] - ldr r0, [r2] - movs r3, 0xD0 - lsls r3, 1 - adds r0, r3 - strb r1, [r0] - ldr r0, [r2] - adds r3, 0x1 - adds r0, r3 - strb r1, [r0] - ldr r0, [r2] - strb r1, [r0, 0x3] - ldr r0, =gBattleMoveFlags - strb r1, [r0] -_0803B994: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end bc_8013B1C - - thumb_func_start BattleTurnPassed -BattleTurnPassed: @ 803B9BC - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r0, 0x1 - bl sub_803D580 - ldr r0, =gBattleOutcome - ldrb r0, [r0] - cmp r0, 0 - bne _0803B9EA - bl UpdateTurnCounters - lsls r0, 24 - cmp r0, 0 - beq _0803B9DE - b _0803BB78 -_0803B9DE: - bl TurnBasedEffects - lsls r0, 24 - cmp r0, 0 - beq _0803B9EA - b _0803BB78 -_0803B9EA: - bl sub_8041728 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _0803B9F8 - b _0803BB78 -_0803B9F8: - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x4D - strb r1, [r0] - bl sub_8041364 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _0803BA0E - b _0803BB78 -_0803BA0E: - movs r0, 0 - bl sub_803D580 - ldr r2, =gHitMarker - ldr r0, [r2] - ldr r1, =0xfffffdff - ands r0, r1 - ldr r1, =0xfff7ffff - ands r0, r1 - ldr r1, =0xffbfffff - ands r0, r1 - ldr r1, =0xffefffff - ands r0, r1 - str r0, [r2] - ldr r0, =gBattleScripting - strb r4, [r0, 0x18] - strb r4, [r0, 0x19] - strb r4, [r0, 0x14] - ldr r0, =gBattleMoveDamage - str r4, [r0] - ldr r0, =gBattleMoveFlags - strb r4, [r0] - ldr r1, =gBattleCommunication - movs r2, 0 - adds r0, r1, 0x4 -_0803BA40: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _0803BA40 - ldr r0, =gBattleOutcome - ldrb r0, [r0] - cmp r0, 0 - beq _0803BA98 - ldr r1, =gFightStateTracker - movs r0, 0xC - strb r0, [r1] - ldr r1, =gBattleMainFunc - ldr r0, =bc_bs_exec - str r0, [r1] - b _0803BB78 - .pool -_0803BA98: - ldr r1, =gBattleResults - ldrb r0, [r1, 0x13] - ldr r2, =gBattleStruct - mov r8, r2 - cmp r0, 0xFE - bhi _0803BAB2 - adds r0, 0x1 - strb r0, [r1, 0x13] - ldr r1, [r2] - adds r1, 0xDA - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_0803BAB2: - movs r2, 0 - ldr r4, =gNoOfAllBanks - ldr r0, =gAbsentBankFlags - mov r12, r0 - ldr r1, =gText_EmptyString3 - mov r9, r1 - ldrb r0, [r4] - cmp r2, r0 - bge _0803BAE0 - ldr r7, =gUnknown_0202421C - movs r6, 0xFF - movs r5, 0 - ldr r3, =gChosenMovesByBanks -_0803BACC: - adds r1, r2, r7 - ldrb r0, [r1] - orrs r0, r6 - strb r0, [r1] - strh r5, [r3] - adds r3, 0x2 - adds r2, 0x1 - ldrb r1, [r4] - cmp r2, r1 - blt _0803BACC -_0803BAE0: - movs r2, 0 - ldr r3, =gBattleStruct - movs r1, 0x6 -_0803BAE6: - ldr r0, [r3] - adds r0, r2, r0 - adds r0, 0x5C - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x3 - ble _0803BAE6 - mov r2, r8 - ldr r0, [r2] - adds r0, 0x91 - mov r2, r12 - ldrb r1, [r2] - strb r1, [r0] - mov r0, r9 - movs r1, 0 - bl battle_show_message_maybe - ldr r1, =gBattleMainFunc - ldr r0, =sub_803BE74 - str r0, [r1] - bl Random - ldr r1, =gUnknown_02024330 - strh r0, [r1] - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 10 - ands r0, r1 - cmp r0, 0 - beq _0803BB5C - ldr r0, =gUnknown_082DB881 - bl b_call_bc_move_exec - b _0803BB78 - .pool -_0803BB5C: - movs r0, 0x80 - lsls r0, 11 - ands r1, r0 - cmp r1, 0 - beq _0803BB78 - mov r1, r8 - ldr r0, [r1] - adds r0, 0xDA - ldrb r0, [r0] - cmp r0, 0 - bne _0803BB78 - ldr r0, =gUnknown_082DB8BE - bl b_call_bc_move_exec -_0803BB78: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end BattleTurnPassed - - thumb_func_start sub_803BB88 -sub_803BB88: @ 803BB88 - push {r4-r7,lr} - sub sp, 0x4 - ldr r1, =gBattleMons - ldr r0, =gActiveBank - ldrb r2, [r0] - movs r0, 0x58 - muls r0, r2 - adds r1, r0, r1 - ldrh r0, [r1, 0x2E] - cmp r0, 0xAF - bne _0803BBB8 - ldr r1, =gEnigmaBerries - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r2, [r0, 0x7] - b _0803BBC2 - .pool -_0803BBB8: - ldrh r0, [r1, 0x2E] - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r2, r0, 24 -_0803BBC2: - ldr r1, =gStringBank - ldr r3, =gActiveBank - ldrb r0, [r3] - strb r0, [r1] - cmp r2, 0x25 - bne _0803BBD0 - b _0803BD4C -_0803BBD0: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0803BBDE - b _0803BD4C -_0803BBDE: - ldr r1, =gBattleMons - ldrb r2, [r3] - movs r0, 0x58 - muls r0, r2 - adds r0, r1 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x32 - bne _0803BBF2 - b _0803BD4C -_0803BBF2: - adds r0, r2, 0 - bl GetBankSide - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r5, r0 - bge _0803BC86 - movs r7, 0 -_0803BC08: - lsrs r4, r7, 24 - adds r0, r4, 0 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r6, r0 - beq _0803BC2C - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r5 - adds r0, r1 - adds r2, r0, 0 - adds r2, 0x20 - ldrb r0, [r2] - cmp r0, 0x17 - bne _0803BC2C - b _0803BD54 -_0803BC2C: - adds r0, r4, 0 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r6, r0 - beq _0803BC76 - ldr r3, =gBattleMons - ldr r0, =gActiveBank - ldrb r0, [r0] - movs r2, 0x58 - muls r0, r2 - adds r1, r0, r3 - adds r0, r1, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x1A - beq _0803BC76 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0x2 - beq _0803BC76 - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0x2 - beq _0803BC76 - adds r0, r5, 0 - muls r0, r2 - adds r0, r3 - adds r2, r0, 0 - adds r2, 0x20 - ldrb r0, [r2] - cmp r0, 0x47 - bne _0803BC76 - b _0803BD70 -_0803BC76: - movs r0, 0x80 - lsls r0, 17 - adds r7, r0 - adds r5, 0x1 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r5, r0 - blt _0803BC08 -_0803BC86: - ldr r4, =gActiveBank - ldrb r1, [r4] - movs r0, 0 - str r0, [sp] - movs r0, 0xF - movs r2, 0x2A - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - beq _0803BCF8 - ldr r6, =gBattleMons - ldrb r0, [r4] - movs r3, 0x58 - muls r0, r3 - adds r1, r0, r6 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0x8 - beq _0803BCBE - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0x8 - bne _0803BCF8 -_0803BCBE: - ldr r0, =gBattleScripting - subs r1, r5, 0x1 - strb r1, [r0, 0x17] - ldr r2, =gLastUsedAbility - adds r0, r1, 0 - muls r0, r3 - adds r0, r6 - adds r0, 0x20 - ldrb r0, [r0] - strb r0, [r2] - ldr r1, =gBattleCommunication - movs r0, 0x2 - b _0803BD90 - .pool -_0803BCF8: - ldr r1, =gBattleMons - ldr r0, =gActiveBank - ldrb r2, [r0] - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x0400e000 - ands r0, r1 - cmp r0, 0 - bne _0803BD22 - ldr r1, =gStatuses3 - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 3 - ands r0, r1 - cmp r0, 0 - beq _0803BD40 -_0803BD22: - ldr r1, =gBattleCommunication - movs r0, 0 - strb r0, [r1, 0x5] - movs r0, 0x1 - b _0803BD92 - .pool -_0803BD40: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x10 - ands r0, r1 - cmp r0, 0 - bne _0803BD8C -_0803BD4C: - movs r0, 0 - b _0803BD92 - .pool -_0803BD54: - ldr r0, =gBattleScripting - strb r5, [r0, 0x17] - ldr r1, =gLastUsedAbility - ldrb r0, [r2] - strb r0, [r1] - ldr r1, =gBattleCommunication - movs r0, 0x2 - b _0803BD90 - .pool -_0803BD70: - ldr r0, =gBattleScripting - strb r5, [r0, 0x17] - ldr r1, =gLastUsedAbility - ldrb r0, [r2] - strb r0, [r1] - ldr r1, =gBattleCommunication - movs r0, 0x2 - b _0803BD90 - .pool -_0803BD8C: - ldr r1, =gBattleCommunication - movs r0, 0x1 -_0803BD90: - strb r0, [r1, 0x5] -_0803BD92: - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_803BB88 - - thumb_func_start sub_803BDA0 -sub_803BDA0: @ 803BDA0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r5, r0, 24 - movs r3, 0 - ldr r0, =gBattlePartyID - mov r8, r0 - ldr r1, =gUnknown_0203CF00 - mov r12, r1 - ldr r7, =gBattleStruct - lsls r0, r5, 1 - adds r4, r0, r5 - adds r6, r0, 0 -_0803BDBC: - mov r0, r12 - adds r2, r3, r0 - ldr r1, [r7] - adds r0, r4, r3 - adds r0, r1 - adds r0, 0x60 - ldrb r0, [r0] - strb r0, [r2] - adds r3, 0x1 - cmp r3, 0x2 - ble _0803BDBC - mov r1, r8 - adds r0, r6, r1 - ldrb r0, [r0] - bl pokemon_order_func - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r7, =gBattleStruct - ldr r0, [r7] - adds r0, r5, r0 - adds r0, 0x5C - ldrb r0, [r0] - bl pokemon_order_func - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_81B8FB0 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0803BE4C - movs r3, 0 - adds r4, r7, 0 - adds r6, r5 - movs r0, 0x2 - adds r1, r5, 0 - eors r1, r0 - ldr r7, =gUnknown_0203CF00 - lsls r0, r1, 1 - adds r5, r0, r1 -_0803BE1A: - ldr r0, [r4] - adds r1, r6, r3 - adds r1, r0 - adds r1, 0x60 - adds r2, r3, r7 - ldrb r0, [r2] - strb r0, [r1] - ldr r1, [r4] - adds r0, r5, r3 - adds r0, r1 - adds r0, 0x60 - ldrb r1, [r2] - strb r1, [r0] - adds r3, 0x1 - cmp r3, 0x2 - ble _0803BE1A - b _0803BE66 - .pool -_0803BE4C: - movs r3, 0 - adds r2, r6, r5 - ldr r4, =gUnknown_0203CF00 -_0803BE52: - ldr r0, [r7] - adds r1, r2, r3 - adds r1, r0 - adds r1, 0x60 - adds r0, r3, r4 - ldrb r0, [r0] - strb r0, [r1] - adds r3, 0x1 - cmp r3, 0x2 - ble _0803BE52 -_0803BE66: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803BDA0 - - thumb_func_start sub_803BE74 -sub_803BE74: @ 803BE74 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - ldr r0, =gBattleCommunication - movs r1, 0 - strb r1, [r0, 0x4] - ldr r0, =gActiveBank - strb r1, [r0] - ldr r0, =gNoOfAllBanks - bl _0803CD12 - .pool -_0803BE9C: - ldr r4, =gActiveBank - ldrb r0, [r4] - bl GetBankIdentity - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, =gBattleCommunication - ldrb r0, [r4] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x8 - bls _0803BEB8 - bl _0803CD04 -_0803BEB8: - lsls r0, 2 - ldr r1, =_0803BED0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0803BED0: - .4byte _0803BEF4 - .4byte _0803BF0C - .4byte _0803C02C - .4byte _0803C7D8 - .4byte _0803CAD0 - .4byte _0803CB84 - .4byte _0803CBC8 - .4byte _0803CBF4 - .4byte _0803CC38 -_0803BEF4: - bl sub_8185FD0 - ldr r1, =gBattleCommunication - ldr r0, =gActiveBank - ldrb r0, [r0] - adds r0, r1 - bl _0803CC20 - .pool -_0803BF0C: - ldr r0, =gActiveBank - ldrb r1, [r0] - ldr r4, =gBattleStruct - ldr r0, [r4] - adds r1, r0 - adds r1, 0x5C - movs r0, 0x6 - strb r0, [r1] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - bne _0803BF68 - movs r1, 0x2 - movs r0, 0x2 - ands r0, r5 - cmp r0, 0 - beq _0803BF68 - eors r5, r1 - adds r0, r5, 0 - bl GetBankByPlayerAI - ldr r1, [r4] - adds r1, 0x91 - 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 _0803BF68 - ldr r4, =gBattleCommunication - adds r0, r5, 0 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0x5 - beq _0803BF68 - bl _0803CD04 -_0803BF68: - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x91 - ldrb r3, [r0] - ldr r1, =gBitTable - ldr r4, =gActiveBank - ldrb r2, [r4] - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - ands r3, r0 - cmp r3, 0 - beq _0803BFD0 - ldr r0, =gUnknown_0202421C - adds r0, r2, r0 - movs r1, 0xD - strb r1, [r0] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - bne _0803BFBC - ldr r0, =gBattleCommunication - ldrb r1, [r4] - adds r1, r0 - movs r0, 0x5 - strb r0, [r1] - bl _0803CD04 - .pool -_0803BFBC: - ldr r0, =gBattleCommunication - ldrb r1, [r4] - adds r1, r0 - movs r0, 0x4 - strb r0, [r1] - bl _0803CD04 - .pool -_0803BFD0: - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 5 - ands r0, r1 - cmp r0, 0 - bne _0803BFF0 - movs r0, 0x80 - lsls r0, 15 - ands r1, r0 - cmp r1, 0 - beq _0803C00C -_0803BFF0: - ldr r0, =gUnknown_0202421C - adds r0, r2, r0 - strb r3, [r0] - ldr r1, =gBattleCommunication - ldrb r0, [r4] - bl _0803CC72 - .pool -_0803C00C: - ldr r0, =gUnknown_0202421C - ldrb r1, [r0] - ldr r0, =gBattleBufferB - ldrb r2, [r0, 0x1] - ldrb r0, [r0, 0x2] - lsls r0, 8 - orrs r2, r0 - movs r0, 0 - bl dp01_build_cmdbuf_x12_a_bb - bl _0803CB68 - .pool -_0803C02C: - ldr r3, =gBattleExecBuffer - ldr r1, =gBitTable - ldr r6, =gActiveBank - ldrb r5, [r6] - lsls r0, r5, 2 - adds r0, r1 - ldr r2, [r0] - lsls r1, r2, 4 - movs r0, 0xF0 - lsls r0, 24 - orrs r1, r0 - orrs r1, r2 - lsls r0, r2, 8 - orrs r1, r0 - lsls r2, 12 - orrs r1, r2 - ldr r0, [r3] - ands r0, r1 - cmp r0, 0 - beq _0803C058 - bl _0803CD04 -_0803C058: - ldr r4, =gBattleBufferB - lsls r0, r5, 9 - adds r4, 0x1 - adds r0, r4 - ldrb r1, [r0] - adds r0, r5, 0 - bl sub_8184FBC - ldr r1, =gUnknown_0202421C - ldrb r0, [r6] - adds r1, r0, r1 - lsls r0, 9 - adds r0, r4 - ldrb r0, [r0] - strb r0, [r1] - ldrb r0, [r6] - lsls r0, 9 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0xC - bls _0803C084 - b _0803C6C4 -_0803C084: - lsls r0, 2 - ldr r1, =_0803C0A8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0803C0A8: - .4byte _0803C0DC - .4byte _0803C230 - .4byte _0803C268 - .4byte _0803C6C4 - .4byte _0803C6C4 - .4byte _0803C440 - .4byte _0803C48C - .4byte _0803C6C4 - .4byte _0803C6C4 - .4byte _0803C6C4 - .4byte _0803C6C4 - .4byte _0803C6C4 - .4byte _0803C4B4 -_0803C0DC: - bl AreAllMovesUnusable - lsls r0, 24 - cmp r0, 0 - beq _0803C134 - ldr r0, =gBattleCommunication - ldr r3, =gActiveBank - ldrb r1, [r3] - adds r1, r0 - movs r4, 0 - movs r0, 0x6 - strb r0, [r1] - ldrb r1, [r3] - ldr r2, =gBattleStruct - ldr r0, [r2] - adds r1, r0 - adds r1, 0x54 - strb r4, [r1] - ldrb r1, [r3] - ldr r0, [r2] - adds r1, r0 - adds r1, 0x84 - movs r0, 0x4 - strb r0, [r1] - ldrb r1, [r3] - ldr r2, [r2] - adds r2, r1, r2 - ldr r0, =gBattleBufferB - lsls r1, 9 - adds r0, 0x3 - adds r1, r0 - ldrb r0, [r1] - strb r0, [r2, 0xC] - bl _0803CD70 - .pool -_0803C134: - ldr r3, =gDisableStructs - ldr r5, =gActiveBank - ldrb r4, [r5] - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - adds r0, r3 - ldrh r2, [r0, 0x6] - cmp r2, 0 - beq _0803C188 - ldr r1, =gChosenMovesByBanks - lsls r0, r4, 1 - adds r0, r1 - strh r2, [r0] - ldrb r2, [r5] - ldr r0, =gBattleStruct - ldr r1, [r0] - adds r1, r2, r1 - adds r1, 0x80 - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r3 - ldrb r0, [r0, 0xC] - strb r0, [r1] - ldr r1, =gBattleCommunication - ldrb r0, [r5] - adds r0, r1 - movs r1, 0x4 - strb r1, [r0] - bl _0803CD70 - .pool -_0803C188: - add r2, sp, 0x4 - ldr r3, =gBattleMons - movs r1, 0x58 - adds r0, r4, 0 - muls r0, r1 - adds r0, r3 - ldrh r0, [r0] - strh r0, [r2, 0x10] - ldrb r0, [r5] - muls r0, r1 - adds r0, r3 - adds r0, 0x21 - ldrb r0, [r0] - strb r0, [r2, 0x12] - ldrb r0, [r5] - muls r0, r1 - adds r0, r3 - adds r0, 0x22 - ldrb r0, [r0] - strb r0, [r2, 0x13] - movs r4, 0 - mov r1, sp - adds r1, 0xC - str r1, [sp, 0x18] - add r2, sp, 0x10 - mov r10, r2 - mov r8, r3 - adds r7, r5, 0 - movs r6, 0x58 - movs r0, 0xC - add r0, r8 - mov r9, r0 - add r5, sp, 0x4 -_0803C1CA: - lsls r2, r4, 1 - ldrb r0, [r7] - muls r0, r6 - adds r0, r2, r0 - add r0, r9 - ldrh r0, [r0] - strh r0, [r5] - ldr r1, [sp, 0x18] - adds r3, r1, r4 - ldrb r0, [r7] - muls r0, r6 - adds r0, r4, r0 - mov r1, r8 - adds r1, 0x24 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r3] - ldrb r0, [r7] - adds r1, r0, 0 - muls r1, r6 - adds r2, r1 - add r2, r9 - ldrh r0, [r2] - add r1, r8 - adds r1, 0x3B - ldrb r1, [r1] - lsls r2, r4, 24 - lsrs r2, 24 - bl CalculatePPWithBonus - mov r2, r10 - adds r1, r2, r4 - strb r0, [r1] - adds r5, 0x2 - adds r4, 0x1 - cmp r4, 0x3 - ble _0803C1CA - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x1 - ands r1, r0 - movs r0, 0 - movs r2, 0 - add r3, sp, 0x4 - bl sub_8033E30 - b _0803C42E - .pool -_0803C230: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x021f0902 - ands r0, r1 - cmp r0, 0 - bne _0803C23E - b _0803C48C -_0803C23E: - ldr r4, =gActiveBank - ldrb r0, [r4] - movs r1, 0x1 - bl sub_8185008 - ldr r1, =gUnknown_02024220 - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, =gUnknown_082DB879 - b _0803C784 - .pool -_0803C268: - ldr r5, =gActiveBank - ldrb r0, [r5] - ldr r3, =gBattleStruct - ldr r1, [r3] - adds r1, r0, r1 - adds r1, 0x58 - ldr r2, =gBattlePartyID - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - strb r0, [r1] - ldr r7, =gBattleMons - ldrb r2, [r5] - movs r6, 0x58 - adds r0, r2, 0 - muls r0, r6 - adds r1, r7, 0 - adds r1, 0x50 - adds r0, r1 - ldr r1, [r0] - ldr r0, =0x0400e000 - ands r1, r0 - cmp r1, 0 - bne _0803C2B8 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 11 - ands r0, r1 - cmp r0, 0 - bne _0803C2B8 - ldr r0, =gStatuses3 - lsls r1, r2, 2 - adds r1, r0 - ldr r1, [r1] - movs r0, 0x80 - lsls r0, 3 - ands r1, r0 - cmp r1, 0 - beq _0803C2EC -_0803C2B8: - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r1, r0, 1 - adds r1, r0 - adds r1, 0x60 - ldr r0, [r3] - adds r0, r1 - str r0, [sp] - movs r0, 0 - movs r1, 0x2 - movs r2, 0x6 - b _0803C400 - .pool -_0803C2EC: - str r1, [sp] - movs r0, 0xC - adds r1, r2, 0 - movs r2, 0x17 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _0803C374 - ldrb r1, [r5] - str r4, [sp] - movs r0, 0xC - movs r2, 0x47 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _0803C33C - ldrb r0, [r5] - muls r0, r6 - adds r1, r0, r7 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0x2 - beq _0803C33C - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0x2 - beq _0803C33C - adds r0, r1, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x1A - bne _0803C374 -_0803C33C: - ldr r5, =gActiveBank - ldrb r1, [r5] - movs r0, 0 - str r0, [sp] - movs r0, 0xF - movs r2, 0x2A - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _0803C3B0 - ldr r2, =gBattleMons - ldrb r1, [r5] - movs r0, 0x58 - muls r0, r1 - adds r1, r0, r2 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0x8 - beq _0803C374 - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0x8 - bne _0803C3B0 -_0803C374: - subs r1, r4, 0x1 - lsls r1, 4 - movs r0, 0x4 - orrs r1, r0 - lsls r1, 24 - lsrs r1, 24 - ldr r0, =gLastUsedAbility - ldrb r3, [r0] - ldr r4, =gBattleStruct - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r2, r0, 1 - adds r2, r0 - adds r2, 0x60 - ldr r0, [r4] - adds r0, r2 - str r0, [sp] - movs r0, 0 - movs r2, 0x6 - bl dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f - b _0803C42E - .pool -_0803C3B0: - ldr r0, =gActiveBank - ldrb r1, [r0] - adds r4, r0, 0 - cmp r1, 0x2 - bne _0803C3D8 - ldr r0, =gUnknown_0202421C - ldrb r0, [r0] - cmp r0, 0x2 - bne _0803C3D8 - ldr r0, =gBattleStruct - ldr r3, [r0] - adds r0, r3, 0 - adds r0, 0x5C - b _0803C3EE - .pool -_0803C3D8: - ldrb r0, [r4] - cmp r0, 0x3 - bne _0803C410 - ldr r0, =gUnknown_0202421C - ldrb r0, [r0, 0x1] - cmp r0, 0x2 - bne _0803C410 - ldr r0, =gBattleStruct - ldr r3, [r0] - adds r0, r3, 0 - adds r0, 0x5D -_0803C3EE: - ldrb r2, [r0] - ldrb r1, [r4] - lsls r0, r1, 1 - adds r0, r1 - adds r0, 0x60 - adds r3, r0 - str r3, [sp] - movs r0, 0 - movs r1, 0 -_0803C400: - movs r3, 0 - bl dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f - b _0803C42E - .pool -_0803C410: - ldr r2, =gBattleStruct - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r1, r0, 1 - adds r1, r0 - adds r1, 0x60 - ldr r0, [r2] - adds r0, r1 - str r0, [sp] - movs r0, 0 - movs r1, 0 - movs r2, 0x6 - movs r3, 0 - bl dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f -_0803C42E: - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution - b _0803C6C4 - .pool -_0803C440: - bl IsPlayerPartyAndPokemonStorageFull - lsls r0, 24 - cmp r0, 0 - bne _0803C44C - b _0803C6C4 -_0803C44C: - ldr r1, =gUnknown_02024220 - ldr r3, =gActiveBank - ldrb r0, [r3] - lsls r0, 2 - adds r0, r1 - ldr r1, =gUnknown_082DAB11 - str r1, [r0] - ldr r0, =gBattleCommunication - ldrb r1, [r3] - adds r1, r0 - movs r4, 0 - movs r0, 0x6 - strb r0, [r1] - ldrb r1, [r3] - ldr r2, =gBattleStruct - ldr r0, [r2] - adds r1, r0 - adds r1, 0x54 - strb r4, [r1] - ldrb r1, [r3] - b _0803C7A0 - .pool -_0803C48C: - ldr r2, =gBattleStruct - ldr r4, =gActiveBank - ldrb r1, [r4] - lsls r0, r1, 1 - adds r0, r1 - adds r0, 0x60 - ldr r1, [r2] - adds r1, r0 - movs r0, 0 - bl sub_8033E6C - ldrb r0, [r4] - bl MarkBufferBankForExecution - b _0803C6C4 - .pool -_0803C4B4: - ldr r4, =gBattleCommunication - ldr r5, =gActiveBank - ldrb r0, [r5] - adds r0, r4 - movs r1, 0x7 - strb r1, [r0] - ldrb r0, [r5] - bl GetBankIdentity - movs r6, 0x2 - eors r0, r6 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - adds r0, r4 - movs r1, 0x1 - strb r1, [r0] - ldrb r0, [r5] - bl sub_8185008 - ldrb r0, [r5] - bl GetBankIdentity - eors r0, r6 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - ldr r1, =gBattleMons - lsls r0, 24 - lsrs r0, 24 - movs r7, 0x58 - muls r0, r7 - adds r4, r1, 0 - adds r4, 0x50 - adds r0, r4 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 5 - ands r0, r1 - cmp r0, 0 - bne _0803C532 - ldrb r0, [r5] - bl GetBankIdentity - eors r0, r6 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - muls r0, r7 - adds r0, r4 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 15 - ands r0, r1 - cmp r0, 0 - beq _0803C550 -_0803C532: - movs r0, 0 - bl dp01_build_cmdbuf_x32_32_32_32 - ldrb r0, [r5] - bl MarkBufferBankForExecution - bl _0803CD70 - .pool -_0803C550: - ldr r4, =gUnknown_0202421C - ldrb r0, [r5] - bl GetBankIdentity - eors r0, r6 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0x2 - bne _0803C590 - ldrb r0, [r5] - bl GetBankIdentity - eors r0, r6 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x2 - bl sub_8185008 - b _0803C6AE - .pool -_0803C590: - ldrb r0, [r5] - bl GetBankIdentity - eors r0, r6 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0x3 - bne _0803C5B6 - ldrb r0, [r5] - bl GetBankIdentity - eors r0, r6 - b _0803C668 -_0803C5B6: - ldrb r0, [r5] - bl GetBankIdentity - eors r0, r6 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _0803C628 - ldr r4, =gProtectStructs - ldrb r0, [r5] - bl GetBankIdentity - eors r0, r6 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 20 - adds r0, r4 - ldrb r0, [r0] - lsls r0, 29 - cmp r0, 0 - blt _0803C616 - ldr r4, =gDisableStructs - ldrb r0, [r5] - bl GetBankIdentity - eors r0, r6 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r4 - ldrh r0, [r1, 0x6] - cmp r0, 0 - beq _0803C628 -_0803C616: - ldrb r0, [r5] - bl GetBankIdentity - eors r0, r6 - b _0803C668 - .pool -_0803C628: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 10 - ands r0, r1 - cmp r0, 0 - beq _0803C690 - ldr r4, =gUnknown_0202421C - ldr r6, =gActiveBank - ldrb r0, [r6] - bl GetBankIdentity - movs r5, 0x2 - eors r0, r5 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _0803C690 - ldr r1, =gRngValue - ldr r0, =gUnknown_0203BD30 - ldr r0, [r0] - str r0, [r1] - ldrb r0, [r6] - bl GetBankIdentity - eors r0, r5 -_0803C668: - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x1 - bl sub_8185008 - b _0803C6AE - .pool -_0803C690: - ldr r0, =gActiveBank - ldrb r0, [r0] - bl GetBankIdentity - movs r1, 0x2 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x3 - bl sub_8185008 -_0803C6AE: - movs r0, 0 - bl dp01_build_cmdbuf_x32_32_32_32 - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution - b _0803CD70 - .pool -_0803C6C4: - ldr r1, =gBattleTypeFlags - ldr r2, [r1] - movs r5, 0x8 - adds r0, r2, 0 - ands r0, r5 - adds r3, r1, 0 - cmp r0, 0 - beq _0803C720 - ldr r0, =0x043f0100 - ands r2, r0 - cmp r2, 0 - beq _0803C720 - ldr r0, =gBattleBufferB - ldr r4, =gActiveBank - ldrb r2, [r4] - lsls r1, r2, 9 - adds r0, 0x1 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x3 - bne _0803C720 - ldr r1, =gUnknown_02024220 - lsls r0, r2, 2 - adds r0, r1 - ldr r1, =gUnknown_082DB9BA - str r1, [r0] - ldr r1, =gBattleCommunication - ldrb r0, [r4] - adds r0, r1 - movs r3, 0 - strb r5, [r0] - b _0803C792 - .pool -_0803C720: - ldr r0, [r3] - ldr r1, =0x0200000a - ands r0, r1 - cmp r0, 0x8 - bne _0803C760 - ldr r0, =gBattleBufferB - ldr r4, =gActiveBank - ldrb r1, [r4] - lsls r1, 9 - adds r0, 0x1 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x3 - bne _0803C760 - ldr r0, =gUnknown_082DAAFE - bl b_call_bc_move_exec - ldr r1, =gBattleCommunication - ldrb r0, [r4] - adds r0, r1 - b _0803CC20 - .pool -_0803C760: - bl sub_803BB88 - lsls r0, 24 - cmp r0, 0 - beq _0803C7C4 - ldr r0, =gBattleBufferB - ldr r4, =gActiveBank - ldrb r2, [r4] - lsls r1, r2, 9 - adds r0, 0x1 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x3 - bne _0803C7C4 - ldr r1, =gUnknown_02024220 - lsls r0, r2, 2 - adds r0, r1 - ldr r1, =gUnknown_082DAB0B -_0803C784: - str r1, [r0] - ldr r0, =gBattleCommunication - ldrb r1, [r4] - adds r1, r0 - movs r3, 0 - movs r0, 0x6 - strb r0, [r1] -_0803C792: - ldrb r1, [r4] - ldr r2, =gBattleStruct - ldr r0, [r2] - adds r1, r0 - adds r1, 0x54 - strb r3, [r1] - ldrb r1, [r4] -_0803C7A0: - ldr r0, [r2] - adds r1, r0 - adds r1, 0x84 - movs r0, 0x1 - strb r0, [r1] - b _0803CD70 - .pool -_0803C7C4: - ldr r2, =gBattleCommunication - ldr r0, =gActiveBank - ldrb r1, [r0] - adds r1, r2 - b _0803CB74 - .pool -_0803C7D8: - ldr r4, =gBattleExecBuffer - ldr r1, =gBitTable - ldr r3, =gActiveBank - ldrb r5, [r3] - lsls r0, r5, 2 - adds r0, r1 - ldr r2, [r0] - lsls r0, r2, 4 - movs r1, 0xF0 - lsls r1, 24 - orrs r0, r1 - orrs r0, r2 - lsls r1, r2, 8 - orrs r0, r1 - lsls r2, 12 - orrs r0, r2 - ldr r1, [r4] - ands r1, r0 - adds r4, r3, 0 - cmp r1, 0 - beq _0803C804 - b _0803CD04 -_0803C804: - ldr r1, =gUnknown_0202421C - adds r0, r5, r1 - ldrb r0, [r0] - adds r2, r1, 0 - cmp r0, 0x9 - bls _0803C812 - b _0803CD04 -_0803C812: - lsls r0, 2 - ldr r1, =_0803C830 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0803C830: - .4byte _0803C858 - .4byte _0803C99C - .4byte _0803C9D4 - .4byte _0803CA0A - .4byte _0803CA2C - .4byte _0803CA40 - .4byte _0803CA54 - .4byte _0803CA84 - .4byte _0803CA98 - .4byte _0803CABC -_0803C858: - ldr r1, =gBattleBufferB - ldrb r3, [r4] - lsls r0, r3, 9 - adds r1, 0x1 - adds r0, r1 - ldrb r1, [r0] - cmp r1, 0x3 - blt _0803C88A - cmp r1, 0x9 - ble _0803C878 - cmp r1, 0xF - beq _0803C87E - b _0803C88A - .pool -_0803C878: - adds r0, r3, r2 - strb r1, [r0] - b _0803CD70 -_0803C87E: - adds r1, r3, r2 - movs r0, 0x2 - strb r0, [r1] - bl sub_803CDF8 - b _0803CD70 -_0803C88A: - movs r0, 0x2 - bl sub_818603C - ldr r4, =gBattleBufferB - ldr r6, =gActiveBank - ldrb r3, [r6] - lsls r1, r3, 9 - adds r5, r4, 0x2 - adds r0, r1, r5 - ldrb r2, [r0] - adds r7, r4, 0x3 - adds r1, r7 - ldrb r0, [r1] - lsls r0, 8 - orrs r2, r0 - ldr r0, =0x0000ffff - cmp r2, r0 - bne _0803C8D0 - ldr r0, =gBattleCommunication - adds r0, r3, r0 - movs r1, 0x1 - strb r1, [r0] - ldrb r0, [r6] - bl sub_8185008 - b _0803CD04 - .pool -_0803C8D0: - bl sub_803FB4C - lsls r0, 24 - cmp r0, 0 - beq _0803C91C - ldrb r0, [r6] - movs r1, 0x1 - bl sub_8185008 - ldr r0, =gBattleCommunication - ldrb r1, [r6] - adds r1, r0 - movs r3, 0 - movs r0, 0x6 - strb r0, [r1] - ldrb r1, [r6] - ldr r2, =gBattleStruct - ldr r0, [r2] - adds r1, r0 - adds r1, 0x54 - strb r3, [r1] - ldrb r0, [r6] - lsls r0, 9 - adds r1, r4, 0x1 - adds r0, r1 - strb r3, [r0] - ldrb r1, [r6] - ldr r0, [r2] - adds r1, r0 - adds r1, 0x84 - movs r0, 0x2 - strb r0, [r1] - b _0803CD70 - .pool -_0803C91C: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 10 - ands r0, r1 - cmp r0, 0 - bne _0803C942 - ldrb r0, [r6] - lsls r1, r0, 9 - adds r1, r5 - ldrb r1, [r1] - bl sub_8184FBC - ldrb r0, [r6] - lsls r1, r0, 9 - adds r1, r7 - ldrb r1, [r1] - bl sub_8184FBC -_0803C942: - ldrb r0, [r6] - ldr r4, =gBattleStruct - ldr r1, [r4] - adds r1, r0, r1 - adds r1, 0x80 - lsls r0, 9 - adds r0, r5 - ldrb r0, [r0] - strb r0, [r1] - ldr r0, =gChosenMovesByBanks - ldrb r2, [r6] - lsls r5, r2, 1 - adds r5, r0 - ldr r3, =gBattleMons - ldr r4, [r4] - adds r0, r2, r4 - adds r0, 0x80 - ldrb r0, [r0] - lsls r0, 1 - movs r1, 0x58 - muls r1, r2 - adds r0, r1 - adds r3, 0xC - adds r0, r3 - ldrh r0, [r0] - strh r0, [r5] - ldrb r0, [r6] - adds r4, r0, r4 - lsls r0, 9 - adds r0, r7 - ldrb r0, [r0] - strb r0, [r4, 0xC] - ldr r0, =gBattleCommunication - ldrb r1, [r6] - b _0803CB72 - .pool -_0803C99C: - ldr r2, =gBattleBufferB - ldr r5, =gActiveBank - ldrb r4, [r5] - lsls r1, r4, 9 - adds r0, r2, 0x1 - adds r0, r1, r0 - ldrb r3, [r0] - adds r2, 0x2 - adds r1, r2 - ldrb r0, [r1] - lsls r0, 8 - orrs r3, r0 - cmp r3, 0 - bne _0803C9BA - b _0803CC1C -_0803C9BA: - ldr r0, =gLastUsedItem - strh r3, [r0] - ldr r0, =gBattleCommunication - ldrb r1, [r5] - b _0803CB72 - .pool -_0803C9D4: - ldr r0, =gBattleBufferB - ldr r4, =gActiveBank - ldrb r2, [r4] - lsls r1, r2, 9 - adds r0, 0x1 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x6 - bne _0803CA04 - ldr r0, =gBattleCommunication - adds r0, r2, r0 - movs r1, 0x1 - strb r1, [r0] - ldrb r0, [r4] - bl sub_8185008 - b _0803CD04 - .pool -_0803CA04: - bl sub_803CDF8 - b _0803CB6E -_0803CA0A: - ldr r2, =gHitMarker - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 8 - orrs r0, r1 - str r0, [r2] - ldr r2, =gBattleCommunication - ldr r0, =gActiveBank - ldrb r1, [r0] - adds r1, r2 - b _0803CB74 - .pool -_0803CA2C: - ldr r2, =gBattleCommunication - ldr r0, =gActiveBank - ldrb r1, [r0] - adds r1, r2 - b _0803CB74 - .pool -_0803CA40: - ldr r2, =gBattleCommunication - ldr r0, =gActiveBank - ldrb r1, [r0] - adds r1, r2 - b _0803CB74 - .pool -_0803CA54: - ldr r3, =gBattleBufferB - ldr r0, =gActiveBank - ldrb r4, [r0] - lsls r1, r4, 9 - adds r0, r3, 0x1 - adds r0, r1, r0 - ldrb r2, [r0] - adds r3, 0x2 - adds r1, r3 - ldrb r0, [r1] - lsls r0, 8 - orrs r2, r0 - cmp r2, 0 - bne _0803CA72 - b _0803CC1C -_0803CA72: - ldr r1, =gBattleCommunication - adds r1, r4, r1 - b _0803CB74 - .pool -_0803CA84: - ldr r2, =gBattleCommunication - ldr r0, =gActiveBank - ldrb r1, [r0] - adds r1, r2 - b _0803CB74 - .pool -_0803CA98: - ldr r2, =gHitMarker - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 8 - orrs r0, r1 - str r0, [r2] - ldr r2, =gBattleCommunication - ldr r0, =gActiveBank - ldrb r1, [r0] - adds r1, r2 - b _0803CB74 - .pool -_0803CABC: - ldr r2, =gBattleCommunication - ldr r0, =gActiveBank - ldrb r1, [r0] - adds r1, r2 - b _0803CB74 - .pool -_0803CAD0: - ldr r3, =gBattleExecBuffer - ldr r6, =gBitTable - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r6 - ldr r2, [r0] - lsls r1, r2, 4 - movs r0, 0xF0 - lsls r0, 24 - orrs r1, r0 - orrs r1, r2 - lsls r0, r2, 8 - orrs r1, r0 - lsls r2, 12 - orrs r1, r2 - ldr r0, [r3] - ands r0, r1 - cmp r0, 0 - beq _0803CAFA - b _0803CD04 -_0803CAFA: - bl sub_803CDB8 - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x41 - ands r0, r1 - cmp r0, 0x1 - bne _0803CB3C - movs r1, 0x2 - movs r0, 0x2 - ands r0, r5 - cmp r0, 0 - bne _0803CB3C - adds r0, r5, 0 - eors r0, r1 - bl GetBankByPlayerAI - ldr r1, =gBattleStruct - ldr r1, [r1] - adds r1, 0x91 - ldrb r1, [r1] - lsls r0, 24 - lsrs r0, 22 - adds r0, r6 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _0803CB5C -_0803CB3C: - movs r0, 0 - movs r1, 0 - adds r2, r4, 0 - bl sub_8034464 - b _0803CB66 - .pool -_0803CB5C: - movs r0, 0 - movs r1, 0x1 - adds r2, r4, 0 - bl sub_8034464 -_0803CB66: - ldr r4, =gActiveBank -_0803CB68: - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0803CB6E: - ldr r0, =gBattleCommunication - ldrb r1, [r4] -_0803CB72: - adds r1, r0 -_0803CB74: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _0803CD04 - .pool -_0803CB84: - ldr r3, =gBattleExecBuffer - ldr r1, =gBitTable - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r2, [r0] - lsls r1, r2, 4 - movs r0, 0xF0 - lsls r0, 24 - orrs r1, r0 - orrs r1, r2 - lsls r0, r2, 8 - orrs r1, r0 - lsls r2, 12 - orrs r1, r2 - ldr r0, [r3] - ands r0, r1 - cmp r0, 0 - beq _0803CBAE - b _0803CD04 -_0803CBAE: - ldr r1, =gBattleCommunication - ldrb r0, [r1, 0x4] - adds r0, 0x1 - strb r0, [r1, 0x4] - b _0803CD04 - .pool -_0803CBC8: - ldr r5, =gActiveBank - ldrb r2, [r5] - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r1, r2, r0 - adds r0, r1, 0 - adds r0, 0x54 - ldrb r0, [r0] - cmp r0, 0 - beq _0803CCB4 - ldr r0, =gBattleCommunication - adds r0, r2, r0 - adds r1, 0x84 - ldrb r1, [r1] - strb r1, [r0] - b _0803CD04 - .pool -_0803CBF4: - ldr r3, =gBattleExecBuffer - ldr r1, =gBitTable - ldr r0, =gActiveBank - ldrb r4, [r0] - lsls r0, r4, 2 - adds r0, r1 - ldr r2, [r0] - lsls r1, r2, 4 - movs r0, 0xF0 - lsls r0, 24 - orrs r1, r0 - orrs r1, r2 - lsls r0, r2, 8 - orrs r1, r0 - lsls r2, 12 - orrs r1, r2 - ldr r0, [r3] - ands r0, r1 - cmp r0, 0 - bne _0803CD04 -_0803CC1C: - ldr r0, =gBattleCommunication - adds r0, r4, r0 -_0803CC20: - movs r1, 0x1 - strb r1, [r0] - b _0803CD04 - .pool -_0803CC38: - ldr r5, =gActiveBank - ldrb r2, [r5] - ldr r4, =gBattleStruct - ldr r0, [r4] - adds r0, r2, r0 - adds r0, 0x54 - ldrb r0, [r0] - cmp r0, 0 - beq _0803CCB4 - ldr r0, =gBattleBufferB - lsls r1, r2, 9 - adds r0, 0x1 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0xD - bne _0803CC94 - ldr r2, =gHitMarker - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 8 - orrs r0, r1 - str r0, [r2] - ldr r1, =gUnknown_0202421C - ldrb r0, [r5] - adds r0, r1 - movs r1, 0x3 - strb r1, [r0] - ldr r1, =gBattleCommunication - ldrb r0, [r5] -_0803CC72: - adds r0, r1 - movs r1, 0x4 - strb r1, [r0] - b _0803CD04 - .pool -_0803CC94: - adds r0, r2, 0 - movs r1, 0x1 - bl sub_8185008 - ldr r2, =gBattleCommunication - ldrb r0, [r5] - adds r2, r0, r2 - ldr r1, [r4] - adds r0, r1 - adds r0, 0x84 - ldrb r0, [r0] - strb r0, [r2] - b _0803CD04 - .pool -_0803CCB4: - ldr r0, =gBankAttacker - strb r2, [r0] - ldr r7, =gBattlescriptCurrInstr - ldr r6, =gUnknown_02024220 - ldrb r0, [r5] - lsls r0, 2 - adds r0, r6 - ldr r4, [r0] - str r4, [r7] - ldr r3, =gBattleExecBuffer - ldr r1, =gBitTable - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r2, [r0] - lsls r1, r2, 4 - movs r0, 0xF0 - lsls r0, 24 - orrs r1, r0 - orrs r1, r2 - lsls r0, r2, 8 - orrs r1, r0 - lsls r2, 12 - orrs r1, r2 - ldr r0, [r3] - ands r0, r1 - cmp r0, 0 - bne _0803CCFA - ldr r0, =gBattleScriptingCommandsTable - ldrb r1, [r4] - lsls r1, 2 - adds r1, r0 - ldr r0, [r1] - bl _call_via_r0 -_0803CCFA: - ldrb r0, [r5] - lsls r0, 2 - adds r0, r6 - ldr r1, [r7] - str r1, [r0] -_0803CD04: - ldr r0, =gActiveBank - ldrb r1, [r0] - adds r1, 0x1 - strb r1, [r0] - ldr r0, =gNoOfAllBanks - lsls r1, 24 - lsrs r1, 24 -_0803CD12: - adds r5, r0, 0 - ldrb r0, [r5] - cmp r1, r0 - bcs _0803CD1E - bl _0803BE9C -_0803CD1E: - ldr r0, =gBattleCommunication - ldrb r0, [r0, 0x4] - ldrb r1, [r5] - cmp r0, r1 - bne _0803CD70 - movs r0, 0x1 - bl sub_818603C - ldr r1, =gBattleMainFunc - ldr r0, =sub_803D2E8 - str r0, [r1] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 15 - ands r0, r1 - cmp r0, 0 - beq _0803CD70 - movs r4, 0 - ldrb r5, [r5] - cmp r4, r5 - bge _0803CD70 -_0803CD4A: - ldr r0, =gUnknown_0202421C - adds r0, r4, r0 - ldrb r0, [r0] - cmp r0, 0x2 - bne _0803CD66 - lsls r0, r4, 24 - lsrs r0, 24 - ldr r1, =gBattleStruct - ldr r1, [r1] - adds r1, r4, r1 - adds r1, 0x5C - ldrb r1, [r1] - bl sub_80571DC -_0803CD66: - adds r4, 0x1 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r4, r0 - blt _0803CD4A -_0803CD70: - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803BE74 - - thumb_func_start sub_803CDB8 -sub_803CDB8: @ 803CDB8 - push {r4,r5,lr} - movs r3, 0 - movs r1, 0 - ldr r0, =gNoOfAllBanks - ldrb r2, [r0] - adds r5, r0, 0 - cmp r3, r2 - bge _0803CDDA - ldr r4, =gBattleCommunication -_0803CDCA: - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, 0x5 - bne _0803CDD4 - adds r3, 0x1 -_0803CDD4: - adds r1, 0x1 - cmp r1, r2 - blt _0803CDCA -_0803CDDA: - adds r0, r3, 0x1 - ldrb r5, [r5] - cmp r0, r5 - beq _0803CDF0 - movs r0, 0 - b _0803CDF2 - .pool -_0803CDF0: - movs r0, 0x1 -_0803CDF2: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_803CDB8 - - thumb_func_start sub_803CDF8 -sub_803CDF8: @ 803CDF8 - push {r4-r7,lr} - ldr r7, =gActiveBank - ldrb r0, [r7] - ldr r6, =gBattleStruct - ldr r1, [r6] - adds r1, r0, r1 - adds r1, 0x5C - ldr r4, =gBattleBufferB - lsls r0, 9 - adds r2, r4, 0x1 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - ldrb r0, [r7] - lsls r1, r0, 9 - adds r1, r2 - ldrb r1, [r1] - bl sub_8184FBC - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x42 - ands r0, r1 - cmp r0, 0x42 - bne _0803CEC6 - ldrb r0, [r7] - ldr r2, [r6] - lsls r1, r0, 1 - adds r1, r0 - adds r1, r2 - adds r1, 0x60 - ldrb r2, [r1] - movs r0, 0xF - ands r0, r2 - strb r0, [r1] - ldrb r0, [r7] - ldr r2, [r6] - lsls r1, r0, 1 - adds r1, r0 - adds r1, r2 - adds r1, 0x60 - lsls r0, 9 - adds r5, r4, 0x2 - adds r0, r5 - ldrb r2, [r0] - movs r3, 0xF0 - adds r0, r3, 0 - ands r0, r2 - ldrb r2, [r1] - orrs r0, r2 - strb r0, [r1] - ldrb r1, [r7] - ldr r2, [r6] - lsls r0, r1, 1 - adds r0, r1 - adds r0, r2 - adds r0, 0x61 - lsls r1, 9 - adds r4, 0x3 - mov r12, r4 - add r1, r12 - ldrb r1, [r1] - strb r1, [r0] - ldrb r0, [r7] - movs r4, 0x2 - eors r0, r4 - ldr r2, [r6] - lsls r1, r0, 1 - adds r1, r0 - adds r1, r2 - adds r1, 0x60 - ldrb r2, [r1] - adds r0, r3, 0 - ands r0, r2 - strb r0, [r1] - ldrb r0, [r7] - eors r0, r4 - ldr r2, [r6] - lsls r1, r0, 1 - adds r1, r0 - adds r1, r2 - adds r1, 0x60 - ldrb r0, [r7] - lsls r0, 9 - adds r0, r5 - ldrb r0, [r0] - ands r3, r0 - lsrs r3, 4 - ldrb r0, [r1] - orrs r3, r0 - strb r3, [r1] - ldrb r0, [r7] - eors r4, r0 - ldr r0, [r6] - lsls r1, r4, 1 - adds r1, r4 - adds r1, r0 - adds r1, 0x62 - ldrb r0, [r7] - lsls r0, 9 - add r0, r12 - ldrb r0, [r0] - strb r0, [r1] -_0803CEC6: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803CDF8 - - thumb_func_start sub_803CEDC -sub_803CEDC: @ 803CEDC - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - ldr r2, =gUnknown_0202407A - adds r4, r0, r2 - ldrb r5, [r4] - adds r2, r1, r2 - ldrb r3, [r2] - strb r3, [r4] - strb r5, [r2] - ldr r2, =gTurnOrder - adds r0, r2 - ldrb r5, [r0] - adds r1, r2 - ldrb r2, [r1] - strb r2, [r0] - strb r5, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803CEDC - - thumb_func_start b_first_side -b_first_side: @ 803CF10 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r1, 24 - lsrs r1, 24 - mov r10, r1 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x4] - movs r0, 0 - str r0, [sp, 0x8] - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0xD - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - bne _0803CFD8 - ldr r1, [sp, 0x8] - str r1, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0x4D - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - bne _0803CFD8 - ldr r1, =gBattleMons - movs r0, 0x58 - mov r2, r9 - muls r2, r0 - adds r0, r2, 0 - adds r0, r1 - adds r0, 0x20 - ldrb r3, [r0] - cmp r3, 0x21 - bne _0803CF7C - ldr r0, =gBattleWeather - ldrh r1, [r0] - movs r0, 0x7 - ands r0, r1 - cmp r0, 0 - bne _0803CF8C -_0803CF7C: - cmp r3, 0x22 - bne _0803CF98 - ldr r0, =gBattleWeather - ldrh r1, [r0] - movs r0, 0x60 - ands r0, r1 - cmp r0, 0 - beq _0803CF98 -_0803CF8C: - movs r3, 0x2 - b _0803CF9A - .pool -_0803CF98: - movs r3, 0x1 -_0803CF9A: - movs r0, 0x58 - mov r1, r10 - muls r1, r0 - adds r0, r1, 0 - ldr r2, =gBattleMons - adds r0, r2 - adds r0, 0x20 - ldrb r2, [r0] - cmp r2, 0x21 - bne _0803CFBA - ldr r0, =gBattleWeather - ldrh r1, [r0] - movs r0, 0x7 - ands r0, r1 - cmp r0, 0 - bne _0803CFCA -_0803CFBA: - cmp r2, 0x22 - bne _0803CFDA - ldr r0, =gBattleWeather - ldrh r1, [r0] - movs r0, 0x60 - ands r0, r1 - cmp r0, 0 - beq _0803CFDA -_0803CFCA: - movs r7, 0x2 - b _0803CFDC - .pool -_0803CFD8: - movs r3, 0x1 -_0803CFDA: - movs r7, 0x1 -_0803CFDC: - ldr r1, =gBattleMons - movs r0, 0x58 - mov r2, r9 - muls r2, r0 - adds r0, r2, 0 - adds r4, r0, r1 - ldrh r0, [r4, 0x6] - muls r3, r0 - ldr r2, =gStatStageRatios - movs r1, 0x1B - ldrsb r1, [r4, r1] - lsls r1, 1 - adds r0, r1, r2 - ldrb r0, [r0] - muls r0, r3 - adds r2, 0x1 - adds r1, r2 - ldrb r1, [r1] - bl __divsi3 - mov r8, r0 - ldrh r0, [r4, 0x2E] - cmp r0, 0xAF - bne _0803D02C - ldr r1, =gEnigmaBerries - mov r3, r9 - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - adds r0, r1 - ldrb r6, [r0, 0x7] - ldrb r5, [r0, 0x1A] - b _0803D040 - .pool -_0803D02C: - ldrh r0, [r4, 0x2E] - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r6, r0, 24 - ldrh r0, [r4, 0x2E] - bl ItemId_GetHoldEffectParam - lsls r0, 24 - lsrs r5, r0, 24 -_0803D040: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x023f0102 - ands r0, r1 - cmp r0, 0 - bne _0803D074 - ldr r0, =0x00000869 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _0803D074 - mov r0, r9 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0803D074 - movs r0, 0x6E - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - movs r1, 0x64 - bl __udivsi3 - mov r8, r0 -_0803D074: - cmp r6, 0x18 - bne _0803D07E - mov r2, r8 - lsrs r2, 1 - mov r8, r2 -_0803D07E: - ldr r1, =gBattleMons - movs r0, 0x58 - mov r3, r9 - muls r3, r0 - adds r0, r3, 0 - adds r1, 0x4C - adds r0, r1 - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0803D09C - mov r0, r8 - lsrs r0, 2 - mov r8, r0 -_0803D09C: - cmp r6, 0x1A - bne _0803D0B8 - ldr r0, =gUnknown_02024330 - ldrh r4, [r0] - lsls r0, r5, 16 - subs r0, r5 - movs r1, 0x64 - bl __divsi3 - cmp r4, r0 - bge _0803D0B8 - movs r1, 0x1 - negs r1, r1 - mov r8, r1 -_0803D0B8: - ldr r1, =gBattleMons - movs r0, 0x58 - mov r2, r10 - muls r2, r0 - adds r0, r2, 0 - adds r4, r0, r1 - ldrh r0, [r4, 0x6] - adds r3, r0, 0 - muls r3, r7 - ldr r2, =gStatStageRatios - movs r1, 0x1B - ldrsb r1, [r4, r1] - lsls r1, 1 - adds r0, r1, r2 - ldrb r0, [r0] - muls r0, r3 - adds r2, 0x1 - adds r1, r2 - ldrb r1, [r1] - bl __divsi3 - adds r7, r0, 0 - ldrh r0, [r4, 0x2E] - cmp r0, 0xAF - bne _0803D118 - ldr r1, =gEnigmaBerries - mov r3, r10 - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - adds r0, r1 - ldrb r6, [r0, 0x7] - ldrb r5, [r0, 0x1A] - b _0803D12C - .pool -_0803D118: - ldrh r0, [r4, 0x2E] - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r6, r0, 24 - ldrh r0, [r4, 0x2E] - bl ItemId_GetHoldEffectParam - lsls r0, 24 - lsrs r5, r0, 24 -_0803D12C: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x023f0102 - ands r0, r1 - cmp r0, 0 - bne _0803D15C - ldr r0, =0x00000869 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _0803D15C - mov r0, r10 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0803D15C - movs r0, 0x6E - muls r0, r7 - movs r1, 0x64 - bl __udivsi3 - adds r7, r0, 0 -_0803D15C: - cmp r6, 0x18 - bne _0803D162 - lsrs r7, 1 -_0803D162: - ldr r2, =gBattleMons - movs r0, 0x58 - mov r1, r10 - muls r1, r0 - adds r0, r1, 0 - adds r1, r2, 0 - adds r1, 0x4C - adds r0, r1 - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0803D17E - lsrs r7, 2 -_0803D17E: - cmp r6, 0x1A - bne _0803D198 - ldr r0, =gUnknown_02024330 - ldrh r4, [r0] - lsls r0, r5, 16 - subs r0, r5 - movs r1, 0x64 - bl __divsi3 - cmp r4, r0 - bge _0803D198 - movs r7, 0x1 - negs r7, r7 -_0803D198: - ldr r2, [sp, 0x4] - cmp r2, 0 - beq _0803D1B8 - movs r3, 0 - b _0803D254 - .pool -_0803D1B8: - ldr r0, =gUnknown_0202421C - mov r3, r9 - adds r1, r3, r0 - ldrb r1, [r1] - adds r2, r0, 0 - cmp r1, 0 - bne _0803D208 - ldr r0, =gProtectStructs - lsls r1, r3, 4 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 29 - cmp r0, 0 - bge _0803D1E0 - movs r3, 0xA5 - b _0803D20A - .pool -_0803D1E0: - ldr r0, =gBattleStruct - ldr r0, [r0] - add r0, r9 - adds r0, 0x80 - ldrb r0, [r0] - lsls r0, 1 - movs r1, 0x58 - mov r3, r9 - muls r3, r1 - adds r1, r3, 0 - adds r0, r1 - ldr r1, =gBattleMons - adds r1, 0xC - adds r0, r1 - ldrh r3, [r0] - b _0803D20A - .pool -_0803D208: - movs r3, 0 -_0803D20A: - mov r1, r10 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _0803D254 - ldr r0, =gProtectStructs - lsls r1, 4 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 29 - cmp r0, 0 - bge _0803D22C - movs r2, 0xA5 - b _0803D256 - .pool -_0803D22C: - ldr r0, =gBattleStruct - ldr r0, [r0] - add r0, r10 - adds r0, 0x80 - ldrb r0, [r0] - lsls r0, 1 - movs r1, 0x58 - mov r2, r10 - muls r2, r1 - adds r1, r2, 0 - adds r0, r1 - ldr r1, =gBattleMons - adds r1, 0xC - adds r0, r1 - ldrh r2, [r0] - b _0803D256 - .pool -_0803D254: - movs r2, 0 -_0803D256: - ldr r4, =gBattleMoves - lsls r0, r3, 1 - adds r0, r3 - lsls r0, 2 - adds r0, r4 - movs r1, 0x7 - ldrsb r1, [r0, r1] - lsls r3, r2, 1 - cmp r1, 0 - bne _0803D27A - adds r0, r3, r2 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0, 0x7] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - beq _0803D2B8 -_0803D27A: - adds r0, r3, r2 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0, 0x7] - lsls r0, 24 - asrs r0, 24 - cmp r1, r0 - bne _0803D2AE - cmp r8, r7 - bne _0803D2A4 - bl Random - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _0803D2A4 - movs r3, 0x2 - b _0803D2D4 - .pool -_0803D2A4: - cmp r8, r7 - bcs _0803D2D6 - movs r0, 0x1 - str r0, [sp, 0x8] - b _0803D2D6 -_0803D2AE: - cmp r1, r0 - bge _0803D2D6 - movs r1, 0x1 - str r1, [sp, 0x8] - b _0803D2D6 -_0803D2B8: - cmp r8, r7 - bne _0803D2CE - bl Random - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _0803D2CE - movs r2, 0x2 - str r2, [sp, 0x8] - b _0803D2D6 -_0803D2CE: - cmp r8, r7 - bcs _0803D2D6 - movs r3, 0x1 -_0803D2D4: - str r3, [sp, 0x8] -_0803D2D6: - ldr r0, [sp, 0x8] - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end b_first_side - - thumb_func_start sub_803D2E8 -sub_803D2E8: @ 803D2E8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r3, 0 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0803D354 - ldr r0, =gActiveBank - strb r3, [r0] - ldr r4, =gNoOfAllBanks - mov r8, r0 - ldrb r0, [r4] - cmp r3, r0 - bcc _0803D310 - b _0803D54A -_0803D310: - ldr r7, =gUnknown_0202407A - ldr r6, =gUnknown_0202421C - mov r2, r8 - ldr r5, =gTurnOrder -_0803D318: - adds r1, r3, r7 - ldrb r0, [r2] - adds r0, r6 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r3, r5 - ldrb r0, [r2] - strb r0, [r1] - adds r3, 0x1 - ldrb r0, [r2] - adds r0, 0x1 - strb r0, [r2] - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r4] - cmp r0, r1 - bcc _0803D318 - b _0803D54A - .pool -_0803D354: - movs r2, 0x2 - ands r1, r2 - cmp r1, 0 - beq _0803D3A4 - ldr r0, =gActiveBank - strb r3, [r0] - ldr r1, =gNoOfAllBanks - mov r8, r0 - adds r2, r1, 0 - ldrb r2, [r2] - cmp r3, r2 - bcs _0803D3C0 - ldr r0, =gUnknown_0202421C - ldrb r1, [r0] - adds r4, r0, 0 - cmp r1, 0x3 - beq _0803D3BE -_0803D376: - mov r7, r8 - ldrb r0, [r7] - adds r0, 0x1 - strb r0, [r7] - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gNoOfAllBanks - ldrb r1, [r1] - cmp r0, r1 - bcs _0803D3C0 - ldrb r0, [r7] - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0x3 - bne _0803D376 - b _0803D3BE - .pool -_0803D3A4: - ldr r1, =gUnknown_0202421C - ldrb r0, [r1] - ldr r4, =gActiveBank - mov r8, r4 - cmp r0, 0x3 - bne _0803D3B4 - strb r3, [r4] - movs r3, 0x5 -_0803D3B4: - ldrb r0, [r1, 0x2] - cmp r0, 0x3 - bne _0803D3C0 - mov r7, r8 - strb r2, [r7] -_0803D3BE: - movs r3, 0x5 -_0803D3C0: - cmp r3, 0x5 - bne _0803D448 - ldr r6, =gUnknown_0202407A - ldr r1, =gUnknown_0202421C - mov r2, r8 - ldrb r0, [r2] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r6] - ldr r2, =gTurnOrder - mov r3, r8 - ldrb r0, [r3] - strb r0, [r2] - movs r3, 0x1 - movs r5, 0 - adds r4, r1, 0 - ldr r7, =gBattleMainFunc - mov r10, r7 - ldr r0, =bc_80154A0 - mov r12, r0 - ldr r1, =gBattleStruct - mov r9, r1 - ldr r7, =gNoOfAllBanks - ldrb r7, [r7] - cmp r5, r7 - bge _0803D41A - adds r7, r6, 0 - adds r6, r4, 0 - adds r4, r2, 0 - ldr r2, =gNoOfAllBanks -_0803D3FC: - mov r0, r8 - ldrb r0, [r0] - cmp r5, r0 - beq _0803D412 - adds r1, r3, r7 - adds r0, r5, r6 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r3, r4 - strb r5, [r0] - adds r3, 0x1 -_0803D412: - adds r5, 0x1 - ldrb r1, [r2] - cmp r5, r1 - blt _0803D3FC -_0803D41A: - mov r2, r12 - mov r3, r10 - str r2, [r3] - mov r4, r9 - ldr r0, [r4] - b _0803D554 - .pool -_0803D448: - movs r0, 0 - mov r7, r8 - strb r0, [r7] - ldr r1, =gNoOfAllBanks - ldrb r0, [r1] - cmp r0, 0 - beq _0803D48E - ldr r6, =gUnknown_0202421C - mov r2, r8 - ldr r5, =gUnknown_0202407A - ldr r4, =gTurnOrder -_0803D45E: - ldrb r0, [r2] - adds r0, r6 - ldrb r1, [r0] - subs r0, r1, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0803D47C - adds r0, r3, r5 - strb r1, [r0] - adds r1, r3, r4 - mov r7, r8 - ldrb r0, [r7] - strb r0, [r1] - adds r3, 0x1 -_0803D47C: - ldrb r0, [r2] - adds r0, 0x1 - strb r0, [r2] - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gNoOfAllBanks - ldrb r1, [r1] - cmp r0, r1 - bcc _0803D45E -_0803D48E: - movs r0, 0 - mov r2, r8 - strb r0, [r2] - ldr r4, =gNoOfAllBanks - ldrb r0, [r4] - cmp r0, 0 - beq _0803D4D2 - ldr r6, =gUnknown_0202421C - ldr r5, =gUnknown_0202407A - ldr r4, =gTurnOrder -_0803D4A2: - ldrb r0, [r2] - adds r0, r6 - ldrb r1, [r0] - subs r0, r1, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _0803D4C0 - adds r0, r3, r5 - strb r1, [r0] - adds r1, r3, r4 - mov r7, r8 - ldrb r0, [r7] - strb r0, [r1] - adds r3, 0x1 -_0803D4C0: - ldrb r0, [r2] - adds r0, 0x1 - strb r0, [r2] - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gNoOfAllBanks - ldrb r1, [r1] - cmp r0, r1 - bcc _0803D4A2 -_0803D4D2: - movs r5, 0 - b _0803D540 - .pool -_0803D4E8: - adds r4, r5, 0x1 - adds r7, r4, 0 - ldrb r1, [r1] - cmp r7, r1 - bge _0803D53E - ldr r6, =gUnknown_0202407A - lsls r2, r5, 24 - mov r8, r2 -_0803D4F8: - ldr r0, =gTurnOrder - adds r1, r5, r0 - ldrb r3, [r1] - adds r0, r4, r0 - ldrb r1, [r0] - adds r0, r5, r6 - ldrb r2, [r0] - cmp r2, 0x1 - beq _0803D534 - adds r0, r4, r6 - ldrb r0, [r0] - cmp r0, 0x1 - beq _0803D534 - cmp r2, 0x2 - beq _0803D534 - cmp r0, 0x2 - beq _0803D534 - adds r0, r3, 0 - movs r2, 0 - bl b_first_side - lsls r0, 24 - cmp r0, 0 - beq _0803D534 - lsls r1, r4, 24 - lsrs r1, 24 - mov r3, r8 - lsrs r0, r3, 24 - bl sub_803CEDC -_0803D534: - adds r4, 0x1 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r4, r0 - blt _0803D4F8 -_0803D53E: - adds r5, r7, 0 -_0803D540: - ldr r1, =gNoOfAllBanks - ldrb r0, [r1] - subs r0, 0x1 - cmp r5, r0 - blt _0803D4E8 -_0803D54A: - ldr r1, =gBattleMainFunc - ldr r0, =bc_80154A0 - str r0, [r1] - ldr r0, =gBattleStruct - ldr r0, [r0] -_0803D554: - adds r0, 0x48 - movs r1, 0 - strb r1, [r0] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803D2E8 - - thumb_func_start sub_803D580 -sub_803D580: @ 803D580 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - ldr r1, =gActiveBank - movs r0, 0 - strb r0, [r1] - ldr r0, =gNoOfAllBanks - ldrb r2, [r0] - adds r5, r1, 0 - cmp r2, 0 - beq _0803D678 - ldr r7, =gProtectStructs - adds r6, r5, 0 - ldr r0, =gBattleMons + 0x50 - mov r12, r0 - ldr r1, =gDisableStructs - mov r8, r1 - mov r10, r8 -_0803D5AE: - mov r2, r9 - cmp r2, 0 - beq _0803D5EC - ldrb r1, [r6] - lsls r1, 4 - adds r1, r7 - ldrb r2, [r1] - movs r0, 0x2 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - ldrb r1, [r6] - lsls r1, 4 - adds r1, r7 - ldrb r2, [r1] - movs r0, 0x3 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - b _0803D648 - .pool -_0803D5EC: - ldrb r0, [r6] - lsls r0, 4 - adds r2, r0, r7 - movs r1, 0 - mov r4, r10 - movs r3, 0 -_0803D5F8: - adds r0, r2, r1 - strb r3, [r0] - adds r1, 0x1 - cmp r1, 0xF - bls _0803D5F8 - ldrb r1, [r5] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r1, r0, r4 - ldrb r0, [r1, 0x16] - cmp r0, 0 - beq _0803D616 - subs r0, 0x1 - strb r0, [r1, 0x16] -_0803D616: - ldrb r1, [r5] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r1, r0, r4 - ldrb r0, [r1, 0x19] - cmp r0, 0 - beq _0803D648 - subs r0, 0x1 - strb r0, [r1, 0x19] - ldrb r2, [r5] - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0, 0x19] - cmp r0, 0 - bne _0803D648 - movs r0, 0x58 - muls r2, r0 - add r2, r12 - ldr r0, [r2] - ldr r1, =0xffbfffff - ands r0, r1 - str r0, [r2] -_0803D648: - ldrb r2, [r5] - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - add r0, r8 - ldrb r0, [r0, 0xA] - cmp r0, 0 - bne _0803D666 - movs r0, 0x58 - muls r2, r0 - add r2, r12 - ldr r0, [r2] - ldr r1, =0xfeffffff - ands r0, r1 - str r0, [r2] -_0803D666: - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gNoOfAllBanks - ldrb r1, [r1] - cmp r0, r1 - bcc _0803D5AE -_0803D678: - movs r0, 0 - ldr r2, =gSideTimers - strb r0, [r2, 0x8] - strb r0, [r2, 0x14] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803D580 - - thumb_func_start sub_803D6A0 -sub_803D6A0: @ 803D6A0 - push {r4-r6,lr} - ldr r2, =gActiveBank - movs r0, 0 - strb r0, [r2] - ldr r0, =gNoOfAllBanks - ldrb r1, [r0] - adds r6, r0, 0 - cmp r1, 0 - beq _0803D6DE - adds r3, r2, 0 - movs r4, 0 - ldr r5, =gSpecialStatuses -_0803D6B8: - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r2, r0, r5 - movs r1, 0 -_0803D6C4: - adds r0, r2, r1 - strb r4, [r0] - adds r1, 0x1 - cmp r1, 0x13 - bls _0803D6C4 - ldrb r0, [r3] - adds r0, 0x1 - strb r0, [r3] - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r6] - cmp r0, r1 - bcc _0803D6B8 -_0803D6DE: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803D6A0 - - thumb_func_start bc_80154A0 -bc_80154A0: @ 803D6F0 - push {r4-r7,lr} - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 8 - ands r0, r1 - cmp r0, 0 - bne _0803D7AE - ldr r2, =gBattleStruct - ldr r0, [r2] - adds r0, 0x48 - ldr r1, =gNoOfAllBanks - ldrb r0, [r0] - mov r12, r2 - adds r6, r1, 0 - ldrb r1, [r6] - cmp r0, r1 - bcs _0803D7AE - ldr r5, =gActiveBank - ldr r4, =gBankAttacker - movs r7, 0x84 - lsls r7, 1 -_0803D71C: - ldr r1, [r2] - adds r1, 0x48 - ldrb r0, [r1] - strb r0, [r4] - strb r0, [r5] - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r1, =gChosenMovesByBanks - ldrb r3, [r5] - lsls r0, r3, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r0, r7 - bne _0803D7A0 - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r3 - adds r1, 0x4C - adds r0, r1 - ldr r0, [r0] - movs r1, 0x7 - ands r0, r1 - cmp r0, 0 - bne _0803D7A0 - ldr r2, =gDisableStructs - ldrb r1, [r4] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x18] - lsls r0, 31 - cmp r0, 0 - bne _0803D7A0 - ldr r0, =gProtectStructs - lsls r1, r3, 4 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 29 - cmp r0, 0 - blt _0803D7A0 - ldr r0, =gUnknown_082DB1FF - bl b_call_bc_move_exec - b _0803D7E8 - .pool -_0803D7A0: - mov r2, r12 - ldr r0, [r2] - adds r0, 0x48 - ldrb r0, [r0] - ldrb r1, [r6] - cmp r0, r1 - bcc _0803D71C -_0803D7AE: - bl b_clear_atk_up_if_hit_flag_unless_enraged - ldr r1, =gUnknown_02024082 - movs r0, 0 - strb r0, [r1] - ldr r1, =gFightStateTracker - ldr r0, =gUnknown_0202407A - movs r3, 0 - ldrb r0, [r0] - strb r0, [r1] - ldr r0, =gDynamicBasePower - movs r2, 0 - strh r3, [r0] - ldr r0, =gBattleStruct - ldr r0, [r0] - strb r2, [r0, 0x13] - ldr r1, =gBattleMainFunc - ldr r0, =bc_bs_exec - str r0, [r1] - ldr r0, =gBattleCommunication - strb r2, [r0, 0x3] - strb r2, [r0, 0x4] - ldr r0, =gBattleScripting - strb r2, [r0, 0x16] - ldr r0, =gBattleResources - ldr r0, [r0] - ldr r0, [r0, 0x8] - adds r0, 0x20 - strb r2, [r0] -_0803D7E8: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end bc_80154A0 - - thumb_func_start bc_bs_exec -bc_bs_exec: @ 803D818 - push {r4-r6,lr} - ldr r6, =gBattleOutcome - ldrb r0, [r6] - ldr r2, =gFightStateTracker - cmp r0, 0 - beq _0803D828 - movs r0, 0xC - strb r0, [r2] -_0803D828: - ldr r5, =gBattleStruct - ldr r0, [r5] - adds r0, 0x4B - ldr r4, =gUnknown_02024082 - ldrb r1, [r4] - strb r1, [r0] - ldr r1, =gUnknown_0831BC0C - ldrb r0, [r2] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 - ldr r0, =gNoOfAllBanks - ldrb r1, [r4] - ldrb r0, [r0] - cmp r1, r0 - bcc _0803D894 - ldr r2, =gHitMarker - ldr r0, [r2] - ldr r1, =0xffefffff - ands r0, r1 - str r0, [r2] - ldr r3, =gBattleMainFunc - ldr r2, =gUnknown_0831BC44 - ldrb r1, [r6] - movs r0, 0x7F - ands r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - str r0, [r3] - b _0803D8AC - .pool -_0803D894: - ldr r0, [r5] - adds r0, 0x4B - ldrb r0, [r0] - cmp r0, r1 - beq _0803D8AC - ldr r2, =gHitMarker - ldr r0, [r2] - ldr r1, =0xfffffdff - ands r0, r1 - ldr r1, =0xfff7ffff - ands r0, r1 - str r0, [r2] -_0803D8AC: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end bc_bs_exec - - thumb_func_start sub_803D8C0 -sub_803D8C0: @ 803D8C0 - push {r4,lr} - ldr r1, =gFightStateTracker - movs r0, 0 - strb r0, [r1] - ldr r1, =gBattleTypeFlags - ldr r2, [r1] - ldr r0, =0x02000002 - ands r0, r2 - cmp r0, 0 - beq _0803D920 - ldr r1, =gScriptResult - ldr r4, =gBattleOutcome - ldrb r0, [r4] - strh r0, [r1] - ldr r1, =gBattleTextBuff1 - ldrb r0, [r4] - strb r0, [r1] - movs r0, 0 - bl GetBankByPlayerAI - ldr r1, =gBankAttacker - strb r0, [r1] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DAA35 - str r0, [r1] - ldrb r1, [r4] - movs r0, 0x7F - ands r0, r1 - strb r0, [r4] - b _0803DAA4 - .pool -_0803D920: - movs r0, 0x8 - ands r0, r2 - cmp r0, 0 - beq _0803D95C - ldr r0, =0x043f0900 - ands r2, r0 - cmp r2, 0 - beq _0803D95C - bl sub_805EA60 - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DAA87 - str r0, [r1] - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - ldr r0, =0x000003fe - cmp r1, r0 - bne _0803D946 - b _0803DA8A -_0803D946: - b _0803DA94 - .pool -_0803D95C: - ldr r0, [r1] - movs r1, 0xA - ands r0, r1 - cmp r0, 0x8 - beq _0803D968 - b _0803DA9E -_0803D968: - bl sub_805EA60 - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DA92D - str r0, [r1] - ldr r2, =gTrainers - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0, 0x1] - subs r0, 0x3 - cmp r0, 0x32 - bls _0803D98A - b _0803DA94 -_0803D98A: - lsls r0, 2 - ldr r1, =_0803D9A8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0803D9A8: - .4byte _0803DA80 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA80 - .4byte _0803DA94 - .4byte _0803DA80 - .4byte _0803DA94 - .4byte _0803DA80 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA74 - .4byte _0803DA8A - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA74 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA80 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA94 - .4byte _0803DA80 -_0803DA74: - ldr r0, =0x00000163 - bl PlayBGM - b _0803DAA4 - .pool -_0803DA80: - movs r0, 0xD4 - lsls r0, 1 - bl PlayBGM - b _0803DAA4 -_0803DA8A: - movs r0, 0xB1 - lsls r0, 1 - bl PlayBGM - b _0803DAA4 -_0803DA94: - movs r0, 0xCE - lsls r0, 1 - bl PlayBGM - b _0803DAA4 -_0803DA9E: - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DA96A - str r0, [r1] -_0803DAA4: - ldr r1, =gBattleMainFunc - ldr r0, =sub_803DCD8 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803D8C0 - - thumb_func_start sub_803DAC0 -sub_803DAC0: @ 803DAC0 - push {r4,lr} - ldr r1, =gFightStateTracker - movs r0, 0 - strb r0, [r1] - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x02000002 - ands r0, r1 - cmp r0, 0 - beq _0803DB7C - ldr r0, =0x003f0100 - ands r1, r0 - cmp r1, 0 - beq _0803DB44 - ldr r3, =gBattleOutcome - ldrb r2, [r3] - movs r0, 0x80 - ands r0, r2 - cmp r0, 0 - beq _0803DB2C - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB9C8 - str r0, [r1] - movs r0, 0x7F - ands r0, r2 - strb r0, [r3] - ldr r0, =gSaveBlock2Ptr - ldr r1, [r0] - ldr r0, =0x00000ca9 - adds r1, r0 - ldrb r0, [r1] - movs r2, 0x8 - orrs r0, r2 - strb r0, [r1] - b _0803DB82 - .pool -_0803DB2C: - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DAA0B - str r0, [r1] - movs r0, 0x7F - ands r0, r2 - strb r0, [r3] - b _0803DB82 - .pool -_0803DB44: - ldr r1, =gBattleTextBuff1 - ldr r4, =gBattleOutcome - ldrb r0, [r4] - strb r0, [r1] - movs r0, 0 - bl GetBankByPlayerAI - ldr r1, =gBankAttacker - strb r0, [r1] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DAA35 - str r0, [r1] - ldrb r1, [r4] - movs r0, 0x7F - ands r0, r1 - strb r0, [r4] - b _0803DB82 - .pool -_0803DB7C: - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DA96D - str r0, [r1] -_0803DB82: - ldr r1, =gBattleMainFunc - ldr r0, =sub_803DCD8 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803DAC0 - - thumb_func_start sub_803DBA0 -sub_803DBA0: @ 803DBA0 - push {lr} - ldr r1, =gFightStateTracker - movs r0, 0 - strb r0, [r1] - ldr r1, =gBattleTypeFlags - ldr r2, [r1] - ldr r0, =0x003f0100 - ands r0, r2 - cmp r0, 0 - beq _0803DBFC - movs r0, 0x8 - ands r2, r0 - cmp r2, 0 - beq _0803DBFC - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB9C1 - str r0, [r1] - ldr r1, =gBattleOutcome - movs r0, 0x9 - strb r0, [r1] - ldr r0, =gSaveBlock2Ptr - ldr r1, [r0] - ldr r0, =0x00000ca9 - adds r1, r0 - ldrb r0, [r1] - movs r2, 0x8 - orrs r0, r2 - strb r0, [r1] - b _0803DC6A - .pool -_0803DBFC: - ldr r0, [r1] - movs r1, 0x80 - lsls r1, 19 - ands r0, r1 - cmp r0, 0 - beq _0803DC24 - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB9C1 - str r0, [r1] - ldr r1, =gBattleOutcome - movs r0, 0x9 - strb r0, [r1] - b _0803DC6A - .pool -_0803DC24: - ldr r1, =gProtectStructs - ldr r0, =gBankAttacker - ldrb r0, [r0] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0, 0x1] - lsls r0, 27 - lsrs r0, 30 - cmp r0, 0x1 - beq _0803DC54 - cmp r0, 0x2 - beq _0803DC64 - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DAAF0 - b _0803DC68 - .pool -_0803DC54: - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DAADB - b _0803DC68 - .pool -_0803DC64: - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DAAE9 -_0803DC68: - str r0, [r1] -_0803DC6A: - ldr r1, =gBattleMainFunc - ldr r0, =sub_803DCD8 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end sub_803DBA0 - - thumb_func_start bc_80158BC -bc_80158BC: @ 803DC84 - ldr r1, =gFightStateTracker - movs r0, 0 - strb r0, [r1] - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x7 - strb r0, [r1, 0x1] - ldr r2, =gBankAttacker - ldrb r0, [r2] - strb r0, [r1, 0x2] - ldr r3, =gBattlePartyID - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r0, [r0] - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DAAF7 - str r0, [r1] - ldr r1, =gBattleMainFunc - ldr r0, =sub_803DCD8 - str r0, [r1] - bx lr - .pool - thumb_func_end bc_80158BC - - thumb_func_start sub_803DCD8 -sub_803DCD8: @ 803DCD8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, =gFightStateTracker - ldrb r0, [r0] - subs r0, 0xB - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _0803DCEE - b _0803DE10 -_0803DCEE: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x023f0b92 - ands r1, r0 - cmp r1, 0 - bne _0803DDB6 - ldr r2, =gActiveBank - strb r1, [r2] - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r1, r0 - bcs _0803DDB2 - adds r5, r2, 0 - ldr r0, =gBattlePartyID - mov r8, r0 - movs r7, 0x64 - ldr r6, =gPlayerParty -_0803DD10: - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0803DDA0 - ldr r4, =gBattleResults - ldrh r0, [r4, 0x6] - cmp r0, 0 - bne _0803DD74 - ldrb r0, [r5] - lsls r0, 1 - add r0, r8 - ldrh r0, [r0] - muls r0, r7 - adds r0, r6 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r4, 0x6] - ldrb r0, [r5] - lsls r0, 1 - add r0, r8 - ldrh r0, [r0] - muls r0, r7 - adds r0, r6 - movs r1, 0x2 - adds r2, r4, 0 - adds r2, 0x8 - bl GetMonData - b _0803DDA0 - .pool -_0803DD74: - ldrb r0, [r5] - lsls r0, 1 - add r0, r8 - ldrh r0, [r0] - muls r0, r7 - adds r0, r6 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r4, 0x26] - ldrb r0, [r5] - lsls r0, 1 - add r0, r8 - ldrh r0, [r0] - muls r0, r7 - adds r0, r6 - movs r1, 0x2 - adds r2, r4, 0 - adds r2, 0x14 - bl GetMonData -_0803DDA0: - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _0803DD10 -_0803DDB2: - bl sub_80EC728 -_0803DDB6: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x023f0b9a - ands r0, r1 - cmp r0, 0 - bne _0803DDD2 - ldr r0, =gBattleResults - ldrb r1, [r0, 0x5] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0803DDD2 - bl sub_80EE184 -_0803DDD2: - bl sub_8186444 - movs r0, 0x3 - bl BeginFastPaletteFade - movs r0, 0x5 - bl FadeOutMapMusic - ldr r1, =gBattleMainFunc - ldr r0, =sub_803DE40 - str r0, [r1] - ldr r1, =gUnknown_030061E8 - ldr r0, =sub_8038420 - str r0, [r1] - b _0803DE2A - .pool -_0803DE10: - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0803DE2A - ldr r1, =gBattleScriptingCommandsTable - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 -_0803DE2A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803DCD8 - - thumb_func_start sub_803DE40 -sub_803DE40: @ 803DE40 - push {lr} - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0803DE86 - bl ResetSpriteData - ldr r0, =gUnknown_03005D54 - ldrb r0, [r0] - cmp r0, 0 - beq _0803DE62 - ldr r0, =gBattleOutcome - ldrb r0, [r0] - cmp r0, 0x1 - beq _0803DE80 -_0803DE62: - ldr r1, =gBattleMainFunc - ldr r0, =c4_overworld - str r0, [r1] - b _0803DEA2 - .pool -_0803DE80: - ldr r1, =gBattleMainFunc - ldr r0, =bc_evolution_cutscene - str r0, [r1] -_0803DE86: - bl FreeAllWindowBuffers - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0803DEA2 - bl sub_805F094 - bl sub_8057028 - bl dp11_free -_0803DEA2: - pop {r0} - bx r0 - .pool - thumb_func_end sub_803DE40 - - thumb_func_start bc_evolution_cutscene -bc_evolution_cutscene: @ 803DEB4 - push {r4-r6,lr} - ldr r0, =gUnknown_03005D54 - ldrb r1, [r0] - adds r3, r0, 0 - cmp r1, 0 - beq _0803DF2E -_0803DEC0: - movs r6, 0 -_0803DEC2: - ldrb r2, [r3] - ldr r0, =gBitTable - lsls r1, r6, 2 - adds r1, r0 - ldr r1, [r1] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _0803DF20 - bics r2, r1 - strb r2, [r3] - movs r0, 0x64 - adds r1, r6, 0 - muls r1, r0 - ldr r0, =gPlayerParty - adds r5, r1, r0 - adds r0, r5, 0 - movs r1, 0 - bl GetEvolutionTargetSpecies - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0 - beq _0803DF20 - bl FreeAllWindowBuffers - ldr r0, =gBattleMainFunc - ldr r1, =sub_803DF48 - str r1, [r0] - lsls r3, r6, 24 - lsrs r3, 24 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl evolution_cutscene - b _0803DF34 - .pool -_0803DF20: - adds r6, 0x1 - ldr r3, =gUnknown_03005D54 - cmp r6, 0x5 - ble _0803DEC2 - ldrb r0, [r3] - cmp r0, 0 - bne _0803DEC0 -_0803DF2E: - ldr r1, =gBattleMainFunc - ldr r0, =c4_overworld - str r0, [r1] -_0803DF34: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end bc_evolution_cutscene - - thumb_func_start sub_803DF48 -sub_803DF48: @ 803DF48 - push {lr} - ldr r0, =gMain - ldr r1, [r0, 0x4] - ldr r0, =sub_8038420 - cmp r1, r0 - bne _0803DF5A - ldr r1, =gBattleMainFunc - ldr r0, =bc_evolution_cutscene - str r0, [r1] -_0803DF5A: - pop {r0} - bx r0 - .pool - thumb_func_end sub_803DF48 - - thumb_func_start c4_overworld -c4_overworld: @ 803DF70 - push {r4-r6,lr} - ldr r6, =gBattleTypeFlags - ldr r0, [r6] - movs r5, 0x2 - ands r0, r5 - cmp r0, 0 - bne _0803DF8C - ldr r4, =gPlayerParty - adds r0, r4, 0 - bl RandomlyGivePartyPokerus - adds r0, r4, 0 - bl PartySpreadPokerus -_0803DF8C: - ldr r4, [r6] - adds r0, r4, 0 - ands r0, r5 - cmp r0, 0 - beq _0803DF9E - ldr r0, =gUnknown_03003124 - ldrb r0, [r0] - cmp r0, 0 - bne _0803DFEC -_0803DF9E: - ldr r1, =gScriptResult - ldr r5, =gBattleOutcome - ldrb r0, [r5] - strh r0, [r1] - 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, =gUnknown_03005D00 - ldr r0, [r0] - str r0, [r3] - movs r0, 0x80 - lsls r0, 3 - ands r4, r0 - cmp r4, 0 - beq _0803DFDE - ldr r0, =gEnemyParty - bl UpdateRoamerHPStatus - ldrb r1, [r5] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0803DFDA - cmp r1, 0x7 - bne _0803DFDE -_0803DFDA: - bl SetRoamerInactive -_0803DFDE: - movs r0, 0x5A - bl m4aSongNumStop - ldr r0, =gMain - ldr r0, [r0, 0x8] - bl SetMainCallback2 -_0803DFEC: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end c4_overworld - - thumb_func_start bc_move_exec_returning -bc_move_exec_returning: @ 803E018 - push {lr} - ldr r0, =gFightStateTracker - ldrb r0, [r0] - subs r0, 0xB - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0803E060 - ldr r3, =gBattleResources - ldr r0, [r3] - ldr r0, [r0, 0xC] - adds r1, r0, 0 - adds r1, 0x20 - ldrb r0, [r1] - cmp r0, 0 - beq _0803E03C - subs r0, 0x1 - strb r0, [r1] -_0803E03C: - ldr r2, =gBattleMainFunc - ldr r0, [r3] - ldr r1, [r0, 0xC] - adds r0, r1, 0 - adds r0, 0x20 - ldrb r0, [r0] - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2] - b _0803E07A - .pool -_0803E060: - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0803E07A - ldr r1, =gBattleScriptingCommandsTable - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 -_0803E07A: - pop {r0} - bx r0 - .pool - thumb_func_end bc_move_exec_returning - - thumb_func_start sub_803E08C -sub_803E08C: @ 803E08C - push {lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0803E0A8 - ldr r1, =gBattleScriptingCommandsTable - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 -_0803E0A8: - pop {r0} - bx r0 - .pool - thumb_func_end sub_803E08C - - thumb_func_start sub_803E0B8 -sub_803E0B8: @ 803E0B8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - movs r0, 0x4 - str r0, [sp] - ldr r6, =gBankAttacker - ldr r1, =gTurnOrder - ldr r0, =gUnknown_02024082 - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r6] - ldr r1, =gBattleStruct - ldr r3, [r1] - adds r0, r3, 0 - adds r0, 0x91 - ldrb r2, [r0] - ldr r1, =gBitTable - ldrb r0, [r6] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ands r2, r0 - cmp r2, 0 - beq _0803E110 - ldr r1, =gFightStateTracker - movs r0, 0xC - b _0803E83C - .pool -_0803E110: - ldr r1, =gCritMultiplier - movs r0, 0x1 - strb r0, [r1] - ldr r1, =gBattleScripting - movs r0, 0x1 - strb r0, [r1, 0xE] - ldr r5, =0x000001a3 - adds r0, r3, r5 - strb r2, [r0] - ldr r0, =gBattleMoveFlags - strb r2, [r0] - ldr r0, =gUnknown_02024212 - strb r2, [r0] - ldr r0, =gBattleCommunication - strb r2, [r0, 0x6] - ldr r2, =gCurrMovePos - ldr r0, =gUnknown_020241E9 - mov r9, r0 - ldrb r0, [r6] - ldr r3, =gBattleStruct - ldr r1, [r3] - adds r0, r1 - adds r0, 0x80 - ldrb r0, [r0] - mov r5, r9 - strb r0, [r5] - strb r0, [r2] - ldr r1, =gProtectStructs - ldrb r4, [r6] - lsls r0, r4, 4 - adds r3, r0, r1 - ldrb r1, [r3] - lsls r0, r1, 29 - mov r8, r2 - cmp r0, 0 - bge _0803E1BC - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r3] - ldr r2, =gCurrentMove - ldr r1, =gUnknown_020241EC - movs r0, 0xA5 - strh r0, [r1] - strh r0, [r2] - ldr r2, =gHitMarker - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 4 - orrs r0, r1 - str r0, [r2] - movs r0, 0xA5 - movs r1, 0 - bl GetMoveTarget - ldrb r1, [r6] - ldr r3, =gBattleStruct - ldr r2, [r3] - b _0803E316 - .pool -_0803E1BC: - ldr r5, =gBattleMons - mov r10, r5 - movs r0, 0x58 - adds r5, r4, 0 - muls r5, r0 - mov r0, r10 - adds r0, 0x50 - adds r0, r5, r0 - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 5 - ands r0, r1 - cmp r0, 0 - bne _0803E1E2 - movs r7, 0x80 - lsls r7, 15 - ands r7, r1 - cmp r7, 0 - beq _0803E204 -_0803E1E2: - ldr r3, =gCurrentMove - ldr r2, =gUnknown_020241EC - ldr r1, =gUnknown_02024268 - lsls r0, r4, 1 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r2] - strh r0, [r3] - b _0803E33C - .pool -_0803E204: - ldr r1, =gDisableStructs - mov r12, r1 - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - add r0, r12 - ldrh r3, [r0, 0x6] - adds r1, r3, 0 - cmp r1, 0 - beq _0803E2DC - ldrb r2, [r0, 0xC] - lsls r0, r2, 1 - adds r0, r5 - mov r4, r10 - adds r4, 0xC - adds r0, r4 - ldrh r0, [r0] - cmp r1, r0 - bne _0803E268 - ldr r2, =gCurrentMove - ldr r0, =gUnknown_020241EC - strh r3, [r0] - strh r3, [r2] - ldrb r1, [r6] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r12 - ldrb r0, [r0, 0xC] - mov r3, r9 - strb r0, [r3] - mov r5, r8 - strb r0, [r5] - ldrh r0, [r2] - movs r1, 0 - bl GetMoveTarget - ldrb r1, [r6] - ldr r3, =gBattleStruct - ldr r2, [r3] - b _0803E316 - .pool -_0803E268: - cmp r1, 0 - beq _0803E2DC - cmp r1, r0 - beq _0803E2DC - mov r5, r9 - strb r2, [r5] - mov r0, r8 - strb r2, [r0] - ldr r3, =gCurrentMove - ldr r2, =gUnknown_020241EC - ldrb r0, [r0] - lsls r0, 1 - ldrb r1, [r6] - movs r5, 0x58 - muls r1, r5 - adds r0, r1 - adds r0, r4 - ldrh r0, [r0] - strh r0, [r2] - strh r0, [r3] - ldrb r1, [r6] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r12 - movs r2, 0 - strh r7, [r0, 0x6] - ldrb r1, [r6] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r12 - strb r2, [r0, 0xC] - ldrb r0, [r6] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - add r1, r12 - ldrb r2, [r1, 0xE] - movs r0, 0x10 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0xE] - ldrh r0, [r3] - movs r1, 0 - bl GetMoveTarget - ldrb r1, [r6] - ldr r3, =gBattleStruct - ldr r2, [r3] - b _0803E316 - .pool -_0803E2DC: - ldr r3, =gBattleMons - mov r5, r8 - ldrb r0, [r5] - lsls r0, 1 - ldr r4, =gBankAttacker - ldrb r2, [r4] - movs r1, 0x58 - muls r1, r2 - adds r0, r1 - adds r3, 0xC - adds r0, r3 - ldr r1, =gChosenMovesByBanks - lsls r2, 1 - adds r2, r1 - ldrh r3, [r0] - ldrh r2, [r2] - cmp r3, r2 - beq _0803E334 - ldr r1, =gCurrentMove - ldr r0, =gUnknown_020241EC - strh r3, [r0] - strh r3, [r1] - ldrh r0, [r1] - movs r1, 0 - bl GetMoveTarget - ldrb r1, [r4] - ldr r2, =gBattleStruct - ldr r2, [r2] -_0803E316: - adds r1, r2 - strb r0, [r1, 0xC] - b _0803E33C - .pool -_0803E334: - ldr r1, =gCurrentMove - ldr r0, =gUnknown_020241EC - strh r3, [r0] - strh r3, [r1] -_0803E33C: - ldr r2, =gBattleMons - ldr r1, =gBankAttacker - ldrb r3, [r1] - movs r0, 0x58 - muls r0, r3 - adds r0, r2 - ldrh r0, [r0, 0x28] - mov r8, r1 - cmp r0, 0 - beq _0803E384 - adds r0, r3, 0 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0803E37C - ldr r0, =gBattleResults - ldr r1, =gCurrentMove - ldrh r1, [r1] - strh r1, [r0, 0x22] - b _0803E384 - .pool -_0803E37C: - ldr r0, =gBattleResults - ldr r1, =gCurrentMove - ldrh r1, [r1] - strh r1, [r0, 0x24] -_0803E384: - mov r1, r8 - ldrb r0, [r1] - bl GetBankSide - movs r1, 0x1 - eors r0, r1 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r1, =gSideTimers - lsls r0, r6, 1 - adds r0, r6 - lsls r0, 2 - adds r5, r0, r1 - ldrb r0, [r5, 0x8] - cmp r0, 0 - beq _0803E400 - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x6] - cmp r0, 0 - bne _0803E400 - mov r3, r8 - ldrb r0, [r3] - bl GetBankSide - adds r4, r0, 0 - ldrb r0, [r5, 0x9] - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - beq _0803E400 - ldr r1, =gBattleMons - ldrb r2, [r5, 0x9] - movs r0, 0x58 - muls r0, r2 - adds r0, r1 - ldrh r0, [r0, 0x28] - cmp r0, 0 - beq _0803E400 - ldr r0, =gBankTarget - strb r2, [r0] - b _0803E76A - .pool -_0803E400: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - ldr r5, =gBankAttacker - mov r8, r5 - cmp r0, 0 - bne _0803E412 - b _0803E6E0 -_0803E412: - ldr r1, =gSideTimers - lsls r0, r6, 1 - adds r0, r6 - lsls r0, 2 - adds r0, r1 - ldrb r5, [r0, 0x8] - cmp r5, 0 - beq _0803E424 - b _0803E630 -_0803E424: - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r4, r0, r2 - ldrb r0, [r4, 0x1] - cmp r0, 0 - bne _0803E440 - ldrb r0, [r4, 0x6] - cmp r0, 0x10 - bne _0803E440 - b _0803E630 -_0803E440: - ldr r3, =gBattleMons - ldr r2, =gBankAttacker - ldrb r6, [r2] - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, r6, r0 - ldrb r1, [r0, 0xC] - movs r0, 0x58 - muls r0, r1 - adds r0, r3 - adds r0, 0x20 - ldrb r0, [r0] - mov r8, r2 - cmp r0, 0x1F - bne _0803E460 - b _0803E630 -_0803E460: - ldrb r0, [r4, 0x2] - cmp r0, 0xD - beq _0803E468 - b _0803E630 -_0803E468: - adds r0, r6, 0 - bl GetBankSide - lsls r0, 24 - lsrs r6, r0, 24 - ldr r1, =gActiveBank - strb r5, [r1] - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r5, r0 - bcs _0803E4E0 - adds r4, r1, 0 -_0803E480: - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r6, r0 - beq _0803E4CE - ldr r0, =gBankAttacker - ldrb r1, [r0] - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r1, r0 - ldrb r0, [r1, 0xC] - ldrb r1, [r4] - cmp r0, r1 - beq _0803E4CE - ldr r1, =gBattleMons - ldrb r2, [r4] - movs r0, 0x58 - muls r0, r2 - adds r0, r1 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x1F - bne _0803E4CE - adds r0, r2, 0 - bl sub_8048728 - lsls r0, 24 - lsrs r0, 24 - ldr r3, [sp] - cmp r0, r3 - bcs _0803E4CE - ldrb r0, [r4] - bl sub_8048728 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] -_0803E4CE: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _0803E480 -_0803E4E0: - ldr r5, [sp] - cmp r5, 0x4 - beq _0803E4E8 - b _0803E5E2 -_0803E4E8: - ldr r2, =gBattleMoves - ldr r0, =gUnknown_020241EC - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x6] - ands r5, r0 - cmp r5, 0 - beq _0803E568 - ldr r0, =gBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0803E548 - bl Random - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _0803E544 - movs r0, 0x1 - b _0803E55A - .pool -_0803E544: - movs r0, 0x3 - b _0803E55A -_0803E548: - bl Random - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _0803E558 - movs r0, 0 - b _0803E55A -_0803E558: - movs r0, 0x2 -_0803E55A: - bl GetBankByPlayerAI - ldr r1, =gBankTarget - strb r0, [r1] - b _0803E578 - .pool -_0803E568: - ldr r2, =gBankTarget - ldr r0, =gBankAttacker - ldrb r0, [r0] - ldr r1, =gBattleStruct - ldr r1, [r1] - adds r0, r1 - ldrb r0, [r0, 0xC] - strb r0, [r2] -_0803E578: - ldr r7, =gAbsentBankFlags - ldrb r0, [r7] - ldr r1, =gBitTable - mov r8, r1 - ldr r5, =gBankTarget - ldrb r1, [r5] - lsls r1, 2 - add r1, r8 - ldr r1, [r1] - ands r0, r1 - cmp r0, 0 - bne _0803E592 - b _0803E76A -_0803E592: - ldr r6, =gBankAttacker - ldrb r0, [r6] - bl GetBankSide - adds r4, r0, 0 - ldrb r0, [r5] - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - beq _0803E5C4 - ldrb r0, [r5] - b _0803E758 - .pool -_0803E5C4: - ldrb r0, [r6] - bl GetBankIdentity - movs r1, 0x1 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - strb r0, [r5] - ldrb r1, [r7] - ldrb r2, [r5] - lsls r0, r2, 2 - add r0, r8 - b _0803E74E -_0803E5E2: - ldr r4, =gActiveBank - ldr r0, =gTurnOrder - ldr r3, [sp] - adds r0, r3, r0 - ldrb r0, [r0] - strb r0, [r4] - ldrb r0, [r4] - ldr r2, =gBattleMons - movs r1, 0x58 - muls r1, r0 - adds r1, r2 - adds r1, 0x20 - ldrb r1, [r1] - bl RecordAbilityBattle - ldr r2, =gSpecialStatuses - ldrb r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r2, 0x2 - orrs r1, r2 - strb r1, [r0] - ldr r1, =gBankTarget - ldrb r0, [r4] - strb r0, [r1] - b _0803E76A - .pool -_0803E630: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r4, 0x1 - ands r0, r4 - cmp r0, 0 - beq _0803E6E0 - ldr r2, =gBattleMoves - ldr r0, =gUnknown_020241EC - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x6] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0803E6E0 - mov r5, r8 - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0803E684 - bl Random - adds r1, r4, 0 - ands r1, r0 - cmp r1, 0 - beq _0803E680 - movs r0, 0x1 - b _0803E696 - .pool -_0803E680: - movs r0, 0x3 - b _0803E696 -_0803E684: - bl Random - adds r1, r4, 0 - ands r1, r0 - cmp r1, 0 - beq _0803E694 - movs r0, 0 - b _0803E696 -_0803E694: - movs r0, 0x2 -_0803E696: - bl GetBankByPlayerAI - ldr r1, =gBankTarget - strb r0, [r1] - ldr r0, =gAbsentBankFlags - ldrb r1, [r0] - ldr r2, =gBitTable - ldr r5, =gBankTarget - ldrb r0, [r5] - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _0803E76A - ldr r0, =gBankAttacker - ldrb r0, [r0] - bl GetBankSide - adds r4, r0, 0 - ldrb r0, [r5] - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - beq _0803E76A - ldrb r0, [r5] - b _0803E758 - .pool -_0803E6E0: - ldr r5, =gBankTarget - mov r2, r8 - ldrb r0, [r2] - ldr r1, =gBattleStruct - ldr r1, [r1] - adds r0, r1 - ldrb r0, [r0, 0xC] - strb r0, [r5] - ldr r6, =gAbsentBankFlags - ldrb r1, [r6] - ldr r7, =gBitTable - ldrb r0, [r5] - lsls r0, 2 - adds r0, r7 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _0803E76A - ldrb r0, [r2] - bl GetBankSide - adds r4, r0, 0 - ldrb r0, [r5] - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - beq _0803E730 - ldrb r0, [r5] - b _0803E758 - .pool -_0803E730: - mov r1, r8 - ldrb r0, [r1] - bl GetBankIdentity - movs r1, 0x1 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - strb r0, [r5] - ldrb r1, [r6] - ldrb r2, [r5] - lsls r0, r2, 2 - adds r0, r7 -_0803E74E: - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _0803E76A - adds r0, r2, 0 -_0803E758: - bl GetBankIdentity - movs r1, 0x2 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - strb r0, [r5] -_0803E76A: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r2, 0x80 - lsls r2, 10 - ands r1, r2 - adds r5, r0, 0 - cmp r1, 0 - beq _0803E808 - ldr r0, =gProtectStructs - ldr r4, =gBankAttacker - ldrb r2, [r4] - lsls r1, r2, 4 - adds r1, r0 - ldrb r0, [r1, 0x2] - lsls r0, 27 - cmp r0, 0 - bge _0803E808 - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r2 - adds r0, r1 - ldrh r0, [r0, 0x28] - cmp r0, 0 - bne _0803E7B4 - ldr r1, =gFightStateTracker - movs r0, 0xC - b _0803E83C - .pool -_0803E7B4: - ldr r3, =gUnknown_02024230 - lsls r0, r2, 2 - adds r0, r3 - ldr r0, [r0] - cmp r0, 0 - beq _0803E7EC - ldr r1, =gBattleCommunication - movs r2, 0 - movs r0, 0x4 - strb r0, [r1, 0x5] - ldr r1, =gBattlescriptCurrInstr - ldrb r0, [r4] - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] - str r0, [r1] - ldrb r0, [r4] - lsls r0, 2 - adds r0, r3 - str r2, [r0] - b _0803E824 - .pool -_0803E7EC: - ldr r1, =gBattleCommunication - movs r0, 0x4 - strb r0, [r1, 0x5] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =BattleScript_MoveUsedLoafingAround - str r0, [r1] - b _0803E824 - .pool -_0803E808: - ldr r4, =gBattlescriptCurrInstr - ldr r3, =gUnknown_082D86A8 - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] - str r0, [r4] -_0803E824: - ldr r0, [r5] - movs r1, 0x80 - lsls r1, 11 - ands r0, r1 - cmp r0, 0 - beq _0803E838 - ldr r0, =gBankAttacker - ldrb r0, [r0] - bl sub_81A56E8 -_0803E838: - ldr r1, =gFightStateTracker - movs r0, 0xA -_0803E83C: - strb r0, [r1] - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803E0B8 - - thumb_func_start bs2_8016374 -bs2_8016374: @ 803E868 - push {r4,lr} - ldr r3, =gBankAttacker - ldr r1, =gTurnOrder - ldr r0, =gUnknown_02024082 - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r3] - ldr r0, =gUnknown_02022E14 - movs r2, 0 - strh r2, [r0] - ldr r0, =gUnknown_02022E16 - strh r2, [r0] - ldr r1, =gUnknown_020244AC - ldrb r0, [r3] - adds r0, r1 - strb r2, [r0] - ldr r1, =gUnknown_020244B0 - ldrb r0, [r3] - adds r0, r1 - strb r2, [r0] - ldr r2, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r2] - movs r0, 0x7 - strb r0, [r2, 0x1] - ldrb r4, [r3] - strb r4, [r2, 0x2] - ldrb r0, [r3] - ldr r1, =gBattleStruct - ldr r1, [r1] - adds r0, r1 - adds r0, 0x58 - ldrb r0, [r0] - strb r0, [r2, 0x3] - movs r0, 0xFF - strb r0, [r2, 0x4] - ldr r0, =gBattleScripting - strb r4, [r0, 0x17] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DAB15 - str r0, [r1] - ldr r1, =gFightStateTracker - movs r0, 0xA - strb r0, [r1] - ldr r1, =gBattleResults - ldrb r0, [r1, 0x2] - cmp r0, 0xFE - bhi _0803E8CE - adds r0, 0x1 - strb r0, [r1, 0x2] -_0803E8CE: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end bs2_8016374 - - thumb_func_start sub_803E90C -sub_803E90C: @ 803E90C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, =gBankAttacker - ldr r2, =gBankTarget - ldr r1, =gTurnOrder - ldr r0, =gUnknown_02024082 - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - strb r0, [r4] - ldr r0, =gUnknown_02022E14 - movs r1, 0 - strh r1, [r0] - ldr r0, =gUnknown_02022E16 - strh r1, [r0] - ldrb r0, [r4] - bl sub_8045868 - ldr r5, =gLastUsedItem - ldr r2, =gBattleBufferB - ldrb r1, [r4] - lsls r1, 9 - adds r0, r2, 0x1 - adds r0, r1, r0 - ldrb r3, [r0] - adds r2, 0x2 - adds r1, r2 - ldrb r0, [r1] - lsls r0, 8 - orrs r3, r0 - strh r3, [r5] - cmp r3, 0xC - bhi _0803E998 - ldr r2, =gBattlescriptCurrInstr - ldr r1, =gUnknown_082DBD08 - ldrh r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - str r0, [r2] - ldr r0, =gFightStateTracker - mov r10, r0 - b _0803EBF6 - .pool -_0803E998: - adds r0, r3, 0 - subs r0, 0x50 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _0803E9C0 - ldr r0, =gBattlescriptCurrInstr - ldr r1, =gUnknown_082DBD54 - ldr r1, [r1] - str r1, [r0] - ldr r1, =gFightStateTracker - mov r10, r1 - b _0803EBF6 - .pool -_0803E9C0: - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0803E9E8 - ldr r0, =gBattlescriptCurrInstr - ldr r1, =gUnknown_082DBD3C - ldr r1, [r1] - str r1, [r0] - ldr r2, =gFightStateTracker - mov r10, r2 - b _0803EBF6 - .pool -_0803E9E8: - ldr r3, =gBattleScripting - ldrb r0, [r4] - strb r0, [r3, 0x17] - lsls r0, 24 - lsrs r0, 25 - ldr r2, =gBattleStruct - ldr r1, [r2] - adds r0, r1 - adds r0, 0xC4 - ldrb r0, [r0] - subs r0, 0x1 - mov r8, r4 - ldr r1, =gBattlescriptCurrInstr - mov r9, r1 - ldr r6, =gUnknown_082DBD3C - mov r12, r3 - adds r7, r2, 0 - ldr r2, =gFightStateTracker - mov r10, r2 - cmp r0, 0x4 - bls _0803EA14 - b _0803EBDE -_0803EA14: - lsls r0, 2 - ldr r1, =_0803EA38 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0803EA38: - .4byte _0803EBDE - .4byte _0803EBDE - .4byte _0803EA4C - .4byte _0803EAE0 - .4byte _0803EBB0 -_0803EA4C: - ldr r5, =gBattleCommunication - movs r0, 0 - strb r0, [r5, 0x5] - ldr r2, =gBankAttacker - ldrb r0, [r2] - lsrs r0, 1 - ldr r1, [r7] - adds r0, r1 - adds r0, 0xC6 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - mov r8, r2 - cmp r0, 0 - beq _0803EA98 - movs r0, 0x3E - ands r0, r1 - ldr r1, =gBattlescriptCurrInstr - mov r9, r1 - ldr r6, =gUnknown_082DBD3C - ldr r2, =gFightStateTracker - mov r10, r2 - cmp r0, 0 - bne _0803EA7E - b _0803EBDE -_0803EA7E: - movs r0, 0x5 - strb r0, [r5, 0x5] - b _0803EBDE - .pool -_0803EA98: - ldr r0, =gBattlescriptCurrInstr - mov r9, r0 - ldr r6, =gUnknown_082DBD3C - ldr r1, =gFightStateTracker - mov r10, r1 - mov r4, r8 - adds r3, r7, 0 - adds r2, r5, 0 -_0803EAA8: - ldrb r1, [r4] - lsrs r1, 1 - ldr r0, [r3] - adds r1, r0 - adds r1, 0xC6 - ldrb r0, [r1] - lsrs r0, 1 - strb r0, [r1] - ldrb r0, [r2, 0x5] - adds r0, 0x1 - strb r0, [r2, 0x5] - ldrb r0, [r4] - lsrs r0, 1 - ldr r1, [r3] - adds r0, r1 - adds r0, 0xC6 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0803EAA8 - b _0803EBDE - .pool -_0803EAE0: - ldr r3, =gBattleCommunication - movs r0, 0x4 - strb r0, [r3, 0x5] - ldr r2, =gBankAttacker - ldrb r0, [r2] - lsrs r0, 1 - ldr r1, [r7] - adds r0, r1 - adds r6, r0, 0 - adds r6, 0xC6 - ldrb r1, [r6] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r5, r0, 24 - mov r8, r2 - cmp r5, 0 - beq _0803EB28 - movs r0, 0x5 - strb r0, [r3, 0x5] - ldr r2, =gBattlescriptCurrInstr - mov r9, r2 - ldr r6, =gUnknown_082DBD3C - ldr r0, =gFightStateTracker - mov r10, r0 - b _0803EBDE - .pool -_0803EB28: - ldr r3, =gBattleTextBuff1 - movs r4, 0xFD - strb r4, [r3] - movs r0, 0x5 - strb r0, [r3, 0x1] - movs r2, 0x1 - strb r2, [r3, 0x2] - movs r0, 0xFF - strb r0, [r3, 0x3] - ldr r1, =gBattleTextBuff2 - strb r4, [r1] - strb r5, [r1, 0x1] - movs r0, 0xD2 - strb r0, [r1, 0x2] - strb r5, [r1, 0x3] - subs r0, 0xD3 - strb r0, [r1, 0x4] - ldrb r0, [r6] - ands r2, r0 - ldr r1, =gBattlescriptCurrInstr - mov r9, r1 - ldr r6, =gUnknown_082DBD3C - ldr r0, =gFightStateTracker - mov r10, r0 - cmp r2, 0 - bne _0803EB8C - mov r5, r8 - adds r4, r7, 0 - adds r2, r3, 0 -_0803EB62: - ldrb r1, [r5] - lsrs r1, 1 - ldr r0, [r4] - adds r1, r0 - adds r1, 0xC6 - ldrb r0, [r1] - lsrs r0, 1 - strb r0, [r1] - ldrb r0, [r2, 0x2] - adds r0, 0x1 - strb r0, [r2, 0x2] - ldrb r0, [r5] - lsrs r0, 1 - ldr r1, [r4] - adds r0, r1 - adds r0, 0xC6 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0803EB62 -_0803EB8C: - ldrb r0, [r3, 0x2] - adds r0, 0xE - movs r1, 0 - mov r2, r12 - strb r0, [r2, 0x10] - strb r1, [r2, 0x11] - b _0803EBDE - .pool -_0803EBB0: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x1 - ands r1, r0 - cmp r1, 0 - beq _0803EBCC - ldr r1, =gBattleCommunication - movs r0, 0x2 - strb r0, [r1, 0x5] - b _0803EBD0 - .pool -_0803EBCC: - ldr r0, =gBattleCommunication - strb r1, [r0, 0x5] -_0803EBD0: - ldr r0, =gBankAttacker - mov r8, r0 - ldr r1, =gBattlescriptCurrInstr - mov r9, r1 - ldr r6, =gUnknown_082DBD3C - ldr r2, =gFightStateTracker - mov r10, r2 -_0803EBDE: - mov r1, r8 - ldrb r0, [r1] - lsrs r0, 1 - ldr r1, [r7] - adds r0, r1 - adds r0, 0xC4 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r6 - ldr r0, [r0] - mov r2, r9 - str r0, [r2] -_0803EBF6: - movs r0, 0xA - mov r1, r10 - strb r0, [r1] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803E90C - - thumb_func_start sub_803EC20 -sub_803EC20: @ 803EC20 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r5, r0, 24 - movs r7, 0 - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r5 - adds r1, r0, r1 - ldrh r0, [r1, 0x2E] - cmp r0, 0xAF - bne _0803EC54 - ldr r1, =gEnigmaBerries - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0, 0x7] - b _0803EC5E - .pool -_0803EC54: - ldrh r0, [r1, 0x2E] - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r1, r0, 24 -_0803EC5E: - ldr r0, =gStringBank - strb r5, [r0] - cmp r1, 0x25 - bne _0803EC9C - ldr r2, =gLastUsedItem - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r5 - adds r0, r1 - ldrh r0, [r0, 0x2E] - strh r0, [r2] - ldr r0, =gProtectStructs - lsls r2, r5, 4 - adds r2, r0 - ldrb r1, [r2, 0x1] - movs r0, 0x19 - negs r0, r0 - ands r0, r1 - movs r1, 0x8 - orrs r0, r1 - strb r0, [r2, 0x1] - b _0803ED70 - .pool -_0803EC9C: - ldr r0, =gBattleMons - mov r10, r0 - movs r2, 0x58 - mov r9, r2 - mov r0, r9 - muls r0, r5 - add r0, r10 - mov r8, r0 - adds r0, 0x20 - ldrb r6, [r0] - cmp r6, 0x32 - bne _0803ED5C - bl InBattlePyramid - lsls r0, 24 - cmp r0, 0 - beq _0803ED38 - ldr r4, =gBattleStruct - ldr r1, [r4] - adds r1, 0x6C - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - bl sub_81A9E28 - lsls r0, 24 - lsrs r1, r0, 24 - mov r2, r8 - ldrh r0, [r2, 0x6] - muls r0, r1 - movs r2, 0x1 - adds r1, r5, 0 - eors r1, r2 - mov r2, r9 - muls r2, r1 - adds r1, r2, 0 - add r1, r10 - ldrh r1, [r1, 0x6] - bl __divsi3 - ldr r1, [r4] - adds r1, 0x6C - ldrb r2, [r1] - lsls r1, r2, 4 - subs r1, r2 - lsls r1, 1 - adds r0, r1 - lsls r0, 24 - lsrs r4, r0, 24 - bl Random - movs r1, 0xFF - ands r1, r0 - cmp r4, r1 - bhi _0803ED0C - b _0803EE12 -_0803ED0C: - ldr r0, =gLastUsedAbility - strb r6, [r0] - ldr r0, =gProtectStructs - lsls r2, r5, 4 - adds r2, r0 - ldrb r1, [r2, 0x1] - movs r0, 0x19 - negs r0, r0 - ands r0, r1 - movs r1, 0x10 - orrs r0, r1 - strb r0, [r2, 0x1] - b _0803ED70 - .pool -_0803ED38: - ldr r0, =gLastUsedAbility - strb r6, [r0] - ldr r0, =gProtectStructs - lsls r2, r5, 4 - adds r2, r0 - ldrb r1, [r2, 0x1] - movs r0, 0x19 - negs r0, r0 - ands r0, r1 - movs r1, 0x10 - orrs r0, r1 - strb r0, [r2, 0x1] - b _0803ED70 - .pool -_0803ED5C: - ldr r1, =gBattleTypeFlags - ldr r2, [r1] - ldr r0, =0x043f0100 - ands r0, r2 - cmp r0, 0 - beq _0803ED80 - movs r0, 0x8 - ands r2, r0 - cmp r2, 0 - beq _0803ED80 -_0803ED70: - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - b _0803EE12 - .pool -_0803ED80: - ldr r0, [r1] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0803EE06 - bl InBattlePyramid - lsls r0, 24 - cmp r0, 0 - beq _0803EDBC - bl sub_81A9E28 - lsls r0, 24 - lsrs r1, r0, 24 - ldr r4, =gBattleMons - movs r3, 0x58 - adds r0, r5, 0 - muls r0, r3 - adds r0, r4 - ldrh r0, [r0, 0x6] - muls r0, r1 - movs r2, 0x1 - adds r1, r5, 0 - eors r1, r2 - muls r1, r3 - adds r1, r4 - b _0803EDDA - .pool -_0803EDBC: - ldr r3, =gBattleMons - movs r2, 0x58 - adds r0, r5, 0 - muls r0, r2 - adds r4, r0, r3 - movs r1, 0x1 - adds r0, r5, 0 - eors r0, r1 - muls r0, r2 - adds r1, r0, r3 - ldrh r0, [r4, 0x6] - ldrh r2, [r1, 0x6] - cmp r0, r2 - bcs _0803EE00 - lsls r0, 7 -_0803EDDA: - ldrh r1, [r1, 0x6] - bl __divsi3 - ldr r1, =gBattleStruct - ldr r1, [r1] - adds r1, 0x6C - ldrb r2, [r1] - lsls r1, r2, 4 - subs r1, r2 - lsls r1, 1 - adds r0, r1 - lsls r0, 24 - lsrs r4, r0, 24 - bl Random - movs r1, 0xFF - ands r1, r0 - cmp r4, r1 - bls _0803EE06 -_0803EE00: - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 -_0803EE06: - ldr r0, =gBattleStruct - ldr r1, [r0] - adds r1, 0x6C - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_0803EE12: - cmp r7, 0 - beq _0803EE24 - ldr r1, =gUnknown_02024082 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - strb r0, [r1] - ldr r1, =gBattleOutcome - movs r0, 0x4 - strb r0, [r1] -_0803EE24: - adds r0, r7, 0 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_803EC20 - - thumb_func_start sub_803EE48 -sub_803EE48: @ 803EE48 - push {r4-r6,lr} - ldr r4, =gBankAttacker - ldr r1, =gTurnOrder - ldr r5, =gUnknown_02024082 - ldrb r0, [r5] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r4] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x02000002 - ands r0, r1 - cmp r0, 0 - beq _0803EF0C - ldr r0, =gNoOfAllBanks - ldrb r1, [r0] - strb r1, [r5] - ldr r2, =gActiveBank - movs r0, 0 - strb r0, [r2] - lsls r1, 24 - cmp r1, 0 - beq _0803EEE0 - adds r4, r2, 0 - ldr r6, =gUnknown_0202421C - ldr r5, =gBattleOutcome -_0803EE7C: - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0803EEBC - ldrb r0, [r4] - adds r0, r6 - ldrb r0, [r0] - cmp r0, 0x3 - bne _0803EECE - ldrb r0, [r5] - movs r1, 0x2 - b _0803EECA - .pool -_0803EEBC: - ldrb r0, [r4] - adds r0, r6 - ldrb r0, [r0] - cmp r0, 0x3 - bne _0803EECE - ldrb r0, [r5] - movs r1, 0x1 -_0803EECA: - orrs r0, r1 - strb r0, [r5] -_0803EECE: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _0803EE7C -_0803EEE0: - ldr r2, =gBattleOutcome - ldrb r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2] - ldr r0, =gSaveBlock2Ptr - ldr r1, [r0] - ldr r0, =0x00000ca9 - adds r1, r0 - ldrb r0, [r1] - movs r2, 0x8 - orrs r0, r2 - b _0803EF96 - .pool -_0803EF0C: - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0803EF4C - ldrb r0, [r4] - bl sub_803EC20 - lsls r0, 24 - cmp r0, 0 - bne _0803EF98 - ldrb r0, [r4] - bl sub_8045868 - ldr r1, =gBattleCommunication - movs r0, 0x3 - strb r0, [r1, 0x5] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DAB02 - str r0, [r1] - ldr r1, =gFightStateTracker - movs r0, 0xA - b _0803EF96 - .pool -_0803EF4C: - ldr r1, =gBattleMons - ldrb r2, [r4] - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x0400e000 - ands r0, r1 - cmp r0, 0 - beq _0803EF8C - ldr r1, =gBattleCommunication - movs r0, 0x4 - strb r0, [r1, 0x5] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DAB02 - str r0, [r1] - ldr r1, =gFightStateTracker - movs r0, 0xA - b _0803EF96 - .pool -_0803EF8C: - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - strb r0, [r5] - ldr r1, =gBattleOutcome - movs r0, 0x6 -_0803EF96: - strb r0, [r1] -_0803EF98: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803EE48 - - thumb_func_start sub_803EFA8 -sub_803EFA8: @ 803EFA8 - ldr r2, =gBankAttacker - ldr r1, =gTurnOrder - ldr r0, =gUnknown_02024082 - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - ldr r0, =gUnknown_02022E14 - movs r1, 0 - strh r1, [r0] - ldr r0, =gUnknown_02022E16 - strh r1, [r0] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DBD58 - ldr r0, [r0] - str r0, [r1] - ldr r1, =gFightStateTracker - movs r0, 0xA - strb r0, [r1] - bx lr - .pool - thumb_func_end sub_803EFA8 - - thumb_func_start bs5_8016AC0 -bs5_8016AC0: @ 803EFF0 - ldr r2, =gBankAttacker - ldr r1, =gTurnOrder - ldr r0, =gUnknown_02024082 - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - ldr r0, =gUnknown_02022E14 - movs r1, 0 - strh r1, [r0] - ldr r0, =gUnknown_02022E16 - strh r1, [r0] - ldr r1, =gNumSafariBalls - ldrb r0, [r1] - subs r0, 0x1 - strb r0, [r1] - ldr r1, =gLastUsedItem - movs r0, 0x5 - strh r0, [r1] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DBD08 - ldr r0, [r0, 0x14] - str r0, [r1] - ldr r1, =gFightStateTracker - movs r0, 0xA - strb r0, [r1] - bx lr - .pool - thumb_func_end bs5_8016AC0 - - thumb_func_start sub_803F050 -sub_803F050: @ 803F050 - push {r4-r6,lr} - ldr r3, =gBankAttacker - ldr r1, =gTurnOrder - ldr r0, =gUnknown_02024082 - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r3] - ldr r0, =gUnknown_02022E14 - movs r1, 0 - strh r1, [r0] - ldr r0, =gUnknown_02022E16 - strh r1, [r0] - ldr r6, =gBattleCommunication - ldr r2, =gBattleBufferB - ldrb r0, [r3] - lsls r0, 9 - adds r1, r2, 0x1 - adds r0, r1 - ldrb r0, [r0] - subs r0, 0x1 - strb r0, [r6, 0x5] - ldr r1, =gLastUsedItem - ldrb r0, [r3] - lsls r0, 9 - adds r2, 0x2 - adds r0, r2 - ldrb r0, [r0] - strh r0, [r1] - ldr r1, =gBattleResults - ldrb r0, [r1, 0x1F] - cmp r0, 0xFE - bhi _0803F096 - adds r0, 0x1 - strb r0, [r1, 0x1F] -_0803F096: - ldr r2, =gBattleStruct - ldr r0, [r2] - adds r1, r0, 0 - adds r1, 0x7A - ldrb r0, [r1] - cmp r0, 0x2 - bhi _0803F0A8 - adds r0, 0x1 - strb r0, [r1] -_0803F0A8: - ldr r0, [r2] - adds r3, r0, 0 - adds r3, 0x7B - ldrb r5, [r3] - adds r4, r5, 0 - cmp r4, 0x1 - bls _0803F100 - ldr r2, =gUnknown_0831BCE0 - adds r0, 0x7A - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - ldrb r6, [r6, 0x5] - adds r0, r6 - adds r0, r2 - ldrb r0, [r0] - cmp r4, r0 - bcs _0803F0FC - movs r0, 0x1 - b _0803F0FE - .pool -_0803F0FC: - subs r0, r5, r0 -_0803F0FE: - strb r0, [r3] -_0803F100: - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DBD58 - ldr r0, [r0, 0x8] - str r0, [r1] - ldr r1, =gFightStateTracker - movs r0, 0xA - strb r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803F050 - - thumb_func_start sub_803F120 -sub_803F120: @ 803F120 - push {r4,lr} - ldr r2, =gBankAttacker - ldr r1, =gTurnOrder - ldr r0, =gUnknown_02024082 - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - ldr r0, =gUnknown_02022E14 - movs r4, 0 - strh r4, [r0] - ldr r0, =gUnknown_02022E16 - strh r4, [r0] - ldr r3, =gBattleStruct - ldr r0, [r3] - adds r2, r0, 0 - adds r2, 0x7C - ldr r1, =gUnknown_0831BCEF - adds r0, 0x79 - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - ldrb r1, [r2] - adds r0, r1 - strb r0, [r2] - ldr r0, [r3] - adds r1, r0, 0 - adds r1, 0x7C - ldrb r0, [r1] - cmp r0, 0x14 - bls _0803F162 - movs r0, 0x14 - strb r0, [r1] -_0803F162: - ldr r0, [r3] - adds r2, r0, 0 - adds r2, 0x7B - ldr r1, =gUnknown_0831BCF3 - adds r0, 0x79 - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - ldrb r1, [r2] - adds r0, r1 - strb r0, [r2] - ldr r0, [r3] - adds r1, r0, 0 - adds r1, 0x7B - ldrb r0, [r1] - cmp r0, 0x14 - bls _0803F188 - movs r0, 0x14 - strb r0, [r1] -_0803F188: - ldr r0, [r3] - adds r1, r0, 0 - adds r1, 0x79 - ldrb r0, [r1] - cmp r0, 0x2 - bhi _0803F1C4 - adds r0, 0x1 - strb r0, [r1] - ldr r0, =gBattleCommunication - strb r4, [r0, 0x5] - b _0803F1CA - .pool -_0803F1C4: - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x5] -_0803F1CA: - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DBD58 - ldr r0, [r0, 0x4] - str r0, [r1] - ldr r1, =gFightStateTracker - movs r0, 0xA - strb r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803F120 - - thumb_func_start bs8_exit_by_flight -bs8_exit_by_flight: @ 803F1F0 - push {r4,lr} - ldr r2, =gBankAttacker - ldr r1, =gTurnOrder - ldr r4, =gUnknown_02024082 - ldrb r0, [r4] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - movs r0, 0x11 - bl PlaySE - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - strb r0, [r4] - ldr r1, =gBattleOutcome - movs r0, 0x4 - strb r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end bs8_exit_by_flight - - thumb_func_start bs9_8016C9C -bs9_8016C9C: @ 803F22C - ldr r3, =gBankAttacker - ldr r1, =gTurnOrder - ldr r0, =gUnknown_02024082 - ldrb r0, [r0] - adds r0, r1 - ldrb r2, [r0] - strb r2, [r3] - ldr r0, =gUnknown_02022E14 - movs r1, 0 - strh r1, [r0] - ldr r0, =gUnknown_02022E16 - strh r1, [r0] - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x7 - strb r0, [r1, 0x1] - strb r2, [r1, 0x2] - ldr r2, =gBattlePartyID - ldrb r0, [r3] - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DBD58 - ldr r0, [r0, 0xC] - str r0, [r1] - ldr r1, =gFightStateTracker - movs r0, 0xA - strb r0, [r1] - ldr r1, =gUnknown_0202407A - movs r0, 0xC - strb r0, [r1, 0x1] - bx lr - .pool - thumb_func_end bs9_8016C9C - - thumb_func_start bsB_exit_by_move -bsB_exit_by_move: @ 803F2A4 - push {lr} - bl sub_8041728 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0803F2C0 - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x4D - strb r1, [r0] - ldr r1, =gFightStateTracker - movs r0, 0xC - strb r0, [r1] -_0803F2C0: - pop {r0} - bx r0 - .pool - thumb_func_end bsB_exit_by_move - - thumb_func_start bsD_proceed -bsD_proceed: @ 803F2CC - ldr r1, =gUnknown_02024082 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r3, =gFightStateTracker - ldr r2, =gUnknown_0202407A - ldrb r0, [r1] - adds r0, r2 - ldrb r0, [r0] - strb r0, [r3] - ldr r2, =gHitMarker - ldr r0, [r2] - ldr r1, =0xf1e892af - ands r0, r1 - str r0, [r2] - bx lr - .pool - thumb_func_end bsD_proceed - - thumb_func_start bsC_8016D70 -bsC_8016D70: @ 803F300 - push {r4-r6,lr} - ldr r1, =gTurnOrder - ldr r2, =gUnknown_02024082 - ldrb r0, [r2] - adds r0, r1 - ldrb r0, [r0] - ldr r6, =gBattleStruct - ldr r1, [r6] - adds r0, r1 - adds r0, 0x5C - movs r1, 0x6 - strb r1, [r0] - ldrb r0, [r2] - adds r0, 0x1 - strb r0, [r2] - ldr r3, =gFightStateTracker - ldr r1, =gUnknown_0202407A - ldrb r0, [r2] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r3] - bl sub_803D6A0 - ldr r2, =gHitMarker - ldr r0, [r2] - ldr r1, =0xf1e892af - ands r0, r1 - str r0, [r2] - ldr r0, =gCurrentMove - movs r1, 0 - strh r1, [r0] - ldr r0, =gBattleMoveDamage - movs r4, 0 - str r4, [r0] - ldr r0, =gBattleMoveFlags - strb r1, [r0] - ldr r5, =gBattleScripting - strb r1, [r5, 0x18] - strb r1, [r5, 0x19] - ldr r2, =gUnknown_02024250 - ldr r3, =gBankAttacker - ldrb r0, [r3] - lsls r0, 1 - adds r0, r2 - strh r4, [r0] - ldr r2, =gUnknown_02024258 - ldrb r0, [r3] - lsls r0, 1 - adds r0, r2 - strh r4, [r0] - ldr r0, [r6] - strb r1, [r0, 0x13] - ldr r0, =gDynamicBasePower - strh r4, [r0] - strb r1, [r5, 0x14] - ldr r0, =gBattleCommunication - strb r1, [r0, 0x3] - strb r1, [r0, 0x4] - strb r1, [r5, 0x16] - ldr r0, =gBattleResources - ldr r0, [r0] - ldr r0, [r0, 0x8] - adds r0, 0x20 - strb r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end bsC_8016D70 - - thumb_func_start get_battle_side_of_something -get_battle_side_of_something: @ 803F3CC - push {lr} - lsls r0, 24 - lsrs r1, r0, 24 - movs r0, 0 - cmp r1, 0xE - bhi _0803F47A - lsls r0, r1, 2 - ldr r1, =_0803F3E8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0803F3E8: - .4byte _0803F424 - .4byte _0803F430 - .4byte _0803F43C - .4byte _0803F458 - .4byte _0803F464 - .4byte _0803F458 - .4byte _0803F464 - .4byte _0803F448 - .4byte _0803F464 - .4byte _0803F464 - .4byte _0803F44C - .4byte _0803F464 - .4byte _0803F468 - .4byte _0803F46C - .4byte _0803F470 -_0803F424: - ldr r0, =gBankTarget - ldrb r0, [r0] - b _0803F47A - .pool -_0803F430: - ldr r0, =gBankAttacker - ldrb r0, [r0] - b _0803F47A - .pool -_0803F43C: - ldr r0, =gEffectBank - ldrb r0, [r0] - b _0803F47A - .pool -_0803F448: - movs r0, 0 - b _0803F47A -_0803F44C: - ldr r0, =gBattleScripting - ldrb r0, [r0, 0x17] - b _0803F47A - .pool -_0803F458: - ldr r0, =gBank1 - ldrb r0, [r0] - b _0803F47A - .pool -_0803F464: - movs r0, 0 - b _0803F472 -_0803F468: - movs r0, 0x1 - b _0803F472 -_0803F46C: - movs r0, 0x2 - b _0803F472 -_0803F470: - movs r0, 0x3 -_0803F472: - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 -_0803F47A: - pop {r1} - bx r1 - thumb_func_end get_battle_side_of_something - - thumb_func_start sub_803F480 -sub_803F480: @ 803F480 - push {r4-r7,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - lsls r2, 16 - lsrs r2, 16 - ldr r1, =gBattleMons - movs r4, 0x58 - muls r0, r4 - adds r0, r1 - adds r0, 0x20 - ldrb r0, [r0] - mov r12, r1 - cmp r0, 0x2E - bne _0803F532 - movs r3, 0 - adds r0, r5, 0 - muls r0, r4 - adds r1, 0xC - adds r1, r0, r1 - b _0803F4BC - .pool -_0803F4B4: - adds r1, 0x2 - adds r3, 0x1 - cmp r3, 0x3 - bgt _0803F4C2 -_0803F4BC: - ldrh r0, [r1] - cmp r0, r2 - bne _0803F4B4 -_0803F4C2: - cmp r3, 0x4 - beq _0803F532 - movs r7, 0x58 - adds r2, r5, 0 - muls r2, r7 - adds r0, r3, r2 - mov r6, r12 - adds r6, 0x24 - adds r1, r0, r6 - ldrb r0, [r1] - cmp r0, 0 - beq _0803F4DE - subs r0, 0x1 - strb r0, [r1] -_0803F4DE: - mov r0, r12 - adds r0, 0x50 - adds r0, r2, r0 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 14 - ands r0, r1 - cmp r0, 0 - bne _0803F532 - ldr r1, =gDisableStructs - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0, 0x18] - lsrs r1, 4 - ldr r2, =gBitTable - lsls r0, r3, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _0803F532 - ldr r4, =gActiveBank - strb r5, [r4] - adds r1, r3, 0 - adds r1, 0x9 - lsls r1, 24 - lsrs r1, 24 - ldrb r0, [r4] - muls r0, r7 - adds r0, r6 - adds r0, r3 - str r0, [sp] - movs r0, 0 - movs r2, 0 - movs r3, 0x1 - bl EmitSetAttributes - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0803F532: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803F480 - - thumb_func_start sub_803F548 -sub_803F548: @ 803F548 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r5, r0, 24 - movs r0, 0x4 - mov r8, r0 - adds r0, r5, 0 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - movs r4, 0 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r4, r0 - bge _0803F5F0 - ldr r1, =gBattleMons - movs r0, 0x58 - adds r7, r5, 0 - muls r7, r0 - adds r1, 0xC - mov r10, r1 -_0803F57E: - lsls r0, r4, 24 - lsrs r0, 24 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - adds r6, r4, 0x1 - cmp r9, r0 - beq _0803F5E6 - ldr r0, =gBattleMons - movs r3, 0x58 - adds r1, r4, 0 - muls r1, r3 - adds r1, r0 - adds r1, 0x20 - ldrb r1, [r1] - adds r4, r0, 0 - cmp r1, 0x2E - bne _0803F5E6 - movs r2, 0 - adds r0, r5, 0 - muls r0, r3 - adds r1, r4, 0 - adds r1, 0xC - adds r0, r1 - ldrh r0, [r0] - movs r1, 0x8F - lsls r1, 1 - cmp r0, r1 - beq _0803F5CE - adds r3, r1, 0 - mov r0, r10 - adds r1, r7, r0 -_0803F5C0: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, 0x3 - bgt _0803F5CE - ldrh r0, [r1] - cmp r0, r3 - bne _0803F5C0 -_0803F5CE: - cmp r2, 0x4 - beq _0803F5E6 - mov r8, r2 - adds r1, r2, r7 - adds r0, r4, 0 - adds r0, 0x24 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _0803F5E6 - subs r0, 0x1 - strb r0, [r1] -_0803F5E6: - adds r4, r6, 0 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r4, r0 - blt _0803F57E -_0803F5F0: - mov r1, r8 - cmp r1, 0x4 - beq _0803F658 - ldr r6, =gBattleMons - movs r3, 0x58 - adds r0, r5, 0 - muls r0, r3 - adds r1, r6, 0 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 14 - ands r0, r1 - cmp r0, 0 - bne _0803F658 - ldr r1, =gDisableStructs - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0, 0x18] - lsrs r1, 4 - ldr r2, =gBitTable - mov r4, r8 - lsls r0, r4, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _0803F658 - ldr r4, =gActiveBank - strb r5, [r4] - mov r1, r8 - adds r1, 0x9 - lsls r1, 24 - lsrs r1, 24 - ldrb r0, [r4] - muls r0, r3 - adds r2, r6, 0 - adds r2, 0x24 - adds r0, r2 - add r0, r8 - str r0, [sp] - movs r0, 0 - movs r2, 0 - movs r3, 0x1 - bl EmitSetAttributes - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0803F658: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803F548 - - thumb_func_start sub_803F67C -sub_803F67C: @ 803F67C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r3, r0, 24 - movs r6, 0x4 - movs r1, 0 - ldr r0, =gNoOfAllBanks - mov r8, r0 - ldrb r0, [r0] - cmp r1, r0 - bge _0803F6FE - ldr r7, =gBattleMons - movs r2, 0x58 - mov r12, r2 - mov r5, r12 - muls r5, r3 - adds r0, r7, 0 - adds r0, 0xC - adds r2, r5, r0 - mov r10, r2 - mov r9, r5 -_0803F6AE: - mov r0, r12 - muls r0, r1 - adds r0, r7 - adds r0, 0x20 - ldrb r0, [r0] - adds r4, r1, 0x1 - cmp r0, 0x2E - bne _0803F6F4 - cmp r1, r3 - beq _0803F6F4 - movs r2, 0 - mov r1, r10 - ldrh r0, [r1] - cmp r0, 0xC3 - beq _0803F6DE - ldr r1, =gBattleMons + 0xC - add r1, r9 -_0803F6D0: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, 0x3 - bgt _0803F6DE - ldrh r0, [r1] - cmp r0, 0xC3 - bne _0803F6D0 -_0803F6DE: - cmp r2, 0x4 - beq _0803F6F4 - adds r6, r2, 0 - adds r0, r6, r5 - ldr r2, =gBattleMons + 0x24 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0 - beq _0803F6F4 - subs r0, 0x1 - strb r0, [r1] -_0803F6F4: - adds r1, r4, 0 - mov r0, r8 - ldrb r0, [r0] - cmp r1, r0 - blt _0803F6AE -_0803F6FE: - cmp r6, 0x4 - beq _0803F762 - ldr r7, =gBattleMons - movs r5, 0x58 - adds r0, r3, 0 - muls r0, r5 - adds r1, r7, 0 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 14 - ands r0, r1 - cmp r0, 0 - bne _0803F762 - ldr r1, =gDisableStructs - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0, 0x18] - lsrs r1, 4 - ldr r2, =gBitTable - lsls r0, r6, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _0803F762 - ldr r4, =gActiveBank - strb r3, [r4] - adds r1, r6, 0 - adds r1, 0x9 - lsls r1, 24 - lsrs r1, 24 - ldrb r0, [r4] - muls r0, r5 - adds r2, r7, 0 - adds r2, 0x24 - adds r0, r2 - adds r0, r6 - str r0, [sp] - movs r0, 0 - movs r2, 0 - movs r3, 0x1 - bl EmitSetAttributes - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0803F762: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803F67C - - thumb_func_start sub_803F790 -sub_803F790: @ 803F790 - push {r4,r5,lr} - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0803F7D0 - movs r2, 0 - ldr r4, =gNoOfAllBanks - ldrb r0, [r4] - cmp r2, r0 - bge _0803F7EE - ldr r3, =gBattleExecBuffer - ldr r5, =gBitTable -_0803F7AC: - ldm r5!, {r1} - lsls r1, 28 - ldr r0, [r3] - orrs r0, r1 - str r0, [r3] - adds r2, 0x1 - ldrb r0, [r4] - cmp r2, r0 - blt _0803F7AC - b _0803F7EE - .pool -_0803F7D0: - movs r2, 0 - ldr r4, =gNoOfAllBanks - ldrb r0, [r4] - cmp r2, r0 - bge _0803F7EE - ldr r3, =gBattleExecBuffer - ldr r5, =gBitTable -_0803F7DE: - ldr r0, [r3] - ldm r5!, {r1} - orrs r0, r1 - str r0, [r3] - adds r2, 0x1 - ldrb r0, [r4] - cmp r2, r0 - blt _0803F7DE -_0803F7EE: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803F790 - - thumb_func_start MarkBufferBankForExecution -MarkBufferBankForExecution: @ 803F800 - push {lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0803F834 - ldr r2, =gBattleExecBuffer - ldr r1, =gBitTable - lsls r0, r3, 2 - adds r0, r1 - ldr r1, [r0] - lsls r1, 28 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] - b _0803F844 - .pool -_0803F834: - ldr r2, =gBattleExecBuffer - ldr r1, =gBitTable - lsls r0, r3, 2 - adds r0, r1 - ldr r1, [r2] - ldr r0, [r0] - orrs r1, r0 - str r1, [r2] -_0803F844: - pop {r0} - bx r0 - .pool - thumb_func_end MarkBufferBankForExecution - - thumb_func_start sub_803F850 -sub_803F850: @ 803F850 - push {r4-r7,lr} - lsls r0, 24 - lsrs r7, r0, 24 - movs r4, 0 - ldr r5, =gBattleExecBuffer - ldr r1, =gBitTable - lsls r0, r7, 2 - adds r6, r0, r1 - b _0803F87A - .pool -_0803F86C: - lsls r0, r4, 2 - ldr r1, [r6] - lsls r1, r0 - ldr r0, [r5] - orrs r0, r1 - str r0, [r5] - adds r4, 0x1 -_0803F87A: - bl sub_8009FCC - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - blt _0803F86C - ldr r2, =gBattleExecBuffer - movs r1, 0x80 - lsls r1, 21 - lsls r1, r7 - ldr r0, [r2] - bics r0, r1 - str r0, [r2] - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803F850 - - thumb_func_start CancelMultiTurnMoves -CancelMultiTurnMoves: @ 803F8A0 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gBattleMons - movs r2, 0x58 - adds r3, r0, 0 - muls r3, r2 - adds r1, 0x50 - adds r3, r1 - ldr r1, [r3] - ldr r2, =0xffffefff - ands r1, r2 - ldr r2, =0xfffff3ff - ands r1, r2 - movs r2, 0x71 - negs r2, r2 - ands r1, r2 - ldr r2, =0xfffffcff - ands r1, r2 - str r1, [r3] - ldr r1, =gStatuses3 - lsls r2, r0, 2 - adds r2, r1 - ldr r1, [r2] - ldr r3, =0xfffbff3f - ands r1, r3 - str r1, [r2] - ldr r2, =gDisableStructs - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r2, [r1, 0x11] - movs r0, 0x10 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x11] - movs r0, 0 - strb r0, [r1, 0x10] - bx lr - .pool - thumb_func_end CancelMultiTurnMoves - - thumb_func_start sub_803F90C -sub_803F90C: @ 803F90C - push {lr} - lsls r0, 24 - ldr r1, =gProtectStructs - lsrs r0, 20 - adds r1, r0, r1 - ldrb r0, [r1] - lsrs r0, 7 - cmp r0, 0 - bne _0803F952 - ldrb r2, [r1, 0x1] - lsls r0, r2, 30 - cmp r0, 0 - blt _0803F952 - lsls r0, r2, 26 - cmp r0, 0 - blt _0803F952 - lsls r0, r2, 25 - cmp r0, 0 - blt _0803F952 - lsrs r0, r2, 7 - cmp r0, 0 - bne _0803F952 - ldrb r1, [r1, 0x2] - lsls r0, r1, 31 - cmp r0, 0 - bne _0803F952 - lsls r0, r1, 30 - cmp r0, 0 - blt _0803F952 - lsls r0, r1, 29 - cmp r0, 0 - blt _0803F952 - lsls r0, r2, 31 - cmp r0, 0 - beq _0803F95C -_0803F952: - movs r0, 0x1 - b _0803F95E - .pool -_0803F95C: - movs r0, 0 -_0803F95E: - pop {r1} - bx r1 - thumb_func_end sub_803F90C - - thumb_func_start b_std_message -b_std_message: @ 803F964 - push {r4,lr} - adds r2, r0, 0 - lsls r2, 16 - lsrs r2, 16 - ldr r4, =gActiveBank - strb r1, [r4] - movs r0, 0 - adds r1, r2, 0 - bl dp01_build_cmdbuf_x10_TODO - ldrb r0, [r4] - bl MarkBufferBankForExecution - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end b_std_message - - thumb_func_start sub_803F988 -sub_803F988: @ 803F988 - push {r4-r6,lr} - movs r3, 0 - ldr r0, =gUnknown_020243FE - strb r3, [r0] - strb r3, [r0, 0x1] - movs r1, 0 - ldr r0, =gNoOfAllBanks - ldrb r2, [r0] - adds r6, r0, 0 - cmp r1, r2 - bge _0803F9B6 - ldr r5, =gBitTable - adds r4, r2, 0 - ldr r2, =gBattlePartyID -_0803F9A4: - ldrh r0, [r2] - lsls r0, 2 - adds r0, r5 - ldr r0, [r0] - orrs r3, r0 - adds r2, 0x4 - adds r1, 0x2 - cmp r1, r4 - blt _0803F9A4 -_0803F9B6: - movs r1, 0x1 - adds r2, r6, 0 - ldrb r0, [r2] - cmp r1, r0 - bge _0803F9D6 - ldr r5, =gUnknown_020243FE - movs r4, 0x2 -_0803F9C4: - adds r0, r1, 0 - ands r0, r4 - asrs r0, 1 - adds r0, r5 - strb r3, [r0] - adds r1, 0x2 - ldrb r0, [r2] - cmp r1, r0 - blt _0803F9C4 -_0803F9D6: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803F988 - - thumb_func_start sub_803F9EC -sub_803F9EC: @ 803F9EC - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - adds r0, r5, 0 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0803FA50 - movs r0, 0x2 - ands r0, r5 - lsls r0, 24 - lsrs r0, 25 - mov r12, r0 - ldr r1, =gUnknown_020243FE - adds r0, r1 - strb r4, [r0] - adds r5, r4, 0 - ldr r0, =gNoOfAllBanks - ldrb r2, [r0] - mov r8, r1 - cmp r4, r2 - bge _0803FA4A - ldr r0, =gAbsentBankFlags - ldrb r7, [r0] - ldr r1, =gBitTable - adds r6, r2, 0 - ldr r3, =gBattlePartyID - adds r2, r1, 0 -_0803FA2E: - ldr r0, [r2] - ands r0, r7 - cmp r0, 0 - bne _0803FA40 - ldrh r0, [r3] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - orrs r4, r0 -_0803FA40: - adds r3, 0x4 - adds r2, 0x8 - adds r5, 0x2 - cmp r5, r6 - blt _0803FA2E -_0803FA4A: - mov r0, r12 - add r0, r8 - strb r4, [r0] -_0803FA50: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803F9EC - - thumb_func_start sub_803FA70 -sub_803FA70: @ 803FA70 - push {r4-r7,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0803FA8C - adds r0, r4, 0 - bl sub_803F9EC - b _0803FAC2 -_0803FA8C: - movs r3, 0x1 - ldr r5, =gNoOfAllBanks - ldrb r0, [r5] - cmp r3, r0 - bge _0803FAC2 - ldr r0, =gUnknown_020243FE - mov r12, r0 - movs r7, 0x2 - ldr r6, =gBitTable - ldr r1, =gBattlePartyID - lsls r0, r4, 1 - adds r4, r0, r1 -_0803FAA4: - adds r2, r3, 0 - ands r2, r7 - asrs r2, 1 - add r2, r12 - ldrh r0, [r4] - lsls r0, 2 - adds r0, r6 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - adds r3, 0x1 - ldrb r0, [r5] - cmp r3, r0 - blt _0803FAA4 -_0803FAC2: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803FA70 - - .align 2, 0 @ Don't pad with nop. -
\ No newline at end of file diff --git a/asm/battle_4.s b/asm/battle_4.s deleted file mode 100644 index 241aa8677..000000000 --- a/asm/battle_4.s +++ /dev/null @@ -1,31160 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - - thumb_func_start atk00_attackcanceler -atk00_attackcanceler: @ 8045FFC - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - ldr r0, =gBattleOutcome - ldrb r0, [r0] - cmp r0, 0 - beq _08046020 - ldr r1, =gFightStateTracker - movs r0, 0xC - strb r0, [r1] - b _08046398 - .pool -_08046020: - ldr r2, =gBattleMons - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - ldrh r0, [r0, 0x28] - cmp r0, 0 - bne _08046064 - ldr r2, =gHitMarker - ldr r1, [r2] - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - bne _08046064 - movs r0, 0x80 - lsls r0, 12 - orrs r1, r0 - str r1, [r2] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082D8A4E - b _08046396 - .pool -_08046064: - bl AtkCanceller_UnableToUseMove - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - beq _08046072 - b _08046398 -_08046072: - ldr r0, =gBankTarget - ldrb r1, [r0] - str r2, [sp] - movs r0, 0x2 - movs r2, 0 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - beq _0804608A - b _08046398 -_0804608A: - ldr r4, =gBattleMons - ldr r0, =gCurrMovePos - ldrb r1, [r0] - ldr r3, =gBankAttacker - ldrb r2, [r3] - movs r0, 0x58 - muls r2, r0 - adds r1, r2 - adds r0, r4, 0 - adds r0, 0x24 - adds r1, r0 - ldrb r0, [r1] - ldr r5, =gHitMarker - cmp r0, 0 - bne _08046108 - ldr r0, =gCurrentMove - ldrh r0, [r0] - cmp r0, 0xA5 - beq _08046108 - ldr r0, [r5] - ldr r1, =0x00800200 - ands r0, r1 - cmp r0, 0 - bne _08046108 - adds r0, r4, 0 - adds r0, 0x50 - adds r0, r2, r0 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 5 - ands r0, r1 - cmp r0, 0 - bne _08046108 - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB07A - str r0, [r1] - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - b _08046398 - .pool -_08046108: - ldr r0, [r5] - ldr r1, =0xff7fffff - ands r0, r1 - str r0, [r5] - movs r6, 0x80 - lsls r6, 18 - ands r0, r6 - cmp r0, 0 - bne _08046160 - ldrb r1, [r3] - movs r0, 0x58 - muls r0, r1 - adds r1, r4, 0 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 5 - ands r0, r1 - cmp r0, 0 - bne _08046160 - bl IsPokeDisobedient - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - beq _08046160 - cmp r2, 0x2 - bne _08046150 - ldr r0, [r5] - orrs r0, r6 - str r0, [r5] - b _08046398 - .pool -_08046150: - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r2, 0x1 - orrs r1, r2 - strb r1, [r0] - b _08046398 - .pool -_08046160: - ldr r2, =gHitMarker - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 18 - orrs r0, r1 - str r0, [r2] - ldr r2, =gProtectStructs - ldr r1, =gBankTarget - ldrb r3, [r1] - lsls r0, r3, 4 - adds r0, r2 - ldrb r0, [r0] - lsls r0, 27 - mov r8, r1 - mov r9, r2 - cmp r0, 0 - bge _080461E8 - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x8] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080461E8 - ldr r0, =gBankAttacker - ldrb r0, [r0] - ldr r2, =0x00000115 - adds r1, r3, 0 - bl sub_803F480 - mov r0, r8 - ldrb r1, [r0] - lsls r1, 4 - add r1, r9 - ldrb r2, [r1] - movs r0, 0x11 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - bl b_movescr_stack_push_cursor - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB194 - b _08046396 - .pool -_080461E8: - movs r2, 0 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r2, r0 - bge _0804622A - ldr r6, =gProtectStructs - ldr r1, =gBattleMoves - mov r12, r1 - adds r5, r0, 0 - ldr r7, =gTurnOrder -_080461FC: - adds r4, r2, r7 - ldrb r3, [r4] - lsls r0, r3, 4 - adds r0, r6 - ldrb r0, [r0] - lsls r0, 26 - cmp r0, 0 - bge _08046224 - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - add r0, r12 - ldrb r1, [r0, 0x8] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08046224 - b _08046350 -_08046224: - adds r2, 0x1 - cmp r2, r5 - blt _080461FC -_0804622A: - ldr r0, =gSpecialStatuses - mov r1, r8 - ldrb r2, [r1] - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 2 - adds r1, r0 - ldrb r3, [r1] - lsls r0, r3, 30 - cmp r0, 0 - bge _08046288 - movs r0, 0x3 - negs r0, r0 - ands r0, r3 - strb r0, [r1] - ldr r4, =gLastUsedAbility - movs r0, 0x1F - strb r0, [r4] - bl b_movescr_stack_push_cursor - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB53E - str r0, [r1] - mov r1, r8 - ldrb r0, [r1] - ldrb r1, [r4] - bl RecordAbilityBattle - b _08046398 - .pool -_08046288: - lsls r0, r2, 4 - add r0, r9 - ldrb r0, [r0] - lsls r0, 31 - cmp r0, 0 - bne _08046296 - b _08046390 -_08046296: - ldr r1, =gBattleMoves - ldr r2, =gCurrentMove - ldrh r3, [r2] - lsls r0, r3, 1 - adds r0, r3 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0, 0x8] - movs r0, 0x2 - ands r0, r1 - adds r4, r2, 0 - cmp r0, 0 - beq _08046390 - cmp r3, 0xAE - bne _080462D4 - ldr r2, =gBattleMons - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r1, r0, r2 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0x7 - beq _080462D4 - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0x7 - bne _08046390 -_080462D4: - ldrh r0, [r4] - bl sub_8052F48 - lsls r0, 24 - cmp r0, 0 - beq _080462FA - ldr r1, =gBattleMons - ldr r0, =gBankAttacker - ldrb r2, [r0] - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 5 - ands r0, r1 - cmp r0, 0 - beq _08046390 -_080462FA: - ldr r0, =gBankAttacker - ldrb r0, [r0] - bl CancelMultiTurnMoves - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gUnknown_02024250 - ldr r3, =gBankTarget - ldrb r0, [r3] - lsls r0, 1 - adds r0, r1 - movs r2, 0 - strh r2, [r0] - ldr r1, =gUnknown_02024258 - ldrb r0, [r3] - lsls r0, 1 - adds r0, r1 - strh r2, [r0] - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x6] - b _08046390 - .pool -_08046350: - ldr r0, =gBankAttacker - ldrb r0, [r0] - ldr r2, =0x00000121 - adds r1, r3, 0 - bl sub_803F480 - ldrb r1, [r4] - lsls r1, 4 - adds r1, r6 - ldrb r2, [r1] - movs r0, 0x21 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - ldr r1, =gBattleScripting - ldrb r0, [r4] - strb r0, [r1, 0x17] - bl b_movescr_stack_push_cursor - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB1AC - b _08046396 - .pool -_08046390: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 -_08046396: - str r0, [r1] -_08046398: - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk00_attackcanceler - - thumb_func_start mcmd_jump_if_move_not_executed -mcmd_jump_if_move_not_executed: @ 80463AC - push {r4-r6,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 16 - lsrs r6, r1, 16 - ldr r1, =gBattlescriptCurrInstr - ldr r5, [r1] - adds r4, r5, r0 - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - beq _0804640C - ldr r1, =gUnknown_02024250 - ldr r3, =gBankTarget - ldrb r0, [r3] - lsls r0, 1 - adds r0, r1 - movs r2, 0 - strh r2, [r0] - ldr r1, =gUnknown_02024258 - ldrb r0, [r3] - lsls r0, 1 - adds r0, r1 - strh r2, [r0] - ldrb r4, [r5, 0x1] - ldrb r0, [r5, 0x2] - lsls r0, 8 - orrs r4, r0 - ldrb r0, [r5, 0x3] - lsls r0, 16 - orrs r4, r0 - ldrb r0, [r5, 0x4] - lsls r0, 24 - orrs r4, r0 - b _08046426 - .pool -_0804640C: - bl b_feature_update_destiny_bond - ldr r0, =gBankTarget - ldrb r1, [r0] - str r6, [sp] - movs r0, 0x3 - movs r2, 0 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - bne _0804642A -_08046426: - ldr r0, =gBattlescriptCurrInstr - str r4, [r0] -_0804642A: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end mcmd_jump_if_move_not_executed - - thumb_func_start atk40_jump_if_move_affected_by_protect -atk40_jump_if_move_affected_by_protect: @ 804643C - push {lr} - ldr r1, =gProtectStructs - ldr r0, =gBankTarget - ldrb r0, [r0] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 31 - cmp r0, 0 - beq _0804649C - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x8] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0804649C - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - movs r0, 0x5 - movs r1, 0 - bl mcmd_jump_if_move_not_executed - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x6] - b _080464A4 - .pool -_0804649C: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_080464A4: - pop {r0} - bx r0 - .pool - thumb_func_end atk40_jump_if_move_affected_by_protect - - thumb_func_start sub_80464AC -sub_80464AC: @ 80464AC - push {r4,lr} - lsls r0, 16 - lsrs r3, r0, 16 - movs r4, 0 - ldr r1, =gProtectStructs - ldr r0, =gBankTarget - ldrb r0, [r0] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 31 - cmp r0, 0 - beq _080464F8 - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x8] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080464F8 - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - movs r0, 0x7 - adds r1, r3, 0 - bl mcmd_jump_if_move_not_executed - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x6] - movs r4, 0x1 -_080464F8: - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_80464AC - - thumb_func_start sub_8046518 -sub_8046518: @ 8046518 - push {r4-r6,lr} - sub sp, 0x4 - lsls r0, 16 - lsrs r5, r0, 16 - ldr r2, =gStatuses3 - ldr r3, =gBankTarget - ldrb r4, [r3] - lsls r0, r4, 2 - adds r0, r2 - ldr r1, [r0] - movs r0, 0x18 - ands r1, r0 - adds r6, r2, 0 - cmp r1, 0 - beq _0804654A - ldr r1, =gDisableStructs - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - adds r0, r1 - ldr r1, =gBankAttacker - ldrb r0, [r0, 0x15] - ldrb r1, [r1] - cmp r0, r1 - beq _08046634 -_0804654A: - ldr r0, =gHitMarker - ldr r1, [r0] - movs r2, 0x80 - lsls r2, 9 - ands r1, r2 - adds r2, r0, 0 - cmp r1, 0 - bne _08046590 - ldrb r0, [r3] - lsls r0, 2 - adds r0, r6 - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08046590 -_0804656A: - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r2, 0x1 - orrs r1, r2 - strb r1, [r0] - b _08046634 - .pool -_08046590: - ldr r0, [r2] - ldr r1, =0xfffeffff - ands r0, r1 - str r0, [r2] - movs r1, 0x80 - lsls r1, 10 - ands r0, r1 - cmp r0, 0 - bne _080465B2 - ldrb r0, [r3] - lsls r0, 2 - adds r0, r6 - ldr r0, [r0] - movs r1, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0804656A -_080465B2: - ldr r0, [r2] - ldr r1, =0xfffdffff - ands r0, r1 - str r0, [r2] - movs r1, 0x80 - lsls r1, 11 - ands r0, r1 - cmp r0, 0 - bne _080465D2 - ldrb r0, [r3] - lsls r0, 2 - adds r0, r6 - ldr r0, [r0] - ands r0, r1 - cmp r0, 0 - bne _0804656A -_080465D2: - ldr r0, [r2] - ldr r1, =0xfffbffff - ands r0, r1 - str r0, [r2] - movs r0, 0 - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0xD - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r0, 24 - lsls r4, r5, 1 - cmp r0, 0 - bne _08046622 - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0x4D - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - bne _08046622 - ldr r0, =gBattleWeather - ldrh r1, [r0] - movs r0, 0x7 - ands r0, r1 - cmp r0, 0 - beq _08046622 - ldr r0, =gBattleMoves - adds r1, r4, r5 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x98 - beq _08046634 -_08046622: - ldr r1, =gBattleMoves - adds r0, r4, r5 - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x11 - beq _08046634 - cmp r0, 0x4E - bne _08046654 -_08046634: - movs r0, 0x7 - adds r1, r5, 0 - bl mcmd_jump_if_move_not_executed - movs r0, 0x1 - b _08046656 - .pool -_08046654: - movs r0, 0 -_08046656: - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_8046518 - - thumb_func_start atk01_accuracycheck -atk01_accuracycheck: @ 8046660 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - ldr r0, =gBattlescriptCurrInstr - ldr r5, [r0] - ldrb r6, [r5, 0x5] - ldrb r1, [r5, 0x6] - lsls r1, 8 - orrs r6, r1 - adds r1, r6, 0x2 - lsls r1, 16 - lsrs r1, 16 - adds r7, r0, 0 - cmp r1, 0x1 - bhi _0804671C - ldr r2, =gStatuses3 - ldr r3, =gBankTarget - ldrb r4, [r3] - lsls r0, r4, 2 - adds r0, r2 - ldr r1, [r0] - movs r0, 0x18 - ands r1, r0 - cmp r1, 0 - beq _080466D0 - ldr r0, =0x0000ffff - cmp r6, r0 - bne _080466D0 - ldr r1, =gDisableStructs - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - adds r0, r1 - ldr r1, =gBankAttacker - ldrb r0, [r0, 0x15] - ldrb r1, [r1] - cmp r0, r1 - bne _080466D0 - adds r0, r5, 0x7 - str r0, [r7] - b _080469D2 - .pool -_080466D0: - ldrb r0, [r3] - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - ldr r1, =0x000400c0 - ands r0, r1 - cmp r0, 0 - beq _08046700 - ldr r2, [r7] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r7] - b _080469D2 - .pool -_08046700: - movs r0, 0 - bl sub_80464AC - lsls r0, 24 - cmp r0, 0 - beq _0804670E - b _080469D2 -_0804670E: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x7 - str r0, [r1] - b _080469D2 - .pool -_0804671C: - cmp r6, 0 - bne _08046724 - ldr r0, =gCurrentMove - ldrh r6, [r0] -_08046724: - ldr r0, =gBattleStruct - ldr r0, [r0] - ldrb r0, [r0, 0x13] - cmp r0, 0 - beq _08046744 - movs r1, 0x3F - mov r10, r1 - mov r2, r10 - ands r2, r0 - mov r10, r2 - b _08046752 - .pool -_08046744: - ldr r1, =gBattleMoves - lsls r0, r6, 1 - adds r0, r6 - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0, 0x2] - mov r10, r0 -_08046752: - adds r0, r6, 0 - bl sub_80464AC - lsls r0, 24 - cmp r0, 0 - beq _08046760 - b _080469D2 -_08046760: - adds r0, r6, 0 - bl sub_8046518 - lsls r0, 24 - cmp r0, 0 - beq _0804676E - b _080469D2 -_0804676E: - ldr r3, =gBattleMons - ldr r0, =gBankTarget - ldrb r0, [r0] - movs r2, 0x58 - adds r4, r0, 0 - muls r4, r2 - adds r0, r3, 0 - adds r0, 0x50 - adds r0, r4, r0 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 22 - ands r0, r1 - cmp r0, 0 - beq _080467A8 - ldr r0, =gBankAttacker - ldrb r0, [r0] - muls r0, r2 - adds r0, r3 - ldrb r5, [r0, 0x1E] - b _080467BE - .pool -_080467A8: - ldr r0, =gBankAttacker - ldrb r0, [r0] - muls r0, r2 - adds r0, r3 - ldrb r0, [r0, 0x1E] - adds r0, 0x6 - adds r1, r4, r3 - ldrb r1, [r1, 0x1F] - subs r0, r1 - lsls r0, 24 - lsrs r5, r0, 24 -_080467BE: - lsls r0, r5, 24 - cmp r0, 0 - bge _080467C6 - movs r5, 0 -_080467C6: - lsls r0, r5, 24 - asrs r0, 24 - cmp r0, 0xC - ble _080467D0 - movs r5, 0xC -_080467D0: - ldr r1, =gBattleMoves - lsls r4, r6, 1 - adds r0, r4, r6 - lsls r0, 2 - adds r7, r0, r1 - ldrb r3, [r7, 0x3] - mov r8, r3 - movs r0, 0 - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0xD - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r0, 24 - str r4, [sp, 0x4] - cmp r0, 0 - bne _08046822 - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0x4D - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - bne _08046822 - ldr r0, =gBattleWeather - ldrh r1, [r0] - movs r0, 0x60 - ands r0, r1 - cmp r0, 0 - beq _08046822 - ldrb r0, [r7] - cmp r0, 0x98 - bne _08046822 - movs r0, 0x32 - mov r8, r0 -_08046822: - ldr r1, =gAccuracyStageRatios - lsls r0, r5, 24 - asrs r0, 22 - adds r0, r1 - ldrb r1, [r0] - mov r4, r8 - muls r4, r1 - ldrb r1, [r0, 0x1] - adds r0, r4, 0 - bl __divsi3 - lsls r0, 16 - lsrs r4, r0, 16 - ldr r7, =gBattleMons - ldr r0, =gBankAttacker - ldrb r0, [r0] - movs r5, 0x58 - muls r0, r5 - adds r0, r7 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0xE - bne _08046860 - lsls r0, r4, 6 - adds r0, r4 - lsls r0, 1 - movs r1, 0x64 - bl __divsi3 - lsls r0, 16 - lsrs r4, r0, 16 -_08046860: - movs r0, 0 - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0xD - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _080468B8 - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0x4D - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - bne _080468B8 - ldr r0, =gBankTarget - ldrb r0, [r0] - muls r0, r5 - adds r0, r7 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x8 - bne _080468B8 - ldr r0, =gBattleWeather - ldrh r1, [r0] - movs r0, 0x18 - ands r0, r1 - cmp r0, 0 - beq _080468B8 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 4 - movs r1, 0x64 - bl __divsi3 - lsls r0, 16 - lsrs r4, r0, 16 -_080468B8: - ldr r2, =gBattleMons - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - adds r0, 0x20 - ldrb r0, [r0] - mov r9, r2 - cmp r0, 0x37 - bne _080468E4 - mov r1, r10 - cmp r1, 0x8 - bhi _080468E4 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 4 - movs r1, 0x64 - bl __divsi3 - lsls r0, 16 - lsrs r4, r0, 16 -_080468E4: - ldr r2, =gBankTarget - mov r8, r2 - ldrb r2, [r2] - movs r7, 0x58 - adds r0, r2, 0 - muls r0, r7 - mov r3, r9 - adds r1, r0, r3 - ldrh r0, [r1, 0x2E] - cmp r0, 0xAF - bne _08046928 - ldr r1, =gEnigmaBerries - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r5, [r0, 0x7] - ldrb r2, [r0, 0x1A] - b _08046944 - .pool -_08046928: - ldrh r0, [r1, 0x2E] - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r5, r0, 24 - mov r1, r8 - ldrb r0, [r1] - muls r0, r7 - add r0, r9 - ldrh r0, [r0, 0x2E] - bl ItemId_GetHoldEffectParam - lsls r0, 24 - lsrs r2, r0, 24 -_08046944: - ldr r0, =gStringBank - ldr r1, =gBankTarget - ldrb r1, [r1] - strb r1, [r0] - cmp r5, 0x16 - bne _08046960 - movs r0, 0x64 - subs r0, r2 - muls r0, r4 - movs r1, 0x64 - bl __divsi3 - lsls r0, 16 - lsrs r4, r0, 16 -_08046960: - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x64 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - adds r0, 0x1 - cmp r0, r4 - ble _080469CA - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080469C0 - ldr r1, =gBattleMoves - ldr r2, [sp, 0x4] - adds r0, r2, r6 - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0, 0x6] - cmp r0, 0x8 - beq _080469A2 - cmp r0, 0x20 - bne _080469C0 -_080469A2: - ldr r1, =gBattleCommunication - movs r0, 0x2 - b _080469C4 - .pool -_080469C0: - ldr r1, =gBattleCommunication - movs r0, 0 -_080469C4: - strb r0, [r1, 0x6] - bl b_wonderguard_and_levitate -_080469CA: - movs r0, 0x7 - adds r1, r6, 0 - bl mcmd_jump_if_move_not_executed -_080469D2: - 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 atk01_accuracycheck - - thumb_func_start atk02_attackstring -atk02_attackstring: @ 80469E8 - push {r4,r5,lr} - ldr r0, =gBattleExecBuffer - ldr r5, [r0] - cmp r5, 0 - bne _08046A20 - ldr r4, =gHitMarker - ldr r0, [r4] - movs r1, 0xC0 - lsls r1, 3 - ands r0, r1 - cmp r0, 0 - bne _08046A14 - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x4 - bl b_std_message - ldr r0, [r4] - movs r1, 0x80 - lsls r1, 3 - orrs r0, r1 - str r0, [r4] -_08046A14: - ldr r0, =gBattlescriptCurrInstr - ldr r1, [r0] - adds r1, 0x1 - str r1, [r0] - ldr r0, =gBattleCommunication - strb r5, [r0, 0x7] -_08046A20: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk02_attackstring - - thumb_func_start atk03_ppreduce -atk03_ppreduce: @ 8046A3C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - movs r6, 0x1 - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - beq _08046A54 - b _08046BEE -_08046A54: - ldr r1, =gSpecialStatuses - ldr r2, =gBankAttacker - ldrb r3, [r2] - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 26 - lsrs r4, r0, 31 - mov r9, r2 - cmp r4, 0 - bne _08046AF6 - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x6] - cmp r0, 0x20 - beq _08046AA6 - cmp r0, 0x20 - bgt _08046AA0 - cmp r0, 0x8 - beq _08046ABC - b _08046AD6 - .pool -_08046AA0: - cmp r0, 0x40 - beq _08046ABC - b _08046AD6 -_08046AA6: - str r4, [sp] - movs r0, 0x12 - adds r1, r3, 0 - movs r2, 0x2E - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r0, 24 - adds r6, r0, 0x1 - b _08046AF6 -_08046ABC: - mov r0, r9 - ldrb r1, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x10 - movs r2, 0x2E - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r0, 24 - adds r6, r0 - b _08046AF6 -_08046AD6: - ldr r1, =gBankTarget - mov r2, r9 - ldrb r0, [r2] - ldrb r7, [r1] - cmp r0, r7 - beq _08046AF6 - ldr r2, =gBattleMons - ldrb r1, [r1] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x2E - bne _08046AF6 - adds r6, 0x1 -_08046AF6: - ldr r0, =gHitMarker - ldr r4, [r0] - movs r0, 0xA0 - lsls r0, 4 - ands r4, r0 - cmp r4, 0 - bne _08046BDC - ldr r2, =gBattleMons - ldr r3, =gCurrMovePos - ldr r1, =gBankAttacker - ldrb r5, [r1] - movs r0, 0x58 - mov r8, r0 - mov r0, r8 - muls r0, r5 - ldrb r7, [r3] - adds r0, r7 - movs r7, 0x24 - adds r7, r2 - mov r12, r7 - add r0, r12 - ldrb r0, [r0] - mov r9, r1 - mov r10, r2 - adds r7, r3, 0 - cmp r0, 0 - beq _08046BDC - ldr r0, =gProtectStructs - lsls r1, r5, 4 - adds r1, r0 - ldrb r0, [r1, 0x2] - movs r2, 0x8 - orrs r0, r2 - strb r0, [r1, 0x2] - mov r1, r9 - ldrb r0, [r1] - mov r2, r8 - muls r2, r0 - adds r0, r2, 0 - ldrb r1, [r7] - adds r0, r1 - mov r1, r12 - adds r2, r0, r1 - ldrb r0, [r2] - cmp r0, r6 - ble _08046B70 - subs r0, r6 - strb r0, [r2] - b _08046B72 - .pool -_08046B70: - strb r4, [r2] -_08046B72: - mov r2, r9 - ldrb r3, [r2] - movs r4, 0x58 - adds r0, r3, 0 - muls r0, r4 - mov r1, r10 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 14 - ands r0, r1 - cmp r0, 0 - bne _08046BDC - ldr r1, =gDisableStructs - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0, 0x18] - lsrs r1, 4 - ldr r2, =gBitTable - ldrb r0, [r7] - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _08046BDC - ldr r0, =gActiveBank - strb r3, [r0] - ldrb r1, [r7] - adds r1, 0x9 - lsls r1, 24 - lsrs r1, 24 - mov r2, r9 - ldrb r0, [r2] - muls r0, r4 - mov r2, r10 - adds r2, 0x24 - adds r0, r2 - ldrb r7, [r7] - adds r0, r7 - str r0, [sp] - movs r0, 0 - movs r2, 0 - movs r3, 0x1 - bl EmitSetAttributes - mov r7, r9 - ldrb r0, [r7] - bl MarkBufferBankForExecution -_08046BDC: - ldr r2, =gHitMarker - ldr r0, [r2] - ldr r1, =0xfffff7ff - ands r0, r1 - str r0, [r2] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_08046BEE: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk03_ppreduce - - thumb_func_start atk04_critcalc -atk04_critcalc: @ 8046C18 - push {r4-r7,lr} - ldr r1, =gBattleMons - ldr r0, =gBankAttacker - ldrb r2, [r0] - movs r0, 0x58 - muls r0, r2 - adds r0, r1 - ldrh r0, [r0, 0x2E] - cmp r0, 0xAF - bne _08046C48 - ldr r1, =gEnigmaBerries - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r6, [r0, 0x7] - b _08046C50 - .pool -_08046C48: - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r6, r0, 24 -_08046C50: - ldr r1, =gStringBank - ldr r3, =gBankAttacker - ldrb r0, [r3] - strb r0, [r1] - ldr r4, =gBattleMons - ldrb r1, [r3] - movs r0, 0x58 - adds r7, r1, 0 - muls r7, r0 - adds r0, r4, 0 - adds r0, 0x50 - adds r0, r7, r0 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 13 - ands r0, r1 - negs r0, r0 - asrs r5, r0, 31 - movs r0, 0x2 - ands r5, r0 - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - mov r12, r3 - cmp r1, 0x2B - bne _08046C90 - adds r5, 0x1 -_08046C90: - adds r0, r5, 0 - cmp r1, 0x4B - bne _08046C98 - adds r0, 0x1 -_08046C98: - cmp r1, 0xC8 - bne _08046C9E - adds r0, 0x1 -_08046C9E: - adds r2, r0, 0 - cmp r1, 0xD1 - bne _08046CA6 - adds r2, 0x1 -_08046CA6: - movs r1, 0 - cmp r6, 0x3F - bne _08046CB6 - adds r0, r7, r4 - ldrh r0, [r0] - cmp r0, 0x71 - bne _08046CB6 - movs r1, 0x1 -_08046CB6: - lsls r5, r1, 1 - movs r3, 0 - cmp r6, 0x42 - bne _08046CD0 - mov r0, r12 - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r4 - ldrh r0, [r0] - cmp r0, 0x53 - bne _08046CD0 - movs r3, 0x1 -_08046CD0: - lsls r1, r3, 1 - cmp r6, 0x29 - bne _08046CF0 - adds r0, r5, 0x1 - adds r0, r2, r0 - b _08046CF2 - .pool -_08046CF0: - adds r0, r2, r5 -_08046CF2: - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - adds r5, r0, 0 - cmp r5, 0x4 - bls _08046D00 - movs r5, 0x4 -_08046D00: - ldr r0, =gBankTarget - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r4 - adds r0, 0x20 - ldrb r4, [r0] - cmp r4, 0x4 - beq _08046D70 - cmp r4, 0x4B - beq _08046D70 - ldr r1, =gStatuses3 - mov r2, r12 - ldrb r0, [r2] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 8 - ands r0, r1 - cmp r0, 0 - bne _08046D70 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x84 - lsls r1, 2 - ands r0, r1 - cmp r0, 0 - bne _08046D70 - bl Random - ldr r2, =gCriticalHitChance - lsls r1, r5, 1 - adds r1, r2 - lsls r0, 16 - lsrs r0, 16 - ldrh r1, [r1] - bl __umodsi3 - lsls r0, 16 - cmp r0, 0 - bne _08046D70 - ldr r1, =gCritMultiplier - movs r0, 0x2 - b _08046D74 - .pool -_08046D70: - ldr r1, =gCritMultiplier - movs r0, 0x1 -_08046D74: - strb r0, [r1] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk04_critcalc - - thumb_func_start atk05_damagecalc1 -atk05_damagecalc1: @ 8046D8C - push {r4-r7,lr} - sub sp, 0x10 - ldr r4, =gSideAffecting - ldr r5, =gBankTarget - ldrb r0, [r5] - bl GetBankIdentity - movs r1, 0x1 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - ldrh r3, [r1] - ldr r6, =gBankAttacker - ldrb r0, [r6] - movs r4, 0x58 - muls r0, r4 - ldr r2, =gBattleMons - adds r0, r2 - ldrb r1, [r5] - muls r1, r4 - adds r1, r2 - ldr r7, =gCurrentMove - ldrh r2, [r7] - ldr r4, =gDynamicBasePower - ldrh r4, [r4] - str r4, [sp] - ldr r4, =gBattleStruct - ldr r4, [r4] - ldrb r4, [r4, 0x13] - str r4, [sp, 0x4] - ldrb r4, [r6] - str r4, [sp, 0x8] - ldrb r4, [r5] - str r4, [sp, 0xC] - bl CalculateBaseDamage - ldr r4, =gBattleMoveDamage - ldr r1, =gCritMultiplier - ldrb r1, [r1] - muls r1, r0 - ldr r0, =gBattleScripting - ldrb r0, [r0, 0xE] - adds r3, r1, 0 - muls r3, r0 - str r3, [r4] - ldr r1, =gStatuses3 - ldrb r0, [r6] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 2 - ands r0, r1 - cmp r0, 0 - beq _08046E10 - ldr r2, =gBattleMoves - ldrh r1, [r7] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x2] - cmp r0, 0xD - bne _08046E10 - lsls r0, r3, 1 - str r0, [r4] -_08046E10: - ldr r1, =gProtectStructs - ldr r0, =gBankAttacker - ldrb r0, [r0] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 28 - cmp r0, 0 - bge _08046E32 - ldr r4, =gBattleMoveDamage - ldr r1, [r4] - lsls r0, r1, 4 - subs r0, r1 - movs r1, 0xA - bl __divsi3 - str r0, [r4] -_08046E32: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - add sp, 0x10 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk05_damagecalc1 - - thumb_func_start AI_CalcDmg -AI_CalcDmg: @ 8046E7C - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - adds r5, r1, 0 - lsls r0, 24 - lsrs r7, r0, 24 - lsls r5, 24 - lsrs r5, 24 - ldr r4, =gSideAffecting - adds r0, r5, 0 - bl GetBankIdentity - movs r1, 0x1 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - ldrh r3, [r1] - movs r1, 0x58 - adds r0, r7, 0 - muls r0, r1 - ldr r2, =gBattleMons - adds r0, r2 - muls r1, r5 - adds r1, r2 - ldr r2, =gCurrentMove - mov r8, r2 - ldrh r2, [r2] - ldr r6, =gDynamicBasePower - ldrh r4, [r6] - str r4, [sp] - ldr r4, =gBattleStruct - ldr r4, [r4] - ldrb r4, [r4, 0x13] - str r4, [sp, 0x4] - str r7, [sp, 0x8] - str r5, [sp, 0xC] - bl CalculateBaseDamage - ldr r4, =gBattleMoveDamage - movs r1, 0 - strh r1, [r6] - ldr r1, =gCritMultiplier - ldrb r1, [r1] - muls r1, r0 - ldr r0, =gBattleScripting - ldrb r0, [r0, 0xE] - adds r3, r1, 0 - muls r3, r0 - str r3, [r4] - ldr r1, =gStatuses3 - lsls r0, r7, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 2 - ands r0, r1 - cmp r0, 0 - beq _08046F0A - ldr r2, =gBattleMoves - mov r0, r8 - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x2] - cmp r0, 0xD - bne _08046F0A - lsls r0, r3, 1 - str r0, [r4] -_08046F0A: - ldr r0, =gProtectStructs - lsls r1, r7, 4 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 28 - cmp r0, 0 - bge _08046F28 - ldr r4, =gBattleMoveDamage - ldr r1, [r4] - lsls r0, r1, 4 - subs r0, r1 - movs r1, 0xA - bl __divsi3 - str r0, [r4] -_08046F28: - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end AI_CalcDmg - - thumb_func_start battle_attack_damage_modulate_by_effectivity -battle_attack_damage_modulate_by_effectivity: @ 8046F60 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r5, =gBattleMoveDamage - ldr r0, [r5] - muls r0, r4 - movs r1, 0xA - bl __divsi3 - str r0, [r5] - cmp r0, 0 - bne _08046F80 - cmp r4, 0 - beq _08046F80 - movs r0, 0x1 - str r0, [r5] -_08046F80: - cmp r4, 0x5 - beq _08046FB0 - cmp r4, 0x5 - bgt _08046F94 - cmp r4, 0 - beq _08046F9A - b _08047032 - .pool -_08046F94: - cmp r4, 0x14 - beq _08046FF0 - b _08047032 -_08046F9A: - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x8 - orrs r0, r1 - movs r1, 0xFB - ands r0, r1 - movs r1, 0xFD - ands r0, r1 - b _08047030 - .pool -_08046FB0: - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x1] - cmp r0, 0 - beq _08047032 - ldr r2, =gBattleMoveFlags - ldrb r1, [r2] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - bne _08047032 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08046FEC - movs r0, 0xFD - ands r0, r1 - b _08047030 - .pool -_08046FEC: - movs r0, 0x4 - b _0804702E -_08046FF0: - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x1] - cmp r0, 0 - beq _08047032 - ldr r2, =gBattleMoveFlags - ldrb r1, [r2] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - bne _08047032 - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0804702C - movs r0, 0xFB - ands r0, r1 - b _08047030 - .pool -_0804702C: - movs r0, 0x2 -_0804702E: - orrs r0, r1 -_08047030: - strb r0, [r2] -_08047032: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end battle_attack_damage_modulate_by_effectivity - - thumb_func_start atk06_typecalc -atk06_typecalc: @ 8047038 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - movs r3, 0 - ldr r1, =gCurrentMove - ldrh r0, [r1] - cmp r0, 0xA5 - bne _0804704C - b _08047260 -_0804704C: - ldr r0, =gBattleStruct - ldr r0, [r0] - ldrb r0, [r0, 0x13] - cmp r0, 0 - beq _08047068 - movs r1, 0x3F - mov r8, r1 - ands r1, r0 - mov r8, r1 - b _08047078 - .pool -_08047068: - ldr r2, =gBattleMoves - ldrh r1, [r1] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x2] - mov r8, r0 -_08047078: - ldr r2, =gBattleMons - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r1, r0, r2 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - adds r5, r2, 0 - cmp r0, r8 - beq _0804709A - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, r8 - bne _080470B0 -_0804709A: - ldr r4, =gBattleMoveDamage - ldr r1, [r4] - lsls r0, r1, 4 - subs r0, r1 - str r0, [r4] - movs r1, 0xA - str r3, [sp, 0x4] - bl __divsi3 - str r0, [r4] - ldr r3, [sp, 0x4] -_080470B0: - ldr r2, =gBankTarget - ldrb r1, [r2] - movs r0, 0x58 - muls r0, r1 - adds r0, r5 - adds r0, 0x20 - ldrb r0, [r0] - adds r4, r2, 0 - cmp r0, 0x1A - bne _08047128 - mov r1, r8 - cmp r1, 0x4 - bne _08047128 - ldr r3, =gLastUsedAbility - strb r0, [r3] - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x9 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gUnknown_02024250 - ldrb r0, [r4] - lsls r0, 1 - adds r0, r1 - movs r2, 0 - strh r2, [r0] - ldr r1, =gUnknown_02024258 - ldrb r0, [r4] - lsls r0, 1 - adds r0, r1 - strh r2, [r0] - ldr r0, =gBattleCommunication - mov r1, r8 - strb r1, [r0, 0x6] - ldrb r0, [r4] - ldrb r1, [r3] - bl RecordAbilityBattle - b _080471C4 - .pool -_08047128: - ldr r1, =gUnknown_0831ACE8 - adds r0, r3, r1 - ldrb r0, [r0] - adds r2, r1, 0 - b _080471A4 - .pool -_08047138: - adds r3, 0x3 - b _080471A0 -_0804713C: - ldr r5, =gUnknown_0831ACE8 - adds r0, r3, r5 - ldrb r0, [r0] - cmp r0, r8 - bne _08047198 - adds r1, r3, 0x1 - adds r1, r5 - ldr r2, =gBattleMons - ldr r7, =gBankTarget - ldrb r0, [r7] - movs r6, 0x58 - muls r0, r6 - adds r0, r2 - adds r0, 0x21 - ldrb r4, [r1] - ldrb r0, [r0] - cmp r4, r0 - bne _08047172 - adds r0, r3, 0x2 - adds r0, r5 - ldrb r0, [r0] - str r2, [sp] - str r3, [sp, 0x4] - bl battle_attack_damage_modulate_by_effectivity - ldr r3, [sp, 0x4] - ldr r2, [sp] -_08047172: - ldrb r0, [r7] - muls r0, r6 - adds r0, r2 - adds r1, r0, 0 - adds r1, 0x22 - ldrb r1, [r1] - cmp r4, r1 - bne _08047198 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, r4 - beq _08047198 - adds r0, r3, 0x2 - adds r0, r5 - ldrb r0, [r0] - str r3, [sp, 0x4] - bl battle_attack_damage_modulate_by_effectivity - ldr r3, [sp, 0x4] -_08047198: - adds r3, 0x3 - ldr r5, =gBattleMons - ldr r4, =gBankTarget - ldr r2, =gUnknown_0831ACE8 -_080471A0: - adds r0, r3, r2 - ldrb r0, [r0] -_080471A4: - cmp r0, 0xFF - beq _080471C4 - cmp r0, 0xFE - bne _0804713C - ldrb r1, [r4] - movs r0, 0x58 - muls r0, r1 - adds r1, r5, 0 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 22 - ands r0, r1 - cmp r0, 0 - beq _08047138 -_080471C4: - ldr r2, =gBattleMons - ldr r5, =gBankTarget - ldrb r1, [r5] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - adds r0, 0x20 - ldrb r6, [r0] - cmp r6, 0x19 - bne _08047242 - ldr r0, =gBankAttacker - ldrb r0, [r0] - ldr r7, =gCurrentMove - ldrh r1, [r7] - bl move_weather_interaction - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08047242 - ldr r1, =gBattleMoveFlags - mov r8, r1 - ldrb r4, [r1] - ands r0, r4 - cmp r0, 0 - beq _08047200 - movs r0, 0x6 - ands r0, r4 - cmp r0, 0x6 - bne _08047242 -_08047200: - ldr r2, =gBattleMoves - ldrh r1, [r7] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x1] - cmp r0, 0 - beq _08047242 - ldr r3, =gLastUsedAbility - strb r6, [r3] - movs r0, 0x1 - orrs r0, r4 - mov r1, r8 - strb r0, [r1] - ldr r1, =gUnknown_02024250 - ldrb r0, [r5] - lsls r0, 1 - adds r0, r1 - movs r2, 0 - strh r2, [r0] - ldr r1, =gUnknown_02024258 - ldrb r0, [r5] - lsls r0, 1 - adds r0, r1 - strh r2, [r0] - ldr r1, =gBattleCommunication - movs r0, 0x3 - strb r0, [r1, 0x6] - ldrb r0, [r5] - ldrb r1, [r3] - bl RecordAbilityBattle -_08047242: - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08047260 - ldr r2, =gProtectStructs - ldr r0, =gBankAttacker - ldrb r1, [r0] - lsls r1, 4 - adds r1, r2 - ldrb r0, [r1, 0x1] - movs r2, 0x2 - orrs r0, r2 - strb r0, [r1, 0x1] -_08047260: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk06_typecalc - - thumb_func_start b_wonderguard_and_levitate -b_wonderguard_and_levitate: @ 80472A8 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r6, 0 - movs r5, 0 - ldr r0, =gCurrentMove - ldrh r1, [r0] - mov r9, r0 - cmp r1, 0xA5 - bne _080472C0 - b _08047508 -_080472C0: - ldr r2, =gBattleMoves - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r2 - ldrb r0, [r1, 0x1] - cmp r0, 0 - bne _080472D2 - b _08047508 -_080472D2: - ldr r0, =gBattleStruct - ldr r0, [r0] - ldrb r0, [r0, 0x13] - cmp r0, 0 - beq _080472F4 - movs r1, 0x3F - mov r12, r1 - mov r2, r12 - ands r2, r0 - mov r12, r2 - b _080472F8 - .pool -_080472F4: - ldrb r1, [r1, 0x2] - mov r12, r1 -_080472F8: - ldr r2, =gBattleMons - ldr r3, =gBankTarget - ldrb r1, [r3] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - adds r0, 0x20 - ldrb r1, [r0] - adds r7, r2, 0 - mov r8, r3 - cmp r1, 0x1A - bne _0804733C - mov r0, r12 - cmp r0, 0x4 - bne _0804733C - ldr r0, =gLastUsedAbility - strb r1, [r0] - ldr r0, =gBattleCommunication - mov r1, r12 - strb r1, [r0, 0x6] - ldrb r0, [r3] - movs r1, 0x1A - bl RecordAbilityBattle - b _08047508 - .pool -_0804733C: - ldr r1, =gUnknown_0831ACE8 - adds r0, r5, r1 - ldrb r0, [r0] - adds r4, r1, 0 - b _0804748E - .pool -_0804734C: - adds r0, r5, r4 - ldrb r0, [r0] - cmp r0, r12 - beq _08047356 - b _08047488 -_08047356: - adds r2, r5, 0x1 - adds r3, r2, r4 - mov r0, r8 - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r7 - adds r0, 0x21 - ldrb r1, [r3] - adds r3, r2, 0 - ldrb r0, [r0] - cmp r1, r0 - bne _08047396 - adds r0, r5, 0x2 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _08047396 - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x8 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gProtectStructs - ldr r0, =gBankAttacker - ldrb r2, [r0] - lsls r2, 4 - adds r2, r1 - ldrb r0, [r2, 0x1] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2, 0x1] -_08047396: - adds r2, r3, r4 - mov r0, r8 - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r7 - adds r1, r0, 0 - adds r1, 0x22 - ldrb r2, [r2] - ldrb r1, [r1] - cmp r2, r1 - bne _080473DC - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, r2 - beq _080473DC - adds r0, r5, 0x2 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _080473DC - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x8 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gProtectStructs - ldr r0, =gBankAttacker - ldrb r2, [r0] - lsls r2, 4 - adds r2, r1 - ldrb r0, [r2, 0x1] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2, 0x1] -_080473DC: - adds r2, r3, r4 - mov r0, r8 - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r7 - adds r0, 0x21 - ldrb r1, [r2] - ldrb r0, [r0] - cmp r1, r0 - bne _08047400 - adds r0, r5, 0x2 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0x14 - bne _08047400 - movs r0, 0x1 - orrs r6, r0 -_08047400: - adds r2, r3, r4 - mov r0, r8 - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r7 - adds r1, r0, 0 - adds r1, 0x22 - ldrb r2, [r2] - ldrb r1, [r1] - cmp r2, r1 - bne _0804742E - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, r2 - beq _0804742E - adds r0, r5, 0x2 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0x14 - bne _0804742E - movs r0, 0x1 - orrs r6, r0 -_0804742E: - adds r2, r3, r4 - mov r0, r8 - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r7 - adds r0, 0x21 - ldrb r1, [r2] - ldrb r0, [r0] - cmp r1, r0 - bne _08047456 - adds r0, r5, 0x2 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0x5 - bne _08047456 - movs r0, 0x2 - orrs r6, r0 - lsls r0, r6, 24 - lsrs r6, r0, 24 -_08047456: - adds r2, r3, r4 - mov r0, r8 - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r7 - adds r1, r0, 0 - adds r1, 0x22 - ldrb r2, [r2] - ldrb r1, [r1] - cmp r2, r1 - bne _08047488 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, r2 - beq _08047488 - adds r0, r5, 0x2 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0x5 - bne _08047488 - movs r0, 0x2 - orrs r6, r0 - lsls r0, r6, 24 - lsrs r6, r0, 24 -_08047488: - adds r5, 0x3 - adds r0, r5, r4 - ldrb r0, [r0] -_0804748E: - cmp r0, 0xFF - beq _080474B2 - cmp r0, 0xFE - beq _08047498 - b _0804734C -_08047498: - mov r2, r8 - ldrb r1, [r2] - movs r0, 0x58 - muls r0, r1 - adds r1, r7, 0 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 22 - ands r0, r1 - cmp r0, 0 - beq _08047488 -_080474B2: - mov r0, r8 - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r7 - adds r0, 0x20 - ldrb r4, [r0] - cmp r4, 0x19 - bne _08047508 - ldr r0, =gBankAttacker - ldrb r0, [r0] - mov r2, r9 - ldrh r1, [r2] - bl move_weather_interaction - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08047508 - movs r0, 0x3 - ands r6, r0 - cmp r6, 0x1 - beq _08047508 - ldr r2, =gBattleMoves - mov r0, r9 - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x1] - cmp r0, 0 - beq _08047508 - ldr r0, =gLastUsedAbility - strb r4, [r0] - ldr r1, =gBattleCommunication - movs r0, 0x3 - strb r0, [r1, 0x6] - mov r1, r8 - ldrb r0, [r1] - movs r1, 0x19 - bl RecordAbilityBattle -_08047508: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end b_wonderguard_and_levitate - - thumb_func_start b_attack_effectivity_adapt -b_attack_effectivity_adapt: @ 804752C - push {r4-r7,lr} - adds r6, r2, 0 - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 16 - lsrs r5, r1, 16 - ldr r7, =gBattleMoveDamage - ldr r0, [r7] - muls r0, r4 - movs r1, 0xA - bl __divsi3 - str r0, [r7] - cmp r0, 0 - bne _08047552 - cmp r4, 0 - beq _08047552 - movs r0, 0x1 - str r0, [r7] -_08047552: - cmp r4, 0x5 - beq _0804757A - cmp r4, 0x5 - bgt _08047564 - cmp r4, 0 - beq _0804756A - b _080475DE - .pool -_08047564: - cmp r4, 0x14 - beq _080475AC - b _080475DE -_0804756A: - ldrb r0, [r6] - movs r1, 0x8 - orrs r0, r1 - movs r1, 0xFB - ands r0, r1 - movs r1, 0xFD - ands r0, r1 - b _080475DC -_0804757A: - ldr r0, =gBattleMoves - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - cmp r0, 0 - beq _080475DE - ldrb r1, [r6] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - bne _080475DE - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080475A8 - movs r0, 0xFD - ands r0, r1 - b _080475DC - .pool -_080475A8: - movs r0, 0x4 - b _080475DA -_080475AC: - ldr r0, =gBattleMoves - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - cmp r0, 0 - beq _080475DE - ldrb r1, [r6] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - bne _080475DE - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080475D8 - movs r0, 0xFB - ands r0, r1 - b _080475DC - .pool -_080475D8: - movs r0, 0x2 -_080475DA: - orrs r0, r1 -_080475DC: - strb r0, [r6] -_080475DE: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end b_attack_effectivity_adapt - - thumb_func_start TypeCalc -TypeCalc: @ 80475E4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - lsls r0, 16 - lsrs r0, 16 - mov r10, r0 - lsls r1, 24 - lsrs r1, 24 - str r1, [sp, 0x4] - lsls r2, 24 - lsrs r2, 24 - mov r9, r2 - movs r0, 0 - mov r8, r0 - mov r0, sp - mov r1, r8 - strb r1, [r0] - mov r2, r10 - cmp r2, 0xA5 - bne _08047616 - movs r0, 0 - b _0804779E -_08047616: - ldr r1, =gBattleMoves - mov r3, r10 - lsls r2, r3, 1 - adds r0, r2, r3 - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0, 0x2] - str r0, [sp, 0x8] - ldr r1, =gBattleMons - movs r0, 0x58 - ldr r3, [sp, 0x4] - muls r0, r3 - adds r3, r0, r1 - adds r0, r3, 0 - adds r0, 0x21 - ldrb r0, [r0] - str r2, [sp, 0xC] - adds r5, r1, 0 - ldr r1, [sp, 0x8] - cmp r0, r1 - beq _0804764A - adds r0, r3, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, r1 - bne _0804765C -_0804764A: - ldr r4, =gBattleMoveDamage - ldr r1, [r4] - lsls r0, r1, 4 - subs r0, r1 - str r0, [r4] - movs r1, 0xA - bl __divsi3 - str r0, [r4] -_0804765C: - movs r0, 0x58 - mov r2, r9 - muls r2, r0 - adds r0, r2, 0 - adds r0, r5 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x1A - bne _08047690 - ldr r3, [sp, 0x8] - cmp r3, 0x4 - bne _08047690 - movs r1, 0x9 - mov r0, sp - ldrb r0, [r0] - orrs r0, r1 - mov r1, sp - strb r0, [r1] - b _08047740 - .pool -_08047690: - ldr r1, =gUnknown_0831ACE8 - mov r2, r8 - adds r0, r2, r1 - ldrb r0, [r0] - adds r2, r1, 0 - cmp r0, 0xFF - beq _08047740 - cmp r0, 0xFE - bne _080476B6 - movs r0, 0x58 - mov r3, r9 - muls r3, r0 - adds r0, r3, 0 - b _0804772E - .pool -_080476B0: - movs r0, 0x3 - add r8, r0 - b _08047718 -_080476B6: - ldr r7, =gUnknown_0831ACE8 - mov r1, r8 - adds r0, r1, r7 - ldrb r0, [r0] - ldr r2, [sp, 0x8] - cmp r0, r2 - bne _08047710 - adds r1, 0x1 - adds r1, r7 - ldr r2, =gBattleMons - movs r0, 0x58 - mov r3, r9 - muls r3, r0 - adds r0, r3, 0 - adds r5, r0, r2 - adds r6, r5, 0 - adds r6, 0x21 - ldrb r4, [r1] - ldrb r0, [r6] - cmp r4, r0 - bne _080476F0 - mov r0, r8 - adds r0, 0x2 - adds r0, r7 - ldrb r0, [r0] - mov r1, r10 - mov r2, sp - bl b_attack_effectivity_adapt -_080476F0: - adds r0, r5, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r4, r0 - bne _08047710 - ldrb r0, [r6] - cmp r0, r4 - beq _08047710 - mov r0, r8 - adds r0, 0x2 - adds r0, r7 - ldrb r0, [r0] - mov r1, r10 - mov r2, sp - bl b_attack_effectivity_adapt -_08047710: - movs r1, 0x3 - add r8, r1 - ldr r5, =gBattleMons - ldr r2, =gUnknown_0831ACE8 -_08047718: - mov r3, r8 - adds r0, r3, r2 - ldrb r0, [r0] - cmp r0, 0xFF - beq _08047740 - cmp r0, 0xFE - bne _080476B6 - movs r0, 0x58 - mov r1, r9 - muls r1, r0 - adds r0, r1, 0 -_0804772E: - adds r1, r5, 0 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 22 - ands r0, r1 - cmp r0, 0 - beq _080476B0 -_08047740: - movs r0, 0x58 - mov r2, r9 - muls r2, r0 - adds r0, r2, 0 - adds r0, r5 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x19 - bne _0804779A - mov r0, sp - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0804779A - ldr r0, [sp, 0x4] - mov r1, r10 - bl move_weather_interaction - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x2 - bne _0804779A - mov r0, sp - ldrb r3, [r0] - adds r0, r1, 0 - ands r0, r3 - cmp r0, 0 - beq _08047782 - movs r0, 0x6 - ands r0, r3 - cmp r0, 0x6 - bne _0804779A -_08047782: - ldr r0, =gBattleMoves - ldr r1, [sp, 0xC] - add r1, r10 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - cmp r0, 0 - beq _0804779A - mov r0, sp - movs r1, 0x1 - orrs r1, r3 - strb r1, [r0] -_0804779A: - mov r0, sp - ldrb r0, [r0] -_0804779E: - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end TypeCalc - - thumb_func_start ai_rate_move -ai_rate_move: @ 80477BC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - lsls r0, 16 - lsrs r6, r0, 16 - lsls r1, 16 - lsrs r1, 16 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x4] - movs r7, 0 - mov r0, sp - strb r7, [r0] - ldr r2, =gBaseStats - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x6] - mov r9, r1 - ldrb r0, [r0, 0x7] - mov r8, r0 - cmp r6, 0xA5 - bne _080477FC - movs r0, 0 - b _080478A0 - .pool -_080477FC: - ldr r2, =gBattleMoves - lsls r1, r6, 1 - adds r0, r1, r6 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x2] - mov r10, r0 - str r1, [sp, 0x8] - ldr r3, [sp, 0x4] - cmp r3, 0x1A - bne _08047824 - cmp r0, 0x4 - bne _08047824 - movs r1, 0x9 - mov r0, sp - strb r1, [r0] - b _0804786A - .pool -_08047824: - ldr r0, =gUnknown_0831ACE8 - adds r1, r7, r0 - ldrb r0, [r1] - cmp r0, 0xFF - beq _0804786A - adds r4, r1, 0 -_08047830: - ldrb r0, [r4] - cmp r0, 0xFE - beq _0804785C - cmp r0, r10 - bne _0804785C - ldrb r5, [r4, 0x1] - cmp r5, r9 - bne _0804784A - ldrb r0, [r4, 0x2] - adds r1, r6, 0 - mov r2, sp - bl b_attack_effectivity_adapt -_0804784A: - cmp r5, r8 - bne _0804785C - cmp r9, r8 - beq _0804785C - ldrb r0, [r4, 0x2] - adds r1, r6, 0 - mov r2, sp - bl b_attack_effectivity_adapt -_0804785C: - adds r4, 0x3 - adds r7, 0x3 - ldr r1, =gUnknown_0831ACE8 - adds r0, r7, r1 - ldrb r0, [r0] - cmp r0, 0xFF - bne _08047830 -_0804786A: - ldr r3, [sp, 0x4] - cmp r3, 0x19 - bne _0804789C - mov r0, sp - ldrb r2, [r0] - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - beq _08047884 - movs r0, 0x6 - ands r0, r2 - cmp r0, 0x6 - bne _0804789C -_08047884: - ldr r0, =gBattleMoves - ldr r3, [sp, 0x8] - adds r1, r3, r6 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - cmp r0, 0 - beq _0804789C - mov r0, sp - movs r1, 0x8 - orrs r1, r2 - strb r1, [r0] -_0804789C: - mov r0, sp - ldrb r0, [r0] -_080478A0: - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end ai_rate_move - - thumb_func_start sub_80478B8 -sub_80478B8: @ 80478B8 - push {r4,lr} - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0xF - ands r0, r1 - movs r1, 0x64 - subs r1, r0 - lsls r1, 16 - lsrs r1, 16 - ldr r4, =gBattleMoveDamage - ldr r0, [r4] - cmp r0, 0 - beq _080478EA - muls r0, r1 - str r0, [r4] - movs r1, 0x64 - bl __divsi3 - str r0, [r4] - cmp r0, 0 - bne _080478EA - movs r0, 0x1 - str r0, [r4] -_080478EA: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80478B8 - - thumb_func_start atk07_dmg_adjustment -atk07_dmg_adjustment: @ 80478F4 - push {r4-r7,lr} - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0xF - ands r0, r1 - movs r1, 0x64 - subs r1, r0 - lsls r1, 16 - lsrs r1, 16 - ldr r4, =gBattleMoveDamage - ldr r0, [r4] - cmp r0, 0 - beq _08047926 - muls r0, r1 - str r0, [r4] - movs r1, 0x64 - bl __divsi3 - str r0, [r4] - cmp r0, 0 - bne _08047926 - movs r0, 0x1 - str r0, [r4] -_08047926: - ldr r7, =gBattleMons - ldr r6, =gBankTarget - ldrb r2, [r6] - movs r5, 0x58 - adds r0, r2, 0 - muls r0, r5 - adds r1, r0, r7 - ldrh r0, [r1, 0x2E] - cmp r0, 0xAF - bne _0804795C - ldr r1, =gEnigmaBerries - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r4, [r0, 0x7] - ldrb r6, [r0, 0x1A] - b _08047976 - .pool -_0804795C: - ldrh r0, [r1, 0x2E] - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r4, r0, 24 - ldrb r0, [r6] - muls r0, r5 - adds r0, r7 - ldrh r0, [r0, 0x2E] - bl ItemId_GetHoldEffectParam - lsls r0, 24 - lsrs r6, r0, 24 -_08047976: - ldr r1, =gStringBank - ldr r5, =gBankTarget - ldrb r0, [r5] - strb r0, [r1] - cmp r4, 0x27 - bne _080479B4 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x64 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - cmp r0, r6 - bcs _080479B4 - ldrb r0, [r5] - movs r1, 0x27 - bl RecordItemEffectBattle - ldr r2, =gSpecialStatuses - ldrb r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r2, 0x80 - orrs r1, r2 - strb r1, [r0] -_080479B4: - ldr r2, =gBattleMons - ldr r3, =gBankTarget - ldrb r4, [r3] - movs r0, 0x58 - muls r0, r4 - adds r1, r2, 0 - adds r1, 0x50 - adds r0, r1 - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 17 - ands r1, r0 - adds r5, r2, 0 - cmp r1, 0 - bne _08047A84 - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0x65 - beq _08047A06 - ldr r0, =gProtectStructs - lsls r1, r4, 4 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 30 - cmp r0, 0 - blt _08047A06 - ldr r0, =gSpecialStatuses - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1] - lsrs r0, 7 - cmp r0, 0 - beq _08047A84 -_08047A06: - ldrb r0, [r3] - movs r4, 0x58 - muls r0, r4 - adds r0, r5 - ldrh r1, [r0, 0x28] - ldr r2, =gBattleMoveDamage - ldr r0, [r2] - cmp r1, r0 - bgt _08047A84 - subs r0, r1, 0x1 - str r0, [r2] - ldr r1, =gProtectStructs - ldrb r3, [r3] - lsls r0, r3, 4 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 30 - cmp r0, 0 - bge _08047A5C - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] - b _08047A84 - .pool -_08047A5C: - ldr r0, =gSpecialStatuses - lsls r1, r3, 2 - adds r1, r3 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1] - lsrs r0, 7 - cmp r0, 0 - beq _08047A84 - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gLastUsedItem - adds r0, r3, 0 - muls r0, r4 - adds r0, r5 - ldrh r0, [r0, 0x2E] - strh r0, [r1] -_08047A84: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk07_dmg_adjustment - - thumb_func_start atk08_dmg_adjustment2 -atk08_dmg_adjustment2: @ 8047AA4 - push {r4-r7,lr} - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0xF - ands r0, r1 - movs r1, 0x64 - subs r1, r0 - lsls r1, 16 - lsrs r1, 16 - ldr r4, =gBattleMoveDamage - ldr r0, [r4] - cmp r0, 0 - beq _08047AD6 - muls r0, r1 - str r0, [r4] - movs r1, 0x64 - bl __divsi3 - str r0, [r4] - cmp r0, 0 - bne _08047AD6 - movs r0, 0x1 - str r0, [r4] -_08047AD6: - ldr r7, =gBattleMons - ldr r6, =gBankTarget - ldrb r2, [r6] - movs r5, 0x58 - adds r0, r2, 0 - muls r0, r5 - adds r1, r0, r7 - ldrh r0, [r1, 0x2E] - cmp r0, 0xAF - bne _08047B0C - ldr r1, =gEnigmaBerries - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r4, [r0, 0x7] - ldrb r6, [r0, 0x1A] - b _08047B26 - .pool -_08047B0C: - ldrh r0, [r1, 0x2E] - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r4, r0, 24 - ldrb r0, [r6] - muls r0, r5 - adds r0, r7 - ldrh r0, [r0, 0x2E] - bl ItemId_GetHoldEffectParam - lsls r0, 24 - lsrs r6, r0, 24 -_08047B26: - ldr r1, =gStringBank - ldr r5, =gBankTarget - ldrb r0, [r5] - strb r0, [r1] - cmp r4, 0x27 - bne _08047B64 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x64 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - cmp r0, r6 - bcs _08047B64 - ldrb r0, [r5] - movs r1, 0x27 - bl RecordItemEffectBattle - ldr r2, =gSpecialStatuses - ldrb r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r2, 0x80 - orrs r1, r2 - strb r1, [r0] -_08047B64: - ldr r4, =gBattleMons - ldr r6, =gBankTarget - ldrb r2, [r6] - movs r7, 0x58 - adds r3, r2, 0 - muls r3, r7 - adds r0, r4, 0 - adds r0, 0x50 - adds r0, r3, r0 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 17 - ands r0, r1 - cmp r0, 0 - bne _08047C10 - ldr r5, =gProtectStructs - lsls r0, r2, 4 - adds r0, r5 - ldrb r0, [r0] - lsls r0, 30 - cmp r0, 0 - blt _08047BA2 - ldr r0, =gSpecialStatuses - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1] - lsrs r0, 7 - cmp r0, 0 - beq _08047C10 -_08047BA2: - adds r0, r3, r4 - ldrh r1, [r0, 0x28] - ldr r2, =gBattleMoveDamage - ldr r0, [r2] - cmp r1, r0 - bgt _08047C10 - subs r0, r1, 0x1 - str r0, [r2] - ldrb r3, [r6] - lsls r0, r3, 4 - adds r0, r5 - ldrb r0, [r0] - lsls r0, 30 - cmp r0, 0 - bge _08047BE8 - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] - b _08047C10 - .pool -_08047BE8: - ldr r0, =gSpecialStatuses - lsls r1, r3, 2 - adds r1, r3 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1] - lsrs r0, 7 - cmp r0, 0 - beq _08047C10 - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gLastUsedItem - adds r0, r3, 0 - muls r0, r7 - adds r0, r4 - ldrh r0, [r0, 0x2E] - strh r0, [r1] -_08047C10: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk08_dmg_adjustment2 - - thumb_func_start atk09_attackanimation -atk09_attackanimation: @ 8047C30 - push {r4-r7,lr} - sub sp, 0x10 - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - beq _08047C3E - b _08047DB6 -_08047C3E: - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - ands r0, r1 - ldr r5, =gCurrentMove - cmp r0, 0 - beq _08047C8C - ldrh r0, [r5] - cmp r0, 0x90 - beq _08047C8C - cmp r0, 0xA4 - beq _08047C8C - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082DABB9 - str r0, [r4] - ldr r1, =gBattleScripting - ldrb r0, [r1, 0x18] - adds r0, 0x1 - strb r0, [r1, 0x18] - ldrb r0, [r1, 0x19] - adds r0, 0x1 - strb r0, [r1, 0x19] - b _08047DB6 - .pool -_08047C8C: - ldr r2, =gBattleMoves - ldrh r1, [r5] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x6] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _08047CB2 - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _08047CB2 - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08047CBA -_08047CB2: - ldr r0, =gBattleScripting - ldrb r0, [r0, 0x19] - cmp r0, 0 - bne _08047D88 -_08047CBA: - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - bne _08047DA8 - ldr r1, =gActiveBank - ldr r3, =gBankAttacker - ldrb r0, [r3] - strb r0, [r1] - ldr r2, =gBattleMons - ldr r0, =gBankTarget - ldrb r1, [r0] - movs r0, 0x58 - adds r4, r1, 0 - muls r4, r0 - adds r0, r2, 0 - adds r0, 0x50 - adds r0, r4, r0 - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 17 - ands r1, r0 - adds r7, r3, 0 - mov r12, r2 - cmp r1, 0 - beq _08047D18 - ldr r0, =gUnknown_02024212 - ldrb r6, [r0] - b _08047D42 - .pool -_08047D18: - ldr r3, =gUnknown_02024212 - ldrb r0, [r3] - cmp r0, 0x1 - bls _08047D40 - mov r1, r12 - adds r0, r4, r1 - ldrh r2, [r0, 0x28] - ldr r0, =gBattleMoveDamage - ldr r1, [r0] - movs r6, 0x1 - adds r4, r0, 0 - cmp r2, r1 - ble _08047D44 - ldrb r6, [r3] - b _08047D44 - .pool -_08047D40: - ldrb r6, [r3] -_08047D42: - ldr r4, =gBattleMoveDamage -_08047D44: - ldrh r1, [r5] - ldr r5, =gBattleScripting - ldrb r2, [r5, 0x18] - ldr r0, =gBattleMovePower - ldrh r3, [r0] - ldr r0, [r4] - str r0, [sp] - ldrb r4, [r7] - movs r0, 0x58 - muls r0, r4 - add r0, r12 - adds r0, 0x2B - ldrb r0, [r0] - str r0, [sp, 0x4] - ldrb r4, [r7] - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - ldr r4, =gDisableStructs - adds r0, r4 - str r0, [sp, 0x8] - str r6, [sp, 0xC] - movs r0, 0 - bl dp01_build_cmdbuf_x0F_aa_b_cc_dddd_e_mlc_weather_00_x1Cbytes - ldrb r0, [r5, 0x18] - adds r0, 0x1 - strb r0, [r5, 0x18] - ldrb r0, [r5, 0x19] - adds r0, 0x1 - strb r0, [r5, 0x19] - ldrb r0, [r7] - bl MarkBufferBankForExecution -_08047D88: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - b _08047DB6 - .pool -_08047DA8: - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082DABB9 - str r0, [r4] -_08047DB6: - add sp, 0x10 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk09_attackanimation - - thumb_func_start atk0A_waitanimation -atk0A_waitanimation: @ 8047DC8 - push {lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _08047DDA - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_08047DDA: - pop {r0} - bx r0 - .pool - thumb_func_end atk0A_waitanimation - - thumb_func_start atk0B_healthbarupdate -atk0B_healthbarupdate: @ 8047DE8 - push {r4,lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _08047EAA - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - bne _08047EA2 - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r2, =gActiveBank - strb r0, [r2] - ldr r1, =gBattleMons - ldrb r2, [r2] - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 17 - ands r0, r1 - cmp r0, 0 - beq _08047E68 - ldr r0, =gDisableStructs - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0xA] - cmp r0, 0 - beq _08047E68 - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 1 - ands r0, r1 - cmp r0, 0 - bne _08047E68 - movs r0, 0x80 - adds r1, r2, 0 - bl b_std_message - b _08047EA2 - .pool -_08047E68: - ldr r0, =gBattleMoveDamage - ldr r0, [r0] - ldr r1, =0x00002710 - cmp r0, r1 - bgt _08047E76 - lsls r0, 16 - lsrs r1, r0, 16 -_08047E76: - movs r0, 0 - bl dp01_build_cmdbuf_x18_0_aa_health_bar_update - ldr r4, =gActiveBank - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08047EA2 - ldr r0, =gBattleMoveDamage - ldr r0, [r0] - cmp r0, 0 - ble _08047EA2 - ldr r0, =gBattleResults - ldrb r1, [r0, 0x5] - movs r2, 0x1 - orrs r1, r2 - strb r1, [r0, 0x5] -_08047EA2: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x2 - str r0, [r1] -_08047EAA: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk0B_healthbarupdate - - thumb_func_start atk0C_datahpupdate -atk0C_datahpupdate: @ 8047EC4 - push {r4-r7,lr} - sub sp, 0x4 - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - beq _08047ED2 - b _080482A2 -_08047ED2: - ldr r0, =gBattleStruct - ldr r0, [r0] - ldrb r1, [r0, 0x13] - cmp r1, 0 - beq _08047EF4 - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _08047EF4 - movs r6, 0x3F - ands r6, r1 - b _08047F04 - .pool -_08047EF4: - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r6, [r0, 0x2] -_08047F04: - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - beq _08047F12 - b _08048274 -_08047F12: - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r7, =gActiveBank - strb r0, [r7] - ldr r1, =gBattleMons - ldrb r2, [r7] - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 17 - ands r0, r1 - cmp r0, 0 - beq _08048028 - ldr r0, =gDisableStructs - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - adds r4, r1, r0 - ldrb r1, [r4, 0xA] - mov r12, r0 - cmp r1, 0 - beq _08048028 - ldr r0, =gHitMarker - ldr r3, [r0] - movs r0, 0x80 - lsls r0, 1 - ands r3, r0 - cmp r3, 0 - bne _08048028 - adds r5, r1, 0 - ldr r6, =gBattleMoveDamage - ldr r4, [r6] - cmp r5, r4 - blt _08047FBC - ldr r0, =gSpecialStatuses - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 2 - adds r0, 0x4 - adds r1, r0 - ldr r0, [r1] - cmp r0, 0 - bne _08047F76 - str r4, [r1] -_08047F76: - ldrb r0, [r7] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - add r1, r12 - ldr r2, [r6] - ldrb r0, [r1, 0xA] - subs r0, r2 - strb r0, [r1, 0xA] - ldr r1, =gUnknown_020241F4 - ldr r0, [r6] - str r0, [r1] - b _08047FEC - .pool -_08047FBC: - ldr r0, =gSpecialStatuses - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 2 - adds r0, 0x4 - adds r1, r0 - ldr r0, [r1] - cmp r0, 0 - bne _08047FD0 - str r5, [r1] -_08047FD0: - ldr r2, =gUnknown_020241F4 - ldrb r1, [r7] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r12 - ldrb r0, [r0, 0xA] - str r0, [r2] - ldrb r1, [r7] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r12 - strb r3, [r0, 0xA] -_08047FEC: - ldr r0, =gActiveBank - ldrb r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r12 - ldrb r0, [r0, 0xA] - cmp r0, 0 - beq _08048000 - b _0804829A -_08048000: - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x2 - str r0, [r4] - bl b_movescr_stack_push_cursor - ldr r0, =gUnknown_082DB6FB - str r0, [r4] - b _080482A2 - .pool -_08048028: - ldr r0, =gHitMarker - ldr r2, [r0] - ldr r1, =0xfffffeff - ands r2, r1 - str r2, [r0] - ldr r1, =gBattleMoveDamage - ldr r5, [r1] - mov r12, r0 - adds r7, r1, 0 - cmp r5, 0 - bge _0804807C - ldr r4, =gBattleMons - ldr r2, =gActiveBank - ldrb r0, [r2] - movs r3, 0x58 - adds r1, r0, 0 - muls r1, r3 - adds r1, r4 - ldrh r0, [r1, 0x28] - subs r0, r5 - strh r0, [r1, 0x28] - ldrb r0, [r2] - muls r0, r3 - adds r1, r0, r4 - ldrh r3, [r1, 0x2C] - ldrh r0, [r1, 0x28] - adds r5, r2, 0 - cmp r0, r3 - bhi _08048064 - b _0804823A -_08048064: - strh r3, [r1, 0x28] - b _0804823A - .pool -_0804807C: - movs r0, 0x20 - ands r0, r2 - cmp r0, 0 - beq _08048098 - movs r0, 0x21 - negs r0, r0 - ands r2, r0 - mov r0, r12 - str r2, [r0] - ldr r5, =gActiveBank - b _080480E0 - .pool -_08048098: - ldr r0, =gTakenDmg - ldr r2, =gActiveBank - ldrb r1, [r2] - lsls r1, 2 - adds r1, r0 - ldr r0, [r1] - adds r0, r5 - str r0, [r1] - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - adds r5, r2, 0 - cmp r0, 0 - bne _080480D4 - ldr r1, =gTakenDmgBanks - ldrb r0, [r5] - adds r0, r1 - ldr r1, =gBankAttacker - b _080480DC - .pool -_080480D4: - ldr r1, =gTakenDmgBanks - ldrb r0, [r5] - adds r0, r1 - ldr r1, =gBankTarget -_080480DC: - ldrb r1, [r1] - strb r1, [r0] -_080480E0: - ldr r4, =gBattleMons - ldrb r0, [r5] - movs r3, 0x58 - muls r0, r3 - adds r2, r0, r4 - ldrh r0, [r2, 0x28] - ldr r1, [r7] - cmp r0, r1 - ble _08048110 - subs r0, r1 - strh r0, [r2, 0x28] - ldr r0, =gUnknown_020241F4 - str r1, [r0] - adds r7, r0, 0 - b _08048120 - .pool -_08048110: - ldr r2, =gUnknown_020241F4 - str r0, [r2] - ldrb r0, [r5] - muls r0, r3 - adds r0, r4 - movs r1, 0 - strh r1, [r0, 0x28] - adds r7, r2, 0 -_08048120: - ldr r2, =gSpecialStatuses - ldrb r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r1, r2, 0x4 - adds r3, r0, r1 - ldr r0, [r3] - adds r4, r2, 0 - cmp r0, 0 - bne _08048148 - mov r1, r12 - ldr r0, [r1] - movs r1, 0x80 - lsls r1, 13 - ands r0, r1 - cmp r0, 0 - bne _08048148 - ldr r0, [r7] - str r0, [r3] -_08048148: - cmp r6, 0x8 - bhi _080481D0 - mov r1, r12 - ldr r0, [r1] - movs r1, 0x80 - lsls r1, 13 - ands r0, r1 - cmp r0, 0 - bne _080481CC - ldr r0, =gCurrentMove - ldrh r0, [r0] - cmp r0, 0xDC - beq _080481CC - ldr r3, =gProtectStructs - ldrb r0, [r5] - lsls r0, 4 - adds r1, r3, 0x4 - adds r0, r1 - ldr r2, [r7] - str r2, [r0] - ldrb r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r1, r4, 0 - adds r1, 0x8 - adds r0, r1 - str r2, [r0] - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - cmp r0, 0 - bne _080481AC - ldrb r0, [r5] - lsls r0, 4 - adds r0, r3 - ldr r2, =gBankAttacker - b _080481B4 - .pool -_080481AC: - ldrb r0, [r5] - lsls r0, 4 - adds r0, r3 - ldr r2, =gBankTarget -_080481B4: - ldrb r1, [r2] - strb r1, [r0, 0xC] - ldrb r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r1, [r2] - strb r1, [r0, 0x10] - b _0804823A - .pool -_080481CC: - cmp r6, 0x8 - bls _0804823A -_080481D0: - mov r1, r12 - ldr r0, [r1] - movs r1, 0x80 - lsls r1, 13 - ands r0, r1 - cmp r0, 0 - bne _0804823A - ldr r3, =gProtectStructs - ldrb r0, [r5] - lsls r0, 4 - adds r1, r3, 0 - adds r1, 0x8 - adds r0, r1 - ldr r2, [r7] - str r2, [r0] - ldrb r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r1, r4, 0 - adds r1, 0xC - adds r0, r1 - str r2, [r0] - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - cmp r0, 0 - bne _08048220 - ldrb r0, [r5] - lsls r0, 4 - adds r0, r3 - ldr r2, =gBankAttacker - b _08048228 - .pool -_08048220: - ldrb r0, [r5] - lsls r0, 4 - adds r0, r3 - ldr r2, =gBankTarget -_08048228: - ldrb r1, [r2] - strb r1, [r0, 0xD] - ldrb r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r1, [r2] - strb r1, [r0, 0x11] -_0804823A: - mov r1, r12 - ldr r0, [r1] - ldr r1, =0xffefffff - ands r0, r1 - mov r1, r12 - str r0, [r1] - ldrb r1, [r5] - movs r0, 0x58 - muls r0, r1 - ldr r1, =gBattleMons + 0x28 - adds r0, r1 - str r0, [sp] - movs r0, 0 - movs r1, 0x2A - movs r2, 0 - movs r3, 0x2 - bl EmitSetAttributes - ldrb r0, [r5] - bl MarkBufferBankForExecution - b _0804829A - .pool -_08048274: - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r1, =gActiveBank - strb r0, [r1] - ldr r2, =gSpecialStatuses - ldrb r1, [r1] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r2, 0x4 - adds r1, r0, r2 - ldr r0, [r1] - cmp r0, 0 - bne _0804829A - ldr r0, =0x0000ffff - str r0, [r1] -_0804829A: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x2 - str r0, [r1] -_080482A2: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk0C_datahpupdate - - thumb_func_start atk0D_critmessage -atk0D_critmessage: @ 80482BC - push {lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _080482F2 - ldr r0, =gCritMultiplier - ldrb r0, [r0] - cmp r0, 0x2 - bne _080482EA - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - bne _080482EA - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0xD9 - bl b_std_message - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x7] -_080482EA: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_080482F2: - pop {r0} - bx r0 - .pool - thumb_func_end atk0D_critmessage - - thumb_func_start atk0E_effectiveness_sound -atk0E_effectiveness_sound: @ 8048310 - push {r4,lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _080483D0 - ldr r4, =gActiveBank - ldr r0, =gBankTarget - ldrb r0, [r0] - strb r0, [r4] - ldr r1, =gBattleMoveFlags - ldrb r2, [r1] - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - bne _080483C8 - movs r0, 0xFE - ands r0, r2 - cmp r0, 0x10 - beq _08048382 - cmp r0, 0x10 - bgt _0804835E - cmp r0, 0x4 - beq _08048372 - cmp r0, 0x4 - bgt _08048358 - cmp r0, 0x2 - beq _0804836C - b _08048382 - .pool -_08048358: - cmp r0, 0x8 - beq _080483C8 - b _08048382 -_0804835E: - cmp r0, 0x40 - beq _08048382 - cmp r0, 0x40 - bgt _08048382 - cmp r0, 0x20 - beq _080483C8 - b _08048382 -_0804836C: - movs r0, 0 - movs r1, 0xE - b _08048376 -_08048372: - movs r0, 0 - movs r1, 0xC -_08048376: - bl dp01_build_cmdbuf_x2B_aa_0 - ldrb r0, [r4] - bl MarkBufferBankForExecution - b _080483C8 -_08048382: - ldrb r1, [r1] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08048392 - movs r0, 0 - movs r1, 0xE - b _0804839E -_08048392: - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080483B0 - movs r0, 0 - movs r1, 0xC -_0804839E: - bl dp01_build_cmdbuf_x2B_aa_0 - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution - b _080483C8 - .pool -_080483B0: - movs r0, 0x28 - ands r0, r1 - cmp r0, 0 - bne _080483C8 - movs r0, 0 - movs r1, 0xD - bl dp01_build_cmdbuf_x2B_aa_0 - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution -_080483C8: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_080483D0: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk0E_effectiveness_sound - - thumb_func_start atk0F_resultmessage -atk0F_resultmessage: @ 80483E0 - push {r4-r7,lr} - movs r3, 0 - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - beq _080483EE - b _08048580 -_080483EE: - ldr r1, =gBattleMoveFlags - ldrb r2, [r1] - movs r4, 0x1 - adds r0, r4, 0 - ands r0, r2 - adds r6, r1, 0 - ldr r7, =gBattleCommunication - cmp r0, 0 - beq _0804842C - movs r0, 0x8 - ands r0, r2 - cmp r0, 0 - beq _0804840E - ldrb r0, [r7, 0x6] - cmp r0, 0x2 - bls _0804842C -_0804840E: - ldr r1, =gUnknown_085CC834 - ldrb r0, [r7, 0x6] - lsls r0, 1 - adds r0, r1 - ldrh r3, [r0] - strb r4, [r7, 0x7] - b _0804856A - .pool -_0804842C: - movs r0, 0x1 - strb r0, [r7, 0x7] - ldrb r5, [r6] - movs r0, 0xFE - ands r0, r5 - cmp r0, 0x10 - beq _08048470 - cmp r0, 0x10 - bgt _08048452 - cmp r0, 0x4 - beq _0804846C - cmp r0, 0x4 - bgt _0804844C - cmp r0, 0x2 - beq _08048468 - b _080484B8 -_0804844C: - cmp r0, 0x8 - beq _080484C4 - b _080484B8 -_08048452: - cmp r0, 0x40 - beq _08048474 - cmp r0, 0x40 - bgt _08048462 - cmp r0, 0x20 - bne _08048460 - b _08048564 -_08048460: - b _080484B8 -_08048462: - cmp r0, 0x80 - beq _08048478 - b _080484B8 -_08048468: - movs r3, 0xDE - b _0804856E -_0804846C: - movs r3, 0xDD - b _0804856E -_08048470: - movs r3, 0xDA - b _0804856E -_08048474: - movs r3, 0x99 - b _0804856E -_08048478: - ldr r4, =gLastUsedItem - ldr r2, =gBattleMons - ldr r3, =gBankTarget - ldrb r1, [r3] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - ldrh r0, [r0, 0x2E] - strh r0, [r4] - ldr r1, =gStringBank - ldrb r0, [r3] - strb r0, [r1] - movs r0, 0x3F - ands r0, r5 - strb r0, [r6] - bl b_movescr_stack_push_cursor - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB816 - b _0804857E - .pool -_080484B8: - adds r2, r6, 0 - ldrb r5, [r2] - movs r0, 0x8 - ands r0, r5 - cmp r0, 0 - beq _080484C8 -_080484C4: - movs r3, 0x1B - b _0804856E -_080484C8: - movs r0, 0x10 - ands r0, r5 - cmp r0, 0 - beq _080484F0 - movs r0, 0xEF - ands r0, r5 - movs r1, 0xFD - ands r0, r1 - movs r1, 0xFB - ands r0, r1 - strb r0, [r2] - bl b_movescr_stack_push_cursor - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB1CE - b _0804857E - .pool -_080484F0: - movs r0, 0x40 - ands r0, r5 - cmp r0, 0 - beq _08048510 - movs r0, 0x3F - ands r0, r5 - strb r0, [r2] - bl b_movescr_stack_push_cursor - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB1C7 - b _0804857E - .pool -_08048510: - movs r0, 0x80 - ands r0, r5 - cmp r0, 0 - beq _08048558 - ldr r4, =gLastUsedItem - ldr r2, =gBattleMons - ldr r3, =gBankTarget - ldrb r1, [r3] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - ldrh r0, [r0, 0x2E] - strh r0, [r4] - ldr r1, =gStringBank - ldrb r0, [r3] - strb r0, [r1] - movs r0, 0x3F - ands r0, r5 - strb r0, [r6] - bl b_movescr_stack_push_cursor - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB816 - b _0804857E - .pool -_08048558: - movs r0, 0x20 - ands r0, r5 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _08048568 -_08048564: - movs r3, 0xE5 - b _0804856E -_08048568: - strb r0, [r7, 0x7] -_0804856A: - cmp r3, 0 - beq _08048578 -_0804856E: - adds r0, r3, 0 - ldr r1, =gBankAttacker - ldrb r1, [r1] - bl b_std_message -_08048578: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 -_0804857E: - str r0, [r1] -_08048580: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk0F_resultmessage - - thumb_func_start atk10_printstring -atk10_printstring: @ 8048590 - push {r4,lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _080485BA - ldr r4, =gBattlescriptCurrInstr - ldr r1, [r4] - ldrb r0, [r1, 0x1] - ldrb r1, [r1, 0x2] - lsls r1, 8 - orrs r0, r1 - ldr r1, =gBankAttacker - ldrb r1, [r1] - bl b_std_message - ldr r0, [r4] - adds r0, 0x3 - str r0, [r4] - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x7] -_080485BA: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk10_printstring - - thumb_func_start atk11_printstring_playeronly -atk11_printstring_playeronly: @ 80485D0 - push {r4,r5,lr} - ldr r5, =gActiveBank - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r5] - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r1, [r0, 0x1] - ldrb r0, [r0, 0x2] - lsls r0, 8 - orrs r1, r0 - movs r0, 0 - bl dp01_build_cmdbuf_x11_TODO - ldrb r0, [r5] - bl MarkBufferBankForExecution - ldr r0, [r4] - adds r0, 0x3 - str r0, [r4] - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x7] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk11_printstring_playeronly - - thumb_func_start atk12_waitmessage -atk12_waitmessage: @ 8048614 - push {r4-r6,lr} - ldr r0, =gBattleExecBuffer - ldr r4, [r0] - cmp r4, 0 - bne _08048662 - ldr r6, =gBattleCommunication - ldrb r0, [r6, 0x7] - cmp r0, 0 - bne _0804863C - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x3 - str r0, [r1] - b _08048662 - .pool -_0804863C: - ldr r5, =gBattlescriptCurrInstr - ldr r2, [r5] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldr r3, =gUnknown_0202432C - ldrh r0, [r3] - adds r0, 0x1 - strh r0, [r3] - lsls r0, 16 - lsrs r0, 16 - cmp r0, r1 - bcc _08048662 - movs r1, 0 - strh r4, [r3] - adds r0, r2, 0x3 - str r0, [r5] - strb r1, [r6, 0x7] -_08048662: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atk12_waitmessage - - thumb_func_start atk13_printfromtable -atk13_printfromtable: @ 8048670 - push {r4,r5,lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _080486AE - ldr r4, =gBattlescriptCurrInstr - ldr r2, [r4] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - ldr r5, =gBattleCommunication - ldrb r0, [r5, 0x5] - lsls r0, 1 - adds r1, r0 - ldrh r0, [r1] - ldr r1, =gBankAttacker - ldrb r1, [r1] - bl b_std_message - ldr r0, [r4] - adds r0, 0x5 - str r0, [r4] - movs r0, 0x1 - strb r0, [r5, 0x7] -_080486AE: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk13_printfromtable - - thumb_func_start atk14_printfromtable_playeronly -atk14_printfromtable_playeronly: @ 80486C4 - push {r4-r6,lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0804870E - ldr r5, =gBattlescriptCurrInstr - ldr r2, [r5] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - ldr r6, =gBattleCommunication - ldrb r0, [r6, 0x5] - lsls r0, 1 - adds r1, r0 - ldr r4, =gActiveBank - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r4] - ldrh r1, [r1] - movs r0, 0 - bl dp01_build_cmdbuf_x11_TODO - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r0, [r5] - adds r0, 0x5 - str r0, [r5] - movs r0, 0x1 - strb r0, [r6, 0x7] -_0804870E: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atk14_printfromtable_playeronly - - thumb_func_start sub_8048728 -sub_8048728: @ 8048728 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - movs r1, 0 - ldr r0, =gNoOfAllBanks - ldrb r3, [r0] - cmp r1, r3 - bge _0804874E - ldr r4, =gTurnOrder - ldrb r0, [r4] - cmp r0, r2 - beq _0804874E -_08048740: - adds r1, 0x1 - cmp r1, r3 - bge _0804874E - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, r2 - bne _08048740 -_0804874E: - lsls r0, r1, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8048728 - - thumb_func_start SetMoveEffect -SetMoveEffect: @ 8048760 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - lsrs r6, r1, 24 - movs r0, 0 - mov r10, r0 - movs r7, 0 - movs r1, 0x1 - str r1, [sp, 0x4] - ldr r1, =gBattleCommunication - ldrb r3, [r1, 0x3] - movs r0, 0x40 - ands r0, r3 - cmp r0, 0 - beq _080487B8 - ldr r2, =gEffectBank - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r2] - movs r0, 0xBF - ands r0, r3 - adds r3, r1, 0 - strb r0, [r3, 0x3] - movs r7, 0x40 - ldr r1, =gBattleScripting - ldr r0, =gBankTarget - b _080487C4 - .pool -_080487B8: - ldr r2, =gEffectBank - ldr r0, =gBankTarget - ldrb r0, [r0] - strb r0, [r2] - ldr r1, =gBattleScripting - ldr r0, =gBankAttacker -_080487C4: - ldrb r0, [r0] - strb r0, [r1, 0x17] - mov r9, r2 - ldr r2, =gBattleMons - mov r4, r9 - ldrb r1, [r4] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x13 - bne _08048828 - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 6 - ands r0, r1 - cmp r0, 0 - bne _08048828 - cmp r5, 0 - bne _08048828 - ldr r1, =gBattleCommunication - ldrb r0, [r1, 0x3] - cmp r0, 0x9 - bhi _08048828 - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - ldr r2, =gBattleCommunication - strb r5, [r2, 0x3] - bl _080499B8 - .pool -_08048828: - mov r3, r9 - ldrb r0, [r3] - bl GetBankIdentity - ldr r2, =gSideAffecting - movs r1, 0x1 - ands r1, r0 - lsls r1, 1 - adds r1, r2 - ldrh r1, [r1] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08048880 - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 6 - ands r0, r1 - cmp r0, 0 - bne _08048880 - cmp r5, 0 - bne _08048880 - ldr r0, =gBattleCommunication - ldrb r1, [r0, 0x3] - cmp r1, 0x7 - bhi _08048880 - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - ldr r4, =gBattleCommunication - strb r5, [r4, 0x3] - bl _080499B8 - .pool -_08048880: - ldr r3, =gBattleMons - ldr r2, =gEffectBank - ldrb r1, [r2] - movs r0, 0x58 - muls r0, r1 - adds r0, r3 - ldrh r4, [r0, 0x28] - mov r9, r2 - mov r8, r3 - cmp r4, 0 - bne _080488C4 - ldr r1, =gBattleCommunication - ldrb r0, [r1, 0x3] - cmp r0, 0xB - beq _080488C4 - cmp r0, 0x1F - beq _080488C4 - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - ldr r2, =gBattleCommunication - strb r4, [r2, 0x3] - bl _080499B8 - .pool -_080488C4: - mov r3, r9 - ldrb r1, [r3] - movs r0, 0x58 - muls r0, r1 - mov r1, r8 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 17 - ands r0, r1 - cmp r0, 0 - beq _080488FC - cmp r7, 0x40 - beq _080488FC - ldr r0, =gBattlescriptCurrInstr - ldr r1, [r0] - adds r1, 0x1 - str r1, [r0] - movs r0, 0 - ldr r4, =gBattleCommunication - strb r0, [r4, 0x3] - bl _080499B8 - .pool -_080488FC: - ldr r1, =gBattleCommunication - ldrb r0, [r1, 0x3] - cmp r0, 0x6 - bls _08048906 - b _08048F40 -_08048906: - ldr r1, =gStatusFlagsForMoveEffects - ldr r2, =gBattleCommunication - ldrb r0, [r2, 0x3] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0x10 - bne _08048918 - b _08048AFC -_08048918: - cmp r0, 0x10 - bhi _08048930 - cmp r0, 0x7 - beq _0804894A - cmp r0, 0x8 - beq _08048A00 - b _08048DF4 - .pool -_08048930: - cmp r0, 0x40 - bne _08048936 - b _08048C84 -_08048936: - cmp r0, 0x40 - bhi _08048942 - cmp r0, 0x20 - bne _08048940 - b _08048BEA -_08048940: - b _08048DF4 -_08048942: - cmp r0, 0x80 - bne _08048948 - b _08048D02 -_08048948: - b _08048DF4 -_0804894A: - mov r3, r9 - ldrb r1, [r3] - movs r0, 0x58 - muls r0, r1 - add r0, r8 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x2B - beq _080489AC - ldr r0, =gActiveBank - movs r1, 0 - strb r1, [r0] - ldr r1, =gNoOfAllBanks - ldrb r3, [r1] - adds r7, r0, 0 - mov r12, r1 - cmp r3, 0 - beq _080489B8 - mov r4, r8 - ldr r0, [r4, 0x50] - movs r1, 0x70 - ands r0, r1 - cmp r0, 0 - bne _080489B8 - adds r1, r7, 0 - mov r6, r8 - adds r6, 0x50 - movs r5, 0x58 - movs r4, 0x70 -_08048984: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, r3 - bcs _080489B8 - ldrb r0, [r7] - muls r0, r5 - adds r0, r6 - ldr r0, [r0] - ands r0, r4 - cmp r0, 0 - beq _08048984 - b _080489B8 - .pool -_080489AC: - ldr r0, =gActiveBank - ldr r2, =gNoOfAllBanks - ldrb r1, [r2] - strb r1, [r0] - adds r7, r0, 0 - mov r12, r2 -_080489B8: - mov r0, r9 - ldrb r2, [r0] - movs r0, 0x58 - adds r1, r2, 0 - muls r1, r0 - mov r0, r8 - adds r0, 0x4C - adds r0, r1, r0 - ldr r0, [r0] - cmp r0, 0 - beq _080489D0 - b _08048DF4 -_080489D0: - ldrb r0, [r7] - mov r3, r12 - ldrb r3, [r3] - cmp r0, r3 - beq _080489DC - b _08048DF4 -_080489DC: - mov r4, r8 - adds r0, r1, r4 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x48 - bne _080489EA - b _08048DF4 -_080489EA: - cmp r0, 0xF - bne _080489F0 - b _08048DF4 -_080489F0: - adds r0, r2, 0 - bl CancelMultiTurnMoves - b _08048DE4 - .pool -_08048A00: - mov r2, r9 - ldrb r1, [r2] - movs r0, 0x58 - muls r0, r1 - add r0, r8 - adds r0, 0x20 - ldrb r1, [r0] - cmp r1, 0x11 - bne _08048A70 - cmp r5, 0x1 - beq _08048A1A - cmp r6, 0x80 - bne _08048A70 -_08048A1A: - ldr r0, =gLastUsedAbility - strb r1, [r0] - mov r3, r9 - ldrb r0, [r3] - movs r1, 0x11 - bl RecordAbilityBattle - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082DB5E9 - str r0, [r4] - ldr r2, =gHitMarker - ldr r1, [r2] - movs r0, 0x80 - lsls r0, 6 - ands r0, r1 - cmp r0, 0 - bne _08048A46 - b _08048D20 -_08048A46: - movs r0, 0x1 - ldr r4, =gBattleCommunication - strb r0, [r4, 0x5] -_08048A4C: - ldr r0, =0xffffdfff - ands r1, r0 - str r1, [r2] - bl _080499B2 - .pool -_08048A70: - mov r2, r9 - ldrb r0, [r2] - movs r1, 0x58 - muls r0, r1 - add r0, r8 - adds r1, r0, 0 - adds r1, 0x21 - ldrb r1, [r1] - cmp r1, 0x3 - beq _08048A94 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0x3 - beq _08048A94 - cmp r1, 0x8 - beq _08048A94 - cmp r0, 0x8 - bne _08048AAE -_08048A94: - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 6 - ands r0, r1 - cmp r0, 0 - beq _08048AAE - cmp r5, 0x1 - bne _08048AA8 - b _08048D66 -_08048AA8: - cmp r6, 0x80 - bne _08048AAE - b _08048D66 -_08048AAE: - mov r3, r9 - ldrb r1, [r3] - movs r0, 0x58 - muls r1, r0 - mov r4, r8 - adds r3, r1, r4 - adds r0, r3, 0 - adds r0, 0x21 - ldrb r4, [r0] - cmp r4, 0x3 - bne _08048AC6 - b _08048DF4 -_08048AC6: - adds r0, 0x1 - ldrb r0, [r0] - cmp r0, 0x3 - bne _08048AD0 - b _08048DF4 -_08048AD0: - cmp r4, 0x8 - bne _08048AD6 - b _08048DF4 -_08048AD6: - cmp r0, 0x8 - bne _08048ADC - b _08048DF4 -_08048ADC: - mov r0, r8 - adds r0, 0x4C - adds r0, r1, r0 - ldr r0, [r0] - cmp r0, 0 - beq _08048AEA - b _08048DF4 -_08048AEA: - adds r0, r3, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x11 - bne _08048AF6 - b _08048DF4 -_08048AF6: - b _08048DE4 - .pool -_08048AFC: - mov r2, r9 - ldrb r1, [r2] - movs r0, 0x58 - muls r0, r1 - add r0, r8 - adds r0, 0x20 - ldrb r1, [r0] - cmp r1, 0x29 - bne _08048B54 - cmp r5, 0x1 - beq _08048B16 - cmp r6, 0x80 - bne _08048B54 -_08048B16: - ldr r0, =gLastUsedAbility - strb r1, [r0] - mov r3, r9 - ldrb r0, [r3] - movs r1, 0x29 - bl RecordAbilityBattle - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082DB5D1 - str r0, [r4] - ldr r2, =gHitMarker - ldr r1, [r2] - movs r0, 0x80 - lsls r0, 6 - ands r0, r1 - cmp r0, 0 - beq _08048B42 - b _08048A46 -_08048B42: - b _08048D20 - .pool -_08048B54: - mov r2, r9 - ldrb r1, [r2] - movs r0, 0x58 - muls r0, r1 - mov r3, r8 - adds r1, r0, r3 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0xA - beq _08048B74 - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0xA - bne _08048BA4 -_08048B74: - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 6 - ands r0, r1 - cmp r0, 0 - beq _08048BA4 - cmp r5, 0x1 - beq _08048B8A - cmp r6, 0x80 - bne _08048BA4 -_08048B8A: - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082DB5D1 - b _08048D72 - .pool -_08048BA4: - mov r4, r9 - ldrb r0, [r4] - movs r1, 0x58 - adds r2, r0, 0 - muls r2, r1 - mov r0, r8 - adds r1, r2, r0 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0xA - bne _08048BBE - b _08048DF4 -_08048BBE: - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0xA - bne _08048BCA - b _08048DF4 -_08048BCA: - adds r0, r1, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x29 - bne _08048BD6 - b _08048DF4 -_08048BD6: - mov r0, r8 - adds r0, 0x4C - adds r0, r2, r0 - ldr r0, [r0] - cmp r0, 0 - beq _08048BE4 - b _08048DF4 -_08048BE4: - movs r1, 0x1 - mov r10, r1 - b _08048DF4 -_08048BEA: - movs r0, 0 - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0xD - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _08048C26 - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0x4D - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - bne _08048C26 - ldr r0, =gBattleWeather - ldrh r1, [r0] - movs r0, 0x60 - ands r0, r1 - cmp r0, 0 - beq _08048C26 - movs r2, 0 - str r2, [sp, 0x4] -_08048C26: - ldr r4, =gBattleMons - ldr r0, =gEffectBank - ldrb r3, [r0] - movs r0, 0x58 - adds r2, r3, 0 - muls r2, r0 - adds r1, r2, r4 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0xF - bne _08048C40 - b _08048DF4 -_08048C40: - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0xF - bne _08048C4C - b _08048DF4 -_08048C4C: - adds r0, r4, 0 - adds r0, 0x4C - adds r0, r2, r0 - ldr r0, [r0] - cmp r0, 0 - beq _08048C5A - b _08048DF4 -_08048C5A: - ldr r4, [sp, 0x4] - cmp r4, 0 - bne _08048C62 - b _08048DF4 -_08048C62: - adds r0, r1, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x28 - bne _08048C6E - b _08048DF4 -_08048C6E: - adds r0, r3, 0 - bl CancelMultiTurnMoves - b _08048DE4 - .pool -_08048C84: - mov r2, r9 - ldrb r1, [r2] - movs r0, 0x58 - muls r1, r0 - mov r3, r8 - adds r0, r1, r3 - adds r0, 0x20 - ldrb r2, [r0] - cmp r2, 0x7 - bne _08048CF4 - cmp r5, 0x1 - beq _08048CA2 - cmp r6, 0x80 - beq _08048CA2 - b _08048DF4 -_08048CA2: - ldr r0, =gLastUsedAbility - strb r2, [r0] - mov r4, r9 - ldrb r0, [r4] - movs r1, 0x7 - bl RecordAbilityBattle - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082DB5DD - str r0, [r4] - ldr r2, =gHitMarker - ldr r1, [r2] - movs r0, 0x80 - lsls r0, 6 - ands r0, r1 - cmp r0, 0 - beq _08048CE8 - movs r0, 0x1 - ldr r3, =gBattleCommunication - strb r0, [r3, 0x5] - b _08048A4C - .pool -_08048CE8: - ldr r4, =gBattleCommunication - strb r0, [r4, 0x5] - bl _080499B2 - .pool -_08048CF4: - mov r0, r8 - adds r0, 0x4C - adds r0, r1, r0 - ldr r0, [r0] - cmp r0, 0 - bne _08048DF4 - b _08048DE4 -_08048D02: - mov r2, r9 - ldrb r1, [r2] - movs r0, 0x58 - muls r0, r1 - add r0, r8 - adds r0, 0x20 - ldrb r1, [r0] - cmp r1, 0x11 - bne _08048D2C - cmp r5, 0x1 - bne _08048D1A - b _08048A1A -_08048D1A: - cmp r6, 0x80 - bne _08048D2C - b _08048A1A -_08048D20: - ldr r1, =gBattleCommunication - strb r0, [r1, 0x5] - bl _080499B2 - .pool -_08048D2C: - mov r2, r9 - ldrb r0, [r2] - movs r1, 0x58 - muls r0, r1 - add r0, r8 - adds r1, r0, 0 - adds r1, 0x21 - ldrb r1, [r1] - cmp r1, 0x3 - beq _08048D50 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0x3 - beq _08048D50 - cmp r1, 0x8 - beq _08048D50 - cmp r0, 0x8 - bne _08048D94 -_08048D50: - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 6 - ands r0, r1 - cmp r0, 0 - beq _08048D94 - cmp r5, 0x1 - beq _08048D66 - cmp r6, 0x80 - bne _08048D94 -_08048D66: - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082DB5E9 -_08048D72: - str r0, [r4] - ldr r1, =gBattleCommunication - movs r2, 0 - movs r0, 0x2 - strb r0, [r1, 0x5] - strb r2, [r1, 0x3] - bl _080499B8 - .pool -_08048D94: - mov r3, r9 - ldrb r0, [r3] - movs r6, 0x58 - muls r0, r6 - mov r2, r8 - adds r2, 0x4C - adds r5, r0, r2 - ldr r4, [r5] - cmp r4, 0 - bne _08048DF4 - mov r3, r8 - adds r1, r0, r3 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r3, [r0] - cmp r3, 0x3 - beq _08048DEA - adds r0, 0x1 - ldrb r0, [r0] - cmp r0, 0x3 - beq _08048DEA - cmp r3, 0x8 - beq _08048DEA - cmp r0, 0x8 - beq _08048DEA - adds r0, r1, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x11 - beq _08048DF4 - mov r4, r9 - ldrb r0, [r4] - adds r1, r0, 0 - muls r1, r6 - adds r1, r2 - ldr r0, [r1] - movs r2, 0x9 - negs r2, r2 - ands r0, r2 - str r0, [r1] -_08048DE4: - movs r0, 0x1 - mov r10, r0 - b _08048DF4 -_08048DEA: - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r2, 0x8 - orrs r1, r2 - strb r1, [r0] -_08048DF4: - mov r1, r10 - cmp r1, 0x1 - beq _08048DFC - b _08048F1C -_08048DFC: - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r1, =gStatusFlagsForMoveEffects - ldr r0, =gBattleCommunication - ldrb r0, [r0, 0x3] - lsls r0, 2 - adds r0, r1 - ldr r3, [r0] - cmp r3, 0x7 - bne _08048E50 - bl Random - ldr r2, =gBattleMons - ldr r1, =gEffectBank - ldrb r3, [r1] - movs r1, 0x58 - muls r3, r1 - adds r2, 0x4C - adds r3, r2 - movs r1, 0x3 - ands r1, r0 - adds r1, 0x2 - ldr r0, [r3] - orrs r0, r1 - str r0, [r3] - b _08048E64 - .pool -_08048E50: - ldr r2, =gBattleMons - ldr r0, =gEffectBank - ldrb r1, [r0] - movs r0, 0x58 - muls r1, r0 - adds r2, 0x4C - adds r1, r2 - ldr r0, [r1] - orrs r0, r3 - str r0, [r1] -_08048E64: - ldr r2, =gBattlescriptCurrInstr - ldr r1, =gMoveEffectBS_Ptrs - ldr r5, =gBattleCommunication - ldrb r0, [r5, 0x3] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - str r0, [r2] - ldr r4, =gActiveBank - ldr r1, =gEffectBank - ldrb r0, [r1] - strb r0, [r4] - ldrb r1, [r1] - movs r0, 0x58 - muls r0, r1 - ldr r1, =gBattleMons + 0x4C - adds r0, r1 - str r0, [sp] - movs r0, 0 - movs r1, 0x28 - movs r2, 0 - movs r3, 0x4 - bl EmitSetAttributes - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r2, =gHitMarker - ldr r1, [r2] - movs r0, 0x80 - lsls r0, 6 - ands r0, r1 - cmp r0, 0 - beq _08048ED8 - movs r0, 0x1 - strb r0, [r5, 0x5] - ldr r0, =0xffffdfff - ands r1, r0 - str r1, [r2] - b _08048EDA - .pool -_08048ED8: - strb r0, [r5, 0x5] -_08048EDA: - ldr r0, =gBattleCommunication - ldrb r2, [r0, 0x3] - cmp r2, 0x2 - beq _08048EF2 - cmp r2, 0x6 - beq _08048EF2 - cmp r2, 0x5 - beq _08048EF2 - cmp r2, 0x3 - beq _08048EF2 - bl _080499B8 -_08048EF2: - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0xB2 - ldr r2, =gBattleCommunication - ldrb r1, [r2, 0x3] - strb r1, [r0] - ldr r2, =gHitMarker - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 7 - orrs r0, r1 - str r0, [r2] - bl _080499B8 - .pool -_08048F1C: - mov r3, r10 - cmp r3, 0 - beq _08048F26 - bl _080499B8 -_08048F26: - ldr r0, =gBattleCommunication - strb r3, [r0, 0x3] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - bl _080499B8 - .pool -_08048F40: - mov r4, r9 - ldrb r1, [r4] - movs r0, 0x58 - muls r1, r0 - mov r0, r8 - adds r0, 0x50 - adds r1, r0 - ldr r2, =gStatusFlagsForMoveEffects - ldr r0, =gBattleCommunication - ldrb r3, [r0, 0x3] - lsls r0, r3, 2 - adds r0, r2 - ldr r1, [r1] - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _08048F66 - bl _08049994 -_08048F66: - subs r0, r3, 0x7 - cmp r0, 0x34 - bls _08048F70 - bl _080499B2 -_08048F70: - lsls r0, 2 - ldr r1, =_08048F88 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08048F88: - .4byte _0804905C - .4byte _080490D0 - .4byte _08049244 - .4byte _0804915C - .4byte _080491D8 - .4byte _0804927C - .4byte _080492C4 - .4byte _08049390 - .4byte _080493D4 - .4byte _080493D4 - .4byte _080493D4 - .4byte _080493D4 - .4byte _080493D4 - .4byte _080493D4 - .4byte _080493D4 - .4byte _0804941C - .4byte _0804941C - .4byte _0804941C - .4byte _0804941C - .4byte _0804941C - .4byte _0804941C - .4byte _0804941C - .4byte _080494FC - .4byte _08049544 - .4byte _08049564 - .4byte _08049720 - .4byte _0804975C - .4byte _08049778 - .4byte _08049790 - .4byte _080497A8 - .4byte _08049808 - .4byte _08049820 - .4byte _08049468 - .4byte _08049468 - .4byte _08049468 - .4byte _08049468 - .4byte _08049468 - .4byte _08049468 - .4byte _08049468 - .4byte _080494B0 - .4byte _080494B0 - .4byte _080494B0 - .4byte _080494B0 - .4byte _080494B0 - .4byte _080494B0 - .4byte _080494B0 - .4byte _08049864 - .4byte _080498C0 - .4byte _080499B2 - .4byte _080499B2 - .4byte _080499B2 - .4byte _080499B2 - .4byte _080499A4 -_0804905C: - mov r1, r9 - ldrb r0, [r1] - movs r5, 0x58 - adds r1, r0, 0 - muls r1, r5 - mov r2, r8 - adds r0, r1, r2 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x14 - bne _08049076 - bl _08049994 -_08049076: - mov r4, r8 - adds r4, 0x50 - adds r0, r1, r4 - ldr r0, [r0] - movs r1, 0x7 - ands r0, r1 - cmp r0, 0 - beq _0804908A - bl _08049994 -_0804908A: - bl Random - mov r3, r9 - ldrb r1, [r3] - adds r2, r1, 0 - muls r2, r5 - adds r2, r4 - lsls r0, 16 - movs r1, 0xC0 - lsls r1, 10 - ands r1, r0 - lsrs r1, 16 - adds r1, 0x2 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r1, =gMoveEffectBS_Ptrs - ldr r0, =gBattleCommunication - ldrb r0, [r0, 0x3] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl _080499B0 - .pool -_080490D0: - mov r4, r9 - ldrb r2, [r4] - movs r4, 0x58 - adds r0, r2, 0 - muls r0, r4 - add r0, r8 - adds r0, 0x20 - ldrb r1, [r0] - cmp r1, 0x27 - bne _08049114 - cmp r5, 0x1 - beq _080490F0 - cmp r6, 0x80 - beq _080490F0 - bl _08049994 -_080490F0: - ldr r0, =gLastUsedAbility - strb r1, [r0] - mov r1, r9 - ldrb r0, [r1] - movs r1, 0x27 - bl RecordAbilityBattle - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB603 - str r0, [r1] - bl _080499B2 - .pool -_08049114: - adds r0, r2, 0 - bl sub_8048728 - ldr r1, =gUnknown_02024082 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bhi _0804912A - bl _08049994 -_0804912A: - mov r2, r9 - ldrb r0, [r2] - adds r2, r0, 0 - muls r2, r4 - mov r0, r8 - adds r0, 0x50 - adds r2, r0 - ldr r1, =gStatusFlagsForMoveEffects - ldr r0, =gBattleCommunication - ldrb r0, [r0, 0x3] - lsls r0, 2 - adds r0, r1 - ldr r1, [r2] - ldr r0, [r0] - orrs r1, r0 - str r1, [r2] - bl _08049994 - .pool -_0804915C: - mov r3, r9 - ldrb r0, [r3] - movs r5, 0x58 - muls r0, r5 - mov r4, r8 - adds r4, 0x50 - adds r2, r0, r4 - ldr r1, [r2] - movs r0, 0x70 - ands r0, r1 - cmp r0, 0 - beq _08049178 - bl _08049994 -_08049178: - movs r0, 0x80 - lsls r0, 5 - orrs r1, r0 - str r1, [r2] - ldr r1, =gUnknown_02024268 - ldrb r0, [r3] - lsls r0, 1 - adds r0, r1 - ldr r1, =gCurrentMove - ldrh r1, [r1] - strh r1, [r0] - bl Random - mov r2, r9 - ldrb r1, [r2] - adds r2, r1, 0 - muls r2, r5 - adds r2, r4 - movs r1, 0x3 - ands r1, r0 - adds r1, 0x2 - lsls r1, 4 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r1, =gMoveEffectBS_Ptrs - ldr r0, =gBattleCommunication - ldrb r0, [r0, 0x3] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl _080499B0 - .pool -_080491D8: - ldr r5, =gBankAttacker - ldrb r0, [r5] - bl GetBankIdentity - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - bne _08049210 - ldr r4, =gUnknown_0202432E - ldrh r3, [r4] - ldr r2, =gBattleMons - ldrb r1, [r5] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - adds r0, 0x2A - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - adds r0, r3, r0 - strh r0, [r4] - lsls r0, 16 - lsrs r0, 16 - cmp r3, r0 - bls _08049210 - ldr r3, =0x0000ffff - adds r0, r3, 0 - strh r0, [r4] -_08049210: - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r1, =gMoveEffectBS_Ptrs - ldr r0, =gBattleCommunication - ldrb r0, [r0, 0x3] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - b _080499B0 - .pool -_08049244: - mov r4, r9 - ldrb r1, [r4] - movs r0, 0x58 - muls r0, r1 - mov r1, r8 - adds r1, 0x4C - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - beq _0804925A - b _08049994 -_0804925A: - bl Random - ldr r4, =gBattleCommunication - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - adds r0, 0x3 - strb r0, [r4, 0x3] - movs r0, 0 - movs r1, 0 - bl SetMoveEffect - b _080499B2 - .pool -_0804927C: - mov r0, r9 - ldrb r1, [r0] - movs r0, 0x58 - adds r2, r1, 0 - muls r2, r0 - mov r0, r8 - adds r0, 0x50 - adds r2, r0 - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 5 - orrs r0, r1 - str r0, [r2] - ldr r1, =gUnknown_02024268 - mov r2, r9 - ldrb r0, [r2] - lsls r0, 1 - adds r0, r1 - ldr r1, =gCurrentMove - ldrh r1, [r1] - strh r1, [r0] - ldr r0, =gProtectStructs - ldrb r1, [r2] - lsls r1, 4 - adds r1, r0 - ldrb r0, [r1, 0x1] - movs r2, 0x4 - orrs r0, r2 - strb r0, [r1, 0x1] - b _08049994 - .pool -_080492C4: - mov r3, r9 - ldrb r0, [r3] - movs r6, 0x58 - muls r0, r6 - mov r4, r8 - adds r4, 0x50 - adds r0, r4 - ldr r5, [r0] - movs r0, 0xE0 - lsls r0, 8 - ands r5, r0 - cmp r5, 0 - beq _080492E0 - b _08049994 -_080492E0: - bl Random - mov r2, r9 - ldrb r1, [r2] - adds r2, r1, 0 - muls r2, r6 - adds r2, r4 - movs r1, 0x3 - ands r1, r0 - adds r1, 0x3 - lsls r1, 13 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] - mov r3, r9 - ldrb r1, [r3] - ldr r2, =gBattleStruct - ldr r0, [r2] - lsls r1, 1 - adds r1, r0 - ldr r6, =gCurrentMove - ldrh r0, [r6] - strb r0, [r1, 0x4] - ldrb r1, [r3] - ldr r0, [r2] - lsls r1, 1 - adds r1, r0 - ldrh r0, [r6] - lsrs r0, 8 - strb r0, [r1, 0x5] - ldrb r1, [r3] - ldr r0, [r2] - adds r1, r0 - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r1, 0x14] - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r1, =gMoveEffectBS_Ptrs - ldr r2, =gBattleCommunication - ldrb r0, [r2, 0x3] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - str r0, [r4] - strb r5, [r2, 0x5] - ldr r3, =gUnknown_085CC982 - ldrh r0, [r3] - ldrh r4, [r6] - cmp r0, r4 - bne _0804934E - b _080499B2 -_0804934E: - adds r1, r2, 0 - adds r2, r6, 0 -_08049352: - ldrb r0, [r1, 0x5] - adds r0, 0x1 - strb r0, [r1, 0x5] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bls _08049362 - b _080499B2 -_08049362: - ldrb r0, [r1, 0x5] - lsls r0, 1 - adds r0, r3 - ldrh r0, [r0] - ldrh r4, [r2] - cmp r0, r4 - bne _08049352 - b _080499B2 - .pool -_08049390: - ldr r1, =gBattleMoveDamage - ldr r0, =gUnknown_020241F4 - ldr r0, [r0] - cmp r0, 0 - bge _0804939C - adds r0, 0x3 -_0804939C: - asrs r0, 2 - str r0, [r1] - cmp r0, 0 - bne _080493A8 - movs r0, 0x1 - str r0, [r1] -_080493A8: - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r1, =gMoveEffectBS_Ptrs - ldr r0, =gBattleCommunication - ldrb r0, [r0, 0x3] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - b _080499B0 - .pool -_080493D4: - ldr r4, =gBattleCommunication - ldrb r1, [r4, 0x3] - adds r1, 0xF2 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0x10 - adds r2, r7, 0 - movs r3, 0 - bl sub_8050A1C - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0 - beq _080493F2 - b _08049994 -_080493F2: - ldr r2, =gBattleScripting - ldrb r1, [r4, 0x3] - movs r0, 0x3F - ands r0, r1 - strb r0, [r2, 0x10] - strb r3, [r2, 0x11] - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082D8CD4 - b _080499B0 - .pool -_0804941C: - movs r0, 0x70 - negs r0, r0 - ldr r4, =gBattleCommunication - ldrb r1, [r4, 0x3] - adds r1, 0xEB - lsls r1, 24 - lsrs r1, 24 - adds r2, r7, 0 - movs r3, 0 - bl sub_8050A1C - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0 - beq _0804943C - b _08049994 -_0804943C: - ldr r2, =gBattleScripting - ldrb r1, [r4, 0x3] - movs r0, 0x3F - ands r0, r1 - strb r0, [r2, 0x10] - strb r3, [r2, 0x11] - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082D8D65 - b _080499B0 - .pool -_08049468: - ldr r4, =gBattleCommunication - ldrb r1, [r4, 0x3] - adds r1, 0xDA - lsls r1, 24 - lsrs r1, 24 - movs r0, 0x20 - adds r2, r7, 0 - movs r3, 0 - bl sub_8050A1C - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0 - beq _08049486 - b _08049994 -_08049486: - ldr r2, =gBattleScripting - ldrb r1, [r4, 0x3] - movs r0, 0x3F - ands r0, r1 - strb r0, [r2, 0x10] - strb r3, [r2, 0x11] - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082D8CD4 - b _080499B0 - .pool -_080494B0: - movs r0, 0x60 - negs r0, r0 - ldr r4, =gBattleCommunication - ldrb r1, [r4, 0x3] - adds r1, 0xD3 - lsls r1, 24 - lsrs r1, 24 - adds r2, r7, 0 - movs r3, 0 - bl sub_8050A1C - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0 - beq _080494D0 - b _08049994 -_080494D0: - ldr r2, =gBattleScripting - ldrb r1, [r4, 0x3] - movs r0, 0x3F - ands r0, r1 - strb r0, [r2, 0x10] - strb r3, [r2, 0x11] - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082D8D65 - b _080499B0 - .pool -_080494FC: - mov r0, r9 - ldrb r1, [r0] - movs r0, 0x58 - adds r2, r1, 0 - muls r2, r0 - mov r0, r8 - adds r0, 0x50 - adds r2, r0 - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 15 - orrs r0, r1 - str r0, [r2] - ldr r2, =gDisableStructs - mov r3, r9 - ldrb r1, [r3] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0x2 - strb r1, [r0, 0x19] - ldr r1, =gUnknown_02024268 - ldrb r0, [r3] - lsls r0, 1 - adds r0, r1 - ldr r1, =gCurrentMove - ldrh r1, [r1] - strh r1, [r0] - b _08049994 - .pool -_08049544: - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x58 - adds r2, r1, 0 - muls r2, r0 - mov r0, r8 - adds r0, 0x50 - adds r2, r0 - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 16 -_0804955A: - orrs r0, r1 - str r0, [r2] - b _08049994 - .pool -_08049564: - ldr r5, =gBattleTypeFlags - ldr r0, [r5] - movs r1, 0x80 - lsls r1, 19 - ands r0, r1 - cmp r0, 0 - beq _08049574 - b _08049994 -_08049574: - ldr r6, =gBankAttacker - ldrb r0, [r6] - bl GetBankSide - lsls r0, 24 - lsrs r4, r0, 24 - ldrb r0, [r6] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080495A8 - ldr r0, [r5] - ldr r1, =0x0a3f0902 - ands r0, r1 - cmp r0, 0 - bne _080495D4 - b _08049994 - .pool -_080495A8: - ldr r0, [r5] - ldr r1, =0x0a3f0902 - ands r0, r1 - cmp r0, 0 - bne _080495D4 - ldr r0, =gWishFutureKnock - adds r0, 0x29 - adds r0, r4, r0 - ldrb r1, [r0] - ldr r3, =gBitTable - ldr r2, =gBattlePartyID - ldrb r0, [r6] - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _080495D4 - b _08049994 -_080495D4: - ldr r2, =gBattleMons - ldr r1, =gBankTarget - ldrb r0, [r1] - movs r5, 0x58 - muls r0, r5 - adds r4, r0, r2 - ldrh r0, [r4, 0x2E] - adds r7, r1, 0 - mov r8, r2 - cmp r0, 0 - beq _0804963C - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x3C - bne _0804963C - bl b_movescr_stack_push_cursor - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB682 - str r0, [r1] - ldr r1, =gLastUsedAbility - ldrb r0, [r7] - muls r0, r5 - add r0, r8 - adds r0, 0x20 - ldrb r0, [r0] - strb r0, [r1] - ldrb r0, [r7] - ldrb r1, [r1] - bl RecordAbilityBattle - b _080499B2 - .pool -_0804963C: - ldr r4, =gBankAttacker - mov r10, r4 - ldrb r2, [r4] - movs r0, 0x58 - mov r9, r0 - mov r0, r9 - muls r0, r2 - add r0, r8 - ldrh r4, [r0, 0x2E] - cmp r4, 0 - beq _08049654 - b _08049994 -_08049654: - ldrb r0, [r7] - mov r1, r9 - muls r1, r0 - adds r0, r1, 0 - add r0, r8 - ldrh r3, [r0, 0x2E] - adds r1, r3, 0 - cmp r1, 0xAF - bne _08049668 - b _08049994 -_08049668: - adds r0, r3, 0 - subs r0, 0x79 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xB - bhi _08049676 - b _08049994 -_08049676: - cmp r1, 0 - bne _0804967C - b _08049994 -_0804967C: - ldr r5, =gBattleStruct - lsls r0, r2, 1 - adds r0, 0xD0 - ldr r1, [r5] - adds r1, r0 - ldr r2, =gLastUsedItem - strh r3, [r1] - strh r3, [r2] - ldrb r0, [r7] - mov r3, r9 - muls r3, r0 - adds r0, r3, 0 - add r0, r8 - movs r6, 0 - strh r4, [r0, 0x2E] - ldr r4, =gActiveBank - mov r1, r10 - ldrb r0, [r1] - strb r0, [r4] - str r2, [sp] - movs r0, 0 - movs r1, 0x2 - movs r2, 0 - movs r3, 0x2 - bl EmitSetAttributes - mov r2, r10 - ldrb r0, [r2] - bl MarkBufferBankForExecution - ldrb r0, [r7] - strb r0, [r4] - ldrb r0, [r7] - mov r3, r9 - muls r3, r0 - adds r0, r3, 0 - mov r1, r8 - adds r1, 0x2E - adds r0, r1 - str r0, [sp] - movs r0, 0 - movs r1, 0x2 - movs r2, 0 - movs r3, 0x2 - bl EmitSetAttributes - ldrb r0, [r7] - bl MarkBufferBankForExecution - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082DB422 - str r0, [r4] - ldrb r0, [r7] - ldr r1, [r5] - lsls r0, 1 - adds r0, r1 - adds r0, 0xC8 - strb r6, [r0] - ldrb r0, [r7] - ldr r1, [r5] - lsls r0, 1 - adds r0, r1 - adds r0, 0xC9 - strb r6, [r0] - b _080499B2 - .pool -_08049720: - ldr r3, =gBankTarget - ldrb r1, [r3] - movs r0, 0x58 - adds r2, r1, 0 - muls r2, r0 - mov r0, r8 - adds r0, 0x50 - adds r2, r0 - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 19 - orrs r0, r1 - str r0, [r2] - ldr r2, =gDisableStructs - ldrb r1, [r3] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, =gBankAttacker - ldrb r1, [r1] - strb r1, [r0, 0x14] - b _08049994 - .pool -_0804975C: - ldr r0, =gBankTarget - ldrb r1, [r0] - movs r0, 0x58 - adds r2, r1, 0 - muls r2, r0 - mov r0, r8 - adds r0, 0x50 - adds r2, r0 - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 20 - b _0804955A - .pool -_08049778: - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082DAF27 - b _080499B0 - .pool -_08049790: - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082DAFC3 - b _080499B0 - .pool -_080497A8: - ldr r6, =gBankTarget - ldrb r0, [r6] - movs r2, 0x58 - muls r0, r2 - mov r1, r8 - adds r1, 0x4C - adds r5, r0, r1 - ldr r4, [r5] - movs r0, 0x40 - ands r0, r4 - cmp r0, 0 - bne _080497C2 - b _08049994 -_080497C2: - movs r0, 0x41 - negs r0, r0 - ands r4, r0 - str r4, [r5] - ldr r4, =gActiveBank - ldrb r0, [r6] - strb r0, [r4] - ldrb r0, [r4] - muls r0, r2 - adds r0, r1 - str r0, [sp] - movs r0, 0 - movs r1, 0x28 - movs r2, 0 - movs r3, 0x4 - bl EmitSetAttributes - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082DB361 - b _080499B0 - .pool -_08049808: - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082DB117 - b _080499B0 - .pool -_08049820: - ldr r4, =gBattleMoveDamage - ldr r0, =gUnknown_020241F4 - ldr r0, [r0] - movs r1, 0x3 - bl __divsi3 - str r0, [r4] - cmp r0, 0 - bne _08049836 - movs r0, 0x1 - str r0, [r4] -_08049836: - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r1, =gMoveEffectBS_Ptrs - ldr r0, =gBattleCommunication - ldrb r0, [r0, 0x3] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - b _080499B0 - .pool -_08049864: - mov r4, r9 - ldrb r0, [r4] - movs r5, 0x58 - muls r0, r5 - mov r4, r8 - adds r4, 0x50 - adds r2, r0, r4 - ldr r1, [r2] - movs r0, 0xC0 - lsls r0, 4 - ands r0, r1 - cmp r0, 0 - beq _08049880 - b _08049994 -_08049880: - movs r0, 0x80 - lsls r0, 5 - orrs r1, r0 - str r1, [r2] - ldr r1, =gUnknown_02024268 - mov r2, r9 - ldrb r0, [r2] - lsls r0, 1 - adds r0, r1 - ldr r1, =gCurrentMove - ldrh r1, [r1] - strh r1, [r0] - bl Random - mov r3, r9 - ldrb r1, [r3] - adds r2, r1, 0 - muls r2, r5 - adds r2, r4 - movs r1, 0x1 - ands r1, r0 - adds r1, 0x2 - lsls r1, 10 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] - b _080499B2 - .pool -_080498C0: - mov r4, r9 - ldrb r3, [r4] - movs r5, 0x58 - adds r0, r3, 0 - muls r0, r5 - mov r2, r8 - adds r1, r0, r2 - adds r0, r1, 0 - adds r0, 0x20 - ldrb r2, [r0] - cmp r2, 0x3C - bne _08049900 - ldrh r0, [r1, 0x2E] - cmp r0, 0 - beq _08049994 - ldr r0, =gLastUsedAbility - strb r2, [r0] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB63F - str r0, [r1] - ldrb r0, [r4] - movs r1, 0x3C - bl RecordAbilityBattle - b _080499B2 - .pool -_08049900: - ldrh r0, [r1, 0x2E] - cmp r0, 0 - beq _08049994 - adds r0, r3, 0 - bl GetBankSide - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, =gLastUsedItem - mov r3, r9 - ldrb r0, [r3] - muls r0, r5 - add r0, r8 - ldrh r0, [r0, 0x2E] - strh r0, [r1] - ldrb r0, [r3] - muls r0, r5 - add r0, r8 - movs r5, 0 - movs r1, 0 - strh r1, [r0, 0x2E] - ldr r2, =gWishFutureKnock - adds r2, 0x29 - adds r2, r4, r2 - ldr r3, =gBitTable - ldr r1, =gBattlePartyID - mov r4, r9 - ldrb r0, [r4] - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082DB168 - str r0, [r4] - mov r1, r9 - ldrb r0, [r1] - ldr r2, =gBattleStruct - ldr r1, [r2] - lsls r0, 1 - adds r0, r1 - adds r0, 0xC8 - strb r5, [r0] - mov r3, r9 - ldrb r0, [r3] - ldr r1, [r2] - lsls r0, 1 - adds r0, r1 - adds r0, 0xC9 - strb r5, [r0] - b _080499B2 - .pool -_08049994: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - b _080499B2 - .pool -_080499A4: - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082DB1D5 -_080499B0: - str r0, [r4] -_080499B2: - ldr r1, =gBattleCommunication - movs r0, 0 - strb r0, [r1, 0x3] -_080499B8: - 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 SetMoveEffect - - thumb_func_start atk15_seteffectwithchancetarget -atk15_seteffectwithchancetarget: @ 80499D4 - push {r4,lr} - ldr r2, =gBattleMons - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x20 - bne _08049A10 - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x5] - lsls r4, r0, 1 - b _08049A20 - .pool -_08049A10: - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r4, [r0, 0x5] -_08049A20: - ldr r3, =gBattleCommunication - ldrb r2, [r3, 0x3] - movs r0, 0x80 - ands r0, r2 - cmp r0, 0 - beq _08049A50 - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - bne _08049A50 - movs r0, 0x7F - ands r0, r2 - strb r0, [r3, 0x3] - b _08049A7E - .pool -_08049A50: - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x64 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - cmp r0, r4 - bcs _08049A9A - ldr r0, =gBattleCommunication - ldrb r0, [r0, 0x3] - cmp r0, 0 - beq _08049A9A - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - bne _08049A9A - cmp r4, 0x63 - bls _08049A90 -_08049A7E: - movs r0, 0 - movs r1, 0x80 - bl SetMoveEffect - b _08049AA2 - .pool -_08049A90: - movs r0, 0 - movs r1, 0 - bl SetMoveEffect - b _08049AA2 -_08049A9A: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_08049AA2: - ldr r0, =gBattleCommunication - movs r1, 0 - strb r1, [r0, 0x3] - ldr r0, =gBattleScripting - strb r1, [r0, 0x16] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk15_seteffectwithchancetarget - - thumb_func_start atk16_seteffectprimary -atk16_seteffectprimary: @ 8049AC0 - push {lr} - movs r0, 0x1 - movs r1, 0 - bl SetMoveEffect - pop {r0} - bx r0 - thumb_func_end atk16_seteffectprimary - - thumb_func_start atk17_seteffectsecondary -atk17_seteffectsecondary: @ 8049AD0 - push {lr} - movs r0, 0 - movs r1, 0 - bl SetMoveEffect - pop {r0} - bx r0 - thumb_func_end atk17_seteffectsecondary - - thumb_func_start atk18_status_effect_clear -atk18_status_effect_clear: @ 8049AE0 - push {lr} - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r2, =gActiveBank - strb r0, [r2] - ldr r3, =gBattleCommunication - ldrb r0, [r3, 0x3] - cmp r0, 0x6 - bhi _08049B14 - ldr r1, =gBattleMons - ldrb r2, [r2] - movs r0, 0x58 - muls r2, r0 - adds r1, 0x4C - b _08049B1E - .pool -_08049B14: - ldr r1, =gBattleMons - ldrb r2, [r2] - movs r0, 0x58 - muls r2, r0 - adds r1, 0x50 -_08049B1E: - adds r2, r1 - ldr r1, =gStatusFlagsForMoveEffects - ldrb r0, [r3, 0x3] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - ldr r0, [r2] - bics r0, r1 - str r0, [r2] - ldr r0, =gBattleCommunication - movs r2, 0 - strb r2, [r0, 0x3] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x2 - str r0, [r1] - ldr r0, =gBattleScripting - strb r2, [r0, 0x16] - pop {r0} - bx r0 - .pool - thumb_func_end atk18_status_effect_clear - - thumb_func_start atk19_faint_pokemon -atk19_faint_pokemon: @ 8049B5C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - ldr r0, =gBattlescriptCurrInstr - ldr r2, [r0] - ldrb r1, [r2, 0x2] - adds r6, r0, 0 - cmp r1, 0 - beq _08049BE0 - ldrb r0, [r2, 0x1] - bl get_battle_side_of_something - ldr r5, =gActiveBank - strb r0, [r5] - ldr r2, =gHitMarker - ldr r1, =gBitTable - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - lsls r1, 28 - ldr r0, [r2] - ands r0, r1 - cmp r0, 0 - bne _08049B94 - b _08049E2C -_08049B94: - ldr r1, [r6] - ldrb r4, [r1, 0x3] - ldrb r0, [r1, 0x4] - lsls r0, 8 - orrs r4, r0 - ldrb r0, [r1, 0x5] - lsls r0, 16 - orrs r4, r0 - ldrb r0, [r1, 0x6] - lsls r0, 24 - orrs r4, r0 - bl b_movescr_stack_pop_cursor - str r4, [r6] - ldrb r0, [r5] - bl GetBankSide - ldr r1, =gSideAffecting - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r2, [r0] - ldr r1, =0x0000fdff - ands r1, r2 - strh r1, [r0] - b _08049E32 - .pool -_08049BE0: - ldrb r0, [r2, 0x1] - cmp r0, 0x1 - bne _08049C08 - ldr r1, =gActiveBank - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r1] - ldr r0, =gBankTarget - ldrb r0, [r0] - mov r9, r0 - ldr r4, =gUnknown_082DA7AA - b _08049C18 - .pool -_08049C08: - ldr r1, =gActiveBank - ldr r0, =gBankTarget - ldrb r0, [r0] - strb r0, [r1] - ldr r0, =gBankAttacker - ldrb r0, [r0] - mov r9, r0 - ldr r4, =gUnknown_082DA7B7 -_08049C18: - mov r8, r1 - ldr r0, =gAbsentBankFlags - ldrb r1, [r0] - ldr r2, =gBitTable - mov r7, r8 - ldrb r3, [r7] - lsls r0, r3, 2 - adds r0, r2 - ldr r2, [r0] - ands r1, r2 - cmp r1, 0 - beq _08049C32 - b _08049E2C -_08049C32: - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r3 - adds r0, r1 - ldrh r0, [r0, 0x28] - cmp r0, 0 - beq _08049C42 - b _08049E2C -_08049C42: - ldr r5, =gHitMarker - lsls r1, r2, 28 - ldr r0, [r5] - orrs r0, r1 - str r0, [r5] - ldr r0, [r6] - adds r0, 0x7 - bl b_movescr_stack_push - str r4, [r6] - ldrb r0, [r7] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08049CA4 - ldr r0, [r5] - movs r1, 0x80 - lsls r1, 15 - orrs r0, r1 - str r0, [r5] - ldr r1, =gBattleResults - ldrb r0, [r1] - cmp r0, 0xFE - bhi _08049C78 - adds r0, 0x1 - strb r0, [r1] -_08049C78: - ldrb r0, [r7] - bl sub_80570F4 - b _08049CCE - .pool -_08049CA4: - ldr r4, =gBattleResults - ldrb r0, [r4, 0x1] - cmp r0, 0xFE - bhi _08049CB0 - adds r0, 0x1 - strb r0, [r4, 0x1] -_08049CB0: - ldr r1, =gBattlePartyID - mov r2, r8 - ldrb r0, [r2] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r4, 0x20] -_08049CCE: - ldr r2, =gHitMarker - ldr r1, [r2] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08049D0C - ldr r6, =gBattleMons - ldr r0, =gBankAttacker - ldrb r0, [r0] - movs r5, 0x58 - muls r0, r5 - adds r0, r6 - ldrh r0, [r0, 0x28] - cmp r0, 0 - beq _08049D0C - movs r0, 0x41 - negs r0, r0 - ands r1, r0 - str r1, [r2] - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - bl b_movescr_stack_push - ldr r1, =gBattleMoveDamage - mov r0, r9 - muls r0, r5 - adds r0, r6 - ldrh r0, [r0, 0x28] - str r0, [r1] - ldr r0, =gUnknown_082DAE3E - str r0, [r4] -_08049D0C: - ldr r1, =gStatuses3 - ldr r6, =gBankTarget - ldrb r0, [r6] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 7 - ands r0, r1 - cmp r0, 0 - bne _08049D24 - b _08049E32 -_08049D24: - ldr r0, =gHitMarker - ldr r5, [r0] - movs r0, 0x80 - lsls r0, 17 - ands r5, r0 - cmp r5, 0 - beq _08049D34 - b _08049E32 -_08049D34: - ldr r3, =gBankAttacker - mov r8, r3 - ldrb r0, [r3] - bl GetBankSide - adds r4, r0, 0 - ldrb r0, [r6] - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - beq _08049E32 - ldr r0, =gBattleMons - mov r9, r0 - mov r2, r8 - ldrb r1, [r2] - movs r7, 0x58 - adds r2, r1, 0 - muls r2, r7 - adds r0, r2, r0 - ldrh r0, [r0, 0x28] - cmp r0, 0 - beq _08049E32 - ldr r0, =gCurrentMove - ldrh r0, [r0] - cmp r0, 0xA5 - beq _08049E32 - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, r1, r0 - adds r0, 0x80 - ldrb r4, [r0] - adds r0, r4, r2 - mov r6, r9 - adds r6, 0x24 - adds r0, r6 - strb r5, [r0] - ldr r5, =gBattlescriptCurrInstr - ldr r0, [r5] - bl b_movescr_stack_push - ldr r0, =gUnknown_082DB18D - str r0, [r5] - ldr r5, =gActiveBank - mov r3, r8 - ldrb r0, [r3] - strb r0, [r5] - adds r1, r4, 0 - adds r1, 0x9 - lsls r1, 24 - lsrs r1, 24 - ldrb r0, [r5] - muls r0, r7 - adds r0, r6 - adds r0, r4 - str r0, [sp] - movs r0, 0 - movs r2, 0 - movs r3, 0x1 - bl EmitSetAttributes - ldrb r0, [r5] - bl MarkBufferBankForExecution - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x2 - strb r0, [r1, 0x1] - lsls r4, 1 - mov r2, r8 - ldrb r0, [r2] - muls r0, r7 - adds r0, r4, r0 - mov r2, r9 - adds r2, 0xC - adds r0, r2 - ldrh r0, [r0] - strb r0, [r1, 0x2] - mov r3, r8 - ldrb r0, [r3] - muls r0, r7 - adds r4, r0 - adds r4, r2 - ldrh r0, [r4] - lsrs r0, 8 - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - b _08049E32 - .pool -_08049E2C: - ldr r0, [r6] - adds r0, 0x7 - str r0, [r6] -_08049E32: - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end atk19_faint_pokemon - - thumb_func_start atk1A_faint_animation -atk1A_faint_animation: @ 8049E40 - push {r4,r5,lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _08049E6A - ldr r5, =gBattlescriptCurrInstr - ldr r0, [r5] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r4, =gActiveBank - strb r0, [r4] - movs r0, 0 - bl dp01_build_cmdbuf_x0A_A_A_A - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r0, [r5] - adds r0, 0x2 - str r0, [r5] -_08049E6A: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk1A_faint_animation - - thumb_func_start atk1B_faint_effects_clear -atk1B_faint_effects_clear: @ 8049E7C - push {r4,r5,lr} - sub sp, 0x4 - ldr r0, =gBattleExecBuffer - ldr r5, [r0] - cmp r5, 0 - bne _08049EE8 - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r4, =gActiveBank - strb r0, [r4] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 11 - ands r0, r1 - cmp r0, 0 - beq _08049EB4 - ldr r2, =gBattleMons - ldrb r1, [r4] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - ldrh r0, [r0, 0x28] - cmp r0, 0 - bne _08049EDC -_08049EB4: - ldr r1, =gBattleMons - ldrb r0, [r4] - movs r2, 0x58 - muls r0, r2 - adds r1, 0x4C - adds r0, r1 - str r5, [r0] - ldrb r0, [r4] - muls r0, r2 - adds r0, r1 - str r0, [sp] - movs r0, 0 - movs r1, 0x28 - movs r2, 0 - movs r3, 0x4 - bl EmitSetAttributes - ldrb r0, [r4] - bl MarkBufferBankForExecution -_08049EDC: - bl sub_803A75C - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x2 - str r0, [r1] -_08049EE8: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk1B_faint_effects_clear - - thumb_func_start atk1C_jumpifstatus -atk1C_jumpifstatus: @ 8049F04 - push {r4,r5,lr} - ldr r5, =gBattlescriptCurrInstr - ldr r0, [r5] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - lsls r0, 24 - lsrs r0, 24 - ldr r2, [r5] - ldrb r4, [r2, 0x2] - ldrb r1, [r2, 0x3] - lsls r1, 8 - adds r4, r1 - ldrb r1, [r2, 0x4] - lsls r1, 16 - adds r4, r1 - ldrb r1, [r2, 0x5] - lsls r1, 24 - adds r4, r1 - ldrb r3, [r2, 0x6] - ldrb r1, [r2, 0x7] - lsls r1, 8 - adds r3, r1 - ldrb r1, [r2, 0x8] - lsls r1, 16 - adds r3, r1 - ldrb r1, [r2, 0x9] - lsls r1, 24 - adds r3, r1 - ldr r2, =gBattleMons - movs r1, 0x58 - muls r1, r0 - adds r0, r2, 0 - adds r0, 0x4C - adds r0, r1, r0 - ldr r0, [r0] - ands r0, r4 - cmp r0, 0 - beq _08049F68 - adds r0, r1, r2 - ldrh r0, [r0, 0x28] - cmp r0, 0 - beq _08049F68 - str r3, [r5] - b _08049F70 - .pool -_08049F68: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0xA - str r0, [r1] -_08049F70: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk1C_jumpifstatus - - thumb_func_start atk1D_jumpifstatus2 -atk1D_jumpifstatus2: @ 8049F7C - push {r4,r5,lr} - ldr r5, =gBattlescriptCurrInstr - ldr r0, [r5] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - lsls r0, 24 - lsrs r0, 24 - ldr r2, [r5] - ldrb r4, [r2, 0x2] - ldrb r1, [r2, 0x3] - lsls r1, 8 - adds r4, r1 - ldrb r1, [r2, 0x4] - lsls r1, 16 - adds r4, r1 - ldrb r1, [r2, 0x5] - lsls r1, 24 - adds r4, r1 - ldrb r3, [r2, 0x6] - ldrb r1, [r2, 0x7] - lsls r1, 8 - adds r3, r1 - ldrb r1, [r2, 0x8] - lsls r1, 16 - adds r3, r1 - ldrb r1, [r2, 0x9] - lsls r1, 24 - adds r3, r1 - ldr r2, =gBattleMons - movs r1, 0x58 - muls r1, r0 - adds r0, r2, 0 - adds r0, 0x50 - adds r0, r1, r0 - ldr r0, [r0] - ands r0, r4 - cmp r0, 0 - beq _08049FE0 - adds r0, r1, r2 - ldrh r0, [r0, 0x28] - cmp r0, 0 - beq _08049FE0 - str r3, [r5] - b _08049FE8 - .pool -_08049FE0: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0xA - str r0, [r1] -_08049FE8: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk1D_jumpifstatus2 - - thumb_func_start atk1E_jumpifability -atk1E_jumpifability: @ 8049FF4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - ldr r6, =gBattlescriptCurrInstr - ldr r2, [r6] - ldrb r5, [r2, 0x2] - mov r8, r5 - ldrb r1, [r2, 0x3] - ldrb r0, [r2, 0x4] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x5] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x6] - lsls r0, 24 - adds r7, r1, r0 - ldrb r0, [r2, 0x1] - cmp r0, 0x8 - bne _0804A054 - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0xD - adds r2, r5, 0 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _0804A0C8 - ldr r1, =gLastUsedAbility - strb r5, [r1] - str r7, [r6] - subs r4, 0x1 - lsls r0, r4, 24 - lsrs r0, 24 - ldrb r1, [r1] - b _0804A0B0 - .pool -_0804A054: - cmp r0, 0x9 - bne _0804A08C - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0xC - adds r2, r5, 0 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _0804A0C8 - ldr r1, =gLastUsedAbility - strb r5, [r1] - str r7, [r6] - subs r4, 0x1 - lsls r0, r4, 24 - lsrs r0, 24 - ldrb r1, [r1] - b _0804A0B0 - .pool -_0804A08C: - ldrb r0, [r2, 0x1] - bl get_battle_side_of_something - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r4 - adds r0, r1 - adds r0, 0x20 - ldrb r1, [r0] - cmp r1, r8 - bne _0804A0C8 - ldr r0, =gLastUsedAbility - strb r1, [r0] - str r7, [r6] - ldrb r1, [r0] - adds r0, r4, 0 -_0804A0B0: - bl RecordAbilityBattle - ldr r0, =gBattleScripting - strb r4, [r0, 0x15] - b _0804A0CE - .pool -_0804A0C8: - ldr r0, [r6] - adds r0, 0x7 - str r0, [r6] -_0804A0CE: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end atk1E_jumpifability - - thumb_func_start atk1F_jumpifsideaffecting -atk1F_jumpifsideaffecting: @ 804A0DC - push {r4-r6,lr} - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r4, [r0, 0x1] - cmp r4, 0x1 - bne _0804A0FC - ldr r0, =gBankAttacker - ldrb r0, [r0] - bl GetBankIdentity - b _0804A106 - .pool -_0804A0FC: - ldr r0, =gBankTarget - ldrb r0, [r0] - bl GetBankIdentity - movs r4, 0x1 -_0804A106: - ands r4, r0 - ldr r6, =gBattlescriptCurrInstr - ldr r3, [r6] - ldrb r2, [r3, 0x2] - ldrb r0, [r3, 0x3] - lsls r0, 8 - orrs r2, r0 - ldrb r1, [r3, 0x4] - ldrb r0, [r3, 0x5] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r3, 0x6] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r3, 0x7] - lsls r0, 24 - adds r5, r1, r0 - ldr r1, =gSideAffecting - lsls r0, r4, 1 - adds r0, r1 - ldrh r0, [r0] - ands r2, r0 - cmp r2, 0 - beq _0804A148 - str r5, [r6] - b _0804A14E - .pool -_0804A148: - adds r0, r3, 0 - adds r0, 0x8 - str r0, [r6] -_0804A14E: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end atk1F_jumpifsideaffecting - - thumb_func_start atk20_jumpifstat -atk20_jumpifstat: @ 804A154 - push {r4,r5,lr} - movs r5, 0 - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gBattleMons - ldr r3, [r4] - movs r1, 0x58 - muls r0, r1 - ldrb r1, [r3, 0x3] - adds r0, r1 - adds r2, 0x18 - adds r0, r2 - ldrb r2, [r0] - ldrb r0, [r3, 0x2] - cmp r0, 0x5 - bhi _0804A212 - lsls r0, 2 - ldr r1, =_0804A194 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0804A194: - .4byte _0804A1AC - .4byte _0804A1BC - .4byte _0804A1CC - .4byte _0804A1DC - .4byte _0804A1EC - .4byte _0804A200 -_0804A1AC: - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r2, r0 - bne _0804A212 - b _0804A20C - .pool -_0804A1BC: - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r2, r0 - beq _0804A212 - b _0804A20C - .pool -_0804A1CC: - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r2, r0 - bls _0804A212 - b _0804A20C - .pool -_0804A1DC: - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r2, r0 - bcs _0804A212 - b _0804A20C - .pool -_0804A1EC: - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x4] - ands r2, r0 - cmp r2, 0 - beq _0804A212 - b _0804A20C - .pool -_0804A200: - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x4] - ands r2, r0 - cmp r2, 0 - bne _0804A212 -_0804A20C: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_0804A212: - cmp r5, 0 - beq _0804A238 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x5] - ldrb r0, [r2, 0x6] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x7] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x8] - lsls r0, 24 - adds r1, r0 - str r1, [r3] - b _0804A240 - .pool -_0804A238: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x9 - str r0, [r1] -_0804A240: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk20_jumpifstat - - thumb_func_start atk21_jumpifstatus3 -atk21_jumpifstatus3: @ 804A24C - push {r4-r6,lr} - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r5, =gActiveBank - strb r0, [r5] - ldr r2, [r4] - ldrb r1, [r2, 0x2] - ldrb r0, [r2, 0x3] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x5] - lsls r0, 24 - adds r6, r1, r0 - ldrb r1, [r2, 0x7] - ldrb r0, [r2, 0x8] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x9] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0xA] - lsls r0, 24 - adds r3, r1, r0 - ldrb r0, [r2, 0x6] - cmp r0, 0 - beq _0804A2AC - ldr r0, =gStatuses3 - ldrb r1, [r5] - lsls r1, 2 - adds r1, r0 - ldr r0, [r1] - ands r0, r6 - cmp r0, 0 - bne _0804A2C4 - b _0804A2BC - .pool -_0804A2AC: - ldr r0, =gStatuses3 - ldrb r1, [r5] - lsls r1, 2 - adds r1, r0 - ldr r0, [r1] - ands r0, r6 - cmp r0, 0 - beq _0804A2C4 -_0804A2BC: - str r3, [r4] - b _0804A2CA - .pool -_0804A2C4: - adds r0, r2, 0 - adds r0, 0xB - str r0, [r4] -_0804A2CA: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end atk21_jumpifstatus3 - - thumb_func_start atk22_jumpiftype -atk22_jumpiftype: @ 804A2D0 - push {r4-r6,lr} - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - lsls r0, 24 - lsrs r0, 24 - ldr r3, [r4] - ldrb r5, [r3, 0x2] - ldrb r2, [r3, 0x3] - ldrb r1, [r3, 0x4] - lsls r1, 8 - adds r2, r1 - ldrb r1, [r3, 0x5] - lsls r1, 16 - adds r2, r1 - ldrb r1, [r3, 0x6] - lsls r1, 24 - adds r6, r2, r1 - ldr r2, =gBattleMons - movs r1, 0x58 - muls r0, r1 - adds r1, r0, r2 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, r5 - beq _0804A314 - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, r5 - bne _0804A320 -_0804A314: - str r6, [r4] - b _0804A324 - .pool -_0804A320: - adds r0, r3, 0x7 - str r0, [r4] -_0804A324: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end atk22_jumpiftype - - thumb_func_start atk23_getexp -atk23_getexp: @ 804A32C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r6, 0 - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x50 - mov r9, r0 - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r1, =gBank1 - strb r0, [r1] - ldr r2, =gUnknown_020243FE - movs r1, 0x2 - ands r1, r0 - lsls r1, 24 - lsrs r1, 25 - adds r1, r2 - ldrb r1, [r1] - mov r8, r1 - ldr r0, =gBattleScripting - ldrb r0, [r0, 0x1C] - cmp r0, 0x6 - bls _0804A368 - bl _0804ACB2 -_0804A368: - lsls r0, 2 - ldr r1, =_0804A38C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0804A38C: - .4byte _0804A3A8 - .4byte _0804A414 - .4byte _0804A52E - .4byte _0804A850 - .4byte _0804A954 - .4byte _0804AC40 - .4byte _0804AC88 -_0804A3A8: - ldr r4, =gBank1 - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0804A3BC - bl _0804AC7C -_0804A3BC: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x063f0982 - ands r0, r1 - cmp r0, 0 - beq _0804A3CC - bl _0804AC7C -_0804A3CC: - ldr r1, =gBattleScripting - ldrb r0, [r1, 0x1C] - adds r0, 0x1 - strb r0, [r1, 0x1C] - ldr r0, =gBattleStruct - ldr r2, [r0] - adds r2, 0xDF - ldr r3, =gBitTable - ldr r1, =gBattlePartyID - ldrb r0, [r4] - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - bl _0804ACB2 - .pool -_0804A414: - movs r5, 0 - movs r7, 0 -_0804A418: - movs r0, 0x64 - adds r1, r7, 0 - muls r1, r0 - ldr r0, =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0804A486 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _0804A486 - ldr r0, =gBitTable - lsls r1, r7, 2 - adds r1, r0 - ldr r0, [r1] - mov r1, r8 - ands r0, r1 - cmp r0, 0 - beq _0804A44C - adds r5, 0x1 -_0804A44C: - adds r0, r4, 0 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xAF - bne _0804A478 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r2, =0x00003226 - adds r0, r2 - ldrb r4, [r0] - b _0804A480 - .pool -_0804A478: - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r4, r0, 24 -_0804A480: - cmp r4, 0x19 - bne _0804A486 - adds r6, 0x1 -_0804A486: - adds r7, 0x1 - cmp r7, 0x5 - ble _0804A418 - ldr r3, =gBaseStats - ldr r2, =gBattleMons - ldr r0, =gBank1 - ldrb r1, [r0] - movs r0, 0x58 - muls r1, r0 - adds r1, r2 - ldrh r2, [r1] - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r3 - ldrb r2, [r0, 0x9] - adds r1, 0x2A - ldrb r0, [r1] - muls r0, r2 - movs r1, 0x7 - bl __divsi3 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r6, 0 - beq _0804A4FC - lsrs r4, r0, 17 - adds r0, r4, 0 - adds r1, r5, 0 - bl __divsi3 - mov r1, r9 - strh r0, [r1] - lsls r0, 16 - cmp r0, 0 - bne _0804A4D2 - movs r0, 0x1 - strh r0, [r1] -_0804A4D2: - ldr r5, =gUnknown_02024402 - adds r0, r4, 0 - adds r1, r6, 0 - bl __divsi3 - strh r0, [r5] - lsls r0, 16 - cmp r0, 0 - bne _0804A516 - movs r0, 0x1 - strh r0, [r5] - b _0804A516 - .pool -_0804A4FC: - adds r0, r1, 0 - adds r1, r5, 0 - bl __divsi3 - mov r2, r9 - strh r0, [r2] - lsls r0, 16 - cmp r0, 0 - bne _0804A512 - movs r0, 0x1 - strh r0, [r2] -_0804A512: - ldr r0, =gUnknown_02024402 - strh r6, [r0] -_0804A516: - ldr r1, =gBattleScripting - ldrb r0, [r1, 0x1C] - adds r0, 0x1 - movs r2, 0 - strb r0, [r1, 0x1C] - ldr r1, =gBattleStruct - ldr r0, [r1] - strb r2, [r0, 0x10] - ldr r0, [r1] - adds r0, 0x53 - mov r4, r8 - strb r4, [r0] -_0804A52E: - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - beq _0804A538 - b _0804ACB2 -_0804A538: - ldr r0, =gBattleStruct - ldr r0, [r0] - ldrb r1, [r0, 0x10] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xAF - bne _0804A57C - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x00003226 - adds r0, r1 - ldrb r4, [r0] - b _0804A584 - .pool -_0804A57C: - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r4, r0, 24 -_0804A584: - ldr r5, =gBattleStruct - cmp r4, 0x19 - beq _0804A5AC - ldr r0, [r5] - adds r1, r0, 0 - adds r1, 0x53 - ldrb r0, [r1] - movs r2, 0x1 - ands r2, r0 - cmp r2, 0 - bne _0804A5AC - lsrs r0, 1 - strb r0, [r1] - ldr r1, =gBattleScripting - b _0804A5D0 - .pool -_0804A5AC: - ldr r0, [r5] - ldrb r1, [r0, 0x10] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x38 - bl GetMonData - cmp r0, 0x64 - bne _0804A5E8 - ldr r1, [r5] - adds r1, 0x53 - ldrb r0, [r1] - lsrs r0, 1 - strb r0, [r1] - ldr r1, =gBattleScripting - movs r2, 0 -_0804A5D0: - movs r0, 0x5 - strb r0, [r1, 0x1C] - ldr r0, =gBattleMoveDamage - str r2, [r0] - b _0804ACB2 - .pool -_0804A5E8: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - bne _0804A616 - ldr r0, =gBattleMons - ldrh r0, [r0, 0x28] - cmp r0, 0 - beq _0804A616 - ldr r0, [r5] - ldrb r0, [r0, 0x12] - cmp r0, 0 - bne _0804A616 - bl sub_805EA60 - ldr r0, =0x00000161 - bl PlayBGM - ldr r1, [r5] - ldrb r0, [r1, 0x12] - adds r0, 0x1 - strb r0, [r1, 0x12] -_0804A616: - ldr r5, =gBattleStruct - ldr r0, [r5] - ldrb r1, [r0, 0x10] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - bne _0804A630 - b _0804A824 -_0804A630: - ldr r0, [r5] - adds r0, 0x53 - ldrb r0, [r0] - movs r3, 0x1 - ands r3, r0 - cmp r3, 0 - beq _0804A664 - ldr r1, =gBattleMoveDamage - mov r2, r9 - ldrh r0, [r2] - str r0, [r1] - mov r9, r1 - b _0804A66A - .pool -_0804A664: - ldr r0, =gBattleMoveDamage - str r3, [r0] - mov r9, r0 -_0804A66A: - cmp r4, 0x19 - bne _0804A67A - ldr r0, =gUnknown_02024402 - ldrh r1, [r0] - mov r2, r9 - ldr r0, [r2] - adds r0, r1 - str r0, [r2] -_0804A67A: - cmp r4, 0x28 - bne _0804A68E - mov r4, r9 - ldr r1, [r4] - movs r0, 0x96 - muls r0, r1 - movs r1, 0x64 - bl __divsi3 - str r0, [r4] -_0804A68E: - ldr r5, =gBattleTypeFlags - ldr r0, [r5] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0804A6AA - ldr r4, =gBattleMoveDamage - ldr r1, [r4] - movs r0, 0x96 - muls r0, r1 - movs r1, 0x64 - bl __divsi3 - str r0, [r4] -_0804A6AA: - ldr r4, =gBattleStruct - ldr r0, [r4] - ldrb r1, [r0, 0x10] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - bl IsTradedMon - lsls r0, 24 - cmp r0, 0 - beq _0804A714 - ldr r0, [r5] - movs r1, 0x80 - lsls r1, 15 - ands r0, r1 - cmp r0, 0 - beq _0804A6F8 - ldr r0, [r4] - ldrb r0, [r0, 0x10] - cmp r0, 0x2 - bls _0804A6F8 - ldr r7, =0x00000149 - ldr r0, =gBattleMoveDamage - mov r9, r0 - b _0804A71A - .pool -_0804A6F8: - ldr r4, =gBattleMoveDamage - ldr r1, [r4] - movs r0, 0x96 - muls r0, r1 - movs r1, 0x64 - bl __divsi3 - str r0, [r4] - movs r7, 0xA5 - lsls r7, 1 - mov r9, r4 - b _0804A71A - .pool -_0804A714: - ldr r7, =0x00000149 - ldr r1, =gBattleMoveDamage - mov r9, r1 -_0804A71A: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x1 - ands r1, r0 - cmp r1, 0 - beq _0804A786 - ldr r0, =gBattlePartyID - ldr r1, =gBattleStruct - ldr r4, [r1] - ldrh r0, [r0, 0x4] - adds r5, r1, 0 - ldr r3, =gBitTable - ldr r2, =gAbsentBankFlags - ldrb r1, [r4, 0x10] - cmp r0, r1 - bne _0804A76C - ldrb r1, [r2] - ldr r0, [r3, 0x8] - ands r1, r0 - cmp r1, 0 - bne _0804A76C - adds r1, r4, 0 - adds r1, 0x8F - movs r0, 0x2 - strb r0, [r1] - b _0804A78E - .pool -_0804A76C: - ldrb r2, [r2] - ldr r0, [r3] - ands r2, r0 - cmp r2, 0 - bne _0804A77E - ldr r0, [r5] - adds r0, 0x8F - strb r2, [r0] - b _0804A78E -_0804A77E: - ldr r0, [r5] - adds r0, 0x8F - movs r1, 0x2 - b _0804A78C -_0804A786: - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x8F -_0804A78C: - strb r1, [r0] -_0804A78E: - ldr r1, =gBattleTextBuff1 - movs r2, 0 - mov r12, r2 - movs r3, 0xFD - strb r3, [r1] - movs r5, 0x4 - strb r5, [r1, 0x1] - ldr r6, =gBattleStruct - ldr r2, [r6] - movs r4, 0x8F - adds r4, r2 - mov r8, r4 - ldrb r0, [r4] - strb r0, [r1, 0x2] - ldrb r0, [r2, 0x10] - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldr r1, =gBattleTextBuff2 - strb r3, [r1] - mov r0, r12 - strb r0, [r1, 0x1] - strb r7, [r1, 0x2] - movs r4, 0xFF - lsls r4, 8 - ands r7, r4 - asrs r0, r7, 8 - strb r0, [r1, 0x3] - movs r0, 0x1 - negs r0, r0 - strb r0, [r1, 0x4] - ldr r1, =gBattleTextBuff3 - strb r3, [r1] - movs r0, 0x1 - strb r0, [r1, 0x1] - strb r5, [r1, 0x2] - movs r0, 0x5 - strb r0, [r1, 0x3] - mov r0, r9 - ldr r2, [r0] - strb r2, [r1, 0x4] - adds r0, r2, 0 - ands r0, r4 - asrs r0, 8 - strb r0, [r1, 0x5] - movs r0, 0xFF - lsls r0, 16 - ands r0, r2 - asrs r0, 16 - strb r0, [r1, 0x6] - lsrs r2, 24 - strb r2, [r1, 0x7] - movs r0, 0x1 - negs r0, r0 - strb r0, [r1, 0x8] - mov r2, r8 - ldrb r1, [r2] - movs r0, 0xD - bl b_std_message - ldr r0, [r6] - ldrb r1, [r0, 0x10] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r3, =gBattleMons - ldr r1, =gBank1 - ldrb r2, [r1] - movs r1, 0x58 - muls r1, r2 - adds r1, r3 - ldrh r1, [r1] - bl MonGainEVs -_0804A824: - ldr r0, =gBattleStruct - ldr r1, [r0] - adds r1, 0x53 - ldrb r0, [r1] - lsrs r0, 1 - strb r0, [r1] - b _0804A92A - .pool -_0804A850: - ldr r0, =gBattleExecBuffer - ldr r2, [r0] - cmp r2, 0 - beq _0804A85A - b _0804ACB2 -_0804A85A: - ldr r1, =gBattleBufferB - ldr r7, =gBattleStruct - ldr r0, [r7] - adds r0, 0x8F - ldrb r0, [r0] - lsls r0, 9 - adds r0, r1 - strb r2, [r0] - ldr r0, [r7] - ldrb r0, [r0, 0x10] - movs r6, 0x64 - muls r0, r6 - ldr r5, =gPlayerParty - adds r0, r5 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _0804A92A - ldr r0, [r7] - ldrb r0, [r0, 0x10] - muls r0, r6 - adds r0, r5 - movs r1, 0x38 - bl GetMonData - cmp r0, 0x64 - beq _0804A92A - ldr r0, [r7] - ldrb r0, [r0, 0x10] - muls r0, r6 - adds r0, r5 - movs r1, 0x3A - bl GetMonData - ldr r4, =gBattleResources - ldr r1, [r4] - ldr r1, [r1, 0x10] - strh r0, [r1] - ldr r0, [r7] - ldrb r0, [r0, 0x10] - muls r0, r6 - adds r0, r5 - movs r1, 0x3B - bl GetMonData - ldr r1, [r4] - ldr r1, [r1, 0x10] - strh r0, [r1, 0x2] - ldr r0, [r7] - ldrb r0, [r0, 0x10] - muls r0, r6 - adds r0, r5 - movs r1, 0x3C - bl GetMonData - ldr r1, [r4] - ldr r1, [r1, 0x10] - strh r0, [r1, 0x4] - ldr r0, [r7] - ldrb r0, [r0, 0x10] - muls r0, r6 - adds r0, r5 - movs r1, 0x3D - bl GetMonData - ldr r1, [r4] - ldr r1, [r1, 0x10] - strh r0, [r1, 0x6] - ldr r0, [r7] - ldrb r0, [r0, 0x10] - muls r0, r6 - adds r0, r5 - movs r1, 0x3E - bl GetMonData - ldr r1, [r4] - ldr r1, [r1, 0x10] - strh r0, [r1, 0x8] - ldr r0, [r7] - ldrb r0, [r0, 0x10] - muls r0, r6 - adds r0, r5 - movs r1, 0x3F - bl GetMonData - ldr r1, [r4] - ldr r1, [r1, 0x10] - strh r0, [r1, 0xA] - ldr r4, =gActiveBank - ldr r1, [r7] - adds r0, r1, 0 - adds r0, 0x8F - ldrb r0, [r0] - strb r0, [r4] - ldrb r1, [r1, 0x10] - ldr r0, =gBattleMoveDamage - ldrh r2, [r0] - movs r0, 0 - bl dp01_build_cmdbuf_x19_a_bb - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0804A92A: - ldr r1, =gBattleScripting - ldrb r0, [r1, 0x1C] - adds r0, 0x1 - strb r0, [r1, 0x1C] - b _0804ACB2 - .pool -_0804A954: - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - beq _0804A95E - b _0804ACB2 -_0804A95E: - ldr r1, =gActiveBank - ldr r0, =gBattleStruct - ldr r4, [r0] - adds r0, r4, 0 - adds r0, 0x8F - ldrb r0, [r0] - strb r0, [r1] - ldr r3, =gBattleBufferB - ldrb r2, [r1] - lsls r1, r2, 9 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0x21 - beq _0804A97C - b _0804AC28 -_0804A97C: - adds r0, r3, 0x1 - adds r0, r1, r0 - ldrb r0, [r0] - cmp r0, 0xB - beq _0804A988 - b _0804AC28 -_0804A988: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0804A9B2 - ldr r0, =gBattlePartyID - lsls r1, r2, 1 - adds r1, r0 - ldrh r0, [r1] - ldrb r4, [r4, 0x10] - cmp r0, r4 - bne _0804A9B2 - adds r1, r0, 0 - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - adds r1, r2, 0 - bl sub_805E990 -_0804A9B2: - ldr r1, =gBattleTextBuff1 - movs r3, 0xFD - strb r3, [r1] - movs r0, 0x4 - strb r0, [r1, 0x1] - ldr r6, =gActiveBank - ldrb r0, [r6] - strb r0, [r1, 0x2] - ldr r4, =gBattleStruct - mov r9, r4 - ldr r2, [r4] - ldrb r0, [r2, 0x10] - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldr r4, =gBattleTextBuff2 - strb r3, [r4] - movs r0, 0x1 - strb r0, [r4, 0x1] - strb r0, [r4, 0x2] - movs r0, 0x3 - strb r0, [r4, 0x3] - ldrb r0, [r2, 0x10] - movs r1, 0x64 - mov r8, r1 - mov r2, r8 - muls r2, r0 - adds r0, r2, 0 - ldr r7, =gPlayerParty - adds r0, r7 - movs r1, 0x38 - bl GetMonData - strb r0, [r4, 0x4] - movs r0, 0x1 - negs r0, r0 - strb r0, [r4, 0x5] - bl b_movescr_stack_push_cursor - ldr r2, =gUnknown_03005D54 - ldr r1, =gBitTable - mov r4, r9 - ldr r5, [r4] - ldrb r0, [r5, 0x10] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DABBD - str r0, [r1] - ldr r4, =gBattleMoveDamage - ldr r2, =gBattleBufferB - ldrb r1, [r6] - lsls r1, 9 - adds r0, r2, 0x2 - adds r0, r1, r0 - ldrb r3, [r0] - adds r2, 0x3 - adds r1, r2 - ldrb r0, [r1] - lsls r0, 8 - orrs r3, r0 - str r3, [r4] - ldrb r0, [r5, 0x10] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r7 - movs r1, 0 - bl AdjustFriendship - ldr r1, =gBattlePartyID - mov r2, r9 - ldr r0, [r2] - ldrb r2, [r0, 0x10] - ldrh r0, [r1] - cmp r0, r2 - bne _0804AB1E - ldr r4, =gBattleMons - ldrh r0, [r4, 0x28] - cmp r0, 0 - beq _0804AB1E - mov r0, r8 - muls r0, r2 - adds r0, r7 - movs r1, 0x38 - bl GetMonData - adds r1, r4, 0 - adds r1, 0x2A - strb r0, [r1] - mov r1, r9 - ldr r0, [r1] - ldrb r0, [r0, 0x10] - mov r2, r8 - muls r2, r0 - adds r0, r2, 0 - adds r0, r7 - movs r1, 0x39 - bl GetMonData - strh r0, [r4, 0x28] - mov r1, r9 - ldr r0, [r1] - ldrb r0, [r0, 0x10] - mov r2, r8 - muls r2, r0 - adds r0, r2, 0 - adds r0, r7 - movs r1, 0x3A - bl GetMonData - strh r0, [r4, 0x2C] - mov r1, r9 - ldr r0, [r1] - ldrb r0, [r0, 0x10] - mov r2, r8 - muls r2, r0 - adds r0, r2, 0 - adds r0, r7 - movs r1, 0x3B - bl GetMonData - strh r0, [r4, 0x2] - mov r1, r9 - ldr r0, [r1] - ldrb r0, [r0, 0x10] - mov r2, r8 - muls r2, r0 - adds r0, r2, 0 - adds r0, r7 - movs r1, 0x3C - bl GetMonData - strh r0, [r4, 0x4] - mov r1, r9 - ldr r0, [r1] - ldrb r0, [r0, 0x10] - mov r2, r8 - muls r2, r0 - adds r0, r2, 0 - adds r0, r7 - movs r1, 0x3D - bl GetMonData - strh r0, [r4, 0x6] - mov r1, r9 - ldr r0, [r1] - ldrb r0, [r0, 0x10] - mov r2, r8 - muls r2, r0 - adds r0, r2, 0 - adds r0, r7 - movs r1, 0x3D - bl GetMonData - strh r0, [r4, 0x6] - mov r1, r9 - ldr r0, [r1] - ldrb r0, [r0, 0x10] - mov r2, r8 - muls r2, r0 - adds r0, r2, 0 - adds r0, r7 - movs r1, 0x3E - bl GetMonData - strh r0, [r4, 0x8] - mov r1, r9 - ldr r0, [r1] - ldrb r0, [r0, 0x10] - mov r2, r8 - muls r2, r0 - adds r0, r2, 0 - adds r0, r7 - movs r1, 0x3F - bl GetMonData - strh r0, [r4, 0xA] -_0804AB1E: - ldr r0, =gBattlePartyID - ldr r7, =gBattleStruct - ldr r1, [r7] - ldrb r2, [r1, 0x10] - ldrh r0, [r0, 0x4] - cmp r0, r2 - beq _0804AB2E - b _0804AC2E -_0804AB2E: - ldr r6, =gBattleMons - movs r4, 0xD8 - adds r4, r6 - mov r8, r4 - ldrh r0, [r4] - cmp r0, 0 - beq _0804AC2E - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0804AC2E - movs r5, 0x64 - adds r0, r2, 0 - muls r0, r5 - ldr r4, =gPlayerParty - adds r0, r4 - movs r1, 0x38 - bl GetMonData - adds r1, r6, 0 - adds r1, 0xDA - strb r0, [r1] - ldr r0, [r7] - ldrb r0, [r0, 0x10] - muls r0, r5 - adds r0, r4 - movs r1, 0x39 - bl GetMonData - mov r1, r8 - strh r0, [r1] - ldr r0, [r7] - ldrb r0, [r0, 0x10] - muls r0, r5 - adds r0, r4 - movs r1, 0x3A - bl GetMonData - adds r1, r6, 0 - adds r1, 0xDC - strh r0, [r1] - ldr r0, [r7] - ldrb r0, [r0, 0x10] - muls r0, r5 - adds r0, r4 - movs r1, 0x3B - bl GetMonData - adds r1, r6, 0 - adds r1, 0xB2 - strh r0, [r1] - ldr r0, [r7] - ldrb r0, [r0, 0x10] - muls r0, r5 - adds r0, r4 - movs r1, 0x3C - bl GetMonData - adds r1, r6, 0 - adds r1, 0xB4 - strh r0, [r1] - ldr r0, [r7] - ldrb r0, [r0, 0x10] - muls r0, r5 - adds r0, r4 - movs r1, 0x3D - bl GetMonData - movs r2, 0xB6 - adds r2, r6 - mov r8, r2 - strh r0, [r2] - ldr r0, [r7] - ldrb r0, [r0, 0x10] - muls r0, r5 - adds r0, r4 - movs r1, 0x3D - bl GetMonData - mov r1, r8 - strh r0, [r1] - ldr r0, [r7] - ldrb r0, [r0, 0x10] - muls r0, r5 - adds r0, r4 - movs r1, 0x3E - bl GetMonData - adds r1, r6, 0 - adds r1, 0xB8 - strh r0, [r1] - b _0804AC2E - .pool -_0804AC28: - ldr r1, =gBattleMoveDamage - movs r0, 0 - str r0, [r1] -_0804AC2E: - ldr r1, =gBattleScripting - movs r0, 0x5 - strb r0, [r1, 0x1C] - b _0804ACB2 - .pool -_0804AC40: - ldr r0, =gBattleMoveDamage - ldr r0, [r0] - cmp r0, 0 - beq _0804AC58 - ldr r1, =gBattleScripting - movs r0, 0x3 - strb r0, [r1, 0x1C] - b _0804ACB2 - .pool -_0804AC58: - ldr r2, =gBattleStruct - ldr r1, [r2] - ldrb r0, [r1, 0x10] - adds r0, 0x1 - strb r0, [r1, 0x10] - ldr r0, [r2] - ldrb r0, [r0, 0x10] - cmp r0, 0x5 - bhi _0804AC7C - ldr r1, =gBattleScripting - movs r0, 0x2 - strb r0, [r1, 0x1C] - b _0804ACB2 - .pool -_0804AC7C: - ldr r1, =gBattleScripting - movs r0, 0x6 - strb r0, [r1, 0x1C] - b _0804ACB2 - .pool -_0804AC88: - ldr r0, =gBattleExecBuffer - ldr r5, [r0] - cmp r5, 0 - bne _0804ACB2 - ldr r4, =gBattleMons - ldr r2, =gBank1 - ldrb r0, [r2] - movs r1, 0x58 - muls r0, r1 - adds r0, r4 - movs r3, 0 - strh r5, [r0, 0x2E] - ldrb r0, [r2] - muls r0, r1 - adds r0, r4 - adds r0, 0x20 - strb r3, [r0] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x2 - str r0, [r1] -_0804ACB2: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk23_getexp - - thumb_func_start atk24 -atk24: @ 804ACD0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r6, 0 - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - beq _0804ACE2 - b _0804AF22 -_0804ACE2: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 15 - ands r0, r1 - cmp r0, 0 - beq _0804AD48 - ldr r0, =gPartnerTrainerId - ldrh r1, [r0] - ldr r0, =0x00000c03 - cmp r1, r0 - bne _0804AD48 - movs r5, 0 -_0804ACFC: - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0804AD2C - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0804AD2C - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - adds r0, r6, r0 - lsls r0, 16 - lsrs r6, r0, 16 -_0804AD2C: - adds r5, 0x1 - cmp r5, 0x2 - ble _0804ACFC - b _0804ADA8 - .pool -_0804AD48: - movs r5, 0 -_0804AD4A: - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0804ADA2 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0804ADA2 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 11 - ands r0, r1 - cmp r0, 0 - beq _0804AD94 - ldr r0, =gBattleStruct - ldr r0, [r0] - movs r1, 0xA8 - lsls r1, 2 - adds r0, r1 - ldrb r1, [r0] - ldr r2, =gBitTable - lsls r0, r5, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _0804ADA2 -_0804AD94: - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - adds r0, r6, r0 - lsls r0, 16 - lsrs r6, r0, 16 -_0804ADA2: - adds r5, 0x1 - cmp r5, 0x5 - ble _0804AD4A -_0804ADA8: - cmp r6, 0 - bne _0804ADB6 - ldr r0, =gBattleOutcome - ldrb r1, [r0] - movs r2, 0x2 - orrs r1, r2 - strb r1, [r0] -_0804ADB6: - movs r6, 0 - movs r5, 0 -_0804ADBA: - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, =gEnemyParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0804AE10 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0804AE10 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 11 - ands r0, r1 - cmp r0, 0 - beq _0804AE02 - ldr r0, =gBattleStruct - ldr r0, [r0] - ldr r1, =0x000002a1 - adds r0, r1 - ldrb r1, [r0] - ldr r2, =gBitTable - lsls r0, r5, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _0804AE10 -_0804AE02: - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - adds r0, r6, r0 - lsls r0, 16 - lsrs r6, r0, 16 -_0804AE10: - adds r5, 0x1 - cmp r5, 0x5 - ble _0804ADBA - ldr r2, =gBattleOutcome - cmp r6, 0 - bne _0804AE24 - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] -_0804AE24: - ldrb r0, [r2] - cmp r0, 0 - bne _0804AF1A - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r2, =0x02000002 - ands r1, r2 - mov r8, r0 - cmp r1, 0 - beq _0804AF1A - movs r3, 0 - movs r5, 0 - ldr r0, =gNoOfAllBanks - ldrb r1, [r0] - mov r12, r0 - ldr r7, =gBattlescriptCurrInstr - cmp r3, r1 - bge _0804AE70 - ldr r0, =gHitMarker - movs r6, 0x80 - lsls r6, 21 - ldr r4, [r0] - adds r2, r1, 0 - ldr r1, =gSpecialStatuses -_0804AE54: - adds r0, r6, 0 - lsls r0, r5 - ands r0, r4 - cmp r0, 0 - beq _0804AE68 - ldrb r0, [r1] - lsls r0, 25 - cmp r0, 0 - blt _0804AE68 - adds r3, 0x1 -_0804AE68: - adds r1, 0x28 - adds r5, 0x2 - cmp r5, r2 - blt _0804AE54 -_0804AE70: - movs r2, 0 - movs r5, 0x1 - mov r4, r12 - ldrb r1, [r4] - cmp r5, r1 - bge _0804AEAA - ldr r0, =gHitMarker - movs r4, 0x80 - lsls r4, 21 - mov r12, r4 - ldr r6, [r0] - ldr r0, =gSpecialStatuses - adds r4, r1, 0 - adds r1, r0, 0 - adds r1, 0x14 -_0804AE8E: - mov r0, r12 - lsls r0, r5 - ands r0, r6 - cmp r0, 0 - beq _0804AEA2 - ldrb r0, [r1] - lsls r0, 25 - cmp r0, 0 - blt _0804AEA2 - adds r2, 0x1 -_0804AEA2: - adds r1, 0x28 - adds r5, 0x2 - cmp r5, r4 - blt _0804AE8E -_0804AEAA: - mov r1, r8 - ldr r0, [r1] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0804AEF0 - adds r0, r2, r3 - cmp r0, 0x1 - bgt _0804AEF8 - b _0804AF12 - .pool -_0804AEF0: - cmp r2, 0 - beq _0804AF12 - cmp r3, 0 - beq _0804AF12 -_0804AEF8: - ldr r2, [r7] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - adds r1, r0 - str r1, [r7] - b _0804AF22 -_0804AF12: - ldr r0, [r7] - adds r0, 0x5 - str r0, [r7] - b _0804AF22 -_0804AF1A: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_0804AF22: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk24 - - thumb_func_start sub_804AF30 -sub_804AF30: @ 804AF30 - ldr r1, =gBattleMoveFlags - movs r0, 0 - strb r0, [r1] - ldr r0, =gBattleScripting - movs r2, 0 - movs r1, 0x1 - strb r1, [r0, 0xE] - ldr r0, =gCritMultiplier - strb r1, [r0] - ldr r0, =gBattleCommunication - strb r2, [r0, 0x3] - strb r2, [r0, 0x6] - ldr r2, =gHitMarker - ldr r0, [r2] - subs r1, 0x42 - ands r0, r1 - ldr r1, =0xffffbfff - ands r0, r1 - str r0, [r2] - bx lr - .pool - thumb_func_end sub_804AF30 - - thumb_func_start atk25_move_values_cleanup -atk25_move_values_cleanup: @ 804AF70 - push {lr} - bl sub_804AF30 - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atk25_move_values_cleanup - - thumb_func_start atk26_set_multihit -atk26_set_multihit: @ 804AF88 - ldr r3, =gUnknown_02024212 - ldr r2, =gBattlescriptCurrInstr - ldr r0, [r2] - ldrb r1, [r0, 0x1] - strb r1, [r3] - adds r0, 0x2 - str r0, [r2] - bx lr - .pool - thumb_func_end atk26_set_multihit - - thumb_func_start atk27_decrement_multihit -atk27_decrement_multihit: @ 804AFA0 - push {lr} - ldr r1, =gUnknown_02024212 - ldrb r0, [r1] - subs r0, 0x1 - strb r0, [r1] - lsls r0, 24 - cmp r0, 0 - bne _0804AFC4 - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _0804AFDE - .pool -_0804AFC4: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - adds r1, r0 - str r1, [r3] -_0804AFDE: - pop {r0} - bx r0 - .pool - thumb_func_end atk27_decrement_multihit - - thumb_func_start atk28_goto -atk28_goto: @ 804AFE8 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - adds r1, r0 - str r1, [r3] - bx lr - .pool - thumb_func_end atk28_goto - - thumb_func_start atk29_jumpifbyte -atk29_jumpifbyte: @ 804B008 - push {r4-r6,lr} - ldr r3, =gBattlescriptCurrInstr - ldr r1, [r3] - ldrb r6, [r1, 0x1] - ldrb r2, [r1, 0x2] - ldrb r0, [r1, 0x3] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r1, 0x4] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r1, 0x5] - lsls r0, 24 - adds r5, r2, r0 - ldrb r4, [r1, 0x6] - ldrb r2, [r1, 0x7] - ldrb r0, [r1, 0x8] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r1, 0x9] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r1, 0xA] - lsls r0, 24 - adds r2, r0 - adds r1, 0xB - str r1, [r3] - cmp r6, 0x5 - bhi _0804B0A0 - lsls r0, r6, 2 - ldr r1, =_0804B054 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0804B054: - .4byte _0804B06C - .4byte _0804B074 - .4byte _0804B07C - .4byte _0804B084 - .4byte _0804B08C - .4byte _0804B096 -_0804B06C: - ldrb r0, [r5] - cmp r0, r4 - bne _0804B0A0 - b _0804B09E -_0804B074: - ldrb r0, [r5] - cmp r0, r4 - beq _0804B0A0 - b _0804B09E -_0804B07C: - ldrb r0, [r5] - cmp r0, r4 - bls _0804B0A0 - b _0804B09E -_0804B084: - ldrb r0, [r5] - cmp r0, r4 - bcs _0804B0A0 - b _0804B09E -_0804B08C: - ldrb r0, [r5] - ands r4, r0 - cmp r4, 0 - beq _0804B0A0 - b _0804B09E -_0804B096: - ldrb r0, [r5] - ands r4, r0 - cmp r4, 0 - bne _0804B0A0 -_0804B09E: - str r2, [r3] -_0804B0A0: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end atk29_jumpifbyte - - thumb_func_start atk2A_jumpifhalfword -atk2A_jumpifhalfword: @ 804B0A8 - push {r4-r6,lr} - ldr r3, =gBattlescriptCurrInstr - ldr r1, [r3] - ldrb r6, [r1, 0x1] - ldrb r2, [r1, 0x2] - ldrb r0, [r1, 0x3] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r1, 0x4] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r1, 0x5] - lsls r0, 24 - adds r5, r2, r0 - ldrb r4, [r1, 0x6] - ldrb r0, [r1, 0x7] - lsls r0, 8 - orrs r4, r0 - ldrb r2, [r1, 0x8] - ldrb r0, [r1, 0x9] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r1, 0xA] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r1, 0xB] - lsls r0, 24 - adds r2, r0 - adds r1, 0xC - str r1, [r3] - cmp r6, 0x5 - bhi _0804B148 - lsls r0, r6, 2 - ldr r1, =_0804B0FC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0804B0FC: - .4byte _0804B114 - .4byte _0804B11C - .4byte _0804B124 - .4byte _0804B12C - .4byte _0804B134 - .4byte _0804B13E -_0804B114: - ldrh r0, [r5] - cmp r0, r4 - bne _0804B148 - b _0804B146 -_0804B11C: - ldrh r0, [r5] - cmp r0, r4 - beq _0804B148 - b _0804B146 -_0804B124: - ldrh r0, [r5] - cmp r0, r4 - bls _0804B148 - b _0804B146 -_0804B12C: - ldrh r0, [r5] - cmp r0, r4 - bcs _0804B148 - b _0804B146 -_0804B134: - ldrh r0, [r5] - ands r4, r0 - cmp r4, 0 - beq _0804B148 - b _0804B146 -_0804B13E: - ldrh r0, [r5] - ands r4, r0 - cmp r4, 0 - bne _0804B148 -_0804B146: - str r2, [r3] -_0804B148: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end atk2A_jumpifhalfword - - thumb_func_start atk2B_jumpifword -atk2B_jumpifword: @ 804B150 - push {r4-r6,lr} - ldr r3, =gBattlescriptCurrInstr - ldr r1, [r3] - ldrb r6, [r1, 0x1] - ldrb r2, [r1, 0x2] - ldrb r0, [r1, 0x3] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r1, 0x4] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r1, 0x5] - lsls r0, 24 - adds r5, r2, r0 - ldrb r4, [r1, 0x6] - ldrb r0, [r1, 0x7] - lsls r0, 8 - orrs r4, r0 - ldrb r0, [r1, 0x8] - lsls r0, 16 - orrs r4, r0 - ldrb r0, [r1, 0x9] - lsls r0, 24 - orrs r4, r0 - ldrb r2, [r1, 0xA] - ldrb r0, [r1, 0xB] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r1, 0xC] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r1, 0xD] - lsls r0, 24 - adds r2, r0 - adds r1, 0xE - str r1, [r3] - cmp r6, 0x5 - bhi _0804B1FC - lsls r0, r6, 2 - ldr r1, =_0804B1B0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0804B1B0: - .4byte _0804B1C8 - .4byte _0804B1D0 - .4byte _0804B1D8 - .4byte _0804B1E0 - .4byte _0804B1E8 - .4byte _0804B1F2 -_0804B1C8: - ldr r0, [r5] - cmp r0, r4 - bne _0804B1FC - b _0804B1FA -_0804B1D0: - ldr r0, [r5] - cmp r0, r4 - beq _0804B1FC - b _0804B1FA -_0804B1D8: - ldr r0, [r5] - cmp r0, r4 - bls _0804B1FC - b _0804B1FA -_0804B1E0: - ldr r0, [r5] - cmp r0, r4 - bcs _0804B1FC - b _0804B1FA -_0804B1E8: - ldr r0, [r5] - ands r0, r4 - cmp r0, 0 - beq _0804B1FC - b _0804B1FA -_0804B1F2: - ldr r0, [r5] - ands r0, r4 - cmp r0, 0 - bne _0804B1FC -_0804B1FA: - str r2, [r3] -_0804B1FC: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end atk2B_jumpifword - - thumb_func_start atk2C_jumpifarrayequal -atk2C_jumpifarrayequal: @ 804B204 - push {r4-r7,lr} - ldr r2, =gBattlescriptCurrInstr - ldr r3, [r2] - ldrb r1, [r3, 0x1] - ldrb r0, [r3, 0x2] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r3, 0x3] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r3, 0x4] - lsls r0, 24 - adds r5, r1, r0 - ldrb r1, [r3, 0x5] - ldrb r0, [r3, 0x6] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r3, 0x7] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r3, 0x8] - lsls r0, 24 - adds r4, r1, r0 - ldrb r6, [r3, 0x9] - ldrb r1, [r3, 0xA] - ldrb r0, [r3, 0xB] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r3, 0xC] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r3, 0xD] - lsls r0, 24 - adds r1, r0 - mov r12, r1 - movs r1, 0 - cmp r1, r6 - bcs _0804B27C - ldrb r0, [r5] - ldrb r7, [r4] - cmp r0, r7 - beq _0804B260 - adds r0, r3, 0 - b _0804B278 - .pool -_0804B260: - adds r5, 0x1 - adds r4, 0x1 - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, r6 - bcs _0804B27C - ldrb r0, [r5] - ldrb r3, [r4] - cmp r0, r3 - beq _0804B260 - ldr r0, [r2] -_0804B278: - adds r0, 0xE - str r0, [r2] -_0804B27C: - cmp r1, r6 - bne _0804B284 - mov r7, r12 - str r7, [r2] -_0804B284: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end atk2C_jumpifarrayequal - - thumb_func_start atk2D_jumpifarraynotequal -atk2D_jumpifarraynotequal: @ 804B28C - push {r4-r7,lr} - movs r7, 0 - ldr r3, =gBattlescriptCurrInstr - ldr r1, [r3] - ldrb r2, [r1, 0x1] - ldrb r0, [r1, 0x2] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r1, 0x3] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r1, 0x4] - lsls r0, 24 - adds r5, r2, r0 - ldrb r2, [r1, 0x5] - ldrb r0, [r1, 0x6] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r1, 0x7] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r1, 0x8] - lsls r0, 24 - adds r4, r2, r0 - ldrb r6, [r1, 0x9] - ldrb r2, [r1, 0xA] - ldrb r0, [r1, 0xB] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r1, 0xC] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r1, 0xD] - lsls r0, 24 - adds r2, r0 - mov r12, r2 - movs r1, 0 - cmp r7, r6 - bcs _0804B2F6 -_0804B2DA: - ldrb r0, [r5] - ldrb r2, [r4] - cmp r0, r2 - bne _0804B2E8 - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 -_0804B2E8: - adds r5, 0x1 - adds r4, 0x1 - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, r6 - bcc _0804B2DA -_0804B2F6: - cmp r7, r6 - beq _0804B304 - mov r0, r12 - b _0804B308 - .pool -_0804B304: - ldr r0, [r3] - adds r0, 0xE -_0804B308: - str r0, [r3] - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end atk2D_jumpifarraynotequal - - thumb_func_start atk2E_setbyte -atk2E_setbyte: @ 804B310 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - adds r1, r0 - ldrb r0, [r2, 0x5] - strb r0, [r1] - ldr r0, [r3] - adds r0, 0x6 - str r0, [r3] - bx lr - .pool - thumb_func_end atk2E_setbyte - - thumb_func_start atk2F_addbyte -atk2F_addbyte: @ 804B338 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - adds r1, r0 - ldrb r0, [r2, 0x5] - ldrb r2, [r1] - adds r0, r2 - strb r0, [r1] - ldr r0, [r3] - adds r0, 0x6 - str r0, [r3] - bx lr - .pool - thumb_func_end atk2F_addbyte - - thumb_func_start atk30_subbyte -atk30_subbyte: @ 804B364 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - adds r1, r0 - ldrb r0, [r1] - ldrb r2, [r2, 0x5] - subs r0, r2 - strb r0, [r1] - ldr r0, [r3] - adds r0, 0x6 - str r0, [r3] - bx lr - .pool - thumb_func_end atk30_subbyte - - thumb_func_start atk31_copyarray -atk31_copyarray: @ 804B390 - push {r4-r6,lr} - ldr r3, =gBattlescriptCurrInstr - ldr r1, [r3] - ldrb r2, [r1, 0x1] - ldrb r0, [r1, 0x2] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r1, 0x3] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r1, 0x4] - lsls r0, 24 - adds r6, r2, r0 - ldrb r2, [r1, 0x5] - ldrb r0, [r1, 0x6] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r1, 0x7] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r1, 0x8] - lsls r0, 24 - adds r5, r2, r0 - ldrb r4, [r1, 0x9] - movs r2, 0 - cmp r2, r4 - bge _0804B3D4 -_0804B3C6: - adds r0, r6, r2 - adds r1, r5, r2 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, r4 - blt _0804B3C6 -_0804B3D4: - ldr r0, [r3] - adds r0, 0xA - str r0, [r3] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atk31_copyarray - - thumb_func_start atk32_copyarray_withindex -atk32_copyarray_withindex: @ 804B3E4 - push {r4-r7,lr} - ldr r3, =gBattlescriptCurrInstr - ldr r1, [r3] - ldrb r2, [r1, 0x1] - ldrb r0, [r1, 0x2] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r1, 0x3] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r1, 0x4] - lsls r0, 24 - adds r7, r2, r0 - ldrb r2, [r1, 0x5] - ldrb r0, [r1, 0x6] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r1, 0x7] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r1, 0x8] - lsls r0, 24 - adds r6, r2, r0 - ldrb r2, [r1, 0x9] - ldrb r0, [r1, 0xA] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r1, 0xB] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r1, 0xC] - lsls r0, 24 - adds r5, r2, r0 - ldrb r4, [r1, 0xD] - movs r2, 0 - cmp r2, r4 - bge _0804B440 -_0804B42E: - adds r0, r7, r2 - ldrb r1, [r5] - adds r1, r2, r1 - adds r1, r6, r1 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, r4 - blt _0804B42E -_0804B440: - ldr r0, [r3] - adds r0, 0xE - str r0, [r3] - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk32_copyarray_withindex - - thumb_func_start atk33_orbyte -atk33_orbyte: @ 804B450 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - adds r1, r0 - ldrb r0, [r1] - ldrb r2, [r2, 0x5] - orrs r0, r2 - strb r0, [r1] - ldr r0, [r3] - adds r0, 0x6 - str r0, [r3] - bx lr - .pool - thumb_func_end atk33_orbyte - - thumb_func_start atk34_orhalfword -atk34_orhalfword: @ 804B47C - push {r4,lr} - ldr r4, =gBattlescriptCurrInstr - ldr r3, [r4] - ldrb r2, [r3, 0x1] - ldrb r0, [r3, 0x2] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r3, 0x3] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r3, 0x4] - lsls r0, 24 - adds r2, r0 - ldrb r1, [r3, 0x5] - ldrb r0, [r3, 0x6] - lsls r0, 8 - orrs r1, r0 - ldrh r0, [r2] - orrs r1, r0 - strh r1, [r2] - ldr r0, [r4] - adds r0, 0x7 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk34_orhalfword - - thumb_func_start atk35_orword -atk35_orword: @ 804B4B4 - push {r4,lr} - ldr r4, =gBattlescriptCurrInstr - ldr r2, [r4] - ldrb r3, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - adds r3, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - adds r3, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - adds r3, r0 - ldrb r1, [r2, 0x5] - ldrb r0, [r2, 0x6] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x7] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x8] - lsls r0, 24 - adds r1, r0 - ldr r0, [r3] - orrs r0, r1 - str r0, [r3] - ldr r0, [r4] - adds r0, 0x9 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk35_orword - - thumb_func_start atk36_bicbyte -atk36_bicbyte: @ 804B4F8 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - adds r1, r0 - ldrb r2, [r2, 0x5] - ldrb r0, [r1] - bics r0, r2 - strb r0, [r1] - ldr r0, [r3] - adds r0, 0x6 - str r0, [r3] - bx lr - .pool - thumb_func_end atk36_bicbyte - - thumb_func_start atk37_bichalfword -atk37_bichalfword: @ 804B524 - push {r4,lr} - ldr r4, =gBattlescriptCurrInstr - ldr r3, [r4] - ldrb r1, [r3, 0x1] - ldrb r0, [r3, 0x2] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r3, 0x3] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r3, 0x4] - lsls r0, 24 - adds r1, r0 - ldrb r2, [r3, 0x5] - ldrb r0, [r3, 0x6] - lsls r0, 8 - orrs r2, r0 - ldrh r0, [r1] - bics r0, r2 - strh r0, [r1] - ldr r0, [r4] - adds r0, 0x7 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk37_bichalfword - - thumb_func_start atk38_bicword -atk38_bicword: @ 804B55C - push {r4,lr} - ldr r4, =gBattlescriptCurrInstr - ldr r2, [r4] - ldrb r3, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - adds r3, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - adds r3, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - adds r3, r0 - ldrb r1, [r2, 0x5] - ldrb r0, [r2, 0x6] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x7] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x8] - lsls r0, 24 - adds r1, r0 - ldr r0, [r3] - bics r0, r1 - str r0, [r3] - ldr r0, [r4] - adds r0, 0x9 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk38_bicword - - thumb_func_start atk39_pause -atk39_pause: @ 804B5A0 - push {r4,r5,lr} - ldr r0, =gBattleExecBuffer - ldr r4, [r0] - cmp r4, 0 - bne _0804B5CC - ldr r5, =gBattlescriptCurrInstr - ldr r2, [r5] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldr r3, =gUnknown_0202432C - ldrh r0, [r3] - adds r0, 0x1 - strh r0, [r3] - lsls r0, 16 - lsrs r0, 16 - cmp r0, r1 - bcc _0804B5CC - strh r4, [r3] - adds r0, r2, 0x3 - str r0, [r5] -_0804B5CC: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk39_pause - - thumb_func_start atk3A_waitstate -atk3A_waitstate: @ 804B5E0 - push {lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0804B5F2 - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_0804B5F2: - pop {r0} - bx r0 - .pool - thumb_func_end atk3A_waitstate - - thumb_func_start atk3B_healthbar_update -atk3B_healthbar_update: @ 804B600 - push {lr} - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - cmp r0, 0 - bne _0804B620 - ldr r0, =gActiveBank - ldr r1, =gBankTarget - b _0804B624 - .pool -_0804B620: - ldr r0, =gActiveBank - ldr r1, =gBankAttacker -_0804B624: - ldrb r1, [r1] - strb r1, [r0] - ldr r0, =gBattleMoveDamage - ldrh r1, [r0] - movs r0, 0 - bl dp01_build_cmdbuf_x18_0_aa_health_bar_update - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x2 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atk3B_healthbar_update - - thumb_func_start atk3C_return -atk3C_return: @ 804B658 - push {lr} - bl b_movescr_stack_pop_cursor - pop {r0} - bx r0 - thumb_func_end atk3C_return - - thumb_func_start atk3D_end -atk3D_end: @ 804B664 - push {lr} - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 11 - ands r0, r1 - cmp r0, 0 - beq _0804B67C - ldr r0, =gBankAttacker - ldrb r0, [r0] - bl sub_81A5718 -_0804B67C: - ldr r0, =gBattleMoveFlags - movs r1, 0 - strb r1, [r0] - ldr r0, =gActiveBank - strb r1, [r0] - ldr r1, =gFightStateTracker - movs r0, 0xB - strb r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atk3D_end - - thumb_func_start atk3E_end2 -atk3E_end2: @ 804B6A4 - ldr r1, =gActiveBank - movs r0, 0 - strb r0, [r1] - ldr r1, =gFightStateTracker - movs r0, 0xB - strb r0, [r1] - bx lr - .pool - thumb_func_end atk3E_end2 - - thumb_func_start atk3F_end3 -atk3F_end3: @ 804B6BC - push {lr} - bl b_movescr_stack_pop_cursor - ldr r3, =gBattleResources - ldr r0, [r3] - ldr r0, [r0, 0xC] - adds r1, r0, 0 - adds r1, 0x20 - ldrb r0, [r1] - cmp r0, 0 - beq _0804B6D6 - subs r0, 0x1 - strb r0, [r1] -_0804B6D6: - ldr r2, =gBattleMainFunc - ldr r0, [r3] - ldr r1, [r0, 0xC] - adds r0, r1, 0 - adds r0, 0x20 - ldrb r0, [r0] - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - str r0, [r2] - pop {r0} - bx r0 - .pool - thumb_func_end atk3F_end3 - - thumb_func_start atk41_call -atk41_call: @ 804B6F8 - push {r4,lr} - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x5 - bl b_movescr_stack_push - ldr r2, [r4] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r4] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk41_call - - thumb_func_start atk42_jumpiftype2 -atk42_jumpiftype2: @ 804B728 - push {r4,lr} - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - lsls r0, 24 - lsrs r0, 24 - ldr r3, [r4] - ldr r2, =gBattleMons - movs r1, 0x58 - muls r0, r1 - adds r0, r2 - adds r1, r0, 0 - adds r1, 0x21 - ldrb r2, [r3, 0x2] - ldrb r1, [r1] - cmp r2, r1 - beq _0804B756 - adds r0, 0x22 - ldrb r0, [r0] - cmp r2, r0 - bne _0804B778 -_0804B756: - ldrb r1, [r3, 0x3] - ldrb r0, [r3, 0x4] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r3, 0x5] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r3, 0x6] - lsls r0, 24 - orrs r1, r0 - str r1, [r4] - b _0804B77C - .pool -_0804B778: - adds r0, r3, 0x7 - str r0, [r4] -_0804B77C: - pop {r4} - pop {r0} - bx r0 - thumb_func_end atk42_jumpiftype2 - - thumb_func_start atk43_jumpifabilitypresent -atk43_jumpifabilitypresent: @ 804B784 - push {r4,lr} - sub sp, 0x4 - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r2, [r0, 0x1] - movs r0, 0 - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - beq _0804B7C0 - ldr r2, [r4] - ldrb r1, [r2, 0x2] - ldrb r0, [r2, 0x3] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x5] - lsls r0, 24 - orrs r1, r0 - str r1, [r4] - b _0804B7C6 - .pool -_0804B7C0: - ldr r0, [r4] - adds r0, 0x6 - str r0, [r4] -_0804B7C6: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end atk43_jumpifabilitypresent - - thumb_func_start atk44 -atk44: @ 804B7D0 - ldr r0, =gBankAttacker - ldrb r0, [r0] - ldr r1, =gBattleStruct - ldr r1, [r1] - adds r0, r1 - adds r0, 0x54 - movs r1, 0x1 - strb r1, [r0] - bx lr - .pool - thumb_func_end atk44 - - thumb_func_start atk45_playanimation -atk45_playanimation: @ 804B7EC - push {r4-r6,lr} - ldr r5, =gBattlescriptCurrInstr - ldr r0, [r5] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r6, =gActiveBank - strb r0, [r6] - ldr r2, [r5] - ldrb r1, [r2, 0x3] - ldrb r0, [r2, 0x4] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x5] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x6] - lsls r0, 24 - adds r3, r1, r0 - ldrb r4, [r2, 0x2] - adds r0, r4, 0 - cmp r0, 0x1 - beq _0804B822 - cmp r0, 0x11 - beq _0804B822 - cmp r0, 0x2 - bne _0804B848 -_0804B822: - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r1, [r0, 0x2] - ldrh r2, [r3] - movs r0, 0 - bl dp01_build_cmdbuf_x34_a_bb_aka_battle_anim - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution - ldr r0, [r4] - adds r0, 0x7 - str r0, [r4] - b _0804B8AA - .pool -_0804B848: - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804B868 - adds r0, r2, 0x7 - bl b_movescr_stack_push - ldr r0, =gUnknown_082DABB9 - b _0804B8A8 - .pool -_0804B868: - adds r0, r4, 0 - subs r0, 0xA - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bls _0804B894 - ldr r1, =gStatuses3 - ldrb r0, [r6] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x000400c0 - ands r0, r1 - cmp r0, 0 - beq _0804B894 - adds r0, r2, 0x7 - b _0804B8A8 - .pool -_0804B894: - ldrb r1, [r2, 0x2] - ldrh r2, [r3] - movs r0, 0 - bl dp01_build_cmdbuf_x34_a_bb_aka_battle_anim - ldrb r0, [r6] - bl MarkBufferBankForExecution - ldr r0, [r5] - adds r0, 0x7 -_0804B8A8: - str r0, [r5] -_0804B8AA: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end atk45_playanimation - - thumb_func_start atk46_playanimation2 -atk46_playanimation2: @ 804B8B0 - push {r4-r7,lr} - ldr r6, =gBattlescriptCurrInstr - ldr r0, [r6] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r7, =gActiveBank - strb r0, [r7] - ldr r2, [r6] - ldrb r1, [r2, 0x2] - ldrb r0, [r2, 0x3] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x5] - lsls r0, 24 - adds r3, r1, r0 - ldrb r1, [r2, 0x6] - ldrb r0, [r2, 0x7] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x8] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x9] - lsls r0, 24 - adds r4, r1, r0 - ldrb r5, [r3] - adds r0, r5, 0 - cmp r0, 0x1 - beq _0804B8FA - cmp r0, 0x11 - beq _0804B8FA - cmp r0, 0x2 - bne _0804B920 -_0804B8FA: - ldrb r1, [r3] - ldrh r2, [r4] - movs r0, 0 - bl dp01_build_cmdbuf_x34_a_bb_aka_battle_anim - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0xA - str r0, [r1] - b _0804B976 - .pool -_0804B920: - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804B934 - adds r0, r2, 0 - b _0804B972 - .pool -_0804B934: - adds r0, r5, 0 - subs r0, 0xA - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bls _0804B960 - ldr r1, =gStatuses3 - ldrb r0, [r7] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x000400c0 - ands r0, r1 - cmp r0, 0 - beq _0804B960 - adds r0, r2, 0 - b _0804B972 - .pool -_0804B960: - ldrb r1, [r3] - ldrh r2, [r4] - movs r0, 0 - bl dp01_build_cmdbuf_x34_a_bb_aka_battle_anim - ldrb r0, [r7] - bl MarkBufferBankForExecution - ldr r0, [r6] -_0804B972: - adds r0, 0xA - str r0, [r6] -_0804B976: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end atk46_playanimation2 - - thumb_func_start atk47_setgraphicalstatchangevalues -atk47_setgraphicalstatchangevalues: @ 804B97C - push {r4,lr} - movs r3, 0 - ldr r1, =gBattleScripting - ldrb r0, [r1, 0x1A] - movs r2, 0xF0 - ands r2, r0 - adds r4, r1, 0 - cmp r2, 0x20 - beq _0804B9AA - cmp r2, 0x20 - bgt _0804B99C - cmp r2, 0x10 - beq _0804B9A6 - b _0804B9B4 - .pool -_0804B99C: - cmp r2, 0x90 - beq _0804B9AE - cmp r2, 0xA0 - beq _0804B9B2 - b _0804B9B4 -_0804B9A6: - movs r3, 0xF - b _0804B9B4 -_0804B9AA: - movs r3, 0x27 - b _0804B9B4 -_0804B9AE: - movs r3, 0x16 - b _0804B9B4 -_0804B9B2: - movs r3, 0x2E -_0804B9B4: - ldrb r1, [r4, 0x1A] - movs r0, 0xF - ands r0, r1 - adds r0, r3, r0 - subs r0, 0x1 - movs r1, 0 - strb r0, [r4, 0x10] - strb r1, [r4, 0x11] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk47_setgraphicalstatchangevalues - - thumb_func_start atk48_playstatchangeanimation -atk48_playstatchangeanimation: @ 804B9D8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - movs r7, 0 - movs r0, 0 - mov r8, r0 - movs r3, 0 - ldr r5, =gBattlescriptCurrInstr - ldr r0, [r5] - ldrb r0, [r0, 0x1] - str r3, [sp] - bl get_battle_side_of_something - ldr r2, =gActiveBank - strb r0, [r2] - ldr r0, [r5] - ldrb r4, [r0, 0x2] - ldrb r1, [r0, 0x3] - movs r0, 0x1 - ands r0, r1 - ldr r3, [sp] - cmp r0, 0 - beq _0804BAEC - movs r0, 0x2 - ands r0, r1 - movs r1, 0x15 - cmp r0, 0 - beq _0804BA18 - movs r1, 0x2D -_0804BA18: - cmp r4, 0 - beq _0804BAC0 - movs r0, 0x1 - mov r10, r0 - ldr r0, =gBattleMons + 0x18 - mov r9, r0 - lsls r5, r1, 16 -_0804BA26: - adds r0, r4, 0 - mov r1, r10 - ands r0, r1 - cmp r0, 0 - beq _0804BAB2 - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r1, [r0, 0x3] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0804BA58 - ldr r0, =gActiveBank - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r7, r0 - b _0804BAA0 - .pool -_0804BA58: - ldr r6, =gActiveBank - ldrb r0, [r6] - str r3, [sp] - bl GetBankIdentity - mov r1, r10 - ands r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, =gSideTimers - adds r0, r1 - ldrb r0, [r0, 0x4] - ldr r3, [sp] - cmp r0, 0 - bne _0804BAB2 - ldr r0, =gBattleMons - ldrb r2, [r6] - movs r1, 0x58 - muls r2, r1 - adds r0, r2, r0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x1D - beq _0804BAB2 - cmp r0, 0x49 - beq _0804BAB2 - cmp r0, 0x33 - bne _0804BA96 - cmp r7, 0x6 - beq _0804BAB2 -_0804BA96: - cmp r0, 0x34 - bne _0804BA9E - cmp r7, 0x1 - beq _0804BAB2 -_0804BA9E: - adds r0, r7, r2 -_0804BAA0: - add r0, r9 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - ble _0804BAB2 - lsrs r0, r5, 16 - mov r8, r0 - adds r3, 0x1 -_0804BAB2: - lsrs r4, 1 - movs r1, 0x80 - lsls r1, 9 - adds r5, r1 - adds r7, 0x1 - cmp r4, 0 - bne _0804BA26 -_0804BAC0: - ldr r0, =gBattlescriptCurrInstr - mov r9, r0 - cmp r3, 0x1 - ble _0804BB4E - ldr r0, [r0] - ldrb r1, [r0, 0x3] - movs r0, 0x2 - ands r0, r1 - movs r1, 0x39 - mov r8, r1 - cmp r0, 0 - beq _0804BB4E - movs r0, 0x3A - b _0804BB4C - .pool -_0804BAEC: - movs r0, 0x2 - ands r0, r1 - movs r1, 0xE - cmp r0, 0 - beq _0804BAF8 - movs r1, 0x26 -_0804BAF8: - mov r9, r5 - cmp r4, 0 - beq _0804BB34 - ldr r6, =gBattleMons + 0x18 - adds r5, r2, 0 - lsls r2, r1, 16 -_0804BB04: - movs r0, 0x1 - ands r0, r4 - cmp r0, 0 - beq _0804BB26 - ldrb r1, [r5] - movs r0, 0x58 - muls r0, r1 - adds r0, r7, r0 - adds r0, r6 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0xB - bgt _0804BB26 - lsrs r1, r2, 16 - mov r8, r1 - adds r3, 0x1 -_0804BB26: - lsrs r4, 1 - movs r0, 0x80 - lsls r0, 9 - adds r2, r0 - adds r7, 0x1 - cmp r4, 0 - bne _0804BB04 -_0804BB34: - cmp r3, 0x1 - ble _0804BB4E - mov r1, r9 - ldr r0, [r1] - ldrb r1, [r0, 0x3] - movs r0, 0x2 - ands r0, r1 - movs r1, 0x37 - mov r8, r1 - cmp r0, 0 - beq _0804BB4E - movs r0, 0x38 -_0804BB4C: - mov r8, r0 -_0804BB4E: - mov r1, r9 - ldr r2, [r1] - ldrb r1, [r2, 0x3] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0804BB6C - cmp r3, 0x1 - bgt _0804BB6C - adds r0, r2, 0x4 - mov r1, r9 - b _0804BBBA - .pool -_0804BB6C: - cmp r3, 0 - beq _0804BBB4 - ldr r4, =gBattleScripting - ldrb r0, [r4, 0x1B] - cmp r0, 0 - bne _0804BBB4 - movs r0, 0 - movs r1, 0x1 - mov r2, r8 - str r3, [sp] - bl dp01_build_cmdbuf_x34_a_bb_aka_battle_anim - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r1, [r0, 0x3] - movs r0, 0x4 - ands r0, r1 - ldr r3, [sp] - cmp r0, 0 - beq _0804BBA4 - cmp r3, 0x1 - ble _0804BBA4 - movs r0, 0x1 - strb r0, [r4, 0x1B] -_0804BBA4: - ldr r1, =gBattlescriptCurrInstr - b _0804BBB6 - .pool -_0804BBB4: - mov r1, r9 -_0804BBB6: - ldr r0, [r1] - adds r0, 0x4 -_0804BBBA: - str r0, [r1] - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end atk48_playstatchangeanimation - - thumb_func_start atk49_moveendturn -atk49_moveendturn: @ 804BBCC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - movs r0, 0 - mov r10, r0 - ldr r2, =gUnknown_020241EC - ldrh r1, [r2] - ldr r0, =0x0000ffff - movs r3, 0 - str r3, [sp, 0x18] - cmp r1, r0 - beq _0804BBEE - ldrh r2, [r2] - str r2, [sp, 0x18] -_0804BBEE: - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r4, [r0, 0x1] - str r4, [sp, 0x10] - ldrb r0, [r0, 0x2] - str r0, [sp, 0x14] - ldr r1, =gBattleMons - ldr r0, =gBankAttacker - ldrb r2, [r0] - movs r0, 0x58 - muls r0, r2 - adds r1, r0, r1 - ldrh r0, [r1, 0x2E] - cmp r0, 0xAF - bne _0804BC34 - ldr r1, =gEnigmaBerries - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0, 0x7] - b _0804BC3E - .pool -_0804BC34: - ldrh r0, [r1, 0x2E] - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r0, 24 -_0804BC3E: - str r0, [sp, 0x8] - ldr r1, =gBattleStruct - ldr r0, =gBankAttacker - ldrb r0, [r0] - lsls r0, 1 - adds r0, 0xC8 - ldr r1, [r1] - adds r0, r1, r0 - str r0, [sp, 0xC] - ldrb r0, [r1, 0x13] - cmp r0, 0 - beq _0804BCF0 - movs r5, 0x3F - ands r5, r0 - str r5, [sp, 0x4] - b _0804BD02 - .pool -_0804BC68: - ldr r4, =gActiveBank - strb r2, [r4] - movs r0, 0 - movs r1, 0x1 - bl dp01_build_cmdbuf_x33_a_33_33 - ldrb r0, [r4] - bl MarkBufferBankForExecution - b _0804C15A - .pool -_0804BC80: - ldr r4, =gActiveBank - strb r2, [r4] - movs r0, 0 - movs r1, 0 - bl dp01_build_cmdbuf_x33_a_33_33 - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldrb r1, [r6] - lsls r1, 2 - adds r1, r5 - ldr r0, [r1] - ldr r2, =0xfffbff3f - ands r0, r2 - str r0, [r1] - b _0804C15A - .pool -_0804BCAC: - strb r2, [r7] - ldr r0, [r5] - orrs r0, r6 - str r0, [r5] - ldr r0, =gBattleScripting - strb r4, [r0, 0x14] - bl sub_804AF30 - ldr r2, =gUnknown_082D86A8 - mov r0, r8 - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - add r0, r9 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - bl b_movescr_stack_push - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB87D - bl _0804C5B8 - .pool -_0804BCF0: - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x2] - str r0, [sp, 0x4] -_0804BD02: - ldr r1, =gBattleScripting - mov r12, r1 - b _0804BD1E - .pool -_0804BD14: - mov r2, r10 - cmp r2, 0 - beq _0804BD1E - bl _0804C5A4 -_0804BD1E: - mov r3, r12 - ldrb r0, [r3, 0x14] - cmp r0, 0x11 - bls _0804BD2A - bl _0804C570 -_0804BD2A: - lsls r0, 2 - ldr r1, =_0804BD38 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0804BD38: - .4byte _0804BD80 - .4byte _0804BE5C - .4byte _0804BF18 - .4byte _0804BF3C - .4byte _0804BF54 - .4byte _0804BF7C - .4byte _0804BFA0 - .4byte _0804C048 - .4byte _0804C0BE - .4byte _0804C0F4 - .4byte _0804C194 - .4byte _0804C088 - .4byte _0804C0A8 - .4byte _0804C1D8 - .4byte _0804C21C - .4byte _0804C3FC - .4byte _0804C4E4 - .4byte _0804C570 -_0804BD80: - ldr r6, =gBattleMons - ldr r5, =gBankTarget - ldrb r3, [r5] - movs r7, 0x58 - adds r2, r3, 0 - muls r2, r7 - adds r0, r6, 0 - adds r0, 0x50 - adds r0, r2, r0 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 16 - ands r0, r1 - cmp r0, 0 - bne _0804BDA0 - b _0804C184 -_0804BDA0: - adds r0, r2, r6 - ldrh r0, [r0, 0x28] - cmp r0, 0 - bne _0804BDAA - b _0804C184 -_0804BDAA: - ldr r0, =gBankAttacker - ldrb r1, [r0] - cmp r1, r3 - bne _0804BDB4 - b _0804C184 -_0804BDB4: - adds r0, r1, 0 - bl GetBankSide - adds r4, r0, 0 - ldrb r0, [r5] - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - bne _0804BDCC - b _0804C184 -_0804BDCC: - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - beq _0804BDDA - b _0804C184 -_0804BDDA: - ldr r2, =gSpecialStatuses - ldrb r3, [r5] - lsls r0, r3, 2 - adds r0, r3 - lsls r1, r0, 2 - adds r0, r2, 0 - adds r0, 0x8 - adds r0, r1, r0 - ldr r0, [r0] - cmp r0, 0 - bne _0804BDFE - adds r0, r2, 0 - adds r0, 0xC - adds r0, r1, r0 - ldr r0, [r0] - cmp r0, 0 - bne _0804BDFE - b _0804C184 -_0804BDFE: - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x1] - cmp r0, 0 - bne _0804BE14 - b _0804C184 -_0804BE14: - adds r0, r3, 0 - muls r0, r7 - adds r1, r0, r6 - ldrb r2, [r1, 0x19] - movs r0, 0x19 - ldrsb r0, [r1, r0] - cmp r0, 0xB - ble _0804BE26 - b _0804C184 -_0804BE26: - adds r0, r2, 0x1 - strb r0, [r1, 0x19] - bl b_movescr_stack_push_cursor - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DAE0D - str r0, [r1] - b _0804C0B8 - .pool -_0804BE5C: - ldr r4, =gBattleMons - ldr r6, =gBankTarget - ldrb r2, [r6] - movs r5, 0x58 - mov r12, r5 - mov r1, r12 - muls r1, r2 - adds r7, r4, 0 - adds r7, 0x4C - adds r5, r1, r7 - ldr r3, [r5] - movs r0, 0x20 - ands r0, r3 - cmp r0, 0 - bne _0804BE7C - b _0804C184 -_0804BE7C: - adds r0, r1, r4 - ldrh r0, [r0, 0x28] - cmp r0, 0 - bne _0804BE86 - b _0804C184 -_0804BE86: - ldr r0, =gBankAttacker - ldrb r0, [r0] - cmp r0, r2 - bne _0804BE90 - b _0804C184 -_0804BE90: - ldr r0, =gSpecialStatuses - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 2 - adds r0, 0xC - adds r1, r0 - ldr r0, [r1] - cmp r0, 0 - bne _0804BEA4 - b _0804C184 -_0804BEA4: - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - beq _0804BEB2 - b _0804C184 -_0804BEB2: - ldr r0, [sp, 0x4] - cmp r0, 0xA - beq _0804BEBA - b _0804C184 -_0804BEBA: - movs r0, 0x21 - negs r0, r0 - ands r3, r0 - str r3, [r5] - ldr r4, =gActiveBank - ldrb r0, [r6] - strb r0, [r4] - ldrb r0, [r6] - mov r1, r12 - muls r1, r0 - adds r0, r1, 0 - adds r0, r7 - str r0, [sp] - movs r0, 0 - movs r1, 0x28 - movs r2, 0 - movs r3, 0x4 - bl EmitSetAttributes - ldrb r0, [r4] - bl MarkBufferBankForExecution - bl b_movescr_stack_push_cursor - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB282 - str r0, [r1] - movs r2, 0x1 - mov r10, r2 - b _0804C184 - .pool -_0804BF18: - ldr r0, =gBankTarget - ldrb r1, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x7 - movs r2, 0 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - bne _0804BF32 - b _0804C184 -_0804BF32: - movs r3, 0x1 - mov r10, r3 - b _0804C184 - .pool -_0804BF3C: - ldr r0, =gBankTarget - ldrb r1, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x4 - movs r2, 0 - movs r3, 0 - bl AbilityBattleEffects - b _0804C0B2 - .pool -_0804BF54: - movs r0, 0 - str r0, [sp] - movs r0, 0x5 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - bne _0804BF6C - b _0804C184 -_0804BF6C: - movs r5, 0x1 - mov r10, r5 - ldr r0, =gBattleScripting - mov r12, r0 - b _0804C570 - .pool -_0804BF7C: - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x8 - movs r2, 0 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - bne _0804BF96 - b _0804C184 -_0804BF96: - movs r1, 0x1 - mov r10, r1 - b _0804C184 - .pool -_0804BFA0: - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 18 - ands r0, r1 - cmp r0, 0 - beq _0804BFE4 - ldr r2, [sp, 0x8] - cmp r2, 0x1D - bne _0804BFE4 - ldr r0, =gUnknown_020241EC - ldrh r2, [r0] - adds r3, r0, 0 - cmp r2, 0xA5 - beq _0804BFE4 - ldr r4, [sp, 0xC] - ldrh r1, [r4] - cmp r1, 0 - beq _0804BFCC - ldr r0, =0x0000ffff - cmp r1, r0 - bne _0804BFE4 -_0804BFCC: - cmp r2, 0xE2 - bne _0804BFDE - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _0804BFDE - b _0804C4B6 -_0804BFDE: - ldrh r0, [r3] - ldr r1, [sp, 0xC] - strh r0, [r1] -_0804BFE4: - movs r4, 0 - ldr r2, =gBattleMons - ldr r3, =gBankAttacker - ldrb r1, [r3] - movs r0, 0x58 - muls r0, r1 - adds r2, 0xC - adds r0, r2 - ldrh r0, [r0] - ldr r5, [sp, 0xC] - ldrh r1, [r5] - mov r9, r3 - cmp r0, r1 - beq _0804C01C - mov r6, r9 - movs r3, 0x58 - adds r5, r1, 0 -_0804C006: - adds r4, 0x1 - cmp r4, 0x3 - bgt _0804C01C - lsls r0, r4, 1 - ldrb r1, [r6] - muls r1, r3 - adds r0, r1 - adds r0, r2 - ldrh r0, [r0] - cmp r0, r5 - bne _0804C006 -_0804C01C: - cmp r4, 0x4 - bne _0804C026 - movs r0, 0 - ldr r1, [sp, 0xC] - strh r0, [r1] -_0804C026: - mov r2, r12 - ldrb r0, [r2, 0x14] - adds r0, 0x1 - strb r0, [r2, 0x14] - b _0804C570 - .pool -_0804C048: - movs r4, 0 - ldr r0, =gNoOfAllBanks - ldrb r3, [r0] - cmp r4, r3 - blt _0804C054 - b _0804C202 -_0804C054: - ldr r7, =gBattleStruct - movs r6, 0 - movs r3, 0xD0 - adds r5, r0, 0 - ldr r2, =gBattleMons -_0804C05E: - ldr r0, [r7] - adds r0, r3 - ldrh r1, [r0] - cmp r1, 0 - beq _0804C06C - strh r1, [r2, 0x2E] - strh r6, [r0] -_0804C06C: - adds r3, 0x2 - adds r2, 0x58 - adds r4, 0x1 - ldrb r0, [r5] - cmp r4, r0 - blt _0804C05E - b _0804C202 - .pool -_0804C088: - movs r0, 0x3 - movs r1, 0 - movs r2, 0 - bl ItemBattleEffects - lsls r0, 24 - cmp r0, 0 - beq _0804C184 - movs r2, 0x1 - mov r10, r2 - ldr r3, =gBattleScripting - mov r12, r3 - b _0804C570 - .pool -_0804C0A8: - movs r0, 0x4 - movs r1, 0 - movs r2, 0 - bl ItemBattleEffects -_0804C0B2: - lsls r0, 24 - cmp r0, 0 - beq _0804C184 -_0804C0B8: - movs r4, 0x1 - mov r10, r4 - b _0804C184 -_0804C0BE: - ldr r1, =gStatuses3 - ldr r0, =gBankAttacker - ldrb r2, [r0] - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x000400c0 - ands r0, r1 - cmp r0, 0 - bne _0804C0D4 - b _0804C4B6 -_0804C0D4: - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804C0E2 - b _0804BC68 -_0804C0E2: - b _0804C4B6 - .pool -_0804C0F4: - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - bne _0804C120 - ldr r1, =gStatuses3 - ldr r0, =gBankAttacker - ldrb r2, [r0] - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x000400c0 - ands r0, r1 - cmp r0, 0 - beq _0804C120 - adds r0, r2, 0 - bl sub_803F90C - lsls r0, 24 - cmp r0, 0 - beq _0804C184 -_0804C120: - ldr r4, =gActiveBank - ldr r5, =gBankAttacker - ldrb r0, [r5] - strb r0, [r4] - movs r0, 0 - movs r1, 0 - bl dp01_build_cmdbuf_x33_a_33_33 - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r0, =gStatuses3 - ldrb r2, [r5] - lsls r2, 2 - adds r2, r0 - ldr r0, [r2] - ldr r1, =0xfffbff3f - ands r0, r1 - str r0, [r2] - ldr r2, =gSpecialStatuses - ldrb r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] -_0804C15A: - ldr r1, =gBattleScripting - ldrb r0, [r1, 0x14] - adds r0, 0x1 - strb r0, [r1, 0x14] - b _0804C5BA - .pool -_0804C184: - ldr r1, =gBattleScripting - ldrb r0, [r1, 0x14] - adds r0, 0x1 - strb r0, [r1, 0x14] - mov r12, r1 - b _0804C570 - .pool -_0804C194: - ldr r0, =gSpecialStatuses - ldr r6, =gBankTarget - ldrb r2, [r6] - lsls r3, r2, 2 - adds r1, r3, r2 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 29 - cmp r0, 0 - blt _0804C202 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r2, r0 - bcs _0804C202 - ldr r5, =gStatuses3 - adds r0, r3, r5 - ldr r0, [r0] - ldr r1, =0x000400c0 - ands r0, r1 - cmp r0, 0 - bne _0804C1C2 - b _0804BC80 -_0804C1C2: - b _0804C202 - .pool -_0804C1D8: - movs r4, 0 - ldr r0, =gNoOfAllBanks - ldrb r2, [r0] - cmp r4, r2 - bge _0804C202 - ldr r2, =gDisableStructs - ldr r5, =0xfeffffff - adds r3, r0, 0 - ldr r1, =gBattleMons + 0x50 -_0804C1EA: - ldrb r0, [r2, 0xA] - cmp r0, 0 - bne _0804C1F6 - ldr r0, [r1] - ands r0, r5 - str r0, [r1] -_0804C1F6: - adds r2, 0x1C - adds r1, 0x58 - adds r4, 0x1 - ldrb r0, [r3] - cmp r4, r0 - blt _0804C1EA -_0804C202: - mov r1, r12 - ldrb r0, [r1, 0x14] - adds r0, 0x1 - strb r0, [r1, 0x14] - b _0804C570 - .pool -_0804C21C: - ldr r1, =gHitMarker - ldr r3, [r1] - movs r0, 0x80 - lsls r0, 5 - ands r0, r3 - ldr r2, =gBankAttacker - mov r9, r2 - adds r5, r1, 0 - cmp r0, 0 - beq _0804C246 - ldr r0, =gActiveBank - ldrb r2, [r2] - strb r2, [r0] - ldr r1, =gBankTarget - ldrb r0, [r1] - mov r4, r9 - strb r0, [r4] - strb r2, [r1] - ldr r0, =0xffffefff - ands r3, r0 - str r3, [r5] -_0804C246: - ldr r0, [r5] - movs r1, 0x80 - lsls r1, 3 - ands r0, r1 - cmp r0, 0 - beq _0804C262 - ldr r0, =gUnknown_02024240 - mov r2, r9 - ldrb r1, [r2] - lsls r1, 1 - adds r1, r0 - ldr r0, =gUnknown_020241EC - ldrh r0, [r0] - strh r0, [r1] -_0804C262: - ldr r0, =gAbsentBankFlags - ldrb r1, [r0] - ldr r2, =gBitTable - mov r3, r9 - ldrb r4, [r3] - lsls r0, r4, 2 - adds r0, r2 - ldr r3, [r0] - ands r1, r3 - adds r6, r2, 0 - cmp r1, 0 - beq _0804C27C - b _0804C3E8 -_0804C27C: - ldr r0, =gBattleStruct - ldr r1, [r0] - adds r1, 0x91 - ldrb r1, [r1] - ands r1, r3 - adds r7, r0, 0 - cmp r1, 0 - beq _0804C28E - b _0804C3E8 -_0804C28E: - ldr r0, =gBattleMoves - ldr r2, [sp, 0x18] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 2 - adds r1, r0 - ldrb r1, [r1] - mov r8, r0 - cmp r1, 0x7F - bne _0804C2A4 - b _0804C3E8 -_0804C2A4: - ldr r0, [r5] - movs r1, 0x80 - lsls r1, 18 - ands r0, r1 - cmp r0, 0 - beq _0804C308 - ldr r0, =gLastUsedMovesByBanks - lsls r1, r4, 1 - adds r1, r0 - ldr r0, =gUnknown_020241EC - ldrh r0, [r0] - strh r0, [r1] - ldr r0, =gUnknown_02024260 - mov r3, r9 - ldrb r1, [r3] - lsls r1, 1 - adds r1, r0 - ldr r0, =gCurrentMove - ldrh r0, [r0] - strh r0, [r1] - b _0804C322 - .pool -_0804C308: - ldr r1, =gLastUsedMovesByBanks - lsls r0, r4, 1 - adds r0, r1 - ldr r1, =0x0000ffff - strh r1, [r0] - ldr r1, =gUnknown_02024260 - mov r4, r9 - ldrb r0, [r4] - lsls r0, 1 - adds r0, r1 - movs r1, 0x1 - negs r1, r1 - strh r1, [r0] -_0804C322: - ldr r2, =gBankTarget - ldrb r3, [r2] - lsls r0, r3, 2 - adds r0, r6 - ldr r0, [r0] - lsls r0, 28 - ldr r1, [r5] - ands r1, r0 - cmp r1, 0 - bne _0804C340 - ldr r0, =gUnknown_02024270 - adds r0, r3, r0 - mov r3, r9 - ldrb r1, [r3] - strb r1, [r0] -_0804C340: - ldr r0, [r5] - movs r1, 0x80 - lsls r1, 18 - ands r0, r1 - cmp r0, 0 - beq _0804C3DC - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - bne _0804C3DC - ldr r0, =gUnknown_020241EC - ldrh r3, [r0] - ldr r0, =0x0000ffff - cmp r3, r0 - bne _0804C390 - ldr r1, =gUnknown_02024250 - ldrb r0, [r2] - lsls r0, 1 - adds r0, r1 - strh r3, [r0] - b _0804C3E8 - .pool -_0804C390: - ldr r0, =gUnknown_02024250 - ldrb r1, [r2] - lsls r1, 1 - adds r1, r0 - ldr r4, =gCurrentMove - ldrh r0, [r4] - strh r0, [r1] - ldr r0, [r7] - ldrb r3, [r0, 0x13] - cmp r3, 0 - beq _0804C3C0 - ldr r0, =gUnknown_02024258 - ldrb r1, [r2] - lsls r1, 1 - adds r1, r0 - movs r0, 0x3F - ands r0, r3 - b _0804C3E6 - .pool -_0804C3C0: - ldr r0, =gUnknown_02024258 - ldrb r2, [r2] - lsls r2, 1 - adds r2, r0 - ldrh r1, [r4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - add r0, r8 - ldrb r0, [r0, 0x2] - strh r0, [r2] - b _0804C3E8 - .pool -_0804C3DC: - ldr r0, =gUnknown_02024250 - ldrb r1, [r2] - lsls r1, 1 - adds r1, r0 - ldr r0, =0x0000ffff -_0804C3E6: - strh r0, [r1] -_0804C3E8: - mov r4, r12 - ldrb r0, [r4, 0x14] - adds r0, 0x1 - strb r0, [r4, 0x14] - b _0804C570 - .pool -_0804C3FC: - ldr r0, =gAbsentBankFlags - ldrb r1, [r0] - ldr r7, =gBitTable - ldr r2, =gBankAttacker - ldrb r3, [r2] - lsls r0, r3, 2 - adds r0, r7 - ldr r4, [r0] - ands r1, r4 - mov r9, r2 - cmp r1, 0 - bne _0804C4B6 - ldr r6, =gBattleStruct - ldr r5, [r6] - adds r0, r5, 0 - adds r0, 0x91 - ldrb r0, [r0] - ands r0, r4 - cmp r0, 0 - bne _0804C4B6 - ldr r1, =gBattleMoves - ldr r2, [sp, 0x18] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0, 0x8] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0804C4B6 - ldr r0, =gHitMarker - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 18 - ands r0, r1 - cmp r0, 0 - beq _0804C4B6 - ldr r4, =gBankTarget - ldrb r0, [r4] - cmp r3, r0 - beq _0804C4B6 - ldrb r2, [r4] - lsls r0, r2, 2 - adds r0, r7 - ldr r0, [r0] - lsls r0, 28 - ands r1, r0 - cmp r1, 0 - bne _0804C4B6 - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - bne _0804C4B6 - lsls r1, r2, 1 - adds r1, r5 - adds r1, 0x98 - ldr r3, =gUnknown_020241EC - ldrh r0, [r3] - strb r0, [r1] - ldrb r1, [r4] - ldr r0, [r6] - lsls r1, 1 - adds r1, r0 - adds r1, 0x99 - ldrh r0, [r3] - lsrs r0, 8 - strb r0, [r1] - ldrb r0, [r4] - mov r2, r9 - ldrb r1, [r2] - ldr r2, [r6] - lsls r0, 3 - lsls r1, 1 - adds r0, r1 - adds r0, r2 - adds r0, 0xE0 - ldrh r1, [r3] - strb r1, [r0] - ldrb r1, [r4] - mov r4, r9 - ldrb r0, [r4] - ldr r2, [r6] - lsls r1, 3 - lsls r0, 1 - adds r1, r0 - adds r1, r2 - adds r1, 0xE1 - ldrh r0, [r3] - lsrs r0, 8 - strb r0, [r1] -_0804C4B6: - mov r5, r12 - ldrb r0, [r5, 0x14] - adds r0, 0x1 - strb r0, [r5, 0x14] - b _0804C570 - .pool -_0804C4E4: - ldr r5, =gHitMarker - ldr r2, [r5] - movs r0, 0x80 - lsls r0, 12 - ands r0, r2 - cmp r0, 0 - bne _0804C568 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0804C568 - ldr r1, =gProtectStructs - ldr r0, =gBankAttacker - ldrb r0, [r0] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0, 0x1] - lsls r0, 29 - cmp r0, 0 - blt _0804C568 - ldr r0, =gBattleMoves - mov r9, r0 - ldr r1, =gCurrentMove - mov r8, r1 - ldrh r0, [r1] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - add r1, r9 - ldrb r0, [r1, 0x6] - cmp r0, 0x8 - bne _0804C568 - movs r6, 0x80 - lsls r6, 2 - adds r4, r6, 0 - ands r4, r2 - cmp r4, 0 - bne _0804C568 - ldr r7, =gBankTarget - ldrb r0, [r7] - bl GetBankIdentity - movs r1, 0x2 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r2, r0, 24 - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r2 - adds r0, r1 - ldrh r0, [r0, 0x28] - cmp r0, 0 - beq _0804C55E - bl _0804BCAC -_0804C55E: - ldr r0, [r5] - orrs r0, r6 - str r0, [r5] - ldr r2, =gBattleScripting - mov r12, r2 -_0804C568: - mov r3, r12 - ldrb r0, [r3, 0x14] - adds r0, 0x1 - strb r0, [r3, 0x14] -_0804C570: - ldr r4, [sp, 0x10] - cmp r4, 0x1 - bne _0804C582 - mov r5, r10 - cmp r5, 0 - bne _0804C582 - movs r0, 0x11 - mov r1, r12 - strb r0, [r1, 0x14] -_0804C582: - ldr r2, [sp, 0x10] - cmp r2, 0x2 - bne _0804C598 - ldr r4, [sp, 0x14] - mov r3, r12 - ldrb r3, [r3, 0x14] - cmp r4, r3 - bne _0804C598 - movs r0, 0x11 - mov r4, r12 - strb r0, [r4, 0x14] -_0804C598: - mov r5, r12 - ldrb r0, [r5, 0x14] - cmp r0, 0x11 - beq _0804C5A4 - bl _0804BD14 -_0804C5A4: - mov r1, r12 - ldrb r0, [r1, 0x14] - cmp r0, 0x11 - bne _0804C5BA - mov r2, r10 - cmp r2, 0 - bne _0804C5BA - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x3 -_0804C5B8: - str r0, [r1] -_0804C5BA: - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk49_moveendturn - - thumb_func_start atk4A_typecalc2 -atk4A_typecalc2: @ 804C5F4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r4, 0 - movs r5, 0 - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x2] - mov r8, r0 - ldr r2, =gBattleMons - ldr r3, =gBankTarget - ldrb r1, [r3] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - adds r0, 0x20 - ldrb r0, [r0] - mov r12, r2 - adds r7, r3, 0 - cmp r0, 0x1A - bne _0804C688 - mov r1, r8 - cmp r1, 0x4 - bne _0804C688 - ldr r3, =gLastUsedAbility - strb r0, [r3] - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x9 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gUnknown_02024250 - ldrb r0, [r7] - lsls r0, 1 - adds r0, r1 - strh r4, [r0] - ldr r0, =gBattleCommunication - mov r2, r8 - strb r2, [r0, 0x6] - ldrb r0, [r7] - ldrb r1, [r3] - bl RecordAbilityBattle - b _0804C76A - .pool -_0804C678: - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r2, 0x8 - orrs r1, r2 - strb r1, [r0] - b _0804C76A - .pool -_0804C688: - ldr r1, =gUnknown_0831ACE8 - adds r0, r5, r1 - ldrb r0, [r0] - adds r6, r1, 0 - b _0804C74A - .pool -_0804C698: - adds r0, r5, r6 - ldrb r0, [r0] - cmp r0, r8 - bne _0804C744 - adds r2, r5, 0x1 - adds r3, r2, r6 - ldrb r1, [r7] - movs r0, 0x58 - muls r0, r1 - add r0, r12 - adds r0, 0x21 - ldrb r1, [r3] - adds r3, r2, 0 - ldrb r0, [r0] - cmp r1, r0 - bne _0804C6D6 - adds r0, r5, 0x2 - adds r0, r6 - ldrb r1, [r0] - cmp r1, 0 - beq _0804C678 - cmp r1, 0x5 - bne _0804C6CA - movs r0, 0x4 - orrs r4, r0 -_0804C6CA: - cmp r1, 0x14 - bne _0804C6D6 - movs r0, 0x2 - orrs r4, r0 - lsls r0, r4, 24 - lsrs r4, r0, 24 -_0804C6D6: - adds r2, r3, r6 - ldrb r1, [r7] - movs r0, 0x58 - muls r0, r1 - add r0, r12 - adds r1, r0, 0 - adds r1, 0x22 - ldrb r2, [r2] - ldrb r1, [r1] - cmp r2, r1 - bne _0804C744 - adds r0, 0x21 - ldrb r1, [r0] - cmp r1, r2 - beq _0804C6FE - adds r0, r5, 0x2 - adds r0, r6 - ldrb r0, [r0] - cmp r0, 0 - beq _0804C678 -_0804C6FE: - cmp r1, r2 - beq _0804C714 - adds r0, r5, 0x2 - adds r0, r6 - ldrb r0, [r0] - cmp r0, 0x5 - bne _0804C714 - movs r0, 0x4 - orrs r4, r0 - lsls r0, r4, 24 - lsrs r4, r0, 24 -_0804C714: - adds r2, r3, r6 - ldrb r1, [r7] - movs r0, 0x58 - muls r0, r1 - add r0, r12 - adds r1, r0, 0 - adds r1, 0x22 - ldrb r2, [r2] - ldrb r1, [r1] - cmp r2, r1 - bne _0804C744 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, r2 - beq _0804C744 - adds r0, r5, 0x2 - adds r0, r6 - ldrb r0, [r0] - cmp r0, 0x14 - bne _0804C744 - movs r0, 0x2 - orrs r4, r0 - lsls r0, r4, 24 - lsrs r4, r0, 24 -_0804C744: - adds r5, 0x3 - adds r0, r5, r6 - ldrb r0, [r0] -_0804C74A: - cmp r0, 0xFF - beq _0804C76A - cmp r0, 0xFE - bne _0804C698 - ldrb r1, [r7] - movs r0, 0x58 - muls r0, r1 - mov r1, r12 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 22 - ands r0, r1 - cmp r0, 0 - beq _0804C744 -_0804C76A: - ldr r2, =gBattleMons - ldr r0, =gBankTarget - mov r8, r0 - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - adds r0, 0x20 - ldrb r6, [r0] - cmp r6, 0x19 - bne _0804C7E6 - movs r5, 0x29 - ands r5, r4 - cmp r5, 0 - bne _0804C7E6 - ldr r0, =gBankAttacker - ldrb r0, [r0] - ldr r7, =gCurrentMove - ldrh r1, [r7] - bl move_weather_interaction - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x2 - bne _0804C7E6 - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _0804C7AC - movs r0, 0x6 - ands r4, r0 - cmp r4, 0x6 - bne _0804C7E6 -_0804C7AC: - ldr r2, =gBattleMoves - ldrh r1, [r7] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x1] - cmp r0, 0 - beq _0804C7E6 - ldr r3, =gLastUsedAbility - strb r6, [r3] - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gUnknown_02024250 - mov r2, r8 - ldrb r0, [r2] - lsls r0, 1 - adds r0, r1 - strh r5, [r0] - ldr r1, =gBattleCommunication - movs r0, 0x3 - strb r0, [r1, 0x6] - ldrb r0, [r2] - ldrb r1, [r3] - bl RecordAbilityBattle -_0804C7E6: - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0804C804 - ldr r2, =gProtectStructs - ldr r0, =gBankAttacker - ldrb r1, [r0] - lsls r1, 4 - adds r1, r2 - ldrb r0, [r1, 0x1] - movs r2, 0x2 - orrs r0, r2 - strb r0, [r1, 0x1] -_0804C804: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk4A_typecalc2 - - thumb_func_start atk4B_return_atk_to_ball -atk4B_return_atk_to_ball: @ 804C844 - push {r4,lr} - ldr r4, =gActiveBank - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r4] - ldr r2, =gHitMarker - ldr r1, =gBitTable - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - lsls r1, 28 - ldr r0, [r2] - ands r0, r1 - cmp r0, 0 - bne _0804C872 - movs r0, 0 - movs r1, 0 - bl dp01_build_cmdbuf_x06_a - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0804C872: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk4B_return_atk_to_ball - - thumb_func_start atk4C_copy_poke_data -atk4C_copy_poke_data: @ 804C894 - push {r4,r5,lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0804C8E4 - ldr r5, =gBattlescriptCurrInstr - ldr r0, [r5] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r4, =gActiveBank - strb r0, [r4] - ldr r3, =gBattlePartyID - ldrb r0, [r4] - lsls r2, r0, 1 - adds r2, r3 - ldr r1, =gBattleStruct - ldr r1, [r1] - adds r0, r1 - adds r0, 0x5C - ldrb r0, [r0] - strh r0, [r2] - ldr r1, =gBitTable - ldrb r0, [r4] - lsls r0, 1 - adds r0, r3 - ldrh r0, [r0] - lsls r0, 2 - adds r0, r1 - ldrb r2, [r0] - movs r0, 0 - movs r1, 0 - bl dp01_build_cmdbuf_x00_a_b_0 - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r0, [r5] - adds r0, 0x2 - str r0, [r5] -_0804C8E4: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk4C_copy_poke_data - - thumb_func_start atk4D_switch_data_update -atk4D_switch_data_update: @ 804C904 - push {r4-r7,lr} - sub sp, 0x58 - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - beq _0804C912 - b _0804CAA4 -_0804C912: - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r4, =gActiveBank - strb r0, [r4] - ldr r6, =gBattleMons - ldrb r0, [r4] - movs r5, 0x58 - adds r1, r0, 0 - muls r1, r5 - adds r1, r6 - mov r0, sp - movs r2, 0x58 - bl memcpy - ldrb r0, [r4] - muls r0, r5 - adds r3, r0, r6 - movs r2, 0 - ldr r5, =gBattleBufferB -_0804C93E: - adds r0, r3, r2 - ldrb r1, [r4] - lsls r1, 9 - adds r1, 0x4 - adds r1, r2, r1 - adds r1, r5 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x57 - bls _0804C93E - ldr r4, =gBattleMons - ldr r6, =gActiveBank - ldrb r0, [r6] - movs r7, 0x58 - adds r2, r0, 0 - muls r2, r7 - adds r2, r4 - ldr r3, =gBaseStats - ldrh r1, [r2] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r3 - ldrb r0, [r0, 0x6] - adds r2, 0x21 - strb r0, [r2] - ldrb r0, [r6] - adds r1, r0, 0 - muls r1, r7 - adds r1, r4 - ldrh r2, [r1] - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r3 - ldrb r0, [r0, 0x7] - adds r1, 0x22 - strb r0, [r1] - ldrb r0, [r6] - adds r1, r0, 0 - muls r1, r7 - adds r1, r4 - ldrh r0, [r1] - ldrb r1, [r1, 0x17] - lsrs r1, 7 - bl GetAbilityBySpecies - ldrb r1, [r6] - muls r1, r7 - adds r1, r4 - adds r1, 0x20 - strb r0, [r1] - ldrb r0, [r6] - bl GetBankSide - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, =gWishFutureKnock - adds r0, 0x29 - adds r0, r2, r0 - ldrb r1, [r0] - ldr r3, =gBitTable - ldr r2, =gBattlePartyID - ldrb r5, [r6] - lsls r0, r5, 1 - adds r0, r2 - ldrh r0, [r0] - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] - ands r1, r0 - mov r12, r4 - cmp r1, 0 - beq _0804C9DE - adds r0, r5, 0 - muls r0, r7 - add r0, r12 - movs r1, 0 - strh r1, [r0, 0x2E] -_0804C9DE: - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0x7F - bne _0804CA26 - movs r2, 0 - adds r4, r6, 0 - movs r6, 0x58 - mov r5, r12 - adds r5, 0x18 - add r3, sp, 0x18 -_0804C9FE: - ldrb r0, [r4] - adds r1, r0, 0 - muls r1, r6 - adds r1, r2, r1 - adds r1, r5 - adds r0, r3, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r2, 0x1 - cmp r2, 0x7 - ble _0804C9FE - ldr r0, =gActiveBank - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - mov r1, r12 - adds r1, 0x50 - adds r0, r1 - ldr r1, [sp, 0x50] - str r1, [r0] -_0804CA26: - bl sub_803A284 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 10 - ands r0, r1 - cmp r0, 0 - beq _0804CA78 - ldr r4, =gBattleMons - ldr r0, =gActiveBank - ldrb r3, [r0] - movs r0, 0x58 - adds r2, r3, 0 - muls r2, r0 - adds r1, r2, r4 - ldrh r0, [r1, 0x2C] - lsrs r0, 1 - ldrh r1, [r1, 0x28] - cmp r0, r1 - bcc _0804CA78 - cmp r1, 0 - beq _0804CA78 - adds r0, r4, 0 - adds r0, 0x4C - adds r0, r2, r0 - ldr r0, [r0] - movs r1, 0x7 - ands r0, r1 - cmp r0, 0 - bne _0804CA78 - ldr r0, =gBattleStruct - ldr r2, [r0] - adds r2, 0x92 - ldr r1, =gBitTable - lsls r0, r3, 2 - adds r0, r1 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] -_0804CA78: - ldr r0, =gBattleScripting - ldr r3, =gActiveBank - ldrb r2, [r3] - strb r2, [r0, 0x17] - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x7 - strb r0, [r1, 0x1] - strb r2, [r1, 0x2] - ldr r2, =gBattlePartyID - ldrb r0, [r3] - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x2 - str r0, [r1] -_0804CAA4: - add sp, 0x58 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk4D_switch_data_update - - thumb_func_start atk4E_switchin_anim -atk4E_switchin_anim: @ 804CAE8 - push {r4-r6,lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0804CB86 - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r6, =gActiveBank - strb r0, [r6] - ldrb r0, [r6] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0804CB3E - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x063f0902 - ands r0, r1 - cmp r0, 0 - bne _0804CB3E - ldr r4, =gBattleMons - ldrb r0, [r6] - movs r5, 0x58 - muls r0, r5 - adds r0, r4 - ldrh r0, [r0] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - ldrb r1, [r6] - muls r1, r5 - adds r4, 0x48 - adds r1, r4 - ldr r2, [r1] - movs r1, 0x2 - bl HandleSetPokedexFlag -_0804CB3E: - ldr r2, =gAbsentBankFlags - ldr r1, =gBitTable - ldr r5, =gActiveBank - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - ldrb r0, [r2] - bics r0, r1 - strb r0, [r2] - ldr r1, =gBattlePartyID - ldrb r0, [r5] - lsls r0, 1 - adds r0, r1 - ldrb r1, [r0] - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r2, [r0, 0x2] - movs r0, 0 - bl dp01_build_cmdbuf_x05_a_b_c - ldrb r0, [r5] - bl MarkBufferBankForExecution - ldr r0, [r4] - adds r0, 0x3 - str r0, [r4] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 11 - ands r0, r1 - cmp r0, 0 - beq _0804CB86 - bl sub_81A56B4 -_0804CB86: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atk4E_switchin_anim - - thumb_func_start atk4F_jump_if_cannot_switch -atk4F_jump_if_cannot_switch: @ 804CBB0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r1, [r0, 0x1] - movs r0, 0x7F - ands r0, r1 - bl get_battle_side_of_something - ldr r3, =gActiveBank - strb r0, [r3] - ldr r2, [r4] - ldrb r1, [r2, 0x1] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0804CC28 - ldr r1, =gBattleMons - ldrb r3, [r3] - movs r0, 0x58 - muls r0, r3 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x0400e000 - ands r0, r1 - cmp r0, 0 - bne _0804CBFC - ldr r1, =gStatuses3 - lsls r0, r3, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 3 - ands r0, r1 - cmp r0, 0 - beq _0804CC28 -_0804CBFC: - ldrb r1, [r2, 0x2] - ldrb r0, [r2, 0x3] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x5] - lsls r0, 24 - orrs r1, r0 - str r1, [r4] - b _0804CF00 - .pool -_0804CC28: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 15 - ands r0, r1 - cmp r0, 0 - beq _0804CCC0 - ldr r5, =gActiveBank - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gPlayerParty - mov r8, r1 - cmp r0, 0x1 - bne _0804CC4E - ldr r0, =gEnemyParty - mov r8, r0 -_0804CC4E: - movs r4, 0 - ldrb r1, [r5] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0804CC5C - movs r4, 0x3 -_0804CC5C: - adds r6, r4, 0x3 - cmp r4, r6 - bge _0804CCA4 - ldr r7, =gBattlePartyID -_0804CC64: - movs r0, 0x64 - muls r0, r4 - mov r1, r8 - adds r5, r1, r0 - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0804CC9E - adds r0, r5, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0804CC9E - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _0804CC9E - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 1 - adds r0, r7 - ldrh r0, [r0] - cmp r0, r4 - bne _0804CCA4 -_0804CC9E: - adds r4, 0x1 - cmp r4, r6 - blt _0804CC64 -_0804CCA4: - cmp r4, r6 - bne _0804CCAA - b _0804CED0 -_0804CCAA: - b _0804CEF8 - .pool -_0804CCC0: - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0804CD8C - movs r0, 0x80 - lsls r0, 16 - ands r1, r0 - cmp r1, 0 - beq _0804CD00 - ldr r5, =gActiveBank - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0804CCEC - ldr r0, =gPlayerParty - b _0804CD16 - .pool -_0804CCEC: - ldr r1, =gEnemyParty - mov r8, r1 - ldrb r0, [r5] - movs r4, 0x3 - cmp r0, 0x1 - bne _0804CD32 - movs r4, 0 - b _0804CD32 - .pool -_0804CD00: - ldr r5, =gActiveBank - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gPlayerParty - mov r8, r1 - cmp r0, 0x1 - bne _0804CD18 - ldr r0, =gEnemyParty -_0804CD16: - mov r8, r0 -_0804CD18: - movs r4, 0 - ldrb r0, [r5] - bl sub_806D864 - lsls r0, 24 - lsrs r0, 24 - bl sub_806D82C - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bne _0804CD32 - movs r4, 0x3 -_0804CD32: - adds r6, r4, 0x3 - cmp r4, r6 - bge _0804CCA4 - ldr r7, =gBattlePartyID -_0804CD3A: - movs r0, 0x64 - muls r0, r4 - mov r1, r8 - adds r5, r1, r0 - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0804CD74 - adds r0, r5, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0804CD74 - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _0804CD74 - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 1 - adds r0, r7 - ldrh r0, [r0] - cmp r0, r4 - bne _0804CCA4 -_0804CD74: - adds r4, 0x1 - cmp r4, r6 - blt _0804CD3A - b _0804CCA4 - .pool -_0804CD8C: - movs r0, 0x80 - lsls r0, 8 - ands r1, r0 - cmp r1, 0 - beq _0804CE10 - ldr r5, =gActiveBank - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0804CE10 - ldr r0, =gEnemyParty - mov r8, r0 - movs r4, 0 - ldrb r0, [r5] - cmp r0, 0x3 - bne _0804CDB4 - movs r4, 0x3 -_0804CDB4: - adds r6, r4, 0x3 - cmp r4, r6 - blt _0804CDBC - b _0804CCA4 -_0804CDBC: - ldr r7, =gBattlePartyID -_0804CDBE: - movs r0, 0x64 - muls r0, r4 - mov r1, r8 - adds r5, r1, r0 - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0804CDFA - adds r0, r5, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0804CDFA - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _0804CDFA - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 1 - adds r0, r7 - ldrh r0, [r0] - cmp r0, r4 - beq _0804CDFA - b _0804CCA4 -_0804CDFA: - adds r4, 0x1 - cmp r4, r6 - blt _0804CDBE - b _0804CCA4 - .pool -_0804CE10: - ldr r0, =gActiveBank - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x1 - bne _0804CE54 - movs r0, 0x1 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ands r0, r4 - cmp r0, 0 - beq _0804CE48 - movs r0, 0x3 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r6, r0, 24 - b _0804CE4A - .pool -_0804CE48: - adds r6, r7, 0 -_0804CE4A: - ldr r0, =gEnemyParty - mov r8, r0 - b _0804CE82 - .pool -_0804CE54: - movs r0, 0 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0804CE7C - movs r0, 0x2 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r6, r0, 24 - b _0804CE7E - .pool -_0804CE7C: - adds r6, r7, 0 -_0804CE7E: - ldr r1, =gPlayerParty - mov r8, r1 -_0804CE82: - movs r4, 0 -_0804CE84: - movs r0, 0x64 - muls r0, r4 - mov r1, r8 - adds r5, r1, r0 - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _0804CEC6 - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0804CEC6 - adds r0, r5, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0804CEC6 - ldr r1, =gBattlePartyID - lsls r0, r7, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r4, r0 - beq _0804CEC6 - lsls r0, r6, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r4, r0 - bne _0804CECC -_0804CEC6: - adds r4, 0x1 - cmp r4, 0x5 - ble _0804CE84 -_0804CECC: - cmp r4, 0x6 - bne _0804CEF8 -_0804CED0: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x2] - ldrb r0, [r2, 0x3] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x5] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _0804CF00 - .pool -_0804CEF8: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x6 - str r0, [r1] -_0804CF00: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk4F_jump_if_cannot_switch - - thumb_func_start sub_804CF10 -sub_804CF10: @ 804CF10 - push {r4,r5,lr} - sub sp, 0x4 - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - ldr r5, =gActiveBank - ldrb r0, [r5] - ldr r4, =gBattleStruct - ldr r1, [r4] - adds r1, r0, r1 - adds r1, 0x58 - ldr r3, =gBattlePartyID - lsls r0, 1 - adds r0, r3 - ldrh r0, [r0] - strb r0, [r1] - ldrb r0, [r5] - ldr r1, [r4] - adds r0, r1 - adds r0, 0x5C - movs r1, 0x6 - strb r1, [r0] - ldr r1, [r4] - adds r1, 0x93 - ldr r3, =gBitTable - ldrb r0, [r5] - lsls r0, 2 - adds r0, r3 - ldr r3, [r0] - ldrb r0, [r1] - bics r0, r3 - strb r0, [r1] - ldrb r0, [r5] - lsls r1, r0, 1 - adds r1, r0 - adds r1, 0x60 - ldr r0, [r4] - adds r0, r1 - str r0, [sp] - movs r0, 0 - movs r1, 0x1 - movs r3, 0 - bl dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f - ldrb r0, [r5] - bl MarkBufferBankForExecution - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_804CF10 - - thumb_func_start atk50_openpartyscreen -atk50_openpartyscreen: @ 804CF88 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - movs r7, 0 - movs r0, 0 - mov r9, r0 - ldr r6, =gBattlescriptCurrInstr - ldr r2, [r6] - ldrb r1, [r2, 0x2] - ldrb r0, [r2, 0x3] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x5] - lsls r0, 24 - orrs r1, r0 - mov r8, r1 - ldrb r1, [r2, 0x1] - adds r0, r1, 0 - mov r12, r6 - cmp r0, 0x5 - beq _0804CFBE - b _0804D464 -_0804CFBE: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x41 - ands r1, r0 - cmp r1, 0x1 - beq _0804D0B0 - ldr r1, =gActiveBank - strb r7, [r1] - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r7, r0 - bcc _0804CFD8 - b _0804D450 -_0804CFD8: - ldr r7, =gHitMarker - ldr r6, =gBitTable - adds r4, r1, 0 - ldr r2, =gAbsentBankFlags - mov r8, r2 -_0804CFE2: - ldrb r2, [r4] - lsls r0, r2, 2 - adds r0, r6 - ldr r1, [r0] - lsls r1, 28 - ldr r0, [r7] - ands r0, r1 - cmp r0, 0 - beq _0804D088 - adds r0, r2, 0 - movs r1, 0x6 - movs r2, 0x6 - bl sub_80423F4 - lsls r0, 24 - cmp r0, 0 - beq _0804D054 - ldrb r0, [r4] - lsls r0, 2 - adds r0, r6 - ldr r0, [r0] - mov r2, r8 - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - ldrb r0, [r4] - lsls r0, 2 - adds r0, r6 - ldr r1, [r0] - lsls r1, 28 - ldr r0, [r7] - bics r0, r1 - str r0, [r7] - movs r0, 0 - movs r1, 0x2 - movs r2, 0 - bl sub_8034464 - ldrb r0, [r4] - bl MarkBufferBankForExecution - b _0804D098 - .pool -_0804D054: - ldr r5, =gSpecialStatuses - ldrb r0, [r4] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - ldrb r0, [r1] - lsls r0, 25 - cmp r0, 0 - blt _0804D098 - movs r0, 0x6 - bl sub_804CF10 - ldrb r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] - b _0804D098 - .pool -_0804D088: - movs r0, 0 - movs r1, 0x2 - movs r2, 0 - bl sub_8034464 - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0804D098: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _0804CFE2 - b _0804D450 - .pool -_0804D0B0: - ands r0, r1 - cmp r0, 0 - bne _0804D0B8 - b _0804D450 -_0804D0B8: - ldr r0, =gHitMarker - mov r8, r0 - ldr r0, [r0] - lsrs r5, r0, 28 - ldr r6, =gBitTable - ldr r0, [r6] - ands r0, r5 - cmp r0, 0 - beq _0804D170 - ldr r4, =gActiveBank - strb r7, [r4] - movs r0, 0 - movs r1, 0x6 - movs r2, 0x6 - bl sub_80423F4 - lsls r0, 24 - cmp r0, 0 - beq _0804D120 - ldr r2, =gAbsentBankFlags - ldrb r0, [r4] - lsls r0, 2 - adds r0, r6 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - ldrb r0, [r4] - lsls r0, 2 - adds r0, r6 - ldr r1, [r0] - lsls r1, 28 - mov r2, r8 - ldr r0, [r2] - bics r0, r1 - str r0, [r2] - movs r0, 0 - bl dp01_build_cmdbuf_x2A_2A_2A_2A - ldrb r0, [r4] - bl MarkBufferBankForExecution - b _0804D170 - .pool -_0804D120: - ldr r6, =gSpecialStatuses - ldrb r0, [r4] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - ldrb r0, [r1] - lsls r0, 25 - cmp r0, 0 - blt _0804D15C - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x5E - ldrb r0, [r0] - bl sub_804CF10 - ldrb r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] - b _0804D170 - .pool -_0804D15C: - movs r0, 0 - movs r1, 0x2 - movs r2, 0 - bl sub_8034464 - ldrb r0, [r4] - bl MarkBufferBankForExecution - movs r0, 0x1 - mov r9, r0 -_0804D170: - ldr r6, =gBitTable - ldr r0, [r6, 0x8] - ands r0, r5 - cmp r0, 0 - beq _0804D22E - ldr r0, [r6] - ands r0, r5 - cmp r0, 0 - bne _0804D22E - ldr r4, =gActiveBank - movs r0, 0x2 - strb r0, [r4] - movs r0, 0x2 - movs r1, 0x6 - movs r2, 0x6 - bl sub_80423F4 - lsls r0, 24 - cmp r0, 0 - beq _0804D1D8 - ldr r2, =gAbsentBankFlags - ldrb r0, [r4] - lsls r0, 2 - adds r0, r6 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - ldr r2, =gHitMarker - ldrb r0, [r4] - lsls r0, 2 - adds r0, r6 - ldr r1, [r0] - lsls r1, 28 - ldr r0, [r2] - bics r0, r1 - str r0, [r2] - movs r0, 0 - bl dp01_build_cmdbuf_x2A_2A_2A_2A - ldrb r0, [r4] - bl MarkBufferBankForExecution - b _0804D22E - .pool -_0804D1D8: - ldr r6, =gSpecialStatuses - ldrb r0, [r4] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - ldrb r0, [r1] - lsls r0, 25 - cmp r0, 0 - blt _0804D214 - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x5C - ldrb r0, [r0] - bl sub_804CF10 - ldrb r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] - b _0804D22E - .pool -_0804D214: - movs r0, 0x1 - mov r1, r9 - ands r0, r1 - cmp r0, 0 - bne _0804D22E - movs r0, 0 - movs r1, 0x2 - movs r2, 0 - bl sub_8034464 - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0804D22E: - ldr r6, =gBitTable - ldr r0, [r6, 0x4] - ands r0, r5 - cmp r0, 0 - beq _0804D2E4 - ldr r4, =gActiveBank - movs r0, 0x1 - strb r0, [r4] - movs r0, 0x1 - movs r1, 0x6 - movs r2, 0x6 - bl sub_80423F4 - lsls r0, 24 - cmp r0, 0 - beq _0804D290 - ldr r2, =gAbsentBankFlags - ldrb r0, [r4] - lsls r0, 2 - adds r0, r6 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - ldr r2, =gHitMarker - ldrb r0, [r4] - lsls r0, 2 - adds r0, r6 - ldr r1, [r0] - lsls r1, 28 - ldr r0, [r2] - bics r0, r1 - str r0, [r2] - movs r0, 0 - bl dp01_build_cmdbuf_x2A_2A_2A_2A - ldrb r0, [r4] - bl MarkBufferBankForExecution - b _0804D2E4 - .pool -_0804D290: - ldr r6, =gSpecialStatuses - ldrb r0, [r4] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - ldrb r0, [r1] - lsls r0, 25 - cmp r0, 0 - blt _0804D2CC - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x5F - ldrb r0, [r0] - bl sub_804CF10 - ldrb r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] - b _0804D2E4 - .pool -_0804D2CC: - movs r0, 0 - movs r1, 0x2 - movs r2, 0 - bl sub_8034464 - ldrb r0, [r4] - bl MarkBufferBankForExecution - movs r0, 0x2 - mov r2, r9 - orrs r2, r0 - mov r9, r2 -_0804D2E4: - ldr r6, =gBitTable - ldr r0, [r6, 0xC] - ands r0, r5 - cmp r0, 0 - beq _0804D3A2 - ldr r0, [r6, 0x4] - ands r0, r5 - cmp r0, 0 - bne _0804D3A2 - ldr r4, =gActiveBank - movs r0, 0x3 - strb r0, [r4] - movs r0, 0x3 - movs r1, 0x6 - movs r2, 0x6 - bl sub_80423F4 - lsls r0, 24 - cmp r0, 0 - beq _0804D34C - ldr r2, =gAbsentBankFlags - ldrb r0, [r4] - lsls r0, 2 - adds r0, r6 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - ldr r2, =gHitMarker - ldrb r0, [r4] - lsls r0, 2 - adds r0, r6 - ldr r1, [r0] - lsls r1, 28 - ldr r0, [r2] - bics r0, r1 - str r0, [r2] - movs r0, 0 - bl dp01_build_cmdbuf_x2A_2A_2A_2A - ldrb r0, [r4] - bl MarkBufferBankForExecution - b _0804D3A2 - .pool -_0804D34C: - ldr r6, =gSpecialStatuses - ldrb r0, [r4] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - ldrb r0, [r1] - lsls r0, 25 - cmp r0, 0 - blt _0804D388 - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x5D - ldrb r0, [r0] - bl sub_804CF10 - ldrb r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] - b _0804D3A2 - .pool -_0804D388: - movs r0, 0x2 - mov r1, r9 - ands r1, r0 - cmp r1, 0 - bne _0804D3A2 - movs r0, 0 - movs r1, 0x2 - movs r2, 0 - bl sub_8034464 - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0804D3A2: - ldr r1, =gSpecialStatuses - ldrb r0, [r1] - lsls r0, 25 - cmp r0, 0 - blt _0804D3FA - adds r0, r1, 0 - adds r0, 0x28 - ldrb r0, [r0] - lsls r0, 25 - cmp r0, 0 - blt _0804D3FA - cmp r5, 0 - beq _0804D3FA - ldr r0, =gAbsentBankFlags - ldrb r1, [r0] - ldr r0, =gBitTable - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _0804D3E4 - ldr r1, =gActiveBank - movs r0, 0x2 - strb r0, [r1] - b _0804D3E8 - .pool -_0804D3E4: - ldr r0, =gActiveBank - strb r1, [r0] -_0804D3E8: - movs r0, 0 - movs r1, 0x2 - movs r2, 0 - bl sub_8034464 - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution -_0804D3FA: - ldr r1, =gSpecialStatuses - ldrb r0, [r1, 0x14] - lsls r0, 25 - cmp r0, 0 - blt _0804D450 - adds r0, r1, 0 - adds r0, 0x3C - ldrb r0, [r0] - lsls r0, 25 - cmp r0, 0 - blt _0804D450 - cmp r5, 0 - beq _0804D450 - ldr r0, =gAbsentBankFlags - ldrb r0, [r0] - ldr r1, =gBitTable - ldr r1, [r1, 0x4] - ands r0, r1 - cmp r0, 0 - beq _0804D438 - ldr r1, =gActiveBank - movs r0, 0x3 - b _0804D43C - .pool -_0804D438: - ldr r1, =gActiveBank - movs r0, 0x1 -_0804D43C: - strb r0, [r1] - movs r0, 0 - movs r1, 0x2 - movs r2, 0 - bl sub_8034464 - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution -_0804D450: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x6 - str r0, [r1] - b _0804D804 - .pool -_0804D464: - cmp r0, 0x6 - beq _0804D46A - b _0804D658 -_0804D46A: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0804D478 - b _0804D5F4 -_0804D478: - movs r0, 0x1 - ands r1, r0 - cmp r1, 0 - bne _0804D482 - b _0804D5F4 -_0804D482: - ldr r7, =gHitMarker - ldr r0, [r7] - lsrs r5, r0, 28 - ldr r4, =gBitTable - ldr r0, [r4, 0x8] - ands r0, r5 - cmp r0, 0 - beq _0804D52A - ldr r0, [r4] - ands r0, r5 - cmp r0, 0 - beq _0804D52A - ldr r6, =gActiveBank - movs r0, 0x2 - strb r0, [r6] - ldr r0, =gBattleBufferB - ldrb r1, [r0, 0x1] - movs r0, 0x2 - movs r2, 0x6 - bl sub_80423F4 - lsls r0, 24 - cmp r0, 0 - beq _0804D4F8 - ldr r2, =gAbsentBankFlags - ldrb r0, [r6] - lsls r0, 2 - adds r0, r4 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - ldrb r0, [r6] - lsls r0, 2 - adds r0, r4 - ldr r1, [r0] - lsls r1, 28 - ldr r0, [r7] - bics r0, r1 - str r0, [r7] - movs r0, 0 - bl dp01_build_cmdbuf_x2A_2A_2A_2A - ldrb r0, [r6] - bl MarkBufferBankForExecution - b _0804D52A - .pool -_0804D4F8: - ldr r4, =gSpecialStatuses - ldrb r0, [r6] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldrb r0, [r1] - lsls r0, 25 - cmp r0, 0 - blt _0804D52A - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x5C - ldrb r0, [r0] - bl sub_804CF10 - ldrb r1, [r6] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] -_0804D52A: - ldr r4, =gBitTable - ldr r0, [r4, 0xC] - ands r0, r5 - cmp r0, 0 - beq _0804D5DA - ldr r0, [r4, 0x4] - ands r5, r0 - cmp r5, 0 - beq _0804D5DA - ldr r5, =gActiveBank - movs r0, 0x3 - strb r0, [r5] - ldr r0, =gBattleBufferB - ldr r2, =0x00000201 - adds r0, r2 - ldrb r1, [r0] - movs r0, 0x3 - movs r2, 0x6 - bl sub_80423F4 - lsls r0, 24 - cmp r0, 0 - beq _0804D5A8 - ldr r2, =gAbsentBankFlags - ldrb r0, [r5] - lsls r0, 2 - adds r0, r4 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - ldr r2, =gHitMarker - ldrb r0, [r5] - lsls r0, 2 - adds r0, r4 - ldr r1, [r0] - lsls r1, 28 - ldr r0, [r2] - bics r0, r1 - str r0, [r2] - movs r0, 0 - bl dp01_build_cmdbuf_x2A_2A_2A_2A - ldrb r0, [r5] - bl MarkBufferBankForExecution - b _0804D5DA - .pool -_0804D5A8: - ldr r4, =gSpecialStatuses - ldrb r0, [r5] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldrb r0, [r1] - lsls r0, 25 - cmp r0, 0 - blt _0804D5DA - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x5D - ldrb r0, [r0] - bl sub_804CF10 - ldrb r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] -_0804D5DA: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x6 - str r0, [r1] - mov r12, r1 - b _0804D5F8 - .pool -_0804D5F4: - adds r0, r2, 0x6 - str r0, [r6] -_0804D5F8: - ldr r0, =gHitMarker - ldr r0, [r0] - lsrs r5, r0, 28 - ldr r1, =gBank1 - movs r0, 0 - strb r0, [r1] - ldr r4, =gBitTable - ldr r2, [r4] - ands r2, r5 - ldr r6, =gNoOfAllBanks - cmp r2, 0 - bne _0804D634 - adds r7, r6, 0 - ldrb r0, [r6] - cmp r2, r0 - bcs _0804D634 - adds r3, r1, 0 -_0804D61A: - ldrb r0, [r3] - adds r0, 0x1 - strb r0, [r3] - ldrb r2, [r3] - lsls r0, r2, 2 - adds r0, r4 - ldr r0, [r0] - ands r0, r5 - cmp r0, 0 - bne _0804D634 - ldrb r0, [r7] - cmp r2, r0 - bcc _0804D61A -_0804D634: - ldrb r0, [r1] - ldrb r6, [r6] - cmp r0, r6 - beq _0804D63E - b _0804D804 -_0804D63E: - mov r1, r8 - mov r2, r12 - str r1, [r2] - b _0804D804 - .pool -_0804D658: - movs r0, 0x80 - ands r0, r1 - movs r5, 0x1 - cmp r0, 0 - beq _0804D664 - movs r5, 0 -_0804D664: - movs r0, 0x7F - ands r0, r1 - bl get_battle_side_of_something - lsls r0, 24 - lsrs r7, r0, 24 - ldr r1, =gSpecialStatuses - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 25 - cmp r0, 0 - bge _0804D690 - ldr r0, [r6] - adds r0, 0x6 - str r0, [r6] - b _0804D804 - .pool -_0804D690: - adds r0, r7, 0 - movs r1, 0x6 - movs r2, 0x6 - bl sub_80423F4 - lsls r0, 24 - cmp r0, 0 - beq _0804D6E0 - ldr r2, =gActiveBank - strb r7, [r2] - ldr r3, =gAbsentBankFlags - ldr r4, =gBitTable - ldrb r0, [r2] - lsls r0, 2 - adds r0, r4 - ldr r0, [r0] - ldrb r1, [r3] - orrs r0, r1 - strb r0, [r3] - ldr r3, =gHitMarker - ldrb r0, [r2] - lsls r0, 2 - adds r0, r4 - ldr r1, [r0] - lsls r1, 28 - ldr r0, [r3] - bics r0, r1 - str r0, [r3] - mov r0, r8 - str r0, [r6] - b _0804D804 - .pool -_0804D6E0: - ldr r4, =gActiveBank - strb r7, [r4] - ldrb r0, [r4] - ldr r3, =gBattleStruct - ldr r1, [r3] - adds r1, r0, r1 - adds r1, 0x58 - ldr r2, =gBattlePartyID - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - strb r0, [r1] - ldrb r0, [r4] - ldr r1, [r3] - adds r0, r1 - adds r0, 0x5C - movs r1, 0x6 - strb r1, [r0] - ldr r1, [r3] - adds r1, 0x93 - ldr r2, =gBitTable - ldrb r0, [r4] - lsls r0, 2 - adds r0, r2 - ldr r2, [r0] - ldrb r0, [r1] - bics r0, r2 - strb r0, [r1] - ldrb r1, [r4] - movs r0, 0x2 - eors r0, r1 - ldr r3, [r3] - adds r0, r3 - adds r0, 0x5C - ldrb r2, [r0] - ldrb r1, [r4] - lsls r0, r1, 1 - adds r0, r1 - adds r0, 0x60 - adds r3, r0 - str r3, [sp] - movs r0, 0 - adds r1, r5, 0 - movs r3, 0 - bl dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r0, [r6] - adds r0, 0x6 - str r0, [r6] - ldrb r0, [r4] - bl GetBankIdentity - lsls r0, 24 - cmp r0, 0 - bne _0804D760 - ldr r1, =gBattleResults - ldrb r0, [r1, 0x2] - cmp r0, 0xFE - bhi _0804D760 - adds r0, 0x1 - strb r0, [r1, 0x2] -_0804D760: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0804D7C4 - ldr r1, =gActiveBank - movs r0, 0 - strb r0, [r1] - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r0, 0 - beq _0804D804 - adds r4, r1, 0 -_0804D77C: - ldrb r0, [r4] - cmp r0, r7 - beq _0804D792 - movs r0, 0 - movs r1, 0x2 - movs r2, 0 - bl sub_8034464 - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0804D792: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _0804D77C - b _0804D804 - .pool -_0804D7C4: - adds r0, r7, 0 - bl GetBankIdentity - movs r1, 0x1 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - ldr r4, =gActiveBank - strb r0, [r4] - ldr r0, =gAbsentBankFlags - ldrb r1, [r0] - ldr r2, =gBitTable - ldrb r3, [r4] - lsls r0, r3, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _0804D7F4 - movs r0, 0x2 - eors r3, r0 - strb r3, [r4] -_0804D7F4: - movs r0, 0 - movs r1, 0x2 - movs r2, 0 - bl sub_8034464 - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0804D804: - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk50_openpartyscreen - - thumb_func_start atk51_switch_handle_order -atk51_switch_handle_order: @ 804D820 - push {r4-r7,lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - beq _0804D82C - b _0804DA8A -_0804D82C: - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r5, =gActiveBank - strb r0, [r5] - ldr r0, [r4] - ldrb r0, [r0, 0x2] - cmp r0, 0x1 - beq _0804D8CC - cmp r0, 0x1 - bgt _0804D858 - cmp r0, 0 - beq _0804D862 - b _0804DA82 - .pool -_0804D858: - cmp r0, 0x2 - beq _0804D8E8 - cmp r0, 0x3 - beq _0804D922 - b _0804DA82 -_0804D862: - movs r6, 0 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r6, r0 - blt _0804D86E - b _0804DA82 -_0804D86E: - ldr r7, =gBattleBufferB -_0804D870: - ldrb r0, [r7] - cmp r0, 0x22 - bne _0804D8AA - ldr r5, =gBattleStruct - ldr r0, [r5] - adds r0, r6, r0 - adds r0, 0x5C - ldrb r1, [r7, 0x1] - strb r1, [r0] - ldr r0, [r5] - adds r0, 0x93 - ldrb r1, [r0] - ldr r2, =gBitTable - lsls r0, r6, 2 - adds r0, r2 - ldr r4, [r0] - ands r1, r4 - cmp r1, 0 - bne _0804D8AA - lsls r0, r6, 24 - lsrs r0, 24 - ldrb r1, [r7, 0x1] - bl sub_8184FBC - ldr r1, [r5] - adds r1, 0x93 - ldrb r0, [r1] - orrs r4, r0 - strb r4, [r1] -_0804D8AA: - movs r0, 0x80 - lsls r0, 2 - adds r7, r0 - adds r6, 0x1 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r6, r0 - blt _0804D870 - b _0804DA82 - .pool -_0804D8CC: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0804D8DA - b _0804DA82 -_0804D8DA: - ldrb r0, [r5] - bl sub_803BDA0 - b _0804DA82 - .pool -_0804D8E8: - ldr r4, =gBattleStruct - ldr r0, [r4] - adds r0, 0x93 - ldrb r1, [r0] - ldr r6, =gBitTable - ldrb r2, [r5] - lsls r0, r2, 2 - adds r0, r6 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _0804D922 - ldr r0, =gBattleBufferB - lsls r1, r2, 9 - adds r0, 0x1 - adds r1, r0 - ldrb r1, [r1] - adds r0, r2, 0 - bl sub_8184FBC - ldr r2, [r4] - adds r2, 0x93 - ldrb r0, [r5] - lsls r0, 2 - adds r0, r6 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] -_0804D922: - ldr r1, =gBattleCommunication - ldr r6, =gBattleBufferB - ldr r7, =gActiveBank - ldrb r0, [r7] - lsls r0, 9 - adds r2, r6, 0x1 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - ldrb r0, [r7] - ldr r1, =gBattleStruct - mov r12, r1 - ldr r1, [r1] - adds r1, r0, r1 - adds r1, 0x5C - lsls r0, 9 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x42 - ands r0, r1 - cmp r0, 0x42 - bne _0804DA14 - ldrb r0, [r7] - mov r3, r12 - ldr r2, [r3] - lsls r1, r0, 1 - adds r1, r0 - adds r1, r2 - adds r1, 0x60 - ldrb r2, [r1] - movs r0, 0xF - ands r0, r2 - strb r0, [r1] - ldrb r0, [r7] - ldr r2, [r3] - lsls r1, r0, 1 - adds r1, r0 - adds r1, r2 - adds r1, 0x60 - lsls r0, 9 - adds r5, r6, 0x2 - adds r0, r5 - ldrb r2, [r0] - movs r3, 0xF0 - adds r0, r3, 0 - ands r0, r2 - ldrb r2, [r1] - orrs r0, r2 - strb r0, [r1] - ldrb r1, [r7] - mov r0, r12 - ldr r2, [r0] - lsls r0, r1, 1 - adds r0, r1 - adds r0, r2 - adds r0, 0x61 - lsls r1, 9 - adds r6, 0x3 - adds r1, r6 - ldrb r1, [r1] - strb r1, [r0] - ldrb r0, [r7] - movs r4, 0x2 - eors r0, r4 - mov r1, r12 - ldr r2, [r1] - lsls r1, r0, 1 - adds r1, r0 - adds r1, r2 - adds r1, 0x60 - ldrb r2, [r1] - adds r0, r3, 0 - ands r0, r2 - strb r0, [r1] - ldrb r0, [r7] - eors r0, r4 - mov r1, r12 - ldr r2, [r1] - lsls r1, r0, 1 - adds r1, r0 - adds r1, r2 - adds r1, 0x60 - ldrb r0, [r7] - lsls r0, 9 - adds r0, r5 - ldrb r0, [r0] - ands r3, r0 - lsrs r3, 4 - ldrb r0, [r1] - orrs r3, r0 - strb r3, [r1] - ldrb r0, [r7] - eors r4, r0 - mov r2, r12 - ldr r0, [r2] - lsls r1, r4, 1 - adds r1, r4 - adds r1, r0 - adds r1, 0x62 - ldrb r0, [r7] - lsls r0, 9 - adds r0, r6 - ldrb r0, [r0] - strb r0, [r1] - b _0804DA36 - .pool -_0804DA14: - movs r0, 0x80 - lsls r0, 15 - ands r1, r0 - cmp r1, 0 - beq _0804DA30 - ldrb r0, [r7] - mov r3, r12 - ldr r1, [r3] - adds r1, r0, r1 - adds r1, 0x5C - ldrb r1, [r1] - bl sub_80571DC - b _0804DA36 -_0804DA30: - ldrb r0, [r7] - bl sub_803BDA0 -_0804DA36: - ldr r1, =gBattleTextBuff1 - movs r5, 0xFD - strb r5, [r1] - movs r0, 0x6 - strb r0, [r1, 0x1] - ldr r4, =gBattleMons - ldr r3, =gBankAttacker - ldrb r0, [r3] - movs r2, 0x58 - muls r0, r2 - adds r0, r4 - ldrh r0, [r0] - strb r0, [r1, 0x2] - ldrb r0, [r3] - muls r0, r2 - adds r0, r4 - ldrh r0, [r0] - lsrs r0, 8 - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldr r2, =gBattleTextBuff2 - strb r5, [r2] - movs r0, 0x7 - strb r0, [r2, 0x1] - ldr r3, =gActiveBank - ldrb r0, [r3] - strb r0, [r2, 0x2] - ldr r1, =gBattleBufferB - ldrb r0, [r3] - lsls r0, 9 - adds r1, 0x1 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2, 0x3] - movs r0, 0x1 - negs r0, r0 - strb r0, [r2, 0x4] -_0804DA82: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x3 - str r0, [r1] -_0804DA8A: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk51_switch_handle_order - - thumb_func_start atk52_switch_in_effects -atk52_switch_in_effects: @ 804DAAC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - ldr r0, =gBattlescriptCurrInstr - mov r9, r0 - ldr r0, [r0] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r4, =gActiveBank - strb r0, [r4] - ldrb r0, [r4] - bl sub_803FA70 - ldr r1, =gHitMarker - mov r8, r1 - ldr r1, =gBitTable - ldrb r0, [r4] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - lsls r1, 28 - mov r2, r8 - ldr r0, [r2] - bics r0, r1 - str r0, [r2] - ldr r2, =gSpecialStatuses - ldrb r0, [r4] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r2, [r1] - movs r0, 0x41 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - ldrb r0, [r4] - bl GetBankSide - ldr r5, =gSideAffecting - lsls r0, 24 - lsrs r0, 23 - adds r0, r5 - ldrh r1, [r0] - movs r7, 0x80 - lsls r7, 2 - mov r10, r7 - mov r0, r10 - ands r0, r1 - cmp r0, 0 - beq _0804DB1C - b _0804DC30 -_0804DB1C: - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - lsrs r0, 23 - adds r0, r5 - ldrh r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _0804DB34 - b _0804DC30 -_0804DB34: - ldr r7, =gBattleMons - ldrb r2, [r4] - movs r6, 0x58 - adds r0, r2, 0 - muls r0, r6 - adds r1, r0, r7 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0x2 - beq _0804DC30 - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0x2 - beq _0804DC30 - adds r0, r1, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x1A - beq _0804DC30 - adds r0, r2, 0 - bl GetBankSide - lsls r0, 24 - lsrs r0, 23 - adds r0, r5 - ldrh r2, [r0] - mov r1, r10 - orrs r1, r2 - strh r1, [r0] - ldrb r0, [r4] - adds r2, r0, 0 - muls r2, r6 - adds r0, r7, 0 - adds r0, 0x50 - adds r2, r0 - ldr r0, [r2] - ldr r1, =0xfdffffff - ands r0, r1 - str r0, [r2] - mov r1, r8 - ldr r0, [r1] - movs r2, 0x41 - negs r2, r2 - ands r0, r2 - str r0, [r1] - ldrb r0, [r4] - bl GetBankSide - ldr r2, =gSideTimers - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r0, [r1, 0xA] - movs r1, 0x5 - subs r1, r0 - lsls r1, 25 - lsrs r1, 24 - ldr r5, =gBattleMoveDamage - ldrb r0, [r4] - muls r0, r6 - adds r0, r7 - ldrh r0, [r0, 0x2C] - bl __divsi3 - str r0, [r5] - cmp r0, 0 - bne _0804DBC8 - movs r0, 0x1 - str r0, [r5] -_0804DBC8: - ldr r0, =gBattleScripting - ldrb r1, [r4] - strb r1, [r0, 0x17] - bl b_movescr_stack_push_cursor - mov r7, r9 - ldr r0, [r7] - ldrb r0, [r0, 0x1] - cmp r0, 0 - bne _0804DC14 - ldr r0, =gUnknown_082DAE90 - str r0, [r7] - b _0804DD8E - .pool -_0804DC14: - cmp r0, 0x1 - bne _0804DC24 - ldr r0, =gUnknown_082DAE59 - mov r1, r9 - str r0, [r1] - b _0804DD8E - .pool -_0804DC24: - ldr r0, =gUnknown_082DAEC7 - mov r2, r9 - str r0, [r2] - b _0804DD8E - .pool -_0804DC30: - ldr r2, =gBattleMons - ldr r1, =gActiveBank - ldrb r3, [r1] - movs r0, 0x58 - muls r0, r3 - adds r0, r2 - adds r0, 0x20 - ldrb r0, [r0] - adds r5, r1, 0 - ldr r4, =gDisableStructs - cmp r0, 0x36 - bne _0804DC5E - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - adds r2, r0, r4 - ldrb r1, [r2, 0x18] - lsls r0, r1, 30 - cmp r0, 0 - blt _0804DC5E - movs r0, 0x1 - orrs r0, r1 - strb r0, [r2, 0x18] -_0804DC5E: - ldrb r0, [r5] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r4 - ldrb r2, [r1, 0x18] - movs r0, 0x3 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x18] - ldrb r1, [r5] - movs r0, 0 - str r0, [sp] - movs r2, 0 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - beq _0804DC88 - b _0804DD8E -_0804DC88: - ldrb r1, [r5] - movs r0, 0 - movs r2, 0 - bl ItemBattleEffects - lsls r0, 24 - cmp r0, 0 - bne _0804DD8E - ldrb r0, [r5] - bl GetBankSide - ldr r1, =gSideAffecting - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r2, [r0] - ldr r1, =0x0000fdff - ands r1, r2 - strh r1, [r0] - movs r4, 0 - ldr r0, =gNoOfAllBanks - ldrb r7, [r0] - cmp r4, r7 - bge _0804DCD8 - ldr r6, =gTurnOrder - adds r1, r5, 0 - ldr r5, =gUnknown_0202407A - movs r3, 0xC - adds r2, r0, 0 -_0804DCC2: - adds r0, r4, r6 - ldrb r0, [r0] - ldrb r7, [r1] - cmp r0, r7 - bne _0804DCD0 - adds r0, r4, r5 - strb r3, [r0] -_0804DCD0: - adds r4, 0x1 - ldrb r0, [r2] - cmp r4, r0 - blt _0804DCC2 -_0804DCD8: - movs r4, 0 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r4, r0 - bge _0804DD0C - ldr r6, =gBattleStruct - ldr r5, =gBattleMons -_0804DCE6: - lsls r0, r4, 24 - lsrs r0, 24 - bl GetBankSide - lsls r0, 24 - lsrs r0, 23 - adds r0, 0xA8 - ldr r1, [r6] - adds r1, r0 - movs r0, 0x58 - muls r0, r4 - adds r0, r5 - ldrh r0, [r0, 0x28] - strh r0, [r1] - adds r4, 0x1 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r4, r0 - blt _0804DCE6 -_0804DD0C: - ldr r0, =gBattlescriptCurrInstr - ldr r1, [r0] - ldrb r1, [r1, 0x1] - adds r5, r0, 0 - cmp r1, 0x5 - bne _0804DD88 - ldr r0, =gHitMarker - ldr r0, [r0] - lsrs r4, r0, 28 - ldr r1, =gBank1 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r2, =gBitTable - b _0804DD6E - .pool -_0804DD60: - ldr r0, =gNoOfAllBanks - ldrb r3, [r1] - ldrb r0, [r0] - cmp r3, r0 - bcs _0804DD88 - adds r0, r3, 0x1 - strb r0, [r1] -_0804DD6E: - ldrb r0, [r1] - lsls r0, 2 - adds r0, r2 - ldr r3, [r0] - adds r0, r4, 0 - ands r0, r3 - cmp r0, 0 - beq _0804DD60 - ldr r0, =gAbsentBankFlags - ldrb r0, [r0] - ands r0, r3 - cmp r0, 0 - bne _0804DD60 -_0804DD88: - ldr r0, [r5] - adds r0, 0x2 - str r0, [r5] -_0804DD8E: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk52_switch_in_effects - - thumb_func_start atk53_trainer_slide -atk53_trainer_slide: @ 804DDA8 - push {r4,r5,lr} - ldr r5, =gBattlescriptCurrInstr - ldr r0, [r5] - ldrb r0, [r0, 0x1] - bl GetBankByPlayerAI - ldr r4, =gActiveBank - strb r0, [r4] - movs r0, 0 - bl dp01_build_cmdbuf_x08_8_8_8 - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r0, [r5] - adds r0, 0x2 - str r0, [r5] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk53_trainer_slide - - thumb_func_start atk54_effectiveness_sound -atk54_effectiveness_sound: @ 804DDD8 - push {r4,r5,lr} - ldr r5, =gActiveBank - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r5] - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r1, [r0, 0x1] - ldrb r0, [r0, 0x2] - lsls r0, 8 - orrs r1, r0 - movs r0, 0 - bl dp01_build_cmdbuf_x2B_aa_0 - ldrb r0, [r5] - bl MarkBufferBankForExecution - ldr r0, [r4] - adds r0, 0x3 - str r0, [r4] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk54_effectiveness_sound - - thumb_func_start atk55_play_sound -atk55_play_sound: @ 804DE14 - push {r4,r5,lr} - ldr r5, =gActiveBank - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r5] - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r1, [r0, 0x1] - ldrb r0, [r0, 0x2] - lsls r0, 8 - orrs r1, r0 - movs r0, 0 - movs r2, 0 - bl sub_8034300 - ldrb r0, [r5] - bl MarkBufferBankForExecution - ldr r0, [r4] - adds r0, 0x3 - str r0, [r4] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk55_play_sound - - thumb_func_start atk56_fainting_cry -atk56_fainting_cry: @ 804DE50 - push {r4,r5,lr} - ldr r5, =gBattlescriptCurrInstr - ldr r0, [r5] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r4, =gActiveBank - strb r0, [r4] - movs r0, 0 - bl dp01_build_cmdbuf_x2D_2D_2D_2D - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r0, [r5] - adds r0, 0x2 - str r0, [r5] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk56_fainting_cry - - thumb_func_start atk57 -atk57: @ 804DE80 - push {r4,lr} - movs r0, 0 - bl GetBankByPlayerAI - ldr r4, =gActiveBank - strb r0, [r4] - ldr r0, =gBattleOutcome - ldrb r1, [r0] - movs r0, 0 - bl dp01_build_cmdbuf_x37_a - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk57 - - thumb_func_start atk58_return_to_ball -atk58_return_to_ball: @ 804DEB8 - push {r4,r5,lr} - ldr r5, =gBattlescriptCurrInstr - ldr r0, [r5] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r4, =gActiveBank - strb r0, [r4] - movs r0, 0 - movs r1, 0x1 - bl dp01_build_cmdbuf_x06_a - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r0, [r5] - adds r0, 0x2 - str r0, [r5] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk58_return_to_ball - - thumb_func_start atk59_learnmove_inbattle -atk59_learnmove_inbattle: @ 804DEEC - push {r4-r7,lr} - ldr r0, =gBattlescriptCurrInstr - ldr r2, [r0] - ldrb r6, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r6, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r6, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r6, r0 - ldrb r4, [r2, 0x5] - ldrb r0, [r2, 0x6] - lsls r0, 8 - orrs r4, r0 - ldrb r0, [r2, 0x7] - lsls r0, 16 - orrs r4, r0 - ldrb r0, [r2, 0x8] - lsls r0, 24 - orrs r4, r0 - ldr r0, =gBattleStruct - ldr r0, [r0] - ldrb r1, [r0, 0x10] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - ldrb r1, [r2, 0x9] - bl MonTryLearningNewMove - lsls r0, 16 - lsrs r5, r0, 16 - ldr r0, =0x0000fffe - cmp r5, r0 - bne _0804DF56 - adds r7, r5, 0 -_0804DF3A: - ldr r0, =gBattleStruct - ldr r0, [r0] - ldrb r1, [r0, 0x10] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0 - bl MonTryLearningNewMove - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, r7 - beq _0804DF3A -_0804DF56: - cmp r5, 0 - bne _0804DF70 - ldr r0, =gBattlescriptCurrInstr - str r4, [r0] - b _0804E018 - .pool -_0804DF70: - ldr r0, =0x0000ffff - cmp r5, r0 - bne _0804DF88 - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0xA - str r0, [r1] - b _0804E018 - .pool -_0804DF88: - movs r0, 0 - bl GetBankByPlayerAI - ldr r1, =gActiveBank - strb r0, [r1] - ldr r2, =gBattlePartyID - ldrb r3, [r1] - lsls r0, r3, 1 - adds r0, r2 - ldr r1, =gBattleStruct - ldr r1, [r1] - ldrh r0, [r0] - ldrb r1, [r1, 0x10] - cmp r0, r1 - bne _0804DFC8 - ldr r4, =gBattleMons - movs r0, 0x58 - adds r2, r3, 0 - muls r2, r0 - adds r0, r4, 0 - adds r0, 0x50 - adds r0, r2, r0 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 14 - ands r0, r1 - cmp r0, 0 - bne _0804DFC8 - adds r0, r2, r4 - adds r1, r5, 0 - bl GiveMoveToBattleMon -_0804DFC8: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0804E014 - movs r0, 0x2 - bl GetBankByPlayerAI - ldr r1, =gActiveBank - strb r0, [r1] - ldr r2, =gBattlePartyID - ldrb r3, [r1] - lsls r0, r3, 1 - adds r0, r2 - ldr r1, =gBattleStruct - ldr r1, [r1] - ldrh r0, [r0] - ldrb r1, [r1, 0x10] - cmp r0, r1 - bne _0804E014 - ldr r4, =gBattleMons - movs r0, 0x58 - adds r2, r3, 0 - muls r2, r0 - adds r0, r4, 0 - adds r0, 0x50 - adds r0, r2, r0 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 14 - ands r0, r1 - cmp r0, 0 - bne _0804E014 - adds r0, r2, r4 - adds r1, r5, 0 - bl GiveMoveToBattleMon -_0804E014: - ldr r0, =gBattlescriptCurrInstr - str r6, [r0] -_0804E018: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk59_learnmove_inbattle - - thumb_func_start atk5A -atk5A: @ 804E038 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - ldr r0, =gActiveBank - movs r1, 0 - strb r1, [r0] - ldr r0, =gBattleScripting - ldrb r1, [r0, 0x1F] - adds r2, r0, 0 - cmp r1, 0x6 - bls _0804E052 - b _0804E3B8 -_0804E052: - lsls r0, r1, 2 - ldr r1, =_0804E068 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0804E068: - .4byte _0804E084 - .4byte _0804E0BC - .4byte _0804E162 - .4byte _0804E1B8 - .4byte _0804E1E4 - .4byte _0804E38C - .4byte _0804E3AC -_0804E084: - movs r4, 0 - str r4, [sp] - movs r0, 0x18 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl sub_8056A3C - ldr r0, =gText_BattleYesNoChoice - movs r1, 0xC - bl battle_show_message_maybe - ldr r1, =gBattleScripting - ldrb r0, [r1, 0x1F] - adds r0, 0x1 - strb r0, [r1, 0x1F] - ldr r0, =gBattleCommunication - strb r4, [r0, 0x1] - movs r0, 0 - bl sub_8056B74 - b _0804E3B8 - .pool -_0804E0BC: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0804E0E4 - ldr r4, =gBattleCommunication - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _0804E0E4 - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4, 0x1] - bl sub_8056BAC - movs r0, 0 - strb r0, [r4, 0x1] - bl sub_8056B74 -_0804E0E4: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804E10C - ldr r4, =gBattleCommunication - ldrb r0, [r4, 0x1] - cmp r0, 0 - bne _0804E10C - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4, 0x1] - bl sub_8056BAC - movs r0, 0x1 - strb r0, [r4, 0x1] - bl sub_8056B74 -_0804E10C: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r5, 0x1 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _0804E150 - movs r0, 0x5 - bl PlaySE - ldr r0, =gBattleCommunication - ldrb r4, [r0, 0x1] - cmp r4, 0 - bne _0804E20A - str r5, [sp] - movs r0, 0x18 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl sub_8056A3C - movs r0, 0x1 - negs r0, r0 - str r4, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - b _0804E192 - .pool -_0804E150: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0804E15A - b _0804E3B8 -_0804E15A: - movs r0, 0x5 - bl PlaySE - b _0804E20A -_0804E162: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804E170 - b _0804E3B8 -_0804E170: - bl FreeAllWindowBuffers - ldr r0, =gPlayerParty - ldr r1, =gBattleStruct - ldr r1, [r1] - ldrb r1, [r1, 0x10] - ldr r2, =gPlayerPartyCount - ldrb r2, [r2] - subs r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - ldr r3, =sub_80A92F8 - ldr r4, =gMoveToLearn - ldrh r4, [r4] - str r4, [sp] - bl sub_81BFA38 -_0804E192: - ldr r1, =gBattleScripting - ldrb r0, [r1, 0x1F] - adds r0, 0x1 - strb r0, [r1, 0x1F] - b _0804E3B8 - .pool -_0804E1B8: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804E1C6 - b _0804E3B8 -_0804E1C6: - ldr r0, =gMain - ldr r1, [r0, 0x4] - ldr r0, =sub_8038420 - cmp r1, r0 - beq _0804E1D2 - b _0804E3B8 -_0804E1D2: - ldrb r0, [r2, 0x1F] - adds r0, 0x1 - b _0804E3B6 - .pool -_0804E1E4: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804E1F2 - b _0804E3B8 -_0804E1F2: - ldr r0, =gMain - ldr r1, [r0, 0x4] - ldr r0, =sub_8038420 - cmp r1, r0 - beq _0804E1FE - b _0804E3B8 -_0804E1FE: - bl sub_81C1B94 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x4 - bne _0804E224 -_0804E20A: - ldr r1, =gBattleScripting - movs r0, 0x5 - strb r0, [r1, 0x1F] - b _0804E3B8 - .pool -_0804E224: - ldr r6, =gBattleStruct - ldr r0, [r6] - ldrb r0, [r0, 0x10] - movs r1, 0x64 - mov r8, r1 - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - ldr r7, =gPlayerParty - adds r0, r7 - adds r1, r5, 0 - adds r1, 0xD - bl GetMonData - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r4, 0 - bl IsHMMove2 - cmp r0, 0 - beq _0804E274 - ldr r0, =0x0000013f - ldr r1, =gActiveBank - ldrb r1, [r1] - bl b_std_message - ldr r1, =gBattleScripting - movs r0, 0x6 - strb r0, [r1, 0x1F] - b _0804E3B8 - .pool -_0804E274: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - ldr r1, =gBattleTextBuff2 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x2 - strb r0, [r1, 0x1] - strb r4, [r1, 0x2] - lsrs r0, r4, 8 - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldr r0, [r6] - ldrb r0, [r0, 0x10] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r7 - adds r1, r5, 0 - bl RemoveMonPPBonus - ldr r0, [r6] - ldrb r0, [r0, 0x10] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r7 - ldr r7, =gMoveToLearn - ldrh r1, [r7] - adds r2, r5, 0 - bl SetMonMoveSlot - ldr r0, =gBattlePartyID - ldr r1, [r6] - ldrh r0, [r0] - ldrb r1, [r1, 0x10] - cmp r0, r1 - bne _0804E30A - ldr r4, =gBattleMons - ldr r0, [r4, 0x50] - movs r1, 0x80 - lsls r1, 14 - ands r0, r1 - cmp r0, 0 - bne _0804E30A - ldr r0, =gDisableStructs - ldrb r1, [r0, 0x18] - lsrs r1, 4 - ldr r2, =gBitTable - lsls r0, r5, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _0804E30A - adds r0, r4, 0 - adds r1, r5, 0 - bl RemoveBattleMonPPBonus - ldrh r1, [r7] - adds r0, r4, 0 - adds r2, r5, 0 - bl SetBattleMonMoveSlot -_0804E30A: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0804E3B8 - ldr r2, =gBattlePartyID - ldr r0, =gBattleStruct - ldr r1, [r0] - ldrh r0, [r2, 0x4] - ldrb r1, [r1, 0x10] - cmp r0, r1 - bne _0804E3B8 - ldr r4, =gBattleMons - movs r1, 0x80 - lsls r1, 1 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 14 - ands r0, r1 - cmp r0, 0 - bne _0804E3B8 - ldr r0, =gDisableStructs - adds r0, 0x50 - ldrb r1, [r0] - lsrs r1, 4 - ldr r2, =gBitTable - lsls r0, r5, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _0804E3B8 - adds r4, 0xB0 - adds r0, r4, 0 - adds r1, r5, 0 - bl RemoveBattleMonPPBonus - ldr r0, =gMoveToLearn - ldrh r1, [r0] - adds r0, r4, 0 - adds r2, r5, 0 - bl SetBattleMonMoveSlot - b _0804E3B8 - .pool -_0804E38C: - movs r0, 0x1 - str r0, [sp] - movs r0, 0x18 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl sub_8056A3C - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _0804E3B8 - .pool -_0804E3AC: - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0804E3B8 - movs r0, 0x2 -_0804E3B6: - strb r0, [r2, 0x1F] -_0804E3B8: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk5A - - thumb_func_start atk5B_80256E0 -atk5B_80256E0: @ 804E3C8 - push {r4,r5,lr} - sub sp, 0x4 - ldr r5, =gBattleScripting - ldrb r4, [r5, 0x1F] - cmp r4, 0 - beq _0804E3E0 - cmp r4, 0x1 - beq _0804E410 - b _0804E4FA - .pool -_0804E3E0: - str r4, [sp] - movs r0, 0x18 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl sub_8056A3C - ldr r0, =gText_BattleYesNoChoice - movs r1, 0xC - bl battle_show_message_maybe - ldrb r0, [r5, 0x1F] - adds r0, 0x1 - strb r0, [r5, 0x1F] - ldr r0, =gBattleCommunication - strb r4, [r0, 0x1] - movs r0, 0 - bl sub_8056B74 - b _0804E4FA - .pool -_0804E410: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0804E438 - ldr r4, =gBattleCommunication - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _0804E438 - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4, 0x1] - bl sub_8056BAC - movs r0, 0 - strb r0, [r4, 0x1] - bl sub_8056B74 -_0804E438: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804E460 - ldr r4, =gBattleCommunication - ldrb r0, [r4, 0x1] - cmp r0, 0 - bne _0804E460 - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4, 0x1] - bl sub_8056BAC - movs r0, 0x1 - strb r0, [r4, 0x1] - bl sub_8056B74 -_0804E460: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r4, 0x1 - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _0804E4C4 - movs r0, 0x5 - bl PlaySE - ldr r0, =gBattleCommunication - ldrb r0, [r0, 0x1] - cmp r0, 0 - beq _0804E4A4 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _0804E4AC - .pool -_0804E4A4: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_0804E4AC: - movs r0, 0x1 - str r0, [sp] - movs r0, 0x18 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl sub_8056A3C - b _0804E4FA - .pool -_0804E4C4: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0804E4FA - movs r0, 0x5 - bl PlaySE - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - str r4, [sp] - movs r0, 0x18 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl sub_8056A3C -_0804E4FA: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk5B_80256E0 - - thumb_func_start atk5C_hitanimation -atk5C_hitanimation: @ 804E508 - push {r4,lr} - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r2, =gActiveBank - strb r0, [r2] - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - bne _0804E58C - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 1 - ands r0, r1 - cmp r0, 0 - beq _0804E55A - ldr r1, =gBattleMons - ldrb r2, [r2] - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 17 - ands r0, r1 - cmp r0, 0 - beq _0804E55A - ldr r0, =gDisableStructs - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0xA] - cmp r0, 0 - bne _0804E58C -_0804E55A: - movs r0, 0 - bl dp01_build_cmdbuf_x29_29_29_29 - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x2 - str r0, [r1] - b _0804E592 - .pool -_0804E58C: - ldr r0, [r4] - adds r0, 0x2 - str r0, [r4] -_0804E592: - pop {r4} - pop {r0} - bx r0 - thumb_func_end atk5C_hitanimation - - thumb_func_start sub_804E598 -sub_804E598: @ 804E598 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 16 - lsrs r6, r0, 16 - movs r7, 0 - movs r5, 0 - movs r0, 0x80 - lsls r0, 3 - cmp r6, r0 - bne _0804E5D8 - ldr r0, =gBattleResources - ldr r0, [r0] - ldr r0, [r0] - adds r0, 0x94 - ldrb r2, [r0] - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x4A - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - muls r0, r2 - b _0804E6CA - .pool -_0804E5D8: - ldr r0, =gTrainers - lsls r2, r6, 2 - adds r1, r2, r6 - lsls r1, 3 - adds r4, r1, r0 - ldrb r3, [r4] - mov r12, r0 - cmp r3, 0x1 - beq _0804E62E - cmp r3, 0x1 - bgt _0804E5F8 - cmp r3, 0 - beq _0804E602 - b _0804E644 - .pool -_0804E5F8: - cmp r3, 0x2 - beq _0804E618 - cmp r3, 0x3 - beq _0804E62E - b _0804E644 -_0804E602: - mov r0, r12 - adds r0, 0x24 - adds r0, r1, r0 - ldr r1, [r0] - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - lsls r0, 3 - adds r0, r1 - subs r0, 0x8 - b _0804E642 -_0804E618: - mov r0, r12 - adds r0, 0x24 - adds r0, r1, r0 - ldr r1, [r0] - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - lsls r0, 3 - adds r0, r1 - subs r0, 0x8 - b _0804E642 -_0804E62E: - mov r0, r12 - adds r0, 0x24 - adds r0, r1, r0 - ldr r1, [r0] - adds r0, r4, 0 - adds r0, 0x20 - ldrb r0, [r0] - lsls r0, 4 - adds r0, r1 - subs r0, 0x10 -_0804E642: - ldrb r5, [r0, 0x2] -_0804E644: - ldr r1, =gUnknown_0831AEB8 - lsls r0, r7, 2 - adds r4, r0, r1 - ldrb r3, [r4] - ldr r0, =gBattleStruct - mov r8, r0 - mov r9, r1 - ldr r1, =gBattleTypeFlags - mov r10, r1 - cmp r3, 0xFF - beq _0804E67A - adds r0, r2, r6 - lsls r0, 3 - add r0, r12 - ldrb r1, [r0, 0x1] - cmp r3, r1 - beq _0804E67A - adds r2, r0, 0 - adds r0, r4, 0 -_0804E66A: - adds r0, 0x4 - adds r7, 0x1 - ldrb r1, [r0] - cmp r1, 0xFF - beq _0804E67A - ldrb r3, [r2, 0x1] - cmp r1, r3 - bne _0804E66A -_0804E67A: - mov r0, r10 - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 8 - ands r0, r1 - cmp r0, 0 - bne _0804E6B4 - movs r0, 0x1 - ands r1, r0 - cmp r1, 0 - beq _0804E6B4 - mov r3, r8 - ldr r0, [r3] - adds r0, 0x4A - ldrb r0, [r0] - lsls r0, 2 - adds r1, r5, 0 - muls r1, r0 - lsls r0, r7, 2 - add r0, r9 - ldrb r0, [r0, 0x1] - lsls r0, 1 - b _0804E6C8 - .pool -_0804E6B4: - mov r1, r8 - ldr r0, [r1] - adds r0, 0x4A - ldrb r0, [r0] - lsls r0, 2 - adds r1, r5, 0 - muls r1, r0 - lsls r0, r7, 2 - add r0, r9 - ldrb r0, [r0, 0x1] -_0804E6C8: - muls r0, r1 -_0804E6CA: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_804E598 - - thumb_func_start atk5D_getmoneyreward -atk5D_getmoneyreward: @ 804E6D8 - push {r4,lr} - ldr r0, =gTrainerBattleOpponent_A - ldrh r0, [r0] - bl sub_804E598 - adds r4, r0, 0 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 8 - ands r0, r1 - cmp r0, 0 - beq _0804E6FC - ldr r0, =gTrainerBattleOpponent_B - ldrh r0, [r0] - bl sub_804E598 - adds r4, r0 -_0804E6FC: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - movs r1, 0x92 - lsls r1, 3 - adds r0, r1 - adds r1, r4, 0 - bl AddMoney - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x1 - strb r0, [r1, 0x1] - movs r0, 0x4 - strb r0, [r1, 0x2] - movs r0, 0x5 - strb r0, [r1, 0x3] - strb r4, [r1, 0x4] - movs r0, 0xFF - lsls r0, 8 - ands r0, r4 - lsrs r0, 8 - strb r0, [r1, 0x5] - movs r0, 0xFF - lsls r0, 16 - ands r0, r4 - lsrs r0, 16 - strb r0, [r1, 0x6] - lsrs r0, r4, 24 - strb r0, [r1, 0x7] - movs r0, 0xFF - strb r0, [r1, 0x8] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk5D_getmoneyreward - - thumb_func_start atk5E_8025A70 -atk5E_8025A70: @ 804E764 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r6, =gActiveBank - strb r0, [r6] - ldr r5, =gBattleCommunication - ldrb r0, [r5] - mov r8, r4 - cmp r0, 0 - beq _0804E794 - cmp r0, 0x1 - beq _0804E7AC - b _0804E800 - .pool -_0804E794: - movs r0, 0 - movs r1, 0 - movs r2, 0 - bl dp01_build_cmdbuf_x00_a_b_0 - ldrb r0, [r6] - bl MarkBufferBankForExecution - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] - b _0804E800 -_0804E7AC: - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0804E800 - ldrb r0, [r6] - lsls r0, 9 - ldr r1, =gBattleBufferB + 4 - adds r0, r1 - mov r12, r0 - movs r2, 0 - adds r4, r6, 0 - movs r5, 0x58 - ldr r6, =gBattleMons + 0x24 - adds r7, r6, 0 - subs r7, 0x18 - mov r3, r12 - adds r3, 0xC -_0804E7CE: - lsls r1, r2, 1 - ldrb r0, [r4] - muls r0, r5 - adds r1, r0 - adds r1, r7 - ldrh r0, [r3] - strh r0, [r1] - ldrb r0, [r4] - adds r1, r0, 0 - muls r1, r5 - adds r1, r2, r1 - adds r1, r6 - mov r0, r12 - adds r0, 0x24 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r3, 0x2 - adds r2, 0x1 - cmp r2, 0x3 - ble _0804E7CE - mov r1, r8 - ldr r0, [r1] - adds r0, 0x2 - str r0, [r1] -_0804E800: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk5E_8025A70 - - thumb_func_start atk5F_8025B24 -atk5F_8025B24: @ 804E818 - push {lr} - ldr r0, =gActiveBank - ldr r2, =gBankAttacker - ldrb r3, [r2] - strb r3, [r0] - ldr r1, =gBankTarget - ldrb r0, [r1] - strb r0, [r2] - strb r3, [r1] - ldr r2, =gHitMarker - ldr r1, [r2] - movs r3, 0x80 - lsls r3, 5 - adds r0, r1, 0 - ands r0, r3 - cmp r0, 0 - beq _0804E854 - ldr r0, =0xffffefff - ands r1, r0 - b _0804E856 - .pool -_0804E854: - orrs r1, r3 -_0804E856: - str r1, [r2] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atk5F_8025B24 - - thumb_func_start atk60_increment_gamestat -atk60_increment_gamestat: @ 804E868 - push {lr} - ldr r0, =gBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0804E882 - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - bl IncrementGameStat -_0804E882: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x2 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atk60_increment_gamestat - - thumb_func_start atk61_8025BA4 -atk61_8025BA4: @ 804E898 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x30 - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0804E94C - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r1, =gActiveBank - strb r0, [r1] - ldrb r0, [r1] - bl GetBankSide - lsls r0, 24 - ldr r1, =gEnemyParty - mov r8, r1 - cmp r0, 0 - bne _0804E8CA - ldr r0, =gPlayerParty - mov r8, r0 -_0804E8CA: - movs r7, 0 - add r6, sp, 0x4 - mov r5, sp -_0804E8D0: - movs r0, 0x64 - muls r0, r7 - mov r1, r8 - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - cmp r0, 0 - beq _0804E8F4 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - bne _0804E914 -_0804E8F4: - ldr r0, =0x0000ffff - strh r0, [r5] - movs r0, 0 - b _0804E926 - .pool -_0804E914: - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - strh r0, [r5] - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData -_0804E926: - str r0, [r6] - adds r6, 0x8 - adds r5, 0x8 - adds r7, 0x1 - cmp r7, 0x5 - ble _0804E8D0 - movs r0, 0 - mov r1, sp - movs r2, 0x1 - bl dp01_build_cmdbuf_x30_TODO - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x2 - str r0, [r1] -_0804E94C: - add sp, 0x30 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk61_8025BA4 - - thumb_func_start atk62_08025C6C -atk62_08025C6C: @ 804E960 - push {r4,r5,lr} - ldr r5, =gBattlescriptCurrInstr - ldr r0, [r5] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r4, =gActiveBank - strb r0, [r4] - movs r0, 0 - bl dp01_build_cmdbuf_x31_31_31_31 - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r0, [r5] - adds r0, 0x2 - str r0, [r5] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk62_08025C6C - - thumb_func_start atk63_jumptorandomattack -atk63_jumptorandomattack: @ 804E990 - push {r4,lr} - ldr r0, =gBattlescriptCurrInstr - ldr r1, [r0] - ldrb r1, [r1, 0x1] - adds r4, r0, 0 - cmp r1, 0 - beq _0804E9B4 - ldr r0, =gCurrentMove - ldr r1, =gRandomMove - ldrh r1, [r1] - strh r1, [r0] - b _0804E9C2 - .pool -_0804E9B4: - ldr r2, =gUnknown_020241EC - ldr r1, =gCurrentMove - ldr r0, =gRandomMove - ldrh r0, [r0] - strh r0, [r1] - strh r0, [r2] - adds r0, r1, 0 -_0804E9C2: - ldr r3, =gUnknown_082D86A8 - ldr r2, =gBattleMoves - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk63_jumptorandomattack - - thumb_func_start atk64_statusanimation -atk64_statusanimation: @ 804E9F4 - push {r4,lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0804EA5C - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r4, =gActiveBank - strb r0, [r4] - ldr r1, =gStatuses3 - ldrb r2, [r4] - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x000400c0 - ands r0, r1 - cmp r0, 0 - bne _0804EA54 - ldr r0, =gDisableStructs - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0xA] - cmp r0, 0 - bne _0804EA54 - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0804EA54 - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r2 - adds r1, 0x4C - adds r0, r1 - ldr r2, [r0] - movs r0, 0 - movs r1, 0 - bl dp01_build_cmdbuf_x1B_aaaa_b - ldrb r0, [r4] - bl MarkBufferBankForExecution -_0804EA54: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x2 - str r0, [r1] -_0804EA5C: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk64_statusanimation - - thumb_func_start atk65_status2animation -atk65_status2animation: @ 804EA84 - push {r4,r5,lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0804EB04 - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r5, =gActiveBank - strb r0, [r5] - ldr r1, [r4] - ldrb r3, [r1, 0x2] - ldrb r0, [r1, 0x3] - lsls r0, 8 - orrs r3, r0 - ldrb r0, [r1, 0x4] - lsls r0, 16 - orrs r3, r0 - ldrb r0, [r1, 0x5] - lsls r0, 24 - orrs r3, r0 - ldr r1, =gStatuses3 - ldrb r2, [r5] - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x000400c0 - ands r0, r1 - cmp r0, 0 - bne _0804EAFC - ldr r0, =gDisableStructs - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0xA] - cmp r0, 0 - bne _0804EAFC - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0804EAFC - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r2, [r0] - ands r2, r3 - movs r0, 0 - movs r1, 0x1 - bl dp01_build_cmdbuf_x1B_aaaa_b - ldrb r0, [r5] - bl MarkBufferBankForExecution -_0804EAFC: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x6 - str r0, [r1] -_0804EB04: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk65_status2animation - - thumb_func_start atk66_chosenstatusanimation -atk66_chosenstatusanimation: @ 804EB2C - push {r4,r5,lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _0804EB9E - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r5, =gActiveBank - strb r0, [r5] - ldr r4, [r4] - ldrb r2, [r4, 0x3] - ldrb r0, [r4, 0x4] - lsls r0, 8 - orrs r2, r0 - ldrb r0, [r4, 0x5] - lsls r0, 16 - orrs r2, r0 - ldrb r0, [r4, 0x6] - lsls r0, 24 - orrs r2, r0 - ldr r1, =gStatuses3 - ldrb r3, [r5] - lsls r0, r3, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x000400c0 - ands r0, r1 - cmp r0, 0 - bne _0804EB96 - ldr r0, =gDisableStructs - lsls r1, r3, 3 - subs r1, r3 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0xA] - cmp r0, 0 - bne _0804EB96 - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0804EB96 - ldrb r1, [r4, 0x2] - movs r0, 0 - bl dp01_build_cmdbuf_x1B_aaaa_b - ldrb r0, [r5] - bl MarkBufferBankForExecution -_0804EB96: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x7 - str r0, [r1] -_0804EB9E: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk66_chosenstatusanimation - - thumb_func_start atk67_8025ECC -atk67_8025ECC: @ 804EBC0 - push {r4,r5,lr} - sub sp, 0x4 - ldr r5, =gBattleCommunication - ldrb r4, [r5] - cmp r4, 0 - beq _0804EBD8 - cmp r4, 0x1 - beq _0804EC04 - b _0804EC96 - .pool -_0804EBD8: - str r4, [sp] - movs r0, 0x18 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl sub_8056A3C - ldr r0, =gText_BattleYesNoChoice - movs r1, 0xC - bl battle_show_message_maybe - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] - strb r4, [r5, 0x1] - movs r0, 0 - bl sub_8056B74 - b _0804EC96 - .pool -_0804EC04: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0804EC2A - ldrb r0, [r5, 0x1] - cmp r0, 0 - beq _0804EC2A - movs r0, 0x5 - bl PlaySE - ldrb r0, [r5, 0x1] - bl sub_8056BAC - movs r0, 0 - strb r0, [r5, 0x1] - bl sub_8056B74 -_0804EC2A: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0804EC52 - ldr r4, =gBattleCommunication - ldrb r0, [r4, 0x1] - cmp r0, 0 - bne _0804EC52 - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4, 0x1] - bl sub_8056BAC - movs r0, 0x1 - strb r0, [r4, 0x1] - bl sub_8056B74 -_0804EC52: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0804EC70 - ldr r0, =gBattleCommunication - movs r4, 0x1 - strb r4, [r0, 0x1] - b _0804EC7A - .pool -_0804EC70: - movs r4, 0x1 - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _0804EC96 -_0804EC7A: - movs r0, 0x5 - bl PlaySE - str r4, [sp] - movs r0, 0x18 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl sub_8056A3C - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_0804EC96: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk67_8025ECC - - thumb_func_start atk68_80246A0 -atk68_80246A0: @ 804ECA4 - push {r4,r5,lr} - movs r1, 0 - ldr r2, =gNoOfAllBanks - ldr r5, =gBattlescriptCurrInstr - ldrb r0, [r2] - cmp r1, r0 - bge _0804ECC2 - ldr r4, =gUnknown_0202407A - movs r3, 0xC -_0804ECB6: - adds r0, r1, r4 - strb r3, [r0] - adds r1, 0x1 - ldrb r0, [r2] - cmp r1, r0 - blt _0804ECB6 -_0804ECC2: - ldr r0, [r5] - adds r0, 0x1 - str r0, [r5] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk68_80246A0 - - thumb_func_start atk69_dmg_adjustment2 -atk69_dmg_adjustment2: @ 804ECDC - push {r4-r7,lr} - ldr r7, =gBattleMons - ldr r6, =gBankTarget - ldrb r2, [r6] - movs r5, 0x58 - adds r0, r2, 0 - muls r0, r5 - adds r1, r0, r7 - ldrh r0, [r1, 0x2E] - cmp r0, 0xAF - bne _0804ED10 - ldr r1, =gEnigmaBerries - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r4, [r0, 0x7] - ldrb r6, [r0, 0x1A] - b _0804ED2A - .pool -_0804ED10: - ldrh r0, [r1, 0x2E] - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r4, r0, 24 - ldrb r0, [r6] - muls r0, r5 - adds r0, r7 - ldrh r0, [r0, 0x2E] - bl ItemId_GetHoldEffectParam - lsls r0, 24 - lsrs r6, r0, 24 -_0804ED2A: - ldr r1, =gStringBank - ldr r5, =gBankTarget - ldrb r0, [r5] - strb r0, [r1] - cmp r4, 0x27 - bne _0804ED68 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x64 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - cmp r0, r6 - bcs _0804ED68 - ldrb r0, [r5] - movs r1, 0x27 - bl RecordItemEffectBattle - ldr r2, =gSpecialStatuses - ldrb r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r2, 0x80 - orrs r1, r2 - strb r1, [r0] -_0804ED68: - ldr r2, =gBattleMons - ldr r3, =gBankTarget - ldrb r4, [r3] - movs r0, 0x58 - muls r0, r4 - adds r1, r2, 0 - adds r1, 0x50 - adds r0, r1 - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 17 - ands r1, r0 - adds r5, r2, 0 - cmp r1, 0 - bne _0804EE38 - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0x65 - beq _0804EDBA - ldr r0, =gProtectStructs - lsls r1, r4, 4 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 30 - cmp r0, 0 - blt _0804EDBA - ldr r0, =gSpecialStatuses - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1] - lsrs r0, 7 - cmp r0, 0 - beq _0804EE38 -_0804EDBA: - ldrb r0, [r3] - movs r4, 0x58 - muls r0, r4 - adds r0, r5 - ldrh r1, [r0, 0x28] - ldr r2, =gBattleMoveDamage - ldr r0, [r2] - cmp r1, r0 - bgt _0804EE38 - subs r0, r1, 0x1 - str r0, [r2] - ldr r1, =gProtectStructs - ldrb r3, [r3] - lsls r0, r3, 4 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 30 - cmp r0, 0 - bge _0804EE10 - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] - b _0804EE38 - .pool -_0804EE10: - ldr r0, =gSpecialStatuses - lsls r1, r3, 2 - adds r1, r3 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1] - lsrs r0, 7 - cmp r0, 0 - beq _0804EE38 - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gLastUsedItem - adds r0, r3, 0 - muls r0, r4 - adds r0, r5 - ldrh r0, [r0, 0x2E] - strh r0, [r1] -_0804EE38: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk69_dmg_adjustment2 - - thumb_func_start atk6A_removeitem -atk6A_removeitem: @ 804EE58 - push {r4-r6,lr} - sub sp, 0x4 - ldr r6, =gBattlescriptCurrInstr - ldr r0, [r6] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r5, =gActiveBank - strb r0, [r5] - ldr r1, =gBattleStruct - ldrb r4, [r5] - lsls r0, r4, 1 - adds r0, 0xB8 - ldr r1, [r1] - adds r1, r0 - ldr r2, =gBattleMons - movs r3, 0x58 - adds r0, r4, 0 - muls r0, r3 - adds r0, r2 - ldrh r0, [r0, 0x2E] - strh r0, [r1] - ldrb r0, [r5] - muls r0, r3 - adds r0, r2 - movs r1, 0 - strh r1, [r0, 0x2E] - ldrb r0, [r5] - muls r0, r3 - adds r2, 0x2E - adds r0, r2 - str r0, [sp] - movs r0, 0 - movs r1, 0x2 - movs r2, 0 - movs r3, 0x2 - bl EmitSetAttributes - ldrb r0, [r5] - bl MarkBufferBankForExecution - ldr r0, [r6] - adds r0, 0x2 - str r0, [r6] - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atk6A_removeitem - - thumb_func_start atk6B_atknameinbuff1 -atk6B_atknameinbuff1: @ 804EEC8 - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x7 - strb r0, [r1, 0x1] - ldr r2, =gBankAttacker - ldrb r0, [r2] - strb r0, [r1, 0x2] - ldr r3, =gBattlePartyID - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r0, [r0] - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - bx lr - .pool - thumb_func_end atk6B_atknameinbuff1 - - thumb_func_start atk6C_lvlbox_display -atk6C_lvlbox_display: @ 804EF04 - push {r4,lr} - sub sp, 0x4 - ldr r0, =gBattleScripting - ldrb r1, [r0, 0x1E] - adds r4, r0, 0 - cmp r1, 0 - bne _0804EF28 - bl sub_804F498 - cmp r0, 0 - beq _0804EF24 - movs r0, 0x3 - b _0804EF26 - .pool -_0804EF24: - movs r0, 0x1 -_0804EF26: - strb r0, [r4, 0x1E] -_0804EF28: - ldrb r0, [r4, 0x1E] - subs r0, 0x1 - cmp r0, 0x9 - bls _0804EF32 - b _0804F0F2 -_0804EF32: - lsls r0, 2 - ldr r1, =_0804EF40 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0804EF40: - .4byte _0804EF68 - .4byte _0804EF94 - .4byte _0804EFAC - .4byte _0804F000 - .4byte _0804F014 - .4byte _0804F02C - .4byte _0804F014 - .4byte _0804F04C - .4byte _0804F07C - .4byte _0804F0C0 -_0804EF68: - ldr r1, =gUnknown_02022E1E - movs r0, 0x60 - strh r0, [r1] - movs r0, 0x2 - movs r1, 0x7 - movs r2, 0 - bl SetBgAttribute - movs r0, 0x2 - bl ShowBg - bl sub_804F17C - ldr r1, =gBattleScripting - movs r0, 0x2 - strb r0, [r1, 0x1E] - b _0804F0F2 - .pool -_0804EF94: - bl sub_804F1CC - lsls r0, 24 - cmp r0, 0 - beq _0804EFA0 - b _0804F0F2 -_0804EFA0: - ldr r1, =gBattleScripting - movs r0, 0x3 - strb r0, [r1, 0x1E] - b _0804F0F2 - .pool -_0804EFAC: - ldr r1, =gUnknown_02022E18 - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_02022E1A - movs r2, 0x80 - lsls r2, 1 - adds r0, r2, 0 - strh r0, [r1] - movs r0, 0 - movs r1, 0x7 - movs r2, 0x1 - bl SetBgAttribute - movs r0, 0x1 - movs r1, 0x7 - movs r2, 0 - bl SetBgAttribute - movs r0, 0 - bl ShowBg - movs r0, 0x1 - bl ShowBg - movs r0, 0x80 - str r0, [sp] - movs r0, 0x12 - movs r1, 0x7 - movs r2, 0x1D - movs r3, 0x13 - bl sub_8056A3C - ldr r1, =gBattleScripting - movs r0, 0x4 - strb r0, [r1, 0x1E] - b _0804F0F2 - .pool -_0804F000: - bl sub_804F100 - movs r0, 0xD - bl PutWindowTilemap - movs r0, 0xD - movs r1, 0x3 - bl CopyWindowToVram - b _0804F06A -_0804F014: - bl IsDma3ManagerBusyWithBgCopy - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0804F0F2 - ldr r0, =gUnknown_02022E1A - strh r1, [r0] - b _0804F06A - .pool -_0804F02C: - ldr r0, =gMain - ldrh r0, [r0, 0x2E] - cmp r0, 0 - beq _0804F0F2 - movs r0, 0x5 - bl PlaySE - bl sub_804F144 - movs r0, 0xD - movs r1, 0x2 - bl CopyWindowToVram - b _0804F06A - .pool -_0804F04C: - ldr r0, =gMain - ldrh r0, [r0, 0x2E] - cmp r0, 0 - beq _0804F0F2 - movs r0, 0x5 - bl PlaySE - movs r0, 0x81 - str r0, [sp] - movs r0, 0x12 - movs r1, 0x7 - movs r2, 0x1D - movs r3, 0x13 - bl sub_8056A3C -_0804F06A: - ldr r1, =gBattleScripting - ldrb r0, [r1, 0x1E] - adds r0, 0x1 - strb r0, [r1, 0x1E] - b _0804F0F2 - .pool -_0804F07C: - bl sub_804F344 - lsls r0, 24 - cmp r0, 0 - bne _0804F0F2 - movs r0, 0xE - bl ClearWindowTilemap - movs r0, 0xE - movs r1, 0x1 - bl CopyWindowToVram - movs r0, 0xD - bl ClearWindowTilemap - movs r0, 0xD - movs r1, 0x1 - bl CopyWindowToVram - movs r0, 0x2 - movs r1, 0x7 - movs r2, 0x2 - bl SetBgAttribute - movs r0, 0x2 - bl ShowBg - ldr r1, =gBattleScripting - movs r0, 0xA - strb r0, [r1, 0x1E] - b _0804F0F2 - .pool -_0804F0C0: - bl IsDma3ManagerBusyWithBgCopy - lsls r0, 24 - cmp r0, 0 - bne _0804F0F2 - movs r0, 0 - movs r1, 0x7 - movs r2, 0 - bl SetBgAttribute - movs r0, 0x1 - movs r1, 0x7 - movs r2, 0x1 - bl SetBgAttribute - movs r0, 0 - bl ShowBg - movs r0, 0x1 - bl ShowBg - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_0804F0F2: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk6C_lvlbox_display - - thumb_func_start sub_804F100 -sub_804F100: @ 804F100 - push {lr} - sub sp, 0x14 - ldr r0, =gBattleStruct - ldr r0, [r0] - ldrb r1, [r0, 0x10] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - add r1, sp, 0x8 - bl sub_81D388C - ldr r0, =gBattleResources - ldr r0, [r0] - ldr r1, [r0, 0x10] - movs r0, 0xD - str r0, [sp] - movs r0, 0xF - str r0, [sp, 0x4] - movs r0, 0xD - add r2, sp, 0x8 - movs r3, 0xE - bl sub_81D3640 - add sp, 0x14 - pop {r0} - bx r0 - .pool - thumb_func_end sub_804F100 - - thumb_func_start sub_804F144 -sub_804F144: @ 804F144 - push {lr} - sub sp, 0x10 - ldr r0, =gBattleStruct - ldr r0, [r0] - ldrb r1, [r0, 0x10] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - add r1, sp, 0x4 - bl sub_81D388C - movs r0, 0xF - str r0, [sp] - movs r0, 0xD - add r1, sp, 0x4 - movs r2, 0xE - movs r3, 0xD - bl sub_81D3784 - add sp, 0x10 - pop {r0} - bx r0 - .pool - thumb_func_end sub_804F144 - - thumb_func_start sub_804F17C -sub_804F17C: @ 804F17C - push {lr} - ldr r1, =gUnknown_02022E1E - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_02022E1C - movs r2, 0xD0 - lsls r2, 1 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, =gUnknown_0831C2C8 - movs r1, 0x60 - movs r2, 0x20 - bl LoadPalette - ldr r1, =gUnknown_0831C2E8 - movs r0, 0xE - movs r2, 0 - movs r3, 0 - bl CopyToWindowPixelBuffer - movs r0, 0xE - bl PutWindowTilemap - movs r0, 0xE - movs r1, 0x3 - bl CopyWindowToVram - bl sub_804F384 - pop {r0} - bx r0 - .pool - thumb_func_end sub_804F17C - - thumb_func_start sub_804F1CC -sub_804F1CC: @ 804F1CC - push {r4,r5,lr} - bl IsDma3ManagerBusyWithBgCopy - lsls r0, 24 - cmp r0, 0 - beq _0804F1DC - movs r0, 0x1 - b _0804F216 -_0804F1DC: - ldr r4, =gUnknown_02022E1C - ldrh r1, [r4] - movs r5, 0x80 - lsls r5, 2 - cmp r1, r5 - bne _0804F1F0 - movs r0, 0 - b _0804F216 - .pool -_0804F1F0: - movs r0, 0xD0 - lsls r0, 1 - cmp r1, r0 - bne _0804F1FC - bl sub_804F220 -_0804F1FC: - ldrh r0, [r4] - adds r0, 0x8 - strh r0, [r4] - lsls r0, 16 - ldr r1, =0x01ff0000 - cmp r0, r1 - bls _0804F20C - strh r5, [r4] -_0804F20C: - ldrh r1, [r4] - eors r1, r5 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 -_0804F216: - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sub_804F1CC - - thumb_func_start sub_804F220 -sub_804F220: @ 804F220 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - ldr r6, =gBattleStruct - ldr r0, [r6] - ldrb r0, [r0, 0x10] - movs r5, 0x64 - muls r0, r5 - ldr r4, =gPlayerParty - adds r0, r4 - movs r1, 0x38 - bl GetMonData - mov r8, r0 - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - ldr r0, [r6] - ldrb r0, [r0, 0x10] - muls r0, r5 - adds r0, r4 - bl GetMonGender - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, [r6] - ldrb r0, [r0, 0x10] - muls r0, r5 - adds r0, r4 - ldr r5, =gStringVar4 - adds r1, r5, 0 - bl GetMonNickname - str r5, [sp] - mov r2, sp - movs r1, 0 - movs r0, 0xE - strb r0, [r2, 0x4] - mov r0, sp - strb r1, [r0, 0x5] - movs r4, 0x20 - strb r4, [r0, 0x6] - strb r1, [r0, 0x7] - strb r4, [r0, 0x8] - strb r1, [r0, 0x9] - strb r1, [r0, 0xA] - strb r1, [r0, 0xB] - mov r3, sp - ldrb r2, [r3, 0xC] - subs r1, 0x10 - adds r0, r1, 0 - ands r0, r2 - strb r0, [r3, 0xC] - mov r2, sp - movs r0, 0x10 - strb r0, [r2, 0xC] - ldrb r0, [r2, 0xD] - ands r1, r0 - strb r1, [r2, 0xD] - mov r0, sp - strb r4, [r0, 0xD] - movs r1, 0xFF - movs r2, 0 - bl AddTextPrinter - movs r0, 0xF9 - strb r0, [r5] - adds r5, 0x1 - movs r0, 0x5 - strb r0, [r5] - adds r5, 0x1 - adds r4, r5, 0 - adds r0, r4, 0 - mov r1, r8 - movs r2, 0 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - adds r5, r0, 0 - subs r4, r5, r4 - movs r2, 0x4 - subs r2, r4 - lsls r2, 16 - lsrs r2, 16 - movs r1, 0x77 - bl StringFill - adds r5, r0, 0 - cmp r7, 0xFF - beq _0804F320 - cmp r7, 0 - bne _0804F300 - movs r1, 0 - movs r2, 0xC - bl WriteColorChangeControlCode - adds r5, r0, 0 - movs r1, 0x1 - movs r2, 0xD - bl WriteColorChangeControlCode - adds r5, r0, 0 - movs r0, 0xB5 - b _0804F318 - .pool -_0804F300: - adds r0, r5, 0 - movs r1, 0 - movs r2, 0xE - bl WriteColorChangeControlCode - adds r5, r0, 0 - movs r1, 0x1 - movs r2, 0xF - bl WriteColorChangeControlCode - adds r5, r0, 0 - movs r0, 0xB6 -_0804F318: - strb r0, [r5] - adds r5, 0x1 - movs r0, 0xFF - strb r0, [r5] -_0804F320: - mov r0, sp - movs r1, 0xA - strb r1, [r0, 0x7] - strb r1, [r0, 0x9] - movs r1, 0xFF - movs r2, 0 - bl AddTextPrinter - movs r0, 0xE - movs r1, 0x2 - bl CopyWindowToVram - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804F220 - - thumb_func_start sub_804F344 -sub_804F344: @ 804F344 - push {lr} - ldr r0, =gUnknown_02022E1C - ldrh r1, [r0] - movs r3, 0xD0 - lsls r3, 1 - adds r2, r0, 0 - cmp r1, r3 - bne _0804F35C - movs r0, 0 - b _0804F380 - .pool -_0804F35C: - ldrh r0, [r2] - adds r1, r0, 0 - subs r1, 0x10 - ldr r0, =0x0000019f - cmp r1, r0 - bgt _0804F370 - strh r3, [r2] - b _0804F372 - .pool -_0804F370: - strh r1, [r2] -_0804F372: - ldrh r1, [r2] - movs r0, 0xD0 - lsls r0, 1 - eors r1, r0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 -_0804F380: - pop {r1} - bx r1 - thumb_func_end sub_804F344 - - thumb_func_start sub_804F384 -sub_804F384: @ 804F384 - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x10 - ldr r0, =gBattleStruct - mov r8, r0 - ldr r0, [r0] - ldrb r0, [r0, 0x10] - movs r6, 0x64 - muls r0, r6 - ldr r5, =gPlayerParty - adds r0, r5 - movs r1, 0xB - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - mov r1, r8 - ldr r0, [r1] - ldrb r0, [r0, 0x10] - muls r0, r6 - adds r0, r5 - movs r1, 0 - bl GetMonData - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_80D2EDC - str r0, [sp] - ldr r5, =0xffff0000 - ldr r0, [sp, 0x4] - ands r0, r5 - movs r1, 0x80 - lsls r1, 2 - orrs r0, r1 - ldr r1, =0x0000ffff - ands r0, r1 - ldr r1, =0xd75a0000 - orrs r0, r1 - str r0, [sp, 0x4] - adds r0, r4, 0 - bl sub_80D30B0 - str r0, [sp, 0x8] - add r4, sp, 0x8 - ldr r0, [r4, 0x4] - ands r0, r5 - ldr r1, =0x0000d75a - orrs r0, r1 - str r0, [r4, 0x4] - mov r0, sp - bl LoadSpriteSheet - adds r0, r4, 0 - bl LoadSpritePalette - ldr r0, =gUnknown_0831C3C0 - movs r1, 0x80 - lsls r1, 1 - movs r2, 0xA - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - movs r0, 0 - strh r0, [r1, 0x2E] - ldr r0, =gUnknown_02022E1C - ldrh r0, [r0] - strh r0, [r1, 0x30] - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_804F384 - - thumb_func_start sub_804F450 -sub_804F450: @ 804F450 - push {r4,lr} - adds r2, r0, 0 - ldr r0, =gUnknown_02022E1C - ldrh r1, [r2, 0x30] - ldrh r0, [r0] - subs r1, r0 - strh r1, [r2, 0x24] - lsls r1, 16 - cmp r1, 0 - beq _0804F470 - movs r0, 0x1 - strh r0, [r2, 0x2E] - b _0804F48C - .pool -_0804F470: - movs r1, 0x2E - ldrsh r0, [r2, r1] - cmp r0, 0 - beq _0804F48C - adds r0, r2, 0 - bl DestroySprite - ldr r4, =0x0000d75a - adds r0, r4, 0 - bl FreeSpriteTilesByTag - adds r0, r4, 0 - bl FreeSpritePaletteByTag -_0804F48C: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_804F450 - - thumb_func_start sub_804F498 -sub_804F498: @ 804F498 - push {lr} - ldr r3, =gBattlePartyID - ldr r0, =gBattleStruct - ldr r0, [r0] - ldrh r1, [r3] - ldrb r2, [r0, 0x10] - cmp r1, r2 - beq _0804F4BA - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0804F4CC - ldrh r0, [r3, 0x4] - cmp r0, r2 - bne _0804F4CC -_0804F4BA: - movs r0, 0x1 - b _0804F4CE - .pool -_0804F4CC: - movs r0, 0 -_0804F4CE: - pop {r1} - bx r1 - thumb_func_end sub_804F498 - - thumb_func_start atk6D_set_sentpokes_values -atk6D_set_sentpokes_values: @ 804F4D4 - push {lr} - bl sub_803F988 - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atk6D_set_sentpokes_values - - thumb_func_start atk6E_set_atk_to_player0 -atk6E_set_atk_to_player0: @ 804F4EC - push {lr} - movs r0, 0 - bl GetBankByPlayerAI - ldr r1, =gBankAttacker - strb r0, [r1] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atk6E_set_atk_to_player0 - - thumb_func_start atk6F_set_visible -atk6F_set_visible: @ 804F50C - push {r4,r5,lr} - ldr r5, =gBattlescriptCurrInstr - ldr r0, [r5] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r4, =gActiveBank - strb r0, [r4] - movs r0, 0 - movs r1, 0 - bl dp01_build_cmdbuf_x33_a_33_33 - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r0, [r5] - adds r0, 0x2 - str r0, [r5] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk6F_set_visible - - thumb_func_start atk70_record_ability -atk70_record_ability: @ 804F540 - push {r4,lr} - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r1, =gActiveBank - strb r0, [r1] - ldrb r0, [r1] - ldr r1, =gLastUsedAbility - ldrb r1, [r1] - bl RecordAbilityBattle - ldr r0, [r4] - adds r0, 0x1 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk70_record_ability - - thumb_func_start sub_804F574 -sub_804F574: @ 804F574 - ldr r2, =gBattleTextBuff2 - movs r0, 0xFD - strb r0, [r2] - movs r0, 0x2 - strb r0, [r2, 0x1] - ldr r0, =gMoveToLearn - ldrh r1, [r0] - strb r1, [r2, 0x2] - movs r0, 0xFF - lsls r0, 8 - ands r0, r1 - lsrs r0, 8 - strb r0, [r2, 0x3] - movs r0, 0xFF - strb r0, [r2, 0x4] - bx lr - .pool - thumb_func_end sub_804F574 - - thumb_func_start atk71_buffer_move_to_learn -atk71_buffer_move_to_learn: @ 804F59C - push {lr} - bl sub_804F574 - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atk71_buffer_move_to_learn - - thumb_func_start atk72_jump_if_can_run_frombattle -atk72_jump_if_can_run_frombattle: @ 804F5B4 - push {lr} - ldr r0, =gBank1 - ldrb r0, [r0] - bl sub_803EC20 - lsls r0, 24 - cmp r0, 0 - beq _0804F5E8 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _0804F5F0 - .pool -_0804F5E8: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_0804F5F0: - pop {r0} - bx r0 - .pool - thumb_func_end atk72_jump_if_can_run_frombattle - - thumb_func_start atk73_hp_thresholds -atk73_hp_thresholds: @ 804F5F8 - push {r4-r6,lr} - ldr r0, =gBattleTypeFlags - ldr r4, [r0] - movs r6, 0x1 - ands r4, r6 - cmp r4, 0 - bne _0804F68E - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r1, =gActiveBank - strb r0, [r1] - movs r1, 0x1 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gBattleMons - movs r1, 0x58 - muls r1, r0 - adds r1, r2 - ldrh r5, [r1, 0x28] - movs r0, 0x64 - muls r0, r5 - ldrh r1, [r1, 0x2C] - bl __divsi3 - cmp r0, 0 - bne _0804F636 - movs r0, 0x1 -_0804F636: - cmp r0, 0x45 - bgt _0804F63E - cmp r5, 0 - bne _0804F65C -_0804F63E: - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0xB1 - strb r4, [r0] - b _0804F68E - .pool -_0804F65C: - cmp r0, 0x27 - ble _0804F670 - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0xB1 - strb r6, [r0] - b _0804F68E - .pool -_0804F670: - cmp r0, 0x9 - ble _0804F684 - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0xB1 - movs r1, 0x2 - b _0804F68C - .pool -_0804F684: - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0xB1 - movs r1, 0x3 -_0804F68C: - strb r1, [r0] -_0804F68E: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x2 - str r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atk73_hp_thresholds - - thumb_func_start atk74_hp_thresholds2 -atk74_hp_thresholds2: @ 804F6A4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, =gBattleTypeFlags - ldr r7, [r0] - movs r0, 0x1 - mov r8, r0 - ands r7, r0 - cmp r7, 0 - bne _0804F73E - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - adds r4, r0, 0 - ldr r0, =gActiveBank - strb r4, [r0] - movs r0, 0x1 - eors r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - bl GetBankSide - lsls r0, 24 - ldr r1, =gBattleStruct - ldr r6, [r1] - lsrs r0, 23 - adds r0, r6 - adds r0, 0xA8 - ldrb r5, [r0] - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r4 - adds r0, r1 - ldrh r4, [r0, 0x28] - subs r1, r5, r4 - movs r0, 0x64 - muls r0, r1 - adds r1, r5, 0 - bl __divsi3 - adds r1, r0, 0 - cmp r4, r5 - bcc _0804F71C - adds r0, r6, 0 - adds r0, 0xB1 - strb r7, [r0] - b _0804F73E - .pool -_0804F71C: - cmp r0, 0x1D - bgt _0804F72A - adds r0, r6, 0 - adds r0, 0xB1 - mov r1, r8 - strb r1, [r0] - b _0804F73E -_0804F72A: - cmp r1, 0x45 - bgt _0804F736 - adds r1, r6, 0 - adds r1, 0xB1 - movs r0, 0x2 - b _0804F73C -_0804F736: - adds r1, r6, 0 - adds r1, 0xB1 - movs r0, 0x3 -_0804F73C: - strb r0, [r1] -_0804F73E: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x2 - str r0, [r1] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk74_hp_thresholds2 - - thumb_func_start atk75_8026A58 -atk75_8026A58: @ 804F754 - push {lr} - sub sp, 0x4 - ldr r2, =gBankInMenu - ldr r1, =gBankAttacker - ldrb r0, [r1] - strb r0, [r2] - ldr r2, =gBattlePartyID - ldrb r0, [r1] - lsls r0, 1 - adds r0, r2 - ldrh r2, [r0] - movs r0, 0x64 - muls r0, r2 - ldr r1, =gEnemyParty - adds r0, r1 - ldr r1, =gLastUsedItem - ldrh r1, [r1] - lsls r2, 24 - lsrs r2, 24 - movs r3, 0x1 - str r3, [sp] - movs r3, 0 - bl ExecuteTableBasedItemEffect - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - add sp, 0x4 - pop {r0} - bx r0 - .pool - thumb_func_end atk75_8026A58 - - thumb_func_start atk76_various -atk76_various: @ 804F7AC - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r1, =gActiveBank - strb r0, [r1] - ldr r0, [r4] - ldrb r0, [r0, 0x2] - cmp r0, 0x1A - bls _0804F7CA - b _0804FD70 -_0804F7CA: - lsls r0, 2 - ldr r1, =_0804F7E0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0804F7E0: - .4byte _0804F84C - .4byte _0804F85C - .4byte _0804F8BC - .4byte _0804F8CC - .4byte _0804F8E4 - .4byte _0804F920 - .4byte _0804F958 - .4byte _0804F9E0 - .4byte _0804FA20 - .4byte _0804FACC - .4byte _0804FAE8 - .4byte _0804FB3C - .4byte _0804FB94 - .4byte _0804FC18 - .4byte _0804FC2C - .4byte _0804FC32 - .4byte _0804FC38 - .4byte _0804FC60 - .4byte _0804FC6A - .4byte _0804FC78 - .4byte _0804FC8C - .4byte _0804FCC4 - .4byte _0804FCD8 - .4byte _0804FCF0 - .4byte _0804FD1C - .4byte _0804FD30 - .4byte _0804FD5C -_0804F84C: - ldr r0, =gActiveBank - ldrb r0, [r0] - bl CancelMultiTurnMoves - b _0804FD70 - .pool -_0804F85C: - ldr r1, =gBankAttacker - ldr r4, =gBankTarget - ldrb r0, [r4] - strb r0, [r1] - ldrb r0, [r1] - bl GetBankSide - movs r1, 0x1 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gSideTimers - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r2, r1, r2 - ldrb r0, [r2, 0x8] - cmp r0, 0 - beq _0804F8A8 - ldr r1, =gBattleMons - ldrb r2, [r2, 0x9] - movs r0, 0x58 - muls r0, r2 - adds r0, r1 - ldrh r0, [r0, 0x28] - cmp r0, 0 - beq _0804F8A8 - strb r2, [r4] - b _0804FD70 - .pool -_0804F8A8: - ldr r0, =gBankTarget - ldr r1, =gActiveBank - ldrb r1, [r1] - strb r1, [r0] - b _0804FD70 - .pool -_0804F8BC: - bl sub_803BB88 - ldr r1, =gBattleCommunication - strb r0, [r1] - b _0804FD70 - .pool -_0804F8CC: - ldr r0, =gCurrentMove - ldrh r0, [r0] - movs r1, 0 - bl GetMoveTarget - ldr r1, =gBankTarget - strb r0, [r1] - b _0804FD70 - .pool -_0804F8E4: - ldr r2, =gHitMarker - ldr r1, =gBitTable - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - lsls r0, 28 - ldr r2, [r2] - ands r2, r0 - cmp r2, 0 - beq _0804F914 - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1] - b _0804FD70 - .pool -_0804F914: - ldr r0, =gBattleCommunication - strb r2, [r0] - b _0804FD70 - .pool -_0804F920: - ldr r4, =gSpecialStatuses - ldr r3, =gActiveBank - ldrb r0, [r3] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldrb r2, [r1] - movs r0, 0x9 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - ldrb r0, [r3] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldrb r2, [r1] - movs r0, 0x11 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - b _0804FD70 - .pool -_0804F958: - ldr r4, =gBattlePartyID - ldr r1, =gBattleStruct - ldr r0, [r1] - ldrh r3, [r4] - ldrb r2, [r0, 0x10] - adds r6, r1, 0 - cmp r3, r2 - beq _0804F974 - ldrh r0, [r4, 0x4] - cmp r0, r2 - beq _0804F970 - b _0804FD70 -_0804F970: - cmp r3, r0 - bne _0804F988 -_0804F974: - ldr r1, =gActiveBank - movs r0, 0 - b _0804F98C - .pool -_0804F988: - ldr r1, =gActiveBank - movs r0, 0x2 -_0804F98C: - strb r0, [r1] - adds r5, r1, 0 - ldrb r2, [r5] - lsls r0, r2, 1 - adds r0, 0xC8 - ldr r1, [r6] - adds r4, r1, r0 - movs r3, 0 - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r2 - adds r1, 0xC - adds r0, r1 - ldrh r0, [r0] - ldrh r2, [r4] - cmp r0, r2 - beq _0804F9CC - adds r6, r5, 0 - movs r5, 0x58 - adds r2, r1, 0 -_0804F9B4: - adds r3, 0x1 - cmp r3, 0x3 - bgt _0804F9CC - lsls r1, r3, 1 - ldrb r0, [r6] - muls r0, r5 - adds r1, r0 - adds r1, r2 - ldrh r0, [r1] - ldrh r1, [r4] - cmp r0, r1 - bne _0804F9B4 -_0804F9CC: - cmp r3, 0x4 - beq _0804F9D2 - b _0804FD70 -_0804F9D2: - movs r0, 0 - strh r0, [r4] - b _0804FD70 - .pool -_0804F9E0: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0xB - ands r0, r1 - cmp r0, 0x8 - beq _0804F9EE - b _0804FD70 -_0804F9EE: - ldr r1, =gBattleMons - ldrh r0, [r1, 0x28] - cmp r0, 0 - bne _0804F9F8 - b _0804FD70 -_0804F9F8: - adds r0, r1, 0 - adds r0, 0x80 - ldrh r0, [r0] - cmp r0, 0 - bne _0804FA04 - b _0804FD70 -_0804FA04: - ldr r0, =gHitMarker - ldr r1, [r0] - ldr r2, =0xffbfffff - ands r1, r2 - str r1, [r0] - b _0804FD70 - .pool -_0804FA20: - ldr r2, =gBattleCommunication - mov r8, r2 - movs r0, 0 - strb r0, [r2] - ldr r1, =gBattleScripting - ldr r6, =gActiveBank - ldrb r0, [r2, 0x1] - strb r0, [r6] - strb r0, [r1, 0x17] - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r7, r0, 0 - adds r7, 0x92 - ldrb r3, [r7] - ldr r1, =gBitTable - ldrb r2, [r6] - lsls r0, r2, 2 - adds r0, r1 - ldr r5, [r0] - adds r0, r3, 0 - ands r0, r5 - cmp r0, 0 - beq _0804FA50 - b _0804FD70 -_0804FA50: - ldr r4, =gBattleMons - movs r0, 0x58 - mov r12, r0 - mov r1, r12 - muls r1, r2 - adds r2, r1, 0 - adds r1, r2, r4 - ldrh r0, [r1, 0x2C] - lsrs r0, 1 - ldrh r1, [r1, 0x28] - cmp r0, r1 - bcs _0804FA6A - b _0804FD70 -_0804FA6A: - cmp r1, 0 - bne _0804FA70 - b _0804FD70 -_0804FA70: - adds r0, r4, 0 - adds r0, 0x4C - adds r0, r2, r0 - ldr r0, [r0] - movs r1, 0x7 - ands r0, r1 - cmp r0, 0 - beq _0804FA82 - b _0804FD70 -_0804FA82: - orrs r3, r5 - strb r3, [r7] - movs r0, 0x1 - mov r2, r8 - strb r0, [r2] - ldrb r0, [r6] - mov r1, r12 - muls r1, r0 - adds r0, r1, 0 - adds r1, r4, 0 - adds r1, 0x48 - adds r0, r1 - ldr r0, [r0] - bl GetNatureFromPersonality - ldr r1, =gUnknown_0831C4F8 - lsls r0, 24 - lsrs r0, 24 - adds r0, r1 - ldrb r0, [r0] - mov r2, r8 - strb r0, [r2, 0x5] - b _0804FD70 - .pool -_0804FACC: - ldr r4, =gBattleCommunication - adds r0, r4, 0 - bl sub_81A5258 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0 - bne _0804FADE - b _0804FD78 -_0804FADE: - strb r3, [r4, 0x1] - b _0804FD70 - .pool -_0804FAE8: - ldr r0, =gBattleMons - adds r0, 0x80 - movs r1, 0 - strh r1, [r0] - ldr r2, =gHitMarker - ldr r3, =gBitTable - ldr r1, [r3, 0x4] - lsls r1, 28 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] - ldr r0, =gBattleStruct - ldr r2, [r0] - ldr r0, =0x000002a1 - adds r2, r0 - ldr r0, =gBattlePartyID - ldrh r0, [r0, 0x2] - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - ldr r1, =gDisableStructs - adds r1, 0x34 - ldrb r0, [r1] - movs r2, 0x2 - b _0804FBF4 - .pool -_0804FB3C: - ldr r1, =gBattleMons - movs r0, 0 - strh r0, [r1, 0x28] - ldr r2, =gHitMarker - ldr r3, =gBitTable - ldr r1, [r3] - lsls r1, 28 - ldr r0, [r2] - orrs r0, r1 - movs r1, 0x80 - lsls r1, 15 - orrs r0, r1 - str r0, [r2] - ldr r0, =gBattleStruct - ldr r2, [r0] - movs r1, 0xA8 - lsls r1, 2 - adds r2, r1 - ldr r0, =gBattlePartyID - ldrh r0, [r0] - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - ldr r2, =gDisableStructs - ldrb r0, [r2, 0x18] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2, 0x18] - b _0804FD70 - .pool -_0804FB94: - ldr r0, =gBattleMons - movs r1, 0 - strh r1, [r0, 0x28] - adds r0, 0x80 - strh r1, [r0] - ldr r2, =gHitMarker - ldr r3, =gBitTable - ldr r0, [r3] - lsls r0, 28 - ldr r1, [r2] - orrs r1, r0 - ldr r0, [r3, 0x4] - lsls r0, 28 - orrs r1, r0 - movs r0, 0x80 - lsls r0, 15 - orrs r1, r0 - str r1, [r2] - ldr r5, =gBattleStruct - ldr r2, [r5] - movs r0, 0xA8 - lsls r0, 2 - adds r2, r0 - ldr r4, =gBattlePartyID - ldrh r0, [r4] - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - ldr r2, [r5] - ldr r1, =0x000002a1 - adds r2, r1 - ldrh r0, [r4, 0x2] - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - ldr r1, =gDisableStructs - ldrb r0, [r1, 0x18] - movs r2, 0x2 - orrs r0, r2 - strb r0, [r1, 0x18] - adds r1, 0x34 - ldrb r0, [r1] -_0804FBF4: - orrs r0, r2 - strb r0, [r1] - b _0804FD70 - .pool -_0804FC18: - movs r0, 0 - bl sub_8033E10 - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution - b _0804FD70 - .pool -_0804FC2C: - bl sub_81A5BF8 - b _0804FD70 -_0804FC32: - bl sub_81A5D44 - b _0804FD70 -_0804FC38: - ldr r1, =gRefereeStringsTable - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r0, [r0, 0x1] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle - ldr r0, =gDisplayedStringBattle - movs r1, 0x16 - bl battle_show_message_maybe - b _0804FD70 - .pool -_0804FC60: - movs r0, 0x16 - bl IsTextPrinterActive - lsls r0, 16 - b _0804FD24 -_0804FC6A: - bl IsCryFinished - lsls r0, 24 - cmp r0, 0 - bne _0804FC76 - b _0804FD78 -_0804FC76: - b _0804FD70 -_0804FC78: - ldr r4, =gActiveBank - movs r0, 0x1 - strb r0, [r4] - ldr r0, =gBattleMons - adds r0, 0x58 - b _0804FCA2 - .pool -_0804FC8C: - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r0, 0x3 - bls _0804FD70 - ldr r4, =gActiveBank - movs r0, 0x3 - strb r0, [r4] - ldr r0, =gBattleMons - movs r2, 0x84 - lsls r2, 1 - adds r0, r2 -_0804FCA2: - ldrh r0, [r0, 0x28] - cmp r0, 0 - beq _0804FD70 - movs r0, 0 - movs r1, 0 - bl dp01_build_cmdbuf_x06_a - ldrb r0, [r4] - bl MarkBufferBankForExecution - b _0804FD70 - .pool -_0804FCC4: - ldr r0, =gMPlay_BGM - ldr r1, =0x0000ffff - movs r2, 0x55 - bl m4aMPlayVolumeControl - b _0804FD70 - .pool -_0804FCD8: - ldr r0, =gMPlay_BGM - ldr r1, =0x0000ffff - movs r2, 0x80 - lsls r2, 1 - bl m4aMPlayVolumeControl - b _0804FD70 - .pool -_0804FCF0: - ldr r0, =gBattleStruct - ldr r2, [r0] - ldr r0, =0x000002a2 - adds r2, r0 - ldr r1, =gBitTable - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldrb r1, [r2] - orrs r0, r1 - strb r0, [r2] - b _0804FD70 - .pool -_0804FD1C: - ldr r0, =gActiveBank - ldrb r0, [r0] - bl sub_805725C -_0804FD24: - cmp r0, 0 - bne _0804FD78 - b _0804FD70 - .pool -_0804FD30: - ldr r0, =gActiveBank - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0804FD50 - ldr r1, =gBattleOutcome - movs r0, 0x5 - strb r0, [r1] - b _0804FD70 - .pool -_0804FD50: - ldr r1, =gBattleOutcome - movs r0, 0xA - strb r0, [r1] - b _0804FD70 - .pool -_0804FD5C: - movs r1, 0xCE - lsls r1, 1 - movs r0, 0 - movs r2, 0x1 - bl sub_8034300 - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution -_0804FD70: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x3 - str r0, [r1] -_0804FD78: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk76_various - - thumb_func_start atk77_setprotect -atk77_setprotect: @ 804FD8C - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r6, 0x1 - ldr r2, =gUnknown_02024260 - ldr r1, =gBankAttacker - ldrb r3, [r1] - lsls r0, r3, 1 - adds r0, r2 - ldrh r0, [r0] - mov r8, r1 - ldr r7, =gDisableStructs - cmp r0, 0xB6 - beq _0804FDBC - cmp r0, 0xC5 - beq _0804FDBC - cmp r0, 0xCB - beq _0804FDBC - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - adds r0, r7 - movs r1, 0 - strb r1, [r0, 0x8] -_0804FDBC: - ldr r0, =gUnknown_02024082 - ldrb r1, [r0] - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - subs r0, 0x1 - cmp r1, r0 - bne _0804FDCC - movs r6, 0 -_0804FDCC: - ldr r2, =sProtectSuccessRates - mov r5, r8 - ldrb r1, [r5] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r7 - ldrb r4, [r0, 0x8] - lsls r4, 1 - adds r4, r2 - bl Random - ldrh r1, [r4] - lsls r0, 16 - lsrs r0, 16 - cmp r1, r0 - bcc _0804FE80 - cmp r6, 0 - beq _0804FE80 - ldr r4, =gBattleMoves - ldr r3, =gCurrentMove - ldrh r0, [r3] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldrb r0, [r1] - cmp r0, 0x6F - bne _0804FE1C - ldr r0, =gProtectStructs - ldrb r1, [r5] - lsls r1, 4 - adds r1, r0 - ldrb r0, [r1] - movs r2, 0x1 - orrs r0, r2 - strb r0, [r1] - ldr r1, =gBattleCommunication - movs r0, 0 - strb r0, [r1, 0x5] -_0804FE1C: - ldrh r0, [r3] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldrb r0, [r1] - cmp r0, 0x74 - bne _0804FE42 - ldr r0, =gProtectStructs - ldrb r1, [r5] - lsls r1, 4 - adds r1, r0 - ldrb r0, [r1] - movs r2, 0x2 - orrs r0, r2 - strb r0, [r1] - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x5] -_0804FE42: - mov r1, r8 - ldrb r0, [r1] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r7 - ldrb r0, [r1, 0x8] - adds r0, 0x1 - strb r0, [r1, 0x8] - b _0804FEA2 - .pool -_0804FE80: - ldr r2, =gDisableStructs - ldr r0, =gBankAttacker - ldrb r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0 - strb r1, [r0, 0x8] - ldr r1, =gBattleCommunication - movs r0, 0x2 - strb r0, [r1, 0x5] - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] -_0804FEA2: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk77_setprotect - - thumb_func_start atk78_faintifabilitynotdamp -atk78_faintifabilitynotdamp: @ 804FEC8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, =gBattleExecBuffer - ldr r2, [r0] - cmp r2, 0 - bne _0804FFCC - ldr r1, =gBankTarget - strb r2, [r1] - ldr r0, =gNoOfAllBanks - ldrb r3, [r0] - adds r5, r1, 0 - mov r8, r0 - ldr r6, =gBattleMons - cmp r2, r3 - bcs _0804FF14 - adds r0, r6, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x6 - beq _0804FF14 - adds r2, r3, 0 - adds r4, r6, 0 - movs r3, 0x58 -_0804FEF8: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, r2 - bcs _0804FF14 - ldrb r0, [r5] - muls r0, r3 - adds r0, r4 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x6 - bne _0804FEF8 -_0804FF14: - ldrb r0, [r5] - mov r1, r8 - ldrb r1, [r1] - cmp r0, r1 - bne _0804FFB0 - ldr r4, =gActiveBank - ldr r7, =gBankAttacker - ldrb r0, [r7] - strb r0, [r4] - ldr r2, =gBattleMoveDamage - ldrb r1, [r4] - movs r0, 0x58 - muls r0, r1 - adds r0, r6 - ldrh r0, [r0, 0x28] - str r0, [r2] - ldr r1, =0x00007fff - movs r0, 0 - bl dp01_build_cmdbuf_x18_0_aa_health_bar_update - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - movs r0, 0 - strb r0, [r5] - mov r2, r8 - ldrb r0, [r2] - cmp r0, 0 - beq _0804FFCC - adds r3, r5, 0 - ldrb r5, [r7] - ldr r7, =gBitTable - adds r4, r0, 0 - ldr r6, =gAbsentBankFlags -_0804FF60: - ldrb r2, [r3] - cmp r2, r5 - beq _0804FF76 - ldrb r0, [r6] - ldrb r1, [r3] - lsls r1, 2 - adds r1, r7 - ldr r1, [r1] - ands r0, r1 - cmp r0, 0 - beq _0804FFCC -_0804FF76: - adds r0, r2, 0x1 - strb r0, [r3] - lsls r0, 24 - lsrs r0, 24 - cmp r0, r4 - bcc _0804FF60 - b _0804FFCC - .pool -_0804FFB0: - ldr r1, =gLastUsedAbility - movs r0, 0x6 - strb r0, [r1] - ldrb r0, [r5] - movs r1, 0x58 - muls r1, r0 - adds r1, r6 - adds r1, 0x20 - ldrb r1, [r1] - bl RecordAbilityBattle - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB560 - str r0, [r1] -_0804FFCC: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk78_faintifabilitynotdamp - - thumb_func_start atk79_setatkhptozero -atk79_setatkhptozero: @ 804FFE4 - push {r4,lr} - sub sp, 0x4 - ldr r0, =gBattleExecBuffer - ldr r3, [r0] - cmp r3, 0 - bne _08050028 - ldr r4, =gActiveBank - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r4] - ldr r1, =gBattleMons - ldrb r0, [r4] - movs r2, 0x58 - muls r0, r2 - adds r0, r1 - strh r3, [r0, 0x28] - ldrb r0, [r4] - muls r0, r2 - adds r1, 0x28 - adds r0, r1 - str r0, [sp] - movs r0, 0 - movs r1, 0x2A - movs r2, 0 - movs r3, 0x2 - bl EmitSetAttributes - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_08050028: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk79_setatkhptozero - - thumb_func_start atk7A_jumpwhiletargetvalid -atk7A_jumpwhiletargetvalid: @ 8050044 - push {r4-r7,lr} - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r4, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r4, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r4, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r4, r0 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - adds r7, r3, 0 - cmp r0, 0 - beq _080500DC - ldr r0, =gBankTarget - ldrb r1, [r0] - adds r1, 0x1 - strb r1, [r0] - ldr r2, =gBankAttacker - lsls r1, 24 - lsrs r1, 24 - adds r3, r0, 0 - ldr r6, =gAbsentBankFlags - ldr r5, =gBitTable - ldr r0, =gNoOfAllBanks - mov r12, r0 - ldrb r0, [r2] - cmp r1, r0 - bne _0805009A -_0805008A: - ldrb r0, [r3] - adds r0, 0x1 - strb r0, [r3] - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r2] - cmp r0, r1 - beq _0805008A -_0805009A: - ldrb r0, [r6] - ldrb r1, [r3] - lsls r1, 2 - adds r1, r5 - ldr r1, [r1] - ands r0, r1 - cmp r0, 0 - bne _0805008A - ldrb r0, [r3] - mov r2, r12 - ldrb r2, [r2] - cmp r0, r2 - bcc _080500D8 - ldr r0, [r7] - adds r0, 0x5 - str r0, [r7] - b _080500E0 - .pool -_080500D8: - str r4, [r7] - b _080500E0 -_080500DC: - adds r0, r2, 0x5 - str r0, [r3] -_080500E0: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end atk7A_jumpwhiletargetvalid - - thumb_func_start atk7B_healhalfHP_if_possible -atk7B_healhalfHP_if_possible: @ 80500E8 - push {r4-r6,lr} - ldr r4, =gBattlescriptCurrInstr - ldr r1, [r4] - ldrb r2, [r1, 0x1] - ldrb r0, [r1, 0x2] - lsls r0, 8 - orrs r2, r0 - ldrb r0, [r1, 0x3] - lsls r0, 16 - orrs r2, r0 - ldrb r0, [r1, 0x4] - lsls r0, 24 - orrs r2, r0 - ldrb r0, [r1, 0x5] - ldr r3, =gBankTarget - cmp r0, 0x1 - bne _08050110 - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r3] -_08050110: - ldr r1, =gBattleMoveDamage - ldr r6, =gBattleMons - ldrb r0, [r3] - movs r5, 0x58 - muls r0, r5 - adds r0, r6 - ldrh r0, [r0, 0x2C] - lsrs r0, 1 - str r0, [r1] - cmp r0, 0 - bne _0805012A - movs r0, 0x1 - str r0, [r1] -_0805012A: - ldr r0, [r1] - negs r0, r0 - str r0, [r1] - ldrb r0, [r3] - muls r0, r5 - adds r0, r6 - ldrh r1, [r0, 0x28] - ldrh r0, [r0, 0x2C] - cmp r1, r0 - bne _08050158 - str r2, [r4] - b _0805015E - .pool -_08050158: - ldr r0, [r4] - adds r0, 0x6 - str r0, [r4] -_0805015E: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end atk7B_healhalfHP_if_possible - - thumb_func_start atk7C_8025508 -atk7C_8025508: @ 8050164 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - ldr r2, =gNoOfAllBanks - ldr r0, =gBankAttacker - mov r10, r0 - movs r1, 0 - add r0, sp, 0x4 -_0805017A: - strh r1, [r0] - subs r0, 0x2 - cmp r0, sp - bge _0805017A - movs r1, 0 - mov r8, r1 - movs r5, 0 - ldrb r1, [r2] - cmp r5, r1 - bge _080501D0 - ldr r0, =gBankAttacker - ldrb r6, [r0] - ldr r2, =0x0000ffff - mov r9, r2 - lsls r4, r6, 3 - mov r2, sp - ldr r0, =gBattleStruct - mov r12, r0 - adds r7, r1, 0 -_080501A0: - cmp r5, r6 - beq _080501C8 - mov r1, r12 - ldr r0, [r1] - adds r0, r4, r0 - adds r1, r0, 0 - adds r1, 0xE0 - ldrb r3, [r1] - adds r0, 0xE1 - ldrb r0, [r0] - lsls r0, 8 - orrs r3, r0 - cmp r3, 0 - beq _080501C8 - cmp r3, r9 - beq _080501C8 - strh r3, [r2] - adds r2, 0x2 - movs r0, 0x1 - add r8, r0 -_080501C8: - adds r4, 0x2 - adds r5, 0x1 - cmp r5, r7 - blt _080501A0 -_080501D0: - mov r1, r10 - ldrb r0, [r1] - ldr r2, =gBattleStruct - ldr r1, [r2] - lsls r0, 1 - adds r0, r1 - adds r1, r0, 0 - adds r1, 0x98 - ldrb r3, [r1] - adds r0, 0x99 - ldrb r0, [r0] - lsls r0, 8 - orrs r3, r0 - cmp r3, 0 - beq _08050220 - ldr r0, =0x0000ffff - cmp r3, r0 - beq _08050220 - ldr r2, =gHitMarker - ldr r0, [r2] - ldr r1, =0xfffffbff - ands r0, r1 - str r0, [r2] - ldr r4, =gCurrentMove - strh r3, [r4] - b _0805024A - .pool -_08050220: - mov r0, r8 - cmp r0, 0 - beq _08050290 - ldr r2, =gHitMarker - ldr r0, [r2] - ldr r1, =0xfffffbff - ands r0, r1 - str r0, [r2] - bl Random - lsls r0, 16 - lsrs r0, 16 - mov r1, r8 - bl __modsi3 - adds r5, r0, 0 - ldr r4, =gCurrentMove - lsls r0, r5, 1 - add r0, sp - ldrh r0, [r0] - strh r0, [r4] -_0805024A: - ldrh r0, [r4] - movs r1, 0 - bl GetMoveTarget - ldr r1, =gBankTarget - strb r0, [r1] - ldr r5, =gBattlescriptCurrInstr - ldr r3, =gUnknown_082D86A8 - ldr r2, =gBattleMoves - ldrh r1, [r4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] - str r0, [r5] - b _080502AE - .pool -_08050290: - ldr r2, =gSpecialStatuses - mov r0, r10 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r2, 0x20 - orrs r1, r2 - strb r1, [r0] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_080502AE: - 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 atk7C_8025508 - - thumb_func_start atk7D_set_rain -atk7D_set_rain: @ 80502C8 - push {lr} - ldr r2, =gBattleWeather - ldrh r0, [r2] - movs r1, 0x7 - ands r1, r0 - cmp r1, 0 - beq _080502F4 - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gBattleCommunication - movs r0, 0x2 - strb r0, [r1, 0x5] - b _08050304 - .pool -_080502F4: - movs r0, 0x1 - strh r0, [r2] - ldr r0, =gBattleCommunication - strb r1, [r0, 0x5] - ldr r0, =gWishFutureKnock - adds r0, 0x28 - movs r1, 0x5 - strb r1, [r0] -_08050304: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atk7D_set_rain - - thumb_func_start atk7E_setreflect -atk7E_setreflect: @ 805031C - push {r4-r6,lr} - ldr r6, =gBankAttacker - ldrb r0, [r6] - bl GetBankIdentity - ldr r4, =gSideAffecting - movs r5, 0x1 - adds r1, r5, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - ldrh r1, [r1] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _0805035C - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gBattleCommunication - movs r0, 0 - b _080503D0 - .pool -_0805035C: - ldrb r0, [r6] - bl GetBankIdentity - adds r1, r5, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - ldrh r0, [r1] - movs r2, 0x1 - orrs r0, r2 - strh r0, [r1] - ldrb r0, [r6] - bl GetBankIdentity - ldr r4, =gSideTimers - adds r1, r5, 0 - ands r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0x5 - strb r1, [r0] - ldrb r0, [r6] - bl GetBankIdentity - adds r1, r5, 0 - ands r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r1, [r6] - strb r1, [r0, 0x1] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ands r0, r5 - cmp r0, 0 - beq _080503CC - movs r0, 0x1 - bl CountAliveMonsInBattle - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x2 - bne _080503CC - ldr r0, =gBattleCommunication - strb r1, [r0, 0x5] - b _080503D2 - .pool -_080503CC: - ldr r1, =gBattleCommunication - movs r0, 0x1 -_080503D0: - strb r0, [r1, 0x5] -_080503D2: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atk7E_setreflect - - thumb_func_start atk7F_setseeded -atk7F_setseeded: @ 80503E8 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r7, =gBattleMoveFlags - ldrb r5, [r7] - movs r0, 0x29 - ands r0, r5 - cmp r0, 0 - bne _0805041A - ldr r0, =gStatuses3 - mov r9, r0 - ldr r1, =gBankTarget - mov r8, r1 - ldrb r4, [r1] - lsls r0, r4, 2 - mov r2, r9 - adds r6, r0, r2 - ldr r2, [r6] - movs r0, 0x4 - mov r12, r0 - adds r3, r2, 0 - ands r3, r0 - cmp r3, 0 - beq _08050438 -_0805041A: - movs r0, 0x1 - orrs r0, r5 - strb r0, [r7] - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x5] - b _08050488 - .pool -_08050438: - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r4 - adds r1, r0, r1 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0xC - beq _08050454 - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0xC - bne _0805046C -_08050454: - movs r0, 0x1 - orrs r0, r5 - strb r0, [r7] - ldr r1, =gBattleCommunication - movs r0, 0x2 - strb r0, [r1, 0x5] - b _08050488 - .pool -_0805046C: - ldr r0, =gBankAttacker - ldrb r0, [r0] - orrs r2, r0 - str r2, [r6] - mov r2, r8 - ldrb r1, [r2] - lsls r1, 2 - add r1, r9 - ldr r0, [r1] - mov r2, r12 - orrs r0, r2 - str r0, [r1] - ldr r0, =gBattleCommunication - strb r3, [r0, 0x5] -_08050488: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk7F_setseeded - - thumb_func_start atk80_manipulatedamage -atk80_manipulatedamage: @ 80504A8 - push {r4,lr} - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - ldrb r2, [r0, 0x1] - adds r4, r1, 0 - cmp r2, 0x1 - beq _080504D8 - cmp r2, 0x1 - bgt _080504C4 - cmp r2, 0 - beq _080504CA - b _08050518 - .pool -_080504C4: - cmp r2, 0x2 - beq _08050510 - b _08050518 -_080504CA: - ldr r1, =gBattleMoveDamage - ldr r0, [r1] - negs r0, r0 - b _08050516 - .pool -_080504D8: - ldr r3, =gBattleMoveDamage - ldr r0, [r3] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - str r0, [r3] - cmp r0, 0 - bne _080504EA - str r2, [r3] -_080504EA: - ldr r2, =gBattleMons - ldr r0, =gBankTarget - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - ldrh r0, [r0, 0x2C] - lsrs r1, r0, 1 - ldr r0, [r3] - cmp r1, r0 - bge _08050518 - str r1, [r3] - b _08050518 - .pool -_08050510: - ldr r1, =gBattleMoveDamage - ldr r0, [r1] - lsls r0, 1 -_08050516: - str r0, [r1] -_08050518: - ldr r0, [r4] - adds r0, 0x2 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk80_manipulatedamage - - thumb_func_start atk81_setrest -atk81_setrest: @ 8050528 - push {r4-r7,lr} - sub sp, 0x4 - ldr r0, =gBattlescriptCurrInstr - mov r12, r0 - ldr r1, [r0] - ldrb r6, [r1, 0x1] - ldrb r0, [r1, 0x2] - lsls r0, 8 - orrs r6, r0 - ldrb r0, [r1, 0x3] - lsls r0, 16 - orrs r6, r0 - ldrb r0, [r1, 0x4] - lsls r0, 24 - orrs r6, r0 - ldr r5, =gActiveBank - ldr r2, =gBankTarget - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r2] - strb r0, [r5] - ldr r4, =gBattleMoveDamage - ldr r1, =gBattleMons - ldrb r0, [r2] - movs r3, 0x58 - muls r0, r3 - adds r0, r1 - ldrh r0, [r0, 0x2C] - negs r0, r0 - str r0, [r4] - ldrb r0, [r2] - adds r4, r0, 0 - muls r4, r3 - adds r0, r4, r1 - ldrh r3, [r0, 0x28] - adds r7, r5, 0 - adds r5, r2, 0 - adds r2, r1, 0 - ldrh r0, [r0, 0x2C] - cmp r3, r0 - bne _08050598 - mov r0, r12 - str r6, [r0] - b _080505E8 - .pool -_08050598: - adds r0, r2, 0 - adds r0, 0x4C - adds r0, r4, r0 - ldr r1, [r0] - movs r0, 0xF8 - ands r1, r0 - cmp r1, 0 - beq _080505B4 - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x5] - b _080505B8 - .pool -_080505B4: - ldr r0, =gBattleCommunication - strb r1, [r0, 0x5] -_080505B8: - ldrb r0, [r5] - movs r3, 0x58 - muls r0, r3 - adds r2, 0x4C - adds r0, r2 - movs r1, 0x3 - str r1, [r0] - ldrb r0, [r7] - muls r0, r3 - adds r0, r2 - str r0, [sp] - movs r0, 0 - movs r1, 0x28 - movs r2, 0 - movs r3, 0x4 - bl EmitSetAttributes - ldrb r0, [r7] - bl MarkBufferBankForExecution - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_080505E8: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk81_setrest - - thumb_func_start atk82_jumpifnotfirstturn -atk82_jumpifnotfirstturn: @ 80505F8 - push {r4,r5,lr} - ldr r5, =gBattlescriptCurrInstr - ldr r4, [r5] - ldrb r3, [r4, 0x1] - ldrb r0, [r4, 0x2] - lsls r0, 8 - orrs r3, r0 - ldrb r0, [r4, 0x3] - lsls r0, 16 - orrs r3, r0 - ldrb r0, [r4, 0x4] - lsls r0, 24 - orrs r3, r0 - ldr r2, =gDisableStructs - ldr r0, =gBankAttacker - ldrb r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x16] - cmp r0, 0 - beq _08050638 - adds r0, r4, 0x5 - str r0, [r5] - b _0805063A - .pool -_08050638: - str r3, [r5] -_0805063A: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end atk82_jumpifnotfirstturn - - thumb_func_start atk83_nop -atk83_nop: @ 8050640 - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - bx lr - .pool - thumb_func_end atk83_nop - - thumb_func_start UproarWakeUpCheck -UproarWakeUpCheck: @ 8050650 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r3, r0, 24 - movs r2, 0 - ldr r0, =gNoOfAllBanks - ldrb r1, [r0] - mov r8, r0 - cmp r2, r1 - bge _080506C4 - ldr r0, =gBattleMons - mov r12, r0 - movs r0, 0x58 - muls r0, r3 - add r0, r12 - adds r5, r0, 0 - adds r5, 0x20 - adds r4, r1, 0 - movs r3, 0 - ldr r6, =gBattleScripting - ldr r7, =gBattleCommunication -_0805067C: - mov r0, r12 - adds r0, 0x50 - adds r0, r3, r0 - ldr r0, [r0] - movs r1, 0x70 - ands r0, r1 - cmp r0, 0 - beq _080506BC - ldrb r0, [r5] - cmp r0, 0x2B - beq _080506BC - movs r3, 0 - strb r2, [r6, 0x17] - ldr r1, =gBankTarget - ldrb r0, [r1] - cmp r0, 0xFF - beq _080506DC - cmp r0, r2 - beq _080506D0 - movs r0, 0x1 - strb r0, [r7, 0x5] - b _080506C4 - .pool -_080506BC: - adds r3, 0x58 - adds r2, 0x1 - cmp r2, r4 - blt _0805067C -_080506C4: - mov r1, r8 - ldrb r1, [r1] - cmp r2, r1 - beq _080506E0 - movs r0, 0x1 - b _080506E2 -_080506D0: - ldr r0, =gBattleCommunication - strb r3, [r0, 0x5] - b _080506C4 - .pool -_080506DC: - strb r2, [r1] - b _080506C4 -_080506E0: - movs r0, 0 -_080506E2: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end UproarWakeUpCheck - - thumb_func_start atk84_jump_if_cant_sleep -atk84_jump_if_cant_sleep: @ 80506EC - push {r4-r6,lr} - ldr r5, =gBattlescriptCurrInstr - ldr r1, [r5] - ldrb r4, [r1, 0x1] - ldrb r0, [r1, 0x2] - lsls r0, 8 - orrs r4, r0 - ldrb r0, [r1, 0x3] - lsls r0, 16 - orrs r4, r0 - ldrb r0, [r1, 0x4] - lsls r0, 24 - orrs r4, r0 - ldr r6, =gBankTarget - ldrb r0, [r6] - bl UproarWakeUpCheck - lsls r0, 24 - cmp r0, 0 - beq _08050720 - str r4, [r5] - b _08050762 - .pool -_08050720: - ldr r1, =gBattleMons - ldrb r3, [r6] - movs r0, 0x58 - muls r0, r3 - adds r0, r1 - adds r0, 0x20 - ldrb r0, [r0] - adds r1, r0, 0 - cmp r1, 0xF - beq _08050738 - cmp r1, 0x48 - bne _0805075C -_08050738: - ldr r2, =gLastUsedAbility - strb r0, [r2] - ldr r1, =gBattleCommunication - movs r0, 0x2 - strb r0, [r1, 0x5] - str r4, [r5] - ldrb r1, [r2] - adds r0, r3, 0 - bl RecordAbilityBattle - b _08050762 - .pool -_0805075C: - ldr r0, [r5] - adds r0, 0x5 - str r0, [r5] -_08050762: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end atk84_jump_if_cant_sleep - - thumb_func_start atk85_stockpile -atk85_stockpile: @ 8050768 - push {r4,r5,lr} - ldr r5, =gDisableStructs - ldr r4, =gBankAttacker - ldrb r1, [r4] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r1, r0, r5 - ldrb r0, [r1, 0x9] - cmp r0, 0x3 - bne _080507A0 - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x5] - b _080507CA - .pool -_080507A0: - adds r0, 0x1 - movs r3, 0 - strb r0, [r1, 0x9] - ldr r2, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r2] - movs r0, 0x1 - strb r0, [r2, 0x1] - strb r0, [r2, 0x2] - strb r0, [r2, 0x3] - ldrb r1, [r4] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r5 - ldrb r0, [r0, 0x9] - strb r0, [r2, 0x4] - movs r0, 0xFF - strb r0, [r2, 0x5] - ldr r0, =gBattleCommunication - strb r3, [r0, 0x5] -_080507CA: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk85_stockpile - - thumb_func_start atk86_stockpiletobasedamage -atk86_stockpiletobasedamage: @ 80507E4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - ldr r3, =gBattlescriptCurrInstr - ldr r1, [r3] - ldrb r2, [r1, 0x1] - ldrb r0, [r1, 0x2] - lsls r0, 8 - orrs r2, r0 - ldrb r0, [r1, 0x3] - lsls r0, 16 - orrs r2, r0 - ldrb r0, [r1, 0x4] - lsls r0, 24 - orrs r2, r0 - ldr r7, =gDisableStructs - ldr r6, =gBankAttacker - ldrb r1, [r6] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r7 - ldrb r0, [r0, 0x9] - cmp r0, 0 - bne _08050828 - str r2, [r3] - b _080508CA - .pool -_08050828: - ldr r0, =gBattleCommunication - ldrb r0, [r0, 0x6] - cmp r0, 0x1 - beq _080508B0 - ldr r0, =gBattleMoveDamage - mov r8, r0 - ldr r4, =gSideAffecting - ldr r5, =gBankTarget - ldrb r0, [r5] - bl GetBankIdentity - movs r1, 0x1 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - ldrh r3, [r1] - ldrb r0, [r6] - movs r4, 0x58 - muls r0, r4 - ldr r2, =gBattleMons - adds r0, r2 - ldrb r1, [r5] - muls r1, r4 - adds r1, r2 - ldr r2, =gCurrentMove - ldrh r2, [r2] - movs r4, 0 - str r4, [sp] - str r4, [sp, 0x4] - ldrb r4, [r6] - str r4, [sp, 0x8] - ldrb r4, [r5] - str r4, [sp, 0xC] - bl CalculateBaseDamage - ldrb r2, [r6] - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - adds r1, r7 - ldrb r1, [r1, 0x9] - adds r3, r0, 0 - muls r3, r1 - mov r1, r8 - str r3, [r1] - ldr r2, =gBattleScripting - ldrb r1, [r6] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r7 - ldrb r0, [r0, 0x9] - strb r0, [r2, 0x18] - ldr r1, =gProtectStructs - ldrb r0, [r6] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 28 - cmp r0, 0 - bge _080508B0 - lsls r0, r3, 4 - subs r0, r3 - movs r1, 0xA - bl __divsi3 - mov r1, r8 - str r0, [r1] -_080508B0: - ldr r2, =gDisableStructs - ldr r0, =gBankAttacker - ldrb r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0 - strb r1, [r0, 0x9] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_080508CA: - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk86_stockpiletobasedamage - - thumb_func_start atk87_stockpiletohpheal -atk87_stockpiletohpheal: @ 8050904 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r7, =gBattlescriptCurrInstr - ldr r1, [r7] - ldrb r2, [r1, 0x1] - ldrb r0, [r1, 0x2] - lsls r0, 8 - orrs r2, r0 - ldrb r0, [r1, 0x3] - lsls r0, 16 - orrs r2, r0 - ldrb r0, [r1, 0x4] - lsls r0, 24 - orrs r2, r0 - ldr r0, =gDisableStructs - mov r8, r0 - ldr r6, =gBankAttacker - ldrb r3, [r6] - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - mov r1, r8 - adds r4, r0, r1 - ldrb r1, [r4, 0x9] - cmp r1, 0 - bne _08050954 - str r2, [r7] - ldr r0, =gBattleCommunication - strb r1, [r0, 0x5] - b _080509D0 - .pool -_08050954: - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r3 - adds r1, r0, r1 - ldrh r0, [r1, 0x2C] - ldrh r3, [r1, 0x28] - cmp r0, r3 - bne _08050984 - movs r0, 0 - strb r0, [r4, 0x9] - str r2, [r7] - ldr r1, =gBankTarget - ldrb r0, [r6] - strb r0, [r1] - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x5] - b _080509D0 - .pool -_08050984: - ldr r5, =gBattleMoveDamage - ldrh r0, [r1, 0x2C] - ldrb r1, [r4, 0x9] - movs r2, 0x3 - subs r2, r1 - movs r4, 0x1 - adds r1, r4, 0 - lsls r1, r2 - bl __divsi3 - str r0, [r5] - cmp r0, 0 - bne _080509A0 - str r4, [r5] -_080509A0: - ldr r0, [r5] - negs r0, r0 - str r0, [r5] - ldr r3, =gBattleScripting - ldrb r1, [r6] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r8 - ldrb r0, [r0, 0x9] - movs r2, 0 - strb r0, [r3, 0x18] - ldrb r1, [r6] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r8 - strb r2, [r0, 0x9] - ldr r0, [r7] - adds r0, 0x5 - str r0, [r7] - ldr r1, =gBankTarget - ldrb r0, [r6] - strb r0, [r1] -_080509D0: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk87_stockpiletohpheal - - thumb_func_start atk88_negativedamage -atk88_negativedamage: @ 80509E8 - push {lr} - ldr r2, =gBattleMoveDamage - ldr r0, =gUnknown_020241F4 - ldr r0, [r0] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - negs r0, r0 - str r0, [r2] - cmp r0, 0 - bne _08050A04 - movs r0, 0x1 - negs r0, r0 - str r0, [r2] -_08050A04: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atk88_negativedamage - - thumb_func_start sub_8050A1C -sub_8050A1C: @ 8050A1C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r8, r3 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 24 - lsrs r7, r1, 24 - lsls r2, 24 - lsrs r5, r2, 24 - movs r0, 0 - mov r9, r0 - mov r10, r0 - movs r0, 0x40 - ands r0, r5 - cmp r0, 0 - beq _08050A50 - ldr r0, =gActiveBank - ldr r1, =gBankAttacker - b _08050A54 - .pool -_08050A50: - ldr r0, =gActiveBank - ldr r1, =gBankTarget -_08050A54: - ldrb r1, [r1] - strb r1, [r0] - movs r0, 0xBF - ands r5, r0 - movs r0, 0x80 - ands r0, r5 - cmp r0, 0 - beq _08050A6E - mov r0, r9 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 -_08050A6E: - movs r0, 0x7F - ands r5, r0 - movs r0, 0x20 - ands r0, r5 - cmp r0, 0 - beq _08050A84 - mov r0, r10 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 -_08050A84: - movs r0, 0xDF - ands r5, r0 - ldr r1, =gBattleTextBuff1 - movs r4, 0 - movs r2, 0xFD - strb r2, [r1] - movs r0, 0x5 - strb r0, [r1, 0x1] - strb r7, [r1, 0x2] - movs r3, 0x1 - negs r3, r3 - mov r12, r3 - movs r0, 0xFF - strb r0, [r1, 0x3] - lsls r0, r6, 24 - cmp r0, 0 - blt _08050AA8 - b _08050D8C -_08050AA8: - ldr r4, =gSideTimers - ldr r1, =gActiveBank - ldrb r0, [r1] - bl GetBankIdentity - movs r1, 0x1 - ands r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _08050B48 - mov r2, r9 - cmp r2, 0 - bne _08050B48 - ldr r0, =gCurrentMove - ldrh r0, [r0] - cmp r0, 0xAE - beq _08050B78 - cmp r5, 0x1 - bne _08050B68 - ldr r4, =gSpecialStatuses - ldr r3, =gActiveBank - ldrb r0, [r3] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldrb r0, [r1] - lsls r0, 31 - cmp r0, 0 - beq _08050B10 - ldr r0, =gBattlescriptCurrInstr - mov r4, r8 - str r4, [r0] - b _08050B68 - .pool -_08050B10: - mov r0, r8 - bl b_movescr_stack_push - ldr r1, =gBattleScripting - ldr r6, =gActiveBank - ldrb r0, [r6] - strb r0, [r1, 0x17] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DAE03 - str r0, [r1] - ldrb r1, [r6] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r1, [r0] - movs r2, 0x1 - orrs r1, r2 - strb r1, [r0] - b _08050B68 - .pool -_08050B48: - ldr r0, =gCurrentMove - ldrh r0, [r0] - cmp r0, 0xAE - beq _08050B78 - mov r0, r10 - cmp r0, 0x1 - beq _08050B78 - movs r0, 0 - bl sub_80464AC - lsls r0, 24 - cmp r0, 0 - beq _08050B78 - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082D9F1C - str r0, [r1] -_08050B68: - movs r0, 0x1 - b _08050E80 - .pool -_08050B78: - ldr r2, =gBattleMons - ldr r1, =gActiveBank - ldrb r3, [r1] - movs r4, 0x58 - adds r0, r3, 0 - muls r0, r4 - adds r0, r2 - adds r0, 0x20 - ldrb r0, [r0] - mov r10, r2 - cmp r0, 0x1D - beq _08050B94 - cmp r0, 0x49 - bne _08050C2C -_08050B94: - mov r0, r9 - cmp r0, 0 - bne _08050C2C - ldr r0, =gCurrentMove - ldrh r0, [r0] - cmp r0, 0xAE - beq _08050C2C - cmp r5, 0x1 - bne _08050B68 - ldr r4, =gSpecialStatuses - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0] - lsls r0, 31 - cmp r0, 0 - beq _08050BD4 - ldr r0, =gBattlescriptCurrInstr - mov r1, r8 - str r1, [r0] - b _08050B68 - .pool -_08050BD4: - mov r0, r8 - bl b_movescr_stack_push - ldr r1, =gBattleScripting - ldr r2, =gActiveBank - ldrb r0, [r2] - strb r0, [r1, 0x17] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB5C7 - str r0, [r1] - ldr r1, =gLastUsedAbility - ldrb r0, [r2] - movs r3, 0x58 - muls r0, r3 - add r0, r10 - adds r0, 0x20 - ldrb r0, [r0] - strb r0, [r1] - ldrb r0, [r2] - ldrb r1, [r1] - bl RecordAbilityBattle - ldr r6, =gActiveBank - ldrb r1, [r6] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r1, [r0] - movs r2, 0x1 - orrs r1, r2 - strb r1, [r0] - b _08050B68 - .pool -_08050C2C: - ldr r1, =gActiveBank - ldrb r0, [r1] - movs r4, 0x58 - muls r0, r4 - add r0, r10 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x33 - bne _08050C8C - mov r2, r9 - cmp r2, 0 - bne _08050C8C - cmp r7, 0x6 - bne _08050C8C - cmp r5, 0x1 - bne _08050B68 - mov r0, r8 - bl b_movescr_stack_push - ldr r1, =gBattleScripting - ldr r3, =gActiveBank - ldrb r0, [r3] - strb r0, [r1, 0x17] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB62F - str r0, [r1] - ldr r1, =gLastUsedAbility - ldrb r0, [r3] - muls r0, r4 - add r0, r10 - adds r0, 0x20 - ldrb r0, [r0] - strb r0, [r1] - ldrb r0, [r3] - ldrb r1, [r1] - bl RecordAbilityBattle - b _08050B68 - .pool -_08050C8C: - ldr r4, =gActiveBank - ldrb r0, [r4] - movs r4, 0x58 - muls r0, r4 - add r0, r10 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x34 - bne _08050CF0 - mov r0, r9 - cmp r0, 0 - bne _08050CF0 - cmp r7, 0x1 - bne _08050CF0 - cmp r5, 0x1 - beq _08050CAE - b _08050B68 -_08050CAE: - mov r0, r8 - bl b_movescr_stack_push - ldr r1, =gBattleScripting - ldr r2, =gActiveBank - ldrb r0, [r2] - strb r0, [r1, 0x17] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB62F - str r0, [r1] - ldr r1, =gLastUsedAbility - ldrb r0, [r2] - muls r0, r4 - add r0, r10 - adds r0, 0x20 - ldrb r0, [r0] - strb r0, [r1] - ldrb r0, [r2] - ldrb r1, [r1] - bl RecordAbilityBattle - b _08050B68 - .pool -_08050CF0: - ldr r3, =gActiveBank - ldrb r1, [r3] - movs r0, 0x58 - muls r0, r1 - add r0, r10 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x13 - bne _08050D08 - cmp r5, 0 - bne _08050D08 - b _08050B68 -_08050D08: - lsls r0, r6, 24 - asrs r0, 28 - movs r1, 0x7 - ands r0, r1 - negs r0, r0 - lsls r0, 24 - ldr r3, =gBattleTextBuff2 - movs r4, 0 - movs r1, 0xFD - strb r1, [r3] - movs r2, 0x1 - lsrs r6, r0, 24 - asrs r0, 24 - subs r1, 0xFF - cmp r0, r1 - bne _08050D32 - strb r4, [r3, 0x1] - movs r0, 0xD3 - strb r0, [r3, 0x2] - strb r4, [r3, 0x3] - movs r2, 0x4 -_08050D32: - adds r0, r2, r3 - strb r4, [r0] - adds r2, 0x1 - adds r1, r2, r3 - movs r0, 0xD4 - strb r0, [r1] - adds r2, 0x1 - adds r0, r2, r3 - strb r4, [r0] - adds r2, 0x1 - adds r1, r2, r3 - movs r0, 0xFF - strb r0, [r1] - ldr r4, =gActiveBank - ldrb r2, [r4] - movs r0, 0x58 - muls r0, r2 - adds r0, r7, r0 - mov r1, r10 - adds r1, 0x18 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - beq _08050DE2 - movs r1, 0 - ldr r0, =gBankTarget - ldrb r0, [r0] - ldr r3, =gBattleCommunication - mov r8, r3 - cmp r0, r2 - bne _08050D76 - movs r1, 0x1 -_08050D76: - mov r4, r8 - strb r1, [r4, 0x5] - b _08050E10 - .pool -_08050D8C: - asrs r6, r0, 28 - movs r0, 0x7 - ands r6, r0 - ldr r3, =gBattleTextBuff2 - strb r2, [r3] - movs r2, 0x1 - cmp r6, 0x2 - bne _08050DA6 - strb r4, [r3, 0x1] - movs r0, 0xD1 - strb r0, [r3, 0x2] - strb r4, [r3, 0x3] - movs r2, 0x4 -_08050DA6: - adds r0, r2, r3 - strb r4, [r0] - adds r2, 0x1 - adds r1, r2, r3 - movs r0, 0xD2 - strb r0, [r1] - adds r2, 0x1 - adds r0, r2, r3 - strb r4, [r0] - adds r2, 0x1 - adds r1, r2, r3 - ldrb r0, [r1] - mov r2, r12 - orrs r0, r2 - strb r0, [r1] - ldr r2, =gBattleMons - ldr r4, =gActiveBank - ldrb r3, [r4] - movs r0, 0x58 - muls r0, r3 - adds r0, r7, r0 - adds r1, r2, 0 - adds r1, 0x18 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - mov r10, r2 - cmp r0, 0xC - bne _08050DFC -_08050DE2: - ldr r1, =gBattleCommunication - movs r0, 0x2 - strb r0, [r1, 0x5] - mov r8, r1 - b _08050E10 - .pool -_08050DFC: - movs r1, 0 - ldr r0, =gBankTarget - ldrb r0, [r0] - ldr r2, =gBattleCommunication - mov r8, r2 - cmp r0, r3 - bne _08050E0C - movs r1, 0x1 -_08050E0C: - mov r3, r8 - strb r1, [r3, 0x5] -_08050E10: - ldr r2, =gActiveBank - ldrb r0, [r2] - movs r4, 0x58 - adds r1, r0, 0 - muls r1, r4 - adds r1, r7, r1 - mov r3, r10 - adds r3, 0x18 - adds r1, r3 - lsls r0, r6, 24 - asrs r0, 24 - ldrb r6, [r1] - adds r0, r6 - strb r0, [r1] - ldrb r0, [r2] - muls r0, r4 - adds r0, r7, r0 - adds r1, r0, r3 - movs r0, 0 - ldrsb r0, [r1, r0] - cmp r0, 0 - bge _08050E40 - movs r0, 0 - strb r0, [r1] -_08050E40: - ldr r1, =gActiveBank - ldrb r0, [r1] - muls r0, r4 - adds r0, r7, r0 - adds r1, r0, r3 - movs r0, 0 - ldrsb r0, [r1, r0] - cmp r0, 0xC - ble _08050E56 - movs r0, 0xC - strb r0, [r1] -_08050E56: - mov r2, r8 - ldrb r0, [r2, 0x5] - cmp r0, 0x2 - bne _08050E7E - movs r3, 0x1 - ands r3, r5 - cmp r3, 0 - beq _08050E70 - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r2, 0x1 - orrs r1, r2 - strb r1, [r0] -_08050E70: - mov r4, r8 - ldrb r0, [r4, 0x5] - cmp r0, 0x2 - bne _08050E7E - cmp r3, 0 - bne _08050E7E - b _08050B68 -_08050E7E: - movs r0, 0 -_08050E80: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8050A1C - - thumb_func_start atk89_statbuffchange -atk89_statbuffchange: @ 8050EA0 - push {r4,r5,lr} - ldr r5, =gBattlescriptCurrInstr - ldr r2, [r5] - ldrb r3, [r2, 0x2] - ldrb r0, [r2, 0x3] - lsls r0, 8 - orrs r3, r0 - ldrb r0, [r2, 0x4] - lsls r0, 16 - orrs r3, r0 - ldrb r0, [r2, 0x5] - lsls r0, 24 - orrs r3, r0 - ldr r0, =gBattleScripting - ldrb r4, [r0, 0x1A] - movs r0, 0xF0 - ands r0, r4 - lsls r0, 24 - asrs r0, 24 - movs r1, 0xF - ands r1, r4 - ldrb r2, [r2, 0x1] - bl sub_8050A1C - lsls r0, 24 - cmp r0, 0 - bne _08050EDC - ldr r0, [r5] - adds r0, 0x6 - str r0, [r5] -_08050EDC: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk89_statbuffchange - - thumb_func_start atk8A_normalisebuffs -atk8A_normalisebuffs: @ 8050EEC - push {r4-r7,lr} - movs r2, 0 - ldr r0, =gNoOfAllBanks - ldrb r1, [r0] - ldr r0, =gBattlescriptCurrInstr - mov r12, r0 - cmp r2, r1 - bge _08050F24 - ldr r0, =gBattleMons - movs r4, 0x6 - adds r5, r1, 0 - movs r7, 0x58 - adds r6, r0, 0 - adds r6, 0x18 -_08050F08: - adds r3, r2, 0x1 - movs r1, 0x7 - adds r0, r2, 0 - muls r0, r7 - adds r0, r6 - adds r0, 0x7 -_08050F14: - strb r4, [r0] - subs r0, 0x1 - subs r1, 0x1 - cmp r1, 0 - bge _08050F14 - adds r2, r3, 0 - cmp r2, r5 - blt _08050F08 -_08050F24: - mov r1, r12 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk8A_normalisebuffs - - thumb_func_start atk8B_setbide -atk8B_setbide: @ 8050F40 - push {r4,r5,lr} - ldr r4, =gBattleMons - ldr r3, =gBankAttacker - ldrb r0, [r3] - movs r5, 0x58 - adds r2, r0, 0 - muls r2, r5 - adds r4, 0x50 - adds r2, r4 - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 5 - orrs r0, r1 - str r0, [r2] - ldr r1, =gUnknown_02024268 - ldrb r0, [r3] - lsls r0, 1 - adds r0, r1 - ldr r1, =gCurrentMove - ldrh r1, [r1] - movs r2, 0 - strh r1, [r0] - ldr r1, =gTakenDmg - ldrb r0, [r3] - lsls r0, 2 - adds r0, r1 - str r2, [r0] - ldrb r0, [r3] - adds r1, r0, 0 - muls r1, r5 - adds r1, r4 - ldr r0, [r1] - movs r2, 0x80 - lsls r2, 2 - orrs r0, r2 - str r0, [r1] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk8B_setbide - - thumb_func_start atk8C_confuseifrepeatingattackends -atk8C_confuseifrepeatingattackends: @ 8050FB0 - push {lr} - ldr r1, =gBattleMons - ldr r0, =gBankAttacker - ldrb r2, [r0] - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0xC0 - lsls r1, 4 - ands r0, r1 - cmp r0, 0 - bne _08050FD2 - ldr r1, =gBattleCommunication - movs r0, 0x75 - strb r0, [r1, 0x3] -_08050FD2: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atk8C_confuseifrepeatingattackends - - thumb_func_start atk8D_setmultihit_counter -atk8D_setmultihit_counter: @ 8050FF0 - push {r4,r5,lr} - ldr r0, =gBattlescriptCurrInstr - ldr r0, [r0] - ldrb r1, [r0, 0x1] - cmp r1, 0 - beq _0805100C - ldr r0, =gUnknown_02024212 - strb r1, [r0] - b _08051026 - .pool -_0805100C: - ldr r4, =gUnknown_02024212 - bl Random - movs r5, 0x3 - ands r0, r5 - strb r0, [r4] - cmp r0, 0x1 - bls _08051022 - bl Random - ands r0, r5 -_08051022: - adds r0, 0x2 - strb r0, [r4] -_08051026: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x2 - str r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk8D_setmultihit_counter - - thumb_func_start atk8E_prepare_multihit -atk8E_prepare_multihit: @ 805103C - ldr r1, =gBattleScripting - movs r2, 0 - movs r0, 0xFD - strb r0, [r1, 0x8] - movs r0, 0x1 - strb r0, [r1, 0x9] - strb r0, [r1, 0xA] - strb r0, [r1, 0xB] - strb r2, [r1, 0xC] - movs r0, 0xFF - strb r0, [r1, 0xD] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - bx lr - .pool - thumb_func_end atk8E_prepare_multihit - - thumb_func_start sub_8051064 -sub_8051064: @ 8051064 - push {r4-r7,lr} - ldr r6, =gBattleMons - ldr r7, =gBankAttacker - ldrb r0, [r7] - movs r5, 0x58 - adds r1, r0, 0 - muls r1, r5 - adds r1, r6 - adds r1, 0x2A - ldr r4, =gBankTarget - ldrb r3, [r4] - adds r0, r3, 0 - muls r0, r5 - adds r0, r6 - adds r0, 0x2A - ldrb r1, [r1] - ldrb r0, [r0] - cmp r1, r0 - bcc _080510AC - ldr r0, =gBattleStruct - ldr r1, [r0] - adds r1, r3, r1 - adds r1, 0x58 - ldr r2, =gBattlePartyID - lsls r0, r3, 1 - b _08051108 - .pool -_080510AC: - bl Random - movs r3, 0xFF - ands r3, r0 - ldrb r0, [r7] - muls r0, r5 - adds r0, r6 - adds r0, 0x2A - ldrb r2, [r0] - ldrb r4, [r4] - adds r0, r4, 0 - muls r0, r5 - adds r0, r6 - adds r0, 0x2A - ldrb r1, [r0] - adds r2, r1 - adds r0, r3, 0 - muls r0, r2 - asrs r0, 8 - adds r0, 0x1 - lsrs r1, 2 - cmp r0, r1 - bhi _080510FC - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - movs r0, 0 - b _08051116 - .pool -_080510FC: - ldr r0, =gBattleStruct - ldr r1, [r0] - adds r1, r4, r1 - adds r1, 0x58 - ldr r2, =gBattlePartyID - lsls r0, r4, 1 -_08051108: - adds r0, r2 - ldrh r0, [r0] - strb r0, [r1] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DADD8 - str r0, [r1] - movs r0, 0x1 -_08051116: - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8051064 - - thumb_func_start atk8F_forcerandomswitch -atk8F_forcerandomswitch: @ 805112C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - movs r0, 0 - str r0, [sp, 0x4] - ldr r5, =gBattleTypeFlags - ldr r0, [r5] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - bne _0805114A - b _08051410 -_0805114A: - ldr r4, =gBankTarget - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - ldr r1, =gEnemyParty - str r1, [sp] - cmp r0, 0 - bne _08051160 - ldr r0, =gPlayerParty - str r0, [sp] -_08051160: - ldr r2, [r5] - movs r1, 0x81 - lsls r1, 1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, r1 - beq _08051182 - ldr r1, =0x02000100 - adds r0, r2, 0 - ands r0, r1 - cmp r0, r1 - beq _08051182 - movs r0, 0x80 - lsls r0, 15 - ands r0, r2 - cmp r0, 0 - beq _080511C8 -_08051182: - ldr r2, =gBankTarget - ldrb r1, [r2] - movs r0, 0x2 - ands r0, r1 - adds r1, r2, 0 - cmp r0, 0 - beq _080511AC - movs r0, 0x3 - mov r9, r0 - movs r0, 0x6 - b _080511B2 - .pool -_080511AC: - movs r0, 0 - mov r9, r0 - movs r0, 0x3 -_080511B2: - mov r8, r0 - movs r0, 0x3 - mov r10, r0 - movs r0, 0x1 - str r0, [sp, 0x8] - ldr r2, =gBattlePartyID - ldrb r1, [r1] - b _0805128E - .pool -_080511C8: - movs r0, 0x42 - ands r0, r2 - cmp r0, 0x42 - beq _080511DA - ldr r1, =0x02000040 - adds r0, r2, 0 - ands r0, r1 - cmp r0, r1 - bne _0805121C -_080511DA: - ldrb r0, [r4] - bl sub_806D864 - lsls r0, 24 - lsrs r0, 24 - bl sub_806D82C - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bne _080511FC - movs r1, 0x3 - mov r9, r1 - movs r0, 0x6 - b _08051202 - .pool -_080511FC: - movs r1, 0 - mov r9, r1 - movs r0, 0x3 -_08051202: - mov r8, r0 - movs r1, 0x3 - mov r10, r1 - movs r0, 0x1 - str r0, [sp, 0x8] - ldr r2, =gBattlePartyID - ldr r0, =gBankTarget - ldrb r1, [r0] - b _0805128E - .pool -_0805121C: - movs r0, 0x80 - lsls r0, 8 - ands r0, r2 - cmp r0, 0 - beq _08051274 - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08051240 - movs r1, 0 - mov r9, r1 - movs r0, 0x6 - mov r8, r0 - mov r10, r0 - movs r1, 0x2 - b _08051260 -_08051240: - ldrb r1, [r4] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08051252 - movs r0, 0x3 - mov r9, r0 - movs r1, 0x6 - b _08051258 -_08051252: - movs r0, 0 - mov r9, r0 - movs r1, 0x3 -_08051258: - mov r8, r1 - movs r0, 0x3 - mov r10, r0 - movs r1, 0x1 -_08051260: - str r1, [sp, 0x8] - ldr r2, =gBattlePartyID - ldr r0, =gBankTarget - ldrb r1, [r0] - b _0805128E - .pool -_08051274: - movs r0, 0x1 - ands r2, r0 - cmp r2, 0 - beq _080512A4 - movs r0, 0 - mov r9, r0 - movs r1, 0x6 - mov r8, r1 - mov r10, r1 - movs r0, 0x2 - str r0, [sp, 0x8] - ldr r2, =gBattlePartyID - ldrb r1, [r4] -_0805128E: - lsls r0, r1, 1 - adds r0, r2 - ldrh r7, [r0] - movs r0, 0x2 - eors r1, r0 - lsls r1, 1 - adds r1, r2 - ldrh r5, [r1] - b _080512BE - .pool -_080512A4: - movs r1, 0 - mov r9, r1 - movs r0, 0x6 - mov r8, r0 - mov r10, r0 - movs r1, 0x1 - str r1, [sp, 0x8] - ldr r1, =gBattlePartyID - ldrb r0, [r4] - lsls r0, 1 - adds r0, r1 - ldrh r5, [r0] - adds r7, r5, 0 -_080512BE: - mov r6, r9 - cmp r6, r8 - bge _080512FC -_080512C4: - movs r0, 0x64 - muls r0, r6 - ldr r1, [sp] - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _080512F6 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _080512F6 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _080512F6 - ldr r0, [sp, 0x4] - adds r0, 0x1 - str r0, [sp, 0x4] -_080512F6: - adds r6, 0x1 - cmp r6, r8 - blt _080512C4 -_080512FC: - ldr r1, [sp, 0x4] - ldr r0, [sp, 0x8] - cmp r1, r0 - bgt _08051328 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _08051414 - .pool -_08051328: - bl sub_8051064 - lsls r0, 24 - cmp r0, 0 - beq _08051378 -_08051332: - bl Random - lsls r0, 16 - lsrs r0, 16 - mov r1, r10 - bl __modsi3 - adds r6, r0, 0 - add r6, r9 - cmp r6, r7 - beq _08051332 - cmp r6, r5 - beq _08051332 - movs r0, 0x64 - muls r0, r6 - ldr r1, [sp] - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08051332 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0x1 - beq _08051332 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _08051332 -_08051378: - ldr r4, =gBankTarget - ldrb r0, [r4] - ldr r1, =gBattleStruct - ldr r1, [r1] - adds r0, r1 - adds r0, 0x5C - strb r6, [r0] - bl sub_81B1250 - lsls r0, 24 - cmp r0, 0 - bne _08051396 - ldrb r0, [r4] - bl sub_803BDA0 -_08051396: - ldr r0, =gBattleTypeFlags - ldr r2, [r0] - movs r1, 0x81 - lsls r1, 1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, r1 - beq _080513C0 - movs r0, 0x42 - ands r0, r2 - cmp r0, 0x42 - beq _080513C0 - ldr r1, =0x02000100 - adds r0, r2, 0 - ands r0, r1 - cmp r0, r1 - beq _080513C0 - ldr r0, =0x02000040 - ands r2, r0 - cmp r2, r0 - bne _080513DE -_080513C0: - ldr r5, =gBankTarget - ldrb r0, [r5] - lsls r4, r6, 24 - lsrs r4, 24 - adds r1, r4, 0 - movs r2, 0 - bl sub_81B8E80 - ldrb r1, [r5] - movs r0, 0x2 - eors r0, r1 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_81B8E80 -_080513DE: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 15 - ands r0, r1 - cmp r0, 0 - beq _08051414 - ldr r0, =gBankTarget - ldrb r0, [r0] - lsls r1, r6, 24 - lsrs r1, 24 - bl sub_80571DC - b _08051414 - .pool -_08051410: - bl sub_8051064 -_08051414: - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end atk8F_forcerandomswitch - - thumb_func_start atk90_conversion_type_change -atk90_conversion_type_change: @ 8051424 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r6, 0 - ldr r2, =gBattleMons - ldr r3, =gBankAttacker - ldrb r1, [r3] - movs r0, 0x58 - muls r0, r1 - adds r1, r2, 0 - adds r1, 0xC - adds r0, r1 - ldrh r0, [r0] - mov r8, r2 - cmp r0, 0 - beq _08051466 - movs r5, 0x58 - adds r2, r1, 0 -_0805144C: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x3 - bhi _08051466 - lsls r1, r6, 1 - ldrb r0, [r3] - muls r0, r5 - adds r1, r0 - adds r1, r2 - ldrh r0, [r1] - cmp r0, 0 - bne _0805144C -_08051466: - movs r3, 0 - cmp r3, r6 - bcs _080514E8 - ldr r0, =gBattleMoves - mov r10, r0 - ldr r5, =gBattleMons - mov r12, r5 - ldr r7, =gBankAttacker - ldrb r0, [r7] - movs r4, 0x58 - adds r5, r0, 0 - muls r5, r4 - movs r0, 0xC - add r0, r12 - mov r9, r0 -_08051484: - lsls r0, r3, 1 - adds r0, r5 - add r0, r9 - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - add r0, r10 - ldrb r2, [r0, 0x2] - cmp r2, 0x9 - bne _080514C6 - mov r0, r8 - adds r1, r5, r0 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0x7 - beq _080514B2 - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0x7 - bne _080514C4 -_080514B2: - movs r2, 0x7 - b _080514C6 - .pool -_080514C4: - movs r2, 0 -_080514C6: - ldrb r0, [r7] - muls r0, r4 - add r0, r12 - adds r1, r0, 0 - adds r1, 0x21 - ldrb r1, [r1] - cmp r2, r1 - beq _080514DE - adds r0, 0x22 - ldrb r0, [r0] - cmp r2, r0 - bne _080514E8 -_080514DE: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, r6 - bcc _08051484 -_080514E8: - cmp r3, r6 - bne _0805150C - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _080515B0 - .pool -_0805150C: - movs r7, 0x3 - ldr r5, =gBattleMoves - mov r9, r5 -_08051512: - bl Random - adds r3, r0, 0 - ands r3, r7 - cmp r3, r6 - bcs _08051512 - ldr r4, =gBattleMons - lsls r1, r3, 1 - ldr r3, =gBankAttacker - ldrb r2, [r3] - movs r0, 0x58 - adds r5, r2, 0 - muls r5, r0 - adds r1, r5 - adds r0, r4, 0 - adds r0, 0xC - adds r1, r0 - ldrh r1, [r1] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - add r0, r9 - ldrb r2, [r0, 0x2] - mov r8, r4 - adds r4, r3, 0 - cmp r2, 0x9 - bne _08051572 - mov r0, r8 - adds r2, r5, r0 - adds r0, r2, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0x7 - beq _08051560 - adds r0, r2, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0x7 - bne _08051570 -_08051560: - movs r2, 0x7 - b _08051572 - .pool -_08051570: - movs r2, 0 -_08051572: - ldrb r0, [r4] - movs r3, 0x58 - muls r0, r3 - add r0, r8 - adds r1, r0, 0 - adds r1, 0x21 - ldrb r5, [r1] - cmp r2, r5 - beq _08051512 - adds r0, 0x22 - ldrb r0, [r0] - cmp r2, r0 - beq _08051512 - strb r2, [r1] - ldrb r0, [r4] - muls r0, r3 - add r0, r8 - adds r0, 0x22 - strb r2, [r0] - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x3 - strb r0, [r1, 0x1] - strb r2, [r1, 0x2] - movs r0, 0xFF - strb r0, [r1, 0x3] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_080515B0: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk90_conversion_type_change - - thumb_func_start atk91_givepaydaymoney -atk91_givepaydaymoney: @ 80515C8 - push {r4,lr} - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x02000002 - ands r0, r1 - cmp r0, 0 - bne _08051650 - ldr r1, =gUnknown_0202432E - ldrh r0, [r1] - cmp r0, 0 - beq _08051650 - adds r1, r0, 0 - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x4A - ldrb r0, [r0] - adds r4, r1, 0 - muls r4, r0 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - movs r1, 0x92 - lsls r1, 3 - adds r0, r1 - adds r1, r4, 0 - bl AddMoney - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x1 - strb r0, [r1, 0x1] - movs r0, 0x2 - strb r0, [r1, 0x2] - movs r0, 0x5 - strb r0, [r1, 0x3] - strb r4, [r1, 0x4] - movs r0, 0xFF - lsls r0, 8 - ands r4, r0 - lsrs r4, 8 - strb r4, [r1, 0x5] - movs r0, 0xFF - strb r0, [r1, 0x6] - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - adds r0, 0x1 - bl b_movescr_stack_push - ldr r0, =gUnknown_082DB307 - str r0, [r4] - b _08051658 - .pool -_08051650: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_08051658: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atk91_givepaydaymoney - - thumb_func_start atk92_setlightscreen -atk92_setlightscreen: @ 8051664 - push {r4-r6,lr} - ldr r5, =gBankAttacker - ldrb r0, [r5] - bl GetBankIdentity - ldr r4, =gSideAffecting - movs r6, 0x1 - adds r1, r6, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - ldrh r1, [r1] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080516A4 - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gBattleCommunication - movs r0, 0 - b _08051718 - .pool -_080516A4: - ldrb r0, [r5] - bl GetBankIdentity - adds r1, r6, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - ldrh r0, [r1] - movs r2, 0x2 - orrs r0, r2 - strh r0, [r1] - ldrb r0, [r5] - bl GetBankIdentity - ldr r4, =gSideTimers - adds r1, r6, 0 - ands r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0x5 - strb r1, [r0, 0x2] - ldrb r0, [r5] - bl GetBankIdentity - adds r1, r6, 0 - ands r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r1, [r5] - strb r1, [r0, 0x3] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ands r0, r6 - cmp r0, 0 - beq _08051714 - movs r0, 0x1 - bl CountAliveMonsInBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08051714 - ldr r1, =gBattleCommunication - movs r0, 0x4 - b _08051718 - .pool -_08051714: - ldr r1, =gBattleCommunication - movs r0, 0x3 -_08051718: - strb r0, [r1, 0x5] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atk92_setlightscreen - - thumb_func_start atk93_ko_move -atk93_ko_move: @ 8051730 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r7, =gBattleMons - ldr r6, =gBankTarget - ldrb r2, [r6] - movs r5, 0x58 - adds r0, r2, 0 - muls r0, r5 - adds r1, r0, r7 - ldrh r0, [r1, 0x2E] - cmp r0, 0xAF - bne _08051768 - ldr r1, =gEnigmaBerries - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r4, [r0, 0x7] - ldrb r6, [r0, 0x1A] - b _08051782 - .pool -_08051768: - ldrh r0, [r1, 0x2E] - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r4, r0, 24 - ldrb r0, [r6] - muls r0, r5 - adds r0, r7 - ldrh r0, [r0, 0x2E] - bl ItemId_GetHoldEffectParam - lsls r0, 24 - lsrs r6, r0, 24 -_08051782: - ldr r1, =gStringBank - ldr r5, =gBankTarget - ldrb r0, [r5] - strb r0, [r1] - cmp r4, 0x27 - bne _080517C0 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x64 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - cmp r0, r6 - bcs _080517C0 - ldrb r0, [r5] - movs r1, 0x27 - bl RecordItemEffectBattle - ldr r2, =gSpecialStatuses - ldrb r1, [r5] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r2, 0x80 - orrs r1, r2 - strb r1, [r0] -_080517C0: - ldr r1, =gBattleMons - ldr r2, =gBankTarget - ldrb r3, [r2] - movs r6, 0x58 - adds r0, r3, 0 - muls r0, r6 - adds r5, r0, r1 - adds r0, r5, 0 - adds r0, 0x20 - ldrb r4, [r0] - mov r8, r1 - mov r9, r2 - cmp r4, 0x5 - bne _0805181C - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldr r0, =gLastUsedAbility - strb r4, [r0] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB552 - str r0, [r1] - mov r1, r9 - ldrb r0, [r1] - movs r1, 0x5 - bl RecordAbilityBattle - b _08051A70 - .pool -_0805181C: - ldr r1, =gStatuses3 - lsls r0, r3, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x18 - ands r0, r1 - cmp r0, 0 - bne _080518A0 - ldr r1, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r0, [r0] - lsls r2, r0, 1 - adds r2, r0 - lsls r2, 2 - adds r2, r1 - ldr r7, =gBankAttacker - ldrb r0, [r7] - muls r0, r6 - add r0, r8 - adds r0, 0x2A - ldrb r0, [r0] - adds r1, r5, 0 - adds r1, 0x2A - ldrb r1, [r1] - subs r0, r1 - ldrb r2, [r2, 0x3] - adds r0, r2 - lsls r0, 16 - lsrs r4, r0, 16 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x64 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - adds r0, 0x1 - cmp r0, r4 - blt _08051870 - b _08051A08 -_08051870: - ldrb r0, [r7] - adds r1, r0, 0 - muls r1, r6 - add r1, r8 - adds r1, 0x2A - mov r2, r9 - ldrb r0, [r2] - muls r0, r6 - add r0, r8 - adds r0, 0x2A - ldrb r1, [r1] - movs r4, 0x1 - ldrb r0, [r0] - cmp r1, r0 - bcs _08051936 - b _08051A08 - .pool -_080518A0: - ldr r1, =gDisableStructs - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - adds r0, r1 - ldr r1, =gBankAttacker - ldrb r0, [r0, 0x15] - adds r7, r1, 0 - ldrb r3, [r7] - cmp r0, r3 - bne _080518CA - ldrb r0, [r7] - muls r0, r6 - add r0, r8 - adds r0, 0x2A - adds r1, r5, 0 - adds r1, 0x2A - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - bcs _08051942 -_080518CA: - ldr r1, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r0, [r0] - lsls r2, r0, 1 - adds r2, r0 - lsls r2, 2 - adds r2, r1 - ldr r6, =gBattleMons - ldrb r0, [r7] - movs r5, 0x58 - muls r0, r5 - adds r0, r6 - adds r0, 0x2A - ldrb r1, [r0] - ldr r0, =gBankTarget - mov r8, r0 - ldrb r0, [r0] - muls r0, r5 - adds r0, r6 - adds r0, 0x2A - ldrb r0, [r0] - subs r1, r0 - ldrb r2, [r2, 0x3] - adds r1, r2 - lsls r1, 16 - lsrs r4, r1, 16 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x64 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - adds r0, 0x1 - cmp r0, r4 - bge _08051934 - ldrb r0, [r7] - adds r1, r0, 0 - muls r1, r5 - adds r1, r6 - adds r1, 0x2A - mov r2, r8 - ldrb r0, [r2] - muls r0, r5 - adds r0, r6 - adds r0, 0x2A - ldrb r1, [r1] - movs r4, 0x1 - ldrb r0, [r0] - cmp r1, r0 - bcs _08051936 -_08051934: - movs r4, 0 -_08051936: - ldr r3, =gBattleMons - mov r8, r3 - ldr r0, =gBankTarget - mov r9, r0 - cmp r4, 0 - beq _08051A08 -_08051942: - ldr r0, =gProtectStructs - mov r1, r9 - ldrb r2, [r1] - lsls r1, r2, 4 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 30 - cmp r0, 0 - bge _08051990 - ldr r1, =gBattleMoveDamage - movs r0, 0x58 - muls r0, r2 - add r0, r8 - ldrh r0, [r0, 0x28] - subs r0, 0x1 - str r0, [r1] - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x40 - b _080519EE - .pool -_08051990: - ldr r0, =gSpecialStatuses - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1] - lsrs r0, 7 - cmp r0, 0 - beq _080519DC - ldr r1, =gBattleMoveDamage - movs r3, 0x58 - adds r0, r2, 0 - muls r0, r3 - add r0, r8 - ldrh r0, [r0, 0x28] - subs r0, 0x1 - str r0, [r1] - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gLastUsedItem - mov r2, r9 - ldrb r0, [r2] - muls r0, r3 - add r0, r8 - ldrh r0, [r0, 0x2E] - strh r0, [r1] - b _080519F2 - .pool -_080519DC: - ldr r1, =gBattleMoveDamage - movs r0, 0x58 - muls r0, r2 - add r0, r8 - ldrh r0, [r0, 0x28] - str r0, [r1] - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x10 -_080519EE: - orrs r0, r1 - strb r0, [r2] -_080519F2: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _08051A70 - .pool -_08051A08: - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldr r3, =gBattleMons - ldr r0, =gBankAttacker - ldrb r0, [r0] - movs r2, 0x58 - adds r1, r0, 0 - muls r1, r2 - adds r1, r3 - adds r1, 0x2A - ldr r0, =gBankTarget - ldrb r0, [r0] - muls r0, r2 - adds r0, r3 - adds r0, 0x2A - ldrb r1, [r1] - ldrb r0, [r0] - cmp r1, r0 - bcc _08051A50 - ldr r1, =gBattleCommunication - movs r0, 0 - b _08051A54 - .pool -_08051A50: - ldr r1, =gBattleCommunication - movs r0, 0x1 -_08051A54: - strb r0, [r1, 0x5] - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_08051A70: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk93_ko_move - - thumb_func_start atk94_gethalfcurrentenemyhp -atk94_gethalfcurrentenemyhp: @ 8051A84 - push {lr} - ldr r3, =gBattleMoveDamage - ldr r2, =gBattleMons - ldr r0, =gBankTarget - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - ldrh r0, [r0, 0x28] - lsrs r0, 1 - str r0, [r3] - cmp r0, 0 - bne _08051AA2 - movs r0, 0x1 - str r0, [r3] -_08051AA2: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atk94_gethalfcurrentenemyhp - - thumb_func_start atk95_setsandstorm -atk95_setsandstorm: @ 8051AC0 - push {lr} - ldr r2, =gBattleWeather - ldrh r1, [r2] - movs r0, 0x18 - ands r0, r1 - cmp r0, 0 - beq _08051AEC - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gBattleCommunication - movs r0, 0x2 - strb r0, [r1, 0x5] - b _08051AFE - .pool -_08051AEC: - movs r0, 0x8 - strh r0, [r2] - ldr r1, =gBattleCommunication - movs r0, 0x3 - strb r0, [r1, 0x5] - ldr r0, =gWishFutureKnock - adds r0, 0x28 - movs r1, 0x5 - strb r1, [r0] -_08051AFE: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atk95_setsandstorm - - thumb_func_start atk96_weatherdamage -atk96_weatherdamage: @ 8051B18 - push {r4,r5,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0xD - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _08051B36 - b _08051C48 -_08051B36: - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0x4D - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - beq _08051B4C - b _08051C48 -_08051B4C: - ldr r2, =gBattleWeather - ldrh r1, [r2] - movs r0, 0x18 - ands r0, r1 - adds r4, r2, 0 - ldr r5, =gBankAttacker - cmp r0, 0 - beq _08051BDA - ldr r0, =gBattleMons - ldrb r2, [r5] - movs r1, 0x58 - muls r1, r2 - adds r3, r1, r0 - adds r0, r3, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0x5 - beq _08051BD4 - cmp r0, 0x8 - beq _08051BD4 - cmp r0, 0x4 - beq _08051BD4 - adds r0, r3, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0x5 - beq _08051BD4 - cmp r0, 0x8 - beq _08051BD4 - cmp r0, 0x4 - beq _08051BD4 - adds r0, r3, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x8 - beq _08051BD4 - ldr r0, =gStatuses3 - lsls r1, r2, 2 - adds r1, r0 - ldr r1, [r1] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08051BD4 - movs r0, 0x80 - lsls r0, 11 - ands r1, r0 - cmp r1, 0 - bne _08051BD4 - ldr r1, =gBattleMoveDamage - ldrh r0, [r3, 0x2C] - lsrs r0, 4 - str r0, [r1] - cmp r0, 0 - bne _08051BDA - movs r0, 0x1 - b _08051BD8 - .pool -_08051BD4: - ldr r1, =gBattleMoveDamage - movs r0, 0 -_08051BD8: - str r0, [r1] -_08051BDA: - ldrh r1, [r4] - movs r4, 0x80 - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _08051C50 - ldr r1, =gBattleMons - ldrb r3, [r5] - movs r0, 0x58 - muls r0, r3 - adds r2, r0, r1 - adds r0, r2, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0xF - beq _08051C3C - adds r0, r2, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0xF - beq _08051C3C - ldr r0, =gStatuses3 - lsls r1, r3, 2 - adds r1, r0 - ldr r1, [r1] - adds r0, r1, 0 - ands r0, r4 - cmp r0, 0 - bne _08051C3C - movs r0, 0x80 - lsls r0, 11 - ands r1, r0 - cmp r1, 0 - bne _08051C3C - ldr r1, =gBattleMoveDamage - ldrh r0, [r2, 0x2C] - lsrs r0, 4 - str r0, [r1] - cmp r0, 0 - bne _08051C50 - movs r0, 0x1 - str r0, [r1] - b _08051C50 - .pool -_08051C3C: - ldr r1, =gBattleMoveDamage - movs r0, 0 - str r0, [r1] - b _08051C50 - .pool -_08051C48: - ldr r1, =gBattleMoveDamage - movs r0, 0 - str r0, [r1] - ldr r5, =gBankAttacker -_08051C50: - ldr r0, =gAbsentBankFlags - ldrb r1, [r0] - ldr r2, =gBitTable - ldrb r0, [r5] - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _08051C6A - ldr r1, =gBattleMoveDamage - movs r0, 0 - str r0, [r1] -_08051C6A: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atk96_weatherdamage - - thumb_func_start atk97_try_infatuation -atk97_try_infatuation: @ 8051C90 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, =gBankAttacker - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08051CC8 - ldr r1, =gBattlePartyID - ldrb r0, [r4] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r1, r0 - ldr r0, =gPlayerParty - b _08051CD8 - .pool -_08051CC8: - ldr r1, =gBattlePartyID - ldrb r0, [r4] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r1, r0 - ldr r0, =gEnemyParty -_08051CD8: - adds r5, r1, r0 - ldr r4, =gBankTarget - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08051D0C - ldr r1, =gBattlePartyID - ldrb r0, [r4] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r1, r0 - ldr r0, =gPlayerParty - b _08051D1C - .pool -_08051D0C: - ldr r1, =gBattlePartyID - ldrb r0, [r4] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r1, r0 - ldr r0, =gEnemyParty -_08051D1C: - adds r4, r1, r0 - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - mov r10, r0 - adds r0, r5, 0 - movs r1, 0 - bl GetMonData - mov r9, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - adds r0, r4, 0 - movs r1, 0 - bl GetMonData - adds r7, r0, 0 - ldr r5, =gBankTarget - ldrb r0, [r5] - movs r6, 0x58 - muls r0, r6 - ldr r1, =gBattleMons - adds r0, r1 - adds r0, 0x20 - ldrb r2, [r0] - cmp r2, 0xC - bne _08051D94 - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB5F5 - str r0, [r1] - ldr r0, =gLastUsedAbility - strb r2, [r0] - ldrb r0, [r5] - movs r1, 0xC - bl RecordAbilityBattle - b _08051E2C - .pool -_08051D94: - mov r0, r10 - mov r1, r9 - bl GetGenderFromSpeciesAndPersonality - adds r4, r0, 0 - mov r0, r8 - adds r1, r7, 0 - bl GetGenderFromSpeciesAndPersonality - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - beq _08051DE4 - ldrb r0, [r5] - muls r0, r6 - ldr r4, =gBattleMons - adds r4, 0x50 - adds r0, r4 - ldr r0, [r0] - movs r1, 0xF0 - lsls r1, 12 - ands r0, r1 - cmp r0, 0 - bne _08051DE4 - mov r0, r10 - mov r1, r9 - bl GetGenderFromSpeciesAndPersonality - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - beq _08051DE4 - mov r0, r8 - adds r1, r7, 0 - bl GetGenderFromSpeciesAndPersonality - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - bne _08051E08 -_08051DE4: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _08051E2C - .pool -_08051E08: - ldrb r0, [r5] - adds r2, r0, 0 - muls r2, r6 - adds r2, r4 - ldr r1, =gBitTable - ldr r0, =gBankAttacker - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - lsls r1, 16 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_08051E2C: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk97_try_infatuation - - thumb_func_start atk98_status_icon_update -atk98_status_icon_update: @ 8051E48 - push {r4-r7,lr} - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - bne _08051F34 - ldr r5, =gBattlescriptCurrInstr - ldr r1, [r5] - ldrb r0, [r1, 0x1] - cmp r0, 0x4 - beq _08051EA0 - bl get_battle_side_of_something - ldr r4, =gActiveBank - strb r0, [r4] - ldr r3, =gBattleMons - ldrb r1, [r4] - movs r0, 0x58 - adds r2, r1, 0 - muls r2, r0 - adds r0, r3, 0 - adds r0, 0x4C - adds r0, r2, r0 - ldr r1, [r0] - adds r3, 0x50 - adds r2, r3 - ldr r2, [r2] - movs r0, 0 - bl dp01_build_cmdbuf_x1A_aaaa_bbbb - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r0, [r5] - adds r0, 0x2 - str r0, [r5] - b _08051F34 - .pool -_08051EA0: - ldr r4, =gActiveBank - ldr r5, =gBankAttacker - ldrb r0, [r5] - strb r0, [r4] - ldr r6, =gAbsentBankFlags - ldrb r1, [r6] - ldr r7, =gBitTable - ldrb r2, [r4] - lsls r0, r2, 2 - adds r0, r7 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _08051EDC - ldr r3, =gBattleMons - movs r0, 0x58 - muls r2, r0 - adds r0, r3, 0 - adds r0, 0x4C - adds r0, r2, r0 - ldr r1, [r0] - adds r3, 0x50 - adds r2, r3 - ldr r2, [r2] - movs r0, 0 - bl dp01_build_cmdbuf_x1A_aaaa_bbbb - ldrb r0, [r4] - bl MarkBufferBankForExecution -_08051EDC: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08051F2C - ldrb r0, [r5] - bl GetBankIdentity - movs r1, 0x2 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - strb r0, [r4] - ldrb r1, [r6] - ldrb r2, [r4] - lsls r0, r2, 2 - adds r0, r7 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _08051F2C - ldr r3, =gBattleMons - movs r0, 0x58 - muls r2, r0 - adds r0, r3, 0 - adds r0, 0x4C - adds r0, r2, r0 - ldr r1, [r0] - adds r3, 0x50 - adds r2, r3 - ldr r2, [r2] - movs r0, 0 - bl dp01_build_cmdbuf_x1A_aaaa_bbbb - ldrb r0, [r4] - bl MarkBufferBankForExecution -_08051F2C: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x2 - str r0, [r1] -_08051F34: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk98_status_icon_update - - thumb_func_start atk99_setmist -atk99_setmist: @ 8051F58 - push {r4-r6,lr} - ldr r6, =gSideTimers - ldr r4, =gBankAttacker - ldrb r0, [r4] - bl GetBankIdentity - movs r5, 0x1 - adds r1, r5, 0 - ands r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _08051F98 - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x20 - orrs r0, r1 - strb r0, [r2] - ldr r0, =gBattleCommunication - strb r5, [r0, 0x5] - b _08051FE6 - .pool -_08051F98: - ldrb r0, [r4] - bl GetBankIdentity - adds r1, r5, 0 - ands r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - movs r1, 0x5 - strb r1, [r0, 0x4] - ldrb r0, [r4] - bl GetBankIdentity - adds r1, r5, 0 - ands r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - ldrb r1, [r4] - strb r1, [r0, 0x5] - ldrb r0, [r4] - bl GetBankIdentity - ldr r2, =gSideAffecting - adds r1, r5, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r2 - ldrh r2, [r1] - movs r3, 0x80 - lsls r3, 1 - adds r0, r3, 0 - movs r3, 0 - orrs r0, r2 - strh r0, [r1] - ldr r0, =gBattleCommunication - strb r3, [r0, 0x5] -_08051FE6: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atk99_setmist - - thumb_func_start atk9A_set_focusenergy -atk9A_set_focusenergy: @ 8052000 - push {lr} - ldr r1, =gBattleMons - ldr r0, =gBankAttacker - ldrb r2, [r0] - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r1, [r0] - movs r3, 0x80 - lsls r3, 13 - adds r2, r1, 0 - ands r2, r3 - cmp r2, 0 - beq _08052040 - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x20 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x5] - b _08052048 - .pool -_08052040: - orrs r1, r3 - str r1, [r0] - ldr r0, =gBattleCommunication - strb r2, [r0, 0x5] -_08052048: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atk9A_set_focusenergy - - thumb_func_start atk9B_transformdataexecution -atk9B_transformdataexecution: @ 805205C - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r1, =gUnknown_020241EC - ldr r2, =0x0000ffff - adds r0, r2, 0 - strh r0, [r1] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - ldr r7, =gBattleMons - ldr r0, =gBankTarget - mov r12, r0 - ldrb r1, [r0] - movs r6, 0x58 - adds r0, r1, 0 - muls r0, r6 - adds r5, r7, 0 - adds r5, 0x50 - adds r0, r5 - ldr r0, [r0] - movs r4, 0x80 - lsls r4, 14 - ands r0, r4 - cmp r0, 0 - bne _080520A2 - ldr r0, =gStatuses3 - lsls r1, 2 - adds r1, r0 - ldr r2, [r1] - ldr r0, =0x000400c0 - ands r2, r0 - cmp r2, 0 - beq _080520D8 -_080520A2: - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x20 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gBattleCommunication - movs r0, 0x1 - b _080521EC - .pool -_080520D8: - ldr r3, =gBankAttacker - ldrb r0, [r3] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - ldr r0, [r1] - orrs r0, r4 - str r0, [r1] - ldr r4, =gDisableStructs - ldrb r1, [r3] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r4 - strh r2, [r0, 0x4] - ldrb r0, [r3] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r4 - ldrb r2, [r1, 0xB] - movs r0, 0x10 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0xB] - ldrb r1, [r3] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r4 - mov r2, r12 - ldrb r1, [r2] - muls r1, r6 - adds r2, r7, 0 - adds r2, 0x48 - adds r1, r2 - ldr r1, [r1] - str r1, [r0] - ldrb r0, [r3] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r4 - ldrb r2, [r1, 0x18] - movs r0, 0xF - ands r0, r2 - strb r0, [r1, 0x18] - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x6 - strb r0, [r1, 0x1] - mov r2, r12 - ldrb r0, [r2] - muls r0, r6 - adds r0, r7 - ldrh r0, [r0] - strb r0, [r1, 0x2] - ldrb r0, [r2] - muls r0, r6 - adds r0, r7 - ldrh r0, [r0] - lsrs r0, 8 - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldrb r0, [r3] - muls r0, r6 - adds r5, r0, r7 - ldrb r0, [r2] - muls r0, r6 - adds r2, r0, r7 - movs r4, 0 - adds r6, r3, 0 - ldr r0, =gActiveBank - mov r8, r0 -_08052170: - adds r0, r5, r4 - adds r1, r2, r4 - ldrb r1, [r1] - strb r1, [r0] - adds r4, 0x1 - cmp r4, 0x23 - bls _08052170 - movs r4, 0 - ldr r7, =gBattleMoves - ldr r3, =gBattleMons + 0xC - adds r5, r3, 0 - adds r5, 0x18 -_08052188: - lsls r1, r4, 1 - ldrb r2, [r6] - movs r0, 0x58 - muls r2, r0 - adds r1, r2 - adds r1, r3 - ldrh r1, [r1] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r7 - ldrb r1, [r0, 0x4] - cmp r1, 0x4 - bhi _080521C4 - adds r0, r4, r2 - adds r0, r5 - b _080521CA - .pool -_080521C4: - adds r0, r4, r2 - adds r0, r5 - movs r1, 0x5 -_080521CA: - strb r1, [r0] - adds r4, 0x1 - cmp r4, 0x3 - ble _08052188 - ldrb r0, [r6] - mov r1, r8 - strb r0, [r1] - movs r0, 0 - movs r1, 0x2 - bl dp01_build_cmdbuf_x38_a - mov r2, r8 - ldrb r0, [r2] - bl MarkBufferBankForExecution - ldr r1, =gBattleCommunication - movs r0, 0 -_080521EC: - strb r0, [r1, 0x5] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk9B_transformdataexecution - - thumb_func_start atk9C_set_substitute -atk9C_set_substitute: @ 80521FC - push {r4-r7,lr} - ldr r7, =gBattleMons - ldr r6, =gBankAttacker - ldrb r0, [r6] - movs r5, 0x58 - muls r0, r5 - adds r3, r0, r7 - ldrh r0, [r3, 0x2C] - lsrs r1, r0, 2 - adds r2, r1, 0 - cmp r1, 0 - bne _08052216 - movs r2, 0x1 -_08052216: - ldrh r0, [r3, 0x28] - cmp r0, r2 - bhi _0805223C - ldr r1, =gBattleMoveDamage - movs r0, 0 - str r0, [r1] - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x5] - b _08052290 - .pool -_0805223C: - ldr r4, =gBattleMoveDamage - str r1, [r4] - cmp r1, 0 - bne _08052248 - movs r0, 0x1 - str r0, [r4] -_08052248: - ldrb r0, [r6] - adds r2, r0, 0 - muls r2, r5 - adds r3, r7, 0 - adds r3, 0x50 - adds r2, r3 - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 17 - orrs r0, r1 - str r0, [r2] - ldrb r0, [r6] - adds r1, r0, 0 - muls r1, r5 - adds r1, r3 - ldr r0, [r1] - ldr r2, =0xffff1fff - ands r0, r2 - str r0, [r1] - ldr r2, =gDisableStructs - ldrb r1, [r6] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, [r4] - movs r2, 0 - strb r1, [r0, 0xA] - ldr r0, =gBattleCommunication - strb r2, [r0, 0x5] - ldr r2, =gHitMarker - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 1 - orrs r0, r1 - str r0, [r2] -_08052290: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk9C_set_substitute - - thumb_func_start sub_80522B8 -sub_80522B8: @ 80522B8 - push {r4,r5,lr} - lsls r0, 16 - lsrs r2, r0, 16 - movs r3, 0 - ldr r0, =gUnknown_0831C3E0 - ldrh r1, [r0] - ldr r4, =0x0000fffe - adds r5, r0, 0 - cmp r1, r4 - beq _080522E0 - cmp r1, r2 - beq _080522E0 - adds r1, r5, 0 -_080522D2: - adds r1, 0x2 - adds r3, 0x1 - ldrh r0, [r1] - cmp r0, r4 - beq _080522E0 - cmp r0, r2 - bne _080522D2 -_080522E0: - lsls r0, r3, 1 - adds r0, r5 - ldrh r1, [r0] - ldr r0, =0x0000fffe - eors r1, r0 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sub_80522B8 - - thumb_func_start atk9D_copyattack -atk9D_copyattack: @ 8052300 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, =gUnknown_020241EC - ldr r1, =0x0000ffff - adds r7, r1, 0 - strh r7, [r0] - ldr r5, =gLastUsedMovesByBanks - ldr r6, =gBankTarget - ldrb r0, [r6] - lsls r0, 1 - adds r0, r5 - ldrh r0, [r0] - bl sub_80522B8 - lsls r0, 24 - cmp r0, 0 - bne _0805235A - ldr r3, =gBattleMons - ldr r2, =gBankAttacker - ldrb r1, [r2] - movs r0, 0x58 - adds r4, r1, 0 - muls r4, r0 - adds r0, r3, 0 - adds r0, 0x50 - adds r0, r4, r0 - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 14 - ands r1, r0 - mov r12, r3 - mov r9, r2 - cmp r1, 0 - bne _0805235A - ldrb r0, [r6] - lsls r0, 1 - adds r0, r5 - ldrh r1, [r0] - cmp r1, 0 - beq _0805235A - cmp r1, r7 - bne _08052394 -_0805235A: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _080524CC - .pool -_08052394: - movs r2, 0 - mov r3, r12 - adds r3, 0xC - adds r0, r4, r3 - ldrh r0, [r0] - ldr r4, =gBattlescriptCurrInstr - mov r10, r4 - cmp r0, r1 - beq _080523CE - mov r8, r3 - adds r7, r5, 0 - adds r5, r6, 0 - mov r4, r9 - movs r3, 0x58 -_080523B0: - adds r2, 0x1 - cmp r2, 0x3 - bgt _080523CE - lsls r1, r2, 1 - ldrb r0, [r4] - muls r0, r3 - adds r1, r0 - add r1, r8 - ldrb r0, [r5] - lsls r0, 1 - adds r0, r7 - ldrh r1, [r1] - ldrh r0, [r0] - cmp r1, r0 - bne _080523B0 -_080523CE: - cmp r2, 0x4 - bne _080524B0 - ldr r5, =gCurrMovePos - ldrb r1, [r5] - lsls r1, 1 - mov r2, r9 - ldrb r0, [r2] - movs r6, 0x58 - muls r0, r6 - adds r1, r0 - mov r0, r12 - adds r0, 0xC - adds r1, r0 - ldr r2, =gLastUsedMovesByBanks - ldr r3, =gBankTarget - ldrb r0, [r3] - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - strh r0, [r1] - ldr r4, =gBattleMoves - ldrb r0, [r3] - lsls r0, 1 - adds r0, r2 - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r4, [r0, 0x4] - cmp r4, 0x4 - bhi _08052438 - mov r1, r9 - ldrb r0, [r1] - muls r0, r6 - ldrb r1, [r5] - adds r0, r1 - mov r1, r12 - adds r1, 0x24 - adds r0, r1 - strb r4, [r0] - b _0805244C - .pool -_08052438: - mov r4, r9 - ldrb r0, [r4] - muls r0, r6 - ldrb r1, [r5] - adds r0, r1 - mov r1, r12 - adds r1, 0x24 - adds r0, r1 - movs r1, 0x5 - strb r1, [r0] -_0805244C: - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x2 - strb r0, [r1, 0x1] - ldrb r0, [r3] - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - strb r0, [r1, 0x2] - ldrb r0, [r3] - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - lsrs r0, 8 - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldr r1, =gDisableStructs - mov r2, r9 - ldrb r0, [r2] - lsls r2, r0, 3 - subs r2, r0 - lsls r2, 2 - adds r2, r1 - ldrb r4, [r2, 0x18] - lsrs r3, r4, 4 - ldr r1, =gBitTable - ldrb r0, [r5] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - orrs r1, r3 - lsls r1, 4 - movs r0, 0xF - ands r0, r4 - orrs r0, r1 - strb r0, [r2, 0x18] - mov r4, r10 - ldr r0, [r4] - adds r0, 0x5 - str r0, [r4] - b _080524CC - .pool -_080524B0: - mov r0, r10 - ldr r2, [r0] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - mov r2, r10 - str r1, [r2] -_080524CC: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end atk9D_copyattack - - thumb_func_start atk9E_metronome -atk9E_metronome: @ 80524DC - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r7, =gCurrentMove - movs r6, 0xB1 - lsls r6, 1 - ldr r5, =gUnknown_0831C3E0 - ldr r0, =gBattlescriptCurrInstr - mov r8, r0 -_080524EE: - bl Random - ldr r2, =0x000001ff - adds r1, r2, 0 - ands r0, r1 - adds r0, 0x1 - strh r0, [r7] - cmp r0, r6 - bhi _080524EE - movs r0, 0x3 -_08052502: - subs r0, 0x1 - cmp r0, 0 - bge _08052502 - ldr r4, =gCurrentMove - ldrh r2, [r4] - ldr r3, =0x0000ffff - subs r0, r5, 0x2 -_08052510: - adds r0, 0x2 - ldrh r1, [r0] - cmp r1, r2 - beq _0805251C - cmp r1, r3 - bne _08052510 -_0805251C: - ldr r0, =0x0000ffff - cmp r1, r0 - bne _080524EE - ldr r2, =gHitMarker - ldr r0, [r2] - ldr r1, =0xfffffbff - ands r0, r1 - str r0, [r2] - ldr r3, =gUnknown_082D86A8 - ldr r2, =gBattleMoves - ldrh r1, [r4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] - mov r1, r8 - str r0, [r1] - ldrh r0, [r4] - movs r1, 0 - bl GetMoveTarget - ldr r1, =gBankTarget - strb r0, [r1] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atk9E_metronome - - thumb_func_start atk9F_dmgtolevel -atk9F_dmgtolevel: @ 8052584 - ldr r3, =gBattleMoveDamage - ldr r2, =gBattleMons - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - adds r0, 0x2A - ldrb r0, [r0] - str r0, [r3] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - bx lr - .pool - thumb_func_end atk9F_dmgtolevel - - thumb_func_start atkA0_psywavedamageeffect -atkA0_psywavedamageeffect: @ 80525B4 - push {r4,lr} - movs r4, 0xF -_080525B8: - bl Random - adds r3, r4, 0 - ands r3, r0 - cmp r3, 0xA - bgt _080525B8 - lsls r0, r3, 2 - adds r0, r3 - lsls r3, r0, 1 - ldr r4, =gBattleMoveDamage - ldr r2, =gBattleMons - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - adds r0, 0x2A - ldrb r1, [r0] - adds r0, r3, 0 - adds r0, 0x32 - muls r0, r1 - movs r1, 0x64 - bl __divsi3 - str r0, [r4] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkA0_psywavedamageeffect - - thumb_func_start atkA1_counterdamagecalculator -atkA1_counterdamagecalculator: @ 8052608 - push {r4-r6,lr} - ldr r4, =gBankAttacker - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - lsrs r6, r0, 24 - ldr r5, =gProtectStructs - ldrb r0, [r4] - lsls r0, 4 - adds r0, r5 - ldrb r0, [r0, 0xC] - bl GetBankSide - lsls r0, 24 - lsrs r2, r0, 24 - ldrb r0, [r4] - lsls r1, r0, 4 - adds r0, r5, 0x4 - adds r0, r1, r0 - ldr r3, [r0] - cmp r3, 0 - beq _080526BC - cmp r6, r2 - beq _080526BC - ldr r6, =gBattleMons - adds r0, r1, r5 - ldrb r0, [r0, 0xC] - movs r4, 0x58 - muls r0, r4 - adds r0, r6 - ldrh r0, [r0, 0x28] - cmp r0, 0 - beq _080526BC - ldr r1, =gBattleMoveDamage - lsls r0, r3, 1 - str r0, [r1] - ldr r1, =gSideTimers - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r1, r0, r1 - ldrb r0, [r1, 0x8] - cmp r0, 0 - beq _08052690 - ldrb r1, [r1, 0x9] - adds r0, r1, 0 - muls r0, r4 - adds r0, r6 - ldrh r0, [r0, 0x28] - cmp r0, 0 - beq _08052690 - ldr r0, =gBankTarget - strb r1, [r0] - b _080526A0 - .pool -_08052690: - ldr r2, =gBankTarget - ldr r1, =gProtectStructs - ldr r0, =gBankAttacker - ldrb r0, [r0] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0, 0xC] - strb r0, [r2] -_080526A0: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _080526EC - .pool -_080526BC: - ldr r2, =gSpecialStatuses - ldr r0, =gBankAttacker - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r2, 0x20 - orrs r1, r2 - strb r1, [r0] - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_080526EC: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atkA1_counterdamagecalculator - - thumb_func_start atkA2_mirrorcoatdamagecalculator -atkA2_mirrorcoatdamagecalculator: @ 8052700 - push {r4-r6,lr} - ldr r4, =gBankAttacker - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - lsrs r6, r0, 24 - ldr r5, =gProtectStructs - ldrb r0, [r4] - lsls r0, 4 - adds r0, r5 - ldrb r0, [r0, 0xD] - bl GetBankSide - lsls r0, 24 - lsrs r2, r0, 24 - ldrb r0, [r4] - lsls r1, r0, 4 - adds r0, r5, 0 - adds r0, 0x8 - adds r0, r1, r0 - ldr r3, [r0] - cmp r3, 0 - beq _080527B4 - cmp r6, r2 - beq _080527B4 - ldr r6, =gBattleMons - adds r0, r1, r5 - ldrb r0, [r0, 0xD] - movs r4, 0x58 - muls r0, r4 - adds r0, r6 - ldrh r0, [r0, 0x28] - cmp r0, 0 - beq _080527B4 - ldr r1, =gBattleMoveDamage - lsls r0, r3, 1 - str r0, [r1] - ldr r1, =gSideTimers - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r1, r0, r1 - ldrb r0, [r1, 0x8] - cmp r0, 0 - beq _08052788 - ldrb r1, [r1, 0x9] - adds r0, r1, 0 - muls r0, r4 - adds r0, r6 - ldrh r0, [r0, 0x28] - cmp r0, 0 - beq _08052788 - ldr r0, =gBankTarget - strb r1, [r0] - b _08052798 - .pool -_08052788: - ldr r2, =gBankTarget - ldr r1, =gProtectStructs - ldr r0, =gBankAttacker - ldrb r0, [r0] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0, 0xD] - strb r0, [r2] -_08052798: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _080527E4 - .pool -_080527B4: - ldr r2, =gSpecialStatuses - ldr r0, =gBankAttacker - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r2, 0x20 - orrs r1, r2 - strb r1, [r0] - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_080527E4: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atkA2_mirrorcoatdamagecalculator - - thumb_func_start atkA3_disablelastusedattack -atkA3_disablelastusedattack: @ 80527F8 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r4, 0 - ldr r2, =gBattleMons - ldr r3, =gBankTarget - ldrb r1, [r3] - movs r0, 0x58 - muls r0, r1 - adds r7, r2, 0 - adds r7, 0xC - adds r0, r7 - ldr r5, =gLastUsedMovesByBanks - lsls r1, 1 - adds r1, r5 - ldrh r0, [r0] - mov r9, r2 - adds r6, r3, 0 - ldr r2, =gDisableStructs - mov r8, r2 - ldrh r1, [r1] - cmp r0, r1 - beq _0805284C - mov r12, r6 - movs r3, 0x58 -_0805282C: - adds r4, 0x1 - cmp r4, 0x3 - bgt _0805284C - lsls r2, r4, 1 - mov r0, r12 - ldrb r1, [r0] - adds r0, r1, 0 - muls r0, r3 - adds r2, r0 - adds r2, r7 - lsls r1, 1 - adds r1, r5 - ldrh r0, [r2] - ldrh r1, [r1] - cmp r0, r1 - bne _0805282C -_0805284C: - ldrb r1, [r6] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r8 - ldrh r0, [r0, 0x4] - cmp r0, 0 - bne _08052910 - cmp r4, 0x4 - beq _08052910 - movs r5, 0x58 - adds r0, r1, 0 - muls r0, r5 - adds r0, r4, r0 - mov r1, r9 - adds r1, 0x24 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08052910 - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x2 - strb r0, [r1, 0x1] - lsls r2, r4, 1 - ldrb r0, [r6] - muls r0, r5 - adds r0, r2, r0 - mov r3, r9 - adds r3, 0xC - adds r0, r3 - ldrh r0, [r0] - strb r0, [r1, 0x2] - ldrb r0, [r6] - muls r0, r5 - adds r0, r2, r0 - adds r0, r3 - ldrh r0, [r0] - lsrs r0, 8 - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldrb r1, [r6] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r8 - muls r1, r5 - adds r2, r1 - adds r2, r3 - ldrh r1, [r2] - strh r1, [r0, 0x4] - bl Random - ldrb r2, [r6] - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - add r1, r8 - movs r2, 0x3 - ands r2, r0 - adds r2, 0x2 - ldrb r3, [r1, 0xB] - movs r0, 0x10 - negs r0, r0 - ands r0, r3 - orrs r0, r2 - strb r0, [r1, 0xB] - ldrb r0, [r6] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - add r1, r8 - ldrb r3, [r1, 0xB] - lsls r2, r3, 28 - lsrs r2, 24 - movs r0, 0xF - ands r0, r3 - orrs r0, r2 - strb r0, [r1, 0xB] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _0805292A - .pool -_08052910: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_0805292A: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkA3_disablelastusedattack - - thumb_func_start atkA4_setencore -atkA4_setencore: @ 805293C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r5, 0 - ldr r3, =gBattleMons - ldr r4, =gBankTarget - ldrb r1, [r4] - movs r0, 0x58 - muls r0, r1 - adds r6, r3, 0 - adds r6, 0xC - adds r0, r6 - ldr r2, =gLastUsedMovesByBanks - lsls r1, 1 - adds r1, r2 - ldrh r0, [r0] - mov r10, r3 - mov r8, r2 - ldr r2, =gDisableStructs - mov r9, r2 - ldrh r1, [r1] - cmp r0, r1 - beq _08052996 - mov r12, r4 - adds r7, r6, 0 - mov r6, r8 - movs r3, 0x58 -_08052976: - adds r5, 0x1 - cmp r5, 0x3 - bgt _08052996 - lsls r2, r5, 1 - mov r0, r12 - ldrb r1, [r0] - adds r0, r1, 0 - muls r0, r3 - adds r2, r0 - adds r2, r7 - lsls r1, 1 - adds r1, r6 - ldrh r0, [r2] - ldrh r1, [r1] - cmp r0, r1 - bne _08052976 -_08052996: - ldrb r0, [r4] - lsls r0, 1 - add r0, r8 - ldrh r2, [r0] - cmp r2, 0xA5 - beq _080529AA - cmp r2, 0xE3 - beq _080529AA - cmp r2, 0x77 - bne _080529AC -_080529AA: - movs r5, 0x4 -_080529AC: - ldrb r1, [r4] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - mov r2, r9 - adds r3, r0, r2 - ldrh r0, [r3, 0x6] - cmp r0, 0 - bne _08052A44 - cmp r5, 0x4 - beq _08052A44 - movs r0, 0x58 - adds r2, r1, 0 - muls r2, r0 - adds r0, r5, r2 - mov r1, r10 - adds r1, 0x24 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08052A44 - lsls r0, r5, 1 - adds r0, r2 - subs r1, 0x18 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r3, 0x6] - ldrb r1, [r4] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r9 - strb r5, [r0, 0xC] - bl Random - ldrb r2, [r4] - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - add r1, r9 - movs r2, 0x3 - ands r2, r0 - adds r2, 0x3 - ldrb r3, [r1, 0xE] - movs r0, 0x10 - negs r0, r0 - ands r0, r3 - orrs r0, r2 - strb r0, [r1, 0xE] - ldrb r0, [r4] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - add r1, r9 - ldrb r3, [r1, 0xE] - lsls r2, r3, 28 - lsrs r2, 24 - movs r0, 0xF - ands r0, r3 - orrs r0, r2 - strb r0, [r1, 0xE] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _08052A5E - .pool -_08052A44: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_08052A5E: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkA4_setencore - - thumb_func_start atkA5_painsplitdmgcalc -atkA5_painsplitdmgcalc: @ 8052A70 - push {r4-r7,lr} - ldr r6, =gBattleMons - ldr r0, =gBankTarget - mov r12, r0 - ldrb r0, [r0] - movs r7, 0x58 - adds r2, r0, 0 - muls r2, r7 - adds r0, r6, 0 - adds r0, 0x50 - adds r0, r2, r0 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 17 - ands r0, r1 - cmp r0, 0 - bne _08052B10 - ldr r5, =gBankAttacker - ldrb r0, [r5] - muls r0, r7 - adds r0, r6 - ldrh r3, [r0, 0x28] - adds r0, r2, r6 - ldrh r1, [r0, 0x28] - adds r3, r1 - asrs r3, 1 - ldr r4, =gBattleMoveDamage - subs r1, r3 - str r1, [r4] - ldr r2, =gBattleScripting - strb r1, [r2] - movs r0, 0xFF - lsls r0, 8 - ands r0, r1 - asrs r0, 8 - strb r0, [r2, 0x1] - movs r0, 0xFF - lsls r0, 16 - ands r0, r1 - asrs r0, 16 - strb r0, [r2, 0x2] - lsrs r1, 24 - strb r1, [r2, 0x3] - ldrb r0, [r5] - muls r0, r7 - adds r0, r6 - ldrh r0, [r0, 0x28] - subs r0, r3 - str r0, [r4] - ldr r2, =gSpecialStatuses - mov r0, r12 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r2, 0x4 - adds r0, r2 - ldr r1, =0x0000ffff - str r1, [r0] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _08052B2A - .pool -_08052B10: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_08052B2A: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkA5_painsplitdmgcalc - - thumb_func_start atkA6_settypetorandomresistance -atkA6_settypetorandomresistance: @ 8052B34 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r1, =gUnknown_02024250 - ldr r4, =gBankAttacker - ldrb r0, [r4] - lsls r0, 1 - adds r2, r0, r1 - ldrh r1, [r2] - cmp r1, 0 - beq _08052B7E - ldr r0, =0x0000ffff - cmp r1, r0 - beq _08052B7E - ldrh r0, [r2] - bl sub_8052F48 - lsls r0, 24 - cmp r0, 0 - beq _08052C1C - ldr r1, =gBattleMons - ldr r2, =gUnknown_02024270 - ldrb r0, [r4] - adds r0, r2 - ldrb r2, [r0] - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 5 - ands r0, r1 - cmp r0, 0 - beq _08052C1C -_08052B7E: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _08052D08 - .pool -_08052BB4: - mov r0, r12 - strb r5, [r0] - mov r1, r10 - ldrb r0, [r1] - muls r0, r2 - adds r0, r7 - adds r0, 0x22 - strb r5, [r0] - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x3 - strb r0, [r1, 0x1] - strb r5, [r1, 0x2] - movs r0, 0xFF - strb r0, [r1, 0x3] - ldr r1, =gBattlescriptCurrInstr - b _08052C0A - .pool -_08052BE0: - mov r0, r8 - adds r0, 0x1 - adds r0, r3 - ldrb r2, [r0] - strb r2, [r4] - mov r4, r10 - ldrb r0, [r4] - muls r0, r6 - ldr r7, =gBattleMons - adds r0, r7 - adds r0, 0x22 - strb r2, [r0] - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x3 - strb r0, [r1, 0x1] - strb r2, [r1, 0x2] - movs r0, 0xFF - strb r0, [r1, 0x3] - mov r1, r12 -_08052C0A: - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _08052D08 - .pool -_08052C1C: - movs r4, 0 - mov r8, r4 - movs r7, 0x7F - mov r9, r7 -_08052C24: - bl Random - mov r4, r9 - ands r4, r0 - cmp r4, 0x70 - bhi _08052C24 - lsls r0, r4, 1 - adds r4, r0, r4 - ldr r6, =gUnknown_0831ACE8 - adds r3, r4, r6 - ldr r1, =gUnknown_02024258 - ldr r2, =gBankAttacker - ldrb r5, [r2] - lsls r0, r5, 1 - adds r0, r1 - ldrb r1, [r3] - mov r10, r2 - ldrh r0, [r0] - cmp r1, r0 - bne _08052C80 - adds r0, r4, 0x2 - adds r0, r6 - ldrb r0, [r0] - cmp r0, 0x5 - bhi _08052C80 - ldr r7, =gBattleMons - movs r2, 0x58 - adds r0, r5, 0 - muls r0, r2 - adds r3, r0, r7 - movs r0, 0x21 - adds r0, r3 - mov r12, r0 - adds r0, r4, 0x1 - adds r0, r6 - ldrb r5, [r0] - mov r1, r12 - ldrb r0, [r1] - adds r1, r5, 0 - cmp r0, r1 - beq _08052C80 - adds r0, r3, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, r1 - bne _08052BB4 -_08052C80: - movs r7, 0x1 - add r8, r7 - ldr r0, =0x000003e7 - cmp r8, r0 - ble _08052C24 - movs r0, 0 - mov r8, r0 - ldr r1, =gBattlescriptCurrInstr - mov r12, r1 - ldr r3, =gUnknown_0831ACE8 - adds r0, r4, 0x1 - adds r0, r3 - mov r9, r0 - adds r5, r3, 0 -_08052C9C: - ldrb r1, [r5] - cmp r1, 0xFF - bgt _08052CA6 - cmp r1, 0xFE - bge _08052CE0 -_08052CA6: - mov r4, r10 - ldrb r2, [r4] - lsls r0, r2, 1 - ldr r7, =gUnknown_02024258 - adds r0, r7 - ldrh r0, [r0] - cmp r1, r0 - bne _08052CE0 - ldrb r0, [r5, 0x2] - cmp r0, 0x5 - bhi _08052CE0 - movs r6, 0x58 - adds r0, r2, 0 - muls r0, r6 - ldr r1, =gBattleMons - adds r2, r0, r1 - adds r4, r2, 0 - adds r4, 0x21 - ldrb r0, [r4] - mov r7, r9 - ldrb r1, [r7] - cmp r0, r1 - beq _08052CE0 - adds r0, r2, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, r1 - beq _08052CE0 - b _08052BE0 -_08052CE0: - adds r5, 0x3 - movs r0, 0x3 - add r8, r0 - ldr r0, =0x0000014f - cmp r8, r0 - bls _08052C9C - mov r1, r12 - ldr r2, [r1] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - mov r4, r12 - str r1, [r4] -_08052D08: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkA6_settypetorandomresistance - - thumb_func_start atkA7_setalwayshitflag -atkA7_setalwayshitflag: @ 8052D34 - push {r4,lr} - ldr r4, =gStatuses3 - ldr r3, =gBankTarget - ldrb r1, [r3] - lsls r1, 2 - adds r1, r4 - ldr r0, [r1] - movs r2, 0x19 - negs r2, r2 - ands r0, r2 - str r0, [r1] - ldrb r1, [r3] - lsls r1, 2 - adds r1, r4 - ldr r0, [r1] - movs r2, 0x10 - orrs r0, r2 - str r0, [r1] - ldr r2, =gDisableStructs - ldrb r1, [r3] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, =gBankAttacker - ldrb r1, [r1] - strb r1, [r0, 0x15] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkA7_setalwayshitflag - - thumb_func_start atkA8_copymovepermanently -atkA8_copymovepermanently: @ 8052D8C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - ldr r0, =gUnknown_020241EC - ldr r1, =0x0000ffff - adds r5, r1, 0 - strh r5, [r0] - ldr r3, =gBattleMons - ldr r2, =gBankAttacker - ldrb r1, [r2] - movs r0, 0x58 - adds r4, r1, 0 - muls r4, r0 - adds r0, r3, 0 - adds r0, 0x50 - adds r0, r4, r0 - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 14 - ands r1, r0 - mov r12, r3 - mov r10, r2 - cmp r1, 0 - beq _08052DC4 - b _08052F18 -_08052DC4: - ldr r0, =gUnknown_02024240 - ldr r2, =gBankTarget - ldrb r1, [r2] - lsls r1, 1 - adds r1, r0 - ldrh r1, [r1] - mov r9, r0 - mov r8, r2 - cmp r1, 0xA5 - bne _08052DDA - b _08052F18 -_08052DDA: - cmp r1, 0 - bne _08052DE0 - b _08052F18 -_08052DE0: - cmp r1, r5 - bne _08052DE6 - b _08052F18 -_08052DE6: - cmp r1, 0xA6 - bne _08052DEC - b _08052F18 -_08052DEC: - movs r7, 0 - mov r5, r9 - mov r0, r12 - adds r0, 0xC - adds r1, r4, r0 - mov r3, r8 -_08052DF8: - ldrh r2, [r1] - cmp r2, 0xA6 - beq _08052E0A - ldrb r0, [r3] - lsls r0, 1 - adds r0, r5 - ldrh r0, [r0] - cmp r2, r0 - beq _08052E12 -_08052E0A: - adds r1, 0x2 - adds r7, 0x1 - cmp r7, 0x3 - ble _08052DF8 -_08052E12: - cmp r7, 0x4 - beq _08052E18 - b _08052F18 -_08052E18: - ldr r4, =gCurrMovePos - ldrb r1, [r4] - lsls r1, 1 - mov r2, r10 - ldrb r0, [r2] - movs r3, 0x58 - muls r0, r3 - adds r1, r0 - mov r6, r12 - adds r6, 0xC - adds r1, r6 - mov r2, r8 - ldrb r0, [r2] - lsls r0, 1 - add r0, r9 - ldrh r0, [r0] - strh r0, [r1] - mov r1, r10 - ldrb r0, [r1] - adds r2, r0, 0 - muls r2, r3 - ldrb r4, [r4] - adds r2, r4 - mov r5, r12 - adds r5, 0x24 - adds r2, r5 - ldr r4, =gBattleMoves - mov r1, r8 - ldrb r0, [r1] - lsls r0, 1 - add r0, r9 - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0, 0x4] - strb r0, [r2] - ldr r1, =gActiveBank - mov r2, r10 - ldrb r0, [r2] - strb r0, [r1] - movs r7, 0 - ldrb r0, [r2] - muls r0, r3 - adds r4, r0, r5 - adds r3, r0, 0 - add r2, sp, 0x4 - add r5, sp, 0xC -_08052E7A: - adds r0, r3, r6 - ldrh r0, [r0] - strh r0, [r2] - adds r1, r5, r7 - ldrb r0, [r4] - strb r0, [r1] - adds r4, 0x1 - adds r3, 0x2 - adds r2, 0x2 - adds r7, 0x1 - cmp r7, 0x3 - ble _08052E7A - add r2, sp, 0x4 - mov r0, r10 - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - add r0, r12 - adds r0, 0x3B - ldrb r0, [r0] - strb r0, [r2, 0xC] - str r2, [sp] - movs r0, 0 - movs r1, 0x3 - movs r2, 0 - movs r3, 0x10 - bl EmitSetAttributes - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x2 - strb r0, [r1, 0x1] - ldr r3, =gUnknown_02024240 - ldr r2, =gBankTarget - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r0, [r0] - strb r0, [r1, 0x2] - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r0, [r0] - lsrs r0, 8 - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _08052F32 - .pool -_08052F18: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_08052F32: - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkA8_copymovepermanently - - thumb_func_start sub_8052F48 -sub_8052F48: @ 8052F48 - push {lr} - lsls r0, 16 - lsrs r0, 16 - ldr r2, =gBattleMoves - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r0, [r1] - cmp r0, 0x91 - beq _08052F72 - cmp r0, 0x27 - beq _08052F72 - cmp r0, 0x4B - beq _08052F72 - cmp r0, 0x97 - beq _08052F72 - cmp r0, 0x9B - beq _08052F72 - cmp r0, 0x1A - bne _08052F7C -_08052F72: - movs r0, 0x1 - b _08052F7E - .pool -_08052F7C: - movs r0, 0 -_08052F7E: - pop {r1} - bx r1 - thumb_func_end sub_8052F48 - - thumb_func_start sub_8052F84 -sub_8052F84: @ 8052F84 - push {lr} - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _08052FA2 - cmp r1, 0xD6 - beq _08052FA2 - movs r0, 0x89 - lsls r0, 1 - cmp r1, r0 - beq _08052FA2 - cmp r1, 0x77 - beq _08052FA2 - cmp r1, 0x76 - bne _08052FA6 -_08052FA2: - movs r0, 0x1 - b _08052FA8 -_08052FA6: - movs r0, 0 -_08052FA8: - pop {r1} - bx r1 - thumb_func_end sub_8052F84 - - thumb_func_start move_weather_interaction -move_weather_interaction: @ 8052FAC - push {lr} - lsls r1, 16 - lsrs r2, r1, 16 - ldr r1, =gBattleMoves - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0] - adds r3, r1, 0 - cmp r0, 0x97 - bne _08052FD0 - ldr r0, =gBattleWeather - ldrh r1, [r0] - movs r0, 0x60 - ands r0, r1 - cmp r0, 0 - bne _08053010 -_08052FD0: - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0x91 - beq _08052FF2 - cmp r0, 0x27 - beq _08052FF2 - cmp r0, 0x4B - beq _08052FF2 - cmp r0, 0x97 - beq _08052FF2 - cmp r0, 0x9B - beq _08052FF2 - cmp r0, 0x1A - bne _08053010 -_08052FF2: - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 20 - ands r0, r1 - cmp r0, 0 - beq _08053010 - movs r0, 0x1 - b _08053012 - .pool -_08053010: - movs r0, 0x2 -_08053012: - pop {r1} - bx r1 - thumb_func_end move_weather_interaction - - thumb_func_start atkA9_sleeptalk_choose_move -atkA9_sleeptalk_choose_move: @ 8053018 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r6, 0 - movs r5, 0 - ldr r0, =gBankAttacker - mov r9, r0 - movs r1, 0x58 - mov r8, r1 - ldr r7, =gBattleMons + 0xC - movs r0, 0x84 - lsls r0, 1 - mov r10, r0 -_08053036: - lsls r4, r5, 1 - mov r1, r9 - ldrb r0, [r1] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r4, r0 - adds r0, r7 - ldrh r0, [r0] - bl sub_8052F84 - lsls r0, 24 - cmp r0, 0 - bne _08053076 - mov r1, r9 - ldrb r0, [r1] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r4, r0 - adds r0, r7 - ldrh r1, [r0] - cmp r1, r10 - beq _08053076 - cmp r1, 0xFD - beq _08053076 - adds r0, r1, 0 - bl sub_8052F48 - lsls r0, 24 - cmp r0, 0 - beq _08053084 -_08053076: - ldr r1, =gBitTable - lsls r0, r5, 2 - adds r0, r1 - ldr r0, [r0] - orrs r6, r0 - lsls r0, r6, 24 - lsrs r6, r0, 24 -_08053084: - adds r5, 0x1 - cmp r5, 0x3 - ble _08053036 - ldr r0, =gBankAttacker - ldrb r0, [r0] - adds r1, r6, 0 - movs r2, 0xFD - bl CheckMoveLimitations - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0xF - bne _080530B8 - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _0805311C - .pool -_080530B8: - movs r7, 0x3 - ldr r4, =gBitTable -_080530BC: - bl Random - adds r5, r7, 0 - ands r5, r0 - lsls r0, r5, 2 - adds r0, r4 - ldr r0, [r0] - ands r0, r6 - cmp r0, 0 - bne _080530BC - ldr r4, =gRandomMove - ldr r2, =gBattleMons - lsls r1, r5, 1 - ldr r0, =gBankAttacker - ldrb r3, [r0] - movs r0, 0x58 - muls r0, r3 - adds r1, r0 - adds r2, 0xC - adds r1, r2 - ldrh r0, [r1] - strh r0, [r4] - ldr r0, =gCurrMovePos - strb r5, [r0] - ldr r2, =gHitMarker - ldr r0, [r2] - ldr r1, =0xfffffbff - ands r0, r1 - str r0, [r2] - ldrh r0, [r4] - movs r1, 0 - bl GetMoveTarget - ldr r1, =gBankTarget - strb r0, [r1] - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_0805311C: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkA9_sleeptalk_choose_move - - thumb_func_start atkAA_set_destinybond -atkAA_set_destinybond: @ 8053150 - ldr r1, =gBattleMons - ldr r0, =gBankAttacker - ldrb r2, [r0] - movs r0, 0x58 - muls r2, r0 - adds r1, 0x50 - adds r2, r1 - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 18 - orrs r0, r1 - str r0, [r2] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - bx lr - .pool - thumb_func_end atkAA_set_destinybond - - thumb_func_start b_feature_update_destiny_bond -b_feature_update_destiny_bond: @ 8053180 - push {r4,r5,lr} - ldr r0, =gBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - lsrs r5, r0, 24 - ldr r4, =gBankTarget - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - lsrs r3, r0, 24 - ldr r1, =gBattleMons - ldrb r2, [r4] - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 18 - ands r0, r1 - cmp r0, 0 - beq _080531CA - cmp r5, r3 - beq _080531CA - ldr r2, =gHitMarker - ldr r1, [r2] - movs r0, 0x80 - lsls r0, 17 - ands r0, r1 - cmp r0, 0 - bne _080531CA - movs r0, 0x40 - orrs r1, r0 - str r1, [r2] -_080531CA: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end b_feature_update_destiny_bond - - thumb_func_start atkAB_DestinyBondFlagUpdate -atkAB_DestinyBondFlagUpdate: @ 80531E0 - push {lr} - bl b_feature_update_destiny_bond - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atkAB_DestinyBondFlagUpdate - - thumb_func_start atkAC_remaininghptopower -atkAC_remaininghptopower: @ 80531F8 - push {lr} - ldr r2, =gBattleMons - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x58 - muls r1, r0 - adds r1, r2 - movs r2, 0x28 - ldrsh r0, [r1, r2] - movs r2, 0x2C - ldrsh r1, [r1, r2] - movs r2, 0x30 - bl sub_8075034 - lsls r0, 24 - lsrs r1, r0, 24 - movs r3, 0 - ldr r0, =gUnknown_0831C408 - ldrb r2, [r0] - cmp r1, r2 - ble _08053232 - adds r2, r0, 0 -_08053224: - adds r3, 0x2 - cmp r3, 0xB - bgt _08053232 - adds r0, r3, r2 - ldrb r0, [r0] - cmp r1, r0 - bgt _08053224 -_08053232: - ldr r2, =gDynamicBasePower - ldr r1, =gUnknown_0831C408 - adds r0, r3, 0x1 - adds r0, r1 - ldrb r0, [r0] - strh r0, [r2] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atkAC_remaininghptopower - - thumb_func_start atkAD_spite_ppreduce -atkAD_spite_ppreduce: @ 8053260 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - ldr r4, =gLastUsedMovesByBanks - ldr r1, =gBankTarget - ldrb r3, [r1] - lsls r0, r3, 1 - adds r0, r4 - ldrh r2, [r0] - mov r8, r1 - cmp r2, 0 - bne _08053280 - b _08053408 -_08053280: - ldr r0, =0x0000ffff - cmp r2, r0 - bne _08053288 - b _08053408 -_08053288: - movs r7, 0 - ldr r0, =gBattleMons - movs r1, 0x58 - muls r1, r3 - adds r3, r0, 0 - adds r3, 0xC - adds r1, r3 - ldrh r1, [r1] - cmp r2, r1 - beq _080532C0 - adds r6, r4, 0 - mov r5, r8 - adds r4, r3, 0 - movs r3, 0x58 -_080532A4: - adds r7, 0x1 - cmp r7, 0x3 - bgt _080532C0 - ldrb r0, [r5] - lsls r2, r0, 1 - adds r2, r6 - lsls r1, r7, 1 - muls r0, r3 - adds r1, r0 - adds r1, r4 - ldrh r0, [r2] - ldrh r1, [r1] - cmp r0, r1 - bne _080532A4 -_080532C0: - cmp r7, 0x4 - bne _080532C6 - b _08053408 -_080532C6: - mov r4, r8 - ldrb r0, [r4] - movs r1, 0x58 - mov r9, r1 - mov r3, r9 - muls r3, r0 - adds r0, r3, 0 - adds r0, r7, r0 - ldr r1, =gBattleMons - adds r1, 0x24 - mov r10, r1 - add r0, r10 - ldrb r0, [r0] - cmp r0, 0x1 - bhi _080532E6 - b _08053408 -_080532E6: - bl Random - movs r1, 0x3 - ands r1, r0 - adds r6, r1, 0x2 - ldrb r0, [r4] - mov r3, r9 - muls r3, r0 - adds r0, r3, 0 - adds r0, r7, r0 - add r0, r10 - ldrb r0, [r0] - cmp r0, r6 - bge _08053304 - adds r6, r0, 0 -_08053304: - ldr r1, =gBattleTextBuff1 - movs r5, 0xFD - strb r5, [r1] - movs r0, 0x2 - strb r0, [r1, 0x1] - ldr r2, =gLastUsedMovesByBanks - mov r3, r8 - ldrb r0, [r3] - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - strb r0, [r1, 0x2] - ldrb r0, [r3] - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - lsrs r0, 8 - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldr r4, =gBattleTextBuff2 - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0 - movs r3, 0x1 - bl ConvertIntToDecimalStringN - strb r5, [r4] - movs r0, 0x1 - strb r0, [r4, 0x1] - strb r0, [r4, 0x2] - strb r0, [r4, 0x3] - strb r6, [r4, 0x4] - subs r0, 0x2 - strb r0, [r4, 0x5] - mov r1, r8 - ldrb r0, [r1] - mov r1, r9 - muls r1, r0 - adds r1, r7, r1 - add r1, r10 - ldrb r0, [r1] - subs r0, r6 - strb r0, [r1] - ldr r4, =gActiveBank - mov r3, r8 - ldrb r0, [r3] - strb r0, [r4] - ldr r1, =gDisableStructs - ldrb r3, [r4] - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0, 0x18] - lsrs r1, 4 - ldr r2, =gBitTable - lsls r0, r7, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _080533B8 - mov r2, r9 - muls r2, r3 - ldr r0, =gBattleMons - adds r0, 0x50 - adds r0, r2, r0 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 14 - ands r0, r1 - cmp r0, 0 - bne _080533B8 - adds r1, r7, 0 - adds r1, 0x9 - lsls r1, 24 - lsrs r1, 24 - mov r3, r10 - adds r0, r2, r3 - adds r0, r7 - str r0, [sp] - movs r0, 0 - movs r2, 0 - movs r3, 0x1 - bl EmitSetAttributes - ldrb r0, [r4] - bl MarkBufferBankForExecution -_080533B8: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - ldr r1, =gBattleMons - ldr r0, =gBankTarget - ldrb r2, [r0] - movs r0, 0x58 - muls r0, r2 - adds r0, r7, r0 - adds r1, 0x24 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _08053422 - adds r0, r2, 0 - bl CancelMultiTurnMoves - b _08053422 - .pool -_08053408: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_08053422: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkAD_spite_ppreduce - - thumb_func_start atkAE_heal_party_status -atkAE_heal_party_status: @ 8053438 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - movs r4, 0 - str r4, [sp, 0x4] - mov r8, r4 - ldr r0, =gCurrentMove - ldrh r0, [r0] - cmp r0, 0xD7 - beq _08053454 - b _0805363E -_08053454: - ldr r6, =gBattleCommunication - mov r0, r8 - strb r0, [r6, 0x5] - ldr r5, =gBankAttacker - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - ldr r1, =gEnemyParty - mov r10, r1 - cmp r0, 0 - bne _08053470 - ldr r2, =gPlayerParty - mov r10, r2 -_08053470: - ldr r4, =gBattleMons - ldrb r3, [r5] - movs r7, 0x58 - adds r2, r3, 0 - muls r2, r7 - adds r0, r2, r4 - adds r1, r0, 0 - adds r1, 0x20 - ldrb r0, [r1] - cmp r0, 0x2B - beq _080534C4 - adds r0, r4, 0 - adds r0, 0x4C - adds r0, r2, r0 - mov r1, r8 - str r1, [r0] - ldrb r0, [r5] - adds r2, r0, 0 - muls r2, r7 - adds r0, r4, 0 - adds r0, 0x50 - adds r2, r0 - ldr r0, [r2] - ldr r1, =0xf7ffffff - ands r0, r1 - str r0, [r2] - b _080534D4 - .pool -_080534C4: - ldrb r1, [r1] - adds r0, r3, 0 - bl RecordAbilityBattle - ldrb r0, [r6, 0x5] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r6, 0x5] -_080534D4: - ldr r7, =gActiveBank - ldr r0, =gBankAttacker - ldrb r0, [r0] - bl GetBankIdentity - movs r2, 0x2 - mov r9, r2 - mov r1, r9 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - ldr r1, =gBattleScripting - strb r0, [r1, 0x17] - strb r0, [r7] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0805357A - ldr r0, =gAbsentBankFlags - ldrb r2, [r0] - ldr r1, =gBitTable - ldrb r3, [r7] - lsls r0, r3, 2 - adds r0, r1 - ldr r0, [r0] - ands r2, r0 - cmp r2, 0 - bne _0805357A - ldr r5, =gBattleMons - movs r6, 0x58 - adds r4, r3, 0 - muls r4, r6 - adds r0, r4, r5 - adds r1, r0, 0 - adds r1, 0x20 - ldrb r0, [r1] - cmp r0, 0x2B - beq _08053568 - adds r0, r5, 0 - adds r0, 0x4C - adds r0, r4, r0 - str r2, [r0] - ldrb r0, [r7] - adds r2, r0, 0 - muls r2, r6 - adds r0, r5, 0 - adds r0, 0x50 - adds r2, r0 - ldr r0, [r2] - ldr r1, =0xf7ffffff - ands r0, r1 - str r0, [r2] - b _0805357A - .pool -_08053568: - ldrb r1, [r1] - adds r0, r3, 0 - bl RecordAbilityBattle - ldr r1, =gBattleCommunication - ldrb r0, [r1, 0x5] - mov r2, r9 - orrs r0, r2 - strb r0, [r1, 0x5] -_0805357A: - movs r6, 0 - ldr r7, =gBattleMons -_0805357E: - movs r0, 0x64 - adds r4, r6, 0 - muls r4, r0 - add r4, r10 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0 - movs r1, 0x2E - bl GetMonData - lsls r0, 24 - lsrs r4, r0, 24 - cmp r5, 0 - beq _08053636 - movs r0, 0xCE - lsls r0, 1 - cmp r5, r0 - beq _08053636 - ldr r2, =gBattlePartyID - ldr r0, =gBankAttacker - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r2 - ldrh r0, [r0] - cmp r0, r6 - bne _080535D0 - movs r0, 0x58 - muls r0, r1 - b _08053600 - .pool -_080535D0: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08053618 - ldr r0, =gActiveBank - ldrb r3, [r0] - lsls r0, r3, 1 - adds r0, r2 - ldrh r0, [r0] - cmp r0, r6 - bne _08053618 - ldr r0, =gAbsentBankFlags - ldrb r1, [r0] - ldr r2, =gBitTable - lsls r0, r3, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _08053618 - movs r0, 0x58 - muls r0, r3 -_08053600: - adds r0, r7 - adds r0, 0x20 - ldrb r0, [r0] - b _08053624 - .pool -_08053618: - adds r0, r5, 0 - adds r1, r4, 0 - bl GetAbilityBySpecies - lsls r0, 24 - lsrs r0, 24 -_08053624: - cmp r0, 0x2B - beq _08053636 - movs r0, 0x1 - lsls r0, r6 - mov r1, r8 - orrs r1, r0 - lsls r0, r1, 24 - lsrs r0, 24 - mov r8, r0 -_08053636: - adds r6, 0x1 - cmp r6, 0x5 - ble _0805357E - b _080536BC -_0805363E: - ldr r1, =gBattleCommunication - movs r0, 0x4 - strb r0, [r1, 0x5] - movs r2, 0x3F - mov r8, r2 - ldr r3, =gBattleMons - ldr r2, =gBankAttacker - ldrb r0, [r2] - movs r5, 0x58 - muls r0, r5 - movs r1, 0x4C - adds r1, r3 - mov r9, r1 - add r0, r9 - str r4, [r0] - ldrb r0, [r2] - adds r1, r0, 0 - muls r1, r5 - adds r7, r3, 0 - adds r7, 0x50 - adds r1, r7 - ldr r0, [r1] - ldr r6, =0xf7ffffff - ands r0, r6 - str r0, [r1] - ldrb r0, [r2] - bl GetBankIdentity - movs r1, 0x2 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - ldr r4, =gActiveBank - strb r0, [r4] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080536BC - ldr r0, =gAbsentBankFlags - ldrb r2, [r0] - ldr r1, =gBitTable - ldrb r3, [r4] - lsls r0, r3, 2 - adds r0, r1 - ldr r0, [r0] - ands r2, r0 - cmp r2, 0 - bne _080536BC - adds r0, r3, 0 - muls r0, r5 - add r0, r9 - str r2, [r0] - ldrb r0, [r4] - adds r1, r0, 0 - muls r1, r5 - adds r1, r7 - ldr r0, [r1] - ands r0, r6 - str r0, [r1] -_080536BC: - mov r2, r8 - cmp r2, 0 - beq _080536DE - ldr r4, =gActiveBank - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r4] - add r0, sp, 0x4 - str r0, [sp] - movs r0, 0 - movs r1, 0x28 - movs r3, 0x4 - bl EmitSetAttributes - ldrb r0, [r4] - bl MarkBufferBankForExecution -_080536DE: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - 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 atkAE_heal_party_status - - thumb_func_start atkAF_cursetarget -atkAF_cursetarget: @ 805371C - push {r4,r5,lr} - ldr r5, =gBattleMons - ldr r0, =gBankTarget - ldrb r0, [r0] - movs r4, 0x58 - adds r1, r0, 0 - muls r1, r4 - adds r0, r5, 0 - adds r0, 0x50 - adds r1, r0 - ldr r2, [r1] - movs r3, 0x80 - lsls r3, 21 - adds r0, r2, 0 - ands r0, r3 - cmp r0, 0 - beq _08053768 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _0805378C - .pool -_08053768: - orrs r2, r3 - str r2, [r1] - ldr r1, =gBattleMoveDamage - ldr r0, =gBankAttacker - ldrb r0, [r0] - muls r0, r4 - adds r0, r5 - ldrh r0, [r0, 0x2C] - lsrs r0, 1 - str r0, [r1] - cmp r0, 0 - bne _08053784 - movs r0, 0x1 - str r0, [r1] -_08053784: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_0805378C: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atkAF_cursetarget - - thumb_func_start atkB0_set_spikes -atkB0_set_spikes: @ 80537A0 - push {r4,lr} - ldr r4, =gBankAttacker - ldrb r0, [r4] - bl GetBankSide - movs r1, 0x1 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gSideTimers - lsls r2, r0, 1 - adds r0, r2, r0 - lsls r0, 2 - adds r3, r0, r1 - ldrb r0, [r3, 0xA] - cmp r0, 0x3 - bne _08053804 - ldr r2, =gSpecialStatuses - ldrb r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r2, 0x20 - orrs r1, r2 - strb r1, [r0] - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _0805381E - .pool -_08053804: - ldr r1, =gSideAffecting - adds r1, r2, r1 - ldrh r2, [r1] - movs r0, 0x10 - orrs r0, r2 - strh r0, [r1] - ldrb r0, [r3, 0xA] - adds r0, 0x1 - strb r0, [r3, 0xA] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_0805381E: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkB0_set_spikes - - thumb_func_start atkB1_set_foresight -atkB1_set_foresight: @ 805382C - ldr r1, =gBattleMons - ldr r0, =gBankTarget - ldrb r2, [r0] - movs r0, 0x58 - muls r2, r0 - adds r1, 0x50 - adds r2, r1 - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 22 - orrs r0, r1 - str r0, [r2] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - bx lr - .pool - thumb_func_end atkB1_set_foresight - - thumb_func_start atkB2_setperishsong -atkB2_setperishsong: @ 805385C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - movs r6, 0 - movs r3, 0 - ldr r0, =gNoOfAllBanks - adds r7, r0, 0 - ldr r0, =gBankAttacker - mov r8, r0 - ldrb r1, [r7] - cmp r6, r1 - bge _080538C8 - movs r5, 0x20 - ldr r0, =gBattleMons - mov r12, r0 - ldr r0, =gDisableStructs - adds r4, r0, 0 - adds r4, 0xF - ldr r2, =gStatuses3 -_08053884: - ldr r1, [r2] - adds r0, r1, 0 - ands r0, r5 - cmp r0, 0 - bne _0805389C - movs r0, 0x58 - muls r0, r3 - add r0, r12 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x2B - bne _080538B4 -_0805389C: - adds r6, 0x1 - b _080538BC - .pool -_080538B4: - orrs r1, r5 - str r1, [r2] - movs r0, 0x33 - strb r0, [r4] -_080538BC: - adds r4, 0x1C - adds r2, 0x4 - adds r3, 0x1 - ldrb r0, [r7] - cmp r3, r0 - blt _08053884 -_080538C8: - mov r1, r8 - ldrb r0, [r1] - bl sub_803F67C - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r6, r0 - bne _080538FC - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _08053904 - .pool -_080538FC: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_08053904: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkB2_setperishsong - - thumb_func_start atkB3_rolloutdamagecalculation -atkB3_rolloutdamagecalculation: @ 8053914 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - beq _08053948 - ldr r0, =gBankAttacker - ldrb r0, [r0] - bl CancelMultiTurnMoves - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082D8A60 - str r0, [r1] - b _08053A60 - .pool -_08053948: - ldr r2, =gBattleMons - ldr r1, =gBankAttacker - ldrb r3, [r1] - movs r5, 0x58 - adds r0, r3, 0 - muls r0, r5 - adds r4, r2, 0 - adds r4, 0x50 - adds r0, r4 - ldr r0, [r0] - movs r7, 0x80 - lsls r7, 5 - ands r0, r7 - adds r6, r1, 0 - mov r9, r2 - ldr r1, =gDisableStructs - mov r12, r1 - ldr r2, =gCurrentMove - mov r8, r2 - cmp r0, 0 - bne _080539BA - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - add r0, r12 - ldrb r2, [r0, 0x11] - movs r1, 0x10 - negs r1, r1 - ands r1, r2 - movs r2, 0x5 - orrs r1, r2 - strb r1, [r0, 0x11] - ldrb r1, [r6] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r12 - ldrb r2, [r0, 0x11] - movs r1, 0xF - ands r1, r2 - movs r2, 0x50 - orrs r1, r2 - strb r1, [r0, 0x11] - ldrb r0, [r6] - adds r1, r0, 0 - muls r1, r5 - adds r1, r4 - ldr r0, [r1] - orrs r0, r7 - str r0, [r1] - ldr r1, =gUnknown_02024268 - ldrb r0, [r6] - lsls r0, 1 - adds r0, r1 - mov r2, r8 - ldrh r1, [r2] - strh r1, [r0] -_080539BA: - ldrb r0, [r6] - lsls r2, r0, 3 - subs r2, r0 - lsls r2, 2 - add r2, r12 - ldrb r3, [r2, 0x11] - lsls r1, r3, 28 - lsrs r1, 28 - subs r1, 0x1 - movs r0, 0xF - ands r1, r0 - movs r0, 0x10 - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x11] - cmp r1, 0 - bne _080539EE - ldrb r0, [r6] - adds r1, r0, 0 - muls r1, r5 - adds r1, r4 - ldr r0, [r1] - ldr r2, =0xffffefff - ands r0, r2 - str r0, [r1] -_080539EE: - ldr r3, =gDynamicBasePower - ldr r2, =gBattleMoves - mov r0, r8 - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x1] - strh r0, [r3] - movs r2, 0x1 - ldrb r1, [r6] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - mov r1, r12 - adds r4, r0, r1 - ldrb r0, [r4, 0x11] - lsls r0, 28 - lsrs r0, 28 - movs r1, 0x5 - subs r1, r0 - ldr r7, =gBattlescriptCurrInstr - adds r5, r3, 0 - cmp r2, r1 - bge _08053A3C - adds r1, r5, 0 - adds r3, r4, 0 - movs r4, 0x5 -_08053A28: - ldrh r0, [r1] - lsls r0, 1 - strh r0, [r1] - adds r2, 0x1 - ldrb r0, [r3, 0x11] - lsls r0, 28 - lsrs r0, 28 - subs r0, r4, r0 - cmp r2, r0 - blt _08053A28 -_08053A3C: - ldrb r1, [r6] - movs r0, 0x58 - muls r0, r1 - mov r1, r9 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 23 - ands r0, r1 - cmp r0, 0 - beq _08053A5A - ldrh r0, [r5] - lsls r0, 1 - strh r0, [r5] -_08053A5A: - ldr r0, [r7] - adds r0, 0x1 - str r0, [r7] -_08053A60: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkB3_rolloutdamagecalculation - - thumb_func_start atkB4_jumpifconfusedandstatmaxed -atkB4_jumpifconfusedandstatmaxed: @ 8053A90 - push {r4,r5,lr} - ldr r5, =gBattleMons - ldr r0, =gBankTarget - ldrb r1, [r0] - movs r0, 0x58 - adds r3, r1, 0 - muls r3, r0 - adds r0, r5, 0 - adds r0, 0x50 - adds r0, r3, r0 - ldr r0, [r0] - movs r1, 0x7 - ands r0, r1 - ldr r4, =gBattlescriptCurrInstr - cmp r0, 0 - beq _08053AEC - ldr r2, [r4] - ldrb r0, [r2, 0x1] - adds r0, r3 - adds r1, r5, 0 - adds r1, 0x18 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0xC - bne _08053AEC - ldrb r1, [r2, 0x2] - ldrb r0, [r2, 0x3] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x5] - lsls r0, 24 - orrs r1, r0 - str r1, [r4] - b _08053AF2 - .pool -_08053AEC: - ldr r0, [r4] - adds r0, 0x6 - str r0, [r4] -_08053AF2: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end atkB4_jumpifconfusedandstatmaxed - - thumb_func_start atkB5_furycuttercalc -atkB5_furycuttercalc: @ 8053AF8 - push {r4,r5,lr} - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - beq _08053B34 - ldr r2, =gDisableStructs - ldr r0, =gBankAttacker - ldrb r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0 - strb r1, [r0, 0x10] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082D8A60 - str r0, [r1] - b _08053B8C - .pool -_08053B34: - ldr r5, =gDisableStructs - ldr r4, =gBankAttacker - ldrb r1, [r4] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r1, r0, r5 - ldrb r0, [r1, 0x10] - cmp r0, 0x5 - beq _08053B4C - adds r0, 0x1 - strb r0, [r1, 0x10] -_08053B4C: - ldr r3, =gDynamicBasePower - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x1] - strh r0, [r3] - movs r2, 0x1 - ldrb r1, [r4] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r4, =gBattlescriptCurrInstr - ldrb r1, [r0, 0x10] - cmp r2, r1 - bge _08053B86 - adds r1, r3, 0 - adds r3, r0, 0 -_08053B78: - ldrh r0, [r1] - lsls r0, 1 - strh r0, [r1] - adds r2, 0x1 - ldrb r0, [r3, 0x10] - cmp r2, r0 - blt _08053B78 -_08053B86: - ldr r0, [r4] - adds r0, 0x1 - str r0, [r4] -_08053B8C: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atkB5_furycuttercalc - - thumb_func_start atkB6_happinesstodamagecalculation -atkB6_happinesstodamagecalculation: @ 8053BAC - push {r4,lr} - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0x79 - bne _08053BEC - ldr r4, =gDynamicBasePower - ldr r2, =gBattleMons - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - adds r0, 0x2B - ldrb r1, [r0] - b _08053C02 - .pool -_08053BEC: - ldr r4, =gDynamicBasePower - ldr r2, =gBattleMons - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - adds r0, 0x2B - ldrb r0, [r0] - movs r1, 0xFF - subs r1, r0 -_08053C02: - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 1 - movs r1, 0x19 - bl __divsi3 - strh r0, [r4] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkB6_happinesstodamagecalculation - - thumb_func_start atkB7_presentdamagecalculation -atkB7_presentdamagecalculation: @ 8053C30 - push {r4,lr} - bl Random - movs r4, 0xFF - ands r4, r0 - cmp r4, 0x65 - bgt _08053C4C - ldr r1, =gDynamicBasePower - movs r0, 0x28 - strh r0, [r1] - b _08053C8E - .pool -_08053C4C: - cmp r4, 0xB1 - bgt _08053C5C - ldr r1, =gDynamicBasePower - movs r0, 0x50 - strh r0, [r1] - b _08053C8E - .pool -_08053C5C: - cmp r4, 0xCB - bgt _08053C6C - ldr r1, =gDynamicBasePower - movs r0, 0x78 - strh r0, [r1] - b _08053C8E - .pool -_08053C6C: - ldr r3, =gBattleMoveDamage - ldr r2, =gBattleMons - ldr r0, =gBankTarget - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - ldrh r0, [r0, 0x2C] - lsrs r0, 2 - str r0, [r3] - cmp r0, 0 - bne _08053C88 - movs r0, 0x1 - str r0, [r3] -_08053C88: - ldr r0, [r3] - negs r0, r0 - str r0, [r3] -_08053C8E: - cmp r4, 0xCB - bgt _08053CAC - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082D8A30 - b _08053CE6 - .pool -_08053CAC: - ldr r2, =gBattleMons - ldr r0, =gBankTarget - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - ldrh r1, [r0, 0x2C] - ldrh r0, [r0, 0x28] - cmp r1, r0 - bne _08053CD8 - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082D9EFB - b _08053CE6 - .pool -_08053CD8: - ldr r2, =gBattleMoveFlags - ldrb r1, [r2] - movs r0, 0xF7 - ands r0, r1 - strb r0, [r2] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082D9EE1 -_08053CE6: - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkB7_presentdamagecalculation - - thumb_func_start atkB8_set_safeguard -atkB8_set_safeguard: @ 8053CFC - push {r4-r7,lr} - ldr r7, =gBankAttacker - ldrb r0, [r7] - bl GetBankIdentity - ldr r4, =gSideAffecting - movs r6, 0x1 - adds r1, r6, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - ldrh r1, [r1] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08053D40 - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gBattleCommunication - movs r0, 0 - strb r0, [r1, 0x5] - b _08053D88 - .pool -_08053D40: - ldrb r0, [r7] - bl GetBankIdentity - adds r1, r6, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - ldrh r0, [r1] - movs r2, 0x20 - orrs r0, r2 - strh r0, [r1] - ldrb r0, [r7] - bl GetBankIdentity - ldr r5, =gSideTimers - adds r1, r6, 0 - ands r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - movs r4, 0x5 - strb r4, [r0, 0x6] - ldrb r0, [r7] - bl GetBankIdentity - adds r1, r6, 0 - ands r1, r0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrb r1, [r7] - strb r1, [r0, 0x7] - ldr r0, =gBattleCommunication - strb r4, [r0, 0x5] -_08053D88: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkB8_set_safeguard - - thumb_func_start atkB9_magnitudedamagecalculation -atkB9_magnitudedamagecalculation: @ 8053DA4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x64 - bl __umodsi3 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x4 - bgt _08053DD0 - ldr r1, =gDynamicBasePower - movs r0, 0xA - strh r0, [r1] - movs r3, 0x4 - b _08053E3C - .pool -_08053DD0: - cmp r3, 0xE - bgt _08053DE4 - ldr r1, =gDynamicBasePower - movs r0, 0x1E - strh r0, [r1] - movs r3, 0x5 - b _08053E3C - .pool -_08053DE4: - cmp r3, 0x22 - bgt _08053DF8 - ldr r1, =gDynamicBasePower - movs r0, 0x32 - strh r0, [r1] - movs r3, 0x6 - b _08053E3C - .pool -_08053DF8: - cmp r3, 0x40 - bgt _08053E0C - ldr r1, =gDynamicBasePower - movs r0, 0x46 - strh r0, [r1] - movs r3, 0x7 - b _08053E3C - .pool -_08053E0C: - cmp r3, 0x54 - bgt _08053E20 - ldr r1, =gDynamicBasePower - movs r0, 0x5A - strh r0, [r1] - movs r3, 0x8 - b _08053E3C - .pool -_08053E20: - cmp r3, 0x5E - bgt _08053E34 - ldr r1, =gDynamicBasePower - movs r0, 0x6E - strh r0, [r1] - movs r3, 0x9 - b _08053E3C - .pool -_08053E34: - ldr r1, =gDynamicBasePower - movs r0, 0x96 - strh r0, [r1] - movs r3, 0xA -_08053E3C: - ldr r1, =gBattleTextBuff1 - movs r2, 0 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x1 - strb r0, [r1, 0x1] - strb r0, [r1, 0x2] - movs r0, 0x2 - strb r0, [r1, 0x3] - strb r3, [r1, 0x4] - movs r0, 0xFF - strb r0, [r1, 0x5] - ldr r1, =gBankTarget - strb r2, [r1] - ldr r0, =gNoOfAllBanks - ldrb r3, [r0] - adds r6, r1, 0 - ldr r0, =gBattlescriptCurrInstr - mov r8, r0 - cmp r2, r3 - bcs _08053E94 - adds r4, r6, 0 - ldr r0, =gBankAttacker - ldrb r5, [r0] - ldr r1, =gBitTable - mov r12, r1 - ldr r7, =gAbsentBankFlags -_08053E72: - ldrb r2, [r4] - cmp r2, r5 - beq _08053E88 - ldrb r0, [r7] - ldrb r1, [r6] - lsls r1, 2 - add r1, r12 - ldr r1, [r1] - ands r0, r1 - cmp r0, 0 - beq _08053E94 -_08053E88: - adds r0, r2, 0x1 - strb r0, [r4] - lsls r0, 24 - lsrs r0, 24 - cmp r0, r3 - bcc _08053E72 -_08053E94: - mov r1, r8 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkB9_magnitudedamagecalculation - - thumb_func_start atkBA_jumpifnopursuitswitchdmg -atkBA_jumpifnopursuitswitchdmg: @ 8053EC8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, =gUnknown_02024212 - ldrb r0, [r0] - cmp r0, 0x1 - bne _08053EF8 - ldr r0, =gBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08053EF4 - movs r0, 0x1 - b _08053F12 - .pool -_08053EF4: - movs r0, 0 - b _08053F12 -_08053EF8: - ldr r0, =gBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08053F10 - movs r0, 0x3 - b _08053F12 - .pool -_08053F10: - movs r0, 0x2 -_08053F12: - bl GetBankByPlayerAI - ldr r1, =gBankTarget - strb r0, [r1] - ldr r0, =gUnknown_0202421C - ldr r1, =gBankTarget - ldrb r3, [r1] - adds r0, r3, r0 - ldrb r0, [r0] - cmp r0, 0 - beq _08053F2A - b _08054030 -_08053F2A: - ldr r5, =gBankAttacker - ldr r0, =gBattleStruct - ldr r1, [r0] - adds r1, r3, r1 - ldrb r2, [r5] - ldrb r1, [r1, 0xC] - cmp r2, r1 - bne _08054030 - ldr r4, =gBattleMons - movs r2, 0x58 - adds r0, r3, 0 - muls r0, r2 - adds r1, r4, 0 - adds r1, 0x4C - adds r0, r1 - ldr r0, [r0] - movs r1, 0x27 - ands r0, r1 - cmp r0, 0 - bne _08054030 - ldrb r0, [r5] - muls r0, r2 - adds r0, r4 - ldrh r0, [r0, 0x28] - cmp r0, 0 - beq _08054030 - ldr r0, =gDisableStructs - lsls r1, r3, 3 - subs r1, r3 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0x18] - lsls r0, 31 - cmp r0, 0 - bne _08054030 - ldr r0, =gChosenMovesByBanks - lsls r1, r3, 1 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0xE4 - bne _08054030 - movs r1, 0 - ldr r0, =gNoOfAllBanks - ldr r2, =gCurrentMove - mov r8, r2 - ldr r7, =gCurrMovePos - mov r10, r7 - ldr r2, =gUnknown_020241E9 - mov r9, r2 - ldr r7, =gHitMarker - mov r12, r7 - ldrb r2, [r0] - cmp r1, r2 - bge _08053FB6 - ldr r6, =gTurnOrder - ldr r5, =gBankTarget - ldr r4, =gUnknown_0202407A - movs r3, 0xB - adds r2, r0, 0 -_08053FA0: - adds r0, r1, r6 - ldrb r0, [r0] - ldrb r7, [r5] - cmp r0, r7 - bne _08053FAE - adds r0, r1, r4 - strb r3, [r0] -_08053FAE: - adds r1, 0x1 - ldrb r0, [r2] - cmp r1, r0 - blt _08053FA0 -_08053FB6: - movs r0, 0xE4 - mov r1, r8 - strh r0, [r1] - ldr r2, =gBankTarget - ldrb r0, [r2] - ldr r7, =gBattleStruct - ldr r1, [r7] - adds r0, r1 - adds r0, 0x80 - ldrb r0, [r0] - mov r1, r9 - strb r0, [r1] - mov r2, r10 - strb r0, [r2] - ldr r7, =gBattlescriptCurrInstr - ldr r0, [r7] - adds r0, 0x5 - str r0, [r7] - movs r0, 0x1 - ldr r1, =gBattleScripting - strb r0, [r1, 0x18] - mov r2, r12 - ldr r0, [r2] - ldr r1, =0xfffffbff - ands r0, r1 - str r0, [r2] - b _0805404A - .pool -_08054030: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_0805404A: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkBA_jumpifnopursuitswitchdmg - - thumb_func_start atkBB_setsunny -atkBB_setsunny: @ 805405C - push {lr} - ldr r2, =gBattleWeather - ldrh r1, [r2] - movs r0, 0x60 - ands r0, r1 - cmp r0, 0 - beq _08054088 - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gBattleCommunication - movs r0, 0x2 - strb r0, [r1, 0x5] - b _0805409A - .pool -_08054088: - movs r0, 0x20 - strh r0, [r2] - ldr r1, =gBattleCommunication - movs r0, 0x4 - strb r0, [r1, 0x5] - ldr r0, =gWishFutureKnock - adds r0, 0x28 - movs r1, 0x5 - strb r1, [r0] -_0805409A: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atkBB_setsunny - - thumb_func_start atkBC_maxattackhalvehp -atkBC_maxattackhalvehp: @ 80540B4 - push {r4,r5,lr} - ldr r5, =gBattleMons - ldr r4, =gBankAttacker - ldrb r0, [r4] - movs r3, 0x58 - muls r0, r3 - adds r2, r0, r5 - ldrh r0, [r2, 0x2C] - lsrs r1, r0, 1 - cmp r1, 0 - bne _080540CC - movs r1, 0x1 -_080540CC: - movs r0, 0x19 - ldrsb r0, [r2, r0] - cmp r0, 0xB - bgt _08054110 - ldrh r0, [r2, 0x28] - cmp r0, r1 - bls _08054110 - movs r0, 0xC - strb r0, [r2, 0x19] - ldr r1, =gBattleMoveDamage - ldrb r0, [r4] - muls r0, r3 - adds r0, r5 - ldrh r0, [r0, 0x2C] - lsrs r0, 1 - str r0, [r1] - cmp r0, 0 - bne _080540F4 - movs r0, 0x1 - str r0, [r1] -_080540F4: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _0805412A - .pool -_08054110: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_0805412A: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atkBC_maxattackhalvehp - - thumb_func_start atkBD_copyfoestats -atkBD_copyfoestats: @ 8054134 - push {r4-r7,lr} - movs r2, 0 - ldr r7, =gBattlescriptCurrInstr - ldr r6, =gBankAttacker - movs r4, 0x58 - ldr r3, =gBattleMons + 0x18 - ldr r5, =gBankTarget -_08054142: - ldrb r0, [r6] - adds r1, r0, 0 - muls r1, r4 - adds r1, r2, r1 - adds r1, r3 - ldrb r0, [r5] - muls r0, r4 - adds r0, r2, r0 - adds r0, r3 - ldrb r0, [r0] - strb r0, [r1] - adds r2, 0x1 - cmp r2, 0x7 - ble _08054142 - ldr r0, [r7] - adds r0, 0x5 - str r0, [r7] - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkBD_copyfoestats - - thumb_func_start atkBE_breakfree -atkBE_breakfree: @ 805417C - push {r4-r6,lr} - ldr r1, =gBattleMons - ldr r5, =gBankAttacker - ldrb r2, [r5] - movs r6, 0x58 - adds r0, r2, 0 - muls r0, r6 - adds r4, r1, 0 - adds r4, 0x50 - adds r0, r4 - ldr r0, [r0] - movs r1, 0xE0 - lsls r1, 8 - ands r0, r1 - cmp r0, 0 - beq _08054210 - ldr r1, =gBattleScripting - ldr r3, =gBankTarget - ldrb r0, [r3] - strb r0, [r1, 0x17] - ldrb r0, [r5] - adds r1, r0, 0 - muls r1, r6 - adds r1, r4 - ldr r0, [r1] - ldr r2, =0xffff1fff - ands r0, r2 - str r0, [r1] - ldrb r0, [r5] - ldr r1, =gBattleStruct - ldr r2, [r1] - adds r0, r2 - ldrb r0, [r0, 0x14] - strb r0, [r3] - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x2 - strb r0, [r1, 0x1] - ldrb r0, [r5] - lsls r0, 1 - adds r0, r2 - ldrb r0, [r0, 0x4] - strb r0, [r1, 0x2] - ldrb r0, [r5] - lsls r0, 1 - adds r0, r2 - ldrb r0, [r0, 0x5] - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - bl b_movescr_stack_push_cursor - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DAFC5 - b _080542BA - .pool -_08054210: - ldr r4, =gStatuses3 - lsls r0, r2, 2 - adds r3, r0, r4 - ldr r1, [r3] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08054250 - movs r0, 0x5 - negs r0, r0 - ands r1, r0 - str r1, [r3] - ldrb r1, [r5] - lsls r1, 2 - adds r1, r4 - ldr r0, [r1] - movs r2, 0x4 - negs r2, r2 - ands r0, r2 - str r0, [r1] - bl b_movescr_stack_push_cursor - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DAFD6 - b _080542BA - .pool -_08054250: - adds r0, r2, 0 - bl GetBankSide - ldr r4, =gSideAffecting - lsls r0, 24 - lsrs r0, 23 - adds r0, r4 - ldrh r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080542B4 - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - lsrs r0, 23 - adds r0, r4 - ldrh r2, [r0] - ldr r1, =0x0000ffef - ands r1, r2 - movs r4, 0 - strh r1, [r0] - ldrb r0, [r5] - bl GetBankSide - ldr r2, =gSideTimers - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - strb r4, [r1, 0xA] - bl b_movescr_stack_push_cursor - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DAFDD - b _080542BA - .pool -_080542B4: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 -_080542BA: - str r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atkBE_breakfree - - thumb_func_start atkBF_set_defense_curl -atkBF_set_defense_curl: @ 80542C8 - ldr r1, =gBattleMons - ldr r0, =gBankAttacker - ldrb r2, [r0] - movs r0, 0x58 - muls r2, r0 - adds r1, 0x50 - adds r2, r1 - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 23 - orrs r0, r1 - str r0, [r2] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - bx lr - .pool - thumb_func_end atkBF_set_defense_curl - - thumb_func_start atkC0_recoverbasedonsunlight -atkC0_recoverbasedonsunlight: @ 80542F8 - push {r4-r7,lr} - sub sp, 0x4 - ldr r1, =gBankTarget - ldr r5, =gBankAttacker - ldrb r0, [r5] - strb r0, [r1] - ldr r7, =gBattleMons - ldrb r0, [r5] - movs r6, 0x58 - muls r0, r6 - adds r0, r7 - ldrh r1, [r0, 0x28] - ldrh r0, [r0, 0x2C] - cmp r1, r0 - beq _080543D8 - ldr r4, =gBattleWeather - ldrh r0, [r4] - cmp r0, 0 - beq _0805434A - movs r0, 0 - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0xD - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _0805434A - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0x4D - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - beq _08054378 -_0805434A: - ldr r3, =gBattleMoveDamage - ldr r2, =gBattleMons - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - ldrh r0, [r0, 0x2C] - lsrs r0, 1 - str r0, [r3] - adds r1, r3, 0 - b _080543B2 - .pool -_08054378: - ldrh r1, [r4] - movs r0, 0x60 - ands r0, r1 - cmp r0, 0 - beq _080543A4 - ldr r4, =gBattleMoveDamage - ldrb r0, [r5] - muls r0, r6 - adds r0, r7 - ldrh r1, [r0, 0x2C] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - movs r1, 0x1E - bl __divsi3 - str r0, [r4] - adds r1, r4, 0 - b _080543B2 - .pool -_080543A4: - ldr r1, =gBattleMoveDamage - ldrb r0, [r5] - muls r0, r6 - adds r0, r7 - ldrh r0, [r0, 0x2C] - lsrs r0, 2 - str r0, [r1] -_080543B2: - adds r2, r1, 0 - ldr r0, [r2] - cmp r0, 0 - bne _080543BE - movs r0, 0x1 - str r0, [r2] -_080543BE: - ldr r0, [r1] - negs r0, r0 - str r0, [r1] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _080543F2 - .pool -_080543D8: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_080543F2: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkC0_recoverbasedonsunlight - - thumb_func_start atkC1_hidden_power -atkC1_hidden_power: @ 8054400 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r2, =gBattleMons - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x58 - adds r4, r1, 0 - muls r4, r0 - adds r4, r2 - ldrb r0, [r4, 0x14] - mov r10, r0 - mov r7, r10 - lsls r7, 27 - adds r0, r7, 0 - lsrs r0, 27 - mov r10, r0 - movs r1, 0x2 - mov r2, r10 - ands r2, r1 - asrs r2, 1 - ldrh r7, [r4, 0x14] - mov r9, r7 - mov r0, r9 - lsls r0, 22 - mov r9, r0 - lsrs r3, r0, 27 - adds r0, r1, 0 - ands r0, r3 - orrs r2, r0 - ldrb r7, [r4, 0x15] - mov r8, r7 - mov r0, r8 - lsls r0, 25 - mov r8, r0 - lsrs r3, r0, 27 - adds r0, r1, 0 - ands r0, r3 - lsls r0, 1 - orrs r2, r0 - ldr r6, [r4, 0x14] - lsls r6, 12 - lsrs r3, r6, 27 - adds r0, r1, 0 - ands r0, r3 - lsls r0, 2 - orrs r2, r0 - ldrh r5, [r4, 0x16] - lsls r5, 23 - lsrs r3, r5, 27 - adds r0, r1, 0 - ands r0, r3 - lsls r0, 3 - orrs r2, r0 - ldrb r3, [r4, 0x17] - lsls r3, 26 - lsrs r0, r3, 27 - ands r1, r0 - lsls r1, 4 - orrs r2, r1 - movs r1, 0x1 - adds r4, r1, 0 - mov r7, r10 - ands r4, r7 - mov r0, r9 - lsrs r0, 27 - mov r9, r0 - adds r0, r1, 0 - mov r7, r9 - ands r0, r7 - lsls r0, 1 - orrs r4, r0 - mov r0, r8 - lsrs r0, 27 - mov r8, r0 - adds r0, r1, 0 - mov r7, r8 - ands r0, r7 - lsls r0, 2 - orrs r4, r0 - lsrs r6, 27 - adds r0, r1, 0 - ands r0, r6 - lsls r0, 3 - orrs r4, r0 - lsrs r5, 27 - adds r0, r1, 0 - ands r0, r5 - lsls r0, 4 - orrs r4, r0 - lsrs r3, 27 - ands r1, r3 - lsls r1, 5 - orrs r4, r1 - ldr r5, =gDynamicBasePower - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - movs r1, 0x3F - bl __divsi3 - adds r0, 0x1E - strh r0, [r5] - ldr r6, =gBattleStruct - ldr r5, [r6] - lsls r0, r4, 4 - subs r0, r4 - movs r1, 0x3F - bl __divsi3 - adds r0, 0x1 - strb r0, [r5, 0x13] - ldr r1, [r6] - ldrb r0, [r1, 0x13] - cmp r0, 0x8 - bls _080544F0 - adds r0, 0x1 - strb r0, [r1, 0x13] -_080544F0: - ldr r2, [r6] - ldrb r0, [r2, 0x13] - movs r1, 0xC0 - orrs r0, r1 - strb r0, [r2, 0x13] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkC1_hidden_power - - thumb_func_start atkC2_selectnexttarget -atkC2_selectnexttarget: @ 8054524 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, =gBankTarget - movs r1, 0 - strb r1, [r0] - ldr r1, =gNoOfAllBanks - ldrb r1, [r1] - adds r6, r0, 0 - ldr r0, =gBattlescriptCurrInstr - mov r8, r0 - cmp r1, 0 - beq _0805456E - adds r3, r6, 0 - ldr r0, =gBankAttacker - ldrb r5, [r0] - ldr r0, =gBitTable - mov r12, r0 - adds r4, r1, 0 - ldr r7, =gAbsentBankFlags -_0805454C: - ldrb r2, [r3] - cmp r2, r5 - beq _08054562 - ldrb r0, [r7] - ldrb r1, [r6] - lsls r1, 2 - add r1, r12 - ldr r1, [r1] - ands r0, r1 - cmp r0, 0 - beq _0805456E -_08054562: - adds r0, r2, 0x1 - strb r0, [r3] - lsls r0, 24 - lsrs r0, 24 - cmp r0, r4 - bcc _0805454C -_0805456E: - mov r1, r8 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkC2_selectnexttarget - - thumb_func_start atkC3_setfutureattack -atkC3_setfutureattack: @ 8054598 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - ldr r0, =gWishFutureKnock - mov r8, r0 - ldr r6, =gBankTarget - ldrb r1, [r6] - adds r0, r1, r0 - ldrb r7, [r0] - cmp r7, 0 - beq _080545DC - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _080546CC - .pool -_080545DC: - adds r0, r1, 0 - bl GetBankIdentity - ldr r4, =gSideAffecting - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x1 - mov r10, r1 - ands r0, r1 - lsls r0, 1 - adds r0, r4 - ldrh r2, [r0] - movs r1, 0x40 - movs r5, 0 - mov r3, sp - strh r5, [r3, 0x10] - orrs r1, r2 - strh r1, [r0] - ldrb r0, [r6] - lsls r0, 1 - mov r1, r8 - adds r1, 0x18 - adds r0, r1 - ldr r1, =gCurrentMove - mov r9, r1 - ldrh r1, [r1] - strh r1, [r0] - mov r0, r8 - adds r0, 0x4 - ldrb r2, [r6] - adds r0, r2 - ldr r5, =gBankAttacker - ldrb r1, [r5] - strb r1, [r0] - ldrb r0, [r6] - add r0, r8 - movs r1, 0x3 - strb r1, [r0] - ldrb r0, [r6] - bl GetBankIdentity - mov r1, r10 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - ldrh r3, [r1] - ldrb r0, [r5] - movs r4, 0x58 - muls r0, r4 - ldr r2, =gBattleMons - adds r0, r2 - ldrb r1, [r6] - muls r1, r4 - adds r1, r2 - mov r4, r9 - ldrh r2, [r4] - str r7, [sp] - str r7, [sp, 0x4] - ldrb r4, [r5] - str r4, [sp, 0x8] - ldrb r4, [r6] - str r4, [sp, 0xC] - bl CalculateBaseDamage - ldrb r1, [r6] - lsls r1, 2 - mov r2, r8 - adds r2, 0x8 - adds r1, r2 - str r0, [r1] - ldr r1, =gProtectStructs - ldrb r0, [r5] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 28 - cmp r0, 0 - bge _0805468C - ldrb r4, [r6] - lsls r4, 2 - adds r4, r2 - ldr r1, [r4] - lsls r0, r1, 4 - subs r0, r1 - movs r1, 0xA - bl __divsi3 - str r0, [r4] -_0805468C: - mov r5, r9 - ldrh r1, [r5] - ldr r0, =0x00000161 - cmp r1, r0 - bne _080546BC - ldr r0, =gBattleCommunication - mov r1, r10 - strb r1, [r0, 0x5] - b _080546C4 - .pool -_080546BC: - ldr r0, =gBattleCommunication - mov r2, sp - ldrb r2, [r2, 0x10] - strb r2, [r0, 0x5] -_080546C4: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_080546CC: - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkC3_setfutureattack - - thumb_func_start atkC4_beat_up -atkC4_beat_up: @ 80546E4 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r0, =gBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - ldr r7, =gEnemyParty - cmp r0, 0 - bne _080546FE - ldr r7, =gPlayerParty -_080546FE: - ldr r2, =gBattleMons - ldr r0, =gBankTarget - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - ldrh r0, [r0, 0x28] - cmp r0, 0 - bne _08054740 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - b _080548DC - .pool -_08054740: - ldr r6, =gBattleCommunication - ldrb r0, [r6] - mov r8, r0 - cmp r0, 0x5 - bls _0805474C - b _080548A8 -_0805474C: - adds r4, r6, 0 - movs r5, 0x64 -_08054750: - ldrb r0, [r4] - muls r0, r5 - adds r0, r7, r0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _08054794 - ldrb r0, [r6] - muls r0, r5 - adds r0, r7, r0 - movs r1, 0x41 - bl GetMonData - cmp r0, 0 - beq _08054794 - ldrb r0, [r4] - muls r0, r5 - adds r0, r7, r0 - movs r1, 0x41 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - beq _08054794 - ldrb r0, [r4] - muls r0, r5 - adds r0, r7, r0 - movs r1, 0x37 - bl GetMonData - cmp r0, 0 - beq _080547A4 -_08054794: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - adds r6, r4, 0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bls _08054750 -_080547A4: - ldr r1, =gBattleCommunication - mov r9, r1 - ldrb r2, [r1] - cmp r2, 0x5 - bhi _080548A8 - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x4 - strb r0, [r1, 0x1] - ldr r6, =gBankAttacker - ldrb r0, [r6] - strb r0, [r1, 0x2] - strb r2, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x9 - str r0, [r1] - ldr r2, =gBattleMoveDamage - mov r8, r2 - ldr r5, =gBaseStats - mov r1, r9 - ldrb r0, [r1] - movs r4, 0x64 - muls r0, r4 - adds r0, r7, r0 - movs r1, 0xB - bl GetMonData - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r5 - ldrb r3, [r1, 0x1] - mov r2, r8 - str r3, [r2] - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x1] - muls r0, r3 - mov r1, r8 - str r0, [r1] - mov r2, r9 - ldrb r0, [r2] - muls r0, r4 - adds r0, r7, r0 - movs r1, 0x38 - bl GetMonData - lsls r0, 1 - movs r1, 0x5 - bl __udivsi3 - adds r0, 0x2 - mov r2, r8 - ldr r1, [r2] - muls r0, r1 - str r0, [r2] - ldr r3, =gBattleMons - ldr r1, =gBankTarget - ldrb r2, [r1] - movs r1, 0x58 - muls r1, r2 - adds r1, r3 - ldrh r2, [r1] - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - adds r1, r5 - ldrb r1, [r1, 0x2] - bl __divsi3 - mov r1, r8 - str r0, [r1] - movs r1, 0x32 - bl __divsi3 - adds r2, r0, 0x2 - mov r0, r8 - str r2, [r0] - ldr r1, =gProtectStructs - ldrb r0, [r6] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 28 - cmp r0, 0 - bge _08054870 - lsls r0, r2, 4 - subs r0, r2 - movs r1, 0xA - bl __divsi3 - mov r1, r8 - str r0, [r1] -_08054870: - mov r2, r9 - ldrb r0, [r2] - adds r0, 0x1 - strb r0, [r2] - b _080548E2 - .pool -_080548A8: - mov r0, r8 - cmp r0, 0 - beq _080548C8 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - b _080548DC - .pool -_080548C8: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x5] - ldrb r0, [r2, 0x6] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x7] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x8] -_080548DC: - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_080548E2: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkC4_beat_up - - thumb_func_start atkC5_hidepreattack -atkC5_hidepreattack: @ 80548F4 - push {lr} - ldr r0, =gCurrentMove - ldrh r1, [r0] - cmp r1, 0x5B - beq _08054934 - cmp r1, 0x5B - bgt _0805490C - cmp r1, 0x13 - beq _08054918 - b _08054960 - .pool -_0805490C: - ldr r0, =0x00000123 - cmp r1, r0 - beq _0805494C - adds r0, 0x31 - cmp r1, r0 - bne _08054960 -_08054918: - ldr r2, =gStatuses3 - ldr r0, =gBankAttacker - ldrb r1, [r0] - lsls r1, 2 - adds r1, r2 - ldr r0, [r1] - movs r2, 0x40 - b _0805495C - .pool -_08054934: - ldr r2, =gStatuses3 - ldr r0, =gBankAttacker - ldrb r1, [r0] - lsls r1, 2 - adds r1, r2 - ldr r0, [r1] - movs r2, 0x80 - b _0805495C - .pool -_0805494C: - ldr r2, =gStatuses3 - ldr r0, =gBankAttacker - ldrb r1, [r0] - lsls r1, 2 - adds r1, r2 - ldr r0, [r1] - movs r2, 0x80 - lsls r2, 11 -_0805495C: - orrs r0, r2 - str r0, [r1] -_08054960: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atkC5_hidepreattack - - thumb_func_start atkC6_unhidepostattack -atkC6_unhidepostattack: @ 8054978 - push {lr} - ldr r0, =gCurrentMove - ldrh r1, [r0] - cmp r1, 0x5B - beq _080549BC - cmp r1, 0x5B - bgt _08054990 - cmp r1, 0x13 - beq _0805499C - b _080549EA - .pool -_08054990: - ldr r0, =0x00000123 - cmp r1, r0 - beq _080549D8 - adds r0, 0x31 - cmp r1, r0 - bne _080549EA -_0805499C: - ldr r2, =gStatuses3 - ldr r0, =gBankAttacker - ldrb r1, [r0] - lsls r1, 2 - adds r1, r2 - ldr r0, [r1] - movs r2, 0x41 - negs r2, r2 - b _080549E6 - .pool -_080549BC: - ldr r2, =gStatuses3 - ldr r0, =gBankAttacker - ldrb r1, [r0] - lsls r1, 2 - adds r1, r2 - ldr r0, [r1] - movs r2, 0x81 - negs r2, r2 - b _080549E6 - .pool -_080549D8: - ldr r2, =gStatuses3 - ldr r0, =gBankAttacker - ldrb r1, [r0] - lsls r1, 2 - adds r1, r2 - ldr r0, [r1] - ldr r2, =0xfffbffff -_080549E6: - ands r0, r2 - str r0, [r1] -_080549EA: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atkC6_unhidepostattack - - thumb_func_start atkC7_setminimize -atkC7_setminimize: @ 8054A08 - push {lr} - ldr r0, =gHitMarker - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 18 - ands r0, r1 - cmp r0, 0 - beq _08054A2C - ldr r2, =gStatuses3 - ldr r0, =gBankAttacker - ldrb r1, [r0] - lsls r1, 2 - adds r1, r2 - ldr r0, [r1] - movs r2, 0x80 - lsls r2, 1 - orrs r0, r2 - str r0, [r1] -_08054A2C: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atkC7_setminimize - - thumb_func_start atkC8_sethail -atkC8_sethail: @ 8054A48 - push {lr} - ldr r3, =gBattleWeather - ldrh r1, [r3] - movs r2, 0x80 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _08054A78 - ldr r2, =gBattleMoveFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gBattleCommunication - movs r0, 0x2 - strb r0, [r1, 0x5] - b _08054A86 - .pool -_08054A78: - strh r2, [r3] - ldr r0, =gBattleCommunication - movs r1, 0x5 - strb r1, [r0, 0x5] - ldr r0, =gWishFutureKnock - adds r0, 0x28 - strb r1, [r0] -_08054A86: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atkC8_sethail - - thumb_func_start atkC9_jumpifattackandspecialattackcannotfall -atkC9_jumpifattackandspecialattackcannotfall: @ 8054AA0 - push {r4,lr} - ldr r2, =gBattleMons - ldr r0, =gBankTarget - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r1, r0, r2 - movs r0, 0x19 - ldrsb r0, [r1, r0] - adds r3, r2, 0 - cmp r0, 0 - bne _08054AF4 - movs r0, 0x1C - ldrsb r0, [r1, r0] - cmp r0, 0 - bne _08054AF4 - ldr r0, =gBattleCommunication - ldrb r0, [r0, 0x6] - cmp r0, 0x1 - beq _08054AF4 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _08054B20 - .pool -_08054AF4: - ldr r4, =gActiveBank - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r4] - ldr r2, =gBattleMoveDamage - ldrb r1, [r4] - movs r0, 0x58 - muls r0, r1 - adds r0, r3 - ldrh r0, [r0, 0x28] - str r0, [r2] - ldr r1, =0x00007fff - movs r0, 0 - bl dp01_build_cmdbuf_x18_0_aa_health_bar_update - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_08054B20: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkC9_jumpifattackandspecialattackcannotfall - - thumb_func_start atkCA_setforcedtarget -atkCA_setforcedtarget: @ 8054B3C - push {r4,r5,lr} - ldr r4, =gBankAttacker - ldrb r0, [r4] - bl GetBankSide - ldr r5, =gSideTimers - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - movs r0, 0x1 - strb r0, [r1, 0x8] - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - ldrb r0, [r4] - strb r0, [r1, 0x9] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atkCA_setforcedtarget - - thumb_func_start atkCB_setcharge -atkCB_setcharge: @ 8054B88 - push {r4,lr} - ldr r0, =gStatuses3 - ldr r3, =gBankAttacker - ldrb r1, [r3] - lsls r1, 2 - adds r1, r0 - ldr r0, [r1] - movs r2, 0x80 - lsls r2, 2 - orrs r0, r2 - str r0, [r1] - ldr r4, =gDisableStructs - ldrb r1, [r3] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r2, [r0, 0x12] - movs r1, 0x10 - negs r1, r1 - ands r1, r2 - movs r2, 0x2 - orrs r1, r2 - strb r1, [r0, 0x12] - ldrb r1, [r3] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r2, [r0, 0x12] - movs r1, 0xF - ands r1, r2 - movs r2, 0x20 - orrs r1, r2 - strb r1, [r0, 0x12] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkCB_setcharge - - thumb_func_start atkCC_callterrainattack -atkCC_callterrainattack: @ 8054BEC - push {r4,lr} - ldr r2, =gHitMarker - ldr r0, [r2] - ldr r1, =0xfffffbff - ands r0, r1 - str r0, [r2] - ldr r4, =gCurrentMove - ldr r1, =gUnknown_0831C414 - ldr r0, =gUnknown_02022FF0 - ldrb r0, [r0] - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r4] - ldrh r0, [r4] - movs r1, 0 - bl GetMoveTarget - ldr r1, =gBankTarget - strb r0, [r1] - ldr r3, =gUnknown_082D86A8 - ldr r2, =gBattleMoves - ldrh r1, [r4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r3 - ldr r0, [r0] - bl b_movescr_stack_push - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkCC_callterrainattack - - thumb_func_start atkCD_cureifburnedparalysedorpoisoned -atkCD_cureifburnedparalysedorpoisoned: @ 8054C60 - push {r4-r6,lr} - sub sp, 0x4 - ldr r1, =gBattleMons - ldr r3, =gBankAttacker - ldrb r0, [r3] - movs r6, 0x58 - muls r0, r6 - adds r5, r1, 0 - adds r5, 0x4C - adds r2, r0, r5 - ldr r0, [r2] - movs r1, 0xD8 - ands r0, r1 - cmp r0, 0 - beq _08054CBC - movs r0, 0 - str r0, [r2] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - ldr r4, =gActiveBank - ldrb r0, [r3] - strb r0, [r4] - ldrb r0, [r4] - muls r0, r6 - adds r0, r5 - str r0, [sp] - movs r0, 0 - movs r1, 0x28 - movs r2, 0 - movs r3, 0x4 - bl EmitSetAttributes - ldrb r0, [r4] - bl MarkBufferBankForExecution - b _08054CD6 - .pool -_08054CBC: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_08054CD6: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atkCD_cureifburnedparalysedorpoisoned - - thumb_func_start atkCE_settorment -atkCE_settorment: @ 8054CE4 - push {lr} - ldr r1, =gBattleMons - ldr r0, =gBankTarget - ldrb r2, [r0] - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r1, [r0] - movs r2, 0x80 - lsls r2, 24 - cmp r1, 0 - bge _08054D28 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _08054D34 - .pool -_08054D28: - orrs r1, r2 - str r1, [r0] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_08054D34: - pop {r0} - bx r0 - .pool - thumb_func_end atkCE_settorment - - thumb_func_start atkCF_jumpifnodamage -atkCF_jumpifnodamage: @ 8054D3C - push {lr} - ldr r2, =gProtectStructs - ldr r0, =gBankAttacker - ldrb r0, [r0] - lsls r1, r0, 4 - adds r0, r2, 0x4 - adds r0, r1, r0 - ldr r0, [r0] - cmp r0, 0 - bne _08054D5C - adds r0, r2, 0 - adds r0, 0x8 - adds r0, r1, r0 - ldr r0, [r0] - cmp r0, 0 - beq _08054D74 -_08054D5C: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _08054D8E - .pool -_08054D74: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_08054D8E: - pop {r0} - bx r0 - .pool - thumb_func_end atkCF_jumpifnodamage - - thumb_func_start atkD0_settaunt -atkD0_settaunt: @ 8054D98 - push {r4,lr} - ldr r4, =gDisableStructs - ldr r3, =gBankTarget - ldrb r0, [r3] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r2, r1, r4 - ldrb r1, [r2, 0x13] - lsls r0, r1, 28 - cmp r0, 0 - bne _08054DE8 - movs r0, 0x10 - negs r0, r0 - ands r0, r1 - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2, 0x13] - ldrb r1, [r3] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r2, [r0, 0x13] - movs r1, 0xF - ands r1, r2 - movs r2, 0x20 - orrs r1, r2 - strb r1, [r0, 0x13] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _08054E02 - .pool -_08054DE8: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_08054E02: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkD0_settaunt - - thumb_func_start atkD1_set_helpinghand -atkD1_set_helpinghand: @ 8054E0C - push {r4,lr} - ldr r4, =gBankAttacker - ldrb r0, [r4] - bl GetBankIdentity - movs r1, 0x2 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - ldr r3, =gBankTarget - strb r0, [r3] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08054E90 - ldr r0, =gAbsentBankFlags - ldrb r1, [r0] - ldr r2, =gBitTable - ldrb r3, [r3] - lsls r0, r3, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _08054E90 - ldr r1, =gProtectStructs - ldrb r0, [r4] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 28 - cmp r0, 0 - blt _08054E90 - lsls r0, r3, 4 - adds r2, r0, r1 - ldrb r1, [r2] - lsls r0, r1, 28 - cmp r0, 0 - blt _08054E90 - movs r0, 0x8 - orrs r0, r1 - strb r0, [r2] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _08054EAA - .pool -_08054E90: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_08054EAA: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkD1_set_helpinghand - - thumb_func_start atkD2_swap_items -atkD2_swap_items: @ 8054EB4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - ldr r4, =gBattleTypeFlags - ldr r0, [r4] - movs r1, 0x80 - lsls r1, 19 - ands r0, r1 - cmp r0, 0 - bne _08054F9A - ldr r0, =gBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08054EE8 - ldr r0, [r4] - ldr r1, =0x0a3f0902 - ands r0, r1 - cmp r0, 0 - beq _08054F9A -_08054EE8: - ldr r6, =gBankAttacker - ldrb r0, [r6] - bl GetBankSide - lsls r0, 24 - lsrs r4, r0, 24 - ldr r7, =gBankTarget - ldrb r0, [r7] - bl GetBankSide - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x0a3f0902 - ands r0, r1 - cmp r0, 0 - bne _08054F46 - ldr r0, =gWishFutureKnock - adds r2, r0, 0 - adds r2, 0x29 - adds r0, r4, r2 - ldrb r1, [r0] - ldr r4, =gBitTable - ldr r3, =gBattlePartyID - ldrb r0, [r6] - lsls r0, 1 - adds r0, r3 - ldrh r0, [r0] - lsls r0, 2 - adds r0, r4 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _08054F9A - adds r0, r5, r2 - ldrb r1, [r0] - ldrb r0, [r7] - lsls r0, 1 - adds r0, r3 - ldrh r0, [r0] - lsls r0, 2 - adds r0, r4 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _08054F9A -_08054F46: - ldr r0, =gBattleMons - mov r8, r0 - ldr r1, =gBankAttacker - ldrb r4, [r1] - movs r5, 0x58 - adds r0, r4, 0 - muls r0, r5 - add r0, r8 - mov r9, r0 - ldrh r3, [r0, 0x2E] - adds r1, r3, 0 - cmp r1, 0 - bne _08054F6E - ldr r0, =gBankTarget - ldrb r0, [r0] - muls r0, r5 - add r0, r8 - ldrh r0, [r0, 0x2E] - cmp r0, 0 - beq _08054F9A -_08054F6E: - cmp r1, 0xAF - beq _08054F9A - ldr r7, =gBankTarget - ldrb r0, [r7] - muls r0, r5 - mov r2, r8 - adds r1, r0, r2 - ldrh r2, [r1, 0x2E] - cmp r2, 0xAF - beq _08054F9A - adds r0, r3, 0 - subs r0, 0x79 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xB - bls _08054F9A - adds r0, r2, 0 - subs r0, 0x79 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xB - bhi _08054FDC -_08054F9A: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _08055132 - .pool -_08054FDC: - adds r0, r1, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x3C - bne _08055010 - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DB63F - str r0, [r1] - ldr r1, =gLastUsedAbility - ldrb r0, [r7] - muls r0, r5 - add r0, r8 - adds r0, 0x20 - ldrb r0, [r0] - strb r0, [r1] - ldrb r0, [r7] - ldrb r1, [r1] - bl RecordAbilityBattle - b _08055132 - .pool -_08055010: - ldr r3, =gBattleStruct - mov r10, r3 - lsls r0, r4, 1 - adds r0, 0xD0 - ldr r1, [r3] - adds r6, r1, r0 - mov r0, r9 - ldrh r0, [r0, 0x2E] - mov r9, r0 - strh r2, [r6] - ldr r1, =gBankAttacker - ldrb r0, [r1] - muls r0, r5 - add r0, r8 - movs r1, 0 - strh r1, [r0, 0x2E] - ldrb r0, [r7] - muls r0, r5 - add r0, r8 - mov r2, r9 - strh r2, [r0, 0x2E] - ldr r4, =gActiveBank - ldr r3, =gBankAttacker - ldrb r0, [r3] - strb r0, [r4] - str r6, [sp] - movs r0, 0 - movs r1, 0x2 - movs r2, 0 - movs r3, 0x2 - bl EmitSetAttributes - ldr r1, =gBankAttacker - ldrb r0, [r1] - bl MarkBufferBankForExecution - ldrb r0, [r7] - strb r0, [r4] - ldrb r0, [r7] - muls r0, r5 - mov r1, r8 - adds r1, 0x2E - adds r0, r1 - str r0, [sp] - movs r0, 0 - movs r1, 0x2 - movs r2, 0 - movs r3, 0x2 - bl EmitSetAttributes - ldrb r0, [r7] - bl MarkBufferBankForExecution - ldrb r0, [r7] - mov r2, r10 - ldr r1, [r2] - lsls r0, 1 - adds r0, r1 - adds r0, 0xC8 - movs r3, 0 - strb r3, [r0] - ldrb r0, [r7] - ldr r1, [r2] - lsls r0, 1 - adds r0, r1 - adds r0, 0xC9 - strb r3, [r0] - ldr r1, =gBankAttacker - ldrb r0, [r1] - ldr r1, [r2] - lsls r0, 1 - adds r0, r1 - adds r0, 0xC8 - strb r3, [r0] - ldr r2, =gBankAttacker - ldrb r0, [r2] - mov r3, r10 - ldr r1, [r3] - lsls r0, 1 - adds r0, r1 - adds r0, 0xC9 - movs r1, 0 - strb r1, [r0] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - ldr r1, =gBattleTextBuff1 - movs r3, 0xFD - strb r3, [r1] - movs r2, 0xA - strb r2, [r1, 0x1] - ldrh r0, [r6] - strb r0, [r1, 0x2] - ldrh r0, [r6] - lsrs r0, 8 - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldr r1, =gBattleTextBuff2 - strb r3, [r1] - strb r2, [r1, 0x1] - mov r2, r9 - strb r2, [r1, 0x2] - mov r3, r9 - lsrs r0, r3, 8 - strb r0, [r1, 0x3] - movs r0, 0x1 - negs r0, r0 - strb r0, [r1, 0x4] - cmp r3, 0 - beq _08055118 - ldrh r0, [r6] - cmp r0, 0 - beq _0805512C - ldr r1, =gBattleCommunication - movs r0, 0x2 - b _08055130 - .pool -_08055118: - ldrh r0, [r6] - cmp r0, 0 - beq _0805512C - ldr r0, =gBattleCommunication - movs r1, 0 - strb r1, [r0, 0x5] - b _08055132 - .pool -_0805512C: - ldr r1, =gBattleCommunication - movs r0, 0x1 -_08055130: - strb r0, [r1, 0x5] -_08055132: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkD2_swap_items - - thumb_func_start atkD3_copy_ability -atkD3_copy_ability: @ 8055148 - push {r4,lr} - ldr r3, =gBattleMons - ldr r4, =gBankTarget - ldrb r0, [r4] - movs r2, 0x58 - muls r0, r2 - adds r0, r3 - adds r0, 0x20 - ldrb r1, [r0] - adds r0, r1, 0 - cmp r0, 0 - beq _0805519C - cmp r0, 0x19 - beq _0805519C - ldr r0, =gBankAttacker - ldrb r0, [r0] - muls r0, r2 - adds r0, r3 - adds r0, 0x20 - strb r1, [r0] - ldr r1, =gLastUsedAbility - ldrb r0, [r4] - muls r0, r2 - adds r0, r3 - adds r0, 0x20 - ldrb r0, [r0] - strb r0, [r1] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _080551B6 - .pool -_0805519C: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_080551B6: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkD3_copy_ability - - thumb_func_start atkD4_wish_effect -atkD4_wish_effect: @ 80551C0 - push {r4-r7,lr} - ldr r7, =gBattlescriptCurrInstr - ldr r2, [r7] - ldrb r3, [r2, 0x1] - cmp r3, 0 - beq _080551D8 - cmp r3, 0x1 - beq _08055210 - b _0805528C - .pool -_080551D8: - ldr r1, =gWishFutureKnock - ldr r4, =gBankAttacker - adds r0, r1, 0 - adds r0, 0x20 - ldrb r5, [r4] - adds r3, r0, r5 - ldrb r0, [r3] - cmp r0, 0 - bne _0805525C - movs r0, 0x2 - strb r0, [r3] - ldrb r0, [r4] - adds r1, 0x24 - adds r1, r0, r1 - ldr r2, =gBattlePartyID - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - strb r0, [r1] - ldr r0, [r7] - adds r0, 0x6 - b _0805528A - .pool -_08055210: - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x4 - strb r0, [r1, 0x1] - ldr r4, =gBankTarget - ldrb r0, [r4] - strb r0, [r1, 0x2] - ldr r0, =gWishFutureKnock - adds r0, 0x24 - ldrb r5, [r4] - adds r0, r5 - ldrb r0, [r0] - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - ldr r1, =gBattleMoveDamage - ldr r6, =gBattleMons - ldrb r0, [r4] - movs r5, 0x58 - muls r0, r5 - adds r0, r6 - ldrh r0, [r0, 0x2C] - lsrs r0, 1 - str r0, [r1] - cmp r0, 0 - bne _08055248 - str r3, [r1] -_08055248: - ldr r0, [r1] - negs r0, r0 - str r0, [r1] - ldrb r0, [r4] - muls r0, r5 - adds r0, r6 - ldrh r1, [r0, 0x28] - ldrh r0, [r0, 0x2C] - cmp r1, r0 - bne _08055288 -_0805525C: - ldrb r1, [r2, 0x2] - ldrb r0, [r2, 0x3] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x5] - lsls r0, 24 - orrs r1, r0 - str r1, [r7] - b _0805528C - .pool -_08055288: - adds r0, r2, 0x6 -_0805528A: - str r0, [r7] -_0805528C: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end atkD4_wish_effect - - thumb_func_start atkD5_setroots -atkD5_setroots: @ 8055294 - push {lr} - ldr r1, =gStatuses3 - ldr r0, =gBankAttacker - ldrb r0, [r0] - lsls r0, 2 - adds r2, r0, r1 - ldr r1, [r2] - movs r3, 0x80 - lsls r3, 3 - adds r0, r1, 0 - ands r0, r3 - cmp r0, 0 - beq _080552D8 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _080552E4 - .pool -_080552D8: - orrs r1, r3 - str r1, [r2] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_080552E4: - pop {r0} - bx r0 - .pool - thumb_func_end atkD5_setroots - - thumb_func_start atkD6_doubledamagedealtifdamaged -atkD6_doubledamagedealtifdamaged: @ 80552EC - push {lr} - ldr r3, =gProtectStructs - ldr r0, =gBankAttacker - ldrb r0, [r0] - lsls r2, r0, 4 - adds r0, r3, 0x4 - adds r0, r2, r0 - ldr r0, [r0] - cmp r0, 0 - beq _0805530C - adds r0, r2, r3 - ldr r1, =gBankTarget - ldrb r0, [r0, 0xC] - ldrb r1, [r1] - cmp r0, r1 - beq _08055324 -_0805530C: - adds r0, r3, 0 - adds r0, 0x8 - adds r0, r2, r0 - ldr r0, [r0] - cmp r0, 0 - beq _0805532A - adds r0, r2, r3 - ldr r1, =gBankTarget - ldrb r0, [r0, 0xD] - ldrb r1, [r1] - cmp r0, r1 - bne _0805532A -_08055324: - ldr r1, =gBattleScripting - movs r0, 0x2 - strb r0, [r1, 0xE] -_0805532A: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atkD6_doubledamagedealtifdamaged - - thumb_func_start atkD7_setyawn -atkD7_setyawn: @ 805534C - push {r4,lr} - ldr r1, =gStatuses3 - ldr r0, =gBankTarget - ldrb r3, [r0] - lsls r0, r3, 2 - adds r4, r0, r1 - ldr r2, [r4] - movs r0, 0xC0 - lsls r0, 5 - ands r0, r2 - cmp r0, 0 - bne _08055374 - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r3 - adds r1, 0x4C - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _080553A0 -_08055374: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _080553B0 - .pool -_080553A0: - movs r0, 0x80 - lsls r0, 5 - orrs r2, r0 - str r2, [r4] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_080553B0: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkD7_setyawn - - thumb_func_start atkD8_setdamagetohealthdifference -atkD8_setdamagetohealthdifference: @ 80553BC - push {lr} - ldr r2, =gBattleMons - ldr r0, =gBankTarget - ldrb r0, [r0] - movs r1, 0x58 - muls r0, r1 - adds r3, r0, r2 - ldr r0, =gBankAttacker - ldrb r0, [r0] - muls r0, r1 - adds r1, r0, r2 - ldrh r0, [r3, 0x28] - ldrh r2, [r1, 0x28] - cmp r0, r2 - bhi _08055408 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _0805541A - .pool -_08055408: - ldr r2, =gBattleMoveDamage - ldrh r0, [r3, 0x28] - ldrh r1, [r1, 0x28] - subs r0, r1 - str r0, [r2] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_0805541A: - pop {r0} - bx r0 - .pool - thumb_func_end atkD8_setdamagetohealthdifference - - thumb_func_start atkD9_scaledamagebyhealthratio -atkD9_scaledamagebyhealthratio: @ 8055428 - push {r4,lr} - ldr r4, =gDynamicBasePower - ldrh r0, [r4] - cmp r0, 0 - bne _08055464 - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r3, [r0, 0x1] - ldr r2, =gBattleMons - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x58 - muls r1, r0 - adds r1, r2 - ldrh r0, [r1, 0x28] - muls r0, r3 - ldrh r1, [r1, 0x2C] - bl __divsi3 - strh r0, [r4] - lsls r0, 16 - cmp r0, 0 - bne _08055464 - movs r0, 0x1 - strh r0, [r4] -_08055464: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkD9_scaledamagebyhealthratio - - thumb_func_start atkDA_abilityswap -atkDA_abilityswap: @ 805548C - push {r4-r6,lr} - ldr r5, =gBattleMons - ldr r0, =gBankAttacker - ldrb r0, [r0] - movs r4, 0x58 - muls r0, r4 - adds r0, r5 - adds r2, r0, 0 - adds r2, 0x20 - ldrb r1, [r2] - cmp r1, 0 - bne _080554B4 - ldr r0, =gBankTarget - ldrb r0, [r0] - muls r0, r4 - adds r0, r5 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0 - beq _080554D4 -_080554B4: - cmp r1, 0x19 - beq _080554D4 - ldr r6, =gBankTarget - ldrb r0, [r6] - muls r0, r4 - adds r0, r5 - adds r0, 0x20 - ldrb r3, [r0] - cmp r3, 0x19 - beq _080554D4 - ldr r0, =gBattleMoveFlags - ldrb r1, [r0] - movs r0, 0x29 - ands r0, r1 - cmp r0, 0 - beq _08055504 -_080554D4: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _0805551A - .pool -_08055504: - ldrb r1, [r2] - strb r3, [r2] - ldrb r0, [r6] - muls r0, r4 - adds r0, r5 - adds r0, 0x20 - strb r1, [r0] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_0805551A: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atkDA_abilityswap - - thumb_func_start atkDB_imprisoneffect -atkDB_imprisoneffect: @ 8055524 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r1, =gStatuses3 - ldr r4, =gBankAttacker - ldrb r2, [r4] - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 6 - ands r0, r1 - cmp r0, 0 - beq _08055574 - b _080555F6 - .pool -_0805554C: - ldr r0, =gStatuses3 - mov r2, r9 - ldrb r1, [r2] - lsls r1, 2 - adds r1, r0 - ldr r0, [r1] - movs r2, 0x80 - lsls r2, 6 - orrs r0, r2 - str r0, [r1] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _080555EE - .pool -_08055574: - adds r0, r2, 0 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldrb r0, [r4] - bl sub_803F548 - movs r6, 0 - b _080555E6 -_0805558A: - adds r0, r6, 0 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r8, r0 - beq _080555E0 - movs r4, 0 - ldr r7, =gBankAttacker - mov r9, r7 - ldr r0, =gBattleMons - mov r12, r0 - mov r1, r9 - ldrb r0, [r1] - mov r2, r12 - adds r2, 0xC - movs r1, 0x58 - muls r0, r1 - adds r3, r0, r2 - adds r5, r6, 0 - muls r5, r1 -_080555B4: - movs r2, 0 - ldrh r1, [r3] - mov r0, r12 - adds r0, 0xC - adds r0, r5, r0 -_080555BE: - ldrh r7, [r0] - cmp r1, r7 - bne _080555C8 - cmp r1, 0 - bne _080555D0 -_080555C8: - adds r0, 0x2 - adds r2, 0x1 - cmp r2, 0x3 - ble _080555BE -_080555D0: - cmp r2, 0x4 - bne _080555DC - adds r3, 0x2 - adds r4, 0x1 - cmp r4, 0x3 - ble _080555B4 -_080555DC: - cmp r4, 0x4 - bne _0805554C -_080555E0: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 -_080555E6: - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r6, r0 - bcc _0805558A -_080555EE: - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r6, r0 - bne _08055610 -_080555F6: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_08055610: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkDB_imprisoneffect - - thumb_func_start atkDC_setgrudge -atkDC_setgrudge: @ 805562C - push {lr} - ldr r1, =gStatuses3 - ldr r0, =gBankAttacker - ldrb r0, [r0] - lsls r0, 2 - adds r2, r0, r1 - ldr r1, [r2] - movs r3, 0x80 - lsls r3, 7 - adds r0, r1, 0 - ands r0, r3 - cmp r0, 0 - beq _08055670 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _0805567C - .pool -_08055670: - orrs r1, r3 - str r1, [r2] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_0805567C: - pop {r0} - bx r0 - .pool - thumb_func_end atkDC_setgrudge - - thumb_func_start atkDD_weightdamagecalculation -atkDD_weightdamagecalculation: @ 8055684 - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r5, 0 - ldr r2, =gUnknown_0831C428 - ldrh r0, [r2] - ldr r1, =0x0000ffff - cmp r0, r1 - beq _080556FC - adds r6, r2, 0 - ldr r0, =gBattleMons - mov r8, r0 - adds r7, r1, 0 - adds r4, r6, 0 -_080556A0: - ldr r0, =gBankTarget - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - add r0, r8 - ldrh r0, [r0] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - bl GetPokedexHeightWeight - ldrh r1, [r4] - lsls r0, 16 - lsrs r0, 16 - cmp r1, r0 - bhi _080556CE - adds r4, 0x4 - adds r5, 0x2 - ldrh r0, [r4] - cmp r0, r7 - bne _080556A0 -_080556CE: - lsls r0, r5, 1 - adds r0, r6 - ldrh r1, [r0] - ldr r0, =0x0000ffff - cmp r1, r0 - beq _080556FC - ldr r0, =gDynamicBasePower - adds r1, r5, 0x1 - lsls r1, 1 - adds r1, r6 - ldrh r1, [r1] - strh r1, [r0] - b _08055702 - .pool -_080556FC: - ldr r1, =gDynamicBasePower - movs r0, 0x78 - strh r0, [r1] -_08055702: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkDD_weightdamagecalculation - - thumb_func_start atkDE_asistattackselect -atkDE_asistattackselect: @ 805571C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - movs r0, 0 - mov r10, r0 - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x18 - str r0, [sp, 0x4] - ldr r0, =gBankAttacker - ldrb r0, [r0] - bl GetBankIdentity - movs r1, 0x1 - ands r1, r0 - ldr r0, =gPlayerParty - str r0, [sp] - cmp r1, 0 - beq _0805574C - ldr r1, =gEnemyParty - str r1, [sp] -_0805574C: - movs r2, 0 -_0805574E: - ldr r1, =gBattlePartyID - ldr r0, =gBankAttacker - ldrb r0, [r0] - lsls r0, 1 - adds r0, r1 - adds r1, r2, 0x1 - str r1, [sp, 0x8] - ldrh r0, [r0] - cmp r2, r0 - beq _080557F4 - movs r0, 0x64 - adds r6, r2, 0 - muls r6, r0 - ldr r0, [sp] - adds r4, r0, r6 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - cmp r0, 0 - beq _080557F4 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - beq _080557F4 - movs r5, 0 - ldr r1, =0x0000ffff - mov r8, r1 - mov r9, r6 - mov r1, r10 - lsls r0, r1, 1 - ldr r1, [sp, 0x4] - adds r6, r0, r1 -_08055798: - movs r7, 0 - adds r1, r5, 0 - adds r1, 0xD - ldr r0, [sp] - add r0, r9 - bl GetMonData - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r4, 0 - bl sub_8052F84 - lsls r0, 24 - adds r1, r5, 0x1 - cmp r0, 0 - bne _080557EE - ldr r0, =gUnknown_0831C3E0 - ldrh r2, [r0] - adds r3, r0, 0 - cmp r2, r8 - beq _080557E2 - cmp r4, r2 - beq _080557D8 - ldr r5, =0x0000ffff - adds r2, r3, 0 -_080557CA: - adds r2, 0x2 - adds r7, 0x1 - ldrh r0, [r2] - cmp r0, r5 - beq _080557E2 - cmp r4, r0 - bne _080557CA -_080557D8: - lsls r0, r7, 1 - adds r0, r3 - ldrh r0, [r0] - cmp r0, r8 - bne _080557EE -_080557E2: - cmp r4, 0 - beq _080557EE - strh r4, [r6] - adds r6, 0x2 - movs r0, 0x1 - add r10, r0 -_080557EE: - adds r5, r1, 0 - cmp r5, 0x3 - ble _08055798 -_080557F4: - ldr r2, [sp, 0x8] - cmp r2, 0x5 - ble _0805574E - mov r1, r10 - cmp r1, 0 - beq _0805586C - ldr r2, =gHitMarker - ldr r0, [r2] - ldr r1, =0xfffffbff - ands r0, r1 - str r0, [r2] - ldr r4, =gRandomMove - bl Random - movs r1, 0xFF - ands r1, r0 - mov r0, r10 - muls r0, r1 - asrs r0, 8 - lsls r0, 1 - ldr r1, [sp, 0x4] - adds r0, r1 - ldrh r0, [r0] - strh r0, [r4] - ldrh r0, [r4] - movs r1, 0 - bl GetMoveTarget - ldr r1, =gBankTarget - strb r0, [r1] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _08055886 - .pool -_0805586C: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_08055886: - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkDE_asistattackselect - - thumb_func_start atkDF_setmagiccoat -atkDF_setmagiccoat: @ 805589C - push {lr} - ldr r1, =gBankTarget - ldr r3, =gBankAttacker - ldrb r0, [r3] - strb r0, [r1] - ldr r2, =gSpecialStatuses - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r2, 0x20 - orrs r1, r2 - strb r1, [r0] - ldr r0, =gUnknown_02024082 - ldrb r1, [r0] - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - subs r0, 0x1 - cmp r1, r0 - bne _080558FC - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _08055914 - .pool -_080558FC: - ldr r0, =gProtectStructs - ldrb r1, [r3] - lsls r1, 4 - adds r1, r0 - ldrb r0, [r1] - movs r2, 0x10 - orrs r0, r2 - strb r0, [r1] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_08055914: - pop {r0} - bx r0 - .pool - thumb_func_end atkDF_setmagiccoat - - thumb_func_start atkE0_setstealstatchange -atkE0_setstealstatchange: @ 8055920 - push {lr} - ldr r2, =gSpecialStatuses - ldr r3, =gBankAttacker - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r2, 0x20 - orrs r1, r2 - strb r1, [r0] - ldr r0, =gUnknown_02024082 - ldrb r1, [r0] - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - subs r0, 0x1 - cmp r1, r0 - bne _08055978 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _0805598E - .pool -_08055978: - ldr r0, =gProtectStructs - ldrb r1, [r3] - lsls r1, 4 - adds r1, r0 - ldrb r0, [r1] - orrs r0, r2 - strb r0, [r1] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_0805598E: - pop {r0} - bx r0 - .pool - thumb_func_end atkE0_setstealstatchange - - thumb_func_start atkE1_intimidate_string_loader -atkE1_intimidate_string_loader: @ 805599C - push {r4-r6,lr} - ldr r4, =gBattleScripting - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0xD8 - ldrb r0, [r0] - strb r0, [r4, 0x17] - ldrb r0, [r4, 0x17] - bl GetBankSide - lsls r0, 24 - lsrs r5, r0, 24 - ldr r2, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r2] - movs r0, 0x9 - strb r0, [r2, 0x1] - ldr r3, =gBattleMons - ldrb r1, [r4, 0x17] - movs r0, 0x58 - muls r0, r1 - adds r0, r3 - adds r0, 0x20 - ldrb r0, [r0] - strb r0, [r2, 0x2] - movs r0, 0xFF - strb r0, [r2, 0x3] - ldr r2, =gBankTarget - ldr r1, =gNoOfAllBanks - ldrb r0, [r2] - ldrb r1, [r1] - cmp r0, r1 - bcs _08055A22 - adds r4, r2, 0 - ldr r6, =gBitTable -_080559E2: - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, r5 - beq _08055A04 - ldr r0, =gAbsentBankFlags - ldrb r1, [r0] - ldrb r0, [r4] - lsls r0, 2 - adds r0, r6 - ldr r0, [r0] - ands r1, r0 - ldr r2, =gNoOfAllBanks - cmp r1, 0 - beq _08055A18 -_08055A04: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, =gNoOfAllBanks - lsls r0, 24 - lsrs r0, 24 - adds r2, r1, 0 - ldrb r1, [r2] - cmp r0, r1 - bcc _080559E2 -_08055A18: - ldr r0, =gBankTarget - ldrb r0, [r0] - ldrb r2, [r2] - cmp r0, r2 - bcc _08055A64 -_08055A22: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _08055A6C - .pool -_08055A64: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_08055A6C: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atkE1_intimidate_string_loader - - thumb_func_start atkE2_switchout_abilities -atkE2_switchout_abilities: @ 8055A78 - push {r4-r6,lr} - sub sp, 0x4 - ldr r5, =gBattlescriptCurrInstr - ldr r0, [r5] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r4, =gActiveBank - strb r0, [r4] - ldr r3, =gBattleMons - ldrb r0, [r4] - movs r6, 0x58 - adds r1, r0, 0 - muls r1, r6 - adds r0, r1, r3 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x1E - bne _08055AD2 - adds r3, 0x4C - adds r1, r3 - movs r0, 0 - str r0, [r1] - ldr r2, =gBitTable - ldrb r1, [r4] - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, r1, r0 - adds r0, 0x58 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r2 - ldrb r2, [r0] - adds r0, r1, 0 - muls r0, r6 - adds r0, r3 - str r0, [sp] - movs r0, 0 - movs r1, 0x28 - movs r3, 0x4 - bl EmitSetAttributes - ldrb r0, [r4] - bl MarkBufferBankForExecution -_08055AD2: - ldr r0, [r5] - adds r0, 0x2 - str r0, [r5] - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atkE2_switchout_abilities - - thumb_func_start atkE3_jumpiffainted -atkE3_jumpiffainted: @ 8055AF4 - push {r4,lr} - ldr r4, =gBattlescriptCurrInstr - ldr r0, [r4] - ldrb r0, [r0, 0x1] - bl get_battle_side_of_something - ldr r1, =gActiveBank - strb r0, [r1] - ldr r2, =gBattleMons - ldrb r1, [r1] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - ldrh r0, [r0, 0x28] - cmp r0, 0 - bne _08055B3C - ldr r2, [r4] - ldrb r1, [r2, 0x2] - ldrb r0, [r2, 0x3] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x5] - lsls r0, 24 - orrs r1, r0 - str r1, [r4] - b _08055B42 - .pool -_08055B3C: - ldr r0, [r4] - adds r0, 0x6 - str r0, [r4] -_08055B42: - pop {r4} - pop {r0} - bx r0 - thumb_func_end atkE3_jumpiffainted - - thumb_func_start atkE4_getsecretpowereffect -atkE4_getsecretpowereffect: @ 8055B48 - push {lr} - ldr r0, =gUnknown_02022FF0 - ldrb r0, [r0] - cmp r0, 0x7 - bhi _08055BE4 - lsls r0, 2 - ldr r1, =_08055B64 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08055B64: - .4byte _08055B84 - .4byte _08055B90 - .4byte _08055B9C - .4byte _08055BA8 - .4byte _08055BB4 - .4byte _08055BC0 - .4byte _08055BCC - .4byte _08055BD8 -_08055B84: - ldr r1, =gBattleCommunication - movs r0, 0x2 - b _08055BE8 - .pool -_08055B90: - ldr r1, =gBattleCommunication - movs r0, 0x1 - b _08055BE8 - .pool -_08055B9C: - ldr r1, =gBattleCommunication - movs r0, 0x1B - b _08055BE8 - .pool -_08055BA8: - ldr r1, =gBattleCommunication - movs r0, 0x17 - b _08055BE8 - .pool -_08055BB4: - ldr r1, =gBattleCommunication - movs r0, 0x16 - b _08055BE8 - .pool -_08055BC0: - ldr r1, =gBattleCommunication - movs r0, 0x18 - b _08055BE8 - .pool -_08055BCC: - ldr r1, =gBattleCommunication - movs r0, 0x7 - b _08055BE8 - .pool -_08055BD8: - ldr r1, =gBattleCommunication - movs r0, 0x8 - b _08055BE8 - .pool -_08055BE4: - ldr r1, =gBattleCommunication - movs r0, 0x5 -_08055BE8: - strb r0, [r1, 0x3] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end atkE4_getsecretpowereffect - - thumb_func_start atkE5_pickup -atkE5_pickup: @ 8055C00 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - bl InBattlePike - lsls r0, 24 - cmp r0, 0 - beq _08055C18 - b _08055DD8 -_08055C18: - bl InBattlePyramid - lsls r0, 24 - cmp r0, 0 - beq _08055CC4 - movs r6, 0 - mov r7, sp - ldr r0, =gBaseStats - mov r8, r0 -_08055C2A: - movs r0, 0x64 - adds r4, r6, 0 - muls r4, r0 - ldr r0, =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0 - movs r1, 0xC - bl GetMonData - strh r0, [r7] - adds r0, r4, 0 - movs r1, 0x2E - bl GetMonData - cmp r0, 0 - beq _08055C6C - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - add r0, r8 - ldrb r0, [r0, 0x17] - b _08055C76 - .pool -_08055C6C: - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - add r0, r8 - ldrb r0, [r0, 0x16] -_08055C76: - cmp r0, 0x35 - bne _08055CB6 - cmp r5, 0 - beq _08055CB6 - movs r0, 0xCE - lsls r0, 1 - cmp r5, r0 - beq _08055CB6 - ldrh r0, [r7] - cmp r0, 0 - bne _08055CB6 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0xA - bl __umodsi3 - lsls r0, 16 - cmp r0, 0 - bne _08055CB6 - bl CalculateBattlePyramidPickupItemId - strh r0, [r7] - movs r0, 0x64 - muls r0, r6 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0xC - mov r2, sp - bl SetMonData -_08055CB6: - adds r6, 0x1 - cmp r6, 0x5 - ble _08055C2A - b _08055DD8 - .pool -_08055CC4: - movs r6, 0 - movs r1, 0x64 - mov r8, r1 - ldr r7, =gPlayerParty - mov r10, sp -_08055CCE: - mov r4, r8 - muls r4, r6 - adds r4, r7 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0 - movs r1, 0xC - bl GetMonData - mov r1, r10 - strh r0, [r1] - adds r0, r4, 0 - movs r1, 0x2E - bl GetMonData - cmp r0, 0 - beq _08055D30 - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - ldr r1, =gBaseStats - adds r0, r1 - ldrb r0, [r0, 0x17] - b _08055D3C - .pool -_08055D10: - mov r0, r8 - muls r0, r6 - adds r0, r7 - adds r2, r1, 0 - adds r2, 0x63 - subs r2, r4 - lsls r2, 1 - ldr r1, =gRarePickupItems - adds r2, r1 - movs r1, 0xC - bl SetMonData - b _08055DD0 - .pool -_08055D30: - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - ldr r1, =gBaseStats - adds r0, r1 - ldrb r0, [r0, 0x16] -_08055D3C: - adds r1, r6, 0x1 - mov r9, r1 - cmp r0, 0x35 - bne _08055DD0 - cmp r5, 0 - beq _08055DD0 - movs r0, 0xCE - lsls r0, 1 - cmp r5, r0 - beq _08055DD0 - mov r1, r10 - ldrh r0, [r1] - cmp r0, 0 - bne _08055DD0 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0xA - bl __umodsi3 - lsls r0, 16 - cmp r0, 0 - bne _08055DD0 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x64 - bl __umodsi3 - lsls r0, 16 - lsrs r4, r0, 16 - mov r0, r8 - muls r0, r6 - adds r0, r7 - movs r1, 0x38 - bl GetMonData - subs r0, 0x1 - movs r1, 0xA - bl __udivsi3 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x9 - bls _08055D9C - movs r1, 0x9 -_08055D9C: - movs r2, 0 - b _08055DAE - .pool -_08055DA4: - adds r0, r4, 0 - subs r0, 0x62 - cmp r0, 0x1 - bls _08055D10 - adds r2, 0x1 -_08055DAE: - cmp r2, 0x8 - bgt _08055DD0 - ldr r0, =gPickupProbabilities - adds r0, r2, r0 - ldrb r0, [r0] - cmp r0, r4 - ble _08055DA4 - mov r0, r8 - muls r0, r6 - adds r0, r7 - adds r2, r1, r2 - lsls r2, 1 - ldr r1, =gPickupItems - adds r2, r1 - movs r1, 0xC - bl SetMonData -_08055DD0: - mov r6, r9 - cmp r6, 0x5 - bgt _08055DD8 - b _08055CCE -_08055DD8: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkE5_pickup - - thumb_func_start atkE6_castform_change_animation -atkE6_castform_change_animation: @ 8055DFC - push {r4,lr} - ldr r4, =gActiveBank - ldr r0, =gBattleScripting - ldrb r0, [r0, 0x17] - strb r0, [r4] - ldr r1, =gBattleMons - ldrb r2, [r4] - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 17 - ands r0, r1 - ldr r3, =gBattleStruct - cmp r0, 0 - beq _08055E2C - ldr r0, [r3] - adds r0, 0x7F - ldrb r1, [r0] - movs r2, 0x80 - orrs r1, r2 - strb r1, [r0] -_08055E2C: - ldr r0, [r3] - adds r0, 0x7F - ldrb r2, [r0] - movs r0, 0 - movs r1, 0 - bl dp01_build_cmdbuf_x34_a_bb_aka_battle_anim - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkE6_castform_change_animation - - thumb_func_start atkE7_castform_data_change -atkE7_castform_data_change: @ 8055E64 - push {r4,lr} - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - ldr r0, =gBattleScripting - ldrb r0, [r0, 0x17] - bl CastformDataTypeChange - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _08055E8E - ldr r0, =BattleScript_CastformChange - bl b_push_move_exec - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x7F - subs r1, r4, 0x1 - strb r1, [r0] -_08055E8E: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkE7_castform_data_change - - thumb_func_start atkE8_settypebasedhalvers -atkE8_settypebasedhalvers: @ 8055EA4 - push {r4,lr} - movs r4, 0 - ldr r2, =gBattleMoves - ldr r0, =gCurrentMove - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0xC9 - bne _08055EF4 - ldr r1, =gStatuses3 - ldr r0, =gBankAttacker - ldrb r0, [r0] - lsls r0, 2 - adds r2, r0, r1 - ldr r1, [r2] - movs r3, 0x80 - lsls r3, 9 - adds r0, r1, 0 - ands r0, r3 - cmp r0, 0 - bne _08055F18 - orrs r1, r3 - str r1, [r2] - ldr r0, =gBattleCommunication - strb r4, [r0, 0x5] - b _08055F1C - .pool -_08055EF4: - ldr r1, =gStatuses3 - ldr r0, =gBankAttacker - ldrb r0, [r0] - lsls r0, 2 - adds r2, r0, r1 - ldr r1, [r2] - movs r3, 0x80 - lsls r3, 10 - adds r0, r1, 0 - ands r0, r3 - cmp r0, 0 - bne _08055F18 - orrs r1, r3 - str r1, [r2] - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x5] - movs r4, 0x1 -_08055F18: - cmp r4, 0 - beq _08055F38 -_08055F1C: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _08055F52 - .pool -_08055F38: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_08055F52: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkE8_settypebasedhalvers - - thumb_func_start atkE9_setweatherballtype -atkE9_setweatherballtype: @ 8055F5C - push {lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0xD - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _08055FFC - str r0, [sp] - movs r0, 0x13 - movs r1, 0 - movs r2, 0x4D - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - bne _08055FFC - ldr r2, =gBattleWeather - ldrb r0, [r2] - cmp r0, 0 - beq _08055F9A - ldr r1, =gBattleScripting - movs r0, 0x2 - strb r0, [r1, 0xE] -_08055F9A: - ldrh r1, [r2] - movs r0, 0x7 - ands r0, r1 - cmp r0, 0 - beq _08055FB8 - ldr r0, =gBattleStruct - ldr r1, [r0] - movs r0, 0x8B - b _08055FFA - .pool -_08055FB8: - movs r0, 0x18 - ands r0, r1 - cmp r0, 0 - beq _08055FCC - ldr r0, =gBattleStruct - ldr r1, [r0] - movs r0, 0x85 - b _08055FFA - .pool -_08055FCC: - movs r0, 0x60 - ands r0, r1 - cmp r0, 0 - beq _08055FE0 - ldr r0, =gBattleStruct - ldr r1, [r0] - movs r0, 0x8A - b _08055FFA - .pool -_08055FE0: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08055FF4 - ldr r0, =gBattleStruct - ldr r1, [r0] - movs r0, 0x8F - b _08055FFA - .pool -_08055FF4: - ldr r0, =gBattleStruct - ldr r1, [r0] - movs r0, 0x80 -_08055FFA: - strb r0, [r1, 0x13] -_08055FFC: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - add sp, 0x4 - pop {r0} - bx r0 - .pool - thumb_func_end atkE9_setweatherballtype - - thumb_func_start atkEA_recycleitem -atkEA_recycleitem: @ 8056014 - push {r4-r7,lr} - sub sp, 0x4 - ldr r7, =gActiveBank - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r7] - ldr r1, =gBattleStruct - ldrb r2, [r7] - lsls r0, r2, 1 - adds r0, 0xB8 - ldr r1, [r1] - adds r6, r1, r0 - ldrh r5, [r6] - cmp r5, 0 - beq _08056094 - ldr r4, =gBattleMons - movs r3, 0x58 - adds r0, r2, 0 - muls r0, r3 - adds r0, r4 - ldrh r0, [r0, 0x2E] - cmp r0, 0 - bne _08056094 - ldr r1, =gLastUsedItem - strh r5, [r1] - strh r0, [r6] - ldrb r0, [r7] - muls r0, r3 - adds r0, r4 - ldrh r1, [r1] - strh r1, [r0, 0x2E] - ldrb r0, [r7] - muls r0, r3 - adds r1, r4, 0 - adds r1, 0x2E - adds r0, r1 - str r0, [sp] - movs r0, 0 - movs r1, 0x2 - movs r2, 0 - movs r3, 0x2 - bl EmitSetAttributes - ldrb r0, [r7] - bl MarkBufferBankForExecution - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _080560AE - .pool -_08056094: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_080560AE: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkEA_recycleitem - - thumb_func_start atkEB_settypetoterrain -atkEB_settypetoterrain: @ 80560BC - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, =gBattleMons - mov r8, r0 - ldr r7, =gBankAttacker - ldrb r0, [r7] - movs r6, 0x58 - muls r0, r6 - mov r1, r8 - adds r3, r0, r1 - movs r0, 0x21 - adds r0, r3 - mov r12, r0 - ldr r5, =sTerrainToType - ldr r4, =gUnknown_02022FF0 - ldrb r0, [r4] - adds r0, r5 - ldrb r2, [r0] - mov r1, r12 - ldrb r0, [r1] - adds r1, r2, 0 - cmp r0, r1 - beq _08056144 - adds r0, r3, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, r1 - beq _08056144 - mov r0, r12 - strb r2, [r0] - ldrb r0, [r7] - adds r1, r0, 0 - muls r1, r6 - add r1, r8 - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - adds r1, 0x22 - strb r0, [r1] - ldr r1, =gBattleTextBuff1 - movs r0, 0xFD - strb r0, [r1] - movs r0, 0x3 - strb r0, [r1, 0x1] - ldrb r0, [r4] - adds r0, r5 - ldrb r0, [r0] - strb r0, [r1, 0x2] - movs r0, 0xFF - strb r0, [r1, 0x3] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _0805615E - .pool -_08056144: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_0805615E: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkEB_settypetoterrain - - thumb_func_start atkEC_pursuit_sth -atkEC_pursuit_sth: @ 805616C - push {r4-r6,lr} - ldr r5, =gBankAttacker - ldrb r0, [r5] - bl GetBankIdentity - movs r1, 0x2 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - ldr r4, =gActiveBank - strb r0, [r4] - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r6, 0x1 - ands r0, r6 - cmp r0, 0 - beq _0805620C - ldr r0, =gAbsentBankFlags - ldrb r1, [r0] - ldr r2, =gBitTable - ldrb r3, [r4] - lsls r0, r3, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _0805620C - ldr r0, =gUnknown_0202421C - adds r0, r3, r0 - ldrb r0, [r0] - cmp r0, 0 - bne _0805620C - ldr r1, =gChosenMovesByBanks - lsls r0, r3, 1 - adds r0, r1 - ldrh r2, [r0] - cmp r2, 0xE4 - bne _0805620C - ldr r0, =gUnknown_0202407A - adds r0, r3, r0 - movs r1, 0xB - strb r1, [r0] - ldr r0, =gCurrentMove - strh r2, [r0] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - ldr r0, =gBattleScripting - strb r6, [r0, 0x18] - ldrb r1, [r5] - adds r0, 0x20 - strb r1, [r0] - ldrb r0, [r4] - strb r0, [r5] - b _08056226 - .pool -_0805620C: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_08056226: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atkEC_pursuit_sth - - thumb_func_start atkED_802B4B4 -atkED_802B4B4: @ 8056230 - push {r4,lr} - ldr r1, =gEffectBank - ldr r3, =gBankAttacker - ldrb r0, [r3] - strb r0, [r1] - ldr r2, =gBankTarget - lsls r0, 24 - lsrs r0, 24 - adds r4, r1, 0 - ldrb r1, [r2] - cmp r0, r1 - bne _08056264 - ldr r1, =gBattleScripting - ldrb r0, [r1, 0x17] - strb r0, [r2] - strb r0, [r3] - b _0805626A - .pool -_08056264: - ldr r1, =gBattleScripting - ldrb r0, [r1, 0x17] - strb r0, [r2] -_0805626A: - ldrb r0, [r4] - strb r0, [r1, 0x17] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkED_802B4B4 - - thumb_func_start atkEE_removelightscreenreflect -atkEE_removelightscreenreflect: @ 8056284 - push {r4,lr} - ldr r0, =gBankAttacker - ldrb r0, [r0] - bl GetBankSide - movs r1, 0x1 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gSideTimers - lsls r3, r0, 1 - adds r0, r3, r0 - lsls r0, 2 - adds r4, r0, r1 - ldrb r0, [r4] - cmp r0, 0 - bne _080562AC - ldrb r1, [r4, 0x2] - cmp r1, 0 - beq _080562E4 -_080562AC: - ldr r2, =gSideAffecting - adds r2, r3, r2 - ldrh r1, [r2] - ldr r0, =0x0000fffe - ands r0, r1 - movs r3, 0 - ldr r1, =0x0000fffd - ands r0, r1 - strh r0, [r2] - strb r3, [r4] - strb r3, [r4, 0x2] - ldr r1, =gBattleScripting - movs r0, 0x1 - strb r0, [r1, 0x18] - strb r0, [r1, 0x19] - b _080562EA - .pool -_080562E4: - ldr r0, =gBattleScripting - strb r1, [r0, 0x18] - strb r1, [r0, 0x19] -_080562EA: - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkEE_removelightscreenreflect - - thumb_func_start atkEF_pokeball_catch_calculation -atkEF_pokeball_catch_calculation: @ 8056300 - push {r4-r6,lr} - movs r4, 0 - ldr r0, =gBattleExecBuffer - ldr r0, [r0] - cmp r0, 0 - beq _0805630E - b _08056696 -_0805630E: - ldr r5, =gActiveBank - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r5] - ldr r6, =gBankTarget - movs r1, 0x1 - eors r0, r1 - strb r0, [r6] - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0805635C - movs r0, 0 - movs r1, 0x5 - bl dp01_build_cmdbuf_x0D_a - ldrb r0, [r5] - bl MarkBufferBankForExecution - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DBE02 - b _08056694 - .pool -_0805635C: - movs r0, 0x80 - lsls r0, 2 - ands r1, r0 - cmp r1, 0 - beq _08056384 - movs r0, 0 - movs r1, 0x4 - bl dp01_build_cmdbuf_x0D_a - ldrb r0, [r5] - bl MarkBufferBankForExecution - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DBDCA - b _08056694 - .pool -_08056384: - ldr r0, =gLastUsedItem - ldrh r0, [r0] - cmp r0, 0x5 - bne _080563B0 - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x7C - ldrb r0, [r0] - lsls r1, r0, 2 - adds r1, r0 - lsls r0, r1, 8 - subs r0, r1 - movs r1, 0x64 - bl __divsi3 - lsls r0, 24 - lsrs r5, r0, 24 - b _080563C8 - .pool -_080563B0: - ldr r3, =gBaseStats - ldr r2, =gBattleMons - ldrb r1, [r6] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - ldrh r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r3 - ldrb r5, [r0, 0x8] -_080563C8: - ldr r2, =gLastUsedItem - ldrh r0, [r2] - cmp r0, 0x5 - bhi _080563D2 - b _080564C8 -_080563D2: - subs r0, 0x6 - cmp r0, 0x6 - bls _080563DA - b _080564D2 -_080563DA: - lsls r0, 2 - ldr r1, =_080563F4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080563F4: - .4byte _08056410 - .4byte _08056440 - .4byte _08056452 - .4byte _08056480 - .4byte _080564B0 - .4byte _08056472 - .4byte _08056472 -_08056410: - ldr r2, =gBattleMons - ldr r0, =gBankTarget - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - adds r1, r0, 0 - adds r1, 0x21 - ldrb r1, [r1] - cmp r1, 0xB - beq _080564A4 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0xB - beq _080564A4 - cmp r1, 0x6 - beq _080564A4 - cmp r0, 0x6 - beq _080564A4 - b _08056472 - .pool -_08056440: - bl sav1_map_get_light_level - lsls r0, 24 - lsrs r0, 24 - movs r4, 0xA - cmp r0, 0x5 - bne _080564D2 - movs r4, 0x23 - b _080564D2 -_08056452: - ldr r2, =gBattleMons - ldr r0, =gBankTarget - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - adds r0, 0x2A - ldrb r1, [r0] - cmp r1, 0x27 - bhi _08056472 - movs r0, 0x28 - subs r0, r1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x9 - bhi _080564D2 -_08056472: - movs r4, 0xA - b _080564D2 - .pool -_08056480: - ldr r2, =gBattleMons - ldr r0, =gBankTarget - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - ldrh r0, [r0] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - bl GetSetPokedexFlag - lsls r0, 24 - movs r4, 0xA - cmp r0, 0 - beq _080564D2 -_080564A4: - movs r4, 0x1E - b _080564D2 - .pool -_080564B0: - ldr r0, =gBattleResults - ldrb r0, [r0, 0x13] - adds r0, 0xA - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x28 - bls _080564D2 - movs r4, 0x28 - b _080564D2 - .pool -_080564C8: - ldr r1, =sBallCatchBonuses - ldrh r0, [r2] - subs r0, 0x2 - adds r0, r1 - ldrb r4, [r0] -_080564D2: - adds r0, r5, 0 - muls r0, r4 - movs r1, 0xA - bl __divsi3 - ldr r5, =gBattleMons - ldr r1, =gBankTarget - ldrb r2, [r1] - movs r1, 0x58 - adds r4, r2, 0 - muls r4, r1 - adds r3, r4, r5 - ldrh r2, [r3, 0x2C] - lsls r1, r2, 1 - adds r1, r2 - ldrh r2, [r3, 0x28] - lsls r2, 1 - subs r2, r1, r2 - muls r0, r2 - bl __divsi3 - adds r6, r0, 0 - adds r5, 0x4C - adds r4, r5 - ldr r4, [r4] - movs r0, 0x27 - ands r0, r4 - cmp r0, 0 - beq _0805650E - lsls r6, 1 -_0805650E: - movs r0, 0xD8 - ands r4, r0 - cmp r4, 0 - beq _08056522 - lsls r0, r6, 4 - subs r0, r6 - movs r1, 0xA - bl __udivsi3 - adds r6, r0, 0 -_08056522: - ldr r1, =gLastUsedItem - ldrh r0, [r1] - cmp r0, 0x5 - beq _08056564 - cmp r0, 0x1 - bne _08056550 - ldr r0, =gBattleResults - ldrb r1, [r0, 0x5] - movs r2, 0x2 - orrs r1, r2 - strb r1, [r0, 0x5] - b _08056564 - .pool -_08056550: - ldr r0, =gBattleResults - ldrh r1, [r1] - adds r0, r1 - adds r1, r0, 0 - adds r1, 0x34 - ldrb r0, [r1] - cmp r0, 0xFE - bhi _08056564 - adds r0, 0x1 - strb r0, [r1] -_08056564: - cmp r6, 0xFE - bls _080565C8 - movs r0, 0 - movs r1, 0x4 - bl dp01_build_cmdbuf_x0D_a - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DBD84 - str r0, [r1] - ldr r1, =gBattlePartyID - ldr r0, =gBankTarget - ldrb r0, [r0] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - ldr r2, =gLastUsedItem - movs r1, 0x26 - bl SetMonData - bl CalculatePlayerPartyCount - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - beq _08056656 - b _08056680 - .pool -_080565C8: - movs r0, 0xFF - lsls r0, 16 - adds r1, r6, 0 - bl __udivsi3 - bl Sqrt - lsls r0, 16 - lsrs r0, 16 - bl Sqrt - lsls r0, 16 - lsrs r6, r0, 16 - ldr r0, =0x000ffff0 - adds r1, r6, 0 - bl __udivsi3 - adds r6, r0, 0 - movs r4, 0 - b _080565FA - .pool -_080565F4: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 -_080565FA: - cmp r4, 0x3 - bhi _0805660A - bl Random - lsls r0, 16 - lsrs r0, 16 - cmp r0, r6 - bcc _080565F4 -_0805660A: - ldr r5, =gLastUsedItem - ldrh r0, [r5] - cmp r0, 0x1 - bne _08056614 - movs r4, 0x4 -_08056614: - movs r0, 0 - adds r1, r4, 0 - bl dp01_build_cmdbuf_x0D_a - ldr r0, =gActiveBank - ldrb r0, [r0] - bl MarkBufferBankForExecution - cmp r4, 0x4 - bne _0805668C - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DBD84 - str r0, [r1] - ldr r1, =gBattlePartyID - ldr r0, =gBankTarget - ldrb r0, [r0] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x26 - adds r2, r5, 0 - bl SetMonData - bl CalculatePlayerPartyCount - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - bne _08056680 -_08056656: - ldr r1, =gBattleCommunication - movs r0, 0 - strb r0, [r1, 0x5] - b _08056696 - .pool -_08056680: - ldr r1, =gBattleCommunication - movs r0, 0x1 - strb r0, [r1, 0x5] - b _08056696 - .pool -_0805668C: - ldr r0, =gBattleCommunication - strb r4, [r0, 0x5] - ldr r1, =gBattlescriptCurrInstr - ldr r0, =gUnknown_082DBDD4 -_08056694: - str r0, [r1] -_08056696: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end atkEF_pokeball_catch_calculation - - thumb_func_start atkF0_copy_caught_poke -atkF0_copy_caught_poke: @ 80566A8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, =gBattlePartyID - mov r9, r0 - ldr r5, =gBankAttacker - ldrb r0, [r5] - movs r6, 0x1 - eors r0, r6 - lsls r0, 1 - add r0, r9 - ldrh r0, [r0] - movs r7, 0x64 - muls r0, r7 - ldr r1, =gEnemyParty - mov r8, r1 - add r0, r8 - bl GiveMonToPlayer - lsls r0, 24 - cmp r0, 0 - beq _08056792 - bl sub_813B21C - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _08056734 - ldr r0, =gBattleCommunication - strb r1, [r0, 0x5] - ldr r4, =gStringVar1 - ldr r0, =0x00004036 - bl VarGet - lsls r0, 24 - lsrs r0, 24 - bl sav3_get_box_name - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldrb r0, [r5] - eors r0, r6 - lsls r0, 1 - add r0, r9 - ldrh r0, [r0] - muls r0, r7 - add r0, r8 - ldr r2, =gStringVar2 - movs r1, 0x2 - bl GetMonData - b _0805677E - .pool -_08056734: - ldr r4, =gStringVar1 - ldr r0, =0x00004036 - bl VarGet - lsls r0, 24 - lsrs r0, 24 - bl sav3_get_box_name - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldrb r0, [r5] - eors r0, r6 - lsls r0, 1 - add r0, r9 - ldrh r0, [r0] - muls r0, r7 - add r0, r8 - ldr r2, =gStringVar2 - movs r1, 0x2 - bl GetMonData - ldr r4, =gStringVar3 - bl get_unknown_box_id - lsls r0, 24 - lsrs r0, 24 - bl sav3_get_box_name - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldr r1, =gBattleCommunication - movs r0, 0x2 - strb r0, [r1, 0x5] -_0805677E: - ldr r0, =0x000008ab - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _08056792 - ldr r1, =gBattleCommunication - ldrb r0, [r1, 0x5] - adds r0, 0x1 - strb r0, [r1, 0x5] -_08056792: - ldr r0, =gBattlePartyID - mov r10, r0 - ldr r1, =gBankAttacker - mov r9, r1 - ldrb r0, [r1] - movs r4, 0x1 - eors r0, r4 - lsls r0, 1 - add r0, r10 - ldrh r0, [r0] - movs r1, 0x64 - mov r8, r1 - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - ldr r6, =gEnemyParty - adds r0, r6 - movs r1, 0xB - movs r2, 0 - bl GetMonData - ldr r5, =gBattleResults - strh r0, [r5, 0x28] - mov r1, r9 - ldrb r0, [r1] - eors r0, r4 - lsls r0, 1 - add r0, r10 - ldrh r0, [r0] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - adds r2, r5, 0 - adds r2, 0x2A - movs r1, 0x2 - bl GetMonData - mov r1, r9 - ldrb r0, [r1] - eors r4, r0 - lsls r4, 1 - add r4, r10 - ldrh r0, [r4] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - movs r1, 0x26 - movs r2, 0 - bl GetMonData - movs r1, 0xF - ands r0, r1 - lsls r0, 2 - ldrb r2, [r5, 0x5] - movs r1, 0x3D - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r5, 0x5] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end atkF0_copy_caught_poke - - thumb_func_start atkF1_setpoke_as_caught -atkF1_setpoke_as_caught: @ 8056850 - push {r4,r5,lr} - ldr r4, =gEnemyParty - adds r0, r4, 0 - movs r1, 0xB - movs r2, 0 - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0 - bl GetMonData - adds r4, r0, 0 - adds r0, r5, 0 - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - bl GetSetPokedexFlag - lsls r0, 24 - cmp r0, 0 - beq _080568A8 - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] - b _080568C2 - .pool -_080568A8: - adds r0, r5, 0 - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - adds r2, r4, 0 - bl HandleSetPokedexFlag - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] -_080568C2: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end atkF1_setpoke_as_caught - - thumb_func_start atkF2_display_dex_info -atkF2_display_dex_info: @ 80568CC - push {r4,lr} - sub sp, 0x4 - ldr r0, =gEnemyParty - movs r1, 0xB - movs r2, 0 - bl GetMonData - lsls r0, 16 - lsrs r4, r0, 16 - ldr r0, =gBattleCommunication - ldrb r0, [r0] - cmp r0, 0x5 - bls _080568E8 - b _08056A2C -_080568E8: - lsls r0, 2 - ldr r1, =_08056900 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08056900: - .4byte _08056918 - .4byte _0805692A - .4byte _08056978 - .4byte _080569C8 - .4byte _080569E0 - .4byte _08056A18 -_08056918: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - b _08056A06 -_0805692A: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08056938 - b _08056A2C -_08056938: - bl FreeAllWindowBuffers - adds r0, r4, 0 - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - ldr r3, =gBattleMons - ldr r1, =gBankTarget - ldrb r2, [r1] - movs r1, 0x58 - muls r2, r1 - adds r1, r3, 0 - adds r1, 0x54 - adds r1, r2, r1 - ldr r1, [r1] - adds r3, 0x48 - adds r2, r3 - ldr r2, [r2] - bl sub_80BFDF4 - ldr r1, =gBattleCommunication - strb r0, [r1, 0x1] - b _08056A08 - .pool -_08056978: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08056A2C - ldr r0, =gMain - ldr r1, [r0, 0x4] - ldr r0, =sub_8038420 - cmp r1, r0 - bne _08056A2C - ldr r2, =gTasks - ldr r4, =gBattleCommunication - ldrb r1, [r4, 0x1] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0, 0x4] - cmp r0, 0 - bne _08056A2C - ldr r0, =vblank_cb_08078BB4 - bl SetVBlankCallback - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - b _08056A2C - .pool -_080569C8: - bl c2_berry_program_update_menu - bl sub_8035AA4 - ldr r1, =gUnknown_02022E20 - movs r2, 0x80 - lsls r2, 1 - adds r0, r2, 0 - strh r0, [r1] - b _08056A06 - .pool -_080569E0: - bl IsDma3ManagerBusyWithBgCopy - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _08056A2C - ldr r0, =0x0000ffff - str r1, [sp] - movs r1, 0 - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - movs r0, 0 - bl ShowBg - movs r0, 0x3 - bl ShowBg -_08056A06: - ldr r1, =gBattleCommunication -_08056A08: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _08056A2C - .pool -_08056A18: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08056A2C - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_08056A2C: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end atkF2_display_dex_info - - thumb_func_start sub_8056A3C -sub_8056A3C: @ 8056A3C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - ldr r4, [sp, 0x40] - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r1, 24 - lsrs r1, 24 - str r1, [sp, 0x10] - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x1C] - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0x14] - lsls r4, 24 - lsrs r4, 24 - mov r10, r4 - movs r1, 0 - add r0, sp, 0xC - strh r1, [r0] - ldr r6, [sp, 0x10] - cmp r6, r3 - ble _08056A76 - b _08056B62 -_08056A76: - mov r4, r8 - adds r0, r6, 0x1 - str r0, [sp, 0x18] - ldr r2, [sp, 0x1C] - cmp r4, r2 - bgt _08056B58 - add r5, sp, 0xC - lsls r7, r6, 24 - mov r9, r7 -_08056A88: - ldr r0, [sp, 0x10] - cmp r6, r0 - bne _08056AB4 - cmp r4, r8 - bne _08056A9C - ldr r0, =0x00001022 - b _08056AFE - .pool -_08056A9C: - ldr r2, [sp, 0x1C] - cmp r4, r2 - bne _08056AAC - ldr r0, =0x00001024 - b _08056AFE - .pool -_08056AAC: - ldr r0, =0x00001023 - b _08056AFE - .pool -_08056AB4: - ldr r7, [sp, 0x14] - cmp r6, r7 - bne _08056AE0 - cmp r4, r8 - bne _08056AC8 - ldr r0, =0x00001028 - b _08056AFE - .pool -_08056AC8: - ldr r0, [sp, 0x1C] - cmp r4, r0 - bne _08056AD8 - ldr r0, =0x0000102a - b _08056AFE - .pool -_08056AD8: - ldr r0, =0x00001029 - b _08056AFE - .pool -_08056AE0: - cmp r4, r8 - bne _08056AEC - ldr r0, =0x00001025 - b _08056AFE - .pool -_08056AEC: - ldr r2, [sp, 0x1C] - cmp r4, r2 - bne _08056AFC - ldr r0, =0x00001027 - b _08056AFE - .pool -_08056AFC: - ldr r0, =0x00001026 -_08056AFE: - strh r0, [r5] - movs r1, 0x1 - mov r0, r10 - ands r0, r1 - cmp r0, 0 - beq _08056B0E - movs r0, 0 - strh r0, [r5] -_08056B0E: - movs r0, 0x80 - mov r7, r10 - ands r0, r7 - cmp r0, 0 - beq _08056B38 - lsls r2, r4, 24 - lsrs r2, 24 - str r1, [sp] - str r1, [sp, 0x4] - movs r0, 0x11 - str r0, [sp, 0x8] - movs r0, 0x1 - add r1, sp, 0xC - mov r7, r9 - lsrs r3, r7, 24 - bl CopyToBgTilemapBufferRect_ChangePalette - b _08056B50 - .pool -_08056B38: - lsls r2, r4, 24 - lsrs r2, 24 - str r1, [sp] - str r1, [sp, 0x4] - movs r0, 0x11 - str r0, [sp, 0x8] - movs r0, 0 - add r1, sp, 0xC - mov r7, r9 - lsrs r3, r7, 24 - bl CopyToBgTilemapBufferRect_ChangePalette -_08056B50: - adds r4, 0x1 - ldr r0, [sp, 0x1C] - cmp r4, r0 - ble _08056A88 -_08056B58: - ldr r6, [sp, 0x18] - ldr r2, [sp, 0x14] - cmp r6, r2 - bgt _08056B62 - b _08056A76 -_08056B62: - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8056A3C - - thumb_func_start sub_8056B74 -sub_8056B74: @ 8056B74 - push {lr} - sub sp, 0x10 - adds r3, r0, 0 - add r0, sp, 0xC - movs r2, 0x1 - strh r2, [r0] - movs r1, 0x2 - strh r1, [r0, 0x2] - lsls r3, 25 - movs r0, 0x90 - lsls r0, 20 - adds r3, r0 - lsrs r3, 24 - str r2, [sp] - str r1, [sp, 0x4] - movs r0, 0x11 - str r0, [sp, 0x8] - movs r0, 0 - add r1, sp, 0xC - movs r2, 0x19 - bl CopyToBgTilemapBufferRect_ChangePalette - movs r0, 0 - bl CopyBgTilemapBufferToVram - add sp, 0x10 - pop {r0} - bx r0 - thumb_func_end sub_8056B74 - - thumb_func_start sub_8056BAC -sub_8056BAC: @ 8056BAC - push {lr} - sub sp, 0x10 - adds r3, r0, 0 - add r0, sp, 0xC - ldr r1, =0x00001016 - strh r1, [r0] - strh r1, [r0, 0x2] - lsls r3, 25 - movs r0, 0x90 - lsls r0, 20 - adds r3, r0 - lsrs r3, 24 - movs r0, 0x1 - str r0, [sp] - movs r0, 0x2 - str r0, [sp, 0x4] - movs r0, 0x11 - str r0, [sp, 0x8] - movs r0, 0 - add r1, sp, 0xC - movs r2, 0x19 - bl CopyToBgTilemapBufferRect_ChangePalette - movs r0, 0 - bl CopyBgTilemapBufferToVram - add sp, 0x10 - pop {r0} - bx r0 - .pool - thumb_func_end sub_8056BAC - - thumb_func_start atkF3_nickname_caught_poke -atkF3_nickname_caught_poke: @ 8056BEC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - ldr r0, =gBattleCommunication - ldrb r1, [r0] - adds r4, r0, 0 - cmp r1, 0x4 - bls _08056C04 - b _08056E62 -_08056C04: - lsls r0, r1, 2 - ldr r1, =_08056C18 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08056C18: - .4byte _08056C2C - .4byte _08056C60 - .4byte _08056CFC - .4byte _08056DD4 - .4byte _08056E2C -_08056C2C: - movs r4, 0 - str r4, [sp] - movs r0, 0x18 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl sub_8056A3C - ldr r0, =gText_BattleYesNoChoice - movs r1, 0xC - bl battle_show_message_maybe - ldr r1, =gBattleCommunication - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - strb r4, [r1, 0x1] - movs r0, 0 - bl sub_8056B74 - b _08056E62 - .pool -_08056C60: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08056C86 - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _08056C86 - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4, 0x1] - bl sub_8056BAC - movs r0, 0 - strb r0, [r4, 0x1] - bl sub_8056B74 -_08056C86: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08056CAE - ldr r4, =gBattleCommunication - ldrb r0, [r4, 0x1] - cmp r0, 0 - bne _08056CAE - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4, 0x1] - bl sub_8056BAC - movs r0, 0x1 - strb r0, [r4, 0x1] - bl sub_8056B74 -_08056CAE: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08056CE0 - movs r0, 0x5 - bl PlaySE - ldr r1, =gBattleCommunication - ldrb r0, [r1, 0x1] - cmp r0, 0 - bne _08056CF2 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - movs r0, 0x3 - bl BeginFastPaletteFade - b _08056E62 - .pool -_08056CE0: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08056CEA - b _08056E62 -_08056CEA: - movs r0, 0x5 - bl PlaySE - ldr r1, =gBattleCommunication -_08056CF2: - movs r0, 0x4 - strb r0, [r1] - b _08056E62 - .pool -_08056CFC: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08056D0A - b _08056E62 -_08056D0A: - ldr r7, =gBattlePartyID - ldr r0, =gBankAttacker - mov r10, r0 - ldrb r0, [r0] - movs r4, 0x1 - eors r0, r4 - lsls r0, 1 - adds r0, r7 - ldrh r0, [r0] - movs r1, 0x64 - mov r9, r1 - mov r2, r9 - muls r2, r0 - adds r0, r2, 0 - ldr r1, =gEnemyParty - mov r8, r1 - add r0, r8 - ldr r1, =gBattleStruct - ldr r2, [r1] - adds r2, 0x6D - movs r1, 0x2 - bl GetMonData - bl FreeAllWindowBuffers - mov r2, r10 - ldrb r0, [r2] - eors r0, r4 - lsls r0, 1 - adds r0, r7 - ldrh r0, [r0] - mov r1, r9 - muls r1, r0 - adds r0, r1, 0 - add r0, r8 - movs r1, 0xB - bl GetMonData - adds r6, r0, 0 - lsls r6, 16 - lsrs r6, 16 - mov r2, r10 - ldrb r0, [r2] - eors r0, r4 - lsls r0, 1 - adds r0, r7 - ldrh r0, [r0] - mov r1, r9 - muls r1, r0 - adds r0, r1, 0 - add r0, r8 - bl GetMonGender - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - mov r2, r10 - ldrb r0, [r2] - eors r4, r0 - lsls r4, 1 - adds r4, r7 - ldrh r0, [r4] - mov r1, r9 - muls r1, r0 - adds r0, r1, 0 - add r0, r8 - movs r1, 0 - movs r2, 0 - bl GetMonData - ldr r2, =gBattleStruct - ldr r1, [r2] - adds r1, 0x6D - str r0, [sp] - ldr r0, =sub_8038420 - str r0, [sp, 0x4] - movs r0, 0x2 - adds r2, r6, 0 - adds r3, r5, 0 - bl DoNamingScreen - ldr r1, =gBattleCommunication - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _08056E62 - .pool -_08056DD4: - ldr r0, =gMain - ldr r1, [r0, 0x4] - ldr r0, =sub_8038420 - cmp r1, r0 - bne _08056E62 - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08056E62 - ldr r2, =gBattlePartyID - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x1 - eors r0, r1 - lsls r0, 1 - adds r0, r2 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - ldr r1, =gBattleStruct - ldr r2, [r1] - adds r2, 0x6D - movs r1, 0x2 - bl SetMonData - b _08056E48 - .pool -_08056E2C: - bl CalculatePlayerPartyCount - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - bne _08056E48 - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x5 - str r0, [r1] - b _08056E62 - .pool -_08056E48: - ldr r3, =gBattlescriptCurrInstr - ldr r2, [r3] - ldrb r1, [r2, 0x1] - ldrb r0, [r2, 0x2] - lsls r0, 8 - orrs r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r2, 0x4] - lsls r0, 24 - orrs r1, r0 - str r1, [r3] -_08056E62: - 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 atkF3_nickname_caught_poke - - thumb_func_start atkF4_802BEF0 -atkF4_802BEF0: @ 8056E78 - ldr r2, =gBattleMons - ldr r0, =gBankAttacker - ldrb r1, [r0] - movs r0, 0x58 - muls r1, r0 - adds r1, r2 - ldr r0, =gBattleMoveDamage - ldr r2, [r0] - ldrh r0, [r1, 0x28] - subs r0, r2 - strh r0, [r1, 0x28] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - bx lr - .pool - thumb_func_end atkF4_802BEF0 - - thumb_func_start atkF5_removeattackerstatus1 -atkF5_removeattackerstatus1: @ 8056EA8 - ldr r1, =gBattleMons - ldr r0, =gBankAttacker - ldrb r2, [r0] - movs r0, 0x58 - muls r0, r2 - adds r1, 0x4C - adds r0, r1 - movs r1, 0 - str r1, [r0] - ldr r1, =gBattlescriptCurrInstr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - bx lr - .pool - thumb_func_end atkF5_removeattackerstatus1 - - thumb_func_start atkF6_802BF48 -atkF6_802BF48: @ 8056ED0 - ldr r1, =gFightStateTracker - movs r0, 0xC - strb r0, [r1] - bx lr - .pool - thumb_func_end atkF6_802BF48 - - thumb_func_start atkF7_802BF54 -atkF7_802BF54: @ 8056EDC - ldr r1, =gFightStateTracker - movs r0, 0xC - strb r0, [r1] - ldr r1, =gUnknown_02024082 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - strb r0, [r1] - bx lr - .pool - thumb_func_end atkF7_802BF54 - - thumb_func_start sub_8056EF8 -sub_8056EF8: @ 8056EF8 - push {r4,r5,lr} - ldr r5, =gBattlescriptCurrInstr - ldr r0, [r5] - ldrb r0, [r0, 0x1] - bl GetBankByPlayerAI - ldr r4, =gActiveBank - strb r0, [r4] - movs r0, 0 - bl dp01_build_cmdbuf_x09_9_9_9 - ldrb r0, [r4] - bl MarkBufferBankForExecution - ldr r0, [r5] - adds r0, 0x2 - str r0, [r5] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8056EF8 - - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/battle_5.s b/asm/battle_5.s index 3db603531..f2d6797f9 100644 --- a/asm/battle_5.s +++ b/asm/battle_5.s @@ -6,8 +6,8 @@ .text - thumb_func_start sub_8056F28 -sub_8056F28: @ 8056F28 + thumb_func_start AllocateBattleResrouces +AllocateBattleResrouces: @ 8056F28 push {r4-r6,lr} ldr r5, =gBattleResources ldr r6, =gBattleTypeFlags @@ -59,13 +59,13 @@ _08056F3E: bl AllocZeroed ldr r1, [r5] str r0, [r1, 0x1C] - ldr r4, =gUnknown_020244A0 + ldr r4, =gLinkBattleSendBuffer movs r5, 0x80 lsls r5, 5 adds r0, r5, 0 bl AllocZeroed str r0, [r4] - ldr r4, =gUnknown_020244A4 + ldr r4, =gLinkBattleRecvBuffer adds r0, r5, 0 bl AllocZeroed str r0, [r4] @@ -102,10 +102,10 @@ _08056FFA: pop {r0} bx r0 .pool - thumb_func_end sub_8056F28 + thumb_func_end AllocateBattleResrouces - thumb_func_start sub_8057028 -sub_8057028: @ 8057028 + thumb_func_start FreeBattleResources +FreeBattleResources: @ 8057028 push {r4-r6,lr} ldr r0, =gBattleTypeFlags ldr r0, [r0] @@ -160,11 +160,11 @@ _0805703C: str r5, [r0, 0x1C] bl Free str r5, [r6] - ldr r4, =gUnknown_020244A0 + ldr r4, =gLinkBattleSendBuffer ldr r0, [r4] bl Free str r5, [r4] - ldr r4, =gUnknown_020244A4 + ldr r4, =gLinkBattleRecvBuffer ldr r0, [r4] bl Free str r5, [r4] @@ -181,10 +181,10 @@ _080570D0: pop {r0} bx r0 .pool - thumb_func_end sub_8057028 + thumb_func_end FreeBattleResources - thumb_func_start sub_80570F4 -sub_80570F4: @ 80570F4 + thumb_func_start AdjustFriendshipOnBattleFaint +AdjustFriendshipOnBattleFaint: @ 80570F4 push {r4,r5,lr} lsls r0, 24 lsrs r5, r0, 24 @@ -195,11 +195,11 @@ sub_80570F4: @ 80570F4 cmp r0, 0 beq _08057140 movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r4, r0, 24 movs r0, 0x3 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r3, r0, 24 ldr r2, =gBattleMons @@ -220,7 +220,7 @@ sub_80570F4: @ 80570F4 .pool _08057140: movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r4, r0, 24 _0805714A: @@ -285,7 +285,7 @@ _080571CE: pop {r0} bx r0 .pool - thumb_func_end sub_80570F4 + thumb_func_end AdjustFriendshipOnBattleFaint thumb_func_start sub_80571DC sub_80571DC: @ 80571DC @@ -414,7 +414,7 @@ _0805729A: ldr r1, =0xf7ffffff ands r0, r1 str r0, [r2] - bl b_movescr_stack_push_cursor + bl BattleScriptPushCursor movs r0, 0x1 mov r2, r10 strb r0, [r2, 0x5] @@ -474,7 +474,7 @@ _08057354: ldr r1, =0xf7ffffff ands r0, r1 str r0, [r2] - bl b_movescr_stack_push_cursor + bl BattleScriptPushCursor ldr r0, =gBattleCommunication strb r4, [r0, 0x5] ldr r1, =gBattlescriptCurrInstr @@ -523,7 +523,7 @@ _080573D4: negs r1, r1 ands r0, r1 str r0, [r4] - bl b_movescr_stack_push_cursor + bl BattleScriptPushCursor ldr r1, =gBattlescriptCurrInstr ldr r0, =BattleScript_MoveUsedUnfroze str r0, [r1] @@ -562,7 +562,7 @@ _08057406: movs r1, 0x28 movs r2, 0 movs r3, 0x4 - bl EmitSetAttributes + bl EmitSetMonData ldrb r0, [r4] bl MarkBufferBankForExecution _08057430: diff --git a/asm/battle_7.s b/asm/battle_7.s index fd8c3b4a5..ea6fc40b3 100644 --- a/asm/battle_7.s +++ b/asm/battle_7.s @@ -5,10 +5,10 @@ .text - thumb_func_start dp11_init -dp11_init: @ 805D118 + thumb_func_start AllocateBattleSpritesData +AllocateBattleSpritesData: @ 805D118 push {r4,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr movs r0, 0x10 bl AllocZeroed str r0, [r4] @@ -32,12 +32,12 @@ dp11_init: @ 805D118 pop {r0} bx r0 .pool - thumb_func_end dp11_init + thumb_func_end AllocateBattleSpritesData - thumb_func_start dp11_free -dp11_free: @ 805D158 + thumb_func_start FreeBattleSpritesData +FreeBattleSpritesData: @ 805D158 push {r4,r5,lr} - ldr r5, =gUnknown_020244D0 + ldr r5, =gBattleSpritesDataPtr ldr r0, [r5] cmp r0, 0 beq _0805D192 @@ -65,7 +65,7 @@ _0805D192: pop {r0} bx r0 .pool - thumb_func_end dp11_free + thumb_func_end FreeBattleSpritesData thumb_func_start sub_805D19C sub_805D19C: @ 805D19C @@ -428,7 +428,7 @@ _0805D470: movs r0, 0x1 ands r0, r1 eors r0, r2 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 16 _0805D48A: @@ -579,7 +579,7 @@ sub_805D5F4: @ 805D5F4 cmp r0, 0 bne _0805D630 movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 mov r8, r0 @@ -588,13 +588,13 @@ sub_805D5F4: @ 805D5F4 .pool _0805D630: movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 mov r8, r0 movs r0, 0x2 _0805D63E: - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r7, r0, 24 ldr r1, =gBattleMons @@ -839,7 +839,7 @@ move_anim_start_t2_for_situation: @ 805D808 push {r4-r6,lr} adds r4, r1, 0 lsls r0, 24 - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r1, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -1001,7 +1001,7 @@ move_anim_start_t3: @ 805D908 b _0805DA1E .pool _0805D950: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr mov r9, r0 ldr r0, [r0] ldr r0, [r0] @@ -1056,21 +1056,21 @@ _0805D980: b _0805DA1E .pool _0805D9CC: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker mov r2, r10 strb r2, [r0] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget mov r1, sp ldrb r1, [r1] strb r1, [r0] - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r0, [r0, 0x8] strh r7, [r0] ldr r0, =gUnknown_082C9320 adds r1, r5, 0 movs r2, 0 - bl move_something + bl DoBattleAnim ldr r0, =task0A_0803415C movs r1, 0xA bl CreateTask @@ -1119,7 +1119,7 @@ task0A_0803415C: @ 805DA48 ldrb r0, [r0] cmp r0, 0 bne _0805DA8A - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r1, =gTasks lsls r0, r4, 2 @@ -1180,14 +1180,14 @@ move_anim_start_t4: @ 805DAC4 lsrs r4, 24 lsls r3, 24 lsrs r3, 24 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker strb r1, [r0] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget strb r2, [r0] ldr r0, =gUnknown_082C937C adds r1, r3, 0 movs r2, 0 - bl move_something + bl DoBattleAnim ldr r0, =task0A_08034248 movs r1, 0xA bl CreateTask @@ -1199,7 +1199,7 @@ move_anim_start_t4: @ 805DAC4 lsls r1, 3 adds r1, r2 strh r4, [r1, 0x8] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] movs r2, 0x8 ldrsh r1, [r1, r2] @@ -1230,7 +1230,7 @@ task0A_08034248: @ 805DB34 ldrb r0, [r0] cmp r0, 0 bne _0805DB76 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r1, =gTasks lsls r0, r4, 2 @@ -1274,7 +1274,7 @@ mplay_80342A4: @ 805DB90 lsls r0, 24 cmp r0, 0 beq _0805DBD8 - ldr r2, =gUnknown_020244D0 + ldr r2, =gBattleSpritesDataPtr ldr r0, [r2] ldr r1, [r0, 0x4] lsls r0, r4, 1 @@ -1307,7 +1307,7 @@ _0805DBDC: b _0805DC02 .pool _0805DBF0: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r4, 1 @@ -1323,8 +1323,8 @@ _0805DC02: .pool thumb_func_end mplay_80342A4 - thumb_func_start sub_805DC0C -sub_805DC0C: @ 805DC0C + thumb_func_start BattleLoadOpponentMonSpriteGfx +BattleLoadOpponentMonSpriteGfx: @ 805DC0C push {r4-r7,lr} mov r7, r10 mov r6, r9 @@ -1338,7 +1338,7 @@ sub_805DC0C: @ 805DC0C movs r1, 0 bl GetMonData str r0, [sp] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0] mov r2, r8 @@ -1371,7 +1371,7 @@ _0805DC58: lsls r2, r5, 3 ldr r1, =gMonFrontPicTable adds r2, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] lsrs r0, 22 adds r1, 0x4 @@ -1386,7 +1386,7 @@ _0805DC58: movs r0, 0x80 lsls r0, 1 adds r7, r2, r0 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0] lsls r1, r3, 2 @@ -1444,7 +1444,7 @@ _0805DCC6: movs r2, 0x20 bl LoadPalette _0805DD1A: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0] ldr r1, [sp, 0x4] @@ -1474,10 +1474,10 @@ _0805DD46: pop {r0} bx r0 .pool - thumb_func_end sub_805DC0C + thumb_func_end BattleLoadOpponentMonSpriteGfx - thumb_func_start sub_805DD7C -sub_805DD7C: @ 805DD7C + thumb_func_start BattleLoadPlayerMonSpriteGfx +BattleLoadPlayerMonSpriteGfx: @ 805DD7C push {r4-r7,lr} mov r7, r10 mov r6, r9 @@ -1491,7 +1491,7 @@ sub_805DD7C: @ 805DD7C movs r1, 0 bl GetMonData str r0, [sp] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0] mov r2, r8 @@ -1532,7 +1532,7 @@ _0805DDC8: mov r10, r1 cmp r0, 0x1 beq _0805DE00 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0] add r0, r10 @@ -1543,7 +1543,7 @@ _0805DE00: lsls r0, r5, 3 ldr r1, =gMonBackPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] lsls r2, r7, 2 adds r1, 0x4 @@ -1558,7 +1558,7 @@ _0805DE2C: lsls r0, r5, 3 ldr r1, =gMonBackPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] lsls r2, r7, 2 adds r1, 0x4 @@ -1573,7 +1573,7 @@ _0805DE46: movs r0, 0x80 lsls r0, 1 adds r7, r1, r0 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0] add r0, r10 @@ -1629,7 +1629,7 @@ _0805DE7E: movs r2, 0x20 bl LoadPalette _0805DED2: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0] add r0, r10 @@ -1658,7 +1658,7 @@ _0805DEFC: pop {r0} bx r0 .pool - thumb_func_end sub_805DD7C + thumb_func_end BattleLoadPlayerMonSpriteGfx thumb_func_start nullsub_23 nullsub_23: @ 805DF30 @@ -1684,7 +1684,7 @@ sub_805DF38: @ 805DF38 lsls r4, 3 ldr r2, =gTrainerFrontPicTable adds r2, r4, r2 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] lsrs r0, 22 adds r1, 0x4 @@ -1703,8 +1703,8 @@ sub_805DF38: @ 805DF38 .pool thumb_func_end sub_805DF38 - thumb_func_start sub_805DF84 -sub_805DF84: @ 805DF84 + thumb_func_start LoadBackTrainerBankSpriteGfx +LoadBackTrainerBankSpriteGfx: @ 805DF84 push {r4,r5,lr} adds r5, r0, 0 adds r4, r1, 0 @@ -1718,7 +1718,7 @@ sub_805DF84: @ 805DF84 lsls r5, 3 ldr r2, =gTrainerBackPicTable adds r2, r5, r2 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] lsrs r0, 22 adds r1, 0x4 @@ -1742,7 +1742,7 @@ sub_805DF84: @ 805DF84 pop {r0} bx r0 .pool - thumb_func_end sub_805DF84 + thumb_func_end LoadBackTrainerBankSpriteGfx thumb_func_start nullsub_25 nullsub_25: @ 805DFE0 @@ -1772,7 +1772,7 @@ sub_805DFFC: @ 805DFFC adds r4, 0x8 adds r0, r4, 0 bl LoadSpritePalette - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 bne _0805E034 @@ -1801,7 +1801,7 @@ _0805E056: movs r4, 0 cmp r4, r5 bcs _0805E076 - ldr r7, =gBanksBySide + ldr r7, =gBanksByIdentity ldr r6, =gUnknown_0832C108 _0805E060: adds r0, r4, r7 @@ -1821,8 +1821,8 @@ _0805E076: .pool thumb_func_end sub_805DFFC - thumb_func_start sub_805E08C -sub_805E08C: @ 805E08C + thumb_func_start BattleLoadAllHealthBoxesGfx +BattleLoadAllHealthBoxesGfx: @ 805E08C push {r4-r6,lr} lsls r0, 24 lsrs r4, r0, 24 @@ -1843,7 +1843,7 @@ _0805E09C: b _0805E1AE .pool _0805E0B8: - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 bne _0805E120 @@ -1874,14 +1874,14 @@ _0805E0F0: _0805E100: cmp r4, 0x4 bne _0805E110 - ldr r0, =gBanksBySide + ldr r0, =gBanksByIdentity ldrb r0, [r0] b _0805E198 .pool _0805E110: cmp r4, 0x5 bne _0805E1AC - ldr r0, =gBanksBySide + ldr r0, =gBanksByIdentity ldrb r0, [r0, 0x1] b _0805E198 .pool @@ -1916,28 +1916,28 @@ _0805E150: _0805E160: cmp r4, 0x6 bne _0805E170 - ldr r0, =gBanksBySide + ldr r0, =gBanksByIdentity ldrb r0, [r0] b _0805E198 .pool _0805E170: cmp r4, 0x7 bne _0805E180 - ldr r0, =gBanksBySide + ldr r0, =gBanksByIdentity ldrb r0, [r0, 0x1] b _0805E198 .pool _0805E180: cmp r4, 0x8 bne _0805E190 - ldr r0, =gBanksBySide + ldr r0, =gBanksByIdentity ldrb r0, [r0, 0x2] b _0805E198 .pool _0805E190: cmp r5, 0x9 bne _0805E1AC - ldr r0, =gBanksBySide + ldr r0, =gBanksByIdentity ldrb r0, [r0, 0x3] _0805E198: lsls r0, 3 @@ -1953,13 +1953,13 @@ _0805E1AE: pop {r4-r6} pop {r1} bx r1 - thumb_func_end sub_805E08C + thumb_func_end BattleLoadAllHealthBoxesGfx - thumb_func_start load_gfxc_health_bar -load_gfxc_health_bar: @ 805E1B8 + thumb_func_start LoadBattleBarGfx +LoadBattleBarGfx: @ 805E1B8 push {lr} ldr r0, =gUnknown_08C093F0 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] movs r2, 0xBA lsls r2, 1 @@ -1969,10 +1969,10 @@ load_gfxc_health_bar: @ 805E1B8 pop {r0} bx r0 .pool - thumb_func_end load_gfxc_health_bar + thumb_func_end LoadBattleBarGfx - thumb_func_start battle_load_something -battle_load_something: @ 805E1D8 + thumb_func_start BattleInitAllSprites +BattleInitAllSprites: @ 805E1D8 push {r4-r6,lr} adds r5, r0, 0 adds r4, r1, 0 @@ -2002,7 +2002,7 @@ _0805E214: b _0805E324 _0805E21A: ldrb r0, [r4] - bl sub_805E08C + bl BattleLoadAllHealthBoxesGfx lsls r0, 24 cmp r0, 0 beq _0805E228 @@ -2022,12 +2022,12 @@ _0805E230: ldrb r0, [r4] cmp r0, 0 bne _0805E24C - bl battle_make_oam_safari_battle + bl CreateSafariPlayerHealthboxSprites b _0805E252 .pool _0805E24C: ldrb r0, [r4] - bl battle_make_oam_normal_battle + bl CreateBankHealthboxSprites _0805E252: ldr r2, =gHealthBoxesIds ldrb r1, [r4] @@ -2037,8 +2037,8 @@ _0805E252: .pool _0805E260: ldrb r0, [r4] - bl sub_8072B18 - ldr r0, =gBanksBySide + bl SetBankHealthboxSpritePos + ldr r0, =gBanksByIdentity ldrb r1, [r4] adds r0, r1, r0 ldrb r0, [r0] @@ -2048,7 +2048,7 @@ _0805E260: adds r0, r1, r0 ldrb r0, [r0] movs r1, 0 - bl nullsub_30 + bl DummyBattleInterfaceFunc b _0805E30E .pool _0805E288: @@ -2056,7 +2056,7 @@ _0805E288: adds r0, r1, r0 ldrb r0, [r0] movs r1, 0x1 - bl nullsub_30 + bl DummyBattleInterfaceFunc b _0805E30E .pool _0805E29C: @@ -2084,7 +2084,7 @@ _0805E29C: ldr r2, =gPlayerParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute b _0805E302 .pool _0805E2E4: @@ -2101,13 +2101,13 @@ _0805E2E4: ldr r2, =gEnemyParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute _0805E302: ldr r1, =gHealthBoxesIds ldrb r0, [r4] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible _0805E30E: ldrb r0, [r4] adds r0, 0x1 @@ -2128,7 +2128,7 @@ _0805E324: b _0805E346 .pool _0805E33C: - bl sub_805EC84 + bl LoadAndCreateEnemyShadowSprites bl sub_81B8C68 movs r6, 0x1 _0805E346: @@ -2136,12 +2136,12 @@ _0805E346: pop {r4-r6} pop {r1} bx r1 - thumb_func_end battle_load_something + thumb_func_end BattleInitAllSprites thumb_func_start sub_805E350 sub_805E350: @ 805E350 push {r4,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r0, [r0, 0x4] movs r1, 0 @@ -2162,7 +2162,7 @@ sub_805E350: @ 805E350 sub_805E378: @ 805E378 push {lr} bl sub_805E350 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0] movs r1, 0 @@ -2191,7 +2191,7 @@ sub_805E394: @ 805E394 movs r0, 0x2 negs r0, r0 mov r8, r0 - ldr r7, =gUnknown_020244D0 + ldr r7, =gBattleSpritesDataPtr ldr r6, =gBankSpriteIds _0805E3B8: ldr r0, [r7] @@ -2233,7 +2233,7 @@ _0805E3EA: sub_805E408: @ 805E408 lsls r0, 24 lsrs r0, 24 - ldr r1, =gUnknown_020244D0 + ldr r1, =gBattleSpritesDataPtr ldr r1, [r1] ldr r1, [r1] lsls r3, r0, 2 @@ -2285,7 +2285,7 @@ sub_805E448: @ 805E448 ldr r1, =gSprites mov r8, r1 add r0, r8 - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r1, [r4] ldr r1, [r1, 0x8] ldrb r1, [r1] @@ -2353,7 +2353,7 @@ _0805E51C: beq _0805E558 movs r0, 0 mov r10, r0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0x18] ldrh r1, [r2, 0x2] @@ -2364,7 +2364,7 @@ _0805E51C: lsls r0, r1, 3 ldr r1, =gMonBackPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] ldr r1, [r1, 0x4] ldr r3, [r2, 0x10] @@ -2434,7 +2434,7 @@ _0805E59C: lsls r0, r1, 3 ldr r1, =gMonBackPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] mov r3, r10 lsls r2, r3, 2 @@ -2472,7 +2472,7 @@ _0805E618: lsls r0, r1, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] mov r3, r10 lsls r2, r3, 2 @@ -2486,7 +2486,7 @@ _0805E618: mov r2, r8 bl HandleLoadSpecialPokePic_DontHandleDeoxys _0805E662: - ldr r0, =gBattleSpritesGfx + ldr r0, =gMonSpritesGfxPtr ldr r0, [r0] mov r2, r10 lsls r1, r2, 2 @@ -2541,7 +2541,7 @@ _0805E662: ldr r1, =gSprites adds r1, 0x8 adds r0, r1 - ldr r1, =gUnknown_08309AAC + ldr r1, =gMonAnimationsSpriteAnimsPtrTable mov r3, r8 lsls r2, r3, 2 adds r1, r2 @@ -2582,7 +2582,7 @@ _0805E70A: lsls r0, 24 cmp r0, 0 bne _0805E74A - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0] lsls r0, r7, 2 @@ -2630,8 +2630,8 @@ _0805E77A: .pool thumb_func_end sub_805E448 - thumb_func_start sub_805E7DC -sub_805E7DC: @ 805E7DC + thumb_func_start BattleLoadSubstituteSpriteGfx +BattleLoadSubstituteSpriteGfx: @ 805E7DC push {r4-r7,lr} lsls r0, 24 lsrs r4, r0, 24 @@ -2666,7 +2666,7 @@ _0805E814: beq _0805E83C ldr r0, =gUnknown_08C2CEE0 _0805E822: - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] lsls r4, 2 adds r1, 0x4 @@ -2677,7 +2677,7 @@ _0805E822: .pool _0805E83C: ldr r0, =gUnknown_08C2D120 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] lsls r4, 2 adds r1, 0x4 @@ -2688,7 +2688,7 @@ _0805E84E: movs r3, 0x1 lsls r6, r5, 4 ldr r7, =gUnknown_08C2CEBC - ldr r0, =gBattleSpritesGfx + ldr r0, =gMonSpritesGfxPtr ldr r0, [r0] adds r0, 0x4 adds r4, r0, r4 @@ -2732,7 +2732,7 @@ _0805E898: ldr r1, =gEnemyParty adds r0, r1 adds r1, r4, 0 - bl sub_805DC0C + bl BattleLoadOpponentMonSpriteGfx b _0805E8E6 .pool _0805E8D0: @@ -2745,13 +2745,13 @@ _0805E8D0: ldr r1, =gPlayerParty adds r0, r1 adds r1, r5, 0 - bl sub_805DD7C + bl BattleLoadPlayerMonSpriteGfx _0805E8E6: pop {r4-r7} pop {r0} bx r0 .pool - thumb_func_end sub_805E7DC + thumb_func_end BattleLoadSubstituteSpriteGfx thumb_func_start refresh_graphics_maybe refresh_graphics_maybe: @ 805E8F4 @@ -2766,7 +2766,7 @@ refresh_graphics_maybe: @ 805E8F4 lsrs r4, 24 adds r0, r6, 0 adds r1, r5, 0 - bl sub_805E7DC + bl BattleLoadSubstituteSpriteGfx lsls r0, r4, 4 adds r0, r4 lsls r0, 2 @@ -2804,7 +2804,7 @@ sub_805E94C: @ 805E94C lsrs r1, 16 cmp r1, 0xA4 bne _0805E96C - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0] lsls r1, r2, 2 @@ -2822,7 +2822,7 @@ _0805E96C: thumb_func_start sub_805E974 sub_805E974: @ 805E974 lsls r0, 24 - ldr r1, =gUnknown_020244D0 + ldr r1, =gBattleSpritesDataPtr ldr r1, [r1] ldr r1, [r1] lsrs r0, 22 @@ -2857,12 +2857,12 @@ sub_805E990: @ 805E990 lsls r1, 16 asrs r1, 16 adds r0, r4, 0 - bl sub_8075060 + bl GetHPBarLevel lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _0805EA08 - ldr r7, =gUnknown_020244D0 + ldr r7, =gBattleSpritesDataPtr ldr r0, [r7] ldr r2, [r0] lsls r4, r6, 2 @@ -2895,7 +2895,7 @@ _0805E9F6: b _0805EA5A .pool _0805EA08: - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r0, [r0] lsls r1, r6, 2 @@ -2905,7 +2905,7 @@ _0805EA08: negs r0, r0 ands r0, r2 strb r0, [r1] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 bne _0805EA34 @@ -2914,7 +2914,7 @@ _0805EA08: b _0805EA5A .pool _0805EA34: - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0805EA5A @@ -2937,14 +2937,14 @@ _0805EA5A: bx r0 thumb_func_end sub_805E990 - thumb_func_start sub_805EA60 -sub_805EA60: @ 805EA60 + thumb_func_start BattleMusicStop +BattleMusicStop: @ 805EA60 push {r4-r6,lr} movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r4, r0, 24 - ldr r5, =gUnknown_020244D0 + ldr r5, =gBattleSpritesDataPtr ldr r0, [r5] ldr r0, [r0] lsls r1, r4, 2 @@ -2955,7 +2955,7 @@ sub_805EA60: @ 805EA60 adds r0, r6, 0 ands r0, r2 strb r0, [r1] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0805EAA2 @@ -2977,7 +2977,7 @@ _0805EAA2: pop {r0} bx r0 .pool - thumb_func_end sub_805EA60 + thumb_func_end BattleMusicStop thumb_func_start sub_805EAB4 sub_805EAB4: @ 805EAB4 @@ -2997,7 +2997,7 @@ sub_805EAB4: @ 805EAB4 lsls r1, 16 asrs r1, 16 adds r0, r4, 0 - bl sub_8075060 + bl GetHPBarLevel lsls r0, 24 lsrs r0, 24 pop {r4,r5} @@ -3020,12 +3020,12 @@ sub_805EAE8: @ 805EAE8 cmp r0, 0 beq _0805EB7E movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 mov r8, r0 movs r0, 0x2 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 mov r9, r0 @@ -3059,7 +3059,7 @@ sub_805EAE8: @ 805EAE8 mov r1, r8 bl sub_805E990 _0805EB5A: - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0805EB7E @@ -3111,7 +3111,7 @@ sub_805EB9C: @ 805EB9C _0805EBC8: lsls r0, r5, 24 lsrs r0, 24 - bl sub_80A6A90 + bl AnimBankSpriteExists lsls r0, 24 cmp r0, 0 beq _0805EC60 @@ -3134,7 +3134,7 @@ _0805EBC8: mov r7, r8 cmp r7, 0 bne _0805EC3C - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r2, [r0, 0x4] adds r2, r6, r2 @@ -3164,7 +3164,7 @@ _0805EC3C: adds r2, r0 lsls r2, 2 adds r2, r4 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x4] adds r0, r6, r0 @@ -3195,15 +3195,15 @@ _0805EC6C: .pool thumb_func_end sub_805EB9C - thumb_func_start sub_805EC84 -sub_805EC84: @ 805EC84 + thumb_func_start LoadAndCreateEnemyShadowSprites +LoadAndCreateEnemyShadowSprites: @ 805EC84 push {r4-r7,lr} mov r7, r8 push {r7} ldr r0, =gUnknown_0831C6A0 bl LoadCompressedObjectPic movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity adds r5, r0, 0 lsls r5, 24 lsrs r5, 24 @@ -3229,7 +3229,7 @@ sub_805EC84: @ 805EC84 adds r1, r4, 0 movs r3, 0xC8 bl CreateSprite - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r1, [r6] ldr r2, [r1, 0x4] lsls r1, r5, 1 @@ -3247,12 +3247,12 @@ sub_805EC84: @ 805EC84 lsls r0, 2 adds r0, r7 strh r5, [r0, 0x2E] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0805ED56 movs r0, 0x3 - bl GetBankByPlayerAI + bl GetBankByIdentity adds r5, r0, 0 lsls r5, 24 lsrs r5, 24 @@ -3299,7 +3299,7 @@ _0805ED56: pop {r0} bx r0 .pool - thumb_func_end sub_805EC84 + thumb_func_end LoadAndCreateEnemyShadowSprites thumb_func_start sub_805ED70 @ int sub_805ED70(obj *a1) @@ -3329,7 +3329,7 @@ sub_805ED70: @ 805ED70 cmp r0, 0 beq _0805EDAC adds r0, r4, 0 - bl sub_80A6A90 + bl AnimBankSpriteExists lsls r0, 24 cmp r0, 0 bne _0805EDC0 @@ -3351,12 +3351,12 @@ _0805EDC0: _0805EDD2: movs r0, 0x1 mov r8, r0 - ldr r2, =gUnknown_020244D0 + ldr r2, =gBattleSpritesDataPtr lsls r4, 2 b _0805EE06 .pool _0805EDE4: - ldr r2, =gUnknown_020244D0 + ldr r2, =gBattleSpritesDataPtr ldr r0, [r2] ldr r0, [r0] lsls r1, r4, 2 @@ -3365,7 +3365,7 @@ _0805EDE4: adds r4, r1, 0 cmp r0, 0 beq _0805EE06 - ldr r0, =gUnknown_08305DCC + ldr r0, =gEnemyMonElevation ldrh r1, [r3, 0x2] adds r1, r0 ldrb r0, [r1] @@ -3418,8 +3418,8 @@ sub_805EE48: @ 805EE48 bx lr thumb_func_end sub_805EE48 - thumb_func_start sub_805EE54 -sub_805EE54: @ 805EE54 + thumb_func_start SetBankEnemyShadowSpriteCallback +SetBankEnemyShadowSpriteCallback: @ 805EE54 push {r4-r6,lr} lsls r0, 24 lsrs r4, r0, 24 @@ -3431,7 +3431,7 @@ sub_805EE54: @ 805EE54 lsls r0, 24 cmp r0, 0 beq _0805EED0 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r3, [r0] ldr r1, [r3] lsls r0, r4, 2 @@ -3441,7 +3441,7 @@ sub_805EE54: @ 805EE54 beq _0805EE7E adds r5, r0, 0 _0805EE7E: - ldr r0, =gUnknown_08305DCC + ldr r0, =gEnemyMonElevation adds r0, r5, r0 ldrb r0, [r0] cmp r0, 0 @@ -3482,14 +3482,14 @@ _0805EED0: pop {r0} bx r0 .pool - thumb_func_end sub_805EE54 + thumb_func_end SetBankEnemyShadowSpriteCallback thumb_func_start sub_805EEE0 sub_805EEE0: @ 805EEE0 lsls r0, 24 lsrs r0, 24 ldr r2, =gSprites - ldr r1, =gUnknown_020244D0 + ldr r1, =gBattleSpritesDataPtr ldr r1, [r1] ldr r3, [r1, 0x4] lsls r1, r0, 1 @@ -3578,7 +3578,7 @@ sub_805EF84: @ 805EF84 lsls r0, 24 lsrs r4, r0, 24 lsls r1, 24 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r2, [r0] lsls r0, r4, 2 @@ -3600,15 +3600,15 @@ _0805EFAC: .pool thumb_func_end sub_805EF84 - thumb_func_start init_uns_table_pokemon_copy -init_uns_table_pokemon_copy: @ 805EFBC + thumb_func_start AllocateMonSpritesGfx +AllocateMonSpritesGfx: @ 805EFBC push {r4-r7,lr} mov r7, r10 mov r6, r9 mov r5, r8 push {r5-r7} movs r6, 0 - ldr r4, =gBattleSpritesGfx + ldr r4, =gMonSpritesGfxPtr str r6, [r4] movs r0, 0xC0 lsls r0, 1 @@ -3620,7 +3620,7 @@ init_uns_table_pokemon_copy: @ 805EFBC ldr r1, [r4] str r0, [r1] _0805EFE2: - ldr r0, =gBattleSpritesGfx + ldr r0, =gMonSpritesGfxPtr ldr r1, [r0] lsls r4, r6, 2 adds r2, r1, 0x4 @@ -3649,7 +3649,7 @@ _0805EFE2: mov r12, r8 adds r7, r4, 0 _0805F01A: - ldr r2, =gBattleSpritesGfx + ldr r2, =gMonSpritesGfxPtr ldr r1, [r2] lsls r4, r5, 3 add r4, r12 @@ -3672,7 +3672,7 @@ _0805F01A: lsrs r5, r0, 24 cmp r5, 0x3 bls _0805F01A - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r2, [r1] mov r5, r9 adds r0, r5, r6 @@ -3692,7 +3692,7 @@ _0805F01A: movs r0, 0x80 lsls r0, 5 bl AllocZeroed - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] movs r2, 0xBA lsls r2, 1 @@ -3706,12 +3706,12 @@ _0805F01A: pop {r0} bx r0 .pool - thumb_func_end init_uns_table_pokemon_copy + thumb_func_end AllocateMonSpritesGfx - thumb_func_start sub_805F094 -sub_805F094: @ 805F094 + thumb_func_start FreeMonSpritesGfx +FreeMonSpritesGfx: @ 805F094 push {r4-r6,lr} - ldr r6, =gBattleSpritesGfx + ldr r6, =gMonSpritesGfxPtr ldr r0, [r6] cmp r0, 0 beq _0805F106 @@ -3769,7 +3769,7 @@ _0805F106: pop {r0} bx r0 .pool - thumb_func_end sub_805F094 + thumb_func_end FreeMonSpritesGfx thumb_func_start sub_805F110 sub_805F110: @ 805F110 @@ -3796,7 +3796,7 @@ sub_805F110: @ 805F110 lsls r1, 16 asrs r1, 16 adds r0, r4, 0 - bl sub_8075060 + bl GetHPBarLevel lsls r0, 24 lsrs r0, 24 cmp r0, 0x2 diff --git a/asm/battle_9.s b/asm/battle_9.s deleted file mode 100644 index f1811e1af..000000000 --- a/asm/battle_9.s +++ /dev/null @@ -1,2847 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start ai_switch_perish_song -ai_switch_perish_song: @ 8062BF8 - push {lr} - ldr r1, =gStatuses3 - ldr r0, =gActiveBank - ldrb r2, [r0] - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08062C50 - ldr r0, =gDisableStructs - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0xF] - lsls r0, 28 - cmp r0, 0 - bne _08062C50 - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, r2, r0 - movs r1, 0xA5 - lsls r1, 2 - adds r0, r1 - movs r1, 0x6 - strb r1, [r0] - movs r0, 0x1 - movs r1, 0x2 - movs r2, 0 - bl dp01_build_cmdbuf_x21_a_bb - movs r0, 0x1 - b _08062C52 - .pool -_08062C50: - movs r0, 0 -_08062C52: - pop {r1} - bx r1 - thumb_func_end ai_switch_perish_song - - thumb_func_start sub_8062C58 -sub_8062C58: @ 8062C58 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08062C72 - b _08062E2C -_08062C72: - ldr r0, =gActiveBank - ldrb r0, [r0] - bl GetBankIdentity - movs r1, 0x1 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - ldr r4, =gBattleMons - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x58 - muls r0, r1 - adds r0, r4 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x19 - beq _08062C9E - b _08062E2C -_08062C9E: - mov r0, r10 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r2, r0, 24 - movs r6, 0 - mov r8, r4 - movs r7, 0x58 - adds r0, r2, 0 - muls r0, r7 - adds r4, r0, r4 - movs r0, 0x20 - adds r0, r4 - mov r9, r0 -_08062CBA: - lsls r1, r6, 1 - ldr r5, =gActiveBank - ldrb r0, [r5] - muls r0, r7 - adds r1, r0 - mov r0, r8 - adds r0, 0xC - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - beq _08062CE8 - ldrh r1, [r4] - mov r3, r9 - ldrb r2, [r3] - bl ai_rate_move - lsls r0, 24 - lsrs r1, r0, 24 - movs r0, 0x2 - ands r1, r0 - cmp r1, 0 - beq _08062CE8 - b _08062E2C -_08062CE8: - adds r6, 0x1 - cmp r6, 0x3 - ble _08062CBA - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x00808000 - ands r0, r1 - cmp r0, 0 - beq _08062D50 - ldrb r1, [r5] - movs r0, 0x2 - ands r0, r1 - adds r1, r5, 0 - cmp r0, 0 - bne _08062D20 - movs r4, 0 - movs r0, 0x3 - str r0, [sp] - b _08062D58 - .pool -_08062D20: - movs r4, 0x3 - movs r3, 0x6 - str r3, [sp] - b _08062D58 -_08062D28: - ldr r0, =gActiveBank - ldrb r0, [r0] - ldr r1, =gBattleStruct - ldr r1, [r1] - adds r0, r1 - movs r1, 0xA5 - lsls r1, 2 - adds r0, r1 - strb r6, [r0] - movs r0, 0x1 - movs r1, 0x2 - movs r2, 0 - bl dp01_build_cmdbuf_x21_a_bb - movs r0, 0x1 - b _08062E2E - .pool -_08062D50: - movs r4, 0 - movs r3, 0x6 - str r3, [sp] - adds r1, r5, 0 -_08062D58: - ldrb r0, [r1] - bl GetBankSide - lsls r0, 24 - ldr r1, =gEnemyParty - mov r9, r1 - cmp r0, 0 - bne _08062D6C - ldr r3, =gPlayerParty - mov r9, r3 -_08062D6C: - adds r6, r4, 0 - ldr r0, [sp] - cmp r6, r0 - bge _08062E2C -_08062D74: - movs r0, 0x64 - adds r5, r6, 0 - muls r5, r0 - mov r1, r9 - adds r4, r1, r5 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _08062E24 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - cmp r0, 0 - beq _08062E24 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - beq _08062E24 - ldr r1, =gBattlePartyID - ldr r0, =gActiveBank - ldrb r0, [r0] - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r6, r0 - beq _08062E24 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - adds r0, r4, 0 - movs r1, 0x2E - bl GetMonData - mov r0, r10 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r2, r0, 24 - movs r4, 0 - mov r8, r5 - ldr r1, =gBattleMons - movs r0, 0x58 - muls r0, r2 - adds r5, r0, r1 - adds r7, r5, 0 - adds r7, 0x20 -_08062DE0: - adds r1, r4, 0 - adds r1, 0xD - mov r0, r9 - add r0, r8 - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0 - beq _08062E1E - ldrh r1, [r5] - ldrb r2, [r7] - bl ai_rate_move - lsls r0, 24 - lsrs r1, r0, 24 - movs r0, 0x2 - ands r1, r0 - cmp r1, 0 - beq _08062E1E - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bls _08062D28 -_08062E1E: - adds r4, 0x1 - cmp r4, 0x3 - ble _08062DE0 -_08062E24: - adds r6, 0x1 - ldr r3, [sp] - cmp r6, r3 - blt _08062D74 -_08062E2C: - movs r0, 0 -_08062E2E: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8062C58 - - thumb_func_start sub_8062E54 -sub_8062E54: @ 8062E54 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - movs r0, 0x1 - bl ai_has_super_effective_move_on_field - lsls r0, 24 - cmp r0, 0 - beq _08062E82 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - lsls r0, 16 - cmp r0, 0 - beq _08062E82 - b _080630AC -_08062E82: - ldr r1, =gUnknown_02024250 - ldr r5, =gActiveBank - ldrb r3, [r5] - lsls r0, r3, 1 - adds r4, r0, r1 - ldrh r1, [r4] - cmp r1, 0 - bne _08062E94 - b _080630AC -_08062E94: - ldr r0, =0x0000ffff - cmp r1, r0 - bne _08062E9C - b _080630AC -_08062E9C: - ldr r2, =gBattleMoves - ldrh r1, [r4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x1] - cmp r0, 0 - bne _08062EB0 - b _080630AC -_08062EB0: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08062F1A - mov r8, r3 - mov r0, r8 - bl GetBankIdentity - movs r4, 0x2 - eors r0, r4 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - 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 _08062F04 - ldrb r7, [r5] - b _08062F1E - .pool -_08062F04: - ldrb r0, [r5] - bl GetBankIdentity - eors r0, r4 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r7, r0, 24 - b _08062F1E -_08062F1A: - adds r7, r3, 0 - mov r8, r7 -_08062F1E: - ldr r3, =gBattleMoves - ldr r1, =gUnknown_02024250 - ldr r2, =gActiveBank - ldrb r0, [r2] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrb r0, [r0, 0x2] - cmp r0, 0xA - bne _08062F4C - movs r0, 0x12 - b _08062F5E - .pool -_08062F4C: - cmp r0, 0xB - bne _08062F56 - movs r1, 0xB - str r1, [sp] - b _08062F60 -_08062F56: - cmp r0, 0xD - beq _08062F5C - b _080630AC -_08062F5C: - movs r0, 0xA -_08062F5E: - str r0, [sp] -_08062F60: - ldr r1, =gBattleMons - ldrb r3, [r2] - movs r0, 0x58 - muls r0, r3 - adds r0, r1 - adds r0, 0x20 - ldrb r0, [r0] - ldr r1, [sp] - cmp r0, r1 - bne _08062F76 - b _080630AC -_08062F76: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x00808000 - ands r0, r1 - cmp r0, 0 - beq _08062FCC - movs r0, 0x2 - ands r3, r0 - cmp r3, 0 - bne _08062F9C - movs r4, 0 - movs r0, 0x3 - b _08062FD0 - .pool -_08062F9C: - movs r4, 0x3 - movs r1, 0x6 - mov r10, r1 - b _08062FD2 -_08062FA4: - ldr r0, =gActiveBank - ldrb r0, [r0] - ldr r1, =gBattleStruct - ldr r1, [r1] - adds r0, r1 - movs r2, 0xA5 - lsls r2, 2 - adds r0, r2 - strb r5, [r0] - movs r0, 0x1 - movs r1, 0x2 - movs r2, 0 - bl dp01_build_cmdbuf_x21_a_bb - movs r0, 0x1 - b _080630AE - .pool -_08062FCC: - movs r4, 0 - movs r0, 0x6 -_08062FD0: - mov r10, r0 -_08062FD2: - ldrb r0, [r2] - bl GetBankSide - lsls r0, 24 - ldr r1, =gEnemyParty - str r1, [sp, 0x4] - cmp r0, 0 - bne _08062FE6 - ldr r2, =gPlayerParty - str r2, [sp, 0x4] -_08062FE6: - adds r5, r4, 0 - cmp r5, r10 - bge _080630AC - ldr r0, =gBaseStats - mov r9, r0 -_08062FF0: - movs r0, 0x64 - muls r0, r5 - ldr r1, [sp, 0x4] - adds r6, r1, r0 - adds r0, r6, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _080630A6 - adds r0, r6, 0 - movs r1, 0x41 - bl GetMonData - cmp r0, 0 - beq _080630A6 - adds r0, r6, 0 - movs r1, 0x41 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - beq _080630A6 - ldr r1, =gBattlePartyID - mov r2, r8 - lsls r0, r2, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r5, r0 - beq _080630A6 - lsls r0, r7, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r5, r0 - beq _080630A6 - ldr r0, =gBattleStruct - ldr r1, [r0] - adds r0, r2, r1 - adds r0, 0x5C - ldrb r0, [r0] - cmp r5, r0 - beq _080630A6 - adds r0, r7, r1 - adds r0, 0x5C - ldrb r0, [r0] - cmp r5, r0 - beq _080630A6 - adds r0, r6, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r6, 0 - movs r1, 0x2E - bl GetMonData - cmp r0, 0 - beq _08063088 - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - add r0, r9 - ldrb r0, [r0, 0x17] - b _08063092 - .pool -_08063088: - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - add r0, r9 - ldrb r0, [r0, 0x16] -_08063092: - ldr r1, [sp] - cmp r1, r0 - bne _080630A6 - bl Random - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _080630A6 - b _08062FA4 -_080630A6: - adds r5, 0x1 - cmp r5, r10 - blt _08062FF0 -_080630AC: - movs r0, 0 -_080630AE: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8062E54 - - thumb_func_start ai_switchout_natural_cure -ai_switchout_natural_cure: @ 80630C0 - push {r4,r5,lr} - ldr r3, =gBattleMons - ldr r5, =gActiveBank - ldrb r4, [r5] - movs r0, 0x58 - adds r2, r4, 0 - muls r2, r0 - adds r0, r3, 0 - adds r0, 0x4C - adds r0, r2, r0 - ldr r0, [r0] - movs r1, 0x7 - ands r0, r1 - cmp r0, 0 - beq _08063188 - adds r1, r2, r3 - adds r0, r1, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x1E - bne _08063188 - ldrh r0, [r1, 0x2C] - ldrh r1, [r1, 0x28] - lsrs r0, 1 - cmp r1, r0 - bcc _08063188 - ldr r1, =gUnknown_02024250 - lsls r0, r4, 1 - adds r0, r1 - ldrh r1, [r0] - cmp r1, 0 - beq _08063106 - ldr r0, =0x0000ffff - cmp r1, r0 - bne _08063128 -_08063106: - bl Random - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _08063128 - ldrb r0, [r5] - b _08063190 - .pool -_08063128: - ldr r2, =gBattleMoves - ldr r1, =gUnknown_02024250 - ldr r4, =gActiveBank - ldrb r0, [r4] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x1] - cmp r0, 0 - bne _08063160 - bl Random - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _08063160 - ldrb r0, [r4] - b _08063190 - .pool -_08063160: - movs r0, 0x8 - movs r1, 0x1 - bl ai_switchout_something - lsls r0, 24 - cmp r0, 0 - bne _080631AA - movs r0, 0x4 - movs r1, 0x1 - bl ai_switchout_something - lsls r0, 24 - cmp r0, 0 - bne _080631AA - bl Random - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - bne _0806318C -_08063188: - movs r0, 0 - b _080631AC -_0806318C: - ldr r0, =gActiveBank - ldrb r0, [r0] -_08063190: - ldr r1, =gBattleStruct - ldr r1, [r1] - adds r0, r1 - movs r1, 0xA5 - lsls r1, 2 - adds r0, r1 - movs r1, 0x6 - strb r1, [r0] - movs r0, 0x1 - movs r1, 0x2 - movs r2, 0 - bl dp01_build_cmdbuf_x21_a_bb -_080631AA: - movs r0, 0x1 -_080631AC: - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end ai_switchout_natural_cure - - thumb_func_start ai_has_super_effective_move_on_field -ai_has_super_effective_move_on_field: @ 80631BC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - ldr r0, =gActiveBank - ldrb r0, [r0] - bl GetBankIdentity - movs r1, 0x1 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r3, r0, 24 - ldr r0, =gAbsentBankFlags - ldrb r1, [r0] - ldr r2, =gBitTable - lsls r0, r3, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _08063256 - movs r4, 0 - ldr r6, =gBattleMons - movs r7, 0x58 - adds r0, r3, 0 - muls r0, r7 - adds r5, r0, r6 - movs r0, 0x20 - adds r0, r5 - mov r8, r0 -_0806320A: - lsls r1, r4, 1 - ldr r0, =gActiveBank - ldrb r0, [r0] - muls r0, r7 - adds r1, r0 - adds r0, r6, 0 - adds r0, 0xC - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - beq _08063250 - ldrh r1, [r5] - mov r3, r8 - ldrb r2, [r3] - bl ai_rate_move - lsls r0, 24 - lsrs r1, r0, 24 - movs r0, 0x2 - ands r1, r0 - cmp r1, 0 - beq _08063250 - mov r0, r9 - cmp r0, 0 - bne _08063278 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0xA - bl __umodsi3 - lsls r0, 16 - cmp r0, 0 - bne _08063278 -_08063250: - adds r4, 0x1 - cmp r4, 0x3 - ble _0806320A -_08063256: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0806327C - b _080632FA - .pool -_08063278: - movs r0, 0x1 - b _080632FC -_0806327C: - movs r1, 0x2 - mov r0, r10 - eors r0, r1 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r3, r0, 24 - ldr r0, =gAbsentBankFlags - ldrb r1, [r0] - ldr r2, =gBitTable - lsls r0, r3, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _080632FA - movs r4, 0 - ldr r6, =gBattleMons - movs r7, 0x58 - adds r0, r3, 0 - muls r0, r7 - adds r5, r0, r6 - movs r3, 0x20 - adds r3, r5 - mov r8, r3 -_080632AE: - lsls r1, r4, 1 - ldr r0, =gActiveBank - ldrb r0, [r0] - muls r0, r7 - adds r1, r0 - adds r0, r6, 0 - adds r0, 0xC - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - beq _080632F4 - ldrh r1, [r5] - mov r3, r8 - ldrb r2, [r3] - bl ai_rate_move - lsls r0, 24 - lsrs r1, r0, 24 - movs r0, 0x2 - ands r1, r0 - cmp r1, 0 - beq _080632F4 - mov r0, r9 - cmp r0, 0 - bne _08063278 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0xA - bl __umodsi3 - lsls r0, 16 - cmp r0, 0 - bne _08063278 -_080632F4: - adds r4, 0x1 - cmp r4, 0x3 - ble _080632AE -_080632FA: - movs r0, 0 -_080632FC: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end ai_has_super_effective_move_on_field - - thumb_func_start ai_is_too_invested_in_stat_buffs -ai_is_too_invested_in_stat_buffs: @ 806331C - push {r4,lr} - movs r4, 0 - ldr r1, =gBattleMons - ldr r0, =gActiveBank - ldrb r2, [r0] - movs r0, 0x58 - muls r0, r2 - adds r1, 0x18 - adds r2, r0, r1 - movs r3, 0x7 -_08063330: - ldrb r1, [r2] - movs r0, 0 - ldrsb r0, [r2, r0] - cmp r0, 0x6 - ble _08063346 - subs r1, 0x6 - lsls r0, r4, 24 - asrs r0, 24 - adds r0, r1 - lsls r0, 24 - lsrs r4, r0, 24 -_08063346: - adds r2, 0x1 - subs r3, 0x1 - cmp r3, 0 - bge _08063330 - movs r0, 0 - cmp r4, 0x3 - bls _08063356 - movs r0, 0x1 -_08063356: - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end ai_is_too_invested_in_stat_buffs - - thumb_func_start ai_switchout_something -ai_switchout_something: @ 8063364 - 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 - str r0, [sp] - lsls r1, 24 - lsrs r1, 24 - str r1, [sp, 0x4] - ldr r2, =gUnknown_02024250 - ldr r1, =gActiveBank - ldrb r3, [r1] - lsls r0, r3, 1 - adds r4, r0, r2 - ldrh r2, [r4] - adds r5, r1, 0 - cmp r2, 0 - bne _08063390 - b _080635EE -_08063390: - ldr r0, =0x0000ffff - cmp r2, r0 - bne _08063398 - b _080635EE -_08063398: - ldr r0, =gUnknown_02024270 - adds r0, r3, r0 - ldrb r0, [r0] - cmp r0, 0xFF - bne _080633A4 - b _080635EE -_080633A4: - ldr r2, =gBattleMoves - ldrh r1, [r4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x1] - cmp r0, 0 - bne _080633B8 - b _080635EE -_080633B8: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0806342C - mov r9, r3 - mov r0, r9 - bl GetBankIdentity - movs r4, 0x2 - eors r0, r4 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - 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 _08063414 - ldrb r5, [r5] - mov r10, r5 - b _08063430 - .pool -_08063414: - ldrb r0, [r5] - bl GetBankIdentity - eors r0, r4 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - b _08063430 -_0806342C: - mov r9, r3 - mov r10, r9 -_08063430: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x00808000 - ands r0, r1 - cmp r0, 0 - beq _08063490 - ldr r2, =gActiveBank - ldrb r1, [r2] - movs r0, 0x2 - ands r0, r1 - adds r5, r2, 0 - cmp r0, 0 - bne _08063460 - movs r4, 0 - movs r0, 0x3 - str r0, [sp, 0x8] - b _08063498 - .pool -_08063460: - movs r4, 0x3 - movs r1, 0x6 - str r1, [sp, 0x8] - b _08063498 -_08063468: - ldr r0, =gActiveBank - ldrb r0, [r0] - ldr r1, =gBattleStruct - ldr r1, [r1] - adds r0, r1 - movs r2, 0xA5 - lsls r2, 2 - adds r0, r2 - strb r6, [r0] - movs r0, 0x1 - movs r1, 0x2 - movs r2, 0 - bl dp01_build_cmdbuf_x21_a_bb - movs r0, 0x1 - b _080635F0 - .pool -_08063490: - movs r4, 0 - movs r0, 0x6 - str r0, [sp, 0x8] - ldr r5, =gActiveBank -_08063498: - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - ldr r1, =gEnemyParty - str r1, [sp, 0xC] - cmp r0, 0 - bne _080634AC - ldr r2, =gPlayerParty - str r2, [sp, 0xC] -_080634AC: - adds r6, r4, 0 - b _080635E6 - .pool -_080634BC: - movs r0, 0x64 - muls r0, r6 - ldr r1, [sp, 0xC] - adds r5, r1, r0 - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - bne _080634D2 - b _080635E4 -_080634D2: - adds r0, r5, 0 - movs r1, 0x41 - bl GetMonData - cmp r0, 0 - bne _080634E0 - b _080635E4 -_080634E0: - adds r0, r5, 0 - movs r1, 0x41 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - beq _080635E4 - ldr r1, =gBattlePartyID - mov r2, r9 - lsls r0, r2, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r6, r0 - beq _080635E4 - mov r2, r10 - lsls r0, r2, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r6, r0 - beq _080635E4 - ldr r0, =gBattleStruct - ldr r1, [r0] - mov r2, r9 - adds r0, r2, r1 - adds r0, 0x5C - ldrb r0, [r0] - cmp r6, r0 - beq _080635E4 - mov r2, r10 - adds r0, r2, r1 - adds r0, 0x5C - ldrb r0, [r0] - cmp r6, r0 - beq _080635E4 - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r5, 0 - movs r1, 0x2E - bl GetMonData - cmp r0, 0 - beq _08063558 - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - ldr r1, =gBaseStats - adds r0, r1 - ldrb r2, [r0, 0x17] - b _08063564 - .pool -_08063558: - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - ldr r2, =gBaseStats - adds r0, r2 - ldrb r2, [r0, 0x16] -_08063564: - ldr r1, =gUnknown_02024250 - ldr r5, =gActiveBank - ldrb r0, [r5] - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] - adds r1, r4, 0 - bl ai_rate_move - ldr r1, [sp] - ands r1, r0 - cmp r1, 0 - beq _080635E4 - ldr r1, =gUnknown_02024270 - ldrb r0, [r5] - adds r0, r1 - ldrb r0, [r0] - mov r9, r0 - movs r4, 0 - movs r0, 0x64 - adds r1, r6, 0 - muls r1, r0 - mov r8, r1 - ldr r1, =gBattleMons - movs r0, 0x58 - mov r2, r9 - muls r2, r0 - adds r0, r2, 0 - adds r5, r0, r1 - adds r7, r5, 0 - adds r7, 0x20 -_080635A2: - adds r1, r4, 0 - adds r1, 0xD - ldr r0, [sp, 0xC] - add r0, r8 - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0 - beq _080635DE - ldrh r1, [r5] - ldrb r2, [r7] - bl ai_rate_move - lsls r0, 24 - lsrs r1, r0, 24 - movs r0, 0x2 - ands r1, r0 - cmp r1, 0 - beq _080635DE - bl Random - lsls r0, 16 - lsrs r0, 16 - ldr r1, [sp, 0x4] - bl __modsi3 - cmp r0, 0 - bne _080635DE - b _08063468 -_080635DE: - adds r4, 0x1 - cmp r4, 0x3 - ble _080635A2 -_080635E4: - adds r6, 0x1 -_080635E6: - ldr r0, [sp, 0x8] - cmp r6, r0 - bge _080635EE - b _080634BC -_080635EE: - movs r0, 0 -_080635F0: - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end ai_switchout_something - - thumb_func_start sub_8063614 -sub_8063614: @ 8063614 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - ldr r6, =gBattleMons - ldr r4, =gActiveBank - ldrb r2, [r4] - movs r5, 0x58 - adds r0, r2, 0 - muls r0, r5 - adds r1, r6, 0 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x0400e000 - ands r0, r1 - cmp r0, 0 - beq _0806363E - b _0806386C -_0806363E: - ldr r0, =gStatuses3 - lsls r1, r2, 2 - adds r1, r0 - ldr r1, [r1] - movs r0, 0x80 - lsls r0, 3 - ands r1, r0 - cmp r1, 0 - beq _08063652 - b _0806386C -_08063652: - str r1, [sp] - movs r0, 0xC - adds r1, r2, 0 - movs r2, 0x17 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _0806366A - b _0806386C -_0806366A: - ldrb r1, [r4] - str r0, [sp] - movs r0, 0xC - movs r2, 0x47 - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _08063682 - b _0806386C -_08063682: - str r0, [sp] - movs r0, 0xE - movs r1, 0 - movs r2, 0x2A - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - beq _080636B4 - ldrb r0, [r4] - muls r0, r5 - adds r1, r0, r6 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0x8 - bne _080636A8 - b _0806386C -_080636A8: - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0x8 - bne _080636B4 - b _0806386C -_080636B4: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 11 - ands r0, r1 - cmp r0, 0 - beq _080636C4 - b _0806386C -_080636C4: - movs r0, 0 - mov r10, r0 - movs r0, 0x1 - ands r1, r0 - cmp r1, 0 - beq _0806372E - ldrb r7, [r4] - adds r0, r7, 0 - bl GetBankIdentity - movs r5, 0x2 - eors r0, r5 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - 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 _08063718 - ldrb r6, [r4] - b _08063732 - .pool -_08063718: - ldrb r0, [r4] - bl GetBankIdentity - eors r0, r5 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r6, r0, 24 - b _08063732 -_0806372E: - ldrb r6, [r4] - adds r7, r6, 0 -_08063732: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x00808000 - ands r0, r1 - cmp r0, 0 - beq _08063768 - ldr r2, =gActiveBank - ldrb r1, [r2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08063760 - movs r4, 0 - movs r1, 0x3 - mov r8, r1 - b _08063770 - .pool -_08063760: - movs r4, 0x3 - movs r0, 0x6 - mov r8, r0 - b _08063770 -_08063768: - movs r4, 0 - movs r1, 0x6 - mov r8, r1 - ldr r2, =gActiveBank -_08063770: - ldrb r0, [r2] - bl GetBankSide - lsls r0, 24 - ldr r1, =gEnemyParty - mov r9, r1 - cmp r0, 0 - bne _08063784 - ldr r0, =gPlayerParty - mov r9, r0 -_08063784: - adds r5, r4, 0 - cmp r5, r8 - bge _080637F2 -_0806378A: - movs r0, 0x64 - muls r0, r5 - mov r1, r9 - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _080637EC - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - cmp r0, 0 - beq _080637EC - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - beq _080637EC - ldr r1, =gBattlePartyID - lsls r0, r7, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r5, r0 - beq _080637EC - lsls r0, r6, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r5, r0 - beq _080637EC - ldr r0, =gBattleStruct - ldr r1, [r0] - adds r0, r7, r1 - adds r0, 0x5C - ldrb r0, [r0] - cmp r5, r0 - beq _080637EC - adds r0, r6, r1 - adds r0, 0x5C - ldrb r0, [r0] - cmp r5, r0 - beq _080637EC - movs r0, 0x1 - add r10, r0 -_080637EC: - adds r5, 0x1 - cmp r5, r8 - blt _0806378A -_080637F2: - mov r1, r10 - cmp r1, 0 - beq _0806386C - bl ai_switch_perish_song - lsls r0, 24 - cmp r0, 0 - bne _08063852 - bl sub_8062C58 - lsls r0, 24 - cmp r0, 0 - bne _08063852 - bl sub_8062E54 - lsls r0, 24 - cmp r0, 0 - bne _08063852 - bl ai_switchout_natural_cure - lsls r0, 24 - cmp r0, 0 - bne _08063852 - movs r0, 0 - bl ai_has_super_effective_move_on_field - lsls r0, 24 - cmp r0, 0 - bne _0806386C - bl ai_is_too_invested_in_stat_buffs - lsls r0, 24 - cmp r0, 0 - bne _0806386C - movs r0, 0x8 - movs r1, 0x2 - bl ai_switchout_something - lsls r0, 24 - cmp r0, 0 - bne _08063852 - movs r0, 0x4 - movs r1, 0x3 - bl ai_switchout_something - lsls r0, 24 - cmp r0, 0 - beq _0806386C -_08063852: - movs r0, 0x1 - b _0806386E - .pool -_0806386C: - movs r0, 0 -_0806386E: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8063614 - - thumb_func_start sub_8063880 -sub_8063880: @ 8063880 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, =gActiveBank - ldrb r0, [r4] - bl GetBankIdentity - lsls r0, 24 - lsrs r6, r0, 24 - adds r5, r6, 0 - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - ldr r1, =gEnemyParty - mov r8, r1 - cmp r0, 0 - bne _080638A8 - ldr r2, =gPlayerParty - mov r8, r2 -_080638A8: - ldr r7, =gBattleTypeFlags - ldr r0, [r7] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - bne _080638B6 - b _080639E6 -_080638B6: - bl sub_8063614 - lsls r0, 24 - cmp r0, 0 - bne _080638C2 - b _080639DC -_080638C2: - ldrb r0, [r4] - ldr r2, =gBattleStruct - ldr r1, [r2] - adds r0, r1 - movs r1, 0xA5 - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x6 - bne _080639B8 - bl sub_8063A90 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x6 - bne _080639A6 - ldr r0, [r7] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08063910 - adds r0, r6, 0 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - b _08063928 - .pool -_08063910: - adds r0, r5, 0 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r6, r0, 24 - movs r0, 0x2 - eors r5, r0 - adds r0, r5, 0 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r5, r0, 24 -_08063928: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x00808000 - ands r0, r1 - cmp r0, 0 - beq _08063958 - ldr r0, =gActiveBank - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08063954 - movs r0, 0 - movs r7, 0x3 - b _0806395C - .pool -_08063954: - movs r0, 0x3 - b _0806395A -_08063958: - movs r0, 0 -_0806395A: - movs r7, 0x6 -_0806395C: - adds r4, r0, 0 - cmp r4, r7 - bge _080639A6 -_08063962: - movs r0, 0x64 - muls r0, r4 - add r0, r8 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _080639A0 - ldr r1, =gBattlePartyID - lsls r0, r6, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r4, r0 - beq _080639A0 - lsls r0, r5, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r4, r0 - beq _080639A0 - ldr r0, =gBattleStruct - ldr r1, [r0] - adds r0, r6, r1 - adds r0, 0x5C - ldrb r0, [r0] - cmp r4, r0 - beq _080639A0 - adds r0, r5, r1 - adds r0, 0x5C - ldrb r0, [r0] - cmp r4, r0 - bne _080639A6 -_080639A0: - adds r4, 0x1 - cmp r4, r7 - blt _08063962 -_080639A6: - ldr r0, =gActiveBank - ldrb r0, [r0] - ldr r2, =gBattleStruct - ldr r1, [r2] - adds r0, r1 - movs r1, 0xA5 - lsls r1, 2 - adds r0, r1 - strb r4, [r0] -_080639B8: - ldr r0, =gActiveBank - ldrb r1, [r0] - ldr r0, [r2] - adds r0, r1, r0 - adds r1, r0, 0 - adds r1, 0x5C - movs r2, 0xA5 - lsls r2, 2 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - b _080639F8 - .pool -_080639DC: - bl sub_8063EE0 - lsls r0, 24 - cmp r0, 0 - bne _080639F8 -_080639E6: - ldr r0, =gActiveBank - ldrb r0, [r0] - movs r2, 0x1 - eors r2, r0 - lsls r2, 8 - movs r0, 0x1 - movs r1, 0 - bl dp01_build_cmdbuf_x21_a_bb -_080639F8: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8063880 - - thumb_func_start sub_8063A08 -sub_8063A08: @ 8063A08 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r6, r3, 0 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - lsls r1, 24 - lsrs r1, 24 - mov r9, r1 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - movs r7, 0 - ldr r0, =gUnknown_0831ACE8 - mov r10, r0 - ldrb r0, [r0] - cmp r0, 0xFF - beq _08063A7A - mov r5, r10 -_08063A36: - ldrb r0, [r5] - cmp r0, 0xFE - beq _08063A6C - ldr r1, [sp] - cmp r0, r1 - bne _08063A6C - ldrb r4, [r5, 0x1] - cmp r4, r9 - bne _08063A56 - ldrb r1, [r6] - ldrb r0, [r5, 0x2] - muls r0, r1 - movs r1, 0xA - bl __divsi3 - strb r0, [r6] -_08063A56: - cmp r4, r8 - bne _08063A6C - cmp r9, r8 - beq _08063A6C - ldrb r1, [r6] - ldrb r0, [r5, 0x2] - muls r0, r1 - movs r1, 0xA - bl __divsi3 - strb r0, [r6] -_08063A6C: - adds r5, 0x3 - adds r7, 0x3 - mov r1, r10 - adds r0, r7, r1 - ldrb r0, [r0] - cmp r0, 0xFF - bne _08063A36 -_08063A7A: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8063A08 - - thumb_func_start sub_8063A90 -sub_8063A90: @ 8063A90 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - ldr r4, =gActiveBank - ldrb r2, [r4] - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, r2, r0 - adds r1, r0, 0 - adds r1, 0x5C - ldrb r0, [r1] - cmp r0, 0x6 - beq _08063AB2 - b _08063E50 -_08063AB2: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 11 - ands r0, r1 - cmp r0, 0 - beq _08063AE0 - ldr r1, =gBattlePartyID - lsls r0, r2, 1 - adds r0, r1 - ldrb r0, [r0] - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - b _08063E50 - .pool -_08063AE0: - movs r0, 0x1 - ands r1, r0 - cmp r1, 0 - beq _08063B6C - str r2, [sp, 0x10] - adds r0, r2, 0 - bl GetBankIdentity - movs r5, 0x2 - eors r0, r5 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - 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 _08063B20 - ldrb r4, [r4] - str r4, [sp, 0x14] - b _08063B36 - .pool -_08063B20: - ldrb r0, [r4] - bl GetBankIdentity - eors r0, r5 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x14] -_08063B36: - bl Random - movs r3, 0x2 - ands r0, r3 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - ldr r0, =gAbsentBankFlags - ldrb r1, [r0] - ldr r2, =gBitTable - ldr r4, [sp, 0x4] - lsls r0, r4, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _08063B8A - eors r4, r3 - lsls r0, r4, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - b _08063B8A - .pool -_08063B6C: - adds r0, r2, 0 - bl GetBankIdentity - movs r1, 0x1 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByPlayerAI - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - ldrb r4, [r4] - str r4, [sp, 0x14] - str r4, [sp, 0x10] -_08063B8A: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x00808000 - ands r0, r1 - cmp r0, 0 - beq _08063BC2 - ldr r2, =gActiveBank - ldrb r1, [r2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08063BB8 - movs r0, 0 - str r0, [sp, 0x18] - movs r1, 0x3 - str r1, [sp, 0x1C] - b _08063BCC - .pool -_08063BB8: - movs r4, 0x3 - str r4, [sp, 0x18] - movs r0, 0x6 - str r0, [sp, 0x1C] - b _08063BCC -_08063BC2: - movs r1, 0 - str r1, [sp, 0x18] - movs r2, 0x6 - str r2, [sp, 0x1C] - ldr r2, =gActiveBank -_08063BCC: - ldrb r0, [r2] - bl GetBankSide - lsls r0, 24 - ldr r4, =gEnemyParty - str r4, [sp, 0x20] - cmp r0, 0 - bne _08063BE0 - ldr r0, =gPlayerParty - str r0, [sp, 0x20] -_08063BE0: - movs r1, 0 - mov r9, r1 -_08063BE4: - movs r2, 0 - str r2, [sp, 0x8] - movs r4, 0x6 - str r4, [sp, 0xC] - ldr r7, [sp, 0x18] - ldr r0, [sp, 0x1C] - cmp r7, r0 - blt _08063BF6 - b _08063CF2 -_08063BF6: - lsls r0, r7, 2 - ldr r1, =gBitTable - adds r0, r1 - mov r8, r0 - mov r10, sp -_08063C00: - movs r0, 0x64 - muls r0, r7 - ldr r2, [sp, 0x20] - adds r4, r2, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0 - beq _08063CD8 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _08063CD8 - mov r4, r8 - ldr r0, [r4] - mov r1, r9 - ands r0, r1 - cmp r0, 0 - bne _08063CD8 - ldr r1, =gBattlePartyID - ldr r2, [sp, 0x10] - lsls r0, r2, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r0, r7 - beq _08063CD8 - ldr r4, [sp, 0x14] - lsls r0, r4, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r0, r7 - beq _08063CD8 - ldr r0, =gBattleStruct - ldr r1, [r0] - adds r0, r2, r1 - adds r0, 0x5C - ldrb r0, [r0] - cmp r7, r0 - beq _08063CD8 - adds r0, r4, r1 - adds r0, 0x5C - ldrb r0, [r0] - cmp r7, r0 - beq _08063CD8 - ldr r1, =gBaseStats - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - adds r0, r1 - ldrb r5, [r0, 0x6] - ldrb r6, [r0, 0x7] - movs r0, 0xA - mov r1, r10 - strb r0, [r1] - movs r0, 0x58 - ldr r2, [sp, 0x4] - adds r4, r2, 0 - muls r4, r0 - ldr r0, =gBattleMons - adds r4, r0 - adds r0, r4, 0 - adds r0, 0x21 - ldrb r0, [r0] - adds r1, r5, 0 - adds r2, r6, 0 - mov r3, sp - bl sub_8063A08 - adds r4, 0x22 - ldrb r0, [r4] - adds r1, r5, 0 - adds r2, r6, 0 - mov r3, sp - bl sub_8063A08 - ldr r2, [sp, 0x8] - mov r1, r10 - ldrb r1, [r1] - cmp r2, r1 - bcs _08063CE6 - mov r2, r10 - ldrb r2, [r2] - str r2, [sp, 0x8] - lsls r0, r7, 24 - lsrs r0, 24 - str r0, [sp, 0xC] - b _08063CE6 - .pool -_08063CD8: - mov r4, r8 - ldr r0, [r4] - mov r1, r9 - orrs r1, r0 - lsls r0, r1, 24 - lsrs r0, 24 - mov r9, r0 -_08063CE6: - movs r2, 0x4 - add r8, r2 - adds r7, 0x1 - ldr r4, [sp, 0x1C] - cmp r7, r4 - blt _08063C00 -_08063CF2: - ldr r0, [sp, 0xC] - cmp r0, 0x6 - beq _08063D54 - movs r7, 0 - movs r0, 0x64 - ldr r1, [sp, 0xC] - adds r5, r1, 0 - muls r5, r0 -_08063D02: - adds r1, r7, 0 - adds r1, 0xD - ldr r2, [sp, 0x20] - adds r0, r2, r5 - bl GetMonData - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0 - beq _08063D2A - ldr r0, =gActiveBank - ldrb r1, [r0] - adds r0, r4, 0 - ldr r2, [sp, 0x4] - bl TypeCalc - movs r1, 0x2 - ands r1, r0 - cmp r1, 0 - bne _08063D30 -_08063D2A: - adds r7, 0x1 - cmp r7, 0x3 - ble _08063D02 -_08063D30: - cmp r7, 0x4 - beq _08063D36 - b _08063E4E -_08063D36: - ldr r4, [sp, 0xC] - lsls r0, r4, 2 - ldr r1, =gBitTable - adds r0, r1 - ldr r0, [r0] - mov r2, r9 - orrs r2, r0 - lsls r0, r2, 24 - lsrs r0, 24 - mov r9, r0 - b _08063D58 - .pool -_08063D54: - movs r4, 0x3F - mov r9, r4 -_08063D58: - mov r0, r9 - cmp r0, 0x3F - beq _08063D60 - b _08063BE4 -_08063D60: - ldr r0, =gDynamicBasePower - movs r1, 0 - strh r1, [r0] - ldr r0, =gBattleStruct - ldr r0, [r0] - strb r1, [r0, 0x13] - ldr r0, =gBattleScripting - movs r2, 0x1 - strb r2, [r0, 0xE] - ldr r0, =gBattleMoveFlags - strb r1, [r0] - ldr r0, =gCritMultiplier - strb r2, [r0] - movs r1, 0 - str r1, [sp, 0x8] - movs r2, 0x6 - str r2, [sp, 0xC] - ldr r7, [sp, 0x18] - ldr r4, [sp, 0x1C] - cmp r7, r4 - bge _08063E4E -_08063D8A: - movs r0, 0x64 - adds r6, r7, 0 - muls r6, r0 - ldr r0, [sp, 0x20] - adds r4, r0, r6 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - adds r1, r7, 0x1 - mov r10, r1 - cmp r0, 0 - beq _08063E46 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _08063E46 - ldr r1, =gBattlePartyID - ldr r2, [sp, 0x10] - lsls r0, r2, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r0, r7 - beq _08063E46 - ldr r4, [sp, 0x14] - lsls r0, r4, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r0, r7 - beq _08063E46 - ldr r0, =gBattleStruct - ldr r1, [r0] - adds r0, r2, r1 - adds r0, 0x5C - ldrb r0, [r0] - cmp r7, r0 - beq _08063E46 - adds r0, r4, r1 - adds r0, 0x5C - ldrb r0, [r0] - cmp r7, r0 - beq _08063E46 - movs r5, 0 - mov r9, r6 - ldr r0, =gBattleMoveDamage - mov r8, r0 - ldr r6, =gActiveBank -_08063DEE: - adds r1, r5, 0 - adds r1, 0xD - ldr r0, [sp, 0x20] - add r0, r9 - bl GetMonData - lsls r0, 16 - lsrs r4, r0, 16 - movs r0, 0 - mov r1, r8 - str r0, [r1] - cmp r4, 0 - beq _08063E2A - ldr r0, =gBattleMoves - lsls r1, r4, 1 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - cmp r0, 0x1 - beq _08063E2A - ldrb r0, [r6] - ldr r1, [sp, 0x4] - bl AI_CalcDmg - ldrb r1, [r6] - adds r0, r4, 0 - ldr r2, [sp, 0x4] - bl TypeCalc -_08063E2A: - mov r2, r8 - ldr r0, [r2] - ldr r4, [sp, 0x8] - cmp r4, r0 - bge _08063E40 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x8] - lsls r0, r7, 24 - lsrs r0, 24 - str r0, [sp, 0xC] -_08063E40: - adds r5, 0x1 - cmp r5, 0x3 - ble _08063DEE -_08063E46: - mov r7, r10 - ldr r0, [sp, 0x1C] - cmp r7, r0 - blt _08063D8A -_08063E4E: - ldr r0, [sp, 0xC] -_08063E50: - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8063A90 - - thumb_func_start ai_identify_item_effect -ai_identify_item_effect: @ 8063E84 - push {r4,lr} - adds r2, r1, 0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bne _08063E94 - movs r0, 0x1 - b _08063EDA -_08063E94: - ldrb r1, [r2, 0x4] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08063EA2 - movs r0, 0x2 - b _08063EDA -_08063EA2: - ldrb r4, [r2, 0x3] - movs r3, 0x3F - adds r0, r3, 0 - ands r0, r4 - cmp r0, 0 - beq _08063EB2 - movs r0, 0x3 - b _08063EDA -_08063EB2: - ldrb r1, [r2] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _08063EC8 - ldrb r0, [r2, 0x1] - cmp r0, 0 - bne _08063EC8 - ldrb r0, [r2, 0x2] - cmp r0, 0 - beq _08063ECC -_08063EC8: - movs r0, 0x4 - b _08063EDA -_08063ECC: - movs r0, 0x80 - ands r0, r4 - cmp r0, 0 - bne _08063ED8 - movs r0, 0x6 - b _08063EDA -_08063ED8: - movs r0, 0x5 -_08063EDA: - pop {r4} - pop {r1} - bx r1 - thumb_func_end ai_identify_item_effect - - thumb_func_start sub_8063EE0 -sub_8063EE0: @ 8063EE0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - movs r0, 0 - mov r10, r0 - movs r7, 0 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 15 - ands r0, r1 - cmp r0, 0 - beq _08063F12 - ldr r0, =gActiveBank - ldrb r0, [r0] - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08063F12 - b _0806437C -_08063F12: - ldr r0, =gActiveBank - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - ldr r5, =gEnemyParty - cmp r0, 0 - bne _08063F24 - ldr r5, =gPlayerParty -_08063F24: - movs r1, 0 - mov r8, r1 -_08063F28: - movs r0, 0x64 - mov r2, r8 - muls r2, r0 - adds r0, r2, 0 - adds r4, r5, r0 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _08063F64 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - cmp r0, 0 - beq _08063F64 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - beq _08063F64 - mov r0, r10 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 -_08063F64: - movs r0, 0x1 - add r8, r0 - mov r1, r8 - cmp r1, 0x5 - ble _08063F28 - movs r2, 0 - mov r8, r2 -_08063F72: - ldr r1, =gBattleResources - mov r0, r8 - cmp r0, 0 - beq _08063F8E - ldr r0, [r1] - ldr r0, [r0, 0x18] - adds r0, 0x50 - ldrb r0, [r0] - mov r2, r8 - subs r0, r2 - adds r0, 0x1 - cmp r10, r0 - ble _08063F8E - b _08064370 -_08063F8E: - ldr r0, [r1] - ldr r0, [r0, 0x18] - mov r2, r8 - lsls r1, r2, 1 - adds r0, 0x48 - adds r0, r1 - ldrh r0, [r0] - mov r9, r0 - str r1, [sp] - cmp r0, 0 - bne _08063FA6 - b _08064370 -_08063FA6: - ldr r1, =gItemEffectTable - subs r0, 0xD - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - cmp r1, 0 - bne _08063FB6 - b _08064370 -_08063FB6: - mov r0, r9 - cmp r0, 0xAF - bne _08063FE8 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x00003214 - adds r5, r0, r1 - b _08063FEA - .pool -_08063FE8: - adds r5, r1, 0 -_08063FEA: - mov r2, r9 - lsls r0, r2, 24 - lsrs r0, 24 - adds r1, r5, 0 - bl ai_identify_item_effect - ldr r4, =gActiveBank - ldrb r1, [r4] - lsrs r1, 1 - ldr r3, =gBattleStruct - ldr r2, [r3] - adds r1, r2 - adds r1, 0xC4 - strb r0, [r1] - ldrb r0, [r4] - lsrs r0, 1 - ldr r1, [r3] - adds r0, r1 - adds r0, 0xC4 - ldrb r0, [r0] - subs r0, 0x1 - cmp r0, 0x5 - bls _0806401A - b _08064324 -_0806401A: - lsls r0, 2 - ldr r1, =_08064030 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08064030: - .4byte _08064048 - .4byte _08064074 - .4byte _080640BC - .4byte _08064214 - .4byte _080642F4 - .4byte _0806437C -_08064048: - ldr r2, =gBattleMons - ldr r0, =gActiveBank - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r0, r2 - ldrh r1, [r0, 0x2C] - ldrh r0, [r0, 0x28] - lsrs r1, 2 - cmp r0, r1 - bcc _08064060 - b _08064324 -_08064060: - cmp r0, 0 - bne _08064066 - b _08064324 -_08064066: - movs r7, 0x1 - b _08064328 - .pool -_08064074: - mov r0, r9 - movs r1, 0x4 - movs r2, 0x4 - bl GetItemEffectParamOffset - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _08064088 - b _08064324 -_08064088: - ldr r2, =gBattleMons - ldr r0, =gActiveBank - ldrb r1, [r0] - movs r0, 0x58 - muls r0, r1 - adds r1, r0, r2 - ldrh r2, [r1, 0x28] - cmp r2, 0 - bne _0806409C - b _08064324 -_0806409C: - ldrh r3, [r1, 0x2C] - lsrs r0, r3, 2 - cmp r2, r0 - bcc _08064066 - adds r0, r2, 0 - subs r0, r3, r0 - adds r1, r5, r4 - ldrb r1, [r1] - cmp r0, r1 - bgt _080640B2 - b _08064324 -_080640B2: - b _08064066 - .pool -_080640BC: - ldr r3, =gActiveBank - ldrb r0, [r3] - lsrs r0, 1 - ldr r2, =gBattleStruct - ldr r1, [r2] - adds r0, r1 - adds r0, 0xC6 - movs r1, 0 - strb r1, [r0] - ldrb r1, [r5, 0x3] - movs r6, 0x20 - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08064100 - ldr r1, =gBattleMons - ldrb r4, [r3] - movs r0, 0x58 - muls r0, r4 - adds r1, 0x4C - adds r0, r1 - ldr r0, [r0] - movs r1, 0x7 - ands r0, r1 - cmp r0, 0 - beq _08064100 - lsrs r1, r4, 1 - ldr r0, [r2] - adds r1, r0 - adds r1, 0xC6 - ldrb r0, [r1] - orrs r0, r6 - strb r0, [r1] - movs r7, 0x1 -_08064100: - ldrb r1, [r5, 0x3] - movs r6, 0x10 - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0806413A - ldr r1, =gBattleMons - ldrb r4, [r3] - movs r0, 0x58 - muls r0, r4 - adds r1, 0x4C - adds r0, r1 - ldr r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _0806412A - movs r0, 0x80 - ands r1, r0 - cmp r1, 0 - beq _0806413A -_0806412A: - lsrs r1, r4, 1 - ldr r0, [r2] - adds r1, r0 - adds r1, 0xC6 - ldrb r0, [r1] - orrs r0, r6 - strb r0, [r1] - movs r7, 0x1 -_0806413A: - ldrb r1, [r5, 0x3] - movs r6, 0x8 - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0806416C - ldr r1, =gBattleMons - ldrb r4, [r3] - movs r0, 0x58 - muls r0, r4 - adds r1, 0x4C - adds r0, r1 - ldr r0, [r0] - movs r1, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0806416C - lsrs r1, r4, 1 - ldr r0, [r2] - adds r1, r0 - adds r1, 0xC6 - ldrb r0, [r1] - orrs r0, r6 - strb r0, [r1] - movs r7, 0x1 -_0806416C: - ldrb r1, [r5, 0x3] - movs r6, 0x4 - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0806419E - ldr r1, =gBattleMons - ldrb r4, [r3] - movs r0, 0x58 - muls r0, r4 - adds r1, 0x4C - adds r0, r1 - ldr r0, [r0] - movs r1, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0806419E - lsrs r1, r4, 1 - ldr r0, [r2] - adds r1, r0 - adds r1, 0xC6 - ldrb r0, [r1] - orrs r0, r6 - strb r0, [r1] - movs r7, 0x1 -_0806419E: - ldrb r1, [r5, 0x3] - movs r6, 0x2 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080641D0 - ldr r1, =gBattleMons - ldrb r4, [r3] - movs r0, 0x58 - muls r0, r4 - adds r1, 0x4C - adds r0, r1 - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080641D0 - lsrs r1, r4, 1 - ldr r0, [r2] - adds r1, r0 - adds r1, 0xC6 - ldrb r0, [r1] - orrs r0, r6 - strb r0, [r1] - movs r7, 0x1 -_080641D0: - ldrb r1, [r5, 0x3] - movs r4, 0x1 - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080641DE - b _08064324 -_080641DE: - ldr r1, =gBattleMons - ldrb r3, [r3] - movs r0, 0x58 - muls r0, r3 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x7 - ands r0, r1 - cmp r0, 0 - bne _080641F6 - b _08064324 -_080641F6: - lsrs r1, r3, 1 - ldr r0, [r2] - adds r1, r0 - adds r1, 0xC6 - ldrb r0, [r1] - orrs r0, r4 - strb r0, [r1] - b _08064066 - .pool -_08064214: - ldr r4, =gActiveBank - ldrb r0, [r4] - lsrs r0, 1 - ldr r3, =gBattleStruct - ldr r1, [r3] - adds r0, r1 - adds r0, 0xC6 - movs r1, 0 - strb r1, [r0] - ldr r1, =gDisableStructs - ldrb r2, [r4] - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0, 0x16] - cmp r0, 0 - beq _08064324 - ldrb r1, [r5] - movs r6, 0xF - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _08064254 - lsrs r2, 1 - ldr r0, [r3] - adds r2, r0 - adds r2, 0xC6 - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] -_08064254: - ldrb r1, [r5, 0x1] - movs r7, 0xF0 - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _08064272 - ldrb r0, [r4] - lsrs r0, 1 - ldr r1, [r3] - adds r0, r1 - adds r0, 0xC6 - ldrb r1, [r0] - movs r2, 0x2 - orrs r1, r2 - strb r1, [r0] -_08064272: - ldrb r1, [r5, 0x1] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _0806428E - ldrb r0, [r4] - lsrs r0, 1 - ldr r1, [r3] - adds r0, r1 - adds r0, 0xC6 - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] -_0806428E: - ldrb r1, [r5, 0x2] - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _080642AA - ldrb r0, [r4] - lsrs r0, 1 - ldr r1, [r3] - adds r0, r1 - adds r0, 0xC6 - ldrb r1, [r0] - movs r2, 0x8 - orrs r1, r2 - strb r1, [r0] -_080642AA: - ldrb r1, [r5, 0x2] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _080642C6 - ldrb r0, [r4] - lsrs r0, 1 - ldr r1, [r3] - adds r0, r1 - adds r0, 0xC6 - ldrb r1, [r0] - movs r2, 0x20 - orrs r1, r2 - strb r1, [r0] -_080642C6: - ldrb r1, [r5] - movs r0, 0x30 - ands r0, r1 - cmp r0, 0 - bne _080642D2 - b _08064066 -_080642D2: - ldrb r0, [r4] - lsrs r0, 1 - ldr r1, [r3] - adds r0, r1 - adds r0, 0xC6 - ldrb r1, [r0] - movs r2, 0x80 - orrs r1, r2 - strb r1, [r0] - b _08064066 - .pool -_080642F4: - ldr r4, =gActiveBank - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - lsrs r3, r0, 24 - ldr r2, =gDisableStructs - ldrb r1, [r4] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x16] - cmp r0, 0 - beq _08064324 - ldr r0, =gSideTimers - lsls r1, r3, 1 - adds r1, r3 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0x4] - cmp r0, 0 - bne _08064324 - b _08064066 -_08064324: - cmp r7, 0 - beq _08064370 -_08064328: - movs r0, 0x1 - movs r1, 0x1 - movs r2, 0 - bl dp01_build_cmdbuf_x21_a_bb - ldr r0, =gActiveBank - ldrb r0, [r0] - lsrs r0, 1 - ldr r1, =gBattleStruct - ldr r1, [r1] - lsls r0, 1 - adds r0, r1 - adds r0, 0xC0 - mov r1, r9 - strb r1, [r0] - ldr r0, =gBattleResources - ldr r0, [r0] - ldr r0, [r0, 0x18] - adds r0, 0x48 - ldr r2, [sp] - adds r0, r2 - movs r1, 0 - strh r1, [r0] - adds r0, r7, 0 - b _0806437E - .pool -_08064370: - movs r0, 0x1 - add r8, r0 - mov r1, r8 - cmp r1, 0x3 - bgt _0806437C - b _08063F72 -_0806437C: - movs r0, 0 -_0806437E: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8063EE0 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/battle_anim.s b/asm/battle_anim.s deleted file mode 100644 index 639be6b7d..000000000 --- a/asm/battle_anim.s +++ /dev/null @@ -1,4205 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_80A3934 -sub_80A3934: @ 80A3934 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r0, =gAnimFramesToWait - movs r1, 0 - strb r1, [r0] - ldr r0, =gAnimScriptActive - strb r1, [r0] - ldr r0, =gAnimVisualTaskCount - strb r1, [r0] - ldr r0, =gAnimSoundTaskCount - strb r1, [r0] - ldr r0, =gDisableStructMoveAnim - movs r1, 0 - str r1, [r0] - ldr r0, =gMoveDmgMoveAnim - str r1, [r0] - ldr r0, =gMovePowerMoveAnim - movs r2, 0 - strh r1, [r0] - ldr r0, =gHappinessMoveAnim - strb r2, [r0] - ldr r4, =gUnknown_02038430 - ldr r5, =gUnknown_02038432 - ldr r6, =gUnknown_02038433 - ldr r7, =gAnimMoveIndex - ldr r0, =gAnimationBankAttacker - mov r12, r0 - ldr r1, =gAnimationBankTarget - mov r8, r1 - ldr r0, =gUnknown_02038440 - mov r9, r0 - ldr r1, =0x0000ffff - adds r3, r1, 0 - ldr r1, =gAnimSpriteIndexArray - movs r2, 0x7 -_080A397E: - ldrh r0, [r1] - orrs r0, r3 - strh r0, [r1] - adds r1, 0x2 - subs r2, 0x1 - cmp r2, 0 - bge _080A397E - ldr r1, =gBattleAnimArgs - movs r2, 0 - adds r0, r1, 0 - adds r0, 0xE -_080A3994: - strh r2, [r0] - subs r0, 0x2 - cmp r0, r1 - bge _080A3994 - movs r1, 0 - movs r0, 0xFF - strb r0, [r4] - movs r0, 0x1 - negs r0, r0 - strb r0, [r4, 0x1] - strb r1, [r5] - strb r1, [r6] - movs r0, 0 - strh r1, [r7] - mov r1, r12 - strb r0, [r1] - mov r1, r8 - strb r0, [r1] - mov r1, r9 - strb r0, [r1] - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A3934 - - thumb_func_start move_anim_start_t1 -move_anim_start_t1: @ 80A3A10 - push {lr} - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - ldr r2, =gAnimationBankAttacker - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r2] - ldr r2, =gAnimationBankTarget - ldr r0, =gBankTarget - ldrb r0, [r0] - strb r0, [r2] - ldr r0, =gUnknown_082C8D6C - movs r2, 0x1 - bl move_something - pop {r0} - bx r0 - .pool - thumb_func_end move_anim_start_t1 - - thumb_func_start move_something -move_something: @ 80A3A48 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - str r0, [sp] - lsls r1, 16 - lsrs r1, 16 - mov r8, r1 - lsls r2, 24 - lsrs r2, 24 - mov r9, r2 - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080A3AE8 - bl sub_80A8278 - movs r0, 0 - bl sub_8072A88 - movs r4, 0 - mov r0, r8 - lsls r0, 2 - mov r10, r0 - ldr r6, =gBattlePartyID - movs r7, 0x64 - ldr r5, =gUnknown_02038438 -_080A3A84: - lsls r0, r4, 24 - lsrs r0, 24 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080A3AA8 - ldrh r0, [r6] - muls r0, r7 - ldr r1, =gEnemyParty - b _080A3AAE - .pool -_080A3AA8: - ldrh r0, [r6] - muls r0, r7 - ldr r1, =gPlayerParty -_080A3AAE: - adds r0, r1 - movs r1, 0xB - bl GetMonData - strh r0, [r5] - adds r6, 0x2 - adds r5, 0x2 - adds r4, 0x1 - cmp r4, 0x3 - ble _080A3A84 - ldr r3, =gAnimMoveIndex - ldr r5, =gUnknown_02038430 - ldr r1, =gAnimScriptActive - mov r12, r1 - ldr r7, =gAnimScriptCallback - ldr r6, =move_anim_execute - b _080A3B10 - .pool -_080A3AE8: - ldr r3, =gAnimMoveIndex - ldr r5, =gUnknown_02038430 - mov r0, r8 - lsls r0, 2 - mov r10, r0 - ldr r1, =gAnimScriptActive - mov r12, r1 - ldr r7, =gAnimScriptCallback - ldr r6, =move_anim_execute - ldr r2, =gUnknown_02039F34 - ldr r1, =gUnknown_02038438 - movs r4, 0x3 -_080A3B00: - ldr r0, [r2] - ldr r0, [r0, 0x18] - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - subs r4, 0x1 - cmp r4, 0 - bge _080A3B00 -_080A3B10: - mov r0, r9 - cmp r0, 0 - bne _080A3B38 - strh r0, [r3] - b _080A3B3C - .pool -_080A3B38: - mov r1, r8 - strh r1, [r3] -_080A3B3C: - ldr r1, =gBattleAnimArgs - movs r2, 0 - adds r0, r1, 0 - adds r0, 0xE -_080A3B44: - strh r2, [r0] - subs r0, 0x2 - cmp r0, r1 - bge _080A3B44 - movs r0, 0xFF - strb r0, [r5] - movs r0, 0x1 - negs r0, r0 - strb r0, [r5, 0x1] - ldr r0, [sp] - add r0, r10 - ldr r0, [r0] - ldr r1, =gBattleAnimScriptPtr - str r0, [r1] - movs r0, 0x1 - mov r1, r12 - strb r0, [r1] - movs r0, 0 - ldr r1, =gAnimFramesToWait - strb r0, [r1] - str r6, [r7] - ldr r0, =0x0000ffff - adds r2, r0, 0 - ldr r1, =gAnimSpriteIndexArray - movs r4, 0x7 -_080A3B76: - ldrh r0, [r1] - orrs r0, r2 - strh r0, [r1] - adds r1, 0x2 - subs r4, 0x1 - cmp r4, 0 - bge _080A3B76 - mov r1, r9 - cmp r1, 0 - beq _080A3BC2 - movs r4, 0 - ldr r2, =gUnknown_082C8D64 - b _080A3BAA - .pool -_080A3BA8: - adds r4, 0x1 -_080A3BAA: - lsls r0, r4, 1 - adds r0, r2 - ldrh r0, [r0] - ldr r1, =0x0000ffff - cmp r0, r1 - beq _080A3BC2 - cmp r8, r0 - bne _080A3BA8 - ldr r0, =gMPlay_BGM - movs r2, 0x80 - bl m4aMPlayVolumeControl -_080A3BC2: - ldr r0, =gUnknown_02022E24 - movs r1, 0 - strh r1, [r0] - ldr r0, =gUnknown_02022E26 - strh r1, [r0] - ldr r0, =gUnknown_02022E28 - strh r1, [r0] - ldr r0, =gUnknown_02022E2A - strh r1, [r0] - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end move_something - - thumb_func_start move_anim_8072740 -move_anim_8072740: @ 80A3BFC - push {r4,lr} - adds r4, r0, 0 - bl FreeSpriteOamMatrix - adds r0, r4, 0 - bl DestroySprite - ldr r1, =gAnimVisualTaskCount - ldrb r0, [r1] - subs r0, 0x1 - strb r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end move_anim_8072740 - - thumb_func_start move_anim_task_del -move_anim_task_del: @ 80A3C1C - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl DestroyTask - ldr r1, =gAnimVisualTaskCount - ldrb r0, [r1] - subs r0, 0x1 - strb r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end move_anim_task_del - - thumb_func_start move_anim_related_task_del -move_anim_related_task_del: @ 80A3C38 - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl DestroyTask - ldr r1, =gAnimSoundTaskCount - ldrb r0, [r1] - subs r0, 0x1 - strb r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end move_anim_related_task_del - - thumb_func_start sub_80A3C54 -sub_80A3C54: @ 80A3C54 - push {r4,lr} - lsls r0, 16 - lsrs r3, r0, 16 - movs r2, 0 - ldr r4, =0x0000ffff - ldr r1, =gAnimSpriteIndexArray -_080A3C60: - ldrh r0, [r1] - cmp r0, r4 - bne _080A3C74 - strh r3, [r1] - b _080A3C7C - .pool -_080A3C74: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, 0x7 - ble _080A3C60 -_080A3C7C: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80A3C54 - - thumb_func_start sub_80A3C84 -sub_80A3C84: @ 80A3C84 - push {r4,lr} - lsls r0, 16 - lsrs r3, r0, 16 - movs r2, 0 - ldr r0, =0x0000ffff - adds r4, r0, 0 - ldr r1, =gAnimSpriteIndexArray -_080A3C92: - ldrh r0, [r1] - cmp r0, r3 - bne _080A3CA8 - orrs r0, r4 - strh r0, [r1] - b _080A3CB0 - .pool -_080A3CA8: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, 0x7 - ble _080A3C92 -_080A3CB0: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80A3C84 - - thumb_func_start move_anim_waiter -move_anim_waiter: @ 80A3CB8 - push {lr} - ldr r2, =gAnimFramesToWait - ldrb r1, [r2] - movs r0, 0 - ldrsb r0, [r2, r0] - cmp r0, 0 - bgt _080A3CDC - ldr r0, =gAnimScriptCallback - ldr r1, =move_anim_execute - str r1, [r0] - movs r0, 0 - b _080A3CDE - .pool -_080A3CDC: - subs r0, r1, 0x1 -_080A3CDE: - strb r0, [r2] - pop {r0} - bx r0 - thumb_func_end move_anim_waiter - - thumb_func_start move_anim_execute -move_anim_execute: @ 80A3CE4 - push {r4,lr} - ldr r4, =gUnknown_08525E98 -_080A3CE8: - ldr r0, =gBattleAnimScriptPtr - ldr r0, [r0] - ldrb r0, [r0] - lsls r0, 2 - adds r0, r4 - ldr r0, [r0] - bl _call_via_r0 - ldr r0, =gAnimFramesToWait - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - bne _080A3D0C - ldr r0, =gAnimScriptActive - ldrb r0, [r0] - cmp r0, 0 - bne _080A3CE8 -_080A3D0C: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end move_anim_execute - - thumb_func_start ma00_load_graphics -ma00_load_graphics: @ 80A3D24 - push {r4-r6,lr} - ldr r6, =gBattleAnimScriptPtr - ldr r0, [r6] - adds r1, r0, 0x1 - str r1, [r6] - ldrb r4, [r0, 0x1] - ldrb r0, [r1, 0x1] - lsls r0, 8 - orrs r4, r0 - lsls r5, r4, 3 - ldr r0, =gUnknown_085112C4 - adds r0, r5, r0 - bl LoadCompressedObjectPicUsingHeap - ldr r0, =gUnknown_08511BCC - adds r5, r0 - adds r0, r5, 0 - bl LoadCompressedObjectPaletteUsingHeap - ldr r0, [r6] - adds r0, 0x2 - str r0, [r6] - ldr r0, =0xffffd8f0 - adds r4, r0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r4, 0 - bl sub_80A3C54 - ldr r1, =gAnimFramesToWait - movs r0, 0x1 - strb r0, [r1] - ldr r1, =gAnimScriptCallback - ldr r0, =move_anim_waiter - str r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end ma00_load_graphics - - thumb_func_start ma01_080728D0 -@ void ma01_080728D0() -ma01_080728D0: @ 80A3D8C - push {r4-r6,lr} - ldr r6, =gBattleAnimScriptPtr - ldr r0, [r6] - adds r1, r0, 0x1 - str r1, [r6] - ldrb r4, [r0, 0x1] - ldrb r0, [r1, 0x1] - lsls r0, 8 - orrs r4, r0 - ldr r1, =gUnknown_08524B44 - ldr r0, =0xffffd8f0 - adds r4, r0 - lsls r0, r4, 3 - adds r0, r1 - ldrh r5, [r0, 0x6] - adds r0, r5, 0 - bl FreeSpriteTilesByTag - adds r0, r5, 0 - bl FreeSpritePaletteByTag - ldr r0, [r6] - adds r0, 0x2 - str r0, [r6] - lsls r4, 16 - lsrs r4, 16 - adds r0, r4, 0 - bl sub_80A3C84 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end ma01_080728D0 - - thumb_func_start ma02_instanciate_template -ma02_instanciate_template: @ 80A3DD8 - push {r4-r7,lr} - ldr r5, =gBattleAnimScriptPtr - ldr r1, [r5] - adds r3, r1, 0x1 - str r3, [r5] - ldrb r2, [r1, 0x1] - ldrb r0, [r3, 0x1] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r3, 0x2] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r3, 0x3] - lsls r0, 24 - adds r7, r2, r0 - adds r0, r1, 0x5 - str r0, [r5] - ldrb r4, [r1, 0x5] - adds r0, r1, 0x6 - str r0, [r5] - ldrb r0, [r1, 0x6] - adds r1, 0x7 - str r1, [r5] - cmp r0, 0 - beq _080A3E28 - adds r6, r5, 0 - ldr r5, =gBattleAnimArgs - adds r3, r0, 0 -_080A3E10: - ldr r2, [r6] - ldrb r1, [r2] - ldrb r0, [r2, 0x1] - lsls r0, 8 - orrs r1, r0 - strh r1, [r5] - adds r2, 0x2 - str r2, [r6] - adds r5, 0x2 - subs r3, 0x1 - cmp r3, 0 - bne _080A3E10 -_080A3E28: - movs r0, 0x80 - ands r0, r4 - cmp r0, 0 - beq _080A3E58 - movs r0, 0x80 - eors r4, r0 - cmp r4, 0x3F - bls _080A3E48 - adds r0, r4, 0 - subs r0, 0x40 - b _080A3E4A - .pool -_080A3E48: - negs r0, r4 -_080A3E4A: - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, =gAnimationBankTarget - b _080A3E6A - .pool -_080A3E58: - cmp r4, 0x3F - bls _080A3E62 - adds r0, r4, 0 - subs r0, 0x40 - b _080A3E64 -_080A3E62: - negs r0, r4 -_080A3E64: - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, =gAnimationBankAttacker -_080A3E6A: - ldrb r0, [r0] - bl sub_80A82E4 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r4, 24 - asrs r1, 24 - adds r0, r1 - lsls r0, 16 - lsrs r6, r0, 16 - lsls r0, r6, 16 - asrs r0, 16 - cmp r0, 0x2 - bgt _080A3E88 - movs r6, 0x3 -_080A3E88: - ldr r5, =gAnimationBankTarget - ldrb r0, [r5] - movs r1, 0x2 - bl sub_80A5C6C - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldrb r0, [r5] - movs r1, 0x3 - bl sub_80A5C6C - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - lsls r3, r6, 24 - lsrs r3, 24 - adds r0, r7, 0 - adds r1, r4, 0 - bl CreateSpriteAndAnimate - ldr r1, =gAnimVisualTaskCount - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end ma02_instanciate_template - - thumb_func_start sub_80A3ECC -sub_80A3ECC: @ 80A3ECC - push {r4-r7,lr} - ldr r4, =gBattleAnimScriptPtr - ldr r1, [r4] - adds r3, r1, 0x1 - str r3, [r4] - ldrb r2, [r1, 0x1] - ldrb r0, [r3, 0x1] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r3, 0x2] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r3, 0x3] - lsls r0, 24 - adds r6, r2, r0 - adds r0, r1, 0x5 - str r0, [r4] - ldrb r7, [r1, 0x5] - adds r0, r1, 0x6 - str r0, [r4] - ldrb r0, [r1, 0x6] - adds r1, 0x7 - str r1, [r4] - cmp r0, 0 - beq _080A3F1C - adds r5, r4, 0 - ldr r4, =gBattleAnimArgs - adds r3, r0, 0 -_080A3F04: - ldr r2, [r5] - ldrb r1, [r2] - ldrb r0, [r2, 0x1] - lsls r0, 8 - orrs r1, r0 - strh r1, [r4] - adds r2, 0x2 - str r2, [r5] - adds r4, 0x2 - subs r3, 0x1 - cmp r3, 0 - bne _080A3F04 -_080A3F1C: - adds r0, r6, 0 - adds r1, r7, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - bl _call_via_r6 - ldr r1, =gAnimVisualTaskCount - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A3ECC - - thumb_func_start ma04_wait_countdown -ma04_wait_countdown: @ 80A3F48 - push {r4,lr} - ldr r1, =gBattleAnimScriptPtr - ldr r0, [r1] - adds r2, r0, 0x1 - str r2, [r1] - ldr r3, =gAnimFramesToWait - ldrb r0, [r0, 0x1] - strb r0, [r3] - lsls r0, 24 - cmp r0, 0 - bne _080A3F66 - movs r4, 0x1 - negs r4, r4 - adds r0, r4, 0 - strb r0, [r3] -_080A3F66: - adds r0, r2, 0x1 - str r0, [r1] - ldr r1, =gAnimScriptCallback - ldr r0, =move_anim_waiter - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end ma04_wait_countdown - - thumb_func_start sub_80A3F88 -sub_80A3F88: @ 80A3F88 - push {lr} - ldr r0, =gAnimVisualTaskCount - ldrb r2, [r0] - cmp r2, 0 - bne _080A3FAC - ldr r0, =gBattleAnimScriptPtr - ldr r1, [r0] - adds r1, 0x1 - str r1, [r0] - ldr r0, =gAnimFramesToWait - strb r2, [r0] - b _080A3FB2 - .pool -_080A3FAC: - ldr r1, =gAnimFramesToWait - movs r0, 0x1 - strb r0, [r1] -_080A3FB2: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A3F88 - - thumb_func_start nullsub_6 -nullsub_6: @ 80A3FBC - bx lr - thumb_func_end nullsub_6 - - thumb_func_start nullsub_7 -nullsub_7: @ 80A3FC0 - bx lr - thumb_func_end nullsub_7 - - thumb_func_start sub_80A3FC4 -sub_80A3FC4: @ 80A3FC4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r0, 0 - mov r8, r0 - ldr r0, =gAnimVisualTaskCount - ldrb r0, [r0] - cmp r0, 0 - bne _080A3FEC - ldr r0, =gAnimSoundTaskCount - ldrb r0, [r0] - cmp r0, 0 - bne _080A3FEC - ldr r1, =gUnknown_02038430 - ldrb r0, [r1] - cmp r0, 0xFF - bne _080A3FEC - ldrb r0, [r1, 0x1] - cmp r0, 0xFF - beq _080A4004 -_080A3FEC: - ldr r1, =gSoundAnimFramesToWait - movs r0, 0 - strh r0, [r1] - b _080A401E - .pool -_080A4004: - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - beq _080A403C - ldr r1, =gSoundAnimFramesToWait - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x5A - bhi _080A4030 -_080A401E: - ldr r1, =gAnimFramesToWait - movs r0, 0x1 - strb r0, [r1] - b _080A40A2 - .pool -_080A4030: - ldr r0, =gMPlay_SE1 - bl m4aMPlayStop - ldr r0, =gMPlay_SE2 - bl m4aMPlayStop -_080A403C: - ldr r1, =gSoundAnimFramesToWait - movs r0, 0 - strh r0, [r1] - movs r5, 0 - ldr r7, =0x0000ffff - ldr r6, =gUnknown_08524B44 - ldr r4, =gAnimSpriteIndexArray -_080A404A: - ldrh r0, [r4] - cmp r0, r7 - beq _080A406E - lsls r0, 3 - adds r0, r6 - ldrh r0, [r0, 0x6] - bl FreeSpriteTilesByTag - ldrh r0, [r4] - lsls r0, 3 - adds r0, r6 - ldrh r0, [r0, 0x6] - bl FreeSpritePaletteByTag - ldrh r1, [r4] - adds r0, r7, 0 - orrs r0, r1 - strh r0, [r4] -_080A406E: - adds r4, 0x2 - adds r5, 0x1 - cmp r5, 0x7 - ble _080A404A - mov r1, r8 - cmp r1, 0 - bne _080A40A2 - ldr r0, =gMPlay_BGM - ldr r1, =0x0000ffff - movs r2, 0x80 - lsls r2, 1 - bl m4aMPlayVolumeControl - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080A409C - bl sub_80A8278 - movs r0, 0x1 - bl sub_8072A88 -_080A409C: - ldr r0, =gAnimScriptActive - mov r1, r8 - strb r1, [r0] -_080A40A2: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A3FC4 - - thumb_func_start ma09_play_sound -ma09_play_sound: @ 80A40CC - push {r4,lr} - ldr r4, =gBattleAnimScriptPtr - ldr r0, [r4] - adds r1, r0, 0x1 - str r1, [r4] - ldrb r0, [r0, 0x1] - ldrb r1, [r1, 0x1] - lsls r1, 8 - orrs r0, r1 - bl PlaySE - ldr r0, [r4] - adds r0, 0x2 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end ma09_play_sound - - thumb_func_start sub_80A40F4 -sub_80A40F4: @ 80A40F4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r7, r0, 24 - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - mov r8, r1 - adds r6, r0, r1 - ldr r1, =gBankSpriteIds - movs r2, 0 - ldrsh r0, [r6, r2] - adds r0, r1 - ldrb r5, [r0] - ldr r1, =gSprites - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - adds r4, r0, r1 - adds r2, r4, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - movs r3, 0x4 - ldrsh r0, [r6, r3] - cmp r0, 0 - bne _080A4148 - adds r0, r7, 0 - bl move_anim_task_del - b _080A41BE - .pool -_080A4148: - ldr r0, =task_pA_ma0A_obj_to_bg_pal - movs r1, 0xA - bl CreateTask - lsls r0, 24 - lsrs r2, r0, 24 - mov r1, r8 - subs r1, 0x8 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r1, r0, r1 - strh r5, [r1, 0x8] - ldrh r0, [r4, 0x24] - ldrh r3, [r4, 0x20] - adds r0, r3 - strh r0, [r1, 0xA] - ldrh r0, [r4, 0x26] - ldrh r4, [r4, 0x22] - adds r0, r4 - strh r0, [r1, 0xC] - movs r3, 0x2 - ldrsh r0, [r6, r3] - cmp r0, 0 - bne _080A4190 - ldr r0, =gUnknown_02022E18 - ldrh r0, [r0] - strh r0, [r1, 0xE] - ldr r0, =gUnknown_02022E1A - b _080A4198 - .pool -_080A4190: - ldr r0, =gUnknown_02022E1C - ldrh r0, [r0] - strh r0, [r1, 0xE] - ldr r0, =gUnknown_02022E1E -_080A4198: - ldrh r0, [r0] - strh r0, [r1, 0x10] - ldr r1, =gTasks - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - ldrh r1, [r6, 0x2] - strh r1, [r0, 0x12] - ldrh r1, [r6] - strh r1, [r0, 0x14] - ldr r1, =gUnknown_02038430 - movs r3, 0x6 - ldrsh r0, [r6, r3] - adds r0, r1 - strb r2, [r0] - adds r0, r7, 0 - bl move_anim_task_del -_080A41BE: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A40F4 - - thumb_func_start sub_80A41D8 -sub_80A41D8: @ 80A41D8 - push {r4,r5,lr} - ldr r1, =gBattleAnimScriptPtr - ldr r2, [r1] - adds r0, r2, 0x1 - str r0, [r1] - ldrb r0, [r2, 0x1] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080A41F8 - ldr r0, =gAnimationBankTarget - b _080A41FA - .pool -_080A41F8: - ldr r0, =gAnimationBankAttacker -_080A41FA: - ldrb r4, [r0] - adds r0, r4, 0 - bl b_side_obj__get_some_boolean - lsls r0, 24 - cmp r0, 0 - beq _080A4266 - adds r0, r4, 0 - bl GetBankIdentity - lsls r0, 24 - movs r1, 0xFF - lsls r1, 24 - adds r0, r1 - lsrs r0, 24 - cmp r0, 0x1 - bls _080A4226 - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080A4230 -_080A4226: - movs r5, 0 - b _080A4232 - .pool -_080A4230: - movs r5, 0x1 -_080A4232: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl sub_80A438C - ldr r0, =sub_80A40F4 - movs r1, 0xA - bl CreateTask - lsls r0, 24 - lsrs r2, r0, 24 - ldr r1, =gAnimVisualTaskCount - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r1, =gTasks - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - movs r2, 0 - strh r4, [r0, 0x8] - strh r5, [r0, 0xA] - movs r1, 0x1 - strh r1, [r0, 0xC] - strh r2, [r0, 0xE] -_080A4266: - movs r0, 0x2 - eors r4, r0 - adds r0, r4, 0 - bl b_side_obj__get_some_boolean - lsls r0, 24 - cmp r0, 0 - beq _080A42D8 - adds r0, r4, 0 - bl GetBankIdentity - lsls r0, 24 - movs r1, 0xFF - lsls r1, 24 - adds r0, r1 - lsrs r0, 24 - cmp r0, 0x1 - bls _080A4294 - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080A42A4 -_080A4294: - movs r5, 0 - b _080A42A6 - .pool -_080A42A4: - movs r5, 0x1 -_080A42A6: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl sub_80A438C - ldr r0, =sub_80A40F4 - movs r1, 0xA - bl CreateTask - lsls r0, 24 - lsrs r2, r0, 24 - ldr r1, =gAnimVisualTaskCount - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r1, =gTasks - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - strh r4, [r0, 0x8] - strh r5, [r0, 0xA] - movs r1, 0x1 - strh r1, [r0, 0xC] - strh r1, [r0, 0xE] -_080A42D8: - ldr r1, =gBattleAnimScriptPtr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - ldr r1, =gAnimFramesToWait - movs r0, 0x1 - strb r0, [r1] - ldr r1, =gAnimScriptCallback - ldr r0, =move_anim_waiter - str r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A41D8 - - thumb_func_start b_side_obj__get_some_boolean -b_side_obj__get_some_boolean: @ 80A4310 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080A4330 - ldr r0, =gAnimationBankAttacker - ldrb r0, [r0] - cmp r4, r0 - beq _080A4374 - b _080A4384 - .pool -_080A4330: - adds r0, r4, 0 - bl sub_80A6A90 - lsls r0, 24 - cmp r0, 0 - beq _080A4384 - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080A4374 - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r1, [r0] - lsls r0, r5, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080A4374 - ldr r2, =gSprites - ldr r0, =gBankSpriteIds - adds r0, r5, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r0, [r0] - lsls r0, 29 - cmp r0, 0 - blt _080A4384 -_080A4374: - movs r0, 0x1 - b _080A4386 - .pool -_080A4384: - movs r0, 0 -_080A4386: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end b_side_obj__get_some_boolean - - thumb_func_start sub_80A438C -sub_80A438C: @ 80A438C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x28 - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - lsls r1, 24 - lsls r2, 24 - lsrs r2, 24 - mov r9, r2 - cmp r1, 0 - beq _080A43AA - b _080A455E -_080A43AA: - bl IsContest - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080A43DC - ldr r1, =0x06008000 - movs r2, 0x80 - lsls r2, 6 - movs r0, 0 - movs r3, 0x1 - bl RequestDma3Fill - ldr r1, =0x0600f000 - movs r2, 0x80 - lsls r2, 5 - movs r0, 0xFF - movs r3, 0 - bl RequestDma3Fill - b _080A43F8 - .pool -_080A43DC: - ldr r1, =0x06004000 - movs r2, 0x80 - lsls r2, 6 - movs r0, 0 - movs r3, 0x1 - bl RequestDma3Fill - ldr r1, =0x0600e000 - movs r2, 0x80 - lsls r2, 5 - movs r0, 0xFF - movs r3, 0 - bl RequestDma3Fill -_080A43F8: - add r0, sp, 0x10 - bl sub_80A6B30 - add r0, sp, 0x20 - movs r1, 0 - strh r1, [r0] - ldr r1, [sp, 0x10] - ldr r2, =0x01000800 - bl CpuSet - mov r0, sp - adds r0, 0x22 - movs r1, 0xFF - strh r1, [r0] - ldr r1, [sp, 0x14] - ldr r2, =0x01000400 - bl CpuSet - movs r0, 0x1 - movs r1, 0x4 - movs r2, 0x2 - bl lcd_bg_operations - movs r0, 0x1 - movs r1, 0 - movs r2, 0x1 - bl lcd_bg_operations - movs r0, 0x1 - movs r1, 0x1 - movs r2, 0 - bl lcd_bg_operations - ldr r0, =gBankSpriteIds - adds r0, r6, r0 - ldrb r4, [r0] - ldr r5, =gUnknown_02022E18 - ldr r0, =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r1, 0x24] - ldrh r1, [r1, 0x20] - adds r0, r1 - negs r0, r0 - adds r0, 0x20 - strh r0, [r5] - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080A447A - ldr r0, =gUnknown_02039F34 - ldr r0, [r0] - ldr r0, [r0, 0x18] - ldrh r0, [r0] - bl sub_80DB2A8 - lsls r0, 24 - cmp r0, 0 - beq _080A447A - ldrh r0, [r5] - subs r0, 0x1 - strh r0, [r5] -_080A447A: - ldr r5, =gUnknown_02022E1A - ldr r2, =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r2 - ldrh r0, [r1, 0x26] - ldrh r1, [r1, 0x22] - adds r0, r1 - negs r0, r0 - adds r0, 0x20 - strh r0, [r5] - mov r0, r9 - cmp r0, 0 - beq _080A44B0 - ldr r0, =gBankSpriteIds - adds r0, r6, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] -_080A44B0: - ldr r0, =gUnknown_02022E18 - ldrh r1, [r0] - movs r0, 0x14 - bl SetGpuReg - ldrh r1, [r5] - movs r0, 0x16 - bl SetGpuReg - lsls r4, r6, 5 - ldr r0, =gPlttBufferUnfaded + 0x200 - adds r4, r0 - add r0, sp, 0x10 - ldrb r1, [r0, 0x8] - lsls r1, 4 - adds r0, r4, 0 - movs r2, 0x20 - bl LoadPalette - add r0, sp, 0x10 - ldrb r1, [r0, 0x8] - lsls r1, 5 - movs r0, 0xA0 - lsls r0, 19 - adds r1, r0 - ldr r2, =0x04000008 - adds r0, r4, 0 - bl CpuSet - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080A4524 - movs r3, 0 - b _080A452E - .pool -_080A4524: - adds r0, r6, 0 - bl GetBankIdentity - lsls r0, 24 - lsrs r3, r0, 24 -_080A452E: - add r0, sp, 0x10 - ldrb r0, [r0, 0x8] - str r0, [sp] - ldr r0, [sp, 0x10] - str r0, [sp, 0x4] - ldr r0, [sp, 0x14] - str r0, [sp, 0x8] - add r0, sp, 0x10 - ldrh r0, [r0, 0xA] - str r0, [sp, 0xC] - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - bl sub_8118FBC - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080A4558 - b _080A4666 -_080A4558: - bl sub_80A46A0 - b _080A4666 -_080A455E: - ldr r1, =0x06006000 - movs r2, 0x80 - lsls r2, 6 - movs r0, 0 - movs r3, 0x1 - bl RequestDma3Fill - ldr r1, =0x0600f000 - movs r7, 0x80 - lsls r7, 5 - movs r0, 0 - adds r2, r7, 0 - movs r3, 0x1 - bl RequestDma3Fill - add r0, sp, 0x10 - movs r1, 0x2 - bl sub_80A6B90 - add r0, sp, 0x24 - movs r4, 0 - strh r4, [r0] - ldr r1, [sp, 0x10] - adds r1, r7 - ldr r2, =0x01000800 - bl CpuSet - mov r0, sp - adds r0, 0x26 - strh r4, [r0] - ldr r1, [sp, 0x14] - movs r2, 0x80 - lsls r2, 4 - mov r8, r2 - add r1, r8 - ldr r2, =0x01000400 - bl CpuSet - movs r0, 0x2 - movs r1, 0x4 - movs r2, 0x2 - bl lcd_bg_operations - movs r0, 0x2 - movs r1, 0 - movs r2, 0x1 - bl lcd_bg_operations - movs r0, 0x2 - movs r1, 0x1 - movs r2, 0 - bl lcd_bg_operations - ldr r0, =gBankSpriteIds - adds r2, r5, r0 - ldrb r4, [r2] - ldr r5, =gUnknown_02022E1C - ldr r3, =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r3 - ldrh r0, [r1, 0x24] - ldrh r4, [r1, 0x20] - adds r0, r4 - negs r0, r0 - adds r0, 0x20 - strh r0, [r5] - ldr r4, =gUnknown_02022E1E - ldrh r0, [r1, 0x26] - ldrh r1, [r1, 0x22] - adds r0, r1 - negs r0, r0 - adds r0, 0x20 - strh r0, [r4] - mov r0, r9 - cmp r0, 0 - beq _080A460E - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] -_080A460E: - ldrh r1, [r5] - movs r0, 0x18 - bl SetGpuReg - ldrh r1, [r4] - movs r0, 0x1A - bl SetGpuReg - lsls r4, r6, 5 - ldr r0, =gPlttBufferUnfaded + 0x200 - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x90 - movs r2, 0x20 - bl LoadPalette - ldr r1, =0x05000120 - ldr r2, =0x04000008 - adds r0, r4, 0 - bl CpuSet - adds r0, r6, 0 - bl GetBankIdentity - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - add r0, sp, 0x10 - ldrb r0, [r0, 0x8] - str r0, [sp] - ldr r0, [sp, 0x10] - adds r0, r7 - str r0, [sp, 0x4] - ldr r0, [sp, 0x14] - add r0, r8 - str r0, [sp, 0x8] - add r0, sp, 0x10 - ldrh r0, [r0, 0xA] - str r0, [sp, 0xC] - movs r0, 0x2 - movs r1, 0 - movs r2, 0 - bl sub_8118FBC -_080A4666: - add sp, 0x28 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A438C - - thumb_func_start sub_80A46A0 -sub_80A46A0: @ 80A46A0 - push {r4-r7,lr} - sub sp, 0x10 - ldr r0, =gUnknown_02039F34 - ldr r0, [r0] - ldr r0, [r0, 0x18] - ldrh r0, [r0] - bl sub_80DB2A8 - lsls r0, 24 - cmp r0, 0 - beq _080A4712 - mov r0, sp - bl sub_80A6B30 - ldr r6, [sp, 0x4] - movs r5, 0 - movs r0, 0x7 - mov r12, r0 - movs r7, 0 -_080A46C6: - movs r4, 0 - adds r3, r7, r6 - mov r1, r12 - lsls r0, r1, 1 - adds r2, r0, r6 -_080A46D0: - ldrh r1, [r3] - ldrh r0, [r2] - strh r0, [r3] - strh r1, [r2] - adds r3, 0x2 - subs r2, 0x2 - adds r4, 0x1 - cmp r4, 0x3 - ble _080A46D0 - movs r0, 0x20 - add r12, r0 - adds r7, 0x40 - adds r5, 0x1 - cmp r5, 0x7 - ble _080A46C6 - movs r5, 0 - movs r1, 0x80 - lsls r1, 3 - adds r3, r1, 0 -_080A46F6: - adds r2, r5, 0x1 - lsls r0, r5, 6 - adds r1, r0, r6 - movs r4, 0x7 -_080A46FE: - ldrh r0, [r1] - eors r0, r3 - strh r0, [r1] - adds r1, 0x2 - subs r4, 0x1 - cmp r4, 0 - bge _080A46FE - adds r5, r2, 0 - cmp r5, 0x7 - ble _080A46F6 -_080A4712: - add sp, 0x10 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A46A0 - - thumb_func_start sub_80A4720 -sub_80A4720: @ 80A4720 - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r1 - adds r6, r2, 0 - lsls r0, 16 - lsrs r5, r0, 16 - lsls r3, 24 - movs r0, 0x40 - mov r12, r0 - cmp r3, 0 - bne _080A473C - movs r1, 0x20 - mov r12, r1 -_080A473C: - lsls r0, r5, 28 - lsrs r5, r0, 16 - movs r0, 0 - cmp r0, r12 - bge _080A476C - ldr r7, =0x00000fff -_080A4748: - adds r4, r0, 0x1 - lsls r0, 6 - mov r1, r8 - adds r3, r0, r1 - movs r2, 0x1F -_080A4752: - ldrh r1, [r3] - adds r0, r7, 0 - ands r0, r1 - orrs r0, r5 - adds r0, r6 - strh r0, [r3] - adds r3, 0x2 - subs r2, 0x1 - cmp r2, 0 - bge _080A4752 - adds r0, r4, 0 - cmp r0, r12 - blt _080A4748 -_080A476C: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A4720 - - thumb_func_start sub_80A477C -sub_80A477C: @ 80A477C - push {r4,lr} - sub sp, 0x10 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - mov r0, sp - bl sub_80A6B30 - cmp r4, 0 - beq _080A479C - bl IsContest - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _080A47B8 -_080A479C: - movs r0, 0x1 - bl sub_80A6C68 - ldr r0, =gUnknown_02022E18 - movs r1, 0 - strh r1, [r0] - ldr r0, =gUnknown_02022E1A - strh r1, [r0] - b _080A47C6 - .pool -_080A47B8: - movs r0, 0x2 - bl sub_80A6C68 - ldr r0, =gUnknown_02022E1C - strh r4, [r0] - ldr r0, =gUnknown_02022E1E - strh r4, [r0] -_080A47C6: - add sp, 0x10 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A477C - - thumb_func_start task_pA_ma0A_obj_to_bg_pal -@ void task_pA_ma0A_obj_to_bg_pal(int task_id) -task_pA_ma0A_obj_to_bg_pal: @ 80A47D8 - push {r4-r6,lr} - sub sp, 0x10 - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r5, r1, r2 - ldrb r4, [r5, 0x8] - ldrb r6, [r5, 0x14] - mov r0, sp - bl sub_80A6B30 - ldr r0, =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - ldrh r2, [r1, 0x24] - ldrh r0, [r1, 0x20] - adds r2, r0 - ldrh r0, [r5, 0xA] - subs r0, r2 - lsls r0, 16 - lsrs r3, r0, 16 - ldrh r2, [r1, 0x26] - ldrh r1, [r1, 0x22] - adds r2, r1 - ldrh r0, [r5, 0xC] - subs r0, r2 - lsls r0, 16 - lsrs r2, r0, 16 - movs r1, 0x12 - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _080A4870 - ldr r1, =gUnknown_02022E18 - lsls r0, r3, 16 - asrs r0, 16 - ldrh r3, [r5, 0xE] - adds r0, r3 - strh r0, [r1] - ldr r1, =gUnknown_02022E1A - lsls r0, r2, 16 - asrs r0, 16 - ldrh r5, [r5, 0x10] - adds r0, r5 - strh r0, [r1] - lsls r0, r6, 5 - ldr r2, =gPlttBufferFaded + 0x200 - adds r0, r2 - mov r1, sp - ldrb r1, [r1, 0x8] - lsls r1, 5 - ldr r3, =0xfffffe00 - adds r2, r3 - adds r1, r2 - ldr r2, =0x04000008 - bl CpuSet - b _080A4896 - .pool -_080A4870: - ldr r1, =gUnknown_02022E1C - lsls r0, r3, 16 - asrs r0, 16 - ldrh r3, [r5, 0xE] - adds r0, r3 - strh r0, [r1] - ldr r1, =gUnknown_02022E1E - lsls r0, r2, 16 - asrs r0, 16 - ldrh r5, [r5, 0x10] - adds r0, r5 - strh r0, [r1] - lsls r0, r6, 5 - ldr r1, =gPlttBufferFaded + 0x200 - adds r0, r1 - subs r1, 0xE0 - ldr r2, =0x04000008 - bl CpuSet -_080A4896: - add sp, 0x10 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end task_pA_ma0A_obj_to_bg_pal - - thumb_func_start ma0B_0807324C -ma0B_0807324C: @ 80A48B0 - push {r4,r5,lr} - ldr r0, =gBattleAnimScriptPtr - ldr r2, [r0] - adds r1, r2, 0x1 - str r1, [r0] - ldrb r4, [r2, 0x1] - cmp r4, 0 - bne _080A48C8 - movs r4, 0x2 - b _080A48D2 - .pool -_080A48C8: - cmp r4, 0x1 - bne _080A48CE - movs r4, 0x3 -_080A48CE: - cmp r4, 0 - beq _080A48D6 -_080A48D2: - cmp r4, 0x2 - bne _080A48E0 -_080A48D6: - ldr r0, =gAnimationBankAttacker - b _080A48E2 - .pool -_080A48E0: - ldr r0, =gAnimationBankTarget -_080A48E2: - ldrb r5, [r0] - ldr r3, =gUnknown_02038430 - ldrb r0, [r3] - cmp r0, 0xFF - beq _080A4908 - ldr r2, =gSprites - ldr r0, =gBankSpriteIds - adds r0, r5, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] -_080A4908: - cmp r4, 0x1 - bls _080A4948 - ldrb r0, [r3, 0x1] - cmp r0, 0xFF - beq _080A4948 - ldr r3, =gSprites - ldr r2, =gBankSpriteIds - movs r1, 0x2 - adds r0, r5, 0 - eors r0, r1 - adds r0, r2 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - b _080A494A - .pool -_080A4948: - movs r4, 0 -_080A494A: - ldr r0, =sub_80A4980 - movs r1, 0x5 - 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 r4, [r1, 0x8] - strh r5, [r1, 0xC] - ldr r1, =gBattleAnimScriptPtr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end ma0B_0807324C - - thumb_func_start sub_80A4980 -sub_80A4980: @ 80A4980 - 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 r1, r0, r1 - ldrh r0, [r1, 0xA] - adds r0, 0x1 - strh r0, [r1, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - beq _080A4A0A - ldrb r0, [r1, 0xC] - bl GetBankIdentity - lsls r0, 24 - movs r1, 0xFF - lsls r1, 24 - adds r0, r1 - lsrs r0, 24 - cmp r0, 0x1 - bls _080A49BC - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080A49C4 -_080A49BC: - movs r4, 0 - b _080A49C6 - .pool -_080A49C4: - movs r4, 0x1 -_080A49C6: - ldr r6, =gUnknown_02038430 - ldrb r0, [r6] - cmp r0, 0xFF - beq _080A49DE - adds r0, r4, 0 - bl sub_80A477C - ldrb r0, [r6] - bl DestroyTask - movs r0, 0xFF - strb r0, [r6] -_080A49DE: - ldr r0, =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - movs r2, 0x8 - ldrsh r0, [r1, r2] - cmp r0, 0x1 - ble _080A4A04 - movs r0, 0x1 - eors r4, r0 - adds r0, r4, 0 - bl sub_80A477C - ldrb r0, [r6, 0x1] - bl DestroyTask - movs r0, 0xFF - strb r0, [r6, 0x1] -_080A4A04: - adds r0, r5, 0 - bl DestroyTask -_080A4A0A: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A4980 - - thumb_func_start sub_80A4A18 -sub_80A4A18: @ 80A4A18 - push {r4,r5,lr} - ldr r0, =gBattleAnimScriptPtr - ldr r2, [r0] - adds r1, r2, 0x1 - str r1, [r0] - ldrb r5, [r2, 0x1] - cmp r5, 0 - bne _080A4A30 - movs r5, 0x2 - b _080A4A3A - .pool -_080A4A30: - cmp r5, 0x1 - bne _080A4A36 - movs r5, 0x3 -_080A4A36: - cmp r5, 0 - beq _080A4A3E -_080A4A3A: - cmp r5, 0x2 - bne _080A4A48 -_080A4A3E: - ldr r0, =gAnimationBankAttacker - b _080A4A4A - .pool -_080A4A48: - ldr r0, =gAnimationBankTarget -_080A4A4A: - ldrb r4, [r0] - adds r0, r4, 0 - bl b_side_obj__get_some_boolean - lsls r0, 24 - cmp r0, 0 - beq _080A4A8A - adds r0, r4, 0 - bl GetBankIdentity - lsls r0, 24 - movs r1, 0xFF - lsls r1, 24 - adds r0, r1 - lsrs r0, 24 - cmp r0, 0x1 - bls _080A4A76 - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080A4A80 -_080A4A76: - movs r1, 0 - b _080A4A82 - .pool -_080A4A80: - movs r1, 0x1 -_080A4A82: - adds r0, r4, 0 - movs r2, 0 - bl sub_80A438C -_080A4A8A: - movs r0, 0x2 - eors r4, r0 - cmp r5, 0x1 - bls _080A4ACA - adds r0, r4, 0 - bl b_side_obj__get_some_boolean - lsls r0, 24 - cmp r0, 0 - beq _080A4ACA - adds r0, r4, 0 - bl GetBankIdentity - lsls r0, 24 - movs r1, 0xFF - lsls r1, 24 - adds r0, r1 - lsrs r0, 24 - cmp r0, 0x1 - bls _080A4ABC - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080A4AC0 -_080A4ABC: - movs r1, 0 - b _080A4AC2 -_080A4AC0: - movs r1, 0x1 -_080A4AC2: - adds r0, r4, 0 - movs r2, 0 - bl sub_80A438C -_080A4ACA: - ldr r1, =gBattleAnimScriptPtr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A4A18 - - thumb_func_start ma23_8073484 -ma23_8073484: @ 80A4ADC - push {r4-r6,lr} - ldr r0, =gBattleAnimScriptPtr - ldr r2, [r0] - adds r1, r2, 0x1 - str r1, [r0] - ldrb r5, [r2, 0x1] - cmp r5, 0 - bne _080A4AF4 - movs r5, 0x2 - b _080A4AFE - .pool -_080A4AF4: - cmp r5, 0x1 - bne _080A4AFA - movs r5, 0x3 -_080A4AFA: - cmp r5, 0 - beq _080A4B02 -_080A4AFE: - cmp r5, 0x2 - bne _080A4B0C -_080A4B02: - ldr r0, =gAnimationBankAttacker - b _080A4B0E - .pool -_080A4B0C: - ldr r0, =gAnimationBankTarget -_080A4B0E: - ldrb r6, [r0] - adds r0, r6, 0 - bl b_side_obj__get_some_boolean - lsls r0, 24 - cmp r0, 0 - beq _080A4B38 - ldr r2, =gSprites - ldr r0, =gBankSpriteIds - adds r0, r6, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] -_080A4B38: - cmp r5, 0x1 - bls _080A4B78 - movs r0, 0x2 - adds r4, r6, 0 - eors r4, r0 - adds r0, r4, 0 - bl b_side_obj__get_some_boolean - lsls r0, 24 - cmp r0, 0 - beq _080A4B78 - ldr r2, =gSprites - ldr r0, =gBankSpriteIds - adds r0, r4, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - b _080A4B7A - .pool -_080A4B78: - movs r5, 0 -_080A4B7A: - ldr r0, =sub_80A4BB0 - movs r1, 0x5 - 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 r5, [r1, 0x8] - strh r6, [r1, 0xC] - ldr r1, =gBattleAnimScriptPtr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end ma23_8073484 - - thumb_func_start sub_80A4BB0 -sub_80A4BB0: @ 80A4BB0 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r1, =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r1, r0, r1 - ldrh r0, [r1, 0xA] - adds r0, 0x1 - strh r0, [r1, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - beq _080A4C3E - ldrb r4, [r1, 0xC] - adds r0, r4, 0 - bl GetBankIdentity - lsls r0, 24 - movs r1, 0xFF - lsls r1, 24 - adds r0, r1 - lsrs r0, 24 - cmp r0, 0x1 - bls _080A4BEE - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080A4BF8 -_080A4BEE: - movs r5, 0 - b _080A4BFA - .pool -_080A4BF8: - movs r5, 0x1 -_080A4BFA: - adds r0, r4, 0 - bl b_side_obj__get_some_boolean - lsls r0, 24 - cmp r0, 0 - beq _080A4C0C - adds r0, r5, 0 - bl sub_80A477C -_080A4C0C: - ldr r0, =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - movs r2, 0x8 - ldrsh r0, [r1, r2] - cmp r0, 0x1 - ble _080A4C38 - movs r0, 0x2 - eors r4, r0 - adds r0, r4, 0 - bl b_side_obj__get_some_boolean - lsls r0, 24 - cmp r0, 0 - beq _080A4C38 - movs r0, 0x1 - eors r5, r0 - adds r0, r5, 0 - bl sub_80A477C -_080A4C38: - adds r0, r6, 0 - bl DestroyTask -_080A4C3E: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A4BB0 - - thumb_func_start ma0C_set_BLDCNT_to_x3F40_and_BLDALPHA_to_argument -ma0C_set_BLDCNT_to_x3F40_and_BLDALPHA_to_argument: @ 80A4C48 - push {r4,r5,lr} - ldr r2, =gBattleAnimScriptPtr - ldr r0, [r2] - adds r1, r0, 0x1 - str r1, [r2] - ldrb r5, [r0, 0x1] - adds r0, r1, 0x1 - str r0, [r2] - ldrb r4, [r1, 0x1] - lsls r4, 8 - adds r0, 0x1 - str r0, [r2] - movs r1, 0xFD - lsls r1, 6 - movs r0, 0x50 - bl SetGpuReg - orrs r5, r4 - movs r0, 0x52 - adds r1, r5, 0 - bl SetGpuReg - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end ma0C_set_BLDCNT_to_x3F40_and_BLDALPHA_to_argument - - thumb_func_start ma1E_set_BLDCNT -ma1E_set_BLDCNT: @ 80A4C80 - push {lr} - ldr r3, =gBattleAnimScriptPtr - ldr r0, [r3] - adds r2, r0, 0x1 - str r2, [r3] - ldrb r1, [r0, 0x1] - adds r0, r2, 0x1 - str r0, [r3] - ldrb r2, [r2, 0x1] - lsls r2, 8 - adds r0, 0x1 - str r0, [r3] - orrs r1, r2 - movs r0, 0x50 - bl SetGpuReg - pop {r0} - bx r0 - .pool - thumb_func_end ma1E_set_BLDCNT - - thumb_func_start ma0D_reset_BLDCNT_and_BLDALPHA -ma0D_reset_BLDCNT_and_BLDALPHA: @ 80A4CA8 - push {lr} - ldr r1, =gBattleAnimScriptPtr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - movs r0, 0x50 - movs r1, 0 - bl SetGpuReg - movs r0, 0x52 - movs r1, 0 - bl SetGpuReg - pop {r0} - bx r0 - .pool - thumb_func_end ma0D_reset_BLDCNT_and_BLDALPHA - - thumb_func_start ma0E_call -ma0E_call: @ 80A4CCC - push {r4,lr} - ldr r4, =gBattleAnimScriptPtr - ldr r1, [r4] - adds r3, r1, 0x1 - str r3, [r4] - ldr r2, =gBattleAnimScriptRetAddr - adds r0, r1, 0x5 - str r0, [r2] - ldrb r1, [r1, 0x1] - ldrb r0, [r3, 0x1] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r3, 0x2] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r3, 0x3] - lsls r0, 24 - adds r1, r0 - str r1, [r4] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end ma0E_call - - thumb_func_start sub_80A4D00 -sub_80A4D00: @ 80A4D00 - ldr r0, =gBattleAnimScriptPtr - ldr r1, =gBattleAnimScriptRetAddr - ldr r1, [r1] - str r1, [r0] - bx lr - .pool - thumb_func_end sub_80A4D00 - - thumb_func_start ma10_080736AC -ma10_080736AC: @ 80A4D14 - push {r4,r5,lr} - ldr r5, =gBattleAnimScriptPtr - ldr r1, [r5] - adds r0, r1, 0x1 - str r0, [r5] - ldrb r2, [r1, 0x1] - adds r3, r0, 0x1 - str r3, [r5] - ldrb r4, [r0, 0x1] - ldrb r0, [r3, 0x1] - lsls r0, 8 - orrs r4, r0 - adds r1, 0x4 - str r1, [r5] - ldr r0, =gBattleAnimArgs - lsls r2, 1 - adds r2, r0 - strh r4, [r2] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end ma10_080736AC - - thumb_func_start ma11_if_else -ma11_if_else: @ 80A4D48 - push {lr} - ldr r3, =gBattleAnimScriptPtr - ldr r2, [r3] - adds r0, r2, 0x1 - str r0, [r3] - ldr r0, =gUnknown_02038432 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080A4D62 - adds r0, r2, 0x5 - str r0, [r3] -_080A4D62: - ldr r2, [r3] - ldrb r1, [r2] - ldrb r0, [r2, 0x1] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x2] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 24 - adds r1, r0 - str r1, [r3] - pop {r0} - bx r0 - .pool - thumb_func_end ma11_if_else - - thumb_func_start ma12_cond_if -ma12_cond_if: @ 80A4D88 - push {r4,r5,lr} - ldr r5, =gBattleAnimScriptPtr - ldr r4, [r5] - adds r2, r4, 0x1 - str r2, [r5] - ldrb r1, [r4, 0x1] - adds r3, r2, 0x1 - str r3, [r5] - ldr r0, =gUnknown_02038432 - ldrb r0, [r0] - cmp r1, r0 - bne _080A4DC0 - ldrb r1, [r2, 0x1] - ldrb r0, [r3, 0x1] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r3, 0x2] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r3, 0x3] - lsls r0, 24 - adds r1, r0 - str r1, [r5] - b _080A4DC4 - .pool -_080A4DC0: - adds r0, r4, 0x6 - str r0, [r5] -_080A4DC4: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end ma12_cond_if - - thumb_func_start ma13_goto -ma13_goto: @ 80A4DCC - ldr r3, =gBattleAnimScriptPtr - ldr r0, [r3] - adds r2, r0, 0x1 - str r2, [r3] - ldrb r1, [r0, 0x1] - ldrb r0, [r2, 0x1] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x2] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 24 - adds r1, r0 - str r1, [r3] - bx lr - .pool - thumb_func_end ma13_goto - - thumb_func_start IsContest -IsContest: @ 80A4DF0 - push {lr} - ldr r0, =gMain - ldr r1, =0x00000439 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080A4E10 - movs r0, 0 - b _080A4E12 - .pool -_080A4E10: - movs r0, 0x1 -_080A4E12: - pop {r1} - bx r1 - thumb_func_end IsContest - - thumb_func_start ma14_load_background -ma14_load_background: @ 80A4E18 - push {r4,lr} - ldr r1, =gBattleAnimScriptPtr - ldr r2, [r1] - adds r0, r2, 0x1 - str r0, [r1] - ldrb r4, [r2, 0x1] - adds r0, 0x1 - str r0, [r1] - ldr r0, =task_p5_load_battle_screen_elements - movs r1, 0x5 - 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 r4, [r1, 0x8] - ldr r1, =gUnknown_02038433 - movs r0, 0x1 - strb r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end ma14_load_background - - thumb_func_start sub_80A4E5C -sub_80A4E5C: @ 80A4E5C - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r2, =gBattleAnimScriptPtr - ldr r1, [r2] - adds r0, r1, 0x1 - str r0, [r2] - ldrb r3, [r1, 0x1] - mov r8, r3 - ldrb r7, [r0, 0x1] - ldrb r6, [r0, 0x2] - adds r1, 0x4 - str r1, [r2] - ldr r0, =task_p5_load_battle_screen_elements - movs r1, 0x5 - bl CreateTask - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080A4EA8 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - strh r6, [r0, 0x8] - b _080A4EDA - .pool -_080A4EA8: - ldr r0, =gAnimationBankTarget - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080A4ECC - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - strh r7, [r0, 0x8] - b _080A4EDA - .pool -_080A4ECC: - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - mov r1, r8 - strh r1, [r0, 0x8] -_080A4EDA: - ldr r1, =gUnknown_02038433 - movs r0, 0x1 - strb r0, [r1] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A4E5C - - thumb_func_start task_p5_load_battle_screen_elements -task_p5_load_battle_screen_elements: @ 80A4EF4 - push {r4-r7,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r4, r0, r1 - ldrh r6, [r4, 0x1C] - movs r0, 0x1C - ldrsh r3, [r4, r0] - adds r7, r1, 0 - cmp r3, 0 - bne _080A4F2C - str r3, [sp] - movs r0, 0xE8 - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginHardwarePaletteFade - ldrh r0, [r4, 0x1C] - adds r0, 0x1 - strh r0, [r4, 0x1C] - b _080A4FBC - .pool -_080A4F2C: - ldr r2, =gPaletteFade - ldrb r1, [r2, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080A4FBC - cmp r3, 0x1 - bne _080A4F50 - adds r0, r6, 0x1 - strh r0, [r4, 0x1C] - ldr r1, =gUnknown_02038433 - movs r0, 0x2 - strb r0, [r1] - b _080A4F94 - .pool -_080A4F50: - cmp r3, 0x2 - bne _080A4F94 - ldrh r0, [r4, 0x8] - lsls r2, r0, 16 - asrs r1, r2, 16 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080A4F68 - bl dp01t_11_3_message_for_player_only - b _080A4F6E -_080A4F68: - lsrs r0, r2, 16 - bl sub_80A4FC8 -_080A4F6E: - movs r0, 0x1 - str r0, [sp] - movs r0, 0xE8 - movs r1, 0 - movs r2, 0x10 - movs r3, 0 - bl BeginHardwarePaletteFade - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldrh r1, [r0, 0x1C] - adds r1, 0x1 - strh r1, [r0, 0x1C] - b _080A4FBC - .pool -_080A4F94: - ldrb r1, [r2, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _080A4FBC - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r7 - movs r1, 0x1C - ldrsh r0, [r0, r1] - cmp r0, 0x3 - bne _080A4FBC - adds r0, r5, 0 - bl DestroyTask - ldr r0, =gUnknown_02038433 - strb r4, [r0] -_080A4FBC: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end task_p5_load_battle_screen_elements - - thumb_func_start sub_80A4FC8 -sub_80A4FC8: @ 80A4FC8 - push {r4-r7,lr} - lsls r0, 16 - lsrs r7, r0, 16 - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080A5050 - ldr r6, =gUnknown_08525D54 - lsls r4, r7, 1 - adds r4, r7 - lsls r4, 2 - adds r0, r6, 0 - adds r0, 0x8 - adds r0, r4, r0 - ldr r0, [r0] - ldr r5, =0x0201c000 - adds r1, r5, 0 - bl LZDecompressWram - bl sub_80A6D94 - lsls r0, 24 - lsrs r0, 24 - movs r2, 0x80 - lsls r2, 1 - adds r1, r5, 0 - movs r3, 0 - bl sub_80A4720 - ldr r1, =0x0600d000 - ldr r0, =0x040000d4 - str r5, [r0] - str r1, [r0, 0x4] - ldr r1, =0x84000200 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - adds r0, r4, r6 - ldr r0, [r0] - ldr r1, =0x06002000 - bl LZDecompressVram - adds r6, 0x4 - adds r4, r6 - ldr r4, [r4] - bl sub_80A6D94 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 20 - adds r0, r4, 0 - movs r2, 0x20 - bl LoadCompressedPalette - b _080A507E - .pool -_080A5050: - ldr r5, =gUnknown_08525D54 - lsls r4, r7, 1 - adds r4, r7 - lsls r4, 2 - adds r0, r5, 0 - adds r0, 0x8 - adds r0, r4, r0 - ldr r0, [r0] - ldr r1, =0x0600d000 - bl LZDecompressVram - adds r0, r4, r5 - ldr r0, [r0] - ldr r1, =0x06008000 - bl LZDecompressVram - adds r5, 0x4 - adds r4, r5 - ldr r0, [r4] - movs r1, 0x20 - movs r2, 0x20 - bl LoadCompressedPalette -_080A507E: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A4FC8 - - thumb_func_start dp01t_11_3_message_for_player_only -dp01t_11_3_message_for_player_only: @ 80A5090 - push {lr} - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080A50A2 - bl sub_80D7724 - b _080A50A6 -_080A50A2: - bl load_battle_oval_graphics -_080A50A6: - pop {r0} - bx r0 - thumb_func_end dp01t_11_3_message_for_player_only - - thumb_func_start ma15_load_battle_screen_elements -ma15_load_battle_screen_elements: @ 80A50AC - push {lr} - ldr r1, =gBattleAnimScriptPtr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - ldr r0, =task_p5_load_battle_screen_elements - movs r1, 0x5 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r0, =0x0000ffff - strh r0, [r1, 0x8] - ldr r1, =gUnknown_02038433 - movs r0, 0x1 - strb r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end ma15_load_battle_screen_elements - - thumb_func_start ma16_wait_for_battle_screen_elements_s2 -ma16_wait_for_battle_screen_elements_s2: @ 80A50F0 - push {lr} - ldr r0, =gUnknown_02038433 - ldrb r0, [r0] - cmp r0, 0x2 - bne _080A5114 - ldr r1, =gBattleAnimScriptPtr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - ldr r1, =gAnimFramesToWait - movs r0, 0 - b _080A5118 - .pool -_080A5114: - ldr r1, =gAnimFramesToWait - movs r0, 0x1 -_080A5118: - strb r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end ma16_wait_for_battle_screen_elements_s2 - - thumb_func_start sub_80A5124 -sub_80A5124: @ 80A5124 - push {lr} - ldr r0, =gUnknown_02038433 - ldrb r2, [r0] - cmp r2, 0 - bne _080A5148 - ldr r0, =gBattleAnimScriptPtr - ldr r1, [r0] - adds r1, 0x1 - str r1, [r0] - ldr r0, =gAnimFramesToWait - strb r2, [r0] - b _080A514E - .pool -_080A5148: - ldr r1, =gAnimFramesToWait - movs r0, 0x1 - strb r0, [r1] -_080A514E: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A5124 - - thumb_func_start ma18_load_background_probably -ma18_load_background_probably: @ 80A5158 - push {r4,lr} - ldr r4, =gBattleAnimScriptPtr - ldr r1, [r4] - adds r0, r1, 0x1 - str r0, [r4] - ldrb r0, [r1, 0x1] - bl sub_80A4FC8 - ldr r0, [r4] - adds r0, 0x1 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end ma18_load_background_probably - - thumb_func_start BattleAnimGetPanControl -BattleAnimGetPanControl: @ 80A5178 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080A51C0 - ldr r0, =gUnknown_020244D0 - ldr r1, [r0] - ldr r0, =gAnimationBankAttacker - ldrb r2, [r0] - ldr r1, [r1, 0x4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080A51C0 - adds r0, r2, 0 - bl GetBankSide - lsls r0, 24 - movs r4, 0xC0 - cmp r0, 0 - beq _080A5252 - movs r4, 0x3F - b _080A5252 - .pool -_080A51C0: - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080A51E8 - ldr r0, =gAnimationBankAttacker - ldr r1, =gAnimationBankTarget - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - bne _080A524C - cmp r0, 0x2 - bne _080A524C - cmp r4, 0x3F - beq _080A525E - b _080A524C - .pool -_080A51E8: - ldr r0, =gAnimationBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080A5226 - ldr r0, =gAnimationBankTarget - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080A5252 - lsls r0, r4, 24 - asrs r1, r0, 24 - cmp r1, 0x3F - bne _080A5218 - movs r4, 0xC0 - b _080A5252 - .pool -_080A5218: - movs r0, 0x40 - negs r0, r0 - cmp r1, r0 - beq _080A5252 - negs r0, r1 - lsls r0, 24 - b _080A5250 -_080A5226: - ldr r0, =gAnimationBankTarget - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080A524C - lsls r0, r4, 24 - asrs r0, 24 - movs r1, 0x40 - negs r1, r1 - cmp r0, r1 - bne _080A5252 - movs r4, 0x3F - b _080A5252 - .pool -_080A524C: - lsls r0, r4, 24 - negs r0, r0 -_080A5250: - lsrs r4, r0, 24 -_080A5252: - lsls r0, r4, 24 - asrs r0, 24 - cmp r0, 0x3F - ble _080A525E - movs r4, 0x3F - b _080A526C -_080A525E: - lsls r0, r4, 24 - asrs r0, 24 - movs r1, 0x40 - negs r1, r1 - cmp r0, r1 - bge _080A526C - movs r4, 0xC0 -_080A526C: - lsls r0, r4, 24 - asrs r0, 24 - pop {r4} - pop {r1} - bx r1 - thumb_func_end BattleAnimGetPanControl - - thumb_func_start sub_80A5278 -sub_80A5278: @ 80A5278 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080A52C0 - ldr r0, =gUnknown_020244D0 - ldr r1, [r0] - ldr r0, =gAnimationBankAttacker - ldrb r2, [r0] - ldr r1, [r1, 0x4] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080A52C0 - adds r0, r2, 0 - bl GetBankSide - lsls r0, 24 - movs r4, 0xC0 - cmp r0, 0 - beq _080A52DE - movs r4, 0x3F - b _080A52DE - .pool -_080A52C0: - ldr r0, =gAnimationBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080A52D8 - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080A52DE -_080A52D8: - lsls r0, r4, 24 - negs r0, r0 - lsrs r4, r0, 24 -_080A52DE: - lsls r0, r4, 24 - asrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_80A5278 - - thumb_func_start sub_80A52EC -sub_80A52EC: @ 80A52EC - push {lr} - lsls r0, 16 - lsrs r1, r0, 16 - asrs r2, r0, 16 - cmp r2, 0x3F - ble _080A52FC - movs r1, 0x3F - b _080A5306 -_080A52FC: - movs r0, 0x40 - negs r0, r0 - cmp r2, r0 - bge _080A5306 - ldr r1, =0x0000ffc0 -_080A5306: - lsls r0, r1, 16 - asrs r0, 16 - pop {r1} - bx r1 - .pool - thumb_func_end sub_80A52EC - - thumb_func_start sub_80A5314 -sub_80A5314: @ 80A5314 - push {lr} - lsls r2, 16 - lsrs r2, 16 - adds r3, r2, 0 - lsls r0, 16 - asrs r0, 16 - lsls r1, 16 - asrs r1, 16 - cmp r0, r1 - bge _080A5332 - lsls r0, r2, 16 - asrs r0, 16 - cmp r0, 0 - bge _080A5342 - b _080A5340 -_080A5332: - cmp r0, r1 - ble _080A5348 - lsls r0, r3, 16 - asrs r0, 16 - cmp r0, 0 - bge _080A5340 - negs r0, r0 -_080A5340: - negs r0, r0 -_080A5342: - lsls r0, 16 - lsrs r0, 16 - b _080A534A -_080A5348: - movs r0, 0 -_080A534A: - lsls r0, 16 - asrs r0, 16 - pop {r1} - bx r1 - thumb_func_end sub_80A5314 - - thumb_func_start ma19_08073BC8 -ma19_08073BC8: @ 80A5354 - push {r4,r5,lr} - ldr r5, =gBattleAnimScriptPtr - ldr r0, [r5] - adds r1, r0, 0x1 - str r1, [r5] - ldrb r4, [r0, 0x1] - ldrb r0, [r1, 0x1] - lsls r0, 8 - orrs r4, r0 - movs r0, 0x2 - ldrsb r0, [r1, r0] - bl BattleAnimGetPanControl - adds r1, r0, 0 - lsls r1, 24 - asrs r1, 24 - adds r0, r4, 0 - bl PlaySE12WithPanning - ldr r0, [r5] - adds r0, 0x3 - str r0, [r5] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end ma19_08073BC8 - - thumb_func_start ma1A_8073C00 -ma1A_8073C00: @ 80A538C - push {r4,lr} - ldr r4, =gBattleAnimScriptPtr - ldr r1, [r4] - adds r0, r1, 0x1 - str r0, [r4] - movs r0, 0x1 - ldrsb r0, [r1, r0] - bl BattleAnimGetPanControl - lsls r0, 24 - asrs r0, 24 - bl SE12PanpotControl - ldr r0, [r4] - adds r0, 0x1 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end ma1A_8073C00 - - thumb_func_start ma1B_8073C2C -ma1B_8073C2C: @ 80A53B8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, =gBattleAnimScriptPtr - mov r10, r0 - ldr r0, [r0] - adds r1, r0, 0x1 - mov r2, r10 - str r1, [r2] - ldrb r0, [r0, 0x1] - mov r9, r0 - ldrb r0, [r1, 0x1] - lsls r0, 8 - mov r2, r9 - orrs r2, r0 - mov r9, r2 - ldrb r4, [r1, 0x3] - ldrb r6, [r1, 0x4] - ldrb r7, [r1, 0x5] - movs r0, 0x2 - ldrsb r0, [r1, r0] - bl BattleAnimGetPanControl - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - lsls r4, 24 - asrs r4, 24 - adds r0, r4, 0 - bl BattleAnimGetPanControl - mov r8, r0 - lsls r5, 24 - asrs r5, 24 - mov r0, r8 - lsls r0, 24 - asrs r0, 24 - mov r8, r0 - lsls r6, 24 - asrs r6, 24 - adds r0, r5, 0 - mov r1, r8 - adds r2, r6, 0 - bl sub_80A5314 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, =c3_08073CEC - movs r1, 0x1 - 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 r5, [r1, 0x8] - mov r2, r8 - strh r2, [r1, 0xA] - lsls r4, 24 - asrs r4, 24 - strh r4, [r1, 0xC] - strh r7, [r1, 0xE] - strh r5, [r1, 0x10] - mov r0, r9 - adds r1, r5, 0 - bl PlaySE12WithPanning - ldr r1, =gAnimSoundTaskCount - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - mov r1, r10 - ldr r0, [r1] - adds r0, 0x6 - str r0, [r1] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end ma1B_8073C2C - - thumb_func_start c3_08073CEC -c3_08073CEC: @ 80A5478 - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r7, 0 - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r2, r0, r1 - ldrh r0, [r2, 0x18] - adds r1, r0, 0x1 - strh r1, [r2, 0x18] - lsls r0, 16 - asrs r0, 16 - movs r3, 0xE - ldrsh r1, [r2, r3] - cmp r0, r1 - blt _080A54FC - strh r7, [r2, 0x18] - ldrh r6, [r2, 0x8] - ldrh r3, [r2, 0xA] - movs r4, 0x10 - ldrsh r0, [r2, r4] - movs r4, 0xC - ldrsh r1, [r2, r4] - adds r0, r1 - lsls r0, 16 - lsrs r4, r0, 16 - strh r4, [r2, 0x10] - cmp r1, 0 - bne _080A54C0 - lsls r2, r3, 16 - b _080A54E4 - .pool -_080A54C0: - lsls r1, r6, 16 - lsls r0, r3, 16 - asrs r3, r0, 16 - adds r2, r0, 0 - cmp r1, r2 - bge _080A54D6 - lsls r0, r4, 16 - asrs r0, 16 - cmp r0, r3 - blt _080A54E0 - b _080A54E4 -_080A54D6: - lsls r0, r4, 16 - asrs r0, 16 - cmp r0, r3 - bgt _080A54E0 - movs r7, 0x1 -_080A54E0: - cmp r7, 0 - beq _080A54F4 -_080A54E4: - lsrs r4, r2, 16 - adds r0, r5, 0 - bl DestroyTask - ldr r1, =gAnimSoundTaskCount - ldrb r0, [r1] - subs r0, 0x1 - strb r0, [r1] -_080A54F4: - lsls r0, r4, 24 - asrs r0, 24 - bl SE12PanpotControl -_080A54FC: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end c3_08073CEC - - thumb_func_start sub_80A5508 -sub_80A5508: @ 80A5508 - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - ldr r0, =gBattleAnimScriptPtr - mov r9, r0 - ldr r0, [r0] - adds r1, r0, 0x1 - mov r2, r9 - str r1, [r2] - ldrb r0, [r0, 0x1] - mov r8, r0 - ldrb r0, [r1, 0x1] - lsls r0, 8 - mov r2, r8 - orrs r2, r0 - mov r8, r2 - ldrb r4, [r1, 0x2] - ldrb r5, [r1, 0x3] - ldrb r6, [r1, 0x4] - ldrb r1, [r1, 0x5] - mov r10, r1 - ldr r0, =c3_08073CEC - movs r1, 0x1 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - lsls r4, 24 - asrs r4, 24 - strh r4, [r1, 0x8] - lsls r5, 24 - asrs r5, 24 - strh r5, [r1, 0xA] - lsls r6, 24 - asrs r6, 24 - strh r6, [r1, 0xC] - mov r0, r10 - strh r0, [r1, 0xE] - strh r4, [r1, 0x10] - mov r0, r8 - adds r1, r4, 0 - bl PlaySE12WithPanning - ldr r1, =gAnimSoundTaskCount - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - mov r1, r9 - ldr r0, [r1] - adds r0, 0x6 - str r0, [r1] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A5508 - - thumb_func_start sub_80A559C -sub_80A559C: @ 80A559C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, =gBattleAnimScriptPtr - mov r10, r0 - ldr r0, [r0] - adds r1, r0, 0x1 - mov r2, r10 - str r1, [r2] - ldrb r0, [r0, 0x1] - mov r9, r0 - ldrb r0, [r1, 0x1] - lsls r0, 8 - mov r2, r9 - orrs r2, r0 - mov r9, r2 - ldrb r4, [r1, 0x3] - ldrb r0, [r1, 0x4] - mov r8, r0 - ldrb r7, [r1, 0x5] - movs r0, 0x2 - ldrsb r0, [r1, r0] - bl sub_80A5278 - adds r6, r0, 0 - lsls r6, 24 - lsrs r6, 24 - lsls r4, 24 - asrs r4, 24 - adds r0, r4, 0 - bl sub_80A5278 - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - mov r1, r8 - lsls r1, 24 - asrs r1, 24 - mov r8, r1 - mov r0, r8 - bl sub_80A5278 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, =c3_08073CEC - movs r1, 0x1 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - lsls r6, 24 - asrs r6, 24 - strh r6, [r1, 0x8] - lsls r5, 24 - asrs r5, 24 - strh r5, [r1, 0xA] - lsls r4, 24 - asrs r4, 24 - strh r4, [r1, 0xC] - strh r7, [r1, 0xE] - strh r6, [r1, 0x10] - mov r0, r9 - adds r1, r6, 0 - bl PlaySE12WithPanning - ldr r1, =gAnimSoundTaskCount - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - mov r2, r10 - ldr r0, [r2] - adds r0, 0x6 - str r0, [r2] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A559C - - thumb_func_start ma1C_8073ED0 -ma1C_8073ED0: @ 80A565C - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - ldr r6, =gBattleAnimScriptPtr - ldr r0, [r6] - adds r1, r0, 0x1 - str r1, [r6] - ldrb r5, [r0, 0x1] - ldrb r0, [r1, 0x1] - lsls r0, 8 - orrs r5, r0 - ldrb r0, [r1, 0x3] - mov r8, r0 - ldrb r2, [r1, 0x4] - mov r9, r2 - movs r0, 0x2 - ldrsb r0, [r1, r0] - bl BattleAnimGetPanControl - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, =sub_80A56E4 - movs r1, 0x1 - 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 r5, [r1, 0x8] - lsls r4, 24 - asrs r4, 24 - strh r4, [r1, 0xA] - mov r2, r8 - strh r2, [r1, 0xC] - mov r2, r9 - strh r2, [r1, 0xE] - mov r2, r8 - strh r2, [r1, 0x18] - ldr r1, [r1] - bl _call_via_r1 - ldr r1, =gAnimSoundTaskCount - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r0, [r6] - adds r0, 0x5 - str r0, [r6] - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end ma1C_8073ED0 - - thumb_func_start sub_80A56E4 -sub_80A56E4: @ 80A56E4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r2, r0, r1 - ldrh r0, [r2, 0x18] - adds r1, r0, 0x1 - strh r1, [r2, 0x18] - lsls r0, 16 - asrs r0, 16 - movs r3, 0xC - ldrsh r1, [r2, r3] - cmp r0, r1 - blt _080A5732 - movs r0, 0 - strh r0, [r2, 0x18] - ldrh r0, [r2, 0x8] - ldrb r1, [r2, 0xA] - ldrh r4, [r2, 0xE] - subs r4, 0x1 - strh r4, [r2, 0xE] - lsls r4, 24 - lsrs r4, 24 - lsls r1, 24 - asrs r1, 24 - bl PlaySE12WithPanning - cmp r4, 0 - bne _080A5732 - adds r0, r5, 0 - bl DestroyTask - ldr r1, =gAnimSoundTaskCount - ldrb r0, [r1] - subs r0, 0x1 - strb r0, [r1] -_080A5732: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A56E4 - - thumb_func_start ma1D_08073FB4 -ma1D_08073FB4: @ 80A5740 - push {r4-r6,lr} - mov r6, r8 - push {r6} - ldr r6, =gBattleAnimScriptPtr - ldr r0, [r6] - adds r1, r0, 0x1 - str r1, [r6] - ldrb r5, [r0, 0x1] - ldrb r0, [r1, 0x1] - lsls r0, 8 - orrs r5, r0 - ldrb r0, [r1, 0x3] - mov r8, r0 - movs r0, 0x2 - ldrsb r0, [r1, r0] - bl BattleAnimGetPanControl - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, =sub_80A57B4 - movs r1, 0x1 - 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 r5, [r1, 0x8] - lsls r4, 24 - asrs r4, 24 - strh r4, [r1, 0xA] - mov r0, r8 - strh r0, [r1, 0xC] - ldr r1, =gAnimSoundTaskCount - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r0, [r6] - adds r0, 0x4 - str r0, [r6] - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end ma1D_08073FB4 - - thumb_func_start sub_80A57B4 -sub_80A57B4: @ 80A57B4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r2, r0, r1 - ldrh r0, [r2, 0xC] - subs r1, r0, 0x1 - strh r1, [r2, 0xC] - lsls r0, 16 - cmp r0, 0 - bgt _080A57E8 - ldrh r0, [r2, 0x8] - movs r1, 0xA - ldrsb r1, [r2, r1] - bl PlaySE12WithPanning - adds r0, r4, 0 - bl DestroyTask - ldr r1, =gAnimSoundTaskCount - ldrb r0, [r1] - subs r0, 0x1 - strb r0, [r1] -_080A57E8: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A57B4 - - thumb_func_start sub_80A57F8 -sub_80A57F8: @ 80A57F8 - push {r4-r6,lr} - ldr r4, =gBattleAnimScriptPtr - ldr r1, [r4] - adds r3, r1, 0x1 - str r3, [r4] - ldrb r2, [r1, 0x1] - ldrb r0, [r3, 0x1] - lsls r0, 8 - adds r2, r0 - ldrb r0, [r3, 0x2] - lsls r0, 16 - adds r2, r0 - ldrb r0, [r3, 0x3] - lsls r0, 24 - adds r6, r2, r0 - adds r0, r1, 0x5 - str r0, [r4] - ldrb r0, [r1, 0x5] - adds r1, 0x6 - str r1, [r4] - cmp r0, 0 - beq _080A5842 - adds r5, r4, 0 - ldr r4, =gBattleAnimArgs - adds r3, r0, 0 -_080A582A: - ldr r2, [r5] - ldrb r1, [r2] - ldrb r0, [r2, 0x1] - lsls r0, 8 - orrs r1, r0 - strh r1, [r4] - adds r2, 0x2 - str r2, [r5] - adds r4, 0x2 - subs r3, 0x1 - cmp r3, 0 - bne _080A582A -_080A5842: - adds r0, r6, 0 - movs r1, 0x1 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - bl _call_via_r6 - ldr r1, =gAnimSoundTaskCount - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A57F8 - - thumb_func_start ma20_wait_for_something -ma20_wait_for_something: @ 80A586C - push {r4,r5,lr} - ldr r0, =gAnimSoundTaskCount - ldrb r5, [r0] - cmp r5, 0 - bne _080A58B4 - bl IsSEPlaying - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _080A58CC - ldr r4, =gSoundAnimFramesToWait - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x5A - bls _080A58BA - ldr r0, =gMPlay_SE1 - bl m4aMPlayStop - ldr r0, =gMPlay_SE2 - bl m4aMPlayStop - strh r5, [r4] - b _080A58DE - .pool -_080A58B4: - ldr r1, =gSoundAnimFramesToWait - movs r0, 0 - strh r0, [r1] -_080A58BA: - ldr r1, =gAnimFramesToWait - movs r0, 0x1 - strb r0, [r1] - b _080A58DE - .pool -_080A58CC: - ldr r0, =gSoundAnimFramesToWait - movs r2, 0 - strh r1, [r0] - ldr r1, =gBattleAnimScriptPtr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - ldr r0, =gAnimFramesToWait - strb r2, [r0] -_080A58DE: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end ma20_wait_for_something - - thumb_func_start ma21_08074164 -ma21_08074164: @ 80A58F0 - push {r4-r6,lr} - ldr r5, =gBattleAnimScriptPtr - ldr r4, [r5] - adds r3, r4, 0x1 - str r3, [r5] - ldrb r2, [r4, 0x1] - ldrb r1, [r3, 0x1] - ldrb r0, [r3, 0x2] - lsls r0, 8 - orrs r1, r0 - ldr r0, =gBattleAnimArgs - lsls r2, 1 - adds r2, r0 - lsls r1, 16 - asrs r1, 16 - movs r6, 0 - ldrsh r0, [r2, r6] - cmp r1, r0 - bne _080A5938 - ldrb r1, [r3, 0x3] - ldrb r0, [r3, 0x4] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r3, 0x5] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r3, 0x6] - lsls r0, 24 - adds r1, r0 - str r1, [r5] - b _080A593E - .pool -_080A5938: - adds r0, r4, 0 - adds r0, 0x8 - str r0, [r5] -_080A593E: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end ma21_08074164 - - thumb_func_start sub_80A5944 -sub_80A5944: @ 80A5944 - push {r4,lr} - ldr r4, =gBattleAnimScriptPtr - ldr r0, [r4] - adds r0, 0x1 - str r0, [r4] - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080A5978 - ldr r2, [r4] - ldrb r1, [r2] - ldrb r0, [r2, 0x1] - lsls r0, 8 - adds r1, r0 - ldrb r0, [r2, 0x2] - lsls r0, 16 - adds r1, r0 - ldrb r0, [r2, 0x3] - lsls r0, 24 - adds r1, r0 - str r1, [r4] - b _080A597E - .pool -_080A5978: - ldr r0, [r4] - adds r0, 0x4 - str r0, [r4] -_080A597E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80A5944 - - thumb_func_start sub_80A5984 -sub_80A5984: @ 80A5984 - push {r4,lr} - ldr r0, =gBattleAnimScriptPtr - ldr r1, [r0] - ldrb r2, [r1, 0x1] - adds r1, 0x2 - str r1, [r0] - cmp r2, 0 - beq _080A59A0 - ldr r0, =gAnimationBankTarget - b _080A59A2 - .pool -_080A59A0: - ldr r0, =gAnimationBankAttacker -_080A59A2: - ldrb r0, [r0] - bl GetBankIdentity - lsls r0, 24 - lsrs r4, r0, 24 - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080A59D2 - cmp r4, 0 - beq _080A59BE - cmp r4, 0x3 - bne _080A59D2 -_080A59BE: - movs r0, 0x1 - movs r1, 0x4 - movs r2, 0x1 - bl lcd_bg_operations - movs r0, 0x2 - movs r1, 0x4 - movs r2, 0x2 - bl lcd_bg_operations -_080A59D2: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A5984 - - thumb_func_start sub_80A59DC -sub_80A59DC: @ 80A59DC - push {lr} - ldr r0, =gBattleAnimScriptPtr - ldr r1, [r0] - adds r1, 0x1 - str r1, [r0] - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080A5A04 - movs r0, 0x1 - movs r1, 0x4 - movs r2, 0x1 - bl lcd_bg_operations - movs r0, 0x2 - movs r1, 0x4 - movs r2, 0x2 - bl lcd_bg_operations -_080A5A04: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A59DC - - thumb_func_start sub_80A5A0C -sub_80A5A0C: @ 80A5A0C - push {r4-r7,lr} - ldr r1, =gBattleAnimScriptPtr - ldr r0, [r1] - ldrb r6, [r0, 0x1] - adds r0, 0x2 - str r0, [r1] - ldr r7, =gAnimationBankAttacker - ldrb r0, [r7] - bl GetBankSide - adds r4, r0, 0 - ldr r5, =gAnimationBankTarget - ldrb r0, [r5] - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - beq _080A5A78 - cmp r6, 0 - beq _080A5A48 - ldrb r0, [r5] - b _080A5A4A - .pool -_080A5A48: - ldrb r0, [r7] -_080A5A4A: - bl GetBankIdentity - lsls r0, 24 - lsrs r4, r0, 24 - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080A5A78 - cmp r4, 0 - beq _080A5A64 - cmp r4, 0x3 - bne _080A5A78 -_080A5A64: - movs r0, 0x1 - movs r1, 0x4 - movs r2, 0x1 - bl lcd_bg_operations - movs r0, 0x2 - movs r1, 0x4 - movs r2, 0x2 - bl lcd_bg_operations -_080A5A78: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80A5A0C - - thumb_func_start ma2B_make_side_invisible -ma2B_make_side_invisible: @ 80A5A80 - push {r4,lr} - ldr r4, =gBattleAnimScriptPtr - ldr r0, [r4] - ldrb r0, [r0, 0x1] - bl GetAnimBankSpriteId - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xFF - beq _080A5AA8 - ldr r1, =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] -_080A5AA8: - ldr r0, [r4] - adds r0, 0x2 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end ma2B_make_side_invisible - - thumb_func_start ma2C_make_side_visible -ma2C_make_side_visible: @ 80A5ABC - push {r4,lr} - ldr r4, =gBattleAnimScriptPtr - ldr r0, [r4] - ldrb r0, [r0, 0x1] - bl GetAnimBankSpriteId - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xFF - beq _080A5AE6 - ldr r1, =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] -_080A5AE6: - ldr r0, [r4] - adds r0, 0x2 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end ma2C_make_side_visible - - thumb_func_start sub_80A5AFC -sub_80A5AFC: @ 80A5AFC - push {r4-r7,lr} - ldr r1, =gBattleAnimScriptPtr - ldr r0, [r1] - ldrb r7, [r0, 0x1] - adds r0, 0x2 - str r0, [r1] - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080A5BA6 - bl battle_type_is_double - lsls r0, 24 - cmp r0, 0 - beq _080A5BA6 - ldr r6, =gAnimationBankAttacker - ldrb r0, [r6] - bl GetBankSide - adds r4, r0, 0 - ldr r5, =gAnimationBankTarget - ldrb r0, [r5] - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - bne _080A5BA6 - cmp r7, 0 - bne _080A5B54 - ldrb r0, [r6] - bl GetBankIdentity_permutated - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0 - b _080A5B60 - .pool -_080A5B54: - ldrb r0, [r5] - bl GetBankIdentity_permutated - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x1 -_080A5B60: - bl GetAnimBankSpriteId - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xFF - beq _080A5BA6 - ldr r1, =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r2, r0, r1 - adds r3, r2, 0 - adds r3, 0x3E - ldrb r1, [r3] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r3] - cmp r4, 0x2 - bne _080A5B90 - ldrb r0, [r2, 0x5] - movs r1, 0xC - orrs r0, r1 - strb r0, [r2, 0x5] -_080A5B90: - cmp r4, 0x1 - bne _080A5BA0 - movs r0, 0 - bl sub_80A477C - b _080A5BA6 - .pool -_080A5BA0: - movs r0, 0x1 - bl sub_80A477C -_080A5BA6: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80A5AFC - - thumb_func_start sub_80A5BAC -sub_80A5BAC: @ 80A5BAC - push {r4-r7,lr} - ldr r1, =gBattleAnimScriptPtr - ldr r0, [r1] - ldrb r7, [r0, 0x1] - adds r0, 0x2 - str r0, [r1] - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080A5C38 - bl battle_type_is_double - lsls r0, 24 - cmp r0, 0 - beq _080A5C38 - ldr r6, =gAnimationBankAttacker - ldrb r0, [r6] - bl GetBankSide - adds r4, r0, 0 - ldr r5, =gAnimationBankTarget - ldrb r0, [r5] - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - bne _080A5C38 - cmp r7, 0 - bne _080A5C04 - ldrb r0, [r6] - bl GetBankIdentity_permutated - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0 - b _080A5C10 - .pool -_080A5C04: - ldrb r0, [r5] - bl GetBankIdentity_permutated - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x1 -_080A5C10: - bl GetAnimBankSpriteId - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xFF - beq _080A5C38 - cmp r4, 0x2 - bne _080A5C38 - ldr r1, =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r2, [r0, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r2 - movs r2, 0x8 - orrs r1, r2 - strb r1, [r0, 0x5] -_080A5C38: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A5BAC - - thumb_func_start ma2F_stop_music -ma2F_stop_music: @ 80A5C44 - push {lr} - ldr r0, =gMPlay_SE1 - bl m4aMPlayStop - ldr r0, =gMPlay_SE2 - bl m4aMPlayStop - ldr r1, =gBattleAnimScriptPtr - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end ma2F_stop_music - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/battle_anim_80A9C70.s b/asm/battle_anim_80A9C70.s index 16366988e..9b2939673 100644 --- a/asm/battle_anim_80A9C70.s +++ b/asm/battle_anim_80A9C70.s @@ -26,9 +26,9 @@ sub_80A9C70: @ 80A9C70 lsls r0, 24 lsrs r0, 24 mov r8, r0 - ldr r0, =gUnknown_08524F84 + ldr r0, =gBattleAnimPicTable + 0x440 bl LoadCompressedObjectPicUsingHeap - ldr r0, =gUnknown_0852588C + ldr r0, =gBattleAnimPaletteTable + 0x440 bl LoadCompressedObjectPaletteUsingHeap ldr r1, =gTasks mov r2, r8 @@ -331,7 +331,7 @@ sub_80A9EF4: @ 80A9EF4 push {r4-r6,lr} lsls r0, 24 lsrs r6, r0, 24 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -616,7 +616,7 @@ _080AA16C: movs r1, 0 bl SetGpuReg adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _080AA186: pop {r4} pop {r0} @@ -629,7 +629,7 @@ sub_80AA18C: @ 80AA18C lsls r0, 24 lsrs r4, r0, 24 movs r3, 0 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x8] ldrh r0, [r0] @@ -829,7 +829,7 @@ _080AA322: b _080AA330 _080AA328: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _080AA352 _080AA330: ldr r0, =gBattleAnimArgs @@ -863,13 +863,13 @@ move_anim_start_t2: @ 80AA364 lsrs r4, 24 lsls r1, 24 lsrs r1, 24 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker strb r4, [r0] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget strb r4, [r0] ldr r0, =gUnknown_082C92FC movs r2, 0 - bl move_something + bl DoBattleAnim ldr r0, =task0A_80788BC movs r1, 0xA bl CreateTask @@ -899,7 +899,7 @@ task0A_80788BC: @ 80AA3B4 ldrb r0, [r0] cmp r0, 0 bne _080AA3F6 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r1, =gTasks lsls r0, r4, 2 diff --git a/asm/battle_anim_80D51AC.s b/asm/battle_anim_80D51AC.s index c2ea27485..3ee1786ad 100755 --- a/asm/battle_anim_80D51AC.s +++ b/asm/battle_anim_80D51AC.s @@ -18,7 +18,7 @@ sub_80D51AC: @ 80D51AC cmp r2, 0xFF bne _080D51D0 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _080D520C .pool _080D51D0: @@ -140,7 +140,7 @@ _080D5288: adds r0, r6 strh r3, [r0, 0x26] adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _080D52CA _080D52C6: subs r0, 0x1 @@ -200,11 +200,11 @@ _080D5320: _080D5324: movs r0, 0x3 _080D5326: - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 bne _080D533C @@ -216,7 +216,7 @@ _080D533C: .pool _080D5348: ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] adds r0, r1 _080D5350: @@ -226,7 +226,7 @@ _080D5352: beq _080D5368 _080D5356: adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _080D53A6 .pool _080D5368: @@ -359,7 +359,7 @@ _080D5436: adds r0, r7 strh r2, [r0, 0x26] adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _080D5478 _080D5474: subs r0, r2, 0x1 @@ -385,7 +385,7 @@ sub_80D5484: @ 80D5484 cmp r3, 0xFF bne _080D54A8 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _080D54F6 .pool _080D54A8: @@ -584,7 +584,7 @@ _080D55F8: strh r0, [r2, 0x26] _080D5630: adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _080D563C _080D5638: subs r0, r2, 0x1 @@ -705,7 +705,7 @@ _080D56F6: cmp r0, 0 bne _080D5728 adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _080D5728: pop {r4-r7} pop {r0} @@ -829,7 +829,7 @@ _080D5810: strh r0, [r4, 0x24] strh r0, [r4, 0x26] adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _080D5822: pop {r4-r6} pop {r0} @@ -842,7 +842,7 @@ sub_80D5830: @ 80D5830 push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -871,7 +871,7 @@ sub_80D5860: @ 80D5860 movs r1, 0x4 orrs r0, r1 strb r0, [r2] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -892,7 +892,7 @@ _080D5894: strh r2, [r4, 0x2E] strh r0, [r4, 0x32] ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r0, [r0] @@ -919,7 +919,7 @@ sub_80D58D4: @ 80D58D4 strh r1, [r0, 0x30] ldr r1, =sub_80A6630 str r1, [r0, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite bl StoreSpriteCallbackInData6 pop {r0} bx r0 @@ -970,7 +970,7 @@ sub_80D5944: @ 80D5944 strh r1, [r0, 0x32] ldr r1, =sub_80A6630 str r1, [r0, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite bl StoreSpriteCallbackInData6 pop {r0} bx r0 @@ -988,12 +988,12 @@ sub_80D5968: @ 80D5968 cmp r0, 0 bne _080D598C ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _080D5990 .pool _080D598C: ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _080D5990: ldrb r0, [r0] adds r0, r1 @@ -1093,7 +1093,7 @@ _080D5A56: strh r1, [r3, 0x26] _080D5A58: adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite b _080D5A8E .pool _080D5A64: @@ -1133,11 +1133,11 @@ sub_80D5A94: @ 80D5A94 ldrsh r0, [r0, r1] cmp r0, 0 bne _080D5AB0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _080D5AB2 .pool _080D5AB0: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _080D5AB2: ldrb r2, [r0] ldr r0, =gBankSpriteIds @@ -1192,7 +1192,7 @@ _080D5ADC: movs r1, 0x4 orrs r0, r1 strb r0, [r2] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 ldr r0, =sub_80A6680 @@ -1218,11 +1218,11 @@ sub_80D5B48: @ 80D5B48 ldrsh r0, [r0, r1] cmp r0, 0 bne _080D5B70 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _080D5B72 .pool _080D5B70: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _080D5B72: ldrb r1, [r0] ldr r0, =gBankSpriteIds @@ -1281,7 +1281,7 @@ _080D5B9C: lsls r0, 16 cmp r0, 0 bne _080D5C04 - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r6, 0 bl StoreSpriteCallbackInData6 b _080D5C0C @@ -1318,7 +1318,7 @@ sub_80D5C20: @ 80D5C20 lsls r1, 2 adds r1, r4 strh r3, [r1, 0x26] - bl move_anim_8072740 + bl DestroyAnimSprite pop {r4} pop {r0} bx r0 @@ -1338,7 +1338,7 @@ sub_80D5C50: @ 80D5C50 bl __divsi3 lsls r0, 16 lsrs r7, r0, 16 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -1485,7 +1485,7 @@ _080D5D70: cmp r0, 0 bne _080D5DA4 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _080D5DA4: pop {r4,r5} pop {r0} @@ -1518,16 +1518,16 @@ _080D5DD8: beq _080D5DE8 b _080D5E10 _080D5DDE: - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker b _080D5DEA .pool _080D5DE8: - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget _080D5DEA: ldrb r0, [r5] movs r4, 0x2 eors r0, r4 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080D5E10 @@ -1540,7 +1540,7 @@ _080D5DEA: .pool _080D5E10: adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _080D5E58 _080D5E18: ldr r1, =gTasks @@ -1549,7 +1549,7 @@ _080D5E18: lsls r0, 3 adds r5, r0, r1 strh r2, [r5, 0x8] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -1609,7 +1609,7 @@ sub_80D5E6C: @ 80D5E6C cmp r1, r0 bls _080D5EAA adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _080D5EAA: pop {r4} pop {r0} @@ -1622,7 +1622,7 @@ sub_80D5EB8: @ 80D5EB8 push {r4-r6,lr} lsls r0, 24 lsrs r5, r0, 24 - ldr r6, =gAnimationBankAttacker + ldr r6, =gAnimBankAttacker ldrb r0, [r6] bl GetBankSide lsls r0, 24 @@ -1660,7 +1660,7 @@ _080D5ED4: b _080D5F18 .pool _080D5F14: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] _080D5F18: strh r0, [r2, 0x12] @@ -1817,7 +1817,7 @@ _080D601E: strh r3, [r0, 0x24] strh r3, [r0, 0x26] adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _080D6050: pop {r3,r4} mov r8, r3 @@ -1923,7 +1923,7 @@ _080D6120: adds r0, r6, 0 bl sub_80A7344 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _080D612C: pop {r4-r6} pop {r0} @@ -1995,11 +1995,11 @@ _080D61B8: ldrsh r0, [r6, r1] cmp r0, 0 bne _080D61C8 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _080D61CA .pool _080D61C8: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _080D61CA: ldrb r0, [r0] bl GetBankSide @@ -2076,11 +2076,11 @@ sub_80D622C: @ 80D622C ldrsh r0, [r4, r1] cmp r0, 0 bne _080D6274 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _080D6276 .pool _080D6274: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _080D6276: ldrb r0, [r0] bl GetBankSide @@ -2201,7 +2201,7 @@ _080D6364: bl sub_80A7344 _080D636A: adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _080D6382 _080D6372: movs r0, 0 @@ -2236,7 +2236,7 @@ sub_80D6388: @ 80D6388 adds r0, r5, r7 lsls r0, 3 adds r6, r0, r4 - ldr r0, =gMovePowerMoveAnim + ldr r0, =gAnimMovePower ldrh r0, [r0] movs r1, 0xC bl __udivsi3 @@ -2248,7 +2248,7 @@ _080D63C0: adds r0, r5, r7 lsls r0, 3 adds r6, r0, r4 - ldr r0, =gMoveDmgMoveAnim + ldr r0, =gAnimMoveDmg ldr r0, [r0] movs r1, 0xC bl __divsi3 @@ -2435,7 +2435,7 @@ _080D6518: adds r0, r2 strh r4, [r0, 0x26] adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _080D654A: pop {r4,r5} pop {r0} diff --git a/asm/battle_anim_80FE840.s b/asm/battle_anim_80FE840.s index f35b2f7da..dc927cacc 100644 --- a/asm/battle_anim_80FE840.s +++ b/asm/battle_anim_80FE840.s @@ -22,7 +22,7 @@ sub_80FE840: @ 80FE840 strh r0, [r4, 0x2E] ldrh r0, [r5, 0x6] strh r0, [r4, 0x30] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -80,7 +80,7 @@ sub_80FE898: @ 80FE898 b _080FE8DA _080FE8D4: adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080FE8DA: pop {r4} pop {r0} @@ -96,7 +96,7 @@ sub_80FE8E0: @ 80FE8E0 ldr r0, =gBattleAnimArgs ldrh r0, [r0, 0x4] strh r0, [r4, 0x2E] - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -132,7 +132,7 @@ sub_80FE930: @ 80FE930 bl StartSpriteAnim ldrh r0, [r5, 0x4] strh r0, [r4, 0x2E] - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -147,7 +147,7 @@ sub_80FE930: @ 80FE930 strh r0, [r4, 0x36] ldr r0, =sub_80A6EEC str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 pop {r4,r5} @@ -167,7 +167,7 @@ sub_80FE988: @ 80FE988 strh r0, [r4, 0x2E] ldrh r0, [r4, 0x20] strh r0, [r4, 0x30] - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -212,14 +212,14 @@ _080FE9FA: ldrsh r0, [r4, r1] cmp r0, 0x7F ble _080FEA14 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A82E4 adds r0, 0x1 b _080FEA1E .pool _080FEA14: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A82E4 adds r0, 0x6 @@ -287,7 +287,7 @@ sub_80FEA58: @ 80FEA58 strh r0, [r1, 0x4] strh r2, [r1, 0x6] ldr r4, =gUnknown_08592210 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A82E4 adds r3, r0, 0 @@ -304,7 +304,7 @@ _080FEAB2: cmp r0, 0xF bne _080FEAC0 adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _080FEAC0: pop {r4-r6} pop {r0} @@ -321,7 +321,7 @@ sub_80FEAD8: @ 80FEAD8 ldr r6, =gBattleAnimArgs ldrh r0, [r6, 0x6] strh r0, [r4, 0x2E] - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -355,7 +355,7 @@ sub_80FEB28: @ 80FEB28 cmp r0, 0 beq _080FEB3C adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080FEB3C: pop {r4} pop {r0} @@ -374,7 +374,7 @@ sub_80FEB44: @ 80FEB44 ands r1, r0 adds r0, r5, 0 bl StartSpriteAnim - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -410,7 +410,7 @@ _080FEB94: strh r0, [r5, 0x2E] ldrh r0, [r5, 0x20] strh r0, [r5, 0x30] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -454,7 +454,7 @@ sub_80FEBFC: @ 80FEBFC cmp r0, 0 beq _080FEC12 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite b _080FEC42 _080FEC12: movs r1, 0x38 @@ -494,7 +494,7 @@ sub_80FEC48: @ 80FEC48 adds r6, r0, 0 movs r1, 0x1 bl sub_80A69CC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -508,7 +508,7 @@ _080FEC68: ldr r4, =gBattleAnimArgs ldrh r0, [r4, 0x8] strh r0, [r6, 0x2E] - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0 bl sub_80A5C6C @@ -583,7 +583,7 @@ sub_80FECF0: @ 80FECF0 strh r0, [r4, 0x2E] ldr r0, =sub_80A64B0 str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 pop {r4} @@ -655,7 +655,7 @@ sub_80FED74: @ 80FED74 lsrs r0, 16 cmp r0, 0x7F bhi _080FEDC8 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A8328 movs r1, 0x3 @@ -669,7 +669,7 @@ sub_80FED74: @ 80FED74 b _080FEDEC .pool _080FEDC8: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A8328 adds r0, 0x1 @@ -704,7 +704,7 @@ _080FEDEC: cmp r0, r1 bne _080FEE10 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080FEE10: pop {r4} pop {r0} @@ -721,18 +721,18 @@ sub_80FEE1C: @ 80FEE1C lsls r0, 24 cmp r0, 0 bne _080FEE36 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 bne _080FEE3E _080FEE36: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _080FEE70 _080FEE3E: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -740,17 +740,17 @@ _080FEE3E: movs r0, 0x2 movs r1, 0x4 movs r2, 0x3 - bl lcd_bg_operations + bl SetAnimBgAttribute b _080FEE6A .pool _080FEE60: movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute _080FEE6A: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _080FEE70: pop {r4} pop {r0} @@ -771,7 +771,7 @@ sub_80FEE78: @ 80FEE78 strh r0, [r4, 0x32] ldrh r0, [r4, 0x22] strh r0, [r4, 0x34] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] movs r1, 0x3 bl sub_80A5C6C @@ -823,14 +823,14 @@ sub_80FEECC: @ 80FEECC lsrs r0, 16 cmp r0, 0x7F bhi _080FEF18 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl sub_80A82E4 subs r0, 0x1 b _080FEF22 .pool _080FEF18: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl sub_80A82E4 adds r0, 0x1 @@ -847,7 +847,7 @@ _080FEF22: .pool _080FEF38: adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080FEF3E: pop {r4} pop {r0} @@ -868,7 +868,7 @@ sub_80FEF44: @ 80FEF44 strh r0, [r4, 0x32] ldrh r0, [r4, 0x22] strh r0, [r4, 0x34] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] movs r1, 0x3 bl sub_80A5C6C @@ -939,7 +939,7 @@ _080FEFE4: b _080FEFF6 _080FEFF0: adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080FEFF6: pop {r4} pop {r0} @@ -950,7 +950,7 @@ _080FEFF6: sub_80FEFFC: @ 80FEFFC push {r4,r5,lr} adds r4, r0, 0 - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -1026,7 +1026,7 @@ _080FF08C: sub_80FF090: @ 80FF090 push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -1067,7 +1067,7 @@ _080FF0DE: cmp r0, 0x50 ble _080FF0EC adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080FF0EC: pop {r4} pop {r0} @@ -1080,7 +1080,7 @@ sub_80FF0F4: @ 80FF0F4 adds r5, r0, 0 movs r1, 0x1 bl sub_80A69CC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -1098,7 +1098,7 @@ _080FF114: ldrsh r0, [r6, r1] cmp r0, 0 bne _080FF154 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -1117,7 +1117,7 @@ _080FF114: b _080FF174 .pool _080FF154: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r2, r5, 0 adds r2, 0x32 @@ -1139,11 +1139,11 @@ _080FF174: strh r0, [r5, 0x38] adds r0, r5, 0 bl sub_80A68D4 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide adds r4, r0, 0 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r4, 24 @@ -1249,7 +1249,7 @@ _080FF256: cmp r7, 0 beq _080FF260 adds r0, r6, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080FF260: pop {r4-r7} pop {r0} @@ -1260,12 +1260,12 @@ _080FF260: sub_80FF268: @ 80FF268 push {r4,lr} adds r4, r0, 0 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _080FF28A - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r2, r4, 0 adds r2, 0x20 @@ -1350,7 +1350,7 @@ _080FF2F8: ldrsh r0, [r4, r1] cmp r0, 0x7F bgt _080FF338 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A8328 lsls r0, 24 @@ -1359,7 +1359,7 @@ _080FF2F8: b _080FF346 .pool _080FF338: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A8328 lsls r0, 24 @@ -1382,7 +1382,7 @@ _080FF346: cmp r0, 0 bne _080FF36A adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080FF36A: pop {r4,r5} pop {r0} @@ -1500,7 +1500,7 @@ _080FF424: b _080FF452 _080FF44C: adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080FF452: pop {r4} pop {r0} @@ -1534,7 +1534,7 @@ sub_80FF458: @ 80FF458 cmp r0, 0 bge _080FF498 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _080FF51C .pool _080FF498: @@ -1550,7 +1550,7 @@ _080FF498: lsls r0, 28 lsrs r0, 30 strh r0, [r6, 0x24] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget mov r9, r0 ldrb r0, [r0] bl sub_80A8328 @@ -1639,7 +1639,7 @@ sub_80FF53C: @ 80FF53C lsls r1, 16 asrs r1, 24 strh r1, [r5, 0x24] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -1765,7 +1765,7 @@ _080FF674: cmp r0, 0x3 bne _080FF68E adds r0, r3, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _080FF68E: pop {r4-r7} pop {r0} @@ -1785,7 +1785,7 @@ sub_80FF698: @ 80FF698 beq _080FF704 b _080FF756 _080FF6AA: - ldr r6, =gAnimationBankTarget + ldr r6, =gAnimBankTarget ldrb r0, [r6] bl GetBankSide lsls r0, 24 @@ -1845,7 +1845,7 @@ _080FF704: bl ChangeSpriteAffineAnim movs r0, 0x19 strh r0, [r5, 0x2E] - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -1860,7 +1860,7 @@ _080FF704: strh r0, [r5, 0x36] ldr r0, =sub_80A70C0 str r0, [r5, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 _080FF756: @@ -1878,7 +1878,7 @@ sub_80FF768: @ 80FF768 ldrsh r0, [r5, r1] cmp r0, 0 bne _080FF7D4 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -1941,7 +1941,7 @@ sub_80FF7EC: @ 80FF7EC push {r4-r6} sub sp, 0x4 mov r9, r0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -1956,7 +1956,7 @@ sub_80FF7EC: @ 80FF7EC lsls r0, 24 lsrs r0, 24 mov r8, r0 - ldr r6, =gAnimationBankTarget + ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r1, 0x2 bl sub_80A5C6C @@ -2081,7 +2081,7 @@ _080FF91C: cmp r1, r0 ble _080FF92E adds r0, r3, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080FF92E: pop {r0} bx r0 @@ -2095,7 +2095,7 @@ sub_80FF934: @ 80FF934 ldrsh r0, [r6, r1] cmp r0, 0 bne _080FF974 - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -2144,7 +2144,7 @@ _080FF974: cmp r1, r0 ble _080FF9AA adds r0, r6, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080FF9AA: pop {r4-r6} pop {r0} @@ -2284,7 +2284,7 @@ _080FFA98: cmp r0, 0x32 ble _080FFAAC adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080FFAAC: pop {r4} pop {r0} @@ -2349,7 +2349,7 @@ sub_80FFB18: @ 80FFB18 adds r5, r0, 0 movs r1, 0 bl sub_80A69CC - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0 bl sub_80A5C6C @@ -2360,7 +2360,7 @@ sub_80FFB18: @ 80FFB18 bl sub_80A5C6C lsls r0, 24 lsrs r2, r0, 24 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r1, [r0] movs r0, 0x2 eors r0, r1 @@ -2442,7 +2442,7 @@ _080FFBBA: strh r5, [r4, 0x26] strh r5, [r4, 0x2E] adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080FFBEC: pop {r4,r5} pop {r0} @@ -2453,7 +2453,7 @@ _080FFBEC: sub_80FFBF4: @ 80FFBF4 push {r4-r6,lr} adds r5, r0, 0 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x1 bl sub_80A5C6C @@ -2537,7 +2537,7 @@ _080FFC8A: cmp r0, 0 beq _080FFCAA adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080FFCAA: pop {r4} pop {r0} @@ -2551,7 +2551,7 @@ sub_80FFCB4: @ 80FFCB4 adds r5, r0, 0 movs r1, 0 bl sub_80A6980 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl sub_80A5C6C @@ -2562,7 +2562,7 @@ sub_80FFCB4: @ 80FFCB4 bl sub_80A5C6C lsls r0, 24 lsrs r2, r0, 24 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r1, [r0] movs r0, 0x2 eors r0, r1 @@ -2640,7 +2640,7 @@ _080FFD56: cmp r0, 0 bne _080FFD8A movs r0, 0x3F - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 @@ -2658,7 +2658,7 @@ _080FFD8A: str r0, [r4, 0x1C] movs r0, 0x40 negs r0, r0 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 @@ -2915,7 +2915,7 @@ sub_80FFF7C: @ 80FFF7C cmp r0, 0x14 ble _080FFF8E adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080FFF8E: movs r0, 0x2E ldrsh r1, [r4, r0] @@ -2954,7 +2954,7 @@ sub_80FFFC0: @ 80FFFC0 lsls r0, 3 ldr r1, =gTasks adds r5, r0, r1 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] bl sub_80A82E4 lsls r0, 24 @@ -3017,7 +3017,7 @@ _08100028: cmp r0, 0x40 bne _08100060 adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08100060: ldr r4, =gSprites movs r0, 0xC @@ -3581,7 +3581,7 @@ _081004D6: cmp r0, 0 bne _081004FC adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _081004FC _081004E6: ldrh r0, [r6, 0xA] @@ -3772,11 +3772,11 @@ sub_8100640: @ 8100640 ldrsh r0, [r0, r1] cmp r0, 0 bne _0810065C - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _0810065E .pool _0810065C: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _0810065E: ldrb r6, [r0] adds r0, r6, 0 @@ -3857,7 +3857,7 @@ _081006E4: strb r0, [r4, 0x5] b _08100738 _08100700: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x3 bl sub_80A5C6C @@ -4047,7 +4047,7 @@ _08100876: cmp r1, r0 bne _0810088A adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810088A: pop {r4-r7} pop {r0} @@ -4066,7 +4066,7 @@ sub_8100898: @ 8100898 cmp r0, 0 bne _081008B4 adds r0, r6, 0 - bl move_anim_8072740 + bl DestroyAnimSprite b _0810098E .pool _081008B4: @@ -4074,11 +4074,11 @@ _081008B4: ldrsh r0, [r1, r3] cmp r0, 0 bne _081008C4 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker b _081008C6 .pool _081008C4: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget _081008C6: ldrb r0, [r4] movs r1, 0x2 @@ -4227,7 +4227,7 @@ sub_81009DC: @ 81009DC cmp r0, 0 beq _081009F2 adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081009F2: pop {r0} bx r0 @@ -4237,7 +4237,7 @@ _081009F2: sub_81009F8: @ 81009F8 push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -4264,7 +4264,7 @@ _08100A2C: strh r0, [r4, 0x22] ldr r0, =sub_80A67D8 str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 pop {r4} @@ -4277,7 +4277,7 @@ _08100A2C: sub_8100A50: @ 8100A50 push {r4,r5,lr} adds r5, r0, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -4343,7 +4343,7 @@ sub_8100A94: @ 8100A94 sub_8100AE0: @ 8100AE0 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0 bl sub_80A5C6C @@ -4439,7 +4439,7 @@ sub_8100B88: @ 8100B88 b _08100C24 .pool _08100BA8: - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r4, 0x2 eors r0, r4 @@ -4453,7 +4453,7 @@ _08100BA8: b _08100C34 .pool _08100BC8: - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0 bl sub_80A5C6C @@ -4469,7 +4469,7 @@ _08100BC8: mov r8, r2 mov r1, r8 eors r0, r1 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _08100C3E @@ -4494,7 +4494,7 @@ _08100BC8: b _08100C3E .pool _08100C24: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0 bl sub_80A5C6C @@ -4509,7 +4509,7 @@ _08100C34: _08100C3E: strh r7, [r6, 0x20] strh r4, [r6, 0x22] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -4619,7 +4619,7 @@ _08100CF2: asrs r0, 16 cmp r0, 0x14 bne _08100D28 - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 movs r0, 0x3 @@ -4739,7 +4739,7 @@ _08100DE0: adds r0, r4 bl DestroySprite adds r0, r5, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08100E10: pop {r4,r5} pop {r0} @@ -4754,7 +4754,7 @@ sub_8100E1C: @ 8100E1C ldr r4, =gBattleAnimArgs ldrh r0, [r4, 0x4] strh r0, [r5, 0x2E] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -4846,7 +4846,7 @@ _08100EB2: cmp r0, r1 bne _08100EE8 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08100EE8: pop {r4} pop {r0} @@ -4866,7 +4866,7 @@ sub_8100EF0: @ 8100EF0 adds r0, 0x8 strh r0, [r1, 0x2] _08100F06: - ldr r6, =gAnimationBankAttacker + ldr r6, =gAnimBankAttacker ldrb r0, [r6] movs r1, 0 bl sub_80A60AC @@ -5090,7 +5090,7 @@ _081010C2: sub_81010CC: @ 81010CC push {r4-r6,lr} adds r4, r0, 0 - ldr r6, =gAnimationBankTarget + ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r1, 0x2 bl sub_80A5C6C @@ -5309,7 +5309,7 @@ _0810127A: movs r1, 0 bl SetGpuReg adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08101290: pop {r4} pop {r0} @@ -5406,7 +5406,7 @@ _08101320: strh r0, [r4, 0x30] ldrh r0, [r5, 0x8] strh r0, [r4, 0x32] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 ldr r0, =sub_80A656C @@ -5426,21 +5426,21 @@ sub_810135C: @ 810135C ldrsh r0, [r0, r1] cmp r0, 0 bne _08101378 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _0810137A .pool _08101378: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _0810137A: ldrb r6, [r0] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _081013C4 movs r1, 0x2 adds r0, r6, 0 eors r0, r1 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _081013C4 @@ -5507,7 +5507,7 @@ _08101414: strh r0, [r5, 0x30] ldrh r0, [r1, 0x8] strh r0, [r5, 0x32] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 ldr r0, =sub_80A656C @@ -5523,7 +5523,7 @@ sub_8101440: @ 8101440 push {r4,lr} adds r4, r0, 0 bl sub_80A6838 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -5599,7 +5599,7 @@ _081014D8: cmp r0, 0 beq _081014EC adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081014EC: pop {r4} pop {r0} @@ -5611,7 +5611,7 @@ sub_81014F4: @ 81014F4 push {r4,lr} adds r4, r0, 0 bl sub_80A6838 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -5778,7 +5778,7 @@ _08101604: adds r0, r1 strh r0, [r5, 0x38] movs r0, 0x3F - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 @@ -5885,7 +5885,7 @@ _08101718: strh r1, [r5, 0x24] movs r0, 0x6 strh r0, [r5, 0x2E] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -5975,7 +5975,7 @@ _081017A4: movs r2, 0x4 bl LoadPalette movs r0, 0x3F - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 @@ -6052,7 +6052,7 @@ _0810187C: cmp r0, 0x8 bne _08101890 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08101890: pop {r4} pop {r0} @@ -6199,7 +6199,7 @@ sub_8101998: @ 8101998 adds r4, r0, 0 movs r0, 0x6 strh r0, [r4, 0x2E] - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] bl GetBankSide lsls r0, 24 @@ -6238,7 +6238,7 @@ sub_81019E8: @ 81019E8 cmp r6, 0 bne _08101A24 ldr r1, =gBankSpriteIds - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] adds r0, r1 ldrb r0, [r0] @@ -6301,7 +6301,7 @@ sub_8101A74: @ 8101A74 adds r4, r0, 0 movs r0, 0x4 strh r0, [r4, 0x2E] - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] bl GetBankSide lsls r0, 24 @@ -6361,7 +6361,7 @@ sub_8101AE8: @ 8101AE8 cmp r0, 0 bne _08101B38 ldr r1, =gBankSpriteIds - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] adds r0, r1 ldrb r0, [r0] @@ -6431,7 +6431,7 @@ _08101B78: thumb_func_start sub_8101B84 sub_8101B84: @ 8101B84 push {lr} - bl move_anim_8072740 + bl DestroyAnimSprite pop {r0} bx r0 thumb_func_end sub_8101B84 @@ -6466,7 +6466,7 @@ _08101BB6: _08101BBC: strh r5, [r4, 0x30] ldr r1, =gBankSpriteIds - ldr r2, =gAnimationBankAttacker + ldr r2, =gAnimBankAttacker ldrb r0, [r2] adds r0, r1 ldrb r0, [r0] @@ -6558,7 +6558,7 @@ _08101C4C: lsrs r0, 24 bl sub_80A7344 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08101C8E: pop {r4,r5} pop {r0} @@ -6576,7 +6576,7 @@ sub_8101C94: @ 8101C94 lsls r0, 3 adds r5, r0, r1 ldr r1, =gBankSpriteIds - ldr r2, =gAnimationBankAttacker + ldr r2, =gAnimBankAttacker ldrb r0, [r2] adds r0, r1 ldrb r0, [r0] @@ -6596,7 +6596,7 @@ sub_8101C94: @ 8101C94 cmp r1, 0x1 beq _08101D04 adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _08101D22 .pool _08101CE8: @@ -6864,7 +6864,7 @@ _08101ED4: .pool _08101EE0: adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08101EE6: pop {r4} pop {r0} @@ -6906,7 +6906,7 @@ _08101F2C: ldrb r0, [r4, 0x8] bl sub_80A7344 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08101F38: pop {r4,r5} pop {r0} @@ -6922,11 +6922,11 @@ sub_8101F40: @ 8101F40 ldrsh r0, [r6, r1] cmp r0, 0 bne _08101F5C - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker b _08101F5E .pool _08101F5C: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget _08101F5E: ldrb r0, [r4] movs r1, 0x2 @@ -6962,7 +6962,7 @@ _08101F5E: sub_8101FA8: @ 8101FA8 push {r4,r5,lr} adds r4, r0, 0 - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -6992,7 +6992,7 @@ sub_8101FA8: @ 8101FA8 sub_8101FF0: @ 8101FF0 push {r4-r6,lr} adds r4, r0, 0 - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -7100,7 +7100,7 @@ sub_810208C: @ 810208C cmp r0, 0x8 ble _081020D4 adds r0, r3, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081020D4: pop {r0} bx r0 @@ -7115,11 +7115,11 @@ sub_81020D8: @ 81020D8 ldrsh r0, [r6, r1] cmp r0, 0 bne _081020F4 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker b _081020F6 .pool _081020F4: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget _081020F6: ldrb r0, [r4] movs r1, 0 @@ -7181,7 +7181,7 @@ _0810215C: cmp r0, 0 beq _08102178 adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08102178: pop {r0} bx r0 @@ -7191,7 +7191,7 @@ _08102178: sub_810217C: @ 810217C push {r4-r6,lr} adds r4, r0, 0 - ldr r6, =gAnimationBankAttacker + ldr r6, =gAnimBankAttacker ldrb r0, [r6] movs r1, 0x2 bl sub_80A5C6C @@ -7213,7 +7213,7 @@ sub_810217C: @ 810217C strh r5, [r4, 0x34] strh r5, [r4, 0x36] subs r0, 0x42 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning lsls r0, 24 asrs r0, 24 strh r0, [r4, 0x38] @@ -7301,7 +7301,7 @@ _08102238: cmp r0, 0 beq _08102262 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08102262: pop {r4} pop {r0} @@ -7316,7 +7316,7 @@ sub_8102268: @ 8102268 ldrsh r0, [r6, r1] cmp r0, 0 bne _081022B2 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl sub_80A5C6C @@ -7352,7 +7352,7 @@ _081022B2: cmp r1, r0 bne _081022C2 adds r0, r6, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081022C2: pop {r4-r6} pop {r0} @@ -7383,7 +7383,7 @@ _08102300: cmp r0, 0x2 bne _0810230C adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _08102344 _0810230C: ldrh r0, [r4, 0x8] @@ -7465,7 +7465,7 @@ _08102390: strb r0, [r2] movs r0, 0x1E strh r0, [r5, 0x2E] - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -7480,7 +7480,7 @@ _08102390: strh r0, [r5, 0x36] ldr r0, =sub_80A6EEC str r0, [r5, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 _081023CC: @@ -7525,7 +7525,7 @@ sub_81023E0: @ 81023E0 cmp r0, 0x10 bne _08102428 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08102428: pop {r4,r5} pop {r0} @@ -7557,7 +7557,7 @@ _08102448: bne _08102464 adds r0, r4, r5 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible _08102464: movs r1, 0x2 ldrsh r0, [r6, r1] @@ -7571,7 +7571,7 @@ _08102464: bne _08102482 adds r0, r4, r5 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible _08102482: adds r0, r4, 0x1 lsls r0, 24 @@ -7582,7 +7582,7 @@ _08102482: bcc _08102448 _08102490: adds r0, r7, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4-r7} pop {r0} bx r0 @@ -7600,7 +7600,7 @@ _081024B2: ldr r0, =gHealthBoxesIds adds r0, r4, r0 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible adds r0, r4, 0x1 lsls r0, 24 lsrs r4, r0, 24 @@ -7610,7 +7610,7 @@ _081024C2: cmp r4, r0 bcc _081024B2 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4,r5} pop {r0} bx r0 @@ -7663,7 +7663,7 @@ sub_8102528: @ 8102528 cmp r0, 0 beq _0810253A adds r0, r1, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810253A: pop {r0} bx r0 @@ -7673,7 +7673,7 @@ _0810253A: sub_8102540: @ 8102540 push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] movs r1, 0x2 bl sub_80A5C6C @@ -7729,7 +7729,7 @@ _081025AE: cmp r0, 0 beq _081025BC adds r0, r1, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081025BC: pop {r0} bx r0 @@ -8034,7 +8034,7 @@ _08102820: cmp r0, 0 bne _08102832 adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08102832: add sp, 0x4 pop {r3} @@ -8068,7 +8068,7 @@ _08102862: strh r0, [r5, 0x2E] ldrh r0, [r6, 0x4] strh r0, [r5, 0x30] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -8113,7 +8113,7 @@ _08102862: b _081028FA .pool _081028D4: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -8216,7 +8216,7 @@ _081029A2: cmp r0, 0 bne _081029B0 adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081029B0: pop {r0} bx r0 @@ -8333,9 +8333,9 @@ _08102A88: _08102A9A: ldr r0, =sub_8102AE0 str r0, [r6] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -8374,9 +8374,9 @@ sub_8102AE0: @ 8102AE0 ldrsh r0, [r0, r1] cmp r0, 0 bne _08102B32 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -8396,7 +8396,7 @@ _08102B26: ldr r0, =0x00002771 bl FreeSpritePaletteByTag adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08102B32: pop {r4} pop {r0} @@ -8481,7 +8481,7 @@ _08102BC2: sub_8102BCC: @ 8102BCC push {r4,lr} adds r4, r0, 0 - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite bl StoreSpriteCallbackInData6 ldr r0, =sub_80A67D8 str r0, [r4, 0x1C] @@ -8575,7 +8575,7 @@ _08102C7A: cmp r4, 0x3 bls _08102C32 mov r0, r9 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r3,r4} mov r8, r3 mov r9, r4 @@ -8605,7 +8605,7 @@ _08102CAA: cmp r4, 0x3 bls _08102CAA adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4-r6} pop {r0} bx r0 @@ -8657,7 +8657,7 @@ _08102D10: b _08102D4E .pool _08102D34: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -8855,7 +8855,7 @@ _08102EA6: sub_8102EB0: @ 8102EB0 push {r4-r7,lr} adds r6, r0, 0 - ldr r7, =gAnimationBankAttacker + ldr r7, =gAnimBankAttacker ldrb r0, [r7] bl GetBankSide lsls r0, 24 @@ -9002,7 +9002,7 @@ sub_8102FB8: @ 8102FB8 _08102FDC: ldr r6, =0x0000fff0 _08102FDE: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -9021,7 +9021,7 @@ _08102FDE: strh r0, [r5, 0x2E] ldr r0, =sub_80A64B0 str r0, [r5, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 pop {r4-r6} @@ -9135,7 +9135,7 @@ _081030DC: b _08103106 _08103100: adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08103106: pop {r4} pop {r0} @@ -9197,11 +9197,11 @@ sub_8103164: @ 8103164 ldrsh r0, [r0, r1] cmp r0, 0 bne _08103180 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _08103182 .pool _08103180: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _08103182: ldrb r4, [r0] adds r0, r4, 0 @@ -9242,7 +9242,7 @@ sub_81031D0: @ 81031D0 lsls r0, 16 cmp r0, 0 bne _081031F8 - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 ldrh r1, [r4, 0x30] @@ -9268,11 +9268,11 @@ sub_8103208: @ 8103208 ldrsh r0, [r0, r1] cmp r0, 0 bne _08103224 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _08103226 .pool _08103224: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _08103226: ldrb r0, [r0] adds r1, r4, 0 @@ -9325,11 +9325,11 @@ sub_8103284: @ 8103284 ldrsh r0, [r0, r1] cmp r0, 0 bne _081032A0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _081032A2 .pool _081032A0: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _081032A2: ldrb r5, [r0] adds r0, r5, 0 @@ -9463,11 +9463,11 @@ sub_8103390: @ 8103390 ldrsh r0, [r0, r1] cmp r0, 0 bne _081033AC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _081033AE .pool _081033AC: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _081033AE: ldrb r4, [r0] adds r0, r4, 0 @@ -9541,7 +9541,7 @@ sub_810342C: @ 810342C cmp r0, 0x5 ble _08103444 adds r0, r1, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08103444: pop {r0} bx r0 @@ -9591,11 +9591,11 @@ sub_8103498: @ 8103498 ldrsh r0, [r0, r1] cmp r0, 0 bne _081034B4 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _081034B6 .pool _081034B4: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _081034B6: ldrb r0, [r0] adds r1, r4, 0 @@ -9664,7 +9664,7 @@ _08103524: cmp r0, 0x40 bne _08103538 adds r0, r1, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08103538: pop {r0} bx r0 @@ -9716,7 +9716,7 @@ _0810357A: sub_810358C: @ 810358C push {r4-r6,lr} adds r5, r0, 0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -9730,7 +9730,7 @@ sub_810358C: @ 810358C lsrs r0, 24 strh r0, [r5, 0x22] ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r0, r1 ldrb r6, [r0] @@ -9830,7 +9830,7 @@ sub_8103680: @ 8103680 cmp r0, 0 bne _08103696 adds r0, r1, 0 - bl move_anim_8072740 + bl DestroyAnimSprite b _0810369A _08103696: subs r0, r2, 0x1 @@ -9847,7 +9847,7 @@ sub_81036A0: @ 81036A0 lsls r4, 24 lsrs r4, 24 ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r0, [r0] @@ -9872,7 +9872,7 @@ sub_81036DC: @ 81036DC lsls r0, 24 lsrs r5, r0, 24 ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] adds r1, r0, r1 ldrb r4, [r1] @@ -9974,7 +9974,7 @@ _081037AA: adds r0, r4, 0 bl sub_80A7344 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _081037D0 .pool _081037CC: @@ -9992,7 +9992,7 @@ sub_81037D8: @ 81037D8 push {r4,r5,lr} adds r4, r0, 0 bl sub_80A6838 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -10018,7 +10018,7 @@ _08103810: ldrh r1, [r4, 0x22] adds r0, r1 strh r0, [r4, 0x22] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -10054,7 +10054,7 @@ _0810384C: _08103860: ldr r0, =sub_80A67D8 str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 pop {r4,r5} @@ -10092,7 +10092,7 @@ sub_81038A0: @ 81038A0 strh r1, [r0, 0x36] ldr r1, =sub_80A6EEC str r1, [r0, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite bl StoreSpriteCallbackInData6 pop {r0} bx r0 @@ -10117,7 +10117,7 @@ sub_81038C8: @ 81038C8 b _0810390E .pool _081038EC: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -10137,7 +10137,7 @@ _0810390E: adds r0, r5, 0 movs r1, 0x1 bl sub_80A69CC - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -10201,7 +10201,7 @@ _08103980: strh r7, [r5, 0x36] ldr r0, =sub_80A6EEC str r0, [r5, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 add sp, 0x4 @@ -10507,7 +10507,7 @@ sub_8103BE4: @ 8103BE4 cmp r0, 0 bne _08103C02 adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08103C02: pop {r0} bx r0 @@ -10604,7 +10604,7 @@ _08103C90: strh r0, [r4, 0xA] movs r0, 0x3F negs r0, r0 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 @@ -10676,8 +10676,8 @@ _08103D54: strh r0, [r3, 0x4] b _08103DB6 _08103D5C: - ldr r1, =gBanksBySide - ldr r0, =gAnimationBankTarget + ldr r1, =gBanksByIdentity + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r0, r1 ldrb r1, [r0] @@ -10716,7 +10716,7 @@ _08103DB0: _08103DB4: strh r0, [r2, 0x4] _08103DB6: - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0 bl sub_80A5C6C @@ -10742,11 +10742,11 @@ _08103DB6: ands r0, r1 cmp r0, 0 beq _08103E20 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r1, [r4] movs r0, 0x2 eors r0, r1 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _08103E20 @@ -10759,7 +10759,7 @@ _08103DB6: .pool _08103E20: mov r5, sp - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0 bl sub_80A5C6C @@ -10897,7 +10897,7 @@ _08103F28: asrs r0, 16 cmp r0, 0x3F ble _08103FA0 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A82E4 lsls r0, 24 @@ -10914,7 +10914,7 @@ _08103F78: asrs r0, 16 cmp r0, 0x3F ble _08103FA0 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A82E4 lsls r0, 24 @@ -10927,7 +10927,7 @@ _08103F78: b _08103FB0 .pool _08103FA0: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A82E4 lsls r0, 24 @@ -11035,7 +11035,7 @@ _08104050: cmp r0, 0x18 bne _0810407C adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810407C: pop {r4-r7} pop {r0} @@ -11050,7 +11050,7 @@ sub_8104088: @ 8104088 adds r5, r0, 0 movs r1, 0x1 bl sub_80A69CC - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -11066,7 +11066,7 @@ sub_8104088: @ 8104088 adds r0, r1 lsls r0, 16 lsrs r7, r0, 16 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -11112,7 +11112,7 @@ _081040CC: strh r7, [r5, 0x36] ldr r0, =sub_80A7000 str r0, [r5, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 add sp, 0x4 @@ -11145,7 +11145,7 @@ sub_8104154: @ 8104154 lsls r0, 16 asrs r0, 24 strh r0, [r4, 0x24] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -11184,7 +11184,7 @@ _08104178: cmp r0, 0x2 bne _081041B8 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081041B8: pop {r4} pop {r0} @@ -11200,7 +11200,7 @@ sub_81041C4: @ 81041C4 bl sub_80A69CC movs r0, 0x14 strh r0, [r4, 0x2E] - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -11235,7 +11235,7 @@ sub_810421C: @ 810421C push {r4,lr} adds r4, r0, 0 movs r0, 0x3F - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 @@ -11339,7 +11339,7 @@ _081042BE: cmp r0, 0x1 bne _081042FE adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081042FE: pop {r4} pop {r0} @@ -11352,7 +11352,7 @@ sub_8104304: @ 8104304 adds r4, r0, 0 movs r1, 0 bl sub_80A69CC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -11375,7 +11375,7 @@ _08104322: strh r0, [r4, 0x36] ldr r0, =sub_80A62EC str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 ldr r1, [r4, 0x1C] @@ -11423,7 +11423,7 @@ _08104390: strh r0, [r5, 0x22] movs r0, 0x6 strh r0, [r5, 0x2E] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -11462,7 +11462,7 @@ sub_81043F8: @ 81043F8 cmp r0, 0 beq _0810440E adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810440E: pop {r0} bx r0 @@ -11510,7 +11510,7 @@ _08104448: movs r0, 0x6 strh r0, [r5, 0x2E] strh r1, [r5, 0x30] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -11664,7 +11664,7 @@ sub_8104594: @ 8104594 cmp r0, 0 beq _081045A8 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081045A8: pop {r4} pop {r0} @@ -11752,7 +11752,7 @@ sub_8104614: @ 8104614 movs r1, 0x1 bl sub_80A750C adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08104664: pop {r4,r5} pop {r0} @@ -11786,7 +11786,7 @@ sub_8104674: @ 8104674 strh r0, [r4, 0x10] strh r5, [r4, 0x12] strh r5, [r4, 0x14] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl sub_80A82E4 lsls r0, 24 @@ -11946,7 +11946,7 @@ _081047D8: movs r1, 0 strh r1, [r0, 0x26] adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _081047F6: pop {r4,r5} pop {r0} @@ -12124,7 +12124,7 @@ sub_8104938: @ 8104938 cmp r0, 0 bne _08104964 adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _0810498A .pool _08104964: @@ -12276,7 +12276,7 @@ _08104A64: adds r0, r2 strh r5, [r0, 0x26] adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _08104AA8 .pool _08104A9C: @@ -12333,7 +12333,7 @@ sub_8104AF0: @ 8104AF0 cmp r0, 0 bne _08104B10 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08104B10: pop {r4} pop {r0} @@ -12345,7 +12345,7 @@ _08104B10: sub_8104B1C: @ 8104B1C push {r4,r5,lr} adds r4, r0, 0 - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] bl GetBankSide lsls r0, 24 @@ -12378,7 +12378,7 @@ _08104B50: ldr r0, =0x0000ffc0 _08104B6A: strh r0, [r4, 0x30] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] movs r1, 0x3 bl sub_80A5C6C @@ -12391,7 +12391,7 @@ _08104B6A: strh r1, [r4, 0x32] strh r1, [r4, 0x34] strh r1, [r4, 0x36] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 ldr r0, =sub_80A656C @@ -12411,11 +12411,11 @@ sub_8104BAC: @ 8104BAC ldrsh r0, [r0, r1] cmp r0, 0 bne _08104BC8 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _08104BCA .pool _08104BC8: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _08104BCA: ldrb r5, [r0] adds r0, r5, 0 @@ -12509,7 +12509,7 @@ sub_8104C78: @ 8104C78 cmp r0, 0 bne _08104C98 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08104C98: pop {r4} pop {r0} @@ -12559,7 +12559,7 @@ sub_8104CA4: @ 8104CA4 strh r2, [r4, 0x18] movs r0, 0x2 strh r0, [r4, 0x1A] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -12741,7 +12741,7 @@ _08104E48: strh r1, [r0, 0x22] _08104E66: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08104E6C: pop {r4,r5} pop {r0} @@ -12759,7 +12759,7 @@ sub_8104E74: @ 8104E74 lsls r1, 3 ldr r0, =gTasks adds r5, r1, r0 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] bl sub_80A6190 lsls r0, 24 @@ -12777,19 +12777,19 @@ sub_8104E74: @ 8104E74 bl sub_80A861C strh r0, [r5, 0x26] ldrb r0, [r4] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _08104ED4 - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X ldrh r0, [r0] strh r0, [r5, 0x14] ldr r0, =0x04000014 b _08104EDC .pool _08104ED4: - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X ldrh r0, [r0] strh r0, [r5, 0x14] ldr r0, =0x04000018 @@ -12947,7 +12947,7 @@ _08104FF0: movs r0, 0x3 strb r0, [r1, 0x15] adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810500E: pop {r4} pop {r0} @@ -12959,7 +12959,7 @@ _0810500E: sub_810501C: @ 810501C push {r4-r6,lr} adds r4, r0, 0 - ldr r6, =gAnimationBankTarget + ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r1, 0 bl sub_80A5C6C @@ -12986,7 +12986,7 @@ sub_810501C: @ 810501C adds r0, 0x2 strh r0, [r4, 0x38] movs r0, 0x3F - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning lsls r0, 24 asrs r0, 24 strh r0, [r4, 0x3A] @@ -13169,7 +13169,7 @@ _0810519A: ands r0, r1 strb r0, [r2] adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081051BC: pop {r4} pop {r0} @@ -13194,25 +13194,25 @@ sub_81051C4: @ 81051C4 adds r1, r0, 0 cmp r2, 0 bne _081051F0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _081051F2 .pool _081051F0: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _081051F2: ldrb r5, [r0] ldrb r1, [r1, 0x6] movs r0, 0x1 adds r4, r0, 0 eors r4, r1 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0810526A movs r1, 0x2 adds r0, r5, 0 eors r0, r1 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0810526A @@ -13278,7 +13278,7 @@ sub_8105284: @ 8105284 adds r0, r4, 0 bl FreeSpriteOamMatrix adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810529E: pop {r4} pop {r0} @@ -13305,15 +13305,15 @@ sub_81052A4: @ 81052A4 ldrsh r0, [r0, r2] cmp r0, 0 bne _081052DC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r7, [r0] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget b _081052E2 .pool _081052DC: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r7, [r0] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker _081052E2: ldrb r0, [r0] mov r8, r0 @@ -13354,7 +13354,7 @@ _08105310: mov r4, r8 eors r4, r0 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0810535C @@ -13389,7 +13389,7 @@ _0810536C: adds r4, r7, 0 eors r4, r0 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _081053E4 @@ -13457,7 +13457,7 @@ _081053FA: movs r1, 0x2 mov r0, r8 eors r0, r1 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0810544C @@ -13581,7 +13581,7 @@ sub_8105538: @ 8105538 adds r4, r0, 0 movs r1, 0 bl sub_80A69CC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -13622,7 +13622,7 @@ sub_810557C: @ 810557C strh r0, [r4, 0x24] subs r2, 0x20 strh r2, [r4, 0x2E] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -13836,7 +13836,7 @@ sub_810571C: @ 810571C b _08105752 .pool _08105750: - ldr r0, =move_anim_8072740 + ldr r0, =DestroyAnimSprite _08105752: str r0, [r3, 0x1C] _08105754: @@ -13856,7 +13856,7 @@ sub_810575C: @ 810575C movs r1, 0 bl SetGpuReg adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite pop {r4} pop {r0} bx r0 @@ -13925,7 +13925,7 @@ sub_81057B8: @ 81057B8 orrs r1, r2 strb r1, [r0] adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08105802: pop {r4,r5} pop {r0} @@ -13950,7 +13950,7 @@ sub_8105810: @ 8105810 strh r0, [r4, 0xE] movs r0, 0x3 strh r0, [r4, 0x20] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -14124,7 +14124,7 @@ _08105962: cmp r0, 0 bne _08105992 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08105992: pop {r4,r5} pop {r0} @@ -14263,7 +14263,7 @@ _08105A88: ands r1, r2 strb r1, [r0] adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08105AA6: pop {r4-r6} pop {r0} @@ -14292,7 +14292,7 @@ sub_8105AAC: @ 8105AAC strh r0, [r4, 0x16] strh r0, [r4, 0x18] strh r0, [r4, 0x22] - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0 bl sub_80A5C6C @@ -14469,7 +14469,7 @@ _08105C34: cmp r0, 0 bne _08105C42 adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08105C42: pop {r4-r6} pop {r0} @@ -14561,7 +14561,7 @@ _08105CCC: lsls r0, 6 bl AllocZeroed adds r1, r0, 0 - ldr r0, =gBattleSpritesGfx + ldr r0, =gMonSpritesGfxPtr ldr r0, [r0] movs r2, 0xBE lsls r2, 1 @@ -14571,7 +14571,7 @@ _08105CCC: bl LZDecompressWram movs r4, 0 _08105D00: - ldr r5, =gBattleSpritesGfx + ldr r5, =gMonSpritesGfxPtr ldr r0, [r5] movs r1, 0xBE lsls r1, 1 @@ -14603,7 +14603,7 @@ _08105D00: movs r1, 0 str r1, [r0] adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask add sp, 0x4 pop {r4-r6} pop {r0} @@ -14626,7 +14626,7 @@ _08105D6A: cmp r4, 0 bge _08105D6A adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4-r6} pop {r0} bx r0 @@ -14684,7 +14684,7 @@ sub_8105DE8: @ 8105DE8 adds r5, r0, 0 movs r1, 0 bl sub_80A69CC - ldr r6, =gAnimationBankAttacker + ldr r6, =gAnimBankAttacker ldrb r0, [r6] bl GetBankSide lsls r0, 24 @@ -14716,7 +14716,7 @@ _08105E08: strh r0, [r5, 0x36] ldr r0, =sub_80A6EEC str r0, [r5, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 ldrb r1, [r4, 0xA] @@ -14765,7 +14765,7 @@ _08105E7A: cmp r0, 0x3C bne _08105EAA adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08105EAA: pop {r4} pop {r0} @@ -14785,9 +14785,9 @@ sub_8105EB0: @ 8105EB0 movs r6, 0x98 _08105EC4: movs r5, 0 - ldr r1, =gUnknown_02022E24 + ldr r1, =gBattle_WIN0H strh r6, [r1] - ldr r4, =gUnknown_02022E26 + ldr r4, =gBattle_WIN0V movs r0, 0xA0 strh r0, [r4] ldrh r1, [r1] @@ -14845,7 +14845,7 @@ sub_8105F30: @ 8105F30 lsls r0, r2, 16 cmp r1, r0 blt _08105F70 - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H movs r1, 0 strh r1, [r0] ldr r0, =sub_8105F84 @@ -14853,7 +14853,7 @@ sub_8105F30: @ 8105F30 b _08105F78 .pool _08105F70: - ldr r1, =gUnknown_02022E24 + ldr r1, =gBattle_WIN0H lsls r0, r4, 8 orrs r2, r0 strh r2, [r1] @@ -14905,9 +14905,9 @@ sub_8105F84: @ 8105F84 _08105FD8: cmp r0, 0x4 ble _0810600C - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H strh r4, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r4, [r0] ldr r4, =0x00003f3f movs r0, 0x48 @@ -14923,7 +14923,7 @@ _08105FD8: movs r1, 0 bl SetGpuReg adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810600C: add sp, 0xC pop {r4,r5} @@ -14989,7 +14989,7 @@ _0810607C: strh r0, [r4, 0x24] strh r0, [r4, 0x26] adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _081060A4: pop {r4-r6} pop {r0} @@ -15054,7 +15054,7 @@ _0810610C: strh r0, [r4, 0x24] strh r0, [r4, 0x26] adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08106134: pop {r4-r6} pop {r0} @@ -15072,7 +15072,7 @@ sub_8106140: @ 8106140 strh r0, [r4, 0x2E] ldrh r0, [r4, 0x20] strh r0, [r4, 0x30] - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -15120,7 +15120,7 @@ sub_810618C: @ 810618C b _081061BC _081061B6: adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081061BC: pop {r4} pop {r0} @@ -15190,7 +15190,7 @@ _08106236: cmp r0, 0x78 ble _08106244 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08106244: pop {r4} pop {r0} @@ -15268,7 +15268,7 @@ sub_810627C: @ 810627C cmp r5, 0x40 bgt _081062E2 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081062E2: pop {r4,r5} pop {r0} @@ -15291,11 +15291,11 @@ sub_81062E8: @ 81062E8 movs r0, 0x1 movs r1, 0x4 movs r2, 0x3 - bl lcd_bg_operations + bl SetAnimBgAttribute movs r0, 0x1 movs r1, 0 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute bl IsContest lsls r0, 24 cmp r0, 0 @@ -15303,12 +15303,12 @@ sub_81062E8: @ 81062E8 movs r0, 0x1 movs r1, 0x3 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute _0810632A: - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X movs r1, 0 strh r1, [r0] - ldr r4, =gUnknown_02022E1A + ldr r4, =gBattle_BG1_Y strh r1, [r4] movs r0, 0x14 movs r1, 0 @@ -15489,7 +15489,7 @@ _081064BC: movs r0, 0x1 movs r1, 0x3 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute _081064D0: movs r0, 0x50 movs r1, 0 @@ -15500,9 +15500,9 @@ _081064D0: movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _081064F0: add sp, 0x10 pop {r4,r5} @@ -15526,11 +15526,11 @@ sub_81064F8: @ 81064F8 movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute movs r0, 0x1 movs r1, 0 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute bl IsContest lsls r0, 24 cmp r0, 0 @@ -15538,12 +15538,12 @@ sub_81064F8: @ 81064F8 movs r0, 0x1 movs r1, 0x3 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute _0810653A: - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X movs r1, 0 strh r1, [r0] - ldr r4, =gUnknown_02022E1A + ldr r4, =gBattle_BG1_Y strh r1, [r4] movs r0, 0x14 movs r1, 0 @@ -15561,7 +15561,7 @@ _0810653A: b _0810658A .pool _08106578: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -15747,7 +15747,7 @@ _081066FC: movs r0, 0x1 movs r1, 0x3 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute _08106710: movs r0, 0x50 movs r1, 0 @@ -15758,9 +15758,9 @@ _08106710: movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08106730: add sp, 0x10 pop {r4,r5} @@ -15773,7 +15773,7 @@ _08106730: sub_810673C: @ 810673C push {r4,r5,lr} adds r4, r0, 0 - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -15912,7 +15912,7 @@ _08106858: cmp r1, r0 bne _08106868 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08106868: pop {r4} pop {r0} @@ -15924,7 +15924,7 @@ _08106868: sub_8106878: @ 8106878 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -15991,7 +15991,7 @@ sub_81068CC: @ 81068CC bge _08106910 _0810690A: adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08106910: pop {r0} bx r0 @@ -16019,7 +16019,7 @@ sub_8106914: @ 8106914 cmp r0, r1 blt _08106940 adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08106940: pop {r0} bx r0 @@ -16029,7 +16029,7 @@ _08106940: sub_8106944: @ 8106944 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -16074,7 +16074,7 @@ sub_810699C: @ 810699C cmp r0, 0 beq _081069B2 adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081069B2: pop {r0} bx r0 @@ -16164,7 +16164,7 @@ _08106A50: cmp r2, 0x64 ble _08106A5A adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08106A5A: pop {r4,r5} pop {r0} @@ -16222,7 +16222,7 @@ _08106ABA: cmp r0, 0x1E ble _08106AC8 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08106AC8: pop {r4} pop {r0} @@ -16314,7 +16314,7 @@ sub_8106B54: @ 8106B54 adds r0, r4, 0 movs r1, 0 bl StartSpriteAnim - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A82E4 subs r0, 0x1 @@ -16439,7 +16439,7 @@ _08106C6A: cmp r0, 0x5A ble _08106C78 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08106C78: pop {r4} pop {r0} @@ -16480,7 +16480,7 @@ _08106CB4: cmp r0, 0 beq _08106CC8 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08106CC8: pop {r4} pop {r0} @@ -16497,7 +16497,7 @@ sub_8106CD0: @ 8106CD0 cmp r0, 0 bne _08106CEC adds r0, r5, 0 - bl move_anim_8072740 + bl DestroyAnimSprite b _08106D50 .pool _08106CEC: @@ -16505,11 +16505,11 @@ _08106CEC: ldrsh r0, [r1, r2] cmp r0, 0 bne _08106CFC - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker b _08106CFE .pool _08106CFC: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget _08106CFE: ldrb r0, [r4] movs r1, 0x2 @@ -16579,7 +16579,7 @@ sub_8106D5C: @ 8106D5C b _08106D8C _08106D86: adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08106D8C: pop {r0} bx r0 @@ -16628,7 +16628,7 @@ sub_8106DD4: @ 8106DD4 cmp r0, 0 bne _08106DF4 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08106DF4: pop {r4} pop {r0} @@ -16645,11 +16645,11 @@ sub_8106E00: @ 8106E00 ldrsh r0, [r0, r1] cmp r0, 0 bne _08106E1C - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _08106E1E .pool _08106E1C: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _08106E1E: ldrb r6, [r0] adds r0, r6, 0 @@ -16754,7 +16754,7 @@ sub_8106EC8: @ 8106EC8 cmp r0, 0x10 ble _08106EFC adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08106EFC: pop {r0} bx r0 @@ -16803,7 +16803,7 @@ _08106F40: cmp r1, r0 bne _08106F54 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08106F54: pop {r4} pop {r0} @@ -16968,14 +16968,14 @@ _08107066: orrs r0, r1 strb r0, [r3] adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08107098: movs r1, 0x36 ldrsh r0, [r4, r1] cmp r0, 0x4 bne _081070A6 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081070A6: pop {r4} pop {r0} @@ -16992,11 +16992,11 @@ sub_81070AC: @ 81070AC ands r0, r1 cmp r0, 0 beq _081070F8 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r1, [r4] movs r0, 0x2 eors r0, r1 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _081070F8 @@ -17016,7 +17016,7 @@ sub_81070AC: @ 81070AC b _08107118 .pool _081070F8: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl sub_80A5C6C @@ -17040,7 +17040,7 @@ _08107118: strh r0, [r5, 0x36] ldr r0, =sub_80A6EEC str r0, [r5, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 pop {r4,r5} @@ -17055,13 +17055,13 @@ sub_8107144: @ 8107144 lsls r0, 24 lsrs r0, 24 ldr r3, =gBattleAnimArgs - ldr r1, =gDisableStructMoveAnim + ldr r1, =gAnimDisableStructPtr ldr r1, [r1] ldrb r2, [r1, 0x10] movs r1, 0x1 ands r1, r2 strh r1, [r3, 0xE] - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool @@ -17073,11 +17073,11 @@ update_fury_cutter_counter_copy: @ 8107168 lsls r0, 24 lsrs r0, 24 ldr r2, =gBattleAnimArgs - ldr r1, =gDisableStructMoveAnim + ldr r1, =gAnimDisableStructPtr ldr r1, [r1] ldrb r1, [r1, 0x10] strh r1, [r2, 0xE] - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool @@ -17144,7 +17144,7 @@ _081071F8: cmp r1, r0 bne _0810720A adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810720A: pop {r4-r6} pop {r0} @@ -17196,7 +17196,7 @@ _0810725A: sub_8107260: @ 8107260 push {r4-r6,lr} adds r6, r0, 0 - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] bl GetBankSide lsls r0, 24 @@ -17237,7 +17237,7 @@ _081072A2: movs r1, 0x40 orrs r0, r1 strb r0, [r2] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -17253,7 +17253,7 @@ _081072D8: strh r0, [r6, 0x2E] ldrh r0, [r6, 0x20] strh r0, [r6, 0x30] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -17422,7 +17422,7 @@ sub_810744C: @ 810744C adds r5, r0, 0 movs r1, 0x1 bl sub_80A69CC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -17445,7 +17445,7 @@ _08107482: strh r0, [r5, 0x2E] ldrh r0, [r5, 0x20] strh r0, [r5, 0x30] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -17507,7 +17507,7 @@ _08107506: cmp r0, 0 beq _08107518 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08107518: pop {r4} pop {r0} @@ -17603,7 +17603,7 @@ _081075BE: cmp r1, r0 bne _081075DE adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _081075DE: pop {r4-r7} pop {r0} @@ -17621,7 +17621,7 @@ sub_81075EC: @ 81075EC strh r0, [r5, 0x2E] ldrh r0, [r5, 0x20] strh r0, [r5, 0x30] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -17683,7 +17683,7 @@ sub_8107674: @ 8107674 cmp r0, 0 beq _08107688 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08107688: ldrh r0, [r4, 0x3A] lsls r0, 16 @@ -17762,7 +17762,7 @@ sub_81076F4: @ 81076F4 cmp r1, 0 bne _08107722 adds r0, r3, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08107722: pop {r0} bx r0 @@ -17773,7 +17773,7 @@ _08107722: sub_8107730: @ 8107730 push {r4-r7,lr} adds r4, r0, 0 - ldr r7, =gAnimationBankAttacker + ldr r7, =gAnimBankAttacker ldrb r0, [r7] movs r1, 0 bl sub_80A5C6C @@ -17836,7 +17836,7 @@ sub_81077A4: @ 81077A4 cmp r0, 0 beq _081077BA adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081077BA: pop {r0} bx r0 @@ -17846,11 +17846,11 @@ _081077BA: sub_81077C0: @ 81077C0 push {r4-r7,lr} adds r6, r0, 0 - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] bl GetBankSide adds r4, r0, 0 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r4, 24 @@ -17898,7 +17898,7 @@ _0810781E: _08107828: adds r0, r6, 0 bl sub_80A69CC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -17910,7 +17910,7 @@ _08107828: _08107842: ldrh r0, [r5, 0x8] strh r0, [r6, 0x2E] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -17929,7 +17929,7 @@ _08107842: strh r0, [r6, 0x36] ldr r0, =sub_80A6EEC str r0, [r6, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r6, 0 bl StoreSpriteCallbackInData6 pop {r4-r7} @@ -17956,7 +17956,7 @@ sub_8107894: @ 8107894 strh r1, [r4, 0x36] ldr r0, =sub_80A6EEC str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 pop {r4} @@ -18026,7 +18026,7 @@ sub_810790C: @ 810790C cmp r0, r1 bne _0810794C adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810794C: pop {r4} pop {r0} @@ -18054,11 +18054,11 @@ sub_8107954: @ 8107954 movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute movs r0, 0x1 movs r1, 0 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute mov r0, sp bl sub_80A6B30 bl IsContest @@ -18068,8 +18068,8 @@ sub_8107954: @ 8107954 movs r0, 0x1 movs r1, 0x3 movs r2, 0x1 - bl lcd_bg_operations - ldr r0, =gAnimationBankAttacker + bl SetAnimBgAttribute + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -18159,11 +18159,11 @@ _08107A32: beq _08107AB4 ldr r1, =0x0000ffb0 adds r0, r1, 0 - ldr r2, =gUnknown_02022E18 + ldr r2, =gBattle_BG1_X strh r0, [r2] adds r1, 0x20 adds r0, r1, 0 - ldr r2, =gUnknown_02022E1A + ldr r2, =gBattle_BG1_Y strh r0, [r2] movs r0, 0x2 strh r0, [r6, 0x8] @@ -18174,7 +18174,7 @@ _08107A32: b _08107B0E .pool _08107AB4: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -18183,12 +18183,12 @@ _08107AB4: bne _08107AF8 ldr r2, =0x0000ff20 adds r0, r2, 0 - ldr r2, =gUnknown_02022E18 + ldr r2, =gBattle_BG1_X strh r0, [r2] movs r2, 0x80 lsls r2, 1 adds r0, r2, 0 - ldr r2, =gUnknown_02022E1A + ldr r2, =gBattle_BG1_Y strh r0, [r2] movs r0, 0x2 strh r0, [r6, 0x8] @@ -18198,11 +18198,11 @@ _08107AB4: b _08107B0E .pool _08107AF8: - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r4, [r0] ldr r1, =0x0000ffd0 adds r0, r1, 0 - ldr r2, =gUnknown_02022E1A + ldr r2, =gBattle_BG1_Y strh r0, [r2] ldr r0, =0x0000fffe strh r0, [r6, 0x8] @@ -18210,11 +18210,11 @@ _08107AF8: strh r0, [r6, 0xA] strh r4, [r7, 0xE] _08107B0E: - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X ldrh r1, [r0] movs r0, 0x14 bl SetGpuReg - ldr r2, =gUnknown_02022E1A + ldr r2, =gBattle_BG1_Y ldrh r1, [r2] movs r0, 0x16 bl SetGpuReg @@ -18264,8 +18264,8 @@ sub_8107B84: @ 8107B84 sub sp, 0x10 lsls r0, 24 lsrs r5, r0, 24 - ldr r1, =gUnknown_02022E18 - ldr r2, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_X + ldr r2, =gBattle_BG1_Y ldr r0, =gTasks lsls r4, r5, 2 adds r4, r5 @@ -18425,8 +18425,8 @@ sub_8107CC4: @ 8107CC4 lsls r0, 24 lsrs r0, 24 adds r5, r0, 0 - ldr r7, =gUnknown_02022E18 - ldr r0, =gUnknown_02022E1A + ldr r7, =gBattle_BG1_X + ldr r0, =gBattle_BG1_Y mov r8, r0 ldr r6, =gTasks lsls r0, r5, 2 @@ -18454,7 +18454,7 @@ _08107D08: movs r0, 0x1 movs r1, 0x3 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute _08107D1C: movs r0, 0 strh r0, [r7] @@ -18475,7 +18475,7 @@ _08107D1C: ldr r1, =0x0000ffff strh r1, [r0, 0x26] adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08107D4A: pop {r3} mov r8, r3 @@ -18945,7 +18945,7 @@ _081080C0: cmp r0, 0x15 bne _081080DE adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081080DE: pop {r4} pop {r0} @@ -19267,7 +19267,7 @@ _0810836C: cmp r0, 0 bne _0810837A adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810837A: add sp, 0xC pop {r4-r6} @@ -19278,7 +19278,7 @@ _0810837A: thumb_func_start sub_8108384 sub_8108384: @ 8108384 push {r4,r5,lr} - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -19350,7 +19350,7 @@ sub_8108408: @ 8108408 lsls r1, 24 lsrs r1, 24 str r1, [sp] - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -19576,7 +19576,7 @@ sub_81085C8: @ 81085C8 lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0xA] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -19721,7 +19721,7 @@ _08108704: cmp r0, 0 bne _08108712 adds r0, r1, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08108712: pop {r3} mov r8, r3 @@ -19956,7 +19956,7 @@ sub_81088E4: @ 81088E4 lsls r1, 3 ldr r0, =gTasks adds r5, r1, r0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -20171,7 +20171,7 @@ _08108AAA: b _08108AB8 _08108AB2: adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08108AB8: pop {r4} pop {r0} @@ -20371,7 +20371,7 @@ sub_8108C08: @ 8108C08 cmp r0, 0 bne _08108C4C adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08108C4C: pop {r4} pop {r0} @@ -20418,7 +20418,7 @@ sub_8108C94: @ 8108C94 adds r4, r0, 0 movs r1, 0x1 bl sub_80A69CC - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -20495,7 +20495,7 @@ _08108D34: cmp r1, r0 bne _08108D46 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08108D46: ldrh r0, [r4, 0x2E] adds r0, 0x1 @@ -20593,7 +20593,7 @@ _08108DE2: strh r0, [r4, 0x2E] mov r0, r9 strh r0, [r4, 0x30] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl sub_80A82E4 subs r0, 0x1 @@ -20648,7 +20648,7 @@ _08108E58: strh r0, [r4, 0x2E] mov r0, r9 strh r0, [r4, 0x30] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl sub_80A82E4 subs r0, 0x1 @@ -20698,7 +20698,7 @@ sub_8108EC8: @ 8108EC8 movs r0, 0xFE lsls r0, 8 strh r0, [r4, 0x36] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 ldr r1, =sub_80A634C @@ -20732,7 +20732,7 @@ sub_8108F08: @ 8108F08 strh r0, [r4, 0x32] ldr r0, =sub_80A656C str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 pop {r4,r5} @@ -20746,7 +20746,7 @@ sub_8108F4C: @ 8108F4C push {r4,lr} adds r4, r0, 0 bl sub_80A6838 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -20798,7 +20798,7 @@ _08108F9E: sub_8108FBC: @ 8108FBC push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -20886,7 +20886,7 @@ sub_8109064: @ 8109064 push {r4,lr} adds r4, r0, 0 bl sub_80A6838 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -21026,7 +21026,7 @@ sub_810916C: @ 810916C strh r1, [r0, 0x36] ldr r1, =sub_80A6EEC str r1, [r0, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite bl StoreSpriteCallbackInData6 pop {r0} bx r0 @@ -21037,11 +21037,11 @@ sub_810916C: @ 810916C sub_8109198: @ 8109198 push {r4-r6,lr} adds r6, r0, 0 - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] bl GetBankSide adds r4, r0, 0 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r4, 24 @@ -21049,14 +21049,14 @@ sub_8109198: @ 8109198 cmp r4, r0 bne _081091DE movs r0, 0x2 - bl GetBankByPlayerAI + bl GetBankByIdentity ldrb r1, [r5] lsls r0, 24 lsrs r0, 24 cmp r1, r0 beq _081091D6 movs r0, 0x3 - bl GetBankByPlayerAI + bl GetBankByIdentity ldrb r1, [r5] lsls r0, 24 lsrs r0, 24 @@ -21128,7 +21128,7 @@ sub_8109244: @ 8109244 strh r0, [r5, 0x2E] ldrh r0, [r5, 0x20] strh r0, [r5, 0x30] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -21164,7 +21164,7 @@ sub_810929C: @ 810929C beq _081092E4 movs r4, 0 strh r4, [r6, 0x2E] - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -21224,7 +21224,7 @@ sub_8109314: @ 8109314 cmp r0, 0x1F bne _08109330 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08109330: pop {r4} pop {r0} @@ -21274,7 +21274,7 @@ sub_8109364: @ 8109364 strh r0, [r4, 0x30] ldrh r0, [r1, 0x8] strh r0, [r4, 0x32] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 ldr r0, =sub_80A653C @@ -21371,7 +21371,7 @@ sub_810940C: @ 810940C cmp r0, r1 bne _08109458 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08109458: pop {r4} pop {r0} @@ -21407,7 +21407,7 @@ sub_8109460: @ 8109460 adds r0, r2 ldrh r0, [r0, 0x22] strh r0, [r4, 0x10] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -21785,7 +21785,7 @@ _0810979C: cmp r0, 0 bne _081097AA adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _081097AA: add sp, 0xC pop {r4,r5} @@ -21820,7 +21820,7 @@ sub_81097B4: @ 81097B4 lsls r0, 2 adds r0, r1 ldrh r4, [r0, 0x20] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -21902,7 +21902,7 @@ _0810987E: muls r1, r3 lsls r1, 16 asrs r1, 16 - ldr r0, =gUnknown_085955CE + ldr r0, =gUnknown_085955CC+2 adds r2, r0 movs r3, 0 ldrsh r2, [r2, r3] @@ -21992,7 +21992,7 @@ sub_8109930: @ 8109930 adds r0, r2 lsls r0, 16 lsrs r4, r0, 16 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -22214,7 +22214,7 @@ _08109AE0: cmp r0, 0x10 ble _08109AF4 adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08109AF4: pop {r4} pop {r0} @@ -22248,7 +22248,7 @@ _08109B18: bl StartSpriteAnim ldrh r0, [r4, 0x4] strh r0, [r5, 0x3C] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -22261,7 +22261,7 @@ _08109B48: ldr r0, =0x0000fffc _08109B4A: strh r0, [r5, 0x36] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A8328 movs r1, 0x3 @@ -22279,7 +22279,7 @@ _08109B70: ldrh r0, [r5, 0x30] adds r0, 0xC0 strh r0, [r5, 0x30] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -22356,7 +22356,7 @@ _08109BCE: lsls r0, 1 strh r0, [r5, 0x2E] strh r1, [r5, 0x30] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -22426,7 +22426,7 @@ _08109C82: .pool _08109CA4: adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08109CAA: pop {r4} pop {r0} @@ -22485,7 +22485,7 @@ _08109CC8: lsrs r0, 16 cmp r0, 0x83 bls _08109D3C - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A8328 movs r1, 0x3 @@ -22500,7 +22500,7 @@ _08109CC8: b _08109D80 .pool _08109D3C: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A8328 lsls r0, 24 @@ -22561,7 +22561,7 @@ _08109DA8: cmp r0, 0x1E bne _08109DB6 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08109DB6: pop {r4} pop {r0} @@ -22578,7 +22578,7 @@ sub_8109DBC: @ 8109DBC lsls r1, 3 ldr r0, =gTasks adds r4, r1, r0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -22590,11 +22590,11 @@ sub_8109DBC: @ 8109DBC movs r1, 0x1 _08109DE2: strh r1, [r4, 0x20] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r1, [r0] movs r0, 0x2 eors r0, r1 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 lsrs r0, 24 adds r0, 0x1 @@ -22906,7 +22906,7 @@ _0810A024: blt _0810A024 _0810A04E: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810A054: pop {r4-r7} pop {r0} @@ -22932,7 +22932,7 @@ sub_810A060: @ 810A060 movs r1, 0x10 bl BlendPalette adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask add sp, 0x10 pop {r4} pop {r0} @@ -22974,7 +22974,7 @@ _0810A0CA: adds r0, 0x1 strh r0, [r2, 0x8] ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r0, r1 ldrb r6, [r0] @@ -23059,7 +23059,7 @@ _0810A16E: strh r1, [r0, 0x24] strh r1, [r0, 0x26] adds r0, r7, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810A194: pop {r3-r5} mov r8, r3 @@ -23075,7 +23075,7 @@ _0810A194: sub_810A1A8: @ 810A1A8 push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -23119,7 +23119,7 @@ sub_810A1F8: @ 810A1F8 cmp r0, 0 beq _0810A20E adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810A20E: pop {r0} bx r0 @@ -23129,7 +23129,7 @@ _0810A20E: sub_810A214: @ 810A214 push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -23178,7 +23178,7 @@ _0810A26E: sub_810A274: @ 810A274 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -23191,7 +23191,7 @@ sub_810A274: @ 810A274 lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -23261,15 +23261,15 @@ _0810A324: beq _0810A35C b _0810A380 _0810A32E: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _0810A382 .pool _0810A338: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r6, 0x2 eors r0, r6 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 bne _0810A354 @@ -23282,21 +23282,21 @@ _0810A354: eors r4, r0 b _0810A384 _0810A35C: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] movs r4, 0x2 eors r0, r4 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0810A380 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] eors r4, r0 b _0810A384 .pool _0810A380: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _0810A382: ldrb r4, [r0] _0810A384: @@ -23417,7 +23417,7 @@ sub_810A46C: @ 810A46C strh r0, [r4, 0x2E] ldrh r0, [r4, 0x20] strh r0, [r4, 0x30] - ldr r6, =gAnimationBankTarget + ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r1, 0x2 bl sub_80A5C6C @@ -23517,7 +23517,7 @@ sub_810A4F4: @ 810A4F4 b _0810A564 _0810A55E: adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810A564: pop {r4} pop {r0} @@ -23562,7 +23562,7 @@ _0810A5A4: cmp r0, 0 bgt _0810A5B6 adds r0, r3, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810A5B6: pop {r0} bx r0 @@ -23576,7 +23576,7 @@ sub_810A5BC: @ 810A5BC lsls r0, 24 cmp r0, 0 bne _0810A5D8 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -23588,7 +23588,7 @@ _0810A5D8: negs r0, r0 strh r0, [r1, 0x2] _0810A5E0: - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -23633,11 +23633,11 @@ sub_810A628: @ 810A628 ands r0, r1 cmp r0, 0 beq _0810A64C - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget b _0810A64E .pool _0810A64C: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker _0810A64E: ldrb r6, [r0] bl IsContest @@ -23756,7 +23756,7 @@ _0810A742: cmp r0, 0 bgt _0810A754 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810A754: pop {r4} pop {r0} @@ -23812,7 +23812,7 @@ _0810A7B6: strh r0, [r4, 0x2E] ldr r0, =sub_80A64B0 str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 pop {r4,r5} @@ -23827,7 +23827,7 @@ sub_810A7DC: @ 810A7DC adds r5, r0, 0 lsls r5, 24 lsrs r5, 24 - ldr r6, =gAnimationBankTarget + ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r1, 0 bl sub_80A5C6C @@ -24012,7 +24012,7 @@ _0810A952: .pool _0810A970: mov r0, r9 - bl move_anim_task_del + bl DestroyAnimVisualTask b _0810A9BC _0810A978: cmp r7, 0 @@ -24199,7 +24199,7 @@ _0810AAE4: cmp r0, 0x33 bne _0810AAF8 adds r0, r3, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810AAF8: pop {r0} bx r0 @@ -24220,11 +24220,11 @@ sub_810AAFC: @ 810AAFC ldrsh r0, [r0, r1] cmp r0, 0 bne _0810AB28 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker b _0810AB2A .pool _0810AB28: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget _0810AB2A: ldrb r0, [r4] movs r1, 0x2 @@ -24383,7 +24383,7 @@ _0810AC78: cmp r0, 0 bne _0810AC86 adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810AC86: pop {r4-r7} pop {r0} @@ -24440,11 +24440,11 @@ sub_810ACD8: @ 810ACD8 ldrsh r0, [r0, r1] cmp r0, 0 bne _0810ACF4 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker b _0810ACF6 .pool _0810ACF4: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget _0810ACF6: ldrb r0, [r4] movs r1, 0x2 @@ -24478,11 +24478,11 @@ sub_810AD30: @ 810AD30 ldrsh r0, [r0, r1] cmp r0, 0 bne _0810AD4C - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker b _0810AD4E .pool _0810AD4C: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget _0810AD4E: ldrb r0, [r4] movs r1, 0x2 @@ -24501,7 +24501,7 @@ _0810AD4E: strh r0, [r5, 0x24] ldrh r0, [r1, 0x4] strh r0, [r5, 0x26] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 ldr r0, =sub_80A67D8 @@ -24518,7 +24518,7 @@ sub_810AD98: @ 810AD98 adds r5, r0, 0 movs r1, 0x1 bl StartSpriteAffineAnim - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -24646,7 +24646,7 @@ _0810AE90: lsrs r0, 24 movs r6, 0 strh r0, [r5, 0x26] - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -24783,7 +24783,7 @@ _0810AFA0: ands r1, r2 strb r1, [r0] adds r0, r3, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810AFC0: pop {r4-r6} pop {r0} @@ -24820,7 +24820,7 @@ _0810AFF4: _0810AFFA: b _0810B14E _0810AFFC: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -24878,7 +24878,7 @@ _0810B070: movs r0, 0x78 subs r0, r1 strh r0, [r5, 0xE] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x3 bl sub_80A5C6C @@ -24981,7 +24981,7 @@ _0810B140: cmp r0, 0 bne _0810B14E adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810B14E: pop {r4-r6} pop {r0} @@ -25124,7 +25124,7 @@ sub_810B23C: @ 810B23C beq _0810B280 b _0810B294 _0810B24E: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -25191,7 +25191,7 @@ _0810B2C8: .4byte _0810B404 .4byte _0810B414 _0810B2DC: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -25206,7 +25206,7 @@ _0810B2DC: strh r0, [r5, 0x16] movs r0, 0x4 strh r0, [r5, 0x18] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x2 bl sub_80A5C6C @@ -25228,12 +25228,12 @@ _0810B2DC: movs r0, 0xC strh r0, [r5, 0x1E] subs r0, 0x4C - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning lsls r0, 24 asrs r0, 24 strh r0, [r5, 0x20] movs r0, 0x3F - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning lsls r0, 24 asrs r0, 24 strh r0, [r5, 0x22] @@ -25338,7 +25338,7 @@ _0810B404: cmp r0, 0 bne _0810B428 adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _0810B428 _0810B414: ldrh r1, [r5, 0x1E] @@ -25539,7 +25539,7 @@ _0810B584: beq _0810B600 b _0810B60E _0810B58A: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x1 bl sub_80A5C6C @@ -25561,7 +25561,7 @@ _0810B5A4: bgt _0810B5A4 strh r1, [r5, 0x24] _0810B5B4: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -25603,7 +25603,7 @@ _0810B600: cmp r0, 0 bne _0810B60E adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810B60E: pop {r4,r5} pop {r0} @@ -25721,7 +25721,7 @@ sub_810B6C4: @ 810B6C4 ands r0, r2 orrs r0, r1 strh r0, [r5, 0x4] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -25734,7 +25734,7 @@ sub_810B6C4: @ 810B6C4 lsls r0, 24 lsrs r0, 24 mov r8, r0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -25934,7 +25934,7 @@ sub_810B848: @ 810B848 b _0810B8A6 _0810B8A0: adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810B8A6: pop {r4} pop {r0} @@ -25957,7 +25957,7 @@ sub_810B8AC: @ 810B8AC movs r0, 0xFE lsls r0, 8 strh r0, [r4, 0x36] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 ldr r1, =sub_80A634C @@ -25976,14 +25976,14 @@ sub_810B8EC: @ 810B8EC adds r4, r0, 0 movs r1, 0x1 bl sub_80A69CC - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x2 bl sub_80A5C6C lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -26003,7 +26003,7 @@ _0810B92C: adds r0, r1 strh r0, [r4, 0x32] _0810B936: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x3 bl sub_80A5C6C @@ -26015,7 +26015,7 @@ _0810B936: strh r0, [r4, 0x36] ldrh r0, [r1, 0x8] strh r0, [r4, 0x2E] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 ldr r0, =sub_80A6EEC @@ -26041,7 +26041,7 @@ sub_810B974: @ 810B974 b _0810B9C6 .pool _0810B990: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r2, r4, 0 adds r2, 0x20 @@ -26049,7 +26049,7 @@ _0810B990: adds r3, 0x22 movs r1, 0x1 bl sub_80A8924 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -26130,7 +26130,7 @@ sub_810BA24: @ 810BA24 ldrsh r0, [r6, r1] cmp r0, 0 bne _0810BA74 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -26148,7 +26148,7 @@ sub_810BA24: @ 810BA24 b _0810BA86 .pool _0810BA74: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r2, r5, 0 adds r2, 0x32 @@ -26157,7 +26157,7 @@ _0810BA74: movs r1, 0x1 bl sub_80A8924 _0810BA86: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -26277,7 +26277,7 @@ sub_810BB60: @ 810BB60 strh r5, [r4, 0x24] movs r0, 0x80 strh r0, [r4, 0x2E] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -26312,7 +26312,7 @@ _0810BB90: sub_810BBC8: @ 810BBC8 push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -26406,7 +26406,7 @@ sub_810BC4C: @ 810BC4C bge _0810BC8E _0810BC88: adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810BC8E: pop {r4} pop {r0} @@ -26431,7 +26431,7 @@ sub_810BC94: @ 810BC94 ldrsh r0, [r1, r2] cmp r0, 0 bne _0810BCE0 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -26447,7 +26447,7 @@ sub_810BC94: @ 810BC94 b _0810BCF2 .pool _0810BCE0: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r2, r5, 0 adds r2, 0x32 @@ -26456,7 +26456,7 @@ _0810BCE0: movs r1, 0x1 bl sub_80A8924 _0810BCF2: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -26619,7 +26619,7 @@ _0810BDEC: bge _0810BE42 _0810BE3C: adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810BE42: pop {r4} pop {r0} @@ -26645,7 +26645,7 @@ sub_810BE48: @ 810BE48 b _0810BEA2 .pool _0810BE6C: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r2, r4, 0 adds r2, 0x20 @@ -26653,7 +26653,7 @@ _0810BE6C: adds r3, 0x22 movs r1, 0 bl sub_80A8924 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -26686,7 +26686,7 @@ _0810BEB4: cmp r0, 0 beq _0810BEC8 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810BEC8: pop {r4,r5} pop {r0} @@ -26712,7 +26712,7 @@ sub_810BED0: @ 810BED0 b _0810BF32 .pool _0810BEF4: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] adds r2, r5, 0 adds r2, 0x20 @@ -26742,7 +26742,7 @@ _0810BF26: adds r0, r1 strh r0, [r5, 0x22] _0810BF32: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _0810BF90 .pool _0810BF40: @@ -26755,7 +26755,7 @@ _0810BF40: bl sub_80A6980 b _0810BF8E _0810BF52: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] adds r2, r5, 0 adds r2, 0x20 @@ -26785,7 +26785,7 @@ _0810BF82: adds r0, r1 strh r0, [r5, 0x22] _0810BF8E: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _0810BF90: ldrb r0, [r0] strh r0, [r5, 0x3C] @@ -26794,7 +26794,7 @@ _0810BF90: ldrsh r0, [r0, r1] cmp r0, 0 beq _0810BFA8 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 bne _0810BFB4 @@ -26806,7 +26806,7 @@ _0810BFB4: movs r0, 0x40 _0810BFB6: strh r0, [r5, 0x3A] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -26911,7 +26911,7 @@ _0810C086: b _0810C098 _0810C092: adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810C098: pop {r4} pop {r0} @@ -26934,11 +26934,11 @@ sub_810C0A0: @ 810C0A0 movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute movs r0, 0x1 movs r1, 0 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute bl IsContest lsls r0, 24 cmp r0, 0 @@ -26946,12 +26946,12 @@ sub_810C0A0: @ 810C0A0 movs r0, 0x1 movs r1, 0x3 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute _0810C0E2: - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X movs r1, 0 strh r1, [r0] - ldr r4, =gUnknown_02022E1A + ldr r4, =gBattle_BG1_Y strh r1, [r4] movs r0, 0x14 movs r1, 0 @@ -26999,7 +26999,7 @@ sub_810C164: @ 810C164 sub sp, 0x10 lsls r0, 24 lsrs r4, r0, 24 - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldr r2, =0x0000ffff adds r0, r2, 0 ldrh r2, [r1] @@ -27148,12 +27148,12 @@ _0810C29C: movs r0, 0x1 movs r1, 0x3 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute _0810C2B0: - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r1, [r0] movs r0, 0x50 movs r1, 0 @@ -27164,9 +27164,9 @@ _0810C2B0: movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810C2DA: add sp, 0x10 pop {r4,r5} @@ -27179,7 +27179,7 @@ _0810C2DA: sub_810C2F0: @ 810C2F0 push {r4,r5,lr} adds r4, r0, 0 - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -27216,11 +27216,11 @@ sub_810C324: @ 810C324 movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute movs r0, 0x1 movs r1, 0 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute bl IsContest lsls r0, 24 cmp r0, 0 @@ -27228,12 +27228,12 @@ sub_810C324: @ 810C324 movs r0, 0x1 movs r1, 0x3 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute _0810C366: - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X movs r1, 0 strh r1, [r0] - ldr r4, =gUnknown_02022E1A + ldr r4, =gBattle_BG1_Y strh r1, [r4] movs r0, 0x14 movs r1, 0 @@ -27283,7 +27283,7 @@ sub_810C3F0: @ 810C3F0 sub sp, 0x10 lsls r0, 24 lsrs r4, r0, 24 - ldr r2, =gUnknown_02022E18 + ldr r2, =gBattle_BG1_X ldr r3, =gTasks lsls r1, r4, 2 adds r1, r4 @@ -27420,12 +27420,12 @@ _0810C50C: movs r0, 0x1 movs r1, 0x3 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute _0810C520: - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r1, [r0] movs r0, 0x50 movs r1, 0 @@ -27436,9 +27436,9 @@ _0810C520: movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810C54A: add sp, 0x10 pop {r4,r5} @@ -27456,13 +27456,13 @@ sub_810C560: @ 810C560 ldr r6, =gBattleAnimArgs ldrh r0, [r6] strh r0, [r5, 0x2E] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker mov r8, r0 ldrb r0, [r0] movs r1, 0x2 bl sub_80A5C6C adds r4, r0, 0 - ldr r7, =gAnimationBankTarget + ldr r7, =gAnimBankTarget ldrb r0, [r7] movs r1, 0x2 bl sub_80A5C6C @@ -27474,7 +27474,7 @@ sub_810C560: @ 810C560 lsls r0, 8 strh r0, [r5, 0x3C] _0810C594: - ldr r3, =gBanksBySide + ldr r3, =gBanksByIdentity ldrb r0, [r7] adds r0, r3 ldrb r1, [r0] @@ -27523,7 +27523,7 @@ _0810C5F0: movs r0, 0x1 strh r0, [r5, 0x3A] _0810C5F4: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -27545,7 +27545,7 @@ _0810C5F4: ldrh r1, [r5, 0x20] adds r0, r1 strh r0, [r5, 0x30] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -27567,7 +27567,7 @@ _0810C65C: ldrh r1, [r5, 0x20] adds r0, r1 strh r0, [r5, 0x30] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0 bl sub_80A5C6C @@ -27676,7 +27676,7 @@ _0810C728: _0810C736: movs r5, 0x50 strh r5, [r4, 0x2E] - ldr r6, =gAnimationBankTarget + ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r1, 0 bl sub_80A5C6C @@ -27699,7 +27699,7 @@ _0810C736: lsls r0, 24 cmp r0, 0 bne _0810C78C - ldr r1, =gBanksBySide + ldr r1, =gBanksByIdentity ldrb r0, [r6] adds r0, r1 ldrb r1, [r0] @@ -27843,8 +27843,8 @@ _0810C85A: lsls r0, 24 cmp r0, 0 bne _0810C8B4 - ldr r1, =gBanksBySide - ldr r0, =gAnimationBankTarget + ldr r1, =gBanksByIdentity + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r0, r1 ldrb r1, [r0] @@ -28011,7 +28011,7 @@ _0810C9CE: cmp r0, 0 bne _0810C9DC adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810C9DC: pop {r4,r5} pop {r0} @@ -28050,11 +28050,11 @@ sub_810C9E4: @ 810C9E4 ldrh r0, [r4, 0x2] lsls r0, 20 lsrs r0, 24 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r5, r0, 24 adds r0, r5, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0810CAD0 @@ -28349,7 +28349,7 @@ _0810CC7C: unc_080B06FC: @ 810CC88 push {r4-r6,lr} adds r5, r0, 0 - ldr r0, =gDisableStructMoveAnim + ldr r0, =gAnimDisableStructPtr ldr r0, [r0] ldrb r1, [r0, 0x11] lsrs r0, r1, 4 @@ -28371,7 +28371,7 @@ _0810CCA6: ldr r6, =gBattleAnimArgs ldrh r0, [r6, 0x8] strh r0, [r5, 0x2E] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -28381,7 +28381,7 @@ _0810CCA6: negs r0, r0 strh r0, [r6, 0x4] _0810CCCE: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -28423,7 +28423,7 @@ sub_810CD1C: @ 810CD1C bl StartSpriteAnim ldr r0, =sub_80A67D8 str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 _0810CD3E: @@ -28515,7 +28515,7 @@ _0810CDD8: cmp r0, 0x15 bne _0810CDF6 adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810CDF6: pop {r4} pop {r0} @@ -28531,7 +28531,7 @@ sub_810CDFC: @ 810CDFC ldrb r3, [r1] lsls r3, 1 adds r3, r1 - ldr r1, =gDisableStructMoveAnim + ldr r1, =gAnimDisableStructPtr ldr r1, [r1] ldrb r1, [r1, 0x11] lsrs r2, r1, 4 @@ -28540,7 +28540,7 @@ sub_810CDFC: @ 810CDFC subs r2, r1 subs r2, 0x1 strh r2, [r3] - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool @@ -28563,7 +28563,7 @@ unc_080B08A0: @ 810CE2C strh r0, [r4, 0x2E] ldr r0, =sub_80A64B0 str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 pop {r4,r5} @@ -28581,7 +28581,7 @@ sub_810CE68: @ 810CE68 ldrsh r0, [r4, r1] cmp r0, 0x1 bne _0810CE90 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -28658,7 +28658,7 @@ _0810CF0C: strh r0, [r5, 0x2E] ldr r0, =sub_80A64B0 str r0, [r5, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 pop {r4,r5} @@ -28680,11 +28680,11 @@ sub_810CF30: @ 810CF30 mov r9, r0 cmp r1, 0 bne _0810CF54 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _0810CF56 .pool _0810CF54: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _0810CF56: ldrb r0, [r0] mov r8, r0 @@ -28771,7 +28771,7 @@ _0810D000: negs r0, r0 lsrs r4, r0, 16 _0810D012: - ldr r0, =gBanksBySide + ldr r0, =gBanksByIdentity add r0, r8 ldrb r1, [r0] adds r0, r7, 0 @@ -28875,7 +28875,7 @@ sub_810D0B8: @ 810D0B8 bl DestroySprite _0810D0F4: adds r0, r5, 0 - bl move_anim_8072740 + bl DestroyAnimSprite b _0810D104 .pool _0810D100: @@ -28960,7 +28960,7 @@ sub_810D164: @ 810D164 strh r6, [r5, 0x24] ldr r0, =sub_80A6EEC str r0, [r5, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 _0810D1A4: @@ -28974,10 +28974,10 @@ _0810D1A4: sub_810D1B4: @ 810D1B4 push {r4-r6,lr} adds r6, r0, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r1, [r0] movs r0, 0x2 - ldr r2, =gAnimationBankTarget + ldr r2, =gAnimBankTarget eors r0, r1 ldrb r1, [r2] cmp r0, r1 @@ -28997,7 +28997,7 @@ _0810D1E0: adds r0, r6, 0 movs r1, 0x1 bl sub_80A6980 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -29059,7 +29059,7 @@ sub_810D240: @ 810D240 b _0810D272 _0810D26C: adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810D272: pop {r4} pop {r0} @@ -29105,7 +29105,7 @@ sub_810D2B0: @ 810D2B0 strh r0, [r4, 0x2E] ldr r0, =sub_80A64B0 str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 pop {r4} @@ -29146,7 +29146,7 @@ sub_810D308: @ 810D308 bne _0810D34C movs r0, 0x6 strh r0, [r5, 0x2E] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -29178,7 +29178,7 @@ sub_810D360: @ 810D360 strh r1, [r0, 0x2E] ldr r1, =sub_80A64B0 str r1, [r0, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite bl StoreSpriteCallbackInData6 pop {r0} bx r0 @@ -29251,7 +29251,7 @@ _0810D3F6: cmp r0, 0x78 ble _0810D404 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810D404: pop {r4} pop {r0} @@ -29267,11 +29267,11 @@ sub_810D40C: @ 810D40C ldrsh r0, [r0, r1] cmp r0, 0 bne _0810D428 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker b _0810D42A .pool _0810D428: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget _0810D42A: ldrb r0, [r4] movs r1, 0 @@ -29332,7 +29332,7 @@ _0810D48E: cmp r0, 0 bne _0810D4AA adds r0, r1, 0 - bl move_anim_8072740 + bl DestroyAnimSprite b _0810D4EC _0810D4AA: ldrh r0, [r1, 0x2E] @@ -29370,7 +29370,7 @@ _0810D4DA: cmp r0, 0 bne _0810D4EC adds r0, r1, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810D4EC: pop {r0} bx r0 @@ -29386,7 +29386,7 @@ sub_810D4F4: @ 810D4F4 ldrsh r0, [r6, r1] cmp r0, 0 bne _0810D520 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl sub_80A5C6C @@ -29397,7 +29397,7 @@ sub_810D4F4: @ 810D4F4 b _0810D532 .pool _0810D520: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0 bl sub_80A5C6C @@ -29473,7 +29473,7 @@ _0810D5C0: b _0810D5CE _0810D5C6: adds r0, r5, 0 - bl move_anim_8072740 + bl DestroyAnimSprite b _0810D5D2 _0810D5CE: ldr r0, =sub_810D5DC @@ -29505,7 +29505,7 @@ sub_810D5DC: @ 810D5DC cmp r0, 0x28 ble _0810D604 adds r0, r1, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810D604: pop {r0} bx r0 @@ -29533,7 +29533,7 @@ sub_810D608: @ 810D608 lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl sub_80A8328 movs r1, 0x3 @@ -29545,11 +29545,11 @@ sub_810D608: @ 810D608 ands r0, r2 orrs r0, r1 strb r0, [r5, 0x5] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget b _0810D680 .pool _0810D664: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A8328 movs r1, 0x3 @@ -29561,7 +29561,7 @@ _0810D664: ands r0, r2 orrs r0, r1 strb r0, [r5, 0x5] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker _0810D680: ldrb r0, [r0] strh r0, [r5, 0x3C] @@ -29704,7 +29704,7 @@ sub_810D770: @ 810D770 cmp r4, r0 bge _0810D7BA adds r0, r7, 0 - bl move_anim_8072740 + bl DestroyAnimSprite b _0810D818 _0810D7BA: ldrh r0, [r7, 0x2E] @@ -29712,7 +29712,7 @@ _0810D7BA: strh r0, [r7, 0x2E] b _0810D818 _0810D7C2: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -29725,7 +29725,7 @@ _0810D7C2: adds r5, r0, 0 lsls r5, 24 lsrs r5, 24 - ldr r2, =gAnimationBankTarget + ldr r2, =gAnimBankTarget mov r8, r2 ldrb r0, [r2] movs r1, 0x2 @@ -29793,7 +29793,7 @@ sub_810D830: @ 810D830 ble _0810D870 _0810D86A: adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810D870: pop {r0} bx r0 @@ -29821,15 +29821,15 @@ sub_810D874: @ 810D874 lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r4, [r0] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _0810D8BE .pool _0810D8B8: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r4, [r0] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _0810D8BE: ldrb r0, [r0] bl sub_80A8328 @@ -29893,7 +29893,7 @@ _0810D918: strh r0, [r5, 0x36] adds r0, r5, 0 bl obj_translate_based_on_private_1_2_3_4 - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 ldr r0, =sub_80A6F98 @@ -29915,7 +29915,7 @@ sub_810D960: @ 810D960 cmp r1, r0 bne _0810D976 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810D976: ldrh r0, [r4, 0x2E] adds r0, 0x1 @@ -29929,7 +29929,7 @@ _0810D976: sub_810D984: @ 810D984 push {r4-r6,lr} adds r5, r0, 0 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -29951,7 +29951,7 @@ sub_810D984: @ 810D984 strh r0, [r5, 0x34] ldrh r0, [r1, 0x4] strh r0, [r5, 0x36] - ldr r0, =gUnknown_02038432 + ldr r0, =gAnimMoveTurn ldrb r6, [r0] ldrb r0, [r4] bl GetBankSide @@ -30018,7 +30018,7 @@ _0810DA34: bl StartSpriteAnim b _0810DA5E _0810DA48: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -30030,7 +30030,7 @@ _0810DA48: _0810DA5E: ldr r0, =sub_80A67D8 str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 pop {r4} @@ -30067,7 +30067,7 @@ sub_810DA7C: @ 810DA7C cmp r0, 0x28 ble _0810DAB6 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810DAB6: pop {r4} pop {r0} @@ -30128,13 +30128,13 @@ _0810DB1A: ldrh r1, [r4, 0x1C] adds r0, r1 strh r0, [r4, 0x1C] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 cmp r0, 0 bne _0810DB50 - ldr r1, =gUnknown_02022E20 + ldr r1, =gBattle_BG3_X ldrh r0, [r4, 0x1A] lsls r0, 16 asrs r0, 24 @@ -30145,7 +30145,7 @@ _0810DB1A: b _0810DB60 .pool _0810DB50: - ldr r2, =gUnknown_02022E20 + ldr r2, =gBattle_BG3_X ldrh r1, [r4, 0x1A] lsls r1, 16 asrs r1, 24 @@ -30154,7 +30154,7 @@ _0810DB50: strh r0, [r2] adds r7, r2, 0 _0810DB60: - ldr r3, =gUnknown_02022E22 + ldr r3, =gBattle_BG3_Y ldrh r2, [r4, 0x1C] lsls r0, r2, 16 asrs r0, 24 @@ -30179,7 +30179,7 @@ _0810DB60: movs r0, 0x1 bl sub_80A6DAC adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810DB98: pop {r4-r7} pop {r0} @@ -30205,7 +30205,7 @@ _0810DBC2: bl sub_80A69CC ldrh r0, [r4, 0x4] strh r0, [r5, 0x2E] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -30239,7 +30239,7 @@ sub_810DC10: @ 810DC10 cmp r0, 0 beq _0810DC24 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810DC24: pop {r4} pop {r0} @@ -30263,7 +30263,7 @@ _0810DC44: adds r0, r4, 0 movs r1, 0x1 bl sub_80A69CC - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] mov r6, sp adds r6, 0x2 @@ -30271,7 +30271,7 @@ _0810DC44: mov r2, sp adds r3, r6, 0 bl sub_80A8924 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -30314,7 +30314,7 @@ sub_810DCB4: @ 810DCB4 cmp r0, 0 beq _0810DCC8 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810DCC8: pop {r4} pop {r0} @@ -30378,7 +30378,7 @@ sub_810DD24: @ 810DD24 cmp r0, 0 bne _0810DD4A adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810DD4A: pop {r4} pop {r0} @@ -30389,7 +30389,7 @@ _0810DD4A: sub_810DD50: @ 810DD50 push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r2, r4, 0 adds r2, 0x20 @@ -30397,7 +30397,7 @@ sub_810DD50: @ 810DD50 adds r3, 0x22 movs r1, 0x1 bl sub_80A8924 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -30426,7 +30426,7 @@ _0810DD7C: strh r1, [r4, 0x36] ldr r0, =sub_80A6EEC str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 pop {r4} @@ -30450,7 +30450,7 @@ sub_810DDC4: @ 810DDC4 b _0810DE16 .pool _0810DDE0: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r2, r4, 0 adds r2, 0x20 @@ -30458,7 +30458,7 @@ _0810DDE0: adds r3, 0x22 movs r1, 0x1 bl sub_80A8924 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -30514,7 +30514,7 @@ sub_810DE2C: @ 810DE2C cmp r0, 0 beq _0810DE68 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810DE68: pop {r4} pop {r0} @@ -30569,7 +30569,7 @@ sub_810DE98: @ 810DE98 cmp r0, 0x47 bne _0810DED2 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810DED2: pop {r4} pop {r0} @@ -30666,7 +30666,7 @@ _0810DF76: cmp r1, 0 bne _0810DF90 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810DF90: pop {r4-r7} pop {r0} @@ -30680,7 +30680,7 @@ sub_810DFA8: @ 810DFA8 adds r6, r0, 0 movs r1, 0x1 bl sub_80A69CC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -30696,7 +30696,7 @@ _0810DFC8: strh r0, [r6, 0x2E] ldrh r0, [r6, 0x20] strh r0, [r6, 0x30] - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -30737,7 +30737,7 @@ sub_810E028: @ 810E028 cmp r0, 0 beq _0810E03C adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810E03C: pop {r4} pop {r0} @@ -30748,7 +30748,7 @@ _0810E03C: sub_810E044: @ 810E044 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -30805,7 +30805,7 @@ _0810E088: ldrsh r0, [r2, r3] cmp r0, 0 bne _0810E0EC - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -30821,7 +30821,7 @@ _0810E088: b _0810E0FE .pool _0810E0EC: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r2, r5, 0 adds r2, 0x32 @@ -30841,7 +30841,7 @@ _0810E0FE: strh r0, [r5, 0x36] ldr r0, =sub_80A6EEC str r0, [r5, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 ldrb r1, [r4, 0xA] @@ -30919,7 +30919,7 @@ _0810E1AA: cmp r0, r1 bge _0810E1C2 adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810E1C2: pop {r0} bx r0 @@ -30929,7 +30929,7 @@ _0810E1C2: sub_810E1C8: @ 810E1C8 push {r4,r5,lr} adds r5, r0, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -30955,7 +30955,7 @@ _0810E1FE: strh r0, [r5, 0x2E] ldrh r0, [r5, 0x20] strh r0, [r5, 0x30] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -31036,7 +31036,7 @@ _0810E296: ands r0, r2 strb r0, [r1] adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810E2BC: pop {r4} pop {r0} @@ -31099,11 +31099,11 @@ sub_810E314: @ 810E314 ands r0, r1 cmp r0, 0 beq _0810E33C - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _0810E33E .pool _0810E33C: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _0810E33E: ldrb r6, [r0] adds r0, r6, 0 @@ -32049,7 +32049,7 @@ _0810EA36: sub_810EA4C: @ 810EA4C push {r4,r5,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A8328 movs r1, 0x3 @@ -32061,7 +32061,7 @@ sub_810EA4C: @ 810EA4C ands r0, r2 orrs r0, r1 strb r0, [r4, 0x5] - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -32106,7 +32106,7 @@ _0810EAC4: ldrsh r0, [r4, r2] cmp r0, 0 bne _0810EADC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -32117,7 +32117,7 @@ _0810EADC: ldrsh r0, [r4, r1] cmp r0, 0x1 bne _0810EAF8 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -32189,7 +32189,7 @@ _0810EB6A: cmp r0, r1 bne _0810EB82 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810EB82: pop {r4} pop {r0} @@ -32237,7 +32237,7 @@ sub_810EB88: @ 810EB88 strh r0, [r4, 0x6] ldr r0, =gUnknown_085973E8 mov r8, r0 - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -32263,7 +32263,7 @@ _0810EC02: cmp r0, 0xFF ble _0810EC16 adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810EC16: pop {r3} mov r8, r3 @@ -32316,7 +32316,7 @@ _0810EC78: cmp r0, 0 beq _0810EC8C adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810EC8C: pop {r4} pop {r0} @@ -32341,7 +32341,7 @@ _0810ECAA: beq _0810ECE0 b _0810ED1E _0810ECB0: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x1 bl sub_80A5C6C @@ -32394,7 +32394,7 @@ _0810ECE0: ands r0, r2 strb r0, [r1] adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810ED1E: pop {r4} pop {r0} @@ -32521,7 +32521,7 @@ _0810EE00: cmp r0, 0 ble _0810EE0E adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810EE0E: pop {r0} bx r0 @@ -32545,11 +32545,11 @@ _0810EE28: ldrsh r0, [r0, r2] cmp r0, 0 bne _0810EE40 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker b _0810EE42 .pool _0810EE40: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget _0810EE42: ldrb r0, [r4] movs r1, 0 @@ -32631,7 +32631,7 @@ _0810EECC: adds r0, r5, 0 bl sub_80A749C adds r0, r5, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810EEEC: add sp, 0x4 pop {r4,r5} @@ -32700,11 +32700,11 @@ _0810EF60: ldrsh r0, [r2, r1] cmp r0, 0 bne _0810EF74 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker b _0810EF76 .pool _0810EF74: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget _0810EF76: ldrb r0, [r4] movs r1, 0 @@ -32773,7 +32773,7 @@ _0810EFEA: cmp r0, 0x1F bne _0810EFFE adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810EFFE: pop {r4} pop {r0} @@ -32845,7 +32845,7 @@ _0810F02A: b _0810F07E _0810F078: adds r0, r3, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810F07E: pop {r0} bx r0 @@ -32861,7 +32861,7 @@ sub_810F084: @ 810F084 mov r8, r0 ldrh r4, [r0, 0x20] ldrh r5, [r0, 0x22] - ldr r6, =gAnimationBankAttacker + ldr r6, =gAnimBankAttacker ldrb r0, [r6] movs r1, 0x2 bl sub_80A5C6C @@ -33021,7 +33021,7 @@ _0810F1BC: _0810F1DA: strb r0, [r1] adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -33038,7 +33038,7 @@ sub_810F1EC: @ 810F1EC lsls r0, 24 lsrs r0, 24 mov r8, r0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -33064,12 +33064,12 @@ _0810F212: bne _0810F2B8 _0810F22E: movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r4, r0, 24 adds r7, r4, 0 adds r0, r4, 0 - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 movs r1, 0x1 @@ -33078,7 +33078,7 @@ _0810F22E: orrs r1, r0 lsrs r6, r1, 31 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0810F264 @@ -33091,7 +33091,7 @@ _0810F264: adds r4, r0, 0 eors r4, r7 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0810F284 @@ -33105,11 +33105,11 @@ _0810F284: mov r0, r8 cmp r0, 0 bne _0810F2B8 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0810F2B8 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -33126,7 +33126,7 @@ _0810F2B0: movs r0, 0x28 b _0810F2F2 _0810F2B8: - ldr r6, =gAnimationBankAttacker + ldr r6, =gAnimBankAttacker ldrb r0, [r6] bl GetBankSide lsls r0, 24 @@ -33193,7 +33193,7 @@ sub_810F340: @ 810F340 push {r4,r5,lr} adds r5, r0, 0 movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r4, r0, 24 movs r1, 0x3C @@ -33205,7 +33205,7 @@ sub_810F340: @ 810F340 b _0810F3B6 _0810F35C: adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0810F382 @@ -33226,7 +33226,7 @@ _0810F382: movs r0, 0x2 eors r4, r0 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0810F3AC @@ -33370,12 +33370,12 @@ sub_810F46C: @ 810F46C cmp r0, 0 bne _0810F502 movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r4, r0, 24 adds r6, r4, 0 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0810F4D4 @@ -33398,7 +33398,7 @@ _0810F4D4: adds r4, r0, 0 eors r4, r6 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0810F502 @@ -33441,11 +33441,11 @@ sub_810F524: @ 810F524 cmp r0, 0 bne _0810F57C movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 adds r4, r0, 0 - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 movs r1, 0x1 @@ -33454,7 +33454,7 @@ sub_810F524: @ 810F524 orrs r1, r0 lsrs r5, r1, 31 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0810F562 @@ -33464,7 +33464,7 @@ _0810F562: movs r0, 0x2 eors r4, r0 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0810F57C @@ -33473,7 +33473,7 @@ _0810F562: adds r0, r5, 0 bl sub_80A477C _0810F57C: - ldr r0, =move_anim_8072740 + ldr r0, =DestroyAnimSprite str r0, [r6, 0x1C] pop {r4-r6} pop {r0} @@ -33501,11 +33501,11 @@ _0810F5A6: lsls r0, 24 cmp r0, 0 bne _0810F5EE - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0810F5EE - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -33568,7 +33568,7 @@ _0810F62C: sub_810F634: @ 810F634 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -33608,7 +33608,7 @@ _0810F684: movs r0, 0x1 _0810F692: strh r0, [r5, 0x30] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 ldr r0, =sub_80A67D8 @@ -33623,7 +33623,7 @@ _0810F692: sub_810F6B0: @ 810F6B0 push {r4-r7,lr} adds r5, r0, 0 - ldr r6, =gAnimationBankAttacker + ldr r6, =gAnimBankAttacker ldrb r0, [r6] movs r1, 0x1 bl sub_80A861C @@ -33756,7 +33756,7 @@ _0810F7B4: cmp r0, r1 bne _0810F7CC adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810F7CC: pop {r4} pop {r0} @@ -33805,7 +33805,7 @@ sub_810F810: @ 810F810 cmp r0, 0 bne _0810F830 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810F830: pop {r4} pop {r0} @@ -33831,7 +33831,7 @@ sub_810F83C: @ 810F83C strh r0, [r4, 0x8] strh r1, [r4, 0xA] strh r1, [r4, 0xC] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -33930,7 +33930,7 @@ _0810F900: ldrb r0, [r4, 0x8] bl sub_80A7344 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810F936: pop {r4,r5} pop {r0} @@ -33952,7 +33952,7 @@ sub_810F940: @ 810F940 movs r0, 0x10 strh r0, [r5, 0xE] strh r1, [r5, 0x10] - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -34203,7 +34203,7 @@ _0810FB44: movs r1, 0 bl SetGpuReg adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810FB5A: pop {r4-r6} pop {r0} @@ -34241,7 +34241,7 @@ _0810FB8A: cmp r1, r0 bne _0810FB9C adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0810FB9C: ldrh r0, [r4, 0x30] adds r0, 0x1 @@ -34260,7 +34260,7 @@ sub_810FBA8: @ 810FBA8 ldrsh r0, [r6, r1] cmp r0, 0 bne _0810FBD4 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -34305,7 +34305,7 @@ sub_810FBF0: @ 810FBF0 bne _0810FC60 ldr r0, =0x0000fff6 strh r0, [r5, 0x1C] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x5 bl sub_80A861C @@ -34316,7 +34316,7 @@ sub_810FBF0: @ 810FBF0 bl sub_80A861C adds r0, 0x8 strh r0, [r5, 0x20] - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x5 bl sub_80A861C @@ -34331,7 +34331,7 @@ sub_810FBF0: @ 810FBF0 _0810FC60: movs r0, 0xA strh r0, [r5, 0x1C] - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x4 bl sub_80A861C @@ -34342,7 +34342,7 @@ _0810FC60: bl sub_80A861C subs r0, 0x8 strh r0, [r5, 0x20] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x4 bl sub_80A861C @@ -34357,7 +34357,7 @@ _0810FC94: bne _0810FCE8 ldr r0, =0x0000fff6 strh r0, [r5, 0x1C] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x4 bl sub_80A861C @@ -34368,7 +34368,7 @@ _0810FC94: bl sub_80A861C adds r0, 0x8 strh r0, [r5, 0x20] - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x4 bl sub_80A861C @@ -34383,7 +34383,7 @@ _0810FC94: _0810FCE8: movs r0, 0xA strh r0, [r5, 0x1C] - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x5 bl sub_80A861C @@ -34394,7 +34394,7 @@ _0810FCE8: bl sub_80A861C subs r0, 0x8 strh r0, [r5, 0x20] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x5 bl sub_80A861C @@ -34497,7 +34497,7 @@ _0810FDD4: cmp r0, 0x11 ble _0810FDE8 adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0810FDE8: pop {r4,r5} pop {r0} @@ -34535,7 +34535,7 @@ sub_810FE14: @ 810FE14 lsls r1, 3 ldr r0, =gTasks adds r4, r1, r0 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl sub_80A6190 lsls r0, 24 @@ -34590,21 +34590,21 @@ _0810FE86: movs r0, 0 strh r0, [r4, 0x24] _0810FE92: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _0810FEB8 - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X ldrh r0, [r0] strh r0, [r4, 0x1C] ldr r0, =0x04000014 b _0810FEC0 .pool _0810FEB8: - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X ldrh r0, [r0] strh r0, [r4, 0x1C] ldr r0, =0x04000018 @@ -34786,7 +34786,7 @@ _08110014: .pool _08110020: adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08110026: pop {r3,r4} mov r8, r3 @@ -34819,7 +34819,7 @@ sub_8110034: @ 8110034 cmp r6, 0xFF bne _0811006C adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _08110116 .pool _0811006C: @@ -34835,7 +34835,7 @@ _0811006C: adds r0, r5, 0 bl FreeOamMatrix mov r0, r8 - bl move_anim_task_del + bl DestroyAnimVisualTask b _08110116 .pool _08110094: @@ -35035,7 +35035,7 @@ _08110228: lsrs r0, 24 bl FreeOamMatrix adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08110238: pop {r4,r5} pop {r0} @@ -35062,7 +35062,7 @@ _08110256: beq _0811034A b _08110360 _08110260: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl sub_80A5C6C @@ -35110,7 +35110,7 @@ _081102B8: beq _08110360 movs r0, 0x40 negs r0, r0 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 @@ -35181,7 +35181,7 @@ _0811034A: movs r1, 0 bl SetGpuReg adds r0, r5, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08110360: pop {r4,r5} pop {r0} @@ -35209,7 +35209,7 @@ sub_8110368: @ 8110368 b _081103C4 .pool _08110394: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -35232,7 +35232,7 @@ _08110394: negs r0, r0 strh r0, [r1] _081103C4: - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A60AC @@ -35270,7 +35270,7 @@ _081103C4: strh r0, [r6, 0x36] ldr r0, =sub_80A6EEC str r0, [r6, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r6, 0 bl StoreSpriteCallbackInData6 pop {r4-r6} @@ -35297,7 +35297,7 @@ sub_8110438: @ 8110438 b _08110478 .pool _0811045C: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -35311,7 +35311,7 @@ _0811045C: negs r1, r1 strh r1, [r0] _08110478: - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A60AC @@ -35345,7 +35345,7 @@ _08110478: strh r0, [r6, 0x36] ldr r0, =sub_80A6EEC str r0, [r6, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r6, 0 bl StoreSpriteCallbackInData6 pop {r4-r6} @@ -35384,7 +35384,7 @@ _08110500: ldrsh r0, [r1, r2] cmp r0, 0 bne _08110548 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -35400,7 +35400,7 @@ _08110500: b _0811055A .pool _08110548: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r2, r5, 0 adds r2, 0x32 @@ -35431,7 +35431,7 @@ sub_811057C: @ 811057C cmp r0, 0 beq _08110592 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite b _081105AE _08110592: movs r1, 0x3A @@ -35457,7 +35457,7 @@ _081105AE: sub_81105B4: @ 81105B4 push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r2, r4, 0 adds r2, 0x20 @@ -35465,7 +35465,7 @@ sub_81105B4: @ 81105B4 adds r3, 0x22 movs r1, 0 bl sub_80A8924 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -35490,7 +35490,7 @@ _081105FC: ldrh r1, [r4, 0x22] adds r0, r1 strh r0, [r4, 0x22] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -35545,7 +35545,7 @@ _08110664: cmp r0, 0x33 bne _08110678 adds r0, r3, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08110678: pop {r0} bx r0 @@ -35633,7 +35633,7 @@ sub_8110700: @ 8110700 movs r1, 0 bl SetGpuReg adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite pop {r4} pop {r0} bx r0 @@ -35655,7 +35655,7 @@ sub_8110720: @ 8110720 b _08110762 .pool _08110740: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -35676,11 +35676,11 @@ _08110762: lsls r0, 24 cmp r0, 0 bne _081107B2 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide adds r4, r0, 0 - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] bl GetBankSide lsls r4, 24 @@ -35712,7 +35712,7 @@ _081107B2: adds r0, r7, 0 movs r1, 0x1 bl sub_80A69CC - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -35764,7 +35764,7 @@ _081107B2: strh r5, [r7, 0x36] ldr r0, =sub_80A6EEC str r0, [r7, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r7, 0 bl StoreSpriteCallbackInData6 add sp, 0x4 @@ -35780,7 +35780,7 @@ sub_8110850: @ 8110850 adds r6, r0, 0 movs r1, 0x1 bl sub_80A69CC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -35794,7 +35794,7 @@ _08110870: ldr r4, =gBattleAnimArgs ldrh r0, [r4, 0x8] strh r0, [r6, 0x2E] - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -35849,7 +35849,7 @@ sub_81108CC: @ 81108CC cmp r0, 0 beq _081108F8 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite b _08110988 _081108F8: movs r0, 0x2E @@ -35941,11 +35941,11 @@ sub_8110994: @ 8110994 ldrsh r0, [r0, r1] cmp r0, 0 bne _081109B0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker b _081109B2 .pool _081109B0: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget _081109B2: ldrb r0, [r4] movs r1, 0x2 @@ -35980,7 +35980,7 @@ sub_81109F0: @ 81109F0 ldrsh r0, [r6, r1] cmp r0, 0 beq _08110A10 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r2, r5, 0 adds r2, 0x20 @@ -36064,7 +36064,7 @@ sub_8110AB4: @ 8110AB4 bl StartSpriteAnim adds r0, r5, 0 bl AnimateSprite - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -36183,7 +36183,7 @@ sub_8110B80: @ 8110B80 cmp r0, r1 bne _08110BC6 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08110BC6: pop {r4} pop {r0} @@ -36207,11 +36207,11 @@ sub_8110BCC: @ 8110BCC movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute movs r0, 0x1 movs r1, 0 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute bl IsContest lsls r0, 24 cmp r0, 0 @@ -36219,11 +36219,11 @@ sub_8110BCC: @ 8110BCC movs r0, 0x1 movs r1, 0x3 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute _08110C10: - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r5, [r0] - ldr r4, =gUnknown_02022E1A + ldr r4, =gBattle_BG1_Y strh r5, [r4] movs r0, 0x14 movs r1, 0 @@ -36254,7 +36254,7 @@ _08110C10: ldrsh r0, [r0, r1] cmp r0, 0 beq _08110C6E - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -36293,7 +36293,7 @@ sub_8110CB0: @ 8110CB0 adds r2, r1, 0 cmp r0, 0 bne _08110CE4 - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldr r3, =0x0000fffa adds r0, r3, 0 ldrh r3, [r1] @@ -36301,12 +36301,12 @@ sub_8110CB0: @ 8110CB0 b _08110CEA .pool _08110CE4: - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldrh r0, [r1] adds r0, 0x6 _08110CEA: strh r0, [r1] - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y ldr r3, =0x0000ffff adds r0, r3, 0 ldrh r3, [r1] @@ -36440,12 +36440,12 @@ _08110DFC: movs r0, 0x1 movs r1, 0x3 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute _08110E10: - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r1, [r0] movs r0, 0x50 movs r1, 0 @@ -36456,9 +36456,9 @@ _08110E10: movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08110E3A: add sp, 0x10 pop {r4,r5} @@ -36480,7 +36480,7 @@ sub_8110E4C: @ 8110E4C ldrsh r0, [r4, r2] cmp r0, 0 beq _08110E98 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -36568,7 +36568,7 @@ _08110F0E: cmp r0, r1 bge _08110F24 _08110F20: - ldr r0, =move_anim_8072740 + ldr r0, =DestroyAnimSprite str r0, [r5, 0x1C] _08110F24: pop {r4,r5} @@ -36597,7 +36597,7 @@ sub_8110F30: @ 8110F30 strh r0, [r4, 0x36] ldr r0, =sub_80A6EEC str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 pop {r4,r5} @@ -36620,7 +36620,7 @@ sub_8110F74: @ 8110F74 lsls r1, 3 ldr r0, =gTasks adds r6, r1, r0 - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -36636,7 +36636,7 @@ sub_8110F74: @ 8110F74 lsls r1, 13 adds r0, r1 lsrs r7, r0, 16 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -36713,13 +36713,13 @@ _0811101E: strh r4, [r6, 0x16] movs r0, 0x40 negs r0, r0 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r4, r0, 0 lsls r4, 24 asrs r4, 8 lsrs r4, 16 movs r0, 0x3F - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning lsls r0, 24 strh r4, [r6, 0x22] asrs r0, 24 @@ -36926,7 +36926,7 @@ _081111FE: cmp r0, 0 bne _0811120C adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0811120C: pop {r4} pop {r0} @@ -37090,7 +37090,7 @@ _0811134E: thumb_func_start sub_811135C sub_811135C: @ 811135C push {lr} - ldr r0, =gDisableStructMoveAnim + ldr r0, =gAnimDisableStructPtr ldr r0, [r0] ldrb r1, [r0, 0x11] lsrs r0, r1, 4 @@ -37183,7 +37183,7 @@ _08111400: cmp r0, 0 bne _08111412 adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08111412: pop {r0} bx r0 @@ -37193,7 +37193,7 @@ _08111412: sub_8111418: @ 8111418 push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -37216,7 +37216,7 @@ _08111434: sub_8111444: @ 8111444 push {r4,r5,lr} adds r4, r0, 0 - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0 bl sub_80A5C6C @@ -37286,7 +37286,7 @@ sub_811149C: @ 811149C cmp r0, 0x8C ble _081114E6 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081114E6: pop {r4} pop {r0} @@ -37298,7 +37298,7 @@ sub_81114EC: @ 81114EC push {lr} lsls r0, 24 lsrs r3, r0, 24 - ldr r2, =gMoveDmgMoveAnim + ldr r2, =gAnimMoveDmg ldr r0, [r2] cmp r0, 0x20 bgt _08111500 @@ -37322,7 +37322,7 @@ _08111510: strh r0, [r1, 0xE] _0811151A: adds r0, r3, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool @@ -37347,7 +37347,7 @@ sub_811152C: @ 811152C movs r0, 0xC8 strh r0, [r5, 0xA] _0811154E: - ldr r4, =gUnknown_02022E22 + ldr r4, =gBattle_BG3_Y movs r1, 0xA ldrsh r0, [r5, r1] movs r1, 0xA @@ -37365,7 +37365,7 @@ _0811154E: movs r0, 0x1 bl sub_80A6DAC adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0811157A: ldrh r0, [r5, 0x8] adds r0, 0x1 @@ -37396,7 +37396,7 @@ sub_8111590: @ 8111590 ldrh r0, [r4, 0x8] adds r0, 0x1 strh r0, [r4, 0x8] - ldr r0, =gUnknown_02022E22 + ldr r0, =gBattle_BG3_Y ldrh r0, [r0] strh r0, [r4, 0xC] _081115BC: @@ -37405,7 +37405,7 @@ _081115BC: movs r1, 0xFF ands r0, r1 strh r0, [r4, 0xA] - ldr r6, =gUnknown_02022E22 + ldr r6, =gBattle_BG3_Y movs r2, 0xA ldrsh r1, [r4, r2] movs r0, 0x4 @@ -37424,7 +37424,7 @@ _081115BC: movs r0, 0x1 bl sub_80A6DAC adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _081115F4: pop {r4-r6} pop {r0} @@ -37443,7 +37443,7 @@ sub_811160C: @ 811160C strh r0, [r4, 0x2E] ldrh r0, [r4, 0x20] strh r0, [r4, 0x30] - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -37748,7 +37748,7 @@ _08111852: cmp r0, 0x3D bne _08111884 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08111884: pop {r4} pop {r0} @@ -37902,7 +37902,7 @@ _081119BC: adds r0, r1, 0 bl sub_80A7344 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask movs r0, 0x50 movs r1, 0 bl SetGpuReg @@ -37925,7 +37925,7 @@ sub_81119E0: @ 81119E0 adds r4, r0, 0 ldrh r5, [r4, 0x20] ldrh r6, [r4, 0x22] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker mov r8, r0 ldrb r0, [r0] movs r1, 0x2 @@ -38042,7 +38042,7 @@ _08111AD2: lsls r0, 16 cmp r0, 0 bgt _08111B96 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -38104,7 +38104,7 @@ _08111B3C: lsls r0, 16 cmp r0, 0 bgt _08111B96 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -38223,7 +38223,7 @@ _08111C38: cmp r6, 0 beq _08111C44 adds r0, r3, 0 - bl move_anim_8072740 + bl DestroyAnimSprite b _08111C4A _08111C44: ldrh r0, [r3, 0x30] @@ -38254,7 +38254,7 @@ sub_8111C50: @ 8111C50 cmp r0, 0 bge _08111C80 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _08111D5C .pool _08111C80: @@ -38285,7 +38285,7 @@ _08111C80: adds r0, r4 movs r1, 0x50 strh r1, [r0, 0x2E] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -38470,7 +38470,7 @@ _08111E1C: b _08111E48 _08111E42: adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08111E48: pop {r4} pop {r0} @@ -38510,9 +38510,9 @@ sub_8111E78: @ 8111E78 lsls r0, 3 ldr r1, =gTasks adds r5, r0, r1 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r6, r0, 24 movs r1, 0x26 @@ -38557,7 +38557,7 @@ _08111ED0: bl FreeSpritePaletteByTag _08111EFE: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _081120CC .pool _08111F0C: @@ -38602,9 +38602,9 @@ _08111F0C: adds r2, r0 lsls r2, 2 adds r2, r4 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] ldr r1, [r1] lsls r0, 2 @@ -38864,9 +38864,9 @@ sub_8112170: @ 8112170 lsls r0, 3 ldr r1, =gTasks adds r4, r0, r1 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r6, r0, 24 movs r1, 0x26 @@ -38956,7 +38956,7 @@ _08112248: bl SetGpuRegBits _08112252: adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08112258: ldrh r0, [r4, 0x26] adds r0, 0x1 @@ -38979,7 +38979,7 @@ sub_8112264: @ 8112264 ldrsh r0, [r0, r1] cmp r0, 0 bne _081122AC - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl sub_80A5C6C @@ -38994,11 +38994,11 @@ sub_8112264: @ 8112264 lsls r2, 13 adds r0, r2 lsrs r5, r0, 16 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget b _081122D0 .pool _081122AC: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0 bl sub_80A5C6C @@ -39013,7 +39013,7 @@ _081122AC: lsls r2, 13 adds r0, r2 lsrs r5, r0, 16 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker _081122D0: ldrb r0, [r4] movs r1, 0 @@ -39166,7 +39166,7 @@ sub_81123C4: @ 81123C4 ldr r2, =gBattleAnimArgs ldrh r0, [r2] strh r0, [r1, 0x1C] - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -39189,7 +39189,7 @@ _08112434: _08112436: lsls r1, r4, 16 asrs r3, r1, 16 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r2, [r0] str r1, [sp, 0x10] cmp r3, r2 @@ -39201,7 +39201,7 @@ _08112436: lsls r0, r4, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _08112502 @@ -39565,7 +39565,7 @@ _0811273C: movs r1, 0 bl SetGpuReg adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08112752: pop {r4,r5} pop {r0} @@ -39577,10 +39577,10 @@ sub_8112758: @ 8112758 push {r4-r7,lr} lsls r0, 24 lsrs r7, r0, 24 - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r1, [r0] ldr r1, =0x00003f3f movs r0, 0x48 @@ -39594,7 +39594,7 @@ sub_8112758: @ 8112758 movs r0, 0x54 movs r1, 0x10 bl SetGpuReg - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -39611,13 +39611,13 @@ _081127A0: _081127B8: movs r6, 0xC8 _081127BA: - ldr r1, =gUnknown_02022E24 + ldr r1, =gBattle_WIN0H lsls r3, r6, 16 asrs r2, r3, 16 lsls r0, r2, 8 orrs r0, r2 strh r0, [r1] - ldr r1, =gUnknown_02022E26 + ldr r1, =gBattle_WIN0V movs r5, 0x28 ldr r0, =0x00002828 strh r0, [r1] @@ -39798,12 +39798,12 @@ _08112938: ldr r0, _08112988 @=sub_8112994 str r0, [r4] _08112966: - ldr r1, _0811298C @=gUnknown_02022E24 + ldr r1, _0811298C @=gBattle_WIN0H mov r2, r9 lsls r0, r2, 8 orrs r7, r0 strh r7, [r1] - ldr r1, _08112990 @=gUnknown_02022E26 + ldr r1, _08112990 @=gBattle_WIN0V lsls r0, r6, 8 orrs r5, r0 strh r5, [r1] @@ -39819,9 +39819,9 @@ _08112966: _08112988: .4byte sub_8112994 _0811298C: - .4byte gUnknown_02022E24 + .4byte gBattle_WIN0H _08112990: - .4byte gUnknown_02022E26 + .4byte gBattle_WIN0V thumb_func_end sub_811280C thumb_func_start sub_8112994 @@ -39837,9 +39837,9 @@ sub_8112994: @ 8112994 lsrs r1, r0, 24 cmp r1, 0 bne _081129DA - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H strh r1, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r1, [r0] ldr r4, =0x00003f3f movs r0, 0x48 @@ -39855,7 +39855,7 @@ sub_8112994: @ 8112994 movs r1, 0 bl SetGpuReg adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _081129DA: pop {r4,r5} pop {r0} @@ -39869,7 +39869,7 @@ sub_81129F0: @ 81129F0 adds r4, r0, 0 movs r1, 0x1 bl sub_80A69CC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -40042,13 +40042,13 @@ sub_8112B44: @ 8112B44 movs r0, 0x52 movs r1, 0 bl SetGpuReg - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r1, [r0] adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite pop {r4} pop {r0} bx r0 @@ -40064,7 +40064,7 @@ sub_8112B78: @ 8112B78 movs r1, 0xC bl Sin strh r0, [r5, 0x24] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -40171,7 +40171,7 @@ sub_8112C4C: @ 8112C4C movs r1, 0 bl SetGpuReg adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite pop {r4} pop {r0} bx r0 @@ -40195,7 +40195,7 @@ sub_8112C6C: @ 8112C6C mov r8, r0 mov r0, r8 strh r0, [r4, 0xA] - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -40301,7 +40301,7 @@ _08112D56: lsls r0, 2 adds r5, r0, r1 strh r7, [r5, 0x2E] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide movs r1, 0 @@ -40445,7 +40445,7 @@ _08112E80: movs r1, 0 bl SetGpuReg adds r0, r7, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08112E96: pop {r4-r7} pop {r0} @@ -40562,7 +40562,7 @@ sub_8112F60: @ 8112F60 orrs r1, r2 strb r1, [r3] ldr r2, =gBankSpriteIds - ldr r1, =gAnimationBankAttacker + ldr r1, =gAnimBankAttacker ldrb r1, [r1] adds r1, r2 ldrb r1, [r1] @@ -40679,7 +40679,7 @@ _08113054: sub_8113064: @ 8113064 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -40752,7 +40752,7 @@ sub_8113100: @ 8113100 push {r4,r5,lr} adds r5, r0, 0 bl sub_80A6838 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -40765,7 +40765,7 @@ sub_8113100: @ 8113100 lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -40834,11 +40834,11 @@ sub_81131B4: @ 81131B4 ldrsh r0, [r0, r1] cmp r0, 0 bne _081131D0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker b _081131D2 .pool _081131D0: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget _081131D2: ldrb r0, [r4] movs r1, 0 @@ -40876,7 +40876,7 @@ _081131D2: sub_8113224: @ 8113224 push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -40898,7 +40898,7 @@ _0811323E: sub_8113250: @ 8113250 push {r4-r7,lr} adds r6, r0, 0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -41088,7 +41088,7 @@ _081133CE: cmp r0, 0x14 ble _081133E2 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081133E2: pop {r4,r5} pop {r0} @@ -41106,22 +41106,22 @@ sub_81133E8: @ 81133E8 lsls r1, 3 ldr r0, =gTasks adds r4, r1, r0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _08113424 ldr r0, =0x04000014 str r0, [sp] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X b _0811342A .pool _08113424: ldr r0, =0x04000018 str r0, [sp] - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X _0811342A: ldrh r0, [r0] strh r0, [r4, 0xC] @@ -41133,7 +41133,7 @@ _0811342A: strb r0, [r1, 0x8] mov r0, sp strb r5, [r0, 0x9] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl sub_80A6190 lsls r0, 24 @@ -41274,7 +41274,7 @@ _08113556: .pool _08113568: adds r0, r3, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0811356E: pop {r0} bx r0 @@ -41354,7 +41354,7 @@ sub_81135EC: @ 81135EC movs r1, 0x5 bl __divsi3 adds r6, r0, 0 - ldr r1, =gAnimationBankAttacker + ldr r1, =gAnimBankAttacker mov r8, r1 ldrb r0, [r1] movs r1, 0x2 @@ -41453,7 +41453,7 @@ sub_811369C: @ 811369C cmp r0, r1 ble _081136E0 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081136E0: pop {r4} pop {r0} @@ -41473,14 +41473,14 @@ sub_81136E8: @ 81136E8 ldr r1, =gBattleAnimArgs ldrh r1, [r1] strh r1, [r0, 0x8] - ldr r1, =gAnimationBankAttacker + ldr r1, =gAnimBankAttacker ldrb r4, [r1] movs r1, 0x10 strh r1, [r0, 0xA] movs r0, 0x52 bl SetGpuReg adds r0, r4, 0 - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -41545,7 +41545,7 @@ sub_811375C: @ 811375C bne _081137DE ldr r2, =gSprites ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r1, [r0] @@ -41559,7 +41559,7 @@ sub_811375C: @ 811375C orrs r1, r2 strb r1, [r0] adds r0, r7, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _081137DE .pool _081137D8: @@ -41639,7 +41639,7 @@ sub_811381C: @ 811381C movs r1, 0 bl SetGpuReg adds r0, r7, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _08113882 .pool _0811387C: @@ -41661,9 +41661,9 @@ sub_8113888: @ 8113888 lsls r1, 5 movs r0, 0x52 bl SetGpuReg - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -41679,7 +41679,7 @@ _081138BC: bl SetGpuReg _081138C4: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -41690,14 +41690,14 @@ _081138C4: sub_81138D4: @ 81138D4 push {r4-r6,lr} adds r4, r0, 0 - ldr r6, =gAnimationBankTarget + ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r1, 0x2 bl sub_80A5C6C lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x30] - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -41805,7 +41805,7 @@ _081139C2: cmp r0, 0 bne _081139D4 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081139D4: pop {r4-r6} pop {r0} @@ -41918,11 +41918,11 @@ sub_8113A90: @ 8113A90 adds r3, r0, 0 cmp r1, 0 bne _08113AAC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _08113AAE .pool _08113AAC: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _08113AAE: ldrb r5, [r0] movs r6, 0x14 @@ -42054,7 +42054,7 @@ sub_8113BAC: @ 8113BAC lsls r1, 3 ldr r0, =gTasks adds r5, r1, r0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x1 bl sub_80A5C6C @@ -42096,9 +42096,9 @@ _08113C1C: ldr r0, =0x0000ffc0 _08113C1E: strh r0, [r5, 0x18] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0xE] @@ -42107,7 +42107,7 @@ _08113C1E: add r4, sp, 0xC adds r0, r4, 0 bl sub_80A6B30 - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y ldrh r0, [r0] strh r0, [r5, 0x1C] ldr r1, =0x00003f42 @@ -42125,11 +42125,11 @@ _08113C1E: lsls r0, 24 cmp r0, 0 bne _08113CB0 - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X b _08113CAA .pool _08113C80: - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y ldrh r0, [r0] strh r0, [r5, 0x1C] ldr r1, =0x00003f44 @@ -42146,7 +42146,7 @@ _08113C80: lsls r0, 24 cmp r0, 0 bne _08113CB0 - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X _08113CAA: ldrh r0, [r1] adds r0, 0xF0 @@ -42202,13 +42202,13 @@ _08113CDC: ldr r1, =0x00003f3f movs r0, 0x48 bl SetGpuReg - ldr r2, =gUnknown_02022E24 + ldr r2, =gBattle_WIN0H ldrh r0, [r5, 0x24] lsls r0, 8 ldrh r1, [r5, 0x26] orrs r0, r1 strh r0, [r2] - ldr r1, =gUnknown_02022E26 + ldr r1, =gBattle_WIN0V movs r0, 0xA0 strh r0, [r1] ldr r0, =sub_8113D60 @@ -42331,7 +42331,7 @@ _08113E1C: blt _08113E3E strh r2, [r4, 0x24] _08113E3E: - ldr r3, =gUnknown_02022E24 + ldr r3, =gBattle_WIN0H ldrh r2, [r4, 0x24] lsls r0, r2, 8 ldrh r1, [r4, 0x26] @@ -42355,7 +42355,7 @@ _08113E5E: .pool _08113E6C: adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08113E72: pop {r4} pop {r0} @@ -42398,10 +42398,10 @@ _08113EBC: lsrs r0, 24 cmp r0, 0x1 bne _08113EF8 - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r1, [r0] ldr r4, =0x00003f3f movs r0, 0x48 @@ -42411,13 +42411,13 @@ _08113EBC: adds r1, r4, 0 bl SetGpuReg adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _081140A6 .pool _08113EF8: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0xE] @@ -42426,14 +42426,14 @@ _08113EF8: ldr r1, =0x00003f42 movs r0, 0x50 bl SetGpuReg - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X b _08113F2E .pool _08113F24: ldr r1, =0x00003f44 movs r0, 0x50 bl SetGpuReg - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X _08113F2E: ldrh r0, [r1] adds r0, 0xF0 @@ -42447,7 +42447,7 @@ _08113F40: bne _08113F68 mov r0, sp bl sub_80A6B30 - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y ldrh r0, [r0] strh r0, [r5, 0x1C] mov r0, sp @@ -42459,7 +42459,7 @@ _08113F40: b _08113F78 .pool _08113F68: - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y ldrh r0, [r0] strh r0, [r5, 0x1C] movs r0, 0 @@ -42472,7 +42472,7 @@ _08113F78: b _08114044 .pool _08113F84: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x1 bl sub_80A5C6C @@ -42588,13 +42588,13 @@ _08114078: ldr r1, =0x00003f3f movs r0, 0x48 bl SetGpuReg - ldr r2, =gUnknown_02022E24 + ldr r2, =gBattle_WIN0H ldrh r0, [r5, 0x24] lsls r0, 8 ldrh r1, [r5, 0x26] orrs r0, r1 strh r0, [r2] - ldr r1, =gUnknown_02022E26 + ldr r1, =gBattle_WIN0V movs r0, 0xA0 strh r0, [r1] movs r0, 0 @@ -42686,7 +42686,7 @@ _08114150: movs r0, 0x1 strh r0, [r4, 0xA] _08114154: - ldr r2, =gUnknown_02022E24 + ldr r2, =gBattle_WIN0H ldrh r0, [r4, 0x24] lsls r0, 8 ldrh r1, [r4, 0x26] @@ -42782,10 +42782,10 @@ _08114204: b _08114232 .pool _08114210: - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r1, [r0] ldr r4, =0x00003f3f movs r0, 0x48 @@ -42795,7 +42795,7 @@ _08114210: adds r1, r4, 0 bl SetGpuReg adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08114232: pop {r4,r5} pop {r0} @@ -43014,9 +43014,9 @@ sub_81143C0: @ 81143C0 lsls r0, 24 lsrs r0, 24 mov r10, r0 - ldr r6, =gAnimationBankAttacker + ldr r6, =gAnimBankAttacker ldrb r0, [r6] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 movs r1, 0x1 @@ -43049,7 +43049,7 @@ sub_81143C0: @ 81143C0 ldrb r0, [r6] movs r5, 0x2 eors r0, r5 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0811444E @@ -43075,7 +43075,7 @@ sub_81143C0: @ 81143C0 strb r1, [r0] _0811444E: mov r0, r10 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r3-r5} mov r8, r3 mov r9, r4 @@ -43091,9 +43091,9 @@ sub_8114470: @ 8114470 push {r4-r6,lr} lsls r0, 24 lsrs r6, r0, 24 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 movs r1, 0x1 @@ -43106,7 +43106,7 @@ sub_8114470: @ 8114470 ldrb r1, [r4] movs r0, 0x2 eors r0, r1 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _081144AC @@ -43116,7 +43116,7 @@ sub_8114470: @ 8114470 bl sub_80A477C _081144AC: adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4-r6} pop {r0} bx r0 @@ -43141,7 +43141,7 @@ sub_81144BC: @ 81144BC bl StartSpriteAnim ldr r0, =sub_80A67D8 str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 pop {r4} @@ -43157,9 +43157,9 @@ sub_81144F8: @ 81144F8 lsls r0, 24 lsrs r7, r0, 24 movs r6, 0 - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H strh r6, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r6, [r0] ldr r1, =0x00003f3f movs r0, 0x48 @@ -43180,11 +43180,11 @@ sub_81144F8: @ 81144F8 movs r0, 0x1 movs r1, 0x4 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute movs r0, 0x1 movs r1, 0 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute bl IsContest lsls r0, 24 cmp r0, 0 @@ -43192,9 +43192,9 @@ sub_81144F8: @ 81144F8 movs r0, 0x1 movs r1, 0x3 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute _0811455C: - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _081145D6 @@ -43202,7 +43202,7 @@ _0811455C: lsls r0, 24 cmp r0, 0 bne _081145D6 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] bl GetBankIdentity lsls r0, 24 @@ -43218,7 +43218,7 @@ _0811458C: ldrb r0, [r4] movs r5, 0x2 eors r0, r5 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -43248,21 +43248,21 @@ _0811458C: movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute movs r6, 0x1 _081145D6: bl IsContest lsls r0, 24 cmp r0, 0 beq _08114614 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x18] ldrh r5, [r0] b _0811465C .pool _08114614: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -43299,7 +43299,7 @@ _0811465C: adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] adds r1, r4, 0 adds r2, r5, 0 @@ -43324,7 +43324,7 @@ _0811465C: lsls r1, 4 movs r2, 0x20 bl LoadCompressedPalette - ldr r2, =gUnknown_02022E18 + ldr r2, =gBattle_BG1_X ldr r0, =gSprites lsls r1, r4, 4 adds r1, r4 @@ -43334,7 +43334,7 @@ _0811465C: negs r0, r0 adds r0, 0x60 strh r0, [r2] - ldr r2, =gUnknown_02022E1A + ldr r2, =gBattle_BG1_Y ldrh r0, [r1, 0x22] negs r0, r0 adds r0, 0x20 @@ -43399,7 +43399,7 @@ sub_8114748: @ 8114748 adds r0, 0x4 movs r5, 0 strh r0, [r4, 0x1C] - ldr r2, =gUnknown_02022E18 + ldr r2, =gBattle_BG1_X ldrh r3, [r2] subs r1, r3, 0x4 strh r1, [r2] @@ -43458,7 +43458,7 @@ _081147B8: cmp r0, 0x1 bne _08114886 ldr r2, =gBankSpriteIds - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r1, [r0] movs r0, 0x2 eors r0, r1 @@ -43485,9 +43485,9 @@ _081147B8: _08114824: cmp r0, 0x3 bne _08114886 - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H strh r5, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r5, [r0] ldr r4, =0x00003f3f movs r0, 0x48 @@ -43503,7 +43503,7 @@ _08114824: movs r0, 0x1 movs r1, 0x3 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute _08114856: movs r0, 0 bl GetGpuReg @@ -43523,7 +43523,7 @@ _08114856: movs r1, 0 bl SetGpuReg adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08114886: add sp, 0x10 pop {r4-r6} @@ -43586,11 +43586,11 @@ _08114902: beq _0811492E _08114908: adds r0, r4, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0811492C @@ -43617,7 +43617,7 @@ _0811492E: bl sub_80A750C _0811494A: adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4,r5} pop {r0} bx r0 @@ -43629,7 +43629,7 @@ sub_8114960: @ 8114960 push {lr} lsls r0, 24 lsrs r3, r0, 24 - ldr r2, =gUnknown_02038432 + ldr r2, =gAnimMoveTurn ldrb r0, [r2] cmp r0, 0x1 bhi _08114974 @@ -43645,7 +43645,7 @@ _08114974: strh r0, [r1, 0xE] _08114980: adds r0, r3, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool @@ -43655,7 +43655,7 @@ _08114980: sub_8114994: @ 8114994 push {r4,r5,lr} adds r4, r0, 0 - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -43670,7 +43670,7 @@ sub_8114994: @ 8114994 strh r0, [r4, 0x22] movs r0, 0x14 strh r0, [r4, 0x2E] - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -43716,7 +43716,7 @@ sub_81149FC: @ 81149FC strh r1, [r5, 0x24] movs r0, 0x14 strh r0, [r5, 0x2E] - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -43751,7 +43751,7 @@ sub_8114A60: @ 8114A60 cmp r0, 0 beq _08114A74 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08114A74: pop {r4} pop {r0} @@ -43764,7 +43764,7 @@ sub_8114A7C: @ 8114A7C adds r6, r0, 0 movs r1, 0x1 bl sub_80A6980 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -43778,7 +43778,7 @@ _08114A9C: ldr r4, =gBattleAnimArgs ldrh r0, [r4, 0x8] strh r0, [r6, 0x2E] - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -43797,7 +43797,7 @@ _08114A9C: strh r0, [r6, 0x36] ldr r0, =sub_80A6EEC str r0, [r6, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r6, 0 bl StoreSpriteCallbackInData6 pop {r4-r6} @@ -43814,7 +43814,7 @@ sub_8114AF0: @ 8114AF0 adds r6, r0, 0 movs r1, 0x1 bl sub_80A69CC - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A60AC @@ -43890,7 +43890,7 @@ sub_8114B80: @ 8114B80 ldrsh r0, [r6, r1] cmp r0, 0 bne _08114BF4 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -43964,7 +43964,7 @@ _08114C2E: cmp r0, r1 bge _08114C46 adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08114C46: pop {r0} bx r0 @@ -44025,7 +44025,7 @@ _08114C74: cmp r0, 0xA bne _08114CB6 adds r0, r3, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08114CB6: pop {r0} bx r0 @@ -44096,29 +44096,29 @@ _08114D3C: lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x1C] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x1E] cmp r0, 0x1 bne _08114D70 - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X ldrh r0, [r0] strh r0, [r4, 0x20] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y b _08114D78 .pool _08114D70: - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X ldrh r0, [r0] strh r0, [r4, 0x20] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y _08114D78: ldrh r0, [r0] strh r0, [r4, 0x22] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl sub_80A6190 lsls r0, 24 @@ -44189,11 +44189,11 @@ _08114DF6: ldrsh r0, [r4, r1] cmp r0, 0x1 bne _08114E20 - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y b _08114E22 .pool _08114E20: - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y _08114E22: ldrh r0, [r4, 0x22] subs r0, r2 @@ -44210,11 +44210,11 @@ _08114E22: ldrsh r0, [r4, r3] cmp r0, 0x1 bne _08114E4C - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y b _08114E4E .pool _08114E4C: - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y _08114E4E: ldrh r0, [r4, 0x22] subs r0, r2 @@ -44246,7 +44246,7 @@ _08114E7E: .pool _08114E8C: adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask ldr r2, =gSprites movs r0, 0x1C ldrsh r1, [r4, r0] @@ -44289,22 +44289,22 @@ sub_8114EB4: @ 8114EB4 movs r4, 0 strh r4, [r1, 0x24] strh r4, [r1, 0x26] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _08114F00 - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y b _08114F02 .pool _08114F00: - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y _08114F02: strh r4, [r0] adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4,r5} pop {r0} bx r0 @@ -44402,7 +44402,7 @@ _08114F78: .pool _08114FCC: adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08114FD2: pop {r4,r5} pop {r0} @@ -44442,23 +44442,23 @@ _08115018: lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x1C] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x1E] cmp r0, 0x1 bne _08115044 - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X b _08115046 .pool _08115044: - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X _08115046: ldrh r0, [r0] strh r0, [r4, 0x20] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl sub_80A6190 lsls r0, 24 @@ -44521,7 +44521,7 @@ _081150C2: .pool _081150D4: adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _081150DA: pop {r4} pop {r0} @@ -44540,13 +44540,13 @@ sub_81150E0: @ 81150E0 lsrs r4, r2, 16 cmp r0, 0x1 bne _08115104 - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X ldrh r3, [r0] ldr r0, =0x04000014 b _0811510A .pool _08115104: - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X ldrh r3, [r0] ldr r0, =0x04000018 _0811510A: @@ -44634,11 +44634,11 @@ sub_81151A0: @ 81151A0 adds r7, r0, 0 cmp r1, 0 bne _081151BC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _081151BE .pool _081151BC: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _081151BE: ldrb r4, [r0] movs r6, 0x18 @@ -44698,7 +44698,7 @@ sub_8115228: @ 8115228 cmp r0, 0 beq _0811523C adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0811523C: pop {r4} pop {r0} @@ -44714,11 +44714,11 @@ sub_8115244: @ 8115244 ldrsh r0, [r0, r1] cmp r0, 0 bne _08115260 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _08115262 .pool _08115260: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _08115262: ldrb r5, [r0] adds r0, r5, 0 @@ -44754,7 +44754,7 @@ _08115262: ands r0, r2 orrs r0, r1 strh r0, [r6, 0x4] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r6, 0 bl StoreSpriteCallbackInData6 ldrh r0, [r4, 0x4] @@ -44788,7 +44788,7 @@ sub_81152DC: @ 81152DC b _08115314 .pool _08115308: - ldr r0, =gMovePowerMoveAnim + ldr r0, =gAnimMovePower ldrh r0, [r0] movs r1, 0xA bl __udivsi3 @@ -44805,7 +44805,7 @@ _08115314: beq _08115340 cmp r0, 0x5 bne _08115380 - ldr r0, =gUnknown_02022E20 + ldr r0, =gBattle_BG3_X ldrh r0, [r0] strh r0, [r4, 0x22] ldr r0, =sub_81153AC @@ -44818,7 +44818,7 @@ _08115340: _08115346: lsls r0, r5, 24 lsrs r0, 24 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _08115370 @@ -44853,7 +44853,7 @@ _08115380: cmp r0, 0xFF bne _08115398 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _081153A0 _08115398: movs r0, 0x1 @@ -44907,7 +44907,7 @@ _081153DA: ands r0, r1 cmp r0, 0 bne _08115404 - ldr r1, =gUnknown_02022E20 + ldr r1, =gBattle_BG3_X ldrh r0, [r3, 0x26] ldrh r2, [r3, 0x22] adds r0, r2 @@ -44915,7 +44915,7 @@ _081153DA: b _0811540E .pool _08115404: - ldr r0, =gUnknown_02022E20 + ldr r0, =gBattle_BG3_X ldrh r1, [r3, 0x22] ldrh r2, [r3, 0x26] subs r1, r2 @@ -44951,7 +44951,7 @@ _08115430: ands r1, r0 cmp r1, 0 bne _0811545C - ldr r1, =gUnknown_02022E20 + ldr r1, =gBattle_BG3_X ldrh r0, [r3, 0x24] ldrh r2, [r3, 0x22] adds r0, r2 @@ -44959,7 +44959,7 @@ _08115430: b _08115466 .pool _0811545C: - ldr r0, =gUnknown_02022E20 + ldr r0, =gBattle_BG3_X ldrh r1, [r3, 0x22] ldrh r2, [r3, 0x24] subs r1, r2 @@ -44987,11 +44987,11 @@ _08115484: b _0811549C .pool _08115490: - ldr r1, =gUnknown_02022E20 + ldr r1, =gBattle_BG3_X ldrh r0, [r3, 0x22] strh r0, [r1] adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0811549C: pop {r0} bx r0 @@ -45110,7 +45110,7 @@ _08115554: blt _08115554 _08115578: adds r0, r3, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0811557E: pop {r4-r7} pop {r0} @@ -45191,7 +45191,7 @@ sub_8115600: @ 8115600 lsrs r1, r0, 24 ldr r3, =gBattleAnimArgs movs r2, 0 - ldr r0, =gMovePowerMoveAnim + ldr r0, =gAnimMovePower ldrh r0, [r0] cmp r0, 0x63 bls _08115614 @@ -45199,7 +45199,7 @@ sub_8115600: @ 8115600 _08115614: strh r2, [r3, 0x1E] adds r0, r1, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool @@ -45217,11 +45217,11 @@ sub_8115628: @ 8115628 adds r6, r2, 0 cmp r0, 0 beq _08115648 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget b _0811564A .pool _08115648: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker _0811564A: ldrb r0, [r0] adds r5, r0, 0 @@ -45263,15 +45263,15 @@ _0811565A: movs r0, 0xFF ands r1, r0 strh r1, [r4, 0xC] - ldr r2, =gUnknown_02022E20 + ldr r2, =gBattle_BG3_X ldrh r0, [r4, 0xA] strh r0, [r2] - ldr r0, =gUnknown_02022E22 + ldr r0, =gBattle_BG3_Y strh r1, [r0] ldrh r0, [r6, 0x4] strh r0, [r4, 0xE] adds r0, r7, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4-r7} pop {r0} bx r0 @@ -45295,20 +45295,20 @@ sub_81156D0: @ 81156D0 ldrsh r0, [r2, r4] cmp r1, r0 bne _08115710 - ldr r0, =gUnknown_02022E20 + ldr r0, =gBattle_BG3_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E22 + ldr r0, =gBattle_BG3_Y strh r1, [r0] adds r0, r3, 0 bl DestroyTask b _0811571C .pool _08115710: - ldr r1, =gUnknown_02022E20 + ldr r1, =gBattle_BG3_X ldrh r0, [r2, 0xA] strh r0, [r1] - ldr r1, =gUnknown_02022E22 + ldr r1, =gBattle_BG3_Y ldrh r0, [r2, 0xC] strh r0, [r1] _0811571C: @@ -45333,7 +45333,7 @@ sub_811572C: @ 811572C strh r0, [r4, 0x22] ldrh r0, [r5, 0x4] strh r0, [r4, 0x2E] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -45415,7 +45415,7 @@ _081157D2: cmp r0, r1 bne _081157F6 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081157F6: pop {r4} pop {r0} @@ -45503,7 +45503,7 @@ sub_8115884: @ 8115884 cmp r0, 0 bne _0811589A adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0811589A: pop {r0} bx r0 @@ -45638,7 +45638,7 @@ sub_8115984: @ 8115984 movs r2, 0 bl BlendPalettes adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081159AA: pop {r4} pop {r0} @@ -45810,7 +45810,7 @@ _08115AF8: b _08115B06 _08115B00: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08115B06: pop {r4-r6} pop {r0} @@ -45852,9 +45852,9 @@ sub_8115B0C: @ 8115B0C mov r8, r2 cmp r5, r1 bge _08115B74 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r3, [r0] - ldr r7, =gAnimationBankTarget + ldr r7, =gAnimBankTarget movs r0, 0x1 mov r12, r0 adds r2, r1, 0 @@ -45996,7 +45996,7 @@ _08115C6C: b _08115C7A _08115C74: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08115C7A: pop {r4-r6} pop {r0} @@ -46135,7 +46135,7 @@ _08115D80: b _08115D8E _08115D88: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08115D8E: pop {r4-r6} pop {r0} @@ -46317,7 +46317,7 @@ sub_8115EB8: @ 8115EB8 movs r3, 0 bl BeginNormalPaletteFade adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08115EFE: add sp, 0x4 pop {r4,r5} @@ -46336,9 +46336,9 @@ sub_8115F10: @ 8115F10 lsrs r0, 24 mov r8, r0 movs r2, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r6, [r0] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r7, [r0] ldr r4, =gBattleAnimArgs ldrh r1, [r4] @@ -46380,7 +46380,7 @@ _08115F6E: adds r0, r2, 0 bl InvertPlttBuffer mov r0, r8 - bl move_anim_task_del + bl DestroyAnimVisualTask add sp, 0xC pop {r3} mov r8, r3 @@ -46429,10 +46429,10 @@ _08115FD6: ldrh r0, [r4, 0x8] adds r0, 0x1 strh r0, [r4, 0x8] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] mov r9, r0 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] mov r10, r0 ldrh r1, [r4, 0xC] @@ -46507,7 +46507,7 @@ _08116050: adds r0, r5, 0 bl UnfadePlttBuffer mov r0, r8 - bl move_anim_task_del + bl DestroyAnimVisualTask _0811607A: pop {r3-r5} mov r8, r3 @@ -46553,11 +46553,11 @@ _081160DC: beq _081160F4 b _08116104 _081160E2: - ldr r1, =gUnknown_02022E20 + ldr r1, =gBattle_BG3_X b _081160F6 .pool _081160EC: - ldr r1, =gUnknown_02022E22 + ldr r1, =gBattle_BG3_Y b _081160F6 .pool _081160F4: @@ -46679,7 +46679,7 @@ _081161BA: bcc _081161BA _081161DC: adds r0, r3, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _081161E2: pop {r4-r7} pop {r0} @@ -46692,7 +46692,7 @@ sub_81161F4: @ 81161F4 push {r4-r6,lr} ldr r6, =gSprites ldr r4, =gBankSpriteIds - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] adds r0, r4 ldrb r0, [r0] @@ -46707,7 +46707,7 @@ sub_81161F4: @ 81161F4 adds r0, r2, 0 ands r0, r3 strb r0, [r1] - ldr r3, =gAnimationBankTarget + ldr r3, =gAnimBankTarget ldrb r0, [r3] adds r0, r4 ldrb r1, [r0] @@ -46793,10 +46793,10 @@ sub_81162A4: @ 81162A4 strh r1, [r2, 0xE] ldrh r1, [r3, 0x6] strh r1, [r2, 0x18] - ldr r4, =gUnknown_02022E20 + ldr r4, =gBattle_BG3_X ldrh r1, [r3] strh r1, [r4] - ldr r4, =gUnknown_02022E22 + ldr r4, =gBattle_BG3_Y ldrh r1, [r3, 0x2] strh r1, [r4] ldr r1, =sub_81162F8 @@ -46824,7 +46824,7 @@ sub_81162F8: @ 81162F8 mov r12, r1 cmp r0, 0 bne _0811637E - ldr r0, =gUnknown_02022E20 + ldr r0, =gBattle_BG3_X ldrh r2, [r0] movs r7, 0x8 ldrsh r1, [r3, r7] @@ -46839,7 +46839,7 @@ _08116330: ldrh r0, [r3, 0x8] _08116332: strh r0, [r6] - ldr r2, =gUnknown_02022E22 + ldr r2, =gBattle_BG3_Y ldrh r3, [r2] lsls r1, r5, 2 adds r0, r1, r5 @@ -46873,7 +46873,7 @@ _08116358: strh r1, [r6] strh r1, [r2] adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _08116382 _0811637E: subs r0, r2, 0x1 @@ -46907,7 +46907,7 @@ _081163AC: _081163B4: ldr r0, =sub_80A67BC str r0, [r5, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 pop {r4,r5} @@ -46955,7 +46955,7 @@ _081163FC: sub_8116420: @ 8116420 push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -47113,7 +47113,7 @@ _08116584: ldr r0, =gBattleAnimArgs ldrh r0, [r0, 0x6] strh r0, [r4, 0x2E] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 ldr r0, =sub_80A64B0 @@ -47180,7 +47180,7 @@ sub_81165E4: @ 81165E4 cmp r0, 0xC ble _0811661A adds r0, r3, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0811661A: pop {r0} bx r0 @@ -47256,14 +47256,14 @@ _081166B8: movs r5, 0 _081166BA: mov r0, sp - ldr r1, =gAnimationBankAttacker + ldr r1, =gAnimBankAttacker b _081166CA .pool _081166C4: movs r5, 0 _081166C6: mov r0, sp - ldr r1, =gAnimationBankTarget + ldr r1, =gAnimBankTarget _081166CA: ldrb r1, [r1] strb r1, [r0] @@ -47271,10 +47271,10 @@ _081166CA: .pool _081166D4: mov r1, sp - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] strb r0, [r1] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] strb r0, [r1, 0x1] b _0811670E @@ -47287,13 +47287,13 @@ _081166EC: _081166F4: movs r5, 0 mov r2, sp - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _08116706 .pool _08116700: movs r5, 0 mov r2, sp - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _08116706: ldrb r0, [r0] movs r1, 0x2 @@ -47310,7 +47310,7 @@ _08116712: cmp r4, r0 beq _0811673C adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0811673C @@ -47348,7 +47348,7 @@ sub_811675C: @ 811675C ldrsh r0, [r0, r1] bl sub_811583C adds r2, r0, 0 - ldr r0, =gUnknown_02022FF0 + ldr r0, =gBattleTerrain ldrb r0, [r0] cmp r0, 0x9 bhi _08116832 @@ -47558,7 +47558,7 @@ _0811693C: b _08116954 _08116946: adds r0, r7, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _08116954 _0811694E: mov r0, r8 @@ -47614,7 +47614,7 @@ sub_81169A0: @ 81169A0 cmp r0, 0 bne _081169B8 adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _081169B8: pop {r0} bx r0 @@ -47750,7 +47750,7 @@ _08116ABC: cmp r0, 0 bne _08116ACA adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08116ACA: pop {r4-r6} pop {r0} @@ -47805,9 +47805,9 @@ sub_8116B14: @ 8116B14 lsrs r0, 24 mov r9, r0 movs r7, 0 - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H strh r7, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r7, [r0] ldr r1, =0x00003f3f movs r0, 0x48 @@ -47859,7 +47859,7 @@ sub_8116B14: @ 8116B14 movs r0, 0xA bl SetGpuReg _08116BA2: - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08116C26 @@ -47867,7 +47867,7 @@ _08116BA2: lsls r0, 24 cmp r0, 0 bne _08116C26 - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] bl GetBankIdentity lsls r0, 24 @@ -47883,7 +47883,7 @@ _08116BD2: ldrb r0, [r5] movs r6, 0x2 eors r0, r6 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -47925,14 +47925,14 @@ _08116C26: lsls r0, 24 cmp r0, 0 beq _08116C64 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x18] ldrh r5, [r0] b _08116CAC .pool _08116C64: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -47969,7 +47969,7 @@ _08116CAC: adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] adds r1, r4, 0 adds r2, r5, 0 @@ -47996,7 +47996,7 @@ _08116CAC: adds r1, 0x1 movs r2, 0x2 bl LoadPalette - ldr r2, =gUnknown_02022E18 + ldr r2, =gBattle_BG1_X ldr r0, =gSprites lsls r1, r4, 4 adds r1, r4 @@ -48006,7 +48006,7 @@ _08116CAC: negs r0, r0 adds r0, 0x20 strh r0, [r2] - ldr r2, =gUnknown_02022E1A + ldr r2, =gBattle_BG1_Y ldrh r0, [r1, 0x22] negs r0, r0 adds r0, 0x20 @@ -48050,7 +48050,7 @@ sub_8116D64: @ 8116D64 movs r1, 0 mov r8, r1 strh r0, [r5, 0x1C] - ldr r7, =gUnknown_02022E1A + ldr r7, =gBattle_BG1_Y ldrh r2, [r7] subs r1, r2, 0x4 strh r1, [r7] @@ -48072,10 +48072,10 @@ sub_8116D64: @ 8116D64 bne _08116E86 movs r0, 0 bl sub_80A477C - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H mov r1, r8 strh r1, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r1, [r0] ldr r4, =0x00003f3f movs r0, 0x48 @@ -48138,7 +48138,7 @@ _08116DF6: cmp r0, 0x1 bne _08116E7C ldr r2, =gBankSpriteIds - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r1, [r0] movs r0, 0x2 eors r0, r1 @@ -48164,7 +48164,7 @@ _08116E7C: mov r2, r8 strh r2, [r7] adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08116E86: add sp, 0x14 pop {r3} @@ -48223,11 +48223,11 @@ sub_8116F04: @ 8116F04 ldrsh r0, [r1, r2] cmp r0, 0 bne _08116F24 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _08116F26 .pool _08116F24: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _08116F26: ldrb r0, [r0] strb r0, [r1] @@ -48247,7 +48247,7 @@ _08116F26: cmp r0, 0 beq _08116F5C ldrb r0, [r1, 0x1] - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 bne _08116F5C @@ -48256,10 +48256,10 @@ _08116F56: movs r0, 0 strh r0, [r1, 0xA] _08116F5C: - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r1, [r0] ldr r1, =0x00003f3f movs r0, 0x48 @@ -48281,11 +48281,11 @@ _08116F5C: movs r0, 0x1 movs r1, 0x4 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute movs r0, 0x1 movs r1, 0 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute bl IsContest lsls r0, 24 cmp r0, 0 @@ -48293,9 +48293,9 @@ _08116F5C: movs r0, 0x1 movs r1, 0x3 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute _08116FBA: - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08117036 @@ -48320,7 +48320,7 @@ _08116FBA: _08116FEC: ldr r0, [r4] ldrb r0, [r0, 0x1] - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 lsrs r5, r0, 24 cmp r5, 0x1 @@ -48350,7 +48350,7 @@ _08116FEC: movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute ldr r0, [r4] strb r5, [r0, 0x2] _08117036: @@ -48360,7 +48360,7 @@ _08117036: beq _08117078 ldr r0, =gUnknown_0203A110 ldr r1, [r0] - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x18] ldrh r0, [r0] @@ -48537,10 +48537,10 @@ _081171F8: movs r2, 0x20 bl LoadCompressedPalette _08117206: - ldr r3, =gUnknown_02022E18 + ldr r3, =gBattle_BG1_X movs r2, 0 strh r2, [r3] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r2, [r0] ldr r1, =gUnknown_0203A110 ldr r0, [r1] @@ -48614,7 +48614,7 @@ _08117280: bne _081172CC movs r0, 0x40 negs r0, r0 - bl sub_80A5278 + bl BattleAnimAdjustPanning2 adds r1, r0, 0 lsls r1, 24 asrs r1, 24 @@ -48625,7 +48625,7 @@ _08117280: _081172CC: movs r0, 0x40 negs r0, r0 - bl sub_80A5278 + bl BattleAnimAdjustPanning2 adds r1, r0, 0 lsls r1, 24 asrs r1, 24 @@ -48645,7 +48645,7 @@ sub_81172EC: @ 81172EC push {r4-r6,lr} lsls r0, 24 lsrs r6, r0, 24 - ldr r2, =gUnknown_02022E1A + ldr r2, =gBattle_BG1_Y ldr r1, =gTasks lsls r0, r6, 2 adds r0, r6 @@ -48746,10 +48746,10 @@ _081173AE: strh r0, [r5, 0x26] b _08117478 _081173B6: - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r1, [r0] ldr r4, =0x00003f3f movs r0, 0x48 @@ -48765,7 +48765,7 @@ _081173B6: movs r0, 0x1 movs r1, 0x3 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute _081173E6: movs r0, 0 bl GetGpuReg @@ -48833,7 +48833,7 @@ _08117466: movs r0, 0 str r0, [r4] adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08117478: pop {r4-r6} pop {r0} @@ -48987,7 +48987,7 @@ _081175AC: .pool _081175B8: adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _081175BE: pop {r4-r6} pop {r0} @@ -49044,7 +49044,7 @@ sub_8117610: @ 8117610 lsrs r6, r0, 24 movs r4, 0 movs r2, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r3, [r0] movs r5, 0x1 _08117620: @@ -49096,7 +49096,7 @@ sub_8117660: @ 8117660 ldrsh r0, [r4, r1] cmp r0, 0 beq _0811769C - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -49125,7 +49125,7 @@ _0811769C: adds r0, 0x1 strh r0, [r1, 0x8] adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4-r6} pop {r0} bx r0 @@ -49152,13 +49152,13 @@ sub_81176D8: @ 81176D8 ldrh r7, [r1, 0x1E] adds r2, r7 strh r2, [r1, 0x1E] - ldr r6, =gUnknown_02022E20 + ldr r6, =gBattle_BG3_X lsls r0, r3, 16 asrs r0, 24 ldrh r4, [r6] adds r0, r4 strh r0, [r6] - ldr r4, =gUnknown_02022E22 + ldr r4, =gBattle_BG3_Y lsls r0, r2, 16 asrs r0, 24 ldrh r7, [r4] @@ -49196,7 +49196,7 @@ sub_8117754: @ 8117754 adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide ldr r1, =gBattleAnimArgs @@ -49204,7 +49204,7 @@ sub_8117754: @ 8117754 lsrs r0, 24 strh r0, [r1, 0xE] adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -49217,7 +49217,7 @@ sub_8117780: @ 8117780 adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide ldr r1, =gBattleAnimArgs @@ -49225,7 +49225,7 @@ sub_8117780: @ 8117780 lsrs r0, 24 strh r0, [r1, 0xE] adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -49239,10 +49239,10 @@ sub_81177AC: @ 81177AC lsrs r3, r0, 24 ldr r5, =gBattleAnimArgs movs r4, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r2, [r0] movs r0, 0x2 - ldr r1, =gAnimationBankTarget + ldr r1, =gAnimBankTarget eors r0, r2 ldrb r1, [r1] cmp r0, r1 @@ -49251,7 +49251,7 @@ sub_81177AC: @ 81177AC _081177C8: strh r4, [r5, 0xE] adds r0, r3, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4,r5} pop {r0} bx r0 @@ -49266,13 +49266,13 @@ sub_81177E4: @ 81177E4 movs r4, 0 ldr r6, =gSprites _081177EE: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] cmp r4, r0 beq _0811782C lsls r0, r4, 24 lsrs r0, 24 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _0811782C @@ -49303,7 +49303,7 @@ _0811782C: cmp r4, 0x3 bls _081177EE adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4-r7} pop {r0} bx r0 @@ -49355,7 +49355,7 @@ sub_8117854: @ 8117854 cmp r1, 0 beq _081178BA adds r0, r6, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 bne _081178BA @@ -49363,10 +49363,10 @@ _081178B6: movs r2, 0 mov r8, r2 _081178BA: - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r1, [r0] ldr r1, =0x00003f3f movs r0, 0x48 @@ -49423,7 +49423,7 @@ _08117930: lsls r0, 24 cmp r0, 0 beq _08117964 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x18] ldrh r4, [r0] @@ -49497,10 +49497,10 @@ _081179CC: ldr r0, [sp, 0x5C] movs r2, 0x20 bl LoadCompressedPalette - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r1, [r0] ldr r1, =gTasks mov r2, r9 @@ -49563,7 +49563,7 @@ _08117A7E: ldrsh r0, [r3, r1] cmp r0, 0 bge _08117AA4 - ldr r2, =gUnknown_02022E1A + ldr r2, =gBattle_BG1_Y lsls r1, r4, 16 asrs r1, 24 ldrh r0, [r2] @@ -49572,7 +49572,7 @@ _08117A7E: b _08117AB0 .pool _08117AA4: - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y lsls r0, r4, 16 asrs r0, 24 ldrh r2, [r1] @@ -49676,9 +49676,9 @@ _08117B34: bne _08117C0C movs r0, 0 bl sub_80A477C - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H strh r4, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r4, [r0] ldr r4, =0x00003f3f movs r0, 0x48 @@ -49744,7 +49744,7 @@ _08117BB2: bl DestroySprite _08117C06: adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08117C0C: add sp, 0x4 pop {r4-r6} @@ -49759,10 +49759,10 @@ sub_8117C24: @ 8117C24 lsls r0, 24 lsrs r0, 24 ldr r2, =gBattleAnimArgs - ldr r1, =gUnknown_02022FF0 + ldr r1, =gBattleTerrain ldrb r1, [r1] strh r1, [r2] - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool @@ -49777,14 +49777,14 @@ sub_8117C44: @ 8117C44 movs r0, 0x80 lsls r0, 6 bl AllocZeroed - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] movs r2, 0xBE lsls r2, 1 adds r1, r2 str r0, [r1] adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -49797,7 +49797,7 @@ sub_8117C70: @ 8117C70 adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r6, =gBattleSpritesGfx + ldr r6, =gMonSpritesGfxPtr ldr r0, [r6] movs r5, 0xBE lsls r5, 1 @@ -49809,7 +49809,7 @@ sub_8117C70: @ 8117C70 movs r1, 0 str r1, [r0] adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4-r6} pop {r0} bx r0 @@ -49854,19 +49854,19 @@ _08117CD2: _08117CE4: cmp r0, 0x1 bne _08117CF0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _08117CF6 .pool _08117CF0: cmp r0, 0x2 bne _08117CFC - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _08117CF6: ldrb r0, [r0] adds r4, r0, 0 adds r4, 0x10 _08117CFC: - ldr r0, =gBattleSpritesGfx + ldr r0, =gMonSpritesGfxPtr ldr r1, [r0] ldr r0, =gBattleAnimArgs movs r2, 0x2 @@ -49883,7 +49883,7 @@ _08117CFC: movs r2, 0x20 bl memcpy adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask add sp, 0xC pop {r4,r5} pop {r0} @@ -49929,13 +49929,13 @@ _08117D6E: _08117D80: cmp r0, 0x1 bne _08117D8C - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _08117D92 .pool _08117D8C: cmp r0, 0x2 bne _08117D98 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _08117D92: ldrb r0, [r0] adds r4, r0, 0 @@ -49944,7 +49944,7 @@ _08117D98: lsls r0, r4, 5 ldr r1, =gPlttBufferUnfaded adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r2, [r1] ldr r1, =gBattleAnimArgs movs r3, 0x2 @@ -49958,7 +49958,7 @@ _08117D98: movs r2, 0x20 bl memcpy adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask add sp, 0xC pop {r4,r5} pop {r0} @@ -50004,13 +50004,13 @@ _08117E0A: _08117E1C: cmp r0, 0x1 bne _08117E28 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _08117E2E .pool _08117E28: cmp r0, 0x2 bne _08117E34 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _08117E2E: ldrb r0, [r0] adds r4, r0, 0 @@ -50024,7 +50024,7 @@ _08117E34: movs r2, 0x20 bl memcpy adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask add sp, 0xC pop {r4,r5} pop {r0} @@ -50052,7 +50052,7 @@ _08117E80: strh r1, [r0, 0xE] _08117E84: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -50064,15 +50064,15 @@ sub_8117E94: @ 8117E94 push {lr} lsls r0, 24 lsrs r0, 24 - ldr r2, =gAnimationBankAttacker + ldr r2, =gAnimBankAttacker ldr r1, =gBankTarget ldrb r1, [r1] strb r1, [r2] - ldr r2, =gAnimationBankTarget + ldr r2, =gAnimBankTarget ldr r1, =gEffectBank ldrb r1, [r1] strb r1, [r2] - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool @@ -50083,11 +50083,11 @@ sub_8117EC4: @ 8117EC4 push {r4,r5,lr} lsls r0, 24 lsrs r5, r0, 24 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide adds r4, r0, 0 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r4, 24 @@ -50104,7 +50104,7 @@ _08117EF8: _08117EFC: strh r0, [r1, 0xE] adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4,r5} pop {r0} bx r0 @@ -50116,11 +50116,11 @@ sub_8117F10: @ 8117F10 push {lr} lsls r0, 24 lsrs r0, 24 - ldr r2, =gAnimationBankTarget + ldr r2, =gAnimBankTarget ldr r1, =gBankTarget ldrb r1, [r1] strb r1, [r2] - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool @@ -50131,15 +50131,15 @@ sub_8117F30: @ 8117F30 push {lr} lsls r0, 24 lsrs r0, 24 - ldr r2, =gAnimationBankAttacker + ldr r2, =gAnimBankAttacker ldr r1, =gBankAttacker ldrb r1, [r1] strb r1, [r2] - ldr r2, =gAnimationBankTarget + ldr r2, =gAnimBankTarget ldr r1, =gEffectBank ldrb r1, [r1] strb r1, [r2] - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool @@ -50155,7 +50155,7 @@ sub_8117F60: @ 8117F60 cmp r0, 0 beq _08117F78 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _08117FB4 _08117F78: ldr r0, =gTasks @@ -50163,9 +50163,9 @@ _08117F78: adds r3, r4 lsls r3, 3 adds r3, r0 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r4, [r0] - ldr r2, =gAnimationBankAttacker + ldr r2, =gAnimBankAttacker ldrb r0, [r2] ldr r1, [r4] lsls r0, 2 @@ -50207,9 +50207,9 @@ sub_8117FD0: @ 8117FD0 lsls r0, 5 cmp r1, r0 bne _08118014 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r3, [r0] ldr r0, [r1] lsls r3, 2 @@ -50237,8 +50237,8 @@ _08118014: .pool thumb_func_end sub_8117FD0 - thumb_func_start lcd_bg_operations -lcd_bg_operations: @ 811802C + thumb_func_start SetAnimBgAttribute +SetAnimBgAttribute: @ 811802C push {r4-r6,lr} lsls r0, 24 lsrs r6, r0, 24 @@ -50364,7 +50364,7 @@ _08118132: pop {r0} bx r0 .pool - thumb_func_end lcd_bg_operations + thumb_func_end SetAnimBgAttribute thumb_func_start sub_8118140 sub_8118140: @ 8118140 @@ -50529,14 +50529,14 @@ sub_811828C: @ 811828C lsls r0, 24 lsrs r0, 24 bl DestroyTask - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r1, [r0] - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X strh r1, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r1, [r0] movs r0, 0x50 movs r1, 0 @@ -50569,7 +50569,7 @@ task_battle_intro_80BC47C: @ 81182EC sub sp, 0x4 lsls r0, 24 lsrs r4, r0, 24 - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldrh r0, [r1] adds r0, 0x6 strh r0, [r1] @@ -50646,7 +50646,7 @@ _0811838C: bl SetGpuReg b _0811852A _0811839C: - ldr r1, =gUnknown_02022E26 + ldr r1, =gBattle_WIN0V ldrh r0, [r1] subs r0, 0xFF strh r0, [r1] @@ -50697,7 +50697,7 @@ _08118400: ldrsh r0, [r2, r1] cmp r0, 0x1 bne _08118420 - ldr r2, =gUnknown_02022E1A + ldr r2, =gBattle_BG1_Y ldrh r1, [r2] ldr r0, =0x0000ffb0 cmp r1, r0 @@ -50706,7 +50706,7 @@ _08118400: b _0811842C .pool _08118420: - ldr r2, =gUnknown_02022E1A + ldr r2, =gBattle_BG1_Y ldrh r1, [r2] ldr r0, =0x0000ffc8 cmp r1, r0 @@ -50715,7 +50715,7 @@ _08118420: _0811842C: strh r0, [r2] _0811842E: - ldr r2, =gUnknown_02022E26 + ldr r2, =gBattle_WIN0V ldrh r1, [r2] movs r0, 0xFF lsls r0, 8 @@ -50861,13 +50861,13 @@ _08118568: cmp r0, 0x4 bne _08118580 _0811856C: - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldrh r0, [r1] adds r0, 0x8 b _0811857E .pool _08118578: - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldrh r0, [r1] adds r0, 0x6 _0811857E: @@ -50882,7 +50882,7 @@ _08118580: adds r6, r0, 0 cmp r1, 0x4 bne _081185E4 - ldr r7, =gUnknown_02022E1A + ldr r7, =gBattle_BG1_Y ldrh r0, [r4, 0x14] bl Cos2 lsls r0, 16 @@ -50988,7 +50988,7 @@ _08118662: b _0811881A .pool _08118678: - ldr r1, =gUnknown_02022E26 + ldr r1, =gBattle_WIN0V ldrh r0, [r1] subs r0, 0xFF strh r0, [r1] @@ -51065,7 +51065,7 @@ _08118708: movs r0, 0x4 strh r0, [r1, 0x12] _08118728: - ldr r2, =gUnknown_02022E26 + ldr r2, =gBattle_WIN0V ldrh r1, [r2] movs r0, 0xFF lsls r0, 8 @@ -51202,7 +51202,7 @@ task_battle_intro_anim: @ 8118844 sub sp, 0x4 lsls r0, 24 lsrs r5, r0, 24 - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldrh r0, [r1] adds r0, 0x8 strh r0, [r1] @@ -51288,7 +51288,7 @@ _08118908: b _08118A96 .pool _0811891C: - ldr r1, =gUnknown_02022E26 + ldr r1, =gBattle_WIN0V ldrh r0, [r1] subs r0, 0xFF strh r0, [r1] @@ -51354,7 +51354,7 @@ _08118986: movs r0, 0x6 strh r0, [r2, 0x12] _081189A6: - ldr r2, =gUnknown_02022E26 + ldr r2, =gBattle_WIN0V ldrh r1, [r2] movs r0, 0xFF lsls r0, 8 @@ -51505,7 +51505,7 @@ task00_battle_intro_wireless: @ 8118AC0 ldrsh r0, [r7, r2] cmp r0, 0 bne _08118B36 - ldr r2, =gUnknown_02022E18 + ldr r2, =gBattle_BG1_X ldrh r1, [r2] movs r0, 0x80 lsls r0, 8 @@ -51519,7 +51519,7 @@ task00_battle_intro_wireless: @ 8118AC0 _08118AFE: adds r0, r1, 0x3 strh r0, [r2] - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X ldrh r0, [r1] subs r0, 0x3 strh r0, [r1] @@ -51652,7 +51652,7 @@ _08118BA8: b _08118D5A .pool _08118C38: - ldr r1, =gUnknown_02022E26 + ldr r1, =gBattle_WIN0V ldrh r0, [r1] subs r0, 0xFF strh r0, [r1] @@ -51683,7 +51683,7 @@ _08118C50: b _08118D5A .pool _08118C7C: - ldr r2, =gUnknown_02022E26 + ldr r2, =gBattle_WIN0V ldrh r1, [r2] movs r0, 0xFF lsls r0, 8 @@ -51874,21 +51874,21 @@ _08118DD4: ldr r1, =0x00003f3f movs r0, 0x4A bl SetGpuReg - ldr r1, =gUnknown_02022E16 + ldr r1, =gBattle_BG0_Y ldr r2, =0x0000ffd0 adds r0, r2, 0 strh r0, [r1] - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X movs r0, 0xF0 strh r0, [r1] - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X subs r2, 0xC0 adds r0, r2, 0 strh r0, [r1] b _08118FB2 .pool _08118E4C: - ldr r2, =gUnknown_02022E26 + ldr r2, =gBattle_WIN0V ldrh r3, [r2] movs r1, 0x80 lsls r1, 1 @@ -51932,7 +51932,7 @@ _08118E7E: b _08118FB2 .pool _08118EA8: - ldr r3, =gUnknown_02022E26 + ldr r3, =gBattle_WIN0V ldrh r2, [r3] movs r0, 0xFF lsls r0, 8 @@ -51958,10 +51958,10 @@ _08118EC2: subs r0, r1, 0x2 strh r0, [r3, 0xC] _08118ED8: - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldrh r0, [r3, 0xC] strh r0, [r1] - ldr r2, =gUnknown_02022E1C + ldr r2, =gBattle_BG2_X negs r1, r0 strh r1, [r2] lsls r0, 16 @@ -51973,15 +51973,15 @@ _08118ED8: b _08118FB2 .pool _08118F00: - ldr r1, =gUnknown_02022E16 + ldr r1, =gBattle_BG0_Y ldrh r0, [r1] adds r3, r0, 0x2 strh r3, [r1] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y ldrh r0, [r1] adds r0, 0x2 strh r0, [r1] - ldr r5, =gUnknown_02022E26 + ldr r5, =gBattle_WIN0V ldrh r2, [r5] movs r0, 0xFF lsls r0, 8 @@ -52078,10 +52078,10 @@ sub_8118FBC: @ 8118FBC lsls r5, 16 lsrs r5, 16 adds r0, r4, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r2, [r1] lsls r4, 2 adds r2, 0x4 @@ -52189,7 +52189,7 @@ sub_8119094: @ 8119094 lsls r0, 24 mov r9, r0 ldr r4, =0x040000d4 - ldr r0, =gBattleSpritesGfx + ldr r0, =gMonSpritesGfxPtr ldr r0, [r0] lsrs r2, 22 adds r0, 0x4 diff --git a/asm/battle_anim_815A0D4.s b/asm/battle_anim_815A0D4.s index 46b09081d..69835bf4e 100755 --- a/asm/battle_anim_815A0D4.s +++ b/asm/battle_anim_815A0D4.s @@ -75,7 +75,7 @@ sub_815A114: @ 815A114 b _0815A15A _0815A154: adds r0, r3, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815A15A: pop {r0} bx r0 @@ -87,7 +87,7 @@ sub_815A160: @ 815A160 adds r5, r0, 0 lsls r5, 24 lsrs r5, 24 - ldr r6, =gAnimationBankTarget + ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r1, 0x2 bl sub_80A5C6C @@ -112,7 +112,7 @@ sub_815A160: @ 815A160 movs r2, 0 bl sub_807521C adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4-r6} pop {r0} bx r0 @@ -196,7 +196,7 @@ sub_815A234: @ 815A234 movs r1, 0 bl SetGpuReg adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite pop {r4} pop {r0} bx r0 @@ -207,7 +207,7 @@ sub_815A254: @ 815A254 push {r4-r7,lr} sub sp, 0x4 adds r5, r0, 0 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -261,7 +261,7 @@ _0815A2B2: strh r6, [r5, 0x36] ldr r0, =sub_80A6EEC str r0, [r5, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 add sp, 0x4 @@ -537,7 +537,7 @@ _0815A4E0: movs r1, 0 bl SetGpuReg adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815A4FE: pop {r4} pop {r0} @@ -768,7 +768,7 @@ sub_815A6C4: @ 815A6C4 adds r4, r0, 0 movs r1, 0x1 bl sub_80A69CC - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] mov r5, sp adds r5, 0x2 @@ -776,7 +776,7 @@ sub_815A6C4: @ 815A6C4 mov r2, sp adds r3, r5, 0 bl sub_80A8924 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -869,7 +869,7 @@ _0815A798: cmp r0, 0x10 bne _0815A7AC adds r0, r3, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815A7AC: pop {r0} bx r0 @@ -891,7 +891,7 @@ sub_815A7B0: @ 815A7B0 strh r0, [r4, 0x22] ldr r0, =sub_80A67D8 str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 pop {r4,r5} @@ -919,7 +919,7 @@ sub_815A7EC: @ 815A7EC lsls r0, 24 cmp r0, 0 bne _0815A840 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -988,7 +988,7 @@ _0815A84C: cmp r0, 0xF0 bls _0815A8A4 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815A8A4: pop {r4,r5} pop {r0} @@ -1006,7 +1006,7 @@ sub_815A8AC: @ 815A8AC cmp r0, 0 beq _0815A8C2 adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815A8C2: pop {r0} bx r0 @@ -1017,7 +1017,7 @@ sub_815A8C8: @ 815A8C8 push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -1034,7 +1034,7 @@ _0815A8EC: _0815A8F0: strh r0, [r1, 0xE] adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -1046,7 +1046,7 @@ sub_815A904: @ 815A904 push {lr} lsls r0, 24 lsrs r2, r0, 24 - ldr r0, =gMoveDmgMoveAnim + ldr r0, =gAnimMoveDmg ldr r0, [r0] cmp r0, 0 ble _0815A920 @@ -1060,7 +1060,7 @@ _0815A920: _0815A924: strh r0, [r1, 0xE] adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool @@ -1077,10 +1077,10 @@ sub_815A934: @ 815A934 lsls r1, 8 movs r0, 0 bl SetGpuRegBits - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H movs r1, 0 strh r1, [r0] - ldr r4, =gUnknown_02022E26 + ldr r4, =gBattle_WIN0V strh r1, [r4] movs r0, 0x40 movs r1, 0 @@ -1235,7 +1235,7 @@ sub_815AA6C: @ 815AA6C movs r0, 0 bl SetGpuReg adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite pop {r4} pop {r0} bx r0 @@ -1251,7 +1251,7 @@ sub_815AAA4: @ 815AAA4 ldrsh r0, [r6, r1] cmp r0, 0 bne _0815AAD0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl sub_80A5C6C @@ -1349,7 +1349,7 @@ sub_815AB5C: @ 815AB5C bne _0815ABBA movs r0, 0x40 negs r0, r0 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 @@ -1380,7 +1380,7 @@ _0815ABBA: cmp r0, 0 bne _0815ABC8 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815ABC8: pop {r4} pop {r0} @@ -1416,18 +1416,18 @@ sub_815ABEC: @ 815ABEC ldr r1, =0x00001f3f movs r0, 0x48 bl SetGpuReg - ldr r1, =gUnknown_02022E28 + ldr r1, =gBattle_WIN1H ldr r2, =0x000098f0 adds r0, r2, 0 strh r0, [r1] - ldr r1, =gUnknown_02022E2A + ldr r1, =gBattle_WIN1V movs r0, 0xA0 strh r0, [r1] - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H ldrh r1, [r0] movs r0, 0x42 bl SetGpuReg - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V ldrh r1, [r0] movs r0, 0x46 bl SetGpuReg @@ -1437,10 +1437,10 @@ _0815AC40: ldr r1, =0x00001f3f movs r0, 0x48 bl SetGpuReg - ldr r1, =gUnknown_02022E28 + ldr r1, =gBattle_WIN1H movs r0, 0xF0 strh r0, [r1] - ldr r4, =gUnknown_02022E2A + ldr r4, =gBattle_WIN1V ldr r1, =0x000078a0 adds r0, r1, 0 strh r0, [r4] @@ -1456,7 +1456,7 @@ _0815AC40: bl SetGpuRegBits _0815AC70: adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4,r5} pop {r0} bx r0 @@ -1471,10 +1471,10 @@ sub_815AC8C: @ 815AC8C ldr r1, =0x00003f3f movs r0, 0x48 bl SetGpuReg - ldr r0, =gUnknown_02022E28 + ldr r0, =gBattle_WIN1H movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E2A + ldr r0, =gBattle_WIN1V strh r1, [r0] bl IsContest lsls r0, 24 @@ -1486,7 +1486,7 @@ sub_815AC8C: @ 815AC8C bl ClearGpuRegBits _0815ACB8: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -1502,11 +1502,11 @@ sub_815ACD0: @ 815ACD0 ldrsh r0, [r6, r1] cmp r0, 0 bne _0815ACEC - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker b _0815ACEE .pool _0815ACEC: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget _0815ACEE: ldrb r0, [r4] movs r1, 0 @@ -1585,7 +1585,7 @@ sub_815AD4C: @ 815AD4C cmp r0, r1 bge _0815ADAA adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite b _0815ADAA .pool _0815AD98: @@ -1596,7 +1596,7 @@ _0815AD98: cmp r0, r1 ble _0815ADAA adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815ADAA: pop {r0} bx r0 @@ -1618,18 +1618,18 @@ sub_815ADB0: @ 815ADB0 ldrsh r0, [r0, r1] cmp r0, 0 bne _0815ADDC - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker b _0815ADDE .pool _0815ADDC: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget _0815ADDE: ldrb r0, [r4] bl sub_80A6190 lsls r0, 24 lsrs r6, r0, 24 ldrb r0, [r4] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r7, r0, 24 adds r0, r6, 0 @@ -1655,11 +1655,11 @@ _0815AE08: strh r2, [r5, 0x16] cmp r7, 0x1 bne _0815AE30 - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X b _0815AE32 .pool _0815AE30: - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X _0815AE32: ldrh r2, [r0] strh r2, [r5, 0x18] @@ -1882,7 +1882,7 @@ _0815AFC4: strb r0, [r1, 0x15] _0815AFDA: adds r0, r7, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815AFE0: pop {r4-r7} pop {r0} @@ -1903,7 +1903,7 @@ sub_815AFF0: @ 815AFF0 movs r5, 0 strh r5, [r4, 0x8] strh r5, [r4, 0xA] - ldr r6, =gAnimationBankAttacker + ldr r6, =gAnimBankAttacker ldrb r0, [r6] movs r1, 0x2 bl sub_80A5C6C @@ -2004,7 +2004,7 @@ _0815B0BC: lsrs r4, r0, 24 movs r0, 0x40 negs r0, r0 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 @@ -2162,7 +2162,7 @@ _0815B220: cmp r0, 0 bne _0815B22E adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815B22E: add sp, 0x8 pop {r3} @@ -2262,7 +2262,7 @@ _0815B2D8: ldrsh r0, [r5, r1] cmp r0, 0x3D bne _0815B324 - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 ldrh r0, [r5, 0x24] @@ -2278,7 +2278,7 @@ _0815B2D8: strh r1, [r5, 0x26] movs r0, 0x14 strh r0, [r5, 0x2E] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -2339,7 +2339,7 @@ _0815B37C: cmp r0, 0 bne _0815B38E adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815B38E: pop {r4,r5} pop {r0} @@ -2370,7 +2370,7 @@ _0815B3B4: beq _0815B478 b _0815B496 _0815B3BE: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -2471,7 +2471,7 @@ _0815B478: cmp r0, r1 bge _0815B496 adds r0, r5, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815B496: pop {r4-r6} pop {r0} @@ -2482,7 +2482,7 @@ _0815B496: sub_815B49C: @ 815B49C push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -2513,7 +2513,7 @@ sub_815B4D4: @ 815B4D4 ldrh r0, [r4, 0x2E] adds r0, 0x48 strh r0, [r4, 0x2E] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -2578,7 +2578,7 @@ _0815B54C: cmp r0, r1 bls _0815B566 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815B566: pop {r4,r5} pop {r0} @@ -2747,7 +2747,7 @@ _0815B69C: cmp r0, 0 bne _0815B6AE adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815B6AE: pop {r4,r5} pop {r0} @@ -2789,7 +2789,7 @@ _0815B6F4: cmp r0, 0 bne _0815B706 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815B706: pop {r4,r5} pop {r0} @@ -2814,7 +2814,7 @@ _0815B71E: movs r0, 0x90 lsls r0, 4 strh r0, [r4, 0x30] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] movs r1, 0x3 bl sub_80A5C6C @@ -2845,7 +2845,7 @@ _0815B748: cmp r0, r1 ble _0815B770 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815B770: pop {r4} pop {r0} @@ -2887,7 +2887,7 @@ _0815B7B8: cmp r0, 0 bne _0815B7CA adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815B7CA: pop {r4,r5} pop {r0} @@ -2933,9 +2933,9 @@ _0815B81C: movs r0, 0x4C movs r1, 0 bl SetGpuReg - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -2943,14 +2943,14 @@ _0815B81C: movs r0, 0x1 movs r1, 0x2 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute b _0815B84E .pool _0815B844: movs r0, 0x2 movs r1, 0x2 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute _0815B84E: ldr r0, =gTasks mov r6, r8 @@ -2996,9 +2996,9 @@ _0815B886: _0815B8A6: b _0815BA7A _0815B8A8: - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] - ldr r1, =gAnimationBankTarget + ldr r1, =gAnimBankTarget ldrb r1, [r1] mov r2, r8 lsls r4, r2, 2 @@ -3024,13 +3024,13 @@ _0815B8E0: lsls r0, 24 lsrs r1, r0, 24 _0815B8EA: - ldr r0, =gBattleSpritesGfx + ldr r0, =gMonSpritesGfxPtr ldr r2, [r0] lsls r0, r1, 2 adds r2, 0x4 adds r2, r0 ldr r1, =gBattleMonForms - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r1, [r0] @@ -3051,16 +3051,16 @@ _0815B8EA: lsls r0, 24 cmp r0, 0 beq _0815BA1C - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r0, [r5] ldr r0, [r0, 0x18] ldrh r0, [r0] - bl sub_80DB2A8 + bl IsSpeciesNotUnown adds r4, r0, 0 ldr r0, [r5] ldr r0, [r0, 0x18] ldrh r0, [r0, 0x2] - bl sub_80DB2A8 + bl IsSpeciesNotUnown lsls r4, 24 lsls r0, 24 cmp r4, r0 @@ -3113,17 +3113,17 @@ _0815B988: cmp r5, 0x7 ble _0815B980 _0815B99C: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x18] ldrh r0, [r0, 0x2] - bl sub_80DB2A8 + bl IsSpeciesNotUnown lsls r0, 24 cmp r0, 0 beq _0815B9EC ldr r3, =gSprites ldr r4, =gBankSpriteIds - ldr r2, =gAnimationBankAttacker + ldr r2, =gAnimBankAttacker ldrb r0, [r2] adds r0, r4 ldrb r1, [r0] @@ -3139,7 +3139,7 @@ _0815B99C: _0815B9EC: ldr r3, =gSprites ldr r4, =gBankSpriteIds - ldr r2, =gAnimationBankAttacker + ldr r2, =gAnimBankAttacker ldrb r0, [r2] adds r0, r4 ldrb r1, [r0] @@ -3209,9 +3209,9 @@ _0815BA82: movs r0, 0x4C movs r1, 0 bl SetGpuReg - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -3219,20 +3219,20 @@ _0815BA82: movs r0, 0x1 movs r1, 0x2 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute b _0815BAB6 .pool _0815BAAC: movs r0, 0x2 movs r1, 0x2 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute _0815BAB6: bl IsContest lsls r0, 24 cmp r0, 0 bne _0815BAF6 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -3250,16 +3250,16 @@ _0815BAB6: cmp r0, 0 bne _0815BAF6 ldrb r0, [r4] - ldr r1, =gUnknown_020244D0 + ldr r1, =gBattleSpritesDataPtr ldr r1, [r1] ldr r2, [r1] lsls r1, r0, 2 adds r1, r2 ldrh r1, [r1, 0x2] - bl sub_805EE54 + bl SetBankEnemyShadowSpriteCallback _0815BAF6: mov r0, r8 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815BAFC: add sp, 0x10 pop {r3,r4} @@ -3279,7 +3279,7 @@ c3_80DFBE4: @ 815BB18 ldr r4, =gBattleAnimArgs ldr r3, =gSprites ldr r2, =gBankSpriteIds - ldr r1, =gAnimationBankAttacker + ldr r1, =gAnimBankAttacker ldrb r1, [r1] adds r1, r2 ldrb r2, [r1] @@ -3292,7 +3292,7 @@ c3_80DFBE4: @ 815BB18 lsls r1, 29 lsrs r1, 31 strh r1, [r4, 0xE] - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -3305,14 +3305,14 @@ sub_815BB58: @ 815BB58 adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] - ldr r1, =gAnimationBankTarget + ldr r1, =gAnimBankTarget ldrb r1, [r1] movs r2, 0x1 bl sub_805E448 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -3361,11 +3361,11 @@ _0815BBC8: movs r0, 0x1 movs r1, 0 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute bl IsContest lsls r0, 24 cmp r0, 0 @@ -3373,7 +3373,7 @@ _0815BBC8: movs r0, 0x1 movs r1, 0x3 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute _0815BC02: mov r0, sp bl sub_80A6B30 @@ -3385,30 +3385,30 @@ _0815BC02: lsls r0, 24 cmp r0, 0 beq _0815BC34 - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldr r3, =0x0000ffc8 b _0815BC5C .pool _0815BC34: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 cmp r0, 0 beq _0815BC58 - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldr r2, =0x0000ff79 adds r0, r2, 0 b _0815BC5E .pool _0815BC58: - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldr r3, =0x0000fff6 _0815BC5C: adds r0, r3, 0 _0815BC5E: strh r0, [r1] - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y movs r0, 0 strh r0, [r1] mov r0, sp @@ -3428,10 +3428,10 @@ _0815BC5E: adds r1, r4 lsls r1, 3 adds r1, r0 - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X ldrh r0, [r0] strh r0, [r1, 0x1C] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y ldrh r0, [r0] strh r0, [r1, 0x1E] ldrh r0, [r1, 0x8] @@ -3507,7 +3507,7 @@ _0815BD20: ldrsh r0, [r4, r2] cmp r0, 0 bne _0815BDF2 - ldr r2, =gUnknown_02022E18 + ldr r2, =gBattle_BG1_X ldr r1, =gUnknown_085CE460 movs r3, 0xC ldrsh r0, [r4, r3] @@ -3551,7 +3551,7 @@ _0815BD8E: strh r0, [r1, 0x8] movs r0, 0x40 negs r0, r0 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 @@ -3571,16 +3571,16 @@ _0815BDA6: movs r0, 0x1 movs r1, 0x3 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute _0815BDC8: movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations - ldr r0, =gUnknown_02022E18 + bl SetAnimBgAttribute + ldr r0, =gBattle_BG1_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r1, [r0] movs r0, 0x50 movs r1, 0 @@ -3589,7 +3589,7 @@ _0815BDC8: movs r1, 0 bl SetGpuReg adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815BDF2: add sp, 0x10 pop {r4} @@ -3621,7 +3621,7 @@ sub_815BE04: @ 815BE04 lsls r0, 16 lsrs r5, r0, 16 _0815BE2E: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl sub_80A5C6C @@ -3870,7 +3870,7 @@ sub_815BFF4: @ 815BFF4 adds r0, r5 bl DestroySprite adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815C040: pop {r4-r6} pop {r0} @@ -3966,11 +3966,11 @@ _0815C0EC: movs r0, 0x1 movs r1, 0 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute bl IsContest lsls r0, 24 cmp r0, 0 @@ -3978,7 +3978,7 @@ _0815C0EC: movs r0, 0x1 movs r1, 0x3 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute _0815C124: mov r0, sp bl sub_80A6B30 @@ -3990,66 +3990,66 @@ _0815C124: lsls r0, 24 cmp r0, 0 beq _0815C15C - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldr r3, =0x0000ffc8 adds r0, r3, 0 b _0815C1CA .pool _0815C15C: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankIdentity lsls r0, 24 lsrs r4, r0, 24 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _0815C1B4 cmp r4, 0x1 bne _0815C180 - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldr r2, =0x0000ff65 adds r0, r2, 0 strh r0, [r1] _0815C180: cmp r4, 0x3 bne _0815C18C - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldr r3, =0x0000ff8d adds r0, r3, 0 strh r0, [r1] _0815C18C: cmp r4, 0 bne _0815C196 - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X movs r0, 0xE strh r0, [r1] _0815C196: cmp r4, 0x2 bne _0815C1CC - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldr r2, =0x0000ffec b _0815C1C8 .pool _0815C1B4: cmp r4, 0x1 bne _0815C1C0 - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldr r3, =0x0000ff79 adds r0, r3, 0 strh r0, [r1] _0815C1C0: cmp r4, 0 bne _0815C1CC - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldr r2, =0x0000fff6 _0815C1C8: adds r0, r2, 0 _0815C1CA: strh r0, [r1] _0815C1CC: - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y movs r0, 0 strh r0, [r1] mov r0, sp @@ -4069,10 +4069,10 @@ _0815C1CC: adds r1, r6 lsls r1, 3 adds r1, r0 - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X ldrh r0, [r0] strh r0, [r1, 0x1C] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y ldrh r0, [r0] strh r0, [r1, 0x1E] b _0815C2A4 @@ -4085,14 +4085,14 @@ _0815C224: adds r5, r0, r1 movs r0, 0 strh r0, [r5, 0xE] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _0815C268 - ldr r2, =gUnknown_02022E18 + ldr r2, =gBattle_BG1_X ldr r1, =gUnknown_085CE4A4 movs r3, 0xC ldrsh r0, [r5, r3] @@ -4105,7 +4105,7 @@ _0815C224: b _0815C27A .pool _0815C268: - ldr r2, =gUnknown_02022E18 + ldr r2, =gBattle_BG1_X ldr r1, =gUnknown_085CE4A4 movs r3, 0xC ldrsh r0, [r5, r3] @@ -4229,16 +4229,16 @@ _0815C34A: movs r0, 0x1 movs r1, 0x3 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute _0815C36C: movs r0, 0x1 movs r1, 0x4 movs r2, 0x1 - bl lcd_bg_operations - ldr r0, =gUnknown_02022E18 + bl SetAnimBgAttribute + ldr r0, =gBattle_BG1_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r1, [r0] movs r0, 0x50 movs r1, 0 @@ -4247,7 +4247,7 @@ _0815C36C: movs r1, 0 bl SetGpuReg adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815C396: add sp, 0x10 pop {r4-r6} @@ -4291,7 +4291,7 @@ _0815C3E8: cmp r0, 0 bne _0815C3FA adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815C3FA: pop {r4,r5} pop {r0} @@ -4325,7 +4325,7 @@ _0815C41E: ldrh r0, [r4, 0x32] adds r0, 0x80 strh r0, [r4, 0x32] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -4354,7 +4354,7 @@ _0815C456: cmp r0, 0x40 ble _0815C472 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815C472: pop {r4} pop {r0} @@ -4377,7 +4377,7 @@ sub_815C478: @ 815C478 cmp r0, 0 bne _0815C4A4 adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _0815C538 .pool _0815C4A4: @@ -4427,11 +4427,11 @@ _0815C4BC: ldrsh r0, [r5, r1] cmp r0, 0 bne _0815C508 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _0815C50A .pool _0815C508: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _0815C50A: ldrb r0, [r0] bl GetBankSide @@ -4632,7 +4632,7 @@ _0815C698: lsrs r0, 24 bl sub_80A7344 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815C6A8: pop {r4-r6} pop {r0} @@ -4643,7 +4643,7 @@ _0815C6A8: sub_815C6B0: @ 815C6B0 push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -4683,7 +4683,7 @@ sub_815C700: @ 815C700 ldrh r0, [r4, 0x2E] adds r0, 0x3 strh r0, [r4, 0x2E] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -4700,7 +4700,7 @@ sub_815C700: @ 815C700 cmp r1, 0xF0 ble _0815C732 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815C732: ldrh r1, [r4, 0x2E] movs r0, 0xFF @@ -4720,7 +4720,7 @@ _0815C744: cmp r1, 0 bge _0815C75C adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815C75C: ldrh r1, [r4, 0x2E] movs r0, 0xFF @@ -4909,7 +4909,7 @@ _0815C8C8: lsrs r0, 24 bl sub_80A7344 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _0815C950 _0815C8DA: ldrh r0, [r7, 0x26] @@ -4991,7 +4991,7 @@ sub_815C95C: @ 815C95C ldrsh r0, [r6, r2] cmp r0, 0 bne _0815C990 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -5070,7 +5070,7 @@ _0815C9FA: cmp r0, 0 beq _0815CA1A adds r0, r5, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815CA1A: pop {r4-r6} pop {r0} @@ -5100,11 +5100,11 @@ sub_815CA20: @ 815CA20 mov r8, r0 cmp r1, 0 bne _0815CA5C - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _0815CA5E .pool _0815CA5C: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _0815CA5E: ldrb r0, [r0] strh r0, [r2, 0x1E] @@ -5239,7 +5239,7 @@ _0815CB50: strh r4, [r0, 0x24] strh r4, [r0, 0x26] adds r0, r7, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815CB78: pop {r3} mov r8, r3 @@ -5379,7 +5379,7 @@ _0815CC7A: cmp r0, 0x1F bne _0815CC8E adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815CC8E: pop {r4} pop {r0} @@ -5397,10 +5397,10 @@ sub_815CC94: @ 815CC94 lsls r1, 8 movs r0, 0 bl SetGpuRegBits - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H movs r1, 0 strh r1, [r0] - ldr r4, =gUnknown_02022E26 + ldr r4, =gBattle_WIN0V strh r1, [r4] movs r0, 0x40 movs r1, 0 @@ -5516,7 +5516,7 @@ _0815CD82: movs r0, 0 bl SetGpuReg adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815CDAA: pop {r4} pop {r0} @@ -5528,7 +5528,7 @@ _0815CDAA: sub_815CDB4: @ 815CDB4 push {r4,r5,lr} adds r4, r0, 0 - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -5586,14 +5586,14 @@ sub_815CDFC: @ 815CDFC cmp r0, 0xC3 ble _0815CE48 _0815CE36: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl sub_80A82E4 subs r0, 0x1 b _0815CE52 .pool _0815CE48: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl sub_80A82E4 adds r0, 0x1 @@ -5654,7 +5654,7 @@ _0815CE98: cmp r0, r1 bne _0815CEC8 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815CEC8: pop {r4} pop {r0} @@ -5681,7 +5681,7 @@ sub_815CED8: @ 815CED8 beq _0815CF18 movs r0, 0x1 str r0, [sp, 0x1C] - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x18] ldr r1, [r0, 0x10] @@ -5693,7 +5693,7 @@ sub_815CED8: @ 815CED8 b _0815D058 .pool _0815CF18: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -5702,7 +5702,7 @@ _0815CF18: movs r0, 0 str r0, [sp, 0x1C] ldr r6, =gBattlePartyID - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] lsls r0, 1 adds r0, r6 @@ -5723,7 +5723,7 @@ _0815CF18: movs r1, 0x1 bl GetMonData mov r8, r0 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r2, [r4] ldr r1, [r0] @@ -5770,7 +5770,7 @@ _0815CFC4: movs r2, 0x1 str r2, [sp, 0x1C] ldr r6, =gBattlePartyID - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] lsls r0, 1 adds r0, r6 @@ -5791,7 +5791,7 @@ _0815CFC4: movs r1, 0x1 bl GetMonData mov r8, r0 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r2, [r4] ldr r1, [r0] @@ -5834,12 +5834,12 @@ _0815D056: _0815D058: mov r10, r3 _0815D05A: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl sub_80A8328 lsls r0, 24 lsrs r7, r0, 24 - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0 bl sub_80A5C6C @@ -5864,7 +5864,7 @@ _0815D05A: str r3, [sp, 0x8] mov r0, r8 str r0, [sp, 0xC] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] str r0, [sp, 0x10] movs r0, 0x1 @@ -6072,11 +6072,11 @@ sub_815D240: @ 815D240 ldrsh r0, [r0, r1] cmp r0, 0 bne _0815D26C - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _0815D26E .pool _0815D26C: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _0815D26E: ldrb r5, [r0] movs r6, 0 @@ -6123,7 +6123,7 @@ _0815D2B4: lsrs r0, 24 strh r0, [r4, 0x26] adds r0, r5, 0 - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -6133,9 +6133,9 @@ _0815D2B4: ldr r1, =0x00003f42 movs r0, 0x50 bl SetGpuReg - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X ldrh r5, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y b _0815D316 .pool _0815D304: @@ -6144,9 +6144,9 @@ _0815D304: ldr r1, =0x00003f44 movs r0, 0x50 bl SetGpuReg - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X ldrh r5, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y _0815D316: ldrh r3, [r0] movs r7, 0 @@ -6218,22 +6218,22 @@ sub_815D398: @ 815D398 ldr r1, =gTasks adds r6, r0, r1 ldrb r0, [r6, 0x12] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _0815D3D8 - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X ldrh r0, [r0] str r0, [sp, 0x4] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y b _0815D3E0 .pool _0815D3D8: - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X ldrh r0, [r0] str r0, [sp, 0x4] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y _0815D3E0: ldrh r0, [r0] str r0, [sp, 0x8] @@ -6536,7 +6536,7 @@ _0815D62E: b _0815D63C _0815D636: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815D63C: add sp, 0x14 pop {r3-r5} @@ -6643,7 +6643,7 @@ _0815D708: cmp r0, 0 bne _0815D720 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815D720: pop {r4-r6} pop {r0} @@ -6827,7 +6827,7 @@ sub_815D870: @ 815D870 ldrb r1, [r6] adds r0, r5, 0 bl StartSpriteAffineAnim - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -6837,7 +6837,7 @@ sub_815D870: @ 815D870 negs r0, r0 strh r0, [r6, 0x2] _0815D896: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -7238,7 +7238,7 @@ sub_815DB90: @ 815DB90 mov r1, r8 adds r4, r0, r1 ldr r1, =gBankSpriteIds - ldr r2, =gAnimationBankAttacker + ldr r2, =gAnimBankAttacker ldrb r0, [r2] adds r0, r1 ldrb r0, [r0] @@ -7361,7 +7361,7 @@ sub_815DCA4: @ 815DCA4 cmp r0, 0 bne _0815DCC4 adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815DCC4: movs r0, 0 strh r0, [r5, 0x8] @@ -7373,11 +7373,11 @@ _0815DCC4: ldrsh r0, [r4, r1] cmp r0, 0 bne _0815DCE8 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _0815DCEA .pool _0815DCE8: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _0815DCEA: ldrb r4, [r0] adds r0, r4, 0 @@ -7485,7 +7485,7 @@ _0815DDCC: cmp r0, 0 bne _0815DDDA adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815DDDA: pop {r4,r5} pop {r0} @@ -7731,7 +7731,7 @@ _0815DFB4: movs r3, 0 bl BlendPalette adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815DFC6: pop {r4,r5} pop {r0} @@ -7746,7 +7746,7 @@ sub_815DFCC: @ 815DFCC lsrs r0, 24 movs r2, 0xD0 lsls r2, 1 - ldr r1, =gAnimationBankAttacker + ldr r1, =gAnimBankAttacker ldrb r3, [r1] ldr r1, =gBattleAnimArgs ldrb r1, [r1] @@ -7775,7 +7775,7 @@ sub_815DFCC: @ 815DFCC sub_815E01C: @ 815E01C push {r4-r6,lr} adds r5, r0, 0 - ldr r6, =gAnimationBankAttacker + ldr r6, =gAnimBankAttacker ldrb r0, [r6] bl GetBankSide lsls r0, 24 @@ -7837,7 +7837,7 @@ _0815E09A: lsls r0, 2 strh r0, [r5, 0x2E] _0815E0A8: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -7887,7 +7887,7 @@ sub_815E0DC: @ 815E0DC cmp r0, 0xE bne _0815E110 adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815E110: pop {r0} bx r0 @@ -7923,7 +7923,7 @@ _0815E144: strh r0, [r6, 0x14] strh r1, [r6, 0x16] _0815E14E: - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] bl GetBankSide lsls r0, 24 @@ -7968,7 +7968,7 @@ _0815E1A8: subs r0, r4, r0 _0815E1AC: strh r0, [r6, 0x1E] - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x3 bl sub_80A5C6C @@ -7987,7 +7987,7 @@ _0815E1D0: asrs r0, 2 subs r0, r4, r0 strh r0, [r6, 0x20] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -8163,7 +8163,7 @@ _0815E330: cmp r0, 0 bne _0815E33E adds r0, r7, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815E33E: add sp, 0x14 pop {r3} @@ -8319,7 +8319,7 @@ sub_815E444: @ 815E444 strh r0, [r4, 0x36] ldrh r0, [r1, 0x8] strh r0, [r4, 0x2E] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 ldr r0, =sub_80A70C0 @@ -8345,7 +8345,7 @@ sub_815E47C: @ 815E47C lsls r0, 3 ldr r1, =gTasks adds r7, r0, r1 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker mov r10, r0 ldrb r0, [r0] movs r1, 0x2 @@ -8360,7 +8360,7 @@ sub_815E47C: @ 815E47C lsls r0, 24 lsrs r0, 24 strh r0, [r7, 0x20] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget mov r8, r0 ldrb r0, [r0] movs r1, 0x2 @@ -8471,7 +8471,7 @@ _0815E596: .pool _0815E5B8: mov r0, r9 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815E5BE: pop {r3-r5} mov r8, r3 @@ -8609,7 +8609,7 @@ _0815E6BE: .pool _0815E6CC: adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815E6D2: pop {r4,r5} pop {r0} @@ -8626,11 +8626,11 @@ sub_815E6D8: @ 815E6D8 adds r6, r0, 0 cmp r1, 0 bne _0815E6F4 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _0815E6F6 .pool _0815E6F4: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _0815E6F6: ldrb r5, [r0] ldrh r2, [r4, 0x4] @@ -8798,7 +8798,7 @@ _0815E802: b _0815E83C _0815E836: adds r0, r2, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815E83C: pop {r0} bx r0 @@ -8815,7 +8815,7 @@ sub_815E840: @ 815E840 cmp r0, 0 bne _0815E85C adds r0, r1, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _0815E884 .pool _0815E85C: @@ -8926,7 +8926,7 @@ _0815E8F2: .pool _0815E948: adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815E94E: pop {r4-r6} pop {r0} @@ -8942,11 +8942,11 @@ sub_815E954: @ 815E954 ldrsh r0, [r0, r1] cmp r0, 0 bne _0815E970 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker b _0815E972 .pool _0815E970: - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget _0815E972: ldrb r0, [r4] movs r1, 0x2 @@ -9023,7 +9023,7 @@ sub_815E9BC: @ 815E9BC cmp r0, 0 bne _0815EA10 adds r0, r3, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815EA10: pop {r0} bx r0 @@ -9308,7 +9308,7 @@ _0815EC1E: cmp r0, 0x5 bne _0815EC40 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815EC40: pop {r4} pop {r0} @@ -9334,12 +9334,12 @@ sub_815EC48: @ 815EC48 lsls r0, 24 cmp r0, 0 bne _0815ECD0 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 lsrs r7, r0, 24 cmp r7, 0x1 bne _0815ECB4 - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0 bl sub_80A5C6C @@ -9363,7 +9363,7 @@ _0815ECAC: b _0815ECD2 .pool _0815ECB4: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -9586,7 +9586,7 @@ _0815EE60: movs r1, 0 strh r1, [r0, 0x24] adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815EE78: pop {r4} pop {r0} @@ -9606,11 +9606,11 @@ sub_815EE84: @ 815EE84 adds r0, r4, 0 movs r1, 0x1 bl sub_80A69CC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _0815EEAA .pool _0815EEA8: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _0815EEAA: ldrb r0, [r0] strh r0, [r4, 0x3C] @@ -9915,7 +9915,7 @@ _0815F0F8: b _0815F106 _0815F100: adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815F106: pop {r4,r5} pop {r0} @@ -9976,7 +9976,7 @@ _0815F16A: cmp r1, r0 bne _0815F17C adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815F17C: ldrh r0, [r4, 0x38] adds r0, 0x1 @@ -9991,7 +9991,7 @@ _0815F17C: sub_815F18C: @ 815F18C push {r4,r5,lr} adds r5, r0, 0 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -10126,7 +10126,7 @@ _0815F2A0: b _0815F310 .pool _0815F2AC: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl refresh_graphics_maybe @@ -10271,7 +10271,7 @@ _0815F3CE: bne _0815F482 movs r0, 0x40 negs r0, r0 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 @@ -10341,14 +10341,14 @@ _0815F460: bne _0815F482 movs r0, 0x40 negs r0, r0 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 movs r0, 0x7D bl PlaySE12WithPanning adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815F482: pop {r4-r6} pop {r0} @@ -10360,7 +10360,7 @@ _0815F482: sub_815F48C: @ 815F48C push {r4,r5,lr} adds r5, r0, 0 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -10384,7 +10384,7 @@ _0815F4B8: strb r0, [r1] ldr r4, =0x0000ffa0 _0815F4C8: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x3 bl sub_80A5C6C @@ -10431,7 +10431,7 @@ _0815F520: cmp r0, 0 blt _0815F61A movs r0, 0x3F - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 @@ -10460,7 +10460,7 @@ _0815F544: cmp r1, 0x7F ble _0815F61A movs r0, 0x3F - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 @@ -10502,7 +10502,7 @@ _0815F5B4: cmp r0, 0x8 ble _0815F61A movs r0, 0x3F - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 @@ -10543,7 +10543,7 @@ _0815F5E0: cmp r0, 0x7 bne _0815F61A adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815F61A: pop {r4,r5} pop {r0} @@ -10589,7 +10589,7 @@ sub_815F620: @ 815F620 bl obj_delete_but_dont_free_vram _0815F66E: mov r0, r8 - bl move_anim_task_del + bl DestroyAnimVisualTask b _0815F780 .pool _0815F67C: @@ -10637,9 +10637,9 @@ _0815F67C: adds r0, r2 movs r1, 0x2 strh r1, [r0, 0x8] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] ldr r1, [r1] lsls r0, 2 @@ -10742,7 +10742,7 @@ sub_815F79C: @ 815F79C cmp r0, 0 bne _0815F7BA adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815F7BA: pop {r0} bx r0 @@ -10762,9 +10762,9 @@ sub_815F7C4: @ 815F7C4 ble _0815F80E movs r0, 0 strh r0, [r4, 0x30] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] ldr r1, [r1] lsls r0, 2 @@ -10869,7 +10869,7 @@ sub_815F8A0: @ 815F8A0 ldr r3, =gBattleAnimArgs movs r2, 0 strh r2, [r3, 0xE] - ldr r1, =gHappinessMoveAnim + ldr r1, =gAnimFriendship ldrb r0, [r1] ldrb r1, [r1] adds r0, r1, 0 @@ -10899,7 +10899,7 @@ _0815F8D4: strh r0, [r3, 0xE] _0815F8E0: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -10958,7 +10958,7 @@ _0815F940: ldrh r1, [r6, 0xA] adds r0, r1 strh r0, [r6, 0xA] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -11028,7 +11028,7 @@ _0815F9F4: lsls r0, 24 cmp r0, 0 beq _0815FA28 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x18] ldr r2, [r0, 0x8] @@ -11036,7 +11036,7 @@ _0815F9F4: ldr r3, [r0, 0xC] mov r9, r3 ldrh r6, [r0] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl sub_80A82E4 lsls r0, 24 @@ -11045,7 +11045,7 @@ _0815F9F4: b _0815FB4E .pool _0815FA28: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -11072,7 +11072,7 @@ _0815FA28: movs r1, 0x1 bl GetMonData mov r9, r0 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r2, [r4] ldr r1, [r0] @@ -11136,7 +11136,7 @@ _0815FAC8: movs r1, 0x1 bl GetMonData mov r9, r0 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r2, [r4] ldr r1, [r0] @@ -11177,7 +11177,7 @@ _0815FB2E: _0815FB4E: ldr r5, =0x0000ffe0 _0815FB50: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x1 bl sub_80A5C6C @@ -11191,7 +11191,7 @@ _0815FB50: str r4, [sp, 0x8] mov r0, r9 str r0, [sp, 0xC] - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] str r0, [sp, 0x10] movs r0, 0 @@ -11202,7 +11202,7 @@ _0815FB50: bl sub_80A8394 lsls r0, 24 lsrs r5, r0, 24 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] ldrb r0, [r4] ldr r1, [r1] @@ -11253,7 +11253,7 @@ _0815FBE8: ldrh r2, [r6, 0xA] adds r0, r2 strh r0, [r6, 0xA] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -11307,7 +11307,7 @@ _0815FC56: ldrsh r0, [r6, r1] cmp r0, 0 bne _0815FCD6 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -11315,7 +11315,7 @@ _0815FC56: bne _0815FCB4 lsls r4, r5, 16 asrs r4, 16 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0 bl sub_80A5C6C @@ -11328,7 +11328,7 @@ _0815FC56: _0815FCB4: lsls r4, r5, 16 asrs r4, 16 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0 bl sub_80A5C6C @@ -11383,7 +11383,7 @@ _0815FD08: ldr r5, =gSprites adds r0, r5 bl sub_80A8610 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -11440,7 +11440,7 @@ _0815FD8C: ldrh r3, [r2, 0xA] adds r0, r3 strh r0, [r2, 0xA] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker mov r10, r0 ldrb r0, [r0] str r2, [sp, 0x18] @@ -11524,7 +11524,7 @@ _0815FE44: cmp r0, 0 bne _0815FE68 mov r0, r8 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815FE68: add sp, 0x1C pop {r3-r5} @@ -11557,13 +11557,13 @@ _0815FE92: cmp r1, r0 bne _0815FF2C movs r0, 0x3F - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 movs r0, 0x7A bl PlaySE12WithPanning - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x1 bl sub_80A5C6C @@ -11583,7 +11583,7 @@ _0815FE92: negs r0, r0 ands r0, r1 strb r0, [r2] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -11652,7 +11652,7 @@ _0815FF6E: ldrh r1, [r4, 0x32] adds r0, r1 strh r0, [r4, 0x32] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -11683,7 +11683,7 @@ _0815FFA8: cmp r0, 0x2 bne _0815FFBC adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _0815FFBC: pop {r4} pop {r0} @@ -11721,14 +11721,14 @@ _0815FFF4: .4byte _081600CC .4byte _08160132 _08160008: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] movs r1, 0 bl sub_80A5C6C lsls r0, 24 lsrs r0, 24 adds r5, r0, 0 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0 bl sub_80A5C6C @@ -11756,7 +11756,7 @@ _0816003E: .pool _08160058: ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r2, [r0] @@ -11812,7 +11812,7 @@ _081600B4: b _08160150 _081600CC: ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r2, [r0] @@ -11862,7 +11862,7 @@ _0816012A: b _08160150 _08160132: ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r2, [r0] @@ -11874,7 +11874,7 @@ _08160132: movs r1, 0 strh r1, [r0, 0x24] adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08160150: pop {r4,r5} pop {r0} @@ -11898,7 +11898,7 @@ sub_8160164: @ 8160164 lsrs r0, 24 movs r5, 0 strh r0, [r4, 0xE] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -12061,7 +12061,7 @@ _081602C4: .pool _081602D4: adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _081602DA: pop {r4-r6} pop {r0} @@ -12072,7 +12072,7 @@ _081602DA: sub_81602E0: @ 81602E0 push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -12100,7 +12100,7 @@ sub_81602E0: @ 81602E0 cmp r0, 0 beq _08160326 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08160326: ldrh r0, [r4, 0x32] adds r0, 0x1 @@ -12115,7 +12115,7 @@ _08160326: sub_8160338: @ 8160338 push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -12166,7 +12166,7 @@ _08160396: sub_81603A8: @ 81603A8 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -12377,7 +12377,7 @@ _08160536: strh r0, [r2, 0xE] _08160538: adds r0, r3, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 thumb_func_end sub_81604F0 @@ -12477,7 +12477,7 @@ _08160600: cmp r0, 0 bne _08160618 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08160618: pop {r4-r6} pop {r0} diff --git a/asm/battle_anim_8170478.s b/asm/battle_anim_8170478.s index abbca8ff7..8de82c629 100644 --- a/asm/battle_anim_8170478.s +++ b/asm/battle_anim_8170478.s @@ -16,12 +16,12 @@ sub_8170478: @ 8170478 lsls r0, 24 lsrs r0, 24 str r0, [sp, 0x10] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r4, [r0] - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r1, [r0] ldr r1, =0x00003f3f movs r0, 0x48 @@ -43,19 +43,19 @@ sub_8170478: @ 8170478 movs r0, 0x1 movs r1, 0x4 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute movs r0, 0x1 movs r1, 0 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute movs r0, 0x1 movs r1, 0x1 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute movs r0, 0x1 movs r1, 0x3 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute ldr r0, =gHealthBoxesIds adds r4, r0 ldrb r0, [r4] @@ -168,12 +168,12 @@ sub_8170478: @ 8170478 lsls r1, 4 movs r2, 0x20 bl LoadCompressedPalette - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldrh r0, [r7, 0x20] negs r0, r0 adds r0, 0x20 strh r0, [r1] - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y ldrh r0, [r7, 0x22] negs r0, r0 subs r0, 0x20 @@ -212,7 +212,7 @@ sub_8170660: @ 8170660 push {r7} lsls r0, 24 lsrs r7, r0, 24 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] mov r8, r0 ldr r1, =gTasks @@ -225,7 +225,7 @@ sub_8170660: @ 8170660 adds r1, r0 movs r3, 0 strh r1, [r5, 0x22] - ldr r2, =gUnknown_02022E1A + ldr r2, =gBattle_BG1_Y lsls r0, r1, 16 lsrs r0, 24 ldrh r4, [r2] @@ -317,9 +317,9 @@ _08170708: bne _08170814 movs r0, 0 bl sub_80A477C - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H strh r4, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r4, [r0] ldr r4, =0x00003f3f movs r0, 0x48 @@ -335,7 +335,7 @@ _08170708: movs r0, 0x1 movs r1, 0x3 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute _0817076C: movs r0, 0 bl GetGpuReg @@ -372,7 +372,7 @@ _0817076C: movs r0, 0x1 movs r1, 0x1 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute ldr r0, =gHealthBoxesIds add r0, r8 ldrb r0, [r0] @@ -412,7 +412,7 @@ _0817076C: orrs r2, r5 strb r2, [r0, 0x5] adds r0, r7, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08170814: pop {r3} mov r8, r3 @@ -540,12 +540,12 @@ sub_8170920: @ 8170920 lsrs r4, 24 mov r1, sp adds r1, 0x1 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r2, [r0] mov r0, sp bl sub_8170834 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask add sp, 0x4 pop {r4} pop {r0} @@ -628,11 +628,11 @@ sub_81709EC: @ 81709EC adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl sub_817094C adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -752,7 +752,7 @@ _08170AD6: cmp r0, 0 bne _08170AF8 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08170AF8: pop {r4-r6} pop {r0} @@ -766,7 +766,7 @@ sub_8170B04: @ 8170B04 lsls r0, 24 lsrs r6, r0, 24 ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r5, [r0] @@ -834,7 +834,7 @@ _08170B84: orrs r1, r2 strb r1, [r0] adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08170BA4: pop {r4-r6} pop {r0} @@ -852,7 +852,7 @@ sub_8170BB0: @ 8170BB0 lsls r0, 24 lsrs r5, r0, 24 ldr r1, =gBankSpriteIds - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] adds r1, r0, r1 ldrb r1, [r1] @@ -904,7 +904,7 @@ _08170C08: b _08170CEE .pool _08170C44: - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0 bl sub_80A5C6C @@ -979,7 +979,7 @@ _08170CC4: cmp r0, 0 bne _08170CEE adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08170CEE: add sp, 0xC pop {r3,r4} @@ -1003,7 +1003,7 @@ sub_8170CFC: @ 8170CFC lsrs r0, 24 bl sub_8076A78 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -1023,7 +1023,7 @@ sub_8170D24: @ 8170D24 lsrs r0, 24 bl sub_8076AE8 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -1035,7 +1035,7 @@ sub_8170D4C: @ 8170D4C push {lr} lsls r0, 24 lsrs r2, r0, 24 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x8] @@ -1051,7 +1051,7 @@ _08170D70: _08170D74: strh r0, [r1, 0xE] adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool @@ -1162,7 +1162,7 @@ sub_8170E04: @ 8170E04 adds r6, r4, r1 movs r0, 0x22 strh r0, [r6, 0x2E] - ldr r2, =gAnimationBankTarget + ldr r2, =gAnimBankTarget mov r8, r2 ldrb r0, [r2] movs r1, 0 @@ -1183,7 +1183,7 @@ sub_8170E04: @ 8170E04 adds r4, r0 ldr r0, =sub_8171104 str r0, [r4] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r3, [r0, 0x8] ldr r1, =gBankSpriteIds @@ -1246,7 +1246,7 @@ sub_8170EF0: @ 8170EF0 cmp r1, r0 bne _08170F1A adds r0, r3, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08170F1A: pop {r0} bx r0 @@ -1283,7 +1283,7 @@ _08170F54: lsls r4, 24 lsrs r4, 24 movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 bl sub_80A82E4 @@ -1313,7 +1313,7 @@ _08170F54: adds r6, r4, r0 movs r0, 0x22 strh r0, [r6, 0x2E] - ldr r1, =gAnimationBankTarget + ldr r1, =gAnimBankTarget mov r8, r1 ldrb r0, [r1] movs r1, 0 @@ -1335,7 +1335,7 @@ _08170F54: ldr r0, =SpriteCallbackDummy str r0, [r4] movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r1, =gBankSpriteIds lsls r0, 24 lsrs r0, 24 @@ -1371,7 +1371,7 @@ sub_8171030: @ 8171030 lsrs r5, r0, 24 ldr r6, =gSprites movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r1, =gBankSpriteIds lsls r0, 24 lsrs r0, 24 @@ -1422,7 +1422,7 @@ sub_81710A8: @ 81710A8 lsrs r5, r0, 24 ldr r6, =gSprites movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r4, =gBankSpriteIds lsls r0, 24 lsrs r0, 24 @@ -1438,7 +1438,7 @@ sub_81710A8: @ 81710A8 cmp r0, 0 bge _081710F4 movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 adds r0, r4 @@ -1491,7 +1491,7 @@ sub_8171134: @ 8171134 lsls r0, 24 cmp r0, 0 beq _081711D2 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x8] @@ -1550,7 +1550,7 @@ _08171188: movs r2, 0x1 movs r3, 0x1C bl sub_8171D98 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r1, [r0] movs r0, 0 movs r2, 0xE @@ -1585,7 +1585,7 @@ sub_81711E8: @ 81711E8 str r0, [r4, 0x1C] ldr r2, =gSprites ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r0, r1 ldrb r1, [r0] @@ -1607,7 +1607,7 @@ sub_8171240: @ 8171240 push {r4-r7,lr} adds r7, r0, 0 ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r0, r1 ldrb r4, [r0] @@ -1894,7 +1894,7 @@ _08171486: adds r0, r1 strh r0, [r4, 0x22] strh r5, [r4, 0x26] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x8] @@ -1940,7 +1940,7 @@ sub_81714D4: @ 81714D4 adds r0, r4, 0 movs r1, 0x1 bl StartSpriteAffineAnim - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x8] strh r5, [r0, 0xC] @@ -1982,7 +1982,7 @@ _08171540: .4byte _08171708 .4byte _08171768 _0817155C: - ldr r1, =gUnknown_020244D0 + ldr r1, =gBattleSpritesDataPtr ldr r5, [r1] ldr r2, [r5, 0x8] ldrh r3, [r2, 0xC] @@ -2060,7 +2060,7 @@ _081715EA: bl ChangeSpriteAffineAnim b _081717AE _081715F4: - ldr r1, =gUnknown_020244D0 + ldr r1, =gBattleSpritesDataPtr ldr r5, [r1] ldr r2, [r5, 0x8] ldrh r3, [r2, 0xC] @@ -2152,7 +2152,7 @@ _0817169C: movs r1, 0x1 bl ChangeSpriteAffineAnim _081716A4: - ldr r1, =gUnknown_020244D0 + ldr r1, =gBattleSpritesDataPtr ldr r5, [r1] ldr r2, [r5, 0x8] ldrh r3, [r2, 0xC] @@ -2211,7 +2211,7 @@ _08171708: strh r0, [r4, 0x34] lsls r0, 16 asrs r1, r0, 24 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x8] @@ -2333,7 +2333,7 @@ sub_81717F8: @ 81717F8 push {r7} sub sp, 0x4 adds r6, r0, 0 - ldr r7, =gAnimationBankTarget + ldr r7, =gAnimBankTarget ldrh r0, [r6, 0x36] adds r0, 0x1 movs r1, 0 @@ -2379,7 +2379,7 @@ _0817185A: movs r1, 0 strb r1, [r0] movs r0, 0x1 - bl sub_8072A88 + bl UpdateOamPriorityInAllHealthboxes bl m4aMPlayAllStop ldr r0, =0x00000213 bl PlaySE @@ -2715,7 +2715,7 @@ sub_8171AE4: @ 8171AE4 movs r2, 0x1 movs r3, 0x1C bl sub_8171D98 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r1, [r0] movs r0, 0x1 movs r2, 0xE @@ -2724,7 +2724,7 @@ sub_8171AE4: @ 8171AE4 _08171B36: ldr r6, =gSprites ldr r5, =gBankSpriteIds - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] adds r0, r5 ldrb r1, [r0] @@ -2792,7 +2792,7 @@ sub_8171BAC: @ 8171BAC _08171BCA: ldr r4, =gSprites ldr r3, =gBankSpriteIds - ldr r2, =gAnimationBankTarget + ldr r2, =gAnimBankTarget ldrb r0, [r2] adds r0, r3 ldrb r1, [r0] @@ -2841,7 +2841,7 @@ _08171C24: beq _08171C8A ldr r4, =gSprites ldr r3, =gBankSpriteIds - ldr r2, =gAnimationBankTarget + ldr r2, =gAnimBankTarget ldrb r0, [r2] adds r0, r3 ldrb r1, [r0] @@ -2859,7 +2859,7 @@ _08171C24: adds r2, r0 lsls r2, 2 adds r2, r4 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r1, [r0, 0x9] @@ -2879,7 +2879,7 @@ _08171C24: ldr r0, =gDoingBattleAnim strb r6, [r0] movs r0, 0x1 - bl sub_8072A88 + bl UpdateOamPriorityInAllHealthboxes _08171C8A: pop {r4-r7} pop {r0} @@ -2974,7 +2974,7 @@ _08171D3E: movs r0, 0 strb r0, [r1] movs r0, 0x1 - bl sub_8072A88 + bl UpdateOamPriorityInAllHealthboxes _08171D52: pop {r4} pop {r0} @@ -3083,7 +3083,7 @@ sub_8171E20: @ 8171E20 ands r0, r1 cmp r0, 0 beq _08171E3E - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x8] ldrb r0, [r1, 0xA] @@ -4419,7 +4419,7 @@ sub_8172944: @ 8172944 b _081729E2 .pool _08172970: - ldr r2, =gUnknown_020244D0 + ldr r2, =gBattleSpritesDataPtr ldr r0, [r2] ldr r1, [r0, 0x8] ldrb r0, [r1, 0xA] @@ -4730,7 +4730,7 @@ sub_8172BF0: @ 8172BF0 movs r0, 0 mov r8, r0 ldr r0, =gBankSpriteIds - ldr r3, =gAnimationBankAttacker + ldr r3, =gAnimBankAttacker ldrb r2, [r3] adds r0, r2, r0 ldrb r6, [r0] @@ -4877,7 +4877,7 @@ _08172D28: adds r0, r1 ldrb r1, [r0, 0x8] strh r1, [r0, 0x8] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -4914,7 +4914,7 @@ _08172D7E: beq _08172D8A _08172D84: adds r0, r7, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08172D8A: pop {r3} mov r8, r3 @@ -4949,9 +4949,9 @@ _08172DC0: beq _08172E4E b _08172E84 _08172DC6: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -5010,7 +5010,7 @@ _08172E14: b _08172E84 _08172E4E: ldr r1, =gBankSpriteIds - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] adds r0, r1 ldrb r1, [r0] @@ -5032,7 +5032,7 @@ _08172E4E: ldrb r0, [r4] bl sub_805E974 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08172E84: pop {r4,r5} pop {r0} @@ -5046,9 +5046,9 @@ sub_8172E9C: @ 8172E9C lsls r0, 24 lsrs r0, 24 ldr r3, =gBattleAnimArgs - ldr r1, =gUnknown_020244D0 + ldr r1, =gBattleSpritesDataPtr ldr r2, [r1] - ldr r1, =gAnimationBankAttacker + ldr r1, =gAnimBankAttacker ldrb r1, [r1] ldr r2, [r2] lsls r1, 2 @@ -5057,7 +5057,7 @@ sub_8172E9C: @ 8172E9C lsls r1, 29 lsrs r1, 31 strh r1, [r3, 0xE] - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool @@ -5068,11 +5068,11 @@ sub_8172ED0: @ 8172ED0 push {lr} lsls r0, 24 lsrs r0, 24 - ldr r2, =gAnimationBankTarget + ldr r2, =gAnimBankTarget ldr r1, =gEffectBank ldrb r1, [r1] strb r1, [r2] - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool @@ -5088,7 +5088,7 @@ sub_8172EF0: @ 8172EF0 lsrs r6, r0, 24 movs r0, 0 mov r8, r0 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r6, 1 @@ -5108,7 +5108,7 @@ sub_8172EF0: @ 8172EF0 bl GetMonData adds r4, r0, 0 adds r0, r6, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _08172FC8 @@ -5134,9 +5134,9 @@ _08172F4E: lsrs r0, 16 cmp r0, r7 bne _08172F6E - ldr r0, =gUnknown_0852528C + ldr r0, =gBattleAnimPicTable + 0x748 bl LoadCompressedObjectPicUsingHeap - ldr r0, =gUnknown_08525B94 + ldr r0, =gBattleAnimPaletteTable + 0x748 bl LoadCompressedObjectPaletteUsingHeap _08172F6E: ldr r5, =sub_8172FEC @@ -5169,7 +5169,7 @@ _08172F6E: b _08172FDE .pool _08172FC8: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r6, 1 @@ -5212,7 +5212,7 @@ sub_8172FEC: @ 8172FEC b _08173190 .pool _08173018: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0xA] @@ -5414,7 +5414,7 @@ sub_81731B0: @ 81731B0 cmp r0, 0x1 bne _081731EA ldrb r1, [r1, 0x8] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r2, [r0, 0x4] lsls r0, r1, 1 @@ -5533,14 +5533,14 @@ sub_81732B0: @ 81732B0 adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r0, =gUnknown_085253AC + ldr r0, =gBattleAnimPicTable + 0x868 bl LoadCompressedObjectPicUsingHeap - ldr r0, =gUnknown_08525CB4 + ldr r0, =gBattleAnimPaletteTable + 0x868 bl LoadCompressedObjectPaletteUsingHeap ldr r0, =0x0000281d bl IndexOfSpritePaletteTag adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -5559,7 +5559,7 @@ sub_81732E4: @ 81732E4 adds r0, r5, 0 bl FreeSpritePaletteByTag adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4,r5} pop {r0} bx r0 @@ -5575,7 +5575,7 @@ sub_817330C: @ 817330C movs r0, 0x1E strh r0, [r4, 0x2E] movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 movs r1, 0 @@ -5587,7 +5587,7 @@ sub_817330C: @ 817330C adds r0, r1 strh r0, [r4, 0x32] movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 movs r1, 0x1 @@ -5603,7 +5603,7 @@ sub_817330C: @ 817330C bl sub_80A68D4 ldr r2, =gSprites ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r1, [r0] @@ -5628,7 +5628,7 @@ sub_817339C: @ 817339C adds r3, r0, 0 ldr r2, =gSprites ldr r1, =gBankSpriteIds - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] adds r0, r1 ldrb r1, [r0] @@ -5679,7 +5679,7 @@ sub_8173400: @ 8173400 adds r4, r0, 0 ldr r5, =gSprites ldr r3, =gBankSpriteIds - ldr r2, =gAnimationBankAttacker + ldr r2, =gAnimBankAttacker ldrb r0, [r2] adds r0, r3 ldrb r1, [r0] @@ -5708,7 +5708,7 @@ sub_8173400: @ 8173400 movs r1, 0 bl StartSpriteAnim adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _08173448: pop {r4,r5} pop {r0} @@ -5732,25 +5732,25 @@ sub_817345C: @ 817345C .pool _08173478: movs r0, 0 - bl GetBankByPlayerAI - ldr r1, =gAnimationBankAttacker + bl GetBankByIdentity + ldr r1, =gAnimBankAttacker strb r0, [r1] movs r0, 0x1 b _08173498 .pool _0817348C: movs r0, 0x1 - bl GetBankByPlayerAI - ldr r1, =gAnimationBankAttacker + bl GetBankByIdentity + ldr r1, =gAnimBankAttacker strb r0, [r1] movs r0, 0 _08173498: - bl GetBankByPlayerAI - ldr r1, =gAnimationBankTarget + bl GetBankByIdentity + ldr r1, =gAnimBankTarget strb r0, [r1] _081734A0: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -5762,7 +5762,7 @@ sub_81734B4: @ 81734B4 push {lr} lsls r0, 24 lsrs r2, r0, 24 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x8] ldrh r1, [r0] @@ -5801,7 +5801,7 @@ _08173508: _0817350C: strh r0, [r1] adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool @@ -5812,18 +5812,18 @@ sub_817351C: @ 817351C push {lr} lsls r0, 24 lsrs r0, 24 - ldr r3, =gAnimationBankAttacker - ldr r1, =gUnknown_020244D0 + ldr r3, =gAnimBankAttacker + ldr r1, =gBattleSpritesDataPtr ldr r2, [r1] ldr r1, [r2, 0x8] ldrh r1, [r1] strb r1, [r3] - ldr r3, =gAnimationBankTarget + ldr r3, =gAnimBankTarget ldr r1, [r2, 0x8] ldrh r1, [r1] lsrs r1, 8 strb r1, [r3] - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool diff --git a/asm/battle_anim_sound_tasks.s b/asm/battle_anim_sound_tasks.s index 698230802..4bfd7ae68 100644 --- a/asm/battle_anim_sound_tasks.s +++ b/asm/battle_anim_sound_tasks.s @@ -22,12 +22,12 @@ sub_8158B30: @ 8158B30 strh r0, [r6, 0xA] movs r0, 0x40 negs r0, r0 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 movs r0, 0x3F - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r5, r0, 0 lsls r4, 24 asrs r4, 24 @@ -36,7 +36,7 @@ sub_8158B30: @ 8158B30 adds r0, r4, 0 adds r1, r5, 0 movs r2, 0x2 - bl sub_80A5314 + bl CalculatePanIncrement strh r4, [r6, 0xC] strh r5, [r6, 0xE] lsls r0, 24 @@ -128,7 +128,7 @@ sub_8158C04: @ 8158C04 movs r0, 0 strh r0, [r4, 0x1C] movs r0, 0x3F - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 ldrh r0, [r4, 0xA] lsls r1, 24 @@ -142,7 +142,7 @@ sub_8158C04: @ 8158C04 cmp r0, 0x2 bne _08158C4C adds r0, r5, 0 - bl move_anim_related_task_del + bl DestroyAnimSoundTask _08158C4C: pop {r4,r5} pop {r0} @@ -175,14 +175,14 @@ mas_80DCF38: @ 8158C58 ldrb r0, [r0, 0x2] lsls r0, 24 asrs r0, 24 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 lsls r5, 24 asrs r5, 24 adds r0, r5, 0 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r5, r0, 0 lsls r4, 24 asrs r4, 24 @@ -193,7 +193,7 @@ mas_80DCF38: @ 8158C58 adds r0, r4, 0 adds r1, r5, 0 adds r2, r6, 0 - bl sub_80A5314 + bl CalculatePanIncrement ldr r2, =gTasks mov r3, r8 lsls r1, r3, 2 @@ -264,7 +264,7 @@ sub_8158D08: @ 8158D08 cmp r0, 0 bne _08158D50 adds r0, r5, 0 - bl move_anim_related_task_del + bl DestroyAnimSoundTask b _08158D82 .pool _08158D50: @@ -307,7 +307,7 @@ sub_8158D8C: @ 8158D8C movs r4, 0 movs r0, 0x40 negs r0, r0 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning lsls r0, 24 lsrs r6, r0, 24 bl IsContest @@ -319,7 +319,7 @@ sub_8158D8C: @ 8158D8C ldrsh r0, [r0, r1] cmp r0, 0 bne _08158DC8 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x18] ldrh r4, [r0] @@ -327,7 +327,7 @@ sub_8158D8C: @ 8158D8C .pool _08158DC8: adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _08158E76 _08158DD0: ldr r0, =gBattleAnimArgs @@ -336,25 +336,25 @@ _08158DD0: adds r2, r0, 0 cmp r1, 0 bne _08158DEC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r4, [r0] b _08158E12 .pool _08158DEC: cmp r1, 0x1 bne _08158DFC - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r4, [r0] b _08158E12 .pool _08158DFC: cmp r1, 0x2 bne _08158E08 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _08158E0A .pool _08158E08: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _08158E0A: ldrb r1, [r0] movs r0, 0x2 @@ -369,12 +369,12 @@ _08158E12: bne _08158E38 _08158E1E: adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 bne _08158E38 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _08158E8C .pool _08158E38: @@ -416,7 +416,7 @@ _08158E76: bl PlayCry3 _08158E86: adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08158E8C: pop {r4-r6} pop {r0} @@ -432,7 +432,7 @@ sub_8158E9C: @ 8158E9C movs r4, 0 movs r0, 0x40 negs r0, r0 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning lsls r0, 24 lsrs r5, r0, 24 bl IsContest @@ -444,7 +444,7 @@ sub_8158E9C: @ 8158E9C ldrsh r0, [r0, r1] cmp r0, 0 bne _08158ED8 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x18] ldrh r4, [r0] @@ -452,7 +452,7 @@ sub_8158E9C: @ 8158E9C .pool _08158ED8: adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _08158F86 _08158EE0: ldr r0, =gBattleAnimArgs @@ -461,25 +461,25 @@ _08158EE0: adds r2, r0, 0 cmp r1, 0 bne _08158EFC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r4, [r0] b _08158F22 .pool _08158EFC: cmp r1, 0x1 bne _08158F0C - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r4, [r0] b _08158F22 .pool _08158F0C: cmp r1, 0x2 bne _08158F18 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _08158F1A .pool _08158F18: - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _08158F1A: ldrb r1, [r0] movs r0, 0x2 @@ -494,12 +494,12 @@ _08158F22: bne _08158F48 _08158F2E: adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 bne _08158F48 adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _08158FEE .pool _08158F48: @@ -571,7 +571,7 @@ _08158FD0: .pool _08158FE8: adds r0, r6, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08158FEE: pop {r4-r6} pop {r0} @@ -620,7 +620,7 @@ _08159028: movs r2, 0xA bl PlayCry3 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _0815906A _0815904E: bl IsCryPlaying @@ -633,7 +633,7 @@ _0815904E: movs r2, 0x8 bl PlayCry3 mov r0, r9 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815906A: pop {r3,r4} mov r8, r3 @@ -669,7 +669,7 @@ _081590A0: cmp r0, 0 bne _081590B0 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _081590B0: pop {r4} pop {r0} @@ -691,21 +691,21 @@ sub_81590B8: @ 81590B8 strh r1, [r0, 0x1C] movs r0, 0x40 negs r0, r0 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning lsls r0, 24 lsrs r5, r0, 24 bl IsContest lsls r0, 24 cmp r0, 0 beq _081590F8 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x18] b _08159102 .pool _081590F8: - ldr r1, =gUnknown_02038438 - ldr r0, =gAnimationBankAttacker + ldr r1, =gAnimSpeciesByBanks + ldr r0, =gAnimBankAttacker ldrb r0, [r0] lsls r0, 1 adds r0, r1 @@ -728,7 +728,7 @@ _08159102: .pool _08159130: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08159136: pop {r4,r5} pop {r0} @@ -829,7 +829,7 @@ _081591F2: bl PlayCry3 _081591FE: adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _08159204: pop {r3} mov r8, r3 @@ -849,14 +849,14 @@ sub_8159210: @ 8159210 ldrb r0, [r0, 0x2] lsls r0, 24 asrs r0, 24 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 adds r0, r5, 0 bl PlaySE1WithPanning adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4,r5} pop {r0} bx r0 @@ -874,14 +874,14 @@ sub_8159244: @ 8159244 ldrb r0, [r0, 0x2] lsls r0, 24 asrs r0, 24 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r1, r0, 0 lsls r1, 24 asrs r1, 24 adds r0, r5, 0 bl PlaySE2WithPanning adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4,r5} pop {r0} bx r0 @@ -906,14 +906,14 @@ sub_8159278: @ 8159278 ldrb r0, [r0] lsls r0, 24 asrs r0, 24 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 lsls r5, 24 asrs r5, 24 adds r0, r5, 0 - bl BattleAnimGetPanControl + bl BattleAnimAdjustPanning adds r5, r0, 0 lsls r4, 24 asrs r4, 24 @@ -924,7 +924,7 @@ sub_8159278: @ 8159278 adds r0, r4, 0 adds r1, r5, 0 adds r2, r6, 0 - bl sub_80A5314 + bl CalculatePanIncrement ldr r2, =gTasks mov r3, r8 lsls r1, r3, 2 @@ -995,7 +995,7 @@ _08159342: cmp r1, r0 bne _0815935A adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _0815935A: pop {r4,r5} pop {r0} diff --git a/asm/battle_controller_linkopponent.s b/asm/battle_controller_linkopponent.s index d28823a8b..d4e248d8c 100644 --- a/asm/battle_controller_linkopponent.s +++ b/asm/battle_controller_linkopponent.s @@ -158,7 +158,7 @@ _080644C2: thumb_func_start sub_80644D8 sub_80644D8: @ 80644D8 push {r4,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r1, [r4] ldr r3, =gActiveBank ldrb r0, [r3] @@ -199,11 +199,11 @@ sub_8064520: @ 8064520 movs r0, 0 mov r8, r0 movs r4, 0 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0806454C - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08064584 @@ -276,12 +276,12 @@ _080645CA: ldrb r1, [r7] movs r0, 0x2 eors r0, r1 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 bne _0806469C _080645DE: - ldr r1, =gUnknown_020244D0 + ldr r1, =gBattleSpritesDataPtr mov r12, r1 ldr r0, [r1] ldr r7, =gActiveBank @@ -364,7 +364,7 @@ _08064600: b _080646F2 .pool _0806469C: - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldrb r1, [r7] ldr r2, [r0, 0x4] @@ -405,7 +405,7 @@ _0806469C: adds r0, r4, 0 bl FreeSpritePaletteByTag _080646F2: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r3, =gActiveBank ldrb r1, [r3] @@ -440,7 +440,7 @@ sub_8064734: @ 8064734 push {r5-r7} movs r0, 0 mov r10, r0 - ldr r5, =gUnknown_020244D0 + ldr r5, =gBattleSpritesDataPtr ldr r0, [r5] ldr r4, =gActiveBank ldrb r2, [r4] @@ -497,7 +497,7 @@ _08064776: adds r0, r3, 0 bl sub_8172EF0 _080647B4: - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldr r2, =gActiveBank ldrb r5, [r2] @@ -531,7 +531,7 @@ _080647B4: ands r0, r1 cmp r0, 0 bne _0806487A - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0806484A @@ -557,7 +557,7 @@ _080647B4: ldr r2, =gEnemyParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute mov r1, r9 ldrb r0, [r1] eors r0, r7 @@ -567,7 +567,7 @@ _080647B4: eors r0, r7 adds r0, r4 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible _0806484A: ldr r5, =gHealthBoxesIds ldr r4, =gActiveBank @@ -583,15 +583,15 @@ _0806484A: ldr r2, =gEnemyParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r4] bl sub_8076918 ldrb r0, [r4] adds r0, r5 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible _0806487A: - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r3, =gActiveBank ldrb r1, [r3] @@ -673,7 +673,7 @@ _08064930: lsls r2, 1 bl m4aMPlayVolumeControl _0806493C: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -735,7 +735,7 @@ _08064998: lsrs r0, 24 cmp r0, 0x3 bne _080649E2 - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldrb r2, [r5] ldr r0, [r0, 0x4] @@ -760,7 +760,7 @@ _08064998: movs r1, 0 strb r1, [r0, 0x9] _080649E2: - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08064A3A @@ -799,7 +799,7 @@ _080649E2: lsls r1, 16 lsrs r1, 16 adds r0, r4, 0 - bl sub_805EE54 + bl SetBankEnemyShadowSpriteCallback _08064A3A: ldr r1, =gUnknown_03005D7C ldr r4, =gActiveBank @@ -827,8 +827,8 @@ _08064A3A: lsls r1, 16 lsrs r1, 16 adds r0, r5, 0 - bl sub_805EE54 - ldr r3, =gUnknown_020244D0 + bl SetBankEnemyShadowSpriteCallback + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldr r2, [r0, 0x8] ldrb r1, [r2, 0x9] @@ -900,7 +900,7 @@ sub_8064B04: @ 8064B04 ldrsh r0, [r0, r1] cmp r0, 0 bne _08064BB6 - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r0, [r6] ldr r1, [r0, 0x4] lsls r4, r3, 1 @@ -974,7 +974,7 @@ sub_8064BC0: @ 8064BC0 ldrb r0, [r6] adds r0, r5 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible lsls r4, 16 asrs r1, r4, 16 movs r0, 0x1 @@ -985,7 +985,7 @@ sub_8064BC0: @ 8064BC0 adds r0, r5 ldrb r0, [r0] movs r2, 0 - bl heathbar_draw_hp + bl UpdateHpTextInHealthbox b _08064C0C .pool _08064C08: @@ -1017,7 +1017,7 @@ sub_8064C14: @ 8064C14 ldr r0, =gHealthBoxesIds adds r0, r3, r0 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl LinkOpponentBufferExecCompleted _08064C42: pop {r0} @@ -1028,7 +1028,7 @@ _08064C42: thumb_func_start sub_8064C58 sub_8064C58: @ 8064C58 push {r4-r6,lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r6, =gActiveBank ldrb r2, [r6] @@ -1065,7 +1065,7 @@ sub_8064C58: @ 8064C58 ldrb r0, [r6] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl LinkOpponentBufferExecCompleted _08064CB2: pop {r4-r6} @@ -1166,7 +1166,7 @@ sub_8064D60: @ 8064D60 ldr r0, =SpriteCallbackDummy cmp r1, r0 bne _08064DAC - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0] lsls r0, r3, 2 @@ -1198,7 +1198,7 @@ _08064DAC: thumb_func_start sub_8064DD0 sub_8064DD0: @ 8064DD0 push {r4,lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r4, =gActiveBank ldrb r1, [r4] @@ -1250,7 +1250,7 @@ _08064E2A: thumb_func_start sub_8064E50 sub_8064E50: @ 8064E50 push {r4-r7,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r5, =gActiveBank ldrb r2, [r5] @@ -1321,13 +1321,13 @@ sub_8064E50: @ 8064E50 ldr r2, =gEnemyParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r5] bl sub_8076918 ldrb r0, [r5] adds r0, r4 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible ldrb r0, [r5] bl sub_805E408 ldr r1, =gBattleBankFunc @@ -1346,7 +1346,7 @@ _08064F0C: thumb_func_start sub_8064F40 sub_8064F40: @ 8064F40 push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r0, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -1413,7 +1413,7 @@ _08064F72: lsls r1, 16 lsrs r1, 16 adds r0, r4, 0 - bl sub_805EE54 + bl SetBankEnemyShadowSpriteCallback ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -1430,7 +1430,7 @@ _08064FDC: thumb_func_start sub_8065008 sub_8065008: @ 8065008 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -1454,7 +1454,7 @@ _0806502A: thumb_func_start sub_8065038 sub_8065038: @ 8065038 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -1572,7 +1572,7 @@ _0806513A: lsrs r1, 16 movs r0, 0x1 mov r2, sp - bl dp01_build_cmdbuf_x1D_1D_numargs_varargs + bl EmitDataTransfer bl LinkOpponentBufferExecCompleted add sp, 0x100 pop {r4-r6} @@ -3583,7 +3583,7 @@ sub_80662F8: @ 80662F8 muls r2, r0 adds r0, r2, 0 add r0, r9 - bl sub_805DC0C + bl BattleLoadOpponentMonSpriteGfx ldrb r0, [r6] bl GetBankIdentity adds r1, r0, 0 @@ -3673,7 +3673,7 @@ sub_80662F8: @ 80662F8 lsls r1, 16 lsrs r1, 16 adds r0, r4, 0 - bl sub_805EE54 + bl SetBankEnemyShadowSpriteCallback ldr r1, =gBattleBankFunc ldrb r0, [r6] lsls r0, 2 @@ -3772,7 +3772,7 @@ sub_8066494: @ 8066494 adds r0, r1, 0 adds r0, r5 adds r1, r6, 0 - bl sub_805DC0C + bl BattleLoadOpponentMonSpriteGfx adds r0, r6, 0 bl GetBankIdentity adds r1, r0, 0 @@ -3907,7 +3907,7 @@ sub_8066624: @ 8066624 ldrb r3, [r0] cmp r3, 0 bne _0806666C - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r2, 1 @@ -3947,7 +3947,7 @@ _0806666C: ldrb r0, [r6] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl LinkOpponentBufferExecCompleted _080666A8: pop {r4-r6} @@ -3959,7 +3959,7 @@ _080666A8: thumb_func_start sub_80666BC sub_80666BC: @ 80666BC push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r4, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -4283,7 +4283,7 @@ _0806694C: bl sub_806A12C ldr r6, =gUnknown_0202499C mov r9, r7 - ldr r1, =gUnknown_083054E0 + ldr r1, =gTrainerFrontPicCoords mov r2, r8 lsls r0, r2, 2 adds r0, r1 @@ -4411,7 +4411,7 @@ _08066A76: mov r0, r8 bl sub_806A12C ldr r0, =gUnknown_0202499C - ldr r2, =gUnknown_083054E0 + ldr r2, =gTrainerFrontPicCoords mov r3, r8 lsls r1, r3, 2 adds r1, r2 @@ -4589,7 +4589,7 @@ sub_8066B94: @ 8066B94 thumb_func_start sub_8066C40 sub_8066C40: @ 8066C40 push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r4, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -4721,7 +4721,7 @@ _08066D32: ldrb r0, [r0] lsls r0, 8 orrs r6, r0 - ldr r0, =gUnknown_02038432 + ldr r0, =gAnimMoveTurn mov r8, r0 mov r0, r12 adds r0, 0x3 @@ -4729,7 +4729,7 @@ _08066D32: ldrb r0, [r1] mov r1, r8 strb r0, [r1] - ldr r3, =gMovePowerMoveAnim + ldr r3, =gAnimMovePower ldrb r1, [r5] lsls r1, 9 mov r0, r12 @@ -4743,7 +4743,7 @@ _08066D32: lsls r0, 8 orrs r2, r0 strh r2, [r3] - ldr r3, =gMoveDmgMoveAnim + ldr r3, =gAnimMoveDmg ldrb r1, [r5] lsls r1, 9 mov r0, r12 @@ -4769,7 +4769,7 @@ _08066D32: lsls r0, 24 orrs r2, r0 str r2, [r3] - ldr r2, =gHappinessMoveAnim + ldr r2, =gAnimFriendship ldrb r0, [r5] lsls r0, 9 mov r1, r12 @@ -4791,7 +4791,7 @@ _08066D32: lsls r0, 8 orrs r2, r0 strh r2, [r4] - ldr r7, =gDisableStructMoveAnim + ldr r7, =gAnimDisableStructPtr ldrb r1, [r5] lsls r1, 9 mov r0, r12 @@ -4816,7 +4816,7 @@ _08066D32: b _08066E58 .pool _08066E30: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r1, [r5] ldr r2, [r0, 0x4] @@ -4869,7 +4869,7 @@ sub_8066E70: @ 8066E70 adds r1, r2 ldrb r1, [r1] mov r8, r1 - ldr r7, =gUnknown_020244D0 + ldr r7, =gBattleSpritesDataPtr ldr r5, [r7] ldr r1, [r5, 0x4] lsls r0, r3, 1 @@ -4928,7 +4928,7 @@ _08066F08: movs r0, 0 bl sub_805EB9C adds r0, r4, 0 - bl move_anim_start_t1 + bl DoMoveAnim ldr r0, [r7] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -4977,7 +4977,7 @@ _08066F32: ands r0, r2 strb r0, [r1] _08066F80: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -5031,10 +5031,10 @@ _08066FE4: thumb_func_start sub_8066FF4 sub_8066FF4: @ 8066FF4 push {r4,r5,lr} - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] ldr r5, =gActiveBank ldrb r4, [r5] @@ -5045,7 +5045,7 @@ sub_8066FF4: @ 8066FF4 bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -5124,7 +5124,7 @@ sub_80670A0: @ 80670A0 push {r6,r7} sub sp, 0x4 movs r0, 0 - bl load_gfxc_health_bar + bl LoadBattleBarGfx ldr r3, =gBattleBufferA ldr r0, =gActiveBank mov r9, r0 @@ -5171,7 +5171,7 @@ sub_80670A0: @ 80670A0 ldrb r1, [r1] str r7, [sp] mov r2, r8 - bl sub_807294C + bl SetBattleBarStruct b _0806715A .pool _08067130: @@ -5193,7 +5193,7 @@ _08067130: ldrb r1, [r1] str r7, [sp] movs r3, 0 - bl sub_807294C + bl SetBattleBarStruct _0806715A: ldr r1, =gBattleBankFunc ldr r0, =gActiveBank @@ -5242,9 +5242,9 @@ sub_806719C: @ 806719C ldr r2, =gEnemyParty adds r1, r2 movs r2, 0x9 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r2, [r4] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x4] lsls r1, r2, 1 @@ -5565,7 +5565,7 @@ sub_806743C: @ 806743C ldrb r0, [r0] cmp r0, 0 beq _08067478 - bl sub_805EA60 + bl BattleMusicStop ldrb r1, [r5] lsls r1, 9 adds r0, r4, 0x1 @@ -5718,7 +5718,7 @@ sub_8067508: @ 8067508 adds r1, r4 ldrb r0, [r6] strh r0, [r1, 0x8] - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldrb r2, [r6] ldr r1, [r0, 0x4] @@ -5779,7 +5779,7 @@ c3_08038DC4: @ 8067618 adds r0, r1 ldrh r0, [r0, 0x8] strb r0, [r7] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08067652 @@ -5893,7 +5893,7 @@ sub_8067718: @ 8067718 b _08067812 .pool _08067748: - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r3, =gActiveBank ldrb r1, [r3] @@ -5954,13 +5954,13 @@ _080677B4: subs r4, 0x2 adds r3, r4 ldrb r3, [r3] - bl sub_80735DC + bl CreatePartyStatusSummarySprites ldr r2, =gUnknown_020244B4 ldrb r1, [r5] adds r1, r2 movs r3, 0 strb r0, [r1] - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r0, [r6] ldrb r1, [r5] ldr r2, [r0, 0x4] @@ -6000,7 +6000,7 @@ _08067812: thumb_func_start sub_806782C sub_806782C: @ 806782C push {r4,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r3, =gActiveBank ldrb r1, [r3] @@ -6036,7 +6036,7 @@ _08067864: thumb_func_start sub_8067874 sub_8067874: @ 8067874 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] ldr r0, =gActiveBank ldrb r3, [r0] @@ -6080,7 +6080,7 @@ sub_80678D0: @ 80678D0 push {r4,lr} ldr r4, =gActiveBank ldrb r0, [r4] - bl sub_80A6A90 + bl AnimBankSpriteExists lsls r0, 24 cmp r0, 0 beq _08067916 diff --git a/asm/battle_controller_linkpartner.s b/asm/battle_controller_linkpartner.s index 881228279..adc5cdb84 100644 --- a/asm/battle_controller_linkpartner.s +++ b/asm/battle_controller_linkpartner.s @@ -131,7 +131,7 @@ _0814AFA4: thumb_func_start sub_814AFBC sub_814AFBC: @ 814AFBC push {r4,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r1, [r4] ldr r3, =gActiveBank ldrb r0, [r3] @@ -168,11 +168,11 @@ _0814AFF4: sub_814B004: @ 814B004 push {r4-r6,lr} movs r6, 0 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0814B028 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0814B05C @@ -239,7 +239,7 @@ _0814B094: _0814B0A0: cmp r6, 0 beq _0814B0C6 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r3, =gActiveBank ldrb r1, [r3] @@ -270,7 +270,7 @@ sub_814B0E8: @ 814B0E8 mov r6, r9 mov r5, r8 push {r5-r7} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr mov r12, r0 ldr r0, [r0] ldr r7, =gActiveBank @@ -348,7 +348,7 @@ _0814B136: lsls r0, 2 adds r0, r2 strb r6, [r0, 0x9] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0814B1F0 @@ -383,7 +383,7 @@ _0814B136: ldr r2, =gPlayerParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r7] mov r1, r8 eors r0, r1 @@ -393,7 +393,7 @@ _0814B136: eors r0, r1 adds r0, r4 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible _0814B1F0: ldr r1, =gUnknown_03005D7C ldr r4, =gActiveBank @@ -419,14 +419,14 @@ _0814B1F0: ldr r2, =gPlayerParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r4] bl sub_8076918 ldrb r0, [r4] adds r0, r5 ldrb r0, [r0] - bl sub_80729D0 - ldr r0, =gUnknown_020244D0 + bl SetHealthboxSpriteVisible + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r2, [r0, 0x8] ldrb r1, [r2, 0x9] @@ -498,7 +498,7 @@ bx_t4_healthbar_update: @ 814B2D0 ldrb r0, [r5] adds r0, r6 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible lsls r4, 16 asrs r1, r4, 16 movs r0, 0x1 @@ -509,7 +509,7 @@ bx_t4_healthbar_update: @ 814B2D0 adds r0, r6 ldrb r0, [r0] movs r2, 0 - bl heathbar_draw_hp + bl UpdateHpTextInHealthbox b _0814B332 .pool _0814B318: @@ -587,7 +587,7 @@ sub_814B340: @ 814B340 ldrb r0, [r4] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl LinkPartnerBufferExecCompleted _0814B3BC: pop {r4-r6} @@ -599,7 +599,7 @@ _0814B3BC: thumb_func_start sub_814B3DC sub_814B3DC: @ 814B3DC push {r4-r6,lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r6, =gActiveBank ldrb r2, [r6] @@ -634,7 +634,7 @@ sub_814B3DC: @ 814B3DC ldrb r0, [r6] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl LinkPartnerBufferExecCompleted _0814B430: pop {r4-r6} @@ -737,7 +737,7 @@ sub_814B4E0: @ 814B4E0 bne _0814B532 adds r0, r3, 0 bl sub_805E408 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r2, [r4] ldr r1, [r0] @@ -769,7 +769,7 @@ _0814B532: thumb_func_start sub_814B554 sub_814B554: @ 814B554 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] ldr r0, =gActiveBank ldrb r3, [r0] @@ -808,7 +808,7 @@ sub_814B5A8: @ 814B5A8 push {r4-r7,lr} mov r7, r8 push {r7} - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldr r7, =gActiveBank ldrb r1, [r7] @@ -878,13 +878,13 @@ sub_814B5A8: @ 814B5A8 muls r1, r6 adds r1, r5 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r7] bl sub_8076918 ldrb r0, [r7] adds r0, r4 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible ldr r1, =gBattleBankFunc ldrb r0, [r7] lsls r0, 2 @@ -903,7 +903,7 @@ _0814B664: thumb_func_start sub_814B69C sub_814B69C: @ 814B69C push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r0, [r6] ldr r4, =gActiveBank ldrb r2, [r4] @@ -1021,7 +1021,7 @@ _0814B7A6: thumb_func_start sub_814B7B8 sub_814B7B8: @ 814B7B8 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -1045,7 +1045,7 @@ _0814B7DA: thumb_func_start sub_814B7E8 sub_814B7E8: @ 814B7E8 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -1113,7 +1113,7 @@ _0814B872: lsrs r1, 16 movs r0, 0x1 mov r2, sp - bl dp01_build_cmdbuf_x1D_1D_numargs_varargs + bl EmitDataTransfer bl LinkPartnerBufferExecCompleted add sp, 0x100 pop {r4-r6} @@ -3154,7 +3154,7 @@ sub_814CB0C: @ 814CB0C muls r0, r5 ldr r4, =gPlayerParty adds r0, r4 - bl sub_805DD7C + bl BattleLoadPlayerMonSpriteGfx ldrb r0, [r6] lsls r0, 1 add r0, r8 @@ -3283,7 +3283,7 @@ sub_814CC28: @ 814CC28 muls r0, r2 ldr r2, =gPlayerParty adds r0, r2 - bl sub_805DD7C + bl BattleLoadPlayerMonSpriteGfx ldrb r0, [r5] lsls r1, r0, 9 adds r1, r6 @@ -3476,7 +3476,7 @@ sub_814CE14: @ 814CE14 ldrb r3, [r0] cmp r3, 0 bne _0814CE5C - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r2, 1 @@ -3514,7 +3514,7 @@ _0814CE5C: ldrb r0, [r6] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl LinkPartnerBufferExecCompleted _0814CE92: pop {r4-r6} @@ -3526,7 +3526,7 @@ _0814CE92: thumb_func_start sub_814CEA4 sub_814CEA4: @ 814CEA4 push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r4, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -3696,7 +3696,7 @@ _0814D002: ldr r5, =gActiveBank ldrb r1, [r5] adds r0, r4, 0 - bl sub_805DF84 + bl LoadBackTrainerBankSpriteGfx ldrb r0, [r5] bl GetBankIdentity adds r1, r0, 0 @@ -3706,7 +3706,7 @@ _0814D002: bl sub_806A12C ldr r6, =gUnknown_0202499C mov r8, r7 - ldr r0, =gUnknown_08305D2C + ldr r0, =gTrainerBackPicCoords lsls r4, 2 adds r4, r0 ldrb r0, [r4] @@ -3870,7 +3870,7 @@ sub_814D0F0: @ 814D0F0 thumb_func_start sub_814D19C sub_814D19C: @ 814D19C push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r4, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -4030,7 +4030,7 @@ _0814D2CE: ldrb r0, [r0] lsls r0, 8 orrs r6, r0 - ldr r0, =gUnknown_02038432 + ldr r0, =gAnimMoveTurn mov r8, r0 mov r0, r12 adds r0, 0x3 @@ -4038,7 +4038,7 @@ _0814D2CE: ldrb r0, [r1] mov r1, r8 strb r0, [r1] - ldr r3, =gMovePowerMoveAnim + ldr r3, =gAnimMovePower ldrb r1, [r5] lsls r1, 9 mov r0, r12 @@ -4052,7 +4052,7 @@ _0814D2CE: lsls r0, 8 orrs r2, r0 strh r2, [r3] - ldr r3, =gMoveDmgMoveAnim + ldr r3, =gAnimMoveDmg ldrb r1, [r5] lsls r1, 9 mov r0, r12 @@ -4078,7 +4078,7 @@ _0814D2CE: lsls r0, 24 orrs r2, r0 str r2, [r3] - ldr r2, =gHappinessMoveAnim + ldr r2, =gAnimFriendship ldrb r0, [r5] lsls r0, 9 mov r1, r12 @@ -4100,7 +4100,7 @@ _0814D2CE: lsls r0, 8 orrs r2, r0 strh r2, [r4] - ldr r7, =gDisableStructMoveAnim + ldr r7, =gAnimDisableStructPtr ldrb r1, [r5] lsls r1, 9 mov r0, r12 @@ -4125,7 +4125,7 @@ _0814D2CE: b _0814D3F4 .pool _0814D3CC: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r1, [r5] ldr r2, [r0, 0x4] @@ -4178,7 +4178,7 @@ bx_move_anim_4: @ 814D40C adds r1, r2 ldrb r1, [r1] mov r8, r1 - ldr r7, =gUnknown_020244D0 + ldr r7, =gBattleSpritesDataPtr ldr r5, [r7] ldr r1, [r5, 0x4] lsls r0, r3, 1 @@ -4237,7 +4237,7 @@ _0814D4A4: movs r0, 0 bl sub_805EB9C adds r0, r4, 0 - bl move_anim_start_t1 + bl DoMoveAnim ldr r0, [r7] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -4286,7 +4286,7 @@ _0814D4CE: ands r0, r2 strb r0, [r1] _0814D51C: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -4340,10 +4340,10 @@ _0814D580: thumb_func_start sub_814D590 sub_814D590: @ 814D590 push {r4,r5,lr} - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] ldr r5, =gActiveBank ldrb r4, [r5] @@ -4354,7 +4354,7 @@ sub_814D590: @ 814D590 bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -4433,7 +4433,7 @@ sub_814D63C: @ 814D63C push {r6,r7} sub sp, 0x4 movs r0, 0 - bl load_gfxc_health_bar + bl LoadBattleBarGfx ldr r3, =gBattleBufferA ldr r0, =gActiveBank mov r9, r0 @@ -4480,7 +4480,7 @@ sub_814D63C: @ 814D63C ldrb r1, [r1] str r7, [sp] mov r2, r8 - bl sub_807294C + bl SetBattleBarStruct b _0814D6F6 .pool _0814D6CC: @@ -4502,7 +4502,7 @@ _0814D6CC: ldrb r1, [r1] str r7, [sp] movs r3, 0 - bl sub_807294C + bl SetBattleBarStruct _0814D6F6: ldr r1, =gBattleBankFunc ldr r0, =gActiveBank @@ -4551,9 +4551,9 @@ sub_814D738: @ 814D738 ldr r2, =gPlayerParty adds r1, r2 movs r2, 0x9 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r2, [r4] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x4] lsls r1, r2, 1 @@ -4874,7 +4874,7 @@ sub_814D9D8: @ 814D9D8 ldrb r0, [r0] cmp r0, 0 beq _0814DA14 - bl sub_805EA60 + bl BattleMusicStop ldrb r1, [r5] lsls r1, 9 adds r0, r4, 0x1 @@ -5147,7 +5147,7 @@ _0814DC06: adds r1, r4 ldrb r0, [r5] strh r0, [r1, 0x8] - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldrb r2, [r5] ldr r1, [r0, 0x4] @@ -5217,7 +5217,7 @@ _0814DCF8: mov r9, r0 ldrh r0, [r1, 0x8] strb r0, [r7] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0814DD18 @@ -5276,7 +5276,7 @@ _0814DD48: muls r0, r2 ldr r2, =gPlayerParty adds r0, r2 - bl sub_805DD7C + bl BattleLoadPlayerMonSpriteGfx ldrb r0, [r7] movs r1, 0 bl sub_814CC98 @@ -5326,7 +5326,7 @@ sub_814DDD8: @ 814DDD8 b _0814DE7C .pool _0814DE08: - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r0, [r6] ldr r5, =gActiveBank ldrb r1, [r5] @@ -5349,7 +5349,7 @@ _0814DE08: subs r4, 0x2 adds r3, r4 ldrb r3, [r3] - bl sub_80735DC + bl CreatePartyStatusSummarySprites ldr r2, =gUnknown_020244B4 ldrb r1, [r5] adds r1, r2 @@ -5394,7 +5394,7 @@ _0814DE7C: thumb_func_start sub_814DE9C sub_814DE9C: @ 814DE9C push {r4,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r3, =gActiveBank ldrb r1, [r3] @@ -5430,7 +5430,7 @@ _0814DED4: thumb_func_start sub_814DEE4 sub_814DEE4: @ 814DEE4 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] ldr r0, =gActiveBank ldrb r3, [r0] @@ -5474,7 +5474,7 @@ sub_814DF40: @ 814DF40 push {r4,lr} ldr r4, =gActiveBank ldrb r0, [r4] - bl sub_80A6A90 + bl AnimBankSpriteExists lsls r0, 24 cmp r0, 0 beq _0814DF86 diff --git a/asm/battle_controller_opponent.s b/asm/battle_controller_opponent.s index 639ef0ce6..b66e373ca 100644 --- a/asm/battle_controller_opponent.s +++ b/asm/battle_controller_opponent.s @@ -158,7 +158,7 @@ _0805F292: thumb_func_start sub_805F2A8 sub_805F2A8: @ 805F2A8 push {r4,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r1, [r4] ldr r3, =gActiveBank ldrb r0, [r3] @@ -200,11 +200,11 @@ sub_805F2F0: @ 805F2F0 push {r5-r7} movs r0, 0 mov r10, r0 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0805F32C - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0805F31E @@ -277,7 +277,7 @@ _0805F3A0: movs r6, 0x1 _0805F3A2: ldr r3, =gUnknown_020244D8 - ldr r1, =gUnknown_020244D0 + ldr r1, =gBattleSpritesDataPtr mov r8, r1 ldr r2, [r1] ldr r7, =gActiveBank @@ -449,7 +449,7 @@ _0805F4E4: ands r0, r2 strb r0, [r1, 0x1] _0805F51A: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r3, =gActiveBank ldrb r1, [r3] @@ -488,7 +488,7 @@ sub_805F560: @ 805F560 movs r0, 0 str r0, [sp] mov r10, r0 - ldr r5, =gUnknown_020244D0 + ldr r5, =gBattleSpritesDataPtr ldr r0, [r5] ldr r4, =gActiveBank ldrb r2, [r4] @@ -520,7 +520,7 @@ _0805F5A6: ands r0, r1 cmp r0, 0 bne _0805F5EE - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0805F5EE @@ -549,7 +549,7 @@ _0805F5A6: adds r0, r3, 0 bl sub_8172EF0 _0805F5EE: - ldr r2, =gUnknown_020244D0 + ldr r2, =gBattleSpritesDataPtr ldr r0, [r2] ldr r1, =gActiveBank mov r8, r1 @@ -583,7 +583,7 @@ _0805F5EE: ands r0, r1 cmp r0, 0 bne _0805F6B4 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0805F684 @@ -609,7 +609,7 @@ _0805F5EE: ldr r2, =gEnemyParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute mov r1, r8 ldrb r0, [r1] eors r0, r7 @@ -619,7 +619,7 @@ _0805F5EE: eors r0, r7 adds r0, r4 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible _0805F684: ldr r5, =gHealthBoxesIds ldr r4, =gActiveBank @@ -635,15 +635,15 @@ _0805F684: ldr r2, =gEnemyParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r4] bl sub_8076918 ldrb r0, [r4] adds r0, r5 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible _0805F6B4: - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r2, [r3] ldr r0, =gActiveBank ldrb r1, [r0] @@ -723,7 +723,7 @@ _0805F768: lsls r2, 1 bl m4aMPlayVolumeControl _0805F774: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -739,11 +739,11 @@ _0805F774: movs r0, 0x1 str r0, [sp] _0805F792: - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0805F7B2 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0805F810 @@ -838,7 +838,7 @@ _0805F86E: mov r0, r10 cmp r0, 0 beq _0805F958 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0805F8D2 @@ -877,7 +877,7 @@ _0805F86E: lsls r1, 16 lsrs r1, 16 adds r0, r4, 0 - bl sub_805EE54 + bl SetBankEnemyShadowSpriteCallback _0805F8D2: ldr r1, =gUnknown_03005D7C ldr r4, =gActiveBank @@ -905,8 +905,8 @@ _0805F8D2: lsls r1, 16 lsrs r1, 16 adds r0, r5, 0 - bl sub_805EE54 - ldr r3, =gUnknown_020244D0 + bl SetBankEnemyShadowSpriteCallback + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldr r2, [r0, 0x8] ldrb r1, [r2, 0x9] @@ -972,7 +972,7 @@ sub_805F994: @ 805F994 ldrsh r0, [r0, r1] cmp r0, 0 bne _0805F9E0 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x4] lsls r2, r3, 1 @@ -1010,7 +1010,7 @@ _0805F9E0: ldr r0, =SpriteCallbackDummy cmp r1, r0 bne _0805FA48 - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r1, [r0, 0x4] lsls r0, r3, 1 @@ -1068,7 +1068,7 @@ sub_805FA70: @ 805FA70 ldrb r0, [r6] adds r0, r5 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible lsls r4, 16 asrs r1, r4, 16 movs r0, 0x1 @@ -1079,7 +1079,7 @@ sub_805FA70: @ 805FA70 adds r0, r5 ldrb r0, [r0] movs r2, 0 - bl heathbar_draw_hp + bl UpdateHpTextInHealthbox b _0805FABC .pool _0805FAB8: @@ -1111,7 +1111,7 @@ sub_805FAC4: @ 805FAC4 ldr r0, =gHealthBoxesIds adds r0, r3, r0 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl OpponentBufferExecCompleted _0805FAF2: pop {r0} @@ -1122,7 +1122,7 @@ _0805FAF2: thumb_func_start sub_805FB08 sub_805FB08: @ 805FB08 push {r4-r6,lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r6, =gActiveBank ldrb r2, [r6] @@ -1159,7 +1159,7 @@ sub_805FB08: @ 805FB08 ldrb r0, [r6] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl OpponentBufferExecCompleted _0805FB62: pop {r4-r6} @@ -1260,7 +1260,7 @@ sub_805FC10: @ 805FC10 ldr r0, =SpriteCallbackDummy cmp r1, r0 bne _0805FC5C - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0] lsls r0, r3, 2 @@ -1292,7 +1292,7 @@ _0805FC5C: thumb_func_start bx_803AEDC bx_803AEDC: @ 805FC80 push {r4,lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r4, =gActiveBank ldrb r1, [r4] @@ -1344,7 +1344,7 @@ _0805FCDA: thumb_func_start sub_805FD00 sub_805FD00: @ 805FD00 push {r4-r7,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r5, =gActiveBank ldrb r2, [r5] @@ -1415,13 +1415,13 @@ sub_805FD00: @ 805FD00 ldr r2, =gEnemyParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r5] bl sub_8076918 ldrb r0, [r5] adds r0, r4 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible ldrb r0, [r5] bl sub_805E408 ldr r1, =gBattleBankFunc @@ -1440,7 +1440,7 @@ _0805FDBC: thumb_func_start sub_805FDF0 sub_805FDF0: @ 805FDF0 push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r0, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -1507,7 +1507,7 @@ _0805FE22: lsls r1, 16 lsrs r1, 16 adds r0, r4, 0 - bl sub_805EE54 + bl SetBankEnemyShadowSpriteCallback ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -1524,7 +1524,7 @@ _0805FE8C: thumb_func_start sub_805FEB8 sub_805FEB8: @ 805FEB8 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -1548,7 +1548,7 @@ _0805FEDA: thumb_func_start bx_803B0F4 bx_803B0F4: @ 805FEE8 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -1666,7 +1666,7 @@ _0805FFEA: lsrs r1, 16 movs r0, 0x1 mov r2, sp - bl dp01_build_cmdbuf_x1D_1D_numargs_varargs + bl EmitDataTransfer bl OpponentBufferExecCompleted add sp, 0x100 pop {r4-r6} @@ -2607,7 +2607,7 @@ _08060806: ldrb r1, [r0] movs r0, 0x1 adds r2, r4, 0 - bl dp01_build_cmdbuf_x1D_1D_numargs_varargs + bl EmitDataTransfer bl OpponentBufferExecCompleted add sp, 0x58 pop {r4-r7} @@ -3730,7 +3730,7 @@ sub_8061224: @ 8061224 ldrh r0, [r0] muls r0, r7 add r0, r10 - bl sub_805DC0C + bl BattleLoadOpponentMonSpriteGfx ldrb r0, [r6] bl GetBankIdentity adds r1, r0, 0 @@ -3828,7 +3828,7 @@ sub_8061224: @ 8061224 lsls r1, 16 lsrs r1, 16 adds r0, r4, 0 - bl sub_805EE54 + bl SetBankEnemyShadowSpriteCallback ldr r1, =gBattleBankFunc ldrb r0, [r6] lsls r0, 2 @@ -3934,7 +3934,7 @@ sub_80613DC: @ 80613DC adds r0, r1, 0 adds r0, r5 adds r1, r6, 0 - bl sub_805DC0C + bl BattleLoadOpponentMonSpriteGfx adds r0, r6, 0 bl GetBankIdentity adds r1, r0, 0 @@ -4069,7 +4069,7 @@ sub_806156C: @ 806156C ldrb r3, [r0] cmp r3, 0 bne _080615B4 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r2, 1 @@ -4109,7 +4109,7 @@ _080615B4: ldrb r0, [r6] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl OpponentBufferExecCompleted _080615F0: pop {r4-r6} @@ -4121,7 +4121,7 @@ _080615F0: thumb_func_start sub_8061604 sub_8061604: @ 8061604 push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r4, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -4339,7 +4339,7 @@ _080617CA: bl sub_806A12C ldr r6, =gUnknown_0202499C mov r9, r7 - ldr r1, =gUnknown_083054E0 + ldr r1, =gTrainerFrontPicCoords mov r2, r8 lsls r0, r2, 2 adds r0, r1 @@ -4564,7 +4564,7 @@ _080619DE: mov r0, r8 bl sub_806A12C ldr r0, =gUnknown_0202499C - ldr r2, =gUnknown_083054E0 + ldr r2, =gTrainerFrontPicCoords mov r3, r8 lsls r1, r3, 2 adds r1, r2 @@ -4741,7 +4741,7 @@ sub_8061AF0: @ 8061AF0 thumb_func_start sub_8061B9C sub_8061B9C: @ 8061B9C push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r4, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -4871,13 +4871,13 @@ _08061C8A: ldrb r1, [r1] lsls r1, 8 orrs r0, r1 - ldr r5, =gUnknown_02038432 + ldr r5, =gAnimMoveTurn mov r1, r12 adds r1, 0x3 adds r2, r1 ldrb r1, [r2] strb r1, [r5] - ldr r4, =gMovePowerMoveAnim + ldr r4, =gAnimMovePower ldrb r2, [r6] lsls r2, 9 mov r1, r12 @@ -4891,7 +4891,7 @@ _08061C8A: lsls r1, 8 orrs r3, r1 strh r3, [r4] - ldr r4, =gMoveDmgMoveAnim + ldr r4, =gAnimMoveDmg ldrb r2, [r6] lsls r2, 9 mov r1, r12 @@ -4917,7 +4917,7 @@ _08061C8A: lsls r1, 24 orrs r3, r1 str r3, [r4] - ldr r3, =gHappinessMoveAnim + ldr r3, =gAnimFriendship ldrb r1, [r6] lsls r1, 9 mov r2, r12 @@ -4939,7 +4939,7 @@ _08061C8A: lsls r1, 8 orrs r3, r1 strh r3, [r4] - ldr r3, =gDisableStructMoveAnim + ldr r3, =gAnimDisableStructPtr ldrb r2, [r6] lsls r2, 9 mov r1, r12 @@ -4962,7 +4962,7 @@ _08061C8A: b _08061D9E .pool _08061D80: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -5009,7 +5009,7 @@ bx_move_anim_7: @ 8061DB0 adds r1, r2 ldrb r1, [r1] mov r8, r1 - ldr r7, =gUnknown_020244D0 + ldr r7, =gBattleSpritesDataPtr ldr r5, [r7] ldr r1, [r5, 0x4] lsls r0, r3, 1 @@ -5068,7 +5068,7 @@ _08061E48: movs r0, 0 bl sub_805EB9C adds r0, r4, 0 - bl move_anim_start_t1 + bl DoMoveAnim ldr r0, [r7] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -5117,7 +5117,7 @@ _08061E72: ands r0, r2 strb r0, [r1] _08061EC0: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -5171,10 +5171,10 @@ _08061F24: thumb_func_start sub_8061F34 sub_8061F34: @ 8061F34 push {r4,r5,lr} - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] ldr r5, =gActiveBank ldrb r4, [r5] @@ -5185,7 +5185,7 @@ sub_8061F34: @ 8061F34 bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -5212,7 +5212,7 @@ sub_8061F90: @ 8061F90 thumb_func_start sub_8061F9C sub_8061F9C: @ 8061F9C push {lr} - bl sub_8063880 + bl AI_TrySwitchOrUseItem bl OpponentBufferExecCompleted pop {r0} bx r0 @@ -5243,7 +5243,7 @@ sub_8061FB8: @ 8061FB8 movs r0, 0x1 movs r1, 0xA _08061FD6: - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 _08061FDA: bl OpponentBufferExecCompleted b _08062156 @@ -5323,7 +5323,7 @@ _08062062: cmp r0, 0 beq _0806209C movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r5, =gBankTarget strb r0, [r5] ldr r0, =gAbsentBankFlags @@ -5337,7 +5337,7 @@ _08062062: cmp r1, 0 beq _0806209C movs r0, 0x2 - bl GetBankByPlayerAI + bl GetBankByIdentity strb r0, [r5] _0806209C: ldr r0, =gBankTarget @@ -5347,7 +5347,7 @@ _0806209C: movs r0, 0x1 movs r1, 0xA adds r2, r4, 0 - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 b _08061FDA .pool _080620C4: @@ -5378,7 +5378,7 @@ _080620C6: movs r0, 0x1 movs r1, 0xA adds r2, r4, 0 - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 b _08062152 .pool _08062108: @@ -5394,26 +5394,26 @@ _08062108: lsls r1, 24 lsrs r1, 24 adds r0, r1, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity adds r2, r0, 0 lsls r2, 24 lsrs r2, 16 orrs r2, r4 movs r0, 0x1 movs r1, 0xA - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 b _08062152 .pool _0806213C: movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity adds r2, r0, 0 lsls r2, 24 lsrs r2, 16 orrs r2, r4 movs r0, 0x1 movs r1, 0xA - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 _08062152: bl OpponentBufferExecCompleted _08062156: @@ -5435,7 +5435,7 @@ sub_806215C: @ 806215C adds r0, 0xC0 ldrb r1, [r0] movs r0, 0x1 - bl dp01_build_cmdbuf_x23_aa_0 + bl EmitCmd35 bl OpponentBufferExecCompleted pop {r0} bx r0 @@ -5456,7 +5456,7 @@ sub_8062188: @ 8062188 ldrb r0, [r1] cmp r0, 0x6 bne _08062254 - bl sub_8063A90 + bl GetMostSuitableMonToSwitchInto lsls r0, 24 lsrs r4, r0, 24 cmp r4, 0x6 @@ -5468,7 +5468,7 @@ sub_8062188: @ 8062188 cmp r0, 0 bne _080621D4 movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r5, r0, 24 adds r7, r5, 0 @@ -5476,11 +5476,11 @@ sub_8062188: @ 8062188 .pool _080621D4: movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r7, r0, 24 movs r0, 0x3 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r5, r0, 24 _080621E8: @@ -5550,7 +5550,7 @@ _0806225A: lsrs r1, 24 movs r0, 0x1 movs r2, 0 - bl dp01_build_cmdbuf_x22_a_three_bytes + bl EmitCmd34 bl OpponentBufferExecCompleted pop {r4-r7} pop {r0} @@ -5574,7 +5574,7 @@ sub_8062294: @ 8062294 push {r6,r7} sub sp, 0x4 movs r0, 0 - bl load_gfxc_health_bar + bl LoadBattleBarGfx ldr r3, =gBattleBufferA ldr r0, =gActiveBank mov r9, r0 @@ -5621,7 +5621,7 @@ sub_8062294: @ 8062294 ldrb r1, [r1] str r7, [sp] mov r2, r8 - bl sub_807294C + bl SetBattleBarStruct b _0806234E .pool _08062324: @@ -5643,7 +5643,7 @@ _08062324: ldrb r1, [r1] str r7, [sp] movs r3, 0 - bl sub_807294C + bl SetBattleBarStruct _0806234E: ldr r1, =gBattleBankFunc ldr r0, =gActiveBank @@ -5692,9 +5692,9 @@ sub_8062390: @ 8062390 ldr r2, =gEnemyParty adds r1, r2 movs r2, 0x9 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r2, [r4] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x4] lsls r1, r2, 1 @@ -6015,7 +6015,7 @@ sub_8062630: @ 8062630 ldrb r0, [r0] cmp r0, 0 beq _0806266C - bl sub_805EA60 + bl BattleMusicStop ldrb r1, [r5] lsls r1, 9 adds r0, r4, 0x1 @@ -6168,7 +6168,7 @@ sub_80626FC: @ 80626FC adds r1, r4 ldrb r0, [r6] strh r0, [r1, 0x8] - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldrb r2, [r6] ldr r1, [r0, 0x4] @@ -6244,7 +6244,7 @@ sub_8062828: @ 8062828 adds r0, r1 ldrh r0, [r0, 0x8] strb r0, [r7] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0806286C @@ -6348,7 +6348,7 @@ dp01t_30_7_0803D67C: @ 8062918 b _08062A12 .pool _08062948: - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r3, =gActiveBank ldrb r1, [r3] @@ -6409,13 +6409,13 @@ _080629B4: subs r4, 0x2 adds r3, r4 ldrb r3, [r3] - bl sub_80735DC + bl CreatePartyStatusSummarySprites ldr r2, =gUnknown_020244B4 ldrb r1, [r5] adds r1, r2 movs r3, 0 strb r0, [r1] - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r0, [r6] ldrb r1, [r5] ldr r2, [r0, 0x4] @@ -6455,7 +6455,7 @@ _08062A12: thumb_func_start bx_0803D790_t7 bx_0803D790_t7: @ 8062A2C push {r4,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r3, =gActiveBank ldrb r1, [r3] @@ -6491,7 +6491,7 @@ _08062A64: thumb_func_start sub_8062A74 sub_8062A74: @ 8062A74 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] ldr r0, =gActiveBank ldrb r3, [r0] @@ -6535,7 +6535,7 @@ sub_8062AD0: @ 8062AD0 push {r4,lr} ldr r4, =gActiveBank ldrb r0, [r4] - bl sub_80A6A90 + bl AnimBankSpriteExists lsls r0, 24 cmp r0, 0 beq _08062B16 @@ -6655,7 +6655,7 @@ sub_8062BB0: @ 8062BB0 negs r0, r0 ands r0, r1 strb r0, [r3] - ldr r0, =gUnknown_03005D00 + ldr r0, =gPreBattleCallback1 ldr r0, [r0] str r0, [r2] ldr r0, [r2, 0x8] diff --git a/asm/battle_controller_player.s b/asm/battle_controller_player.s index eb4caa013..10b675714 100644 --- a/asm/battle_controller_player.s +++ b/asm/battle_controller_player.s @@ -191,7 +191,7 @@ _080575F0: beq _08057658 movs r0, 0x5 bl PlaySE - ldr r1, =gUnknown_020244AC + ldr r1, =gActionSelectionCursor ldr r0, =gActiveBank ldrb r0, [r0] adds r0, r1 @@ -226,14 +226,14 @@ _0805764C: movs r0, 0x1 movs r1, 0x3 movs r2, 0 - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 b _080577C2 _08057658: movs r0, 0x20 ands r0, r2 cmp r0, 0 beq _08057698 - ldr r5, =gUnknown_020244AC + ldr r5, =gActionSelectionCursor ldr r4, =gActiveBank ldrb r0, [r4] adds r0, r5 @@ -249,7 +249,7 @@ _08057674: ldrb r0, [r4] adds r0, r5 ldrb r0, [r0] - bl sub_8059CF8 + bl ActionSelectionDestroyCursorAt ldrb r1, [r4] adds r1, r5 ldrb r0, [r1] @@ -261,7 +261,7 @@ _08057698: ands r0, r2 cmp r0, 0 beq _080576D8 - ldr r5, =gUnknown_020244AC + ldr r5, =gActionSelectionCursor ldr r4, =gActiveBank ldrb r0, [r4] adds r0, r5 @@ -277,7 +277,7 @@ _080576B4: ldrb r0, [r4] adds r0, r5 ldrb r0, [r0] - bl sub_8059CF8 + bl ActionSelectionDestroyCursorAt ldrb r1, [r4] adds r1, r5 ldrb r0, [r1] @@ -290,7 +290,7 @@ _080576D8: ands r0, r2 cmp r0, 0 beq _08057700 - ldr r5, =gUnknown_020244AC + ldr r5, =gActionSelectionCursor ldr r4, =gActiveBank ldrb r0, [r4] adds r0, r5 @@ -306,7 +306,7 @@ _08057700: ands r0, r2 cmp r0, 0 beq _0805774C - ldr r5, =gUnknown_020244AC + ldr r5, =gActionSelectionCursor ldr r4, =gActiveBank ldrb r0, [r4] adds r0, r5 @@ -321,7 +321,7 @@ _0805771A: ldrb r0, [r4] adds r0, r5 ldrb r0, [r0] - bl sub_8059CF8 + bl ActionSelectionDestroyCursorAt ldrb r1, [r4] adds r1, r5 ldrb r0, [r1] @@ -333,7 +333,7 @@ _08057732: adds r0, r5 ldrb r0, [r0] movs r1, 0 - bl sub_8059CB4 + bl ActionSelectionCreateCursorAt b _080577E8 .pool _0805774C: @@ -358,7 +358,7 @@ _0805775A: cmp r0, 0x2 bne _080577E8 movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r1, =gAbsentBankFlags ldrb r1, [r1] ldr r2, =gBitTable @@ -393,7 +393,7 @@ _080577B2: movs r1, 0xC _080577BC: movs r2, 0 - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 _080577C2: bl PlayerBufferExecCompleted b _080577E8 @@ -403,7 +403,7 @@ _080577DC: ands r0, r2 cmp r0, 0 beq _080577E8 - bl sub_8073314 + bl SwapHpBarsWithHpText _080577E8: pop {r4-r7} pop {r0} @@ -508,7 +508,7 @@ _080578A0: adds r0, r2 ldr r1, =sub_8039B2C str r1, [r0] - ldr r1, =gUnknown_020244B0 + ldr r1, =gMoveSelectionCursor ldr r0, =gActiveBank ldrb r0, [r0] adds r0, r1 @@ -518,7 +518,7 @@ _080578A0: orrs r2, r0 movs r0, 0x1 movs r1, 0xA - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 ldrb r0, [r4] movs r1, 0x1 bl dp11b_obj_free @@ -622,7 +622,7 @@ _080579F0: mov r1, sp adds r0, r1, r4 ldrb r0, [r0] - bl GetBankByPlayerAI + bl GetBankByIdentity strb r0, [r5] ldr r1, =gNoOfAllBanks lsls r0, 24 @@ -664,7 +664,7 @@ _08057A32: muls r0, r1 ldr r1, =gPlayerParty adds r0, r1 - ldr r1, =gUnknown_020244B0 + ldr r1, =gMoveSelectionCursor adds r2, r1 ldrb r1, [r2] adds r1, 0xD @@ -750,7 +750,7 @@ _08057B14: mov r1, sp adds r0, r1, r4 ldrb r0, [r0] - bl GetBankByPlayerAI + bl GetBankByIdentity strb r0, [r5] ldr r1, =gNoOfAllBanks lsls r0, 24 @@ -792,7 +792,7 @@ _08057B56: muls r0, r1 ldr r1, =gPlayerParty adds r0, r1 - ldr r1, =gUnknown_020244B0 + ldr r1, =gMoveSelectionCursor adds r2, r1 ldrb r1, [r2] adds r1, 0xD @@ -890,7 +890,7 @@ _08057C48: _08057C58: movs r0, 0x5 bl PlaySE - ldr r1, =gUnknown_020244B0 + ldr r1, =gMoveSelectionCursor ldr r0, =gActiveBank ldrb r0, [r0] adds r0, r1 @@ -942,7 +942,7 @@ _08057CC4: movs r0, 0x1 ands r0, r1 eors r0, r2 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r1, =gUnknown_03005D74 strb r0, [r1] _08057CDE: @@ -977,7 +977,7 @@ _08057D18: movs r0, 0x1 add r8, r0 _08057D24: - ldr r0, =gUnknown_020244B0 + ldr r0, =gMoveSelectionCursor adds r0, r3, r0 adds r1, r6, 0 adds r1, 0x8 @@ -1008,7 +1008,7 @@ _08057D5A: cmp r0, 0 bne _08057D80 _08057D62: - ldr r1, =gUnknown_020244B0 + ldr r1, =gMoveSelectionCursor ldrb r0, [r7] adds r0, r1 ldrb r2, [r0] @@ -1035,7 +1035,7 @@ _08057D80: .pool _08057DA8: movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r1, =gAbsentBankFlags ldrb r1, [r1] ldr r2, =gBitTable @@ -1052,7 +1052,7 @@ _08057DA8: _08057DD0: movs r0, 0x1 _08057DD2: - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r1, =gUnknown_03005D74 _08057DD8: strb r0, [r1] @@ -1086,7 +1086,7 @@ _08057E14: _08057E1C: movs r0, 0x1 movs r1, 0xA - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 bl PlayerBufferExecCompleted b _08057F9E .pool @@ -1095,7 +1095,7 @@ _08057E30: ands r0, r2 cmp r0, 0 beq _08057E60 - ldr r4, =gUnknown_020244B0 + ldr r4, =gMoveSelectionCursor ldrb r0, [r7] adds r2, r0, r4 ldrb r1, [r2] @@ -1119,7 +1119,7 @@ _08057E60: ands r0, r2 cmp r0, 0 beq _08057EA4 - ldr r4, =gUnknown_020244B0 + ldr r4, =gMoveSelectionCursor ldrb r0, [r7] adds r3, r0, r4 ldrb r2, [r3] @@ -1151,7 +1151,7 @@ _08057EA4: ands r0, r2 cmp r0, 0 beq _08057ED4 - ldr r4, =gUnknown_020244B0 + ldr r4, =gMoveSelectionCursor ldrb r0, [r7] adds r2, r0, r4 ldrb r1, [r2] @@ -1173,7 +1173,7 @@ _08057ED4: ands r0, r2 cmp r0, 0 beq _08057F30 - ldr r4, =gUnknown_020244B0 + ldr r4, =gMoveSelectionCursor ldrb r0, [r7] adds r3, r0, r4 ldrb r2, [r3] @@ -1221,7 +1221,7 @@ _08057F30: ands r5, r6 cmp r5, 0 bne _08057F9E - ldr r4, =gUnknown_020244B0 + ldr r4, =gMoveSelectionCursor ldrb r0, [r7] adds r0, r4 ldrb r0, [r0] @@ -1247,7 +1247,7 @@ _08057F80: bl battle_menu_cursor_related_2 ldr r0, =gText_BattleSwitchWhich movs r1, 0xB - bl battle_show_message_maybe + bl sub_814F9EC ldr r1, =gBattleBankFunc ldr r0, =gActiveBank ldrb r0, [r0] @@ -1287,10 +1287,10 @@ _08057FD6: beq _08057FF8 movs r0, 0x5 bl PlaySE - ldr r1, =gUnknown_02022E14 + ldr r1, =gBattle_BG0_X movs r0, 0 strh r0, [r1] - ldr r1, =gUnknown_02022E16 + ldr r1, =gBattle_BG0_Y movs r2, 0xA0 lsls r2, 1 adds r0, r2, 0 @@ -1302,7 +1302,7 @@ _08057FF8: ands r0, r1 cmp r0, 0 beq _08058038 - ldr r5, =gUnknown_020244B0 + ldr r5, =gMoveSelectionCursor ldr r4, =gActiveBank ldrb r0, [r4] adds r2, r0, r5 @@ -1333,7 +1333,7 @@ _08058038: ands r0, r1 cmp r0, 0 beq _08058086 - ldr r5, =gUnknown_020244B0 + ldr r5, =gMoveSelectionCursor ldr r4, =gActiveBank ldrb r0, [r4] adds r3, r0, r5 @@ -1370,7 +1370,7 @@ _08058086: ands r0, r1 cmp r0, 0 beq _080580C8 - ldr r5, =gUnknown_020244B0 + ldr r5, =gMoveSelectionCursor ldr r4, =gActiveBank ldrb r0, [r4] adds r2, r0, r5 @@ -1401,7 +1401,7 @@ _080580C8: ands r0, r1 cmp r0, 0 beq _08058116 - ldr r5, =gUnknown_020244B0 + ldr r5, =gMoveSelectionCursor ldr r4, =gActiveBank ldrb r0, [r4] adds r3, r0, r5 @@ -1457,7 +1457,7 @@ sub_8058138: @ 8058138 _08058152: movs r0, 0x5 bl PlaySE - ldr r0, =gUnknown_020244B0 + ldr r0, =gMoveSelectionCursor mov r10, r0 ldr r1, =gActiveBank mov r8, r1 @@ -1594,7 +1594,7 @@ _0805824E: adds r6, 0x1 cmp r6, 0x3 ble _0805824E - ldr r1, =gUnknown_020244B0 + ldr r1, =gMoveSelectionCursor ldrb r0, [r7] adds r0, r1 ldrb r0, [r0] @@ -1758,7 +1758,7 @@ _08058392: adds r6, 0x1 cmp r6, 0x3 ble _08058392 - ldr r4, =gUnknown_020244B0 + ldr r4, =gMoveSelectionCursor ldr r3, =gActiveBank ldrb r0, [r3] adds r0, r4 @@ -1892,7 +1892,7 @@ _080584A8: adds r0, r1 ldr r1, =sub_8057BFC str r1, [r0] - ldr r3, =gUnknown_020244B0 + ldr r3, =gMoveSelectionCursor ldrb r0, [r2] adds r0, r3 ldr r1, =gUnknown_03005D74 @@ -1915,7 +1915,7 @@ _08058500: ldr r0, =gUnknown_03005D74 ldrb r0, [r0] bl battle_menu_cursor_related - ldr r1, =gUnknown_020244B0 + ldr r1, =gMoveSelectionCursor ldr r4, =gActiveBank ldrb r0, [r4] adds r0, r1 @@ -1947,7 +1947,7 @@ _08058554: bne _0805856A b _080586E8 _0805856A: - ldr r0, =gUnknown_020244B0 + ldr r0, =gMoveSelectionCursor ldr r1, =gActiveBank ldrb r1, [r1] adds r1, r0 @@ -1990,7 +1990,7 @@ _080585BA: bcc _080585C8 b _080586E8 _080585C8: - ldr r0, =gUnknown_020244B0 + ldr r0, =gMoveSelectionCursor ldr r1, =gActiveBank ldrb r1, [r1] adds r1, r0 @@ -2010,7 +2010,7 @@ _080585E8: ands r0, r2 cmp r0, 0 beq _080586E8 - ldr r0, =gUnknown_020244B0 + ldr r0, =gMoveSelectionCursor ldr r1, =gActiveBank ldrb r1, [r1] adds r1, r0 @@ -2034,7 +2034,7 @@ _0805862C: strb r0, [r4] movs r0, 0x5 bl PlaySE - ldr r1, =gUnknown_020244B0 + ldr r1, =gMoveSelectionCursor ldr r0, =gActiveBank ldrb r0, [r0] adds r0, r1 @@ -2064,7 +2064,7 @@ _0805865C: ldrb r1, [r1] cmp r0, r1 bcs _080586E8 - ldr r0, =gUnknown_020244B0 + ldr r0, =gMoveSelectionCursor ldr r1, =gActiveBank ldrb r1, [r1] adds r1, r0 @@ -2087,7 +2087,7 @@ _080586AA: strb r0, [r4] movs r0, 0x5 bl PlaySE - ldr r1, =gUnknown_020244B0 + ldr r1, =gMoveSelectionCursor ldr r0, =gActiveBank ldrb r0, [r0] adds r0, r1 @@ -2123,7 +2123,7 @@ sub_80586F8: @ 80586F8 ldrb r0, [r0] cmp r0, 0 bne _0805875C - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _08058798 @@ -2137,7 +2137,7 @@ sub_80586F8: @ 80586F8 negs r0, r0 ands r0, r1 strb r0, [r2] - ldr r0, =gUnknown_03005D00 + ldr r0, =gPreBattleCallback1 ldr r0, [r0] str r0, [r3] ldr r0, =sub_8038D64 @@ -2166,7 +2166,7 @@ _0805875C: negs r0, r0 ands r0, r1 strb r0, [r2] - ldr r0, =gUnknown_03005D00 + ldr r0, =gPreBattleCallback1 ldr r0, [r0] str r0, [r3] ldr r0, =sub_8038D64 @@ -2233,7 +2233,7 @@ _08058810: negs r0, r0 ands r0, r1 strb r0, [r3] - ldr r0, =gUnknown_03005D00 + ldr r0, =gPreBattleCallback1 ldr r0, [r0] str r0, [r2] ldr r0, [r2, 0x8] @@ -2344,7 +2344,7 @@ _08058908: thumb_func_start sub_8058924 sub_8058924: @ 8058924 push {r4,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r1, [r4] ldr r3, =gActiveBank ldrb r0, [r3] @@ -2385,11 +2385,11 @@ sub_805896C: @ 805896C mov r5, r8 push {r5-r7} movs r7, 0 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08058998 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _080589D0 @@ -2452,7 +2452,7 @@ _08058A0A: cmp r7, 0 beq _08058B08 _08058A0E: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr mov r9, r0 ldr r0, [r0] mov r6, r10 @@ -2541,7 +2541,7 @@ _08058A0E: ldr r4, =gPlayerParty adds r0, r4 bl sub_805E990 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08058AE4 @@ -2593,7 +2593,7 @@ sub_8058B40: @ 8058B40 movs r0, 0 mov r9, r0 mov r8, r0 - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r7, =gActiveBank ldrb r2, [r7] @@ -2672,7 +2672,7 @@ _08058BB2: ands r0, r1 cmp r0, 0 bne _08058C68 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08058C38 @@ -2697,7 +2697,7 @@ _08058BB2: ldr r2, =gPlayerParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r7] eors r0, r6 bl sub_8076918 @@ -2705,7 +2705,7 @@ _08058BB2: eors r0, r6 adds r0, r4 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible _08058C38: ldr r5, =gHealthBoxesIds ldr r4, =gActiveBank @@ -2721,15 +2721,15 @@ _08058C38: ldr r2, =gPlayerParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r4] bl sub_8076918 ldrb r0, [r4] adds r0, r5 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible _08058C68: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -2743,7 +2743,7 @@ _08058C68: orrs r1, r2 strb r1, [r0, 0x1] _08058C82: - ldr r5, =gUnknown_020244D0 + ldr r5, =gBattleSpritesDataPtr ldr r0, [r5] ldr r4, =gActiveBank ldrb r2, [r4] @@ -2801,7 +2801,7 @@ _08058D08: lsls r2, 1 bl m4aMPlayVolumeControl _08058D14: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -2817,11 +2817,11 @@ _08058D14: movs r0, 0x1 mov r9, r0 _08058D32: - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08058D52 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08058DAC @@ -2915,7 +2915,7 @@ _08058E0A: mov r0, r8 cmp r0, 0 beq _08058EAA - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08058E48 @@ -2950,7 +2950,7 @@ _08058E48: ldr r1, =gSprites adds r0, r1 bl DestroySprite - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldr r2, [r0, 0x8] ldrb r1, [r2, 0x9] @@ -3015,7 +3015,7 @@ sub_8058EDC: @ 8058EDC ldr r0, =SpriteCallbackDummy cmp r4, r0 bne _08058F94 - ldr r5, =gUnknown_020244D0 + ldr r5, =gBattleSpritesDataPtr ldr r0, [r5] ldr r1, [r0, 0x4] lsls r0, r3, 1 @@ -3098,7 +3098,7 @@ _08058F94: thumb_func_start sub_8058FC0 sub_8058FC0: @ 8058FC0 push {r4,lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r4, =gActiveBank ldrb r1, [r4] @@ -3142,7 +3142,7 @@ _0805900E: thumb_func_start sub_805902C sub_805902C: @ 805902C push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r0, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -3207,13 +3207,13 @@ _0805905E: ldr r2, =gPlayerParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r5] bl sub_8076918 ldrb r0, [r5] adds r0, r4 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -3267,7 +3267,7 @@ bx_t1_healthbar_update: @ 8059130 ldrb r0, [r5] adds r0, r6 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible lsls r4, 16 asrs r1, r4, 16 movs r0, 0x1 @@ -3278,7 +3278,7 @@ bx_t1_healthbar_update: @ 8059130 adds r0, r6 ldrb r0, [r0] movs r2, 0 - bl heathbar_draw_hp + bl UpdateHpTextInHealthbox b _08059192 .pool _08059178: @@ -3338,7 +3338,7 @@ sub_80591B8: @ 80591B8 str r7, [sp, 0x8] ldrh r2, [r1, 0xA] str r2, [sp, 0xC] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -3413,9 +3413,9 @@ _080591FE: lsrs r2, 16 movs r0, 0x1 movs r1, 0xB - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 strb r5, [r4] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -3557,7 +3557,7 @@ sub_8059330: @ 8059330 negs r0, r0 str r0, [sp] mov r0, r10 - bl sub_807294C + bl SetBattleBarStruct movs r0, 0x21 bl PlaySE ldr r0, =sub_8059400 @@ -3616,7 +3616,7 @@ _08059430: lsls r4, 16 lsrs r4, 16 ldrb r0, [r5] - bl sub_80729D0 + bl SetHealthboxSpriteVisible lsls r4, 16 asrs r4, 16 movs r0, 0x1 @@ -3686,7 +3686,7 @@ _08059430: lsrs r2, 16 movs r0, 0x1 movs r1, 0xB - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 strb r5, [r4] ldr r0, =sub_8059544 str r0, [r6] @@ -3729,7 +3729,7 @@ sub_8059544: @ 8059544 adds r0, r1 ldrb r4, [r0, 0xC] ldrb r6, [r0, 0x8] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -3774,7 +3774,7 @@ sub_80595A4: @ 80595A4 lsls r0, 3 adds r2, r0, r1 ldrb r5, [r2, 0xC] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r5, 1 @@ -3795,7 +3795,7 @@ sub_80595A4: @ 80595A4 adds r0, r7, 0 movs r1, 0x38 bl GetMonData - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -3814,7 +3814,7 @@ sub_80595A4: @ 80595A4 ldrb r0, [r0] adds r1, r7, 0 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute b _08059638 .pool _08059624: @@ -3826,7 +3826,7 @@ _08059624: ldr r2, =gPlayerParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute _08059638: ldr r0, =gTasks lsls r1, r6, 2 @@ -3930,7 +3930,7 @@ sub_80596A8: @ 80596A8 ldrb r0, [r4] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl PlayerBufferExecCompleted _08059724: pop {r4-r6} @@ -3942,7 +3942,7 @@ _08059724: thumb_func_start sub_8059744 sub_8059744: @ 8059744 push {r4-r6,lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r6, =gActiveBank ldrb r2, [r6] @@ -3977,7 +3977,7 @@ sub_8059744: @ 8059744 ldrb r0, [r6] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl PlayerBufferExecCompleted _08059798: pop {r4-r6} @@ -4042,7 +4042,7 @@ sub_8059828: @ 8059828 push {lr} ldr r0, =gMain ldr r1, [r0, 0x4] - ldr r0, =sub_8038420 + ldr r0, =BattleMainCB2 cmp r1, r0 bne _08059898 ldr r0, =gPaletteFade @@ -4059,14 +4059,14 @@ sub_8059828: @ 8059828 ldrb r1, [r0] ldr r2, =gUnknown_0203CF00 movs r0, 0x1 - bl dp01_build_cmdbuf_x22_a_three_bytes + bl EmitCmd34 b _0805987A .pool _08059870: movs r0, 0x1 movs r1, 0x6 movs r2, 0 - bl dp01_build_cmdbuf_x22_a_three_bytes + bl EmitCmd34 _0805987A: ldr r1, =gBattleBufferA ldr r0, =gActiveBank @@ -4118,7 +4118,7 @@ sub_80598E0: @ 80598E0 push {lr} ldr r0, =gMain ldr r1, [r0, 0x4] - ldr r0, =sub_8038420 + ldr r0, =BattleMainCB2 cmp r1, r0 bne _08059906 ldr r0, =gPaletteFade @@ -4130,7 +4130,7 @@ sub_80598E0: @ 80598E0 ldr r0, =gScriptItemId ldrh r1, [r0] movs r0, 0x1 - bl dp01_build_cmdbuf_x23_aa_0 + bl EmitCmd35 bl PlayerBufferExecCompleted _08059906: pop {r0} @@ -4145,7 +4145,7 @@ bx_wait_t1: @ 805991C ldrb r0, [r0] cmp r0, 0 beq _08059942 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -4244,11 +4244,11 @@ sub_80599D4: @ 80599D4 movs r0, 0x5 bl PlaySE ldrb r0, [r4] - bl sub_8056BAC + bl BattleDestroyCursorAt movs r0, 0 strb r0, [r4] movs r0, 0 - bl sub_8056B74 + bl BattleCreateCursorAt _08059A02: ldr r0, =gMain ldrh r1, [r0, 0x2E] @@ -4263,11 +4263,11 @@ _08059A02: movs r0, 0x5 bl PlaySE ldrb r0, [r4] - bl sub_8056BAC + bl BattleDestroyCursorAt movs r0, 0x1 strb r0, [r4] movs r0, 0x1 - bl sub_8056B74 + bl BattleCreateCursorAt _08059A2C: ldr r0, =gMain ldrh r1, [r0, 0x2E] @@ -4291,14 +4291,14 @@ _08059A2C: movs r0, 0x1 movs r1, 0xE movs r2, 0 - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 b _08059A76 .pool _08059A6C: movs r0, 0x1 movs r1, 0xD movs r2, 0 - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 _08059A76: bl PlayerBufferExecCompleted _08059A7A: @@ -4355,7 +4355,7 @@ _08059AC4: lsls r1, 24 lsrs r1, 24 adds r0, r7, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldrh r0, [r4] cmp r0, 0 beq _08059AF4 @@ -4382,7 +4382,7 @@ sub_8059B18: @ 8059B18 bl StringCopy adds r0, r4, 0 movs r1, 0x7 - bl battle_show_message_maybe + bl sub_814F9EC pop {r4} pop {r0} bx r0 @@ -4401,13 +4401,13 @@ sub_8059B3C: @ 8059B3C ldrb r0, [r0] cmp r0, 0x1 beq _08059B98 - bl sub_814FBAC + bl SetPpNumbersPaletteInMoveSelection ldrb r1, [r7] lsls r4, r1, 9 adds r0, r5, 0x4 adds r4, r0 ldr r6, =gDisplayedStringBattle - ldr r5, =gUnknown_020244B0 + ldr r5, =gMoveSelectionCursor adds r1, r5 adds r0, r4, 0 adds r0, 0x8 @@ -4432,7 +4432,7 @@ sub_8059B3C: @ 8059B3C bl ConvertIntToDecimalStringN adds r0, r6, 0 movs r1, 0x9 - bl battle_show_message_maybe + bl sub_814F9EC _08059B98: pop {r4-r7} pop {r0} @@ -4462,7 +4462,7 @@ sub_8059BB0: @ 8059BB0 strb r1, [r0] adds r0, 0x1 ldr r3, =gBattleMoves - ldr r2, =gUnknown_020244B0 + ldr r2, =gMoveSelectionCursor ldrb r1, [r5] adds r1, r2 ldrb r1, [r1] @@ -4481,7 +4481,7 @@ sub_8059BB0: @ 8059BB0 bl StringCopy adds r0, r6, 0 movs r1, 0xA - bl battle_show_message_maybe + bl sub_814F9EC pop {r4-r6} pop {r0} bx r0 @@ -4561,8 +4561,8 @@ battle_menu_cursor_related: @ 8059C70 .pool thumb_func_end battle_menu_cursor_related - thumb_func_start sub_8059CB4 -sub_8059CB4: @ 8059CB4 + thumb_func_start ActionSelectionCreateCursorAt +ActionSelectionCreateCursorAt: @ 8059CB4 push {r4,lr} sub sp, 0x10 adds r3, r0, 0 @@ -4595,10 +4595,10 @@ sub_8059CB4: @ 8059CB4 pop {r4} pop {r0} bx r0 - thumb_func_end sub_8059CB4 + thumb_func_end ActionSelectionCreateCursorAt - thumb_func_start sub_8059CF8 -sub_8059CF8: @ 8059CF8 + thumb_func_start ActionSelectionDestroyCursorAt +ActionSelectionDestroyCursorAt: @ 8059CF8 push {lr} sub sp, 0x10 adds r3, r0, 0 @@ -4632,12 +4632,12 @@ sub_8059CF8: @ 8059CF8 pop {r0} bx r0 .pool - thumb_func_end sub_8059CF8 + thumb_func_end ActionSelectionDestroyCursorAt thumb_func_start sub_8059D40 sub_8059D40: @ 8059D40 push {lr} - ldr r0, =sub_80A92F8 + ldr r0, =ReshowBattleScreenAfterMenu bl SetMainCallback2 pop {r0} bx r0 @@ -4647,7 +4647,7 @@ sub_8059D40: @ 8059D40 thumb_func_start sub_8059D50 sub_8059D50: @ 8059D50 push {lr} - ldr r0, =sub_80A92F8 + ldr r0, =ReshowBattleScreenAfterMenu bl SetMainCallback2 pop {r0} bx r0 @@ -4657,7 +4657,7 @@ sub_8059D50: @ 8059D50 thumb_func_start sub_8059D60 sub_8059D60: @ 8059D60 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -4681,7 +4681,7 @@ _08059D82: thumb_func_start bx_8030B2C bx_8030B2C: @ 8059D90 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -4711,14 +4711,14 @@ b_link_standby_message: @ 8059DC0 ands r0, r1 cmp r0, 0 beq _08059DE0 - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] ldr r0, =gText_LinkStandby movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC _08059DE0: pop {r0} bx r0 @@ -4772,7 +4772,7 @@ _08059E4E: lsrs r1, 16 movs r0, 0x1 mov r2, sp - bl dp01_build_cmdbuf_x1D_1D_numargs_varargs + bl EmitDataTransfer bl PlayerBufferExecCompleted add sp, 0x100 pop {r4-r6} @@ -5713,7 +5713,7 @@ _0805A66A: ldrb r1, [r0] movs r0, 0x1 adds r2, r4, 0 - bl dp01_build_cmdbuf_x1D_1D_numargs_varargs + bl EmitDataTransfer bl PlayerBufferExecCompleted add sp, 0x58 pop {r4-r7} @@ -6866,7 +6866,7 @@ sub_805B164: @ 805B164 muls r0, r2 ldr r2, =gPlayerParty adds r0, r2 - bl sub_805DD7C + bl BattleLoadPlayerMonSpriteGfx ldr r2, =gSprites ldr r0, =gBankSpriteIds ldrb r3, [r4] @@ -6923,12 +6923,12 @@ sub_805B1CC: @ 805B1CC muls r0, r2 ldr r2, =gPlayerParty adds r0, r2 - bl sub_805DD7C - ldr r1, =gUnknown_020244AC + bl BattleLoadPlayerMonSpriteGfx + ldr r1, =gActionSelectionCursor ldrb r0, [r5] adds r0, r1 strb r4, [r0] - ldr r1, =gUnknown_020244B0 + ldr r1, =gMoveSelectionCursor ldrb r0, [r5] adds r0, r1 strb r4, [r0] @@ -7124,7 +7124,7 @@ sub_805B3D4: @ 805B3D4 ldrb r3, [r0] cmp r3, 0 bne _0805B41C - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r2, 1 @@ -7162,7 +7162,7 @@ _0805B41C: ldrb r0, [r6] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl PlayerBufferExecCompleted _0805B452: pop {r4-r6} @@ -7174,7 +7174,7 @@ _0805B452: thumb_func_start sub_805B464 sub_805B464: @ 805B464 push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r4, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -7371,11 +7371,11 @@ _0805B5E0: beq _0805B618 movs r0, 0x5A mov r9, r0 - ldr r1, =gUnknown_083054E0 + ldr r1, =gTrainerFrontPicCoords b _0805B642 .pool _0805B618: - ldr r1, =gUnknown_08305D2C + ldr r1, =gTrainerBackPicCoords lsls r0, r4, 2 adds r0, r1 ldrb r1, [r0] @@ -7392,7 +7392,7 @@ _0805B618: _0805B63C: movs r0, 0x50 mov r9, r0 - ldr r1, =gUnknown_08305D2C + ldr r1, =gTrainerBackPicCoords _0805B642: lsls r0, r4, 2 adds r0, r1 @@ -7542,7 +7542,7 @@ _0805B794: ldr r5, =gActiveBank ldrb r1, [r5] adds r0, r4, 0 - bl sub_805DF84 + bl LoadBackTrainerBankSpriteGfx ldrb r0, [r5] bl GetBankIdentity adds r1, r0, 0 @@ -7724,7 +7724,7 @@ _0805B926: ldr r5, =gActiveBank ldrb r1, [r5] adds r0, r4, 0 - bl sub_805DF84 + bl LoadBackTrainerBankSpriteGfx ldrb r0, [r5] bl GetBankIdentity adds r1, r0, 0 @@ -7733,7 +7733,7 @@ _0805B926: adds r0, r4, 0 bl sub_806A12C ldr r0, =gUnknown_0202499C - ldr r1, =gUnknown_08305D2C + ldr r1, =gTrainerBackPicCoords lsls r4, 2 adds r4, r1 ldrb r1, [r4] @@ -7890,7 +7890,7 @@ sub_805B9F8: @ 805B9F8 thumb_func_start sub_805BAB8 sub_805BAB8: @ 805BAB8 push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r4, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -8013,7 +8013,7 @@ sub_805BBA4: @ 805BBA4 thumb_func_start sub_805BBC4 sub_805BBC4: @ 805BBC4 push {r4,r5,lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x8] movs r0, 0x4 @@ -8024,7 +8024,7 @@ sub_805BBC4: @ 805BBC4 ldr r5, =gActiveBank ldrb r4, [r5] movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity adds r2, r0, 0 lsls r2, 24 lsrs r2, 24 @@ -8054,7 +8054,7 @@ sub_805BC18: @ 805BC18 adds r1, 0x1 adds r0, r1 ldrb r1, [r0] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x8] strb r1, [r0, 0x8] @@ -8063,7 +8063,7 @@ sub_805BC18: @ 805BC18 strb r0, [r1] ldrb r4, [r5] movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity adds r2, r0, 0 lsls r2, 24 lsrs r2, 24 @@ -8134,7 +8134,7 @@ _0805BCBE: ldrb r0, [r0] lsls r0, 8 orrs r6, r0 - ldr r0, =gUnknown_02038432 + ldr r0, =gAnimMoveTurn mov r8, r0 mov r0, r12 adds r0, 0x3 @@ -8142,7 +8142,7 @@ _0805BCBE: ldrb r0, [r1] mov r1, r8 strb r0, [r1] - ldr r3, =gMovePowerMoveAnim + ldr r3, =gAnimMovePower ldrb r1, [r5] lsls r1, 9 mov r0, r12 @@ -8156,7 +8156,7 @@ _0805BCBE: lsls r0, 8 orrs r2, r0 strh r2, [r3] - ldr r3, =gMoveDmgMoveAnim + ldr r3, =gAnimMoveDmg ldrb r1, [r5] lsls r1, 9 mov r0, r12 @@ -8182,7 +8182,7 @@ _0805BCBE: lsls r0, 24 orrs r2, r0 str r2, [r3] - ldr r2, =gHappinessMoveAnim + ldr r2, =gAnimFriendship ldrb r0, [r5] lsls r0, 9 mov r1, r12 @@ -8204,7 +8204,7 @@ _0805BCBE: lsls r0, 8 orrs r2, r0 strh r2, [r4] - ldr r7, =gDisableStructMoveAnim + ldr r7, =gAnimDisableStructPtr ldrb r1, [r5] lsls r1, 9 mov r0, r12 @@ -8229,7 +8229,7 @@ _0805BCBE: b _0805BDE4 .pool _0805BDBC: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r1, [r5] ldr r2, [r0, 0x4] @@ -8282,7 +8282,7 @@ bx_move_anim_1: @ 805BDFC adds r1, r2 ldrb r1, [r1] mov r8, r1 - ldr r7, =gUnknown_020244D0 + ldr r7, =gBattleSpritesDataPtr ldr r5, [r7] ldr r1, [r5, 0x4] lsls r0, r3, 1 @@ -8341,7 +8341,7 @@ _0805BE94: movs r0, 0 bl sub_805EB9C adds r0, r4, 0 - bl move_anim_start_t1 + bl DoMoveAnim ldr r0, [r7] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -8390,7 +8390,7 @@ _0805BEBE: ands r0, r2 strb r0, [r1] _0805BF0C: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -8444,10 +8444,10 @@ _0805BF70: thumb_func_start sub_805BF80 sub_805BF80: @ 805BF80 push {r4,r5,lr} - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] ldr r5, =gActiveBank ldrb r4, [r5] @@ -8458,7 +8458,7 @@ sub_805BF80: @ 805BF80 bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -8503,9 +8503,9 @@ sub_805C004: @ 805C004 lsrs r1, r0, 24 cmp r1, 0 bne _0805C02A - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X strh r1, [r0] - ldr r1, =gUnknown_02022E16 + ldr r1, =gBattle_BG0_Y movs r0, 0xA0 strh r0, [r1] ldr r1, =gBattleBankFunc @@ -8534,27 +8534,27 @@ dp01t_12_6_battle_menu: @ 805C044 bl sub_817F2A8 ldr r0, =gText_BattleMenu movs r1, 0x2 - bl battle_show_message_maybe + bl sub_814F9EC movs r4, 0 _0805C062: lsls r0, r4, 24 lsrs r0, 24 - bl sub_8059CF8 + bl ActionSelectionDestroyCursorAt adds r4, 0x1 cmp r4, 0x3 ble _0805C062 - ldr r1, =gUnknown_020244AC + ldr r1, =gActionSelectionCursor ldr r0, =gActiveBank ldrb r0, [r0] adds r0, r1 ldrb r0, [r0] movs r1, 0 - bl sub_8059CB4 + bl ActionSelectionCreateCursorAt ldr r0, =gText_WhatWillPkmnDo - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0x1 - bl battle_show_message_maybe + bl sub_814F9EC pop {r4} pop {r0} bx r0 @@ -8580,12 +8580,12 @@ sub_805C0B0: @ 805C0B0 bl sub_8056A3C ldr r0, =gText_BattleYesNoChoice movs r1, 0xC - bl battle_show_message_maybe + bl sub_814F9EC ldr r1, =gUnknown_03005D74 movs r0, 0x1 strb r0, [r1] movs r0, 0x1 - bl sub_8056B74 + bl BattleCreateCursorAt ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 @@ -8611,9 +8611,9 @@ sub_805C114: @ 805C114 lsrs r1, r0, 24 cmp r1, 0 bne _0805C13E - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X strh r1, [r0] - ldr r1, =gUnknown_02022E16 + ldr r1, =gBattle_BG0_Y movs r2, 0xA0 lsls r2, 1 adds r0, r2, 0 @@ -8648,7 +8648,7 @@ sub_805C158: @ 805C158 lsls r0, 24 cmp r0, 0 bne _0805C194 - ldr r1, =gUnknown_0203BD30 + ldr r1, =gBattlePalaceMoveSelectionRngValue ldr r0, =gRngValue ldr r0, [r0] str r0, [r1] @@ -8658,7 +8658,7 @@ sub_805C158: @ 805C158 lsrs r2, 16 movs r0, 0x1 movs r1, 0xA - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 bl PlayerBufferExecCompleted _0805C194: pop {r0} @@ -8715,7 +8715,7 @@ sub_805C210: @ 805C210 ldr r1, =gUnknown_03005D74 movs r0, 0xFF strb r0, [r1] - ldr r1, =gUnknown_020244B0 + ldr r1, =gMoveSelectionCursor ldr r0, =gActiveBank ldrb r0, [r0] adds r0, r1 @@ -8826,7 +8826,7 @@ _0805C2C8: lsrs r1, 24 movs r0, 0x1 mov r2, r12 - bl dp01_build_cmdbuf_x22_a_three_bytes + bl EmitCmd34 bl PlayerBufferExecCompleted b _0805C3BC .pool @@ -8913,7 +8913,7 @@ _0805C3BC: sub_805C3EC: @ 805C3EC push {lr} sub sp, 0x4 - bl sub_805EA60 + bl BattleMusicStop movs r0, 0x1 negs r0, r0 movs r1, 0 @@ -8936,7 +8936,7 @@ sub_805C410: @ 805C410 push {r6,r7} sub sp, 0x4 movs r0, 0 - bl load_gfxc_health_bar + bl LoadBattleBarGfx ldr r3, =gBattleBufferA ldr r0, =gActiveBank mov r9, r0 @@ -8992,7 +8992,7 @@ _0805C44A: ldrb r1, [r1] str r7, [sp] mov r2, r8 - bl sub_807294C + bl SetBattleBarStruct b _0805C4F2 .pool _0805C4B4: @@ -9016,14 +9016,14 @@ _0805C4B4: ldrb r1, [r1] str r7, [sp] movs r3, 0 - bl sub_807294C + bl SetBattleBarStruct mov r2, r9 ldrb r0, [r2] adds r0, r4 ldrb r0, [r0] movs r1, 0 movs r2, 0 - bl heathbar_draw_hp + bl UpdateHpTextInHealthbox _0805C4F2: ldr r1, =gBattleBankFunc ldr r0, =gActiveBank @@ -9067,7 +9067,7 @@ sub_805C528: @ 805C528 .pool _0805C560: movs r0, 0x1 - bl load_gfxc_health_bar + bl LoadBattleBarGfx adds r0, r4, 0 movs r1, 0xB bl GetMonData @@ -9130,9 +9130,9 @@ sub_805C5C4: @ 805C5C4 ldr r2, =gPlayerParty adds r1, r2 movs r2, 0x9 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r2, [r4] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x4] lsls r1, r2, 1 @@ -9378,7 +9378,7 @@ sub_805C80C: @ 805C80C movs r0, 0x1 movs r1, 0 movs r2, 0 - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 bl PlayerBufferExecCompleted pop {r0} bx r0 @@ -9390,7 +9390,7 @@ sub_805C820: @ 805C820 movs r0, 0x1 movs r1, 0 movs r2, 0 - bl dp01_build_cmdbuf_x22_a_three_bytes + bl EmitCmd34 bl PlayerBufferExecCompleted pop {r0} bx r0 @@ -9401,7 +9401,7 @@ sub_805C834: @ 805C834 push {lr} movs r0, 0x1 movs r1, 0 - bl dp01_build_cmdbuf_x23_aa_0 + bl EmitCmd35 bl PlayerBufferExecCompleted pop {r0} bx r0 @@ -9412,7 +9412,7 @@ sub_805C848: @ 805C848 push {lr} movs r0, 0x1 movs r1, 0 - bl dp01_build_cmdbuf_x24_aa_0 + bl EmitCmd36 bl PlayerBufferExecCompleted pop {r0} bx r0 @@ -9595,7 +9595,7 @@ sub_805C9B0: @ 805C9B0 ldrb r0, [r0] cmp r0, 0 beq _0805C9EC - bl sub_805EA60 + bl BattleMusicStop ldrb r1, [r5] lsls r1, 9 adds r0, r4, 0x1 @@ -9794,7 +9794,7 @@ dp01t_2F_1_pokemon_enter: @ 805CA80 adds r1, r4 ldrb r0, [r7] strh r0, [r1, 0x8] - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldrb r2, [r7] ldr r1, [r0, 0x4] @@ -9860,7 +9860,7 @@ sub_805CC00: @ 805CC00 ldr r1, =gPlayerParty adds r0, r1 adds r1, r4, 0 - bl sub_805DD7C + bl BattleLoadPlayerMonSpriteGfx ldr r0, =gBankSpriteIds adds r4, r0 ldrb r1, [r4] @@ -9906,7 +9906,7 @@ _0805CC94: mov r9, r0 ldrh r0, [r1, 0x8] strb r0, [r7] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0805CCB4 @@ -9965,7 +9965,7 @@ _0805CCE4: muls r0, r2 ldr r2, =gPlayerParty adds r0, r2 - bl sub_805DD7C + bl BattleLoadPlayerMonSpriteGfx ldrb r0, [r7] movs r1, 0 bl sub_805B258 @@ -10015,7 +10015,7 @@ sub_805CD74: @ 805CD74 b _0805CE18 .pool _0805CDA4: - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r0, [r6] ldr r5, =gActiveBank ldrb r1, [r5] @@ -10038,7 +10038,7 @@ _0805CDA4: subs r4, 0x2 adds r3, r4 ldrb r3, [r3] - bl sub_80735DC + bl CreatePartyStatusSummarySprites ldr r2, =gUnknown_020244B4 ldrb r1, [r5] adds r1, r2 @@ -10083,7 +10083,7 @@ _0805CE18: thumb_func_start sub_805CE38 sub_805CE38: @ 805CE38 push {r4,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r3, =gActiveBank ldrb r1, [r3] @@ -10119,7 +10119,7 @@ _0805CE70: thumb_func_start sub_805CE80 sub_805CE80: @ 805CE80 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] ldr r0, =gActiveBank ldrb r3, [r0] @@ -10172,7 +10172,7 @@ dp01t_33_1_enemy_move: @ 805CEF4 push {r4,lr} ldr r4, =gActiveBank ldrb r0, [r4] - bl sub_80A6A90 + bl AnimBankSpriteExists lsls r0, 24 cmp r0, 0 beq _0805CF3A @@ -10333,21 +10333,21 @@ _0805D054: beq _0805D07C b _0805D084 _0805D05A: - ldr r0, =gUnknown_020244AC + ldr r0, =gActionSelectionCursor adds r0, r3, r0 strb r2, [r0] - ldr r1, =gUnknown_020244B0 + ldr r1, =gMoveSelectionCursor ldrb r0, [r4] adds r0, r1 strb r2, [r0] b _0805D084 .pool _0805D074: - ldr r0, =gUnknown_020244AC + ldr r0, =gActionSelectionCursor b _0805D07E .pool _0805D07C: - ldr r0, =gUnknown_020244B0 + ldr r0, =gMoveSelectionCursor _0805D07E: adds r0, r3, r0 movs r1, 0 diff --git a/asm/battle_controller_player_partner.s b/asm/battle_controller_player_partner.s index 6b5a14f95..f82e1c3c3 100644 --- a/asm/battle_controller_player_partner.s +++ b/asm/battle_controller_player_partner.s @@ -132,7 +132,7 @@ _081BAEE8: thumb_func_start sub_81BAF00 sub_81BAF00: @ 81BAF00 push {r4,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r1, [r4] ldr r3, =gActiveBank ldrb r0, [r3] @@ -169,11 +169,11 @@ _081BAF38: sub_81BAF48: @ 81BAF48 push {r4-r6,lr} movs r6, 0 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _081BAF6C - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _081BAFA0 @@ -240,7 +240,7 @@ _081BAFD8: _081BAFE4: cmp r6, 0 beq _081BB00A - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r3, =gActiveBank ldrb r1, [r3] @@ -271,7 +271,7 @@ sub_81BB02C: @ 81BB02C mov r6, r9 mov r5, r8 push {r5-r7} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr mov r12, r0 ldr r0, [r0] ldr r7, =gActiveBank @@ -349,7 +349,7 @@ _081BB07A: lsls r0, 2 adds r0, r2 strb r6, [r0, 0x9] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _081BB134 @@ -384,7 +384,7 @@ _081BB07A: ldr r2, =gPlayerParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r7] mov r1, r8 eors r0, r1 @@ -394,7 +394,7 @@ _081BB07A: eors r0, r1 adds r0, r4 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible _081BB134: ldr r1, =gUnknown_03005D7C ldr r4, =gActiveBank @@ -420,14 +420,14 @@ _081BB134: ldr r2, =gPlayerParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r4] bl sub_8076918 ldrb r0, [r4] adds r0, r5 ldrb r0, [r0] - bl sub_80729D0 - ldr r0, =gUnknown_020244D0 + bl SetHealthboxSpriteVisible + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r2, [r0, 0x8] ldrb r1, [r2, 0x9] @@ -499,7 +499,7 @@ bx_t3_healthbar_update: @ 81BB214 ldrb r0, [r5] adds r0, r6 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible lsls r4, 16 asrs r1, r4, 16 movs r0, 0x1 @@ -510,7 +510,7 @@ bx_t3_healthbar_update: @ 81BB214 adds r0, r6 ldrb r0, [r0] movs r2, 0 - bl heathbar_draw_hp + bl UpdateHpTextInHealthbox b _081BB276 .pool _081BB25C: @@ -570,7 +570,7 @@ sub_81BB29C: @ 81BB29C str r7, [sp, 0x8] ldrh r2, [r1, 0xA] str r2, [sp, 0xC] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -645,9 +645,9 @@ _081BB2E2: lsrs r2, 16 movs r0, 0x1 movs r1, 0xB - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 strb r5, [r4] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -789,7 +789,7 @@ sub_81BB414: @ 81BB414 negs r0, r0 str r0, [sp] mov r0, r10 - bl sub_807294C + bl SetBattleBarStruct movs r0, 0x21 bl PlaySE ldr r0, =sub_81BB4E4 @@ -848,7 +848,7 @@ _081BB514: lsls r4, 16 lsrs r4, 16 ldrb r0, [r5] - bl sub_80729D0 + bl SetHealthboxSpriteVisible lsls r4, 16 asrs r4, 16 movs r0, 0x1 @@ -918,7 +918,7 @@ _081BB514: lsrs r2, 16 movs r0, 0x1 movs r1, 0xB - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 strb r5, [r4] ldr r0, =sub_81BB628 str r0, [r6] @@ -961,7 +961,7 @@ sub_81BB628: @ 81BB628 adds r0, r1 ldrb r4, [r0, 0xC] ldrb r6, [r0, 0x8] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1006,7 +1006,7 @@ sub_81BB688: @ 81BB688 lsls r0, 3 adds r2, r0, r1 ldrb r5, [r2, 0xC] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r5, 1 @@ -1027,7 +1027,7 @@ sub_81BB688: @ 81BB688 adds r0, r7, 0 movs r1, 0x38 bl GetMonData - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1046,7 +1046,7 @@ sub_81BB688: @ 81BB688 ldrb r0, [r0] adds r1, r7, 0 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute b _081BB71C .pool _081BB708: @@ -1058,7 +1058,7 @@ _081BB708: ldr r2, =gPlayerParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute _081BB71C: ldr r0, =gTasks lsls r1, r6, 2 @@ -1162,7 +1162,7 @@ sub_81BB78C: @ 81BB78C ldrb r0, [r4] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl PlayerPartnerBufferExecCompleted _081BB808: pop {r4-r6} @@ -1174,7 +1174,7 @@ _081BB808: thumb_func_start sub_81BB828 sub_81BB828: @ 81BB828 push {r4-r6,lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r6, =gActiveBank ldrb r2, [r6] @@ -1209,7 +1209,7 @@ sub_81BB828: @ 81BB828 ldrb r0, [r6] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl PlayerPartnerBufferExecCompleted _081BB87C: pop {r4-r6} @@ -1312,7 +1312,7 @@ sub_81BB92C: @ 81BB92C bne _081BB97E adds r0, r3, 0 bl sub_805E408 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r2, [r4] ldr r1, [r0] @@ -1344,7 +1344,7 @@ _081BB97E: thumb_func_start dp01t_35_3_free_vram dp01t_35_3_free_vram: @ 81BB9A0 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] ldr r0, =gActiveBank ldrb r3, [r0] @@ -1383,7 +1383,7 @@ sub_81BB9F4: @ 81BB9F4 push {r4-r7,lr} mov r7, r8 push {r7} - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldr r7, =gActiveBank ldrb r1, [r7] @@ -1453,13 +1453,13 @@ sub_81BB9F4: @ 81BB9F4 muls r1, r6 adds r1, r5 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r7] bl sub_8076918 ldrb r0, [r7] adds r0, r4 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible ldr r1, =gBattleBankFunc ldrb r0, [r7] lsls r0, 2 @@ -1478,7 +1478,7 @@ _081BBAB0: thumb_func_start sub_81BBAE8 sub_81BBAE8: @ 81BBAE8 push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r0, [r6] ldr r4, =gActiveBank ldrb r2, [r4] @@ -1596,7 +1596,7 @@ _081BBBF2: thumb_func_start sub_81BBC04 sub_81BBC04: @ 81BBC04 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -1620,7 +1620,7 @@ _081BBC26: thumb_func_start bx_80E8A6C bx_80E8A6C: @ 81BBC34 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -1688,7 +1688,7 @@ _081BBCBE: lsrs r1, 16 movs r0, 0x1 mov r2, sp - bl dp01_build_cmdbuf_x1D_1D_numargs_varargs + bl EmitDataTransfer bl PlayerPartnerBufferExecCompleted add sp, 0x100 pop {r4-r6} @@ -3729,7 +3729,7 @@ sub_81BCF58: @ 81BCF58 muls r0, r5 ldr r4, =gPlayerParty adds r0, r4 - bl sub_805DD7C + bl BattleLoadPlayerMonSpriteGfx ldrb r0, [r6] lsls r0, 1 add r0, r8 @@ -3858,7 +3858,7 @@ sub_81BD074: @ 81BD074 muls r0, r2 ldr r2, =gPlayerParty adds r0, r2 - bl sub_805DD7C + bl BattleLoadPlayerMonSpriteGfx ldrb r0, [r5] lsls r1, r0, 9 adds r1, r6 @@ -4051,7 +4051,7 @@ sub_81BD260: @ 81BD260 ldrb r3, [r0] cmp r3, 0 bne _081BD2A8 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r2, 1 @@ -4089,7 +4089,7 @@ _081BD2A8: ldrb r0, [r6] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl PlayerPartnerBufferExecCompleted _081BD2DE: pop {r4-r6} @@ -4101,7 +4101,7 @@ _081BD2DE: thumb_func_start sub_81BD2F0 sub_81BD2F0: @ 81BD2F0 push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r4, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -4182,7 +4182,7 @@ sub_81BD37C: @ 81BD37C movs r4, 0x7 movs r0, 0x5A mov r9, r0 - ldr r0, =gUnknown_08305D2C + ldr r0, =gTrainerBackPicCoords ldrb r1, [r0, 0x1C] b _081BD3BE .pool @@ -4193,7 +4193,7 @@ _081BD3A8: lsrs r4, r0, 24 movs r0, 0x20 mov r9, r0 - ldr r1, =gUnknown_083054E0 + ldr r1, =gTrainerFrontPicCoords lsls r0, r4, 2 adds r0, r1 ldrb r1, [r0] @@ -4213,7 +4213,7 @@ _081BD3BE: ldr r5, =gActiveBank ldrb r1, [r5] adds r0, r4, 0 - bl sub_805DF84 + bl LoadBackTrainerBankSpriteGfx ldrb r0, [r5] bl GetBankIdentity adds r1, r0, 0 @@ -4494,7 +4494,7 @@ sub_81BD5C8: @ 81BD5C8 thumb_func_start sub_81BD674 sub_81BD674: @ 81BD674 push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r4, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -4652,13 +4652,13 @@ _081BD7A2: ldrb r1, [r1] lsls r1, 8 orrs r0, r1 - ldr r5, =gUnknown_02038432 + ldr r5, =gAnimMoveTurn mov r1, r12 adds r1, 0x3 adds r2, r1 ldrb r1, [r2] strb r1, [r5] - ldr r4, =gMovePowerMoveAnim + ldr r4, =gAnimMovePower ldrb r2, [r6] lsls r2, 9 mov r1, r12 @@ -4672,7 +4672,7 @@ _081BD7A2: lsls r1, 8 orrs r3, r1 strh r3, [r4] - ldr r4, =gMoveDmgMoveAnim + ldr r4, =gAnimMoveDmg ldrb r2, [r6] lsls r2, 9 mov r1, r12 @@ -4698,7 +4698,7 @@ _081BD7A2: lsls r1, 24 orrs r3, r1 str r3, [r4] - ldr r3, =gHappinessMoveAnim + ldr r3, =gAnimFriendship ldrb r1, [r6] lsls r1, 9 mov r2, r12 @@ -4720,7 +4720,7 @@ _081BD7A2: lsls r1, 8 orrs r3, r1 strh r3, [r4] - ldr r3, =gDisableStructMoveAnim + ldr r3, =gAnimDisableStructPtr ldrb r2, [r6] lsls r2, 9 mov r1, r12 @@ -4743,7 +4743,7 @@ _081BD7A2: b _081BD8B6 .pool _081BD898: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -4790,7 +4790,7 @@ bx_move_anim_3: @ 81BD8C8 adds r1, r2 ldrb r1, [r1] mov r8, r1 - ldr r7, =gUnknown_020244D0 + ldr r7, =gBattleSpritesDataPtr ldr r5, [r7] ldr r1, [r5, 0x4] lsls r0, r3, 1 @@ -4849,7 +4849,7 @@ _081BD960: movs r0, 0 bl sub_805EB9C adds r0, r4, 0 - bl move_anim_start_t1 + bl DoMoveAnim ldr r0, [r7] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -4898,7 +4898,7 @@ _081BD98A: ands r0, r2 strb r0, [r1] _081BD9D8: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -4952,10 +4952,10 @@ _081BDA3C: thumb_func_start sub_81BDA4C sub_81BDA4C: @ 81BDA4C push {r4,lr} - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] ldr r4, =gActiveBank ldrb r0, [r4] @@ -4966,7 +4966,7 @@ sub_81BDA4C: @ 81BDA4C bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 @@ -4990,7 +4990,7 @@ sub_81BDAA0: @ 81BDAA0 thumb_func_start sub_81BDAAC sub_81BDAAC: @ 81BDAAC push {lr} - bl sub_8063880 + bl AI_TrySwitchOrUseItem bl PlayerPartnerBufferExecCompleted pop {r0} bx r0 @@ -5045,7 +5045,7 @@ _081BDB02: cmp r0, 0 beq _081BDB3C movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r4, =gBankTarget strb r0, [r4] ldr r0, =gAbsentBankFlags @@ -5059,7 +5059,7 @@ _081BDB02: cmp r1, 0 beq _081BDB3C movs r0, 0x3 - bl GetBankByPlayerAI + bl GetBankByIdentity strb r0, [r4] _081BDB3C: ldr r0, =gBankTarget @@ -5068,7 +5068,7 @@ _081BDB3C: orrs r2, r5 movs r0, 0x1 movs r1, 0xA - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 bl PlayerPartnerBufferExecCompleted pop {r4-r6} pop {r0} @@ -5087,17 +5087,17 @@ sub_81BDB70: @ 81BDB70 thumb_func_start sub_81BDB7C sub_81BDB7C: @ 81BDB7C push {r4-r6,lr} - bl sub_8063A90 + bl GetMostSuitableMonToSwitchInto lsls r0, 24 lsrs r4, r0, 24 cmp r4, 0x6 bne _081BDBD0 movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r6, r0, 24 movs r0, 0x2 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r5, r0, 24 movs r4, 0x3 @@ -5138,7 +5138,7 @@ _081BDBD0: lsrs r1, 24 movs r0, 0x1 movs r2, 0 - bl dp01_build_cmdbuf_x22_a_three_bytes + bl EmitCmd34 bl PlayerPartnerBufferExecCompleted pop {r4-r6} pop {r0} @@ -5162,7 +5162,7 @@ sub_81BDC10: @ 81BDC10 push {r6,r7} sub sp, 0x4 movs r0, 0 - bl load_gfxc_health_bar + bl LoadBattleBarGfx ldr r3, =gBattleBufferA ldr r0, =gActiveBank mov r9, r0 @@ -5209,7 +5209,7 @@ sub_81BDC10: @ 81BDC10 ldrb r1, [r1] str r7, [sp] mov r2, r8 - bl sub_807294C + bl SetBattleBarStruct b _081BDCCA .pool _081BDCA0: @@ -5231,7 +5231,7 @@ _081BDCA0: ldrb r1, [r1] str r7, [sp] movs r3, 0 - bl sub_807294C + bl SetBattleBarStruct _081BDCCA: ldr r1, =gBattleBankFunc ldr r0, =gActiveBank @@ -5275,7 +5275,7 @@ sub_81BDD00: @ 81BDD00 .pool _081BDD38: movs r0, 0x1 - bl load_gfxc_health_bar + bl LoadBattleBarGfx adds r0, r4, 0 movs r1, 0xB bl GetMonData @@ -5338,9 +5338,9 @@ sub_81BDD9C: @ 81BDD9C ldr r2, =gPlayerParty adds r1, r2 movs r2, 0x9 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r2, [r4] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x4] lsls r1, r2, 1 @@ -5661,7 +5661,7 @@ sub_81BE03C: @ 81BE03C ldrb r0, [r0] cmp r0, 0 beq _081BE078 - bl sub_805EA60 + bl BattleMusicStop ldrb r1, [r5] lsls r1, 9 adds r0, r4, 0x1 @@ -5880,7 +5880,7 @@ _081BE21A: adds r1, r4 ldrb r0, [r5] strh r0, [r1, 0x8] - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldrb r2, [r5] ldr r1, [r0, 0x4] @@ -5950,7 +5950,7 @@ _081BE2F4: mov r9, r0 ldrh r0, [r1, 0x8] strb r0, [r7] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _081BE314 @@ -6009,7 +6009,7 @@ _081BE344: muls r0, r2 ldr r2, =gPlayerParty adds r0, r2 - bl sub_805DD7C + bl BattleLoadPlayerMonSpriteGfx ldrb r0, [r7] movs r1, 0 bl sub_81BD0E4 @@ -6059,7 +6059,7 @@ dp01t_30_3_80EB11C: @ 81BE3D4 b _081BE478 .pool _081BE404: - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r0, [r6] ldr r5, =gActiveBank ldrb r1, [r5] @@ -6082,7 +6082,7 @@ _081BE404: subs r4, 0x2 adds r3, r4 ldrb r3, [r3] - bl sub_80735DC + bl CreatePartyStatusSummarySprites ldr r2, =gUnknown_020244B4 ldrb r1, [r5] adds r1, r2 @@ -6127,7 +6127,7 @@ _081BE478: thumb_func_start sub_81BE498 sub_81BE498: @ 81BE498 push {r4,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r3, =gActiveBank ldrb r1, [r3] @@ -6163,7 +6163,7 @@ _081BE4D0: thumb_func_start sub_81BE4E0 sub_81BE4E0: @ 81BE4E0 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] ldr r0, =gActiveBank ldrb r3, [r0] @@ -6207,7 +6207,7 @@ sub_81BE53C: @ 81BE53C push {r4,lr} ldr r4, =gActiveBank ldrb r0, [r4] - bl sub_80A6A90 + bl AnimBankSpriteExists lsls r0, 24 cmp r0, 0 beq _081BE582 diff --git a/asm/battle_controller_recorded_opponent.s b/asm/battle_controller_recorded_opponent.s index dc7fe7de5..f98c10a6c 100644 --- a/asm/battle_controller_recorded_opponent.s +++ b/asm/battle_controller_recorded_opponent.s @@ -157,7 +157,7 @@ _0818661A: thumb_func_start sub_8186630 sub_8186630: @ 8186630 push {r4,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r1, [r4] ldr r3, =gActiveBank ldrb r0, [r3] @@ -198,11 +198,11 @@ sub_8186678: @ 8186678 push {r6,r7} movs r0, 0 mov r9, r0 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _081866A4 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _081866F8 @@ -311,7 +311,7 @@ _0818676A: lsrs r3, r0, 24 cmp r3, 0x1 bne _08186816 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr mov r12, r0 ldr r0, [r0] ldrb r2, [r6] @@ -388,7 +388,7 @@ _0818676A: adds r0, r4, 0 bl FreeSpritePaletteByTag _08186816: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] mov r2, r8 ldrb r1, [r2] @@ -425,7 +425,7 @@ sub_818686C: @ 818686C movs r0, 0 mov r9, r0 mov r8, r0 - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r7, =gActiveBank ldrb r2, [r7] @@ -504,7 +504,7 @@ _081868DE: ands r0, r1 cmp r0, 0 bne _08186994 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08186964 @@ -529,7 +529,7 @@ _081868DE: ldr r2, =gEnemyParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r7] eors r0, r6 bl sub_8076918 @@ -537,7 +537,7 @@ _081868DE: eors r0, r6 adds r0, r4 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible _08186964: ldr r5, =gHealthBoxesIds ldr r4, =gActiveBank @@ -553,15 +553,15 @@ _08186964: ldr r2, =gEnemyParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r4] bl sub_8076918 ldrb r0, [r4] adds r0, r5 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible _08186994: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -575,7 +575,7 @@ _08186994: orrs r1, r2 strb r1, [r0, 0x1] _081869AE: - ldr r5, =gUnknown_020244D0 + ldr r5, =gBattleSpritesDataPtr ldr r0, [r5] ldr r4, =gActiveBank ldrb r2, [r4] @@ -639,7 +639,7 @@ _08186A40: lsls r2, 1 bl m4aMPlayVolumeControl _08186A4C: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -655,7 +655,7 @@ _08186A4C: movs r0, 0x1 mov r9, r0 _08186A6A: - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 bne _08186AC8 @@ -742,7 +742,7 @@ _08186B26: mov r0, r8 cmp r0, 0 beq _08186C10 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08186B8A @@ -781,7 +781,7 @@ _08186B26: lsls r1, 16 lsrs r1, 16 adds r0, r4, 0 - bl sub_805EE54 + bl SetBankEnemyShadowSpriteCallback _08186B8A: ldr r1, =gUnknown_03005D7C ldr r4, =gActiveBank @@ -809,8 +809,8 @@ _08186B8A: lsls r1, 16 lsrs r1, 16 adds r0, r5, 0 - bl sub_805EE54 - ldr r3, =gUnknown_020244D0 + bl SetBankEnemyShadowSpriteCallback + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldr r2, [r0, 0x8] ldrb r1, [r2, 0x9] @@ -881,7 +881,7 @@ sub_8186C48: @ 8186C48 ldrsh r0, [r0, r1] cmp r0, 0 bne _08186CFA - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r0, [r6] ldr r1, [r0, 0x4] lsls r4, r3, 1 @@ -955,7 +955,7 @@ sub_8186D04: @ 8186D04 ldrb r0, [r6] adds r0, r5 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible lsls r4, 16 asrs r1, r4, 16 movs r0, 0x1 @@ -966,7 +966,7 @@ sub_8186D04: @ 8186D04 adds r0, r5 ldrb r0, [r0] movs r2, 0 - bl heathbar_draw_hp + bl UpdateHpTextInHealthbox b _08186D50 .pool _08186D4C: @@ -998,7 +998,7 @@ sub_8186D58: @ 8186D58 ldr r0, =gHealthBoxesIds adds r0, r3, r0 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl RecordedOpponentBufferExecCompleted _08186D86: pop {r0} @@ -1009,7 +1009,7 @@ _08186D86: thumb_func_start sub_8186D9C sub_8186D9C: @ 8186D9C push {r4-r6,lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r6, =gActiveBank ldrb r2, [r6] @@ -1046,7 +1046,7 @@ sub_8186D9C: @ 8186D9C ldrb r0, [r6] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl RecordedOpponentBufferExecCompleted _08186DF6: pop {r4-r6} @@ -1147,7 +1147,7 @@ sub_8186EA4: @ 8186EA4 ldr r0, =SpriteCallbackDummy cmp r1, r0 bne _08186EF0 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0] lsls r0, r3, 2 @@ -1179,7 +1179,7 @@ _08186EF0: thumb_func_start sub_8186F14 sub_8186F14: @ 8186F14 push {r4,lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r4, =gActiveBank ldrb r1, [r4] @@ -1231,7 +1231,7 @@ _08186F6E: thumb_func_start sub_8186F94 sub_8186F94: @ 8186F94 push {r4-r7,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r5, =gActiveBank ldrb r2, [r5] @@ -1302,13 +1302,13 @@ sub_8186F94: @ 8186F94 ldr r2, =gEnemyParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r5] bl sub_8076918 ldrb r0, [r5] adds r0, r4 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible ldrb r0, [r5] bl sub_805E408 ldr r1, =gBattleBankFunc @@ -1327,7 +1327,7 @@ _08187050: thumb_func_start sub_8187084 sub_8187084: @ 8187084 push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r0, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -1394,7 +1394,7 @@ _081870B6: lsls r1, 16 lsrs r1, 16 adds r0, r4, 0 - bl sub_805EE54 + bl SetBankEnemyShadowSpriteCallback ldr r1, =gBattleBankFunc ldrb r0, [r5] lsls r0, 2 @@ -1411,7 +1411,7 @@ _08187120: thumb_func_start sub_818714C sub_818714C: @ 818714C push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -1435,7 +1435,7 @@ _0818716E: thumb_func_start sub_818717C sub_818717C: @ 818717C push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -1553,7 +1553,7 @@ _0818727E: lsrs r1, 16 movs r0, 0x1 mov r2, sp - bl dp01_build_cmdbuf_x1D_1D_numargs_varargs + bl EmitDataTransfer bl RecordedOpponentBufferExecCompleted add sp, 0x100 pop {r4-r6} @@ -3564,7 +3564,7 @@ sub_818843C: @ 818843C muls r2, r0 adds r0, r2, 0 add r0, r9 - bl sub_805DC0C + bl BattleLoadOpponentMonSpriteGfx ldrb r0, [r6] bl GetBankIdentity adds r1, r0, 0 @@ -3654,7 +3654,7 @@ sub_818843C: @ 818843C lsls r1, 16 lsrs r1, 16 adds r0, r4, 0 - bl sub_805EE54 + bl SetBankEnemyShadowSpriteCallback ldr r1, =gBattleBankFunc ldrb r0, [r6] lsls r0, 2 @@ -3753,7 +3753,7 @@ sub_81885D8: @ 81885D8 adds r0, r1, 0 adds r0, r5 adds r1, r6, 0 - bl sub_805DC0C + bl BattleLoadOpponentMonSpriteGfx adds r0, r6, 0 bl GetBankIdentity adds r1, r0, 0 @@ -3888,7 +3888,7 @@ sub_8188768: @ 8188768 ldrb r3, [r0] cmp r3, 0 bne _081887B0 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r2, 1 @@ -3928,7 +3928,7 @@ _081887B0: ldrb r0, [r6] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl RecordedOpponentBufferExecCompleted _081887EC: pop {r4-r6} @@ -3940,7 +3940,7 @@ _081887EC: thumb_func_start sub_8188800 sub_8188800: @ 8188800 push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r4, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -4096,7 +4096,7 @@ _0818892C: bl sub_806A12C ldr r6, =gUnknown_0202499C mov r9, r7 - ldr r1, =gUnknown_083054E0 + ldr r1, =gTrainerFrontPicCoords mov r2, r8 lsls r0, r2, 2 adds r0, r1 @@ -4278,7 +4278,7 @@ sub_8188A4C: @ 8188A4C thumb_func_start sub_8188AF8 sub_8188AF8: @ 8188AF8 push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r4, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -4408,13 +4408,13 @@ _08188BE6: ldrb r1, [r1] lsls r1, 8 orrs r0, r1 - ldr r5, =gUnknown_02038432 + ldr r5, =gAnimMoveTurn mov r1, r12 adds r1, 0x3 adds r2, r1 ldrb r1, [r2] strb r1, [r5] - ldr r4, =gMovePowerMoveAnim + ldr r4, =gAnimMovePower ldrb r2, [r6] lsls r2, 9 mov r1, r12 @@ -4428,7 +4428,7 @@ _08188BE6: lsls r1, 8 orrs r3, r1 strh r3, [r4] - ldr r4, =gMoveDmgMoveAnim + ldr r4, =gAnimMoveDmg ldrb r2, [r6] lsls r2, 9 mov r1, r12 @@ -4454,7 +4454,7 @@ _08188BE6: lsls r1, 24 orrs r3, r1 str r3, [r4] - ldr r3, =gHappinessMoveAnim + ldr r3, =gAnimFriendship ldrb r1, [r6] lsls r1, 9 mov r2, r12 @@ -4476,7 +4476,7 @@ _08188BE6: lsls r1, 8 orrs r3, r1 strh r3, [r4] - ldr r3, =gDisableStructMoveAnim + ldr r3, =gAnimDisableStructPtr ldrb r2, [r6] lsls r2, 9 mov r1, r12 @@ -4499,7 +4499,7 @@ _08188BE6: b _08188CFA .pool _08188CDC: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -4546,7 +4546,7 @@ sub_8188D0C: @ 8188D0C adds r1, r2 ldrb r1, [r1] mov r8, r1 - ldr r7, =gUnknown_020244D0 + ldr r7, =gBattleSpritesDataPtr ldr r5, [r7] ldr r1, [r5, 0x4] lsls r0, r3, 1 @@ -4605,7 +4605,7 @@ _08188DA4: movs r0, 0 bl sub_805EB9C adds r0, r4, 0 - bl move_anim_start_t1 + bl DoMoveAnim ldr r0, [r7] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -4654,7 +4654,7 @@ _08188DCE: ands r0, r2 strb r0, [r1] _08188E1C: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -4708,10 +4708,10 @@ _08188E80: thumb_func_start sub_8188E90 sub_8188E90: @ 8188E90 push {r4,lr} - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] ldr r4, =gActiveBank ldrb r0, [r4] @@ -4722,7 +4722,7 @@ sub_8188E90: @ 8188E90 bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC 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 dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 bl RecordedOpponentBufferExecCompleted pop {r0} bx r0 @@ -4785,7 +4785,7 @@ sub_8188F20: @ 8188F20 lsrs r2, 16 movs r0, 0x1 movs r1, 0xA - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 b _08188F6C .pool _08188F48: @@ -4803,7 +4803,7 @@ _08188F48: orrs r2, r4 movs r0, 0x1 movs r1, 0xA - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 _08188F6C: bl RecordedOpponentBufferExecCompleted pop {r4,r5} @@ -4839,7 +4839,7 @@ sub_8188F88: @ 8188F88 ldrb r1, [r0] movs r0, 0x1 movs r2, 0 - bl dp01_build_cmdbuf_x22_a_three_bytes + bl EmitCmd34 bl RecordedOpponentBufferExecCompleted pop {r4} pop {r0} @@ -4863,7 +4863,7 @@ sub_8188FD0: @ 8188FD0 push {r6,r7} sub sp, 0x4 movs r0, 0 - bl load_gfxc_health_bar + bl LoadBattleBarGfx ldr r3, =gBattleBufferA ldr r0, =gActiveBank mov r9, r0 @@ -4910,7 +4910,7 @@ sub_8188FD0: @ 8188FD0 ldrb r1, [r1] str r7, [sp] mov r2, r8 - bl sub_807294C + bl SetBattleBarStruct b _0818908A .pool _08189060: @@ -4932,7 +4932,7 @@ _08189060: ldrb r1, [r1] str r7, [sp] movs r3, 0 - bl sub_807294C + bl SetBattleBarStruct _0818908A: ldr r1, =gBattleBankFunc ldr r0, =gActiveBank @@ -4981,9 +4981,9 @@ sub_81890CC: @ 81890CC ldr r2, =gEnemyParty adds r1, r2 movs r2, 0x9 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r2, [r4] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x4] lsls r1, r2, 1 @@ -5304,7 +5304,7 @@ sub_818936C: @ 818936C ldrb r0, [r0] cmp r0, 0 beq _081893A8 - bl sub_805EA60 + bl BattleMusicStop ldrb r1, [r5] lsls r1, 9 adds r0, r4, 0x1 @@ -5457,7 +5457,7 @@ sub_8189438: @ 8189438 adds r1, r4 ldrb r0, [r6] strh r0, [r1, 0x8] - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldrb r2, [r6] ldr r1, [r0, 0x4] @@ -5518,7 +5518,7 @@ c3_0803D564: @ 8189548 adds r0, r1 ldrh r0, [r0, 0x8] strb r0, [r7] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08189582 @@ -5632,7 +5632,7 @@ sub_8189648: @ 8189648 b _08189742 .pool _08189678: - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r3, =gActiveBank ldrb r1, [r3] @@ -5693,13 +5693,13 @@ _081896E4: subs r4, 0x2 adds r3, r4 ldrb r3, [r3] - bl sub_80735DC + bl CreatePartyStatusSummarySprites ldr r2, =gUnknown_020244B4 ldrb r1, [r5] adds r1, r2 movs r3, 0 strb r0, [r1] - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r0, [r6] ldrb r1, [r5] ldr r2, [r0, 0x4] @@ -5739,7 +5739,7 @@ _08189742: thumb_func_start sub_818975C sub_818975C: @ 818975C push {r4,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r3, =gActiveBank ldrb r1, [r3] @@ -5775,7 +5775,7 @@ _08189794: thumb_func_start sub_81897A4 sub_81897A4: @ 81897A4 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] ldr r0, =gActiveBank ldrb r3, [r0] @@ -5819,7 +5819,7 @@ sub_8189800: @ 8189800 push {r4,lr} ldr r4, =gActiveBank ldrb r0, [r4] - bl sub_80A6A90 + bl AnimBankSpriteExists lsls r0, 24 cmp r0, 0 beq _08189846 diff --git a/asm/battle_controller_recorded_player.s b/asm/battle_controller_recorded_player.s index b2769671c..6f3976205 100644 --- a/asm/battle_controller_recorded_player.s +++ b/asm/battle_controller_recorded_player.s @@ -132,7 +132,7 @@ _08189A40: thumb_func_start sub_8189A58 sub_8189A58: @ 8189A58 push {r4,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r1, [r4] ldr r3, =gActiveBank ldrb r0, [r3] @@ -180,11 +180,11 @@ sub_8189AA0: @ 8189AA0 beq _08189ABA b _08189C60 _08189ABA: - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08189ADA - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08189B0C @@ -244,7 +244,7 @@ _08189B42: bne _08189B48 b _08189D18 _08189B48: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr mov r9, r0 ldr r0, [r0] ldr r5, =gActiveBank @@ -337,7 +337,7 @@ _08189B86: ldr r4, =gPlayerParty adds r0, r4 bl sub_805E990 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08189C22 @@ -366,11 +366,11 @@ _08189C22: b _08189D10 .pool _08189C60: - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08189C80 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08189CB0 @@ -435,7 +435,7 @@ _08189CE6: _08189CF2: cmp r6, 0 beq _08189D18 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r3, =gActiveBank ldrb r1, [r3] @@ -478,7 +478,7 @@ sub_8189D40: @ 8189D40 lsls r0, 24 cmp r0, 0 bne _08189DBE - ldr r5, =gUnknown_020244D0 + ldr r5, =gBattleSpritesDataPtr ldr r0, [r5] ldrb r2, [r4] ldr r1, [r0, 0x4] @@ -527,7 +527,7 @@ _08189D8C: adds r0, r3, 0 bl sub_8172EF0 _08189DBE: - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldr r2, =gActiveBank ldrb r5, [r2] @@ -561,7 +561,7 @@ _08189DBE: ands r0, r1 cmp r0, 0 bne _08189E84 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08189E54 @@ -587,7 +587,7 @@ _08189DBE: ldr r2, =gPlayerParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute mov r1, r9 ldrb r0, [r1] eors r0, r7 @@ -597,7 +597,7 @@ _08189DBE: eors r0, r7 adds r0, r4 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible _08189E54: ldr r5, =gHealthBoxesIds ldr r4, =gActiveBank @@ -613,15 +613,15 @@ _08189E54: ldr r2, =gPlayerParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r4] bl sub_8076918 ldrb r0, [r4] adds r0, r5 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible _08189E84: - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r3, =gActiveBank ldrb r1, [r3] @@ -702,7 +702,7 @@ _08189F38: lsls r2, 1 bl m4aMPlayVolumeControl _08189F44: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -747,7 +747,7 @@ _08189F62: ldr r0, [r0] cmp r0, r2 bne _0818A02A - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08189FC8 @@ -779,7 +779,7 @@ _08189FC8: ldr r1, =gSprites adds r0, r1 bl DestroySprite - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldr r2, [r0, 0x8] ldrb r1, [r2, 0x9] @@ -874,7 +874,7 @@ sub_818A0A4: @ 818A0A4 ldrb r0, [r5] adds r0, r6 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible lsls r4, 16 asrs r1, r4, 16 movs r0, 0x1 @@ -885,7 +885,7 @@ sub_818A0A4: @ 818A0A4 adds r0, r6 ldrb r0, [r0] movs r2, 0 - bl heathbar_draw_hp + bl UpdateHpTextInHealthbox b _0818A106 .pool _0818A0EC: @@ -963,7 +963,7 @@ sub_818A114: @ 818A114 ldrb r0, [r4] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl RecordedPlayerBufferExecCompleted _0818A190: pop {r4-r6} @@ -975,7 +975,7 @@ _0818A190: thumb_func_start sub_818A1B0 sub_818A1B0: @ 818A1B0 push {r4-r6,lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r6, =gActiveBank ldrb r2, [r6] @@ -1010,7 +1010,7 @@ sub_818A1B0: @ 818A1B0 ldrb r0, [r6] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl RecordedPlayerBufferExecCompleted _0818A204: pop {r4-r6} @@ -1113,7 +1113,7 @@ sub_818A2B4: @ 818A2B4 bne _0818A306 adds r0, r3, 0 bl sub_805E408 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r2, [r4] ldr r1, [r0] @@ -1145,7 +1145,7 @@ _0818A306: thumb_func_start sub_818A328 sub_818A328: @ 818A328 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] ldr r0, =gActiveBank ldrb r3, [r0] @@ -1184,7 +1184,7 @@ sub_818A37C: @ 818A37C push {r4-r7,lr} mov r7, r8 push {r7} - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldr r7, =gActiveBank ldrb r1, [r7] @@ -1254,13 +1254,13 @@ sub_818A37C: @ 818A37C muls r1, r6 adds r1, r5 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r7] bl sub_8076918 ldrb r0, [r7] adds r0, r4 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible ldr r1, =gBattleBankFunc ldrb r0, [r7] lsls r0, 2 @@ -1279,7 +1279,7 @@ _0818A438: thumb_func_start sub_818A470 sub_818A470: @ 818A470 push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r0, [r6] ldr r4, =gActiveBank ldrb r2, [r4] @@ -1397,7 +1397,7 @@ _0818A57A: thumb_func_start sub_818A58C sub_818A58C: @ 818A58C push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -1421,7 +1421,7 @@ _0818A5AE: thumb_func_start sub_818A5BC sub_818A5BC: @ 818A5BC push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -1489,7 +1489,7 @@ _0818A646: lsrs r1, 16 movs r0, 0x1 mov r2, sp - bl dp01_build_cmdbuf_x1D_1D_numargs_varargs + bl EmitDataTransfer bl RecordedPlayerBufferExecCompleted add sp, 0x100 pop {r4-r6} @@ -3530,7 +3530,7 @@ sub_818B8E0: @ 818B8E0 muls r0, r5 ldr r4, =gPlayerParty adds r0, r4 - bl sub_805DD7C + bl BattleLoadPlayerMonSpriteGfx ldrb r0, [r6] lsls r0, 1 add r0, r8 @@ -3659,7 +3659,7 @@ sub_818B9FC: @ 818B9FC muls r0, r2 ldr r2, =gPlayerParty adds r0, r2 - bl sub_805DD7C + bl BattleLoadPlayerMonSpriteGfx ldrb r0, [r5] lsls r1, r0, 9 adds r1, r6 @@ -3852,7 +3852,7 @@ sub_818BBE8: @ 818BBE8 ldrb r3, [r0] cmp r3, 0 bne _0818BC30 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r2, 1 @@ -3890,7 +3890,7 @@ _0818BC30: ldrb r0, [r6] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl RecordedPlayerBufferExecCompleted _0818BC66: pop {r4-r6} @@ -3902,7 +3902,7 @@ _0818BC66: thumb_func_start sub_818BC78 sub_818BC78: @ 818BC78 push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r4, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -4033,14 +4033,14 @@ _0818BD72: beq _0818BD9C movs r0, 0x5A mov r9, r0 - ldr r1, =gUnknown_083054E0 + ldr r1, =gTrainerFrontPicCoords b _0818BD9E .pool _0818BD98: movs r0, 0x50 mov r9, r0 _0818BD9C: - ldr r1, =gUnknown_08305D2C + ldr r1, =gTrainerBackPicCoords _0818BD9E: lsls r0, r4, 2 adds r0, r1 @@ -4182,7 +4182,7 @@ _0818BEDC: ldr r5, =gActiveBank ldrb r1, [r5] adds r0, r4, 0 - bl sub_805DF84 + bl LoadBackTrainerBankSpriteGfx ldrb r0, [r5] bl GetBankIdentity adds r1, r0, 0 @@ -4350,7 +4350,7 @@ sub_818BFB8: @ 818BFB8 thumb_func_start sub_818C064 sub_818C064: @ 818C064 push {r4-r6,lr} - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r4, [r6] ldr r5, =gActiveBank ldrb r2, [r5] @@ -4508,13 +4508,13 @@ _0818C192: ldrb r1, [r1] lsls r1, 8 orrs r0, r1 - ldr r5, =gUnknown_02038432 + ldr r5, =gAnimMoveTurn mov r1, r12 adds r1, 0x3 adds r2, r1 ldrb r1, [r2] strb r1, [r5] - ldr r4, =gMovePowerMoveAnim + ldr r4, =gAnimMovePower ldrb r2, [r6] lsls r2, 9 mov r1, r12 @@ -4528,7 +4528,7 @@ _0818C192: lsls r1, 8 orrs r3, r1 strh r3, [r4] - ldr r4, =gMoveDmgMoveAnim + ldr r4, =gAnimMoveDmg ldrb r2, [r6] lsls r2, 9 mov r1, r12 @@ -4554,7 +4554,7 @@ _0818C192: lsls r1, 24 orrs r3, r1 str r3, [r4] - ldr r3, =gHappinessMoveAnim + ldr r3, =gAnimFriendship ldrb r1, [r6] lsls r1, 9 mov r2, r12 @@ -4576,7 +4576,7 @@ _0818C192: lsls r1, 8 orrs r3, r1 strh r3, [r4] - ldr r3, =gDisableStructMoveAnim + ldr r3, =gAnimDisableStructPtr ldrb r2, [r6] lsls r2, 9 mov r1, r12 @@ -4599,7 +4599,7 @@ _0818C192: b _0818C2A6 .pool _0818C288: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -4646,7 +4646,7 @@ bx_move_anim_2: @ 818C2B8 adds r1, r2 ldrb r1, [r1] mov r8, r1 - ldr r7, =gUnknown_020244D0 + ldr r7, =gBattleSpritesDataPtr ldr r5, [r7] ldr r1, [r5, 0x4] lsls r0, r3, 1 @@ -4705,7 +4705,7 @@ _0818C350: movs r0, 0 bl sub_805EB9C adds r0, r4, 0 - bl move_anim_start_t1 + bl DoMoveAnim ldr r0, [r7] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -4754,7 +4754,7 @@ _0818C37A: ands r0, r2 strb r0, [r1] _0818C3C8: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -4808,10 +4808,10 @@ _0818C42C: thumb_func_start sub_818C43C sub_818C43C: @ 818C43C push {r4,lr} - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] ldr r4, =gActiveBank ldrb r0, [r4] @@ -4822,7 +4822,7 @@ sub_818C43C: @ 818C43C bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC 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 dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 bl RecordedPlayerBufferExecCompleted _0818C4C6: pop {r0} @@ -4897,7 +4897,7 @@ _0818C508: lsrs r1, 24 movs r0, 0x1 movs r2, 0 - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 bl RecordedPlayerBufferExecCompleted _0818C522: pop {r0} @@ -4929,7 +4929,7 @@ sub_818C538: @ 818C538 lsrs r2, 16 movs r0, 0x1 movs r1, 0xA - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 b _0818C584 .pool _0818C560: @@ -4947,7 +4947,7 @@ _0818C560: orrs r2, r4 movs r0, 0x1 movs r1, 0xA - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 _0818C584: bl RecordedPlayerBufferExecCompleted pop {r4,r5} @@ -4983,7 +4983,7 @@ sub_818C5A0: @ 818C5A0 ldrb r1, [r0] movs r0, 0x1 movs r2, 0 - bl dp01_build_cmdbuf_x22_a_three_bytes + bl EmitCmd34 bl RecordedPlayerBufferExecCompleted pop {r4} pop {r0} @@ -5007,7 +5007,7 @@ sub_818C5E8: @ 818C5E8 push {r6,r7} sub sp, 0x4 movs r0, 0 - bl load_gfxc_health_bar + bl LoadBattleBarGfx ldr r3, =gBattleBufferA ldr r0, =gActiveBank mov r9, r0 @@ -5054,7 +5054,7 @@ sub_818C5E8: @ 818C5E8 ldrb r1, [r1] str r7, [sp] mov r2, r8 - bl sub_807294C + bl SetBattleBarStruct b _0818C6B2 .pool _0818C678: @@ -5076,14 +5076,14 @@ _0818C678: ldrb r1, [r1] str r7, [sp] movs r3, 0 - bl sub_807294C + bl SetBattleBarStruct mov r1, r9 ldrb r0, [r1] adds r0, r4 ldrb r0, [r0] movs r1, 0 movs r2, 0 - bl heathbar_draw_hp + bl UpdateHpTextInHealthbox _0818C6B2: ldr r1, =gBattleBankFunc ldr r0, =gActiveBank @@ -5132,9 +5132,9 @@ sub_818C6F4: @ 818C6F4 ldr r2, =gPlayerParty adds r1, r2 movs r2, 0x9 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r2, [r4] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x4] lsls r1, r2, 1 @@ -5455,7 +5455,7 @@ sub_818C994: @ 818C994 ldrb r0, [r0] cmp r0, 0 beq _0818C9D0 - bl sub_805EA60 + bl BattleMusicStop ldrb r1, [r5] lsls r1, 9 adds r0, r4, 0x1 @@ -5676,7 +5676,7 @@ _0818CB5A: adds r1, r4 ldrb r0, [r5] strh r0, [r1, 0x8] - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldrb r2, [r5] ldr r1, [r0, 0x4] @@ -5746,7 +5746,7 @@ _0818CC50: mov r9, r0 ldrh r0, [r1, 0x8] strb r0, [r7] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0818CC70 @@ -5805,7 +5805,7 @@ _0818CCA0: muls r0, r2 ldr r2, =gPlayerParty adds r0, r2 - bl sub_805DD7C + bl BattleLoadPlayerMonSpriteGfx ldrb r0, [r7] movs r1, 0 bl sub_818BA6C @@ -5855,7 +5855,7 @@ sub_818CD30: @ 818CD30 b _0818CDD4 .pool _0818CD60: - ldr r6, =gUnknown_020244D0 + ldr r6, =gBattleSpritesDataPtr ldr r0, [r6] ldr r5, =gActiveBank ldrb r1, [r5] @@ -5878,7 +5878,7 @@ _0818CD60: subs r4, 0x2 adds r3, r4 ldrb r3, [r3] - bl sub_80735DC + bl CreatePartyStatusSummarySprites ldr r2, =gUnknown_020244B4 ldrb r1, [r5] adds r1, r2 @@ -5923,7 +5923,7 @@ _0818CDD4: thumb_func_start bx_increment_dp11b_field_5_till_x60_then_resume bx_increment_dp11b_field_5_till_x60_then_resume: @ 818CDF4 push {r4,lr} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r3, =gActiveBank ldrb r1, [r3] @@ -5959,7 +5959,7 @@ _0818CE2C: thumb_func_start sub_818CE3C sub_818CE3C: @ 818CE3C push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r1, [r0] ldr r0, =gActiveBank ldrb r3, [r0] @@ -6003,7 +6003,7 @@ sub_818CE98: @ 818CE98 push {r4,lr} ldr r4, =gActiveBank ldrb r0, [r4] - bl sub_80A6A90 + bl AnimBankSpriteExists lsls r0, 24 cmp r0, 0 beq _0818CEDE diff --git a/asm/battle_controller_safari.s b/asm/battle_controller_safari.s index 6ca6e9d4e..d7efd69fe 100644 --- a/asm/battle_controller_safari.s +++ b/asm/battle_controller_safari.s @@ -71,7 +71,7 @@ bx_battle_menu_t6_2: @ 81593D8 beq _08159446 movs r0, 0x5 bl PlaySE - ldr r1, =gUnknown_020244AC + ldr r1, =gActionSelectionCursor ldr r0, =gActiveBank ldrb r0, [r0] adds r0, r1 @@ -103,13 +103,13 @@ _0815942A: movs r1, 0x7 _0815942E: movs r2, 0 - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 b _08159440 _08159436: movs r0, 0x1 movs r1, 0x8 movs r2, 0 - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 _08159440: bl SafariBufferExecCompleted b _0815954E @@ -118,7 +118,7 @@ _08159446: ands r0, r1 cmp r0, 0 beq _08159484 - ldr r5, =gUnknown_020244AC + ldr r5, =gActionSelectionCursor ldr r4, =gActiveBank ldrb r0, [r4] adds r0, r5 @@ -132,7 +132,7 @@ _08159446: ldrb r0, [r4] adds r0, r5 ldrb r0, [r0] - bl sub_8059CF8 + bl ActionSelectionDestroyCursorAt ldrb r1, [r4] adds r1, r5 ldrb r0, [r1] @@ -144,7 +144,7 @@ _08159484: ands r0, r1 cmp r0, 0 beq _081594C0 - ldr r5, =gUnknown_020244AC + ldr r5, =gActionSelectionCursor ldr r4, =gActiveBank ldrb r0, [r4] adds r0, r5 @@ -158,7 +158,7 @@ _08159484: ldrb r0, [r4] adds r0, r5 ldrb r0, [r0] - bl sub_8059CF8 + bl ActionSelectionDestroyCursorAt ldrb r1, [r4] adds r1, r5 ldrb r0, [r1] @@ -170,7 +170,7 @@ _081594C0: ands r0, r1 cmp r0, 0 beq _0815950C - ldr r5, =gUnknown_020244AC + ldr r5, =gActionSelectionCursor ldr r4, =gActiveBank ldrb r0, [r4] adds r0, r5 @@ -184,7 +184,7 @@ _081594C0: ldrb r0, [r4] adds r0, r5 ldrb r0, [r0] - bl sub_8059CF8 + bl ActionSelectionDestroyCursorAt ldrb r1, [r4] adds r1, r5 ldrb r0, [r1] @@ -196,7 +196,7 @@ _081594F2: adds r0, r5 ldrb r0, [r0] movs r1, 0 - bl sub_8059CB4 + bl ActionSelectionCreateCursorAt b _0815954E .pool _0815950C: @@ -204,7 +204,7 @@ _0815950C: ands r0, r1 cmp r0, 0 beq _0815954E - ldr r5, =gUnknown_020244AC + ldr r5, =gActionSelectionCursor ldr r4, =gActiveBank ldrb r0, [r4] adds r0, r5 @@ -218,7 +218,7 @@ _0815950C: ldrb r0, [r4] adds r0, r5 ldrb r0, [r0] - bl sub_8059CF8 + bl ActionSelectionDestroyCursorAt ldrb r1, [r4] adds r1, r5 ldrb r0, [r1] @@ -229,7 +229,7 @@ _0815950C: adds r0, r5 ldrb r0, [r0] movs r1, 0 - bl sub_8059CB4 + bl ActionSelectionCreateCursorAt _0815954E: pop {r4,r5} pop {r0} @@ -318,7 +318,7 @@ sub_81595E4: @ 81595E4 negs r0, r0 ands r0, r1 strb r0, [r3] - ldr r0, =gUnknown_03005D00 + ldr r0, =gPreBattleCallback1 ldr r0, [r0] str r0, [r2] ldr r0, [r2, 0x8] @@ -336,7 +336,7 @@ bx_wait_t6: @ 8159624 ldrb r0, [r0] cmp r0, 0 beq _0815964A - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -387,7 +387,7 @@ sub_8159698: @ 8159698 push {lr} ldr r0, =gMain ldr r1, [r0, 0x4] - ldr r0, =sub_8038420 + ldr r0, =BattleMainCB2 cmp r1, r0 bne _081596BE ldr r0, =gPaletteFade @@ -399,7 +399,7 @@ sub_8159698: @ 8159698 ldr r0, =gScriptItemId ldrh r1, [r0] movs r0, 0x1 - bl dp01_build_cmdbuf_x23_aa_0 + bl EmitCmd35 bl SafariBufferExecCompleted _081596BE: pop {r0} @@ -410,7 +410,7 @@ _081596BE: thumb_func_start sub_81596D4 sub_81596D4: @ 81596D4 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -484,7 +484,7 @@ _0815976A: thumb_func_start bx_80364D0 bx_80364D0: @ 815977C push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -569,7 +569,7 @@ sub_8159800: @ 8159800 ldrb r0, [r0, 0x8] ldr r5, =gActiveBank ldrb r1, [r5] - bl sub_805DF84 + bl LoadBackTrainerBankSpriteGfx ldr r0, [r4] ldrb r6, [r0, 0x8] ldrb r0, [r5] @@ -580,7 +580,7 @@ sub_8159800: @ 8159800 adds r0, r6, 0 bl sub_806A12C ldr r0, =gUnknown_0202499C - ldr r2, =gUnknown_08305D2C + ldr r2, =gTrainerBackPicCoords ldr r1, [r4] ldrb r1, [r1, 0x8] lsls r1, 2 @@ -689,7 +689,7 @@ sub_8159904: @ 8159904 thumb_func_start sub_8159910 sub_8159910: @ 8159910 push {r4,r5,lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x8] movs r0, 0x4 @@ -700,7 +700,7 @@ sub_8159910: @ 8159910 ldr r5, =gActiveBank ldrb r4, [r5] movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity adds r2, r0, 0 lsls r2, 24 lsrs r2, 24 @@ -730,7 +730,7 @@ sub_8159964: @ 8159964 adds r1, 0x1 adds r0, r1 ldrb r1, [r0] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x8] strb r1, [r0, 0x8] @@ -739,7 +739,7 @@ sub_8159964: @ 8159964 strb r0, [r1] ldrb r4, [r5] movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity adds r2, r0, 0 lsls r2, 24 lsrs r2, 24 @@ -778,10 +778,10 @@ sub_81599D0: @ 81599D0 thumb_func_start dp01t_10_6_message dp01t_10_6_message: @ 81599DC push {r4,lr} - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] ldr r4, =gActiveBank ldrb r0, [r4] @@ -792,7 +792,7 @@ dp01t_10_6_message: @ 81599DC bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 @@ -832,9 +832,9 @@ sub_8159A54: @ 8159A54 lsrs r1, r0, 24 cmp r1, 0 bne _08159A7A - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X strh r1, [r0] - ldr r1, =gUnknown_02022E16 + ldr r1, =gBattle_BG0_Y movs r0, 0xA0 strh r0, [r1] ldr r1, =gBattleBankFunc @@ -862,27 +862,27 @@ sub_8159A94: @ 8159A94 str r1, [r0] ldr r0, =gText_SafariZoneMenu movs r1, 0x2 - bl battle_show_message_maybe + bl sub_814F9EC movs r4, 0 _08159AAE: lsls r0, r4, 24 lsrs r0, 24 - bl sub_8059CF8 + bl ActionSelectionDestroyCursorAt adds r4, 0x1 cmp r4, 0x3 ble _08159AAE - ldr r1, =gUnknown_020244AC + ldr r1, =gActionSelectionCursor ldr r0, =gActiveBank ldrb r0, [r0] adds r0, r1 ldrb r0, [r0] movs r1, 0 - bl sub_8059CB4 + bl ActionSelectionCreateCursorAt ldr r0, =gText_WhatWillPkmnDo2 - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0x1 - bl battle_show_message_maybe + bl sub_814F9EC pop {r4} pop {r0} bx r0 @@ -981,7 +981,7 @@ sub_8159B84: @ 8159B84 ldr r2, =gPlayerParty adds r1, r2 movs r2, 0xB - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute bl SafariBufferExecCompleted pop {r0} bx r0 @@ -1161,7 +1161,7 @@ dp01t_34_6_move_anim_start_t3: @ 8159CC4 ldrb r0, [r0] cmp r0, 0 beq _08159D00 - bl sub_805EA60 + bl BattleMusicStop ldrb r1, [r5] lsls r1, 9 adds r0, r4, 0x1 @@ -1256,13 +1256,13 @@ sub_8159D90: @ 8159D90 ldr r2, =gPlayerParty adds r1, r2 movs r2, 0xA - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r4] bl sub_8076918 ldrb r0, [r4] adds r0, r5 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 diff --git a/asm/battle_controller_wally.s b/asm/battle_controller_wally.s index 98d3e7c68..e1d92de0d 100644 --- a/asm/battle_controller_wally.s +++ b/asm/battle_controller_wally.s @@ -153,7 +153,7 @@ _081684CE: movs r1, 0x9 _081684E4: movs r2, 0 - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 bl WallyBufferExecCompleted ldr r1, [r4] adds r1, 0x94 @@ -180,10 +180,10 @@ _08168508: movs r0, 0x5 bl PlaySE movs r0, 0 - bl sub_8059CF8 + bl ActionSelectionDestroyCursorAt movs r0, 0x1 movs r1, 0 - bl sub_8059CB4 + bl ActionSelectionCreateCursorAt ldr r0, [r4] adds r0, 0x96 movs r1, 0x40 @@ -208,7 +208,7 @@ _08168540: movs r0, 0x1 movs r1, 0x1 movs r2, 0 - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 bl WallyBufferExecCompleted _08168564: pop {r4,r5} @@ -299,7 +299,7 @@ sub_8168610: @ 8168610 push {lr} ldr r0, =gMain ldr r1, [r0, 0x4] - ldr r0, =sub_8038420 + ldr r0, =BattleMainCB2 cmp r1, r0 bne _08168636 ldr r0, =gPaletteFade @@ -311,7 +311,7 @@ sub_8168610: @ 8168610 ldr r0, =gScriptItemId ldrh r1, [r0] movs r0, 0x1 - bl dp01_build_cmdbuf_x23_aa_0 + bl EmitCmd35 bl WallyBufferExecCompleted _08168636: pop {r0} @@ -324,7 +324,7 @@ sub_816864C: @ 816864C push {r4-r7,lr} mov r7, r8 push {r7} - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r5, =gActiveBank ldrb r2, [r5] @@ -425,7 +425,7 @@ _081686D2: ldr r0, [r0] cmp r0, r3 bne _081687DC - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _0816877A @@ -459,7 +459,7 @@ _081686D2: ldr r2, =gPlayerParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r5] eors r0, r6 bl sub_8076918 @@ -467,7 +467,7 @@ _081686D2: eors r0, r6 adds r0, r4 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible _0816877A: ldr r1, =gUnknown_03005D7C ldr r4, =gActiveBank @@ -493,14 +493,14 @@ _0816877A: ldr r2, =gPlayerParty adds r1, r2 movs r2, 0 - bl healthbar_draw_field_maybe + bl UpdateHealthboxAttribute ldrb r0, [r4] bl sub_8076918 ldrb r0, [r4] adds r0, r5 ldrb r0, [r0] - bl sub_80729D0 - ldr r0, =gUnknown_020244D0 + bl SetHealthboxSpriteVisible + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r2, [r0, 0x8] ldrb r1, [r2, 0x9] @@ -549,7 +549,7 @@ sub_8168818: @ 8168818 _08168842: cmp r4, 0 beq _08168904 - ldr r7, =gUnknown_020244D0 + ldr r7, =gBattleSpritesDataPtr ldr r0, [r7] ldr r4, [r0, 0x4] lsls r0, r3, 1 @@ -665,7 +665,7 @@ sub_8168934: @ 8168934 ldrb r0, [r5] adds r0, r6 ldrb r0, [r0] - bl sub_80729D0 + bl SetHealthboxSpriteVisible lsls r4, 16 asrs r1, r4, 16 movs r0, 0x1 @@ -676,7 +676,7 @@ sub_8168934: @ 8168934 adds r0, r6 ldrb r0, [r0] movs r2, 0 - bl heathbar_draw_hp + bl UpdateHpTextInHealthbox b _08168996 .pool _0816897C: @@ -761,7 +761,7 @@ _08168A1A: thumb_func_start sub_8168A20 sub_8168A20: @ 8168A20 push {r4-r6,lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r6, =gActiveBank ldrb r2, [r6] @@ -796,7 +796,7 @@ sub_8168A20: @ 8168A20 ldrb r0, [r6] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl WallyBufferExecCompleted _08168A74: pop {r4-r6} @@ -833,7 +833,7 @@ _08168AB4: thumb_func_start sub_8168AC8 sub_8168AC8: @ 8168AC8 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -907,7 +907,7 @@ _08168B5E: thumb_func_start sub_8168B70 sub_8168B70: @ 8168B70 push {lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r2, [r0] ldr r0, =gActiveBank ldrb r1, [r0] @@ -975,7 +975,7 @@ _08168BFA: lsrs r1, 16 movs r0, 0x1 mov r2, sp - bl dp01_build_cmdbuf_x1D_1D_numargs_varargs + bl EmitDataTransfer bl WallyBufferExecCompleted add sp, 0x100 pop {r4-r6} @@ -3015,7 +3015,7 @@ _08169E80: ldrb r0, [r6] adds r0, r1 ldrb r0, [r0] - bl sub_8072984 + bl SetHealthboxSpriteInvisible bl WallyBufferExecCompleted _08169EB6: pop {r4-r6} @@ -3030,7 +3030,7 @@ sub_8169EC8: @ 8169EC8 ldr r4, =gActiveBank ldrb r1, [r4] movs r0, 0x6 - bl sub_805DF84 + bl LoadBackTrainerBankSpriteGfx ldrb r0, [r4] bl GetBankIdentity adds r1, r0, 0 @@ -3039,7 +3039,7 @@ sub_8169EC8: @ 8169EC8 movs r0, 0x6 bl sub_806A12C ldr r0, =gUnknown_0202499C - ldr r1, =gUnknown_08305D2C + ldr r1, =gTrainerBackPicCoords ldrb r1, [r1, 0x18] movs r2, 0x8 subs r2, r1 @@ -3115,7 +3115,7 @@ dp01t_07_6_: @ 8169F94 ldr r4, =gActiveBank ldrb r1, [r4] movs r0, 0x6 - bl sub_805DF84 + bl LoadBackTrainerBankSpriteGfx ldrb r0, [r4] bl GetBankIdentity adds r1, r0, 0 @@ -3124,7 +3124,7 @@ dp01t_07_6_: @ 8169F94 movs r0, 0x6 bl sub_806A12C ldr r0, =gUnknown_0202499C - ldr r1, =gUnknown_08305D2C + ldr r1, =gTrainerBackPicCoords ldrb r1, [r1, 0x18] movs r2, 0x8 subs r2, r1 @@ -3221,7 +3221,7 @@ sub_816A078: @ 816A078 thumb_func_start sub_816A084 sub_816A084: @ 816A084 push {r4,r5,lr} - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x8] movs r0, 0x4 @@ -3232,7 +3232,7 @@ sub_816A084: @ 816A084 ldr r5, =gActiveBank ldrb r4, [r5] movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity adds r2, r0, 0 lsls r2, 24 lsrs r2, 24 @@ -3262,7 +3262,7 @@ sub_816A0D8: @ 816A0D8 adds r1, 0x1 adds r0, r1 ldrb r1, [r0] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x8] strb r1, [r0, 0x8] @@ -3271,7 +3271,7 @@ sub_816A0D8: @ 816A0D8 strb r0, [r1] ldrb r4, [r5] movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity adds r2, r0, 0 lsls r2, 24 lsrs r2, 24 @@ -3316,13 +3316,13 @@ sub_816A144: @ 816A144 ldrb r1, [r1] lsls r1, 8 orrs r0, r1 - ldr r5, =gUnknown_02038432 + ldr r5, =gAnimMoveTurn mov r1, r12 adds r1, 0x3 adds r2, r1 ldrb r1, [r2] strb r1, [r5] - ldr r4, =gMovePowerMoveAnim + ldr r4, =gAnimMovePower ldrb r2, [r6] lsls r2, 9 mov r1, r12 @@ -3336,7 +3336,7 @@ sub_816A144: @ 816A144 lsls r1, 8 orrs r3, r1 strh r3, [r4] - ldr r4, =gMoveDmgMoveAnim + ldr r4, =gAnimMoveDmg ldrb r2, [r6] lsls r2, 9 mov r1, r12 @@ -3362,7 +3362,7 @@ sub_816A144: @ 816A144 lsls r1, 24 orrs r3, r1 str r3, [r4] - ldr r3, =gHappinessMoveAnim + ldr r3, =gAnimFriendship ldrb r1, [r6] lsls r1, 9 mov r2, r12 @@ -3384,7 +3384,7 @@ sub_816A144: @ 816A144 lsls r1, 8 orrs r3, r1 strh r3, [r4] - ldr r3, =gDisableStructMoveAnim + ldr r3, =gAnimDisableStructPtr ldrb r2, [r6] lsls r2, 9 mov r1, r12 @@ -3407,7 +3407,7 @@ sub_816A144: @ 816A144 b _0816A25A .pool _0816A23C: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -3449,7 +3449,7 @@ bx_move_anim_5: @ 816A26C ldrb r0, [r1] lsls r0, 8 orrs r4, r0 - ldr r7, =gUnknown_020244D0 + ldr r7, =gBattleSpritesDataPtr ldr r5, [r7] ldr r1, [r5, 0x4] lsls r0, r3, 1 @@ -3505,7 +3505,7 @@ _0816A2F6: movs r0, 0 bl sub_805EB9C adds r0, r4, 0 - bl move_anim_start_t1 + bl DoMoveAnim ldr r0, [r7] ldrb r1, [r6] ldr r2, [r0, 0x4] @@ -3592,10 +3592,10 @@ _0816A3AC: thumb_func_start sub_816A3B8 sub_816A3B8: @ 816A3B8 push {r4,lr} - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] ldr r4, =gActiveBank ldrb r0, [r4] @@ -3606,7 +3606,7 @@ sub_816A3B8: @ 816A3B8 bl BufferStringBattle ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r1, =gBattleBankFunc ldrb r0, [r4] lsls r0, 2 @@ -3646,9 +3646,9 @@ sub_816A430: @ 816A430 lsrs r1, r0, 24 cmp r1, 0 bne _0816A456 - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X strh r1, [r0] - ldr r1, =gUnknown_02022E16 + ldr r1, =gBattle_BG0_Y movs r0, 0xA0 strh r0, [r1] ldr r1, =gBattleBankFunc @@ -3676,27 +3676,27 @@ dp01t_12_1_battle_menu: @ 816A470 str r1, [r0] ldr r0, =gText_BattleMenu movs r1, 0x2 - bl battle_show_message_maybe + bl sub_814F9EC movs r4, 0 _0816A48A: lsls r0, r4, 24 lsrs r0, 24 - bl sub_8059CF8 + bl ActionSelectionDestroyCursorAt adds r4, 0x1 cmp r4, 0x3 ble _0816A48A - ldr r1, =gUnknown_020244AC + ldr r1, =gActionSelectionCursor ldr r0, =gActiveBank ldrb r0, [r0] adds r0, r1 ldrb r0, [r0] movs r1, 0 - bl sub_8059CB4 + bl ActionSelectionCreateCursorAt ldr r0, =gText_WhatWillWallyDo - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0x1 - bl battle_show_message_maybe + bl sub_814F9EC pop {r4} pop {r0} bx r0 @@ -3749,9 +3749,9 @@ _0816A522: lsrs r1, r0, 24 cmp r1, 0 bne _0816A574 - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X strh r1, [r0] - ldr r1, =gUnknown_02022E16 + ldr r1, =gBattle_BG0_Y movs r2, 0xA0 lsls r2, 1 adds r0, r2, 0 @@ -3777,7 +3777,7 @@ _0816A550: lsls r2, 1 movs r0, 0x1 movs r1, 0xA - bl dp01_build_cmdbuf_x21_a_bb + bl EmitCmd33 bl WallyBufferExecCompleted _0816A574: pop {r4} @@ -3836,7 +3836,7 @@ sub_816A5D4: @ 816A5D4 push {r6,r7} sub sp, 0x4 movs r0, 0 - bl load_gfxc_health_bar + bl LoadBattleBarGfx ldr r3, =gBattleBufferA ldr r0, =gActiveBank mov r9, r0 @@ -3883,7 +3883,7 @@ sub_816A5D4: @ 816A5D4 ldrb r1, [r1] str r7, [sp] mov r2, r8 - bl sub_807294C + bl SetBattleBarStruct b _0816A69E .pool _0816A664: @@ -3905,14 +3905,14 @@ _0816A664: ldrb r1, [r1] str r7, [sp] movs r3, 0 - bl sub_807294C + bl SetBattleBarStruct mov r1, r9 ldrb r0, [r1] adds r0, r4 ldrb r0, [r0] movs r1, 0 movs r2, 0 - bl heathbar_draw_hp + bl UpdateHpTextInHealthbox _0816A69E: ldr r1, =gBattleBankFunc ldr r0, =gActiveBank @@ -4150,7 +4150,7 @@ sub_816A840: @ 816A840 ldrb r0, [r0] cmp r0, 0 beq _0816A87C - bl sub_805EA60 + bl BattleMusicStop ldrb r1, [r5] lsls r1, 9 adds r0, r4, 0x1 @@ -4342,7 +4342,7 @@ sub_816A90C: @ 816A90C adds r1, r4 ldrb r0, [r7] strh r0, [r1, 0x8] - ldr r3, =gUnknown_020244D0 + ldr r3, =gBattleSpritesDataPtr ldr r0, [r3] ldrb r2, [r7] ldr r1, [r0, 0x4] @@ -4393,7 +4393,7 @@ sub_816AA80: @ 816AA80 adds r6, r0, 0 lsls r6, 24 lsrs r6, 24 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0] lsls r0, r6, 2 @@ -4622,7 +4622,7 @@ sub_816AC78: @ 816AC78 b _0816ACE6 .pool _0816ACA8: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r5, =gActiveBank ldrb r1, [r5] @@ -4645,7 +4645,7 @@ _0816ACA8: subs r3, 0x2 adds r4, r3 ldrb r3, [r4] - bl sub_80735DC + bl CreatePartyStatusSummarySprites ldr r2, =gUnknown_020244B4 ldrb r1, [r5] adds r1, r2 diff --git a/asm/battle_frontier_1.s b/asm/battle_frontier_1.s index 5fb146afc..7ac60f1be 100755 --- a/asm/battle_frontier_1.s +++ b/asm/battle_frontier_1.s @@ -2599,10 +2599,10 @@ _0818FFFC: b _081900A4 .pool _0819002C: - ldr r0, =gUnknown_0831ACE8 + ldr r0, =gTypeEffectiveness adds r1, r6, r0 ldrb r0, [r1] - ldr r7, =gUnknown_0831ACE8 + ldr r7, =gTypeEffectiveness cmp r0, 0xFF beq _081900A4 adds r4, r1, 0 @@ -2657,7 +2657,7 @@ _08190088: _08190096: adds r4, 0x3 adds r6, 0x3 - ldr r1, =gUnknown_0831ACE8 + ldr r1, =gTypeEffectiveness adds r0, r6, r1 ldrb r0, [r0] cmp r0, 0xFF @@ -3161,31 +3161,31 @@ _0819044E: ldr r0, =gUnknown_0860CEB4 bl InitWindows bl DeactivateAllTextPrinters - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X strh r4, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r4, [r0] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r4, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r4, [r0] - ldr r0, =gUnknown_02022E20 + ldr r0, =gBattle_BG3_X strh r4, [r0] - ldr r0, =gUnknown_02022E22 + ldr r0, =gBattle_BG3_Y strh r4, [r0] mov r2, r9 cmp r2, 0x2 bne _081904DC - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X strh r4, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r4, [r0] b _081904E6 .pool _081904DC: - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X strh r4, [r0] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y movs r0, 0xA0 strh r0, [r1] _081904E6: @@ -4366,27 +4366,27 @@ _08190E98: ldrsh r2, [r0, r5] cmp r2, 0 beq _08190ED4 - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r1, [r0] - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y movs r0, 0xA0 strh r0, [r1] b _08190EE6 .pool _08190ED4: - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X strh r2, [r0] - ldr r1, =gUnknown_02022E16 + ldr r1, =gBattle_BG0_Y movs r0, 0xA0 strh r0, [r1] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r2, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r2, [r0] _08190EE6: cmp r6, 0x1 @@ -4396,9 +4396,9 @@ _08190EE6: ldrb r1, [r0, 0x10] cmp r1, 0 bne _08190F50 - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X strh r1, [r0] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y movs r6, 0xA0 lsls r6, 1 adds r0, r6, 0 @@ -4424,12 +4424,12 @@ _08190EE6: b _08191084 .pool _08190F50: - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X movs r6, 0x80 lsls r6, 1 adds r0, r6, 0 strh r0, [r1] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y movs r4, 0 strh r4, [r0] ldr r3, =gUnknown_0860D080 @@ -4473,9 +4473,9 @@ _08190F9C: lsrs r0, 24 adds r1, 0x11 bl sub_8192F08 - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X strh r5, [r0] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y movs r3, 0xA0 lsls r3, 1 adds r0, r3, 0 @@ -4508,10 +4508,10 @@ _08190FF8: lsrs r0, 24 adds r1, 0x11 bl sub_8192F08 - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X movs r0, 0 strh r0, [r1] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y movs r2, 0xA0 lsls r2, 1 adds r0, r2, 0 @@ -4529,12 +4529,12 @@ _08190FF8: b _08191084 .pool _0819104C: - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X movs r3, 0x80 lsls r3, 1 adds r0, r3, 0 strh r0, [r1] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y movs r0, 0xA0 strh r0, [r1] ldr r1, =gTasks @@ -4765,29 +4765,29 @@ _08191234: ldrsh r2, [r0, r5] cmp r2, 0 beq _08191278 - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r1, [r0] - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y ldr r2, =0x0000ff60 adds r0, r2, 0 strh r0, [r1] b _0819128C .pool _08191278: - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X strh r2, [r0] - ldr r1, =gUnknown_02022E16 + ldr r1, =gBattle_BG0_Y ldr r3, =0x0000ff60 adds r0, r3, 0 strh r0, [r1] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r2, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r2, [r0] _0819128C: cmp r6, 0x2 @@ -4797,9 +4797,9 @@ _0819128C: ldrb r1, [r0, 0x10] cmp r1, 0 bne _081912F4 - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X strh r1, [r0] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y movs r0, 0xA0 strh r0, [r1] ldr r3, =gUnknown_0860D080 @@ -4823,10 +4823,10 @@ _0819128C: b _0819141C .pool _081912F4: - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X movs r4, 0 strh r4, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r4, [r0] ldr r3, =gUnknown_0860D080 ldr r2, =gTasks @@ -4869,9 +4869,9 @@ _0819133C: lsrs r0, 24 adds r1, 0x11 bl sub_8192F08 - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X strh r5, [r0] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y movs r0, 0xA0 strh r0, [r1] ldr r2, [r6] @@ -4902,10 +4902,10 @@ _08191394: lsrs r0, 24 adds r1, 0x11 bl sub_8192F08 - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X movs r0, 0 strh r0, [r1] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y movs r0, 0xA0 strh r0, [r1] ldr r2, [r6] @@ -4921,12 +4921,12 @@ _08191394: b _0819141C .pool _081913E4: - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X movs r4, 0x80 lsls r4, 1 adds r0, r4, 0 strh r0, [r1] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y movs r0, 0 strh r0, [r1] ldr r1, =gTasks @@ -5157,31 +5157,31 @@ _081915CC: ldrsh r2, [r0, r5] cmp r2, 0 beq _0819160C - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] - ldr r2, =gUnknown_02022E18 + ldr r2, =gBattle_BG1_X movs r6, 0x80 lsls r6, 1 adds r0, r6, 0 strh r0, [r2] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r1, [r0] b _08191622 .pool _0819160C: - ldr r1, =gUnknown_02022E14 + ldr r1, =gBattle_BG0_X movs r3, 0x80 lsls r3, 1 adds r0, r3, 0 strh r0, [r1] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r2, [r0] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r2, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r2, [r0] _08191622: ldr r0, =gUnknown_0203CD78 @@ -5189,12 +5189,12 @@ _08191622: ldrb r0, [r4, 0x10] cmp r0, 0 bne _08191688 - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X movs r4, 0x80 lsls r4, 1 adds r0, r4, 0 strh r0, [r1] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y movs r0, 0xA0 strh r0, [r1] ldr r3, =gUnknown_0860D080 @@ -5218,12 +5218,12 @@ _08191622: b _081916C6 .pool _08191688: - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X movs r6, 0x80 lsls r6, 1 adds r0, r6, 0 strh r0, [r1] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y movs r0, 0 strh r0, [r1] ldr r3, =gUnknown_0860D15C @@ -5457,31 +5457,31 @@ _0819187C: ldrsh r2, [r0, r5] cmp r2, 0 beq _081918BC - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] - ldr r2, =gUnknown_02022E18 + ldr r2, =gBattle_BG1_X movs r6, 0x80 lsls r6, 1 adds r0, r6, 0 strh r0, [r2] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r1, [r0] b _081918D2 .pool _081918BC: - ldr r1, =gUnknown_02022E14 + ldr r1, =gBattle_BG0_X movs r3, 0x80 lsls r3, 1 adds r0, r3, 0 strh r0, [r1] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r2, [r0] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r2, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r2, [r0] _081918D2: ldr r0, =gUnknown_0203CD78 @@ -5489,12 +5489,12 @@ _081918D2: ldrb r0, [r2, 0x10] cmp r0, 0 bne _08191924 - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X movs r4, 0x80 lsls r4, 1 adds r0, r4, 0 strh r0, [r1] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y movs r0, 0xA0 strh r0, [r1] ldr r1, =gTasks @@ -5510,10 +5510,10 @@ _081918D2: b _08191958 .pool _08191924: - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X movs r0, 0 strh r0, [r1] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y movs r0, 0xA0 strh r0, [r1] ldr r1, =gTasks @@ -5744,31 +5744,31 @@ _08191B08: ldrsh r2, [r0, r5] cmp r2, 0 beq _08191B48 - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] - ldr r2, =gUnknown_02022E18 + ldr r2, =gBattle_BG1_X movs r6, 0xFF lsls r6, 8 adds r0, r6, 0 strh r0, [r2] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r1, [r0] b _08191B5E .pool _08191B48: - ldr r1, =gUnknown_02022E14 + ldr r1, =gBattle_BG0_X movs r3, 0xFF lsls r3, 8 adds r0, r3, 0 strh r0, [r1] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r2, [r0] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r2, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r2, [r0] _08191B5E: ldr r0, =gUnknown_0203CD78 @@ -5776,19 +5776,19 @@ _08191B5E: ldrb r0, [r0, 0x10] cmp r0, 0x1 bne _08191B94 - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X movs r0, 0 strh r0, [r1] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y movs r0, 0xA0 strh r0, [r1] b _08191B9E .pool _08191B94: - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r1, [r0] _08191B9E: ldr r4, =gUnknown_0860D15C @@ -6011,31 +6011,31 @@ _08191D68: ldrsh r2, [r0, r5] cmp r2, 0 beq _08191DA8 - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] - ldr r2, =gUnknown_02022E18 + ldr r2, =gBattle_BG1_X movs r6, 0xFF lsls r6, 8 adds r0, r6, 0 strh r0, [r2] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r1, [r0] b _08191DBE .pool _08191DA8: - ldr r1, =gUnknown_02022E14 + ldr r1, =gBattle_BG0_X movs r3, 0xFF lsls r3, 8 adds r0, r3, 0 strh r0, [r1] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r2, [r0] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r2, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r2, [r0] _08191DBE: ldr r0, =gUnknown_0203CD78 @@ -6043,12 +6043,12 @@ _08191DBE: ldrb r0, [r2, 0x10] cmp r0, 0x2 bne _08191E10 - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X movs r4, 0x80 lsls r4, 1 adds r0, r4, 0 strh r0, [r1] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y movs r0, 0xA0 strh r0, [r1] ldr r1, =gTasks @@ -6064,10 +6064,10 @@ _08191DBE: b _08191E44 .pool _08191E10: - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X movs r0, 0 strh r0, [r1] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y movs r0, 0xA0 strh r0, [r1] ldr r1, =gTasks @@ -6306,15 +6306,15 @@ _08191FF8: asrs r0, 16 cmp r0, 0x29 beq _08192100 - ldr r1, =gUnknown_02022E16 + ldr r1, =gBattle_BG0_Y ldrh r0, [r1] subs r0, 0x4 strh r0, [r1] - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y ldrh r0, [r1] subs r0, 0x4 strh r0, [r1] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y b _081920A4 .pool _08192038: @@ -6331,15 +6331,15 @@ _08192038: asrs r0, 16 cmp r0, 0x29 beq _08192100 - ldr r1, =gUnknown_02022E16 + ldr r1, =gBattle_BG0_Y ldrh r0, [r1] adds r0, 0x4 strh r0, [r1] - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y ldrh r0, [r1] adds r0, 0x4 strh r0, [r1] - ldr r1, =gUnknown_02022E1E + ldr r1, =gBattle_BG2_Y b _081920E8 .pool _08192078: @@ -6356,15 +6356,15 @@ _08192078: asrs r0, 16 cmp r0, 0x41 beq _08192100 - ldr r1, =gUnknown_02022E14 + ldr r1, =gBattle_BG0_X ldrh r0, [r1] subs r0, 0x4 strh r0, [r1] - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldrh r0, [r1] subs r0, 0x4 strh r0, [r1] - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X _081920A4: ldrh r0, [r1] subs r0, 0x4 @@ -6385,15 +6385,15 @@ _081920BC: asrs r0, 16 cmp r0, 0x41 beq _08192100 - ldr r1, =gUnknown_02022E14 + ldr r1, =gBattle_BG0_X ldrh r0, [r1] adds r0, 0x4 strh r0, [r1] - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X ldrh r0, [r1] adds r0, 0x4 strh r0, [r1] - ldr r1, =gUnknown_02022E1C + ldr r1, =gBattle_BG2_X _081920E8: ldrh r0, [r1] adds r0, 0x4 @@ -10109,7 +10109,7 @@ _08194074: lsls r0, r4, 1 add r0, r10 ldrh r0, [r0] - bl ai_rate_move + bl AI_TypeCalc lsls r0, 24 lsrs r5, r0, 24 movs r0, 0x6 @@ -10400,13 +10400,13 @@ _0819427C: ldr r0, =gUnknown_0860CE94 bl InitWindows bl DeactivateAllTextPrinters - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X strh r4, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r4, [r0] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r4, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r4, [r0] movs r0, 0x2 movs r1, 0 @@ -11358,27 +11358,27 @@ sub_8194B70: @ 8194B70 movs r1, 0x80 movs r2, 0x2 bl ChangeBgY - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X ldrh r1, [r0] movs r0, 0x10 bl SetGpuReg - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y ldrh r1, [r0] movs r0, 0x12 bl SetGpuReg - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X ldrh r1, [r0] movs r0, 0x14 bl SetGpuReg - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y ldrh r1, [r0] movs r0, 0x16 bl SetGpuReg - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X ldrh r1, [r0] movs r0, 0x18 bl SetGpuReg - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y ldrh r1, [r0] movs r0, 0x1A bl SetGpuReg @@ -11486,19 +11486,19 @@ _08194CD4: thumb_func_start sub_8194CE4 sub_8194CE4: @ 8194CE4 push {lr} - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X ldrh r1, [r0] movs r0, 0x10 bl SetGpuReg - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y ldrh r1, [r0] movs r0, 0x12 bl SetGpuReg - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X ldrh r1, [r0] movs r0, 0x14 bl SetGpuReg - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y ldrh r1, [r0] movs r0, 0x16 bl SetGpuReg @@ -14296,7 +14296,7 @@ sub_81963F0: @ 81963F0 adds r0, r1 bl FieldObjectClearAnimIfSpecialAnimFinished bl sub_80D338C - bl sub_809757C + bl UnfreezeMapObjects bl ScriptContext2_Disable _08196446: movs r0, 0x1 @@ -14680,7 +14680,7 @@ sub_8196748: @ 8196748 ldr r4, =gUnknown_085500A4 _08196750: ldrh r0, [r4] - bl trainer_flag_check + bl HasTrainerAlreadyBeenFought lsls r0, 24 cmp r0, 0 beq _0819675E @@ -14706,7 +14706,7 @@ sub_8196774: @ 8196774 ldr r5, =gUnknown_085500A4 _0819677E: ldrh r0, [r5] - bl trainer_flag_check + bl HasTrainerAlreadyBeenFought lsls r0, 24 cmp r0, 0 beq _0819679A diff --git a/asm/battle_frontier_2.s b/asm/battle_frontier_2.s index 8a9b0ba24..37ddc7ac6 100755 --- a/asm/battle_frontier_2.s +++ b/asm/battle_frontier_2.s @@ -12935,7 +12935,7 @@ _081A1118: adds r1, r0, 0 mov r0, sp movs r2, 0x2 - bl sub_81DB5E8 + bl TVShowConvertInternationalString adds r0, r5, 0 mov r1, sp bl StringCopy @@ -18768,7 +18768,7 @@ _081A43EE: sub_81A4410: @ 81A4410 push {r4,lr} ldr r4, =gScriptResult - bl sub_8185338 + bl MoveRecordedBattleToSaveData strh r0, [r4] ldr r0, =gSaveBlock2Ptr ldr r1, [r0] @@ -18997,7 +18997,7 @@ sub_81A4594: @ 81A4594 adds r1, r6, 0x6 ldrb r2, [r6, 0xE] add r0, sp, 0xC - bl sub_81DB5E8 + bl TVShowConvertInternationalString ldr r1, =gUnknown_0203AB74 ldrb r0, [r1] mov r3, r8 @@ -19111,7 +19111,7 @@ sub_81A4684: @ 81A4684 adds r1, 0xA ldrb r2, [r5, 0x1A] add r0, sp, 0xC - bl sub_81DB5E8 + bl TVShowConvertInternationalString ldr r1, =gUnknown_0203AB74 ldrb r0, [r1] adds r3, r7, 0x2 @@ -19133,13 +19133,13 @@ sub_81A4684: @ 81A4684 adds r4, r5, 0 adds r4, 0x12 adds r0, r4, 0 - bl sub_8009228 + bl IsStringJapanese cmp r0, 0 beq _081A4734 add r0, sp, 0xC adds r1, r4, 0 movs r2, 0x1 - bl sub_81DB5E8 + bl TVShowConvertInternationalString b _081A473C .pool _081A4734: @@ -20533,10 +20533,10 @@ _081A52A4: lsls r1, 1 movs r2, 0x20 bl LoadCompressedPalette - ldr r1, =gUnknown_02022E24 + ldr r1, =gBattle_WIN0H movs r0, 0xFF strh r0, [r1] - ldr r1, =gUnknown_02022E26 + ldr r1, =gBattle_WIN0V movs r0, 0x70 strh r0, [r1] b _081A553E @@ -20577,34 +20577,34 @@ _081A5328: movs r0, 0x1 negs r0, r0 strb r0, [r1, 0x1] - ldr r0, =gText_JapaneseHonorific - bl StrCpyDecodeToDisplayedStringBattle + ldr r0, =gText_PlayerMon1Name + bl BattleStringExpandPlaceholdersToDisplayedString ldr r4, =gDisplayedStringBattle adds r0, r4, 0 movs r1, 0xF - bl battle_show_message_maybe + bl sub_814F9EC ldr r0, =gText_Vs movs r1, 0x10 - bl battle_show_message_maybe - ldr r0, =gText_RivalBuffer - bl StrCpyDecodeToDisplayedStringBattle + bl sub_814F9EC + ldr r0, =gText_OpponentMon1Name + bl BattleStringExpandPlaceholdersToDisplayedString adds r0, r4, 0 movs r1, 0x11 - bl battle_show_message_maybe + bl sub_814F9EC ldr r0, =gText_Mind movs r1, 0x12 - bl battle_show_message_maybe + bl sub_814F9EC ldr r0, =gText_Skill movs r1, 0x13 - bl battle_show_message_maybe + bl sub_814F9EC ldr r0, =gText_Body movs r1, 0x14 - bl battle_show_message_maybe + bl sub_814F9EC ldr r0, =gText_Judgement - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString adds r0, r4, 0 movs r1, 0x15 - bl battle_show_message_maybe + bl sub_814F9EC b _081A553E .pool _081A53B4: @@ -20685,10 +20685,10 @@ _081A5464: movs r3, 0x1 bl sub_81A5558 ldr r0, =gText_Judgement - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0x15 - bl battle_show_message_maybe + bl sub_814F9EC ldrb r0, [r5] adds r0, 0x1 strb r0, [r5] @@ -27306,7 +27306,7 @@ _081A8A74: ldrb r1, [r2, 0x5] ldrb r2, [r2, 0x4] adds r3, r7, 0 - bl exec_movement + bl ScriptMovement_StartObjectMovementScript b _081A8AD4 .pool _081A8ACC: @@ -27540,7 +27540,7 @@ _081A8C72: ldr r2, [r1] ldrb r1, [r2, 0x5] ldrb r2, [r2, 0x4] - bl exec_movement + bl ScriptMovement_StartObjectMovementScript b _081A8D32 .pool _081A8C9C: @@ -27618,7 +27618,7 @@ _081A8D12: ldr r2, [r1] ldrb r1, [r2, 0x5] ldrb r2, [r2, 0x4] - bl exec_movement + bl ScriptMovement_StartObjectMovementScript _081A8D32: mov r0, r9 adds r0, 0x1 @@ -28660,7 +28660,7 @@ _081A95EE: lsls r0, r7, 2 adds r0, r1 ldr r0, [r0] - bl box_related_two__2 + bl ShowFieldMessage add sp, 0x8 pop {r3,r4} mov r8, r3 @@ -31263,8 +31263,8 @@ _081AAA9E: .pool thumb_func_end sub_81AAA7C - thumb_func_start CalculateBattlePyramidPickupItemId -CalculateBattlePyramidPickupItemId: @ 81AAAE0 + thumb_func_start GetBattlePyramidPickupItemId +GetBattlePyramidPickupItemId: @ 81AAAE0 push {r4-r6,lr} ldr r0, =gSaveBlock2Ptr ldr r1, [r0] @@ -31331,6 +31331,6 @@ _081AAB5A: pop {r1} bx r1 .pool - thumb_func_end CalculateBattlePyramidPickupItemId + thumb_func_end GetBattlePyramidPickupItemId .align 2, 0 @ Don't pad with nop. diff --git a/asm/battle_interface.s b/asm/battle_interface.s deleted file mode 100755 index 489366fe8..000000000 --- a/asm/battle_interface.s +++ /dev/null @@ -1,5734 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_8072304 -sub_8072304: @ 8072304 - movs r0, 0x9 - bx lr - thumb_func_end sub_8072304 - - thumb_func_start sub_8072308 -sub_8072308: @ 8072308 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r7, r1, 0 - lsls r0, 16 - lsrs r5, r0, 16 - lsls r2, 24 - lsrs r2, 24 - mov r10, r2 - movs r3, 0 - movs r2, 0 -_08072324: - lsls r0, r3, 24 - asrs r0, 24 - mov r3, sp - adds r1, r3, r0 - strb r2, [r1] - adds r0, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - asrs r0, 24 - cmp r0, 0x3 - ble _08072324 - movs r3, 0x3 - movs r0, 0x1 - negs r0, r0 - mov r9, r0 - mov r8, sp -_08072344: - lsls r0, r5, 16 - asrs r6, r0, 16 - cmp r6, 0 - ble _08072372 - lsls r4, r3, 24 - asrs r4, 24 - mov r1, sp - adds r5, r1, r4 - adds r0, r6, 0 - movs r1, 0xA - bl __modsi3 - strb r0, [r5] - adds r0, r6, 0 - movs r1, 0xA - bl __divsi3 - lsls r0, 16 - lsrs r5, r0, 16 - subs r4, 0x1 - lsls r4, 24 - lsrs r3, r4, 24 - b _08072344 -_08072372: - lsls r1, r3, 24 - asrs r0, r1, 24 - cmp r0, r9 - ble _08072396 - movs r4, 0xFF - movs r3, 0x1 - negs r3, r3 -_08072380: - asrs r2, r1, 24 - mov r5, sp - adds r1, r5, r2 - ldrb r0, [r1] - orrs r0, r4 - strb r0, [r1] - subs r2, 0x1 - lsls r1, r2, 24 - asrs r0, r1, 24 - cmp r0, r3 - bgt _08072380 -_08072396: - mov r1, r8 - ldrb r0, [r1, 0x3] - cmp r0, 0xFF - bne _080723A2 - movs r0, 0 - strb r0, [r1, 0x3] -_080723A2: - mov r2, r10 - cmp r2, 0 - bne _08072432 - movs r3, 0 - movs r1, 0 - movs r6, 0xFC - lsls r6, 8 - movs r5, 0x1E - mov r12, r5 -_080723B4: - lsls r1, 24 - asrs r2, r1, 24 - mov r0, sp - adds r5, r0, r2 - ldrb r0, [r5] - mov r8, r1 - cmp r0, 0xFF - bne _080723EA - lsls r1, r2, 1 - adds r1, r7 - ldrh r2, [r1] - adds r0, r6, 0 - ands r0, r2 - mov r2, r12 - orrs r0, r2 - strh r0, [r1] - lsls r3, 24 - asrs r1, r3, 23 - adds r1, r7 - adds r1, 0x40 - ldrh r2, [r1] - adds r0, r6, 0 - ands r0, r2 - mov r5, r12 - orrs r0, r5 - strh r0, [r1] - b _0807241A -_080723EA: - lsls r2, 1 - adds r2, r7 - ldrh r0, [r2] - adds r1, r6, 0 - ands r1, r0 - ldrb r0, [r5] - adds r0, 0x14 - orrs r1, r0 - strh r1, [r2] - lsls r4, r3, 24 - asrs r3, r4, 24 - lsls r2, r3, 1 - adds r2, r7 - adds r2, 0x40 - ldrh r0, [r2] - adds r1, r6, 0 - ands r1, r0 - mov r5, sp - adds r0, r5, r3 - ldrb r0, [r0] - adds r0, 0x34 - orrs r1, r0 - strh r1, [r2] - adds r3, r4, 0 -_0807241A: - movs r0, 0x80 - lsls r0, 17 - add r0, r8 - lsrs r1, r0, 24 - movs r2, 0x80 - lsls r2, 17 - adds r0, r3, r2 - lsrs r3, r0, 24 - asrs r0, 24 - cmp r0, 0x3 - ble _080723B4 - b _08072496 -_08072432: - movs r3, 0 - movs r4, 0xFC - lsls r4, 8 - movs r6, 0x1E -_0807243A: - lsls r1, r3, 24 - asrs r2, r1, 24 - mov r3, sp - adds r5, r3, r2 - ldrb r0, [r5] - adds r3, r1, 0 - cmp r0, 0xFF - bne _08072466 - lsls r1, r2, 1 - adds r1, r7 - ldrh r2, [r1] - adds r0, r4, 0 - ands r0, r2 - orrs r0, r6 - strh r0, [r1] - adds r1, 0x40 - ldrh r2, [r1] - adds r0, r4, 0 - ands r0, r2 - orrs r0, r6 - strh r0, [r1] - b _08072488 -_08072466: - lsls r2, 1 - adds r2, r7 - ldrh r0, [r2] - adds r1, r4, 0 - ands r1, r0 - ldrb r0, [r5] - adds r0, 0x14 - orrs r1, r0 - strh r1, [r2] - adds r2, 0x40 - ldrh r0, [r2] - adds r1, r4, 0 - ands r1, r0 - ldrb r0, [r5] - adds r0, 0x34 - orrs r1, r0 - strh r1, [r2] -_08072488: - movs r5, 0x80 - lsls r5, 17 - adds r0, r3, r5 - lsrs r3, r0, 24 - asrs r0, 24 - cmp r0, 0x3 - ble _0807243A -_08072496: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8072308 - - thumb_func_start sub_80724A8 -sub_80724A8: @ 80724A8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r0, r1, 0 - adds r5, r2, 0 - lsls r4, 16 - lsrs r4, 16 - movs r1, 0x1E - strh r1, [r5, 0x8] - lsls r0, 16 - asrs r0, 16 - adds r1, r5, 0 - movs r2, 0 - bl sub_8072308 - lsls r4, 16 - asrs r4, 16 - adds r5, 0xA - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_8072308 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80724A8 - - thumb_func_start battle_make_oam_normal_battle -battle_make_oam_normal_battle: @ 80724DC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - movs r0, 0 - str r0, [sp] - bl battle_type_is_double - lsls r0, 24 - cmp r0, 0 - bne _080725F0 - mov r0, r10 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08072574 - ldr r4, =gUnknown_0832C140 - adds r0, r4, 0 - movs r1, 0xF0 - movs r2, 0xA0 - movs r3, 0x1 - bl CreateSprite - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r4, 0 - movs r1, 0xF0 - movs r2, 0xA0 - movs r3, 0x1 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r7, r0, 24 - ldr r4, =gSprites - lsls r1, r6, 4 - adds r1, r6 - lsls r1, 2 - adds r1, r4 - ldrb r2, [r1, 0x1] - movs r3, 0x3F - adds r0, r3, 0 - ands r0, r2 - strb r0, [r1, 0x1] - lsls r2, r7, 4 - adds r2, r7 - lsls r2, 2 - adds r2, r4 - ldrb r0, [r2, 0x1] - ands r3, r0 - strb r3, [r2, 0x1] - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x40 - ldr r4, =0x000003ff - adds r0, r4, 0 - ands r1, r0 - ldr r0, =0xfffffc00 - ands r0, r3 - orrs r0, r1 - strh r0, [r2, 0x4] - b _080725BA - .pool -_08072574: - ldr r4, =gUnknown_0832C170 - adds r0, r4, 0 - movs r1, 0xF0 - movs r2, 0xA0 - movs r3, 0x1 - bl CreateSprite - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r4, 0 - movs r1, 0xF0 - movs r2, 0xA0 - movs r3, 0x1 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, =gSprites - lsls r2, r7, 4 - adds r2, r7 - lsls r2, 2 - adds r2, r0 - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x20 - ldr r5, =0x000003ff - adds r0, r5, 0 - ands r1, r0 - ldr r0, =0xfffffc00 - ands r0, r3 - orrs r0, r1 - strh r0, [r2, 0x4] - movs r0, 0x2 - str r0, [sp] -_080725BA: - ldr r2, =gSprites - lsls r0, r6, 4 - adds r0, r6 - lsls r0, 2 - adds r0, r2 - strh r7, [r0, 0x6] - lsls r0, r7, 4 - adds r0, r7 - lsls r0, 2 - adds r1, r0, r2 - strh r6, [r1, 0x38] - adds r2, 0x1C - adds r0, r2 - ldr r1, =sub_8072924 - str r1, [r0] - b _08072718 - .pool -_080725F0: - mov r0, r10 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08072694 - mov r0, r10 - bl GetBankIdentity - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 25 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - ldr r4, =gUnknown_0832C140 - adds r0, r4 - movs r1, 0xF0 - movs r2, 0xA0 - movs r3, 0x1 - bl CreateSprite - lsls r0, 24 - lsrs r6, r0, 24 - mov r0, r10 - bl GetBankIdentity - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 25 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r0, r4 - movs r1, 0xF0 - movs r2, 0xA0 - movs r3, 0x1 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r7, r0, 24 - ldr r4, =gSprites - lsls r0, r6, 4 - adds r0, r6 - lsls r0, 2 - adds r0, r4 - strh r7, [r0, 0x6] - lsls r2, r7, 4 - adds r2, r7 - lsls r2, 2 - adds r3, r2, r4 - strh r6, [r3, 0x38] - ldrh r1, [r3, 0x4] - mov r8, r1 - mov r5, r8 - lsls r1, r5, 22 - lsrs r1, 22 - adds r1, 0x20 - ldr r5, =0x000003ff - adds r0, r5, 0 - ands r1, r0 - ldr r0, =0xfffffc00 - mov r5, r8 - ands r0, r5 - orrs r0, r1 - strh r0, [r3, 0x4] - adds r4, 0x1C - adds r2, r4 - ldr r0, =sub_8072924 - str r0, [r2] - movs r0, 0x1 - b _08072716 - .pool -_08072694: - mov r0, r10 - bl GetBankIdentity - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 25 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - ldr r4, =gUnknown_0832C170 - adds r0, r4 - movs r1, 0xF0 - movs r2, 0xA0 - movs r3, 0x1 - bl CreateSprite - lsls r0, 24 - lsrs r6, r0, 24 - mov r0, r10 - bl GetBankIdentity - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 25 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r0, r4 - movs r1, 0xF0 - movs r2, 0xA0 - movs r3, 0x1 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r7, r0, 24 - ldr r4, =gSprites - lsls r0, r6, 4 - adds r0, r6 - lsls r0, 2 - adds r0, r4 - strh r7, [r0, 0x6] - lsls r2, r7, 4 - adds r2, r7 - lsls r2, 2 - adds r3, r2, r4 - strh r6, [r3, 0x38] - ldrh r1, [r3, 0x4] - mov r8, r1 - mov r5, r8 - lsls r1, r5, 22 - lsrs r1, 22 - adds r1, 0x20 - ldr r5, =0x000003ff - adds r0, r5, 0 - ands r1, r0 - ldr r0, =0xfffffc00 - mov r5, r8 - ands r0, r5 - orrs r0, r1 - strh r0, [r3, 0x4] - adds r4, 0x1C - adds r2, r4 - ldr r0, =sub_8072924 - str r0, [r2] - movs r0, 0x2 -_08072716: - str r0, [sp] -_08072718: - ldr r0, =gBanksBySide - add r0, r10 - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - ldr r1, =gUnknown_0832C1C0 - adds r0, r1 - movs r1, 0x8C - movs r2, 0x3C - movs r3, 0 - bl CreateSpriteAtEnd - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - lsls r4, r5, 4 - adds r4, r5 - lsls r4, 2 - ldr r1, =gSprites - mov r8, r1 - add r4, r8 - mov r0, r10 - bl GetBankSide - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 21 - ldr r0, =gUnknown_0832C28C - adds r1, r0 - adds r0, r4, 0 - bl SetSubspriteTables - adds r2, r4, 0 - adds r2, 0x42 - ldrb r1, [r2] - movs r0, 0x3F - ands r0, r1 - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2] - ldrb r1, [r4, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r1 - movs r2, 0x4 - mov r9, r2 - mov r1, r9 - orrs r0, r1 - strb r0, [r4, 0x5] - movs r0, 0x1 - bl sub_80728A4 - ldrh r1, [r4, 0x4] - lsls r1, 22 - lsrs r1, 17 - ldr r2, =0x06010000 - adds r1, r2 - ldr r2, =0x04000010 - bl CpuSet - lsls r0, r6, 4 - adds r0, r6 - lsls r0, 2 - add r0, r8 - strh r5, [r0, 0x38] - mov r2, r10 - strh r2, [r0, 0x3A] - adds r0, 0x3E - ldrb r1, [r0] - mov r5, r9 - orrs r1, r5 - strb r1, [r0] - lsls r0, r7, 4 - adds r0, r7 - lsls r0, 2 - add r0, r8 - adds r0, 0x3E - ldrb r1, [r0] - orrs r1, r5 - strb r1, [r0] - strh r6, [r4, 0x38] - mov r0, sp - ldrh r0, [r0] - strh r0, [r4, 0x3A] - adds r4, 0x3E - ldrb r0, [r4] - orrs r0, r5 - strb r0, [r4] - adds r0, r6, 0 - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end battle_make_oam_normal_battle - - thumb_func_start battle_make_oam_safari_battle -battle_make_oam_safari_battle: @ 8072804 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r4, =gUnknown_0832C1A0 - adds r0, r4, 0 - movs r1, 0xF0 - movs r2, 0xA0 - movs r3, 0x1 - bl CreateSprite - adds r6, r0, 0 - lsls r6, 24 - lsrs r6, 24 - adds r0, r4, 0 - movs r1, 0xF0 - movs r2, 0xA0 - movs r3, 0x1 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gSprites - mov r9, r1 - lsls r4, r6, 4 - adds r4, r6 - lsls r4, 2 - add r4, r9 - ldrb r3, [r4, 0x1] - movs r2, 0x3F - adds r1, r2, 0 - ands r1, r3 - strb r1, [r4, 0x1] - lsls r3, r0, 4 - adds r3, r0 - lsls r3, 2 - mov r7, r9 - adds r5, r3, r7 - ldrb r1, [r5, 0x1] - ands r2, r1 - strb r2, [r5, 0x1] - ldrh r1, [r5, 0x4] - mov r8, r1 - mov r7, r8 - lsls r2, r7, 22 - lsrs r2, 22 - adds r2, 0x40 - ldr r7, =0x000003ff - adds r1, r7, 0 - ands r2, r1 - ldr r1, =0xfffffc00 - mov r7, r8 - ands r1, r7 - orrs r1, r2 - strh r1, [r5, 0x4] - strh r0, [r4, 0x6] - strh r6, [r5, 0x38] - movs r0, 0x1C - add r9, r0 - add r3, r9 - ldr r0, =sub_8072924 - str r0, [r3] - adds r0, r6, 0 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end battle_make_oam_safari_battle - - thumb_func_start sub_80728A4 -sub_80728A4: @ 80728A4 - lsls r0, 24 - lsrs r0, 19 - ldr r1, =gUnknown_08C11BDC - adds r0, r1 - bx lr - .pool - thumb_func_end sub_80728A4 - - thumb_func_start sub_80728B4 -sub_80728B4: @ 80728B4 - push {r4,r5,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x38] - lsls r0, 24 - lsrs r5, r0, 24 - movs r1, 0x3A - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _080728E4 - cmp r0, 0x1 - bgt _080728F8 - cmp r0, 0 - bne _080728F8 - ldr r2, =gSprites - lsls r3, r5, 4 - adds r1, r3, r5 - lsls r1, 2 - adds r1, r2 - ldrh r0, [r1, 0x20] - adds r0, 0x10 - b _08072906 - .pool -_080728E4: - ldr r2, =gSprites - lsls r3, r5, 4 - adds r1, r3, r5 - lsls r1, 2 - adds r1, r2 - ldrh r0, [r1, 0x20] - adds r0, 0x10 - b _08072906 - .pool -_080728F8: - ldr r2, =gSprites - lsls r3, r5, 4 - adds r1, r3, r5 - lsls r1, 2 - adds r1, r2 - ldrh r0, [r1, 0x20] - adds r0, 0x8 -_08072906: - strh r0, [r4, 0x20] - ldrh r0, [r1, 0x22] - strh r0, [r4, 0x22] - adds r0, r3, r5 - lsls r0, 2 - adds r0, r2 - ldrh r1, [r0, 0x24] - strh r1, [r4, 0x24] - ldrh r0, [r0, 0x26] - strh r0, [r4, 0x26] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80728B4 - - thumb_func_start sub_8072924 -sub_8072924: @ 8072924 - ldrh r1, [r0, 0x38] - lsls r1, 24 - lsrs r1, 24 - ldr r3, =gSprites - lsls r2, r1, 4 - adds r2, r1 - lsls r2, 2 - adds r2, r3 - ldrh r1, [r2, 0x20] - adds r1, 0x40 - strh r1, [r0, 0x20] - ldrh r1, [r2, 0x22] - strh r1, [r0, 0x22] - ldrh r1, [r2, 0x24] - strh r1, [r0, 0x24] - ldrh r1, [r2, 0x26] - strh r1, [r0, 0x26] - bx lr - .pool - thumb_func_end sub_8072924 - - thumb_func_start sub_807294C -sub_807294C: @ 807294C - push {r4-r7,lr} - ldr r7, [sp, 0x14] - lsls r0, 24 - lsrs r0, 24 - ldr r6, =gUnknown_020244D0 - ldr r4, [r6] - ldr r5, [r4, 0xC] - lsls r4, r0, 2 - adds r4, r0 - lsls r4, 2 - adds r5, r4, r5 - strb r1, [r5] - ldr r0, [r6] - ldr r0, [r0, 0xC] - adds r4, r0 - str r2, [r4, 0x4] - str r3, [r4, 0x8] - str r7, [r4, 0xC] - ldr r0, =0xffff8000 - str r0, [r4, 0x10] - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_807294C - - thumb_func_start sub_8072984 -sub_8072984: @ 8072984 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r4, =gSprites - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r4 - adds r1, r2, 0 - adds r1, 0x3E - ldrb r0, [r1] - movs r3, 0x4 - orrs r0, r3 - strb r0, [r1] - movs r0, 0x38 - ldrsh r1, [r2, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x3E - ldrb r1, [r0] - orrs r1, r3 - strb r1, [r0] - ldrh r1, [r2, 0x6] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x3E - ldrb r1, [r0] - orrs r1, r3 - strb r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8072984 - - thumb_func_start sub_80729D0 -sub_80729D0: @ 80729D0 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r5, =gSprites - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r5 - adds r4, r2, 0 - adds r4, 0x3E - ldrb r1, [r4] - movs r3, 0x5 - negs r3, r3 - adds r0, r3, 0 - ands r0, r1 - strb r0, [r4] - movs r0, 0x38 - ldrsh r1, [r2, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - adds r0, 0x3E - ldrb r4, [r0] - adds r1, r3, 0 - ands r1, r4 - strb r1, [r0] - ldrh r1, [r2, 0x6] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - adds r0, 0x3E - ldrb r1, [r0] - ands r3, r1 - strb r3, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80729D0 - - thumb_func_start sub_8072A24 -sub_8072A24: @ 8072A24 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r4, =gSprites - lsls r3, r0, 4 - adds r3, r0 - lsls r3, 2 - adds r3, r4 - strh r1, [r3, 0x20] - strh r2, [r3, 0x22] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8072A24 - - thumb_func_start sub_8072A44 -sub_8072A44: @ 8072A44 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r5, =gSprites - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - adds r4, r5 - ldrh r1, [r4, 0x6] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - bl DestroySprite - movs r0, 0x38 - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - bl DestroySprite - adds r0, r4, 0 - bl DestroySprite - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8072A44 - - thumb_func_start nullsub_30 -nullsub_30: @ 8072A84 - bx lr - thumb_func_end nullsub_30 - - thumb_func_start sub_8072A88 -sub_8072A88: @ 8072A88 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 24 - lsrs r0, 24 - movs r6, 0 - ldr r1, =gNoOfAllBanks - mov r8, r1 - ldrb r2, [r1] - cmp r6, r2 - bge _08072B00 - ldr r1, =gSprites - mov r12, r1 - movs r1, 0x3 - ands r0, r1 - lsls r5, r0, 2 - movs r7, 0xD - negs r7, r7 - ldr r2, =gHealthBoxesIds - mov r9, r2 -_08072AB2: - mov r1, r9 - adds r0, r6, r1 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - add r1, r12 - ldrb r4, [r1, 0x6] - ldrh r3, [r1, 0x38] - lsls r3, 24 - lsrs r3, 24 - ldrb r2, [r1, 0x5] - adds r0, r7, 0 - ands r0, r2 - orrs r0, r5 - strb r0, [r1, 0x5] - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - add r1, r12 - ldrb r2, [r1, 0x5] - adds r0, r7, 0 - ands r0, r2 - orrs r0, r5 - strb r0, [r1, 0x5] - lsls r1, r3, 4 - adds r1, r3 - lsls r1, 2 - add r1, r12 - ldrb r2, [r1, 0x5] - adds r0, r7, 0 - ands r0, r2 - orrs r0, r5 - strb r0, [r1, 0x5] - adds r6, 0x1 - mov r2, r8 - ldrb r2, [r2] - cmp r6, r2 - blt _08072AB2 -_08072B00: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8072A88 - - thumb_func_start sub_8072B18 -sub_8072B18: @ 8072B18 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 - movs r4, 0 - bl battle_type_is_double - lsls r0, 24 - cmp r0, 0 - bne _08072B44 - adds r0, r6, 0 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _08072B3E - movs r5, 0x2C - movs r4, 0x1E - b _08072B7C -_08072B3E: - movs r5, 0x9E - movs r4, 0x58 - b _08072B7C -_08072B44: - adds r0, r6, 0 - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08072B72 - cmp r0, 0x1 - bgt _08072B5C - cmp r0, 0 - beq _08072B66 - b _08072B7C -_08072B5C: - cmp r0, 0x2 - beq _08072B6C - cmp r0, 0x3 - beq _08072B78 - b _08072B7C -_08072B66: - movs r5, 0x9F - movs r4, 0x4C - b _08072B7C -_08072B6C: - movs r5, 0xAB - movs r4, 0x65 - b _08072B7C -_08072B72: - movs r5, 0x2C - movs r4, 0x13 - b _08072B7C -_08072B78: - movs r5, 0x20 - movs r4, 0x2C -_08072B7C: - ldr r0, =gHealthBoxesIds - adds r0, r6, r0 - ldrb r0, [r0] - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_8072A24 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8072B18 - - thumb_func_start healthbar_draw_level -healthbar_draw_level: @ 8072B94 - push {r4,r5,lr} - sub sp, 0x18 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r1, 24 - lsrs r1, 24 - add r2, sp, 0x4 - movs r0, 0xF9 - strb r0, [r2] - movs r0, 0x5 - strb r0, [r2, 0x1] - mov r0, sp - adds r0, 0x6 - movs r2, 0 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - adds r1, r0, 0 - subs r1, 0x2 - add r0, sp, 0x4 - subs r1, r0 - movs r0, 0x3 - subs r0, r1 - lsls r1, r0, 2 - adds r1, r0 - add r0, sp, 0x14 - str r0, [sp] - add r0, sp, 0x4 - movs r2, 0x3 - movs r3, 0x2 - bl write_to_rbox - adds r5, r0, 0 - ldr r0, =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r1, 0x4] - lsls r0, 22 - lsrs r4, r0, 17 - ldrh r0, [r1, 0x3A] - lsls r0, 24 - lsrs r0, 24 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08072C18 - bl battle_type_is_double - lsls r0, 24 - ldr r2, =0x06010420 - adds r1, r4, r2 - cmp r0, 0 - bne _08072C1C - ldr r0, =0x06010820 - adds r1, r4, r0 - b _08072C1C - .pool -_08072C18: - ldr r2, =0x06010400 - adds r1, r4, r2 -_08072C1C: - adds r0, r1, 0 - adds r1, r5, 0 - movs r2, 0x3 - bl sub_8075198 - ldr r0, [sp, 0x14] - bl sub_807512C - add sp, 0x18 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end healthbar_draw_level - - thumb_func_start heathbar_draw_hp -heathbar_draw_hp: @ 8072C38 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x28 - lsls r0, 24 - lsrs r7, r0, 24 - lsls r1, 16 - lsrs r1, 16 - mov r9, r1 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - ldr r1, =gSprites - lsls r0, r7, 4 - adds r0, r7 - lsls r0, 2 - adds r4, r0, r1 - ldrh r0, [r4, 0x3A] - lsls r0, 24 - lsrs r0, 24 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08072D10 - bl battle_type_is_double - lsls r0, 24 - cmp r0, 0 - bne _08072D10 - ldrh r0, [r4, 0x4] - lsls r0, 22 - lsrs r5, r0, 17 - mov r0, r8 - cmp r0, 0 - beq _08072CB8 - mov r2, r9 - lsls r1, r2, 16 - asrs r1, 16 - add r0, sp, 0x4 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - add r0, sp, 0x24 - str r0, [sp] - add r0, sp, 0x4 - movs r1, 0 - movs r2, 0x5 - movs r3, 0x2 - bl write_to_rbox - adds r4, r0, 0 - ldr r1, =0x06010b40 - adds r0, r5, r1 - adds r1, r4, 0 - b _08072CF8 - .pool -_08072CB8: - mov r2, r9 - lsls r1, r2, 16 - asrs r1, 16 - add r0, sp, 0x4 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - add r1, sp, 0x4 - movs r0, 0xBA - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - add r0, sp, 0x24 - str r0, [sp] - adds r0, r1, 0 - movs r1, 0x4 - movs r2, 0x5 - movs r3, 0x2 - bl write_to_rbox - adds r4, r0, 0 - ldr r1, =0x060103e0 - adds r0, r5, r1 - adds r1, r4, 0 - movs r2, 0x1 - bl sub_8075170 - ldr r2, =0x06010b00 - adds r0, r5, r2 - adds r1, r4, 0 - adds r1, 0x20 -_08072CF8: - movs r2, 0x2 - bl sub_8075170 - ldr r0, [sp, 0x24] - bl sub_807512C - b _08072DEA - .pool -_08072D10: - ldr r1, =gUnknown_0832C3C4 - add r0, sp, 0x4 - movs r2, 0x14 - bl memcpy - ldr r1, =gSprites - lsls r4, r7, 4 - adds r0, r4, r7 - lsls r0, 2 - adds r6, r0, r1 - ldrh r0, [r6, 0x3A] - lsls r0, 24 - lsrs r5, r0, 24 - bl battle_type_is_double - lsls r0, 24 - lsrs r0, 24 - mov r10, r4 - cmp r0, 0x1 - beq _08072D46 - adds r0, r5, 0 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08072D60 -_08072D46: - mov r0, r9 - lsls r1, r0, 16 - asrs r1, 16 - adds r0, r7, 0 - mov r2, r8 - bl sub_8072E0C - b _08072DEA - .pool -_08072D60: - ldrh r0, [r6, 0x3A] - lsls r0, 24 - lsrs r0, 24 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08072D7C - movs r6, 0x59 - mov r1, r8 - cmp r1, 0 - bne _08072D86 - movs r6, 0x1D - b _08072D86 -_08072D7C: - movs r6, 0x30 - mov r2, r8 - cmp r2, 0 - bne _08072D86 - movs r6, 0x14 -_08072D86: - mov r0, sp - adds r0, 0xA - mov r2, r9 - lsls r1, r2, 16 - asrs r1, 16 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - ldr r0, =gBattleSpritesGfx - ldr r0, [r0] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x9 - add r2, sp, 0x4 - bl RenderTextFont9 - movs r4, 0 - ldr r1, =gSprites - mov r2, r10 - adds r0, r2, r7 - lsls r0, 2 - adds r5, r0, r1 -_08072DB8: - ldr r0, =gBattleSpritesGfx - ldr r0, [r0] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - lsls r1, r4, 6 - adds r1, 0x20 - ldr r0, [r0] - adds r0, r1 - ldrh r1, [r5, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r1, r6 - adds r1, r4 - lsls r1, 5 - ldr r2, =0x06010000 - adds r1, r2 - ldr r2, =0x04000008 - bl CpuSet - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x2 - bls _08072DB8 -_08072DEA: - add sp, 0x28 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end heathbar_draw_hp - - thumb_func_start sub_8072E0C -sub_8072E0C: @ 8072E0C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x30 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r1, 16 - lsrs r4, r1, 16 - mov r10, r4 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - ldr r5, =gSprites - lsls r0, 4 - add r0, r9 - lsls r0, 2 - adds r7, r0, r5 - ldrh r0, [r7, 0x3A] - lsls r0, 24 - lsrs r0, 24 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08072F28 - ldr r0, =gUnknown_020244D0 - ldr r1, [r0] - movs r2, 0x3A - ldrsh r0, [r7, r2] - ldr r1, [r1] - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08072E5E - b _080730B8 -_08072E5E: - movs r3, 0x38 - ldrsh r1, [r7, r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrh r0, [r0, 0x4] - lsls r0, 22 - lsrs r5, r0, 17 - ldr r0, =0x06010000 - adds r6, r5, r0 - mov r0, r8 - cmp r0, 0 - beq _08072EDC - lsls r1, r4, 16 - asrs r1, 16 - add r0, sp, 0x4 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - add r0, sp, 0x28 - str r0, [sp] - add r0, sp, 0x4 - movs r1, 0 - movs r2, 0x5 - movs r3, 0 - bl write_to_rbox - adds r4, r0, 0 - ldr r1, =0x060100c0 - adds r0, r5, r1 - adds r1, r4, 0 - movs r2, 0x2 - bl sub_8075170 - ldr r0, [sp, 0x28] - bl sub_807512C - movs r0, 0x74 - bl sub_80728A4 - ldrh r1, [r7, 0x4] - lsls r1, 22 - lsrs r1, 17 - ldr r2, =0x06010680 - adds r1, r2 - ldr r2, =0x04000008 - bl CpuSet - b _080730B8 - .pool -_08072EDC: - lsls r1, r4, 16 - asrs r1, 16 - add r0, sp, 0x4 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - add r1, sp, 0x4 - movs r0, 0xBA - strb r0, [r1, 0x3] - movs r0, 0xFF - strb r0, [r1, 0x4] - add r0, sp, 0x28 - str r0, [sp] - adds r0, r1, 0 - movs r1, 0x4 - movs r2, 0x5 - movs r3, 0 - bl write_to_rbox - adds r4, r0, 0 - adds r0, r6, 0 - movs r1, 0 - movs r2, 0x3 - bl sub_807513C - ldr r3, =0x06010060 - adds r0, r5, r3 - adds r1, r4, 0 - movs r2, 0x3 - bl sub_8075170 - ldr r0, [sp, 0x28] - bl sub_807512C - b _080730B8 - .pool -_08072F28: - ldr r1, =gUnknown_0832C3D8 - add r0, sp, 0x4 - movs r2, 0x14 - bl memcpy - ldrh r0, [r7, 0x3A] - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x2C] - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r1, [r0] - ldr r2, [sp, 0x2C] - lsls r0, r2, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08072F52 - b _080730B8 -_08072F52: - movs r6, 0x4 - mov r3, r8 - negs r0, r3 - orrs r0, r3 - asrs r0, 31 - ands r6, r0 - ldrh r0, [r7, 0x38] - lsls r0, 24 - lsrs r7, r0, 24 - mov r0, sp - adds r0, 0xA - mov r2, r10 - lsls r1, r2, 16 - asrs r1, 16 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - mov r3, r8 - cmp r3, 0 - bne _08072F82 - ldr r1, =gText_Slash - bl StringCopy -_08072F82: - ldr r0, =gBattleSpritesGfx - ldr r0, [r0] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x9 - add r2, sp, 0x4 - bl RenderTextFont9 - adds r4, r6, 0 - adds r0, r4, 0x3 - cmp r4, r0 - bge _08073024 - lsls r0, r7, 4 - adds r0, r7 - lsls r0, 2 - adds r5, r0, r5 -_08072FA6: - cmp r4, 0x2 - bhi _08072FF0 - ldr r0, =gBattleSpritesGfx - ldr r0, [r0] - movs r2, 0xBA - lsls r2, 1 - adds r0, r2 - subs r1, r4, r6 - lsls r1, 6 - adds r1, 0x20 - ldr r0, [r0] - adds r0, r1 - ldrh r1, [r5, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r4, 0x1 - adds r1, r4 - lsls r1, 5 - ldr r3, =0x06010000 - adds r1, r3 - ldr r2, =0x04000008 - bl CpuSet - b _0807301A - .pool -_08072FF0: - ldr r0, =gBattleSpritesGfx - ldr r0, [r0] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - subs r1, r4, r6 - lsls r1, 6 - adds r1, 0x20 - ldr r0, [r0] - adds r0, r1 - ldrh r1, [r5, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r1, r4, r1 - lsls r1, 5 - ldr r2, =0x06010020 - adds r1, r2 - ldr r2, =0x04000008 - bl CpuSet - adds r4, 0x1 -_0807301A: - lsls r0, r4, 24 - lsrs r4, r0, 24 - adds r0, r6, 0x3 - cmp r4, r0 - blt _08072FA6 -_08073024: - mov r3, r8 - cmp r3, 0 - bne _08073084 - ldr r0, =gBattleSpritesGfx - ldr r0, [r0] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - ldr r0, [r0] - adds r0, 0xE0 - ldr r1, =gSprites - lsls r4, r7, 4 - adds r4, r7 - lsls r4, 2 - adds r4, r1 - ldrh r1, [r4, 0x4] - lsls r1, 22 - lsrs r1, 17 - adds r1, 0x80 - ldr r5, =0x06010000 - adds r1, r5 - ldr r2, =0x04000008 - bl CpuSet - mov r2, r8 - str r2, [sp, 0x24] - add r0, sp, 0x24 - ldrh r1, [r4, 0x4] - lsls r1, 22 - lsrs r1, 17 - adds r1, r5 - ldr r2, =0x05000008 - bl CpuSet - b _080730B8 - .pool -_08073084: - ldr r0, [sp, 0x2C] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080730B8 - movs r0, 0x74 - bl sub_80728A4 - ldr r2, =gSprites - mov r3, r9 - lsls r1, r3, 4 - add r1, r9 - lsls r1, 2 - adds r1, r2 - ldrh r1, [r1, 0x4] - lsls r1, 22 - lsrs r1, 17 - movs r2, 0xD0 - lsls r2, 3 - adds r1, r2 - ldr r2, =0x06010000 - adds r1, r2 - ldr r2, =0x04000008 - bl CpuSet -_080730B8: - add sp, 0x30 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8072E0C - - thumb_func_start sub_80730D4 -sub_80730D4: @ 80730D4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - adds r4, r1, 0 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x14] - ldr r1, =gUnknown_0832C3C4 - mov r0, sp - movs r2, 0x14 - bl memcpy - ldr r1, =gSprites - ldr r2, [sp, 0x14] - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0, 0x3A] - lsls r0, 24 - lsrs r0, 24 - bl GetBankIdentity - ldr r1, =gBattleSpritesGfx - ldr r2, [r1] - movs r3, 0xBA - lsls r3, 1 - adds r2, r3 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 7 - movs r0, 0xA4 - lsls r0, 3 - adds r1, r0 - ldr r0, [r2] - adds r6, r0, r1 - movs r1, 0x5 - mov r8, r1 - adds r0, r4, 0 - bl GetNature - lsls r0, 24 - mov r4, sp - adds r4, 0x6 - ldr r1, =gNatureNamePointers - lsrs r0, 22 - adds r0, r1 - ldr r1, [r0] - adds r0, r4, 0 - bl StringCopy - adds r0, r6, 0 - movs r1, 0x9 - mov r2, sp - bl RenderTextFont9 - movs r7, 0x6 - movs r5, 0 - mov r2, sp - adds r2, 0x9 - str r2, [sp, 0x1C] -_08073158: - mov r3, sp - adds r0, r3, r7 - ldrb r1, [r0] - adds r0, r1, 0 - subs r0, 0x37 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bls _08073176 - adds r0, r1, 0 - adds r0, 0x79 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bhi _0807318C -_08073176: - movs r0, 0x2C - b _080731AA - .pool -_0807318C: - adds r0, r1, 0 - subs r0, 0x4B - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bls _080731A4 - adds r0, r1, 0 - adds r0, 0x65 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bhi _080731A8 -_080731A4: - movs r0, 0x2D - b _080731AA -_080731A8: - movs r0, 0x2B -_080731AA: - bl sub_80728A4 - lsls r1, r5, 6 - adds r1, r6, r1 - ldr r2, =0x04000008 - bl CpuSet - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - adds r7, 0x1 - cmp r5, r8 - bcc _08073158 - movs r7, 0x1 - ldr r0, [sp, 0x14] - lsls r0, 4 - str r0, [sp, 0x18] - movs r1, 0x1 - add r1, r8 - mov r9, r1 - cmp r7, r9 - bge _08073236 - ldr r1, =gSprites - ldr r2, =0x04000008 - mov r10, r2 - ldr r3, [sp, 0x14] - adds r0, r3 - lsls r0, 2 - adds r0, r1 - mov r8, r0 -_080731E6: - mov r1, r8 - ldrh r0, [r1, 0x4] - lsls r0, 22 - lsrs r0, 22 - adds r5, r7, 0 - cmp r7, 0 - bge _080731F6 - adds r5, r7, 0x7 -_080731F6: - asrs r5, 3 - lsls r4, r5, 3 - subs r4, r7, r4 - adds r0, r4 - lsls r5, 6 - adds r0, r5 - lsls r0, 5 - ldr r2, =0x06010000 - adds r1, r0, r2 - adds r0, r6, 0 - mov r2, r10 - bl CpuSet - adds r6, 0x20 - mov r3, r8 - ldrh r0, [r3, 0x4] - lsls r0, 22 - lsrs r0, 22 - adds r4, 0x8 - adds r0, r4 - adds r0, r5 - lsls r0, 5 - ldr r2, =0x06010000 - adds r1, r0, r2 - adds r0, r6, 0 - mov r2, r10 - bl CpuSet - adds r6, 0x20 - adds r7, 0x1 - cmp r7, r9 - blt _080731E6 -_08073236: - ldr r6, =gSprites - ldr r3, [sp, 0x18] - ldr r1, [sp, 0x14] - adds r0, r3, r1 - lsls r0, 2 - adds r0, r6 - ldrh r4, [r0, 0x38] - lsls r4, 24 - lsrs r4, 24 - ldr r5, =gBattleStruct - ldr r0, [r5] - adds r0, 0x7C - ldrb r1, [r0] - mov r0, sp - adds r0, 0x6 - movs r2, 0x1 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldr r0, [r5] - adds r0, 0x7B - ldrb r1, [r0] - ldr r0, [sp, 0x1C] - movs r2, 0x1 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - mov r1, sp - movs r0, 0 - strb r0, [r1, 0x5] - movs r0, 0xBA - strb r0, [r1, 0x8] - ldr r5, =gBattleSpritesGfx - ldr r0, [r5] - movs r2, 0xBA - lsls r2, 1 - adds r0, r2 - ldr r0, [r0] - movs r1, 0x9 - mov r2, sp - bl RenderTextFont9 - movs r7, 0 - lsls r0, r4, 4 - adds r0, r4 - lsls r0, 2 - adds r6, r0, r6 - movs r4, 0x20 -_08073296: - cmp r7, 0x1 - bgt _080732D4 - ldr r0, [r5] - movs r3, 0xBA - lsls r3, 1 - adds r0, r3 - ldr r0, [r0] - adds r0, r4 - ldrh r1, [r6, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r2, r7, 0x2 - adds r1, r2 - lsls r1, 5 - ldr r2, =0x06010000 - adds r1, r2 - ldr r2, =0x04000008 - bl CpuSet - b _080732F4 - .pool -_080732D4: - ldr r0, [r5] - movs r3, 0xBA - lsls r3, 1 - adds r0, r3 - ldr r0, [r0] - adds r0, r4 - ldrh r1, [r6, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r1, r7, r1 - lsls r1, 5 - ldr r2, =0x060100c0 - adds r1, r2 - ldr r2, =0x04000008 - bl CpuSet -_080732F4: - adds r4, 0x40 - adds r7, 0x1 - cmp r7, 0x4 - ble _08073296 - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80730D4 - - thumb_func_start sub_8073314 -sub_8073314: @ 8073314 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - movs r0, 0 - mov r9, r0 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r9, r0 - blt _0807332E - b _080735BA -_0807332E: - ldr r1, =gSprites - mov r10, r1 - ldr r2, =gBattlePartyID - mov r8, r2 -_08073336: - ldr r0, =gHealthBoxesIds - mov r1, r9 - adds r6, r1, r0 - ldrb r1, [r6] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - mov r1, r10 - adds r1, 0x1C - adds r0, r1 - ldr r1, [r0] - ldr r0, =SpriteCallbackDummy - cmp r1, r0 - beq _08073354 - b _080735A8 -_08073354: - mov r2, r9 - lsls r0, r2, 24 - lsrs r7, r0, 24 - adds r0, r7, 0 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0807336A - b _080735A8 -_0807336A: - bl battle_type_is_double - lsls r0, 24 - cmp r0, 0 - bne _08073382 - adds r0, r7, 0 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08073382 - b _080735A8 -_08073382: - ldr r5, =gUnknown_020244D0 - ldr r0, [r5] - ldr r3, [r0] - mov r0, r9 - lsls r4, r0, 2 - adds r3, r4, r3 - ldr r0, [r3] - lsls r0, 27 - lsrs r0, 31 - movs r2, 0x1 - eors r2, r0 - lsls r2, 4 - mov r12, r2 - ldrb r0, [r3] - movs r2, 0x11 - negs r2, r2 - adds r1, r2, 0 - ands r0, r1 - mov r1, r12 - orrs r0, r1 - strb r0, [r3] - ldr r0, [r5] - ldr r0, [r0] - adds r4, r0 - ldr r0, [r4] - lsls r0, 27 - lsrs r4, r0, 31 - adds r0, r7, 0 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080734B0 - bl battle_type_is_double - lsls r0, 24 - cmp r0, 0 - bne _080733D0 - b _080735A8 -_080733D0: - ldr r0, =gBattleTypeFlags - ldr r2, [r0] - movs r0, 0x80 - ands r2, r0 - cmp r2, 0 - beq _080733DE - b _080735A8 -_080733DE: - cmp r4, 0x1 - bne _08073468 - ldrb r1, [r6] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r10 - ldrh r0, [r0, 0x38] - lsls r0, 24 - lsrs r1, r0, 24 - str r2, [sp] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r10 - ldrh r1, [r0, 0x4] - lsls r1, 22 - lsrs r1, 17 - ldr r2, =0x06010000 - adds r1, r2 - mov r0, sp - ldr r2, =0x05000040 - bl CpuSet - ldrb r4, [r6] - mov r1, r8 - ldrh r0, [r1] - movs r2, 0x64 - muls r0, r2 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x39 - bl GetMonData - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - adds r0, r4, 0 - movs r2, 0 - bl sub_8072E0C - ldrb r4, [r6] - mov r2, r8 - ldrh r0, [r2] - movs r1, 0x64 - muls r0, r1 - ldr r2, =gPlayerParty - b _08073536 - .pool -_08073468: - ldrb r0, [r6] - bl draw_status_ailment_maybe - ldrb r0, [r6] - mov r2, r8 - ldrh r1, [r2] - movs r2, 0x64 - muls r1, r2 - ldr r2, =gPlayerParty - adds r1, r2 - movs r2, 0x5 - bl healthbar_draw_field_maybe - movs r0, 0x75 - bl sub_80728A4 - ldrb r2, [r6] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - add r1, r10 - ldrh r1, [r1, 0x4] - lsls r1, 22 - lsrs r1, 17 - ldr r2, =0x06010680 - adds r1, r2 - ldr r2, =0x04000008 - bl CpuSet - b _08073592 - .pool -_080734B0: - cmp r4, 0x1 - bne _0807355C - ldr r0, =gBattleTypeFlags - ldr r2, [r0] - movs r0, 0x80 - ands r2, r0 - cmp r2, 0 - beq _080734DC - ldrb r0, [r6] - mov r2, r8 - ldrh r1, [r2] - movs r2, 0x64 - muls r1, r2 - ldr r2, =gEnemyParty - adds r1, r2 - bl sub_80730D4 - b _08073592 - .pool -_080734DC: - ldrb r1, [r6] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r10 - ldrh r0, [r0, 0x38] - lsls r0, 24 - lsrs r1, r0, 24 - str r2, [sp] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r10 - ldrh r1, [r0, 0x4] - lsls r1, 22 - lsrs r1, 17 - ldr r0, =0x06010000 - adds r1, r0 - mov r0, sp - ldr r2, =0x05000040 - bl CpuSet - ldrb r4, [r6] - mov r1, r8 - ldrh r0, [r1] - movs r2, 0x64 - muls r0, r2 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x39 - bl GetMonData - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - adds r0, r4, 0 - movs r2, 0 - bl sub_8072E0C - ldrb r4, [r6] - mov r2, r8 - ldrh r0, [r2] - movs r1, 0x64 - muls r0, r1 - ldr r2, =gEnemyParty -_08073536: - adds r0, r2 - movs r1, 0x3A - bl GetMonData - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - adds r0, r4, 0 - movs r2, 0x1 - bl sub_8072E0C - b _08073592 - .pool -_0807355C: - ldrb r0, [r6] - bl draw_status_ailment_maybe - ldrb r0, [r6] - mov r2, r8 - ldrh r1, [r2] - movs r5, 0x64 - muls r1, r5 - ldr r4, =gEnemyParty - adds r1, r4 - movs r2, 0x5 - bl healthbar_draw_field_maybe - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08073592 - ldrb r0, [r6] - mov r2, r8 - ldrh r1, [r2] - muls r1, r5 - adds r1, r4 - movs r2, 0x4 - bl healthbar_draw_field_maybe -_08073592: - ldr r0, =gHealthBoxesIds - add r0, r9 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r10 - ldrh r1, [r0, 0x3C] - movs r2, 0x1 - eors r1, r2 - strh r1, [r0, 0x3C] -_080735A8: - movs r0, 0x2 - add r8, r0 - movs r1, 0x1 - add r9, r1 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r9, r0 - bge _080735BA - b _08073336 -_080735BA: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8073314 - - thumb_func_start sub_80735DC -sub_80735DC: @ 80735DC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - str r1, [sp, 0xC] - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x8] - lsls r2, 24 - lsrs r2, 24 - adds r4, r2, 0 - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0x10] - cmp r4, 0 - beq _0807360C - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - beq _0807365C -_0807360C: - ldr r0, [sp, 0x8] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08073630 - movs r0, 0 - mov r9, r0 - movs r5, 0x88 - movs r4, 0x60 - movs r1, 0x64 - mov r10, r1 - ldr r2, =0x0000fffb - mov r8, r2 - b _0807366C - .pool -_08073630: - movs r3, 0x1 - mov r9, r3 - cmp r4, 0 - beq _08073642 - bl battle_type_is_double - lsls r0, 24 - cmp r0, 0 - bne _08073648 -_08073642: - movs r5, 0x68 - movs r4, 0x28 - b _0807364C -_08073648: - movs r5, 0x68 - movs r4, 0x10 -_0807364C: - ldr r6, =0x0000ff9c - mov r10, r6 - movs r0, 0x5 - mov r8, r0 - b _0807366C - .pool -_0807365C: - movs r1, 0x1 - mov r9, r1 - movs r5, 0x68 - movs r4, 0x28 - ldr r2, =0x0000ff9c - mov r10, r2 - movs r3, 0x5 - mov r8, r3 -_0807366C: - ldr r0, =gUnknown_0832C334 - bl LoadCompressedObjectPicUsingHeap - ldr r0, =gUnknown_0832C34C - bl LoadSpriteSheet - ldr r0, =gUnknown_0832C33C - bl LoadSpritePalette - ldr r0, =gUnknown_0832C344 - bl LoadSpritePalette - mov r0, r9 - lsls r6, r0, 1 - adds r0, r6, r0 - lsls r0, 3 - ldr r1, =gUnknown_0832C364 - adds r0, r1 - lsls r5, 16 - asrs r1, r5, 16 - lsls r4, 16 - asrs r2, r4, 16 - movs r3, 0xA - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x14] - lsls r0, 4 - ldr r1, [sp, 0x14] - adds r0, r1 - lsls r0, 2 - ldr r1, =gSprites - adds r7, r0, r1 - ldr r1, =gUnknown_0832C2C4 - adds r0, r7, 0 - bl SetSubspriteTables - mov r2, r10 - strh r2, [r7, 0x24] - mov r3, r8 - strh r3, [r7, 0x2E] - str r5, [sp, 0x1C] - str r4, [sp, 0x20] - mov r5, r9 - cmp r5, 0 - beq _08073700 - ldrh r0, [r7, 0x20] - subs r0, 0x60 - strh r0, [r7, 0x20] - ldrb r1, [r7, 0x3] - movs r0, 0x3F - negs r0, r0 - ands r0, r1 - movs r1, 0x10 - orrs r0, r1 - strb r0, [r7, 0x3] - b _08073706 - .pool -_08073700: - ldrh r0, [r7, 0x20] - adds r0, 0x60 - strh r0, [r7, 0x20] -_08073706: - movs r0, 0 - mov r8, r0 - ldr r1, =gSprites - mov r10, r1 - mov r7, sp - mov r2, r9 - adds r0, r6, r2 - lsls r0, 3 - str r0, [sp, 0x18] - movs r6, 0xA - movs r5, 0 -_0807371C: - ldr r0, =gUnknown_0832C394 - ldr r3, [sp, 0x20] - ldr r1, =0xfffc0000 - adds r2, r3, r1 - ldr r3, [sp, 0x18] - adds r0, r3, r0 - ldr r3, [sp, 0x1C] - asrs r1, r3, 16 - asrs r2, 16 - movs r3, 0x9 - bl CreateSpriteAtEnd - strb r0, [r7] - ldr r0, [sp, 0x10] - cmp r0, 0 - bne _0807374C - ldrb r0, [r7] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r2, =gSprites + 0x1C - adds r1, r2 - ldr r0, =sub_80741C8 - str r0, [r1] -_0807374C: - ldr r4, =gSprites - mov r3, r9 - cmp r3, 0 - bne _0807376E - ldrb r1, [r7] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r10 - strh r3, [r0, 0x24] - ldrb r1, [r7] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r10 - mov r1, r9 - strh r1, [r0, 0x26] -_0807376E: - ldrb r1, [r7] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0 - mov r2, sp - ldrh r2, [r2, 0x14] - strh r2, [r0, 0x2E] - mov r3, r9 - cmp r3, 0 - bne _080737C8 - ldrb r0, [r7] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldrh r0, [r1, 0x20] - adds r0, 0x18 - adds r0, r5 - strh r0, [r1, 0x20] - ldrb r1, [r7] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - strh r6, [r0, 0x30] - ldrb r1, [r7] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0x78 - b _0807380A - .pool -_080737C8: - ldrb r0, [r7] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r4 - ldrh r3, [r2, 0x20] - subs r3, 0x18 - movs r1, 0x5 - mov r0, r8 - subs r1, r0 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 1 - subs r3, r0 - strh r3, [r2, 0x20] - ldrb r0, [r7] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r4 - movs r1, 0x6 - mov r3, r8 - subs r1, r3 - lsls r0, r1, 3 - subs r0, r1 - adds r0, 0xA - strh r0, [r2, 0x30] - ldrb r1, [r7] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldr r1, =0x0000ff88 -_0807380A: - strh r1, [r0, 0x24] - ldrb r1, [r7] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - mov r1, r9 - strh r1, [r0, 0x32] - adds r7, 0x1 - adds r6, 0x7 - adds r5, 0xA - movs r2, 0x1 - add r8, r2 - mov r3, r8 - cmp r3, 0x5 - bgt _0807382C - b _0807371C -_0807382C: - ldr r0, [sp, 0x8] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _0807383A - b _080739E8 -_0807383A: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r2, 0x40 - ands r1, r2 - cmp r1, 0 - beq _080738F4 - ldr r5, =0x0000ffff - mov r10, r5 - ldr r6, =gSprites - ldr r0, =0x000003ff - adds r7, r0, 0 - ldr r1, =0xfffffc00 - mov r9, r1 - mov r4, sp - ldr r5, [sp, 0xC] - movs r2, 0x5 - mov r8, r2 -_0807385C: - ldrh r0, [r5] - cmp r0, r10 - bne _080738A8 - ldrb r0, [r4] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r6 - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x1 - ands r1, r7 - mov r0, r9 - ands r0, r3 - orrs r0, r1 - strh r0, [r2, 0x4] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - movs r1, 0x1 - strh r1, [r0, 0x3C] - b _080738E2 - .pool -_080738A8: - cmp r0, 0 - bne _080738C0 - ldrb r0, [r4] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r6 - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x3 - b _080738D8 -_080738C0: - ldr r0, [r5, 0x4] - cmp r0, 0 - beq _080738E2 - ldrb r0, [r4] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r6 - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x2 -_080738D8: - ands r1, r7 - mov r0, r9 - ands r0, r3 - orrs r0, r1 - strh r0, [r2, 0x4] -_080738E2: - adds r4, 0x1 - adds r5, 0x8 - movs r3, 0x1 - negs r3, r3 - add r8, r3 - mov r0, r8 - cmp r0, 0 - bge _0807385C - b _08073B9A -_080738F4: - movs r1, 0x5 - mov r10, r1 - movs r7, 0 - ldr r2, =gSprites - mov r8, r2 - ldr r3, =0x000003ff - mov r9, r3 - ldr r5, =0xfffffc00 - mov r12, r5 - ldr r6, [sp, 0xC] - mov r5, sp -_0807390A: - ldrh r0, [r6] - ldr r1, =0x0000ffff - cmp r0, r1 - bne _08073958 - mov r4, sp - add r4, r10 - ldrb r0, [r4] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - add r2, r8 - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x1 - mov r0, r9 - ands r1, r0 - mov r0, r12 - ands r0, r3 - orrs r0, r1 - strh r0, [r2, 0x4] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r8 - movs r1, 0x1 - strh r1, [r0, 0x3C] - subs r1, 0x2 - add r10, r1 - b _080739DE - .pool -_08073958: - cmp r0, 0 - bne _08073970 - ldrb r0, [r5] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - add r2, r8 - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x3 - b _080739D0 -_08073970: - ldr r1, =gBattleTypeFlags - ldr r0, [r1] - movs r1, 0x80 - lsls r1, 11 - ands r0, r1 - cmp r0, 0 - beq _080739B8 - ldr r0, =gBattleStruct - ldr r0, [r0] - movs r2, 0xA8 - lsls r2, 2 - adds r0, r2 - ldrb r1, [r0] - ldr r2, =gBitTable - lsls r0, r7, 2 - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _080739B8 - ldrb r0, [r5] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - add r2, r8 - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x3 - b _080739D0 - .pool -_080739B8: - ldr r0, [r6, 0x4] - cmp r0, 0 - beq _080739DC - ldrb r0, [r5] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - add r2, r8 - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x2 -_080739D0: - mov r0, r9 - ands r1, r0 - mov r0, r12 - ands r0, r3 - orrs r0, r1 - strh r0, [r2, 0x4] -_080739DC: - adds r5, 0x1 -_080739DE: - adds r6, 0x8 - adds r7, 0x1 - cmp r7, 0x5 - ble _0807390A - b _08073B9A -_080739E8: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r2, =0x00008040 - ands r1, r2 - cmp r1, 0 - beq _08073AA4 - ldr r1, =0x0000ffff - mov r10, r1 - ldr r6, =gSprites - ldr r2, =0x000003ff - adds r7, r2, 0 - ldr r3, =0xfffffc00 - mov r9, r3 - ldr r5, [sp, 0xC] - mov r4, sp - adds r4, 0x5 - movs r0, 0x5 - mov r8, r0 -_08073A0C: - ldrh r0, [r5] - cmp r0, r10 - bne _08073A58 - ldrb r0, [r4] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r6 - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x1 - ands r1, r7 - mov r0, r9 - ands r0, r3 - orrs r0, r1 - strh r0, [r2, 0x4] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - movs r1, 0x1 - strh r1, [r0, 0x3C] - b _08073A92 - .pool -_08073A58: - cmp r0, 0 - bne _08073A70 - ldrb r0, [r4] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r6 - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x3 - b _08073A88 -_08073A70: - ldr r0, [r5, 0x4] - cmp r0, 0 - beq _08073A92 - ldrb r0, [r4] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r6 - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x2 -_08073A88: - ands r1, r7 - mov r0, r9 - ands r0, r3 - orrs r0, r1 - strh r0, [r2, 0x4] -_08073A92: - subs r4, 0x1 - adds r5, 0x8 - movs r1, 0x1 - negs r1, r1 - add r8, r1 - mov r2, r8 - cmp r2, 0 - bge _08073A0C - b _08073B9A -_08073AA4: - movs r3, 0 - mov r8, r3 - movs r7, 0 - ldr r5, =gSprites - mov r9, r5 - ldr r6, =0x000003ff - mov r12, r6 - ldr r0, =0xfffffc00 - mov r10, r0 - ldr r6, [sp, 0xC] - mov r5, sp - adds r5, 0x5 -_08073ABC: - ldrh r0, [r6] - ldr r1, =0x0000ffff - cmp r0, r1 - bne _08073B08 - mov r4, sp - add r4, r8 - ldrb r0, [r4] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - add r2, r9 - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x1 - mov r0, r12 - ands r1, r0 - mov r0, r10 - ands r0, r3 - orrs r0, r1 - strh r0, [r2, 0x4] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r9 - movs r1, 0x1 - strh r1, [r0, 0x3C] - add r8, r1 - b _08073B92 - .pool -_08073B08: - cmp r0, 0 - bne _08073B20 - ldrb r0, [r5] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - add r2, r9 - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x3 - b _08073B84 -_08073B20: - ldr r1, =gBattleTypeFlags - ldr r0, [r1] - movs r1, 0x80 - lsls r1, 11 - ands r0, r1 - cmp r0, 0 - beq _08073B6C - ldr r2, =gBattleStruct - ldr r0, [r2] - ldr r3, =0x000002a1 - adds r0, r3 - ldrb r1, [r0] - lsls r0, r7, 2 - ldr r2, =gBitTable - adds r0, r2 - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _08073B6C - ldrb r0, [r5] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - add r2, r9 - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x3 - b _08073B84 - .pool -_08073B6C: - ldr r0, [r6, 0x4] - cmp r0, 0 - beq _08073B90 - ldrb r0, [r5] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - add r2, r9 - ldrh r3, [r2, 0x4] - lsls r1, r3, 22 - lsrs r1, 22 - adds r1, 0x2 -_08073B84: - mov r0, r12 - ands r1, r0 - mov r0, r10 - ands r0, r3 - orrs r0, r1 - strh r0, [r2, 0x4] -_08073B90: - subs r5, 0x1 -_08073B92: - adds r6, 0x8 - adds r7, 0x1 - cmp r7, 0x5 - ble _08073ABC -_08073B9A: - ldr r0, =TaskDummy - movs r1, 0x5 - bl CreateTask - lsls r0, 24 - lsrs r4, r0, 24 - ldr r2, =gTasks - lsls r3, r4, 2 - adds r1, r3, r4 - lsls r1, 3 - adds r0, r1, r2 - mov r5, sp - ldrh r5, [r5, 0x8] - strh r5, [r0, 0x8] - mov r6, sp - ldrh r6, [r6, 0x14] - strh r6, [r0, 0xA] - movs r0, 0 - mov r8, r0 - adds r0, r2, 0 - adds r0, 0xE - adds r1, r0 -_08073BC6: - mov r0, sp - add r0, r8 - ldrb r0, [r0] - strh r0, [r1] - adds r1, 0x2 - movs r5, 0x1 - add r8, r5 - mov r6, r8 - cmp r6, 0x5 - ble _08073BC6 - adds r0, r3, r4 - lsls r0, 3 - adds r0, r2 - mov r1, sp - ldrh r1, [r1, 0x10] - strh r1, [r0, 0x1C] - ldr r2, [sp, 0x10] - cmp r2, 0 - beq _08073C0A - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r3, [r0, 0x8] - ldrb r2, [r3, 0x9] - lsls r1, r2, 27 - lsrs r1, 29 - adds r1, 0x1 - movs r0, 0x7 - ands r1, r0 - lsls r1, 2 - movs r0, 0x1D - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3, 0x9] -_08073C0A: - movs r0, 0x72 - movs r1, 0 - bl PlaySE12WithPanning - adds r0, r4, 0 - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_80735DC - - thumb_func_start sub_8073C30 -sub_8073C30: @ 8073C30 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r2, =gTasks - lsls r3, r0, 2 - adds r1, r3, r0 - lsls r1, 3 - adds r0, r1, r2 - ldrb r7, [r0, 0x1C] - ldrb r4, [r0, 0xA] - mov r10, r4 - ldrb r0, [r0, 0x8] - str r0, [sp, 0x8] - movs r5, 0 - str r3, [sp, 0xC] - adds r2, 0xE - adds r2, r1, r2 -_08073C5E: - mov r0, sp - adds r1, r0, r5 - ldrh r0, [r2] - strb r0, [r1] - adds r2, 0x2 - adds r5, 0x1 - cmp r5, 0x5 - ble _08073C5E - movs r1, 0xFD - lsls r1, 6 - movs r0, 0x50 - bl SetGpuReg - movs r0, 0x52 - movs r1, 0x10 - bl SetGpuReg - ldr r1, =gTasks - ldr r0, [sp, 0xC] - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0x10 - strh r1, [r0, 0x26] - movs r5, 0 - mov r1, r10 - lsls r1, 4 - str r1, [sp, 0x10] - ldr r3, =gSprites - movs r6, 0xD - negs r6, r6 - mov r12, r3 - movs r4, 0x4 -_08073CA0: - mov r2, sp - adds r0, r2, r5 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r3 - ldrb r2, [r1, 0x1] - adds r0, r6, 0 - ands r0, r2 - orrs r0, r4 - strb r0, [r1, 0x1] - adds r5, 0x1 - cmp r5, 0x5 - ble _08073CA0 - ldr r2, [sp, 0x10] - add r2, r10 - lsls r2, 2 - add r2, r12 - ldrb r1, [r2, 0x1] - movs r0, 0xD - negs r0, r0 - ands r0, r1 - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2, 0x1] - cmp r7, 0 - bne _08073CDA - b _08073DE0 -_08073CDA: - movs r5, 0 - mov r6, r12 - mov r9, r5 - adds r3, r6, 0 - adds r3, 0x1C - mov r4, sp - movs r7, 0 -_08073CE8: - ldr r0, [sp, 0x8] - str r3, [sp, 0x14] - bl GetBankSide - lsls r0, 24 - lsrs r2, r0, 24 - ldr r3, [sp, 0x14] - cmp r2, 0 - beq _08073D4C - movs r0, 0x5 - subs r0, r5 - mov r1, sp - adds r2, r1, r0 - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - strh r7, [r0, 0x30] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - mov r1, r9 - strh r1, [r0, 0x34] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - mov r1, r9 - strh r1, [r0, 0x36] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldr r1, =sub_8074158 - str r1, [r0] - ldr r2, =gSprites - mov r12, r2 - b _08073D82 - .pool -_08073D4C: - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - strh r7, [r0, 0x30] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - strh r2, [r0, 0x34] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - strh r2, [r0, 0x36] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldr r1, =sub_8074158 - str r1, [r0] - ldr r0, =gSprites - mov r12, r0 -_08073D82: - adds r4, 0x1 - adds r7, 0x7 - adds r5, 0x1 - cmp r5, 0x5 - ble _08073CE8 - ldr r3, [sp, 0x10] - add r3, r10 - lsls r3, 2 - mov r1, r12 - adds r0, r3, r1 - movs r2, 0x2E - ldrsh r1, [r0, r2] - lsrs r2, r1, 31 - adds r1, r2 - asrs r1, 1 - movs r2, 0 - strh r1, [r0, 0x2E] - strh r2, [r0, 0x30] - mov r1, r12 - adds r1, 0x1C - adds r3, r1 - ldr r1, =sub_8074090 - str r1, [r3] - ldr r1, =gUnknown_0832C2CC - bl SetSubspriteTables - ldr r1, =gTasks - ldr r0, [sp, 0xC] - add r0, r8 - lsls r0, 3 - adds r0, r1 - ldr r1, =task_battle_throw_own_ball - str r1, [r0] - b _08073DEE - .pool -_08073DE0: - ldr r0, =gTasks - ldr r1, [sp, 0xC] - add r1, r8 - lsls r1, 3 - adds r1, r0 - ldr r0, =sub_8073F98 - str r0, [r1] -_08073DEE: - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8073C30 - - thumb_func_start task_battle_throw_own_ball -task_battle_throw_own_ball: @ 8073E08 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r4, r1, r2 - ldrh r0, [r4, 0x1E] - adds r1, r0, 0x1 - strh r1, [r4, 0x1E] - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08073E48 - ldrh r0, [r4, 0x26] - subs r1, r0, 0x1 - strh r1, [r4, 0x26] - lsls r0, r1, 16 - cmp r0, 0 - blt _08073E54 - movs r0, 0x10 - subs r0, r1 - lsls r0, 8 - orrs r1, r0 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x52 - bl SetGpuReg -_08073E48: - movs r1, 0x26 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _08073E54 - ldr r0, =sub_8073E64 - str r0, [r4] -_08073E54: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end task_battle_throw_own_ball - - thumb_func_start sub_8073E64 -sub_8073E64: @ 8073E64 - push {r4-r7,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r7, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r3, r0, 3 - adds r4, r3, r7 - ldrb r2, [r4, 0x8] - ldrh r0, [r4, 0x26] - subs r0, 0x1 - strh r0, [r4, 0x26] - lsls r0, 16 - asrs r1, r0, 16 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _08073F54 - ldrb r5, [r4, 0xA] - movs r4, 0 - ldr r6, =gUnknown_020244D0 - adds r0, r7, 0 - adds r0, 0xE - adds r2, r3, r0 -_08073E96: - mov r0, sp - adds r1, r0, r4 - ldrh r0, [r2] - strb r0, [r1] - adds r2, 0x2 - adds r4, 0x1 - cmp r4, 0x5 - ble _08073E96 - ldr r0, [r6] - ldr r3, [r0, 0x8] - ldrb r2, [r3, 0x9] - lsls r1, r2, 27 - lsrs r1, 29 - subs r1, 0x1 - movs r0, 0x7 - ands r1, r0 - lsls r1, 2 - movs r0, 0x1D - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3, 0x9] - ldr r0, [r6] - ldr r0, [r0, 0x8] - ldrb r1, [r0, 0x9] - movs r0, 0x1C - ands r0, r1 - cmp r0, 0 - bne _08073EFC - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - ldr r4, =gSprites - adds r0, r4 - bl DestroySpriteAndFreeResources - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl DestroySpriteAndFreeResources - b _08073F32 - .pool -_08073EFC: - lsls r4, r5, 4 - adds r4, r5 - lsls r4, 2 - ldr r5, =gSprites - adds r4, r5 - adds r0, r4, 0 - bl FreeSpriteOamMatrix - adds r0, r4, 0 - bl DestroySprite - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - bl FreeSpriteOamMatrix - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - bl DestroySprite -_08073F32: - movs r4, 0x1 - ldr r5, =gSprites -_08073F36: - mov r1, sp - adds r0, r1, r4 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - bl DestroySprite - adds r4, 0x1 - cmp r4, 0x5 - ble _08073F36 - b _08073F8A - .pool -_08073F54: - movs r0, 0x3 - negs r0, r0 - cmp r1, r0 - bne _08073F8A - ldr r0, =gUnknown_020244D0 - 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, 0x2 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - movs r0, 0x50 - movs r1, 0 - bl SetGpuReg - movs r0, 0x52 - movs r1, 0 - bl SetGpuReg - adds r0, r5, 0 - bl DestroyTask -_08073F8A: - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8073E64 - - thumb_func_start sub_8073F98 -sub_8073F98: @ 8073F98 - push {r4-r7,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r0, 24 - adds r4, r0, 0 - ldr r7, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r6, r0, 3 - adds r3, r6, r7 - ldrb r5, [r3, 0x8] - ldrh r0, [r3, 0x26] - subs r1, r0, 0x1 - strh r1, [r3, 0x26] - lsls r0, r1, 16 - asrs r2, r0, 16 - cmp r2, 0 - blt _08073FD4 - movs r0, 0x10 - subs r0, r1 - lsls r0, 8 - orrs r1, r0 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x52 - bl SetGpuReg - b _0807406A - .pool -_08073FD4: - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - bne _08074034 - ldrb r3, [r3, 0xA] - movs r5, 0 - adds r0, r7, 0 - adds r0, 0xE - adds r2, r6, r0 -_08073FE6: - mov r0, sp - adds r1, r0, r5 - ldrh r0, [r2] - strb r0, [r1] - adds r2, 0x2 - adds r5, 0x1 - cmp r5, 0x5 - ble _08073FE6 - lsls r0, r3, 4 - adds r0, r3 - lsls r0, 2 - ldr r4, =gSprites - adds r0, r4 - bl DestroySpriteAndFreeResources - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl DestroySpriteAndFreeResources - movs r5, 0x1 -_08074016: - mov r1, sp - adds r0, r1, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl DestroySprite - adds r5, 0x1 - cmp r5, 0x5 - ble _08074016 - b _0807406A - .pool -_08074034: - movs r0, 0x3 - negs r0, r0 - cmp r2, r0 - bne _0807406A - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r0, [r0, 0x4] - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 2 - adds r1, r0 - ldrb r2, [r1] - movs r0, 0x2 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - movs r0, 0x50 - movs r1, 0 - bl SetGpuReg - movs r0, 0x52 - movs r1, 0 - bl SetGpuReg - adds r0, r4, 0 - bl DestroyTask -_0807406A: - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8073F98 - - thumb_func_start sub_8074078 -sub_8074078: @ 8074078 - push {lr} - adds r1, r0, 0 - ldrh r2, [r1, 0x24] - movs r3, 0x24 - ldrsh r0, [r1, r3] - cmp r0, 0 - beq _0807408C - ldrh r0, [r1, 0x2E] - adds r0, r2, r0 - strh r0, [r1, 0x24] -_0807408C: - pop {r0} - bx r0 - thumb_func_end sub_8074078 - - thumb_func_start sub_8074090 -sub_8074090: @ 8074090 - push {lr} - adds r2, r0, 0 - ldrh r0, [r2, 0x30] - adds r1, r0, 0 - adds r1, 0x20 - strh r1, [r2, 0x30] - movs r3, 0x2E - ldrsh r0, [r2, r3] - cmp r0, 0 - ble _080740AE - lsls r0, r1, 16 - asrs r0, 20 - ldrh r1, [r2, 0x24] - adds r0, r1 - b _080740B6 -_080740AE: - lsls r1, 16 - asrs r1, 20 - ldrh r0, [r2, 0x24] - subs r0, r1 -_080740B6: - strh r0, [r2, 0x24] - ldrh r1, [r2, 0x30] - movs r0, 0xF - ands r0, r1 - strh r0, [r2, 0x30] - pop {r0} - bx r0 - thumb_func_end sub_8074090 - - thumb_func_start sub_80740C4 -sub_80740C4: @ 80740C4 - push {r4,lr} - adds r4, r0, 0 - ldrh r1, [r4, 0x30] - movs r2, 0x30 - ldrsh r0, [r4, r2] - cmp r0, 0 - ble _080740D8 - subs r0, r1, 0x1 - strh r0, [r4, 0x30] - b _0807414E -_080740D8: - ldrh r0, [r4, 0x32] - lsls r0, 24 - lsrs r3, r0, 24 - ldrh r2, [r4, 0x34] - adds r0, r2, 0 - adds r0, 0x38 - lsls r1, r0, 16 - lsrs r2, r1, 16 - ldr r0, =0x0000fff0 - ands r2, r0 - strh r2, [r4, 0x34] - cmp r3, 0 - beq _0807410C - lsrs r0, r1, 20 - ldrh r1, [r4, 0x24] - adds r0, r1 - strh r0, [r4, 0x24] - lsls r0, 16 - cmp r0, 0 - ble _0807411C - movs r0, 0 - strh r0, [r4, 0x24] - b _0807411C - .pool -_0807410C: - lsrs r1, 20 - ldrh r0, [r4, 0x24] - subs r0, r1 - strh r0, [r4, 0x24] - lsls r0, 16 - cmp r0, 0 - bge _0807411C - strh r3, [r4, 0x24] -_0807411C: - movs r2, 0x24 - ldrsh r0, [r4, r2] - cmp r0, 0 - bne _0807414E - movs r1, 0x3F - cmp r3, 0 - beq _0807412C - movs r1, 0xC0 -_0807412C: - movs r2, 0x3C - ldrsh r0, [r4, r2] - cmp r0, 0 - beq _08074140 - lsls r1, 24 - asrs r1, 24 - movs r0, 0x74 - bl PlaySE2WithPanning - b _0807414A -_08074140: - lsls r1, 24 - asrs r1, 24 - movs r0, 0x73 - bl PlaySE1WithPanning -_0807414A: - ldr r0, =SpriteCallbackDummy - str r0, [r4, 0x1C] -_0807414E: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80740C4 - - thumb_func_start sub_8074158 -sub_8074158: @ 8074158 - push {r4,lr} - adds r3, r0, 0 - ldrh r1, [r3, 0x30] - movs r2, 0x30 - ldrsh r0, [r3, r2] - cmp r0, 0 - ble _0807416C - subs r0, r1, 0x1 - strh r0, [r3, 0x30] - b _080741BC -_0807416C: - ldrh r0, [r3, 0x32] - lsls r0, 24 - ldrh r2, [r3, 0x34] - adds r1, r2, 0 - adds r1, 0x38 - lsls r4, r1, 16 - lsrs r2, r4, 16 - ldr r1, =0x0000fff0 - ands r2, r1 - strh r2, [r3, 0x34] - cmp r0, 0 - beq _08074190 - lsrs r0, r4, 20 - ldrh r1, [r3, 0x24] - adds r0, r1 - b _08074196 - .pool -_08074190: - lsrs r1, r4, 20 - ldrh r0, [r3, 0x24] - subs r0, r1 -_08074196: - strh r0, [r3, 0x24] - movs r2, 0x24 - ldrsh r0, [r3, r2] - movs r2, 0x20 - ldrsh r1, [r3, r2] - adds r0, r1 - adds r0, 0x8 - movs r1, 0x80 - lsls r1, 1 - cmp r0, r1 - bls _080741BC - adds r2, r3, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - ldr r0, =SpriteCallbackDummy - str r0, [r3, 0x1C] -_080741BC: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8074158 - - thumb_func_start sub_80741C8 -sub_80741C8: @ 80741C8 - ldrh r2, [r0, 0x2E] - lsls r2, 24 - lsrs r2, 24 - ldr r3, =gSprites - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r3 - ldrh r2, [r1, 0x24] - strh r2, [r0, 0x24] - ldrh r1, [r1, 0x26] - strh r1, [r0, 0x26] - bx lr - .pool - thumb_func_end sub_80741C8 - - thumb_func_start sub_80741E8 -sub_80741E8: @ 80741E8 - push {r4-r7,lr} - sub sp, 0x14 - adds r4, r1, 0 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r5, =gDisplayedStringBattle - ldr r1, =gText_HighlightDarkGrey - adds r0, r5, 0 - bl StringCopy - adds r0, r4, 0 - movs r1, 0x2 - add r2, sp, 0x4 - bl GetMonData - add r0, sp, 0x4 - bl StringGetEnd10 - adds r0, r5, 0 - add r1, sp, 0x4 - bl StringAppend - adds r5, r0, 0 - adds r0, r4, 0 - bl GetMonGender - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - adds r1, r0, 0 - cmp r0, 0x1D - beq _08074236 - cmp r0, 0x20 - bne _0807424A -_08074236: - movs r0, 0xB - muls r1, r0 - ldr r0, =gSpeciesNames - adds r1, r0 - add r0, sp, 0x4 - bl StringCompare - cmp r0, 0 - bne _0807424A - movs r6, 0x64 -_0807424A: - cmp r6, 0 - beq _08074268 - cmp r6, 0xFE - beq _08074270 - ldr r1, =gText_DynColor2 - b _08074272 - .pool -_08074268: - ldr r1, =gText_DynColor2Male - b _08074272 - .pool -_08074270: - ldr r1, =gText_DynColor1Female -_08074272: - adds r0, r5, 0 - bl StringCopy - ldr r0, =gDisplayedStringBattle - add r1, sp, 0x10 - str r1, [sp] - movs r1, 0 - movs r2, 0x3 - movs r3, 0x2 - bl write_to_rbox - adds r6, r0, 0 - ldr r0, =gSprites - lsls r1, r7, 4 - adds r1, r7 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r1, 0x4] - lsls r0, 22 - lsrs r4, r0, 17 - ldrh r0, [r1, 0x3A] - lsls r0, 24 - lsrs r0, 24 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080742F0 - ldr r1, =0x06010040 - adds r0, r4, r1 - adds r1, r6, 0 - movs r2, 0x6 - bl sub_8075198 - bl battle_type_is_double - lsls r0, 24 - ldr r1, =0x06010400 - adds r5, r4, r1 - cmp r0, 0 - bne _080742C8 - ldr r0, =0x06010800 - adds r5, r4, r0 -_080742C8: - adds r1, r6, 0 - adds r1, 0xC0 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8075198 - b _080742FC - .pool -_080742F0: - ldr r1, =0x06010020 - adds r0, r4, r1 - adds r1, r6, 0 - movs r2, 0x7 - bl sub_8075198 -_080742FC: - ldr r0, [sp, 0x10] - bl sub_807512C - add sp, 0x14 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80741E8 - - thumb_func_start sub_8074310 -sub_8074310: @ 8074310 - push {r4-r7,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 24 - lsrs r7, r1, 24 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - bne _080743E6 - movs r0, 0x8 - ands r1, r0 - cmp r1, 0 - bne _080743E6 - ldr r6, =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r5, r0, r6 - ldrh r0, [r5, 0x3A] - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080743E6 - ldr r1, =gBattlePartyID - lsls r0, r4, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - bl GetSetPokedexFlag - lsls r0, 24 - cmp r0, 0 - beq _080743E6 - ldrh r0, [r5, 0x38] - lsls r0, 24 - lsrs r4, r0, 24 - cmp r7, 0 - beq _080743C4 - movs r0, 0x46 - bl sub_80728A4 - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r6 - ldrh r1, [r1, 0x4] - lsls r1, 22 - lsrs r1, 17 - movs r2, 0x80 - lsls r2, 1 - adds r1, r2 - ldr r2, =0x06010000 - adds r1, r2 - ldr r2, =0x04000008 - bl CpuSet - b _080743E6 - .pool -_080743C4: - str r7, [sp] - lsls r0, r4, 4 - adds r0, r4 - lsls r0, 2 - adds r0, r6 - ldrh r1, [r0, 0x4] - lsls r1, 22 - lsrs r1, 17 - movs r0, 0x80 - lsls r0, 1 - adds r1, r0 - ldr r0, =0x06010000 - adds r1, r0 - ldr r2, =0x05000008 - mov r0, sp - bl CpuSet -_080743E6: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8074310 - - thumb_func_start draw_status_ailment_maybe -draw_status_ailment_maybe: @ 80743F8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - ldr r0, =gSprites - mov r2, r9 - lsls r1, r2, 4 - add r1, r9 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r1, 0x3A] - lsls r0, 24 - lsrs r7, r0, 24 - ldrh r0, [r1, 0x38] - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - adds r0, r7, 0 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _08074468 - ldr r1, =gBattlePartyID - lsls r0, r7, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x37 - bl GetMonData - adds r4, r0, 0 - bl battle_type_is_double - lsls r0, 24 - movs r3, 0x12 - mov r8, r3 - cmp r0, 0 - bne _08074484 - movs r0, 0x1A - mov r8, r0 - b _08074484 - .pool -_08074468: - ldr r1, =gBattlePartyID - lsls r0, r7, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x37 - bl GetMonData - adds r4, r0, 0 - movs r1, 0x11 - mov r8, r1 -_08074484: - movs r0, 0x7 - ands r0, r4 - cmp r0, 0 - beq _080744AC - movs r0, 0x1B - adds r1, r7, 0 - bl sub_80746A8 - lsls r0, 24 - lsrs r0, 24 - bl sub_80728A4 - adds r6, r0, 0 - movs r0, 0x2 - b _080745B8 - .pool -_080744AC: - movs r0, 0x88 - ands r0, r4 - cmp r0, 0 - beq _080744CA - movs r0, 0x15 - adds r1, r7, 0 - bl sub_80746A8 - lsls r0, 24 - lsrs r0, 24 - bl sub_80728A4 - adds r6, r0, 0 - movs r0, 0 - b _080745B8 -_080744CA: - movs r0, 0x10 - ands r0, r4 - cmp r0, 0 - beq _080744E8 - movs r0, 0x21 - adds r1, r7, 0 - bl sub_80746A8 - lsls r0, 24 - lsrs r0, 24 - bl sub_80728A4 - adds r6, r0, 0 - movs r0, 0x4 - b _080745B8 -_080744E8: - movs r0, 0x20 - ands r0, r4 - cmp r0, 0 - beq _08074506 - movs r0, 0x1E - adds r1, r7, 0 - bl sub_80746A8 - lsls r0, 24 - lsrs r0, 24 - bl sub_80728A4 - adds r6, r0, 0 - movs r0, 0x3 - b _080745B8 -_08074506: - movs r0, 0x40 - ands r0, r4 - cmp r0, 0 - beq _08074524 - movs r0, 0x18 - adds r1, r7, 0 - bl sub_80746A8 - lsls r0, 24 - lsrs r0, 24 - bl sub_80728A4 - adds r6, r0, 0 - movs r0, 0x1 - b _080745B8 -_08074524: - movs r0, 0x27 - bl sub_80728A4 - adds r6, r0, 0 - movs r4, 0 - mov r2, r9 - lsls r0, r2, 4 - mov r3, r8 - lsls r3, 16 - mov r8, r3 - lsls r7, 2 - ldr r1, =gSprites - add r0, r9 - lsls r0, 2 - adds r5, r0, r1 -_08074542: - ldrh r1, [r5, 0x4] - lsls r1, 22 - lsrs r1, 22 - mov r2, r8 - asrs r0, r2, 16 - adds r1, r0 - adds r1, r4 - lsls r1, 5 - ldr r3, =0x06010000 - adds r1, r3 - adds r0, r6, 0 - ldr r2, =0x04000008 - bl CpuSet - adds r4, 0x1 - cmp r4, 0x2 - ble _08074542 - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r0, [r0] - adds r0, r7, r0 - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08074598 - movs r0, 0x1 - bl sub_80728A4 - ldr r2, =gSprites - mov r3, r10 - lsls r1, r3, 4 - add r1, r10 - lsls r1, 2 - adds r1, r2 - ldrh r1, [r1, 0x4] - lsls r1, 22 - lsrs r1, 17 - ldr r2, =0x06010000 - adds r1, r2 - ldr r2, =0x04000010 - bl CpuSet -_08074598: - mov r0, r9 - movs r1, 0x1 - bl sub_8074310 - b _0807467A - .pool -_080745B8: - mov r1, r9 - lsls r5, r1, 4 - add r5, r9 - lsls r5, 2 - ldr r2, =gSprites - adds r5, r2 - ldrb r4, [r5, 0x5] - lsrs r4, 4 - lsls r4, 4 - adds r4, 0xC - adds r4, r7 - ldr r1, =gUnknown_0832C3EC - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] - movs r3, 0x80 - lsls r3, 1 - adds r1, r4, r3 - movs r2, 0x2 - bl FillPalette - lsls r4, 1 - ldr r0, =gPlttBufferUnfaded + 0x200 - adds r0, r4, r0 - ldr r1, =0x05000200 - adds r4, r1 - adds r1, r4, 0 - movs r2, 0x1 - bl CpuSet - ldrh r1, [r5, 0x4] - lsls r1, 22 - lsrs r1, 22 - add r1, r8 - lsls r1, 5 - ldr r2, =0x06010000 - mov r8, r2 - add r1, r8 - ldr r2, =0x04000018 - adds r0, r6, 0 - bl CpuSet - bl battle_type_is_double - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08074626 - adds r0, r7, 0 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08074672 -_08074626: - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r1, [r0] - lsls r0, r7, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08074672 - movs r0, 0 - bl sub_80728A4 - mov r3, r10 - lsls r4, r3, 4 - add r4, r10 - lsls r4, 2 - ldr r1, =gSprites - adds r4, r1 - ldrh r1, [r4, 0x4] - lsls r1, 22 - lsrs r1, 17 - add r1, r8 - ldr r5, =0x04000008 - adds r2, r5, 0 - bl CpuSet - movs r0, 0x41 - bl sub_80728A4 - ldrh r1, [r4, 0x4] - lsls r1, 22 - lsrs r1, 17 - adds r1, 0x20 - add r1, r8 - adds r2, r5, 0 - bl CpuSet -_08074672: - mov r0, r9 - movs r1, 0 - bl sub_8074310 -_0807467A: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end draw_status_ailment_maybe - - thumb_func_start sub_80746A8 -sub_80746A8: @ 80746A8 - push {lr} - lsls r0, 24 - lsls r1, 24 - lsrs r3, r1, 24 - lsrs r2, r0, 24 - adds r0, r2, 0 - subs r0, 0x15 - cmp r0, 0xC - bhi _08074768 - lsls r0, 2 - ldr r1, =_080746C8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080746C8: - .4byte _080746FC - .4byte _08074768 - .4byte _08074768 - .4byte _08074712 - .4byte _08074768 - .4byte _08074768 - .4byte _08074728 - .4byte _08074768 - .4byte _08074768 - .4byte _0807473E - .4byte _08074768 - .4byte _08074768 - .4byte _08074754 -_080746FC: - movs r2, 0x15 - cmp r3, 0 - beq _08074768 - movs r2, 0x47 - cmp r3, 0x1 - beq _08074768 - movs r2, 0x65 - cmp r3, 0x2 - bne _08074768 - movs r2, 0x56 - b _08074768 -_08074712: - movs r2, 0x18 - cmp r3, 0 - beq _08074768 - movs r2, 0x4A - cmp r3, 0x1 - beq _08074768 - movs r2, 0x68 - cmp r3, 0x2 - bne _08074768 - movs r2, 0x59 - b _08074768 -_08074728: - movs r2, 0x1B - cmp r3, 0 - beq _08074768 - movs r2, 0x4D - cmp r3, 0x1 - beq _08074768 - movs r2, 0x6B - cmp r3, 0x2 - bne _08074768 - movs r2, 0x5C - b _08074768 -_0807473E: - movs r2, 0x1E - cmp r3, 0 - beq _08074768 - movs r2, 0x50 - cmp r3, 0x1 - beq _08074768 - movs r2, 0x6E - cmp r3, 0x2 - bne _08074768 - movs r2, 0x5F - b _08074768 -_08074754: - movs r2, 0x21 - cmp r3, 0 - beq _08074768 - movs r2, 0x53 - cmp r3, 0x1 - beq _08074768 - movs r2, 0x71 - cmp r3, 0x2 - bne _08074768 - movs r2, 0x62 -_08074768: - adds r0, r2, 0 - pop {r1} - bx r1 - thumb_func_end sub_80746A8 - - thumb_func_start sub_8074770 -sub_8074770: @ 8074770 - push {r4,r5,lr} - sub sp, 0x8 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, =gText_SafariBalls - add r1, sp, 0x4 - str r1, [sp] - movs r1, 0 - movs r2, 0x3 - movs r3, 0x2 - bl write_to_rbox - adds r5, r0, 0 - ldr r1, =gSprites - lsls r0, r4, 4 - adds r0, r4 - lsls r0, 2 - adds r0, r1 - ldrh r4, [r0, 0x4] - lsls r4, 22 - lsrs r4, 17 - ldr r1, =0x06010040 - adds r0, r4, r1 - adds r1, r5, 0 - movs r2, 0x6 - bl sub_8075198 - ldr r0, =0x06010800 - adds r4, r0 - adds r5, 0xC0 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x2 - bl sub_8075198 - ldr r0, [sp, 0x4] - bl sub_807512C - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8074770 - - thumb_func_start sub_80747D8 -sub_80747D8: @ 80747D8 - push {r4,r5,lr} - sub sp, 0x18 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, =gText_SafariBallLeft - add r0, sp, 0x4 - bl StringCopy - ldr r1, =gNumSafariBalls - ldrb r1, [r1] - movs r2, 0 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - movs r0, 0 - add r1, sp, 0x4 - movs r2, 0x2F - bl GetStringRightAlignXOffset - adds r1, r0, 0 - add r0, sp, 0x14 - str r0, [sp] - add r0, sp, 0x4 - movs r2, 0x3 - movs r3, 0x2 - bl write_to_rbox - adds r5, r0, 0 - ldr r1, =gSprites - lsls r0, r4, 4 - adds r0, r4 - lsls r0, 2 - adds r0, r1 - ldrh r4, [r0, 0x4] - lsls r4, 22 - lsrs r4, 17 - ldr r1, =0x060102c0 - adds r0, r4, r1 - adds r1, r5, 0 - movs r2, 0x2 - bl sub_80751E4 - ldr r0, =0x06010a00 - adds r4, r0 - adds r5, 0x40 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x4 - bl sub_80751E4 - ldr r0, [sp, 0x14] - bl sub_807512C - add sp, 0x18 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80747D8 - - thumb_func_start healthbar_draw_field_maybe -healthbar_draw_field_maybe: @ 8074860 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - mov r8, r1 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r2, 24 - lsrs r7, r2, 24 - ldr r1, =gSprites - lsls r0, r6, 4 - adds r0, r6 - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0, 0x3A] - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - cmp r7, 0 - bne _0807489C - bl battle_type_is_double - lsls r0, 24 - cmp r0, 0 - bne _0807489C - mov r0, r9 - bl GetBankSide -_0807489C: - ldr r1, =gSprites - lsls r0, r6, 4 - adds r0, r6 - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0, 0x3A] - lsls r0, 24 - lsrs r0, 24 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080748B8 - b _08074A18 -_080748B8: - cmp r7, 0x3 - beq _080748C0 - cmp r7, 0 - bne _080748D4 -_080748C0: - mov r0, r8 - movs r1, 0x38 - bl GetMonData - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r6, 0 - bl healthbar_draw_level -_080748D4: - cmp r7, 0x1 - bhi _080748EE - mov r0, r8 - movs r1, 0x39 - bl GetMonData - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - adds r0, r6, 0 - movs r2, 0 - bl heathbar_draw_hp -_080748EE: - cmp r7, 0x2 - beq _080748F6 - cmp r7, 0 - bne _0807490C -_080748F6: - mov r0, r8 - movs r1, 0x3A - bl GetMonData - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - adds r0, r6, 0 - movs r2, 0x1 - bl heathbar_draw_hp -_0807490C: - cmp r7, 0x5 - beq _08074914 - cmp r7, 0 - bne _08074948 -_08074914: - movs r0, 0 - bl load_gfxc_health_bar - mov r0, r8 - movs r1, 0x3A - bl GetMonData - adds r4, r0, 0 - mov r0, r8 - movs r1, 0x39 - bl GetMonData - adds r3, r0, 0 - movs r0, 0 - str r0, [sp] - mov r0, r9 - adds r1, r6, 0 - adds r2, r4, 0 - bl sub_807294C - mov r0, r9 - adds r1, r6, 0 - movs r2, 0 - movs r3, 0 - bl sub_8074AA0 -_08074948: - bl battle_type_is_double - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - cmp r0, 0 - bne _080749CE - cmp r7, 0x6 - beq _0807495E - cmp r7, 0 - bne _080749CE -_0807495E: - movs r0, 0x3 - bl load_gfxc_health_bar - mov r0, r8 - movs r1, 0xB - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - mov r0, r8 - movs r1, 0x38 - bl GetMonData - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - mov r0, r8 - movs r1, 0x19 - bl GetMonData - adds r3, r0, 0 - ldr r0, =gExperienceTables - mov r12, r0 - 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 - add r1, r12 - ldr r1, [r1] - subs r3, r1 - adds r4, 0x1 - lsls r4, 2 - adds r4, r0 - add r4, r12 - ldr r2, [r4] - subs r2, r1 - mov r0, r10 - str r0, [sp] - mov r0, r9 - adds r1, r6, 0 - bl sub_807294C - mov r0, r9 - adds r1, r6, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8074AA0 -_080749CE: - cmp r7, 0x4 - beq _080749D6 - cmp r7, 0 - bne _080749DE -_080749D6: - adds r0, r6, 0 - mov r1, r8 - bl sub_80741E8 -_080749DE: - cmp r7, 0x9 - beq _080749E6 - cmp r7, 0 - bne _080749EC -_080749E6: - adds r0, r6, 0 - bl draw_status_ailment_maybe -_080749EC: - cmp r7, 0xA - bne _080749F6 - adds r0, r6, 0 - bl sub_8074770 -_080749F6: - adds r0, r7, 0 - subs r0, 0xA - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08074A8E - adds r0, r6, 0 - bl sub_80747D8 - b _08074A8E - .pool -_08074A18: - cmp r7, 0x3 - beq _08074A20 - cmp r7, 0 - bne _08074A34 -_08074A20: - mov r0, r8 - movs r1, 0x38 - bl GetMonData - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r6, 0 - bl healthbar_draw_level -_08074A34: - cmp r7, 0x5 - beq _08074A3C - cmp r7, 0 - bne _08074A70 -_08074A3C: - movs r0, 0 - bl load_gfxc_health_bar - mov r0, r8 - movs r1, 0x3A - bl GetMonData - adds r4, r0, 0 - mov r0, r8 - movs r1, 0x39 - bl GetMonData - adds r3, r0, 0 - movs r0, 0 - str r0, [sp] - mov r0, r9 - adds r1, r6, 0 - adds r2, r4, 0 - bl sub_807294C - mov r0, r9 - adds r1, r6, 0 - movs r2, 0 - movs r3, 0 - bl sub_8074AA0 -_08074A70: - cmp r7, 0x4 - beq _08074A78 - cmp r7, 0 - bne _08074A80 -_08074A78: - adds r0, r6, 0 - mov r1, r8 - bl sub_80741E8 -_08074A80: - cmp r7, 0x9 - beq _08074A88 - cmp r7, 0 - bne _08074A8E -_08074A88: - adds r0, r6, 0 - bl draw_status_ailment_maybe -_08074A8E: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end healthbar_draw_field_maybe - - thumb_func_start sub_8074AA0 -sub_8074AA0: @ 8074AA0 - 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 - lsls r2, 24 - lsrs r2, 24 - mov r9, r2 - cmp r2, 0 - bne _08074AEC - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r0, [r0, 0xC] - mov r1, r8 - lsls r5, r1, 2 - adds r3, r5, r1 - lsls r3, 2 - adds r3, r0 - ldr r0, [r3, 0x4] - ldr r1, [r3, 0x8] - ldr r2, [r3, 0xC] - adds r3, 0x10 - movs r4, 0x6 - str r4, [sp] - movs r4, 0x1 - str r4, [sp, 0x4] - bl sub_8074DB8 - adds r4, r0, 0 - adds r7, r5, 0 - b _08074B48 - .pool -_08074AEC: - ldr r2, =gUnknown_020244D0 - mov r10, r2 - ldr r0, [r2] - ldr r2, [r0, 0xC] - mov r0, r8 - lsls r4, r0, 2 - adds r0, r4, r0 - lsls r6, r0, 2 - adds r2, r6, r2 - ldr r0, [r2, 0x8] - ldr r1, [r2, 0xC] - ldr r2, [r2, 0x4] - movs r3, 0x8 - bl sub_8074FE8 - lsls r0, 24 - lsrs r5, r0, 24 - adds r7, r4, 0 - cmp r5, 0 - bne _08074B16 - movs r5, 0x1 -_08074B16: - mov r1, r10 - ldr r0, [r1] - ldr r0, [r0, 0xC] - adds r4, r6, r0 - ldr r6, [r4, 0xC] - adds r0, r6, 0 - adds r1, r5, 0 - bl __divsi3 - cmp r0, 0 - bge _08074B2E - negs r0, r0 -_08074B2E: - lsls r0, 16 - lsrs r5, r0, 16 - ldr r0, [r4, 0x4] - ldr r1, [r4, 0x8] - adds r3, r4, 0 - adds r3, 0x10 - movs r2, 0x8 - str r2, [sp] - str r5, [sp, 0x4] - adds r2, r6, 0 - bl sub_8074DB8 - adds r4, r0, 0 -_08074B48: - mov r2, r9 - cmp r2, 0x1 - beq _08074B64 - cmp r2, 0 - bne _08074B6C - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r0, [r0] - adds r0, r7, r0 - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08074B6C -_08074B64: - mov r0, r8 - mov r1, r9 - bl sub_8074B9C -_08074B6C: - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - bne _08074B86 - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r1, [r0, 0xC] - mov r2, r8 - adds r0, r7, r2 - lsls r0, 2 - adds r0, r1 - movs r1, 0 - str r1, [r0, 0x10] -_08074B86: - adds r0, r4, 0 - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8074AA0 - - thumb_func_start sub_8074B9C -sub_8074B9C: @ 8074B9C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x10 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0 - beq _08074BB8 - cmp r1, 0x1 - beq _08074CA0 - b _08074D9E -_08074BB8: - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r0, [r0, 0xC] - lsls r5, r6, 2 - adds r3, r5, r6 - lsls r3, 2 - adds r3, r0 - ldr r0, [r3, 0x4] - ldr r1, [r3, 0x8] - ldr r2, [r3, 0xC] - adds r3, 0x10 - add r4, sp, 0x8 - str r4, [sp] - movs r4, 0x6 - str r4, [sp, 0x4] - bl sub_8074E8C - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x3 - mov r9, r1 - adds r7, r5, 0 - cmp r0, 0x18 - bhi _08074BF4 - movs r2, 0x38 - mov r9, r2 - cmp r0, 0x9 - bls _08074BF4 - movs r4, 0x2F - mov r9, r4 -_08074BF4: - movs r5, 0 - ldr r0, =gSprites - mov r8, r0 -_08074BFA: - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r1, [r0, 0xC] - adds r0, r7, r6 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r8 - ldrh r0, [r0, 0x38] - lsls r0, 24 - lsrs r4, r0, 24 - cmp r5, 0x1 - bhi _08074C5C - mov r0, r9 - bl sub_80728A4 - mov r1, sp - adds r1, r5 - adds r1, 0x8 - ldrb r1, [r1] - lsls r1, 5 - adds r0, r1 - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - add r1, r8 - ldrh r1, [r1, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r2, r5, 0x2 - adds r1, r2 - lsls r1, 5 - ldr r2, =0x06010000 - adds r1, r2 - ldr r2, =0x04000008 - bl CpuSet - b _08074C8A - .pool -_08074C5C: - mov r0, r9 - bl sub_80728A4 - mov r1, sp - adds r1, r5 - adds r1, 0x8 - ldrb r1, [r1] - lsls r1, 5 - adds r0, r1 - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - add r1, r8 - ldrh r1, [r1, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r1, r5, r1 - lsls r1, 5 - ldr r4, =0x06010040 - adds r1, r4 - ldr r2, =0x04000008 - bl CpuSet -_08074C8A: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x5 - bls _08074BFA - b _08074D9E - .pool -_08074CA0: - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r0, [r0, 0xC] - lsls r5, r6, 2 - adds r3, r5, r6 - lsls r3, 2 - adds r3, r0 - ldr r0, [r3, 0x4] - ldr r1, [r3, 0x8] - ldr r2, [r3, 0xC] - adds r3, 0x10 - add r4, sp, 0x8 - str r4, [sp] - movs r4, 0x8 - str r4, [sp, 0x4] - bl sub_8074E8C - ldr r1, =gBattlePartyID - lsls r0, r6, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x38 - bl GetMonData - lsls r0, 24 - lsrs r0, 24 - adds r7, r5, 0 - cmp r0, 0x64 - bne _08074CF8 - movs r5, 0 - movs r1, 0 -_08074CE6: - mov r0, sp - adds r0, r5 - adds r0, 0x8 - strb r1, [r0] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x7 - bls _08074CE6 -_08074CF8: - movs r5, 0 - ldr r0, =gSprites - mov r8, r0 - adds r0, r7, r6 - lsls r4, r0, 2 -_08074D02: - cmp r5, 0x3 - bhi _08074D5C - movs r0, 0xC - bl sub_80728A4 - mov r1, sp - adds r1, r5 - adds r1, 0x8 - ldrb r1, [r1] - lsls r1, 5 - adds r0, r1 - ldr r1, =gUnknown_020244D0 - ldr r1, [r1] - ldr r1, [r1, 0xC] - adds r1, r4, r1 - ldrb r2, [r1] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - add r1, r8 - ldrh r1, [r1, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r2, r5, 0 - adds r2, 0x24 - adds r1, r2 - lsls r1, 5 - ldr r2, =0x06010000 - adds r1, r2 - ldr r2, =0x04000008 - bl CpuSet - b _08074D94 - .pool -_08074D5C: - movs r0, 0xC - bl sub_80728A4 - mov r1, sp - adds r1, r5 - adds r1, 0x8 - ldrb r1, [r1] - lsls r1, 5 - adds r0, r1 - ldr r1, =gUnknown_020244D0 - ldr r1, [r1] - ldr r1, [r1, 0xC] - adds r1, r4, r1 - ldrb r2, [r1] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - add r1, r8 - ldrh r1, [r1, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r1, r5, r1 - lsls r1, 5 - ldr r2, =0x06010b80 - adds r1, r2 - ldr r2, =0x04000008 - bl CpuSet -_08074D94: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x7 - bls _08074D02 -_08074D9E: - add sp, 0x10 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8074B9C - - thumb_func_start sub_8074DB8 -sub_8074DB8: @ 8074DB8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - adds r4, r1, 0 - mov r8, r2 - adds r5, r3, 0 - ldr r1, [sp, 0x18] - ldr r0, [sp, 0x1C] - lsls r0, 16 - lsrs r3, r0, 16 - lsls r1, 27 - lsrs r2, r1, 24 - ldr r1, [r5] - ldr r0, =0xffff8000 - cmp r1, r0 - bne _08074DEA - cmp r7, r2 - bge _08074DE8 - lsls r0, r4, 8 - str r0, [r5] - b _08074DEA - .pool -_08074DE8: - str r4, [r5] -_08074DEA: - mov r0, r8 - subs r4, r0 - cmp r4, 0 - bge _08074DF6 - movs r4, 0 - b _08074DFC -_08074DF6: - cmp r4, r7 - ble _08074DFC - adds r4, r7, 0 -_08074DFC: - cmp r7, r2 - bge _08074E18 - ldr r0, [r5] - asrs r1, r0, 8 - adds r6, r0, 0 - cmp r4, r1 - bne _08074E24 - movs r0, 0xFF - ands r0, r6 - cmp r0, 0 - bne _08074E24 - movs r0, 0x1 - negs r0, r0 - b _08074E80 -_08074E18: - ldr r6, [r5] - cmp r4, r6 - bne _08074E24 - movs r0, 0x1 - negs r0, r0 - b _08074E80 -_08074E24: - cmp r7, r2 - bge _08074E5E - lsls r0, r7, 8 - adds r1, r2, 0 - bl __divsi3 - mov r1, r8 - cmp r1, 0 - bge _08074E42 - adds r0, r6, r0 - str r0, [r5] - asrs r2, r0, 8 - cmp r2, r4 - blt _08074E7E - b _08074E56 -_08074E42: - subs r0, r6, r0 - str r0, [r5] - asrs r2, r0, 8 - movs r1, 0xFF - ands r0, r1 - cmp r0, 0 - ble _08074E52 - adds r2, 0x1 -_08074E52: - cmp r2, r4 - bgt _08074E7E -_08074E56: - lsls r0, r4, 8 - str r0, [r5] - adds r2, r4, 0 - b _08074E7E -_08074E5E: - mov r0, r8 - cmp r0, 0 - bge _08074E70 - ldr r0, [r5] - adds r0, r3 - str r0, [r5] - cmp r0, r4 - ble _08074E7C - b _08074E7A -_08074E70: - ldr r0, [r5] - subs r0, r3 - str r0, [r5] - cmp r0, r4 - bge _08074E7C -_08074E7A: - str r4, [r5] -_08074E7C: - ldr r2, [r5] -_08074E7E: - adds r0, r2, 0 -_08074E80: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8074DB8 - - thumb_func_start sub_8074E8C -sub_8074E8C: @ 8074E8C - push {r4-r7,lr} - adds r4, r0, 0 - mov r12, r3 - ldr r7, [sp, 0x14] - ldr r0, [sp, 0x18] - lsls r0, 24 - lsrs r6, r0, 24 - subs r5, r1, r2 - cmp r5, 0 - bge _08074EA4 - movs r5, 0 - b _08074EAA -_08074EA4: - cmp r5, r4 - ble _08074EAA - adds r5, r4, 0 -_08074EAA: - lsls r0, r6, 27 - lsrs r3, r0, 24 - movs r1, 0 - cmp r1, r6 - bcs _08074EC4 - movs r2, 0 -_08074EB6: - adds r0, r7, r1 - strb r2, [r0] - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, r6 - bcc _08074EB6 -_08074EC4: - cmp r4, r3 - bge _08074ED8 - mov r1, r12 - ldr r0, [r1] - muls r0, r3 - adds r1, r4, 0 - bl __divsi3 - asrs r0, 8 - b _08074EE4 -_08074ED8: - mov r1, r12 - ldr r0, [r1] - muls r0, r3 - adds r1, r4, 0 - bl __divsi3 -_08074EE4: - lsls r0, 24 - lsrs r2, r0, 24 - adds r3, r2, 0 - cmp r3, 0 - bne _08074EFA - cmp r5, 0 - ble _08074EFA - movs r0, 0x1 - strb r0, [r7] - movs r3, 0x1 - b _08074F1E -_08074EFA: - movs r1, 0 - movs r4, 0x8 -_08074EFE: - cmp r1, r6 - bcs _08074F1E - cmp r2, 0x7 - bls _08074F1A - adds r0, r7, r1 - strb r4, [r0] - adds r0, r2, 0 - subs r0, 0x8 - lsls r0, 24 - lsrs r2, r0, 24 - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - b _08074EFE -_08074F1A: - adds r0, r7, r1 - strb r2, [r0] -_08074F1E: - adds r0, r3, 0 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8074E8C - - thumb_func_start sub_8074F28 -sub_8074F28: @ 8074F28 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - adds r5, r0, 0 - adds r6, r1, 0 - adds r4, r2, 0 - mov r8, r3 - ldr r0, [r5] - ldr r1, [r5, 0x4] - ldr r2, [r5, 0x8] - movs r3, 0x6 - str r3, [sp] - movs r3, 0x1 - str r3, [sp, 0x4] - adds r3, r6, 0 - bl sub_8074DB8 - lsls r0, 16 - lsrs r7, r0, 16 - adds r0, r5, 0 - adds r1, r6, 0 - adds r2, r4, 0 - bl sub_8074F88 - ldr r0, [r5] - cmp r0, 0x2F - bgt _08074F68 - ldr r0, [r6] - lsls r0, 8 - lsrs r1, r0, 16 - b _08074F6A -_08074F68: - ldrh r1, [r6] -_08074F6A: - movs r2, 0 - ldrsh r0, [r5, r2] - lsls r1, 16 - asrs r1, 16 - mov r2, r8 - bl sub_8072304 - lsls r0, r7, 16 - asrs r0, 16 - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8074F28 - - thumb_func_start sub_8074F88 -sub_8074F88: @ 8074F88 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x1C - adds r5, r0, 0 - adds r3, r1, 0 - mov r8, r2 - ldr r0, [r5] - ldr r1, [r5, 0x4] - ldr r2, [r5, 0x8] - add r4, sp, 0x8 - str r4, [sp] - movs r4, 0x6 - str r4, [sp, 0x4] - bl sub_8074E8C - movs r3, 0 - add r7, sp, 0x10 - mov r12, r7 - ldrb r0, [r5, 0xC] - lsls r6, r0, 27 - ldr r4, [r5, 0x10] -_08074FB4: - lsls r2, r3, 1 - add r2, r12 - lsrs r1, r6, 15 - mov r0, sp - adds r0, r3 - adds r0, 0x8 - ldrb r0, [r0] - adds r0, r4, r0 - orrs r1, r0 - strh r1, [r2] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x5 - bls _08074FB4 - adds r0, r7, 0 - mov r1, r8 - movs r2, 0x6 - bl CpuSet - add sp, 0x1C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8074F88 - - thumb_func_start sub_8074FE8 -sub_8074FE8: @ 8074FE8 - push {r4-r7,lr} - adds r6, r2, 0 - lsls r3, 27 - lsrs r7, r3, 24 - subs r5, r0, r1 - cmp r5, 0 - bge _08074FFA - movs r5, 0 - b _08075000 -_08074FFA: - cmp r5, r6 - ble _08075000 - adds r5, r6, 0 -_08075000: - muls r0, r7 - adds r1, r6, 0 - bl __divsi3 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - muls r0, r7 - adds r1, r6, 0 - bl __divsi3 - lsls r4, 24 - asrs r4, 24 - lsls r0, 24 - asrs r0, 24 - subs r0, r4, r0 - cmp r0, 0 - bge _08075028 - negs r0, r0 -_08075028: - lsls r0, 24 - lsrs r0, 24 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8074FE8 - - thumb_func_start sub_8075034 -sub_8075034: @ 8075034 - push {r4,lr} - lsls r2, 24 - lsrs r2, 24 - lsls r0, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - muls r0, r2 - lsls r1, 16 - asrs r1, 16 - bl __divsi3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _08075058 - cmp r4, 0 - ble _08075058 - movs r0, 0x1 -_08075058: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8075034 - - thumb_func_start sub_8075060 -sub_8075060: @ 8075060 - push {lr} - lsls r0, 16 - asrs r0, 16 - lsls r1, 16 - asrs r1, 16 - cmp r0, r1 - bne _08075072 - movs r0, 0x4 - b _0807508E -_08075072: - movs r2, 0x30 - bl sub_8075034 - lsls r0, 24 - lsrs r1, r0, 24 - movs r0, 0x3 - cmp r1, 0x18 - bhi _0807508E - movs r0, 0x2 - cmp r1, 0x9 - bhi _0807508E - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 -_0807508E: - pop {r1} - bx r1 - thumb_func_end sub_8075060 - - thumb_func_start write_to_rbox -write_to_rbox: @ 8075094 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - mov r10, r0 - mov r8, r1 - mov r9, r2 - adds r5, r3, 0 - ldr r7, [sp, 0x40] - ldr r0, =gUnknown_0832C3F8 - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [sp, 0x18] - str r1, [sp, 0x1C] - add r0, sp, 0x18 - bl AddWindow - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r6, r4, 24 - lsrs r6, 24 - lsls r1, r5, 4 - orrs r1, r5 - lsls r1, 24 - lsrs r1, 24 - adds r0, r6, 0 - bl FillWindowPixelBuffer - add r0, sp, 0x14 - movs r2, 0 - strb r5, [r0] - adds r1, r0, 0 - movs r0, 0x1 - strb r0, [r1, 0x1] - movs r0, 0x3 - strb r0, [r1, 0x2] - mov r0, r8 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - mov r0, r9 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - str r2, [sp] - str r2, [sp, 0x4] - str r1, [sp, 0x8] - movs r0, 0x1 - negs r0, r0 - str r0, [sp, 0xC] - mov r0, r10 - str r0, [sp, 0x10] - adds r0, r6, 0 - movs r1, 0 - mov r2, r8 - mov r3, r9 - bl AddTextPrinterParametrized2 - str r4, [r7] - adds r0, r6, 0 - movs r1, 0x7 - bl GetWindowAttribute - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end write_to_rbox - - thumb_func_start sub_807512C -sub_807512C: @ 807512C - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl RemoveWindow - pop {r0} - bx r0 - thumb_func_end sub_807512C - - thumb_func_start sub_807513C -sub_807513C: @ 807513C - push {lr} - sub sp, 0x4 - adds r3, r0, 0 - lsls r0, r1, 4 - adds r0, r1 - lsls r1, r0, 8 - adds r0, r1 - lsls r1, r0, 16 - adds r0, r1 - str r0, [sp] - lsls r2, 3 - ldr r0, =0x001fffff - ands r2, r0 - movs r0, 0xA0 - lsls r0, 19 - orrs r2, r0 - mov r0, sp - adds r1, r3, 0 - bl CpuSet - add sp, 0x4 - pop {r0} - bx r0 - .pool - thumb_func_end sub_807513C - - thumb_func_start sub_8075170 -sub_8075170: @ 8075170 - push {lr} - adds r3, r0, 0 - adds r0, r1, 0 - movs r1, 0x80 - lsls r1, 1 - adds r0, r1 - lsls r2, 3 - ldr r1, =0x001fffff - ands r2, r1 - movs r1, 0x80 - lsls r1, 19 - orrs r2, r1 - adds r1, r3, 0 - bl CpuSet - pop {r0} - bx r0 - .pool - thumb_func_end sub_8075170 - - thumb_func_start sub_8075198 -sub_8075198: @ 8075198 - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - adds r4, r2, 0 - movs r1, 0x80 - lsls r1, 1 - adds r0, r5, r1 - adds r1, r6, r1 - lsls r2, r4, 3 - ldr r3, =0x001fffff - ands r2, r3 - movs r3, 0x80 - lsls r3, 19 - orrs r2, r3 - bl CpuSet - cmp r4, 0 - ble _080751D4 -_080751BC: - adds r0, r5, 0 - adds r0, 0x14 - adds r1, r6, 0 - adds r1, 0x14 - ldr r2, =0x04000003 - bl CpuSet - adds r6, 0x20 - adds r5, 0x20 - subs r4, 0x1 - cmp r4, 0 - bne _080751BC -_080751D4: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8075198 - - thumb_func_start sub_80751E4 -sub_80751E4: @ 80751E4 - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - lsls r4, r2, 3 - ldr r0, =0x001fffff - ands r4, r0 - movs r0, 0x80 - lsls r0, 19 - orrs r4, r0 - adds r0, r5, 0 - adds r1, r6, 0 - adds r2, r4, 0 - bl CpuSet - movs r0, 0x80 - lsls r0, 1 - adds r5, r0 - adds r6, r0 - adds r0, r5, 0 - adds r1, r6, 0 - adds r2, r4, 0 - bl CpuSet - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80751E4 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/battle_link_817C95C.s b/asm/battle_link_817C95C.s index 94ae7ad7f..aa887bc25 100644 --- a/asm/battle_link_817C95C.s +++ b/asm/battle_link_817C95C.s @@ -665,7 +665,7 @@ _0817D16C: bl _0817DFAC .pool _0817D1B8: - ldr r1, =gUnknown_02022F5C + ldr r1, =gBattleTextBuff1 + 4 ldrb r0, [r1] cmp r0, 0 beq _0817D1C4 @@ -917,7 +917,7 @@ _0817D3C0: bne _0817D3CC bl _0817E0A6 _0817D3CC: - ldr r1, =gUnknown_02022F6A + ldr r1, =gBattleTextBuff2 + 2 ldrh r0, [r1] cmp r0, 0xD1 bne _0817D3E8 @@ -946,7 +946,7 @@ _0817D3FE: ldrb r1, [r1] cmp r0, r1 bne _0817D436 - ldr r1, =gUnknown_02022F6A + ldr r1, =gBattleTextBuff2 + 2 ldrh r0, [r1] cmp r0, 0xD1 bne _0817D42C @@ -988,7 +988,7 @@ _0817D45C: bne _0817D468 bl _0817E0A6 _0817D468: - ldr r1, =gUnknown_02022F6A + ldr r1, =gBattleTextBuff2 + 2 ldrh r0, [r1] cmp r0, 0xD3 bne _0817D484 @@ -2182,7 +2182,7 @@ _0817DE10: b _0817DFAA .pool _0817DE58: - ldr r1, =gUnknown_02022F5A + ldr r1, =gBattleTextBuff1 + 2 ldrh r0, [r1] cmp r0, 0x73 bne _0817DE82 @@ -2204,7 +2204,7 @@ _0817DE58: ands r0, r2 strb r0, [r1] _0817DE82: - ldr r2, =gUnknown_02022F5A + ldr r2, =gBattleTextBuff1 + 2 ldrh r0, [r2] cmp r0, 0x71 bne _0817DEAA @@ -2225,7 +2225,7 @@ _0817DE82: ands r0, r2 strb r0, [r1] _0817DEAA: - ldr r1, =gUnknown_02022F5A + ldr r1, =gBattleTextBuff1 + 2 ldrh r0, [r1] cmp r0, 0x36 beq _0817DEB4 @@ -3193,7 +3193,7 @@ _0817E63A: adds r1, r4, 0 ldr r2, [sp] ldr r3, [sp, 0x4] - bl sub_80ECB00 + bl PutBattleUpdateOnTheAir b _0817E670 .pool _0817E65C: @@ -3205,7 +3205,7 @@ _0817E65C: adds r1, r4, 0 ldr r2, [sp] ldr r3, [sp, 0x4] - bl sub_80ECB00 + bl PutBattleUpdateOnTheAir _0817E670: add sp, 0x20 pop {r3-r5} @@ -4322,7 +4322,7 @@ _0817EF36: b _0817F1FA _0817EF44: ldr r3, =gBattleMoves - ldr r2, =gUnknown_020244B0 + ldr r2, =gMoveSelectionCursor adds r0, r4, r2 ldrb r0, [r0] lsls r0, 1 @@ -4514,7 +4514,7 @@ _0817F0B4: ble _0817EFC2 movs r5, 0 ldr r3, =gBankAttacker - ldr r6, =gUnknown_020244B0 + ldr r6, =gMoveSelectionCursor ldr r4, =gBattlePartyID mov r8, r4 movs r7, 0x64 @@ -4624,7 +4624,7 @@ _0817F1D4: b _0817F0CC _0817F1DC: ldr r2, =gBattleMoveDamage - ldr r1, =gUnknown_020244B0 + ldr r1, =gMoveSelectionCursor ldr r0, =gBankAttacker ldrb r0, [r0] adds r0, r1 diff --git a/asm/battle_message.s b/asm/battle_message.s deleted file mode 100644 index dfbf069b3..000000000 --- a/asm/battle_message.s +++ /dev/null @@ -1,3089 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start BufferStringBattle -BufferStringBattle: @ 814E0C4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 16 - lsrs r6, r0, 16 - movs r7, 0 - ldr r4, =gStringInfo - ldr r0, =gActiveBank - mov r8, r0 - ldrb r1, [r0] - lsls r1, 9 - ldr r0, =gBattleBufferA + 4 - adds r1, r0 - str r1, [r4] - ldr r2, =gLastUsedItem - ldrh r0, [r1, 0x4] - strh r0, [r2] - ldr r2, =gLastUsedAbility - ldrb r0, [r1, 0x6] - strb r0, [r2] - ldr r5, =gBattleScripting - ldrb r0, [r1, 0x7] - strb r0, [r5, 0x17] - ldr r3, =gBattleStruct - ldr r0, [r3] - adds r0, 0x52 - ldrb r1, [r1, 0x8] - strb r1, [r0] - ldr r0, [r3] - adds r0, 0xB1 - ldr r1, [r4] - ldrb r1, [r1, 0x9] - strb r1, [r0] - ldr r1, =gStringBank - ldr r2, [r4] - ldrb r0, [r2, 0xA] - strb r0, [r1] - ldr r0, [r3] - adds r0, 0x8E - ldrb r1, [r2, 0xB] - strb r1, [r0] - movs r2, 0 - mov r12, r8 - mov r9, r5 - ldr r1, =gBattleTextBuff1 - mov r10, r1 - ldr r3, =gAbilitiesPerBank -_0814E126: - adds r0, r2, r3 - ldr r1, [r4] - adds r1, 0xC - adds r1, r2 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x3 - ble _0814E126 - movs r2, 0 - ldr r0, =gBattleTextBuff1 - mov r8, r0 - ldr r3, =gStringInfo - ldr r5, =gBattleTextBuff2 - ldr r4, =gBattleTextBuff3 -_0814E144: - mov r0, r8 - adds r1, r2, r0 - ldr r0, [r3] - adds r0, 0x10 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r2, r5 - ldr r0, [r3] - adds r0, 0x20 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r2, r4 - ldr r0, [r3] - adds r0, 0x30 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r2, 0x1 - cmp r2, 0xF - ble _0814E144 - cmp r6, 0x5 - bls _0814E176 - b _0814E6B8 -_0814E176: - lsls r0, r6, 2 - ldr r1, =_0814E1B4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0814E1B4: - .4byte _0814E1CC - .4byte _0814E2AC - .4byte _0814E394 - .4byte _0814E430 - .4byte _0814E4F8 - .4byte _0814E55C -_0814E1CC: - ldr r0, =gBattleTypeFlags - ldr r2, [r0] - movs r0, 0x8 - ands r0, r2 - cmp r0, 0 - beq _0814E26C - ldr r0, =0x02000002 - ands r0, r2 - cmp r0, 0 - beq _0814E248 - movs r0, 0x80 - lsls r0, 16 - ands r0, r2 - cmp r0, 0 - bne _0814E260 - movs r0, 0x40 - ands r0, r2 - cmp r0, 0 - beq _0814E214 - movs r0, 0x80 - lsls r0, 17 - ands r2, r0 - ldr r7, =gText_TwoTrainersWantToBattle - cmp r2, 0 - bne _0814E200 - b _0814E6D8 -_0814E200: - ldr r7, =gText_TwoTrainersWantToBattle3 - b _0814E6D8 - .pool -_0814E214: - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0xC0 - lsls r0, 4 - cmp r1, r0 - bne _0814E22C - ldr r7, =gText_TrainerXYWantsToBattle - b _0814E6D8 - .pool -_0814E22C: - movs r0, 0x80 - lsls r0, 17 - ands r2, r0 - ldr r7, =gText_TrainerXWantsToBattle - cmp r2, 0 - bne _0814E23A - b _0814E6D8 -_0814E23A: - ldr r7, =gText_TrainerWantsToBattle - b _0814E6D8 - .pool -_0814E248: - movs r0, 0x80 - lsls r0, 15 - ands r0, r2 - cmp r0, 0 - bne _0814E260 - movs r0, 0x80 - lsls r0, 8 - ands r2, r0 - ldr r7, =gText_TrainerXYWantsToBattle - cmp r2, 0 - bne _0814E260 - b _0814E6D8 -_0814E260: - ldr r7, =gText_TwoTrainersWantToBattle2 - b _0814E6D8 - .pool -_0814E26C: - movs r0, 0x80 - lsls r0, 6 - ands r0, r2 - cmp r0, 0 - beq _0814E280 - ldr r7, =gText_WildPkmnAppeared2 - b _0814E6D8 - .pool -_0814E280: - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - beq _0814E290 - ldr r7, =gText_TwoWildPkmnAppeared - b _0814E6D8 - .pool -_0814E290: - movs r0, 0x80 - lsls r0, 2 - ands r2, r0 - ldr r7, =gText_WildPkmnAppeared - cmp r2, 0 - bne _0814E29E - b _0814E6D8 -_0814E29E: - ldr r7, =gText_WildPkmnAppearedPause - b _0814E6D8 - .pool -_0814E2AC: - mov r1, r12 - ldrb r0, [r1] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0814E310 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0814E308 - movs r0, 0x80 - lsls r0, 15 - ands r0, r1 - cmp r0, 0 - beq _0814E2DC - ldr r7, =gText_TrainerXYSentOutZGoN - b _0814E6D8 - .pool -_0814E2DC: - movs r0, 0x80 - lsls r0, 8 - ands r0, r1 - cmp r0, 0 - beq _0814E2F0 - ldr r7, =gText_GoTwoPkmn - b _0814E6D8 - .pool -_0814E2F0: - movs r0, 0x40 - ands r1, r0 - ldr r7, =gText_GoTwoPkmn - cmp r1, 0 - bne _0814E2FC - b _0814E6D8 -_0814E2FC: - ldr r7, =gText_EnemySentOutPkmnGoPkmn - b _0814E6D8 - .pool -_0814E308: - ldr r7, =gText_GoPkmn - b _0814E6D8 - .pool -_0814E310: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0814E368 - movs r0, 0x80 - lsls r0, 8 - ands r0, r1 - cmp r0, 0 - bne _0814E330 - movs r0, 0x80 - lsls r0, 16 - ands r0, r1 - cmp r0, 0 - beq _0814E33C -_0814E330: - ldr r7, =gText_TwoTrainersSentPkmn - b _0814E6D8 - .pool -_0814E33C: - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0814E34C - ldr r7, =gText_TwoTrainersSentOutPkmn - b _0814E6D8 - .pool -_0814E34C: - ldr r0, =0x02000002 - ands r1, r0 - ldr r7, =gText_TrainerXYSentOutTwoPkmn - cmp r1, 0 - bne _0814E358 - b _0814E6D8 -_0814E358: - ldr r7, =gText_TrainerXSentOutTwoPkmn - b _0814E6D8 - .pool -_0814E368: - ldr r0, =0x02000002 - ands r1, r0 - cmp r1, 0 - beq _0814E380 - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0xC0 - lsls r0, 4 - ldr r7, =gText_TrainerXSentOutPkmn - cmp r1, r0 - beq _0814E380 - b _0814E6D8 -_0814E380: - ldr r7, =gText_TrainerXYSentOutPkmn - b _0814E6D8 - .pool -_0814E394: - mov r1, r12 - ldrb r0, [r1] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0814E3EC - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0xB1 - ldrb r2, [r0] - cmp r2, 0 - bne _0814E3BC - ldr r7, =gText_PkmnThatsEnough - b _0814E6D8 - .pool -_0814E3BC: - cmp r2, 0x1 - beq _0814E3CC - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0814E3D8 -_0814E3CC: - ldr r7, =gText_PkmnComeBack - b _0814E6D8 - .pool -_0814E3D8: - ldr r7, =gText_PkmnGoodComeBack - cmp r2, 0x2 - beq _0814E3E0 - b _0814E6D8 -_0814E3E0: - ldr r7, =gText_PkmnOkComeBack - b _0814E6D8 - .pool -_0814E3EC: - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 4 - ldr r2, =gBattleTypeFlags - cmp r1, r0 - beq _0814E406 - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 18 - ands r0, r1 - cmp r0, 0 - beq _0814E428 -_0814E406: - ldr r0, [r2] - movs r1, 0x40 - ands r0, r1 - ldr r7, =gText_TrainerXWithdrewPkmn - cmp r0, 0 - bne _0814E414 - b _0814E6D8 -_0814E414: - ldr r7, =gText_TrainerXWithdrewPkmn2 - b _0814E6D8 - .pool -_0814E428: - ldr r7, =gText_TrainerXYWithdrewPkmn - b _0814E6D8 - .pool -_0814E430: - mov r4, r9 - ldrb r0, [r4, 0x17] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0814E488 - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0xB1 - ldrb r2, [r0] - cmp r2, 0 - beq _0814E456 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0814E468 -_0814E456: - ldr r7, =gText_GoPkmn2 - b _0814E6D8 - .pool -_0814E468: - cmp r2, 0x1 - bne _0814E474 - ldr r7, =gText_DoItPkmn - b _0814E6D8 - .pool -_0814E474: - ldr r7, =gText_YourFoesWeakGetEmPkmn - cmp r2, 0x2 - beq _0814E47C - b _0814E6D8 -_0814E47C: - ldr r7, =gText_GoForItPkmn - b _0814E6D8 - .pool -_0814E488: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x02000002 - ands r0, r1 - cmp r0, 0 - beq _0814E4DC - movs r0, 0x80 - lsls r0, 16 - ands r0, r1 - cmp r0, 0 - beq _0814E4AC - ldrb r0, [r4, 0x17] - b _0814E4EA - .pool -_0814E4AC: - movs r0, 0x40 - ands r1, r0 - cmp r1, 0 - beq _0814E4BC - ldr r7, =gText_TrainerXSentOutPkmn3 - b _0814E6D8 - .pool -_0814E4BC: - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0xC0 - lsls r0, 4 - ldr r7, =gText_TrainerXSentOutPkmn2 - cmp r1, r0 - beq _0814E4CC - b _0814E6D8 -_0814E4CC: - ldr r7, =gText_TrainerXYSentOutPkmn2 - b _0814E6D8 - .pool -_0814E4DC: - movs r0, 0x80 - lsls r0, 8 - ands r1, r0 - cmp r1, 0 - beq _0814E4CC - mov r1, r9 - ldrb r0, [r1, 0x17] -_0814E4EA: - ldr r7, =gText_TrainerXYSentOutPkmn3 - cmp r0, 0x1 - beq _0814E4F2 - b _0814E6D8 -_0814E4F2: - b _0814E4CC - .pool -_0814E4F8: - mov r0, r10 - bl sub_814F8F8 - ldr r0, =gStringInfo - ldr r2, [r0] - ldrh r1, [r2] - movs r0, 0xB1 - lsls r0, 1 - cmp r1, r0 - bls _0814E534 - ldr r0, =gBattleTextBuff2 - ldr r1, =gBattleStruct - ldr r1, [r1] - adds r1, 0x8E - ldrb r2, [r1] - lsls r1, r2, 4 - adds r1, r2 - ldr r2, =gText_UnknownMoveTypes - adds r1, r2 - bl StringCopy - b _0814E544 - .pool -_0814E534: - ldr r0, =gBattleTextBuff2 - ldrh r2, [r2] - movs r1, 0xD - muls r1, r2 - ldr r2, =gMoveNames - adds r1, r2 - bl StringCopy -_0814E544: - ldr r0, =gBattleTextBuff2 - bl sub_814F950 - ldr r7, =gText_XUsedY2 - b _0814E6D8 - .pool -_0814E55C: - ldr r4, =gBattleTextBuff1 - ldrb r1, [r4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0814E5C4 - movs r0, 0x7F - ands r0, r1 - strb r0, [r4] - mov r1, r12 - ldrb r0, [r1] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0814E58A - ldrb r1, [r4] - cmp r1, 0x3 - beq _0814E58A - movs r0, 0x3 - eors r0, r1 - strb r0, [r4] -_0814E58A: - ldr r0, =gBattleTextBuff1 - ldrb r0, [r0] - subs r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0814E5A4 - ldr r7, =gText_GotAwaySafely - b _0814E6D8 - .pool -_0814E5A4: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - ldr r7, =gText_WildFled - cmp r0, 0 - bne _0814E5B4 - b _0814E6D8 -_0814E5B4: - ldr r7, =gText_TwoWildFled - b _0814E6D8 - .pool -_0814E5C4: - mov r1, r12 - ldrb r0, [r1] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0814E5E0 - ldrb r1, [r4] - cmp r1, 0x3 - beq _0814E5E0 - movs r0, 0x3 - eors r0, r1 - strb r0, [r4] -_0814E5E0: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0814E638 - ldr r0, =gBattleTextBuff1 - ldrb r0, [r0] - cmp r0, 0x2 - beq _0814E628 - cmp r0, 0x2 - bgt _0814E608 - cmp r0, 0x1 - beq _0814E60E - b _0814E6D8 - .pool -_0814E608: - cmp r0, 0x3 - beq _0814E630 - b _0814E6D8 -_0814E60E: - movs r0, 0x80 - lsls r0, 16 - ands r1, r0 - ldr r7, =gText_PlayerBeatTwo - cmp r1, 0 - beq _0814E6D8 - ldr r7, =gText_TwoEnemiesDefeated - b _0814E6D8 - .pool -_0814E628: - ldr r7, =gText_PlayerLostToTwo - b _0814E6D8 - .pool -_0814E630: - ldr r7, =gText_PlayerBattledToDrawVsTwo - b _0814E6D8 - .pool -_0814E638: - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0xC0 - lsls r0, 4 - cmp r1, r0 - bne _0814E680 - ldr r0, =gBattleTextBuff1 - ldrb r0, [r0] - cmp r0, 0x2 - beq _0814E670 - cmp r0, 0x2 - bgt _0814E660 - cmp r0, 0x1 - beq _0814E666 - b _0814E6D8 - .pool -_0814E660: - cmp r0, 0x3 - beq _0814E678 - b _0814E6D8 -_0814E666: - ldr r7, =gText_PlayerDefeatedXY - b _0814E6D8 - .pool -_0814E670: - ldr r7, =gText_PlayerLostAgainst2 - b _0814E6D8 - .pool -_0814E678: - ldr r7, =gText_PlayerBattledToDraw2 - b _0814E6D8 - .pool -_0814E680: - ldr r0, =gBattleTextBuff1 - ldrb r0, [r0] - cmp r0, 0x2 - beq _0814E6A8 - cmp r0, 0x2 - bgt _0814E698 - cmp r0, 0x1 - beq _0814E69E - b _0814E6D8 - .pool -_0814E698: - cmp r0, 0x3 - beq _0814E6B0 - b _0814E6D8 -_0814E69E: - ldr r7, =gText_PlayerDefeated - b _0814E6D8 - .pool -_0814E6A8: - ldr r7, =gText_PlayerLostAgainst - b _0814E6D8 - .pool -_0814E6B0: - ldr r7, =gText_PlayerBattledToDraw - b _0814E6D8 - .pool -_0814E6B8: - movs r0, 0xBE - lsls r0, 1 - cmp r6, r0 - bls _0814E6CC - ldr r1, =gDisplayedStringBattle - movs r0, 0xFF - strb r0, [r1] - b _0814E6DE - .pool -_0814E6CC: - ldr r1, =gBattleStringsTable - adds r0, r6, 0 - subs r0, 0xC - lsls r0, 2 - adds r0, r1 - ldr r7, [r0] -_0814E6D8: - adds r0, r7, 0 - bl StrCpyDecodeToDisplayedStringBattle -_0814E6DE: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end BufferStringBattle - - thumb_func_start StrCpyDecodeToDisplayedStringBattle -StrCpyDecodeToDisplayedStringBattle: @ 814E6F0 - push {lr} - ldr r1, =gDisplayedStringBattle - bl StrCpyDecodeBattle - pop {r1} - bx r1 - .pool - thumb_func_end StrCpyDecodeToDisplayedStringBattle - - thumb_func_start AppendStatusString -AppendStatusString: @ 814E700 - push {r4,r5,lr} - sub sp, 0x8 - adds r4, r0, 0 - ldr r1, =gUnknown_085CD422 - mov r0, sp - movs r2, 0x8 - bl memcpy - mov r2, sp - movs r3, 0 - b _0814E728 - .pool -_0814E71C: - strb r1, [r2] - adds r4, 0x1 - adds r2, 0x1 - adds r3, 0x1 - cmp r3, 0x7 - bhi _0814E730 -_0814E728: - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814E71C -_0814E730: - ldr r5, [sp] - ldr r4, [sp, 0x4] - movs r3, 0 - ldr r2, =gUnknown_0831BCA8 -_0814E738: - ldr r1, [r2] - ldr r0, [r1] - cmp r5, r0 - bne _0814E750 - ldr r0, [r1, 0x4] - cmp r4, r0 - bne _0814E750 - ldr r0, [r2, 0x4] - b _0814E75A - .pool -_0814E750: - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x6 - bls _0814E738 - movs r0, 0 -_0814E75A: - add sp, 0x8 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end AppendStatusString - - thumb_func_start StrCpyDecodeBattle -StrCpyDecodeBattle: @ 814E764 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x20 - mov r9, r0 - mov r8, r1 - movs r6, 0 - movs r4, 0 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 18 - ands r0, r1 - cmp r0, 0 - beq _0814E794 - ldr r0, =gUnknown_0203C7B4 - ldrb r7, [r0] - b _0814E79C - .pool -_0814E794: - bl GetMultiplayerId - lsls r0, 24 - lsrs r7, r0, 24 -_0814E79C: - mov r0, r9 - ldrb r1, [r0] - bl _0814F620 -_0814E7A4: - cmp r1, 0xFD - beq _0814E7AC - bl _0814F610 -_0814E7AC: - movs r1, 0x1 - add r9, r1 - mov r2, r9 - ldrb r0, [r2] - cmp r0, 0x34 - bls _0814E7BC - bl _0814F5C0 -_0814E7BC: - lsls r0, 2 - ldr r1, =_0814E7CC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0814E7CC: - .4byte _0814E8A0 - .4byte _0814E8CE - .4byte _0814E90A - .4byte _0814E914 - .4byte _0814E920 - .4byte _0814E92C - .4byte _0814E960 - .4byte _0814E994 - .4byte _0814E9C8 - .4byte _0814E9FC - .4byte _0814EA38 - .4byte _0814EA78 - .4byte _0814EAB8 - .4byte _0814EAF8 - .4byte _0814EBB0 - .4byte _0814EC38 - .4byte _0814ECD4 - .4byte _0814ED70 - .4byte _0814EE0C - .4byte _0814EEA8 - .4byte _0814EF44 - .4byte _0814EF5C - .4byte _0814EF98 - .4byte _0814F080 - .4byte _0814F088 - .4byte _0814F098 - .4byte _0814F0A8 - .4byte _0814F0B8 - .4byte _0814F0D8 - .4byte _0814F164 - .4byte _0814F220 - .4byte _0814F230 - .4byte _0814F244 - .4byte _0814F258 - .4byte _0814F27C - .4byte _0814F298 - .4byte _0814F2C0 - .4byte _0814F300 - .4byte _0814F330 - .4byte _0814F3C4 - .4byte _0814F410 - .4byte _0814F418 - .4byte _0814F3E4 - .4byte _0814F3EC - .4byte _0814F43C - .4byte _0814F444 - .4byte _0814F468 - .4byte _0814F4B8 - .4byte _0814F508 - .4byte _0814F548 - .4byte _0814F594 - .4byte _0814F5B4 - .4byte _0814E8E4 -_0814E8A0: - ldr r5, =gBattleTextBuff1 - ldrb r0, [r5] - cmp r0, 0xFD - bne _0814E8B8 - ldr r4, =gStringVar1 - adds r0, r5, 0 - b _0814E8F0 - .pool -_0814E8B8: - adds r0, r5, 0 - bl AppendStatusString - adds r4, r0, 0 - cmp r4, 0 - beq _0814E8C8 - bl _0814F5C0 -_0814E8C8: - adds r4, r5, 0 - bl _0814F5C0 -_0814E8CE: - ldr r1, =gBattleTextBuff2 - ldrb r0, [r1] - cmp r0, 0xFD - bne _0814E904 - ldr r4, =gStringVar2 - b _0814E8EE - .pool -_0814E8E4: - ldr r1, =gBattleTextBuff3 - ldrb r0, [r1] - cmp r0, 0xFD - bne _0814E904 - ldr r4, =gStringVar3 -_0814E8EE: - adds r0, r1, 0 -_0814E8F0: - adds r1, r4, 0 - bl StrCpyDecodeBattleTextBuff - bl _0814F5C0 - .pool -_0814E904: - adds r4, r1, 0 - bl _0814F5C0 -_0814E90A: - ldr r4, =gStringVar1 - bl _0814F5C0 - .pool -_0814E914: - ldr r4, =gStringVar2 - bl _0814F5C0 - .pool -_0814E920: - ldr r4, =gStringVar3 - bl _0814F5C0 - .pool -_0814E92C: - movs r0, 0 - bl GetBankByPlayerAI - ldr r1, =gBattlePartyID - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814E960: - movs r0, 0x1 - bl GetBankByPlayerAI - ldr r1, =gBattlePartyID - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814E994: - movs r0, 0x2 - bl GetBankByPlayerAI - ldr r1, =gBattlePartyID - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814E9C8: - movs r0, 0x3 - bl GetBankByPlayerAI - ldr r1, =gBattlePartyID - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814E9FC: - ldr r2, =gBattlePartyID - ldr r1, =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0, 0x18] - lsls r0, 1 - adds r0, r2 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814EA38: - ldr r2, =gBattlePartyID - ldr r1, =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r1 - ldrh r1, [r0, 0x18] - movs r0, 0x1 - eors r0, r1 - lsls r0, 1 - adds r0, r2 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814EA78: - ldr r2, =gBattlePartyID - ldr r1, =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r1 - ldrh r1, [r0, 0x18] - movs r0, 0x2 - eors r0, r1 - lsls r0, 1 - adds r0, r2 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814EAB8: - ldr r2, =gBattlePartyID - ldr r1, =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r1 - ldrh r1, [r0, 0x18] - movs r0, 0x3 - eors r0, r1 - lsls r0, 1 - adds r0, r2 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814EAF8: - ldr r4, =gBankAttacker - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - adds r2, r4, 0 - cmp r0, 0 - beq _0814EB74 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, =gText_WildPkmnPrefix - cmp r1, 0 - beq _0814EB36 - ldr r4, =gText_FoePkmnPrefix - b _0814EB36 - .pool -_0814EB2C: - mov r3, r8 - adds r0, r3, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 -_0814EB36: - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814EB2C - ldrb r0, [r2] - bl GetBankIdentity - adds r1, r0, 0 - movs r0, 0x1 - ands r0, r1 - bl GetBankByPlayerAI - ldr r1, =gBattlePartyID - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814EB9E - .pool -_0814EB74: - ldrb r0, [r2] - bl GetBankIdentity - adds r1, r0, 0 - movs r0, 0x1 - ands r0, r1 - bl GetBankByPlayerAI - ldr r1, =gBattlePartyID - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814EB9E: - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814EBB0: - ldr r4, =gBankAttacker - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0814EBF8 - ldrb r0, [r4] - bl GetBankIdentity - adds r1, r0, 0 - movs r0, 0x1 - ands r0, r1 - bl GetBankByPlayerAI - ldr r1, =gBattlePartyID - lsls r0, 24 - lsrs r0, 23 - adds r0, 0x4 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814EC24 - .pool -_0814EBF8: - ldrb r0, [r4] - bl GetBankIdentity - adds r1, r0, 0 - movs r0, 0x1 - ands r0, r1 - bl GetBankByPlayerAI - ldr r1, =gBattlePartyID - lsls r0, 24 - lsrs r0, 23 - adds r0, 0x4 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814EC24: - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814EC38: - ldr r5, =gBankAttacker - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _0814ECA8 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, =gText_WildPkmnPrefix - cmp r1, 0 - beq _0814EC56 - ldr r4, =gText_FoePkmnPrefix -_0814EC56: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r3, =gBattlePartyID - ldr r2, =gEnemyParty - mov r12, r2 - adds r2, r5, 0 - cmp r0, 0xFF - beq _0814EC78 -_0814EC66: - mov r5, r8 - adds r0, r5, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814EC66 -_0814EC78: - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - add r0, r12 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814ECC2 - .pool -_0814ECA8: - ldr r1, =gBattlePartyID - ldrb r0, [r5] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814ECC2: - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814ECD4: - ldr r5, =gBankTarget - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _0814ED44 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, =gText_WildPkmnPrefix - cmp r1, 0 - beq _0814ECF2 - ldr r4, =gText_FoePkmnPrefix -_0814ECF2: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r3, =gBattlePartyID - ldr r2, =gEnemyParty - mov r12, r2 - adds r2, r5, 0 - cmp r0, 0xFF - beq _0814ED14 -_0814ED02: - mov r5, r8 - adds r0, r5, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814ED02 -_0814ED14: - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - add r0, r12 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814ED5E - .pool -_0814ED44: - ldr r1, =gBattlePartyID - ldrb r0, [r5] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814ED5E: - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814ED70: - ldr r5, =gEffectBank - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _0814EDE0 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, =gText_WildPkmnPrefix - cmp r1, 0 - beq _0814ED8E - ldr r4, =gText_FoePkmnPrefix -_0814ED8E: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r3, =gBattlePartyID - ldr r2, =gEnemyParty - mov r12, r2 - adds r2, r5, 0 - cmp r0, 0xFF - beq _0814EDB0 -_0814ED9E: - mov r5, r8 - adds r0, r5, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814ED9E -_0814EDB0: - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - add r0, r12 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814EDFA - .pool -_0814EDE0: - ldr r1, =gBattlePartyID - ldrb r0, [r5] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814EDFA: - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814EE0C: - ldr r5, =gActiveBank - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _0814EE7C - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, =gText_WildPkmnPrefix - cmp r1, 0 - beq _0814EE2A - ldr r4, =gText_FoePkmnPrefix -_0814EE2A: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r3, =gBattlePartyID - ldr r2, =gEnemyParty - mov r12, r2 - adds r2, r5, 0 - cmp r0, 0xFF - beq _0814EE4C -_0814EE3A: - mov r5, r8 - adds r0, r5, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814EE3A -_0814EE4C: - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - add r0, r12 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814EE96 - .pool -_0814EE7C: - ldr r1, =gBattlePartyID - ldrb r0, [r5] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814EE96: - mov r0, sp - bl StringGetEnd10 - b _0814F5BE - .pool -_0814EEA8: - ldr r5, =gBattleScripting - ldrb r0, [r5, 0x17] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _0814EF18 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, =gText_WildPkmnPrefix - cmp r1, 0 - beq _0814EEC6 - ldr r4, =gText_FoePkmnPrefix -_0814EEC6: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r3, =gBattlePartyID - ldr r2, =gEnemyParty - mov r12, r2 - adds r2, r5, 0 - cmp r0, 0xFF - beq _0814EEE8 -_0814EED6: - mov r5, r8 - adds r0, r5, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814EED6 -_0814EEE8: - ldrb r0, [r2, 0x17] - lsls r0, 1 - adds r0, r3 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - add r0, r12 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814EF32 - .pool -_0814EF18: - ldr r1, =gBattlePartyID - ldrb r0, [r5, 0x17] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814EF32: - mov r0, sp - bl StringGetEnd10 - b _0814F5BE - .pool -_0814EF44: - ldr r0, =gStringInfo - ldr r2, [r0] - ldrh r1, [r2] - movs r0, 0xB1 - lsls r0, 1 - cmp r1, r0 - bhi _0814EF6A - ldrh r1, [r2] - b _0814EF8A - .pool -_0814EF5C: - ldr r0, =gStringInfo - ldr r2, [r0] - ldrh r1, [r2, 0x2] - movs r0, 0xB1 - lsls r0, 1 - cmp r1, r0 - bls _0814EF88 -_0814EF6A: - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x8E - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - ldr r1, =gText_UnknownMoveTypes - adds r4, r0, r1 - b _0814F5C0 - .pool -_0814EF88: - ldrh r1, [r2, 0x2] -_0814EF8A: - movs r0, 0xD - muls r1, r0 - ldr r0, =gMoveNames - adds r4, r1, r0 - b _0814F5C0 - .pool -_0814EF98: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x02000002 - ands r0, r1 - cmp r0, 0 - beq _0814F06E - ldr r2, =gLastUsedItem - ldrh r0, [r2] - cmp r0, 0xAF - bne _0814F064 - movs r0, 0x40 - ands r1, r0 - cmp r1, 0 - bne _0814F014 - ldr r0, =gBattleScripting - adds r0, 0x25 - ldrb r0, [r0] - cmp r0, 0 - beq _0814EFE0 - ldr r2, =gStringBank - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0814EFEC - b _0814F05C - .pool -_0814EFE0: - ldr r2, =gStringBank - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0814F05C -_0814EFEC: - ldrb r0, [r2] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - ldr r0, =gEnigmaBerries - adds r1, r0 - mov r0, sp - bl StringCopy - ldr r1, =gText_BerrySuffix - mov r0, sp - bl StringAppend - b _0814F5BE - .pool -_0814F014: - ldr r2, =gLinkPlayers - ldr r0, =gBattleScripting - adds r0, 0x25 - ldrb r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, =gStringBank - ldrb r2, [r1] - ldrh r0, [r0, 0x18] - cmp r0, r2 - bne _0814F05C - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - ldr r0, =gEnigmaBerries - adds r1, r0 - mov r0, sp - bl StringCopy - ldr r1, =gText_BerrySuffix - mov r0, sp - bl StringAppend - b _0814F5BE - .pool -_0814F05C: - ldr r4, =gText_EnigmaBerry - b _0814F5C0 - .pool -_0814F064: - ldrh r0, [r2] - mov r1, sp - bl CopyItemName - b _0814F5BE -_0814F06E: - ldr r0, =gLastUsedItem - ldrh r0, [r0] - mov r1, sp - bl CopyItemName - b _0814F5BE - .pool -_0814F080: - ldr r0, =gLastUsedAbility - b _0814F0C0 - .pool -_0814F088: - ldr r1, =gAbilitiesPerBank - ldr r0, =gBankAttacker - b _0814F0BC - .pool -_0814F098: - ldr r1, =gAbilitiesPerBank - ldr r0, =gBankTarget - b _0814F0BC - .pool -_0814F0A8: - ldr r1, =gAbilitiesPerBank - ldr r0, =gBattleScripting - ldrb r0, [r0, 0x17] - b _0814F0BE - .pool -_0814F0B8: - ldr r1, =gAbilitiesPerBank - ldr r0, =gEffectBank -_0814F0BC: - ldrb r0, [r0] -_0814F0BE: - adds r0, r1 -_0814F0C0: - ldrb r1, [r0] - movs r0, 0xD - muls r1, r0 - ldr r0, =gAbilityNames - adds r4, r1, r0 - b _0814F5C0 - .pool -_0814F0D8: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 20 - ands r0, r1 - cmp r0, 0 - beq _0814F0F0 - bl GetSecretBaseTrainerNameIndex - b _0814F59C - .pool -_0814F0F0: - ldr r3, =gTrainerBattleOpponent_A - ldrh r2, [r3] - movs r0, 0xC0 - lsls r0, 4 - cmp r2, r0 - bne _0814F10C - bl sub_8068BB0 - lsls r0, 16 - lsrs r0, 16 - b _0814F5A0 - .pool -_0814F10C: - ldr r0, =0x000003fe - cmp r2, r0 - bne _0814F11C - bl sub_81A4D00 - b _0814F59C - .pool -_0814F11C: - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _0814F12C - ldrh r0, [r3] - b _0814F598 - .pool -_0814F12C: - movs r0, 0x80 - lsls r0, 19 - ands r0, r1 - cmp r0, 0 - beq _0814F13E - ldrh r0, [r3] - bl sub_81D5530 - b _0814F59C -_0814F13E: - movs r0, 0x80 - lsls r0, 4 - ands r1, r0 - cmp r1, 0 - beq _0814F14E - bl sub_8165264 - b _0814F59C -_0814F14E: - ldr r2, =gTrainers - ldrh r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r1, [r0, 0x1] - movs r0, 0xD - b _0814F5A2 - .pool -_0814F164: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 20 - ands r0, r1 - cmp r0, 0 - beq _0814F1AC - movs r2, 0 - ldr r4, =gBattleResources - ldr r3, [r4] -_0814F178: - mov r1, sp - adds r0, r1, r2 - ldr r1, [r3] - adds r1, 0x2 - adds r1, r2 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x6 - ble _0814F178 - mov r3, sp - adds r1, r3, r2 - movs r0, 0xFF - strb r0, [r1] - ldr r0, [r4] - ldr r0, [r0] - ldrb r1, [r0, 0xD] - mov r0, sp - bl ConvertInternationalString - b _0814F5BE - .pool -_0814F1AC: - ldr r3, =gTrainerBattleOpponent_A - ldrh r2, [r3] - movs r0, 0xC0 - lsls r0, 4 - cmp r2, r0 - bne _0814F1C4 - movs r1, 0x1 - adds r0, r7, 0 - eors r0, r1 - b _0814F284 - .pool -_0814F1C4: - ldr r0, =0x000003fe - cmp r2, r0 - bne _0814F1D8 - mov r0, sp - bl sub_81A4D50 - b _0814F5BE - .pool -_0814F1D8: - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _0814F1E8 - ldrh r1, [r3] - b _0814F5B8 - .pool -_0814F1E8: - movs r0, 0x80 - lsls r0, 19 - ands r0, r1 - cmp r0, 0 - beq _0814F1FC - ldrh r1, [r3] - mov r0, sp - bl sub_81D5554 - b _0814F5BE -_0814F1FC: - movs r0, 0x80 - lsls r0, 4 - ands r1, r0 - cmp r1, 0 - beq _0814F20E - mov r0, sp - bl sub_8165284 - b _0814F5BE -_0814F20E: - ldrh r0, [r3] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, =gTrainers + 0x4 @ name offset - adds r4, r1, r0 - b _0814F5C0 - .pool -_0814F220: - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - ldr r1, =gLinkPlayers + 8 - adds r4, r0, r1 - b _0814F5C0 - .pool -_0814F230: - ldr r4, =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x18] - movs r0, 0x2 - b _0814F266 - .pool -_0814F244: - ldr r4, =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x18] - movs r0, 0x1 - b _0814F266 - .pool -_0814F258: - ldr r4, =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x18] - movs r0, 0x3 -_0814F266: - eors r0, r1 - bl sub_806D864 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r4, 0x8 - adds r4, r1, r4 - b _0814F5C0 - .pool -_0814F27C: - ldr r0, =gBattleScripting - ldrb r0, [r0, 0x17] - bl sub_806D864 -_0814F284: - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - ldr r0, =gLinkPlayers + 8 - adds r4, r1, r0 - b _0814F5C0 - .pool -_0814F298: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 17 - ands r0, r1 - cmp r0, 0 - beq _0814F2B4 - ldr r4, =gLinkPlayers + 8 - b _0814F5C0 - .pool -_0814F2B4: - ldr r0, =gSaveBlock2Ptr - ldr r4, [r0] - b _0814F5C0 - .pool -_0814F2C0: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _0814F2E0 - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0x2 - b _0814F55A - .pool -_0814F2E0: - movs r0, 0x80 - lsls r0, 19 - ands r1, r0 - cmp r1, 0 - beq _0814F2F8 - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0x4 - b _0814F584 - .pool -_0814F2F8: - bl sub_80B1CA4 - adds r4, r0, 0 - b _0814F5C0 -_0814F300: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _0814F31C - ldr r0, =gTrainerBattleOpponent_A - b _0814F556 - .pool -_0814F31C: - movs r0, 0x80 - lsls r0, 19 - ands r1, r0 - cmp r1, 0 - bne _0814F328 - b _0814F5C0 -_0814F328: - ldr r0, =gTrainerBattleOpponent_A - b _0814F580 - .pool -_0814F330: - ldr r0, =gBattleScripting - ldrb r0, [r0, 0x17] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _0814F39C - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, =gText_WildPkmnPrefix - cmp r1, 0 - beq _0814F34E - ldr r4, =gText_FoePkmnPrefix -_0814F34E: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r5, =gEnemyParty - mov r12, r5 - ldr r2, =gBattleStruct - cmp r0, 0xFF - beq _0814F36E -_0814F35C: - mov r3, r8 - adds r0, r3, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814F35C -_0814F36E: - ldr r0, [r2] - adds r0, 0x52 - ldrb r1, [r0] - movs r0, 0x64 - muls r0, r1 - add r0, r12 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814F3B4 - .pool -_0814F39C: - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x52 - ldrb r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814F3B4: - mov r0, sp - bl StringGetEnd10 - b _0814F5BE - .pool -_0814F3C4: - ldr r0, =0x000008ab - bl FlagGet - lsls r0, 24 - ldr r4, =gText_Someones - cmp r0, 0 - bne _0814F3D4 - b _0814F5C0 -_0814F3D4: - ldr r4, =gText_Lanettes - b _0814F5C0 - .pool -_0814F3E4: - ldr r0, =gBankAttacker - b _0814F3EE - .pool -_0814F3EC: - ldr r0, =gBankTarget -_0814F3EE: - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - ldr r4, =gText_FoePkmnPrefix3 - cmp r0, 0 - beq _0814F3FE - b _0814F5C0 -_0814F3FE: - ldr r4, =gText_AllyPkmnPrefix2 - b _0814F5C0 - .pool -_0814F410: - ldr r0, =gBankAttacker - b _0814F41A - .pool -_0814F418: - ldr r0, =gBankTarget -_0814F41A: - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - ldr r4, =gText_FoePkmnPrefix2 - cmp r0, 0 - beq _0814F42A - b _0814F5C0 -_0814F42A: - ldr r4, =gText_AllyPkmnPrefix - b _0814F5C0 - .pool -_0814F43C: - ldr r0, =gBankAttacker - b _0814F446 - .pool -_0814F444: - ldr r0, =gBankTarget -_0814F446: - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - ldr r4, =gText_FoePkmnPrefix4 - cmp r0, 0 - beq _0814F456 - b _0814F5C0 -_0814F456: - ldr r4, =gText_AllyPkmnPrefix3 - b _0814F5C0 - .pool -_0814F468: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _0814F484 - ldr r0, =gTrainerBattleOpponent_B - b _0814F596 - .pool -_0814F484: - movs r0, 0x80 - lsls r0, 19 - ands r1, r0 - cmp r1, 0 - beq _0814F49C - ldr r0, =gTrainerBattleOpponent_B - ldrh r0, [r0] - bl sub_81D5530 - b _0814F59C - .pool -_0814F49C: - ldr r2, =gTrainers - ldr r0, =gTrainerBattleOpponent_B - ldrh r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r1, [r0, 0x1] - movs r0, 0xD - b _0814F5A2 - .pool -_0814F4B8: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _0814F4D4 - ldr r0, =gTrainerBattleOpponent_B - b _0814F5B6 - .pool -_0814F4D4: - movs r0, 0x80 - lsls r0, 19 - ands r1, r0 - cmp r1, 0 - beq _0814F4F0 - ldr r0, =gTrainerBattleOpponent_B - ldrh r1, [r0] - mov r0, sp - bl sub_81D5554 - b _0814F5BE - .pool -_0814F4F0: - ldr r0, =gTrainerBattleOpponent_B - ldrh r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - ldr r1, =gTrainers + 0x4 @ name offset - adds r4, r0, r1 - b _0814F5C0 - .pool -_0814F508: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _0814F528 - ldr r0, =gTrainerBattleOpponent_B - ldrh r1, [r0] - movs r0, 0x2 - b _0814F55A - .pool -_0814F528: - movs r0, 0x80 - lsls r0, 19 - ands r1, r0 - cmp r1, 0 - beq _0814F540 - ldr r0, =gTrainerBattleOpponent_B - ldrh r1, [r0] - movs r0, 0x4 - b _0814F584 - .pool -_0814F540: - bl sub_80B1CE0 - adds r4, r0, 0 - b _0814F5C0 -_0814F548: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _0814F574 - ldr r0, =gTrainerBattleOpponent_B -_0814F556: - ldrh r1, [r0] - movs r0, 0x1 -_0814F55A: - bl sub_81A36D0 - ldr r4, =gStringVar4 - b _0814F5C0 - .pool -_0814F574: - movs r0, 0x80 - lsls r0, 19 - ands r1, r0 - cmp r1, 0 - beq _0814F5C0 - ldr r0, =gTrainerBattleOpponent_B -_0814F580: - ldrh r1, [r0] - movs r0, 0x3 -_0814F584: - bl sub_81D572C - ldr r4, =gStringVar4 - b _0814F5C0 - .pool -_0814F594: - ldr r0, =gPartnerTrainerId -_0814F596: - ldrh r0, [r0] -_0814F598: - bl GetFrontierOpponentClass -_0814F59C: - lsls r0, 24 - lsrs r0, 24 -_0814F5A0: - movs r1, 0xD -_0814F5A2: - muls r1, r0 - ldr r0, =gTrainerClassNames - adds r4, r1, r0 - b _0814F5C0 - .pool -_0814F5B4: - ldr r0, =gPartnerTrainerId -_0814F5B6: - ldrh r1, [r0] -_0814F5B8: - mov r0, sp - bl GetFrontierTrainerName -_0814F5BE: - mov r4, sp -_0814F5C0: - ldrb r1, [r4] - adds r0, r1, 0 - mov r5, r9 - ldrb r2, [r5] - mov r3, r9 - adds r3, 0x1 - cmp r0, 0xFF - beq _0814F5E2 -_0814F5D0: - mov r5, r8 - adds r0, r5, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814F5D0 -_0814F5E2: - lsls r0, r2, 24 - lsrs r0, 24 - cmp r0, 0x24 - beq _0814F5F6 - cmp r0, 0x30 - beq _0814F5F6 - cmp r0, 0x25 - beq _0814F5F6 - cmp r0, 0x31 - bne _0814F61C -_0814F5F6: - mov r0, r8 - adds r1, r0, r6 - movs r0, 0xFC - strb r0, [r1] - adds r6, 0x1 - mov r2, r8 - adds r1, r2, r6 - movs r0, 0x9 - strb r0, [r1] - adds r6, 0x1 - b _0814F61C - .pool -_0814F610: - mov r3, r8 - adds r0, r3, r6 - strb r1, [r0] - adds r6, 0x1 - mov r3, r9 - adds r3, 0x1 -_0814F61C: - mov r9, r3 - ldrb r1, [r3] -_0814F620: - adds r0, r1, 0 - cmp r0, 0xFF - beq _0814F62A - bl _0814E7A4 -_0814F62A: - mov r5, r8 - adds r1, r5, r6 - mov r2, r9 - ldrb r0, [r2] - strb r0, [r1] - adds r6, 0x1 - adds r0, r6, 0 - add sp, 0x20 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end StrCpyDecodeBattle - - thumb_func_start StrCpyDecodeBattleTextBuff -StrCpyDecodeBattleTextBuff: @ 814F648 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - adds r7, r0, 0 - adds r6, r1, 0 - movs r5, 0x1 - movs r0, 0 - mov r8, r0 - movs r0, 0xFF - strb r0, [r6] - ldrb r0, [r7, 0x1] - cmp r0, 0xFF - bne _0814F666 - b _0814F8EA -_0814F666: - adds r0, r7, r5 - ldrb r1, [r0] - adds r4, r0, 0 - cmp r1, 0xA - bls _0814F672 - b _0814F8E0 -_0814F672: - lsls r0, r1, 2 - ldr r1, =_0814F680 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0814F680: - .4byte _0814F6AC - .4byte _0814F6C8 - .4byte _0814F71C - .4byte _0814F734 - .4byte _0814F744 - .4byte _0814F7BC - .4byte _0814F7D0 - .4byte _0814F7E2 - .4byte _0814F828 - .4byte _0814F83C - .4byte _0814F858 -_0814F6AC: - adds r0, r5, r7 - ldrb r1, [r0, 0x1] - ldrb r0, [r0, 0x2] - lsls r0, 8 - orrs r1, r0 - ldr r0, =gBattleStringsTable - subs r1, 0xC - lsls r1, 2 - adds r1, r0 - ldr r1, [r1] - b _0814F8BE - .pool -_0814F6C8: - ldrb r0, [r4, 0x1] - cmp r0, 0x2 - beq _0814F6E4 - cmp r0, 0x2 - bgt _0814F6D8 - cmp r0, 0x1 - beq _0814F6DE - b _0814F706 -_0814F6D8: - cmp r0, 0x4 - beq _0814F6EC - b _0814F706 -_0814F6DE: - ldrb r4, [r4, 0x3] - mov r8, r4 - b _0814F706 -_0814F6E4: - ldrb r1, [r4, 0x3] - ldrb r0, [r4, 0x4] - lsls r0, 8 - b _0814F702 -_0814F6EC: - ldrb r0, [r4, 0x3] - mov r8, r0 - ldrb r0, [r4, 0x4] - lsls r0, 8 - mov r1, r8 - orrs r1, r0 - ldrb r0, [r4, 0x5] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r4, 0x6] - lsls r0, 24 -_0814F702: - orrs r1, r0 - mov r8, r1 -_0814F706: - adds r4, r5, r7 - ldrb r3, [r4, 0x2] - adds r0, r6, 0 - mov r1, r8 - movs r2, 0 - bl ConvertIntToDecimalStringN - adds r0, r5, 0x3 - ldrb r4, [r4, 0x1] - adds r5, r0, r4 - b _0814F8E0 -_0814F71C: - adds r0, r5, r7 - ldrb r1, [r0, 0x1] - ldrb r0, [r0, 0x2] - lsls r0, 8 - orrs r1, r0 - movs r0, 0xD - muls r1, r0 - ldr r0, =gMoveNames - adds r1, r0 - b _0814F8BE - .pool -_0814F734: - adds r0, r5, r7 - ldrb r0, [r0, 0x1] - lsls r1, r0, 3 - subs r1, r0 - ldr r0, =gTypeNames - b _0814F846 - .pool -_0814F744: - ldrb r0, [r4, 0x1] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0814F768 - ldrb r1, [r4, 0x2] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814F7A4 - .pool -_0814F768: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0814F788 - ldr r1, =gText_FoePkmnPrefix - adds r0, r6, 0 - bl StringAppend - b _0814F790 - .pool -_0814F788: - ldr r1, =gText_WildPkmnPrefix - adds r0, r6, 0 - bl StringAppend -_0814F790: - adds r0, r5, r7 - ldrb r1, [r0, 0x2] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814F7A4: - mov r0, sp - bl StringGetEnd10 - adds r0, r6, 0 - mov r1, sp - bl StringAppend - b _0814F8DE - .pool -_0814F7BC: - ldr r1, =gStatNamesTable - adds r0, r5, r7 - ldrb r0, [r0, 0x1] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - b _0814F848 - .pool -_0814F7D0: - adds r0, r5, r7 - ldrb r1, [r0, 0x1] - ldrb r0, [r0, 0x2] - lsls r0, 8 - orrs r1, r0 - adds r0, r6, 0 - bl GetSpeciesName - b _0814F8DE -_0814F7E2: - adds r4, r5, r7 - ldrb r0, [r4, 0x1] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0814F808 - ldrb r1, [r4, 0x2] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - adds r2, r6, 0 - bl GetMonData - b _0814F81A - .pool -_0814F808: - ldrb r1, [r4, 0x2] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x2 - adds r2, r6, 0 - bl GetMonData -_0814F81A: - adds r0, r6, 0 - bl StringGetEnd10 - b _0814F8DE - .pool -_0814F828: - ldr r1, =gPokeblockWasTooXStringTable - adds r0, r5, r7 - ldrb r0, [r0, 0x1] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - b _0814F848 - .pool -_0814F83C: - adds r0, r5, r7 - ldrb r1, [r0, 0x1] - movs r0, 0xD - muls r1, r0 - ldr r0, =gAbilityNames -_0814F846: - adds r1, r0 -_0814F848: - adds r0, r6, 0 - bl StringAppend - adds r5, 0x2 - b _0814F8E0 - .pool -_0814F858: - adds r0, r5, r7 - ldrb r2, [r0, 0x1] - ldrb r0, [r0, 0x2] - lsls r0, 8 - orrs r2, r0 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x02000002 - ands r0, r1 - cmp r0, 0 - beq _0814F8D6 - cmp r2, 0xAF - bne _0814F8CC - ldr r2, =gLinkPlayers - ldr r0, =gBattleScripting - adds r0, 0x25 - ldrb r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, =gStringBank - ldrb r2, [r1] - ldrh r0, [r0, 0x18] - cmp r0, r2 - bne _0814F8BC - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - ldr r0, =gEnigmaBerries - adds r1, r0 - adds r0, r6, 0 - bl StringCopy - ldr r1, =gText_BerrySuffix - b _0814F8BE - .pool -_0814F8BC: - ldr r1, =gText_EnigmaBerry -_0814F8BE: - adds r0, r6, 0 - bl StringAppend - b _0814F8DE - .pool -_0814F8CC: - adds r0, r2, 0 - adds r1, r6, 0 - bl CopyItemName - b _0814F8DE -_0814F8D6: - adds r0, r2, 0 - adds r1, r6, 0 - bl CopyItemName -_0814F8DE: - adds r5, 0x3 -_0814F8E0: - adds r0, r7, r5 - ldrb r0, [r0] - cmp r0, 0xFF - beq _0814F8EA - b _0814F666 -_0814F8EA: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end StrCpyDecodeBattleTextBuff - - thumb_func_start sub_814F8F8 -sub_814F8F8: @ 814F8F8 - push {r4,r5,lr} - adds r4, r0, 0 - movs r2, 0 - ldr r5, =gStringInfo - ldr r3, =gUnknown_085CD336 -_0814F902: - cmp r2, 0x4 - beq _0814F918 - ldrh r1, [r3] - cmp r1, 0 - bne _0814F90E - adds r2, 0x1 -_0814F90E: - ldr r0, [r5] - adds r3, 0x2 - ldrh r0, [r0] - cmp r1, r0 - bne _0814F902 -_0814F918: - cmp r2, 0 - blt _0814F944 - cmp r2, 0x2 - bgt _0814F938 - ldr r1, =gText_SpaceIs - adds r0, r4, 0 - bl StringCopy - b _0814F944 - .pool -_0814F938: - cmp r2, 0x4 - bgt _0814F944 - ldr r1, =gText_ApostropheS - adds r0, r4, 0 - bl StringCopy -_0814F944: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_814F8F8 - - thumb_func_start sub_814F950 -sub_814F950: @ 814F950 - push {r4,r5,lr} - adds r3, r0, 0 - movs r4, 0 - b _0814F95A -_0814F958: - adds r3, 0x1 -_0814F95A: - ldrb r0, [r3] - cmp r0, 0xFF - bne _0814F958 - ldr r1, =gUnknown_085CD336 - ldr r5, =gStringInfo - movs r0, 0 - lsls r0, 1 - adds r2, r0, r1 -_0814F96A: - cmp r4, 0x4 - beq _0814F984 - ldrh r1, [r2] - cmp r1, 0 - bne _0814F976 - adds r4, 0x1 -_0814F976: - ldr r0, [r5] - adds r2, 0x2 - ldrh r0, [r0] - cmp r1, r0 - bne _0814F96A - cmp r4, 0x4 - bhi _0814F9E0 -_0814F984: - lsls r0, r4, 2 - ldr r1, =_0814F99C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0814F99C: - .4byte _0814F9B0 - .4byte _0814F9B8 - .4byte _0814F9C0 - .4byte _0814F9C8 - .4byte _0814F9D8 -_0814F9B0: - ldr r1, =gText_ExclamationMark - b _0814F9CA - .pool -_0814F9B8: - ldr r1, =gText_ExclamationMark2 - b _0814F9CA - .pool -_0814F9C0: - ldr r1, =gText_ExclamationMark3 - b _0814F9CA - .pool -_0814F9C8: - ldr r1, =gText_ExclamationMark4 -_0814F9CA: - adds r0, r3, 0 - bl StringCopy - b _0814F9E0 - .pool -_0814F9D8: - ldr r1, =gText_ExclamationMark5 - adds r0, r3, 0 - bl StringCopy -_0814F9E0: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_814F950 - - thumb_func_start battle_show_message_maybe -battle_show_message_maybe: @ 814F9EC - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x10 - adds r4, r0, 0 - lsls r1, 24 - lsrs r7, r1, 24 - ldr r1, =gUnknown_085CD660 - ldr r0, =gBattleScripting - adds r0, 0x24 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - mov r8, r0 - movs r0, 0x80 - ands r0, r7 - cmp r0, 0 - beq _0814FA24 - movs r0, 0x7F - ands r7, r0 - movs r0, 0 - b _0814FA36 - .pool -_0814FA24: - lsls r0, r7, 1 - adds r0, r7 - lsls r0, 2 - add r0, r8 - ldrb r1, [r0] - adds r0, r7, 0 - bl FillWindowPixelBuffer - movs r0, 0x1 -_0814FA36: - mov r9, r0 - str r4, [sp] - mov r0, sp - strb r7, [r0, 0x4] - mov r1, sp - lsls r6, r7, 1 - adds r3, r6, r7 - lsls r3, 2 - add r3, r8 - ldrb r0, [r3, 0x1] - strb r0, [r1, 0x5] - ldrb r0, [r3, 0x2] - strb r0, [r1, 0x6] - ldrb r0, [r3, 0x3] - strb r0, [r1, 0x7] - mov r0, sp - ldrb r0, [r0, 0x6] - strb r0, [r1, 0x8] - mov r0, sp - ldrb r0, [r0, 0x7] - strb r0, [r1, 0x9] - ldrb r0, [r3, 0x4] - strb r0, [r1, 0xA] - ldrb r0, [r3, 0x5] - strb r0, [r1, 0xB] - mov r4, sp - ldrb r2, [r4, 0xC] - movs r1, 0x10 - negs r1, r1 - adds r0, r1, 0 - ands r0, r2 - strb r0, [r4, 0xC] - mov r2, sp - ldrb r0, [r3, 0x7] - lsls r0, 4 - movs r5, 0xF - strb r0, [r2, 0xC] - ldrb r2, [r3, 0x8] - adds r0, r5, 0 - ands r0, r2 - ldrb r2, [r4, 0xD] - ands r1, r2 - orrs r1, r0 - strb r1, [r4, 0xD] - mov r2, sp - ldrb r0, [r3, 0x9] - lsls r0, 4 - ands r1, r5 - orrs r1, r0 - strb r1, [r2, 0xD] - mov r0, sp - ldrb r0, [r0, 0x6] - cmp r0, 0xFF - bne _0814FAC6 - ldr r0, =gBattleScripting - adds r0, 0x24 - ldrb r0, [r0] - adds r1, r7, 0 - bl sub_80397C4 - adds r2, r0, 0 - mov r0, sp - ldrb r0, [r0, 0x5] - ldr r1, [sp] - mov r3, sp - ldrb r3, [r3, 0xA] - bl GetStringCenterAlignXOffsetWithLetterSpacing - mov r2, sp - mov r1, sp - strb r0, [r1, 0x8] - strb r0, [r2, 0x6] -_0814FAC6: - cmp r7, 0x16 - bne _0814FAE0 - ldr r0, =gTextFlags - ldrb r2, [r0] - movs r1, 0x3 - negs r1, r1 - ands r1, r2 - b _0814FAE8 - .pool -_0814FAE0: - ldr r0, =gTextFlags - ldrb r1, [r0] - movs r2, 0x2 - orrs r1, r2 -_0814FAE8: - strb r1, [r0] - adds r3, r0, 0 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r2, =0x01000002 - ands r1, r2 - adds r2, r0, 0 - cmp r1, 0 - beq _0814FB10 - ldrb r0, [r3] - movs r1, 0x4 - orrs r0, r1 - b _0814FB18 - .pool -_0814FB10: - ldrb r1, [r3] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 -_0814FB18: - strb r0, [r3] - cmp r7, 0 - beq _0814FB22 - cmp r7, 0x16 - bne _0814FB6C -_0814FB22: - ldr r1, [r2] - ldr r0, =0x02000002 - ands r0, r1 - cmp r0, 0 - beq _0814FB34 - movs r6, 0x1 - b _0814FB5C - .pool -_0814FB34: - movs r0, 0x80 - lsls r0, 17 - ands r1, r0 - cmp r1, 0 - beq _0814FB54 - ldr r4, =gUnknown_085CD668 - bl sub_8185FC4 - lsls r0, 24 - lsrs r0, 24 - adds r0, r4 - ldrb r6, [r0] - b _0814FB5C - .pool -_0814FB54: - bl sav2_get_text_speed - lsls r0, 24 - lsrs r6, r0, 24 -_0814FB5C: - ldr r0, =gTextFlags - ldrb r1, [r0] - movs r2, 0x1 - orrs r1, r2 - strb r1, [r0] - b _0814FB7E - .pool -_0814FB6C: - adds r0, r6, r7 - lsls r0, 2 - add r0, r8 - ldrb r6, [r0, 0x6] - ldrb r1, [r3] - movs r0, 0x2 - negs r0, r0 - ands r0, r1 - strb r0, [r3] -_0814FB7E: - mov r0, sp - adds r1, r6, 0 - movs r2, 0 - bl AddTextPrinter - mov r0, r9 - cmp r0, 0 - beq _0814FB9C - adds r0, r7, 0 - bl PutWindowTilemap - adds r0, r7, 0 - movs r1, 0x3 - bl CopyWindowToVram -_0814FB9C: - add sp, 0x10 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end battle_show_message_maybe - - thumb_func_start sub_814FBAC -sub_814FBAC: @ 814FBAC - push {r4,r5,lr} - ldr r0, =gActiveBank - ldrb r2, [r0] - lsls r1, r2, 9 - ldr r0, =gBattleBufferA + 4 - adds r1, r0 - ldr r4, =gUnknown_08D85620 - ldr r0, =gUnknown_020244B0 - adds r2, r0 - ldrb r2, [r2] - adds r0, r1, 0 - adds r0, 0x8 - adds r0, r2 - ldrb r0, [r0] - adds r1, 0xC - adds r1, r2 - ldrb r1, [r1] - bl sub_814FC20 - lsls r0, 24 - ldr r5, =gPlttBufferUnfaded - lsrs r0, 22 - adds r0, r4 - ldrh r1, [r0] - adds r2, r5, 0 - adds r2, 0xB8 - strh r1, [r2] - ldrh r0, [r0, 0x2] - adds r5, 0xB6 - strh r0, [r5] - ldr r4, =gPlttBufferFaded + 0xB8 - adds r0, r2, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl CpuSet - subs r4, 0x2 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl CpuSet - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_814FBAC - - thumb_func_start sub_814FC20 -sub_814FC20: @ 814FC20 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - adds r3, r2, 0 - lsls r1, 24 - lsrs r0, r1, 24 - cmp r0, r2 - beq _0814FC68 - cmp r0, 0x2 - bhi _0814FC3A - cmp r2, 0x1 - bhi _0814FC68 - b _0814FC42 -_0814FC3A: - cmp r0, 0x7 - bhi _0814FC4C - cmp r2, 0x2 - bhi _0814FC68 -_0814FC42: - movs r0, 0x2 - subs r0, r2 - lsls r0, 24 - lsrs r0, 24 - b _0814FC6A -_0814FC4C: - cmp r2, 0 - bne _0814FC54 - movs r0, 0x2 - b _0814FC6A -_0814FC54: - lsrs r0, r1, 26 - cmp r2, r0 - bhi _0814FC5E - movs r0, 0x1 - b _0814FC6A -_0814FC5E: - lsrs r0, r1, 25 - cmp r3, r0 - bhi _0814FC68 - movs r0, 0 - b _0814FC6A -_0814FC68: - movs r0, 0x3 -_0814FC6A: - pop {r1} - bx r1 - thumb_func_end sub_814FC20 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/battle_setup.s b/asm/battle_setup.s index 752e4adf1..5c7196579 100644 --- a/asm/battle_setup.s +++ b/asm/battle_setup.s @@ -41,7 +41,7 @@ _080B062E: cmp r0, 0x1 bne _080B0652 bl overworld_free_bg_tilemaps - ldr r0, =sub_8036760 + ldr r0, =CB2_InitBattle bl SetMainCallback2 bl prev_quest_postbuffer_cursor_backup_reset bl overworld_poison_timer_set @@ -299,8 +299,8 @@ sub_80B086C: @ 80B086C .pool thumb_func_end sub_80B086C - thumb_func_start sub_80B08A8 -sub_80B08A8: @ 80B08A8 + thumb_func_start BattleSetup_StartScriptedWildBattle +BattleSetup_StartScriptedWildBattle: @ 80B08A8 push {lr} bl ScriptContext2_Enable ldr r1, =gMain @@ -323,7 +323,7 @@ sub_80B08A8: @ 80B08A8 pop {r0} bx r0 .pool - thumb_func_end sub_80B08A8 + thumb_func_end BattleSetup_StartScriptedWildBattle thumb_func_start sub_80B08EC sub_80B08EC: @ 80B08EC @@ -638,8 +638,8 @@ _080B0BC6: .pool thumb_func_end sub_80B0B6C - thumb_func_start sub_80B0BD0 -sub_80B0BD0: @ 80B0BD0 + thumb_func_start BattleSetup_GetTerrainId +BattleSetup_GetTerrainId: @ 80B0BD0 push {r4,r5,lr} sub sp, 0x4 mov r4, sp @@ -704,7 +704,7 @@ _080B0C64: lsls r0, r5, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl sub_8089588 + bl MetatileBehavior_IsMB_0B lsls r0, 24 cmp r0, 0 beq _080B0C78 @@ -734,7 +734,7 @@ _080B0C9C: lsls r0, r5, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl sub_808962C + bl MetatileBehavior_IsDeepOrOceanWater lsls r0, 24 cmp r0, 0 bne _080B0CF2 @@ -744,7 +744,7 @@ _080B0C9C: cmp r0, 0 bne _080B0CE0 adds r0, r4, 0 - bl sub_808959C + bl MetatileBehavior_IsMountain lsls r0, 24 cmp r0, 0 beq _080B0CC8 @@ -757,7 +757,7 @@ _080B0CC8: cmp r0, 0 beq _080B0CF6 adds r0, r4, 0 - bl sub_80894D4 + bl MetatileBehavior_GetBridgeSth lsls r0, 24 cmp r0, 0 beq _080B0CE4 @@ -766,7 +766,7 @@ _080B0CE0: b _080B0D1A _080B0CE4: adds r0, r4, 0 - bl sub_80894AC + bl MetatileBehavior_IsBridge lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -798,7 +798,7 @@ _080B0D1A: pop {r4,r5} pop {r1} bx r1 - thumb_func_end sub_80B0BD0 + thumb_func_end BattleSetup_GetTerrainId thumb_func_start sub_80B0D24 sub_80B0D24: @ 80B0D24 @@ -1357,7 +1357,7 @@ sub_80B1158: @ 80B1158 movs r1, 0x5 movs r2, 0 movs r3, 0 - bl sub_80F9244 + bl ScriptGiveMon bl ResetTasks bl PlayBattleBGM ldr r0, =sub_80B11A8 @@ -1387,7 +1387,7 @@ sub_80B11A8: @ 80B11A8 ldr r0, =sub_80B1204 str r0, [r1, 0x8] bl FreeAllWindowBuffers - ldr r0, =sub_8036760 + ldr r0, =CB2_InitBattle bl SetMainCallback2 bl prev_quest_postbuffer_cursor_backup_reset bl overworld_poison_timer_set @@ -1686,9 +1686,9 @@ _080B141A: .pool thumb_func_end battle_80801F0 - thumb_func_start TrainerBattleConfigure -@ u8 *TrainerBattleConfigure(u8 *args) -TrainerBattleConfigure: @ 80B1430 + thumb_func_start BattleSetup_ConfigureTrainerBattle +@ u8 *BattleSetup_ConfigureTrainerBattle(u8 *args) +BattleSetup_ConfigureTrainerBattle: @ 80B1430 push {r4,r5,lr} adds r5, r0, 0 bl InitTrainerBattleVariables @@ -1872,7 +1872,7 @@ _080B161E: pop {r1} bx r1 .pool - thumb_func_end TrainerBattleConfigure + thumb_func_end BattleSetup_ConfigureTrainerBattle thumb_func_start SingleTrainerWantsBattle @ void SingleTrainerWantsBattle(u8 trainerFieldObjectId, u8 *trainerScript) @@ -1892,7 +1892,7 @@ SingleTrainerWantsBattle: @ 80B162C strh r0, [r4] adds r1, 0x1 adds r0, r1, 0 - bl TrainerBattleConfigure + bl BattleSetup_ConfigureTrainerBattle ldr r0, =gUnknown_08271354 bl ScriptContext1_SetupScript bl ScriptContext2_Enable @@ -1920,7 +1920,7 @@ TwoTrainersWantBattle: @ 80B1670 strh r0, [r4] adds r1, 0x1 adds r0, r1, 0 - bl TrainerBattleConfigure + bl BattleSetup_ConfigureTrainerBattle pop {r4} pop {r0} bx r0 @@ -2056,8 +2056,8 @@ sub_80B178C: @ 80B178C bx r0 thumb_func_end sub_80B178C - thumb_func_start trainer_flag_check -trainer_flag_check: @ 80B17A0 + thumb_func_start HasTrainerAlreadyBeenFought +HasTrainerAlreadyBeenFought: @ 80B17A0 push {lr} lsls r0, 16 movs r1, 0xA0 @@ -2069,7 +2069,7 @@ trainer_flag_check: @ 80B17A0 lsrs r0, 24 pop {r1} bx r1 - thumb_func_end trainer_flag_check + thumb_func_end HasTrainerAlreadyBeenFought thumb_func_start trainer_flag_set trainer_flag_set: @ 80B17B8 @@ -2092,13 +2092,13 @@ trainer_flag_clear: @ 80B17CC lsls r1, 19 adds r0, r1 lsrs r0, 16 - bl FlagReset + bl FlagClear pop {r0} bx r0 thumb_func_end trainer_flag_clear - thumb_func_start sub_80B17E0 -sub_80B17E0: @ 80B17E0 + thumb_func_start BattleSetup_StartTrainerBattle +BattleSetup_StartTrainerBattle: @ 80B17E0 push {r4,lr} ldr r0, =gUnknown_030060A8 ldrb r0, [r0] @@ -2217,7 +2217,7 @@ _080B190C: pop {r4} pop {r0} bx r0 - thumb_func_end sub_80B17E0 + thumb_func_end BattleSetup_StartTrainerBattle thumb_func_start sub_80B1918 sub_80B1918: @ 80B1918 @@ -2407,14 +2407,14 @@ _080B1AD8: .pool _080B1AEC: bl sub_80B1C7C - bl box_related_two__2 + bl ShowFieldMessage _080B1AF4: pop {r0} bx r0 thumb_func_end sub_80B1A14 - thumb_func_start sub_80B1AF8 -sub_80B1AF8: @ 80B1AF8 + thumb_func_start BattleSetup_GetScriptAddrAfterBattle +BattleSetup_GetScriptAddrAfterBattle: @ 80B1AF8 push {lr} ldr r0, =gUnknown_02038BEC ldr r0, [r0] @@ -2425,10 +2425,10 @@ _080B1B04: pop {r1} bx r1 .pool - thumb_func_end sub_80B1AF8 + thumb_func_end BattleSetup_GetScriptAddrAfterBattle - thumb_func_start sub_80B1B10 -sub_80B1B10: @ 80B1B10 + thumb_func_start BattleSetup_GetTrainerPostBattleScript +BattleSetup_GetTrainerPostBattleScript: @ 80B1B10 push {lr} ldr r1, =gUnknown_02038BF8 ldrb r2, [r1] @@ -2462,13 +2462,13 @@ _080B1B56: pop {r1} bx r1 .pool - thumb_func_end sub_80B1B10 + thumb_func_end BattleSetup_GetTrainerPostBattleScript thumb_func_start special_trainer_unable_to_battle special_trainer_unable_to_battle: @ 80B1B60 push {lr} bl sub_80B1D18 - bl box_related_two__2 + bl ShowFieldMessage pop {r0} bx r0 thumb_func_end special_trainer_unable_to_battle @@ -2617,8 +2617,8 @@ _080B1C96: .pool thumb_func_end sub_80B1C7C - thumb_func_start sub_80B1CA4 -sub_80B1CA4: @ 80B1CA4 + thumb_func_start GetTrainer1LoseText +GetTrainer1LoseText: @ 80B1CA4 push {r4,lr} ldr r0, =gTrainerBattleOpponent_A ldrh r1, [r0] @@ -2643,10 +2643,10 @@ _080B1CC0: pop {r1} bx r1 .pool - thumb_func_end sub_80B1CA4 + thumb_func_end GetTrainer1LoseText - thumb_func_start sub_80B1CE0 -sub_80B1CE0: @ 80B1CE0 + thumb_func_start GetTrainer2LoseText +GetTrainer2LoseText: @ 80B1CE0 push {r4,lr} ldr r4, =gStringVar4 ldr r0, =gUnknown_02038BE0 @@ -2660,7 +2660,7 @@ sub_80B1CE0: @ 80B1CE0 pop {r1} bx r1 .pool - thumb_func_end sub_80B1CE0 + thumb_func_end GetTrainer2LoseText thumb_func_start sub_80B1D04 sub_80B1D04: @ 80B1D04 @@ -2796,7 +2796,7 @@ _080B1DCE: ldrh r0, [r4] cmp r0, 0 beq _080B1DE2 - bl trainer_flag_check + bl HasTrainerAlreadyBeenFought lsls r0, 24 cmp r0, 0 bne _080B1DCA @@ -2895,7 +2895,7 @@ sub_80B1E94: @ 80B1E94 lsls r0, r4, 4 adds r0, r5 ldrh r0, [r0] - bl trainer_flag_check + bl HasTrainerAlreadyBeenFought lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -3076,7 +3076,7 @@ _080B1FE2: ldrh r0, [r4] cmp r0, 0 beq _080B1FCA - bl trainer_flag_check + bl HasTrainerAlreadyBeenFought lsls r0, 24 cmp r0, 0 beq _080B1FD4 @@ -3127,7 +3127,7 @@ _080B203A: ldrh r0, [r4] cmp r0, 0 beq _080B201E - bl trainer_flag_check + bl HasTrainerAlreadyBeenFought lsls r0, 24 cmp r0, 0 beq _080B2028 @@ -3233,7 +3233,7 @@ sub_80B20F4: @ 80B20F4 lsls r0, r1, 4 adds r0, r4 ldrh r0, [r0, 0x2] - bl trainer_flag_check + bl HasTrainerAlreadyBeenFought lsls r0, 24 cmp r0, 0 beq _080B211E @@ -3509,7 +3509,7 @@ sub_80B2318: @ 80B2318 lsrs r4, r0, 12 adds r6, r4, r7 ldrh r0, [r6] - bl trainer_flag_check + bl HasTrainerAlreadyBeenFought lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -3527,7 +3527,7 @@ _080B2338: adds r4, r6, 0x2 _080B2346: ldrh r0, [r4] - bl trainer_flag_check + bl HasTrainerAlreadyBeenFought lsls r0, 24 cmp r0, 0 beq _080B2360 diff --git a/asm/battle_tower.s b/asm/battle_tower.s index 0782b8609..74c84e34c 100755 --- a/asm/battle_tower.s +++ b/asm/battle_tower.s @@ -1795,7 +1795,7 @@ _08162ED8: adds r0, 0xE4 ldrb r2, [r0] adds r0, r6, 0 - bl sub_81DB5E8 + bl TVShowConvertInternationalString b _08162F62 .pool _08162F00: @@ -1835,7 +1835,7 @@ _08162F3E: adds r1, r0, 0 adds r0, r6, 0 adds r2, r4, 0 - bl sub_81DB5E8 + bl TVShowConvertInternationalString b _08162F62 .pool _08162F5C: @@ -3194,7 +3194,7 @@ sub_8163A8C: @ 8163A8C ldr r0, =gMain ldr r1, =sub_81639AC str r1, [r0, 0x8] - ldr r0, =sub_8036760 + ldr r0, =CB2_InitBattle bl SetMainCallback2 adds r0, r4, 0 bl DestroyTask @@ -3548,11 +3548,11 @@ _08163E2C: movs r0, 0 strb r0, [r4] ldr r0, =gUnknown_08224158 - bl TrainerBattleConfigure + bl BattleSetup_ConfigureTrainerBattle movs r0, 0x1 strb r0, [r4] ldr r0, =gUnknown_08224167 - bl TrainerBattleConfigure + bl BattleSetup_ConfigureTrainerBattle ldr r0, =gPartnerTrainerId strh r5, [r0] ldr r0, =sub_8163A8C @@ -4364,7 +4364,7 @@ _081644E0: strb r0, [r1, 0x1] movs r0, 0xD8 lsls r0, 2 - bl FlagReset + bl FlagClear ldr r0, [r6] adds r0, r5 ldrh r0, [r0] @@ -4525,7 +4525,7 @@ _08164660: adds r1, 0xC0 strb r0, [r1, 0x1] ldr r0, =0x00000361 - bl FlagReset + bl FlagClear ldr r0, [r6] adds r0, r5 ldrh r0, [r0] @@ -5016,7 +5016,7 @@ _08164B04: lsls r0, 2 adds r0, r1 ldr r0, [r0] - bl box_related_two__2 + bl ShowFieldMessage b _08164B54 .pool _08164B28: @@ -5040,7 +5040,7 @@ _08164B28: lsls r1, 2 adds r1, r0 ldr r0, [r1] - bl box_related_two__2 + bl ShowFieldMessage _08164B54: add sp, 0x8 pop {r3-r5} @@ -5125,21 +5125,21 @@ _08164C18: lsrs r0, 24 mov r1, sp movs r2, 0x4 - bl link_0800A448 + bl SendBlock ldr r1, =gScriptResult movs r0, 0x1 b _08164DB4 .pool _08164C3C: - bl sub_800A550 + bl GetBlockReceivedStatus movs r1, 0x3 ands r1, r0 cmp r1, 0x3 beq _08164C4A b _08164DB6 _08164C4A: - bl sub_800A5B4 - ldr r1, =gUnknown_020223C4 + bl ResetBlockReceivedFlags + ldr r1, =gBlockRecvBuffer movs r0, 0x80 lsls r0, 1 adds r2, r1, r0 @@ -5221,23 +5221,23 @@ _08164CE0: ldr r3, =0x00000cb4 adds r1, r3 movs r2, 0x28 - bl link_0800A448 + bl SendBlock ldr r1, =gScriptResult movs r0, 0x3 b _08164DB4 .pool _08164D14: - bl sub_800A550 + bl GetBlockReceivedStatus movs r1, 0x3 ands r1, r0 cmp r1, 0x3 bne _08164DB6 - bl sub_800A5B4 + bl ResetBlockReceivedFlags ldr r4, =gSaveBlock2Ptr ldr r0, [r4] ldr r5, =0x00000cb4 adds r0, r5 - ldr r1, =gUnknown_020223C4 + ldr r1, =gBlockRecvBuffer movs r2, 0x28 bl memcpy ldr r2, =gTrainerBattleOpponent_A @@ -5260,7 +5260,7 @@ _08164D14: ldrh r0, [r4] movs r1, 0x1 bl sub_8162614 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _08164DB0 @@ -5279,7 +5279,7 @@ _08164D98: b _08164DB4 .pool _08164DA8: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _08164DB6 @@ -5673,7 +5673,7 @@ _0816508C: bl SetMonData ldr r0, [r7] adds r0, r4 - bl sub_80EE5A4 + bl GetRibbonCount strb r0, [r5, 0x1] _081650D4: adds r5, 0x4 @@ -5857,8 +5857,8 @@ sub_8165244: @ 8165244 .pool thumb_func_end sub_8165244 - thumb_func_start sub_8165264 -sub_8165264: @ 8165264 + thumb_func_start GetEreaderTrainerClassId +GetEreaderTrainerClassId: @ 8165264 ldr r1, =gTrainerClassToNameIndex ldr r0, =gSaveBlock2Ptr ldr r0, [r0] @@ -5869,10 +5869,10 @@ sub_8165264: @ 8165264 ldrb r0, [r0] bx lr .pool - thumb_func_end sub_8165264 + thumb_func_end GetEreaderTrainerClassId - thumb_func_start sub_8165284 -sub_8165284: @ 8165284 + thumb_func_start GetEreaderTrainerName +GetEreaderTrainerName: @ 8165284 push {r4,lr} adds r3, r0, 0 movs r2, 0 @@ -5896,7 +5896,7 @@ _08165294: pop {r0} bx r0 .pool - thumb_func_end sub_8165284 + thumb_func_end GetEreaderTrainerName thumb_func_start sub_81652B4 sub_81652B4: @ 81652B4 @@ -6056,7 +6056,7 @@ _081653E0: bne _081653F8 bl sub_80F01B8 movs r0, 0x77 - bl FlagReset + bl FlagClear _081653F8: pop {r0} bx r0 diff --git a/asm/battle_transition.s b/asm/battle_transition.s index 6406a3f24..2f9637594 100644 --- a/asm/battle_transition.s +++ b/asm/battle_transition.s @@ -2151,7 +2151,7 @@ sub_8147018: @ 8147018 ands r5, r0 movs r1, 0 mov r8, r4 - ldr r6, =gFieldEffectSpawnParams + ldr r6, =gFieldEffectArguments _08147046: lsls r5, 16 asrs r5, 16 @@ -2221,7 +2221,7 @@ _081470C4: sub_81470D0: @ 81470D0 push {r4,r5,lr} ldr r0, =gUnknown_085C8E68 - ldr r5, =gFieldEffectSpawnParams + ldr r5, =gFieldEffectArguments movs r2, 0 ldrsh r1, [r5, r2] movs r3, 0x4 @@ -9513,11 +9513,11 @@ sub_814ABE4: @ 814ABE4 strh r0, [r6, 0xC] cmp r0, 0 bne _0814AC24 - ldr r5, =gUnknown_02022E14 + ldr r5, =gBattle_BG0_X ldrh r1, [r5] movs r0, 0x12 bl SetGpuReg - ldr r4, =gUnknown_02022E16 + ldr r4, =gBattle_BG0_Y ldrh r1, [r4] movs r0, 0x10 bl SetGpuReg @@ -9562,9 +9562,9 @@ sub_814AC38: @ 814AC38 movs r1, 0xF0 movs r2, 0x20 bl LoadPalette - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X strh r5, [r0] - ldr r4, =gUnknown_02022E16 + ldr r4, =gBattle_BG0_Y strh r5, [r4] movs r0, 0x12 movs r1, 0 @@ -9781,10 +9781,10 @@ sub_814AE40: @ 814AE40 push {r4,r5,lr} sub sp, 0x8 adds r5, r0, 0 - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r4, =gUnknown_02022E16 + ldr r4, =gBattle_BG0_Y strh r1, [r4] movs r0, 0x12 movs r1, 0 diff --git a/asm/berry_blender.s b/asm/berry_blender.s index 0599fa153..6d18ab7cb 100644 --- a/asm/berry_blender.s +++ b/asm/berry_blender.s @@ -512,7 +512,7 @@ _0807FBBE: adds r4, 0x1 cmp r4, 0x3 ble _0807FBBE - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _0807FC14 @@ -1116,7 +1116,7 @@ _08080126: adds r5, 0x1 cmp r5, 0x3 ble _08080126 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0808016A @@ -1213,7 +1213,7 @@ _08080248: bne _08080254 b _08080546 _08080254: - bl sub_800A5B4 + bl ResetBlockReceivedFlags bl GetMultiplayerId lsls r0, 24 cmp r0, 0 @@ -1239,7 +1239,7 @@ _08080282: movs r0, 0x4 movs r1, 0x1 bl sub_8197DF8 - bl sub_800A550 + bl GetBlockReceivedStatus adds r4, r0, 0 bl sub_800A9D8 lsls r4, 24 @@ -1260,7 +1260,7 @@ _080802AC: adds r0, r4, r0 adds r0, r6 lsls r1, r5, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 movs r2, 0x10 bl memcpy @@ -1275,12 +1275,12 @@ _080802AC: strh r0, [r1] adds r5, 0x1 _080802D4: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r5, r0 blt _080802AC - bl sub_800A5B4 + bl ResetBlockReceivedFlags b _080804F8 .pool _080802EC: @@ -1295,7 +1295,7 @@ _080802EC: bl sub_807FD90 b _08080336 _08080302: - bl sub_8009FCC + bl GetLinkPlayerCount ldr r2, =gUnknown_020322A4 ldr r1, [r2] adds r1, 0x7C @@ -1876,7 +1876,7 @@ sub_80807BC: @ 80807BC sub sp, 0x1C movs r0, 0 mov r10, r0 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080807DE @@ -3330,7 +3330,7 @@ sub_80814B0: @ 80814B0 lsrs r1, 16 lsls r2, 16 lsrs r2, 16 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080814E4 @@ -3633,7 +3633,7 @@ sub_8081744: @ 8081744 push {r4-r6,lr} movs r4, 0 movs r6, 0 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _0808175A @@ -4702,7 +4702,7 @@ _08081F7C: sub_8081F94: @ 8081F94 push {lr} adds r1, r0, 0 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _08081FB8 @@ -4810,7 +4810,7 @@ _08082078: adds r1, 0x4C movs r0, 0 strh r0, [r1] - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080820B0 @@ -4848,7 +4848,7 @@ _080820E0: bne _080820EC b _0808249E _080820EC: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _0808218C @@ -4911,7 +4911,7 @@ _08082132: adds r1, r4 movs r0, 0 movs r2, 0x20 - bl link_0800A448 + bl SendBlock lsls r0, 24 cmp r0, 0 bne _08082172 @@ -4941,7 +4941,7 @@ _0808218C: strh r2, [r0] movs r0, 0 movs r2, 0x28 - bl link_0800A448 + bl SendBlock lsls r0, 24 cmp r0, 0 bne _080821BE @@ -4951,20 +4951,20 @@ _080821BE: b _0808245C .pool _080821C8: - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 cmp r0, 0 bne _080821D4 b _0808249E _080821D4: - bl sub_800A5B4 + bl ResetBlockReceivedFlags ldr r5, =gUnknown_020322A4 ldr r1, [r5] adds r1, 0x63 ldrb r0, [r1] adds r0, 0x1 strb r0, [r1] - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _08082254 @@ -4972,7 +4972,7 @@ _080821D4: ldrb r0, [r0] cmp r0, 0 beq _08082254 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer ldr r3, [r5] ldrh r0, [r2, 0x4] adds r1, r3, 0 @@ -5016,7 +5016,7 @@ _08082220: b _0808249E .pool _08082254: - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer ldr r0, =gUnknown_020322A4 ldr r3, [r0] ldrh r0, [r2, 0x4] @@ -5748,7 +5748,7 @@ _080828BC: strb r0, [r1] b _080828DC _080828C6: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r4, [r0] cmp r4, 0 bne _080828DC @@ -5966,7 +5966,7 @@ _08082A92: thumb_func_start sub_8082AD4 sub_8082AD4: @ 8082AD4 push {r4-r7,lr} - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _08082AE0 @@ -6091,7 +6091,7 @@ _08082BEE: lsls r0, 24 lsrs r5, r0, 24 _08082BF4: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r5, r0 @@ -6104,7 +6104,7 @@ _08082C0C: lsls r0, 24 lsrs r5, r0, 24 _08082C12: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r5, r0 @@ -6118,7 +6118,7 @@ _08082C12: cmp r0, 0 bne _08082C0C _08082C2E: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r5, r0 @@ -6132,7 +6132,7 @@ _08082C48: lsls r0, 24 lsrs r5, r0, 24 _08082C4E: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r5, r0 @@ -6149,7 +6149,7 @@ _08082C6A: ldr r4, =gUnknown_03003110 adds r0, r4, 0 bl sub_8081F94 - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r5, r0 @@ -6242,7 +6242,7 @@ sub_8082D18: @ 8082D18 sub_8082D28: @ 8082D28 push {r4,lr} movs r1, 0 - ldr r4, =gUnknown_03003124 + ldr r4, =gReceivedRemoteLinkPlayers ldrb r0, [r4] cmp r0, 0 beq _08082D3C @@ -7909,7 +7909,7 @@ _08083A80: cmp r5, r0 bcc _08083A80 _08083A9E: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _08083AB4 @@ -8514,7 +8514,7 @@ sub_8083F94: @ 8083F94 strb r0, [r7, 0xC] movs r0, 0xFF strb r0, [r7] - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080840C4 @@ -8568,7 +8568,7 @@ sub_8083F94: @ 8083F94 ldrb r0, [r5, 0x12] str r0, [sp] adds r0, r7, 0 - bl sub_80ECC04 + bl Put3CheersForPokeblocksOnTheAir lsls r0, 24 cmp r0, 0 bne _080840BA @@ -8617,7 +8617,7 @@ _08084058: ldrb r0, [r5, 0x12] str r0, [sp] adds r0, r7, 0 - bl sub_80ECC04 + bl Put3CheersForPokeblocksOnTheAir lsls r0, 24 cmp r0, 0 beq _080840C4 diff --git a/asm/bike.s b/asm/bike.s index 7ea4a4598..b5d40a312 100644 --- a/asm/bike.s +++ b/asm/bike.s @@ -2013,9 +2013,9 @@ _0811A0B0: bl SetPlayerAvatarTransitionFlags ldr r4, =0x00000193 adds r0, r4, 0 - bl sav1_set_battle_music_maybe + bl Overworld_SetSavedMusic adds r0, r4, 0 - bl sub_80858C4 + bl Overworld_ChangeMusicTo _0811A0C4: pop {r4} pop {r0} diff --git a/asm/braille_puzzles.s b/asm/braille_puzzles.s deleted file mode 100644 index 095b1b793..000000000 --- a/asm/braille_puzzles.s +++ /dev/null @@ -1,627 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_81795E8 -sub_81795E8: @ 81795E8 - push {lr} - ldr r0, =0x000008af - bl FlagGet - lsls r0, 24 - cmp r0, 0 - bne _08179634 - ldr r0, =gSaveBlock1Ptr - ldr r2, [r0] - ldrh r1, [r2, 0x4] - ldr r0, =0x00004718 - cmp r1, r0 - bne _08179634 - ldr r1, [r2] - ldr r0, =0x0003000a - cmp r1, r0 - beq _08179616 - ldr r0, =0x00030009 - cmp r1, r0 - beq _08179616 - ldr r0, =0x0003000b - cmp r1, r0 - bne _08179634 -_08179616: - movs r0, 0x1 - b _08179636 - .pool -_08179634: - movs r0, 0 -_08179636: - pop {r1} - bx r1 - thumb_func_end sub_81795E8 - - thumb_func_start sub_817963C -sub_817963C: @ 817963C - push {lr} - ldr r2, =0x0000022a - movs r0, 0x10 - movs r1, 0x8 - bl MapGridSetMetatileIdAt - ldr r2, =0x0000022b - movs r0, 0x11 - movs r1, 0x8 - bl MapGridSetMetatileIdAt - movs r2, 0x8B - lsls r2, 2 - movs r0, 0x12 - movs r1, 0x8 - bl MapGridSetMetatileIdAt - ldr r2, =0x00000e32 - movs r0, 0x10 - movs r1, 0x9 - bl MapGridSetMetatileIdAt - ldr r2, =0x00000233 - movs r0, 0x11 - movs r1, 0x9 - bl MapGridSetMetatileIdAt - ldr r2, =0x00000e34 - movs r0, 0x12 - movs r1, 0x9 - bl MapGridSetMetatileIdAt - bl DrawWholeMapView - movs r0, 0x14 - bl PlaySE - ldr r0, =0x000008af - bl FlagSet - bl ScriptContext2_Disable - pop {r0} - bx r0 - .pool - thumb_func_end sub_817963C - - thumb_func_start sub_81796AC -sub_81796AC: @ 81796AC - push {r4,lr} - ldr r4, =gPlayerParty - adds r0, r4, 0 - movs r1, 0x41 - movs r2, 0 - bl GetMonData - movs r1, 0x9D - lsls r1, 1 - cmp r0, r1 - bne _081796F4 - bl CalculatePlayerPartyCount - ldr r0, =gPlayerPartyCount - ldrb r1, [r0] - movs r0, 0x64 - muls r0, r1 - adds r1, r4, 0 - subs r1, 0x64 - adds r0, r1 - movs r1, 0x41 - movs r2, 0 - bl GetMonData - ldr r1, =0x0000017d - cmp r0, r1 - bne _081796F4 - movs r0, 0x1 - b _081796F6 - .pool -_081796F4: - movs r0, 0 -_081796F6: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_81796AC - - thumb_func_start nullsub_84 -nullsub_84: @ 81796FC - bx lr - thumb_func_end nullsub_84 - - thumb_func_start sub_8179700 -sub_8179700: @ 8179700 - push {lr} - ldr r0, =sub_8179778 - movs r1, 0x9 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r0, 0 - strh r0, [r1, 0xA] - strh r0, [r1, 0xC] - movs r0, 0x2 - strh r0, [r1, 0x10] - movs r0, 0x5 - strh r0, [r1, 0x12] - movs r0, 0x32 - strh r0, [r1, 0x14] - movs r0, 0 - bl SetCameraPanningCallback - pop {r0} - bx r0 - .pool - thumb_func_end sub_8179700 - - thumb_func_start sub_817973C -sub_817973C: @ 817973C - push {lr} - ldr r0, =sub_8179778 - movs r1, 0x9 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r0, 0 - strh r0, [r1, 0xA] - strh r0, [r1, 0xC] - movs r0, 0x3 - strh r0, [r1, 0x10] - movs r0, 0x5 - strh r0, [r1, 0x12] - movs r0, 0x2 - strh r0, [r1, 0x14] - movs r0, 0 - bl SetCameraPanningCallback - pop {r0} - bx r0 - .pool - thumb_func_end sub_817973C - - thumb_func_start sub_8179778 -sub_8179778: @ 8179778 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, =gTasks - adds r4, r0, r1 - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - movs r1, 0xA - ldrsh r0, [r4, r1] - movs r2, 0x12 - ldrsh r1, [r4, r2] - bl __modsi3 - cmp r0, 0 - bne _081797D0 - strh r0, [r4, 0xA] - ldrh r0, [r4, 0xC] - adds r0, 0x1 - strh r0, [r4, 0xC] - ldrh r0, [r4, 0x10] - negs r0, r0 - strh r0, [r4, 0x10] - movs r0, 0x10 - ldrsh r1, [r4, r0] - movs r0, 0 - bl SetCameraPanning - movs r2, 0xC - ldrsh r1, [r4, r2] - movs r2, 0x14 - ldrsh r0, [r4, r2] - cmp r1, r0 - bne _081797D0 - adds r0, r5, 0 - bl DestroyTask - bl EnableBothScriptContexts - bl InstallCameraPanAheadCallback -_081797D0: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8179778 - - thumb_func_start sub_81797DC -sub_81797DC: @ 81797DC - push {lr} - movs r0, 0x8B - lsls r0, 4 - bl FlagGet - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _0817982C - ldr r0, =gSaveBlock1Ptr - ldr r3, [r0] - ldrh r1, [r3, 0x4] - movs r0, 0xC3 - lsls r0, 3 - cmp r1, r0 - bne _0817982C - ldr r1, [r3] - ldr r0, =0x00170006 - cmp r1, r0 - beq _08179810 - ldr r0, =0x00170005 - cmp r1, r0 - beq _08179810 - ldr r0, =0x00170007 - cmp r1, r0 - bne _0817982C -_08179810: - ldr r0, =gUnknown_0203BD14 - strb r2, [r0] - movs r0, 0x1 - b _0817982E - .pool -_0817982C: - movs r0, 0 -_0817982E: - pop {r1} - bx r1 - thumb_func_end sub_81797DC - - thumb_func_start sub_8179834 -sub_8179834: @ 8179834 - push {lr} - bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams - lsls r0, 24 - lsrs r0, 24 - str r0, [r1] - movs r0, 0x3C - bl FieldEffectStart - pop {r0} - bx r0 - .pool - thumb_func_end sub_8179834 - - thumb_func_start sub_8179850 -sub_8179850: @ 8179850 - push {lr} - movs r0, 0x3C - bl FieldEffectActiveListRemove - bl sub_8179860 - pop {r0} - bx r0 - thumb_func_end sub_8179850 - - thumb_func_start sub_8179860 -sub_8179860: @ 8179860 - push {lr} - ldr r2, =0x0000022a - movs r0, 0xE - movs r1, 0x1A - bl MapGridSetMetatileIdAt - ldr r2, =0x0000022b - movs r0, 0xF - movs r1, 0x1A - bl MapGridSetMetatileIdAt - movs r2, 0x8B - lsls r2, 2 - movs r0, 0x10 - movs r1, 0x1A - bl MapGridSetMetatileIdAt - ldr r2, =0x00000e32 - movs r0, 0xE - movs r1, 0x1B - bl MapGridSetMetatileIdAt - ldr r2, =0x00000233 - movs r0, 0xF - movs r1, 0x1B - bl MapGridSetMetatileIdAt - ldr r2, =0x00000e34 - movs r0, 0x10 - movs r1, 0x1B - bl MapGridSetMetatileIdAt - bl DrawWholeMapView - movs r0, 0x14 - bl PlaySE - movs r0, 0x8B - lsls r0, 4 - bl FlagSet - bl ScriptContext2_Disable - pop {r0} - bx r0 - .pool - thumb_func_end sub_8179860 - - thumb_func_start sub_81798D0 -sub_81798D0: @ 81798D0 - push {lr} - ldr r0, =0x000008b2 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - bne _08179910 - ldr r0, =gSaveBlock1Ptr - ldr r2, [r0] - ldrh r1, [r2, 0x4] - ldr r0, =0x00004418 - cmp r1, r0 - bne _08179910 - ldr r1, [r2] - ldr r0, =0x00190008 - cmp r1, r0 - bne _08179910 - ldr r1, =gUnknown_0203BD14 - movs r0, 0x1 - strb r0, [r1] - movs r0, 0x1 - b _08179912 - .pool -_08179910: - movs r0, 0 -_08179912: - pop {r1} - bx r1 - thumb_func_end sub_81798D0 - - thumb_func_start sub_8179918 -sub_8179918: @ 8179918 - push {lr} - bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams - lsls r0, 24 - lsrs r0, 24 - str r0, [r1] - movs r0, 0x3C - bl FieldEffectStart - pop {r0} - bx r0 - .pool - thumb_func_end sub_8179918 - - thumb_func_start sub_8179934 -sub_8179934: @ 8179934 - push {lr} - movs r0, 0x3C - bl FieldEffectActiveListRemove - bl sub_8179944 - pop {r0} - bx r0 - thumb_func_end sub_8179934 - - thumb_func_start sub_8179944 -sub_8179944: @ 8179944 - push {lr} - ldr r2, =0x0000022a - movs r0, 0xE - movs r1, 0x1A - bl MapGridSetMetatileIdAt - ldr r2, =0x0000022b - movs r0, 0xF - movs r1, 0x1A - bl MapGridSetMetatileIdAt - movs r2, 0x8B - lsls r2, 2 - movs r0, 0x10 - movs r1, 0x1A - bl MapGridSetMetatileIdAt - ldr r2, =0x00000e32 - movs r0, 0xE - movs r1, 0x1B - bl MapGridSetMetatileIdAt - ldr r2, =0x00000233 - movs r0, 0xF - movs r1, 0x1B - bl MapGridSetMetatileIdAt - ldr r2, =0x00000e34 - movs r0, 0x10 - movs r1, 0x1B - bl MapGridSetMetatileIdAt - bl DrawWholeMapView - movs r0, 0x14 - bl PlaySE - ldr r0, =0x000008b2 - bl FlagSet - bl ScriptContext2_Disable - pop {r0} - bx r0 - .pool - thumb_func_end sub_8179944 - - thumb_func_start nullsub_64 -nullsub_64: @ 81799B4 - bx lr - thumb_func_end nullsub_64 - - thumb_func_start sub_81799B8 -sub_81799B8: @ 81799B8 - push {lr} - bl oei_task_add - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, =gUnknown_0203BD14 - ldrb r0, [r0] - cmp r0, 0x1 - bne _081799E4 - ldr r1, =gTasks - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - ldr r2, =sub_8179934 - b _081799F0 - .pool -_081799E4: - ldr r1, =gTasks - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - ldr r2, =sub_8179850 -_081799F0: - lsrs r1, r2, 16 - strh r1, [r0, 0x18] - strh r2, [r0, 0x1A] - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end sub_81799B8 - - thumb_func_start sub_8179A04 -sub_8179A04: @ 8179A04 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r4, =gSaveBlock1Ptr - ldr r0, [r4] - ldrh r1, [r0, 0x4] - ldr r0, =0x00004318 - cmp r1, r0 - beq _08179A1A - b _08179B5A -_08179A1A: - ldr r0, =0x000008b1 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _08179A28 - b _08179B5A -_08179A28: - movs r0, 0x2 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - bne _08179A36 - b _08179B5A -_08179A36: - movs r0, 0x3 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08179A58 - b _08179B5A - .pool -_08179A54: - movs r0, 0x1 - b _08179B5C -_08179A58: - movs r5, 0 - mov r8, r4 - ldr r4, =gUnknown_085EFE74 - adds r0, r4, 0x1 - mov r12, r0 - ldr r6, =0x0000403b - ldr r1, =0x0000403c - mov r9, r1 -_08179A68: - lsls r0, r5, 1 - adds r1, r0, r4 - add r0, r12 - ldrb r3, [r0] - mov r7, r8 - ldr r2, [r7] - movs r7, 0 - ldrsh r0, [r2, r7] - ldrb r1, [r1] - cmp r0, r1 - bne _08179B44 - movs r1, 0x2 - ldrsh r0, [r2, r1] - cmp r0, r3 - bne _08179B44 - cmp r5, 0xF - bhi _08179AB0 - adds r0, r6, 0 - bl VarGet - lsls r0, 16 - movs r1, 0x80 - lsls r1, 9 - lsls r1, r5 - orrs r1, r0 - lsrs r1, 16 - adds r0, r6, 0 - bl VarSet - b _08179AF0 - .pool -_08179AB0: - cmp r5, 0x1F - bhi _08179AD2 - mov r0, r9 - bl VarGet - lsls r0, 16 - adds r2, r5, 0 - subs r2, 0x10 - movs r1, 0x80 - lsls r1, 9 - lsls r1, r2 - orrs r1, r0 - lsrs r1, 16 - mov r0, r9 - bl VarSet - b _08179AF0 -_08179AD2: - ldr r4, =0x0000403d - adds r0, r4, 0 - bl VarGet - lsls r0, 16 - adds r2, r5, 0 - subs r2, 0x20 - movs r1, 0x80 - lsls r1, 9 - lsls r1, r2 - orrs r1, r0 - lsrs r1, 16 - adds r0, r4, 0 - bl VarSet -_08179AF0: - ldr r0, =0x0000403b - bl VarGet - lsls r0, 16 - lsrs r4, r0, 16 - ldr r0, =0x0000ffff - cmp r4, r0 - bne _08179B5A - ldr r0, =0x0000403c - bl VarGet - lsls r0, 16 - lsrs r0, 16 - cmp r0, r4 - bne _08179B5A - ldr r0, =0x0000403d - bl VarGet - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xF - bne _08179B5A - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, [r0] - ldr r0, =0x00150008 - cmp r1, r0 - beq _08179A54 - b _08179B5A - .pool -_08179B44: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x23 - bls _08179A68 - movs r0, 0x3 - bl FlagSet - movs r0, 0x2 - bl FlagReset -_08179B5A: - movs r0, 0 -_08179B5C: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8179A04 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/cable_club.s b/asm/cable_club.s index 80d9a0916..15ba76e9c 100644 --- a/asm/cable_club.s +++ b/asm/cable_club.s @@ -434,7 +434,7 @@ sub_80B2688: @ 80B2688 movs r0, 0x15 bl PlaySE ldr r0, =gUnknown_082780B3 - bl box_related_two__3 + bl ShowFieldAutoScrollMessage ldr r0, =sub_80B270C b _080B26FA .pool @@ -442,7 +442,7 @@ _080B26EC: movs r0, 0x16 bl PlaySE ldr r0, =gUnknown_08278131 - bl box_related_two__3 + bl ShowFieldAutoScrollMessage ldr r0, =sub_80B2918 _080B26FA: str r0, [r4] @@ -545,7 +545,7 @@ sub_80B275C: @ 80B275C movs r3, 0x1 bl ConvertIntToDecimalStringN ldr r0, =gUnknown_082780F2 - bl box_related_two__3 + bl ShowFieldAutoScrollMessage mov r0, r9 subs r0, 0x8 add r0, r8 @@ -598,7 +598,7 @@ sub_80B2804: @ 80B2804 beq _080B2878 _080B2852: ldr r0, =gUnknown_082780B3 - bl box_related_two__3 + bl ShowFieldAutoScrollMessage ldr r1, =gTasks lsls r0, r5, 2 adds r0, r5 @@ -719,7 +719,7 @@ sub_80B2918: @ 80B2918 cmp r0, 0x1 bhi _080B297C bl sub_800AC34 - bl textbox_close + bl HideFieldMessageBox ldr r0, =sub_80B2CB0 b _080B29E4 .pool @@ -730,7 +730,7 @@ _080B297C: bne _080B2994 _080B2984: bl sub_80097E8 - bl textbox_close + bl HideFieldMessageBox ldr r0, =sub_80B2CB0 b _080B29E4 .pool @@ -814,7 +814,7 @@ _080B2A42: _080B2A4A: bl sub_80097E8 _080B2A4E: - bl textbox_close + bl HideFieldMessageBox ldr r0, =gTasks lsls r1, r7, 2 adds r1, r7 @@ -1030,7 +1030,7 @@ sub_80B2C30: @ 80B2C30 bl sub_80B24F8 cmp r0, 0x1 beq _080B2C9C - bl sub_800A550 + bl GetBlockReceivedStatus adds r4, r0, 0 bl sub_800A9A8 lsls r4, 24 @@ -1047,7 +1047,7 @@ _080B2C5C: ldr r1, =gUnknown_02039B58 adds r0, r1 lsls r1, r4, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 lsls r2, r4, 3 subs r2, r4 @@ -1059,14 +1059,14 @@ _080B2C5C: lsls r0, 24 lsrs r4, r0, 24 _080B2C7E: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r4, r0 bcc _080B2C5C movs r0, 0 bl sub_800B330 - bl sub_800A5B4 + bl ResetBlockReceivedFlags ldr r0, =gScriptResult adds r1, r5, 0 bl task_map_chg_seq_0807EC34 @@ -1082,7 +1082,7 @@ sub_80B2CB0: @ 80B2CB0 push {r4,r5,lr} lsls r0, 24 lsrs r5, r0, 24 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _080B2CDE @@ -1151,7 +1151,7 @@ sub_80B2D2C: @ 80B2D2C bl sub_80B241C ldrb r0, [r4, 0x12] bl RemoveWindow - bl textbox_close + bl HideFieldMessageBox bl EnableBothScriptContexts adds r0, r5, 0 bl DestroyTask @@ -1361,7 +1361,7 @@ _080B2F0C: movs r0, 0 mov r8, r0 mov r9, r0 - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r5, r0, 24 movs r4, 0 @@ -1434,7 +1434,7 @@ _080B2FA8: bl DestroyTask b _080B2FC6 _080B2FB4: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _080B2FC6 @@ -1706,7 +1706,7 @@ sub_80B3220: @ 80B3220 push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0x1 bne _080B3248 @@ -1836,7 +1836,7 @@ _080B3338: bl sub_800AC34 b _080B3346 _080B333E: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] _080B3342: cmp r0, 0 @@ -1872,7 +1872,7 @@ _080B3378: lsls r2, 4 adds r0, r2, 0 strh r0, [r1] - ldr r0, =sub_8036760 + ldr r0, =CB2_InitBattle bl SetMainCallback2 ldr r1, =gMain ldr r0, =sub_80B360C @@ -1948,13 +1948,13 @@ _080B3444: ldr r1, =gUnknown_020229CC movs r0, 0 movs r2, 0x1C - bl link_0800A448 + bl SendBlock movs r0, 0x3 strh r0, [r6] b _080B3532 .pool _080B3458: - bl sub_800A550 + bl GetBlockReceivedStatus adds r4, r0, 0 bl sub_800A9D8 lsls r4, 24 @@ -1967,7 +1967,7 @@ _080B3458: .pool _080B3474: lsls r1, r4, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r0, r5, 0 adds r1, r2 ldm r1!, {r2,r3,r7} @@ -1980,11 +1980,11 @@ _080B3474: bl sub_800B524 lsls r0, r4, 24 lsrs r0, 24 - bl sub_800A5EC + bl ResetBlockReceivedFlag adds r5, 0x1C adds r4, 0x1 _080B349A: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r4, r0 @@ -2045,7 +2045,7 @@ _080B3504: lsls r3, 4 adds r0, r3, 0 strh r0, [r1] - ldr r0, =sub_8036760 + ldr r0, =CB2_InitBattle bl SetMainCallback2 ldr r1, =gMain ldr r0, =sub_80B360C @@ -2080,7 +2080,7 @@ _080B3574: beq _080B35F8 b _080B35FE _080B357A: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r3, r0, 24 movs r4, 0 @@ -2128,7 +2128,7 @@ _080B35C8: b _080B35FE .pool _080B35E0: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _080B35FE @@ -2297,13 +2297,13 @@ _080B3750: b _080B37CC _080B375A: ldr r0, =gUnknown_08278091 - bl box_related_two__2 + bl ShowFieldMessage movs r0, 0x1 strh r0, [r5, 0x8] b _080B37CC .pool _080B376C: - bl sub_809833C + bl IsFieldMessageBoxHidden lsls r0, 24 cmp r0, 0 beq _080B37CC @@ -2325,7 +2325,7 @@ _080B378C: beq _080B37B2 b _080B37CC _080B379E: - bl textbox_close + bl HideFieldMessageBox movs r0, 0 strh r0, [r5, 0x8] bl sub_80872C4 @@ -2425,7 +2425,7 @@ _080B3864: b _080B3884 .pool _080B3870: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _080B3884 @@ -2657,7 +2657,7 @@ task00_08081A90: @ 80B3A30 adds r0, r4, 0 bl DestroyTask _080B3A62: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080B3AA6 @@ -2691,7 +2691,7 @@ sub_80B3AAC: @ 80B3AAC push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _080B3AC4 @@ -2804,7 +2804,7 @@ _080B3B96: strh r0, [r5] b _080B3BB8 _080B3B9E: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0x1 bne _080B3BB8 diff --git a/asm/clear_save_data_screen.s b/asm/clear_save_data_screen.s deleted file mode 100644 index 5efff250c..000000000 --- a/asm/clear_save_data_screen.s +++ /dev/null @@ -1,399 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start c2_clear_save_data_screen_2 -c2_clear_save_data_screen_2: @ 817ACC8 - push {lr} - bl sub_817AE00 - lsls r0, 24 - cmp r0, 0 - beq _0817ACDC - ldr r0, =sub_817ACE4 - movs r1, 0 - bl CreateTask -_0817ACDC: - pop {r0} - bx r0 - .pool - thumb_func_end c2_clear_save_data_screen_2 - - thumb_func_start sub_817ACE4 -sub_817ACE4: @ 817ACE4 - push {r4,lr} - sub sp, 0xC - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - movs r1, 0 - movs r2, 0x2 - movs r3, 0xE - bl SetWindowBorderStyle - ldr r2, =gText_ClearAllSaveData - movs r0, 0x1 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - str r0, [sp, 0x8] - movs r1, 0x1 - movs r3, 0 - bl PrintTextOnWindow - ldr r0, =gUnknown_085F06D8 - movs r1, 0x2 - movs r2, 0xE - movs r3, 0x1 - bl CreateYesNoMenu - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_817AD40 - str r1, [r0] - add sp, 0xC - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_817ACE4 - - thumb_func_start sub_817AD40 -sub_817AD40: @ 817AD40 - push {r4,r5,lr} - sub sp, 0xC - lsls r0, 24 - lsrs r5, r0, 24 - bl sub_8198C58 - lsls r0, 24 - asrs r4, r0, 24 - cmp r4, 0 - beq _0817AD68 - cmp r4, 0 - bgt _0817AD62 - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - beq _0817ADA0 - b _0817ADB2 -_0817AD62: - cmp r4, 0x1 - beq _0817ADA0 - b _0817ADB2 -_0817AD68: - movs r0, 0 - movs r1, 0x11 - bl FillWindowPixelBuffer - ldr r2, =gText_ClearingData - movs r0, 0x1 - str r0, [sp] - str r4, [sp, 0x4] - str r4, [sp, 0x8] - movs r0, 0 - movs r1, 0x1 - movs r3, 0 - bl PrintTextOnWindow - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_817ADC0 - str r1, [r0] - b _0817ADB2 - .pool -_0817ADA0: - movs r0, 0x5 - bl PlaySE - adds r0, r5, 0 - bl DestroyTask - ldr r0, =sub_817AFD4 - bl SetMainCallback2 -_0817ADB2: - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_817AD40 - - thumb_func_start sub_817ADC0 -sub_817ADC0: @ 817ADC0 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl ClearSaveData - adds r0, r4, 0 - bl DestroyTask - ldr r0, =sub_817AFD4 - bl SetMainCallback2 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_817ADC0 - - thumb_func_start sub_817ADE4 -sub_817ADE4: @ 817ADE4 - push {lr} - bl RunTasks - bl UpdatePaletteFade - pop {r0} - bx r0 - thumb_func_end sub_817ADE4 - - thumb_func_start sub_817ADF4 -sub_817ADF4: @ 817ADF4 - push {lr} - bl TransferPlttBuffer - pop {r0} - bx r0 - thumb_func_end sub_817ADF4 - - thumb_func_start sub_817AE00 -sub_817AE00: @ 817AE00 - push {r4,lr} - sub sp, 0xC - ldr r0, =gMain - movs r1, 0x87 - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _0817AE18 - cmp r0, 0x1 - bne _0817AE18 - b _0817AFA4 -_0817AE18: - movs r0, 0 - bl SetVBlankCallback - movs r0, 0 - movs r1, 0 - bl SetGpuReg - movs r0, 0x10 - movs r1, 0 - bl SetGpuReg - movs r0, 0x12 - movs r1, 0 - bl SetGpuReg - movs r0, 0x1C - movs r1, 0 - bl SetGpuReg - movs r0, 0x1E - movs r1, 0 - bl SetGpuReg - movs r0, 0x40 - movs r1, 0 - bl SetGpuReg - movs r0, 0x44 - movs r1, 0 - bl SetGpuReg - movs r0, 0x48 - movs r1, 0 - bl SetGpuReg - movs r0, 0x4A - movs r1, 0 - bl SetGpuReg - movs r0, 0x50 - movs r1, 0 - bl SetGpuReg - movs r0, 0x52 - movs r1, 0 - bl SetGpuReg - movs r0, 0x54 - movs r1, 0 - bl SetGpuReg - add r0, sp, 0x4 - movs r4, 0 - strh r4, [r0] - ldr r1, =0x040000d4 - str r0, [r1] - movs r0, 0xC0 - lsls r0, 19 - str r0, [r1, 0x4] - ldr r0, =0x8100c000 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - movs r2, 0 - str r2, [sp, 0x8] - add r0, sp, 0x8 - str r0, [r1] - movs r0, 0xE0 - lsls r0, 19 - str r0, [r1, 0x4] - ldr r0, =0x85000100 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - add r0, sp, 0x4 - strh r2, [r0] - str r0, [r1] - ldr r0, =0x05000002 - str r0, [r1, 0x4] - ldr r0, =0x810001ff - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - bl ResetPaletteFade - ldr r2, =gPlttBufferUnfaded - ldr r0, =0x00007fff - strh r0, [r2] - ldr r1, =gPlttBufferFaded - strh r0, [r1] - ldr r0, =0x00003945 - strh r0, [r2, 0x2] - strh r0, [r1, 0x2] - movs r1, 0 - ldr r3, =0x06000020 - ldr r0, =0x00001111 - adds r2, r0, 0 -_0817AED4: - lsls r0, r1, 1 - adds r0, r3 - strh r2, [r0] - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0xF - bls _0817AED4 - movs r1, 0 - ldr r4, =0x0600f000 - movs r3, 0x1 - ldr r2, =0x000003ff -_0817AEEC: - lsls r0, r1, 1 - adds r0, r4 - strh r3, [r0] - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, r2 - bls _0817AEEC - bl ResetTasks - bl ResetSpriteData - movs r0, 0 - bl ResetBgsAndClearDma3BusyFlags - ldr r1, =gUnknown_085F06C0 - movs r0, 0 - movs r2, 0x2 - bl InitBgsFromTemplates - movs r1, 0x82 - lsls r1, 5 - movs r0, 0 - bl SetGpuReg - movs r0, 0 - bl ShowBg - movs r0, 0x3 - bl ShowBg - movs r0, 0x50 - movs r1, 0 - bl SetGpuReg - bl sub_817B02C - ldr r0, =0x0000ffff - str r0, [sp] - movs r1, 0 - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - movs r0, 0x1 - bl EnableInterrupts - ldr r0, =sub_817ADF4 - bl SetVBlankCallback - ldr r0, =gMain - movs r1, 0x87 - lsls r1, 3 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - b _0817AFC8 - .pool -_0817AFA4: - bl UpdatePaletteFade - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0817AFC8 - ldr r0, =sub_817ADE4 - bl SetMainCallback2 - movs r0, 0x1 - b _0817AFCA - .pool -_0817AFC8: - movs r0, 0 -_0817AFCA: - add sp, 0xC - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_817AE00 - - thumb_func_start sub_817AFD4 -sub_817AFD4: @ 817AFD4 - push {r4,lr} - sub sp, 0x4 - ldr r0, =gMain - movs r1, 0x87 - lsls r1, 3 - adds r4, r0, r1 - ldrb r0, [r4] - cmp r0, 0 - beq _0817AFEA - cmp r0, 0x1 - beq _0817B008 -_0817AFEA: - ldr r0, =0x0000ffff - str r0, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - movs r0, 0x1 - strb r0, [r4] - b _0817B020 - .pool -_0817B008: - bl UpdatePaletteFade - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0817B020 - bl FreeAllWindowBuffers - bl DoSoftReset -_0817B020: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_817AFD4 - - thumb_func_start sub_817B02C -sub_817B02C: @ 817B02C - push {lr} - ldr r0, =gUnknown_085F06C8 - bl InitWindows - bl DeactivateAllTextPrinters - movs r0, 0 - movs r1, 0 - bl FillWindowPixelBuffer - movs r0, 0 - movs r1, 0 - movs r2, 0x2 - movs r3, 0xE0 - bl sub_80987D4 - ldr r0, =gUnknown_0860F074 - movs r1, 0xF0 - movs r2, 0x20 - bl LoadPalette - pop {r0} - bx r0 - .pool - thumb_func_end sub_817B02C - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/clock.s b/asm/clock.s index 01c7e964e..5d771a8b6 100644 --- a/asm/clock.s +++ b/asm/clock.s @@ -27,8 +27,8 @@ sub_809E778: @ 809E778 .pool thumb_func_end sub_809E778 - thumb_func_start sub_809E7B0 -sub_809E7B0: @ 809E7B0 + thumb_func_start DoTimeBasedEvents +DoTimeBasedEvents: @ 809E7B0 push {r4,lr} ldr r0, =0x00000895 bl FlagGet @@ -50,7 +50,7 @@ _0809E7DA: pop {r0} bx r0 .pool - thumb_func_end sub_809E7B0 + thumb_func_end DoTimeBasedEvents thumb_func_start sub_809E7E8 sub_809E7E8: @ 809E7E8 diff --git a/asm/coins.s b/asm/coins.s index ea55dd85c..d2b6cbb47 100644 --- a/asm/coins.s +++ b/asm/coins.s @@ -5,9 +5,9 @@ .text - thumb_func_start AddCoins -@ bool8 AddCoins(u16 toAdd) -AddCoins: @ 8145C80 + thumb_func_start GiveCoins +@ bool8 GiveCoins(u16 toAdd) +GiveCoins: @ 8145C80 push {r4,lr} lsls r0, 16 lsrs r4, r0, 16 @@ -44,11 +44,11 @@ _08145CC0: pop {r1} bx r1 .pool - thumb_func_end AddCoins + thumb_func_end GiveCoins - thumb_func_start SubtractCoins -@ bool8 SubtractCoins(u16 toSub) -SubtractCoins: @ 8145CCC + thumb_func_start TakeCoins +@ bool8 TakeCoins(u16 toSub) +TakeCoins: @ 8145CCC push {r4,lr} lsls r0, 16 lsrs r4, r0, 16 @@ -69,6 +69,6 @@ _08145CEE: pop {r4} pop {r1} bx r1 - thumb_func_end SubtractCoins + thumb_func_end TakeCoins .align 2, 0 @ Don't pad with nop. diff --git a/asm/contest.s b/asm/contest.s index 71e8ab058..9c0684663 100644 --- a/asm/contest.s +++ b/asm/contest.s @@ -45,30 +45,30 @@ sub_80D7678: @ 80D7678 lsls r1, 7 movs r0, 0 bl SetGpuRegBits - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r1, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r1, [r0] - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X strh r1, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r1, [r0] - ldr r0, =gUnknown_02022E20 + ldr r0, =gBattle_BG3_X strh r1, [r0] - ldr r0, =gUnknown_02022E22 + ldr r0, =gBattle_BG3_Y strh r1, [r0] - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H strh r1, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r1, [r0] - ldr r0, =gUnknown_02022E28 + ldr r0, =gBattle_WIN1H strh r1, [r0] - ldr r0, =gUnknown_02022E2A + ldr r0, =gBattle_WIN1V strh r1, [r0] pop {r4} pop {r0} @@ -76,8 +76,8 @@ sub_80D7678: @ 80D7678 .pool thumb_func_end sub_80D7678 - thumb_func_start sub_80D7724 -sub_80D7724: @ 80D7724 + thumb_func_start LoadContestBgAfterMoveAnim +LoadContestBgAfterMoveAnim: @ 80D7724 push {r4,r5,lr} ldr r0, =gUnknown_08C17AB0 movs r1, 0xC0 @@ -119,7 +119,7 @@ _080D775E: pop {r0} bx r0 .pool - thumb_func_end sub_80D7724 + thumb_func_end LoadContestBgAfterMoveAnim thumb_func_start sub_80D779C sub_80D779C: @ 80D779C @@ -138,7 +138,7 @@ sub_80D779C: @ 80D779C _080D77BA: lsls r0, r4, 24 lsrs r0, 24 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] lsls r2, r4, 2 adds r1, 0x24 @@ -224,7 +224,7 @@ _080D7848: thumb_func_start sub_80D787C sub_80D787C: @ 80D787C push {r4-r7,lr} - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0] movs r1, 0 @@ -244,7 +244,7 @@ _080D7890: cmp r5, 0x3 ble _080D7890 movs r4, 0 - ldr r6, =gUnknown_02039F34 + ldr r6, =gContestResources movs r5, 0x3 _080D78AA: ldr r0, [r6] @@ -257,7 +257,7 @@ _080D78AA: subs r5, 0x1 cmp r5, 0 bge _080D78AA - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources movs r7, 0x4 negs r7, r7 movs r6, 0xFF @@ -287,7 +287,7 @@ _080D78CC: subs r5, 0x1 cmp r5, 0 bge _080D78CC - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0, 0x8] movs r1, 0 @@ -339,7 +339,7 @@ _080D7942: cmp r5, 0x3 ble _080D7942 bl sub_80DD590 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x1C] movs r1, 0 @@ -354,7 +354,7 @@ _080D7942: thumb_func_start sub_80D7988 sub_80D7988: @ 80D7988 push {r4,r5,lr} - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources movs r0, 0x40 bl AllocZeroed str r0, [r4] @@ -441,7 +441,7 @@ sub_80D7988: @ 80D7988 thumb_func_start sub_80D7A5C sub_80D7A5C: @ 80D7A5C push {r4,r5,lr} - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r0, [r5] ldr r0, [r0] bl Free @@ -546,8 +546,8 @@ _080D7B4E: ldr r0, =gUnknown_02039F38 strb r5, [r0] bl sub_80D7988 - bl init_uns_table_pokemon_copy - ldr r4, =gBattleSpritesGfx + bl AllocateMonSpritesGfx + ldr r4, =gMonSpritesGfxPtr ldr r0, [r4] ldr r0, [r0] bl Free @@ -590,7 +590,7 @@ _080D7BD4: strb r0, [r6] b _080D7C56 _080D7BDA: - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0] adds r0, 0x59 @@ -611,10 +611,10 @@ _080D7BF6: .pool _080D7C04: bl sub_80DE224 - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r1, [r0] movs r0, 0x2 bl BeginFastPaletteFade @@ -628,7 +628,7 @@ _080D7C04: ldr r0, =sub_80D7C7C movs r1, 0xA bl CreateTask - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r1, [r1] strb r0, [r1, 0x8] @@ -840,7 +840,7 @@ sub_80D7DE8: @ 80D7DE8 bl GetMultiplayerId adds r0, r4, 0 bl DestroyTask - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] ldrb r1, [r0, 0x8] @@ -973,7 +973,7 @@ _080D7F40: bl CopyToBgTilemapBuffer movs r0, 0x2 bl CopyBgTilemapBufferToVram - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0x2C] ldr r2, =0x0201aa04 @@ -1038,7 +1038,7 @@ _080D8004: bl sub_80DBF90 bl sub_80DB2BC bl sub_80DB120 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r1, [r1] movs r4, 0 @@ -1048,7 +1048,7 @@ _080D8004: bl sub_80DC594 bl sub_80DC5E8 bl sub_80DC7EC - ldr r1, =gBanksBySide + ldr r1, =gBanksByIdentity strb r4, [r1] movs r0, 0x1 strb r0, [r1, 0x1] @@ -1190,7 +1190,7 @@ _080D814C: strh r0, [r4, 0x8] b _080D822C _080D8176: - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y ldrh r0, [r1] adds r0, 0x7 strh r0, [r1] @@ -1256,7 +1256,7 @@ _080D81FA: b _080D822C .pool _080D8208: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] ldrb r1, [r0, 0x6] @@ -1316,51 +1316,51 @@ _080D8266: thumb_func_start vblank_cb_battle vblank_cb_battle: @ 80D827C push {lr} - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X ldrh r1, [r0] movs r0, 0x10 bl SetGpuReg - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y ldrh r1, [r0] movs r0, 0x12 bl SetGpuReg - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X ldrh r1, [r0] movs r0, 0x14 bl SetGpuReg - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y ldrh r1, [r0] movs r0, 0x16 bl SetGpuReg - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X ldrh r1, [r0] movs r0, 0x18 bl SetGpuReg - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y ldrh r1, [r0] movs r0, 0x1A bl SetGpuReg - ldr r0, =gUnknown_02022E20 + ldr r0, =gBattle_BG3_X ldrh r1, [r0] movs r0, 0x1C bl SetGpuReg - ldr r0, =gUnknown_02022E22 + ldr r0, =gBattle_BG3_Y ldrh r1, [r0] movs r0, 0x1E bl SetGpuReg - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H ldrh r1, [r0] movs r0, 0x40 bl SetGpuReg - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V ldrh r1, [r0] movs r0, 0x44 bl SetGpuReg - ldr r0, =gUnknown_02022E28 + ldr r0, =gBattle_WIN1H ldrh r1, [r0] movs r0, 0x42 bl SetGpuReg - ldr r0, =gUnknown_02022E2A + ldr r0, =gBattle_WIN1V ldrh r1, [r0] movs r0, 0x46 bl SetGpuReg @@ -1387,9 +1387,9 @@ sub_80D833C: @ 80D833C ldrsh r1, [r4, r0] cmp r1, 0 bne _080D840C - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r1, [r0] bl sub_80DCD48 ldr r1, =gPlttBufferUnfaded @@ -1401,7 +1401,7 @@ sub_80D833C: @ 80D833C str r1, [r0, 0x8] ldr r0, [r0, 0x8] ldr r0, =gStringVar1 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r1, [r1] ldrb r1, [r1, 0x1] @@ -1517,17 +1517,17 @@ sub_80D8490: @ 80D8490 lsls r0, 24 lsrs r0, 24 mov r9, r0 - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y movs r1, 0xA0 strh r1, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r1, [r0] movs r6, 0 ldr r0, =gUnknown_02039F25 mov r8, r0 - ldr r2, =gUnknown_02039E1E + ldr r2, =gUnknown_02039E00 + 30 mov r10, r2 - ldr r7, =gUnknown_02039F34 + ldr r7, =gContestResources _080D84B8: lsls r1, r6, 1 mov r0, r8 @@ -1632,7 +1632,7 @@ _080D856C: lsrs r6, r0, 24 cmp r6, 0x3 bls _080D84B8 - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0] ldrb r0, [r0] @@ -1738,7 +1738,7 @@ _080D868E: movs r0, 0 bl sub_80DC490 ldr r0, =gStringVar1 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r1, [r1] ldrb r1, [r1, 0x1] @@ -1770,10 +1770,10 @@ _080D86E4: adds r0, r4, 0 movs r1, 0 bl sub_80DEC30 - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r1, [r0] ldr r1, =gTasks lsls r0, r7, 2 @@ -1785,7 +1785,7 @@ _080D86E4: b _080D87FA .pool _080D8730: - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0] ldrb r0, [r0] @@ -1804,7 +1804,7 @@ _080D8754: subs r0, 0x1 _080D8756: strb r0, [r1] - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0] ldrb r0, [r0] @@ -1831,7 +1831,7 @@ _080D8756: b _080D87FA .pool _080D879C: - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0] ldrb r0, [r0] @@ -1851,7 +1851,7 @@ _080D87C0: adds r0, r2, 0x1 strb r0, [r1] _080D87C4: - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0] ldrb r0, [r0] @@ -1967,7 +1967,7 @@ sub_80D8894: @ 80D8894 ldr r4, =gUnknown_02039F25 ldrb r0, [r4] bl sub_80DB8B8 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldrb r2, [r4] ldr r3, [r1, 0x4] @@ -2020,7 +2020,7 @@ sub_80D892C: @ 80D892C lsrs r0, 24 bl DestroyTask ldr r2, =gTasks - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] ldrb r1, [r0, 0x8] @@ -2041,10 +2041,10 @@ sub_80D895C: @ 80D895C lsls r0, 24 lsrs r7, r0, 24 bl sub_80DB89C - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r1, [r0] movs r0, 0 bl sub_80DC490 @@ -2145,7 +2145,7 @@ sub_80D8A50: @ 80D8A50 push {lr} lsls r0, 24 lsrs r2, r0, 24 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] ldrh r1, [r0, 0x6] @@ -2184,7 +2184,7 @@ sub_80D8A88: @ 80D8A88 asrs r0, 16 cmp r0, 0x13 ble _080D8B18 - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources ldr r0, [r2] ldr r1, [r0] movs r0, 0 @@ -2217,7 +2217,7 @@ _080D8ADE: lsls r0, 24 lsrs r0, 24 bl sub_80DB8B8 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldrb r2, [r5] adds r2, r4 @@ -2259,7 +2259,7 @@ sub_80D8B38: @ 80D8B38 lsls r0, 24 lsrs r0, 24 mov r8, r0 - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources ldr r0, [r2] ldr r0, [r0] ldrb r6, [r0, 0x11] @@ -2348,7 +2348,7 @@ _080D8B84: _080D8C74: bl sub_80DCD48 movs r7, 0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0] ldr r0, [r0, 0x8] @@ -2367,7 +2367,7 @@ _080D8C92: cmp r1, r0 bne _080D8C92 _080D8C9C: - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0] strb r7, [r0, 0x11] @@ -2447,7 +2447,7 @@ _080D8D56: adds r0, r6, 0 bl sub_80DF080 bl sub_80DF750 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r6, 3 @@ -2624,7 +2624,7 @@ _080D8EF2: bl sub_80DB89C ldr r0, =gStringVar1 lsls r1, r6, 6 - ldr r2, =gUnknown_02039E02 + ldr r2, =gUnknown_02039E00 + 2 adds r1, r2 bl StringCopy mov r2, r9 @@ -2678,7 +2678,7 @@ _080D8F84: beq _080D8F92 bl _080DA100 _080D8F92: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] adds r0, 0x5A @@ -2719,7 +2719,7 @@ _080D8FB8: adds r0, r4, 0 bl sub_80DEAA8 adds r0, r4, 0 - bl move_anim_start_t1 + bl DoMoveAnim ldr r1, =gTasks mov r2, r8 lsls r0, r2, 2 @@ -2742,7 +2742,7 @@ _080D9010: _080D9024: adds r0, r6, 0 bl sub_80DE9B0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r1, [r0] ldr r0, [r1] adds r0, 0x5A @@ -3173,7 +3173,7 @@ _080D939E: cmp r7, 0x3 bgt _080D9418 ldr r5, =gUnknown_02039F26 - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources _080D93BC: movs r3, 0 str r3, [sp] @@ -3488,7 +3488,7 @@ _080D963C: movs r0, 0x64 bl PlaySE _080D9642: - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r0, [r5] ldr r1, [r0, 0x4] lsls r0, r7, 3 @@ -3562,7 +3562,7 @@ _080D96D4: bl sub_80DB89C ldr r0, =gStringVar1 lsls r1, r6, 6 - ldr r2, =gUnknown_02039E02 + ldr r2, =gUnknown_02039E00 + 2 adds r1, r2 bl StringCopy ldr r4, =gStringVar4 @@ -3588,7 +3588,7 @@ _080D971C: beq _080D9728 bl _080DA100 _080D9728: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r6, 3 @@ -3671,7 +3671,7 @@ _080D97DC: bl sub_80DB89C ldr r0, =gStringVar1 lsls r1, r6, 6 - ldr r2, =gUnknown_02039E02 + ldr r2, =gUnknown_02039E00 + 2 adds r1, r2 bl StringCopy ldr r4, =gStringVar4 @@ -3739,7 +3739,7 @@ _080D9870: bgt _080D988E bl _080DA100 _080D988E: - ldr r7, =gUnknown_02039F34 + ldr r7, =gContestResources ldr r0, [r7] ldr r1, [r0, 0x4] lsls r0, r6, 3 @@ -3809,7 +3809,7 @@ _080D9904: bl sub_80DB89C ldr r0, =gStringVar1 lsls r1, r6, 6 - ldr r2, =gUnknown_02039E02 + ldr r2, =gUnknown_02039E00 + 2 adds r1, r2 bl StringCopy ldr r4, =gStringVar4 @@ -3866,7 +3866,7 @@ _080D999E: beq _080D99A8 b _080DA100 _080D99A8: - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r0, [r5] ldr r1, [r0, 0x4] lsls r4, r6, 3 @@ -3898,7 +3898,7 @@ _080D99A8: .pool _080D99EC: bl sub_80DCD48 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0x14] lsls r0, r6, 2 @@ -3992,7 +3992,7 @@ _080D9AAE: lsls r0, r5, 24 cmp r0, 0 ble _080D9AD2 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0x4] ldr r2, [sp, 0x4] @@ -4010,10 +4010,10 @@ _080D9AD2: bl sub_80DB89C ldr r0, =gStringVar1 lsls r1, r6, 6 - ldr r2, =gUnknown_02039E02 + ldr r2, =gUnknown_02039E00 + 2 adds r1, r2 bl StringCopy - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r1, [r0] ldrb r0, [r1, 0x13] @@ -4374,14 +4374,14 @@ _080D9DC2: _080D9DD4: bl sub_80DB89C ldr r0, =gStringVar3 - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r1, [r5] ldr r1, [r1, 0x10] ldr r1, [r1] lsls r1, 20 lsrs r1, 29 lsls r1, 6 - ldr r4, =gUnknown_02039E02 + ldr r4, =gUnknown_02039E00 + 2 adds r1, r4 bl StringCopy ldr r0, =gStringVar1 @@ -4476,7 +4476,7 @@ _080D9EDC: bl sub_80DC9B4 ldr r0, =gStringVar1 lsls r1, r6, 6 - ldr r2, =gUnknown_02039E02 + ldr r2, =gUnknown_02039E00 + 2 adds r1, r2 bl StringCopy ldr r0, =gStringVar2 @@ -4626,7 +4626,7 @@ _080DA038: bl sub_80DB89C ldr r0, =gStringVar1 lsls r1, r6, 6 - ldr r2, =gUnknown_02039E02 + ldr r2, =gUnknown_02039E00 + 2 adds r1, r2 bl StringCopy ldr r4, =gStringVar4 @@ -4725,7 +4725,7 @@ sub_80DA110: @ 80DA110 push {lr} lsls r0, 24 lsrs r0, 24 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r3, [r1] ldrb r2, [r3, 0x7] @@ -4829,7 +4829,7 @@ _080DA1C6: ands r0, r1 cmp r0, 0 beq _080DA224 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0] ldrb r0, [r2, 0x7] @@ -4861,7 +4861,7 @@ _080DA224: bl sub_80DBA18 b _080DA23E _080DA22E: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] ldrb r1, [r0, 0x7] @@ -4947,7 +4947,7 @@ _080DA2BA: strh r5, [r4, 0xA] b _080DA2F6 _080DA2D2: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] ldrb r1, [r0, 0x7] @@ -5082,7 +5082,7 @@ sub_80DA3CC: @ 80DA3CC ldrsh r0, [r6, r1] cmp r0, 0 bne _080DA448 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r5, =gUnknown_02039F25 ldrb r1, [r5] @@ -5096,7 +5096,7 @@ sub_80DA3CC: @ 80DA3CC ldr r0, =gStringVar1 ldrb r1, [r5] lsls r1, 6 - ldr r2, =gUnknown_02039E02 + ldr r2, =gUnknown_02039E00 + 2 adds r1, r2 bl StringCopy ldr r5, =gStringVar4 @@ -5255,7 +5255,7 @@ sub_80DA51C: @ 80DA51C ldrh r1, [r4] movs r0, 0xC bl SetGpuReg - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources ldr r0, [r2] ldr r1, [r0] ldrb r0, [r1, 0x1] @@ -5296,7 +5296,7 @@ sub_80DA5B4: @ 80DA5B4 push {lr} lsls r0, 24 lsrs r2, r0, 24 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] ldrb r1, [r0, 0x6] @@ -5322,12 +5322,12 @@ sub_80DA5E8: @ 80DA5E8 push {r4,r5,lr} lsls r0, 24 lsrs r5, r0, 24 - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r1, [r0] - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources movs r3, 0 ldr r2, =gUnknown_02039F10 movs r1, 0x3 @@ -5350,7 +5350,7 @@ _080DA600: ands r0, r1 cmp r0, 0 bne _080DA65C - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r2, [r0] ldr r0, =gUnknown_02039F25 ldrb r1, [r0] @@ -5360,7 +5360,7 @@ _080DA600: lsls r0, 2 adds r0, r2 ldrh r0, [r0, 0x8] - bl sub_80ED03C + bl BravoTrainerPokemonProfile_BeforeInterview1 b _080DA668 .pool _080DA65C: @@ -5404,9 +5404,9 @@ sub_80DA6B4: @ 80DA6B4 cmp r4, 0 bne _080DA6EA bl sub_80DE224 - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r4, [r0] - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y movs r0, 0xA0 strh r0, [r1] movs r0, 0x62 @@ -5432,7 +5432,7 @@ sub_80DA700: @ 80DA700 push {lr} lsls r0, 24 lsrs r3, r0, 24 - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y ldrh r0, [r1] subs r0, 0x7 strh r0, [r1] @@ -5553,7 +5553,7 @@ sub_80DA7EC: @ 80DA7EC movs r3, 0x10 bl BeginNormalPaletteFade ldr r2, =gTasks - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] ldrb r1, [r0, 0x8] @@ -5587,7 +5587,7 @@ sub_80DA830: @ 80DA830 str r1, [r0] bl FreeAllWindowBuffers bl sub_80D7A5C - bl sub_805F094 + bl FreeMonSpritesGfx ldr r0, =c2_exit_to_overworld_2_switch bl SetMainCallback2 _080DA860: @@ -5667,7 +5667,7 @@ _080DA8F2: ldr r5, =gUnknown_02039F25 ldrb r0, [r5] lsls r0, 6 - ldr r4, =gUnknown_02039E0D + ldr r4, =gUnknown_02039E00 + 13 adds r0, r4 mov r1, sp movs r2, 0x8 @@ -6313,7 +6313,7 @@ _080DAE1E: movs r0, 0x4 b _080DAE9A _080DAE2E: - ldr r0, =gUnknown_02039F2C + ldr r0, =gScriptContestCategory ldrh r0, [r0] cmp r0, 0x4 bhi _080DAE82 @@ -6451,7 +6451,7 @@ sub_80DAF1C: @ 80DAF1C add r0, sp, 0x4 bl StringCopy lsls r1, r5, 6 - ldr r0, =gUnknown_02039E0D + ldr r0, =gUnknown_02039E00 + 13 adds r1, r0 add r0, sp, 0x4 bl StringAppend @@ -6508,7 +6508,7 @@ sub_80DAFA0: @ 80DAFA0 lsls r1, 24 lsrs r1, 24 lsls r0, r4, 6 - ldr r2, =gUnknown_02039E02 + ldr r2, =gUnknown_02039E00 + 2 adds r0, r2 bl sub_80DAED4 ldr r0, =gUnknown_02039F26 @@ -6741,7 +6741,7 @@ sub_80DB174: @ 80DB174 lsls r0, r5, 3 ldr r1, =gMonBackPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] ldr r1, [r1, 0x4] adds r2, r5, 0 @@ -6753,7 +6753,7 @@ _080DB1B8: lsls r0, r5, 3 ldr r1, =gMonBackPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] ldr r1, [r1, 0x4] adds r2, r5, 0 @@ -6818,7 +6818,7 @@ _080DB1CC: strh r0, [r4, 0x2E] strh r5, [r4, 0x32] adds r0, r5, 0 - bl sub_80DB2A8 + bl IsSpeciesNotUnown lsls r0, 24 cmp r0, 0 beq _080DB278 @@ -6851,8 +6851,8 @@ _080DB280: .pool thumb_func_end sub_80DB174 - thumb_func_start sub_80DB2A8 -sub_80DB2A8: @ 80DB2A8 + thumb_func_start IsSpeciesNotUnown +IsSpeciesNotUnown: @ 80DB2A8 push {lr} lsls r0, 16 lsrs r0, 16 @@ -6865,12 +6865,12 @@ _080DB2B6: _080DB2B8: pop {r1} bx r1 - thumb_func_end sub_80DB2A8 + thumb_func_end IsSpeciesNotUnown thumb_func_start sub_80DB2BC sub_80DB2BC: @ 80DB2BC push {r4-r6,lr} - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r0, [r5] ldr r0, [r0, 0x24] movs r4, 0xA0 @@ -7199,7 +7199,7 @@ sub_80DB584: @ 80DB584 movs r4, 0 movs r5, 0 _080DB58A: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x4] adds r0, r5, r0 @@ -7238,7 +7238,7 @@ sub_80DB5B8: @ 80DB5B8 lsrs r1, 24 mov r8, r1 mov r10, r8 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources mov r9, r0 ldr r0, [r0] ldr r1, [r0, 0x4] @@ -7365,7 +7365,7 @@ _080DB6B6: adds r5, r0, 0 lsls r5, 16 lsrs r5, 16 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x4] add r0, r8 @@ -7486,7 +7486,7 @@ sub_80DB798: @ 80DB798 adds r1, 0x2 lsls r1, 24 lsrs r7, r1, 24 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r2, [r1, 0x4] lsls r1, r0, 3 @@ -7647,7 +7647,7 @@ _080DB8D0: .pool _080DB8F4: ldr r2, =gUnknown_02039E00 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] ldrb r0, [r0] @@ -7674,7 +7674,7 @@ _080DB91E: lsls r0, r4, 24 lsrs r0, 24 bl sub_80DB8B8 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r1, [r1, 0x4] adds r1, r5, r1 @@ -7696,7 +7696,7 @@ sub_80DB944: @ 80DB944 mov r6, r8 push {r6,r7} sub sp, 0x8 - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources mov r4, sp movs r3, 0 movs r6, 0x3 @@ -7751,7 +7751,7 @@ _080DB9A4: movs r0, 0x4 negs r0, r0 mov r9, r0 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources mov r8, r1 movs r7, 0x3 mov r12, r7 @@ -7806,7 +7806,7 @@ _080DB9F8: thumb_func_start sub_80DBA18 sub_80DBA18: @ 80DBA18 push {r4,r5,lr} - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources movs r2, 0 movs r3, 0x3 _080DBA20: @@ -7854,7 +7854,7 @@ sub_80DBA68: @ 80DBA68 push {lr} lsls r0, 24 lsrs r0, 24 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r2, [r1, 0x4] lsls r1, r0, 3 @@ -7889,7 +7889,7 @@ sub_80DBAA0: @ 80DBAA0 mov r6, r9 mov r5, r8 push {r5-r7} - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources movs r0, 0 mov r8, r0 movs r1, 0x7 @@ -8092,7 +8092,7 @@ _080DBC1A: b _080DBAC0 _080DBC34: movs r6, 0 - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources movs r7, 0 movs r4, 0 _080DBC3C: @@ -8132,7 +8132,7 @@ _080DBC3C: adds r6, 0x1 cmp r6, 0x3 ble _080DBC3C - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0x10] ldrb r1, [r2, 0x1] @@ -8155,7 +8155,7 @@ sub_80DBCA8: @ 80DBCA8 push {lr} lsls r0, 24 lsrs r0, 24 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r2, [r1, 0x4] lsls r1, r0, 3 @@ -8456,7 +8456,7 @@ sub_80DBED4: @ 80DBED4 adds r0, r1 ldrb r1, [r0] lsls r1, 1 - ldr r0, =gUnknown_02039F2C + ldr r0, =gScriptContestCategory ldrh r0, [r0] lsls r0, 3 adds r1, r0 @@ -8516,10 +8516,10 @@ _080DBF62: thumb_func_start sub_80DBF68 sub_80DBF68: @ 80DBF68 push {lr} - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r1, [r0] bl sub_80DB89C ldr r0, =gUnknown_0827E8DA @@ -8626,7 +8626,7 @@ sub_80DC028: @ 80DC028 lsls r2, 24 lsrs r2, 24 mov r8, r2 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x14] lsls r1, r2, 2 @@ -8746,7 +8746,7 @@ _080DC126: bne _080DC15C adds r0, r7, 0 bl DestroyTask - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x14] mov r2, r9 @@ -8950,7 +8950,7 @@ _080DC2C8: movs r1, 0xB4 movs r3, 0x1 bl CreateSprite - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r2, [r1, 0x14] lsls r1, r4, 2 @@ -8970,7 +8970,7 @@ sub_80DC308: @ 80DC308 push {r4-r7,lr} lsls r0, 24 lsrs r6, r0, 24 - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r2, [r0, 0x14] lsls r3, r6, 2 @@ -9067,7 +9067,7 @@ _080DC3B0: sub_80DC3C4: @ 80DC3C4 push {r4,lr} movs r2, 0 - ldr r3, =gUnknown_02039F34 + ldr r3, =gContestResources ldr r0, [r3] ldr r0, [r0, 0x14] ldrb r1, [r0, 0x2] @@ -9114,7 +9114,7 @@ sub_80DC408: @ 80DC408 ldrsh r0, [r3, r4] cmp r1, r0 bne _080DC440 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] movs r2, 0x2E ldrsh r1, [r3, r2] @@ -9145,7 +9145,7 @@ sub_80DC44C: @ 80DC44C push {r4-r6,lr} movs r2, 0 ldr r6, =gSprites - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r4, =gUnknown_08587A6C ldr r3, =gUnknown_02039F26 _080DC458: @@ -9180,7 +9180,7 @@ sub_80DC490: @ 80DC490 movs r3, 0 ldr r7, =gUnknown_02039F26 ldr r5, =gSprites - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources movs r2, 0 _080DC4A0: adds r0, r3, r7 @@ -9231,7 +9231,7 @@ sub_80DC4F0: @ 80DC4F0 ldr r0, =gUnknown_08587B08 bl LoadSpritePalette movs r5, 0 - ldr r7, =gUnknown_02039F34 + ldr r7, =gContestResources ldr r0, =gSprites mov r8, r0 movs r6, 0 @@ -9315,7 +9315,7 @@ sub_80DC594: @ 80DC594 movs r3, 0x4 orrs r2, r3 strb r2, [r1] - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r1, [r1] adds r1, 0x58 @@ -9333,7 +9333,7 @@ sub_80DC5E8: @ 80DC5E8 bl CreateTask lsls r0, 24 lsrs r0, 24 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r1, [r1] strb r0, [r1, 0xD] @@ -9365,7 +9365,7 @@ sub_80DC630: @ 80DC630 lsls r0, 24 lsrs r0, 24 ldr r3, =gTasks - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r5, [r1] ldr r1, [r5] ldrb r2, [r1, 0xD] @@ -9430,7 +9430,7 @@ sub_80DC6A4: @ 80DC6A4 adds r0, r2 ldrb r0, [r0, 0x8] adds r5, r0, 0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r4, [r0] ldr r0, [r4] ldrb r1, [r0, 0xD] @@ -9553,7 +9553,7 @@ _080DC79C: eors r1, r2 strh r1, [r0] _080DC7AA: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] adds r0, 0x14 @@ -9590,7 +9590,7 @@ sub_80DC7EC: @ 80DC7EC ldr r0, =sub_80DC8D0 movs r1, 0x1E bl CreateTask - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r1, [r1] strb r0, [r1, 0xE] @@ -9614,7 +9614,7 @@ sub_80DC81C: @ 80DC81C lsls r0, 24 lsrs r0, 24 ldr r3, =gTasks - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r4, [r1] ldr r1, [r4] ldrb r2, [r1, 0xE] @@ -9819,7 +9819,7 @@ sub_80DC9B4: @ 80DC9B4 push {lr} lsls r0, 24 lsrs r2, r0, 24 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r2, 3 @@ -9923,7 +9923,7 @@ sub_80DC9EC: @ 80DC9EC lsls r3, 6 ldr r0, =0x0600e026 adds r3, r0 - ldr r7, =gUnknown_02039F34 + ldr r7, =gContestResources ldr r0, [r7] ldr r0, [r0, 0x34] str r0, [sp] @@ -10083,7 +10083,7 @@ sub_80DCBE8: @ 80DCBE8 lsrs r0, 24 mov r9, r0 bl sub_80DCBB4 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r1, [r0] ldr r2, =gSprites mov r8, r2 @@ -10186,7 +10186,7 @@ _080DCCCC: thumb_func_start sub_80DCCD8 sub_80DCCD8: @ 80DCCD8 push {lr} - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] movs r3, 0x30 ldrsh r2, [r0, r3] @@ -10279,7 +10279,7 @@ _080DCD7E: bls _080DCD7E movs r5, 0 _080DCD92: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r5, 3 @@ -10322,7 +10322,7 @@ _080DCDBC: bls _080DCD92 movs r5, 0 _080DCDEA: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r5, 3 @@ -10536,7 +10536,7 @@ _080DCF80: ldr r3, =gUnknown_02039F26 movs r6, 0 _080DCF90: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x4] adds r0, r6, r0 @@ -10577,7 +10577,7 @@ _080DCFCC: add r3, sp, 0x4 mov r12, r3 _080DCFE0: - ldr r6, =gUnknown_02039F34 + ldr r6, =gContestResources ldr r0, [r6] ldr r1, [r0, 0x4] lsls r0, r4, 3 @@ -10667,7 +10667,7 @@ sub_80DD080: @ 80DD080 push {r6,r7} lsls r0, 24 lsrs r6, r0, 24 - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r3, [r4] ldr r1, [r3, 0x4] lsls r7, r6, 3 @@ -10731,7 +10731,7 @@ _080DD0B4: b _080DD12C .pool _080DD110: - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0, 0x4] lsls r3, r6, 3 @@ -10789,7 +10789,7 @@ _080DD166: adds r2, 0x1 cmp r2, 0x3 ble _080DD166 - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r0, [r5] ldr r1, [r0, 0x4] subs r0, r7, r6 @@ -10819,7 +10819,7 @@ _080DD1B4: add r0, r9 ldr r0, [r0] bl _call_via_r0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0x4] subs r0, r7, r6 @@ -10855,7 +10855,7 @@ _080DD204: _080DD206: adds r0, r1 strh r0, [r2, 0x2] - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r0, [r5] ldr r1, [r0, 0x4] subs r0, r7, r6 @@ -10927,7 +10927,7 @@ _080DD206: .pool _080DD29C: ldr r2, =gContestMoves - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r0, [r5] ldr r1, [r0, 0x4] subs r0, r7, r6 @@ -10960,7 +10960,7 @@ _080DD2D8: ands r0, r1 strb r0, [r3, 0x15] _080DD2E2: - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r0, [r5] ldr r1, [r0, 0x4] subs r0, r7, r6 @@ -11071,7 +11071,7 @@ _080DD3AE: cmp r0, 0 bne _080DD3A2 _080DD3B6: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0x4] subs r0, r7, r6 @@ -11092,7 +11092,7 @@ _080DD3C4: sub_80DD3D4: @ 80DD3D4 lsls r0, 24 lsrs r0, 24 - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources ldr r2, [r2] ldr r3, [r2, 0x4] lsls r2, r0, 3 @@ -11108,7 +11108,7 @@ sub_80DD3D4: @ 80DD3D4 sub_80DD3F0: @ 80DD3F0 lsls r0, 24 lsrs r0, 24 - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources ldr r2, [r2] ldr r3, [r2, 0x4] lsls r2, r0, 3 @@ -11173,11 +11173,11 @@ sub_80DD45C: @ 80DD45C lsrs r6, r1, 24 ldr r0, =gStringVar1 lsls r1, r4, 6 - ldr r2, =gUnknown_02039E02 + ldr r2, =gUnknown_02039E00 + 2 adds r1, r2 bl StringCopy ldr r0, =gStringVar2 - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r1, [r5] ldr r2, [r1, 0x4] lsls r1, r4, 3 @@ -11265,7 +11265,7 @@ sub_80DD560: @ 80DD560 push {r4,lr} lsls r0, 24 lsrs r0, 24 - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r1, [r4] ldr r3, [r1, 0x4] lsls r1, r0, 3 @@ -11315,7 +11315,7 @@ _080DD5AC: cmp r4, 0x3 ble _080DD5AC movs r4, 0 - ldr r7, =gUnknown_02039F34 + ldr r7, =gContestResources ldr r1, [r7] mov r8, r1 adds r5, r2, 0 @@ -11422,7 +11422,7 @@ _080DD684: cmp r4, 0x3 ble _080DD5CA movs r4, 0 - ldr r6, =gUnknown_02039F34 + ldr r6, =gContestResources movs r5, 0 _080DD690: ldr r0, [r6] @@ -11483,7 +11483,7 @@ sub_80DD6DC: @ 80DD6DC strb r0, [r3] ldr r0, =SpriteCallbackDummy str r0, [r2, 0x1C] - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0] ldrb r1, [r2, 0x6] @@ -11502,7 +11502,7 @@ sub_80DD720: @ 80DD720 push {r4,r5,lr} lsls r0, 24 lsrs r1, r0, 24 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] ldrb r5, [r0, 0x12] @@ -11700,7 +11700,7 @@ _080DD8F8: adds r2, r4 ldr r0, =sub_80DD6DC str r0, [r2] - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0] ldrb r0, [r2, 0x6] @@ -11720,7 +11720,7 @@ sub_80DD940: @ 80DD940 mov r6, r8 push {r6,r7} movs r5, 0 - ldr r6, =gUnknown_02039F34 + ldr r6, =gContestResources ldr r0, =gSprites mov r9, r0 ldr r0, =0x06010000 @@ -11805,7 +11805,7 @@ sub_80DD9F0: @ 80DD9F0 ldrb r1, [r0, 0x1] lsls r1, 29 lsrs r1, 29 - ldr r0, =gUnknown_02039F2C + ldr r0, =gScriptContestCategory ldrh r2, [r0] lsls r0, r2, 2 adds r0, r2 @@ -11905,7 +11905,7 @@ _080DDACA: movs r1, 0x1 eors r0, r1 strh r0, [r4, 0xE] - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] ldrb r0, [r0, 0x13] @@ -11939,7 +11939,7 @@ sub_80DDB0C: @ 80DDB0C movs r1, 0xA bl CreateTask ldr r3, =gSprites - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r2, [r4] ldr r0, [r2] adds r0, 0x58 @@ -11981,7 +11981,7 @@ sub_80DDB6C: @ 80DDB6C lsls r0, 24 lsrs r0, 24 adds r3, r0, 0 - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0] adds r0, 0x58 @@ -12040,7 +12040,7 @@ _080DDBD4: sub_80DDBE8: @ 80DDBE8 push {r4,r5,lr} ldr r5, =gSprites - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r2, [r0] adds r0, r2, 0 @@ -12093,7 +12093,7 @@ task08_080CD1CC: @ 80DDC4C lsls r0, 24 lsrs r0, 24 adds r4, r0, 0 - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r0, [r5] ldr r0, [r0] adds r0, 0x58 @@ -12175,7 +12175,7 @@ sub_80DDCDC: @ 80DDCDC lsls r4, 24 asrs r4, 24 strh r4, [r1, 0x8] - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0] ldrb r0, [r2, 0x6] @@ -12216,7 +12216,7 @@ _080DDD4E: bl sub_80DDB0C b _080DDD64 _080DDD54: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] ldrb r1, [r0, 0x6] @@ -12241,7 +12241,7 @@ _080DDD70: movs r0, 0 strh r0, [r4, 0x1E] bl sub_80DD940 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0] ldrb r1, [r2, 0x6] @@ -12261,7 +12261,7 @@ _080DDD9C: thumb_func_start sub_80DDDA8 sub_80DDDA8: @ 80DDDA8 ldr r3, =gSprites - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r2, [r0] ldr r0, [r2] adds r0, 0x58 @@ -12292,7 +12292,7 @@ sub_80DDDA8: @ 80DDDA8 thumb_func_start sub_80DDDE4 sub_80DDDE4: @ 80DDDE4 ldr r2, =gSprites - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] adds r0, 0x58 @@ -12316,7 +12316,7 @@ sub_80DDE0C: @ 80DDE0C ldr r0, =sub_80DDE30 movs r1, 0xF bl CreateTask - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0] ldrb r0, [r2, 0x6] @@ -12383,7 +12383,7 @@ _080DDE8C: ldrsh r0, [r0, r1] cmp r0, 0x9 bne _080DDEBA - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0] ldrb r1, [r2, 0x6] @@ -12421,7 +12421,7 @@ sub_80DDED0: @ 80DDED0 cmp r4, 0 ble _080DDF1C movs r5, 0 - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources ldr r0, [r2] ldr r0, [r0] movs r1, 0x13 @@ -12433,7 +12433,7 @@ sub_80DDED0: @ 80DDED0 b _080DDF4E .pool _080DDF1C: - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources ldr r0, [r2] ldr r0, [r0] movs r1, 0x13 @@ -12458,7 +12458,7 @@ _080DDF48: movs r5, 0xC movs r3, 0 _080DDF4C: - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources _080DDF4E: ldr r1, =gTasks lsls r0, r6, 2 @@ -12536,7 +12536,7 @@ _080DDFB8: bne _080DDFFC adds r0, r5, 0 bl DestroyTask - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0] ldrb r1, [r2, 0x7] @@ -12562,7 +12562,7 @@ sub_80DE008: @ 80DE008 lsrs r0, 24 mov r10, r0 movs r5, 0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources mov r9, r0 mov r8, r9 ldr r6, =gSprites @@ -12666,7 +12666,7 @@ sub_80DE0F0: @ 80DE0F0 push {lr} lsls r0, 24 lsrs r0, 24 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r2, [r1, 0x4] lsls r1, r0, 3 @@ -12708,7 +12708,7 @@ sub_80DE12C: @ 80DE12C movs r0, 0x11 mov r9, r0 _080DE146: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] adds r0, 0xD @@ -12789,7 +12789,7 @@ sub_80DE1E8: @ 80DE1E8 push {lr} lsls r0, 24 lsrs r0, 24 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r2, [r1, 0x4] lsls r1, r0, 3 @@ -12881,10 +12881,10 @@ sub_80DE224: @ 80DE224 ldrh r1, [r5] movs r0, 0xC bl SetGpuReg - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X movs r0, 0xF0 strh r0, [r1] - ldr r4, =gUnknown_02022E1A + ldr r4, =gBattle_BG1_Y movs r0, 0xA0 strh r0, [r4] movs r0, 0x14 @@ -12896,7 +12896,7 @@ sub_80DE224: @ 80DE224 movs r0, 0 str r0, [sp, 0x8] add r0, sp, 0x8 - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r1, [r4] ldr r1, [r1, 0x28] ldr r2, =0x05000400 @@ -12963,7 +12963,7 @@ sub_80DE350: @ 80DE350 bl RequestDma3Fill movs r5, 0 str r5, [sp] - ldr r6, =gUnknown_02039F34 + ldr r6, =gContestResources ldr r0, [r6] ldr r1, [r0, 0x28] ldr r2, =0x05000400 @@ -13004,9 +13004,9 @@ sub_80DE350: @ 80DE350 ldrh r1, [r3] movs r0, 0xA bl SetGpuReg - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r5, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r5, [r0] ldr r7, =gSprites _080DE3CA: @@ -13051,10 +13051,10 @@ sub_80DE424: @ 80DE424 adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X movs r0, 0 strh r0, [r1] - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y movs r0, 0xA0 strh r0, [r1] movs r0, 0x62 @@ -13078,7 +13078,7 @@ sub_80DE464: @ 80DE464 push {lr} lsls r0, 24 lsrs r3, r0, 24 - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y ldrh r0, [r1] subs r0, 0x7 strh r0, [r1] @@ -13136,7 +13136,7 @@ _080DE4D0: _080DE4DA: movs r2, 0 adds r6, r3, 0 - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r3, =gUnknown_02039F26 _080DE4E2: ldr r0, [r5] @@ -13170,7 +13170,7 @@ _080DE52C: ands r1, r0 cmp r1, 0 beq _080DE584 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0] ldrb r0, [r2, 0x7] @@ -13201,7 +13201,7 @@ _080DE584: bl sub_80DBAA0 b _080DE59A _080DE58A: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] ldrb r1, [r0, 0x7] @@ -13233,7 +13233,7 @@ sub_80DE5C0: @ 80DE5C0 push {lr} lsls r0, 24 lsrs r2, r0, 24 - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y ldrh r0, [r1] adds r0, 0x7 strh r0, [r1] @@ -13356,7 +13356,7 @@ sub_80DE69C: @ 80DE69C mov r8, r0 movs r7, 0 ldr r6, =gSprites - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources _080DE6AE: bl AllocOamMatrix ldr r1, [r5] @@ -13450,7 +13450,7 @@ _080DE74C: adds r1, r2 mov r0, r8 strh r0, [r1, 0x8] - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0] ldrb r0, [r2, 0x7] @@ -13471,7 +13471,7 @@ sub_80DE794: @ 80DE794 lsls r0, 24 lsrs r6, r0, 24 ldr r2, =gSprites - ldr r3, =gUnknown_02039F34 + ldr r3, =gContestResources ldr r0, [r3] ldr r0, [r0, 0x14] ldrb r1, [r0] @@ -13515,7 +13515,7 @@ _080DE7CC: _080DE7EC: movs r4, 0 _080DE7EE: - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r0, [r5] ldr r1, [r0, 0x14] lsls r0, r4, 2 @@ -13583,7 +13583,7 @@ sub_80DE864: @ 80DE864 push {r4-r7,lr} lsls r0, 24 lsrs r7, r0, 24 - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r1, [r0, 0x4] lsls r0, r7, 3 @@ -13606,7 +13606,7 @@ sub_80DE864: @ 80DE864 movs r1, 0 movs r2, 0x14 bl memset - bl sub_80A3934 + bl ClearBattleAnimationVars ldr r1, =gBattleMonForms movs r2, 0 adds r0, r1, 0x3 @@ -13662,12 +13662,12 @@ _080DE8FA: cmp r0, 0x7 bne _080DE99C _080DE910: - ldr r1, =gUnknown_02038432 + ldr r1, =gAnimMoveTurn movs r0, 0 b _080DE9A0 .pool _080DE920: - ldr r6, =gUnknown_02039F34 + ldr r6, =gContestResources ldr r0, [r6] ldr r1, [r0, 0x4] lsls r0, r7, 3 @@ -13695,17 +13695,17 @@ _080DE920: b _080DE9A2 .pool _080DE960: - ldr r1, =gHappinessMoveAnim + ldr r1, =gAnimFriendship movs r0, 0xFF b _080DE9A0 .pool _080DE96C: - ldr r1, =gHappinessMoveAnim + ldr r1, =gAnimFriendship movs r0, 0 b _080DE9A0 .pool _080DE978: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0] adds r2, r0, 0 @@ -13715,12 +13715,12 @@ _080DE978: bne _080DE99C movs r0, 0x2 strb r0, [r2] - ldr r0, =gUnknown_02038432 + ldr r0, =gAnimMoveTurn strb r1, [r0] b _080DE9A2 .pool _080DE99C: - ldr r1, =gUnknown_02038432 + ldr r1, =gAnimMoveTurn movs r0, 0x1 _080DE9A0: strb r0, [r1] @@ -13735,7 +13735,7 @@ _080DE9A2: thumb_func_start sub_80DE9B0 sub_80DE9B0: @ 80DE9B0 push {r4,lr} - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0, 0x18] movs r1, 0 @@ -13763,7 +13763,7 @@ sub_80DE9DC: @ 80DE9DC adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r6, =gUnknown_02039F34 + ldr r6, =gContestResources ldr r0, [r6] ldr r0, [r0, 0x18] strb r4, [r0, 0x5] @@ -14260,7 +14260,7 @@ _080DEDE6: b _080DEF90 .pool _080DEE00: - ldr r0, =gUnknown_02039F2C + ldr r0, =gScriptContestCategory ldrh r0, [r0] cmp r0, 0x4 bhi _080DEE4C @@ -14383,7 +14383,7 @@ _080DEF02: mov r2, r9 lsls r1, r2, 5 adds r0, r1 - ldr r1, =gUnknown_02039F2C + ldr r1, =gScriptContestCategory ldrh r1, [r1] ldr r3, =0x00002e9a adds r0, r3 @@ -14485,7 +14485,7 @@ _080DEFE6: b _080DF03A .pool _080DEFF8: - ldr r0, =gUnknown_02039F2C + ldr r0, =gScriptContestCategory ldrh r0, [r0] cmp r0, 0x4 bhi _080DF038 @@ -14558,7 +14558,7 @@ sub_80DF080: @ 80DF080 push {r4-r7,lr} lsls r0, 24 lsrs r4, r0, 24 - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources ldr r3, [r2] ldr r5, [r3, 0x10] ldrb r1, [r5, 0x1] @@ -14810,7 +14810,7 @@ sub_80DF250: @ 80DF250 movs r0, 0 str r0, [sp, 0x20] movs r4, 0 - ldr r6, =gUnknown_02039F34 + ldr r6, =gContestResources mov r2, sp adds r2, 0xC str r2, [sp, 0x28] @@ -14871,7 +14871,7 @@ _080DF2C2: subs r2, r0 cmp r2, 0x32 bgt _080DF2EE - ldr r7, =gUnknown_02039F34 + ldr r7, =gContestResources ldr r0, [r7] ldr r2, [r0, 0x1C] add r2, r9 @@ -14880,7 +14880,7 @@ _080DF2C2: orrs r0, r1 strb r0, [r2, 0xD] _080DF2EE: - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r0, [r1] ldr r0, [r0, 0x1C] mov r3, r9 @@ -14926,7 +14926,7 @@ _080DF336: ldrb r0, [r0] cmp r0, 0 beq _080DF354 - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources ldr r0, [r2] ldr r2, [r0, 0x1C] add r2, r9 @@ -14978,7 +14978,7 @@ _080DF38E: mov r2, r8 cmp r2, 0 bne _080DF3B4 - ldr r3, =gUnknown_02039F34 + ldr r3, =gContestResources ldr r0, [r3] ldr r2, [r0, 0x1C] add r2, r9 @@ -14987,7 +14987,7 @@ _080DF38E: orrs r0, r1 strb r0, [r2, 0xD] _080DF3B4: - ldr r6, =gUnknown_02039F34 + ldr r6, =gContestResources ldr r0, [r6] ldr r0, [r0, 0x1C] mov r7, r9 @@ -15031,7 +15031,7 @@ _080DF3EA: ldr r2, [sp, 0x28] strb r0, [r2, 0x5] movs r4, 0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] mov r8, r0 ldr r7, [sp, 0x30] @@ -15046,7 +15046,7 @@ _080DF40E: mov r12, r4 cmp r0, 0 beq _080DF450 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r6, [r0] ldr r3, [sp, 0x28] mov r4, sp @@ -15123,7 +15123,7 @@ _080DF4B6: bne _080DF478 _080DF4C0: bl Random - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r4, [r1, 0x1C] ldr r1, [sp, 0x30] @@ -15167,7 +15167,7 @@ sub_80DF4F8: @ 80DF4F8 _080DF514: movs r7, 0 movs r3, 0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources mov r12, r0 _080DF51C: adds r0, r3, r1 @@ -15253,7 +15253,7 @@ _080DF5A0: bl __modsi3 lsls r0, 24 lsrs r5, r0, 24 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x1C] add r0, r8 @@ -15295,7 +15295,7 @@ _080DF5F6: bne _080DF628 mov r0, sp strb r1, [r0] - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r0, [r1] ldr r0, [r0, 0x1C] ldrb r4, [r0, 0x1D] @@ -15306,7 +15306,7 @@ _080DF628: mov r1, sp movs r0, 0 strb r0, [r1] - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r0, [r1] ldr r0, [r0, 0x1C] ldrb r4, [r0, 0xD] @@ -15360,7 +15360,7 @@ _080DF682: ldrb r6, [r0] movs r2, 0x80 movs r3, 0 - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r0, [r5] ldr r0, [r0, 0x1C] lsls r1, r6, 4 @@ -15385,21 +15385,21 @@ _080DF6AE: beq _080DF6AE _080DF6C4: mov r0, r9 - bl sub_80ECDA4 + bl ContestLiveUpdates_BeforeInterview_1 mov r0, r10 - bl sub_80ECDF4 + bl ContestLiveUpdates_BeforeInterview_2 ldr r5, [sp, 0x4] lsrs r0, r5, 24 - bl sub_80ECE34 - ldr r0, =gUnknown_02039F34 + bl ContestLiveUpdates_BeforeInterview_3 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x1C] add r0, r8 ldrh r0, [r0, 0xA] - bl sub_80ECE74 + bl ContestLiveUpdates_BeforeInterview_4 adds r0, r4, 0 adds r1, r6, 0 - bl sub_80ECEB4 + bl ContestLiveUpdates_BeforeInterview_5 _080DF6EE: add sp, 0xC pop {r3-r5} @@ -15519,7 +15519,7 @@ _080DF7AE: movs r2, 0x5 movs r3, 0x1 bl sub_80DEBD0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0x1C] lsls r0, r7, 4 @@ -15606,7 +15606,7 @@ _080DF884: add r0, sp, 0x4 ldr r1, =gText_BDot bl StringCopy - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0x1C] lsls r0, r7, 4 diff --git a/asm/contest_ai.s b/asm/contest_ai.s index f28492886..a213c393c 100644 --- a/asm/contest_ai.s +++ b/asm/contest_ai.s @@ -10,7 +10,7 @@ sub_81562C4: @ 81562C4 push {r4,r5,lr} lsls r0, 24 lsrs r5, r0, 24 - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0, 0xC] movs r1, 0 @@ -57,7 +57,7 @@ _081562DE: thumb_func_start sub_8156324 sub_8156324: @ 8156324 push {r4-r6,lr} - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r0, [r1] ldr r0, [r0, 0xC] ldr r0, [r0, 0x14] @@ -98,7 +98,7 @@ _0815636C: bl Random adds r5, r0, 0 ands r5, r6 - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r1, [r0, 0xC] adds r0, r1, 0x5 @@ -135,7 +135,7 @@ sub_81563B0: @ 81563B0 push {r4-r7,lr} mov r7, r8 push {r7} - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r0, [r5] ldr r0, [r0, 0xC] ldrb r0, [r0] @@ -144,7 +144,7 @@ sub_81563B0: @ 81563B0 beq _081564A0 adds r7, r5, 0 ldr r6, =gAIScriptPtr - ldr r0, =gUnknown_02039E1E + ldr r0, =gUnknown_02039E00 + 30 mov r8, r0 _081563CC: ldr r0, [r7] @@ -211,7 +211,7 @@ _08156444: orrs r0, r1 strb r0, [r2, 0x9] _08156458: - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources ldr r0, [r2] ldr r3, [r0, 0xC] ldrb r1, [r3, 0x9] @@ -263,7 +263,7 @@ sub_81564AC: @ 81564AC lsls r0, 24 lsrs r2, r0, 24 movs r1, 0 - ldr r3, =gUnknown_02039F34 + ldr r3, =gContestResources ldr r0, [r3] ldr r0, [r0, 0x8] b _081564CC @@ -289,7 +289,7 @@ _081564D2: thumb_func_start sub_81564DC sub_81564DC: @ 81564DC push {r4,lr} - ldr r3, =gUnknown_02039F34 + ldr r3, =gContestResources ldr r0, [r3] ldr r0, [r0, 0xC] adds r1, r0, 0x5 @@ -331,7 +331,7 @@ _08156516: thumb_func_start sub_8156530 sub_8156530: @ 8156530 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0xC] ldr r0, [r0] @@ -349,7 +349,7 @@ sub_8156530: @ 8156530 sub_8156550: @ 8156550 push {lr} bl sub_8156530 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -384,7 +384,7 @@ _08156590: sub_8156594: @ 8156594 push {lr} bl sub_8156530 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -419,7 +419,7 @@ _081565D4: sub_81565D8: @ 81565D8 push {lr} bl sub_8156530 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -454,7 +454,7 @@ _08156618: sub_815661C: @ 815661C push {lr} bl sub_8156530 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -487,7 +487,7 @@ _0815665C: thumb_func_start sub_8156660 sub_8156660: @ 8156660 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0xC] ldr r0, [r0] @@ -507,7 +507,7 @@ sub_8156660: @ 8156660 sub_8156684: @ 8156684 push {lr} bl sub_8156660 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -542,7 +542,7 @@ _081566C4: sub_81566C8: @ 81566C8 push {lr} bl sub_8156660 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -577,7 +577,7 @@ _08156708: sub_815670C: @ 815670C push {lr} bl sub_8156660 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -612,7 +612,7 @@ _0815674C: sub_8156750: @ 8156750 push {lr} bl sub_8156660 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -645,7 +645,7 @@ _08156790: thumb_func_start sub_8156794 sub_8156794: @ 8156794 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r0, [r0, 0x8] @@ -667,7 +667,7 @@ sub_8156794: @ 8156794 sub_81567BC: @ 81567BC push {lr} bl sub_8156794 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -702,7 +702,7 @@ _081567FC: sub_8156800: @ 8156800 push {lr} bl sub_8156794 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -737,7 +737,7 @@ _08156840: sub_8156844: @ 8156844 push {lr} bl sub_8156794 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -772,7 +772,7 @@ _08156884: sub_8156888: @ 8156888 push {lr} bl sub_8156794 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -806,7 +806,7 @@ _081568C8: thumb_func_start sub_81568CC sub_81568CC: @ 81568CC push {r4,lr} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r4, [r0, 0xC] adds r1, r4, 0 @@ -839,7 +839,7 @@ sub_81568CC: @ 81568CC sub_815690C: @ 815690C push {lr} bl sub_81568CC - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -874,7 +874,7 @@ _0815694C: sub_8156950: @ 8156950 push {lr} bl sub_81568CC - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -909,7 +909,7 @@ _08156990: sub_8156994: @ 8156994 push {lr} bl sub_81568CC - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -944,7 +944,7 @@ _081569D4: sub_81569D8: @ 81569D8 push {lr} bl sub_81568CC - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -977,7 +977,7 @@ _08156A18: thumb_func_start sub_8156A1C sub_8156A1C: @ 8156A1C - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r3, [r0, 0xC] adds r1, r3, 0 @@ -1002,7 +1002,7 @@ sub_8156A1C: @ 8156A1C sub_8156A48: @ 8156A48 push {r4,r5,lr} bl sub_8156A1C - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -1043,7 +1043,7 @@ _08156A90: sub_8156A98: @ 8156A98 push {r4,r5,lr} bl sub_8156A1C - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -1084,7 +1084,7 @@ _08156AE0: sub_8156AE8: @ 8156AE8 push {r4,r5,lr} bl sub_8156A1C - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -1125,7 +1125,7 @@ _08156B30: sub_8156B38: @ 8156B38 push {r4,r5,lr} bl sub_8156A1C - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -1164,7 +1164,7 @@ _08156B80: thumb_func_start sub_8156B88 sub_8156B88: @ 8156B88 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r1, =gUnknown_02039F00 @@ -1187,7 +1187,7 @@ sub_8156B88: @ 8156B88 sub_8156BB4: @ 8156BB4 push {r4,r5,lr} bl sub_8156B88 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -1228,7 +1228,7 @@ _08156BFC: sub_8156C04: @ 8156C04 push {r4,r5,lr} bl sub_8156B88 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -1269,7 +1269,7 @@ _08156C4C: sub_8156C54: @ 8156C54 push {r4,r5,lr} bl sub_8156B88 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -1310,7 +1310,7 @@ _08156C9C: sub_8156CA4: @ 8156CA4 push {r4,r5,lr} bl sub_8156B88 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -1349,10 +1349,10 @@ _08156CEC: thumb_func_start sub_8156CF4 sub_8156CF4: @ 8156CF4 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0xC] - ldr r0, =gUnknown_02039F2C + ldr r0, =gScriptContestCategory ldrh r0, [r0] strh r0, [r1, 0x18] ldr r1, =gAIScriptPtr @@ -1367,7 +1367,7 @@ sub_8156CF4: @ 8156CF4 sub_8156D18: @ 8156D18 push {lr} bl sub_8156CF4 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -1402,7 +1402,7 @@ _08156D58: sub_8156D5C: @ 8156D5C push {lr} bl sub_8156CF4 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -1437,7 +1437,7 @@ _08156D9C: sub_8156DA0: @ 8156DA0 push {r4,lr} ldr r2, =gUnknown_02039E00 - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0, 0xC] ldrb r1, [r0, 0x4] @@ -1469,7 +1469,7 @@ sub_8156DA0: @ 8156DA0 sub_8156DE4: @ 8156DE4 push {r4,lr} bl sub_8156DA0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] ldr r3, =gAIScriptPtr @@ -1506,7 +1506,7 @@ _08156E24: sub_8156E2C: @ 8156E2C push {r4,lr} bl sub_8156DA0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] ldr r3, =gAIScriptPtr @@ -1543,7 +1543,7 @@ _08156E6C: sub_8156E74: @ 8156E74 push {r4,lr} bl sub_8156DA0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] ldr r3, =gAIScriptPtr @@ -1580,7 +1580,7 @@ _08156EB4: sub_8156EBC: @ 8156EBC push {r4,lr} bl sub_8156DA0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] ldr r3, =gAIScriptPtr @@ -1616,7 +1616,7 @@ _08156EFC: thumb_func_start sub_8156F04 sub_8156F04: @ 8156F04 ldr r2, =gUnknown_02039E00 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r3, [r0, 0xC] ldrb r1, [r3, 0x4] @@ -1646,7 +1646,7 @@ sub_8156F04: @ 8156F04 sub_8156F44: @ 8156F44 push {lr} bl sub_8156F04 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -1681,7 +1681,7 @@ _08156F84: sub_8156F88: @ 8156F88 push {lr} bl sub_8156F04 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -1715,7 +1715,7 @@ _08156FC8: thumb_func_start sub_8156FCC sub_8156FCC: @ 8156FCC ldr r2, =gUnknown_02039E00 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r3, [r0, 0xC] ldrb r1, [r3, 0x4] @@ -1749,7 +1749,7 @@ sub_8156FCC: @ 8156FCC sub_8157018: @ 8157018 push {lr} bl sub_8156FCC - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -1784,7 +1784,7 @@ _08157058: sub_815705C: @ 815705C push {lr} bl sub_8156FCC - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -1819,7 +1819,7 @@ _0815709C: sub_81570A0: @ 81570A0 push {r4-r7,lr} ldr r2, =gUnknown_02039E00 - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r0, [r5] ldr r1, [r0, 0xC] ldrb r0, [r1, 0x4] @@ -1887,7 +1887,7 @@ _0815711A: sub_815712C: @ 815712C push {lr} bl sub_81570A0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -1924,7 +1924,7 @@ _0815716C: sub_8157174: @ 8157174 push {r4-r7,lr} ldr r2, =gUnknown_02039E00 - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r0, [r5] ldr r1, [r0, 0xC] ldrb r0, [r1, 0x4] @@ -1992,7 +1992,7 @@ _081571EE: sub_8157200: @ 8157200 push {lr} bl sub_8157174 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2029,7 +2029,7 @@ _08157240: sub_8157248: @ 8157248 push {r4,lr} ldr r2, =gUnknown_02039E00 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r4, [r0, 0xC] ldrb r1, [r4, 0x4] @@ -2069,7 +2069,7 @@ sub_8157248: @ 8157248 sub_81572A4: @ 81572A4 push {lr} bl sub_8157248 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2104,7 +2104,7 @@ _081572E4: sub_81572E8: @ 81572E8 push {lr} bl sub_8157248 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2139,7 +2139,7 @@ _08157328: sub_815732C: @ 815732C push {lr} bl sub_8157248 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2174,7 +2174,7 @@ _0815736C: sub_8157370: @ 8157370 push {lr} bl sub_8157248 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2209,7 +2209,7 @@ _081573B0: sub_81573B4: @ 81573B4 push {r4,lr} ldr r2, =gUnknown_02039E00 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r4, [r0, 0xC] ldrb r1, [r4, 0x4] @@ -2249,7 +2249,7 @@ sub_81573B4: @ 81573B4 sub_8157410: @ 8157410 push {lr} bl sub_81573B4 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2284,7 +2284,7 @@ _08157450: sub_8157454: @ 8157454 push {lr} bl sub_81573B4 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2319,7 +2319,7 @@ _08157494: sub_8157498: @ 8157498 push {lr} bl sub_81573B4 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2354,7 +2354,7 @@ _081574D8: sub_81574DC: @ 81574DC push {lr} bl sub_81573B4 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2389,7 +2389,7 @@ _0815751C: sub_8157520: @ 8157520 push {r4,r5,lr} ldr r3, =gUnknown_02039E00 - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r4, [r5] ldr r1, [r4, 0xC] ldrb r0, [r1, 0x4] @@ -2435,7 +2435,7 @@ _08157560: sub_8157578: @ 8157578 push {lr} bl sub_8157520 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2470,7 +2470,7 @@ _081575B8: sub_81575BC: @ 81575BC push {lr} bl sub_8157520 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2505,7 +2505,7 @@ _081575FC: sub_8157600: @ 8157600 push {lr} bl sub_8157520 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2540,7 +2540,7 @@ _08157640: sub_8157644: @ 8157644 push {lr} bl sub_8157520 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2576,7 +2576,7 @@ sub_8157688: @ 8157688 push {r4-r6,lr} movs r3, 0 ldr r2, =gUnknown_02039E00 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] ldrb r1, [r0, 0x4] @@ -2592,7 +2592,7 @@ sub_8157688: @ 8157688 adds r6, r2, 0 _081576AA: lsls r1, r4, 1 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] adds r0, 0x41 @@ -2619,7 +2619,7 @@ _081576D2: _081576DC: movs r3, 0x1 _081576DE: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] strh r3, [r0, 0x18] @@ -2637,7 +2637,7 @@ _081576DE: sub_8157700: @ 8157700 push {lr} bl sub_8157688 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2674,7 +2674,7 @@ _08157740: sub_8157748: @ 8157748 push {lr} bl sub_8157688 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2712,7 +2712,7 @@ sub_8157790: @ 8157790 push {r4-r6,lr} movs r3, 0 ldr r2, =gUnknown_02039E00 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] ldrb r1, [r0, 0x4] @@ -2728,7 +2728,7 @@ sub_8157790: @ 8157790 adds r6, r2, 0 _081577B2: lsls r1, r4, 1 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] adds r0, 0x41 @@ -2754,7 +2754,7 @@ _081577D8: _081577E2: movs r3, 0x1 _081577E4: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] strh r3, [r0, 0x18] @@ -2772,7 +2772,7 @@ _081577E4: sub_8157808: @ 8157808 push {lr} bl sub_8157790 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2809,7 +2809,7 @@ _08157848: sub_8157850: @ 8157850 push {lr} bl sub_8157790 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2847,7 +2847,7 @@ sub_8157898: @ 8157898 push {r4-r6,lr} movs r5, 0 ldr r3, =gUnknown_02039E00 - ldr r6, =gUnknown_02039F34 + ldr r6, =gContestResources ldr r4, [r6] ldr r1, [r4, 0xC] ldrb r0, [r1, 0x4] @@ -2893,7 +2893,7 @@ _081578D6: sub_81578F8: @ 81578F8 push {lr} bl sub_8157898 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2930,7 +2930,7 @@ _08157938: sub_8157940: @ 8157940 push {lr} bl sub_8157898 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -2972,7 +2972,7 @@ sub_8157988: @ 8157988 bl sub_81564AC lsls r0, 24 lsrs r0, 24 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r5, [r1, 0xC] ldr r2, [r1, 0x4] @@ -3000,7 +3000,7 @@ sub_8157988: @ 8157988 sub_81579CC: @ 81579CC push {lr} bl sub_8157988 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3035,7 +3035,7 @@ _08157A0C: sub_8157A10: @ 8157A10 push {lr} bl sub_8157988 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3070,7 +3070,7 @@ _08157A50: sub_8157A54: @ 8157A54 push {lr} bl sub_8157988 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3105,7 +3105,7 @@ _08157A94: sub_8157A98: @ 8157A98 push {lr} bl sub_8157988 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3152,7 +3152,7 @@ sub_8157ADC: @ 8157ADC cmp r0, 0 beq _08157B18 ldr r2, =gContestMoves - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r4, 3 @@ -3167,7 +3167,7 @@ sub_8157ADC: @ 8157ADC orrs r0, r1 lsrs r6, r0, 31 _08157B18: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] strh r6, [r0, 0x18] @@ -3184,7 +3184,7 @@ _08157B18: sub_8157B38: @ 8157B38 push {lr} bl sub_8157ADC - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3219,7 +3219,7 @@ _08157B78: sub_8157B7C: @ 8157B7C push {lr} bl sub_8157ADC - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3254,7 +3254,7 @@ _08157BBC: sub_8157BC0: @ 8157BC0 push {lr} bl sub_8157ADC - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3289,7 +3289,7 @@ _08157C00: sub_8157C04: @ 8157C04 push {lr} bl sub_8157ADC - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3333,14 +3333,14 @@ sub_8157C48: @ 8157C48 lsls r0, 24 cmp r0, 0 beq _08157C74 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0xC] movs r0, 0 b _08157C7C .pool _08157C74: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0xC] movs r0, 0x1 @@ -3359,7 +3359,7 @@ _08157C7C: sub_8157C94: @ 8157C94 push {lr} bl sub_8157C48 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3396,7 +3396,7 @@ _08157CD4: sub_8157CDC: @ 8157CDC push {lr} bl sub_8157C48 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3438,7 +3438,7 @@ sub_8157D24: @ 8157D24 bl sub_81564AC lsls r0, 24 lsrs r0, 24 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r3, [r1, 0xC] ldr r2, [r1, 0x4] @@ -3463,7 +3463,7 @@ sub_8157D24: @ 8157D24 sub_8157D60: @ 8157D60 push {lr} bl sub_8157D24 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3500,7 +3500,7 @@ _08157DA0: sub_8157DA8: @ 8157DA8 push {lr} bl sub_8157D24 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3542,7 +3542,7 @@ sub_8157DF0: @ 8157DF0 bl sub_81564AC lsls r0, 24 lsrs r0, 24 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r5, [r1, 0xC] ldr r3, [r1, 0x4] @@ -3574,7 +3574,7 @@ sub_8157DF0: @ 8157DF0 sub_8157E3C: @ 8157E3C push {lr} bl sub_8157DF0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3611,7 +3611,7 @@ _08157E7C: sub_8157E84: @ 8157E84 push {lr} bl sub_8157DF0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3648,7 +3648,7 @@ _08157EC4: sub_8157ECC: @ 8157ECC push {lr} bl sub_8157DF0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3685,7 +3685,7 @@ _08157F0C: sub_8157F14: @ 8157F14 push {lr} bl sub_8157DF0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3726,7 +3726,7 @@ sub_8157F5C: @ 8157F5C ldrb r0, [r0, 0x1] bl sub_81564AC lsls r0, 24 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r3, [r1, 0xC] ldr r2, =gUnknown_02039F00 @@ -3754,7 +3754,7 @@ sub_8157F5C: @ 8157F5C sub_8157FA0: @ 8157FA0 push {lr} bl sub_8157F5C - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3791,7 +3791,7 @@ _08157FE0: sub_8157FE8: @ 8157FE8 push {lr} bl sub_8157F5C - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3828,7 +3828,7 @@ _08158028: sub_8158030: @ 8158030 push {lr} bl sub_8157F5C - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3865,7 +3865,7 @@ _08158070: sub_8158078: @ 8158078 push {lr} bl sub_8157F5C - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3908,7 +3908,7 @@ sub_81580C0: @ 81580C0 lsls r0, 24 ldr r3, [r5] ldrb r2, [r3, 0x2] - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r4, [r1] ldr r1, [r4] lsrs r0, 23 @@ -3935,7 +3935,7 @@ sub_81580C0: @ 81580C0 sub_8158108: @ 8158108 push {lr} bl sub_81580C0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -3970,7 +3970,7 @@ _08158148: sub_815814C: @ 815814C push {lr} bl sub_81580C0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -4005,7 +4005,7 @@ _0815818C: sub_8158190: @ 8158190 push {lr} bl sub_81580C0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -4040,7 +4040,7 @@ _081581D0: sub_81581D4: @ 81581D4 push {lr} bl sub_81580C0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -4082,7 +4082,7 @@ sub_8158218: @ 8158218 lsrs r0, 24 ldr r3, [r5] ldrb r2, [r3, 0x2] - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r4, [r1] ldr r1, [r4] lsls r2, 2 @@ -4105,7 +4105,7 @@ sub_8158218: @ 8158218 sub_8158254: @ 8158254 push {lr} bl sub_8158218 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -4140,7 +4140,7 @@ _08158294: sub_8158298: @ 8158298 push {lr} bl sub_8158218 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -4175,7 +4175,7 @@ _081582D8: sub_81582DC: @ 81582DC push {lr} bl sub_8158218 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -4210,7 +4210,7 @@ _0815831C: sub_8158320: @ 8158320 push {lr} bl sub_8158218 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -4251,7 +4251,7 @@ sub_8158364: @ 8158364 lsls r0, 24 ldr r3, [r5] ldrb r2, [r3, 0x2] - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r4, [r1] ldr r1, [r4] lsrs r0, 23 @@ -4282,7 +4282,7 @@ sub_8158364: @ 8158364 sub_81583B8: @ 81583B8 push {lr} bl sub_8158364 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -4317,7 +4317,7 @@ _081583F8: sub_81583FC: @ 81583FC push {lr} bl sub_8158364 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -4351,7 +4351,7 @@ _0815843C: thumb_func_start sub_8158440 sub_8158440: @ 8158440 push {r4,lr} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r3, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -4374,7 +4374,7 @@ sub_8158440: @ 8158440 thumb_func_start sub_815846C sub_815846C: @ 815846C push {r4,lr} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r3, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -4399,7 +4399,7 @@ sub_815846C: @ 815846C thumb_func_start sub_815849C sub_815849C: @ 815849C push {r4,lr} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -4427,7 +4427,7 @@ sub_815849C: @ 815849C thumb_func_start sub_81584D4 sub_81584D4: @ 81584D4 push {r4,lr} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -4454,7 +4454,7 @@ sub_81584D4: @ 81584D4 thumb_func_start sub_8158508 sub_8158508: @ 8158508 push {r4,lr} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -4481,7 +4481,7 @@ sub_8158508: @ 8158508 thumb_func_start sub_815853C sub_815853C: @ 815853C push {r4,lr} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -4524,7 +4524,7 @@ _08158586: thumb_func_start sub_815858C sub_815858C: @ 815858C push {r4,lr} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -4567,7 +4567,7 @@ _081585D6: thumb_func_start sub_81585DC sub_81585DC: @ 81585DC push {r4,lr} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -4610,7 +4610,7 @@ _08158626: thumb_func_start sub_815862C sub_815862C: @ 815862C push {r4,lr} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -4653,7 +4653,7 @@ _08158676: thumb_func_start sub_815867C sub_815867C: @ 815867C push {r4,r5,lr} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -4696,7 +4696,7 @@ _081586C8: thumb_func_start sub_81586D0 sub_81586D0: @ 81586D0 push {r4,r5,lr} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -4739,7 +4739,7 @@ _0815871C: thumb_func_start sub_8158724 sub_8158724: @ 8158724 push {r4,r5,lr} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -4782,7 +4782,7 @@ _08158770: thumb_func_start sub_8158778 sub_8158778: @ 8158778 push {r4,r5,lr} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -4828,7 +4828,7 @@ sub_81587CC: @ 81587CC bl Random movs r2, 0xFF ands r2, r0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -4869,7 +4869,7 @@ sub_815881C: @ 815881C bl Random movs r2, 0xFF ands r2, r0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0xC] ldr r4, =gAIScriptPtr @@ -4955,7 +4955,7 @@ sub_81588BC: @ 81588BC lsls r0, 24 cmp r0, 0 bne _081588D6 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0xC] ldrb r1, [r2, 0x9] @@ -4971,7 +4971,7 @@ _081588D6: thumb_func_start sub_81588E0 sub_81588E0: @ 81588E0 push {r4,lr} - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r1, [r1] ldr r3, [r1, 0xC] adds r4, r3, 0 @@ -4993,7 +4993,7 @@ sub_81588E0: @ 81588E0 thumb_func_start sub_8158908 sub_8158908: @ 8158908 push {lr} - ldr r3, =gUnknown_02039F34 + ldr r3, =gContestResources ldr r0, [r3] ldr r0, [r0, 0xC] adds r1, r0, 0 @@ -5030,10 +5030,10 @@ sub_8158948: @ 8158948 push {r4-r6,lr} movs r5, 0 movs r4, 0 - ldr r6, =gUnknown_02039E1E + ldr r6, =gUnknown_02039E00 + 30 _08158950: lsls r1, r4, 1 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] adds r0, 0x41 @@ -5057,7 +5057,7 @@ _08158980: cmp r4, 0x3 ble _08158950 _08158986: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] strh r5, [r0, 0x18] @@ -5075,7 +5075,7 @@ _08158986: sub_81589A4: @ 81589A4 push {lr} bl sub_8158948 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -5112,7 +5112,7 @@ _081589E4: sub_81589EC: @ 81589EC push {lr} bl sub_8158948 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -5158,7 +5158,7 @@ sub_8158A34: @ 8158A34 movs r4, 0 ldr r0, =gUnknown_02039E00 mov r12, r0 - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources ldr r0, [r2] ldr r0, [r0, 0xC] adds r0, 0x41 @@ -5205,7 +5205,7 @@ _08158A8E: sub_8158AA0: @ 8158AA0 push {lr} bl sub_8158A34 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 @@ -5242,7 +5242,7 @@ _08158AE0: sub_8158AE8: @ 8158AE8 push {lr} bl sub_8158A34 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0xC] movs r1, 0x18 diff --git a/asm/contest_effect.s b/asm/contest_effect.s index 09c06b079..f3c234503 100644 --- a/asm/contest_effect.s +++ b/asm/contest_effect.s @@ -68,7 +68,7 @@ ContestEffectFunc_080E547C: @ 80E547C thumb_func_start ContestEffectFunc_080E5480 ContestEffectFunc_080E5480: @ 80E5480 push {lr} - ldr r3, =gUnknown_02039F34 + ldr r3, =gContestResources ldr r1, [r3] ldr r0, [r1, 0x8] ldrb r2, [r0, 0x11] @@ -94,7 +94,7 @@ ContestEffectFunc_080E5480: @ 80E5480 thumb_func_start ContestEffectFunc_080E54B0 ContestEffectFunc_080E54B0: @ 80E54B0 push {lr} - ldr r3, =gUnknown_02039F34 + ldr r3, =gContestResources ldr r1, [r3] ldr r0, [r1, 0x8] ldrb r2, [r0, 0x11] @@ -119,7 +119,7 @@ ContestEffectFunc_080E54B0: @ 80E54B0 thumb_func_start ContestEffectFunc_080E54E0 ContestEffectFunc_080E54E0: @ 80E54E0 - ldr r3, =gUnknown_02039F34 + ldr r3, =gContestResources ldr r1, [r3] ldr r0, [r1, 0x8] ldrb r2, [r0, 0x11] @@ -165,7 +165,7 @@ ContestEffectFunc_080E54E0: @ 80E54E0 thumb_func_start ContestEffectFunc_080E5534 ContestEffectFunc_080E5534: @ 80E5534 push {lr} - ldr r3, =gUnknown_02039F34 + ldr r3, =gContestResources ldr r1, [r3] ldr r0, [r1, 0x8] ldrb r2, [r0, 0x11] @@ -189,7 +189,7 @@ ContestEffectFunc_080E5534: @ 80E5534 thumb_func_start ContestEffectFunc_080E5560 ContestEffectFunc_080E5560: @ 80E5560 push {lr} - ldr r3, =gUnknown_02039F34 + ldr r3, =gContestResources ldr r1, [r3] ldr r0, [r1, 0x8] ldrb r2, [r0, 0x11] @@ -215,7 +215,7 @@ ContestEffectFunc_080E5560: @ 80E5560 thumb_func_start ContestEffectFunc_080E5590 ContestEffectFunc_080E5590: @ 80E5590 push {lr} - ldr r3, =gUnknown_02039F34 + ldr r3, =gContestResources ldr r1, [r3] ldr r0, [r1, 0x8] ldrb r2, [r0, 0x11] @@ -239,7 +239,7 @@ ContestEffectFunc_080E5590: @ 80E5590 thumb_func_start ContestEffectFunc_080E55BC ContestEffectFunc_080E55BC: @ 80E55BC push {lr} - ldr r3, =gUnknown_02039F34 + ldr r3, =gContestResources ldr r1, [r3] ldr r0, [r1, 0x8] ldrb r2, [r0, 0x11] @@ -266,7 +266,7 @@ ContestEffectFunc_080E55BC: @ 80E55BC ContestEffectFunc_080E55EC: @ 80E55EC push {r4,r5,lr} movs r2, 0 - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources ldr r0, [r5] ldr r1, [r0, 0x8] ldrb r4, [r1, 0x11] @@ -293,7 +293,7 @@ _080E560A: cmp r0, r1 bne _080E560A _080E5622: - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r0, [r1] ldr r0, [r0, 0x8] strb r2, [r0, 0x8] @@ -307,14 +307,14 @@ _080E5622: _080E563A: cmp r2, 0 bne _080E564C - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] movs r1, 0x36 bl sub_80DD3F0 _080E564C: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] @@ -330,7 +330,7 @@ _080E564C: ContestEffectFunc_080E5664: @ 80E5664 push {r4-r6,lr} movs r1, 0 - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources ldr r0, [r2] ldr r0, [r0, 0x8] ldrb r5, [r0, 0x11] @@ -359,7 +359,7 @@ _080E5698: adds r3, 0x1 cmp r3, 0x3 ble _080E567E - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] adds r0, 0x8 @@ -372,14 +372,14 @@ _080E5698: _080E56B4: cmp r1, 0 bne _080E56C6 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] movs r1, 0x36 bl sub_80DD3F0 _080E56C6: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] @@ -409,7 +409,7 @@ ContestEffectFunc_080E56E0: @ 80E56E0 bhi _080E5702 movs r1, 0x28 _080E5702: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] strh r1, [r0, 0x4] @@ -425,7 +425,7 @@ ContestEffectFunc_080E5718: @ 80E5718 mov r7, r8 push {r7} movs r7, 0 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r0, [r1] ldr r0, [r0, 0x8] ldrb r5, [r0, 0x11] @@ -521,7 +521,7 @@ ContestEffectFunc_080E57CC: @ 80E57CC push {r5-r7} movs r0, 0 mov r9, r0 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r0, [r1] ldr r0, [r0, 0x8] ldrb r2, [r0, 0x11] @@ -619,7 +619,7 @@ ContestEffectFunc_080E588C: @ 80E588C push {r6,r7} movs r0, 0 mov r9, r0 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r0, [r1] ldr r0, [r0, 0x8] ldrb r7, [r0, 0x11] @@ -674,7 +674,7 @@ _080E58DA: _080E5900: adds r6, 0x1C adds r5, 0x1 - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources cmp r5, 0x3 ble _080E58B0 _080E590A: @@ -704,7 +704,7 @@ _080E5928: thumb_func_start ContestEffectFunc_080E5938 ContestEffectFunc_080E5938: @ 80E5938 push {r4,lr} - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r1, [r4] ldr r0, [r1, 0x8] ldrb r2, [r0, 0x11] @@ -732,7 +732,7 @@ ContestEffectFunc_080E5938: @ 80E5938 thumb_func_start ContestEffectFunc_080E5970 ContestEffectFunc_080E5970: @ 80E5970 push {r4,lr} - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r1, [r4] ldr r0, [r1, 0x8] ldrb r2, [r0, 0x11] @@ -765,7 +765,7 @@ ContestEffectFunc_080E59B0: @ 80E59B0 push {lr} movs r0, 0 bl sub_80E6934 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] @@ -781,7 +781,7 @@ ContestEffectFunc_080E59D0: @ 80E59D0 push {lr} movs r0, 0x1 bl sub_80E6934 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] @@ -797,7 +797,7 @@ ContestEffectFunc_080E59F0: @ 80E59F0 push {lr} movs r0, 0x2 bl sub_80E6934 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] @@ -813,7 +813,7 @@ ContestEffectFunc_080E5A10: @ 80E5A10 push {lr} movs r0, 0x3 bl sub_80E6934 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] @@ -829,7 +829,7 @@ ContestEffectFunc_080E5A30: @ 80E5A30 push {lr} movs r0, 0x4 bl sub_80E6934 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] @@ -844,7 +844,7 @@ ContestEffectFunc_080E5A30: @ 80E5A30 ContestEffectFunc_080E5A50: @ 80E5A50 push {r4-r6,lr} movs r4, 0 - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources ldr r0, [r2] ldr r0, [r0, 0x8] ldrb r1, [r0, 0x11] @@ -855,7 +855,7 @@ ContestEffectFunc_080E5A50: @ 80E5A50 beq _080E5AB0 movs r5, 0 _080E5A68: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r1, [r0, 0x8] ldrb r0, [r1, 0x11] @@ -932,7 +932,7 @@ ContestEffectFunc_080E5AD4: @ 80E5AD4 mov r10, r3 movs r6, 0 _080E5B00: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r2, [r0] ldr r1, [r2, 0x8] ldrb r0, [r1, 0x11] @@ -1000,7 +1000,7 @@ _080E5B76: bge _080E5B76 _080E5B7E: movs r5, 0 - ldr r7, =gUnknown_02039F34 + ldr r7, =gContestResources movs r6, 0 mov r4, r10 _080E5B86: @@ -1125,7 +1125,7 @@ _080E5C70: lsrs r0, 24 mov r9, r0 _080E5C86: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] adds r0, 0xD @@ -1139,7 +1139,7 @@ _080E5C86: cmp r0, 0xFF bne _080E5C16 _080E5CA0: - ldr r6, =gUnknown_02039F34 + ldr r6, =gContestResources ldr r0, [r6] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] @@ -1173,7 +1173,7 @@ ContestEffectFunc_080E5CD4: @ 80E5CD4 movs r0, 0 mov r8, r0 movs r6, 0 - ldr r7, =gUnknown_02039F34 + ldr r7, =gContestResources movs r5, 0 _080E5CE4: ldr r2, [r7] @@ -1228,7 +1228,7 @@ _080E5D46: adds r6, 0x1 cmp r6, 0x3 ble _080E5CE4 - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] @@ -1256,7 +1256,7 @@ ContestEffectFunc_080E5D7C: @ 80E5D7C push {r4-r7,lr} movs r7, 0 movs r4, 0 - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources movs r6, 0 _080E5D86: ldr r3, [r5] @@ -1301,7 +1301,7 @@ _080E5DD2: adds r4, 0x1 cmp r4, 0x3 ble _080E5D86 - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] @@ -1325,7 +1325,7 @@ _080E5DF8: ContestEffectFunc_080E5E04: @ 80E5E04 push {r4,lr} ldr r1, =gUnknown_02039F26 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r4, [r0] ldr r0, [r4, 0x8] ldrb r2, [r0, 0x11] @@ -1366,7 +1366,7 @@ _080E5E46: ContestEffectFunc_080E5E5C: @ 80E5E5C push {r4,lr} ldr r1, =gUnknown_02039F26 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r4, [r0] ldr r0, [r4, 0x8] ldrb r2, [r0, 0x11] @@ -1408,7 +1408,7 @@ ContestEffectFunc_080E5EB4: @ 80E5EB4 push {r4-r7,lr} movs r1, 0 movs r5, 0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r4, [r0] ldr r2, [r4, 0x8] ldrb r0, [r2, 0x11] @@ -1434,7 +1434,7 @@ _080E5EDA: bge _080E5EE8 movs r5, 0 _080E5EE8: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r3, [r0] ldr r0, [r3, 0x8] ldrb r2, [r0, 0x11] @@ -1467,7 +1467,7 @@ _080E5F0C: movs r1, 0x11 bl sub_80DD3D4 _080E5F2C: - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r1, [r4] ldr r0, [r1, 0x8] ldrb r2, [r0, 0x11] @@ -1498,7 +1498,7 @@ _080E5F2C: ContestEffectFunc_080E5F64: @ 80E5F64 push {r4-r7,lr} movs r6, 0 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r4, [r0] ldr r2, [r4, 0x8] ldrb r1, [r2, 0x11] @@ -1567,7 +1567,7 @@ _080E5FDE: thumb_func_start ContestEffectFunc_080E5FE4 ContestEffectFunc_080E5FE4: @ 80E5FE4 push {r4,r5,lr} - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources ldr r3, [r1] ldr r0, [r3, 0x8] ldrb r2, [r0, 0x11] @@ -1647,7 +1647,7 @@ ContestEffectFunc_080E6068: @ 80E6068 cmp r0, 0x2 bhi _080E6098 movs r4, 0xA - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] @@ -1659,7 +1659,7 @@ _080E6098: cmp r0, 0x5 bhi _080E60B4 movs r4, 0x14 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] @@ -1671,7 +1671,7 @@ _080E60B4: cmp r0, 0x7 bhi _080E60D0 movs r4, 0x28 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] @@ -1683,7 +1683,7 @@ _080E60D0: cmp r1, 0x8 bhi _080E60EC movs r4, 0x3C - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] @@ -1693,14 +1693,14 @@ _080E60D0: .pool _080E60EC: movs r4, 0x50 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] movs r1, 0x1E bl sub_80DD3D4 _080E60FC: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r1, [r0] ldr r0, [r1, 0x8] ldrb r2, [r0, 0x11] @@ -1721,7 +1721,7 @@ ContestEffectFunc_080E611C: @ 80E611C push {r4-r7,lr} mov r7, r8 push {r7} - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources ldr r0, [r2] ldr r3, [r0, 0x8] ldrb r0, [r3, 0x11] @@ -1743,7 +1743,7 @@ _080E6140: adds r5, r0, 0 cmp r6, r1 beq _080E616A - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources _080E614E: lsls r0, r2, 24 movs r2, 0x80 @@ -1845,7 +1845,7 @@ ContestEffectFunc_080E620C: @ 80E620C mov r7, r9 mov r6, r8 push {r6,r7} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r3, [r0] ldr r1, [r3, 0x8] ldrb r2, [r1, 0x11] @@ -1928,7 +1928,7 @@ _080E62AC: thumb_func_start ContestEffectFunc_080E62B8 ContestEffectFunc_080E62B8: @ 80E62B8 push {r4-r7,lr} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r1, [r0, 0x11] @@ -1939,7 +1939,7 @@ ContestEffectFunc_080E62B8: @ 80E62B8 movs r5, 0 movs r6, 0 _080E62CE: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r4, [r0] ldr r1, [r4, 0x8] ldrb r2, [r1, 0x11] @@ -1994,7 +1994,7 @@ _080E632E: thumb_func_start ContestEffectFunc_080E6334 ContestEffectFunc_080E6334: @ 80E6334 push {r4,lr} - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r1, [r4] ldr r0, [r1, 0x8] ldrb r2, [r0, 0x11] @@ -2046,7 +2046,7 @@ _080E6390: thumb_func_start ContestEffectFunc_080E6398 ContestEffectFunc_080E6398: @ 80E6398 push {lr} - ldr r3, =gUnknown_02039F34 + ldr r3, =gContestResources ldr r1, [r3] ldr r0, [r1, 0x8] ldrb r2, [r0, 0x11] @@ -2090,7 +2090,7 @@ _080E63E4: ContestEffectFunc_080E63E8: @ 80E63E8 push {r4-r7,lr} sub sp, 0x4 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r2, [r0] ldr r1, [r2] ldrb r1, [r1, 0x1] @@ -2258,7 +2258,7 @@ ContestEffectFunc_080E6520: @ 80E6520 mov r7, r8 push {r7} sub sp, 0x4 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r2, [r0] ldr r1, [r2] ldrb r1, [r1, 0x1] @@ -2434,7 +2434,7 @@ ContestEffectFunc_080E6664: @ 80E6664 ContestEffectFunc_080E6668: @ 80E6668 push {r4-r7,lr} sub sp, 0x8 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r1, [r0] ldr r0, [r1] ldrb r0, [r0, 0x1] @@ -2517,7 +2517,7 @@ _080E66FC: cmp r0, 0x3 ble _080E66AA movs r6, 0 - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources adds r4, r5, 0 _080E6712: ldr r0, [r4] @@ -2576,7 +2576,7 @@ _080E676C: ContestEffectFunc_080E6778: @ 80E6778 push {lr} ldr r3, =gContestMoves - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r1, [r0] ldr r0, [r1, 0x8] ldrb r2, [r0, 0x11] @@ -2590,7 +2590,7 @@ ContestEffectFunc_080E6778: @ 80E6778 adds r0, r3 ldrb r0, [r0, 0x1] lsls r0, 29 - ldr r1, =gUnknown_02039F2C + ldr r1, =gScriptContestCategory lsrs r0, 29 ldrh r1, [r1] cmp r0, r1 @@ -2613,7 +2613,7 @@ ContestEffectFunc_080E67BC: @ 80E67BC movs r0, 0 mov r8, r0 movs r4, 0 - ldr r5, =gUnknown_02039F34 + ldr r5, =gContestResources movs r6, 0 _080E67CC: ldr r3, [r5] @@ -2672,14 +2672,14 @@ _080E682E: mov r7, r8 cmp r7, 0 bne _080E684A - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] movs r1, 0x36 bl sub_80DD3F0 _080E684A: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] @@ -2696,7 +2696,7 @@ _080E684A: thumb_func_start ContestEffectFunc_080E6868 ContestEffectFunc_080E6868: @ 80E6868 push {r4,lr} - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r1, [r0] ldr r0, [r1] ldrb r0, [r0, 0x13] @@ -2745,7 +2745,7 @@ _080E68C2: movs r1, 0x1E bl sub_80DD3D4 _080E68CE: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r1, [r0] ldr r0, [r1, 0x8] ldrb r2, [r0, 0x11] @@ -2764,7 +2764,7 @@ _080E68CE: thumb_func_start ContestEffectFunc_080E68EC ContestEffectFunc_080E68EC: @ 80E68EC push {r4,lr} - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r2, [r0, 0x10] ldrb r1, [r2, 0x1] @@ -2811,7 +2811,7 @@ sub_80E6934: @ 80E6934 mov r8, r0 movs r7, 0 movs r4, 0 - ldr r6, =gUnknown_02039F34 + ldr r6, =gContestResources ldr r0, =gContestMoves mov r9, r0 movs r5, 0 @@ -2861,7 +2861,7 @@ _080E699E: ble _080E694E cmp r7, 0 bne _080E69B8 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x11] @@ -2882,7 +2882,7 @@ sub_80E69C8: @ 80E69C8 push {lr} lsls r0, 24 lsrs r3, r0, 24 - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources ldr r0, [r2] ldr r0, [r0, 0x8] adds r0, 0xD @@ -2945,7 +2945,7 @@ sub_80E6A2C: @ 80E6A2C movs r2, 0x8 bl memset movs r7, 0 - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0, 0x8] ldrb r0, [r0, 0x8] @@ -3040,7 +3040,7 @@ _080E6AD6: strh r0, [r1] _080E6AFE: adds r7, 0x1 - ldr r4, =gUnknown_02039F34 + ldr r4, =gContestResources ldr r0, [r4] ldr r0, [r0, 0x8] adds r0, 0x8 @@ -3081,7 +3081,7 @@ sub_80E6B3C: @ 80E6B3C lsrs r0, 24 lsls r1, 24 lsrs r1, 24 - ldr r2, =gUnknown_02039F34 + ldr r2, =gContestResources ldr r4, [r2] ldr r3, [r4, 0x4] lsls r2, r0, 3 diff --git a/asm/contest_link_80F57C4.s b/asm/contest_link_80F57C4.s index 864f16c5e..f20070978 100644 --- a/asm/contest_link_80F57C4.s +++ b/asm/contest_link_80F57C4.s @@ -92,30 +92,30 @@ _080F57E0: lsls r1, 8 movs r0, 0 bl SetGpuRegBits - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r1, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r1, [r0] - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X strh r1, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r1, [r0] - ldr r0, =gUnknown_02022E20 + ldr r0, =gBattle_BG3_X strh r1, [r0] - ldr r0, =gUnknown_02022E22 + ldr r0, =gBattle_BG3_Y strh r1, [r0] - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H strh r1, [r0] - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V strh r1, [r0] - ldr r0, =gUnknown_02022E28 + ldr r0, =gBattle_WIN1H strh r1, [r0] - ldr r0, =gUnknown_02022E2A + ldr r0, =gBattle_WIN1V strh r1, [r0] pop {r4} pop {r0} @@ -387,10 +387,10 @@ sub_80F5B00: @ 80F5B00 strb r0, [r1, 0x2] ldr r0, =sub_80F5C00 bl SetMainCallback2 - ldr r1, =gUnknown_02022E28 + ldr r1, =gBattle_WIN1H movs r0, 0xF0 strh r0, [r1] - ldr r1, =gUnknown_02022E2A + ldr r1, =gBattle_WIN1V ldr r2, =0x000080a0 adds r0, r2, 0 strh r0, [r1] @@ -441,51 +441,51 @@ sub_80F5C00: @ 80F5C00 thumb_func_start sub_80F5C24 sub_80F5C24: @ 80F5C24 push {lr} - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X ldrh r1, [r0] movs r0, 0x10 bl SetGpuReg - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y ldrh r1, [r0] movs r0, 0x12 bl SetGpuReg - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X ldrh r1, [r0] movs r0, 0x14 bl SetGpuReg - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y ldrh r1, [r0] movs r0, 0x16 bl SetGpuReg - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X ldrh r1, [r0] movs r0, 0x18 bl SetGpuReg - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y ldrh r1, [r0] movs r0, 0x1A bl SetGpuReg - ldr r0, =gUnknown_02022E20 + ldr r0, =gBattle_BG3_X ldrh r1, [r0] movs r0, 0x1C bl SetGpuReg - ldr r0, =gUnknown_02022E22 + ldr r0, =gBattle_BG3_Y ldrh r1, [r0] movs r0, 0x1E bl SetGpuReg - ldr r0, =gUnknown_02022E24 + ldr r0, =gBattle_WIN0H ldrh r1, [r0] movs r0, 0x40 bl SetGpuReg - ldr r0, =gUnknown_02022E26 + ldr r0, =gBattle_WIN0V ldrh r1, [r0] movs r0, 0x44 bl SetGpuReg - ldr r0, =gUnknown_02022E28 + ldr r0, =gBattle_WIN1H ldrh r1, [r0] movs r0, 0x42 bl SetGpuReg - ldr r0, =gUnknown_02022E2A + ldr r0, =gBattle_WIN1V ldrh r1, [r0] movs r0, 0x46 bl SetGpuReg @@ -702,7 +702,7 @@ sub_80F5ED8: @ 80F5ED8 push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080F5EFC @@ -1239,7 +1239,7 @@ _080F6334: ldr r1, =gUnknown_02039F20 ldrb r0, [r1] ldr r7, =gStringVar1 - ldr r2, =gUnknown_02039E0D + ldr r2, =gUnknown_02039E00 + 13 mov r8, r2 cmp r0, 0 beq _080F636E @@ -1347,10 +1347,10 @@ _080F643C: .4byte _080F6638 .4byte _080F667C _080F6454: - ldr r1, =gUnknown_02022E24 + ldr r1, =gBattle_WIN0H movs r0, 0xF0 strh r0, [r1] - ldr r1, =gUnknown_02022E26 + ldr r1, =gBattle_WIN0V ldr r3, =0x00005050 adds r0, r3, 0 strh r0, [r1] @@ -1364,7 +1364,7 @@ _080F6454: mov r9, r4 ldr r4, =gMonFrontPicTable mov r12, r4 - ldr r4, =gBattleSpritesGfx + ldr r4, =gMonSpritesGfxPtr mov r8, r4 cmp r0, 0 beq _080F648C @@ -1494,7 +1494,7 @@ _080F65A4: strh r0, [r4, 0xC] _080F65BA: ldrb r2, [r4, 0xC] - ldr r3, =gUnknown_02022E26 + ldr r3, =gBattle_WIN0V movs r0, 0x50 subs r0, r2 lsls r0, 8 @@ -1556,7 +1556,7 @@ _080F6638: ldrb r0, [r0, 0x6] cmp r0, 0x2 bne _080F669C - ldr r3, =gUnknown_02022E26 + ldr r3, =gBattle_WIN0V ldrh r0, [r3] lsrs r2, r0, 8 adds r0, r2, 0x2 @@ -1706,7 +1706,7 @@ sub_80F677C: @ 80F677C push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _080F67AC @@ -1750,7 +1750,7 @@ task_repel: @ 80F67C4 ldrb r0, [r0] adds r0, r1 ldrb r0, [r0] - bl sub_80ED090 + bl BravoTrainerPokemonProfile_BeforeInterview2 _080F67E6: movs r0, 0 str r0, [sp] @@ -1838,11 +1838,11 @@ _080F68A8: thumb_func_start sub_80F68B4 sub_80F68B4: @ 80F68B4 push {r4,r5,lr} - ldr r2, =gUnknown_02022E20 + ldr r2, =gBattle_BG3_X ldrh r3, [r2] adds r0, r3, 0x2 strh r0, [r2] - ldr r4, =gUnknown_02022E22 + ldr r4, =gBattle_BG3_Y ldrh r5, [r4] adds r1, r5, 0x1 strh r1, [r4] @@ -1989,7 +1989,7 @@ sub_80F69B8: @ 80F69B8 _080F69DE: adds r0, r7, 0 ldr r1, [sp, 0x28] - bl sub_80D2EDC + bl GetMonIconPtr adds r3, r0, 0 lsls r0, r5, 9 adds r0, 0x80 @@ -2870,10 +2870,10 @@ _080F70BE: adds r5, 0x1 cmp r5, 0x2 ble _080F70BE - ldr r1, =gUnknown_02022E24 + ldr r1, =gBattle_WIN0H movs r0, 0xF0 strh r0, [r1] - ldr r2, =gUnknown_02022E26 + ldr r2, =gBattle_WIN0V ldrh r1, [r4, 0x22] adds r0, r1, 0 subs r0, 0x10 @@ -2910,8 +2910,8 @@ sub_80F7144: @ 80F7144 orrs r0, r1 mov r1, r12 strb r0, [r1] - ldr r7, =gUnknown_02022E24 - ldr r6, =gUnknown_02022E26 + ldr r7, =gBattle_WIN0H + ldr r6, =gBattle_WIN0V adds r5, r3, 0 movs r4, 0x4 adds r2, 0x2E @@ -3008,7 +3008,7 @@ _080F7236: bl CopyToBgTilemapBufferRect movs r5, 0xF _080F7240: - ldr r0, =gUnknown_02039F2C + ldr r0, =gScriptContestCategory ldrh r0, [r0] cmp r0, 0 bne _080F725C @@ -4522,7 +4522,7 @@ sub_80F7DF4: @ 80F7DF4 bl AllocZeroed ldr r1, [r4] str r0, [r1, 0x1C] - bl init_uns_table_pokemon_copy + bl AllocateMonSpritesGfx pop {r4,r5} pop {r0} bx r0 @@ -4569,7 +4569,7 @@ sub_80F7E64: @ 80F7E64 str r4, [r0, 0x1C] bl Free str r4, [r5] - bl sub_805F094 + bl FreeMonSpritesGfx pop {r4,r5} pop {r0} bx r0 @@ -4640,7 +4640,7 @@ sub_80F7F30: @ 80F7F30 adds r5, r0, 0 cmp r5, 0 beq _080F7F5E - ldr r4, =gUnknown_02039F2C + ldr r4, =gScriptContestCategory ldrb r0, [r4] ldr r1, =gUnknown_02039F2E ldrb r1, [r1] @@ -4666,7 +4666,7 @@ sub_80F7F7C: @ 80F7F7C muls r1, r0 ldr r0, =gPlayerParty adds r2, r1, r0 - ldr r0, =gUnknown_02039F2C + ldr r0, =gScriptContestCategory ldrh r0, [r0] cmp r0, 0x4 bhi _080F7FEE @@ -4730,7 +4730,7 @@ sub_80F7FFC: @ 80F7FFC beq _080F8010 b _080F8250 _080F8010: - ldr r0, =gUnknown_02039F2C + ldr r0, =gScriptContestCategory ldrh r0, [r0] cmp r0, 0x4 bls _080F801A @@ -4785,7 +4785,7 @@ _080F8074: ldrb r0, [r6] muls r0, r5 adds r0, r4 - bl sub_80EE5A4 + bl GetRibbonCount lsls r0, 24 lsrs r0, 24 cmp r0, 0x4 @@ -4834,7 +4834,7 @@ _080F80E2: ldrb r0, [r7] muls r0, r6 adds r0, r5 - bl sub_80EE5A4 + bl GetRibbonCount lsls r0, 24 lsrs r0, 24 cmp r0, 0x4 @@ -4883,7 +4883,7 @@ _080F814E: ldrb r0, [r7] muls r0, r6 adds r0, r5 - bl sub_80EE5A4 + bl GetRibbonCount lsls r0, 24 lsrs r0, 24 cmp r0, 0x4 @@ -4926,7 +4926,7 @@ _080F8190: ldrb r0, [r7] muls r0, r6 adds r0, r5 - bl sub_80EE5A4 + bl GetRibbonCount lsls r0, 24 lsrs r0, 24 cmp r0, 0x4 @@ -4969,7 +4969,7 @@ _080F81F8: ldrb r0, [r7] muls r0, r6 adds r0, r5 - bl sub_80EE5A4 + bl GetRibbonCount lsls r0, 24 lsrs r0, 24 cmp r0, 0x4 @@ -4994,7 +4994,7 @@ sub_80F8264: @ 80F8264 ldr r0, =gSpecialVar_0x8006 ldrh r1, [r0] lsls r1, 6 - ldr r0, =gUnknown_02039E0D + ldr r0, =gUnknown_02039E00 + 13 adds r1, r0 adds r0, r4, 0 bl StringCopy @@ -5013,7 +5013,7 @@ sub_80F8290: @ 80F8290 ldr r1, =gSpecialVar_0x8006 ldrh r1, [r1] lsls r1, 6 - ldr r2, =gUnknown_02039E02 + ldr r2, =gUnknown_02039E00 + 2 adds r1, r2 bl StringCopy pop {r0} @@ -5104,7 +5104,7 @@ sub_80F834C: @ 80F834C ldr r2, =gUnknown_02039F20 ldrb r0, [r2] ldr r4, =gStringVar3 - ldr r3, =gUnknown_02039E0D + ldr r3, =gUnknown_02039E00 + 13 cmp r0, 0 beq _080F836E _080F835C: @@ -5137,7 +5137,7 @@ sub_80F8390: @ 80F8390 ldr r2, =gUnknown_02039F20 ldrb r0, [r2] ldr r4, =gStringVar1 - ldr r3, =gUnknown_02039E02 + ldr r3, =gUnknown_02039E00 + 2 cmp r0, 0 beq _080F83B2 _080F83A0: @@ -5488,7 +5488,7 @@ _080F8678: bl sub_80F86E0 ldr r1, =gUnknown_02039F2B strb r0, [r1] - ldr r0, =gUnknown_02039F2C + ldr r0, =gScriptContestCategory ldrb r0, [r0] bl sub_80DB09C ldr r1, =sub_80FCF40 @@ -5578,7 +5578,7 @@ sub_80F8714: @ 80F8714 b _080F877E .pool _080F8748: - ldr r5, =gUnknown_02039E02 + ldr r5, =gUnknown_02039E00 + 2 movs r4, 0x3 _080F874C: adds r0, r5, 0 @@ -5633,7 +5633,7 @@ sub_80F87B4: @ 80F87B4 push {lr} lsls r0, 24 lsrs r1, r0, 24 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _080F87D0 diff --git a/asm/contest_link_80FC4F4.s b/asm/contest_link_80FC4F4.s index 0d6116766..f1e2019da 100644 --- a/asm/contest_link_80FC4F4.s +++ b/asm/contest_link_80FC4F4.s @@ -21,7 +21,7 @@ sub_80FC4F4: @ 80FC4F4 lsrs r0, 24 adds r1, r5, 0 adds r2, r4, 0 - bl link_0800A448 + bl SendBlock lsls r0, 24 cmp r0, 0 bne _080FC528 @@ -45,12 +45,12 @@ sub_80FC530: @ 80FC530 lsls r4, 17 lsls r4, r5 lsrs r4, 24 - bl sub_800A550 + bl GetBlockReceivedStatus ands r4, r0 cmp r4, 0 beq _080FC552 adds r0, r5, 0 - bl sub_800A5EC + bl ResetBlockReceivedFlag movs r0, 0x1 b _080FC554 _080FC552: @@ -64,7 +64,7 @@ _080FC554: thumb_func_start sub_80FC55C sub_80FC55C: @ 80FC55C push {r4,lr} - bl sub_800A550 + bl GetBlockReceivedStatus adds r4, r0, 0 bl sub_800A9D8 lsls r4, 24 @@ -74,7 +74,7 @@ sub_80FC55C: @ 80FC55C movs r0, 0 b _080FC57A _080FC574: - bl sub_800A5B4 + bl ResetBlockReceivedFlags movs r0, 0x1 _080FC57A: pop {r4} @@ -90,7 +90,7 @@ sub_80FC580: @ 80FC580 movs r1, 0 ldr r5, =gTasks ldr r6, =sub_80FC5C0 - ldr r4, =gUnknown_020223C4 + ldr r4, =gBlockRecvBuffer movs r3, 0xFF _080FC590: lsls r0, r1, 8 @@ -134,14 +134,14 @@ sub_80FC5DC: @ 80FC5DC push {r4-r7,lr} lsls r0, 24 lsrs r7, r0, 24 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080FC650 bl GetMultiplayerId ldr r1, =gUnknown_02039F25 strb r0, [r1] - bl sub_8009FCC + bl GetLinkPlayerCount ldr r4, =gUnknown_02039F30 strb r0, [r4] ldr r1, =gUnknown_02039F2A @@ -324,7 +324,7 @@ _080FC770: ldr r0, =gUnknown_02039E00 adds r4, r0 lsls r1, r5, 8 - ldr r0, =gUnknown_020223C4 + ldr r0, =gBlockRecvBuffer adds r1, r0 adds r0, r4, 0 movs r2, 0x40 @@ -430,7 +430,7 @@ _080FC858: cmp r0, 0 beq _080FC880 ldr r0, =gRngValue - ldr r4, =gUnknown_020223C4 + ldr r4, =gBlockRecvBuffer adds r1, r4, 0 movs r2, 0x4 bl memcpy @@ -517,7 +517,7 @@ _080FC90C: ldrb r0, [r1] cmp r3, r0 bge _080FC93A - ldr r4, =gUnknown_020223C4 + ldr r4, =gBlockRecvBuffer adds r0, r7, 0x2 adds r2, r5, r0 movs r5, 0x80 @@ -657,7 +657,7 @@ _080FCA30: lsls r0, 24 cmp r0, 0 beq _080FCAB2 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r2, [r0] ldr r0, =gUnknown_02039F25 ldrb r0, [r0] @@ -688,9 +688,9 @@ _080FCA68: ldrb r0, [r6] cmp r2, r0 bge _080FCAA4 - ldr r1, =gUnknown_02039F34 + ldr r1, =gContestResources mov r8, r1 - ldr r4, =gUnknown_020223C4 + ldr r4, =gBlockRecvBuffer movs r3, 0 movs r7, 0x80 lsls r7, 1 @@ -784,7 +784,7 @@ _080FCB50: ldr r1, =gUnknown_02039F2B ldrb r1, [r1] lsls r1, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 movs r2, 0x8 b _080FCC50 @@ -827,7 +827,7 @@ _080FCBA4: ldr r1, =gUnknown_02039F2B ldrb r1, [r1] lsls r1, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 movs r2, 0x8 b _080FCC50 @@ -850,7 +850,7 @@ _080FCBE0: ldr r1, =gUnknown_02039F2B ldrb r1, [r1] lsls r1, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 movs r2, 0x8 b _080FCC50 @@ -885,7 +885,7 @@ _080FCC38: ldr r1, =gUnknown_02039F2B ldrb r1, [r1] lsls r1, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 movs r2, 0x4 _080FCC50: @@ -955,7 +955,7 @@ _080FCCE8: bne _080FCCF4 b _080FCE42 _080FCCF4: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x4] movs r1, 0x70 @@ -968,13 +968,13 @@ _080FCD04: bne _080FCD10 b _080FCE42 _080FCD10: - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x4] ldr r1, =gUnknown_02039F2B ldrb r1, [r1] lsls r1, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 movs r2, 0x70 b _080FCE10 @@ -1004,7 +1004,7 @@ _080FCD54: lsls r0, 24 cmp r0, 0 beq _080FCE42 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] movs r1, 0x14 @@ -1015,13 +1015,13 @@ _080FCD6C: lsls r0, 24 cmp r0, 0 beq _080FCE42 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x8] ldr r1, =gUnknown_02039F2B ldrb r1, [r1] lsls r1, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 movs r2, 0x14 b _080FCE10 @@ -1031,7 +1031,7 @@ _080FCD98: lsls r0, 24 cmp r0, 0 beq _080FCE42 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x10] b _080FCDD4 @@ -1041,7 +1041,7 @@ _080FCDB0: lsls r0, 24 cmp r0, 0 beq _080FCE42 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x10] b _080FCE04 @@ -1078,7 +1078,7 @@ _080FCE04: ldr r1, =gUnknown_02039F2B ldrb r1, [r1] lsls r1, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 movs r2, 0x4 _080FCE10: @@ -1169,7 +1169,7 @@ _080FCEC0: beq _080FCF2E mov r1, r8 mov r8, r9 - ldr r4, =gUnknown_020223C4 + ldr r4, =gBlockRecvBuffer adds r0, r7, 0 adds r0, 0xA adds r2, r5, r0 @@ -1278,7 +1278,7 @@ _080FCF9C: ldr r1, =gUnknown_02039F2B ldrb r1, [r1] lsls r1, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 movs r2, 0x8 bl memcpy @@ -1344,7 +1344,7 @@ _080FD02C: ldr r1, =gUnknown_02039F2B ldrb r1, [r1] lsls r1, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 movs r2, 0x4 bl memcpy diff --git a/asm/contest_link_81D9DE4.s b/asm/contest_link_81D9DE4.s index cec1c6e5d..5f9c25d7c 100755 --- a/asm/contest_link_81D9DE4.s +++ b/asm/contest_link_81D9DE4.s @@ -370,7 +370,7 @@ sub_81DA10C: @ 81DA10C adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 - ldr r0, =gUnknown_02039F2C + ldr r0, =gScriptContestCategory ldrb r0, [r0] bl sub_80DB09C ldr r1, =sub_80FCF40 @@ -469,7 +469,7 @@ _081DA1EC: ldr r0, =gUnknown_02039E00 adds r4, r0 lsls r1, r5, 8 - ldr r0, =gUnknown_020223C4 + ldr r0, =gBlockRecvBuffer adds r1, r0 adds r0, r4, 0 movs r2, 0x40 @@ -554,7 +554,7 @@ _081DA2AC: cmp r0, 0 beq _081DA2D4 ldr r0, =gRngValue - ldr r4, =gUnknown_020223C4 + ldr r4, =gBlockRecvBuffer adds r1, r4, 0 movs r2, 0x4 bl memcpy @@ -641,7 +641,7 @@ _081DA35A: mov r0, r8 adds r0, 0xA adds r3, r5, r0 - ldr r4, =gUnknown_020223C4 + ldr r4, =gBlockRecvBuffer mov r2, sp movs r5, 0x80 lsls r5, 1 @@ -744,7 +744,7 @@ _081DA42A: mov r0, r8 adds r0, 0x2 adds r3, r5, r0 - ldr r4, =gUnknown_020223C4 + ldr r4, =gBlockRecvBuffer mov r2, sp movs r5, 0x80 lsls r5, 1 @@ -849,7 +849,7 @@ _081DA50C: lsls r0, r3, 6 ldr r5, =gUnknown_02039E00 adds r0, r5 - ldr r1, =gUnknown_020223C4 + ldr r1, =gBlockRecvBuffer movs r2, 0x4 subs r2, r3 lsls r2, 6 diff --git a/asm/contest_painting.s b/asm/contest_painting.s index 62359497c..2caf15194 100644 --- a/asm/contest_painting.s +++ b/asm/contest_painting.s @@ -72,7 +72,7 @@ sub_812FE0C: @ 812FE0C movs r0, 0x1 bl GetBgTilemapBuffer bl Free - bl sub_805F094 + bl FreeMonSpritesGfx pop {r4,r5} pop {r0} bx r0 @@ -110,7 +110,7 @@ _0812FE94: bl remove_some_task movs r0, 0 bl SetVBlankCallback - bl init_uns_table_pokemon_copy + bl AllocateMonSpritesGfx ldr r1, =gUnknown_030061C0 ldr r0, =gUnknown_02039F3C str r0, [r1] @@ -581,7 +581,7 @@ sub_81302E8: @ 81302E8 lsls r0, r5, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r4, =gBattleSpritesGfx + ldr r4, =gMonSpritesGfxPtr ldr r1, [r4] ldr r1, [r1, 0x8] ldr r2, [r6] @@ -600,7 +600,7 @@ _08130348: lsls r0, r5, 3 ldr r1, =gMonBackPicTable adds r0, r1 - ldr r4, =gBattleSpritesGfx + ldr r4, =gMonSpritesGfxPtr ldr r1, [r4] ldr r1, [r1, 0x4] ldr r2, [r6] diff --git a/asm/credits.s b/asm/credits.s index 0a568a3ae..0b2da16b8 100644 --- a/asm/credits.s +++ b/asm/credits.s @@ -491,14 +491,14 @@ _08175906: ldr r1, =gReservedSpritePaletteCount movs r0, 0x8 strb r0, [r1] - ldr r0, =gUnknown_085B0E04 + ldr r0, =gBirchHelpGfx movs r1, 0xC0 lsls r1, 19 bl LZ77UnCompVram - ldr r0, =gUnknown_085B0C0C + ldr r0, =gBirchGrassTilemap ldr r1, =0x06003800 bl LZ77UnCompVram - ldr r0, =gUnknown_085B0A02 + ldr r0, =gBirchBagGrassPal + 0x2 movs r1, 0x1 movs r2, 0x3E bl LoadPalette diff --git a/asm/crt0.s b/asm/crt0.s index 3ece5c7d0..0b14a1469 100644 --- a/asm/crt0.s +++ b/asm/crt0.s @@ -163,7 +163,7 @@ IntrMain: @ 8000248 IntrMain_FoundIntr: strh r0, [r3, OFFSET_REG_IF - 0x200] bic r2, r2, r0 - ldr r0, =gUnknown_03007868 + ldr r0, =gRfuState ldr r0, [r0] ldrb r0, [r0, 0xA] mov r1, 0x8 diff --git a/asm/decoration.s b/asm/decoration.s deleted file mode 100644 index 9b65c7c79..000000000 --- a/asm/decoration.s +++ /dev/null @@ -1,7167 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_8126968 -sub_8126968: @ 8126968 - push {lr} - ldr r3, =gUnknown_0203A173 - ldrb r0, [r3] - cmp r0, 0x7 - bhi _0812697E - ldr r2, =gUnknown_0203A14C - ldr r1, =gDecorationInventories - lsls r0, 3 - adds r0, r1 - ldr r0, [r0] - str r0, [r2] -_0812697E: - ldr r2, =gUnknown_0203A17C - ldrb r0, [r2, 0x9] - cmp r0, 0 - bne _08126996 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r3, =0x00001aae - adds r1, r0, r3 - str r1, [r2] - ldr r1, =0x00001abe - adds r0, r1 - str r0, [r2, 0x4] -_08126996: - ldrb r0, [r2, 0x9] - cmp r0, 0x1 - bne _081269AC - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r3, =0x0000271c - adds r1, r0, r3 - str r1, [r2] - ldr r1, =0x00002728 - adds r0, r1 - str r0, [r2, 0x4] -_081269AC: - pop {r0} - bx r0 - .pool - thumb_func_end sub_8126968 - - thumb_func_start sub_81269D4 -sub_81269D4: @ 81269D4 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r1, r0, 24 - ldr r0, =gUnknown_0203A188 - adds r4, r1, r0 - cmp r1, 0 - bne _08126A28 - ldr r0, =gUnknown_085A6B90 - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [sp] - str r1, [sp, 0x4] - ldr r0, =gUnknown_085A6B48 - movs r1, 0x4 - bl GetMaxWidthInMenuTable - lsls r0, 24 - ldr r2, =0x00ffffff - ldr r1, [sp] - ands r1, r2 - orrs r1, r0 - str r1, [sp] - lsrs r0, r1, 24 - cmp r0, 0x12 - bls _08126A14 - adds r0, r2, 0 - ands r0, r1 - movs r1, 0x90 - lsls r1, 21 - orrs r0, r1 - str r0, [sp] -_08126A14: - mov r0, sp - b _08126A2E - .pool -_08126A28: - lsls r0, r1, 3 - ldr r1, =gUnknown_085A6B90 - adds r0, r1 -_08126A2E: - bl AddWindow - strb r0, [r4] - ldrb r0, [r4] - movs r2, 0x85 - lsls r2, 2 - movs r1, 0 - movs r3, 0xE - bl SetWindowBorderStyle - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - ldrb r0, [r4] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_81269D4 - - thumb_func_start sub_8126A58 -sub_8126A58: @ 8126A58 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, =gUnknown_0203A188 - adds r4, r0 - ldrb r0, [r4] - movs r1, 0 - bl sub_8198070 - ldrb r0, [r4] - bl ClearWindowTilemap - ldrb r0, [r4] - bl RemoveWindow - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8126A58 - - thumb_func_start sub_8126A88 -sub_8126A88: @ 8126A88 - push {r4,lr} - movs r0, 0 - bl sub_81269D4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r2, =gUnknown_085A6B48 - adds r0, r4, 0 - movs r1, 0x4 - bl PrintMenuTable - ldr r0, =gUnknown_0203A150 - ldrb r2, [r0] - adds r0, r4, 0 - movs r1, 0x4 - bl InitMenuInUpperLeftCornerPlaySoundWhenAPressed - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8126A88 - - thumb_func_start sub_8126ABC -sub_8126ABC: @ 8126ABC - push {lr} - ldr r1, =gUnknown_0203A150 - movs r0, 0 - strb r0, [r1] - bl ScriptContext2_Enable - bl sub_8126A88 - bl sub_8126C08 - pop {r0} - bx r0 - .pool - thumb_func_end sub_8126ABC - - thumb_func_start sub_8126AD8 -sub_8126AD8: @ 8126AD8 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8126ABC - ldr r2, =gUnknown_0203A17C - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r3, =0x00001aae - adds r1, r0, r3 - str r1, [r2] - ldr r1, =0x00001abe - adds r0, r1 - str r0, [r2, 0x4] - movs r1, 0 - movs r0, 0x10 - strb r0, [r2, 0x8] - strb r1, [r2, 0x9] - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_8126B80 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8126AD8 - - thumb_func_start sub_8126B2C -sub_8126B2C: @ 8126B2C - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8126ABC - ldr r2, =gUnknown_0203A17C - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r3, =0x0000271c - adds r1, r0, r3 - str r1, [r2] - ldr r1, =0x00002728 - adds r0, r1 - str r0, [r2, 0x4] - movs r0, 0xC - strb r0, [r2, 0x8] - movs r0, 0x1 - strb r0, [r2, 0x9] - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_8126B80 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8126B2C - - thumb_func_start sub_8126B80 -sub_8126B80: @ 8126B80 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08126C00 - bl GetMenuCursorPos - lsls r0, 24 - lsrs r4, r0, 24 - bl ProcessMenuInput - lsls r0, 24 - asrs r1, r0, 24 - movs r0, 0x2 - negs r0, r0 - cmp r1, r0 - beq _08126BD8 - adds r0, 0x1 - cmp r1, r0 - beq _08126BF4 - movs r0, 0x5 - bl PlaySE - ldr r1, =gUnknown_085A6B48 - ldr r0, =gUnknown_0203A150 - ldrb r0, [r0] - lsls r0, 3 - adds r1, 0x4 - adds r0, r1 - ldr r1, [r0] - adds r0, r5, 0 - bl _call_via_r1 - b _08126C00 - .pool -_08126BD8: - bl GetMenuCursorPos - ldr r1, =gUnknown_0203A150 - strb r0, [r1] - lsls r0, r4, 24 - asrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - beq _08126C00 - bl sub_8126C08 - b _08126C00 - .pool -_08126BF4: - movs r0, 0x5 - bl PlaySE - adds r0, r5, 0 - bl sub_8126D6C -_08126C00: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8126B80 - - thumb_func_start sub_8126C08 -sub_8126C08: @ 8126C08 - push {lr} - sub sp, 0x10 - movs r0, 0 - movs r1, 0x11 - bl FillWindowPixelBuffer - ldr r1, =gUnknown_085A6B68 - ldr r0, =gUnknown_0203A150 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r2, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x2 - str r0, [sp, 0x4] - movs r0, 0x1 - str r0, [sp, 0x8] - movs r0, 0x3 - str r0, [sp, 0xC] - movs r0, 0 - movs r1, 0x1 - movs r3, 0 - bl AddTextPrinterParametrized - add sp, 0x10 - pop {r0} - bx r0 - .pool - thumb_func_end sub_8126C08 - - thumb_func_start sub_8126C48 -sub_8126C48: @ 8126C48 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - bl sub_8161B10 - lsls r0, 24 - cmp r0, 0 - bne _08126C7C - ldr r4, =gStringVar4 - ldr r1, =gText_NoDecorations - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, =sub_8126DA4 - adds r0, r5, 0 - adds r1, r4, 0 - bl DisplayItemMessageOnField - b _08126C96 - .pool -_08126C7C: - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - movs r2, 0 - movs r1, 0 - strh r1, [r0, 0x1E] - ldr r0, =gUnknown_0203A173 - strb r2, [r0] - adds r0, r5, 0 - bl sub_8126DCC -_08126C96: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8126C48 - - thumb_func_start sub_8126CA4 -sub_8126CA4: @ 8126CA4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r5, 0 - bl sub_81299AC - lsls r0, 24 - cmp r0, 0 - bne _08126CD8 - ldr r4, =gStringVar4 - ldr r1, =gText_NoDecorationsInUse - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, =sub_8126DA4 - adds r0, r5, 0 - adds r1, r4, 0 - bl DisplayItemMessageOnField - b _08126D00 - .pool -_08126CD8: - movs r0, 0 - bl sub_8126A58 - movs r0, 0 - movs r1, 0 - bl sub_8197434 - movs r0, 0x1 - movs r1, 0 - bl fade_screen - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0xC] - ldr r1, =sub_8129ABC - str r1, [r0] -_08126D00: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8126CA4 - - thumb_func_start sub_8126D10 -sub_8126D10: @ 8126D10 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - bl sub_8161B10 - lsls r0, 24 - cmp r0, 0 - bne _08126D44 - ldr r4, =gStringVar4 - ldr r1, =gText_NoDecorations - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, =sub_8126DA4 - adds r0, r5, 0 - adds r1, r4, 0 - bl DisplayItemMessageOnField - b _08126D5E - .pool -_08126D44: - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - movs r2, 0 - movs r1, 0x1 - strh r1, [r0, 0x1E] - ldr r0, =gUnknown_0203A173 - strb r2, [r0] - adds r0, r5, 0 - bl sub_8126DCC -_08126D5E: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8126D10 - - thumb_func_start sub_8126D6C -sub_8126D6C: @ 8126D6C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0 - bl sub_8126A58 - ldr r0, =gUnknown_0203A17C - ldrb r0, [r0, 0x9] - cmp r0, 0 - bne _08126D98 - ldr r0, =gUnknown_0823B4E8 - bl ScriptContext1_SetupScript - adds r0, r4, 0 - bl DestroyTask - b _08126D9E - .pool -_08126D98: - adds r0, r4, 0 - bl sub_816B060 -_08126D9E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8126D6C - - thumb_func_start sub_8126DA4 -sub_8126DA4: @ 8126DA4 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8126C08 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_8126B80 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8126DA4 - - thumb_func_start sub_8126DCC -sub_8126DCC: @ 8126DCC - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, =gUnknown_085A6BB0 - movs r1, 0xD0 - movs r2, 0x20 - bl LoadPalette - movs r0, 0 - movs r1, 0 - bl sub_8197434 - movs r0, 0 - bl sub_8126A58 - adds r0, r4, 0 - bl sub_8126DFC - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8126DCC - - thumb_func_start sub_8126DFC -sub_8126DFC: @ 8126DFC - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - movs r0, 0x1 - bl sub_81269D4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - bl sub_8126E8C - ldr r0, =gUnknown_0203A173 - ldrb r2, [r0] - adds r0, r4, 0 - movs r1, 0x9 - bl InitMenuInUpperLeftCornerPlaySoundWhenAPressed - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_8127088 - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8126DFC - - thumb_func_start sub_8126E44 -sub_8126E44: @ 8126E44 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r5, =gUnknown_0203A188 - ldrb r0, [r5, 0x1] - movs r1, 0x11 - bl FillWindowPixelBuffer - adds r0, r4, 0 - bl sub_8126E8C - ldrb r0, [r5, 0x1] - ldr r1, =gUnknown_0203A173 - ldrb r2, [r1] - movs r1, 0x9 - bl InitMenuInUpperLeftCornerPlaySoundWhenAPressed - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_8127088 - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8126E44 - - thumb_func_start sub_8126E8C -sub_8126E8C: @ 8126E8C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0xC - lsls r0, 24 - lsrs r6, r0, 24 - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r1, r0, r1 - ldr r0, =gUnknown_0203A188 - ldrb r5, [r0, 0x1] - ldr r0, =gUnknown_0203A17C - ldrb r0, [r0, 0x9] - movs r2, 0 - mov r8, r2 - cmp r0, 0x1 - bne _08126EC0 - movs r2, 0x16 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _08126EC0 - movs r0, 0x1 - mov r8, r0 -_08126EC0: - movs r4, 0 - lsls r2, r6, 2 - mov r9, r2 - movs r7, 0xFF -_08126EC8: - mov r0, r8 - cmp r0, 0x1 - bne _08126EF8 - cmp r4, 0x6 - beq _08126EF8 - cmp r4, 0x7 - beq _08126EF8 - lsls r3, r4, 28 - lsrs r3, 24 - str r0, [sp] - str r7, [sp, 0x4] - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x8 - bl sub_8126F68 - b _08126F0C - .pool -_08126EF8: - lsls r3, r4, 28 - lsrs r3, 24 - movs r0, 0 - str r0, [sp] - str r7, [sp, 0x4] - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x8 - bl sub_8126F68 -_08126F0C: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x7 - bls _08126EC8 - ldr r0, =gTasks - mov r2, r9 - adds r1, r2, r6 - lsls r1, 3 - adds r1, r0 - movs r2, 0x1E - ldrsh r0, [r1, r2] - ldr r2, =gText_Cancel - cmp r0, 0x2 - bne _08126F2C - ldr r2, =gText_Exit -_08126F2C: - lsls r0, r4, 4 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - str r0, [sp, 0x8] - adds r0, r5, 0 - movs r1, 0x1 - movs r3, 0x8 - bl PrintTextOnWindow - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - add sp, 0xC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8126E8C - - thumb_func_start sub_8126F68 -sub_8126F68: @ 8126F68 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - ldr r4, [sp, 0x38] - ldr r6, [sp, 0x3C] - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0xC] - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - lsls r2, 24 - lsrs r7, r2, 24 - lsls r3, 24 - lsrs r5, r3, 24 - lsls r4, 24 - lsrs r1, r4, 24 - lsls r6, 24 - lsrs r6, 24 - mov r9, r6 - movs r0, 0x60 - str r0, [sp, 0x14] - cmp r7, 0x8 - bne _08126FA2 - movs r2, 0x68 - str r2, [sp, 0x14] -_08126FA2: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r4, =gStringVar4 - adds r0, r4, 0 - bl sub_8127058 - adds r0, r4, 0 - bl StringLength - lsls r0, 16 - lsrs r0, 16 - adds r6, r0, r4 - ldr r1, =gUnknown_085A6B28 - mov r2, r8 - lsls r0, r2, 2 - adds r0, r1 - ldr r1, [r0] - adds r0, r6, 0 - bl StringCopy - str r5, [sp] - mov r0, r9 - str r0, [sp, 0x4] - movs r2, 0 - mov r10, r2 - str r2, [sp, 0x8] - ldr r0, [sp, 0xC] - movs r1, 0x1 - adds r2, r4, 0 - adds r3, r7, 0 - bl PrintTextOnWindow - mov r0, r8 - bl sub_8161AD0 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r6, 0 - movs r2, 0x1 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - adds r6, r0, 0 - movs r0, 0xBA - strb r0, [r6] - adds r6, 0x1 - ldr r1, =gDecorationInventories - mov r2, r8 - lsls r0, r2, 3 - adds r0, r1 - ldrb r1, [r0, 0x4] - adds r0, r6, 0 - movs r2, 0x1 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - movs r0, 0x1 - adds r1, r4, 0 - ldr r2, [sp, 0x14] - bl GetStringRightAlignXOffset - lsls r0, 24 - lsrs r7, r0, 24 - str r5, [sp] - mov r0, r9 - str r0, [sp, 0x4] - mov r2, r10 - str r2, [sp, 0x8] - ldr r0, [sp, 0xC] - movs r1, 0x1 - adds r2, r4, 0 - adds r3, r7, 0 - bl PrintTextOnWindow - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8126F68 - - thumb_func_start sub_8127058 -sub_8127058: @ 8127058 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r4, r1, 24 - lsrs r4, 24 - ldr r1, =gText_Color161Shadow161 - bl StringCopy - cmp r4, 0x1 - bne _08127078 - movs r0, 0x4 - strb r0, [r5, 0x2] - movs r0, 0x5 - b _0812707E - .pool -_08127078: - movs r0, 0x2 - strb r0, [r5, 0x2] - movs r0, 0x3 -_0812707E: - strb r0, [r5, 0x5] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8127058 - - thumb_func_start sub_8127088 -sub_8127088: @ 8127088 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _081270DE - bl ProcessMenuInput - lsls r0, 24 - lsrs r4, r0, 24 - asrs r1, r0, 24 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _081270C0 - cmp r1, r0 - bgt _081270BC - subs r0, 0x1 - cmp r1, r0 - beq _081270DE - b _081270CE - .pool -_081270BC: - cmp r1, 0x8 - bne _081270CE -_081270C0: - movs r0, 0x5 - bl PlaySE - adds r0, r5, 0 - bl sub_812719C - b _081270DE -_081270CE: - movs r0, 0x5 - bl PlaySE - ldr r0, =gUnknown_0203A173 - strb r4, [r0] - adds r0, r5, 0 - bl sub_81270E8 -_081270DE: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127088 - - thumb_func_start sub_81270E8 -sub_81270E8: @ 81270E8 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r4, =gUnknown_0203A173 - ldrb r0, [r4] - bl sub_8161AD0 - ldr r1, =gUnknown_0203A151 - strb r0, [r1] - lsls r0, 24 - cmp r0, 0 - beq _08127154 - ldrb r0, [r4] - bl sub_8161A38 - ldr r2, =gUnknown_0203A14C - ldr r1, =gDecorationInventories - ldrb r0, [r4] - lsls r0, 3 - adds r0, r1 - ldr r0, [r0] - str r0, [r2] - adds r0, r5, 0 - bl sub_81279B4 - ldr r0, =gUnknown_0203A170 - movs r1, 0 - strh r1, [r0] - ldr r0, =gUnknown_0203A16E - strh r1, [r0] - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_8127620 - str r1, [r0] - b _0812716E - .pool -_08127154: - movs r0, 0x1 - bl sub_8126A58 - ldr r4, =gStringVar4 - ldr r1, =gText_NoDecorations - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, =sub_8127180 - adds r0, r5, 0 - adds r1, r4, 0 - bl DisplayItemMessageOnField -_0812716E: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81270E8 - - thumb_func_start sub_8127180 -sub_8127180: @ 8127180 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - movs r1, 0 - bl sub_8197434 - adds r0, r4, 0 - bl sub_8126DFC - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8127180 - - thumb_func_start sub_812719C -sub_812719C: @ 812719C - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r1, =gTasks - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - movs r1, 0x1E - ldrsh r0, [r0, r1] - cmp r0, 0x2 - beq _081271C0 - adds r0, r2, 0 - bl sub_81271CC - b _081271C6 - .pool -_081271C0: - adds r0, r2, 0 - bl sub_8127268 -_081271C6: - pop {r0} - bx r0 - thumb_func_end sub_812719C - - thumb_func_start sub_81271CC -sub_81271CC: @ 81271CC - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - bl sub_8126A58 - bl sub_8126A88 - movs r0, 0 - movs r1, 0 - bl sub_81973C4 - bl sub_8126C08 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_8126B80 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81271CC - - thumb_func_start sub_8127208 -sub_8127208: @ 8127208 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, =gUnknown_085A6BB0 - movs r1, 0xD0 - movs r2, 0x20 - bl LoadPalette - movs r0, 0 - movs r1, 0 - bl sub_8197434 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r2, 0 - movs r1, 0x2 - strh r1, [r0, 0x1E] - ldr r0, =gUnknown_0203A173 - strb r2, [r0] - adds r0, r4, 0 - bl sub_8126DFC - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127208 - - thumb_func_start sub_8127250 -sub_8127250: @ 8127250 - push {lr} - lsls r1, 24 - ldr r2, =gUnknown_085A6B28 - lsrs r1, 22 - adds r1, r2 - ldr r1, [r1] - bl StringCopy - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127250 - - thumb_func_start sub_8127268 -sub_8127268: @ 8127268 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - bl sub_8126A58 - adds r0, r4, 0 - bl sub_8133E1C - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8127268 - - thumb_func_start sub_8127284 -sub_8127284: @ 8127284 - push {lr} - ldr r3, =gUnknown_0203A18C - ldr r2, [r3] - ldr r0, =gUnknown_0203A151 - ldrb r0, [r0] - adds r0, 0x1 - movs r1, 0xA4 - lsls r1, 3 - adds r2, r1 - strb r0, [r2] - ldr r0, [r3] - adds r1, r0, r1 - ldrb r1, [r1] - cmp r1, 0x8 - bls _081272B8 - ldr r2, =0x00000521 - adds r1, r0, r2 - movs r0, 0x8 - strb r0, [r1] - b _081272BE - .pool -_081272B8: - ldr r2, =0x00000521 - adds r0, r2 - strb r1, [r0] -_081272BE: - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127284 - - thumb_func_start sub_81272C8 -sub_81272C8: @ 81272C8 - push {r4,lr} - ldr r0, =gUnknown_0203A170 - ldr r1, =gUnknown_0203A16E - ldr r2, =gUnknown_0203A18C - ldr r3, [r2] - ldr r4, =0x00000521 - adds r2, r3, r4 - ldrb r2, [r2] - subs r4, 0x1 - adds r3, r4 - ldrb r3, [r3] - bl sub_812225C - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81272C8 - - thumb_func_start sub_81272F8 -sub_81272F8: @ 81272F8 - push {r4,lr} - sub sp, 0x4 - ldr r0, =gUnknown_0203A170 - ldr r1, =gUnknown_0203A16E - ldr r2, =gUnknown_0203A18C - ldr r3, [r2] - ldr r4, =0x00000521 - adds r2, r3, r4 - ldrb r2, [r2] - subs r4, 0x1 - adds r3, r4 - ldrb r3, [r3] - movs r4, 0x8 - str r4, [sp] - bl sub_8122298 - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81272F8 - - thumb_func_start sub_8127330 -sub_8127330: @ 8127330 - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, =gTasks + 0x8 - adds r1, r0 - ldr r0, =gUnknown_0203A173 - ldrb r0, [r0] - subs r0, 0x6 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _08127378 - ldr r0, =gUnknown_0203A17C - ldrb r0, [r0, 0x9] - cmp r0, 0x1 - bne _08127378 - movs r2, 0x16 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _08127378 - ldr r0, =gStringVar1 - movs r1, 0x1 - bl sub_8127058 - b _08127380 - .pool -_08127378: - ldr r0, =gStringVar1 - movs r1, 0 - bl sub_8127058 -_08127380: - movs r6, 0 - ldr r1, =gUnknown_0203A18C - ldr r0, [r1] - movs r3, 0xA4 - lsls r3, 3 - adds r0, r3 - ldrb r0, [r0] - subs r0, 0x1 - cmp r6, r0 - bge _081273D6 - adds r5, r1, 0 -_08127396: - lsls r4, r6, 1 - adds r4, r6 - lsls r4, 3 - movs r0, 0xA4 - lsls r0, 1 - adds r4, r0 - ldr r0, [r5] - adds r0, r4 - ldr r1, =gUnknown_0203A14C - ldr r1, [r1] - adds r1, r6 - ldrb r1, [r1] - bl sub_8127454 - ldr r1, [r5] - lsls r2, r6, 3 - adds r0, r1, r2 - adds r4, r1, r4 - str r4, [r0] - adds r0, r1, 0x4 - adds r0, r2 - str r6, [r0] - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - movs r2, 0xA4 - lsls r2, 3 - adds r1, r2 - ldrb r0, [r1] - subs r0, 0x1 - cmp r6, r0 - blt _08127396 -_081273D6: - ldr r5, =gUnknown_0203A18C - lsls r4, r6, 1 - adds r4, r6 - lsls r4, 3 - movs r3, 0xA4 - lsls r3, 1 - adds r4, r3 - ldr r0, [r5] - adds r0, r4 - ldr r1, =gText_Cancel - bl StringCopy - ldr r0, [r5] - lsls r2, r6, 3 - adds r1, r0, r2 - adds r4, r0, r4 - str r4, [r1] - adds r0, 0x4 - adds r0, r2 - movs r1, 0x2 - negs r1, r1 - str r1, [r0] - ldr r2, =gUnknown_03006310 - adds r1, r2, 0 - ldr r0, =gUnknown_085A6BD0 - ldm r0!, {r3,r4,r6} - stm r1!, {r3,r4,r6} - ldm r0!, {r3,r4,r6} - stm r1!, {r3,r4,r6} - ldr r0, =gUnknown_0203A188 - ldrb r0, [r0, 0x1] - strb r0, [r2, 0x10] - ldr r0, [r5] - movs r4, 0xA4 - lsls r4, 3 - adds r1, r0, r4 - ldrb r1, [r1] - strh r1, [r2, 0xC] - str r0, [r2] - ldr r6, =0x00000521 - adds r0, r6 - ldrb r0, [r0] - strh r0, [r2, 0xE] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127330 - - thumb_func_start sub_8127454 -sub_8127454: @ 8127454 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r4, r1, 16 - lsrs r4, 16 - ldr r1, =gStringVar1 - bl StringCopy - lsls r4, 5 - ldr r0, =gDecorations + 1 - adds r4, r0 - adds r0, r5, 0 - adds r1, r4, 0 - bl StringAppend - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127454 - - thumb_func_start sub_8127480 -sub_8127480: @ 8127480 - push {r4,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0x1 - beq _08127492 - movs r0, 0x5 - bl PlaySE -_08127492: - adds r0, r4, 0 - bl sub_8127744 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8127480 - - thumb_func_start sub_81274A0 -sub_81274A0: @ 81274A0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r6, r0, 24 - mov r8, r6 - lsls r2, 24 - lsrs r5, r2, 24 - adds r7, r5, 0 - movs r0, 0x2 - negs r0, r0 - cmp r1, r0 - beq _081274F6 - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl sub_81277BC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081274DC - adds r3, r5, 0x2 - adds r0, r6, 0 - movs r1, 0x18 - movs r2, 0x5C - bl blit_move_info_icon - b _081274F6 -_081274DC: - adds r0, r4, 0 - bl sub_81277E8 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081274F6 - adds r3, r7, 0x2 - mov r0, r8 - movs r1, 0x19 - movs r2, 0x5C - bl blit_move_info_icon -_081274F6: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_81274A0 - - thumb_func_start sub_8127500 -sub_8127500: @ 8127500 - push {r4,lr} - sub sp, 0x10 - ldr r4, =gUnknown_0203A18C - ldr r1, [r4] - ldr r2, =0x00000522 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0xFF - bne _08127540 - subs r2, 0x2 - adds r0, r1, r2 - ldrb r0, [r0] - adds r2, 0x1 - adds r1, r2 - ldrb r1, [r1] - subs r0, r1 - str r0, [sp] - movs r0, 0x6E - str r0, [sp, 0x4] - str r0, [sp, 0x8] - ldr r0, =gUnknown_0203A170 - str r0, [sp, 0xC] - movs r0, 0x2 - movs r1, 0x3C - movs r2, 0xC - movs r3, 0x94 - bl AddScrollIndicatorArrowPairParametrized - ldr r1, [r4] - ldr r2, =0x00000522 - adds r1, r2 - strb r0, [r1] -_08127540: - add sp, 0x10 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127500 - - thumb_func_start sub_8127554 -sub_8127554: @ 8127554 - push {r4,lr} - ldr r4, =gUnknown_0203A18C - ldr r0, [r4] - ldr r2, =0x00000522 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0xFF - beq _08127572 - bl RemoveScrollIndicatorArrowPair - ldr r0, [r4] - ldr r1, =0x00000522 - adds r0, r1 - movs r1, 0xFF - strb r1, [r0] -_08127572: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127554 - - thumb_func_start sub_8127580 -sub_8127580: @ 8127580 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - bl sub_81269D4 - adds r0, r4, 0 - bl sub_812759C - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8127580 - - thumb_func_start sub_812759C -sub_812759C: @ 812759C - push {r4-r6,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r5, r4, 2 - adds r5, r4 - lsls r5, 3 - ldr r0, =gTasks + 0x8 - adds r5, r0 - movs r0, 0x3 - bl sub_81269D4 - ldr r0, =gUnknown_0203A173 - ldrb r0, [r0] - bl sub_8127718 - ldr r6, =gUnknown_0203A18C - ldr r0, =0x00000524 - bl AllocZeroed - str r0, [r6] - ldr r1, =0x00000522 - adds r0, r1 - movs r1, 0xFF - strb r1, [r0] - bl sub_8127284 - bl sub_81272C8 - bl sub_81272F8 - adds r0, r4, 0 - bl sub_8127330 - ldr r0, =gUnknown_03006310 - ldr r1, =gUnknown_0203A170 - ldrh r1, [r1] - ldr r2, =gUnknown_0203A16E - ldrh r2, [r2] - bl ListMenuInit - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x1A] - bl sub_8127500 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_812759C - - thumb_func_start sub_8127620 -sub_8127620: @ 8127620 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - bl sub_812759C - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_812764C - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127620 - - thumb_func_start sub_812764C -sub_812764C: @ 812764C - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r5, r0, r1 - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08127700 - ldrb r0, [r5, 0x1A] - bl ListMenuHandleInput - adds r4, r0, 0 - ldrb r0, [r5, 0x1A] - ldr r7, =gUnknown_0203A170 - ldr r1, =gUnknown_0203A16E - mov r8, r1 - adds r1, r7, 0 - mov r2, r8 - bl get_coro_args_x18_x1A - movs r0, 0x2 - negs r0, r0 - cmp r4, r0 - beq _081276A4 - adds r0, 0x1 - cmp r4, r0 - bne _081276C4 - b _08127700 - .pool -_081276A4: - movs r0, 0x5 - bl PlaySE - ldr r0, =gUnknown_085A6B78 - movs r2, 0x16 - ldrsh r1, [r5, r2] - lsls r1, 3 - adds r0, 0x4 - adds r1, r0 - ldr r1, [r1] - adds r0, r6, 0 - bl _call_via_r1 - b _08127700 - .pool -_081276C4: - movs r0, 0x5 - bl PlaySE - ldr r0, =gUnknown_0203A172 - strb r4, [r0] - bl sub_8127554 - ldrb r0, [r5, 0x1A] - adds r1, r7, 0 - mov r2, r8 - bl sub_81AE6C8 - movs r0, 0x1 - bl sub_8126A58 - bl sub_81277A8 - ldr r0, =gUnknown_0203A18C - ldr r0, [r0] - bl Free - ldr r1, =gUnknown_085A6B78 - movs r2, 0x16 - ldrsh r0, [r5, r2] - lsls r0, 3 - adds r0, r1 - ldr r1, [r0] - adds r0, r6, 0 - bl _call_via_r1 -_08127700: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_812764C - - thumb_func_start sub_8127718 -sub_8127718: @ 8127718 - push {r4,lr} - sub sp, 0x8 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x2 - bl sub_81269D4 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - adds r1, r4, 0 - movs r2, 0 - movs r3, 0 - bl sub_8126F68 - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8127718 - - thumb_func_start sub_8127744 -sub_8127744: @ 8127744 - push {r4,r5,lr} - sub sp, 0xC - adds r4, r0, 0 - ldr r0, =gUnknown_0203A188 - ldrb r5, [r0, 0x3] - adds r0, r5, 0 - movs r1, 0x11 - bl FillWindowPixelBuffer - ldr r0, =gUnknown_0203A151 - ldrb r0, [r0] - cmp r4, r0 - bcc _08127770 - ldr r2, =gText_GoBackPrevMenu - b _08127782 - .pool -_08127770: - ldr r1, =gDecorations - ldr r0, =gUnknown_0203A14C - ldr r0, [r0] - adds r0, r4 - ldrb r0, [r0] - lsls r0, 5 - adds r1, 0x18 - adds r0, r1 - ldr r2, [r0] -_08127782: - movs r0, 0x1 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - str r0, [sp, 0x8] - adds r0, r5, 0 - movs r1, 0x1 - movs r3, 0 - bl PrintTextOnWindow - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127744 - - thumb_func_start sub_81277A8 -sub_81277A8: @ 81277A8 - push {lr} - movs r0, 0x3 - bl sub_8126A58 - movs r0, 0x2 - bl sub_8126A58 - pop {r0} - bx r0 - thumb_func_end sub_81277A8 - - thumb_func_start sub_81277BC -sub_81277BC: @ 81277BC - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - movs r1, 0 - ldr r3, =gUnknown_0203A152 -_081277C6: - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, r2 - bne _081277D8 - movs r0, 0x1 - b _081277E4 - .pool -_081277D8: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xF - bls _081277C6 - movs r0, 0 -_081277E4: - pop {r1} - bx r1 - thumb_func_end sub_81277BC - - thumb_func_start sub_81277E8 -sub_81277E8: @ 81277E8 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - movs r1, 0 - ldr r3, =gUnknown_0203A162 -_081277F2: - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, r2 - bne _08127804 - movs r0, 0x1 - b _08127810 - .pool -_08127804: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xB - bls _081277F2 - movs r0, 0 -_08127810: - pop {r1} - bx r1 - thumb_func_end sub_81277E8 - - thumb_func_start sub_8127814 -sub_8127814: @ 8127814 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r5, 0 - ldr r0, =gUnknown_0203A152 - movs r1, 0 - movs r2, 0x10 - bl memset - ldr r0, =gUnknown_0203A162 - movs r1, 0 - movs r2, 0xC - bl memset - movs r6, 0 - ldr r0, =gSaveBlock1Ptr - mov r10, r0 - ldr r1, =0x00001aae - mov r9, r1 - ldr r3, =gUnknown_0203A173 - mov r8, r3 -_08127842: - mov r1, r10 - ldr r0, [r1] - add r0, r9 - adds r0, r6 - ldrb r0, [r0] - cmp r0, 0 - beq _081278E2 - movs r2, 0 - mov r3, r8 - ldrb r0, [r3] - lsls r0, 3 - ldr r1, =gDecorationInventories - adds r0, r1 - ldrb r0, [r0, 0x4] - cmp r2, r0 - bcs _081278E2 - ldr r7, =gUnknown_0203A152 - adds r3, r1, 0 - mov r12, r3 -_08127868: - ldr r0, =gUnknown_0203A14C - ldr r1, [r0] - adds r1, r2 - mov r3, r10 - ldr r0, [r3] - add r0, r9 - adds r0, r6 - ldrb r1, [r1] - adds r4, r2, 0x1 - ldrb r0, [r0] - cmp r1, r0 - bne _081278D0 - movs r1, 0 - cmp r1, r5 - bcs _081278A2 - ldrb r0, [r7] - cmp r0, r4 - beq _081278A2 - ldr r3, =gUnknown_0203A152 - adds r2, r4, 0 -_08127890: - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, r5 - bcs _081278A2 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, r2 - bne _08127890 -_081278A2: - cmp r1, r5 - bne _081278D0 - adds r0, r5, r7 - strb r4, [r0] - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - b _081278E2 - .pool -_081278D0: - lsls r0, r4, 16 - lsrs r2, r0, 16 - mov r1, r8 - ldrb r0, [r1] - lsls r0, 3 - add r0, r12 - ldrb r0, [r0, 0x4] - cmp r2, r0 - bcc _08127868 -_081278E2: - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, 0xF - bls _08127842 - movs r5, 0 - movs r6, 0 - ldr r3, =gDecorationInventories - mov r8, r3 -_081278F4: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x0000271c - adds r0, r1 - adds r0, r6 - ldrb r0, [r0] - adds r7, r6, 0x1 - cmp r0, 0 - beq _0812799A - movs r2, 0 - b _0812798C - .pool -_08127918: - ldr r0, =gUnknown_0203A14C - ldr r1, [r0] - adds r1, r2 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r3, =0x0000271c - adds r0, r3 - adds r0, r6 - ldrb r1, [r1] - adds r4, r2, 0x1 - ldrb r0, [r0] - cmp r1, r0 - bne _08127988 - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_81277BC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08127988 - movs r1, 0 - cmp r1, r5 - bcs _08127966 - ldr r2, =gUnknown_0203A162 - ldrb r0, [r2] - cmp r0, r4 - beq _08127966 - adds r3, r2, 0 - adds r2, r4, 0 -_08127954: - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, r5 - bcs _08127966 - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, r2 - bne _08127954 -_08127966: - cmp r1, r5 - bne _08127988 - ldr r0, =gUnknown_0203A162 - adds r0, r5, r0 - strb r4, [r0] - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - b _0812799A - .pool -_08127988: - lsls r0, r4, 16 - lsrs r2, r0, 16 -_0812798C: - ldr r0, =gUnknown_0203A173 - ldrb r0, [r0] - lsls r0, 3 - add r0, r8 - ldrb r0, [r0, 0x4] - cmp r2, r0 - bcc _08127918 -_0812799A: - lsls r0, r7, 16 - lsrs r6, r0, 16 - cmp r6, 0xB - bls _081278F4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127814 - - thumb_func_start sub_81279B4 -sub_81279B4: @ 81279B4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl sub_8127814 - pop {r0} - bx r0 - thumb_func_end sub_81279B4 - - thumb_func_start sub_81279C4 -sub_81279C4: @ 81279C4 - push {r4,lr} - movs r2, 0 - ldr r0, =gUnknown_0203A170 - ldrh r0, [r0] - ldr r1, =gUnknown_0203A16E - ldrh r1, [r1] - adds r0, r1 - adds r1, r0, 0x1 - ldr r4, =gUnknown_0203A152 - ldr r3, =gUnknown_0203A162 -_081279D8: - adds r0, r2, r4 - ldrb r0, [r0] - cmp r0, r1 - beq _081279EC - cmp r2, 0xB - bhi _08127A00 - adds r0, r2, r3 - ldrb r0, [r0] - cmp r0, r1 - bne _08127A00 -_081279EC: - movs r0, 0 - b _08127A0C - .pool -_08127A00: - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0xF - bls _081279D8 - movs r0, 0x1 -_08127A0C: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_81279C4 - - thumb_func_start sub_8127A14 -sub_8127A14: @ 8127A14 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - bl sub_81269D4 - adds r0, r4, 0 - bl sub_8127620 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8127A14 - - thumb_func_start sub_8127A30 -sub_8127A30: @ 8127A30 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - movs r1, 0 - bl sub_8197434 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_8127A14 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127A30 - - thumb_func_start sub_8127A5C -sub_8127A5C: @ 8127A5C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _08127A82 - movs r0, 0 - movs r1, 0 - bl sub_8197434 - movs r0, 0x1 - bl sub_81269D4 - adds r0, r4, 0 - bl sub_8127620 -_08127A82: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127A5C - - thumb_func_start sub_8127A8C -sub_8127A8C: @ 8127A8C - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - lsls r4, r5, 2 - adds r4, r5 - lsls r4, 3 - ldr r0, =gTasks + 0x8 - adds r4, r0 - bl sub_8127554 - bl sub_81277A8 - ldrb r0, [r4, 0x1A] - movs r1, 0 - movs r2, 0 - bl sub_81AE6C8 - ldr r0, =gUnknown_0203A18C - ldr r0, [r0] - bl Free - adds r0, r5, 0 - bl sub_8126E44 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127A8C - - thumb_func_start sub_8127ACC -sub_8127ACC: @ 8127ACC - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r3, =gTasks - lsls r2, r0, 2 - adds r2, r0 - lsls r2, 3 - adds r4, r2, r3 - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - ldrh r0, [r1] - strh r0, [r4, 0xE] - ldrh r0, [r1, 0x2] - strh r0, [r4, 0x10] - adds r3, 0x8 - adds r2, r3 - adds r1, r2, 0x2 - adds r0, r2, 0 - bl PlayerGetDestCoords - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127ACC - - thumb_func_start sub_8127B04 -sub_8127B04: @ 8127B04 - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - bl DrawWholeMapView - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - movs r0, 0x4 - ldrsb r0, [r1, r0] - ldrb r1, [r1, 0x5] - lsls r1, 24 - asrs r1, 24 - movs r2, 0x1 - negs r2, r2 - ldr r3, =gTasks - lsls r4, r5, 2 - adds r4, r5 - lsls r4, 3 - adds r4, r3 - movs r3, 0xE - ldrsb r3, [r4, r3] - ldrb r4, [r4, 0x10] - lsls r4, 24 - asrs r4, 24 - str r4, [sp] - bl warp1_set - bl warp_in - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127B04 - - thumb_func_start sub_8127B54 -sub_8127B54: @ 8127B54 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 24 - lsrs r1, 24 - ldr r0, =0x0000ffff - cmp r2, 0x22 - beq _08127B7C - cmp r2, 0x26 - bne _08127B86 - ldr r0, =gUnknown_085A72E4 - adds r0, r1, r0 - ldrb r0, [r0] - lsls r0, 28 - lsrs r0, 16 - b _08127B86 - .pool -_08127B7C: - ldr r0, =gUnknown_085A72EC - adds r0, r1, r0 - ldrb r0, [r0] - lsls r0, 28 - lsrs r0, 16 -_08127B86: - pop {r1} - bx r1 - .pool - thumb_func_end sub_8127B54 - - thumb_func_start sub_8127B90 -sub_8127B90: @ 8127B90 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x34 - ldr r4, [sp, 0x54] - lsls r0, 16 - lsrs r0, 16 - str r0, [sp] - lsls r1, 16 - lsrs r1, 16 - str r1, [sp, 0x4] - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x8] - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0xC] - lsls r4, 16 - lsrs r4, 16 - str r4, [sp, 0x10] - movs r2, 0 - lsls r0, r3, 16 - cmp r2, r3 - bcc _08127BC6 - b _08127D28 -_08127BC6: - ldr r1, [sp, 0x8] - str r1, [sp, 0x28] - str r0, [sp, 0x2C] -_08127BCC: - ldr r3, [sp, 0x4] - ldr r4, [sp, 0xC] - subs r1, r3, r4 - lsls r0, r2, 16 - asrs r0, 16 - adds r0, 0x1 - adds r1, r0 - lsls r1, 16 - lsrs r1, 16 - str r1, [sp, 0x14] - movs r0, 0 - mov r10, r0 - adds r1, r2, 0x1 - str r1, [sp, 0x30] - ldr r3, [sp, 0x28] - cmp r10, r3 - bcc _08127BF0 - b _08127D18 -_08127BF0: - ldr r4, [sp, 0x10] - lsls r4, 5 - str r4, [sp, 0x18] - ldr r0, =gUnknown_085A5C24 - adds r0, r4, r0 - str r0, [sp, 0x1C] - ldr r0, =gDecorations - adds r0, r4, r0 - str r0, [sp, 0x24] - ldr r3, [sp, 0x8] - adds r1, r2, 0 - muls r1, r3 - str r1, [sp, 0x20] -_08127C0A: - ldr r0, [sp] - add r0, r10 - lsls r0, 16 - lsrs r5, r0, 16 - ldr r1, [sp, 0x20] - add r1, r10 - ldr r4, [sp, 0x1C] - ldr r0, [r4] - lsls r1, 1 - adds r1, r0 - movs r2, 0x80 - lsls r2, 2 - adds r0, r2, 0 - ldrh r1, [r1] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - bl GetBehaviorByMetatileId - lsls r4, r0, 16 - lsls r0, r4, 8 - lsrs r0, 24 - bl sub_80892D8 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08127C50 - ldr r3, [sp, 0x24] - ldrb r0, [r3, 0x11] - cmp r0, 0x1 - beq _08127C60 - lsrs r0, r4, 28 - cmp r0, 0 - beq _08127C60 -_08127C50: - movs r4, 0xC0 - lsls r4, 4 - mov r8, r4 - b _08127C64 - .pool -_08127C60: - movs r0, 0 - mov r8, r0 -_08127C64: - ldr r1, [sp, 0x24] - ldrb r0, [r1, 0x11] - lsls r7, r5, 16 - ldr r2, [sp, 0x14] - lsls r2, 16 - mov r9, r2 - cmp r0, 0x3 - beq _08127C8E - asrs r0, r7, 16 - asrs r1, r2, 16 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl sub_8089328 - lsls r0, 24 - lsrs r0, 24 - movs r6, 0x1 - cmp r0, 0x1 - beq _08127C90 -_08127C8E: - movs r6, 0 -_08127C90: - ldr r3, [sp, 0x18] - ldr r4, =gDecorations - adds r0, r3, r4 - ldrb r0, [r0] - ldr r4, [sp, 0x20] - add r4, r10 - lsls r1, r4, 24 - lsrs r1, 24 - bl sub_8127B54 - lsls r0, 16 - lsrs r5, r0, 16 - ldr r0, =0x0000ffff - cmp r5, r0 - beq _08127CE0 - asrs r0, r7, 16 - mov r2, r9 - asrs r1, r2, 16 - ldr r3, [sp, 0x1C] - ldr r2, [r3] - lsls r3, r4, 1 - adds r3, r2 - movs r4, 0x80 - lsls r4, 2 - adds r2, r4, 0 - orrs r6, r2 - ldrh r3, [r3] - adds r2, r6, r3 - mov r3, r8 - orrs r3, r2 - orrs r3, r5 - lsls r2, r3, 16 - lsrs r2, 16 - bl MapGridSetMetatileEntryAt - b _08127D06 - .pool -_08127CE0: - asrs r0, r7, 16 - mov r2, r9 - asrs r1, r2, 16 - ldr r3, [sp, 0x1C] - ldr r2, [r3] - lsls r3, r4, 1 - adds r3, r2 - movs r4, 0x80 - lsls r4, 2 - adds r2, r4, 0 - orrs r6, r2 - ldrh r3, [r3] - adds r2, r6, r3 - mov r3, r8 - orrs r3, r2 - lsls r2, r3, 16 - lsrs r2, 16 - bl MapGridSetMetatileIdAt -_08127D06: - mov r0, r10 - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - mov r10, r0 - ldr r4, [sp, 0x28] - cmp r10, r4 - bcs _08127D18 - b _08127C0A -_08127D18: - ldr r1, [sp, 0x30] - lsls r0, r1, 16 - lsrs r2, r0, 16 - ldr r3, [sp, 0x2C] - lsrs r0, r3, 16 - cmp r2, r0 - bcs _08127D28 - b _08127BCC -_08127D28: - add sp, 0x34 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8127B90 - - thumb_func_start sub_8127D38 -sub_8127D38: @ 8127D38 - push {r4,lr} - sub sp, 0x4 - lsls r0, 16 - lsrs r3, r0, 16 - lsls r1, 16 - lsrs r4, r1, 16 - lsls r2, 16 - lsrs r2, 16 - ldr r1, =gDecorations - lsls r0, r2, 5 - adds r0, r1 - ldrb r0, [r0, 0x12] - cmp r0, 0x9 - bhi _08127E10 - lsls r0, 2 - ldr r1, =_08127D68 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08127D68: - .4byte _08127D90 - .4byte _08127D9A - .4byte _08127DA4 - .4byte _08127DB4 - .4byte _08127DBE - .4byte _08127DC8 - .4byte _08127DD8 - .4byte _08127DE2 - .4byte _08127DF2 - .4byte _08127E02 -_08127D90: - str r2, [sp] - adds r0, r3, 0 - adds r1, r4, 0 - movs r2, 0x1 - b _08127DAC -_08127D9A: - str r2, [sp] - adds r0, r3, 0 - adds r1, r4, 0 - movs r2, 0x2 - b _08127DAC -_08127DA4: - str r2, [sp] - adds r0, r3, 0 - adds r1, r4, 0 - movs r2, 0x3 -_08127DAC: - movs r3, 0x1 - bl sub_8127B90 - b _08127E10 -_08127DB4: - str r2, [sp] - adds r0, r3, 0 - adds r1, r4, 0 - movs r2, 0x4 - b _08127DD0 -_08127DBE: - str r2, [sp] - adds r0, r3, 0 - adds r1, r4, 0 - movs r2, 0x2 - b _08127DD0 -_08127DC8: - str r2, [sp] - adds r0, r3, 0 - adds r1, r4, 0 - movs r2, 0x1 -_08127DD0: - movs r3, 0x2 - bl sub_8127B90 - b _08127E10 -_08127DD8: - str r2, [sp] - adds r0, r3, 0 - adds r1, r4, 0 - movs r2, 0x1 - b _08127DFA -_08127DE2: - str r2, [sp] - adds r0, r3, 0 - adds r1, r4, 0 - movs r2, 0x2 - movs r3, 0x4 - bl sub_8127B90 - b _08127E10 -_08127DF2: - str r2, [sp] - adds r0, r3, 0 - adds r1, r4, 0 - movs r2, 0x3 -_08127DFA: - movs r3, 0x3 - bl sub_8127B90 - b _08127E10 -_08127E02: - str r2, [sp] - adds r0, r3, 0 - adds r1, r4, 0 - movs r2, 0x3 - movs r3, 0x2 - bl sub_8127B90 -_08127E10: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8127D38 - - thumb_func_start sub_8127E18 -sub_8127E18: @ 8127E18 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - movs r6, 0 - ldr r7, =gMapHeader - ldr r0, =gSpecialVar_0x8005 - mov r8, r0 - ldr r1, =gSpecialVar_0x8006 - mov r10, r1 - ldr r2, =gSaveBlock1Ptr - mov r9, r2 -_08127E34: - adds r5, r6, 0 - adds r5, 0xAE - adds r4, r5, 0 - adds r0, r4, 0 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08127F1C - adds r0, r4, 0 - bl FlagReset - movs r2, 0 - ldr r0, [r7, 0x4] - ldrb r4, [r0] - cmp r2, r4 - bcs _08127E82 - ldr r0, [r0, 0x4] - ldrh r0, [r0, 0x14] - cmp r0, r5 - beq _08127E82 - ldr r0, =gMapHeader - ldr r3, [r0, 0x4] - ldrb r6, [r3] - adds r4, r5, 0 -_08127E68: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, r6 - bcs _08127E82 - ldr r0, [r3, 0x4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x14] - cmp r0, r4 - bne _08127E68 -_08127E82: - ldr r0, [r7, 0x4] - ldr r1, [r0, 0x4] - lsls r4, r2, 1 - adds r4, r2 - lsls r4, 3 - adds r1, r4, r1 - ldr r5, =0x00003f20 - adds r0, r5, 0 - ldrb r1, [r1, 0x1] - adds r0, r1 - ldr r1, =gUnknown_0203A190 - ldr r1, [r1] - ldr r1, [r1, 0x1C] - ldrh r1, [r1] - bl VarSet - ldr r0, [r7, 0x4] - ldr r0, [r0, 0x4] - adds r4, r0 - ldrb r0, [r4] - mov r6, r8 - strh r0, [r6] - ldr r1, =gUnknown_0203AA34 - ldrh r1, [r1] - mov r2, r10 - strh r1, [r2] - ldr r1, =gUnknown_0203AA36 - ldrh r1, [r1] - ldr r4, =gSpecialVar_0x8007 - strh r1, [r4] - mov r5, r9 - ldr r2, [r5] - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - bl show_sprite - ldrb r0, [r6] - ldr r2, [r5] - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - mov r6, r10 - movs r4, 0 - ldrsh r3, [r6, r4] - ldr r5, =gSpecialVar_0x8007 - movs r6, 0 - ldrsh r4, [r5, r6] - str r4, [sp] - bl sub_808EBA8 - mov r1, r8 - ldrb r0, [r1] - mov r4, r9 - ldr r2, [r4] - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - bl sub_808F254 - b _08127F26 - .pool -_08127F1C: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0xD - bls _08127E34 -_08127F26: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8127E18 - - thumb_func_start sub_8127F38 -sub_8127F38: @ 8127F38 - push {lr} - movs r1, 0 - ldr r0, =gUnknown_0203A17C - ldrb r2, [r0, 0x8] - cmp r1, r2 - bcs _08127F62 - ldr r3, [r0] -_08127F46: - adds r0, r3, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _08127F58 - movs r0, 0x1 - b _08127F64 - .pool -_08127F58: - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, r2 - bcc _08127F46 -_08127F62: - movs r0, 0 -_08127F64: - pop {r1} - bx r1 - thumb_func_end sub_8127F38 - - thumb_func_start sub_8127F68 -sub_8127F68: @ 8127F68 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, =gUnknown_0203A17C - ldrb r0, [r0, 0x9] - cmp r0, 0x1 - bne _08127FAC - ldr r0, =gUnknown_0203A173 - ldrb r0, [r0] - cmp r0, 0x6 - beq _08127FAC - cmp r0, 0x7 - beq _08127FAC - ldr r4, =gStringVar4 - ldr r1, =gText_CantPlaceInRoom - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, =sub_8127A5C - adds r0, r5, 0 - adds r1, r4, 0 - bl DisplayItemMessageOnField - b _0812804C - .pool -_08127FAC: - bl sub_81279C4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08128038 - bl sub_8127F38 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08127FE8 - movs r0, 0x1 - movs r1, 0 - bl fade_screen - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0xC] - ldr r1, =sub_8128060 - str r1, [r0] - b _0812804C - .pool -_08127FE8: - ldr r0, =gStringVar1 - ldr r4, =gUnknown_0203A17C - ldrb r1, [r4, 0x8] - movs r2, 0x1 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldrb r0, [r4, 0x9] - cmp r0, 0 - bne _08128018 - ldr r0, =gStringVar4 - ldr r1, =gText_NoMoreDecorations - bl StringExpandPlaceholders - b _08128020 - .pool -_08128018: - ldr r0, =gStringVar4 - ldr r1, =gText_NoMoreDecorations2 - bl StringExpandPlaceholders -_08128020: - ldr r1, =gStringVar4 - ldr r2, =sub_8127A5C - adds r0, r5, 0 - bl DisplayItemMessageOnField - b _0812804C - .pool -_08128038: - ldr r4, =gStringVar4 - ldr r1, =gText_InUseAlready - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, =sub_8127A5C - adds r0, r5, 0 - adds r1, r4, 0 - bl DisplayItemMessageOnField -_0812804C: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8127F68 - - thumb_func_start sub_8128060 -sub_8128060: @ 8128060 - 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 r7, r0, r1 - movs r1, 0xC - ldrsh r0, [r7, r1] - cmp r0, 0x1 - beq _081280AC - cmp r0, 0x1 - bgt _08128088 - cmp r0, 0 - beq _0812808E - b _08128112 - .pool -_08128088: - cmp r0, 0x2 - beq _081280FC - b _08128112 -_0812808E: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08128112 - adds r0, r6, 0 - bl sub_8127ACC - movs r0, 0x1 - strh r0, [r7, 0xC] - b _08128112 - .pool -_081280AC: - ldr r4, =gPaletteFade - ldrb r0, [r4, 0x8] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r4, 0x8] - ldr r5, =gUnknown_0203A190 - ldr r0, =gUnknown_0203A172 - ldrb r1, [r0] - ldr r0, =gUnknown_0203A14C - ldr r0, [r0] - adds r0, r1 - ldrb r1, [r0] - adds r0, r5, 0 - bl ConfigureCameraObjectForPlacingDecoration - adds r0, r6, 0 - bl sub_812826C - adds r0, r6, 0 - adds r1, r5, 0 - bl SetUpPlacingDecorationPlayerAvatar - bl pal_fill_black - ldrb r1, [r4, 0x8] - movs r0, 0x7F - ands r0, r1 - strb r0, [r4, 0x8] - movs r0, 0x2 - strh r0, [r7, 0xC] - b _08128112 - .pool -_081280FC: - bl sub_80ABDFC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08128112 - movs r0, 0 - strh r0, [r7, 0x20] - adds r0, r6, 0 - bl sub_8128FD8 -_08128112: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8128060 - - thumb_func_start ConfigureCameraObjectForPlacingDecoration -ConfigureCameraObjectForPlacingDecoration: @ 8128118 - push {r4-r6,lr} - adds r6, r0, 0 - lsls r1, 24 - lsrs r1, 24 - ldr r3, =gUnknown_0203AA38 - ldr r4, =gSprites - ldr r5, =gUnknown_03005DD0 - ldr r2, [r5, 0x4] - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0, 0x2E] - strb r0, [r3] - adds r0, r6, 0 - bl gpu_pal_decompress_alloc_tag_and_upload - lsls r0, 24 - lsrs r0, 24 - str r0, [r5, 0x4] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldrb r2, [r1, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - movs r2, 0x4 - orrs r0, r2 - strb r0, [r1, 0x5] - ldr r0, [r5, 0x4] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r0, r4, 0 - adds r0, 0x1C - adds r0, r2, r0 - ldr r1, =sub_81292D0 - str r1, [r0] - adds r2, r4 - ldr r3, =gUnknown_085A7250 - ldr r0, [r6] - ldrb r0, [r0, 0x12] - lsls r0, 2 - adds r0, r3 - ldrb r0, [r0, 0x2] - strh r0, [r2, 0x20] - ldr r0, [r5, 0x4] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldr r0, [r6] - ldrb r0, [r0, 0x12] - lsls r0, 2 - adds r0, r3 - ldrb r0, [r0, 0x3] - strh r0, [r1, 0x22] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end ConfigureCameraObjectForPlacingDecoration - - thumb_func_start SetUpPlacingDecorationPlayerAvatar -SetUpPlacingDecorationPlayerAvatar: @ 81281A8 - push {r4,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - ldr r3, =gTasks - lsls r2, r0, 2 - adds r2, r0 - lsls r2, 3 - adds r2, r3 - ldrb r2, [r2, 0x12] - ldr r3, =gUnknown_085A7250 - ldr r0, [r1] - ldrb r4, [r0, 0x12] - lsls r1, r4, 2 - adds r1, r3 - lsls r0, r2, 4 - ldrb r1, [r1, 0x2] - adds r0, r1 - subs r2, 0x1 - lsls r2, 3 - subs r0, r2 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r4, 0x2 - beq _081281E2 - cmp r4, 0x8 - beq _081281E2 - cmp r4, 0x9 - bne _081281EA -_081281E2: - adds r0, r2, 0 - subs r0, 0x8 - lsls r0, 24 - lsrs r2, r0, 24 -_081281EA: - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x8] - cmp r0, 0 - bne _0812820C - ldr r1, =SpriteCallbackDummy - str r0, [sp] - movs r0, 0xC1 - b _08128214 - .pool -_0812820C: - ldr r1, =SpriteCallbackDummy - movs r0, 0 - str r0, [sp] - movs r0, 0xC2 -_08128214: - movs r3, 0x48 - bl AddPseudoFieldObject - ldr r1, =gUnknown_0203AA39 - strb r0, [r1] - ldr r3, =gSprites - ldr r0, =gUnknown_0203AA39 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrb r2, [r0, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r2 - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0, 0x5] - ldr r4, =gUnknown_0203AA38 - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - bl DestroySprite - ldr r0, =gUnknown_03005DD0 - ldr r0, [r0, 0x4] - strb r0, [r4] - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end SetUpPlacingDecorationPlayerAvatar - - thumb_func_start sub_812826C -sub_812826C: @ 812826C - push {lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r2, =gDecorations - ldr r0, =gUnknown_0203A172 - ldrb r1, [r0] - ldr r0, =gUnknown_0203A14C - ldr r0, [r0] - adds r0, r1 - ldrb r0, [r0] - lsls r0, 5 - adds r0, r2 - ldrb r0, [r0, 0x12] - cmp r0, 0x9 - bls _0812828C - b _081283B2 -_0812828C: - lsls r0, 2 - ldr r1, =_081282A8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_081282A8: - .4byte _081282D0 - .4byte _081282E4 - .4byte _081282FC - .4byte _08128314 - .4byte _08128328 - .4byte _0812833C - .4byte _08128350 - .4byte _08128370 - .4byte _08128388 - .4byte _081283A0 -_081282D0: - ldr r0, =gTasks - lsls r1, r3, 2 - adds r1, r3 - lsls r1, 3 - adds r1, r0 - movs r0, 0x1 - b _08128394 - .pool -_081282E4: - ldr r1, =gTasks - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - adds r0, r1 - movs r1, 0x2 - strh r1, [r0, 0x12] - movs r1, 0x1 - b _081283B0 - .pool -_081282FC: - ldr r1, =gTasks - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - adds r0, r1 - movs r1, 0x3 - strh r1, [r0, 0x12] - movs r1, 0x1 - b _081283B0 - .pool -_08128314: - ldr r1, =gTasks - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - adds r0, r1 - movs r1, 0x4 - b _081283AC - .pool -_08128328: - ldr r0, =gTasks - lsls r1, r3, 2 - adds r1, r3 - lsls r1, 3 - adds r1, r0 - movs r0, 0x2 - b _08128394 - .pool -_0812833C: - ldr r1, =gTasks - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - adds r0, r1 - movs r1, 0x1 - b _081283AC - .pool -_08128350: - ldr r0, =gTasks - lsls r1, r3, 2 - adds r1, r3 - lsls r1, 3 - adds r1, r0 - movs r0, 0x1 - strh r0, [r1, 0x12] - movs r0, 0x3 - strh r0, [r1, 0x14] - ldrh r0, [r1, 0xA] - adds r0, 0x1 - strh r0, [r1, 0xA] - b _081283B2 - .pool -_08128370: - ldr r1, =gTasks - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - adds r0, r1 - movs r1, 0x2 - strh r1, [r0, 0x12] - movs r1, 0x4 - b _081283B0 - .pool -_08128388: - ldr r0, =gTasks - lsls r1, r3, 2 - adds r1, r3 - lsls r1, 3 - adds r1, r0 - movs r0, 0x3 -_08128394: - strh r0, [r1, 0x12] - strh r0, [r1, 0x14] - b _081283B2 - .pool -_081283A0: - ldr r1, =gTasks - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - adds r0, r1 - movs r1, 0x3 -_081283AC: - strh r1, [r0, 0x12] - movs r1, 0x2 -_081283B0: - strh r1, [r0, 0x14] -_081283B2: - pop {r0} - bx r0 - .pool - thumb_func_end sub_812826C - - thumb_func_start sub_81283BC -sub_81283BC: @ 81283BC - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x1C] - ldr r3, =gSprites - ldr r0, =gUnknown_0203AA38 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - movs r2, 0x1 - strh r2, [r0, 0x3C] - ldr r0, =gUnknown_0203AA39 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - strh r2, [r0, 0x3C] - bl sub_8128DE0 - adds r0, r4, 0 - bl sub_8128950 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81283BC - - thumb_func_start sub_8128414 -sub_8128414: @ 8128414 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x1C] - ldr r3, =gSprites - ldr r0, =gUnknown_0203AA38 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - movs r2, 0x1 - strh r2, [r0, 0x3C] - ldr r0, =gUnknown_0203AA39 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - strh r2, [r0, 0x3C] - bl sub_8128DE0 - ldr r5, =gStringVar4 - ldr r1, =gText_CancelDecorating - adds r0, r5, 0 - bl StringExpandPlaceholders - ldr r2, =sub_8128B80 - adds r0, r4, 0 - adds r1, r5, 0 - bl DisplayItemMessageOnField - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8128414 - - thumb_func_start sub_8128484 -sub_8128484: @ 8128484 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 16 - lsrs r4, r1, 16 - bl sub_80892C4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0812849E - cmp r4, 0 - beq _081284A2 -_0812849E: - movs r0, 0 - b _081284A4 -_081284A2: - movs r0, 0x1 -_081284A4: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8128484 - - thumb_func_start sub_81284AC -sub_81284AC: @ 81284AC - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r2, 16 - lsrs r4, r2, 16 - lsls r3, 16 - lsrs r5, r3, 16 - lsls r1, 16 - asrs r1, 16 - ldr r3, =gTasks - lsls r2, r0, 2 - adds r2, r0 - lsls r2, 3 - adds r2, r3 - movs r3, 0xE - ldrsh r0, [r2, r3] - adds r0, 0x7 - cmp r1, r0 - bne _081284EC - lsls r1, r4, 16 - asrs r1, 16 - movs r3, 0x10 - ldrsh r0, [r2, r3] - adds r0, 0x7 - cmp r1, r0 - bne _081284EC - cmp r5, 0 - beq _081284EC - movs r0, 0 - b _081284EE - .pool -_081284EC: - movs r0, 0x1 -_081284EE: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_81284AC - - thumb_func_start sub_81284F4 -sub_81284F4: @ 81284F4 - push {r4-r6,lr} - adds r5, r1, 0 - lsls r0, 16 - lsrs r6, r0, 16 - lsls r0, r6, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl sub_80892C4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08128534 - ldrb r0, [r5] - cmp r0, 0x21 - bne _08128522 - adds r0, r4, 0 - bl sub_8089378 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08128530 -_08128522: - lsls r0, r6, 24 - lsrs r0, 24 - bl sub_8089314 - lsls r0, 24 - cmp r0, 0 - beq _08128534 -_08128530: - movs r0, 0x1 - b _08128536 -_08128534: - movs r0, 0 -_08128536: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_81284F4 - - thumb_func_start sub_812853C -sub_812853C: @ 812853C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - str r1, [sp] - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - ldr r1, =gTasks - lsls r0, 2 - add r0, r10 - lsls r0, 3 - adds r0, r1 - ldrb r2, [r0, 0x14] - str r2, [sp, 0x4] - ldrb r0, [r0, 0x12] - str r0, [sp, 0x8] - ldr r3, [sp] - ldrb r0, [r3, 0x11] - adds r2, r1, 0 - cmp r0, 0x4 - bls _0812856E - b _0812893C -_0812856E: - lsls r0, 2 - ldr r1, =_08128580 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08128580: - .4byte _08128594 - .4byte _08128594 - .4byte _08128680 - .4byte _08128834 - .4byte _081288B8 -_08128594: - movs r6, 0 - ldr r0, [sp, 0x4] - cmp r6, r0 - bcc _0812859E - b _0812893C -_0812859E: - mov r1, r10 - lsls r1, 2 - str r1, [sp, 0x1C] -_081285A4: - mov r2, r10 - lsls r0, r2, 2 - add r0, r10 - lsls r0, 3 - ldr r3, =gTasks - adds r0, r3 - ldrh r0, [r0, 0xA] - subs r0, r6 - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - movs r7, 0 - adds r6, 0x1 - str r6, [sp, 0x14] - ldr r0, [sp, 0x8] - cmp r7, r0 - bcs _0812866E - mov r1, r9 - lsls r1, 16 - str r1, [sp, 0xC] - asrs r1, 16 - mov r9, r1 -_081285D0: - ldr r0, [sp, 0x1C] - add r0, r10 - lsls r0, 3 - ldr r2, =gTasks - adds r0, r2 - ldrh r0, [r0, 0x8] - adds r0, r7 - lsls r0, 16 - mov r8, r0 - asrs r6, r0, 16 - adds r0, r6, 0 - mov r1, r9 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r4, r0, 24 - ldr r3, [sp, 0x4] - ldr r1, [sp, 0x14] - subs r0, r3, r1 - ldr r2, [sp, 0x8] - adds r1, r0, 0 - muls r1, r2 - adds r1, r7 - ldr r3, [sp] - ldr r0, [r3, 0x1C] - lsls r1, 1 - adds r1, r0 - movs r2, 0x80 - lsls r2, 2 - adds r0, r2, 0 - ldrh r1, [r1] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - bl GetBehaviorByMetatileId - movs r3, 0xF0 - lsls r3, 8 - adds r1, r3, 0 - adds r5, r1, 0 - ands r5, r0 - adds r0, r4, 0 - ldr r1, [sp] - bl sub_81284F4 - lsls r0, 24 - cmp r0, 0 - bne _08128632 - b _0812890C -_08128632: - mov r0, r10 - adds r1, r6, 0 - mov r2, r9 - adds r3, r5, 0 - bl sub_81284AC - lsls r0, 24 - cmp r0, 0 - bne _08128646 - b _0812890C -_08128646: - mov r1, r8 - lsrs r0, r1, 16 - ldr r2, [sp, 0xC] - lsrs r1, r2, 16 - movs r2, 0 - bl GetFieldObjectIdByXYZ - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _08128662 - cmp r4, 0x10 - beq _08128662 - b _0812890C -_08128662: - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r3, [sp, 0x8] - cmp r7, r3 - bcc _081285D0 -_0812866E: - ldr r1, [sp, 0x14] - lsls r0, r1, 24 - lsrs r6, r0, 24 - ldr r2, [sp, 0x4] - cmp r6, r2 - bcc _081285A4 - b _0812893C - .pool -_08128680: - movs r6, 0 - mov r3, r10 - lsls r3, 2 - str r3, [sp, 0x1C] - ldr r0, [sp, 0x4] - subs r0, 0x1 - str r0, [sp, 0x18] - cmp r6, r0 - bge _0812876C - adds r0, r3, 0 - add r0, r10 - lsls r0, 3 - str r0, [sp, 0x10] -_0812869A: - ldr r1, [sp, 0x10] - adds r0, r1, r2 - ldrh r0, [r0, 0xA] - subs r0, r6 - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - movs r7, 0 - adds r6, 0x1 - str r6, [sp, 0x14] - ldr r3, [sp, 0x8] - cmp r7, r3 - bcs _08128760 - lsls r0, 16 - str r0, [sp, 0x20] -_081286B8: - ldr r1, [sp, 0x10] - adds r0, r1, r2 - ldrh r0, [r0, 0x8] - adds r0, r7 - lsls r0, 16 - mov r8, r0 - asrs r6, r0, 16 - mov r2, r9 - lsls r1, r2, 16 - adds r0, r6, 0 - asrs r1, 16 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r4, r0, 24 - ldr r3, [sp, 0x4] - ldr r1, [sp, 0x14] - subs r0, r3, r1 - ldr r2, [sp, 0x8] - adds r1, r0, 0 - muls r1, r2 - adds r1, r7 - ldr r3, [sp] - ldr r0, [r3, 0x1C] - lsls r1, 1 - adds r1, r0 - movs r2, 0x80 - lsls r2, 2 - adds r0, r2, 0 - ldrh r1, [r1] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - bl GetBehaviorByMetatileId - movs r3, 0xF0 - lsls r3, 8 - adds r1, r3, 0 - adds r5, r1, 0 - ands r5, r0 - adds r0, r4, 0 - bl sub_8089314 - lsls r0, 24 - cmp r0, 0 - bne _08128724 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8128484 - lsls r0, 24 - cmp r0, 0 - bne _08128724 - b _0812890C -_08128724: - mov r0, r10 - adds r1, r6, 0 - ldr r3, [sp, 0x20] - asrs r2, r3, 16 - adds r3, r5, 0 - bl sub_81284AC - lsls r0, 24 - cmp r0, 0 - bne _0812873A - b _0812890C -_0812873A: - mov r1, r8 - lsrs r0, r1, 16 - ldr r2, [sp, 0x20] - lsrs r1, r2, 16 - movs r2, 0 - bl GetFieldObjectIdByXYZ - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x10 - beq _08128752 - b _0812890C -_08128752: - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r2, =gTasks - ldr r3, [sp, 0x8] - cmp r7, r3 - bcc _081286B8 -_08128760: - ldr r1, [sp, 0x14] - lsls r0, r1, 24 - lsrs r6, r0, 24 - ldr r3, [sp, 0x18] - cmp r6, r3 - blt _0812869A -_0812876C: - ldr r0, [sp, 0x1C] - add r0, r10 - lsls r0, 3 - adds r0, r2 - ldrh r0, [r0, 0xA] - ldr r1, [sp, 0x4] - subs r0, r1 - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - movs r7, 0 - ldr r3, [sp, 0x8] - cmp r7, r3 - bcc _0812878C - b _0812893C -_0812878C: - lsls r0, 16 - str r0, [sp, 0x20] -_08128790: - ldr r0, [sp, 0x1C] - add r0, r10 - lsls r0, 3 - ldr r1, =gTasks - adds r0, r1 - ldrh r0, [r0, 0x8] - adds r0, r7 - lsls r0, 16 - mov r8, r0 - asrs r6, r0, 16 - mov r2, r9 - lsls r1, r2, 16 - adds r0, r6, 0 - asrs r1, 16 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r4, r0, 24 - ldr r3, [sp] - ldr r0, [r3, 0x1C] - lsls r1, r7, 1 - adds r1, r0 - movs r2, 0x80 - lsls r2, 2 - adds r0, r2, 0 - ldrh r1, [r1] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - bl GetBehaviorByMetatileId - movs r3, 0xF0 - lsls r3, 8 - adds r1, r3, 0 - adds r5, r1, 0 - ands r5, r0 - adds r0, r4, 0 - bl sub_8089314 - lsls r0, 24 - cmp r0, 0 - bne _081287F2 - adds r0, r4, 0 - bl sub_8089328 - lsls r0, 24 - cmp r0, 0 - bne _081287F2 - b _0812890C -_081287F2: - mov r0, r10 - adds r1, r6, 0 - ldr r3, [sp, 0x20] - asrs r2, r3, 16 - adds r3, r5, 0 - bl sub_81284AC - lsls r0, 24 - cmp r0, 0 - bne _08128808 - b _0812890C -_08128808: - mov r1, r8 - lsrs r0, r1, 16 - ldr r2, [sp, 0x20] - lsrs r1, r2, 16 - movs r2, 0 - bl GetFieldObjectIdByXYZ - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _08128822 - cmp r4, 0x10 - bne _0812890C -_08128822: - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r3, [sp, 0x8] - cmp r7, r3 - bcc _08128790 - b _0812893C - .pool -_08128834: - movs r6, 0 - ldr r0, [sp, 0x4] - cmp r6, r0 - bcc _0812883E - b _0812893C -_0812883E: - mov r1, r10 - lsls r0, r1, 2 - add r0, r10 - lsls r1, r0, 3 - ldr r2, =gTasks - adds r0, r1, r2 - ldrh r0, [r0, 0xA] - subs r0, r6 - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - movs r7, 0 - ldr r3, [sp, 0x8] - cmp r7, r3 - bcs _081288A4 - adds r0, r2, 0 - adds r1, r0 - mov r8, r1 - mov r1, r9 - lsls r0, r1, 16 - asrs r5, r0, 16 -_08128868: - mov r2, r8 - ldrh r0, [r2, 0x8] - adds r0, r7 - lsls r0, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - adds r1, r5, 0 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl sub_8089328 - lsls r0, 24 - cmp r0, 0 - beq _0812890C - adds r0, r4, 0 - adds r1, r5, 0x1 - bl MapGridGetMetatileIdAt - movs r1, 0xA3 - lsls r1, 2 - cmp r0, r1 - beq _0812890C - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r3, [sp, 0x8] - cmp r7, r3 - bcc _08128868 -_081288A4: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, [sp, 0x4] - cmp r6, r0 - bcc _0812883E - b _0812893C - .pool -_081288B8: - mov r3, r10 - lsls r1, r3, 2 - adds r0, r1, r3 - lsls r0, 3 - adds r0, r2 - ldrh r0, [r0, 0xA] - mov r9, r0 - movs r7, 0 - str r1, [sp, 0x1C] - ldr r0, [sp, 0x8] - cmp r7, r0 - bcs _0812893C - adds r6, r2, 0 - mov r1, r9 - lsls r1, 16 - str r1, [sp, 0x20] -_081288D8: - ldr r0, [sp, 0x1C] - add r0, r10 - lsls r0, 3 - adds r0, r6 - ldrh r0, [r0, 0x8] - adds r0, r7 - lsls r0, 16 - lsrs r5, r0, 16 - asrs r0, 16 - mov r2, r9 - lsls r1, r2, 16 - asrs r1, 16 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r4, r0, 24 - ldr r3, [sp] - ldrb r0, [r3, 0x12] - cmp r0, 0x5 - bne _08128910 -_08128900: - adds r0, r4, 0 - bl sub_8089364 - lsls r0, 24 - cmp r0, 0 - bne _0812891C -_0812890C: - movs r0, 0 - b _0812893E -_08128910: - adds r0, r4, 0 - bl sub_8089350 - lsls r0, 24 - cmp r0, 0 - beq _08128900 -_0812891C: - adds r0, r5, 0 - ldr r2, [sp, 0x20] - lsrs r1, r2, 16 - movs r2, 0 - bl GetFieldObjectIdByXYZ - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x10 - bne _0812890C - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r3, [sp, 0x8] - cmp r7, r3 - bcc _081288D8 -_0812893C: - movs r0, 0x1 -_0812893E: - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_812853C - - thumb_func_start sub_8128950 -sub_8128950: @ 8128950 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, =gUnknown_0203A172 - ldrb r1, [r0] - ldr r0, =gUnknown_0203A14C - ldr r0, [r0] - adds r0, r1 - ldrb r1, [r0] - lsls r1, 5 - ldr r0, =gDecorations - adds r1, r0 - adds r0, r5, 0 - bl sub_812853C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081289A4 - ldr r4, =gStringVar4 - ldr r1, =gText_PlaceItHere - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, =sub_81289D0 - adds r0, r5, 0 - adds r1, r4, 0 - bl DisplayItemMessageOnField - b _081289BE - .pool -_081289A4: - movs r0, 0x20 - bl PlaySE - ldr r4, =gStringVar4 - ldr r1, =gText_CantBePlacedHere - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, =sub_8129020 - adds r0, r5, 0 - adds r1, r4, 0 - bl DisplayItemMessageOnField -_081289BE: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8128950 - - thumb_func_start sub_81289D0 -sub_81289D0: @ 81289D0 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8197930 - ldr r1, =gUnknown_085A72C4 - adds r0, r4, 0 - bl sub_8121F68 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81289D0 - - thumb_func_start sub_81289F0 -sub_81289F0: @ 81289F0 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0 - movs r1, 0 - bl sub_8197434 - adds r0, r4, 0 - bl sub_8128AAC - ldr r2, =gDecorations - ldr r0, =gUnknown_0203A172 - ldrb r1, [r0] - ldr r0, =gUnknown_0203A14C - ldr r0, [r0] - adds r0, r1 - ldrb r3, [r0] - lsls r0, r3, 5 - adds r0, r2 - ldrb r0, [r0, 0x11] - cmp r0, 0x4 - beq _08128A44 - ldr r0, =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x8] - ldrh r1, [r1, 0xA] - adds r2, r3, 0 - bl sub_8127D38 - b _08128A64 - .pool -_08128A44: - ldr r2, =gUnknown_0203AA34 - ldr r0, =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x8] - subs r0, 0x7 - strh r0, [r2] - ldr r2, =gUnknown_0203AA36 - ldrh r0, [r1, 0xA] - subs r0, 0x7 - strh r0, [r2] - ldr r0, =gUnknown_08275D1F - bl ScriptContext1_SetupScript -_08128A64: - ldr r2, =gSprites - ldr r0, =gUnknown_0203AA38 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r1, [r0, 0x22] - adds r1, 0x2 - strh r1, [r0, 0x22] - ldr r0, =gMapHeader - ldrb r0, [r0, 0x14] - cmp r0, 0x56 - bne _08128A84 - bl sub_80EE104 -_08128A84: - adds r0, r4, 0 - bl sub_8128BBC - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81289F0 - - thumb_func_start sub_8128AAC -sub_8128AAC: @ 8128AAC - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - movs r3, 0 - ldr r0, =gUnknown_0203A17C - ldrb r1, [r0, 0x8] - adds r5, r0, 0 - cmp r3, r1 - bcs _08128AD2 - ldr r4, [r5] -_08128AC0: - adds r2, r4, r3 - ldrb r0, [r2] - cmp r0, 0 - beq _08128AF0 - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, r1 - bcc _08128AC0 -_08128AD2: - ldrb r0, [r5, 0x9] - cmp r0, 0 - bne _08128B3C - movs r3, 0 - ldr r0, =gUnknown_0203A152 - ldrb r1, [r0] - adds r2, r0, 0 - cmp r1, 0 - bne _08128B28 - b _08128B48 - .pool -_08128AF0: - ldr r0, =gUnknown_0203A172 - ldrb r1, [r0] - ldr r0, =gUnknown_0203A14C - ldr r0, [r0] - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - ldr r2, [r5, 0x4] - adds r2, r3 - ldr r0, =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldrb r0, [r1, 0x8] - subs r0, 0x7 - lsls r0, 4 - ldrb r1, [r1, 0xA] - subs r1, 0x7 - adds r0, r1 - strb r0, [r2] - b _08128AD2 - .pool -_08128B28: - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0xF - bhi _08128B76 - adds r1, r3, r2 - ldrb r0, [r1] - cmp r0, 0 - bne _08128B28 - b _08128B6E -_08128B3C: - movs r3, 0 - ldr r0, =gUnknown_0203A162 - ldrb r1, [r0] - adds r2, r0, 0 - cmp r1, 0 - bne _08128B5C -_08128B48: - ldr r0, =gUnknown_0203A172 - ldrb r0, [r0] - adds r0, 0x1 - strb r0, [r2] - b _08128B76 - .pool -_08128B5C: - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0xB - bhi _08128B76 - adds r1, r3, r2 - ldrb r0, [r1] - cmp r0, 0 - bne _08128B5C -_08128B6E: - ldr r0, =gUnknown_0203A172 - ldrb r0, [r0] - adds r0, 0x1 - strb r0, [r1] -_08128B76: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8128AAC - - thumb_func_start sub_8128B80 -sub_8128B80: @ 8128B80 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8197930 - ldr r1, =gUnknown_085A72CC - adds r0, r4, 0 - bl sub_8121F68 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8128B80 - - thumb_func_start sub_8128BA0 -sub_8128BA0: @ 8128BA0 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - movs r1, 0 - bl sub_8197434 - adds r0, r4, 0 - bl sub_8128BBC - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8128BA0 - - thumb_func_start sub_8128BBC -sub_8128BBC: @ 8128BBC - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - movs r1, 0 - bl fade_screen - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0xC] - ldr r1, =c1_overworld_prev_quest - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8128BBC - - thumb_func_start c1_overworld_prev_quest -c1_overworld_prev_quest: @ 8128BEC - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r5, r0, r1 - movs r1, 0xC - ldrsh r0, [r5, r1] - cmp r0, 0 - beq _08128C10 - cmp r0, 0x1 - beq _08128C30 - b _08128C4C - .pool -_08128C10: - bl ScriptContext2_Enable - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08128C4C - adds r0, r4, 0 - bl sub_8127B04 - movs r0, 0x1 - strh r0, [r5, 0xC] - b _08128C4C - .pool -_08128C30: - bl sub_812A3C8 - ldr r0, =0x00000be5 - bl FreeSpritePaletteByTag - ldr r1, =gFieldCallback - ldr r0, =sub_8128CD4 - str r0, [r1] - ldr r0, =c2_exit_to_overworld_2_switch - bl SetMainCallback2 - adds r0, r4, 0 - bl DestroyTask -_08128C4C: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end c1_overworld_prev_quest - - thumb_func_start sub_8128C64 -sub_8128C64: @ 8128C64 - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r5, r1, 3 - ldr r6, =gTasks + 0x8 - adds r4, r5, r6 - movs r1, 0x4 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _08128C9C - cmp r0, 0x1 - bgt _08128C8C - cmp r0, 0 - beq _08128C96 - b _08128CCA - .pool -_08128C8C: - cmp r0, 0x2 - beq _08128CA8 - cmp r0, 0x3 - beq _08128CB4 - b _08128CCA -_08128C96: - bl sub_80E9578 - b _08128CAC -_08128C9C: - ldr r0, =gUnknown_08275D0C - bl ScriptContext1_SetupScript - b _08128CAC - .pool -_08128CA8: - bl ScriptContext2_Enable -_08128CAC: - ldrh r0, [r4, 0x4] - adds r0, 0x1 - strh r0, [r4, 0x4] - b _08128CCA -_08128CB4: - bl sub_80ABDFC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08128CCA - adds r0, r6, 0 - subs r0, 0x8 - adds r0, r5, r0 - ldr r1, =sub_812764C - str r1, [r0] -_08128CCA: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8128C64 - - thumb_func_start sub_8128CD4 -sub_8128CD4: @ 8128CD4 - push {r4,lr} - bl ScriptContext2_Enable - bl pal_fill_black - ldr r0, =sub_8128C64 - movs r1, 0x8 - bl CreateTask - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - bl sub_8127580 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0xC] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8128CD4 - - thumb_func_start sub_8128D10 -sub_8128D10: @ 8128D10 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, =gTasks + 0x8 - adds r2, r1, r0 - ldr r0, =gUnknown_0203AA3A - ldrb r1, [r0] - adds r3, r0, 0 - cmp r1, 0x1 - bne _08128D48 - movs r1, 0x2 - ldrsh r0, [r2, r1] - movs r4, 0xC - ldrsh r1, [r2, r4] - subs r0, r1 - subs r0, 0x6 - cmp r0, 0 - bge _08128D48 - ldrh r0, [r2, 0x2] - adds r0, 0x1 - b _08128D62 - .pool -_08128D48: - ldrb r0, [r3] - cmp r0, 0x2 - bne _08128D6C - movs r0, 0x2 - ldrsh r1, [r2, r0] - subs r1, 0x7 - ldr r0, =gMapHeader - ldr r0, [r0] - ldr r0, [r0, 0x4] - cmp r1, r0 - blt _08128D6C - ldrh r0, [r2, 0x2] - subs r0, 0x1 -_08128D62: - strh r0, [r2, 0x2] - movs r0, 0 - b _08128DAE - .pool -_08128D6C: - ldrb r0, [r3] - cmp r0, 0x3 - bne _08128D82 - movs r1, 0 - ldrsh r0, [r2, r1] - subs r0, 0x7 - cmp r0, 0 - bge _08128D82 - ldrh r0, [r2] - adds r0, 0x1 - b _08128DA2 -_08128D82: - ldrb r0, [r3] - cmp r0, 0x4 - bne _08128DAC - movs r3, 0 - ldrsh r1, [r2, r3] - movs r4, 0xA - ldrsh r0, [r2, r4] - adds r1, r0 - subs r1, 0x8 - ldr r0, =gMapHeader - ldr r0, [r0] - ldr r0, [r0] - cmp r1, r0 - blt _08128DAC - ldrh r0, [r2] - subs r0, 0x1 -_08128DA2: - strh r0, [r2] - movs r0, 0 - b _08128DAE - .pool -_08128DAC: - movs r0, 0x1 -_08128DAE: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8128D10 - - thumb_func_start sub_8128DB4 -sub_8128DB4: @ 8128DB4 - push {lr} - ldr r0, =gMain - ldrh r0, [r0, 0x2C] - movs r1, 0xF0 - ands r1, r0 - cmp r1, 0x40 - beq _08128DD8 - cmp r1, 0x80 - beq _08128DD8 - cmp r1, 0x20 - beq _08128DD8 - cmp r1, 0x10 - beq _08128DD8 - movs r0, 0 - b _08128DDA - .pool -_08128DD8: - movs r0, 0x1 -_08128DDA: - pop {r1} - bx r1 - thumb_func_end sub_8128DB4 - - thumb_func_start sub_8128DE0 -sub_8128DE0: @ 8128DE0 - push {r4,lr} - ldr r1, =gUnknown_0203AA3A - movs r0, 0 - strb r0, [r1] - ldr r4, =gSprites - ldr r3, =gUnknown_0203AA38 - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r2, 0 - strh r2, [r0, 0x32] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - strh r2, [r0, 0x34] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8128DE0 - - thumb_func_start sub_8128E18 -sub_8128E18: @ 8128E18 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r2, r0, 24 - mov r8, r2 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - ldr r5, =gSprites - ldr r3, =gUnknown_0203AA38 - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - movs r1, 0x36 - ldrsh r6, [r0, r1] - cmp r6, 0 - beq _08128E46 - b _08128F66 -_08128E46: - movs r1, 0x14 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - bne _08128E68 - ldr r0, =gUnknown_085A72D4 - movs r3, 0x18 - ldrsh r1, [r4, r3] - lsls r1, 3 - b _08128E76 - .pool -_08128E68: - cmp r0, 0x2 - bne _08128E88 - ldr r0, =gUnknown_085A72D4 - movs r3, 0x18 - ldrsh r1, [r4, r3] - lsls r1, 3 - adds r0, 0x4 -_08128E76: - adds r1, r0 - ldr r1, [r1] - adds r0, r2, 0 - bl _call_via_r1 - b _08128FBA - .pool -_08128E88: - ldr r2, =gMain - ldrh r1, [r2, 0x2C] - movs r7, 0xF0 - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0x40 - bne _08128EBC - ldr r1, =gUnknown_0203AA3A - movs r0, 0x1 - strb r0, [r1] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - strh r6, [r0, 0x32] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r1, =0x0000fffe - strh r1, [r0, 0x34] - ldrh r0, [r4, 0x2] - subs r0, 0x1 - strh r0, [r4, 0x2] -_08128EBC: - ldrh r1, [r2, 0x2C] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0x80 - bne _08128EEC - ldr r1, =gUnknown_0203AA3A - movs r0, 0x2 - strb r0, [r1] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - strh r6, [r0, 0x32] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - movs r1, 0x2 - strh r1, [r0, 0x34] - ldrh r0, [r4, 0x2] - adds r0, 0x1 - strh r0, [r4, 0x2] -_08128EEC: - ldrh r1, [r2, 0x2C] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0x20 - bne _08128F1C - ldr r1, =gUnknown_0203AA3A - movs r0, 0x3 - strb r0, [r1] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r1, =0x0000fffe - strh r1, [r0, 0x32] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - strh r6, [r0, 0x34] - ldrh r0, [r4] - subs r0, 0x1 - strh r0, [r4] -_08128F1C: - ldrh r1, [r2, 0x2C] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0x10 - bne _08128F4C - ldr r1, =gUnknown_0203AA3A - movs r0, 0x4 - strb r0, [r1] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - movs r1, 0x2 - strh r1, [r0, 0x32] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - strh r6, [r0, 0x34] - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] -_08128F4C: - bl sub_8128DB4 - lsls r0, 24 - cmp r0, 0 - beq _08128F62 - mov r0, r8 - bl sub_8128D10 - lsls r0, 24 - cmp r0, 0 - bne _08128F66 -_08128F62: - bl sub_8128DE0 -_08128F66: - ldr r0, =gUnknown_0203AA3A - ldrb r0, [r0] - cmp r0, 0 - beq _08128F94 - ldr r3, =gSprites - ldr r2, =gUnknown_0203AA38 - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrh r1, [r0, 0x36] - adds r1, 0x1 - strh r1, [r0, 0x36] - ldrb r0, [r2] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r3 - ldrh r2, [r1, 0x36] - movs r0, 0x7 - ands r0, r2 - strh r0, [r1, 0x36] -_08128F94: - movs r1, 0x14 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _08128FBA - ldr r3, =gMain - ldrh r1, [r3, 0x2E] - movs r2, 0x1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _08128FAC - strh r2, [r4, 0x14] -_08128FAC: - ldrh r1, [r3, 0x2E] - movs r2, 0x2 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _08128FBA - strh r2, [r4, 0x14] -_08128FBA: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8128E18 - - thumb_func_start sub_8128FD8 -sub_8128FD8: @ 8128FD8 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - movs r1, 0x1 - bl sub_8197434 - ldr r2, =gSprites - ldr r0, =gUnknown_0203AA38 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r2, 0 - strh r2, [r0, 0x3C] - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - strh r2, [r0, 0x1C] - ldr r1, =sub_8128E18 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8128FD8 - - thumb_func_start sub_8129020 -sub_8129020: @ 8129020 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0812903A - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08129040 -_0812903A: - adds r0, r2, 0 - bl sub_8128FD8 -_08129040: - pop {r0} - bx r0 - .pool - thumb_func_end sub_8129020 - - thumb_func_start sub_8129048 -sub_8129048: @ 8129048 - push {lr} - sub sp, 0x4 - adds r1, r0, 0 - mov r2, sp - movs r0, 0 - strh r0, [r2] - ldr r2, =0x01000452 - mov r0, sp - bl CpuSet - add sp, 0x4 - pop {r0} - bx r0 - .pool - thumb_func_end sub_8129048 - - thumb_func_start sub_8129068 -sub_8129068: @ 8129068 - push {lr} - adds r2, r0, 0 - lsls r1, 16 - ldr r0, =gTilesetPointer_SecretBase - ldr r0, [r0] - lsrs r1, 11 - ldr r0, [r0, 0x8] - adds r0, r1 - adds r1, r2, 0 - movs r2, 0x8 - bl CpuFastSet - pop {r0} - bx r0 - .pool - thumb_func_end sub_8129068 - - thumb_func_start sub_8129088 -sub_8129088: @ 8129088 - push {r4-r7,lr} - sub sp, 0x20 - adds r7, r0, 0 - lsls r1, 16 - lsrs r2, r1, 16 - lsrs r4, r1, 26 - adds r5, r4, 0 - cmp r2, 0 - beq _0812909E - ldr r0, =0x000003ff - ands r2, r0 -_0812909E: - ldr r0, =gTilesetPointer_SecretBase - ldr r0, [r0] - lsls r1, r2, 5 - ldr r0, [r0, 0x4] - adds r0, r1 - mov r1, sp - movs r2, 0x8 - bl CpuFastSet - cmp r4, 0x1 - beq _081290DE - cmp r4, 0x1 - bgt _081290C8 - cmp r4, 0 - beq _081290D2 - b _0812919A - .pool -_081290C8: - cmp r5, 0x2 - beq _0812913E - cmp r5, 0x3 - beq _08129176 - b _0812919A -_081290D2: - mov r0, sp - adds r1, r7, 0 - movs r2, 0x8 - bl CpuFastSet - b _0812919A -_081290DE: - movs r5, 0 - movs r6, 0xF -_081290E2: - lsls r4, r5, 2 - adds r4, r7 - adds r5, 0x1 - lsls r3, r5, 2 - subs r0, r3, 0x1 - add r0, sp - ldrb r2, [r0] - lsrs r1, r2, 4 - adds r0, r6, 0 - ands r0, r2 - lsls r0, 4 - adds r1, r0 - strb r1, [r4] - subs r0, r3, 0x2 - add r0, sp - ldrb r2, [r0] - lsrs r1, r2, 4 - adds r0, r6, 0 - ands r0, r2 - lsls r0, 4 - adds r1, r0 - strb r1, [r4, 0x1] - subs r0, r3, 0x3 - add r0, sp - ldrb r2, [r0] - lsrs r1, r2, 4 - adds r0, r6, 0 - ands r0, r2 - lsls r0, 4 - adds r1, r0 - strb r1, [r4, 0x2] - subs r3, 0x4 - mov r1, sp - adds r0, r1, r3 - ldrb r2, [r0] - lsrs r1, r2, 4 - adds r0, r6, 0 - ands r0, r2 - lsls r0, 4 - adds r1, r0 - strb r1, [r4, 0x3] - lsls r5, 16 - lsrs r5, 16 - cmp r5, 0x7 - bls _081290E2 - b _0812919A -_0812913E: - movs r5, 0 - movs r3, 0x7 -_08129142: - lsls r2, r5, 2 - adds r2, r7 - subs r1, r3, r5 - lsls r1, 2 - mov r4, sp - adds r0, r4, r1 - ldrb r0, [r0] - strb r0, [r2] - adds r0, r1, 0x1 - add r0, sp - ldrb r0, [r0] - strb r0, [r2, 0x1] - adds r0, r1, 0x2 - add r0, sp - ldrb r0, [r0] - strb r0, [r2, 0x2] - adds r1, 0x3 - adds r0, r4, r1 - ldrb r0, [r0] - strb r0, [r2, 0x3] - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x7 - bls _08129142 - b _0812919A -_08129176: - movs r5, 0 - movs r4, 0x1F - movs r6, 0xF -_0812917C: - adds r3, r7, r5 - subs r0, r4, r5 - add r0, sp - ldrb r2, [r0] - lsrs r1, r2, 4 - adds r0, r6, 0 - ands r0, r2 - lsls r0, 4 - adds r1, r0 - strb r1, [r3] - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x1F - bls _0812917C -_0812919A: - add sp, 0x20 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8129088 - - thumb_func_start sub_81291A4 -sub_81291A4: @ 81291A4 - push {r4,r5,lr} - adds r5, r0, 0 - movs r4, 0 -_081291AA: - lsls r0, r4, 5 - adds r0, 0x84 - adds r0, r5, r0 - lsls r2, r4, 1 - adds r1, r5, 0x4 - adds r1, r2 - ldrh r1, [r1] - bl sub_8129088 - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x3F - bls _081291AA - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_81291A4 - - thumb_func_start sub_81291CC -sub_81291CC: @ 81291CC - lsls r0, 16 - ldr r1, =gTilesetPointer_SecretBaseRedCave - ldr r1, [r1] - ldr r1, [r1, 0xC] - lsrs r0, 15 - adds r0, r1 - ldrh r1, [r0] - ldr r0, =0x00000fff - ands r0, r1 - bx lr - .pool - thumb_func_end sub_81291CC - - thumb_func_start sub_81291E8 -sub_81291E8: @ 81291E8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - ldr r0, [r0] - ldrb r0, [r0, 0x12] - movs r6, 0 - ldr r1, =gUnknown_085A71B0 - lsls r5, r0, 4 - adds r0, r5, r1 - ldrb r0, [r0, 0xC] - cmp r6, r0 - bcs _0812924C - adds r7, r1, 0 -_08129204: - mov r4, r8 - ldm r4!, {r1} - adds r0, r7, 0x4 - adds r0, r5, r0 - ldr r0, [r0] - adds r0, r6 - ldrb r0, [r0] - ldr r1, [r1, 0x1C] - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] - adds r1, r7, 0 - adds r1, 0x8 - adds r1, r5, r1 - ldr r1, [r1] - adds r1, r6 - lsls r0, 3 - ldrb r1, [r1] - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - bl sub_81291CC - adds r2, r5, r7 - ldr r1, [r2] - adds r1, r6 - ldrb r1, [r1] - lsls r1, 1 - adds r4, r1 - strh r0, [r4] - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - ldrb r2, [r2, 0xC] - cmp r6, r2 - bcc _08129204 -_0812924C: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81291E8 - - thumb_func_start sub_812925C -sub_812925C: @ 812925C - push {r4,r5,lr} - lsls r0, 24 - ldr r3, =gUnknown_0203AA3C - movs r1, 0 - strb r1, [r3] - ldrb r2, [r3, 0x1] - subs r1, 0x4 - ands r1, r2 - movs r5, 0xD - negs r5, r5 - ands r1, r5 - movs r2, 0x11 - negs r2, r2 - ands r1, r2 - subs r2, 0x10 - ands r1, r2 - strb r1, [r3, 0x1] - ldr r1, =gUnknown_085A7250 - lsrs r0, 22 - adds r0, r1 - ldrb r1, [r0] - movs r4, 0x3F - lsls r1, 6 - strb r1, [r3, 0x1] - ldrh r2, [r3, 0x2] - ldr r1, =0xfffffe00 - ands r1, r2 - strh r1, [r3, 0x2] - ldrb r2, [r3, 0x3] - movs r1, 0x3F - negs r1, r1 - ands r1, r2 - strb r1, [r3, 0x3] - ldrb r0, [r0, 0x1] - lsls r0, 6 - ands r4, r1 - orrs r4, r0 - strb r4, [r3, 0x3] - ldrh r1, [r3, 0x4] - ldr r0, =0xfffffc00 - ands r0, r1 - strh r0, [r3, 0x4] - ldrb r0, [r3, 0x5] - ands r5, r0 - movs r0, 0xF - ands r5, r0 - strb r5, [r3, 0x5] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_812925C - - thumb_func_start sub_81292D0 -sub_81292D0: @ 81292D0 - movs r1, 0 - strh r1, [r0, 0x32] - strh r1, [r0, 0x34] - strh r1, [r0, 0x36] - strh r1, [r0, 0x38] - strh r1, [r0, 0x3A] - strh r1, [r0, 0x3C] - ldr r1, =sub_81292E8 - str r1, [r0, 0x1C] - bx lr - .pool - thumb_func_end sub_81292D0 - - thumb_func_start sub_81292E8 -sub_81292E8: @ 81292E8 - push {lr} - adds r2, r0, 0 - movs r1, 0x3C - ldrsh r0, [r2, r1] - cmp r0, 0 - bne _08129322 - movs r1, 0x3A - ldrsh r0, [r2, r1] - cmp r0, 0xE - bgt _0812930A - adds r3, r2, 0 - adds r3, 0x3E - ldrb r1, [r3] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - b _08129314 -_0812930A: - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x4 - orrs r0, r1 -_08129314: - strb r0, [r3] - ldrh r0, [r2, 0x3A] - adds r0, 0x1 - movs r1, 0x1F - ands r0, r1 - strh r0, [r2, 0x3A] - b _0812932E -_08129322: - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] -_0812932E: - pop {r0} - bx r0 - thumb_func_end sub_81292E8 - - thumb_func_start gpu_pal_decompress_alloc_tag_and_upload -gpu_pal_decompress_alloc_tag_and_upload: @ 8129334 - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r0, 0 - lsls r4, r1, 24 - lsrs r4, 24 - bl sub_8129048 - lsls r4, 5 - ldr r0, =gDecorations - adds r4, r0 - str r4, [r5] - ldrb r0, [r4, 0x11] - cmp r0, 0x4 - beq _081293B4 - ldr r0, =0x00000be5 - bl FreeSpritePaletteByTag - adds r0, r5, 0 - bl sub_81291E8 - ldr r0, [r5] - ldrb r0, [r0, 0x12] - bl sub_812925C - adds r0, r5, 0 - bl sub_81291A4 - ldr r1, =0x00000884 - adds r0, r5, r1 - ldr r1, =gTilesetPointer_SecretBaseRedCave - ldr r2, [r1] - ldr r1, [r5] - ldr r1, [r1, 0x1C] - ldrh r1, [r1] - ldr r2, [r2, 0xC] - lsls r1, 4 - adds r1, r2 - ldrh r1, [r1, 0xE] - lsrs r1, 12 - bl sub_8129068 - ldr r0, =gUnknown_085A72BC - bl LoadSpritePalette - ldr r0, =gUnknown_085A728C - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl CreateSprite - b _081293C6 - .pool -_081293B4: - ldr r0, [r4, 0x1C] - ldrh r0, [r0] - ldr r1, =SpriteCallbackDummy - movs r2, 0x1 - str r2, [sp] - movs r2, 0 - movs r3, 0 - bl AddPseudoFieldObject -_081293C6: - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end gpu_pal_decompress_alloc_tag_and_upload - - thumb_func_start AddDecorationIconObjectFromIconTable -@ u8 AddDecorationIconObjectFromIconTable(u16 tilesTag, u16 paletteTag, u8 decorationId) -AddDecorationIconObjectFromIconTable: @ 81293D8 - push {r4-r7,lr} - sub sp, 0x10 - lsls r0, 16 - lsrs r7, r0, 16 - lsls r1, 16 - lsrs r6, r1, 16 - lsls r2, 24 - lsrs r5, r2, 24 - bl AllocItemIconTemporaryBuffers - lsls r0, 24 - cmp r0, 0 - beq _08129490 - adds r0, r5, 0 - movs r1, 0 - bl GetDecorationIconPicOrPalette - ldr r4, =gUnknown_0203CEBC - ldr r1, [r4] - bl LZDecompressWram - ldr r0, [r4] - ldr r4, =gUnknown_0203CEC0 - ldr r1, [r4] - bl CopyItemIconPicTo4x4Buffer - ldr r0, [r4] - str r0, [sp] - ldr r4, =0xffff0000 - ldr r0, [sp, 0x4] - ands r0, r4 - movs r1, 0x80 - lsls r1, 2 - orrs r0, r1 - lsls r2, r7, 16 - ldr r1, =0x0000ffff - ands r0, r1 - orrs r0, r2 - str r0, [sp, 0x4] - mov r0, sp - bl LoadSpriteSheet - adds r0, r5, 0 - movs r1, 0x1 - bl GetDecorationIconPicOrPalette - str r0, [sp, 0x8] - add r0, sp, 0x8 - ldr r1, [r0, 0x4] - ands r1, r4 - orrs r1, r6 - str r1, [r0, 0x4] - bl LoadCompressedObjectPalette - movs r0, 0x18 - bl Alloc - adds r5, r0, 0 - adds r1, r5, 0 - ldr r0, =gUnknown_08614FF4 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - strh r7, [r5] - strh r6, [r5, 0x2] - adds r0, r5, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl CreateSprite - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl FreeItemIconTemporaryBuffers - adds r0, r5, 0 - bl Free - adds r0, r4, 0 - b _08129492 - .pool -_08129490: - movs r0, 0x40 -_08129492: - add sp, 0x10 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end AddDecorationIconObjectFromIconTable - - thumb_func_start GetDecorationIconPicOrPalette -@ u32 GetDecorationIconPicOrPalette(u16 decorationId, u8 which) -GetDecorationIconPicOrPalette: @ 812949C - push {lr} - lsls r0, 16 - lsrs r3, r0, 16 - lsls r1, 24 - lsrs r0, r1, 24 - cmp r3, 0x78 - bls _081294AC - movs r3, 0 -_081294AC: - ldr r2, =gUnknown_085A6BE8 - lsls r0, 2 - lsls r1, r3, 3 - adds r0, r1 - adds r0, r2 - ldr r0, [r0] - pop {r1} - bx r1 - .pool - thumb_func_end GetDecorationIconPicOrPalette - - thumb_func_start AddDecorationIconObjectFromFieldObject -@ u8 AddDecorationIconObjectFromFieldObject(u16 tilesTag, u16 paletteTag, u8 decorationId) -AddDecorationIconObjectFromFieldObject: @ 81294C0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x14 - adds r4, r2, 0 - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - lsls r1, 16 - lsrs r7, r1, 16 - lsls r4, 24 - lsrs r4, 24 - ldr r6, =gUnknown_0203A190 - adds r0, r6, 0 - bl sub_8129048 - lsls r4, 5 - ldr r0, =gDecorations - adds r4, r0 - str r4, [r6] - ldrb r0, [r4, 0x11] - cmp r0, 0x4 - beq _081295A4 - adds r0, r6, 0 - bl sub_81291E8 - ldr r0, [r6] - ldrb r0, [r0, 0x12] - bl sub_812925C - adds r0, r6, 0 - bl sub_81291A4 - ldr r0, =0x00000884 - adds r5, r6, r0 - ldr r0, =gTilesetPointer_SecretBaseRedCave - ldr r1, [r0] - ldr r0, [r6] - ldr r0, [r0, 0x1C] - ldrh r0, [r0] - ldr r1, [r1, 0xC] - lsls r0, 4 - adds r0, r1 - ldrh r1, [r0, 0xE] - lsrs r1, 12 - adds r0, r5, 0 - bl sub_8129068 - adds r0, r6, 0 - adds r0, 0x84 - str r0, [sp, 0x4] - ldr r1, =gUnknown_085A72F4 - ldr r0, [r6] - ldrb r0, [r0, 0x12] - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] - lsls r0, 21 - ldr r4, =0xffff0000 - mov r2, r8 - lsls r1, r2, 16 - lsrs r0, 16 - orrs r0, r1 - str r0, [sp, 0x8] - add r0, sp, 0x4 - bl LoadSpriteSheet - str r5, [sp, 0xC] - add r0, sp, 0xC - ldr r1, [r0, 0x4] - ands r1, r4 - orrs r1, r7 - str r1, [r0, 0x4] - bl LoadSpritePalette - movs r0, 0x18 - bl Alloc - adds r4, r0, 0 - adds r1, r4, 0 - ldr r0, =gUnknown_085A72A4 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - mov r3, r8 - strh r3, [r4] - strh r7, [r4, 0x2] - adds r0, r4, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r4, 0 - bl Free - b _081295BA - .pool -_081295A4: - ldr r0, [r4, 0x1C] - ldrh r0, [r0] - ldr r1, =SpriteCallbackDummy - movs r2, 0x1 - str r2, [sp] - movs r2, 0 - movs r3, 0 - bl AddPseudoFieldObject - lsls r0, 24 - lsrs r5, r0, 24 -_081295BA: - adds r0, r5, 0 - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end AddDecorationIconObjectFromFieldObject - - thumb_func_start AddDecorationIconObject -@ u8 AddDecorationIconObject(u8 decorationId, u16 x, u16 y, u8 priority, u16 tilesTag, u16 paletteTag) -AddDecorationIconObject: @ 81295CC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - ldr r4, [sp, 0x24] - ldr r5, [sp, 0x28] - lsls r0, 24 - lsrs r6, r0, 24 - mov r12, r6 - lsls r1, 16 - lsrs r1, 16 - mov r8, r1 - mov r9, r8 - lsls r2, 16 - lsrs r7, r2, 16 - mov r10, r7 - lsls r3, 24 - lsrs r3, 24 - str r3, [sp] - lsls r4, 16 - lsrs r4, 16 - adds r3, r4, 0 - lsls r5, 16 - lsrs r5, 16 - adds r2, r5, 0 - cmp r6, 0x78 - bls _08129634 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl AddDecorationIconObjectFromIconTable - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x40 - beq _08129696 - ldr r2, =gSprites - lsls r3, r4, 4 - adds r1, r3, r4 - lsls r1, 2 - adds r1, r2 - mov r5, r8 - lsls r0, r5, 16 - asrs r0, 16 - adds r0, 0x4 - strh r0, [r1, 0x24] - lsls r0, r7, 16 - b _081296B2 - .pool -_08129634: - ldr r0, =gUnknown_085A6BE8 - lsls r1, r6, 3 - adds r1, r0 - ldr r0, [r1] - cmp r0, 0 - bne _08129684 - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl AddDecorationIconObjectFromFieldObject - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x40 - beq _08129696 - ldr r1, =gSprites - lsls r2, r4, 4 - adds r0, r2, r4 - lsls r0, 2 - adds r5, r0, r1 - mov r0, r8 - strh r0, [r5, 0x24] - adds r0, r6, 0 - subs r0, 0x2A - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08129680 - lsls r0, r7, 16 - asrs r0, 16 - subs r0, 0x4 - strh r0, [r5, 0x26] - b _081296BC - .pool -_08129680: - strh r7, [r5, 0x26] - b _081296BC -_08129684: - adds r0, r3, 0 - adds r1, r2, 0 - mov r2, r12 - bl AddDecorationIconObjectFromIconTable - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x40 - bne _0812969A -_08129696: - movs r0, 0x40 - b _081296D8 -_0812969A: - ldr r2, =gSprites - lsls r3, r4, 4 - adds r1, r3, r4 - lsls r1, 2 - adds r1, r2 - mov r5, r9 - lsls r0, r5, 16 - asrs r0, 16 - adds r0, 0x4 - strh r0, [r1, 0x24] - mov r5, r10 - lsls r0, r5, 16 -_081296B2: - asrs r0, 16 - adds r0, 0x4 - strh r0, [r1, 0x26] - adds r1, r2, 0 - adds r2, r3, 0 -_081296BC: - adds r2, r4 - lsls r2, 2 - adds r2, r1 - movs r0, 0x3 - ldr r1, [sp] - ands r1, r0 - lsls r1, 2 - ldrb r3, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x5] - adds r0, r4, 0 -_081296D8: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end AddDecorationIconObject - - thumb_func_start sub_81296EC -sub_81296EC: @ 81296EC - lsls r0, 24 - lsrs r0, 24 - ldr r3, =gUnknown_0203A17C - ldr r1, [r3] - adds r1, r0 - movs r2, 0 - strb r2, [r1] - ldr r1, [r3, 0x4] - adds r1, r0 - strb r2, [r1] - bx lr - .pool - thumb_func_end sub_81296EC - - thumb_func_start sub_8129708 -sub_8129708: @ 8129708 - push {r4-r6,lr} - ldr r6, =gSpecialVar_0x8005 - movs r0, 0 - strh r0, [r6] - ldr r2, =gScriptResult - strh r0, [r2] - ldr r4, =gSpecialVar_0x8004 - ldr r1, =gUnknown_0203AAC4 - ldrh r0, [r4] - ldrb r1, [r1] - cmp r0, r1 - bne _08129744 - movs r0, 0x1 - strh r0, [r2] - b _08129796 - .pool -_08129738: - ldr r1, =gSpecialVar_0x8006 - ldrb r0, [r2] - strh r0, [r1] - b _08129796 - .pool -_08129744: - ldr r3, =gDecorations - ldr r2, =gUnknown_0203A17C - ldr r1, =gUnknown_0203AA44 - ldrh r0, [r4] - lsls r0, 3 - adds r4, r0, r1 - ldrb r1, [r4] - ldr r0, [r2] - adds r0, r1 - ldrb r0, [r0] - lsls r0, 5 - adds r0, r3 - ldrb r0, [r0, 0x11] - cmp r0, 0x4 - bne _08129796 - ldrh r0, [r4, 0x4] - strh r0, [r6] - ldrb r0, [r4] - bl sub_81296EC - movs r1, 0 - ldr r0, =gMapHeader - ldr r0, [r0, 0x4] - ldrb r2, [r0] - cmp r1, r2 - bcs _08129796 - ldr r5, [r0, 0x4] - ldrh r4, [r6] - adds r3, r2, 0 -_0812977E: - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 3 - adds r2, r0, r5 - ldrh r0, [r2, 0x14] - cmp r0, r4 - beq _08129738 - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, r3 - bcc _0812977E -_08129796: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8129708 - - thumb_func_start sub_81297AC -sub_81297AC: @ 81297AC - push {r4-r6,lr} - movs r2, 0 - ldr r0, =gMapHeader - ldr r0, [r0, 0x4] - ldrb r1, [r0] - cmp r2, r1 - bcs _081297F0 - adds r3, r0, 0 - ldr r5, [r3, 0x4] - ldr r0, =gSpecialVar_0x8004 - ldrh r4, [r0] - ldr r6, =gSpecialVar_0x8005 -_081297C4: - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0, r5 - ldrh r0, [r1, 0x14] - cmp r0, r4 - bne _081297E4 - ldrb r0, [r1] - strh r0, [r6] - b _081297F0 - .pool -_081297E4: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - ldrb r0, [r3] - cmp r2, r0 - bcc _081297C4 -_081297F0: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_81297AC - - thumb_func_start sub_81297F8 -sub_81297F8: @ 81297F8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - movs r6, 0 - b _081298BE -_08129808: - ldr r3, =gUnknown_0203AA44 - lsls r5, r6, 3 - adds r4, r5, r3 - ldrb r1, [r4] - ldr r2, =gUnknown_0203A17C - ldr r0, [r2] - adds r0, r1 - ldrb r0, [r0] - lsls r0, 5 - ldr r7, =gDecorations - adds r0, r7 - ldrb r2, [r0, 0x11] - ldr r7, =gUnknown_0203A17C - ldr r0, [r7, 0x4] - adds r0, r1 - ldrb r0, [r0] - lsrs r1, r0, 4 - mov r8, r1 - movs r7, 0xF - adds r1, r7, 0 - ands r1, r0 - str r1, [sp] - adds r7, r5, 0 - adds r6, 0x1 - str r6, [sp, 0x4] - cmp r2, 0x4 - beq _081298B8 - movs r6, 0 - ldrb r4, [r4, 0x2] - cmp r6, r4 - bcs _081298AE -_08129846: - movs r4, 0 - adds r0, r5, r3 - adds r2, r6, 0x1 - mov r10, r2 - ldrb r0, [r0, 0x1] - cmp r4, r0 - bcs _0812989C - ldr r3, =gUnknown_0203AA44 - adds r3, r7 - mov r9, r3 - subs r5, r6, 0x7 - str r5, [sp, 0x8] -_0812985E: - adds r0, r4, 0x7 - add r0, r8 - ldr r1, =gMapHeader - ldr r3, [r1] - ldr r1, [sp] - subs r2, r1, r6 - ldr r1, [r3] - muls r2, r1 - mov r5, r8 - adds r1, r5, r4 - adds r1, r2 - ldr r2, [r3, 0xC] - lsls r1, 1 - adds r1, r2 - ldrh r1, [r1] - movs r3, 0xC0 - lsls r3, 6 - adds r2, r3, 0 - orrs r2, r1 - ldr r5, [sp] - ldr r3, [sp, 0x8] - subs r1, r5, r3 - bl MapGridSetMetatileEntryAt - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - mov r5, r9 - ldrb r5, [r5, 0x1] - cmp r4, r5 - bcc _0812985E -_0812989C: - mov r1, r10 - lsls r0, r1, 24 - lsrs r6, r0, 24 - ldr r3, =gUnknown_0203AA44 - adds r5, r7, 0 - adds r0, r7, r3 - ldrb r0, [r0, 0x2] - cmp r6, r0 - bcc _08129846 -_081298AE: - ldr r2, =gUnknown_0203AA44 - adds r0, r7, r2 - ldrb r0, [r0] - bl sub_81296EC -_081298B8: - ldr r3, [sp, 0x4] - lsls r0, r3, 24 - lsrs r6, r0, 24 -_081298BE: - ldr r0, =gUnknown_0203AAC4 - ldrb r0, [r0] - cmp r6, r0 - bcc _08129808 - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81297F8 - - thumb_func_start sub_81298EC -sub_81298EC: @ 81298EC - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r4, r0, r1 - movs r1, 0xC - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _08129928 - cmp r0, 0x1 - bgt _08129914 - cmp r0, 0 - beq _0812991E - b _08129994 - .pool -_08129914: - cmp r0, 0x2 - beq _08129954 - cmp r0, 0x3 - beq _08129968 - b _08129994 -_0812991E: - bl sub_81297F8 - movs r0, 0x1 - strh r0, [r4, 0xC] - b _08129994 -_08129928: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08129994 - bl DrawWholeMapView - ldr r0, =gUnknown_08275D2E - bl ScriptContext1_SetupScript - movs r0, 0 - movs r1, 0x1 - bl sub_8197434 - movs r0, 0x2 - strh r0, [r4, 0xC] - b _08129994 - .pool -_08129954: - bl ScriptContext2_Enable - adds r0, r5, 0 - bl sub_8127814 - bl pal_fill_black - movs r0, 0x3 - strh r0, [r4, 0xC] - b _08129994 -_08129968: - bl sub_80ABDFC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08129994 - ldr r4, =gStringVar4 - ldr r1, =gText_DecorationReturnedToPC - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, =sub_8129D64 - adds r0, r5, 0 - adds r1, r4, 0 - bl DisplayItemMessageOnField - ldr r0, =gMapHeader - ldrb r0, [r0, 0x14] - cmp r0, 0x56 - bne _08129994 - bl sub_80EE104 -_08129994: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81298EC - - thumb_func_start sub_81299AC -sub_81299AC: @ 81299AC - push {lr} - movs r1, 0 - ldr r0, =gUnknown_0203A17C - ldrb r2, [r0, 0x8] - cmp r1, r2 - bcs _081299D6 - ldr r3, [r0] -_081299BA: - adds r0, r3, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _081299CC - movs r0, 0x1 - b _081299D8 - .pool -_081299CC: - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, r2 - bcc _081299BA -_081299D6: - movs r0, 0 -_081299D8: - pop {r1} - bx r1 - thumb_func_end sub_81299AC - - thumb_func_start SetUpPuttingAwayDecorationPlayerAvatar -SetUpPuttingAwayDecorationPlayerAvatar: @ 81299DC - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x4 - bl player_get_direction_lower_nybble - ldr r3, =gUnknown_0203AA38 - ldr r2, =gSprites - ldr r4, =gUnknown_03005DD0 - ldr r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r0, [r0, 0x2E] - strb r0, [r3] - bl sub_812A39C - ldr r0, =gUnknown_085A7404 - movs r1, 0x78 - movs r2, 0x50 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - str r0, [r4, 0x4] - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x8] - cmp r0, 0 - bne _08129A3C - ldr r1, =SpriteCallbackDummy - str r0, [sp] - movs r0, 0xC1 - b _08129A44 - .pool -_08129A3C: - ldr r1, =SpriteCallbackDummy - movs r0, 0 - str r0, [sp] - movs r0, 0xC2 -_08129A44: - movs r2, 0x88 - movs r3, 0x48 - bl AddPseudoFieldObject - ldr r1, =gUnknown_0203AA39 - strb r0, [r1] - ldr r6, =gSprites - ldr r0, =gUnknown_0203AA39 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - ldrb r2, [r1, 0x5] - movs r4, 0xD - negs r4, r4 - adds r0, r4, 0 - ands r0, r2 - movs r2, 0x4 - mov r8, r2 - mov r2, r8 - orrs r0, r2 - strb r0, [r1, 0x5] - ldr r5, =gUnknown_0203AA38 - ldrb r1, [r5] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - bl DestroySprite - ldr r0, =gUnknown_03005DD0 - ldr r0, [r0, 0x4] - strb r0, [r5] - ldrb r1, [r5] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - ldrb r1, [r0, 0x5] - ands r4, r1 - mov r1, r8 - orrs r4, r1 - strb r4, [r0, 0x5] - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end SetUpPuttingAwayDecorationPlayerAvatar - - thumb_func_start sub_8129ABC -sub_8129ABC: @ 8129ABC - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - movs r1, 0x4 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _08129B0C - cmp r0, 0x1 - bgt _08129AE4 - cmp r0, 0 - beq _08129AEA - b _08129B2E - .pool -_08129AE4: - cmp r0, 0x2 - beq _08129B1A - b _08129B2E -_08129AEA: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08129B2E - adds r0, r5, 0 - bl sub_8127ACC - movs r0, 0x1 - strh r0, [r4, 0x4] - strh r0, [r4, 0xC] - strh r0, [r4, 0xA] - b _08129B2E - .pool -_08129B0C: - bl SetUpPuttingAwayDecorationPlayerAvatar - bl pal_fill_black - movs r0, 0x2 - strh r0, [r4, 0x4] - b _08129B2E -_08129B1A: - bl sub_80ABDFC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08129B2E - strh r0, [r4, 0x18] - adds r0, r5, 0 - bl sub_8129B34 -_08129B2E: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8129ABC - - thumb_func_start sub_8129B34 -sub_8129B34: @ 8129B34 - push {r4-r6,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - movs r0, 0 - movs r1, 0x1 - bl sub_8197434 - ldr r4, =gSprites - ldr r3, =gUnknown_0203AA38 - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r6, 0 - strh r6, [r0, 0x3C] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r4, 0 - adds r1, 0x1C - adds r0, r1 - ldr r1, =sub_812A36C - str r1, [r0] - ldr r2, =gUnknown_0203AA39 - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0x88 - strh r1, [r0, 0x20] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0x48 - strh r1, [r0, 0x22] - ldr r1, =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - strh r6, [r0, 0x1C] - ldr r1, =sub_8128E18 - str r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8129B34 - - thumb_func_start sub_8129BCC -sub_8129BCC: @ 8129BCC - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x1C] - bl sub_8128DE0 - adds r0, r4, 0 - bl sub_8129C74 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8129BCC - - thumb_func_start sub_8129BF8 -sub_8129BF8: @ 8129BF8 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x1C] - bl sub_8128DE0 - ldr r3, =gSprites - ldr r5, =gUnknown_0203AA38 - ldrb r1, [r5] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - ldrb r1, [r5] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, 0x1C - adds r0, r3 - ldr r1, =SpriteCallbackDummy - str r1, [r0] - ldr r5, =gStringVar4 - ldr r1, =gText_StopPuttingAwayDecorations - adds r0, r5, 0 - bl StringExpandPlaceholders - ldr r2, =sub_812A1F0 - adds r0, r4, 0 - adds r1, r5, 0 - bl DisplayItemMessageOnField - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8129BF8 - - thumb_func_start sub_8129C74 -sub_8129C74: @ 8129C74 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r5, 0 - bl sub_812A0E8 - ldr r0, =gUnknown_0203AAC4 - ldrb r0, [r0] - cmp r0, 0 - beq _08129CA8 - ldr r4, =gStringVar4 - ldr r1, =gText_ReturnDecorationToPC - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, =sub_812A1A0 - b _08129D14 - .pool -_08129CA8: - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - ldr r0, =gTasks + 0x8 - adds r1, r0 - movs r2, 0 - ldrsh r0, [r1, r2] - movs r2, 0x2 - ldrsh r1, [r1, r2] - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl sub_8089288 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08129CDE - adds r0, r4, 0 - bl sub_8089404 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08129D3C -_08129CDE: - ldr r3, =gSprites - ldr r4, =gUnknown_0203AA38 - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, 0x1C - adds r0, r3 - ldr r1, =SpriteCallbackDummy - str r1, [r0] - ldr r4, =gStringVar4 - ldr r1, =gText_StopPuttingAwayDecorations - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, =sub_812A1F0 -_08129D14: - adds r0, r5, 0 - adds r1, r4, 0 - bl DisplayItemMessageOnField - b _08129D50 - .pool -_08129D3C: - ldr r4, =gStringVar4 - ldr r1, =gText_NoDecorationHere - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, =sub_8129D64 - adds r0, r5, 0 - adds r1, r4, 0 - bl DisplayItemMessageOnField -_08129D50: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8129C74 - - thumb_func_start sub_8129D64 -sub_8129D64: @ 8129D64 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08129D7E - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08129D84 -_08129D7E: - adds r0, r2, 0 - bl sub_8129B34 -_08129D84: - pop {r0} - bx r0 - .pool - thumb_func_end sub_8129D64 - - thumb_func_start sub_8129D8C -sub_8129D8C: @ 8129D8C - push {lr} - adds r2, r1, 0 - lsls r0, 24 - ldr r1, =gDecorations - lsrs r0, 19 - adds r0, r1 - ldrb r1, [r0, 0x12] - cmp r1, 0 - bne _08129DA8 - movs r0, 0x1 - strb r0, [r2, 0x1] - b _08129E06 - .pool -_08129DA8: - cmp r1, 0x1 - bne _08129DB4 - movs r0, 0x2 - strb r0, [r2, 0x1] - strb r1, [r2, 0x2] - b _08129E08 -_08129DB4: - cmp r1, 0x2 - bne _08129DC0 - movs r0, 0x3 - strb r0, [r2, 0x1] - movs r0, 0x1 - b _08129E06 -_08129DC0: - cmp r1, 0x3 - bne _08129DC8 - movs r0, 0x4 - b _08129E02 -_08129DC8: - cmp r1, 0x4 - bne _08129DD2 - movs r0, 0x2 - strb r0, [r2, 0x1] - b _08129E06 -_08129DD2: - cmp r1, 0x5 - bne _08129DDA - movs r0, 0x1 - b _08129E02 -_08129DDA: - cmp r1, 0x6 - bne _08129DE6 - movs r0, 0x1 - strb r0, [r2, 0x1] - movs r0, 0x3 - b _08129E06 -_08129DE6: - cmp r1, 0x7 - bne _08129DF2 - movs r0, 0x2 - strb r0, [r2, 0x1] - movs r0, 0x4 - b _08129E06 -_08129DF2: - cmp r1, 0x8 - bne _08129DFC - movs r0, 0x3 - strb r0, [r2, 0x1] - b _08129E06 -_08129DFC: - cmp r1, 0x9 - bne _08129E08 - movs r0, 0x3 -_08129E02: - strb r0, [r2, 0x1] - movs r0, 0x2 -_08129E06: - strb r0, [r2, 0x2] -_08129E08: - pop {r0} - bx r0 - thumb_func_end sub_8129D8C - - thumb_func_start sub_8129E0C -sub_8129E0C: @ 8129E0C - push {r4-r6,lr} - lsls r0, 24 - lsls r1, 24 - ldr r5, =gSprites - ldr r6, =gUnknown_0203AA38 - ldrb r3, [r6] - lsls r2, r3, 4 - adds r2, r3 - lsls r2, 2 - adds r2, r5 - adds r2, 0x3E - ldrb r3, [r2] - movs r4, 0x4 - orrs r3, r4 - strb r3, [r2] - ldrb r3, [r6] - lsls r2, r3, 4 - adds r2, r3 - lsls r2, 2 - adds r3, r5, 0 - adds r3, 0x1C - adds r2, r3 - ldr r3, =SpriteCallbackDummy - str r3, [r2] - ldr r4, =gUnknown_0203AA39 - ldrb r3, [r4] - lsls r2, r3, 4 - adds r2, r3 - lsls r2, 2 - adds r2, r5 - lsrs r0, 20 - adds r0, 0x88 - strh r0, [r2, 0x20] - ldrb r2, [r4] - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r5 - lsrs r1, 20 - adds r1, 0x48 - strh r1, [r0, 0x22] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8129E0C - - thumb_func_start sub_8129E74 -sub_8129E74: @ 8129E74 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r9, r2 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - ldr r3, =gTasks - lsls r2, r0, 2 - adds r2, r0 - lsls r2, 3 - adds r2, r3 - ldrb r0, [r2, 0x8] - subs r0, 0x7 - lsls r0, 24 - lsrs r7, r0, 24 - ldrb r0, [r2, 0xA] - subs r0, 0x7 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r2, =gUnknown_0203A17C - ldr r0, [r2, 0x4] - adds r0, r1 - ldrb r0, [r0] - lsrs r5, r0, 4 - movs r6, 0xF - ands r6, r0 - mov r0, r9 - ldrb r4, [r0, 0x2] - ldr r0, [r2] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x29 - bne _08129ED4 - adds r0, r5, 0x7 - adds r1, r6, 0x7 - bl MapGridGetMetatileIdAt - movs r1, 0xA3 - lsls r1, 2 - cmp r0, r1 - bne _08129ED4 - subs r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 -_08129ED4: - cmp r7, r5 - bcc _08129F10 - mov r0, r9 - ldrb r2, [r0, 0x1] - adds r0, r5, r2 - cmp r7, r0 - bge _08129F10 - subs r0, r6, r4 - cmp r8, r0 - ble _08129F10 - cmp r8, r6 - bhi _08129F10 - subs r0, r7, r5 - adds r0, 0x1 - subs r0, r2, r0 - lsls r0, 24 - lsrs r0, 24 - mov r2, r8 - subs r1, r6, r2 - lsls r1, 24 - lsrs r1, 24 - bl sub_8129E0C - movs r0, 0x1 - b _08129F12 - .pool -_08129F10: - movs r0, 0 -_08129F12: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8129E74 - - thumb_func_start sub_8129F20 -sub_8129F20: @ 8129F20 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r2, =gUnknown_0203A17C - ldr r3, =gUnknown_0203AA44 - ldr r0, =gUnknown_0203AAC4 - ldrb r0, [r0] - lsls r0, 3 - adds r0, r3 - ldrb r1, [r0] - ldr r0, [r2, 0x4] - adds r0, r1 - ldrb r0, [r0] - lsrs r1, r0, 4 - mov r8, r1 - movs r6, 0xF - ands r6, r0 - movs r4, 0 - ldr r7, =gSaveBlock1Ptr - mov r9, r3 -_08129F4A: - ldr r1, [r7] - lsls r0, r4, 1 - adds r0, r4 - lsls r5, r0, 3 - adds r1, r5 - ldr r2, =0x00000c74 - adds r0, r1, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, r8 - bne _08129FB0 - ldr r2, =0x00000c76 - adds r0, r1, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, r6 - bne _08129FB0 - ldr r2, =0x00000c84 - adds r0, r1, r2 - ldrh r0, [r0] - bl FlagGet - lsls r0, 24 - cmp r0, 0 - bne _08129FB0 - ldr r0, =gUnknown_0203AAC4 - ldrb r1, [r0] - lsls r1, 3 - add r1, r9 - ldr r0, [r7] - adds r0, r5 - ldr r2, =0x00000c84 - adds r0, r2 - ldrh r0, [r0] - strh r0, [r1, 0x4] - b _08129FBA - .pool -_08129FB0: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x3F - bls _08129F4A -_08129FBA: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8129F20 - - thumb_func_start sub_8129FC8 -sub_8129FC8: @ 8129FC8 - push {r4-r7,lr} - lsls r0, 24 - lsrs r7, r0, 24 - movs r6, 0 - b _0812A02A -_08129FD2: - ldr r0, [r0] - adds r1, r0, r6 - ldrb r0, [r1] - cmp r0, 0 - beq _0812A024 - ldr r0, =gDecorations - ldrb r2, [r1] - lsls r1, r2, 5 - adds r1, r0 - ldrb r0, [r1, 0x11] - cmp r0, 0x4 - bne _0812A024 - ldr r5, =gUnknown_0203AA44 - adds r0, r2, 0 - adds r1, r5, 0 - bl sub_8129D8C - lsls r1, r6, 24 - lsrs r1, 24 - adds r0, r7, 0 - adds r2, r5, 0 - bl sub_8129E74 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x1 - bne _0812A024 - strb r6, [r5] - bl sub_8129F20 - ldr r0, =gUnknown_0203AAC4 - strb r4, [r0] - movs r0, 0x1 - b _0812A034 - .pool -_0812A024: - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 -_0812A02A: - ldr r0, =gUnknown_0203A17C - ldrb r1, [r0, 0x8] - cmp r6, r1 - bcc _08129FD2 - movs r0, 0 -_0812A034: - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8129FC8 - - thumb_func_start sub_812A040 -sub_812A040: @ 812A040 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - lsls r1, 24 - lsrs r1, 24 - mov r10, r1 - lsls r2, 24 - lsrs r2, 24 - mov r9, r2 - lsls r3, 24 - lsrs r3, 24 - mov r8, r3 - movs r4, 0 - ldr r7, =gUnknown_0203A17C - ldrb r0, [r7, 0x8] - cmp r4, r0 - bcs _0812A0C6 - adds r6, r7, 0 - ldr r5, =gUnknown_0203AAC4 -_0812A072: - ldr r0, [r6] - adds r0, r4 - ldrb r1, [r0] - ldr r0, [r6, 0x4] - adds r0, r4 - ldrb r0, [r0] - lsrs r3, r0, 4 - movs r2, 0xF - ands r2, r0 - cmp r1, 0 - beq _0812A0BA - ldr r0, =gDecorations - lsls r1, 5 - adds r1, r0 - ldrb r0, [r1, 0x11] - cmp r0, 0x4 - bne _0812A0BA - ldr r0, [sp] - cmp r0, r3 - bhi _0812A0BA - cmp r10, r2 - bhi _0812A0BA - cmp r9, r3 - bcc _0812A0BA - cmp r8, r2 - bcc _0812A0BA - ldr r0, =gUnknown_0203AA44 - ldrb r1, [r5] - lsls r1, 3 - adds r1, r0 - strb r4, [r1] - bl sub_8129F20 - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] -_0812A0BA: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - ldrb r0, [r7, 0x8] - cmp r4, r0 - bcc _0812A072 -_0812A0C6: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_812A040 - - thumb_func_start sub_812A0E8 -sub_812A0E8: @ 812A0E8 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r4, =gUnknown_0203AAC4 - movs r0, 0 - strb r0, [r4] - adds r0, r6, 0 - bl sub_8129FC8 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0812A18C - movs r5, 0 - ldr r0, =gUnknown_0203A17C - ldrb r1, [r0, 0x8] - cmp r5, r1 - bcs _0812A15A - adds r7, r4, 0 -_0812A10E: - ldr r0, [r0] - adds r0, r5 - ldrb r1, [r0] - cmp r1, 0 - beq _0812A14C - ldr r4, =gUnknown_0203AA44 - adds r0, r1, 0 - adds r1, r4, 0 - bl sub_8129D8C - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_8129E74 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0812A14C - strb r5, [r4] - ldrb r0, [r7] - adds r0, 0x1 - strb r0, [r7] - b _0812A15A - .pool -_0812A14C: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, =gUnknown_0203A17C - ldrb r1, [r0, 0x8] - cmp r5, r1 - bcc _0812A10E -_0812A15A: - ldr r0, =gUnknown_0203AAC4 - ldrb r0, [r0] - cmp r0, 0 - beq _0812A18C - ldr r0, =gUnknown_0203A17C - ldr r2, =gUnknown_0203AA44 - ldrb r1, [r2] - ldr r0, [r0, 0x4] - adds r0, r1 - ldrb r1, [r0] - lsrs r0, r1, 4 - movs r3, 0xF - ands r3, r1 - ldrb r1, [r2, 0x2] - subs r1, r3, r1 - adds r1, 0x1 - lsls r1, 24 - lsrs r1, 24 - ldrb r2, [r2, 0x1] - adds r2, r0 - subs r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - bl sub_812A040 -_0812A18C: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_812A0E8 - - thumb_func_start sub_812A1A0 -sub_812A1A0: @ 812A1A0 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8197930 - ldr r1, =gUnknown_085A7348 - adds r0, r4, 0 - bl sub_8121F68 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_812A1A0 - - thumb_func_start sub_812A1C0 -sub_812A1C0: @ 812A1C0 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - movs r1, 0 - bl fade_screen - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0xC] - ldr r1, =sub_81298EC - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_812A1C0 - - thumb_func_start sub_812A1F0 -sub_812A1F0: @ 812A1F0 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8197930 - ldr r1, =gUnknown_085A7350 - adds r0, r4, 0 - bl sub_8121F68 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_812A1F0 - - thumb_func_start sub_812A210 -sub_812A210: @ 812A210 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - movs r1, 0 - bl sub_8197434 - adds r0, r4, 0 - bl sub_812A22C - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_812A210 - - thumb_func_start sub_812A22C -sub_812A22C: @ 812A22C - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - movs r1, 0 - bl fade_screen - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0xC] - ldr r1, =sub_812A25C - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_812A22C - - thumb_func_start sub_812A25C -sub_812A25C: @ 812A25C - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r5, r0, r1 - movs r1, 0xC - ldrsh r0, [r5, r1] - cmp r0, 0 - beq _0812A280 - cmp r0, 0x1 - beq _0812A29C - b _0812A2B2 - .pool -_0812A280: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0812A2B2 - adds r0, r4, 0 - bl sub_8127B04 - movs r0, 0x1 - strh r0, [r5, 0xC] - b _0812A2B2 - .pool -_0812A29C: - bl sub_812A3C8 - ldr r0, =gFieldCallback - ldr r1, =sub_812A334 - str r1, [r0] - ldr r0, =c2_exit_to_overworld_2_switch - bl SetMainCallback2 - adds r0, r4, 0 - bl DestroyTask -_0812A2B2: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_812A25C - - thumb_func_start sub_812A2C4 -sub_812A2C4: @ 812A2C4 - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r5, r1, 3 - ldr r6, =gTasks + 0x8 - adds r4, r5, r6 - movs r1, 0x4 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _0812A2FC - cmp r0, 0x1 - bgt _0812A2EC - cmp r0, 0 - beq _0812A2F6 - b _0812A32A - .pool -_0812A2EC: - cmp r0, 0x2 - beq _0812A308 - cmp r0, 0x3 - beq _0812A314 - b _0812A32A -_0812A2F6: - bl sub_80E9578 - b _0812A30C -_0812A2FC: - ldr r0, =gUnknown_08275D0C - bl ScriptContext1_SetupScript - b _0812A30C - .pool -_0812A308: - bl ScriptContext2_Enable -_0812A30C: - ldrh r0, [r4, 0x4] - adds r0, 0x1 - strh r0, [r4, 0x4] - b _0812A32A -_0812A314: - bl sub_80ABDFC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0812A32A - adds r0, r6, 0 - subs r0, 0x8 - adds r0, r5, r0 - ldr r1, =sub_8126B80 - str r1, [r0] -_0812A32A: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_812A2C4 - - thumb_func_start sub_812A334 -sub_812A334: @ 812A334 - push {lr} - bl pal_fill_black - movs r0, 0 - movs r1, 0x1 - bl sub_81973C4 - bl sub_8126ABC - ldr r0, =sub_812A2C4 - movs r1, 0x8 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r0, 0 - strh r0, [r1, 0xC] - pop {r0} - bx r0 - .pool - thumb_func_end sub_812A334 - - thumb_func_start sub_812A36C -sub_812A36C: @ 812A36C - push {lr} - adds r2, r0, 0 - ldrh r0, [r2, 0x2E] - adds r0, 0x1 - movs r1, 0x1F - ands r0, r1 - strh r0, [r2, 0x2E] - cmp r0, 0xF - ble _0812A38C - adds r0, r2, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - b _0812A398 -_0812A38C: - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] -_0812A398: - pop {r0} - bx r0 - thumb_func_end sub_812A36C - - thumb_func_start sub_812A39C -sub_812A39C: @ 812A39C - push {lr} - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x8] - cmp r0, 0 - bne _0812A3B8 - ldr r0, =gUnknown_085A73D8 - bl LoadSpritePalette - b _0812A3BE - .pool -_0812A3B8: - ldr r0, =gUnknown_085A73E0 - bl LoadSpritePalette -_0812A3BE: - pop {r0} - bx r0 - .pool - thumb_func_end sub_812A39C - - thumb_func_start sub_812A3C8 -sub_812A3C8: @ 812A3C8 - push {lr} - movs r0, 0x8 - bl FreeSpritePaletteByTag - pop {r0} - bx r0 - thumb_func_end sub_812A3C8 - - thumb_func_start sub_812A3D4 -sub_812A3D4: @ 812A3D4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - bl sub_81279C4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0812A430 - ldr r0, =gStringVar1 - ldr r1, =gUnknown_0203A172 - ldrb r2, [r1] - ldr r1, =gUnknown_0203A14C - ldr r1, [r1] - adds r1, r2 - ldrb r1, [r1] - lsls r1, 5 - ldr r2, =gDecorations + 1 - adds r1, r2 - bl StringCopy - ldr r4, =gStringVar4 - ldr r1, =gText_DecorationWillBeDiscarded - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, =sub_812A458 - adds r0, r5, 0 - adds r1, r4, 0 - bl DisplayItemMessageOnField - b _0812A444 - .pool -_0812A430: - ldr r4, =gStringVar4 - ldr r1, =gText_CantThrowAwayInUse - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, =sub_8127A5C - adds r0, r5, 0 - adds r1, r4, 0 - bl DisplayItemMessageOnField -_0812A444: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_812A3D4 - - thumb_func_start sub_812A458 -sub_812A458: @ 812A458 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8197930 - ldr r1, =gUnknown_085A741C - adds r0, r4, 0 - bl sub_8121F68 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_812A458 - - thumb_func_start sub_812A478 -sub_812A478: @ 812A478 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, =gUnknown_0203A172 - ldrb r1, [r0] - ldr r0, =gUnknown_0203A14C - ldr r0, [r0] - adds r0, r1 - movs r1, 0 - strb r1, [r0] - ldr r5, =gUnknown_0203A173 - ldrb r0, [r5] - bl sub_8161AD0 - ldr r1, =gUnknown_0203A151 - strb r0, [r1] - ldrb r0, [r5] - bl sub_8161A38 - adds r0, r4, 0 - bl sub_8127814 - ldr r5, =gStringVar4 - ldr r1, =gText_DecorationThrownAway - adds r0, r5, 0 - bl StringExpandPlaceholders - ldr r2, =sub_8127A5C - adds r0, r4, 0 - adds r1, r5, 0 - bl DisplayItemMessageOnField - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_812A478 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/decoration_inventory.s b/asm/decoration_inventory.s deleted file mode 100644 index 52d490c20..000000000 --- a/asm/decoration_inventory.s +++ /dev/null @@ -1,459 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - - thumb_func_start SetDecorationInventoriesPointers -SetDecorationInventoriesPointers: @ 81617F4 - push {r4,lr} - ldr r0, =gDecorationInventories - mov r12, r0 - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - ldr r2, =0x00002734 - adds r0, r1, r2 - mov r4, r12 - str r0, [r4] - movs r3, 0xA - strb r3, [r4, 0x4] - adds r2, 0xA - adds r0, r1, r2 - str r0, [r4, 0x8] - strb r3, [r4, 0xC] - ldr r4, =0x00002748 - adds r0, r1, r4 - mov r2, r12 - str r0, [r2, 0x10] - strb r3, [r2, 0x14] - adds r4, 0xA - adds r0, r1, r4 - str r0, [r2, 0x18] - movs r2, 0x1E - mov r0, r12 - strb r2, [r0, 0x1C] - adds r4, 0x1E - adds r0, r1, r4 - mov r4, r12 - str r0, [r4, 0x20] - mov r0, r12 - adds r0, 0x24 - strb r2, [r0] - ldr r2, =0x0000278e - adds r0, r1, r2 - str r0, [r4, 0x28] - mov r0, r12 - adds r0, 0x2C - strb r3, [r0] - ldr r4, =0x00002798 - adds r0, r1, r4 - mov r2, r12 - str r0, [r2, 0x30] - adds r2, 0x34 - movs r0, 0x28 - strb r0, [r2] - adds r4, 0x28 - adds r1, r4 - mov r0, r12 - str r1, [r0, 0x38] - adds r0, 0x3C - strb r3, [r0] - bl sub_8126968 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end SetDecorationInventoriesPointers - - thumb_func_start ClearDecorationInventory -ClearDecorationInventory: @ 8161880 - push {r4,r5,lr} - lsls r0, 24 - movs r3, 0 - ldr r1, =gDecorationInventories - lsrs r2, r0, 21 - adds r0, r2, r1 - ldrb r0, [r0, 0x4] - cmp r3, r0 - bcs _081618AA - adds r5, r1, 0 - movs r4, 0 -_08161896: - adds r0, r2, r5 - ldr r1, [r0] - adds r1, r3 - strb r4, [r1] - adds r1, r3, 0x1 - lsls r1, 24 - lsrs r3, r1, 24 - ldrb r0, [r0, 0x4] - cmp r3, r0 - bcc _08161896 -_081618AA: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end ClearDecorationInventory - - thumb_func_start ClearDecorationInventories -ClearDecorationInventories: @ 81618B4 - push {r4,lr} - movs r4, 0 -_081618B8: - adds r0, r4, 0 - bl ClearDecorationInventory - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x7 - bls _081618B8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end ClearDecorationInventories - - thumb_func_start sub_81618D0 -sub_81618D0: @ 81618D0 - push {r4,lr} - lsls r0, 24 - movs r2, 0 - ldr r1, =gDecorationInventories - lsrs r0, 21 - adds r0, r1 - movs r1, 0x4 - ldrsb r1, [r0, r1] - cmp r2, r1 - bge _0816190C - adds r4, r0, 0 - adds r3, r1, 0 -_081618E8: - lsls r0, r2, 24 - asrs r1, r0, 24 - ldr r0, [r4] - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _08161900 - adds r0, r1, 0 - b _08161910 - .pool -_08161900: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - asrs r0, 24 - cmp r0, r3 - blt _081618E8 -_0816190C: - movs r0, 0x1 - negs r0, r0 -_08161910: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_81618D0 - - thumb_func_start sub_8161918 -sub_8161918: @ 8161918 - push {r4,lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r1, =gDecorations - lsls r0, r3, 5 - adds r0, r1 - ldrb r0, [r0, 0x13] - movs r2, 0 - ldr r1, =gDecorationInventories - lsls r0, 3 - adds r0, r1 - ldrb r1, [r0, 0x4] - cmp r2, r1 - bcs _08161956 - ldr r4, [r0] -_08161936: - adds r0, r4, r2 - ldrb r0, [r0] - cmp r0, r3 - bne _0816194C - movs r0, 0x1 - b _08161958 - .pool -_0816194C: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, r1 - bcc _08161936 -_08161956: - movs r0, 0 -_08161958: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8161918 - - thumb_func_start DecorationAdd -DecorationAdd: @ 8161960 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - adds r4, r0, 0 - cmp r4, 0 - beq _081619A0 - ldr r1, =gDecorations - lsls r0, r4, 5 - adds r0, r1 - ldrb r5, [r0, 0x13] - adds r0, r5, 0 - bl sub_81618D0 - lsls r0, 24 - asrs r2, r0, 24 - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - beq _081619A0 - ldr r0, =gDecorationInventories - lsls r1, r5, 3 - adds r1, r0 - ldr r0, [r1] - adds r0, r2 - strb r4, [r0] - movs r0, 0x1 - b _081619A2 - .pool -_081619A0: - movs r0, 0 -_081619A2: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end DecorationAdd - - thumb_func_start DecorationCheckSpace -DecorationCheckSpace: @ 81619A8 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _081619D4 - ldr r1, =gDecorations - lsls r0, 5 - adds r0, r1 - ldrb r0, [r0, 0x13] - bl sub_81618D0 - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _081619D4 - movs r0, 0x1 - b _081619D6 - .pool -_081619D4: - movs r0, 0 -_081619D6: - pop {r1} - bx r1 - thumb_func_end DecorationCheckSpace - - thumb_func_start DecorationRemove -DecorationRemove: @ 81619DC - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r3, 0 - cmp r5, 0 - bne _081619F8 - b _08161A26 -_081619EA: - movs r0, 0 - strb r0, [r1] - adds r0, r6, 0 - bl sub_8161A38 - movs r0, 0x1 - b _08161A28 -_081619F8: - ldr r2, =gDecorationInventories - ldr r1, =gDecorations - lsls r0, r5, 5 - adds r0, r1 - ldrb r4, [r0, 0x13] - lsls r0, r4, 3 - adds r0, r2 - ldrb r1, [r0, 0x4] - cmp r3, r1 - bcs _08161A26 - adds r6, r4, 0 - adds r4, r0, 0 - adds r2, r1, 0 -_08161A12: - ldr r0, [r4] - adds r1, r0, r3 - ldrb r0, [r1] - cmp r0, r5 - beq _081619EA - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, r2 - bcc _08161A12 -_08161A26: - movs r0, 0 -_08161A28: - pop {r4-r6} - pop {r1} - bx r1 - .pool - thumb_func_end DecorationRemove - - thumb_func_start sub_8161A38 -sub_8161A38: @ 8161A38 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - lsls r0, 24 - movs r6, 0 - ldr r2, =gDecorationInventories - lsrs r0, 21 - adds r1, r0, r2 - ldrb r3, [r1, 0x4] - cmp r6, r3 - bcs _08161ABC - adds r7, r0, 0 - mov r10, r1 - mov r0, r10 - str r0, [sp] -_08161A5C: - adds r1, r6, 0x1 - lsls r0, r1, 24 - lsrs r3, r0, 24 - adds r2, r7, 0 - mov r12, r1 - mov r1, r10 - ldrb r1, [r1, 0x4] - cmp r3, r1 - bcs _08161AAE - ldr r0, =gDecorationInventories - mov r9, r0 - adds r1, r0, 0 - mov r8, r1 -_08161A76: - mov r0, r9 - adds r5, r2, r0 - ldr r1, [r5] - adds r0, r1, r3 - ldrb r4, [r0] - adds r2, r4, 0 - cmp r2, 0 - beq _08161A9C - adds r0, r1, r6 - ldrb r1, [r0] - cmp r1, 0 - beq _08161A92 - cmp r1, r2 - bls _08161A9C -_08161A92: - ldrb r1, [r0] - strb r4, [r0] - ldr r0, [r5] - adds r0, r3 - strb r1, [r0] -_08161A9C: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - adds r2, r7, 0 - mov r1, r8 - adds r0, r2, r1 - ldrb r0, [r0, 0x4] - cmp r3, r0 - bcc _08161A76 -_08161AAE: - mov r3, r12 - lsls r0, r3, 24 - lsrs r6, r0, 24 - ldr r0, [sp] - ldrb r0, [r0, 0x4] - cmp r6, r0 - bcc _08161A5C -_08161ABC: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8161A38 - - thumb_func_start sub_8161AD0 -sub_8161AD0: @ 8161AD0 - push {r4,r5,lr} - lsls r0, 24 - movs r4, 0 - movs r3, 0 - ldr r2, =gDecorationInventories - lsrs r1, r0, 21 - adds r0, r1, r2 - ldrb r0, [r0, 0x4] - cmp r4, r0 - bcs _08161B04 - adds r5, r2, 0 -_08161AE6: - adds r2, r1, r5 - ldr r0, [r2] - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - beq _08161AF8 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 -_08161AF8: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - ldrb r2, [r2, 0x4] - cmp r3, r2 - bcc _08161AE6 -_08161B04: - adds r0, r4, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8161AD0 - - thumb_func_start sub_8161B10 -sub_8161B10: @ 8161B10 - push {r4,r5,lr} - movs r5, 0 - movs r4, 0 -_08161B16: - adds r0, r4, 0 - bl sub_8161AD0 - adds r0, r5, r0 - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x7 - bls _08161B16 - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8161B10 - - .align 2, 0 @ Don't pad with nop. -
\ No newline at end of file diff --git a/asm/dewford_trend.s b/asm/dewford_trend.s index c3a7b192c..40df2d6a0 100644 --- a/asm/dewford_trend.s +++ b/asm/dewford_trend.s @@ -492,7 +492,7 @@ sub_812287C: @ 812287C bl Free b _08122980 _081228B0: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 mov r9, r0 diff --git a/asm/diploma.s b/asm/diploma.s deleted file mode 100644 index 4f21fe39d..000000000 --- a/asm/diploma.s +++ /dev/null @@ -1,387 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_8177874 -sub_8177874: @ 8177874 - push {lr} - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - pop {r0} - bx r0 - thumb_func_end sub_8177874 - - thumb_func_start sub_8177888 -sub_8177888: @ 8177888 - push {r4,r5,lr} - sub sp, 0xC - movs r0, 0 - bl SetVBlankCallback - movs r0, 0 - movs r1, 0 - bl SetGpuReg - movs r0, 0xE - movs r1, 0 - bl SetGpuReg - movs r0, 0xC - movs r1, 0 - bl SetGpuReg - movs r0, 0xA - movs r1, 0 - bl SetGpuReg - movs r0, 0x8 - movs r1, 0 - bl SetGpuReg - movs r0, 0x1C - movs r1, 0 - bl SetGpuReg - movs r0, 0x1E - movs r1, 0 - bl SetGpuReg - movs r0, 0x18 - movs r1, 0 - bl SetGpuReg - movs r0, 0x1A - movs r1, 0 - bl SetGpuReg - movs r0, 0x14 - movs r1, 0 - bl SetGpuReg - movs r0, 0x16 - movs r1, 0 - bl SetGpuReg - movs r0, 0x10 - movs r1, 0 - bl SetGpuReg - movs r0, 0x12 - movs r1, 0 - bl SetGpuReg - add r1, sp, 0x4 - movs r0, 0 - strh r0, [r1] - ldr r1, =0x040000d4 - add r0, sp, 0x4 - str r0, [r1] - movs r0, 0xC0 - lsls r0, 19 - str r0, [r1, 0x4] - ldr r0, =0x8100c000 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - movs r5, 0 - str r5, [sp, 0x8] - add r0, sp, 0x8 - str r0, [r1] - movs r0, 0xE0 - lsls r0, 19 - str r0, [r1, 0x4] - ldr r0, =0x85000100 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - add r0, sp, 0x4 - strh r5, [r0] - str r0, [r1] - movs r0, 0xA0 - lsls r0, 19 - str r0, [r1, 0x4] - ldr r0, =0x81000200 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - bl remove_some_task - bl ResetTasks - bl ResetSpriteData - bl ResetPaletteFade - bl FreeAllSpritePalettes - ldr r0, =gUnknown_085E7088 - movs r1, 0 - movs r2, 0x40 - bl LoadPalette - ldr r4, =gUnknown_0203BCF0 - movs r0, 0x80 - lsls r0, 5 - bl Alloc - str r0, [r4] - bl sub_8177B44 - bl sub_8177B9C - bl reset_temp_tile_data_buffers - ldr r1, =gUnknown_085E7804 - str r5, [sp] - movs r0, 0x1 - movs r2, 0 - movs r3, 0 - bl decompress_and_copy_tile_data_to_vram -_0817797C: - bl free_temp_tile_data_buffers_if_possible - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _0817797C - ldr r0, =gUnknown_085E70C8 - ldr r1, =gUnknown_0203BCF0 - ldr r1, [r1] - bl LZDecompressWram - movs r0, 0x1 - bl CopyBgTilemapBufferToVram - bl pokedex_diploma_something - movs r4, 0x1 - negs r4, r4 - adds r0, r4, 0 - movs r1, 0x10 - movs r2, 0 - bl BlendPalettes - str r5, [sp] - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - movs r0, 0x1 - bl EnableInterrupts - ldr r0, =sub_8177874 - bl SetVBlankCallback - ldr r0, =sub_8177A08 - bl SetMainCallback2 - ldr r0, =sub_8177A20 - movs r1, 0 - bl CreateTask - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8177888 - - thumb_func_start sub_8177A08 -sub_8177A08: @ 8177A08 - push {lr} - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - pop {r0} - bx r0 - thumb_func_end sub_8177A08 - - thumb_func_start sub_8177A20 -sub_8177A20: @ 8177A20 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08177A40 - ldr r0, =gTasks - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldr r0, =sub_8177A50 - str r0, [r1] -_08177A40: - pop {r0} - bx r0 - .pool - thumb_func_end sub_8177A20 - - thumb_func_start sub_8177A50 -sub_8177A50: @ 8177A50 - push {r4,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _08177A82 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_8177A98 - str r1, [r0] -_08177A82: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8177A50 - - thumb_func_start sub_8177A98 -sub_8177A98: @ 8177A98 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08177AC2 - ldr r0, =gUnknown_0203BCF0 - ldr r0, [r0] - bl Free - bl FreeAllWindowBuffers - adds r0, r4, 0 - bl DestroyTask - ldr r0, =sub_80861E8 - bl SetMainCallback2 -_08177AC2: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8177A98 - - thumb_func_start pokedex_diploma_something -pokedex_diploma_something: @ 8177AD4 - push {r4,lr} - bl sub_80C0944 - lsls r0, 16 - cmp r0, 0 - beq _08177AFC - movs r1, 0x80 - lsls r1, 1 - movs r0, 0x14 - bl SetGpuReg - ldr r0, =gStringVar1 - ldr r1, =gText_DexNational - bl StringCopy - b _08177B0C - .pool -_08177AFC: - movs r0, 0x14 - movs r1, 0 - bl SetGpuReg - ldr r0, =gStringVar1 - ldr r1, =gText_DexHoenn - bl StringCopy -_08177B0C: - ldr r4, =gStringVar4 - ldr r1, =gText_PokedexDiploma - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x1 - bl sub_8177BCC - movs r0, 0 - bl PutWindowTilemap - movs r0, 0 - movs r1, 0x3 - bl CopyWindowToVram - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end pokedex_diploma_something - - thumb_func_start sub_8177B44 -sub_8177B44: @ 8177B44 - push {lr} - movs r0, 0 - bl ResetBgsAndClearDma3BusyFlags - ldr r1, =gUnknown_085E81FC - movs r0, 0 - movs r2, 0x2 - bl InitBgsFromTemplates - ldr r0, =gUnknown_0203BCF0 - ldr r1, [r0] - movs r0, 0x1 - bl SetBgTilemapBuffer - movs r1, 0x82 - lsls r1, 5 - movs r0, 0 - bl SetGpuReg - movs r0, 0 - bl ShowBg - movs r0, 0x1 - bl ShowBg - movs r0, 0x50 - movs r1, 0 - bl SetGpuReg - movs r0, 0x52 - movs r1, 0 - bl SetGpuReg - movs r0, 0x54 - movs r1, 0 - bl SetGpuReg - pop {r0} - bx r0 - .pool - thumb_func_end sub_8177B44 - - thumb_func_start sub_8177B9C -sub_8177B9C: @ 8177B9C - push {lr} - ldr r0, =gUnknown_085E8204 - bl InitWindows - bl DeactivateAllTextPrinters - ldr r0, =gUnknown_0860F074 - movs r1, 0xF0 - movs r2, 0x20 - bl LoadPalette - movs r0, 0 - movs r1, 0 - bl FillWindowPixelBuffer - movs r0, 0 - bl PutWindowTilemap - pop {r0} - bx r0 - .pool - thumb_func_end sub_8177B9C - - thumb_func_start sub_8177BCC -sub_8177BCC: @ 8177BCC - push {r4-r6,lr} - sub sp, 0x18 - adds r6, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r5, 24 - lsrs r5, 24 - ldr r1, =gUnknown_085E8214 - add r0, sp, 0x14 - movs r2, 0x3 - bl memcpy - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - add r0, sp, 0x14 - str r0, [sp, 0x8] - movs r0, 0x1 - negs r0, r0 - str r0, [sp, 0xC] - str r6, [sp, 0x10] - movs r0, 0 - movs r1, 0x1 - adds r2, r4, 0 - adds r3, r5, 0 - bl AddTextPrinterParametrized2 - add sp, 0x18 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8177BCC - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/easy_chat.s b/asm/easy_chat.s index 8455decfe..4b83db729 100644 --- a/asm/easy_chat.s +++ b/asm/easy_chat.s @@ -214,7 +214,7 @@ _0811A72C: ldr r4, =gStringVar3 adds r0, r4, 0 movs r1, 0x2 - bl sub_811F88C + bl InitializeEasyChatWordArray b _0811A7C2 .pool _0811A73C: @@ -3353,7 +3353,7 @@ sub_811BDF0: @ 811BDF0 ldrb r2, [r0] mov r0, sp adds r1, r5, 0 - bl sub_81DB5E8 + bl TVShowConvertInternationalString movs r0, 0 mov r1, sp bl sub_81AFC0C @@ -9563,7 +9563,7 @@ _0811EF48: adds r1, r5, 0 bl ConvertEasyChatWordsToString adds r0, r4, 0 - bl box_related_two__3 + bl ShowFieldAutoScrollMessage _0811EF58: pop {r4,r5} pop {r0} @@ -10758,8 +10758,8 @@ _0811F886: bx r1 thumb_func_end sub_811F860 - thumb_func_start sub_811F88C -sub_811F88C: @ 811F88C + thumb_func_start InitializeEasyChatWordArray +InitializeEasyChatWordArray: @ 811F88C push {lr} adds r2, r0, 0 lsls r1, 16 @@ -10782,7 +10782,7 @@ _0811F8AE: pop {r0} bx r0 .pool - thumb_func_end sub_811F88C + thumb_func_end InitializeEasyChatWordArray thumb_func_start sub_811F8BC sub_811F8BC: @ 811F8BC diff --git a/asm/evolution_scene.s b/asm/evolution_scene.s index efae2f07c..e5e9aaab9 100644 --- a/asm/evolution_scene.s +++ b/asm/evolution_scene.s @@ -68,7 +68,7 @@ _0813DA00: adds r1, r4, 0 adds r2, r5, 0 adds r3, r6, 0 - bl evolution_cutscene + bl EvolutionScene _0813DA30: add sp, 0x4 pop {r4-r7} @@ -77,8 +77,8 @@ _0813DA30: .pool thumb_func_end sub_813D9C0 - thumb_func_start sub_813DA40 -sub_813DA40: @ 813DA40 + thumb_func_start BeginEvolutionScene +BeginEvolutionScene: @ 813DA40 push {r4-r6,lr} adds r4, r1, 0 adds r5, r2, 0 @@ -110,10 +110,10 @@ sub_813DA40: @ 813DA40 pop {r0} bx r0 .pool - thumb_func_end sub_813DA40 + thumb_func_end BeginEvolutionScene - thumb_func_start evolution_cutscene -evolution_cutscene: @ 813DA8C + thumb_func_start EvolutionScene +EvolutionScene: @ 813DA8C push {r4-r7,lr} mov r7, r10 mov r6, r9 @@ -165,32 +165,32 @@ evolution_cutscene: @ 813DA8C movs r1, 0 bl SetGpuReg bl ResetPaletteFade - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r2, 0 strh r2, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r2, [r0] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r2, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r2, [r0] - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X strh r2, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r2, [r0] - ldr r1, =gUnknown_02022E20 + ldr r1, =gBattle_BG3_X movs r2, 0x80 lsls r2, 1 adds r0, r2, 0 strh r0, [r1] - ldr r0, =gUnknown_02022E22 + ldr r0, =gBattle_BG3_Y movs r1, 0 strh r1, [r0] - ldr r1, =gUnknown_02022FF0 + ldr r1, =gBattleTerrain movs r0, 0x9 strb r0, [r1] - bl c2_berry_program_update_menu - bl sub_8035AA4 + bl sub_80356D0 + bl LoadBattleTextboxAndBackground bl ResetSpriteData bl remove_some_task bl ResetTasks @@ -202,7 +202,7 @@ evolution_cutscene: @ 813DA8C bl AllocZeroed ldr r1, =gUnknown_0203AB80 str r0, [r1] - bl init_uns_table_pokemon_copy + bl AllocateMonSpritesGfx adds r0, r4, 0 movs r1, 0x2 mov r2, sp @@ -235,7 +235,7 @@ evolution_cutscene: @ 813DA8C lsls r0, r5, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r2, =gBattleSpritesGfx + ldr r2, =gMonSpritesGfxPtr ldr r1, [r2] ldr r1, [r1, 0x8] adds r2, r5, 0 @@ -291,7 +291,7 @@ evolution_cutscene: @ 813DA8C lsls r0, r1, 3 ldr r2, =gMonFrontPicTable adds r0, r2 - ldr r2, =gBattleSpritesGfx + ldr r2, =gMonSpritesGfxPtr ldr r1, [r2] ldr r1, [r1, 0x10] mov r2, r10 @@ -393,7 +393,7 @@ evolution_cutscene: @ 813DA8C pop {r0} bx r0 .pool - thumb_func_end evolution_cutscene + thumb_func_end EvolutionScene thumb_func_start sub_813DD7C sub_813DD7C: @ 813DD7C @@ -460,30 +460,30 @@ sub_813DD7C: @ 813DD7C movs r1, 0 bl SetGpuReg bl ResetPaletteFade - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X strh r4, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r4, [r0] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r4, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r4, [r0] - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X strh r4, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r4, [r0] - ldr r1, =gUnknown_02022E20 + ldr r1, =gBattle_BG3_X movs r2, 0x80 lsls r2, 1 adds r0, r2, 0 strh r0, [r1] - ldr r0, =gUnknown_02022E22 + ldr r0, =gBattle_BG3_Y strh r4, [r0] - ldr r1, =gUnknown_02022FF0 + ldr r1, =gBattleTerrain movs r0, 0x9 strb r0, [r1] - bl c2_berry_program_update_menu - bl sub_8035AA4 + bl sub_80356D0 + bl LoadBattleTextboxAndBackground bl ResetSpriteData bl FreeAllSpritePalettes ldr r1, =gReservedSpritePaletteCount @@ -492,7 +492,7 @@ sub_813DD7C: @ 813DD7C lsls r0, r5, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] ldr r1, [r1, 0x10] adds r2, r5, 0 @@ -629,25 +629,25 @@ _0813DFE0: ldr r1, =gReservedSpritePaletteCount movs r0, 0x4 strb r0, [r1] - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r1, [r0] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r1, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r1, [r0] - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X strh r1, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r1, [r0] - ldr r2, =gUnknown_02022E20 + ldr r2, =gBattle_BG3_X movs r3, 0x80 lsls r3, 1 adds r0, r3, 0 strh r0, [r2] - ldr r0, =gUnknown_02022E22 + ldr r0, =gBattle_BG3_Y strh r1, [r0] b _0813E180 .pool @@ -697,7 +697,7 @@ _0813E0A8: lsls r0, r6, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] ldr r1, [r1, 0x10] adds r2, r6, 0 @@ -867,7 +867,7 @@ sub_813E1D4: @ 813E1D4 lsls r0, r5, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] ldr r1, [r1, 0x8] adds r2, r5, 0 @@ -941,24 +941,24 @@ sub_813E1D4: @ 813E1D4 mov r1, sp ldrh r1, [r1, 0x14] strh r1, [r0, 0x1C] - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X strh r4, [r0] - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y strh r4, [r0] - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X strh r4, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r4, [r0] - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X strh r4, [r0] - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y strh r4, [r0] - ldr r1, =gUnknown_02022E20 + ldr r1, =gBattle_BG3_X movs r2, 0x80 lsls r2, 1 adds r0, r2, 0 strh r0, [r1] - ldr r0, =gUnknown_02022E22 + ldr r0, =gBattle_BG3_Y strh r4, [r0] ldr r2, =gTextFlags ldrb r0, [r2] @@ -1338,7 +1338,7 @@ _0813E6E4: bl StringExpandPlaceholders adds r0, r4, 0 movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC 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 battle_show_message_maybe + bl sub_814F9EC ldr r0, =0x00000173 bl PlayBGM ldr r2, =gTasks @@ -1775,7 +1775,7 @@ _0813EAF6: _0813EB06: adds r0, r7, 0 bl DestroyTask - bl sub_805F094 + bl FreeMonSpritesGfx ldr r4, =gUnknown_0203AB80 ldr r0, [r4] bl Free @@ -1868,7 +1868,7 @@ _0813EBE4: _0813EBEC: ldr r0, =gStringVar4 movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r1, =gTasks mov r2, r8 adds r0, r2, r7 @@ -1892,15 +1892,15 @@ _0813EC1E: beq _0813EC2A b _0813F1A4 _0813EC2A: - bl sub_804F574 + bl BufferMoveToLearnIntoBattleTextBuff2 ldr r0, =0x0000016f bl PlayFanfare ldr r0, =gBattleStringsTable ldr r0, [r0, 0xC] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r0, =gTasks mov r3, r8 adds r1, r3, r7 @@ -1991,13 +1991,13 @@ _0813ED0A: beq _0813ED16 b _0813F1A4 _0813ED16: - bl sub_804F574 + bl BufferMoveToLearnIntoBattleTextBuff2 ldr r0, =gBattleStringsTable ldr r0, [r0, 0x10] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r0, =gTasks mov r2, r8 adds r1, r2, r7 @@ -2023,10 +2023,10 @@ _0813ED56: _0813ED62: ldr r0, =gBattleStringsTable ldr r0, [r0, 0x14] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r0, =gTasks mov r3, r8 adds r1, r3, r7 @@ -2048,10 +2048,10 @@ _0813ED90: bne _0813EDCE ldr r0, =gBattleStringsTable ldr r0, [r0, 0x18] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r0, =gTasks mov r2, r8 adds r1, r2, r7 @@ -2087,7 +2087,7 @@ _0813EDEA: bl sub_8056A3C ldr r0, =gText_BattleYesNoChoice movs r1, 0xC - bl battle_show_message_maybe + bl sub_814F9EC 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 sub_8056B74 + bl BattleCreateCursorAt b _0813F1A4 .pool _0813EE34: @@ -2117,10 +2117,10 @@ _0813EE34: movs r0, 0x5 bl PlaySE ldrb r0, [r4, 0x1] - bl sub_8056BAC + bl BattleDestroyCursorAt movs r0, 0 strb r0, [r4, 0x1] - bl sub_8056B74 + bl BattleCreateCursorAt _0813EE5C: ldr r0, =gMain ldrh r1, [r0, 0x2E] @@ -2135,10 +2135,10 @@ _0813EE5C: movs r0, 0x5 bl PlaySE ldrb r0, [r4, 0x1] - bl sub_8056BAC + bl BattleDestroyCursorAt movs r0, 0x1 strb r0, [r4, 0x1] - bl sub_8056B74 + bl BattleCreateCursorAt _0813EE84: ldr r0, =gMain ldrh r1, [r0, 0x2E] @@ -2289,10 +2289,10 @@ _0813EFC8: ldr r3, =0x000004cc adds r0, r3 ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r1, =gTasks mov r2, r8 adds r0, r2, r7 @@ -2338,10 +2338,10 @@ _0813F05C: lsls r1, 2 adds r0, r1 ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r0, =gTasks mov r2, r8 adds r1, r2, r7 @@ -2367,10 +2367,10 @@ _0813F09E: _0813F0AA: ldr r0, =gBattleStringsTable ldr r0, [r0, 0x1C] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r0, =gTasks mov r3, r8 adds r1, r3, r7 @@ -2395,10 +2395,10 @@ _0813F0D8: lsls r1, 2 adds r0, r1 ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r1, =gTasks mov r2, r8 adds r0, r2, r7 @@ -2411,10 +2411,10 @@ _0813F0D8: _0813F120: ldr r0, =gBattleStringsTable ldr r0, [r0, 0x20] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r1, =gTasks mov r3, r8 adds r0, r3, r7 @@ -2431,10 +2431,10 @@ _0813F120: _0813F154: ldr r0, =gBattleStringsTable ldr r0, [r0, 0x24] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r0, =gDisplayedStringBattle movs r1, 0 - bl battle_show_message_maybe + bl sub_814F9EC ldr r1, =gTasks mov r2, r8 adds r0, r2, r7 @@ -3059,12 +3059,12 @@ _0813F756: beq _0813F762 b _0813FCC4 _0813F762: - bl sub_804F574 + bl BufferMoveToLearnIntoBattleTextBuff2 ldr r0, =0x0000016f bl PlayFanfare ldr r0, =gBattleStringsTable ldr r0, [r0, 0xC] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r1, =gDisplayedStringBattle movs r0, 0 movs r2, 0x1 @@ -3160,10 +3160,10 @@ _0813F846: beq _0813F852 b _0813FCC4 _0813F852: - bl sub_804F574 + bl BufferMoveToLearnIntoBattleTextBuff2 ldr r0, =gBattleStringsTable ldr r0, [r0, 0x10] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r1, =gDisplayedStringBattle movs r0, 0 movs r2, 0x1 @@ -3193,7 +3193,7 @@ _0813F892: _0813F89E: ldr r0, =gBattleStringsTable ldr r0, [r0, 0x14] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r1, =gDisplayedStringBattle movs r0, 0 movs r2, 0x1 @@ -3219,7 +3219,7 @@ _0813F8CC: bne _0813F90C ldr r0, =gBattleStringsTable ldr r0, [r0, 0x18] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r1, =gDisplayedStringBattle movs r0, 0 movs r2, 0x1 @@ -3299,7 +3299,7 @@ _0813F98C: lsls r1, 3 adds r0, r1 ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r1, =gDisplayedStringBattle movs r0, 0 movs r2, 0x1 @@ -3336,7 +3336,7 @@ _0813F9E4: lsls r1, 3 adds r0, r1 ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r1, =gDisplayedStringBattle movs r0, 0 movs r2, 0x1 @@ -3441,7 +3441,7 @@ _0813FAEC: ldr r1, =0x000004cc adds r0, r1 ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r1, =gDisplayedStringBattle movs r0, 0 movs r2, 0x1 @@ -3481,7 +3481,7 @@ _0813FB3C: lsls r1, 2 adds r0, r1 ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r1, =gDisplayedStringBattle movs r0, 0 movs r2, 0x1 @@ -3511,7 +3511,7 @@ _0813FBB2: _0813FBBE: ldr r0, =gBattleStringsTable ldr r0, [r0, 0x1C] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r1, =gDisplayedStringBattle movs r0, 0 movs r2, 0x1 @@ -3540,7 +3540,7 @@ _0813FBEC: lsls r1, 2 adds r0, r1 ldr r0, [r0] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r1, =gDisplayedStringBattle movs r0, 0 movs r2, 0x1 @@ -3557,7 +3557,7 @@ _0813FBEC: _0813FC38: ldr r0, =gBattleStringsTable ldr r0, [r0, 0x20] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r1, =gDisplayedStringBattle movs r0, 0 movs r2, 0x1 @@ -3578,7 +3578,7 @@ _0813FC38: _0813FC70: ldr r0, =gBattleStringsTable ldr r0, [r0, 0x24] - bl StrCpyDecodeToDisplayedStringBattle + bl BattleStringExpandPlaceholdersToDisplayedString ldr r1, =gDisplayedStringBattle movs r0, 0 movs r2, 0x1 @@ -3630,35 +3630,35 @@ nullsub_83: @ 813FCD8 thumb_func_start sub_813FCDC sub_813FCDC: @ 813FCDC push {lr} - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X ldrh r1, [r0] movs r0, 0x10 bl SetGpuReg - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y ldrh r1, [r0] movs r0, 0x12 bl SetGpuReg - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X ldrh r1, [r0] movs r0, 0x14 bl SetGpuReg - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y ldrh r1, [r0] movs r0, 0x16 bl SetGpuReg - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X ldrh r1, [r0] movs r0, 0x18 bl SetGpuReg - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y ldrh r1, [r0] movs r0, 0x1A bl SetGpuReg - ldr r0, =gUnknown_02022E20 + ldr r0, =gBattle_BG3_X ldrh r1, [r0] movs r0, 0x1C bl SetGpuReg - ldr r0, =gUnknown_02022E22 + ldr r0, =gBattle_BG3_Y ldrh r1, [r0] movs r0, 0x1E bl SetGpuReg @@ -3674,35 +3674,35 @@ sub_813FCDC: @ 813FCDC thumb_func_start sub_813FD64 sub_813FD64: @ 813FD64 push {lr} - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X ldrh r1, [r0] movs r0, 0x10 bl SetGpuReg - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y ldrh r1, [r0] movs r0, 0x12 bl SetGpuReg - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X ldrh r1, [r0] movs r0, 0x14 bl SetGpuReg - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y ldrh r1, [r0] movs r0, 0x16 bl SetGpuReg - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X ldrh r1, [r0] movs r0, 0x18 bl SetGpuReg - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y ldrh r1, [r0] movs r0, 0x1A bl SetGpuReg - ldr r0, =gUnknown_02022E20 + ldr r0, =gBattle_BG3_X ldrh r1, [r0] movs r0, 0x1C bl SetGpuReg - ldr r0, =gUnknown_02022E22 + ldr r0, =gBattle_BG3_Y ldrh r1, [r0] movs r0, 0x1E bl SetGpuReg @@ -3852,9 +3852,9 @@ sub_813FEE8: @ 813FEE8 push {r6,r7} lsls r0, 24 lsrs r5, r0, 24 - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X mov r8, r0 - ldr r1, =gUnknown_02022E1A + ldr r1, =gBattle_BG1_Y mov r9, r1 ldr r1, =gTasks lsls r0, r5, 2 @@ -3865,13 +3865,13 @@ sub_813FEE8: @ 813FEE8 ldrsh r0, [r0, r2] cmp r0, 0 bne _0813FF28 - ldr r7, =gUnknown_02022E1C - ldr r6, =gUnknown_02022E1E + ldr r7, =gBattle_BG2_X + ldr r6, =gBattle_BG2_Y b _0813FF2C .pool _0813FF28: - ldr r7, =gUnknown_02022E20 - ldr r6, =gUnknown_02022E22 + ldr r7, =gBattle_BG3_X + ldr r6, =gBattle_BG3_Y _0813FF2C: lsls r4, r5, 2 adds r4, r5 @@ -4130,12 +4130,12 @@ sub_8140174: @ 8140174 movs r0, 0x50 movs r1, 0 bl SetGpuReg - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X movs r1, 0 strh r1, [r0] - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y strh r1, [r0] - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X strh r1, [r0] movs r0, 0x1 movs r1, 0x5 diff --git a/asm/field_control_avatar.s b/asm/field_control_avatar.s index 5c515ae3d..fa923d94b 100644 --- a/asm/field_control_avatar.s +++ b/asm/field_control_avatar.s @@ -51,7 +51,7 @@ process_overworld_input: @ 809BF08 bl cur_mapdata_block_role_at_player_pos lsls r0, 24 lsrs r0, 24 - bl sub_808904C + bl MetatileBehavior_IsMoveTile lsls r0, 24 lsrs r7, r0, 24 cmp r6, 0x2 @@ -831,7 +831,7 @@ _0809C55C: .pool _0809C574: adds r0, r5, 0 - bl is_tile_x8B + bl MetatileBehavior_IsClosedSootopolisGymDoor lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -841,7 +841,7 @@ _0809C574: .pool _0809C58C: adds r0, r5, 0 - bl is_tile_xEA + bl MetatileBehavior_IsUnknownClosedDoor lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -851,7 +851,7 @@ _0809C58C: .pool _0809C5A4: adds r0, r5, 0 - bl is_tile_x84 + bl MetatileBehavior_IsCableBoxResults1 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -859,7 +859,7 @@ _0809C5A4: b _0809C6E4 _0809C5B4: adds r0, r5, 0 - bl is_tile_x87 + bl MetatileBehavior_IsPokeblockFeeder lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -869,7 +869,7 @@ _0809C5B4: .pool _0809C5CC: adds r0, r5, 0 - bl is_tile_x8C + bl MetatileBehavior_IsTrickHousePuzzleDoor lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -879,7 +879,7 @@ _0809C5CC: .pool _0809C5E4: adds r0, r5, 0 - bl is_tile_x85 + bl MetatileBehavior_IsRegionMap lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -889,7 +889,7 @@ _0809C5E4: .pool _0809C5FC: adds r0, r5, 0 - bl sub_8089A1C + bl MetatileBehavior_IsRunningShoesInstruction lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -899,7 +899,7 @@ _0809C5FC: .pool _0809C614: adds r0, r5, 0 - bl sub_8089A30 + bl MetatileBehavior_IsPictureBookShelf lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -909,7 +909,7 @@ _0809C614: .pool _0809C62C: adds r0, r5, 0 - bl sub_8089A44 + bl MetatileBehavior_IsBookShelf lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -919,7 +919,7 @@ _0809C62C: .pool _0809C644: adds r0, r5, 0 - bl sub_8089A58 + bl MetatileBehavior_IsPokeCenterBookShelf lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -929,7 +929,7 @@ _0809C644: .pool _0809C65C: adds r0, r5, 0 - bl sub_8089A6C + bl MetatileBehavior_IsVase lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -939,7 +939,7 @@ _0809C65C: .pool _0809C674: adds r0, r5, 0 - bl sub_8089A80 + bl MetatileBehavior_IsTrashCan lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -949,7 +949,7 @@ _0809C674: .pool _0809C68C: adds r0, r5, 0 - bl sub_8089A94 + bl MetatileBehavior_IsShopShelf lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -959,7 +959,7 @@ _0809C68C: .pool _0809C6A4: adds r0, r5, 0 - bl sub_8089AA8 + bl MetatileBehavior_IsBlueprint lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -970,7 +970,7 @@ _0809C6A4: _0809C6BC: adds r0, r5, 0 adds r1, r4, 0 - bl sub_8089AD0 + bl MetatileBehavior_IsPlayerFacingWirelessBoxResults lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -981,7 +981,7 @@ _0809C6BC: _0809C6D4: adds r0, r5, 0 adds r1, r4, 0 - bl sub_8089AEC + bl MetatileBehavior_IsCableBoxResults2 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1023,7 +1023,7 @@ _0809C71C: cmp r4, r0 bne _0809C7D0 adds r0, r5, 0 - bl sub_8089288 + bl MetatileBehavior_IsSecretBasePC lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1033,7 +1033,7 @@ _0809C71C: .pool _0809C74C: adds r0, r5, 0 - bl sub_808929C + bl MetatileBehavior_IsSecretBaseRegisterPC lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1043,7 +1043,7 @@ _0809C74C: .pool _0809C764: adds r0, r5, 0 - bl sub_80893DC + bl MetatileBehavior_IsMB_BF lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1053,7 +1053,7 @@ _0809C764: .pool _0809C77C: adds r0, r5, 0 - bl sub_80893F0 + bl MetatileBehavior_IsSecretBaseTvOrShield lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1063,7 +1063,7 @@ _0809C77C: .pool _0809C794: adds r0, r5, 0 - bl sub_80892EC + bl MetatileBehavior_IsMB_C6 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1072,7 +1072,7 @@ _0809C794: b _0809C7E2 _0809C7A8: adds r0, r5, 0 - bl sub_8089364 + bl MetatileBehavior_IsMB_C3 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1081,7 +1081,7 @@ _0809C7A8: b _0809C7E2 _0809C7BC: adds r0, r5, 0 - bl sub_8089350 + bl MetatileBehavior_IsMB_B5 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1090,7 +1090,7 @@ _0809C7BC: b _0809C7E2 _0809C7D0: adds r0, r5, 0 - bl sub_8089300 + bl MetatileBehavior_IsSecretBasePoster lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1297,7 +1297,7 @@ sub_809C96C: @ 809C96C lsls r0, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl sub_8089918 + bl MetatileBehavior_IsCrackedFloorHole lsls r0, 24 cmp r0, 0 beq _0809C988 @@ -1306,7 +1306,7 @@ sub_809C96C: @ 809C96C .pool _0809C988: adds r0, r4, 0 - bl sub_8089ABC + bl MetatileBehavior_IsBattlePyramidWarp lsls r0, 24 cmp r0, 0 beq _0809C9A4 @@ -1318,7 +1318,7 @@ _0809C996: .pool _0809C9A4: adds r0, r4, 0 - bl sub_80893C8 + bl MetatileBehavior_IsSecretBaseGlitterMat lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1327,7 +1327,7 @@ _0809C9A4: b _0809C9E8 _0809C9B8: adds r0, r4, 0 - bl sub_80893B4 + bl MetatileBehavior_IsSecretBaseSoundMat lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1376,7 +1376,7 @@ _0809CA04: bne _0809CAF8 lsls r0, r4, 24 lsrs r0, 24 - bl sub_808904C + bl MetatileBehavior_IsMoveTile lsls r0, 24 cmp r0, 0 bne _0809CAF8 @@ -1411,7 +1411,7 @@ _0809CA64: b _0809CB28 .pool _0809CA7C: - bl sub_8179A04 + bl ShouldDoBrailleRegicePuzzle lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1467,7 +1467,7 @@ _0809CAF8: cmp r0, 0x1 beq _0809CB28 movs r0, 0x1 - bl sub_8137FC0 + bl CountSSTidalStep cmp r0, 0x1 bne _0809CB1C ldr r0, =gUnknown_0823C050 @@ -1719,7 +1719,7 @@ sub_809CC9C: @ 809CC9C .pool _0809CCF8: adds r0, r4, 0 - bl sub_8089870 + bl MetatileBehavior_IsLavaridgeB1FWarp lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1729,7 +1729,7 @@ _0809CCF8: b _0809CD8C _0809CD0E: adds r0, r4, 0 - bl is_role_x68 + bl MetatileBehavior_IsLavaridge1FWarp lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1749,7 +1749,7 @@ _0809CD24: b _0809CD8C _0809CD3A: adds r0, r4, 0 - bl sub_80898AC + bl MetatileBehavior_IsWarpOrBridge lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1759,7 +1759,7 @@ _0809CD3A: b _0809CD8C _0809CD50: adds r0, r4, 0 - bl sub_8089904 + bl MetatileBehavior_IsMtPyreHole lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1771,7 +1771,7 @@ _0809CD50: .pool _0809CD6C: adds r0, r4, 0 - bl sub_80898C0 + bl MetatileBehavior_IsMossdeepGymWarp lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1797,7 +1797,7 @@ is_warp_tile: @ 809CD94 lsls r0, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl is_tile_x69_2_warp_door + bl MetatileBehavior_IsWarpDoor lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1815,19 +1815,19 @@ is_warp_tile: @ 809CD94 cmp r0, 0x1 beq _0809CE2A adds r0, r4, 0 - bl sub_8088F58 + bl MetatileBehavior_IsNonAnimDoor lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _0809CE2A adds r0, r4, 0 - bl sub_8089870 + bl MetatileBehavior_IsLavaridgeB1FWarp lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _0809CE2A adds r0, r4, 0 - bl is_role_x68 + bl MetatileBehavior_IsLavaridge1FWarp lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1839,19 +1839,19 @@ is_warp_tile: @ 809CD94 cmp r0, 0x1 beq _0809CE2A adds r0, r4, 0 - bl sub_8089904 + bl MetatileBehavior_IsMtPyreHole lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _0809CE2A adds r0, r4, 0 - bl sub_80898C0 + bl MetatileBehavior_IsMossdeepGymWarp lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _0809CE2A adds r0, r4, 0 - bl sub_80898AC + bl MetatileBehavior_IsWarpOrBridge lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -2048,7 +2048,7 @@ map_warp_consider_2_to_inside: @ 809CF78 lsls r0, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl sub_8089210 + bl MetatileBehavior_IsSecretBaseOpen lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -2062,7 +2062,7 @@ map_warp_consider_2_to_inside: @ 809CF78 .pool _0809CFB0: adds r0, r4, 0 - bl is_tile_x69_2_warp_door + bl MetatileBehavior_IsWarpDoor lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -2322,7 +2322,7 @@ dive_warp: @ 809D16C bne _0809D1A4 lsls r0, r5, 24 lsrs r0, 24 - bl sub_80895D0 + bl MetatileBehavior_IsUnableToEmerge lsls r0, 24 cmp r0, 0 bne _0809D1A4 @@ -2340,7 +2340,7 @@ dive_warp: @ 809D16C _0809D1A4: lsls r0, r5, 24 lsrs r0, 24 - bl sub_80895B0 + bl MetatileBehavior_IsDiveable lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -2394,7 +2394,7 @@ sub_809D1E8: @ 809D1E8 cmp r0, 0x5 bne _0809D244 adds r0, r5, 0 - bl sub_80895D0 + bl MetatileBehavior_IsUnableToEmerge lsls r0, 24 cmp r0, 0 bne _0809D244 @@ -2417,7 +2417,7 @@ sub_809D1E8: @ 809D1E8 .pool _0809D244: adds r0, r5, 0 - bl sub_80895B0 + bl MetatileBehavior_IsDiveable lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 diff --git a/asm/field_door.s b/asm/field_door.s index 987f0bd8c..037c76566 100644 --- a/asm/field_door.s +++ b/asm/field_door.s @@ -581,15 +581,15 @@ sub_808A83C: @ 808A83C .pool thumb_func_end sub_808A83C - thumb_func_start sub_808A854 -sub_808A854: @ 808A854 + thumb_func_start FieldSetDoorOpened +FieldSetDoorOpened: @ 808A854 push {r4,r5,lr} adds r4, r0, 0 adds r5, r1, 0 bl MapGridGetMetatileBehaviorAt lsls r0, 24 lsrs r0, 24 - bl sub_8088EFC + bl MetatileBehavior_IsDoor lsls r0, 24 cmp r0, 0 beq _0808A876 @@ -602,17 +602,17 @@ _0808A876: pop {r0} bx r0 .pool - thumb_func_end sub_808A854 + thumb_func_end FieldSetDoorOpened - thumb_func_start sub_808A880 -sub_808A880: @ 808A880 + thumb_func_start FieldSetDoorClosed +FieldSetDoorClosed: @ 808A880 push {r4,r5,lr} adds r4, r0, 0 adds r5, r1, 0 bl MapGridGetMetatileBehaviorAt lsls r0, 24 lsrs r0, 24 - bl sub_8088EFC + bl MetatileBehavior_IsDoor lsls r0, 24 cmp r0, 0 beq _0808A8A2 @@ -625,17 +625,17 @@ _0808A8A2: pop {r0} bx r0 .pool - thumb_func_end sub_808A880 + thumb_func_end FieldSetDoorClosed - thumb_func_start sub_808A8AC -sub_808A8AC: @ 808A8AC + thumb_func_start FieldAnimateDoorClose +FieldAnimateDoorClose: @ 808A8AC push {r4,r5,lr} adds r4, r0, 0 adds r5, r1, 0 bl MapGridGetMetatileBehaviorAt lsls r0, 24 lsrs r0, 24 - bl sub_8088EFC + bl MetatileBehavior_IsDoor lsls r0, 24 cmp r0, 0 beq _0808A8D8 @@ -654,17 +654,17 @@ _0808A8DC: pop {r4,r5} pop {r1} bx r1 - thumb_func_end sub_808A8AC + thumb_func_end FieldAnimateDoorClose - thumb_func_start task_overworld_door_add_if_role_69_for_opening_door_at -task_overworld_door_add_if_role_69_for_opening_door_at: @ 808A8E4 + thumb_func_start FieldAnimateDoorOpen +FieldAnimateDoorOpen: @ 808A8E4 push {r4,r5,lr} adds r4, r0, 0 adds r5, r1, 0 bl MapGridGetMetatileBehaviorAt lsls r0, 24 lsrs r0, 24 - bl sub_8088EFC + bl MetatileBehavior_IsDoor lsls r0, 24 cmp r0, 0 beq _0808A910 @@ -683,10 +683,10 @@ _0808A914: pop {r4,r5} pop {r1} bx r1 - thumb_func_end task_overworld_door_add_if_role_69_for_opening_door_at + thumb_func_end FieldAnimateDoorOpen - thumb_func_start sub_808A91C -sub_808A91C: @ 808A91C + thumb_func_start FieldIsDoorAnimationRunning +FieldIsDoorAnimationRunning: @ 808A91C push {lr} ldr r0, =task50_overworld_door bl FuncIsActiveTask @@ -695,10 +695,10 @@ sub_808A91C: @ 808A91C pop {r1} bx r1 .pool - thumb_func_end sub_808A91C + thumb_func_end FieldIsDoorAnimationRunning - thumb_func_start cur_mapdata_get_door_sound_at -cur_mapdata_get_door_sound_at: @ 808A930 + thumb_func_start GetDoorSoundEffect +GetDoorSoundEffect: @ 808A930 push {lr} adds r3, r0, 0 adds r2, r1, 0 @@ -725,7 +725,7 @@ _0808A95C: _0808A95E: pop {r1} bx r1 - thumb_func_end cur_mapdata_get_door_sound_at + thumb_func_end GetDoorSoundEffect thumb_func_start sub_808A964 sub_808A964: @ 808A964 diff --git a/asm/field_effect.s b/asm/field_effect.s index c8ccc49b4..323e56bfe 100644 --- a/asm/field_effect.s +++ b/asm/field_effect.s @@ -1989,7 +1989,7 @@ task00_8084310: @ 80B6A24 cmp r0, 0 beq _080B6A8A bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r1] @@ -2100,7 +2100,7 @@ _080B6B3E: cmp r0, 0 bne _080B6B58 bl ScriptContext2_Disable - bl sub_809757C + bl UnfreezeMapObjects adds r0, r5, 0 bl DestroyTask _080B6B58: @@ -2459,7 +2459,7 @@ sub_80B6E18: @ 80B6E18 strb r0, [r1, 0x6] bl ScriptContext2_Disable bl CameraObjectReset1 - bl sub_809757C + bl UnfreezeMapObjects bl InstallCameraPanAheadCallback ldr r0, =sub_80B6B94 bl FindTaskIdByFunc @@ -3111,7 +3111,7 @@ oei_waterfall: @ 80B734C adds r1, r0 lsls r1, 3 adds r1, r2 - ldr r2, =gFieldEffectSpawnParams + ldr r2, =gFieldEffectArguments ldr r2, [r2] strh r2, [r1, 0xA] bl _call_via_r4 @@ -3188,7 +3188,7 @@ waterfall_1_do_anim_probably: @ 80B73F0 bne _080B7420 adds r0, r5, 0 bl FieldObjectClearAnimIfSpecialAnimFinished - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments movs r2, 0xA ldrsh r0, [r4, r2] str r0, [r1] @@ -3304,7 +3304,7 @@ sub_80B74D0: @ 80B74D0 adds r1, r0 lsls r1, 3 adds r1, r2 - ldr r3, =gFieldEffectSpawnParams + ldr r3, =gFieldEffectArguments ldr r2, [r3] strh r2, [r1, 0x26] ldr r2, [r3, 0x4] @@ -3363,7 +3363,7 @@ dive_2_unknown: @ 80B7558 push {r4,lr} adds r4, r0, 0 bl ScriptContext2_Enable - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments movs r2, 0x26 ldrsh r0, [r4, r2] str r0, [r1] @@ -3536,7 +3536,7 @@ sub_80B76B8: @ 80B76B8 strh r0, [r2, 0x26] movs r0, 0x1 strh r0, [r4, 0xE] - ldr r3, =gFieldEffectSpawnParams + ldr r3, =gFieldEffectArguments movs r5, 0x10 ldrsh r0, [r1, r5] str r0, [r3] @@ -3835,7 +3835,7 @@ sub_80B791C: @ 80B791C lsls r0, 24 cmp r0, 0 beq _080B795C - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments movs r2, 0x10 ldrsh r0, [r5, r2] str r0, [r1] @@ -3919,7 +3919,7 @@ sub_80B79BC: @ 80B79BC movs r0, 0 strb r0, [r1, 0x6] bl ScriptContext2_Disable - bl sub_809757C + bl UnfreezeMapObjects ldr r0, =sub_80B7890 bl FindTaskIdByFunc lsls r0, 24 @@ -3935,7 +3935,7 @@ _080B79E6: thumb_func_start sub_80B79F4 sub_80B79F4: @ 80B79F4 push {r4,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -4090,7 +4090,7 @@ sub_80B7B18: @ 80B7B18 ldrsh r0, [r5, r2] cmp r0, 0x3 ble _080B7B6C - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments movs r2, 0x10 ldrsh r0, [r4, r2] str r0, [r1] @@ -4222,7 +4222,7 @@ _080B7C2C: thumb_func_start sub_80B7C48 sub_80B7C48: @ 80B7C48 push {r4,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -4583,7 +4583,7 @@ _080B7F32: ands r0, r1 strb r0, [r6, 0x1] bl ScriptContext2_Disable - bl sub_809757C + bl UnfreezeMapObjects ldr r0, =sub_80B7E94 bl FindTaskIdByFunc lsls r0, 24 @@ -5194,7 +5194,7 @@ sub_80B8410: @ 80B8410 bne _080B8484 bl ScriptContext2_Disable bl CameraObjectReset1 - bl sub_809757C + bl UnfreezeMapObjects ldr r0, =sub_80B8250 bl FindTaskIdByFunc lsls r0, 24 @@ -5229,7 +5229,7 @@ _080B84BE: bl CreateTask lsls r0, 24 lsrs r4, r0, 24 - ldr r2, =gFieldEffectSpawnParams + ldr r2, =gFieldEffectArguments ldr r0, [r2] ldr r1, [r2, 0x4] ldr r2, [r2, 0x8] @@ -5252,7 +5252,7 @@ _080B84BE: thumb_func_start sub_80B84F8 sub_80B84F8: @ 80B84F8 push {r4-r6,lr} - ldr r5, =gFieldEffectSpawnParams + ldr r5, =gFieldEffectArguments ldr r0, [r5] movs r6, 0x80 lsls r6, 24 @@ -6292,12 +6292,12 @@ sub_80B8D44: @ 80B8D44 adds r1, r0 lsls r1, 3 adds r1, r2 - ldr r0, =gFieldEffectSpawnParams + ldr r0, =gFieldEffectArguments ldr r0, [r0] strh r0, [r1, 0x26] bl sav1_reset_battle_music_maybe ldr r0, =0x0000016d - bl sub_80858C4 + bl Overworld_ChangeMusicTo movs r0, 0 pop {r1} bx r1 @@ -6421,7 +6421,7 @@ sub_80B8E60: @ 80B8E60 lsls r0, 24 cmp r0, 0 beq _080B8E96 - ldr r2, =gFieldEffectSpawnParams + ldr r2, =gFieldEffectArguments movs r1, 0x26 ldrsh r0, [r4, r1] movs r1, 0x80 @@ -6473,7 +6473,7 @@ sub_80B8EA8: @ 80B8EA8 lsrs r1, 24 adds r0, r4, 0 bl FieldObjectSetSpecialAnim - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments movs r2, 0xA ldrsh r0, [r6, r2] str r0, [r1] @@ -6527,7 +6527,7 @@ sub_80B8F24: @ 80B8F24 ldrb r0, [r4, 0x1A] movs r1, 0x1 bl sub_81555AC - bl sub_809757C + bl UnfreezeMapObjects bl ScriptContext2_Disable movs r0, 0x9 bl FieldEffectActiveListRemove @@ -6704,7 +6704,7 @@ sub_80B90CC: @ 80B90CC strb r0, [r2, 0x5] ldr r0, =sub_80B9128 str r0, [r2, 0x1C] - ldr r0, =gFieldEffectSpawnParams + ldr r0, =gFieldEffectArguments ldr r0, [r0] strh r0, [r2, 0x30] movs r0, 0x9E @@ -6793,7 +6793,7 @@ sub_80B91A4: @ 80B91A4 adds r1, r0 lsls r1, 3 adds r1, r2 - ldr r0, =gFieldEffectSpawnParams + ldr r0, =gFieldEffectArguments ldr r0, [r0] strh r0, [r1, 0xA] movs r0, 0 @@ -6884,7 +6884,7 @@ sub_80B925C: @ 80B925C ldrh r0, [r4, 0x8] adds r0, 0x1 strh r0, [r4, 0x8] - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments movs r2, 0xA ldrsh r0, [r4, r2] str r0, [r1] @@ -7922,7 +7922,7 @@ _080B9ACA: sub_80B9ADC: @ 80B9ADC push {r4,lr} sub sp, 0x4 - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments ldrb r0, [r4] ldrb r1, [r4, 0x4] ldrb r2, [r4, 0x8] @@ -8343,7 +8343,7 @@ _080B9E24: sub_80B9E28: @ 80B9E28 push {r4-r7,lr} sub sp, 0x4 - ldr r7, =gFieldEffectSpawnParams + ldr r7, =gFieldEffectArguments ldrb r0, [r7] ldrb r1, [r7, 0x4] ldrb r2, [r7, 0x8] diff --git a/asm/field_effect_helpers.s b/asm/field_effect_helpers.s index 76ba35fd2..754a8f7ff 100644 --- a/asm/field_effect_helpers.s +++ b/asm/field_effect_helpers.s @@ -130,13 +130,13 @@ npc_pal_op: @ 8153FAC cmp r0, 0 bne _08154008 ldrb r0, [r5, 0x1F] - bl sub_80894D4 + bl MetatileBehavior_GetBridgeSth lsls r0, 24 lsrs r0, 24 cmp r0, 0 bne _08153FEE ldrb r0, [r5, 0x1E] - bl sub_80894D4 + bl MetatileBehavior_GetBridgeSth lsls r0, 24 lsrs r0, 24 cmp r0, 0 @@ -574,7 +574,7 @@ _0815432E: thumb_func_start oei_shadow oei_shadow: @ 8154340 push {r4,r5,lr} - ldr r5, =gFieldEffectSpawnParams + ldr r5, =gFieldEffectArguments ldrb r0, [r5] ldrb r1, [r5, 0x4] ldrb r2, [r5, 0x8] @@ -702,7 +702,7 @@ _08154412: cmp r0, r1 bne _08154490 ldrb r0, [r4, 0x1E] - bl sub_8088E64 + bl MetatileBehavior_IsPokeGrass lsls r0, 24 cmp r0, 0 bne _08154490 @@ -742,7 +742,7 @@ _08154498: oei_grass_normal: @ 81544AC push {r4,r5,lr} sub sp, 0x4 - ldr r5, =gFieldEffectSpawnParams + ldr r5, =gFieldEffectArguments ldrh r1, [r5] mov r0, sp strh r1, [r0] @@ -951,7 +951,7 @@ _08154648: thumb_func_start sub_8154658 sub_8154658: @ 8154658 push {r4,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -1080,7 +1080,7 @@ _0815474C: sub_8154758: @ 8154758 push {r4,r5,lr} sub sp, 0x4 - ldr r5, =gFieldEffectSpawnParams + ldr r5, =gFieldEffectArguments ldrh r1, [r5] mov r0, sp strh r1, [r0] @@ -1282,7 +1282,7 @@ _081548EA: thumb_func_start sub_81548FC sub_81548FC: @ 81548FC push {r4,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -1336,7 +1336,7 @@ _08154958: thumb_func_start sub_815496C sub_815496C: @ 815496C push {r4-r6,lr} - ldr r6, =gFieldEffectSpawnParams + ldr r6, =gFieldEffectArguments ldrb r0, [r6] ldrb r1, [r6, 0x4] ldrb r2, [r6, 0x8] @@ -1537,7 +1537,7 @@ _08154AF2: thumb_func_start sub_8154B04 sub_8154B04: @ 8154B04 push {r4,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -1591,7 +1591,7 @@ _08154B62: thumb_func_start sub_8154B78 sub_8154B78: @ 8154B78 push {r4,r5,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -1646,7 +1646,7 @@ _08154BD8: thumb_func_start sub_8154BEC sub_8154BEC: @ 8154BEC push {r4,r5,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -1777,7 +1777,7 @@ _08154CE4: thumb_func_start sub_8154CEC sub_8154CEC: @ 8154CEC push {r4-r6,lr} - ldr r6, =gFieldEffectSpawnParams + ldr r6, =gFieldEffectArguments ldrb r0, [r6] ldrb r1, [r6, 0x4] ldrb r2, [r6, 0x8] @@ -1922,7 +1922,7 @@ _08154E0A: thumb_func_start sub_8154E1C sub_8154E1C: @ 8154E1C push {r4,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -1976,7 +1976,7 @@ _08154E78: thumb_func_start oei_water_drop_tall oei_water_drop_tall: @ 8154E8C push {r4,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -2030,7 +2030,7 @@ _08154EE8: thumb_func_start sub_8154EFC sub_8154EFC: @ 8154EFC push {r4-r7,lr} - ldr r7, =gFieldEffectSpawnParams + ldr r7, =gFieldEffectArguments ldrb r0, [r7] ldrb r1, [r7, 0x4] ldrb r2, [r7, 0x8] @@ -2193,7 +2193,7 @@ oei_ripples: @ 8155054 push {r4,lr} ldr r0, =gFieldEffectObjectTemplatePointers ldr r0, [r0, 0x14] - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments movs r2, 0 ldrsh r1, [r4, r2] movs r3, 0x4 @@ -2238,7 +2238,7 @@ _081550A0: thumb_func_start sub_81550B4 sub_81550B4: @ 81550B4 push {r4-r6,lr} - ldr r6, =gFieldEffectSpawnParams + ldr r6, =gFieldEffectArguments ldrb r0, [r6] ldrb r1, [r6, 0x4] ldrb r2, [r6, 0x8] @@ -2393,7 +2393,7 @@ _081551E4: thumb_func_start sub_81551F0 sub_81551F0: @ 81551F0 push {r4,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -2445,7 +2445,7 @@ _08155248: thumb_func_start sub_815525C sub_815525C: @ 815525C push {r4,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -2497,7 +2497,7 @@ _081552B4: thumb_func_start sub_81552C8 sub_81552C8: @ 81552C8 push {r4,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -2549,7 +2549,7 @@ _08155320: thumb_func_start sub_8155334 sub_8155334: @ 8155334 push {r4,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -2603,7 +2603,7 @@ ash: @ 81553A0 push {r4,lr} lsls r2, 16 lsrs r2, 16 - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments lsls r0, 16 asrs r0, 16 str r0, [r4] @@ -2630,7 +2630,7 @@ ash: @ 81553A0 oei_ash: @ 81553D4 push {r4,r5,lr} sub sp, 0x4 - ldr r5, =gFieldEffectSpawnParams + ldr r5, =gFieldEffectArguments ldrh r1, [r5] mov r0, sp strh r1, [r0] @@ -2809,7 +2809,7 @@ _0815552C: thumb_func_start sub_8155534 sub_8155534: @ 8155534 push {r4,r5,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -3261,7 +3261,7 @@ _08155888: thumb_func_start sub_8155890 sub_8155890: @ 8155890 push {r4,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -3315,7 +3315,7 @@ _081558EC: thumb_func_start sub_8155900 sub_8155900: @ 8155900 push {r4-r7,lr} - ldr r7, =gFieldEffectSpawnParams + ldr r7, =gFieldEffectArguments ldrb r0, [r7] ldrb r1, [r7, 0x4] ldrb r2, [r7, 0x8] @@ -3505,7 +3505,7 @@ _08155A76: thumb_func_start sub_8155A88 sub_8155A88: @ 8155A88 push {r4,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -3586,7 +3586,7 @@ _08155B20: thumb_func_start sub_8155B2C sub_8155B2C: @ 8155B2C push {r4,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments adds r1, r4, 0x4 adds r0, r4, 0 movs r2, 0x8 @@ -3689,7 +3689,7 @@ ShowDisguiseFieldEffect: @ 8155BD0 lsrs r6, r1, 24 lsls r2, 24 lsrs r7, r2, 24 - ldr r5, =gFieldEffectSpawnParams + ldr r5, =gFieldEffectArguments ldrb r0, [r5] ldrb r1, [r5, 0x4] ldrb r2, [r5, 0x8] @@ -3950,7 +3950,7 @@ _08155DD8: thumb_func_start sub_8155DDC sub_8155DDC: @ 8155DDC push {r4,lr} - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments ldr r0, [r4] adds r0, 0x7 str r0, [r4] diff --git a/asm/field_ground_effect.s b/asm/field_ground_effect.s index 7d05dbd98..2152a5c5b 100644 --- a/asm/field_ground_effect.s +++ b/asm/field_ground_effect.s @@ -1166,7 +1166,7 @@ _08096E8C: @ void GroundEffect_SpawnOnTallGrass(struct npc_state *fieldObject, struct obj *object) GroundEffect_SpawnOnTallGrass: @ 8096E90 push {lr} - ldr r3, =gFieldEffectSpawnParams + ldr r3, =gFieldEffectArguments movs r2, 0x10 ldrsh r1, [r0, r2] str r1, [r3] @@ -1205,7 +1205,7 @@ GroundEffect_SpawnOnTallGrass: @ 8096E90 @ void GroundEffect_StepOnTallGrass(struct npc_state *fieldObject, struct obj *object) GroundEffect_StepOnTallGrass: @ 8096EDC push {lr} - ldr r3, =gFieldEffectSpawnParams + ldr r3, =gFieldEffectArguments movs r2, 0x10 ldrsh r1, [r0, r2] str r1, [r3] @@ -1244,7 +1244,7 @@ GroundEffect_StepOnTallGrass: @ 8096EDC @ void GroundEffect_SpawnOnLongGrass(struct npc_state *fieldObject, struct obj *object) GroundEffect_SpawnOnLongGrass: @ 8096F28 push {lr} - ldr r3, =gFieldEffectSpawnParams + ldr r3, =gFieldEffectArguments movs r2, 0x10 ldrsh r1, [r0, r2] str r1, [r3] @@ -1283,7 +1283,7 @@ GroundEffect_SpawnOnLongGrass: @ 8096F28 @ void GroundEffect_StepOnLongGrass(struct npc_state *fieldObject, struct obj *object) GroundEffect_StepOnLongGrass: @ 8096F74 push {lr} - ldr r3, =gFieldEffectSpawnParams + ldr r3, =gFieldEffectArguments movs r2, 0x10 ldrsh r1, [r0, r2] str r1, [r3] @@ -1413,7 +1413,7 @@ DoTracksGroundEffect_Footprints: @ 8097044 mov r0, sp movs r2, 0x4 bl memcpy - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments movs r2, 0x14 ldrsh r0, [r5, r2] str r0, [r1] @@ -1449,7 +1449,7 @@ DoTracksGroundEffect_BikeTireTracks: @ 8097094 ldr r0, [r4, 0x14] cmp r1, r0 beq _080970D6 - ldr r2, =gFieldEffectSpawnParams + ldr r2, =gFieldEffectArguments movs r1, 0x14 ldrsh r0, [r4, r1] str r0, [r2] @@ -1520,7 +1520,7 @@ GroundEffect_JumpOnTallGrass: @ 8097110 sub sp, 0x4 adds r5, r0, 0 adds r6, r1, 0 - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments movs r2, 0x10 ldrsh r0, [r5, r2] str r0, [r1] @@ -1562,7 +1562,7 @@ _0809715A: @ void GroundEffect_JumpOnLongGrass(struct npc_state *fieldObject, struct obj *object) GroundEffect_JumpOnLongGrass: @ 8097168 push {lr} - ldr r2, =gFieldEffectSpawnParams + ldr r2, =gFieldEffectArguments movs r3, 0x10 ldrsh r1, [r0, r3] str r1, [r2] @@ -1585,7 +1585,7 @@ GroundEffect_JumpOnLongGrass: @ 8097168 @ void GroundEffect_JumpOnShallowWater(struct npc_state *fieldObject, struct obj *object) GroundEffect_JumpOnShallowWater: @ 8097190 push {r4,lr} - ldr r3, =gFieldEffectSpawnParams + ldr r3, =gFieldEffectArguments movs r4, 0x10 ldrsh r2, [r0, r4] str r2, [r3] @@ -1611,7 +1611,7 @@ GroundEffect_JumpOnShallowWater: @ 8097190 @ void GroundEffect_JumpOnWater(struct npc_state *fieldObject, struct obj *object) GroundEffect_JumpOnWater: @ 80971C0 push {r4,lr} - ldr r3, =gFieldEffectSpawnParams + ldr r3, =gFieldEffectArguments movs r4, 0x10 ldrsh r2, [r0, r4] str r2, [r3] @@ -1637,7 +1637,7 @@ GroundEffect_JumpOnWater: @ 80971C0 @ void GroundEffect_JumpLandingDust(struct npc_state *fieldObject, struct obj *object) GroundEffect_JumpLandingDust: @ 80971F0 push {r4,lr} - ldr r3, =gFieldEffectSpawnParams + ldr r3, =gFieldEffectArguments movs r4, 0x10 ldrsh r2, [r0, r4] str r2, [r3] @@ -1685,7 +1685,7 @@ GroundEffect_HotSprings: @ 8097230 @ void GroundEffect_Seaweed(struct npc_state *fieldObject, struct obj *object) GroundEffect_Seaweed: @ 8097240 push {lr} - ldr r2, =gFieldEffectSpawnParams + ldr r2, =gFieldEffectArguments movs r3, 0x10 ldrsh r1, [r0, r3] str r1, [r2] diff --git a/asm/field_message_box.s b/asm/field_message_box.s index 35267e8d4..0c1fae6de 100644 --- a/asm/field_message_box.s +++ b/asm/field_message_box.s @@ -108,8 +108,8 @@ _080981E4: .pool thumb_func_end task_del_textbox - thumb_func_start box_related_two__2 -box_related_two__2: @ 80981EC + thumb_func_start ShowFieldMessage +ShowFieldMessage: @ 80981EC push {r4,lr} adds r1, r0, 0 ldr r4, =gUnknown_020375BC @@ -130,7 +130,7 @@ _0809820E: pop {r4} pop {r1} bx r1 - thumb_func_end box_related_two__2 + thumb_func_end ShowFieldMessage thumb_func_start sub_8098214 sub_8098214: @ 8098214 @@ -181,8 +181,8 @@ _08098272: bx r1 thumb_func_end sub_8098238 - thumb_func_start box_related_two__3 -box_related_two__3: @ 8098278 + thumb_func_start ShowFieldAutoScrollMessage +ShowFieldAutoScrollMessage: @ 8098278 push {lr} adds r1, r0, 0 ldr r2, =gUnknown_020375BC @@ -202,7 +202,7 @@ _08098298: _0809829A: pop {r1} bx r1 - thumb_func_end box_related_two__3 + thumb_func_end ShowFieldAutoScrollMessage thumb_func_start sub_80982A0 sub_80982A0: @ 80982A0 @@ -267,8 +267,8 @@ textbox_auto_and_task_add: @ 8098304 bx r0 thumb_func_end textbox_auto_and_task_add - thumb_func_start textbox_close -textbox_close: @ 8098314 + thumb_func_start HideFieldMessageBox +HideFieldMessageBox: @ 8098314 push {lr} bl task_del_textbox movs r0, 0 @@ -280,7 +280,7 @@ textbox_close: @ 8098314 pop {r0} bx r0 .pool - thumb_func_end textbox_close + thumb_func_end HideFieldMessageBox thumb_func_start textbox_any_visible textbox_any_visible: @ 8098330 @@ -290,8 +290,8 @@ textbox_any_visible: @ 8098330 .pool thumb_func_end textbox_any_visible - thumb_func_start sub_809833C -sub_809833C: @ 809833C + thumb_func_start IsFieldMessageBoxHidden +IsFieldMessageBoxHidden: @ 809833C push {lr} ldr r0, =gUnknown_020375BC ldrb r0, [r0] @@ -305,7 +305,7 @@ _08098350: _08098352: pop {r1} bx r1 - thumb_func_end sub_809833C + thumb_func_end IsFieldMessageBoxHidden thumb_func_start sub_8098358 sub_8098358: @ 8098358 diff --git a/asm/field_player_avatar.s b/asm/field_player_avatar.s index aaca9b2ba..34ff54f61 100644 --- a/asm/field_player_avatar.s +++ b/asm/field_player_avatar.s @@ -1223,7 +1223,7 @@ sub_808B238: @ 808B238 bl MapGridGetMetatileBehaviorAt lsls r0, 24 lsrs r0, 24 - bl sub_8088F58 + bl MetatileBehavior_IsNonAnimDoor lsls r0, 24 cmp r0, 0 bne _0808B2D8 @@ -1522,7 +1522,7 @@ PlayerAvatarTransition_Surfing: @ 808B4D8 bl FieldObjectTurn movs r0, 0x8 bl SetPlayerAvatarStateMask - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments movs r2, 0x10 ldrsh r0, [r4, r2] str r0, [r1] @@ -2255,7 +2255,7 @@ PlayCollisionSoundIfNotFacingWarp: @ 808B9EC bl MapGridGetMetatileBehaviorAt lsls r0, 24 lsrs r0, 24 - bl is_tile_x69_2_warp_door + bl MetatileBehavior_IsWarpDoor lsls r0, 24 cmp r0, 0 bne _0808BA54 @@ -3517,7 +3517,7 @@ _0808C3F0: lsrs r1, 24 adds r0, r4, 0 bl FieldObjectSetSpecialAnim - ldr r2, =gFieldEffectSpawnParams + ldr r2, =gFieldEffectArguments movs r1, 0x10 ldrsh r0, [r4, r1] str r0, [r2] @@ -3897,7 +3897,7 @@ sub_808C750: @ 808C750 lsrs r4, 24 bl ScriptContext2_Enable bl sav1_reset_battle_music_maybe - bl sub_8085898 + bl Overworld_ChangeMusicToDefault ldr r2, =gPlayerAvatar ldrb r1, [r2] movs r0, 0xF7 @@ -4858,7 +4858,7 @@ fishF: @ 808CF2C ldr r0, =gPlayerAvatar strb r1, [r0, 0x6] bl ScriptContext2_Disable - bl sub_809757C + bl UnfreezeMapObjects movs r0, 0 movs r1, 0x1 bl sub_8197434 diff --git a/asm/field_poison.s b/asm/field_poison.s index 5b1e24719..652026523 100644 --- a/asm/field_poison.s +++ b/asm/field_poison.s @@ -178,7 +178,7 @@ _080F96A8: strh r0, [r4] b _080F9722 _080F96AE: - bl sub_809833C + bl IsFieldMessageBoxHidden lsls r0, 24 cmp r0, 0 beq _080F9722 @@ -217,7 +217,7 @@ _080F96FC: ldrb r0, [r4, 0x2] bl sub_80F95C0 ldr r0, =gText_PkmnFainted3 - bl box_related_two__2 + bl ShowFieldMessage ldrh r0, [r4] adds r0, 0x1 strh r0, [r4] diff --git a/asm/field_screen.s b/asm/field_screen.s index 13f418f17..4ab8a5a53 100644 --- a/asm/field_screen.s +++ b/asm/field_screen.s @@ -7503,8 +7503,8 @@ _080AED78: bx r0 thumb_func_end bag_add_task0_by_acit - thumb_func_start sub_80AED7C -sub_80AED7C: @ 80AED7C + thumb_func_start SetSav1Weather +SetSav1Weather: @ 80AED7C push {r4,r5,lr} ldr r4, =gSaveBlock1Ptr ldr r1, [r4] @@ -7525,7 +7525,7 @@ sub_80AED7C: @ 80AED7C pop {r0} bx r0 .pool - thumb_func_end sub_80AED7C + thumb_func_end SetSav1Weather thumb_func_start sav1_get_weather_probably sav1_get_weather_probably: @ 80AEDAC @@ -7564,7 +7564,7 @@ sub_80AEDBC: @ 80AEDBC thumb_func_start sub_80AEDF0 sub_80AEDF0: @ 80AEDF0 push {lr} - bl sub_80AED7C + bl SetSav1Weather bl sav1_get_weather_probably lsls r0, 24 lsrs r0, 24 @@ -7576,7 +7576,7 @@ sub_80AEDF0: @ 80AEDF0 thumb_func_start sub_80AEE08 sub_80AEE08: @ 80AEE08 push {lr} - bl sub_80AED7C + bl SetSav1Weather bl sav1_get_weather_probably lsls r0, 24 lsrs r0, 24 @@ -7585,8 +7585,8 @@ sub_80AEE08: @ 80AEE08 bx r0 thumb_func_end sub_80AEE08 - thumb_func_start sub_80AEE20 -sub_80AEE20: @ 80AEE20 + thumb_func_start DoCurrentWeather +DoCurrentWeather: @ 80AEE20 push {r4,r5,lr} bl sav1_get_weather_probably lsls r0, 24 @@ -7627,7 +7627,7 @@ _080AEE6E: pop {r0} bx r0 .pool - thumb_func_end sub_80AEE20 + thumb_func_end DoCurrentWeather thumb_func_start sub_80AEE84 sub_80AEE84: @ 80AEE84 @@ -8248,7 +8248,7 @@ sub_80AF334: @ 80AF334 lsls r0, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl sub_8088EFC + bl MetatileBehavior_IsDoor lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -8258,7 +8258,7 @@ sub_80AF334: @ 80AF334 .pool _080AF36C: adds r0, r4, 0 - bl sub_8088F58 + bl MetatileBehavior_IsNonAnimDoor lsls r0, 24 lsrs r0, 24 ldr r1, =task_map_chg_seq_0807E2CC @@ -8390,7 +8390,7 @@ _080AF480: ldrsh r0, [r6, r1] movs r2, 0 ldrsh r1, [r7, r2] - bl sub_808A854 + bl FieldSetDoorOpened movs r0, 0x1 strh r0, [r5, 0x8] b _080AF54A @@ -8427,7 +8427,7 @@ _080AF4DC: ldrsh r0, [r6, r1] movs r2, 0 ldrsh r1, [r7, r2] - bl sub_808A8AC + bl FieldAnimateDoorClose lsls r0, 24 asrs r0, 24 strh r0, [r5, 0xA] @@ -8461,7 +8461,7 @@ _080AF520: cmp r0, 0x1 beq _080AF54A _080AF536: - bl sub_809757C + bl UnfreezeMapObjects movs r0, 0x4 strh r0, [r5, 0x8] b _080AF54A @@ -8550,7 +8550,7 @@ _080AF5EC: lsls r0, 24 cmp r0, 0 beq _080AF60A - bl sub_809757C + bl UnfreezeMapObjects movs r0, 0x3 strh r0, [r5, 0x8] b _080AF60A @@ -8593,7 +8593,7 @@ _080AF644: bl sub_80AF71C cmp r0, 0 beq _080AF65A - bl sub_809757C + bl UnfreezeMapObjects bl ScriptContext2_Disable adds r0, r5, 0 bl DestroyTask @@ -9010,7 +9010,7 @@ _080AF9C8: strh r0, [r4] b _080AF9E8 _080AF9D0: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _080AF9E8 @@ -9142,7 +9142,7 @@ _080AFAD4: movs r2, 0 ldrsh r1, [r6, r2] subs r1, 0x1 - bl cur_mapdata_get_door_sound_at + bl GetDoorSoundEffect lsls r0, 16 lsrs r0, 16 bl PlaySE @@ -9151,7 +9151,7 @@ _080AFAD4: movs r2, 0 ldrsh r1, [r6, r2] subs r1, 0x1 - bl task_overworld_door_add_if_role_69_for_opening_door_at + bl FieldAnimateDoorOpen lsls r0, 24 asrs r0, 24 strh r0, [r5, 0xA] @@ -9211,7 +9211,7 @@ _080AFB6C: movs r2, 0 ldrsh r1, [r6, r2] subs r1, 0x1 - bl sub_808A8AC + bl FieldAnimateDoorClose lsls r0, 24 asrs r0, 24 strh r0, [r5, 0xA] @@ -9996,7 +9996,7 @@ _080B0198: bl sub_808D1B4 cmp r0, 0x1 beq _080B01B6 - bl sub_809757C + bl UnfreezeMapObjects bl ScriptContext2_Disable adds r0, r5, 0 bl DestroyTask diff --git a/asm/field_tasks.s b/asm/field_tasks.s index 26761b8d1..39bd3b545 100644 --- a/asm/field_tasks.s +++ b/asm/field_tasks.s @@ -46,7 +46,7 @@ _0809D8CA: ands r0, r1 cmp r0, 0 beq _0809D8FC - bl sub_809E7B0 + bl DoTimeBasedEvents ldrh r0, [r4] adds r0, 0x1 b _0809D8FA @@ -144,8 +144,8 @@ _0809D992: .pool thumb_func_end overworld_ensure_per_step_coros_running - thumb_func_start activate_per_step_callback -activate_per_step_callback: @ 809D9A8 + thumb_func_start ActivatePerStepCallback +ActivatePerStepCallback: @ 809D9A8 push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 @@ -180,7 +180,7 @@ _0809D9EA: pop {r4} pop {r0} bx r0 - thumb_func_end activate_per_step_callback + thumb_func_end ActivatePerStepCallback thumb_func_start wild_encounter_reset_coro_args wild_encounter_reset_coro_args: @ 809D9F0 @@ -221,7 +221,7 @@ sub_809DA30: @ 809DA30 lsls r1, 24 lsrs r4, r1, 24 adds r0, r4, 0 - bl sub_8089764 + bl MetatileBehavior_IsPacifilogVerticalLog1 lsls r0, 24 cmp r0, 0 beq _0809DA48 @@ -229,7 +229,7 @@ sub_809DA30: @ 809DA30 b _0809DA80 _0809DA48: adds r0, r4, 0 - bl sub_8089778 + bl MetatileBehavior_IsPacifilogVerticalLog2 lsls r0, 24 cmp r0, 0 beq _0809DA5A @@ -238,7 +238,7 @@ _0809DA48: b _0809DA80 _0809DA5A: adds r0, r4, 0 - bl sub_808978C + bl MetatileBehavior_IsPacifilogHorizontalLog1 lsls r0, 24 cmp r0, 0 beq _0809DA6C @@ -247,7 +247,7 @@ _0809DA5A: b _0809DA80 _0809DA6C: adds r0, r4, 0 - bl sub_80897A0 + bl MetatileBehavior_IsPacifilogHorizontalLog2 lsls r0, 24 cmp r0, 0 bne _0809DA7C @@ -414,7 +414,7 @@ sub_809DB7C: @ 809DB7C lsls r0, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl sub_8089764 + bl MetatileBehavior_IsPacifilogVerticalLog1 lsls r0, 24 cmp r0, 0 beq _0809DBC0 @@ -427,7 +427,7 @@ _0809DBBC: b _0809DC08 _0809DBC0: adds r0, r4, 0 - bl sub_8089778 + bl MetatileBehavior_IsPacifilogVerticalLog2 lsls r0, 24 cmp r0, 0 beq _0809DBD8 @@ -439,7 +439,7 @@ _0809DBC0: b _0809DBBC _0809DBD8: adds r0, r4, 0 - bl sub_808978C + bl MetatileBehavior_IsPacifilogHorizontalLog1 lsls r0, 24 cmp r0, 0 beq _0809DBF0 @@ -451,7 +451,7 @@ _0809DBD8: b _0809DBBC _0809DBF0: adds r0, r4, 0 - bl sub_80897A0 + bl MetatileBehavior_IsPacifilogHorizontalLog2 lsls r0, 24 cmp r0, 0 beq _0809DC06 @@ -496,7 +496,7 @@ sub_809DC18: @ 809DC18 lsls r0, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl sub_8089764 + bl MetatileBehavior_IsPacifilogVerticalLog1 lsls r0, 24 cmp r0, 0 beq _0809DC5C @@ -509,7 +509,7 @@ _0809DC58: b _0809DCA4 _0809DC5C: adds r0, r4, 0 - bl sub_8089778 + bl MetatileBehavior_IsPacifilogVerticalLog2 lsls r0, 24 cmp r0, 0 beq _0809DC74 @@ -521,7 +521,7 @@ _0809DC5C: b _0809DC58 _0809DC74: adds r0, r4, 0 - bl sub_808978C + bl MetatileBehavior_IsPacifilogHorizontalLog1 lsls r0, 24 cmp r0, 0 beq _0809DC8C @@ -533,7 +533,7 @@ _0809DC74: b _0809DC58 _0809DC8C: adds r0, r4, 0 - bl sub_80897A0 + bl MetatileBehavior_IsPacifilogHorizontalLog2 lsls r0, 24 cmp r0, 0 beq _0809DCA2 @@ -1326,7 +1326,7 @@ _0809E29A: lsls r4, 24 lsrs r4, 24 adds r0, r4, 0 - bl sub_8089604 + bl MetatileBehavior_IsThinIce lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1341,7 +1341,7 @@ _0809E29A: .pool _0809E2E0: adds r0, r4, 0 - bl sub_8089618 + bl MetatileBehavior_IsCrackedIce lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1630,7 +1630,7 @@ _0809E53E: lsls r0, r6, 24 lsrs r6, r0, 24 adds r0, r6, 0 - bl sub_8089918 + bl MetatileBehavior_IsCrackedFloorHole lsls r0, 24 cmp r0, 0 beq _0809E556 @@ -1658,7 +1658,7 @@ _0809E572: ldrh r0, [r4] strh r0, [r5, 0x6] adds r0, r6, 0 - bl sub_808992C + bl MetatileBehavior_IsCrackedFloor lsls r0, 24 cmp r0, 0 beq _0809E5D2 diff --git a/asm/fldeff_80F9BCC.s b/asm/fldeff_80F9BCC.s index 3bc667754..63acc9982 100644 --- a/asm/fldeff_80F9BCC.s +++ b/asm/fldeff_80F9BCC.s @@ -486,7 +486,7 @@ sub_80F9F78: @ 80F9F78 ands r0, r1 cmp r0, 0 beq _080F9FC0 - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments ldr r0, [r1, 0x4] cmp r0, 0x2 beq _080F9FAE @@ -517,7 +517,7 @@ _080F9FB6: movs r0, 0x18 b _080F9FFC _080F9FC0: - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments ldr r0, [r1, 0x4] cmp r0, 0x2 beq _080F9FEA @@ -584,7 +584,7 @@ sub_80FA004: @ 80FA004 lsls r0, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl sub_808923C + bl MetatileBehavior_IsSecretBaseCave lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -599,7 +599,7 @@ sub_80FA004: @ 80FA004 .pool _080FA070: adds r0, r4, 0 - bl sub_808925C + bl MetatileBehavior_IsSecretBaseTree lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -614,7 +614,7 @@ _080FA070: .pool _080FA0A0: adds r0, r4, 0 - bl is_tile_x98 + bl MetatileBehavior_IsSecretBaseShrub lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -643,7 +643,7 @@ _080FA0C4: sub_80FA0DC: @ 80FA0DC push {lr} bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r1] @@ -701,7 +701,7 @@ sub_80FA13C: @ 80FA13C ldrh r1, [r2, 0x2] lsls r1, 23 lsrs r1, 23 - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments ldr r3, [r4, 0x14] adds r1, r3 lsls r1, 16 @@ -778,7 +778,7 @@ sub_80FA1D8: @ 80FA1D8 sub_80FA1E8: @ 80FA1E8 push {lr} bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r1] @@ -836,13 +836,13 @@ sub_80FA248: @ 80FA248 ands r2, r0 cmp r2, 0x96 bne _080FA26A - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments movs r0, 0 str r0, [r1, 0x1C] _080FA26A: cmp r2, 0x9C bne _080FA274 - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments movs r0, 0x2 str r0, [r1, 0x1C] _080FA274: @@ -858,7 +858,7 @@ _080FA274: ldrh r1, [r2, 0x2] lsls r1, 23 lsrs r1, 23 - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments ldr r3, [r4, 0x14] adds r1, r3 lsls r1, 16 @@ -891,7 +891,7 @@ sub_80FA2D8: @ 80FA2D8 adds r4, r0, 0 movs r0, 0x9B bl PlaySE - ldr r0, =gFieldEffectSpawnParams + ldr r0, =gFieldEffectArguments ldr r1, [r0, 0x1C] adds r2, r4, 0 adds r2, 0x2A @@ -917,7 +917,7 @@ sub_80FA304: @ 80FA304 asrs r0, 16 cmp r0, 0x27 ble _080FA32E - ldr r0, =gFieldEffectSpawnParams + ldr r0, =gFieldEffectArguments ldr r0, [r0, 0x1C] cmp r0, 0 beq _080FA322 @@ -951,7 +951,7 @@ sub_80FA33C: @ 80FA33C sub_80FA34C: @ 80FA34C push {lr} bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r1] @@ -1009,7 +1009,7 @@ sub_80FA3AC: @ 80FA3AC ldrh r1, [r2, 0x2] lsls r1, 23 lsrs r1, 23 - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments ldr r3, [r4, 0x14] adds r1, r3 lsls r1, 16 @@ -1807,7 +1807,7 @@ sub_80FAA7C: @ 80FAA7C mov r0, sp adds r1, r4, 0 bl GetXYCoordsOneStepInFrontOfPlayer - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments mov r0, sp movs r2, 0 ldrsh r0, [r0, r2] @@ -1930,7 +1930,7 @@ door_restore_tilemap: @ 80FABA4 adds r5, r0, 0 movs r0, 0x83 bl PlaySE - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments ldr r0, [r4, 0x14] ldr r1, [r4, 0x18] subs r1, 0x1 @@ -1953,7 +1953,7 @@ _080FABDC: lsls r2, 2 bl MapGridSetMetatileIdAt _080FABEA: - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments ldr r0, [r4, 0x14] ldr r1, [r4, 0x18] ldr r2, =0x0000020a @@ -1988,7 +1988,7 @@ sub_80FAC24: @ 80FAC24 strh r0, [r5, 0x2E] b _080FAC54 _080FAC38: - ldr r4, =gFieldEffectSpawnParams + ldr r4, =gFieldEffectArguments ldr r0, [r4, 0x14] ldr r1, [r4, 0x18] ldr r2, =0x00000e8c diff --git a/asm/fldeff_cut.s b/asm/fldeff_cut.s index ce7e79de8..e31bf22e2 100755 --- a/asm/fldeff_cut.s +++ b/asm/fldeff_cut.s @@ -130,7 +130,7 @@ _080D37F6: lsls r0, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl sub_8088E64 + bl MetatileBehavior_IsPokeGrass lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -175,7 +175,7 @@ _080D3890: movs r0, 0x1 strb r0, [r1] adds r0, r4, 0 - bl sub_80899F8 + bl MetatileBehavior_IsCuttableGrass lsls r0, 24 lsrs r1, r0, 24 cmp r1, 0x1 @@ -309,7 +309,7 @@ _080D395A: lsls r0, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl sub_8088E64 + bl MetatileBehavior_IsPokeGrass lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -339,7 +339,7 @@ _080D39F4: b _080D395A _080D39F8: adds r0, r4, 0 - bl sub_80899F8 + bl MetatileBehavior_IsCuttableGrass lsls r0, 24 lsrs r1, r0, 24 cmp r1, 0x1 @@ -385,7 +385,7 @@ hm2_ruin_valley: @ 80D3A50 movs r0, 0x1 bl FieldEffectStart bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r1] @@ -421,7 +421,7 @@ sub_80D3A6C: @ 80D3A6C sub_80D3A9C: @ 80D3A9C push {lr} bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r1] @@ -1344,7 +1344,7 @@ sub_80D423C: @ 80D423C bl MapGridGetMetatileBehaviorAt lsls r0, 24 lsrs r0, 24 - bl MetatileBehavior_IsLongGrass2 + bl MetatileBehavior_IsLongGrass_Duplicate lsls r0, 24 cmp r0, 0 beq _080D42AE diff --git a/asm/fldeff_emotion.s b/asm/fldeff_emotion.s deleted file mode 100644 index 37096a438..000000000 --- a/asm/fldeff_emotion.s +++ /dev/null @@ -1,328 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start oei_exclamation_mark -oei_exclamation_mark: @ 80B4620 - push {lr} - ldr r0, =gUnknown_085507B4 - movs r1, 0 - movs r2, 0 - movs r3, 0x53 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _080B4648 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - movs r1, 0 - movs r2, 0 - bl sub_80B46D8 -_080B4648: - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end oei_exclamation_mark - - thumb_func_start sub_80B4658 -sub_80B4658: @ 80B4658 - push {lr} - ldr r0, =gUnknown_085507B4 - movs r1, 0 - movs r2, 0 - movs r3, 0x52 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _080B4680 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - movs r1, 0x21 - movs r2, 0x1 - bl sub_80B46D8 -_080B4680: - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end sub_80B4658 - - thumb_func_start sub_80B4690 -sub_80B4690: @ 80B4690 - push {r4,lr} - ldr r0, =gUnknown_085507CC - movs r1, 0 - movs r2, 0 - movs r3, 0x52 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _080B46C6 - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - ldr r0, =gSprites - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x2E - movs r2, 0 - bl sub_80B46D8 - ldrb r1, [r4, 0x5] - movs r0, 0xF - ands r0, r1 - movs r1, 0x20 - orrs r0, r1 - strb r0, [r4, 0x5] -_080B46C6: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_80B4690 - - thumb_func_start sub_80B46D8 -@ void sub_80B46D8(struct obj *object, s16 a2, u8 a3) -sub_80B46D8: @ 80B46D8 - push {r4,lr} - lsls r2, 24 - lsrs r2, 24 - ldrb r4, [r0, 0x5] - movs r3, 0xD - negs r3, r3 - ands r3, r4 - movs r4, 0x4 - orrs r3, r4 - strb r3, [r0, 0x5] - movs r3, 0x3E - adds r3, r0 - mov r12, r3 - ldrb r3, [r3] - movs r4, 0x2 - orrs r3, r4 - mov r4, r12 - strb r3, [r4] - ldr r4, =gFieldEffectSpawnParams - ldr r3, [r4] - strh r3, [r0, 0x2E] - ldr r3, [r4, 0x4] - strh r3, [r0, 0x30] - ldr r3, [r4, 0x8] - strh r3, [r0, 0x32] - ldr r3, =0x0000fffb - strh r3, [r0, 0x34] - strh r1, [r0, 0x3C] - adds r1, r2, 0 - bl StartSpriteAnim - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80B46D8 - - thumb_func_start objc_exclamation_mark_probably -objc_exclamation_mark_probably: @ 80B4724 - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - ldrh r0, [r4, 0x2E] - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r4, 0x30] - lsls r1, 24 - lsrs r1, 24 - ldrh r2, [r4, 0x32] - lsls r2, 24 - lsrs r2, 24 - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - bne _080B4756 - adds r0, r4, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080B4764 -_080B4756: - ldrh r1, [r4, 0x3C] - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl FieldEffectStop - b _080B47B2 -_080B4764: - ldr r2, =gMapObjects - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x4] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, =gSprites - adds r1, r0 - ldrh r3, [r4, 0x34] - ldrh r0, [r4, 0x36] - adds r2, r3, r0 - strh r2, [r4, 0x36] - ldrh r0, [r1, 0x20] - strh r0, [r4, 0x20] - ldrh r0, [r1, 0x22] - subs r0, 0x10 - strh r0, [r4, 0x22] - ldrh r0, [r1, 0x24] - strh r0, [r4, 0x24] - ldrh r0, [r1, 0x26] - adds r0, r2 - strh r0, [r4, 0x26] - lsls r2, 16 - asrs r2, 16 - cmp r2, 0 - beq _080B47B0 - adds r0, r3, 0x1 - strh r0, [r4, 0x34] - b _080B47B2 - .pool -_080B47B0: - strh r2, [r4, 0x34] -_080B47B2: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end objc_exclamation_mark_probably - - thumb_func_start sub_80B47BC -sub_80B47BC: @ 80B47BC - push {lr} - ldr r0, =gUnknown_02038BFC - ldrb r0, [r0] - cmp r0, 0 - beq _080B47D4 - ldr r0, =gUnknown_03006090 - ldrb r0, [r0, 0xC] - b _080B47D8 - .pool -_080B47D4: - ldr r0, =gUnknown_03006090 - ldrb r0, [r0] -_080B47D8: - pop {r1} - bx r1 - .pool - thumb_func_end sub_80B47BC - - thumb_func_start sub_80B47E0 -sub_80B47E0: @ 80B47E0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _080B47EE - movs r0, 0 - b _080B4800 -_080B47EE: - cmp r0, 0 - beq _080B47FC - ldr r0, =gUnknown_03006090 - ldrb r0, [r0, 0xC] - b _080B4800 - .pool -_080B47FC: - ldr r0, =gUnknown_03006090 - ldrb r0, [r0] -_080B4800: - pop {r1} - bx r1 - .pool - thumb_func_end sub_80B47E0 - - thumb_func_start sub_80B4808 -sub_80B4808: @ 80B4808 - push {lr} - ldr r0, =gUnknown_030060AC - ldrb r0, [r0] - cmp r0, 0x1 - bne _080B4870 - ldr r2, =gUnknown_03006090 - ldr r0, =gUnknown_03006080 - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =gMapObjects - adds r0, r1 - ldrb r0, [r0, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetOppositeDirection - lsls r0, 24 - lsrs r0, 24 - bl GetFaceDirectionAnimId - ldr r3, =gUnknown_03006084 - strb r0, [r3] - movs r0, 0xFE - strb r0, [r3, 0x1] - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldrb r1, [r0, 0x5] - ldrb r2, [r0, 0x4] - movs r0, 0xFF - bl exec_movement - b _080B489E - .pool -_080B4870: - ldr r0, =gPlayerAvatar - ldrb r1, [r0, 0x5] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =gMapObjects - adds r0, r1 - ldrb r0, [r0, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - ldr r3, =gUnknown_03006084 - strb r0, [r3] - movs r0, 0xFE - strb r0, [r3, 0x1] - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldrb r1, [r0, 0x5] - ldrb r2, [r0, 0x4] - movs r0, 0xFF - bl exec_movement -_080B489E: - movs r0, 0xFF - bl sub_809BE48 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80B4808 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/fldeff_groundshake.s b/asm/fldeff_groundshake.s index cb0d2e2d8..81d92430e 100755 --- a/asm/fldeff_groundshake.s +++ b/asm/fldeff_groundshake.s @@ -161,7 +161,7 @@ sub_81BE79C: @ 81BE79C beq _081BE7B8 movs r0, 0xA7 lsls r0, 1 - bl FlagReset + bl FlagClear b _081BE7EE .pool _081BE7B8: @@ -188,7 +188,7 @@ _081BE7D4: _081BE7E6: movs r0, 0xA7 lsls r0, 1 - bl FlagReset + bl FlagClear _081BE7EE: pop {r4} pop {r0} diff --git a/asm/fldeff_strength.s b/asm/fldeff_strength.s index 98764625e..947517ed5 100644 --- a/asm/fldeff_strength.s +++ b/asm/fldeff_strength.s @@ -40,7 +40,7 @@ _08145DF2: sub_8145E0C: @ 8145E0C push {lr} bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r1] @@ -66,7 +66,7 @@ sub_8145E2C: @ 8145E2C lsrs r0, r2, 16 strh r0, [r1, 0x18] strh r2, [r1, 0x1A] - ldr r0, =gFieldEffectSpawnParams + ldr r0, =gFieldEffectArguments ldr r1, [r0] movs r0, 0x64 muls r0, r1 diff --git a/asm/fldeff_sweetscent.s b/asm/fldeff_sweetscent.s index 5c83b455d..ea7b2653a 100644 --- a/asm/fldeff_sweetscent.s +++ b/asm/fldeff_sweetscent.s @@ -24,7 +24,7 @@ hm2_sweet_scent: @ 8159F10 movs r0, 0x33 bl FieldEffectStart bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r1] diff --git a/asm/fldeff_teleport.s b/asm/fldeff_teleport.s index e4f4bce42..d77e29dd2 100644 --- a/asm/fldeff_teleport.s +++ b/asm/fldeff_teleport.s @@ -39,7 +39,7 @@ hm_teleport_run_dp02scr: @ 817C8FC movs r0, 0x3F bl FieldEffectStart bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r1] diff --git a/asm/international_string_util.s b/asm/international_string_util.s index 7c52fc41a..817a1d5e4 100755 --- a/asm/international_string_util.s +++ b/asm/international_string_util.s @@ -5,127 +5,6 @@ .text - thumb_func_start GetStringCenterAlignXOffset -@ s32 GetStringCenterAlignXOffset(u8 fontId, u8 *str, s32 totalWidth) -GetStringCenterAlignXOffset: @ 81DB35C - push {lr} - movs r3, 0 - bl GetStringCenterAlignXOffsetWithLetterSpacing - pop {r1} - bx r1 - thumb_func_end GetStringCenterAlignXOffset - - thumb_func_start GetStringRightAlignXOffset -@ s32 GetStringRightAlignXOffset(u8 fontId, u8 *str, s32 totalWidth) -GetStringRightAlignXOffset: @ 81DB368 - push {lr} - movs r3, 0 - bl GetStringWidthDifference - pop {r1} - bx r1 - thumb_func_end GetStringRightAlignXOffset - - thumb_func_start GetStringCenterAlignXOffsetWithLetterSpacing -@ s32 GetStringCenterAlignXOffsetWithLetterSpacing(u8 fontId, u8 *str, s32 totalWidth, s16 letterSpacing) -GetStringCenterAlignXOffsetWithLetterSpacing: @ 81DB374 - push {lr} - bl GetStringWidthDifference - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - pop {r1} - bx r1 - thumb_func_end GetStringCenterAlignXOffsetWithLetterSpacing - - thumb_func_start GetStringWidthDifference -@ s32 GetStringWidthDifference(u8 fontId, u8 *str, s32 totalWidth, s16 letterSpacing) -GetStringWidthDifference: @ 81DB384 - push {r4,lr} - adds r4, r2, 0 - adds r2, r3, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r2, 16 - asrs r2, 16 - bl GetStringWidth - cmp r4, r0 - bgt _081DB39E - movs r0, 0 - b _081DB3A0 -_081DB39E: - subs r0, r4, r0 -_081DB3A0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end GetStringWidthDifference - - thumb_func_start GetMaxWidthInMenuTable -GetMaxWidthInMenuTable: @ 81DB3A8 - push {r4-r6,lr} - movs r6, 0 - cmp r6, r1 - bge _081DB3CC - adds r5, r0, 0 - adds r4, r1, 0 -_081DB3B4: - ldr r1, [r5] - movs r0, 0x1 - movs r2, 0 - bl GetStringWidth - cmp r0, r6 - ble _081DB3C4 - adds r6, r0, 0 -_081DB3C4: - adds r5, 0x8 - subs r4, 0x1 - cmp r4, 0 - bne _081DB3B4 -_081DB3CC: - adds r0, r6, 0 - bl convert_pixel_width_to_tile_width - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end GetMaxWidthInMenuTable - - thumb_func_start sub_81DB3D8 -sub_81DB3D8: @ 81DB3D8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - adds r7, r1, 0 - adds r5, r2, 0 - movs r6, 0 - movs r4, 0 - cmp r6, r5 - bge _081DB40A -_081DB3EC: - adds r0, r7, r4 - ldrb r0, [r0] - lsls r0, 3 - add r0, r8 - ldr r1, [r0] - movs r0, 0x1 - movs r2, 0 - bl GetStringWidth - cmp r0, r6 - ble _081DB404 - adds r6, r0, 0 -_081DB404: - adds r4, 0x1 - cmp r4, r5 - blt _081DB3EC -_081DB40A: - adds r0, r6, 0 - bl convert_pixel_width_to_tile_width - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_81DB3D8 thumb_func_start sub_81DB41C sub_81DB41C: @ 81DB41C @@ -389,8 +268,8 @@ _081DB5E4: bx r0 thumb_func_end sub_81DB5AC - thumb_func_start sub_81DB5E8 -sub_81DB5E8: @ 81DB5E8 + thumb_func_start TVShowConvertInternationalString +TVShowConvertInternationalString: @ 81DB5E8 push {r4,r5,lr} adds r5, r0, 0 adds r4, r2, 0 @@ -403,7 +282,7 @@ sub_81DB5E8: @ 81DB5E8 pop {r4,r5} pop {r0} bx r0 - thumb_func_end sub_81DB5E8 + thumb_func_end TVShowConvertInternationalString thumb_func_start sub_81DB604 sub_81DB604: @ 81DB604 diff --git a/asm/intro.s b/asm/intro.s index efd52e7fd..32b52ed06 100644 --- a/asm/intro.s +++ b/asm/intro.s @@ -376,11 +376,11 @@ task_intro_1: @ 816CF18 movs r0, 0x12 movs r1, 0x28 bl SetGpuReg - ldr r0, =gUnknown_085E13B4 + ldr r0, =gIntro1BGLeavesGfx movs r1, 0xC0 lsls r1, 19 bl LZ77UnCompVram - ldr r0, =gUnknown_085E07C4 + ldr r0, =gIntro1BG0_Tilemap ldr r1, =0x06008000 bl LZ77UnCompVram ldr r1, =0x06008800 @@ -393,7 +393,7 @@ task_intro_1: @ 816CF18 ldr r5, =0x81000400 str r5, [r4, 0x8] ldr r0, [r4, 0x8] - ldr r0, =gUnknown_085E0B78 + ldr r0, =gIntro1BG1_Tilemap ldr r1, =0x06009000 bl LZ77UnCompVram ldr r1, =0x06009800 @@ -403,7 +403,7 @@ task_intro_1: @ 816CF18 str r1, [r4, 0x4] str r5, [r4, 0x8] ldr r0, [r4, 0x8] - ldr r0, =gUnknown_085E0EAC + ldr r0, =gIntro1BG2_Tilemap ldr r1, =0x0600a000 bl LZ77UnCompVram ldr r1, =0x0600a800 @@ -413,7 +413,7 @@ task_intro_1: @ 816CF18 str r1, [r4, 0x4] str r5, [r4, 0x8] ldr r0, [r4, 0x8] - ldr r0, =gUnknown_085E119C + ldr r0, =gIntro1BG3_Tilemap ldr r1, =0x0600b000 bl LZ77UnCompVram ldr r1, =0x0600b800 @@ -423,7 +423,7 @@ task_intro_1: @ 816CF18 str r1, [r4, 0x4] str r5, [r4, 0x8] ldr r0, [r4, 0x8] - ldr r0, =gUnknown_085E05C4 + ldr r0, =gIntro1BGPals movs r5, 0x80 lsls r5, 2 movs r1, 0 @@ -1779,14 +1779,14 @@ task_intro_10: @ 816DBAC lsls r5, 24 lsrs r5, 24 bl intro_reset_and_hide_bgs - ldr r0, =gUnknown_085E3854 + ldr r0, =gIntro3Pokeball_Gfx movs r1, 0xC0 lsls r1, 19 bl LZ77UnCompVram - ldr r0, =gUnknown_085E3724 + ldr r0, =gIntro3Pokeball_Tilemap ldr r1, =0x06004000 bl LZ77UnCompVram - ldr r0, =gUnknown_085E3524 + ldr r0, =gIntro3PokeballPal movs r2, 0x80 lsls r2, 2 movs r1, 0 @@ -1958,9 +1958,9 @@ task_intro_13: @ 816DD28 ldr r0, =gUnknown_08D8A818 ldr r1, =0x0600e000 bl LZDecompressVram - ldr r0, =gUnknown_08524D14 + ldr r0, =gBattleAnimPicTable + 0x1D0 bl LoadCompressedObjectPicUsingHeap - ldr r0, =gUnknown_0852561C + ldr r0, =gBattleAnimPaletteTable + 0x1D0 bl LoadCompressedObjectPaletteUsingHeap ldr r0, =gUnknown_08D85CD0 ldr r1, =gPlttBufferUnfaded diff --git a/asm/item.s b/asm/item.s index 97582e190..89177c5d4 100644 --- a/asm/item.s +++ b/asm/item.s @@ -676,8 +676,8 @@ _080D6D04: .pool thumb_func_end sub_80D6CE4 - thumb_func_start sub_80D6D1C -sub_80D6D1C: @ 80D6D1C + thumb_func_start CheckPCHasItem +CheckPCHasItem: @ 80D6D1C push {r4-r6,lr} lsls r0, 16 lsrs r6, r0, 16 @@ -717,10 +717,10 @@ _080D6D68: pop {r4-r6} pop {r1} bx r1 - thumb_func_end sub_80D6D1C + thumb_func_end CheckPCHasItem - thumb_func_start sub_80D6D70 -sub_80D6D70: @ 80D6D70 + thumb_func_start AddPCItem +AddPCItem: @ 80D6D70 push {r4-r7,lr} mov r7, r8 push {r7} @@ -819,7 +819,7 @@ _080D6E3A: pop {r1} bx r1 .pool - thumb_func_end sub_80D6D70 + thumb_func_end AddPCItem thumb_func_start sub_80D6E48 sub_80D6E48: @ 80D6E48 diff --git a/asm/item_menu.s b/asm/item_menu.s index abac409bc..1e4dfca49 100755 --- a/asm/item_menu.s +++ b/asm/item_menu.s @@ -5388,7 +5388,7 @@ _081ADB6C: ldrh r0, [r4] mov r3, r8 ldrh r1, [r3, 0x10] - bl sub_80D6D70 + bl AddPCItem lsls r0, 24 lsrs r6, r0, 24 cmp r6, 0x1 @@ -6237,7 +6237,7 @@ bag_menu_AddMoney_window: @ 81AE268 adds r0, r4, 0 movs r1, 0x1 movs r2, 0xE - bl set_window_border_style_and_print_money_box + bl PrintMoneyAmountInMoneyBoxWithBorder movs r0, 0x13 movs r1, 0xB bl AddMoneyLabelObject diff --git a/asm/item_use.s b/asm/item_use.s index 200b0e62f..d3c724166 100644 --- a/asm/item_use.s +++ b/asm/item_use.s @@ -464,7 +464,7 @@ _080FD3EC: _080FD40C: lsls r0, r6, 24 lsrs r0, 24 - bl sub_8089510 + bl MetatileBehavior_8089510 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -2215,7 +2215,7 @@ ItemUseOutOfBattle_BlackWhiteFlute: @ 80FE234 ldr r0, =0x000008ad bl FlagSet ldr r0, =0x000008ae - bl FlagReset + bl FlagClear ldr r0, =gStringVar4 ldr r1, =gText_UsedVar2WildLured bl StringExpandPlaceholders @@ -2225,7 +2225,7 @@ _080FE278: ldr r0, =0x000008ae bl FlagSet ldr r0, =0x000008ad - bl FlagReset + bl FlagClear ldr r0, =gStringVar4 ldr r1, =gText_UsedVar2WildRepelled bl StringExpandPlaceholders diff --git a/asm/librfu.s b/asm/librfu.s index d8ca7538c..5fc1b0d6f 100644 --- a/asm/librfu.s +++ b/asm/librfu.s @@ -4,2251 +4,6 @@ .text - thumb_func_start STWI_init_all -STWI_init_all: @ 82E2A18 - push {r4,lr} - adds r3, r0, 0 - lsls r2, 24 - lsrs r2, 24 - cmp r2, 0x1 - bne _082E2A54 - adds r2, r3, 0 - adds r2, 0xE8 - str r2, [r1] - ldr r1, _082E2A40 - ldr r0, _082E2A44 - str r0, [r1] - str r2, [r1, 0x4] - ldr r0, _082E2A48 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - ldr r1, _082E2A4C - ldr r2, _082E2A50 - adds r0, r3, r2 - b _082E2A5E - .align 2, 0 -_082E2A40: .4byte 0x040000d4 -_082E2A44: .4byte IntrSIO32 -_082E2A48: .4byte 0x800004b0 -_082E2A4C: .4byte gUnknown_03007868 -_082E2A50: .4byte 0x00000a48 -_082E2A54: - ldr r0, _082E2AD8 - str r0, [r1] - ldr r1, _082E2ADC - adds r0, r3, 0 - adds r0, 0xE8 -_082E2A5E: - str r0, [r1] - adds r2, r1, 0 - ldr r1, [r2] - str r3, [r1, 0x28] - adds r0, r3, 0 - adds r0, 0x74 - str r0, [r1, 0x24] - ldrb r0, [r1, 0x14] - movs r4, 0 - movs r0, 0x1 - strb r0, [r1, 0x14] - ldr r0, [r2] - str r4, [r0] - strb r4, [r0, 0x4] - ldr r0, [r2] - strb r4, [r0, 0x5] - ldr r0, [r2] - strb r4, [r0, 0x7] - ldr r0, [r2] - strb r4, [r0, 0x8] - ldr r0, [r2] - strb r4, [r0, 0x9] - ldr r0, [r2] - str r4, [r0, 0xC] - ldrb r1, [r0, 0x10] - strb r4, [r0, 0x10] - ldr r0, [r2] - ldrh r1, [r0, 0x12] - movs r1, 0 - strh r4, [r0, 0x12] - strb r1, [r0, 0x15] - ldr r0, [r2] - adds r0, 0x2C - ldrb r2, [r0] - strb r1, [r0] - ldr r1, _082E2AE0 - movs r2, 0x80 - lsls r2, 1 - adds r0, r2, 0 - strh r0, [r1] - subs r1, 0xC - ldr r2, _082E2AE4 - adds r0, r2, 0 - strh r0, [r1] - bl STWI_init_Callback_M - bl STWI_init_Callback_S - ldr r3, _082E2AE8 - ldrh r2, [r3] - strh r4, [r3] - ldr r4, _082E2AEC - ldrh r0, [r4] - movs r1, 0x80 - orrs r0, r1 - strh r0, [r4] - strh r2, [r3] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_082E2AD8: .4byte IntrSIO32 -_082E2ADC: .4byte gUnknown_03007868 -_082E2AE0: .4byte 0x04000134 -_082E2AE4: .4byte 0x00005003 -_082E2AE8: .4byte 0x04000208 -_082E2AEC: .4byte 0x04000200 - thumb_func_end STWI_init_all - - thumb_func_start STWI_init_timer -STWI_init_timer: @ 82E2AF0 - push {r4,r5,lr} - ldr r2, _082E2B1C - str r2, [r0] - ldr r5, _082E2B20 - ldr r0, [r5] - movs r4, 0 - strb r1, [r0, 0xA] - ldr r3, _082E2B24 - ldrh r2, [r3] - strh r4, [r3] - ldr r4, _082E2B28 - ldr r1, [r5] - movs r0, 0x8 - ldrb r1, [r1, 0xA] - lsls r0, r1 - ldrh r1, [r4] - orrs r0, r1 - strh r0, [r4] - strh r2, [r3] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_082E2B1C: .4byte STWI_intr_timer -_082E2B20: .4byte gUnknown_03007868 -_082E2B24: .4byte 0x04000208 -_082E2B28: .4byte 0x04000200 - thumb_func_end STWI_init_timer - - thumb_func_start AgbRFU_SoftReset -AgbRFU_SoftReset: @ 82E2B2C - push {r4,r5,lr} - ldr r5, _082E2BC4 - movs r1, 0x80 - lsls r1, 8 - adds r0, r1, 0 - strh r0, [r5] - ldr r2, _082E2BC8 - adds r0, r2, 0 - strh r0, [r5] - ldr r1, _082E2BCC - ldr r0, [r1] - ldrb r0, [r0, 0xA] - lsls r0, 2 - ldr r3, _082E2BD0 - adds r2, r0, r3 - ldr r4, _082E2BD4 - adds r3, r0, r4 - movs r0, 0 - strh r0, [r3] - strh r0, [r2] - movs r0, 0x83 - strh r0, [r3] - ldrh r0, [r2] - adds r4, r1, 0 - cmp r0, 0x11 - bhi _082E2B6C - ldr r0, _082E2BD8 - adds r1, r0, 0 -_082E2B64: - strh r1, [r5] - ldrh r0, [r2] - cmp r0, 0x11 - bls _082E2B64 -_082E2B6C: - movs r0, 0x3 - strh r0, [r3] - ldr r1, _082E2BC4 - ldr r2, _082E2BC8 - adds r0, r2, 0 - strh r0, [r1] - subs r1, 0xC - ldr r3, _082E2BDC - adds r0, r3, 0 - strh r0, [r1] - ldr r0, [r4] - movs r2, 0 - str r2, [r0] - strb r2, [r0, 0x4] - ldr r0, [r4] - strb r2, [r0, 0x5] - ldr r0, [r4] - strb r2, [r0, 0x6] - ldr r0, [r4] - strb r2, [r0, 0x7] - ldr r0, [r4] - strb r2, [r0, 0x8] - ldr r0, [r4] - strb r2, [r0, 0x9] - ldr r0, [r4] - str r2, [r0, 0xC] - ldrb r1, [r0, 0x10] - strb r2, [r0, 0x10] - ldr r1, [r4] - ldrh r0, [r1, 0x12] - movs r3, 0 - strh r2, [r1, 0x12] - ldrb r0, [r1, 0x14] - movs r0, 0x1 - strb r0, [r1, 0x14] - ldr r0, [r4] - strb r3, [r0, 0x15] - ldr r0, [r4] - adds r0, 0x2C - ldrb r1, [r0] - strb r3, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_082E2BC4: .4byte 0x04000134 -_082E2BC8: .4byte 0x000080a0 -_082E2BCC: .4byte gUnknown_03007868 -_082E2BD0: .4byte 0x04000100 -_082E2BD4: .4byte 0x04000102 -_082E2BD8: .4byte 0x000080a2 -_082E2BDC: .4byte 0x00005003 - thumb_func_end AgbRFU_SoftReset - - thumb_func_start STWI_set_MS_mode -STWI_set_MS_mode: @ 82E2BE0 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _082E2BF0 - ldr r1, [r1] - ldrb r2, [r1, 0x14] - strb r0, [r1, 0x14] - bx lr - .align 2, 0 -_082E2BF0: .4byte gUnknown_03007868 - thumb_func_end STWI_set_MS_mode - - thumb_func_start STWI_read_status -STWI_read_status: @ 82E2BF4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - cmp r0, 0x1 - beq _082E2C20 - cmp r0, 0x1 - bgt _082E2C0A - cmp r0, 0 - beq _082E2C14 - b _082E2C48 -_082E2C0A: - cmp r1, 0x2 - beq _082E2C2C - cmp r1, 0x3 - beq _082E2C3C - b _082E2C48 -_082E2C14: - ldr r0, _082E2C1C - ldr r0, [r0] - ldrh r0, [r0, 0x12] - b _082E2C4A - .align 2, 0 -_082E2C1C: .4byte gUnknown_03007868 -_082E2C20: - ldr r0, _082E2C28 - ldr r0, [r0] - ldrb r0, [r0, 0x14] - b _082E2C4A - .align 2, 0 -_082E2C28: .4byte gUnknown_03007868 -_082E2C2C: - ldr r0, _082E2C38 - ldr r0, [r0] - ldr r0, [r0] - lsls r0, 16 - lsrs r0, 16 - b _082E2C4A - .align 2, 0 -_082E2C38: .4byte gUnknown_03007868 -_082E2C3C: - ldr r0, _082E2C44 - ldr r0, [r0] - ldrb r0, [r0, 0x6] - b _082E2C4A - .align 2, 0 -_082E2C44: .4byte gUnknown_03007868 -_082E2C48: - ldr r0, _082E2C50 -_082E2C4A: - pop {r1} - bx r1 - .align 2, 0 -_082E2C50: .4byte 0x0000ffff - thumb_func_end STWI_read_status - - thumb_func_start STWI_init_Callback_M -STWI_init_Callback_M: @ 82E2C54 - push {lr} - movs r0, 0 - bl STWI_set_Callback_M - pop {r0} - bx r0 - thumb_func_end STWI_init_Callback_M - - thumb_func_start STWI_init_Callback_S -STWI_init_Callback_S: @ 82E2C60 - push {lr} - movs r0, 0 - bl STWI_set_Callback_S - pop {r0} - bx r0 - thumb_func_end STWI_init_Callback_S - - thumb_func_start STWI_set_Callback_M -STWI_set_Callback_M: @ 82E2C6C - ldr r1, _082E2C74 - ldr r1, [r1] - str r0, [r1, 0x18] - bx lr - .align 2, 0 -_082E2C74: .4byte gUnknown_03007868 - thumb_func_end STWI_set_Callback_M - - thumb_func_start STWI_set_Callback_S -STWI_set_Callback_S: @ 82E2C78 - ldr r1, _082E2C80 - ldr r1, [r1] - str r0, [r1, 0x1C] - bx lr - .align 2, 0 -_082E2C80: .4byte gUnknown_03007868 - thumb_func_end STWI_set_Callback_S - - thumb_func_start STWI_set_Callback_ID -STWI_set_Callback_ID: @ 82E2C84 - ldr r1, _082E2C8C - ldr r1, [r1] - str r0, [r1, 0x20] - bx lr - .align 2, 0 -_082E2C8C: .4byte gUnknown_03007868 - thumb_func_end STWI_set_Callback_ID - - thumb_func_start STWI_poll_CommandEnd -STWI_poll_CommandEnd: @ 82E2C90 - push {lr} - ldr r0, _082E2CB4 - ldr r1, [r0] - adds r2, r1, 0 - adds r2, 0x2C - ldrb r1, [r2] - adds r3, r0, 0 - cmp r1, 0x1 - bne _082E2CAA - adds r1, r2, 0 -_082E2CA4: - ldrb r0, [r1] - cmp r0, 0x1 - beq _082E2CA4 -_082E2CAA: - ldr r0, [r3] - ldrh r0, [r0, 0x12] - pop {r1} - bx r1 - .align 2, 0 -_082E2CB4: .4byte gUnknown_03007868 - thumb_func_end STWI_poll_CommandEnd - - thumb_func_start STWI_send_ResetREQ -STWI_send_ResetREQ: @ 82E2CB8 - push {lr} - movs r0, 0x10 - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E2CD2 - ldr r0, _082E2CD8 - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E2CD2: - pop {r0} - bx r0 - .align 2, 0 -_082E2CD8: .4byte gUnknown_03007868 - thumb_func_end STWI_send_ResetREQ - - thumb_func_start STWI_send_LinkStatusREQ -STWI_send_LinkStatusREQ: @ 82E2CDC - push {lr} - movs r0, 0x11 - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E2CF6 - ldr r0, _082E2CFC - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E2CF6: - pop {r0} - bx r0 - .align 2, 0 -_082E2CFC: .4byte gUnknown_03007868 - thumb_func_end STWI_send_LinkStatusREQ - - thumb_func_start STWI_send_VersionStatusREQ -STWI_send_VersionStatusREQ: @ 82E2D00 - push {lr} - movs r0, 0x12 - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E2D1A - ldr r0, _082E2D20 - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E2D1A: - pop {r0} - bx r0 - .align 2, 0 -_082E2D20: .4byte gUnknown_03007868 - thumb_func_end STWI_send_VersionStatusREQ - - thumb_func_start STWI_send_SystemStatusREQ -STWI_send_SystemStatusREQ: @ 82E2D24 - push {lr} - movs r0, 0x13 - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E2D3E - ldr r0, _082E2D44 - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E2D3E: - pop {r0} - bx r0 - .align 2, 0 -_082E2D44: .4byte gUnknown_03007868 - thumb_func_end STWI_send_SystemStatusREQ - - thumb_func_start STWI_send_SlotStatusREQ -STWI_send_SlotStatusREQ: @ 82E2D48 - push {lr} - movs r0, 0x14 - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E2D62 - ldr r0, _082E2D68 - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E2D62: - pop {r0} - bx r0 - .align 2, 0 -_082E2D68: .4byte gUnknown_03007868 - thumb_func_end STWI_send_SlotStatusREQ - - thumb_func_start STWI_send_ConfigStatusREQ -STWI_send_ConfigStatusREQ: @ 82E2D6C - push {lr} - movs r0, 0x15 - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E2D86 - ldr r0, _082E2D8C - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E2D86: - pop {r0} - bx r0 - .align 2, 0 -_082E2D8C: .4byte gUnknown_03007868 - thumb_func_end STWI_send_ConfigStatusREQ - - thumb_func_start STWI_send_GameConfigREQ -STWI_send_GameConfigREQ: @ 82E2D90 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x16 - bl STWI_init - lsls r0, 16 - cmp r0, 0 - bne _082E2DDC - ldr r2, _082E2DE4 - ldr r1, [r2] - movs r0, 0x6 - strb r0, [r1, 0x4] - ldr r0, [r2] - ldr r1, [r0, 0x24] - adds r1, 0x4 - ldrh r0, [r4] - strh r0, [r1] - adds r1, 0x2 - adds r4, 0x2 - movs r2, 0xD -_082E2DBA: - ldrb r0, [r4] - strb r0, [r1] - adds r1, 0x1 - adds r4, 0x1 - subs r2, 0x1 - cmp r2, 0 - bge _082E2DBA - movs r2, 0x7 -_082E2DCA: - ldrb r0, [r5] - strb r0, [r1] - adds r1, 0x1 - adds r5, 0x1 - subs r2, 0x1 - cmp r2, 0 - bge _082E2DCA - bl STWI_start_Command -_082E2DDC: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_082E2DE4: .4byte gUnknown_03007868 - thumb_func_end STWI_send_GameConfigREQ - - thumb_func_start STWI_send_SystemConfigREQ -STWI_send_SystemConfigREQ: @ 82E2DE8 - push {r4-r6,lr} - lsls r0, 16 - lsrs r6, r0, 16 - lsls r1, 24 - lsrs r5, r1, 24 - lsls r2, 24 - lsrs r4, r2, 24 - movs r0, 0x17 - bl STWI_init - lsls r0, 16 - cmp r0, 0 - bne _082E2E1E - ldr r2, _082E2E24 - ldr r1, [r2] - movs r0, 0x1 - strb r0, [r1, 0x4] - ldr r0, [r2] - ldr r0, [r0, 0x24] - adds r0, 0x4 - strb r4, [r0] - adds r0, 0x1 - strb r5, [r0] - adds r0, 0x1 - strh r6, [r0] - bl STWI_start_Command -_082E2E1E: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_082E2E24: .4byte gUnknown_03007868 - thumb_func_end STWI_send_SystemConfigREQ - - thumb_func_start STWI_send_SC_StartREQ -STWI_send_SC_StartREQ: @ 82E2E28 - push {lr} - movs r0, 0x19 - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E2E42 - ldr r0, _082E2E48 - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E2E42: - pop {r0} - bx r0 - .align 2, 0 -_082E2E48: .4byte gUnknown_03007868 - thumb_func_end STWI_send_SC_StartREQ - - thumb_func_start STWI_send_SC_PollingREQ -STWI_send_SC_PollingREQ: @ 82E2E4C - push {lr} - movs r0, 0x1A - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E2E66 - ldr r0, _082E2E6C - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E2E66: - pop {r0} - bx r0 - .align 2, 0 -_082E2E6C: .4byte gUnknown_03007868 - thumb_func_end STWI_send_SC_PollingREQ - - thumb_func_start STWI_send_SC_EndREQ -STWI_send_SC_EndREQ: @ 82E2E70 - push {lr} - movs r0, 0x1B - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E2E8A - ldr r0, _082E2E90 - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E2E8A: - pop {r0} - bx r0 - .align 2, 0 -_082E2E90: .4byte gUnknown_03007868 - thumb_func_end STWI_send_SC_EndREQ - - thumb_func_start STWI_send_SP_StartREQ -STWI_send_SP_StartREQ: @ 82E2E94 - push {lr} - movs r0, 0x1C - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E2EAE - ldr r0, _082E2EB4 - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E2EAE: - pop {r0} - bx r0 - .align 2, 0 -_082E2EB4: .4byte gUnknown_03007868 - thumb_func_end STWI_send_SP_StartREQ - - thumb_func_start STWI_send_SP_PollingREQ -STWI_send_SP_PollingREQ: @ 82E2EB8 - push {lr} - movs r0, 0x1D - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E2ED2 - ldr r0, _082E2ED8 - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E2ED2: - pop {r0} - bx r0 - .align 2, 0 -_082E2ED8: .4byte gUnknown_03007868 - thumb_func_end STWI_send_SP_PollingREQ - - thumb_func_start STWI_send_SP_EndREQ -STWI_send_SP_EndREQ: @ 82E2EDC - push {lr} - movs r0, 0x1E - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E2EF6 - ldr r0, _082E2EFC - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E2EF6: - pop {r0} - bx r0 - .align 2, 0 -_082E2EFC: .4byte gUnknown_03007868 - thumb_func_end STWI_send_SP_EndREQ - - thumb_func_start STWI_send_CP_StartREQ -STWI_send_CP_StartREQ: @ 82E2F00 - push {r4,lr} - lsls r0, 16 - lsrs r4, r0, 16 - movs r0, 0x1F - bl STWI_init - lsls r0, 16 - cmp r0, 0 - bne _082E2F24 - ldr r2, _082E2F2C - ldr r1, [r2] - movs r0, 0x1 - strb r0, [r1, 0x4] - ldr r0, [r2] - ldr r0, [r0, 0x24] - str r4, [r0, 0x4] - bl STWI_start_Command -_082E2F24: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_082E2F2C: .4byte gUnknown_03007868 - thumb_func_end STWI_send_CP_StartREQ - - thumb_func_start STWI_send_CP_PollingREQ -STWI_send_CP_PollingREQ: @ 82E2F30 - push {lr} - movs r0, 0x20 - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E2F4A - ldr r0, _082E2F50 - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E2F4A: - pop {r0} - bx r0 - .align 2, 0 -_082E2F50: .4byte gUnknown_03007868 - thumb_func_end STWI_send_CP_PollingREQ - - thumb_func_start STWI_send_CP_EndREQ -STWI_send_CP_EndREQ: @ 82E2F54 - push {lr} - movs r0, 0x21 - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E2F6E - ldr r0, _082E2F74 - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E2F6E: - pop {r0} - bx r0 - .align 2, 0 -_082E2F74: .4byte gUnknown_03007868 - thumb_func_end STWI_send_CP_EndREQ - - thumb_func_start STWI_send_DataTxREQ -STWI_send_DataTxREQ: @ 82E2F78 - push {r4-r6,lr} - adds r6, r0, 0 - lsls r4, r1, 24 - lsrs r5, r4, 24 - movs r0, 0x24 - bl STWI_init - lsls r0, 16 - cmp r0, 0 - bne _082E2FB6 - lsrs r2, r4, 26 - movs r0, 0x3 - ands r0, r5 - cmp r0, 0 - beq _082E2F98 - adds r2, 0x1 -_082E2F98: - ldr r1, _082E2FBC - ldr r0, [r1] - strb r2, [r0, 0x4] - ldr r0, [r1] - ldr r1, [r0, 0x24] - adds r1, 0x4 - ldrb r2, [r0, 0x4] - movs r0, 0x80 - lsls r0, 19 - orrs r2, r0 - adds r0, r6, 0 - bl CpuSet - bl STWI_start_Command -_082E2FB6: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_082E2FBC: .4byte gUnknown_03007868 - thumb_func_end STWI_send_DataTxREQ - - thumb_func_start STWI_send_DataTxAndChangeREQ -STWI_send_DataTxAndChangeREQ: @ 82E2FC0 - push {r4-r6,lr} - adds r6, r0, 0 - lsls r4, r1, 24 - lsrs r5, r4, 24 - movs r0, 0x25 - bl STWI_init - lsls r0, 16 - cmp r0, 0 - bne _082E2FFE - lsrs r2, r4, 26 - movs r0, 0x3 - ands r0, r5 - cmp r0, 0 - beq _082E2FE0 - adds r2, 0x1 -_082E2FE0: - ldr r1, _082E3004 - ldr r0, [r1] - strb r2, [r0, 0x4] - ldr r0, [r1] - ldr r1, [r0, 0x24] - adds r1, 0x4 - ldrb r2, [r0, 0x4] - movs r0, 0x80 - lsls r0, 19 - orrs r2, r0 - adds r0, r6, 0 - bl CpuSet - bl STWI_start_Command -_082E2FFE: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_082E3004: .4byte gUnknown_03007868 - thumb_func_end STWI_send_DataTxAndChangeREQ - - thumb_func_start STWI_send_DataRxREQ -STWI_send_DataRxREQ: @ 82E3008 - push {lr} - movs r0, 0x26 - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E3022 - ldr r0, _082E3028 - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E3022: - pop {r0} - bx r0 - .align 2, 0 -_082E3028: .4byte gUnknown_03007868 - thumb_func_end STWI_send_DataRxREQ - - thumb_func_start STWI_send_MS_ChangeREQ -STWI_send_MS_ChangeREQ: @ 82E302C - push {lr} - movs r0, 0x27 - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E3046 - ldr r0, _082E304C - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E3046: - pop {r0} - bx r0 - .align 2, 0 -_082E304C: .4byte gUnknown_03007868 - thumb_func_end STWI_send_MS_ChangeREQ - - thumb_func_start STWI_send_DataReadyAndChangeREQ -STWI_send_DataReadyAndChangeREQ: @ 82E3050 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - movs r0, 0x28 - bl STWI_init - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0 - bne _082E3096 - cmp r4, 0 - bne _082E3078 - ldr r0, _082E3074 - ldr r0, [r0] - strb r3, [r0, 0x4] - b _082E3092 - .align 2, 0 -_082E3074: .4byte gUnknown_03007868 -_082E3078: - ldr r2, _082E309C - ldr r1, [r2] - movs r0, 0x1 - strb r0, [r1, 0x4] - ldr r0, [r2] - ldr r0, [r0, 0x24] - adds r0, 0x4 - strb r5, [r0] - adds r0, 0x1 - strb r3, [r0] - adds r0, 0x1 - strb r3, [r0] - strb r3, [r0, 0x1] -_082E3092: - bl STWI_start_Command -_082E3096: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_082E309C: .4byte gUnknown_03007868 - thumb_func_end STWI_send_DataReadyAndChangeREQ - - thumb_func_start STWI_send_DisconnectedAndChangeREQ -STWI_send_DisconnectedAndChangeREQ: @ 82E30A0 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - movs r0, 0x29 - bl STWI_init - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0 - bne _082E30D6 - ldr r2, _082E30DC - ldr r1, [r2] - movs r0, 0x1 - strb r0, [r1, 0x4] - ldr r0, [r2] - ldr r0, [r0, 0x24] - adds r0, 0x4 - strb r4, [r0] - adds r0, 0x1 - strb r5, [r0] - adds r0, 0x1 - strb r3, [r0] - strb r3, [r0, 0x1] - bl STWI_start_Command -_082E30D6: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_082E30DC: .4byte gUnknown_03007868 - thumb_func_end STWI_send_DisconnectedAndChangeREQ - - thumb_func_start STWI_send_ResumeRetransmitAndChangeREQ -STWI_send_ResumeRetransmitAndChangeREQ: @ 82E30E0 - push {lr} - movs r0, 0x37 - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E30FA - ldr r0, _082E3100 - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E30FA: - pop {r0} - bx r0 - .align 2, 0 -_082E3100: .4byte gUnknown_03007868 - thumb_func_end STWI_send_ResumeRetransmitAndChangeREQ - - thumb_func_start STWI_send_DisconnectREQ -STWI_send_DisconnectREQ: @ 82E3104 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x30 - bl STWI_init - lsls r0, 16 - cmp r0, 0 - bne _082E3128 - ldr r2, _082E3130 - ldr r1, [r2] - movs r0, 0x1 - strb r0, [r1, 0x4] - ldr r0, [r2] - ldr r0, [r0, 0x24] - str r4, [r0, 0x4] - bl STWI_start_Command -_082E3128: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_082E3130: .4byte gUnknown_03007868 - thumb_func_end STWI_send_DisconnectREQ - - thumb_func_start STWI_send_TestModeREQ -STWI_send_TestModeREQ: @ 82E3134 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - lsrs r4, r1, 24 - movs r0, 0x31 - bl STWI_init - lsls r0, 16 - cmp r0, 0 - bne _082E3160 - ldr r2, _082E3168 - ldr r1, [r2] - movs r0, 0x1 - strb r0, [r1, 0x4] - ldr r0, [r2] - ldr r1, [r0, 0x24] - lsls r0, r4, 8 - orrs r0, r5 - str r0, [r1, 0x4] - bl STWI_start_Command -_082E3160: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_082E3168: .4byte gUnknown_03007868 - thumb_func_end STWI_send_TestModeREQ - - thumb_func_start STWI_send_CPR_StartREQ -STWI_send_CPR_StartREQ: @ 82E316C - push {r4-r6,lr} - lsls r0, 16 - lsrs r5, r0, 16 - lsls r1, 16 - lsrs r4, r1, 16 - lsls r2, 24 - lsrs r6, r2, 24 - movs r0, 0x32 - bl STWI_init - lsls r0, 16 - cmp r0, 0 - bne _082E319E - ldr r2, _082E31A4 - ldr r1, [r2] - movs r0, 0x2 - strb r0, [r1, 0x4] - lsls r0, r5, 16 - orrs r0, r4 - ldr r1, [r2] - ldr r1, [r1, 0x24] - str r0, [r1, 0x4] - str r6, [r1, 0x8] - bl STWI_start_Command -_082E319E: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_082E31A4: .4byte gUnknown_03007868 - thumb_func_end STWI_send_CPR_StartREQ - - thumb_func_start STWI_send_CPR_PollingREQ -STWI_send_CPR_PollingREQ: @ 82E31A8 - push {lr} - movs r0, 0x33 - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E31C2 - ldr r0, _082E31C8 - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E31C2: - pop {r0} - bx r0 - .align 2, 0 -_082E31C8: .4byte gUnknown_03007868 - thumb_func_end STWI_send_CPR_PollingREQ - - thumb_func_start STWI_send_CPR_EndREQ -STWI_send_CPR_EndREQ: @ 82E31CC - push {lr} - movs r0, 0x34 - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E31E6 - ldr r0, _082E31EC - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E31E6: - pop {r0} - bx r0 - .align 2, 0 -_082E31EC: .4byte gUnknown_03007868 - thumb_func_end STWI_send_CPR_EndREQ - - thumb_func_start STWI_send_StopModeREQ -STWI_send_StopModeREQ: @ 82E31F0 - push {lr} - movs r0, 0x3D - bl STWI_init - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _082E320A - ldr r0, _082E3210 - ldr r0, [r0] - strb r1, [r0, 0x4] - bl STWI_start_Command -_082E320A: - pop {r0} - bx r0 - .align 2, 0 -_082E3210: .4byte gUnknown_03007868 - thumb_func_end STWI_send_StopModeREQ - - thumb_func_start STWI_intr_timer -STWI_intr_timer: @ 82E3214 - push {r4,lr} - ldr r4, _082E322C - ldr r1, [r4] - ldr r0, [r1, 0xC] - cmp r0, 0x2 - beq _082E323A - cmp r0, 0x2 - bgt _082E3230 - cmp r0, 0x1 - beq _082E3248 - b _082E3270 - .align 2, 0 -_082E322C: .4byte gUnknown_03007868 -_082E3230: - cmp r0, 0x3 - beq _082E3252 - cmp r0, 0x4 - beq _082E3248 - b _082E3270 -_082E323A: - ldrb r0, [r1, 0x10] - movs r0, 0x1 - strb r0, [r1, 0x10] - movs r0, 0x32 - bl STWI_set_timer - b _082E3270 -_082E3248: - bl STWI_stop_timer - bl STWI_restart_Command - b _082E3270 -_082E3252: - ldrb r0, [r1, 0x10] - movs r0, 0x1 - strb r0, [r1, 0x10] - bl STWI_stop_timer - bl STWI_reset_ClockCounter - ldr r0, [r4] - ldr r2, [r0, 0x18] - cmp r2, 0 - beq _082E3270 - movs r0, 0xFF - movs r1, 0 - bl _call_via_r2 -_082E3270: - pop {r4} - pop {r0} - bx r0 - thumb_func_end STWI_intr_timer - - thumb_func_start STWI_set_timer -STWI_set_timer: @ 82E3278 - push {r4-r7,lr} - lsls r0, 24 - lsrs r3, r0, 24 - adds r5, r3, 0 - ldr r2, _082E32A8 - ldr r0, [r2] - ldrb r0, [r0, 0xA] - lsls r0, 2 - ldr r1, _082E32AC - adds r4, r0, r1 - adds r1, 0x2 - adds r7, r0, r1 - ldr r1, _082E32B0 - movs r0, 0 - strh r0, [r1] - adds r6, r2, 0 - cmp r3, 0x50 - beq _082E32D0 - cmp r3, 0x50 - bgt _082E32B4 - cmp r3, 0x32 - beq _082E32BE - b _082E32FC - .align 2, 0 -_082E32A8: .4byte gUnknown_03007868 -_082E32AC: .4byte 0x04000100 -_082E32B0: .4byte 0x04000208 -_082E32B4: - cmp r5, 0x64 - beq _082E32E0 - cmp r5, 0x82 - beq _082E32F0 - b _082E32FC -_082E32BE: - ldr r1, _082E32CC - adds r0, r1, 0 - strh r0, [r4] - ldr r1, [r6] - movs r0, 0x1 - b _082E32FA - .align 2, 0 -_082E32CC: .4byte 0x0000fccb -_082E32D0: - ldr r1, _082E32DC - adds r0, r1, 0 - strh r0, [r4] - ldr r1, [r6] - movs r0, 0x2 - b _082E32FA - .align 2, 0 -_082E32DC: .4byte 0x0000fae0 -_082E32E0: - ldr r1, _082E32EC - adds r0, r1, 0 - strh r0, [r4] - ldr r1, [r6] - movs r0, 0x3 - b _082E32FA - .align 2, 0 -_082E32EC: .4byte 0x0000f996 -_082E32F0: - ldr r1, _082E3318 - adds r0, r1, 0 - strh r0, [r4] - ldr r1, [r6] - movs r0, 0x4 -_082E32FA: - str r0, [r1, 0xC] -_082E32FC: - movs r0, 0xC3 - strh r0, [r7] - ldr r2, _082E331C - ldr r1, [r6] - movs r0, 0x8 - ldrb r1, [r1, 0xA] - lsls r0, r1 - strh r0, [r2] - ldr r1, _082E3320 - movs r0, 0x1 - strh r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_082E3318: .4byte 0x0000f7ad -_082E331C: .4byte 0x04000202 -_082E3320: .4byte 0x04000208 - thumb_func_end STWI_set_timer - - thumb_func_start STWI_stop_timer -STWI_stop_timer: @ 82E3324 - ldr r2, _082E3344 - ldr r0, [r2] - movs r1, 0 - str r1, [r0, 0xC] - ldrb r0, [r0, 0xA] - lsls r0, 2 - ldr r3, _082E3348 - adds r0, r3 - strh r1, [r0] - ldr r0, [r2] - ldrb r0, [r0, 0xA] - lsls r0, 2 - ldr r2, _082E334C - adds r0, r2 - strh r1, [r0] - bx lr - .align 2, 0 -_082E3344: .4byte gUnknown_03007868 -_082E3348: .4byte 0x04000100 -_082E334C: .4byte 0x04000102 - thumb_func_end STWI_stop_timer - - thumb_func_start STWI_init -STWI_init: @ 82E3350 - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - ldr r0, _082E337C - ldrh r0, [r0] - cmp r0, 0 - bne _082E3384 - ldr r0, _082E3380 - ldr r1, [r0] - ldrh r0, [r1, 0x12] - movs r0, 0x6 - strh r0, [r1, 0x12] - ldr r2, [r1, 0x18] - cmp r2, 0 - beq _082E33CE - ldrh r1, [r1, 0x12] - adds r0, r5, 0 - bl _call_via_r2 - b _082E33CE - .align 2, 0 -_082E337C: .4byte 0x04000208 -_082E3380: .4byte gUnknown_03007868 -_082E3384: - ldr r4, _082E33B0 - ldr r2, [r4] - adds r3, r2, 0 - adds r3, 0x2C - ldrb r0, [r3] - cmp r0, 0x1 - bne _082E33B4 - ldrh r0, [r2, 0x12] - movs r1, 0 - movs r0, 0x2 - strh r0, [r2, 0x12] - ldrb r0, [r3] - strb r1, [r3] - ldr r0, [r4] - ldr r2, [r0, 0x18] - cmp r2, 0 - beq _082E33CE - ldrh r1, [r0, 0x12] - adds r0, r5, 0 - bl _call_via_r2 - b _082E33CE - .align 2, 0 -_082E33B0: .4byte gUnknown_03007868 -_082E33B4: - ldrb r0, [r2, 0x14] - cmp r0, 0 - bne _082E33D2 - ldrh r0, [r2, 0x12] - movs r0, 0x4 - strh r0, [r2, 0x12] - ldr r3, [r2, 0x18] - cmp r3, 0 - beq _082E33CE - ldrh r1, [r2, 0x12] - adds r0, r5, 0 - bl _call_via_r3 -_082E33CE: - movs r0, 0x1 - b _082E341A -_082E33D2: - ldrb r0, [r3] - movs r1, 0 - movs r0, 0x1 - strb r0, [r3] - ldr r0, [r4] - strb r6, [r0, 0x6] - ldr r0, [r4] - str r1, [r0] - strb r1, [r0, 0x4] - ldr r0, [r4] - strb r1, [r0, 0x5] - ldr r0, [r4] - strb r1, [r0, 0x7] - ldr r0, [r4] - strb r1, [r0, 0x8] - ldr r0, [r4] - strb r1, [r0, 0x9] - ldr r0, [r4] - str r1, [r0, 0xC] - ldrb r2, [r0, 0x10] - strb r1, [r0, 0x10] - ldr r0, [r4] - ldrh r2, [r0, 0x12] - movs r2, 0 - strh r1, [r0, 0x12] - strb r2, [r0, 0x15] - ldr r1, _082E3420 - movs r2, 0x80 - lsls r2, 1 - adds r0, r2, 0 - strh r0, [r1] - subs r1, 0xC - ldr r2, _082E3424 - adds r0, r2, 0 - strh r0, [r1] - movs r0, 0 -_082E341A: - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_082E3420: .4byte 0x04000134 -_082E3424: .4byte 0x00005003 - thumb_func_end STWI_init - - thumb_func_start STWI_start_Command -STWI_start_Command: @ 82E3428 - push {r4,r5,lr} - ldr r5, _082E3480 - ldr r0, [r5] - ldr r3, [r0, 0x24] - ldrb r1, [r0, 0x4] - lsls r1, 8 - ldrb r0, [r0, 0x6] - ldr r2, _082E3484 - orrs r0, r2 - orrs r1, r0 - str r1, [r3] - ldr r2, _082E3488 - ldr r1, [r5] - ldr r0, [r1, 0x24] - ldr r0, [r0] - str r0, [r2] - movs r2, 0 - str r2, [r1] - movs r0, 0x1 - strb r0, [r1, 0x5] - ldr r4, _082E348C - ldrh r3, [r4] - strh r2, [r4] - ldr r2, _082E3490 - ldr r1, [r5] - movs r0, 0x8 - ldrb r1, [r1, 0xA] - lsls r0, r1 - ldrh r1, [r2] - orrs r0, r1 - strh r0, [r2] - ldrh r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strh r0, [r2] - strh r3, [r4] - ldr r1, _082E3494 - ldr r2, _082E3498 - adds r0, r2, 0 - strh r0, [r1] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_082E3480: .4byte gUnknown_03007868 -_082E3484: .4byte 0x99660000 -_082E3488: .4byte 0x04000120 -_082E348C: .4byte 0x04000208 -_082E3490: .4byte 0x04000200 -_082E3494: .4byte 0x04000128 -_082E3498: .4byte 0x00005083 - thumb_func_end STWI_start_Command - - thumb_func_start STWI_restart_Command -STWI_restart_Command: @ 82E349C - push {r4,lr} - ldr r4, _082E34B4 - ldr r2, [r4] - ldrb r0, [r2, 0x15] - adds r3, r4, 0 - cmp r0, 0x1 - bhi _082E34B8 - adds r0, 0x1 - strb r0, [r2, 0x15] - bl STWI_start_Command - b _082E3512 - .align 2, 0 -_082E34B4: .4byte gUnknown_03007868 -_082E34B8: - ldrb r0, [r2, 0x6] - cmp r0, 0x27 - beq _082E34CA - cmp r0, 0x25 - beq _082E34CA - cmp r0, 0x35 - beq _082E34CA - cmp r0, 0x37 - bne _082E34EC -_082E34CA: - ldr r0, [r3] - ldrh r1, [r0, 0x12] - movs r2, 0 - movs r1, 0x1 - strh r1, [r0, 0x12] - adds r0, 0x2C - ldrb r1, [r0] - strb r2, [r0] - ldr r1, [r3] - ldr r2, [r1, 0x18] - cmp r2, 0 - beq _082E3512 - ldrb r0, [r1, 0x6] - ldrh r1, [r1, 0x12] - bl _call_via_r2 - b _082E3512 -_082E34EC: - ldrh r0, [r2, 0x12] - movs r1, 0 - movs r0, 0x1 - strh r0, [r2, 0x12] - adds r0, r2, 0 - adds r0, 0x2C - ldrb r2, [r0] - strb r1, [r0] - ldr r1, [r4] - ldr r2, [r1, 0x18] - cmp r2, 0 - beq _082E350C - ldrb r0, [r1, 0x6] - ldrh r1, [r1, 0x12] - bl _call_via_r2 -_082E350C: - ldr r1, [r4] - movs r0, 0x4 - str r0, [r1] -_082E3512: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end STWI_restart_Command - - thumb_func_start STWI_reset_ClockCounter -STWI_reset_ClockCounter: @ 82E351C - ldr r3, _082E3548 - ldr r1, [r3] - movs r0, 0x5 - str r0, [r1] - movs r2, 0 - strb r2, [r1, 0x4] - ldr r0, [r3] - strb r2, [r0, 0x5] - ldr r1, _082E354C - movs r0, 0x80 - lsls r0, 24 - str r0, [r1] - adds r1, 0x8 - strh r2, [r1] - ldr r2, _082E3550 - adds r0, r2, 0 - strh r0, [r1] - adds r2, 0x7F - adds r0, r2, 0 - strh r0, [r1] - movs r0, 0 - bx lr - .align 2, 0 -_082E3548: .4byte gUnknown_03007868 -_082E354C: .4byte 0x04000120 -_082E3550: .4byte 0x00005003 - thumb_func_end STWI_reset_ClockCounter - - arm_func_start IntrSIO32 -IntrSIO32: @ 82E3554 - mov r12, sp - stmdb sp!, {r11,r12,lr,pc} - ldr r3, _082E35B4 - ldr r0, [r3] - ldr r2, [r0] - sub r11, r12, 0x4 - cmp r2, 0xA - bne _082E3590 - ldr r0, [r0, 0x20] - cmp r0, 0 - ldmdbeq r11, {r11,sp,lr} - bxeq lr - bl sub_82E3EB0 - ldmdb r11, {r11,sp,lr} - bx lr -_082E3590: - ldrb r3, [r0, 0x14] - cmp r3, 0x1 - bne _082E35A8 - bl sio32intr_clock_master - ldmdb r11, {r11,sp,lr} - bx lr -_082E35A8: - bl sio32intr_clock_slave - ldmdb r11, {r11,sp,lr} - bx lr - .align 2, 0 -_082E35B4: .4byte gUnknown_03007868 - arm_func_end IntrSIO32 - - arm_func_start sio32intr_clock_master -sio32intr_clock_master: @ 82E35B8 - mov r12, sp - stmdb sp!, {r4-r6,r11,r12,lr,pc} - mov r0, 0x50 - sub r11, r12, 0x4 - bl STWI_set_timer_in_RAM - mov r4, 0x120 - ldr r2, _082E382C - add r4, r4, 0x4000000 - ldr lr, [r4] - ldr r12, [r2] - ldr r3, [r12] - mov r6, r2 - cmp r3, 0 - bne _082E3638 - cmp lr, 0x80000000 - bne _082E36B8 - ldrb r2, [r12, 0x5] - ldrb r3, [r12, 0x4] - cmp r2, r3 - bhi _082E3628 - ldr r3, [r12, 0x24] - mov r1, r2 - ldr r2, [r3, r1, lsl 2] - str r2, [r4] - ldrb r3, [r12, 0x5] - add r3, r3, 0x1 - strb r3, [r12, 0x5] - b _082E3714 -_082E3628: - mov r3, 0x1 - str r3, [r12] - str lr, [r4] - b _082E3714 -_082E3638: - ldr r3, [r12] - cmp r3, 0x1 - bne _082E36C8 - mov r3, 0x99000000 - add r3, r3, 0x660000 - mov r5, 0x80000000 - and r2, lr, r5, asr 15 - cmp r2, r3 - bne _082E36B8 - mov r3, 0 - strb r3, [r12, 0x8] - ldr r1, [r6] - ldrb r0, [r1, 0x8] - ldr r2, [r1, 0x28] - str lr, [r2, r0, lsl 2] - ldrb r3, [r1, 0x8] - add r3, r3, 0x1 - strb r3, [r1, 0x8] - ldr r2, [r6] - strb lr, [r2, 0x9] - ldr r3, [r6] - mov r2, lr, lsr 8 - strb r2, [r3, 0x7] - ldr r1, [r6] - ldrb r2, [r1, 0x7] - ldrb r3, [r1, 0x8] - cmp r2, r3 - bcc _082E3700 - mov r3, 0x2 - str r3, [r1] - str r5, [r4] - b _082E3714 -_082E36B8: - bl STWI_stop_timer_in_RAM - mov r0, 0x82 - bl STWI_set_timer_in_RAM - b _082E3840 -_082E36C8: - ldr r3, [r12] - cmp r3, 0x2 - bne _082E3714 - ldrb r1, [r12, 0x8] - ldr r2, [r12, 0x28] - str lr, [r2, r1, lsl 2] - ldrb r3, [r12, 0x8] - add r3, r3, 0x1 - strb r3, [r12, 0x8] - ldr r1, [r6] - ldrb r2, [r1, 0x7] - ldrb r3, [r1, 0x8] - cmp r2, r3 - bcs _082E370C -_082E3700: - mov r3, 0x3 - str r3, [r1] - b _082E3714 -_082E370C: - mov r3, 0x80000000 - str r3, [r4] -_082E3714: - mov r0, 0x1 - bl handshake_wait - mov r0, r0, lsl 16 - cmp r0, 0x10000 - beq _082E3840 - mov r4, 0x128 - add r4, r4, 0x4000000 - mov r5, 0x5000 - add r3, r5, 0xB - strh r3, [r4] - mov r0, 0 - bl handshake_wait - mov r0, r0, lsl 16 - cmp r0, 0x10000 - beq _082E3840 - bl STWI_stop_timer_in_RAM - ldr r1, [r6] - ldr r0, [r1] - cmp r0, 0x3 - bne _082E3830 - ldrb r3, [r1, 0x9] - cmp r3, 0xA5 - cmpne r3, 0xA7 - beq _082E3788 - and r3, r3, 0xFF - cmp r3, 0xB5 - beq _082E3788 - cmp r3, 0xB7 - bne _082E37D0 -_082E3788: - mov r1, 0x120 - add r1, r1, 0x4000000 - mov r12, 0x128 - add r12, r12, 0x4000000 - ldr r0, [r6] - mov r3, 0 - strb r3, [r0, 0x14] - mov r2, 0x80000000 - str r2, [r1] - add r3, r3, 0x5000 - add r2, r3, 0x2 - strh r2, [r12] - add r3, r3, 0x82 - strh r3, [r12] - ldr r2, [r6] - mov r3, 0x5 - str r3, [r2] - b _082E3800 -_082E37D0: - cmp r3, 0xEE - bne _082E37F0 - add r3, r5, 0x3 - strh r3, [r4] - mov r2, 0x4 - str r2, [r1] - strh r0, [r1, 0x12] - b _082E3800 -_082E37F0: - add r3, r5, 0x3 - strh r3, [r4] - mov r2, 0x4 - str r2, [r1] -_082E3800: - ldr r2, [r6] - mov r3, 0 - strb r3, [r2, 0x2C] - ldr r0, [r6] - ldr r2, [r0, 0x18] - cmp r2, r3 - beq _082E3840 - ldrh r1, [r0, 0x12] - ldrb r0, [r0, 0x6] - bl sub_82E3EA8 - b _082E3840 - .align 2, 0 -_082E382C: .4byte gUnknown_03007868 -_082E3830: - add r3, r5, 0x3 - strh r3, [r4] - add r2, r5, 0x83 - strh r2, [r4] -_082E3840: - ldmdb r11, {r4-r6,r11,sp,lr} - bx lr - arm_func_end sio32intr_clock_master - - arm_func_start sio32intr_clock_slave -sio32intr_clock_slave: @ 82E3848 - mov r12, sp - stmdb sp!, {r4-r6,r11,r12,lr,pc} - ldr r4, _082E3BF4 - mov r0, 0x64 - ldr r3, [r4] - mov r6, 0 - strb r6, [r3, 0x10] - sub r11, r12, 0x4 - bl STWI_set_timer_in_RAM - mov r0, r6 - bl handshake_wait - mov r0, r0, lsl 16 - cmp r0, 0x10000 - mov r5, r4 - beq _082E3C4C - mov r3, 0x128 - add r3, r3, 0x4000000 - mov r2, 0x5000 - add r2, r2, 0xA - strh r2, [r3] - mov lr, 0x120 - ldr r0, [r5] - add lr, lr, 0x4000000 - ldr r12, [lr] - ldr r3, [r0] - cmp r3, 0x5 - bne _082E3978 - ldr r3, [r0, 0x28] - mov r4, 0x1 - mov r0, 0x99000000 - str r12, [r3] - add r0, r0, 0x660000 - ldr r2, [r5] - mov r3, r0, lsr 16 - strb r4, [r2, 0x5] - cmp r3, r12, lsr 16 - bne _082E3AC4 - ldr r3, [r5] - mov r2, r12, lsr 8 - strb r2, [r3, 0x4] - ldr r2, [r5] - strb r12, [r2, 0x6] - ldr r1, [r5] - ldrb r3, [r1, 0x4] - cmp r3, r6 - bne _082E395C - ldrb r2, [r1, 0x6] - sub r3, r2, 0x27 - cmp r2, 0x36 - cmpne r3, 0x2 - bhi _082E3930 - add r3, r2, 0x80 - strb r3, [r1, 0x9] - ldr r2, [r5] - ldrb r3, [r2, 0x9] - ldr r1, [r2, 0x24] - add r3, r3, r0 - b _082E39E0 -_082E3930: - ldr r2, [r1, 0x24] - ldr r3, _082E3BF8 - str r3, [r2] - ldr r2, [r5] - ldrb r3, [r2, 0x6] - sub r3, r3, 0x10 - cmp r3, 0x2D - bhi _082E3A18 - ldr r3, [r2, 0x24] - str r4, [r3, 0x4] - b _082E3A24 -_082E395C: - mov r3, 0x80000000 - str r3, [lr] - strb r4, [r1, 0x5] - ldr r2, [r5] - add r3, r3, 0x80000006 - str r3, [r2] - b _082E3AD4 -_082E3978: - ldr r3, [r0] - cmp r3, 0x6 - bne _082E3A78 - ldrb r1, [r0, 0x5] - ldr r2, [r0, 0x28] - str r12, [r2, r1, lsl 2] - ldrb r3, [r0, 0x5] - add r3, r3, 0x1 - strb r3, [r0, 0x5] - ldr r1, [r5] - ldrb r2, [r1, 0x4] - ldrb r3, [r1, 0x5] - cmp r2, r3 - bcs _082E3A6C - ldrb r2, [r1, 0x6] - sub r3, r2, 0x28 - cmp r2, 0x36 - cmpne r3, 0x1 - bhi _082E39F0 - add r3, r2, 0x80 - strb r3, [r1, 0x9] - ldr r2, [r5] - ldrb r3, [r2, 0x9] - ldr r1, [r2, 0x24] - orr r3, r3, 0x99000000 - orr r3, r3, 0x660000 -_082E39E0: - str r3, [r1] - ldr r2, [r5] - strb r6, [r2, 0x7] - b _082E3A3C -_082E39F0: - ldr r2, [r1, 0x24] - ldr r3, _082E3BF8 - str r3, [r2] - ldr r2, [r5] - ldrb r3, [r2, 0x6] - sub r3, r3, 0x10 - cmp r3, 0x2D - ldrls r2, [r2, 0x24] - movls r3, 0x1 - bls _082E3A20 -_082E3A18: - ldr r2, [r2, 0x24] - mov r3, 0x2 -_082E3A20: - str r3, [r2, 0x4] -_082E3A24: - ldr r2, [r5] - mov r3, 0x1 - strb r3, [r2, 0x7] - ldr r1, [r5] - add r3, r3, 0x2 - strh r3, [r1, 0x12] -_082E3A3C: - ldr r0, [r5] - ldr r2, [r0, 0x24] - mov r3, 0x120 - ldr r1, [r2] - add r3, r3, 0x4000000 - str r1, [r3] - mov r2, 0x1 - strb r2, [r0, 0x8] - ldr r1, [r5] - mov r3, 0x7 - str r3, [r1] - b _082E3AD4 -_082E3A6C: - mov r3, 0x80000000 - str r3, [lr] - b _082E3AD4 -_082E3A78: - ldr r3, [r0] - cmp r3, 0x7 - bne _082E3AD4 - cmp r12, 0x80000000 - bne _082E3AC4 - ldrb r2, [r0, 0x7] - ldrb r3, [r0, 0x8] - cmp r2, r3 - movcc r3, 0x8 - strcc r3, [r0] - bcc _082E3AD4 - ldrb r1, [r0, 0x8] - ldr r3, [r0, 0x24] - ldr r2, [r3, r1, lsl 2] - str r2, [lr] - ldrb r3, [r0, 0x8] - add r3, r3, 0x1 - strb r3, [r0, 0x8] - b _082E3AD4 -_082E3AC4: - bl STWI_stop_timer_in_RAM - mov r0, 0x64 - bl STWI_set_timer_in_RAM - b _082E3C4C -_082E3AD4: - mov r0, 0x1 - bl handshake_wait - mov r0, r0, lsl 16 - cmp r0, 0x10000 - beq _082E3C4C - mov r6, r5 - ldr r3, [r6] - ldr r2, [r3] - cmp r2, 0x8 - bne _082E3B9C - mov r4, 0x128 - add r4, r4, 0x4000000 - mov r3, 0x5000 - add r3, r3, 0x2 - strh r3, [r4] - bl STWI_stop_timer_in_RAM - ldr r0, [r6] - ldrh r3, [r0, 0x12] - cmp r3, 0x3 - bne _082E3B48 - bl STWI_init_slave - ldr r3, [r6] - ldr r1, [r3, 0x1C] - cmp r1, 0 - beq _082E3C4C - mov r0, 0x1EC - add r0, r0, 0x2 - bl sub_82E3EAC - b _082E3C4C -_082E3B48: - mov r3, 0x120 - add r3, r3, 0x4000000 - mov r1, 0 - str r1, [r3] - mov r2, 0x5000 - strh r1, [r4] - add r2, r2, 0x3 - strh r2, [r4] - mov r3, 0x1 - strb r3, [r0, 0x14] - ldr r0, [r5] - ldr r2, [r0, 0x1C] - str r1, [r0] - cmp r2, r1 - beq _082E3C4C - ldrb r3, [r0, 0x4] - ldrb r0, [r0, 0x6] - mov r1, r2 - orr r0, r0, r3, lsl 8 - bl sub_82E3EAC - b _082E3C4C -_082E3B9C: - mov r3, 0x208 - add r3, r3, 0x4000000 - mov r2, 0 - strh r2, [r3] - mov r1, 0x100 - add r2, r1, 0x4000002 - ldrh r3, [r2] - tst r3, 0x80 - beq _082E3C20 - ldrh r3, [r2] - tst r3, 0x3 - bne _082E3BFC - mov r2, 0xFF00 - add r1, r1, 0x4000000 - ldrh r3, [r1] - add r2, r2, 0x9B - cmp r3, r2 - bls _082E3C20 -_082E3BE4: - ldrh r3, [r1] - cmp r3, r2 - bhi _082E3BE4 - b _082E3C20 - .align 2, 0 -_082E3BF4: .4byte gUnknown_03007868 -_082E3BF8: .4byte 0x996601ee -_082E3BFC: - mov r2, 0xFF00 - add r1, r1, 0x4000000 - ldrh r3, [r1] - add r2, r2, 0xFE - cmp r3, r2 - bls _082E3C20 -_082E3C14: - ldrh r3, [r1] - cmp r3, r2 - bhi _082E3C14 -_082E3C20: - mov r1, 0x128 - add r1, r1, 0x4000000 - mov r0, 0x208 - add r0, r0, 0x4000000 - mov r3, 0x5000 - add r2, r3, 0x2 - strh r2, [r1] - add r3, r3, 0x82 - strh r3, [r1] - mov r2, 0x1 - strh r2, [r0] -_082E3C4C: - ldmdb r11, {r4-r6,r11,sp,lr} - bx lr - arm_func_end sio32intr_clock_slave - - arm_func_start handshake_wait -handshake_wait: @ 82E3C54 - mov r12, sp - stmdb sp!, {r11,r12,lr,pc} - mov r1, 0x128 - add r1, r1, 0x4000000 - mov r0, r0, lsl 16 - ldr r2, _082E3CB8 - sub r11, r12, 0x4 - mov lr, r0, lsr 14 - ldr r12, [r2] -_082E3C78: - ldrb r3, [r12, 0x10] - and r0, r3, 0xFF - cmp r0, 0x1 - beq _082E3CA4 - ldrh r3, [r1] - and r3, r3, 0x4 - cmp r3, lr - bne _082E3C78 - mov r0, 0 - ldmdb r11, {r11,sp,lr} - bx lr -_082E3CA4: - ldr r2, [r2] - mov r3, 0 - strb r3, [r2, 0x10] - ldmdb r11, {r11,sp,lr} - bx lr - .align 2, 0 -_082E3CB8: .4byte gUnknown_03007868 - arm_func_end handshake_wait - - arm_func_start STWI_set_timer_in_RAM -STWI_set_timer_in_RAM: @ 82E3CBC - mov r12, sp - stmdb sp!, {r4,r5,r11,r12,lr,pc} - mov r1, 0x208 - add r1, r1, 0x4000000 - mov r3, 0 - sub r11, r12, 0x4 - ldr r12, _082E3D74 - and lr, r0, 0xFF - ldr r2, [r12] - cmp lr, 0x50 - ldrb r0, [r2, 0xA] - mov r4, r12 - mov r2, lr - strh r3, [r1] - mov r0, r0, lsl 2 - add r3, r3, 0x100 - add r1, r3, 0x4000000 - add r3, r3, 0x4000002 - add r5, r0, r3 - beq _082E3D44 - bgt _082E3D1C - cmp lr, 0x32 - beq _082E3D30 - b _082E3D90 -_082E3D1C: - cmp r2, 0x64 - beq _082E3D5C - cmp r2, 0x82 - beq _082E3D78 - b _082E3D90 -_082E3D30: - mvn r3, 0x334 - strh r3, [r0, r1] - ldr r2, [r4] - mov r3, 0x1 - b _082E3D8C -_082E3D44: - mov r3, 0xAE000000 - mov r3, r3, asr 20 - strh r3, [r0, r1] - ldr r2, [r4] - mov r3, 0x2 - b _082E3D8C -_082E3D5C: - mvn r3, 0x660 - sub r3, r3, 0x9 - strh r3, [r0, r1] - ldr r2, [r4] - mov r3, 0x3 - b _082E3D8C - .align 2, 0 -_082E3D74: .4byte gUnknown_03007868 -_082E3D78: - mvn r3, 0x850 - sub r3, r3, 0x2 - strh r3, [r0, r1] - ldr r2, [r4] - mov r3, 0x4 -_082E3D8C: - str r3, [r2, 0xC] -_082E3D90: - mov r12, 0x200 - add r12, r12, 0x4000002 - mov r3, 0xC3 - strh r3, [r5] - mov r1, 0x208 - ldr r2, [r4] - add r1, r1, 0x4000000 - ldrb r0, [r2, 0xA] - sub r3, r3, 0xBB - mov r3, r3, lsl r0 - strh r3, [r12] - mov r2, 0x1 - strh r2, [r1] - ldmdb r11, {r4,r5,r11,sp,lr} - bx lr - arm_func_end STWI_set_timer_in_RAM - - arm_func_start STWI_stop_timer_in_RAM -STWI_stop_timer_in_RAM: @ 82E3DCC - mov r12, sp - stmdb sp!, {r11,r12,lr,pc} - mov r1, 0x100 - ldr lr, _082E3E18 - add r0, r1, 0x4000000 - ldr r2, [lr] - sub r11, r12, 0x4 - ldrb r3, [r2, 0xA] - mov r12, 0 - str r12, [r2, 0xC] - mov r3, r3, lsl 2 - strh r12, [r3, r0] - ldr r2, [lr] - ldrb r3, [r2, 0xA] - add r1, r1, 0x4000002 - mov r3, r3, lsl 2 - strh r12, [r3, r1] - ldmdb r11, {r11,sp,lr} - bx lr - .align 2, 0 -_082E3E18: .4byte gUnknown_03007868 - arm_func_end STWI_stop_timer_in_RAM - - arm_func_start STWI_init_slave -STWI_init_slave: @ 82E3E1C - mov r12, sp - stmdb sp!, {r11,r12,lr,pc} - ldr r0, _082E3EA4 - ldr r2, [r0] - mov r3, 0x5 - str r3, [r2] - mov r1, 0 - strb r1, [r2, 0x14] - ldr r3, [r0] - strb r1, [r3, 0x4] - ldr r2, [r0] - strb r1, [r2, 0x5] - ldr r3, [r0] - strb r1, [r3, 0x6] - ldr r2, [r0] - strb r1, [r2, 0x7] - ldr r3, [r0] - strb r1, [r3, 0x8] - ldr r2, [r0] - strb r1, [r2, 0x9] - ldr r3, [r0] - str r1, [r3, 0xC] - sub r11, r12, 0x4 - strb r1, [r3, 0x10] - mov r2, 0x128 - ldr r12, [r0] - add r2, r2, 0x4000000 - strh r1, [r12, 0x12] - mov r3, 0x5000 - strb r1, [r12, 0x15] - add r3, r3, 0x82 - strh r3, [r2] - ldmdb r11, {r11,sp,lr} - bx lr - .align 2, 0 -_082E3EA4: .4byte gUnknown_03007868 - arm_func_end STWI_init_slave - - arm_func_start sub_82E3EA8 -sub_82E3EA8: @ 82E3EA8 - bx r2 - arm_func_end sub_82E3EA8 - - arm_func_start sub_82E3EAC -sub_82E3EAC: @ 82E3EAC - bx r1 - arm_func_end sub_82E3EAC - - arm_func_start sub_82E3EB0 -sub_82E3EB0: @ 82E3EB0 - bx r0 - arm_func_end sub_82E3EB0 - thumb_func_start rfu_initializeAPI rfu_initializeAPI: @ 82E3EB4 push {r4-r7,lr} @@ -2762,7 +517,7 @@ sub_82E424C: @ 82E424C b _082E4266 .align 2, 0 _082E4254: .4byte gUnknown_089A324C -_082E4258: .4byte gUnknown_030000F0 +_082E4258: .4byte gDma3Requests + 0xE0 thumb_func_end sub_82E424C thumb_func_start sub_82E425C @@ -2810,7 +565,7 @@ _082E4274: movs r0, 0 b _082E42BE .align 2, 0 -_082E42B0: .4byte gUnknown_030000FA +_082E42B0: .4byte gDma3Requests + 0xEA _082E42B4: .4byte gUnknown_03007890 _082E42B8: .4byte gUnknown_03007894 _082E42BC: @@ -2838,7 +593,7 @@ rfu_REQ_stopMode: @ 82E42C4 b _082E4362 .align 2, 0 _082E42E4: .4byte 0x04000208 -_082E42E8: .4byte gUnknown_03007868 +_082E42E8: .4byte gRfuState _082E42EC: bl AgbRFU_SoftReset bl rfu_STC_clearAPIVariables @@ -2878,7 +633,7 @@ _082E432A: b _082E4362 .align 2, 0 _082E433C: .4byte 0x00008001 -_082E4340: .4byte gUnknown_03007868 +_082E4340: .4byte gRfuState _082E4344: .4byte 0x04000100 _082E4348: .4byte 0x0105ffff _082E434C: .4byte rfu_CB_stopMode @@ -3156,7 +911,7 @@ rfu_CB_configGameData: @ 82E4500 movs r0, 0x1 b _082E4552 .align 2, 0 -_082E4544: .4byte gUnknown_03007868 +_082E4544: .4byte gRfuState _082E4548: .4byte gUnknown_03007890 _082E454C: adds r1, r6, 0 @@ -4225,7 +1980,7 @@ _082E4D18: b _082E4D88 .align 2, 0 _082E4D20: .4byte gUnknown_03007890 -_082E4D24: .4byte gUnknown_03007868 +_082E4D24: .4byte gRfuState _082E4D28: .4byte gUnknown_03007894 _082E4D2C: .4byte gUnknown_03007898 _082E4D30: @@ -5195,7 +2950,7 @@ _082E547E: pop {r1} bx r1 .align 2, 0 -_082E5484: .4byte gUnknown_03007868 +_082E5484: .4byte gRfuState thumb_func_end rfu_getMasterSlave thumb_func_start rfu_clearAllSlot @@ -6506,7 +4261,7 @@ _082E5E12: _082E5E34: .4byte gUnknown_03007898 _082E5E38: .4byte gUnknown_03007894 _082E5E3C: .4byte gUnknown_03007890 -_082E5E40: .4byte gUnknown_03007868 +_082E5E40: .4byte gRfuState _082E5E44: ldr r0, _082E5E54 bl STWI_set_Callback_M @@ -8564,7 +6319,7 @@ _082E6D88: b _082E6DD6 .align 2, 0 _082E6DB4: .4byte 0x04000200 -_082E6DB8: .4byte gUnknown_03007868 +_082E6DB8: .4byte gRfuState _082E6DBC: .4byte sub_82E6F88 _082E6DC0: .4byte 0x04000100 _082E6DC4: @@ -8612,7 +6367,7 @@ _082E6E08: .align 2, 0 _082E6E14: .4byte 0x04000208 _082E6E18: .4byte 0x04000200 -_082E6E1C: .4byte gUnknown_03007868 +_082E6E1C: .4byte gRfuState thumb_func_end sub_82E6D6C thumb_func_start sub_82E6E20 @@ -8663,7 +6418,7 @@ sub_82E6E20: @ 82E6E20 .align 2, 0 _082E6E78: .4byte 0x04000208 _082E6E7C: .4byte 0x04000200 -_082E6E80: .4byte gUnknown_03007868 +_082E6E80: .4byte gRfuState _082E6E84: .4byte 0x04000134 _082E6E88: .4byte gUnknown_030078A0 _082E6E8C: .4byte 0x05000003 diff --git a/asm/librfu_intr.s b/asm/librfu_intr.s new file mode 100644 index 000000000..7f375e419 --- /dev/null +++ b/asm/librfu_intr.s @@ -0,0 +1,696 @@ + .include "asm/macros.inc" + + .syntax unified + + .text + + arm_func_start IntrSIO32 +IntrSIO32: @ 82E3554 + mov r12, sp + stmdb sp!, {r11,r12,lr,pc} + ldr r3, _082E35B4 + ldr r0, [r3] + ldr r2, [r0] + sub r11, r12, 0x4 + cmp r2, 0xA + bne _082E3590 + ldr r0, [r0, 0x20] + cmp r0, 0 + ldmdbeq r11, {r11,sp,lr} + bxeq lr + bl sub_82E3EB0 + ldmdb r11, {r11,sp,lr} + bx lr +_082E3590: + ldrb r3, [r0, 0x14] + cmp r3, 0x1 + bne _082E35A8 + bl sio32intr_clock_master + ldmdb r11, {r11,sp,lr} + bx lr +_082E35A8: + bl sio32intr_clock_slave + ldmdb r11, {r11,sp,lr} + bx lr + .align 2, 0 +_082E35B4: .4byte gRfuState + arm_func_end IntrSIO32 + + arm_func_start sio32intr_clock_master +sio32intr_clock_master: @ 82E35B8 + mov r12, sp + stmdb sp!, {r4-r6,r11,r12,lr,pc} + mov r0, 0x50 + sub r11, r12, 0x4 + bl STWI_set_timer_in_RAM + mov r4, 0x120 + ldr r2, _082E382C + add r4, r4, 0x4000000 + ldr lr, [r4] + ldr r12, [r2] + ldr r3, [r12] + mov r6, r2 + cmp r3, 0 + bne _082E3638 + cmp lr, 0x80000000 + bne _082E36B8 + ldrb r2, [r12, 0x5] + ldrb r3, [r12, 0x4] + cmp r2, r3 + bhi _082E3628 + ldr r3, [r12, 0x24] + mov r1, r2 + ldr r2, [r3, r1, lsl 2] + str r2, [r4] + ldrb r3, [r12, 0x5] + add r3, r3, 0x1 + strb r3, [r12, 0x5] + b _082E3714 +_082E3628: + mov r3, 0x1 + str r3, [r12] + str lr, [r4] + b _082E3714 +_082E3638: + ldr r3, [r12] + cmp r3, 0x1 + bne _082E36C8 + mov r3, 0x99000000 + add r3, r3, 0x660000 + mov r5, 0x80000000 + and r2, lr, r5, asr 15 + cmp r2, r3 + bne _082E36B8 + mov r3, 0 + strb r3, [r12, 0x8] + ldr r1, [r6] + ldrb r0, [r1, 0x8] + ldr r2, [r1, 0x28] + str lr, [r2, r0, lsl 2] + ldrb r3, [r1, 0x8] + add r3, r3, 0x1 + strb r3, [r1, 0x8] + ldr r2, [r6] + strb lr, [r2, 0x9] + ldr r3, [r6] + mov r2, lr, lsr 8 + strb r2, [r3, 0x7] + ldr r1, [r6] + ldrb r2, [r1, 0x7] + ldrb r3, [r1, 0x8] + cmp r2, r3 + bcc _082E3700 + mov r3, 0x2 + str r3, [r1] + str r5, [r4] + b _082E3714 +_082E36B8: + bl STWI_stop_timer_in_RAM + mov r0, 0x82 + bl STWI_set_timer_in_RAM + b _082E3840 +_082E36C8: + ldr r3, [r12] + cmp r3, 0x2 + bne _082E3714 + ldrb r1, [r12, 0x8] + ldr r2, [r12, 0x28] + str lr, [r2, r1, lsl 2] + ldrb r3, [r12, 0x8] + add r3, r3, 0x1 + strb r3, [r12, 0x8] + ldr r1, [r6] + ldrb r2, [r1, 0x7] + ldrb r3, [r1, 0x8] + cmp r2, r3 + bcs _082E370C +_082E3700: + mov r3, 0x3 + str r3, [r1] + b _082E3714 +_082E370C: + mov r3, 0x80000000 + str r3, [r4] +_082E3714: + mov r0, 0x1 + bl handshake_wait + mov r0, r0, lsl 16 + cmp r0, 0x10000 + beq _082E3840 + mov r4, 0x128 + add r4, r4, 0x4000000 + mov r5, 0x5000 + add r3, r5, 0xB + strh r3, [r4] + mov r0, 0 + bl handshake_wait + mov r0, r0, lsl 16 + cmp r0, 0x10000 + beq _082E3840 + bl STWI_stop_timer_in_RAM + ldr r1, [r6] + ldr r0, [r1] + cmp r0, 0x3 + bne _082E3830 + ldrb r3, [r1, 0x9] + cmp r3, 0xA5 + cmpne r3, 0xA7 + beq _082E3788 + and r3, r3, 0xFF + cmp r3, 0xB5 + beq _082E3788 + cmp r3, 0xB7 + bne _082E37D0 +_082E3788: + mov r1, 0x120 + add r1, r1, 0x4000000 + mov r12, 0x128 + add r12, r12, 0x4000000 + ldr r0, [r6] + mov r3, 0 + strb r3, [r0, 0x14] + mov r2, 0x80000000 + str r2, [r1] + add r3, r3, 0x5000 + add r2, r3, 0x2 + strh r2, [r12] + add r3, r3, 0x82 + strh r3, [r12] + ldr r2, [r6] + mov r3, 0x5 + str r3, [r2] + b _082E3800 +_082E37D0: + cmp r3, 0xEE + bne _082E37F0 + add r3, r5, 0x3 + strh r3, [r4] + mov r2, 0x4 + str r2, [r1] + strh r0, [r1, 0x12] + b _082E3800 +_082E37F0: + add r3, r5, 0x3 + strh r3, [r4] + mov r2, 0x4 + str r2, [r1] +_082E3800: + ldr r2, [r6] + mov r3, 0 + strb r3, [r2, 0x2C] + ldr r0, [r6] + ldr r2, [r0, 0x18] + cmp r2, r3 + beq _082E3840 + ldrh r1, [r0, 0x12] + ldrb r0, [r0, 0x6] + bl sub_82E3EA8 + b _082E3840 + .align 2, 0 +_082E382C: .4byte gRfuState +_082E3830: + add r3, r5, 0x3 + strh r3, [r4] + add r2, r5, 0x83 + strh r2, [r4] +_082E3840: + ldmdb r11, {r4-r6,r11,sp,lr} + bx lr + arm_func_end sio32intr_clock_master + + arm_func_start sio32intr_clock_slave +sio32intr_clock_slave: @ 82E3848 + mov r12, sp + stmdb sp!, {r4-r6,r11,r12,lr,pc} + ldr r4, _082E3BF4 + mov r0, 0x64 + ldr r3, [r4] + mov r6, 0 + strb r6, [r3, 0x10] + sub r11, r12, 0x4 + bl STWI_set_timer_in_RAM + mov r0, r6 + bl handshake_wait + mov r0, r0, lsl 16 + cmp r0, 0x10000 + mov r5, r4 + beq _082E3C4C + mov r3, 0x128 + add r3, r3, 0x4000000 + mov r2, 0x5000 + add r2, r2, 0xA + strh r2, [r3] + mov lr, 0x120 + ldr r0, [r5] + add lr, lr, 0x4000000 + ldr r12, [lr] + ldr r3, [r0] + cmp r3, 0x5 + bne _082E3978 + ldr r3, [r0, 0x28] + mov r4, 0x1 + mov r0, 0x99000000 + str r12, [r3] + add r0, r0, 0x660000 + ldr r2, [r5] + mov r3, r0, lsr 16 + strb r4, [r2, 0x5] + cmp r3, r12, lsr 16 + bne _082E3AC4 + ldr r3, [r5] + mov r2, r12, lsr 8 + strb r2, [r3, 0x4] + ldr r2, [r5] + strb r12, [r2, 0x6] + ldr r1, [r5] + ldrb r3, [r1, 0x4] + cmp r3, r6 + bne _082E395C + ldrb r2, [r1, 0x6] + sub r3, r2, 0x27 + cmp r2, 0x36 + cmpne r3, 0x2 + bhi _082E3930 + add r3, r2, 0x80 + strb r3, [r1, 0x9] + ldr r2, [r5] + ldrb r3, [r2, 0x9] + ldr r1, [r2, 0x24] + add r3, r3, r0 + b _082E39E0 +_082E3930: + ldr r2, [r1, 0x24] + ldr r3, _082E3BF8 + str r3, [r2] + ldr r2, [r5] + ldrb r3, [r2, 0x6] + sub r3, r3, 0x10 + cmp r3, 0x2D + bhi _082E3A18 + ldr r3, [r2, 0x24] + str r4, [r3, 0x4] + b _082E3A24 +_082E395C: + mov r3, 0x80000000 + str r3, [lr] + strb r4, [r1, 0x5] + ldr r2, [r5] + add r3, r3, 0x80000006 + str r3, [r2] + b _082E3AD4 +_082E3978: + ldr r3, [r0] + cmp r3, 0x6 + bne _082E3A78 + ldrb r1, [r0, 0x5] + ldr r2, [r0, 0x28] + str r12, [r2, r1, lsl 2] + ldrb r3, [r0, 0x5] + add r3, r3, 0x1 + strb r3, [r0, 0x5] + ldr r1, [r5] + ldrb r2, [r1, 0x4] + ldrb r3, [r1, 0x5] + cmp r2, r3 + bcs _082E3A6C + ldrb r2, [r1, 0x6] + sub r3, r2, 0x28 + cmp r2, 0x36 + cmpne r3, 0x1 + bhi _082E39F0 + add r3, r2, 0x80 + strb r3, [r1, 0x9] + ldr r2, [r5] + ldrb r3, [r2, 0x9] + ldr r1, [r2, 0x24] + orr r3, r3, 0x99000000 + orr r3, r3, 0x660000 +_082E39E0: + str r3, [r1] + ldr r2, [r5] + strb r6, [r2, 0x7] + b _082E3A3C +_082E39F0: + ldr r2, [r1, 0x24] + ldr r3, _082E3BF8 + str r3, [r2] + ldr r2, [r5] + ldrb r3, [r2, 0x6] + sub r3, r3, 0x10 + cmp r3, 0x2D + ldrls r2, [r2, 0x24] + movls r3, 0x1 + bls _082E3A20 +_082E3A18: + ldr r2, [r2, 0x24] + mov r3, 0x2 +_082E3A20: + str r3, [r2, 0x4] +_082E3A24: + ldr r2, [r5] + mov r3, 0x1 + strb r3, [r2, 0x7] + ldr r1, [r5] + add r3, r3, 0x2 + strh r3, [r1, 0x12] +_082E3A3C: + ldr r0, [r5] + ldr r2, [r0, 0x24] + mov r3, 0x120 + ldr r1, [r2] + add r3, r3, 0x4000000 + str r1, [r3] + mov r2, 0x1 + strb r2, [r0, 0x8] + ldr r1, [r5] + mov r3, 0x7 + str r3, [r1] + b _082E3AD4 +_082E3A6C: + mov r3, 0x80000000 + str r3, [lr] + b _082E3AD4 +_082E3A78: + ldr r3, [r0] + cmp r3, 0x7 + bne _082E3AD4 + cmp r12, 0x80000000 + bne _082E3AC4 + ldrb r2, [r0, 0x7] + ldrb r3, [r0, 0x8] + cmp r2, r3 + movcc r3, 0x8 + strcc r3, [r0] + bcc _082E3AD4 + ldrb r1, [r0, 0x8] + ldr r3, [r0, 0x24] + ldr r2, [r3, r1, lsl 2] + str r2, [lr] + ldrb r3, [r0, 0x8] + add r3, r3, 0x1 + strb r3, [r0, 0x8] + b _082E3AD4 +_082E3AC4: + bl STWI_stop_timer_in_RAM + mov r0, 0x64 + bl STWI_set_timer_in_RAM + b _082E3C4C +_082E3AD4: + mov r0, 0x1 + bl handshake_wait + mov r0, r0, lsl 16 + cmp r0, 0x10000 + beq _082E3C4C + mov r6, r5 + ldr r3, [r6] + ldr r2, [r3] + cmp r2, 0x8 + bne _082E3B9C + mov r4, 0x128 + add r4, r4, 0x4000000 + mov r3, 0x5000 + add r3, r3, 0x2 + strh r3, [r4] + bl STWI_stop_timer_in_RAM + ldr r0, [r6] + ldrh r3, [r0, 0x12] + cmp r3, 0x3 + bne _082E3B48 + bl STWI_init_slave + ldr r3, [r6] + ldr r1, [r3, 0x1C] + cmp r1, 0 + beq _082E3C4C + mov r0, 0x1EC + add r0, r0, 0x2 + bl sub_82E3EAC + b _082E3C4C +_082E3B48: + mov r3, 0x120 + add r3, r3, 0x4000000 + mov r1, 0 + str r1, [r3] + mov r2, 0x5000 + strh r1, [r4] + add r2, r2, 0x3 + strh r2, [r4] + mov r3, 0x1 + strb r3, [r0, 0x14] + ldr r0, [r5] + ldr r2, [r0, 0x1C] + str r1, [r0] + cmp r2, r1 + beq _082E3C4C + ldrb r3, [r0, 0x4] + ldrb r0, [r0, 0x6] + mov r1, r2 + orr r0, r0, r3, lsl 8 + bl sub_82E3EAC + b _082E3C4C +_082E3B9C: + mov r3, 0x208 + add r3, r3, 0x4000000 + mov r2, 0 + strh r2, [r3] + mov r1, 0x100 + add r2, r1, 0x4000002 + ldrh r3, [r2] + tst r3, 0x80 + beq _082E3C20 + ldrh r3, [r2] + tst r3, 0x3 + bne _082E3BFC + mov r2, 0xFF00 + add r1, r1, 0x4000000 + ldrh r3, [r1] + add r2, r2, 0x9B + cmp r3, r2 + bls _082E3C20 +_082E3BE4: + ldrh r3, [r1] + cmp r3, r2 + bhi _082E3BE4 + b _082E3C20 + .align 2, 0 +_082E3BF4: .4byte gRfuState +_082E3BF8: .4byte 0x996601ee +_082E3BFC: + mov r2, 0xFF00 + add r1, r1, 0x4000000 + ldrh r3, [r1] + add r2, r2, 0xFE + cmp r3, r2 + bls _082E3C20 +_082E3C14: + ldrh r3, [r1] + cmp r3, r2 + bhi _082E3C14 +_082E3C20: + mov r1, 0x128 + add r1, r1, 0x4000000 + mov r0, 0x208 + add r0, r0, 0x4000000 + mov r3, 0x5000 + add r2, r3, 0x2 + strh r2, [r1] + add r3, r3, 0x82 + strh r3, [r1] + mov r2, 0x1 + strh r2, [r0] +_082E3C4C: + ldmdb r11, {r4-r6,r11,sp,lr} + bx lr + arm_func_end sio32intr_clock_slave + + arm_func_start handshake_wait +handshake_wait: @ 82E3C54 + mov r12, sp + stmdb sp!, {r11,r12,lr,pc} + mov r1, 0x128 + add r1, r1, 0x4000000 + mov r0, r0, lsl 16 + ldr r2, _082E3CB8 + sub r11, r12, 0x4 + mov lr, r0, lsr 14 + ldr r12, [r2] +_082E3C78: + ldrb r3, [r12, 0x10] + and r0, r3, 0xFF + cmp r0, 0x1 + beq _082E3CA4 + ldrh r3, [r1] + and r3, r3, 0x4 + cmp r3, lr + bne _082E3C78 + mov r0, 0 + ldmdb r11, {r11,sp,lr} + bx lr +_082E3CA4: + ldr r2, [r2] + mov r3, 0 + strb r3, [r2, 0x10] + ldmdb r11, {r11,sp,lr} + bx lr + .align 2, 0 +_082E3CB8: .4byte gRfuState + arm_func_end handshake_wait + + arm_func_start STWI_set_timer_in_RAM +STWI_set_timer_in_RAM: @ 82E3CBC + mov r12, sp + stmdb sp!, {r4,r5,r11,r12,lr,pc} + mov r1, 0x208 + add r1, r1, 0x4000000 + mov r3, 0 + sub r11, r12, 0x4 + ldr r12, _082E3D74 + and lr, r0, 0xFF + ldr r2, [r12] + cmp lr, 0x50 + ldrb r0, [r2, 0xA] + mov r4, r12 + mov r2, lr + strh r3, [r1] + mov r0, r0, lsl 2 + add r3, r3, 0x100 + add r1, r3, 0x4000000 + add r3, r3, 0x4000002 + add r5, r0, r3 + beq _082E3D44 + bgt _082E3D1C + cmp lr, 0x32 + beq _082E3D30 + b _082E3D90 +_082E3D1C: + cmp r2, 0x64 + beq _082E3D5C + cmp r2, 0x82 + beq _082E3D78 + b _082E3D90 +_082E3D30: + mvn r3, 0x334 + strh r3, [r0, r1] + ldr r2, [r4] + mov r3, 0x1 + b _082E3D8C +_082E3D44: + mov r3, 0xAE000000 + mov r3, r3, asr 20 + strh r3, [r0, r1] + ldr r2, [r4] + mov r3, 0x2 + b _082E3D8C +_082E3D5C: + mvn r3, 0x660 + sub r3, r3, 0x9 + strh r3, [r0, r1] + ldr r2, [r4] + mov r3, 0x3 + b _082E3D8C + .align 2, 0 +_082E3D74: .4byte gRfuState +_082E3D78: + mvn r3, 0x850 + sub r3, r3, 0x2 + strh r3, [r0, r1] + ldr r2, [r4] + mov r3, 0x4 +_082E3D8C: + str r3, [r2, 0xC] +_082E3D90: + mov r12, 0x200 + add r12, r12, 0x4000002 + mov r3, 0xC3 + strh r3, [r5] + mov r1, 0x208 + ldr r2, [r4] + add r1, r1, 0x4000000 + ldrb r0, [r2, 0xA] + sub r3, r3, 0xBB + mov r3, r3, lsl r0 + strh r3, [r12] + mov r2, 0x1 + strh r2, [r1] + ldmdb r11, {r4,r5,r11,sp,lr} + bx lr + arm_func_end STWI_set_timer_in_RAM + + arm_func_start STWI_stop_timer_in_RAM +STWI_stop_timer_in_RAM: @ 82E3DCC + mov r12, sp + stmdb sp!, {r11,r12,lr,pc} + mov r1, 0x100 + ldr lr, _082E3E18 + add r0, r1, 0x4000000 + ldr r2, [lr] + sub r11, r12, 0x4 + ldrb r3, [r2, 0xA] + mov r12, 0 + str r12, [r2, 0xC] + mov r3, r3, lsl 2 + strh r12, [r3, r0] + ldr r2, [lr] + ldrb r3, [r2, 0xA] + add r1, r1, 0x4000002 + mov r3, r3, lsl 2 + strh r12, [r3, r1] + ldmdb r11, {r11,sp,lr} + bx lr + .align 2, 0 +_082E3E18: .4byte gRfuState + arm_func_end STWI_stop_timer_in_RAM + + arm_func_start STWI_init_slave +STWI_init_slave: @ 82E3E1C + mov r12, sp + stmdb sp!, {r11,r12,lr,pc} + ldr r0, _082E3EA4 + ldr r2, [r0] + mov r3, 0x5 + str r3, [r2] + mov r1, 0 + strb r1, [r2, 0x14] + ldr r3, [r0] + strb r1, [r3, 0x4] + ldr r2, [r0] + strb r1, [r2, 0x5] + ldr r3, [r0] + strb r1, [r3, 0x6] + ldr r2, [r0] + strb r1, [r2, 0x7] + ldr r3, [r0] + strb r1, [r3, 0x8] + ldr r2, [r0] + strb r1, [r2, 0x9] + ldr r3, [r0] + str r1, [r3, 0xC] + sub r11, r12, 0x4 + strb r1, [r3, 0x10] + mov r2, 0x128 + ldr r12, [r0] + add r2, r2, 0x4000000 + strh r1, [r12, 0x12] + mov r3, 0x5000 + strb r1, [r12, 0x15] + add r3, r3, 0x82 + strh r3, [r2] + ldmdb r11, {r11,sp,lr} + bx lr + .align 2, 0 +_082E3EA4: .4byte gRfuState + arm_func_end STWI_init_slave + + arm_func_start sub_82E3EA8 +sub_82E3EA8: @ 82E3EA8 + bx r2 + arm_func_end sub_82E3EA8 + + arm_func_start sub_82E3EAC +sub_82E3EAC: @ 82E3EAC + bx r1 + arm_func_end sub_82E3EAC + + arm_func_start sub_82E3EB0 +sub_82E3EB0: @ 82E3EB0 + bx r0 + arm_func_end sub_82E3EB0 diff --git a/asm/link.s b/asm/link.s index d1c8d0542..291f71a57 100644 --- a/asm/link.s +++ b/asm/link.s @@ -402,7 +402,7 @@ sub_8009734: @ 8009734 strb r4, [r0] ldr r0, =gUnknown_030030F8 strb r4, [r0] - bl sub_800A5B4 + bl ResetBlockReceivedFlags bl sub_800A2E0 ldr r0, =gUnknown_03000D54 str r4, [r0] @@ -420,7 +420,7 @@ sub_8009734: @ 8009734 _080097A8: bl sub_800E700 _080097AC: - ldr r1, =gUnknown_03003124 + ldr r1, =gReceivedRemoteLinkPlayers movs r0, 0 strb r0, [r1] movs r1, 0 @@ -448,7 +448,7 @@ _080097BE: thumb_func_start sub_80097E8 sub_80097E8: @ 80097E8 push {r4,lr} - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers movs r4, 0 strb r4, [r0] ldr r0, =gLinkVSyncDisabled @@ -514,7 +514,7 @@ _08009868: lsrs r5, r0, 24 cmp r5, 0x3 bls _08009840 - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 lsrs r7, r0, 24 cmp r7, 0xF @@ -532,7 +532,7 @@ _08009888: cmp r0, 0 beq _080098C4 lsls r0, r5, 8 - ldr r1, =gUnknown_020223C4 + ldr r1, =gBlockRecvBuffer adds r0, r1 lsls r4, r5, 1 adds r1, r4, r5 @@ -545,7 +545,7 @@ _08009888: movs r6, 0 strh r0, [r4] adds r0, r5, 0 - bl sub_800A5EC + bl ResetBlockReceivedFlag ldrh r0, [r4] cmp r0, r8 beq _080098C4 @@ -752,7 +752,7 @@ _08009A78: blt _08009A70 cmp r5, 0 bne _08009A94 - ldr r1, =gUnknown_03003124 + ldr r1, =gReceivedRemoteLinkPlayers ldrb r0, [r1] cmp r0, 0 bne _08009A94 @@ -952,7 +952,7 @@ _08009C14: .pool _08009C40: movs r2, 0 - ldr r1, =gUnknown_020223C4 + ldr r1, =gBlockRecvBuffer mov r9, r1 adds r7, r3, 0 ldr r3, =gUnknown_03003090 @@ -996,7 +996,7 @@ _08009C70: cmp r0, 0x1 bne _08009D16 lsls r1, r6, 8 - ldr r0, =gUnknown_020223C4 + ldr r0, =gBlockRecvBuffer adds r1, r0 mov r8, r1 lsls r0, r6, 3 @@ -1080,7 +1080,7 @@ _08009D3E: adds r2, r3 ldrh r2, [r2] movs r0, 0 - bl link_0800A448 + bl SendBlock b _08009D6E .pool _08009D64: @@ -1321,7 +1321,7 @@ _08009F6A: thumb_func_start sub_8009F70 sub_8009F70: @ 8009F70 push {lr} - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0x1 bne _08009F80 @@ -1371,8 +1371,8 @@ _08009FC4: .pool thumb_func_end sub_8009FAC - thumb_func_start sub_8009FCC -sub_8009FCC: @ 8009FCC + thumb_func_start GetLinkPlayerCount +GetLinkPlayerCount: @ 8009FCC push {lr} ldr r0, =gLinkVSyncDisabled ldrb r0, [r0] @@ -1392,14 +1392,14 @@ _08009FEC: _08009FF4: pop {r1} bx r1 - thumb_func_end sub_8009FCC + thumb_func_end GetLinkPlayerCount thumb_func_start sub_8009FF8 sub_8009FF8: @ 8009FF8 push {r4-r7,lr} adds r6, r0, 0 adds r5, r1, 0 - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r4, r0, 24 movs r2, 0 @@ -1442,7 +1442,7 @@ sub_800A03C: @ 800A03C thumb_func_start sub_800A040 sub_800A040: @ 800A040 push {lr} - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r0, 0x4 @@ -1526,7 +1526,7 @@ sub_800A0C8: @ 800A0C8 adds r5, r0, 0 adds r6, r1, 0 movs r7, 0 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r4, [r0] cmp r4, 0x1 beq _0800A0DA @@ -1546,7 +1546,7 @@ _0800A0EA: b _0800A22E .pool _0800A0FC: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 cmp r0, 0 bne _0800A10E @@ -1572,12 +1572,12 @@ _0800A130: adds r5, 0x1C adds r6, 0x1 _0800A134: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r6, r0 blt _0800A120 - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r7, r0 @@ -1714,12 +1714,12 @@ _0800A266: lsls r0, 24 lsrs r4, r0, 24 _0800A26C: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r4, r0 bcc _0800A24C - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r6, r0 @@ -1742,8 +1742,8 @@ _0800A298: .pool thumb_func_end sub_800A23C - thumb_func_start sub_800A2A4 -sub_800A2A4: @ 800A2A4 + thumb_func_start GetLinkPlayerTrainerId +GetLinkPlayerTrainerId: @ 800A2A4 lsls r0, 24 lsrs r0, 24 ldr r2, =gLinkPlayers @@ -1755,7 +1755,7 @@ sub_800A2A4: @ 800A2A4 ldr r0, [r1] bx lr .pool - thumb_func_end sub_800A2A4 + thumb_func_end GetLinkPlayerTrainerId thumb_func_start sub_800A2BC sub_800A2BC: @ 800A2BC @@ -2008,8 +2008,8 @@ bitmask_all_link_players_but_self: @ 800A490 bx r1 thumb_func_end bitmask_all_link_players_but_self - thumb_func_start link_0800A448 -link_0800A448: @ 800A4AC + thumb_func_start SendBlock +SendBlock: @ 800A4AC push {lr} adds r3, r1, 0 lsls r2, 16 @@ -2030,7 +2030,7 @@ _0800A4CE: lsrs r0, 24 pop {r1} bx r1 - thumb_func_end link_0800A448 + thumb_func_end SendBlock thumb_func_start sub_800A4D8 sub_800A4D8: @ 800A4D8 @@ -2095,8 +2095,8 @@ _0800A546: .pool thumb_func_end sub_800A520 - thumb_func_start sub_800A550 -sub_800A550: @ 800A550 + thumb_func_start GetBlockReceivedStatus +GetBlockReceivedStatus: @ 800A550 push {lr} ldr r0, =gLinkVSyncDisabled ldrb r0, [r0] @@ -2122,7 +2122,7 @@ _0800A580: lsrs r0, 24 pop {r1} bx r1 - thumb_func_end sub_800A550 + thumb_func_end GetBlockReceivedStatus thumb_func_start sub_800A588 sub_800A588: @ 800A588 @@ -2148,8 +2148,8 @@ _0800A5AC: .pool thumb_func_end sub_800A588 - thumb_func_start sub_800A5B4 -sub_800A5B4: @ 800A5B4 + thumb_func_start ResetBlockReceivedFlags +ResetBlockReceivedFlags: @ 800A5B4 push {r4,lr} ldr r0, =gLinkVSyncDisabled ldrb r0, [r0] @@ -2179,10 +2179,10 @@ _0800A5E2: pop {r0} bx r0 .pool - thumb_func_end sub_800A5B4 + thumb_func_end ResetBlockReceivedFlags - thumb_func_start sub_800A5EC -sub_800A5EC: @ 800A5EC + thumb_func_start ResetBlockReceivedFlag +ResetBlockReceivedFlag: @ 800A5EC push {lr} lsls r0, 24 lsrs r1, r0, 24 @@ -2206,7 +2206,7 @@ _0800A616: pop {r0} bx r0 .pool - thumb_func_end sub_800A5EC + thumb_func_end ResetBlockReceivedFlag thumb_func_start sub_800A620 sub_800A620: @ 800A620 @@ -2573,7 +2573,7 @@ task00_link_test: @ 800A850 movs r2, 0x2 movs r3, 0x2 bl sub_800A6E8 - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 lsrs r0, 24 movs r1, 0xF @@ -2697,7 +2697,7 @@ _0800A9E2: lsrs r4, r0, 24 adds r5, 0x1 _0800A9EE: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r5, r0 @@ -3044,7 +3044,7 @@ _0800AC96: thumb_func_start sub_800ACAC sub_800ACAC: @ 800ACAC push {r4,lr} - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r2, r0, 24 movs r3, 0 @@ -3142,7 +3142,7 @@ _0800AD72: thumb_func_start sub_800AD88 sub_800AD88: @ 800AD88 push {r4,r5,lr} - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r3, r0, 24 movs r1, 0 @@ -3239,7 +3239,7 @@ _0800AE46: thumb_func_start sub_800AE5C sub_800AE5C: @ 800AE5C push {r4,lr} - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r2, r0, 24 movs r1, 0 @@ -3813,7 +3813,7 @@ sub_800B3A4: @ 800B3A4 lsls r0, 24 lsrs r0, 24 lsls r2, r0, 8 - ldr r1, =gUnknown_020223C4 + ldr r1, =gBlockRecvBuffer adds r4, r2, r1 lsls r2, r0, 3 subs r2, r0 @@ -3907,7 +3907,7 @@ _0800B482: thumb_func_start sub_800B488 sub_800B488: @ 800B488 push {lr} - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0800B498 @@ -3923,7 +3923,7 @@ _0800B498: thumb_func_start sub_800B4A4 sub_800B4A4: @ 800B4A4 push {lr} - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r1, [r0] cmp r1, 0 bne _0800B4B2 @@ -3938,7 +3938,7 @@ _0800B4B2: thumb_func_start sub_800B4C0 sub_800B4C0: @ 800B4C0 push {lr} - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r1, [r0] cmp r1, 0 bne _0800B4CE @@ -9671,7 +9671,7 @@ _0800E1C8: lsls r0, 24 lsrs r5, r0, 24 _0800E1E6: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 subs r0, 0x1 @@ -9965,7 +9965,7 @@ _0800E428: ble _0800E3FC mov r4, r9 _0800E434: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r4, r0 @@ -10019,7 +10019,7 @@ _0800E4A6: adds r5, 0x1C adds r4, 0x1 _0800E4AC: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r4, r0 @@ -11500,7 +11500,7 @@ _0800F18C: cmp r4, 0 bne _0800F1A8 bl sub_800EDD4 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers strb r4, [r0] b _0800F1D2 .pool @@ -11976,7 +11976,7 @@ _0800F514: bl sub_8011A64 _0800F58C: bl rfu_clearAllSlot - ldr r1, =gUnknown_03003124 + ldr r1, =gReceivedRemoteLinkPlayers movs r0, 0 strb r0, [r1] ldr r0, =gUnknown_03005000 @@ -12224,7 +12224,7 @@ _0800F786: thumb_func_start rfu_func_080F97B8 rfu_func_080F97B8: @ 800F794 push {lr} - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _0800F7C6 @@ -12430,7 +12430,7 @@ _0800F90E: ldrb r0, [r4, 0xC] cmp r0, 0 bne _0800F920 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _0800F920 @@ -12536,7 +12536,7 @@ _0800F9EA: orrs r0, r3 str r0, [r1] movs r4, 0 - ldr r0, =gUnknown_020223C4 + ldr r0, =gBlockRecvBuffer mov r9, r0 mov r12, r2 mov r1, r8 @@ -12599,7 +12599,7 @@ _0800FA5C: beq _0800FA7E b _0800FC08 _0800FA7E: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0800FA88 @@ -12610,7 +12610,7 @@ _0800FA88: beq _0800FA90 b _0800FC08 _0800FA90: - ldr r0, =gUnknown_020223C4 + ldr r0, =gBlockRecvBuffer bl sub_8010A70 b _0800FC08 .pool @@ -12662,7 +12662,7 @@ _0800FB10: ldrb r2, [r7, 0xC] cmp r2, 0 bne _0800FB78 - ldr r3, =gUnknown_03003124 + ldr r3, =gReceivedRemoteLinkPlayers ldrb r0, [r3] mov r6, r8 adds r6, 0x1 @@ -13410,7 +13410,7 @@ sub_801011C: @ 801011C push {lr} bl rfu_clearAllSlot bl sub_800C048 - ldr r1, =gUnknown_03003124 + ldr r1, =gReceivedRemoteLinkPlayers movs r0, 0 strb r0, [r1] ldr r2, =gUnknown_03005000 @@ -13627,7 +13627,7 @@ sub_80102B8: @ 80102B8 bl sub_800FD14 strh r4, [r5] _080102E6: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r2, r0, 24 movs r1, 0 @@ -13734,7 +13734,7 @@ sub_8010390: @ 8010390 b _0801041C .pool _080103CC: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r2, r0, 24 movs r1, 0x1 @@ -14374,14 +14374,14 @@ _080108B6: bne _080108C2 b _080109D2 _080108C2: - bl sub_800A5B4 + bl ResetBlockReceivedFlags bl sub_800B348 b _08010948 _080108CC: ldrb r0, [r5, 0xC] cmp r0, 0x1 bne _0801090C - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080108E8 @@ -14471,7 +14471,7 @@ _0801096E: _08010984: adds r0, r6, 0 bl DestroyTask - ldr r1, =gUnknown_03003124 + ldr r1, =gReceivedRemoteLinkPlayers movs r0, 0x1 strb r0, [r1] ldr r0, =0x00000ce8 @@ -14607,7 +14607,7 @@ sub_8010A70: @ 8010A70 adds r1, r4, 0 bl CpuSet movs r0, 0 - bl sub_800A5EC + bl ResetBlockReceivedFlag _08010A9C: add sp, 0x4 pop {r4,r5} @@ -14683,7 +14683,7 @@ _08010B40: b _08010CF0 _08010B4A: adds r0, r4, 0 - bl sub_800A5EC + bl ResetBlockReceivedFlag movs r0, 0xF0 lsls r0, 7 bl sub_800FD14 @@ -14702,7 +14702,7 @@ _08010B6A: b _08010C52 .pool _08010B78: - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 lsrs r0, 24 asrs r0, r4 @@ -14713,9 +14713,9 @@ _08010B78: b _08010CF0 _08010B8C: adds r0, r4, 0 - bl sub_800A5EC + bl ResetBlockReceivedFlag lsls r2, r4, 8 - ldr r0, =gUnknown_020223C4 + ldr r0, =gBlockRecvBuffer adds r2, r0 ldr r1, =gLinkPlayers lsls r0, r4, 3 @@ -14799,7 +14799,7 @@ _08010C20: ldr r1, =gUnknown_020228C4 movs r0, 0 movs r2, 0xA0 - bl link_0800A448 + bl SendBlock lsls r0, 24 cmp r0, 0 beq _08010CF0 @@ -14833,7 +14833,7 @@ _08010C94: lsls r0, 24 cmp r0, 0 beq _08010CF0 - bl sub_800A550 + bl GetBlockReceivedStatus movs r1, 0x1 ands r1, r0 cmp r1, 0 @@ -14841,11 +14841,11 @@ _08010C94: mov r0, sp movs r4, 0 strh r4, [r0] - ldr r1, =gUnknown_020223C4 + ldr r1, =gBlockRecvBuffer ldr r2, =0x0100007e bl CpuSet movs r0, 0 - bl sub_800A5EC + bl ResetBlockReceivedFlag ldr r1, =gUnknown_03005000 ldr r5, =0x00000ce8 adds r0, r1, r5 @@ -14924,7 +14924,7 @@ _08010D56: ldr r1, =gUnknown_020228C4 movs r0, 0 movs r2, 0x3C - bl link_0800A448 + bl SendBlock b _08010D7A .pool _08010D70: @@ -14938,17 +14938,17 @@ _08010D7A: strh r0, [r4, 0x8] b _08010DA6 _08010D82: - bl sub_800A550 + bl GetBlockReceivedStatus movs r4, 0x1 adds r1, r4, 0 ands r1, r0 cmp r1, 0 beq _08010DA6 - ldr r0, =gUnknown_020223C4 + ldr r0, =gBlockRecvBuffer bl sub_8010A14 movs r0, 0 - bl sub_800A5EC - ldr r0, =gUnknown_03003124 + bl ResetBlockReceivedFlag + ldr r0, =gReceivedRemoteLinkPlayers strb r4, [r0] adds r0, r5, 0 bl DestroyTask @@ -15290,7 +15290,7 @@ _08011048: strb r0, [r1, 0x3] adds r4, 0x1 _08011054: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r4, r0 @@ -15701,7 +15701,7 @@ _0801136C: bics r3, r2 adds r2, r3, 0 strb r2, [r1] - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0x1 bne _080113B0 @@ -15912,7 +15912,7 @@ _08011544: movs r1, 0x5 movs r2, 0x5 bl nullsub_5 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0x1 bne _080115DE @@ -16397,7 +16397,7 @@ _08011958: ldrb r0, [r2, 0xC] cmp r0, 0x1 bne _08011996 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0x1 bne _080119B4 @@ -16423,7 +16423,7 @@ _08011996: ldrb r0, [r0] cmp r0, 0x2 beq _080119B4 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0x1 bne _080119B4 @@ -17502,7 +17502,7 @@ sub_801229C: @ 801229C push {r4-r7,lr} mov r7, r8 push {r7} - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 lsrs r0, 24 movs r1, 0x1C @@ -18913,7 +18913,7 @@ _08012F14: strb r0, [r6, 0xC] b _08012F50 _08012F22: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _08012F50 @@ -19861,7 +19861,7 @@ _080137A6: b _08013A86 .pool _080137C4: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _0801387A @@ -20806,11 +20806,11 @@ _08013FDE: adds r1, r0 movs r0, 0 movs r2, 0x64 - bl link_0800A448 + bl SendBlock b _080140BC .pool _08013FFC: - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 lsrs r0, 24 cmp r0, 0x3 @@ -20822,13 +20822,13 @@ _08013FFC: eors r1, r2 lsls r1, 24 lsrs r1, 16 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 movs r2, 0x64 bl memcpy movs r0, 0x32 bl IncrementGameStat - bl sub_800A5B4 + bl ResetBlockReceivedFlags b _0801405A .pool _08014038: @@ -20843,7 +20843,7 @@ _08014038: movs r0, 0 adds r1, r4, 0 movs r2, 0xDC - bl link_0800A448 + bl SendBlock lsls r0, 24 cmp r0, 0 beq _080140BC @@ -20854,7 +20854,7 @@ _0801405A: b _080140BC .pool _08014070: - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 lsrs r0, 24 cmp r0, 0x3 @@ -20866,12 +20866,12 @@ _08014070: eors r1, r0 lsls r1, 24 lsrs r1, 16 - ldr r0, =gUnknown_020223C4 + ldr r0, =gBlockRecvBuffer adds r1, r0 adds r0, r4, 0 movs r2, 0xD8 bl memcpy - bl sub_800A5B4 + bl ResetBlockReceivedFlags ldr r1, =gUnknown_02032298 strb r7, [r1] movs r0, 0x6 @@ -20925,7 +20925,7 @@ _08014114: strh r0, [r4, 0x8] b _0801419E _0801411C: - bl sub_800A550 + bl GetBlockReceivedStatus adds r4, r0, 0 bl sub_800A9D8 lsls r4, 24 @@ -20938,7 +20938,7 @@ _0801411C: .pool _08014138: lsls r1, r4, 8 - ldr r0, =gUnknown_020223C4 + ldr r0, =gBlockRecvBuffer adds r3, r1, r0 movs r0, 0x64 muls r0, r4 @@ -20950,12 +20950,12 @@ _08014138: adds r5, 0x1C adds r4, 0x1 _08014152: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r4, r0 blt _08014138 - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r0, 0x2 @@ -20965,7 +20965,7 @@ _08014152: eors r0, r1 lsls r0, 24 lsrs r0, 16 - ldr r1, =gUnknown_020223C4 + ldr r1, =gBlockRecvBuffer adds r3, r0, r1 adds r0, r3, 0 adds r0, 0x60 @@ -20976,7 +20976,7 @@ _08014152: _08014190: bl sub_801B940 _08014194: - bl sub_800A5B4 + bl ResetBlockReceivedFlags adds r0, r6, 0 bl DestroyTask _0801419E: @@ -21117,7 +21117,7 @@ sub_8014290: @ 8014290 asrs r5, 24 str r5, [sp] adds r3, r4, 0 - bl warp1_set + bl Overworld_SetWarpDestination ldr r0, [r6] movs r1, 0x4 ldrsb r1, [r0, r1] @@ -21159,7 +21159,7 @@ sub_8014304: @ 8014304 strh r1, [r0] ldr r0, =0x00004087 bl VarSet - bl sub_8009FCC + bl GetLinkPlayerCount ldr r1, =gUnknown_03005DB8 strb r0, [r1] bl GetMultiplayerId @@ -21182,7 +21182,7 @@ sub_8014304: @ 8014304 adds r0, r4, 0 adds r1, r5, 0 mov r3, r8 - bl warp1_set + bl Overworld_SetWarpDestination bl warp_in add sp, 0x4 pop {r3} @@ -21665,7 +21665,7 @@ _08014854: movs r0, 0x4 strh r0, [r7] bl sub_800E3A8 - bl sub_800A5B4 + bl ResetBlockReceivedFlags b _080149B2 .pool _080148B8: @@ -21723,7 +21723,7 @@ _08014934: movs r0, 0 adds r1, r2, 0 movs r2, 0xE - bl link_0800A448 + bl SendBlock lsls r0, 24 cmp r0, 0 beq _080149B2 @@ -21731,13 +21731,13 @@ _08014934: strh r0, [r7] b _080149B2 _0801494A: - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 lsrs r0, 24 cmp r0, 0x3 bne _080149B2 - bl sub_800A5B4 - ldr r0, =gUnknown_020223C4 + bl ResetBlockReceivedFlags + ldr r0, =gBlockRecvBuffer movs r2, 0x80 lsls r2, 1 adds r1, r0, r2 @@ -21766,7 +21766,7 @@ _08014992: strh r0, [r7] b _080149B2 _0801499C: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _080149B2 @@ -22316,7 +22316,7 @@ _08014E8C: strb r0, [r5, 0xC] b _08014EF2 _08014E92: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _08014EF2 @@ -22636,7 +22636,7 @@ _08015180: b _080152A0 .pool _080151A4: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080151C2 @@ -23002,7 +23002,7 @@ _080154E0: b _08015604 .pool _08015504: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _08015522 @@ -23714,7 +23714,7 @@ _08015BB8: movs r0, 0x40 strb r0, [r1] _08015BBE: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _08015BCA @@ -23750,7 +23750,7 @@ _08015C24: movs r0, 0x5 bl _08016876 _08015C2A: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _08015C36 @@ -23785,7 +23785,7 @@ _08015C54: bne _08015C78 bl _08016878 _08015C78: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _08015C94 @@ -23918,7 +23918,7 @@ _08015DA6: bl _08016876 .pool _08015DD0: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _08015DF4 @@ -24212,7 +24212,7 @@ _08016084: movs r0, 0x1E bl sub_8015664 _08016092: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0801609E @@ -24241,7 +24241,7 @@ _080160C6: movs r0, 0x2 bl _08016876 _080160DA: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _080160E4 @@ -24452,7 +24452,7 @@ _080162D4: movs r0, 0x24 b _08016876 _080162DC: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r4, [r0] cmp r4, 0 beq _080162E6 @@ -28312,7 +28312,7 @@ _080181BC: sub_80181CC: @ 80181CC push {lr} bl ScriptContext2_Enable - bl sub_80983E8 + bl ScriptFreezeMapObjects pop {r0} bx r0 thumb_func_end sub_80181CC @@ -30478,7 +30478,7 @@ _08019406: strb r0, [r5, 0x8] b _08019922 _0801940C: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _0801942C @@ -30646,7 +30646,7 @@ _0801956A: strb r0, [r5, 0x8] b _08019922 _08019574: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _0801957E @@ -30981,7 +30981,7 @@ _080197EE: strb r0, [r5, 0x8] b _08019922 _080197F8: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _08019810 @@ -31050,7 +31050,7 @@ _08019884: b _08019922 .pool _080198A0: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _08019922 @@ -31292,7 +31292,7 @@ flag_clear_x63: @ 8019A64 adds r0, r1 lsls r0, 16 lsrs r0, 16 - bl FlagReset + bl FlagClear pop {r0} bx r0 .pool @@ -33417,7 +33417,7 @@ _0801AB1E: lsls r2, 4 adds r1, r2, 0 strh r1, [r0] - ldr r0, =sub_8036760 + ldr r0, =CB2_InitBattle bl SetMainCallback2 pop {r4-r7} pop {r0} @@ -33741,7 +33741,7 @@ _0801AE7A: ldr r1, =gUnknown_020228C4 movs r0, 0 movs r2, 0x20 - bl link_0800A448 + bl SendBlock ldr r1, =gMain movs r2, 0x87 lsls r2, 3 @@ -33749,14 +33749,14 @@ _0801AE7A: b _0801AF8A .pool _0801AE98: - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 lsrs r0, 24 cmp r0, 0x3 beq _0801AEA6 b _0801AFAE _0801AEA6: - ldr r1, =gUnknown_020223C4 + ldr r1, =gBlockRecvBuffer ldrh r0, [r1] cmp r0, 0x51 bne _0801AEE0 @@ -33782,7 +33782,7 @@ _0801AEA6: .pool _0801AEE0: bl sub_800AC34 - ldr r4, =gUnknown_020223C4 + ldr r4, =gBlockRecvBuffer bl GetMultiplayerId lsls r0, 24 lsrs r0, 16 @@ -33805,7 +33805,7 @@ _0801AF0C: movs r1, 0x8 _0801AF16: strb r1, [r0] - bl sub_800A5B4 + bl ResetBlockReceivedFlags b _0801AFAE .pool _0801AF24: @@ -33842,7 +33842,7 @@ _0801AF58: b _0801AFAE .pool _0801AF7C: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0801AFAE @@ -39072,7 +39072,7 @@ sub_801D938: @ 801D938 adds r3, r0, 0 adds r0, r1, 0 lsls r3, 8 - ldr r1, =gUnknown_020223C4 + ldr r1, =gBlockRecvBuffer adds r3, r1 adds r1, r3, 0 bl memcpy @@ -39085,7 +39085,7 @@ sub_801D938: @ 801D938 sub_801D954: @ 801D954 push {r4,lr} adds r4, r0, 0 - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 lsrs r0, 24 asrs r0, r4 @@ -39108,7 +39108,7 @@ sub_801D978: @ 801D978 push {lr} lsls r0, 24 lsrs r0, 24 - bl sub_800A5EC + bl ResetBlockReceivedFlag pop {r0} bx r0 thumb_func_end sub_801D978 @@ -39273,7 +39273,7 @@ _0801DA7C: movs r0, 0 mov r1, sp movs r2, 0x8 - bl link_0800A448 + bl SendBlock b _0801DB3E .pool _0801DAC8: @@ -39300,7 +39300,7 @@ _0801DAC8: lsls r2, r0, 16 lsrs r2, 16 movs r0, 0 - bl link_0800A448 + bl SendBlock ldrh r0, [r4, 0x10] adds r0, 0x1 strh r0, [r4, 0x10] @@ -39310,7 +39310,7 @@ _0801DB08: adds r1, r3 movs r0, 0 movs r2, 0xFC - bl link_0800A448 + bl SendBlock ldrh r0, [r4, 0x10] adds r0, 0x1 strh r0, [r4, 0x10] @@ -39697,7 +39697,7 @@ sub_801DDD0: @ 801DDD0 strb r5, [r4, 0x16] movs r0, 0xFF strb r0, [r4, 0x1A] - bl sub_8009FCC + bl GetLinkPlayerCount strb r0, [r4, 0xD] bl GetMultiplayerId strb r0, [r4, 0x13] @@ -39942,7 +39942,7 @@ _0801DFE0: adds r1, r0 movs r0, 0 movs r2, 0x28 - bl link_0800A448 + bl SendBlock lsls r0, 24 cmp r0, 0 beq _0801E028 @@ -40416,7 +40416,7 @@ _0801E3D4: adds r1, r0 movs r0, 0 movs r2, 0x28 - bl link_0800A448 + bl SendBlock lsls r0, 24 cmp r0, 0 beq _0801E414 @@ -40432,14 +40432,14 @@ _0801E410: _0801E412: strh r0, [r1, 0x6] _0801E414: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0801E458 b _0801E42C .pool _0801E424: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0801E438 @@ -40556,7 +40556,7 @@ _0801E50C: adds r1, r0 movs r0, 0 movs r2, 0x28 - bl link_0800A448 + bl SendBlock lsls r0, 24 cmp r0, 0 beq _0801E5BC @@ -40564,7 +40564,7 @@ _0801E50C: b _0801E59A .pool _0801E540: - bl sub_800A550 + bl GetBlockReceivedStatus movs r1, 0x1 ands r1, r0 cmp r1, 0 @@ -40599,7 +40599,7 @@ _0801E584: adds r0, 0x1 strh r0, [r1, 0xA] _0801E590: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0801E5BC @@ -40683,7 +40683,7 @@ _0801E62E: adds r0, 0x1 strh r0, [r1, 0xA] _0801E638: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0801E662 @@ -40798,7 +40798,7 @@ _0801E724: adds r0, 0x1 strh r0, [r1, 0xA] _0801E730: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0801E75C @@ -40849,7 +40849,7 @@ _0801E784: .4byte _0801E802 .4byte _0801E820 _0801E798: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0801E7AC @@ -40883,7 +40883,7 @@ _0801E7C0: adds r1, r0 movs r0, 0 movs r2, 0x28 - bl link_0800A448 + bl SendBlock lsls r0, 24 cmp r0, 0 beq _0801E830 @@ -42276,7 +42276,7 @@ _0801F2E0: .4byte _0801F494 .4byte _0801F438 _0801F300: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0801F30A @@ -42285,7 +42285,7 @@ _0801F30A: movs r0, 0x1 strh r0, [r4] _0801F30E: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 adds r2, r0, 0 @@ -42304,7 +42304,7 @@ _0801F30E: b _0801F4C4 .pool _0801F33C: - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x6] @@ -42361,11 +42361,11 @@ _0801F3A2: strh r1, [r4, 0x4] lsls r0, r1, 24 lsrs r0, 24 - bl sub_800A5EC + bl ResetBlockReceivedFlag movs r1, 0x2 ldrsh r0, [r4, r1] lsls r0, 8 - ldr r1, =gUnknown_020223C4 + ldr r1, =gBlockRecvBuffer adds r0, r1 ldrb r0, [r0] subs r0, 0x1 @@ -42406,7 +42406,7 @@ _0801F3F6: movs r2, 0x2 ldrsh r1, [r4, r2] lsls r1, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 bl sub_801EFF8 cmp r0, 0 @@ -42446,7 +42446,7 @@ _0801F448: ldrsh r0, [r4, r3] cmp r0, 0 beq _0801F47C - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r0, 0x2 @@ -45486,7 +45486,7 @@ sub_8020C70: @ 8020C70 adds r4, r0, 0 movs r0, 0 mov r8, r0 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _08020C8E @@ -45504,7 +45504,7 @@ _08020C8E: b _08020CF8 .pool _08020CAC: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 mov r8, r0 @@ -49731,7 +49731,7 @@ _08022F7A: movs r0, 0 adds r1, r4, 0 movs r2, 0x2 - bl link_0800A448 + bl SendBlock b _08023060 _08022FAA: bl sub_800A520 @@ -49742,7 +49742,7 @@ _08022FAA: strh r0, [r5, 0x10] b _08023060 _08022FBA: - bl sub_800A550 + bl GetBlockReceivedStatus ldr r2, =gUnknown_082F4448 ldrb r4, [r5, 0x9] subs r1, r4, 0x2 @@ -49755,7 +49755,7 @@ _08022FBA: movs r3, 0 cmp r3, r4 bcs _0802301E - ldr r7, =gUnknown_020223C4 + ldr r7, =gBlockRecvBuffer movs r6, 0 ldr r4, =gUnknown_0858AB24 _08022FDC: @@ -49796,7 +49796,7 @@ _08022FF6: _0802301E: movs r0, 0 strh r0, [r5, 0x10] - bl sub_800A5B4 + bl ResetBlockReceivedFlags movs r1, 0x18 ldrsh r0, [r5, r1] lsls r0, 8 @@ -51445,7 +51445,7 @@ _08023D12: movs r0, 0 adds r1, r4, 0 movs r2, 0x2 - bl link_0800A448 + bl SendBlock b _0802402E _08023D2A: bl sub_800A520 @@ -51456,7 +51456,7 @@ _08023D2A: _08023D36: b _08024004 _08023D38: - bl sub_800A550 + bl GetBlockReceivedStatus ldr r2, =gUnknown_082F4448 ldrb r3, [r7, 0x9] subs r1, r3, 0x2 @@ -51474,7 +51474,7 @@ _08023D50: adds r4, 0x42 cmp r8, r3 bcs _08023D7E - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer _08023D5E: mov r3, r8 lsls r1, r3, 5 @@ -51496,7 +51496,7 @@ _08023D7E: movs r0, 0 strh r0, [r7, 0x10] strh r0, [r4] - bl sub_800A5B4 + bl ResetBlockReceivedFlags ldrb r0, [r7, 0x8] cmp r0, 0 bne _08023D9C @@ -51788,7 +51788,7 @@ _08023FC4: movs r0, 0 ldr r1, [sp, 0xC] movs r2, 0x30 - bl link_0800A448 + bl SendBlock b _0802402E _08023FD0: bl sub_800A520 @@ -51797,7 +51797,7 @@ _08023FD0: beq _08024034 b _08024004 _08023FDC: - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -51808,11 +51808,11 @@ _08023FDC: movs r1, 0 movs r2, 0x30 bl memset - ldr r1, =gUnknown_020223C4 + ldr r1, =gBlockRecvBuffer adds r0, r4, 0 movs r2, 0x30 bl memcpy - bl sub_800A5B4 + bl ResetBlockReceivedFlags _08024004: movs r0, 0 strh r0, [r7, 0x10] @@ -52207,7 +52207,7 @@ _08024306: strh r5, [r0] movs r0, 0 movs r2, 0x2 - bl link_0800A448 + bl SendBlock b _080243AC _08024328: bl sub_800A520 @@ -52217,7 +52217,7 @@ _08024328: strh r5, [r4, 0x10] b _080243AC _08024336: - bl sub_800A550 + bl GetBlockReceivedStatus ldr r2, =gUnknown_082F4448 ldrb r3, [r4, 0x9] subs r1, r3, 0x2 @@ -52234,7 +52234,7 @@ _08024336: cmp r5, r3 bcs _08024374 adds r1, r6, 0 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer _0802435C: lsls r0, r5, 8 adds r0, r2 @@ -52264,7 +52264,7 @@ _08024390: movs r2, 0 bl sub_8022BEC _0802439A: - bl sub_800A5B4 + bl ResetBlockReceivedFlags movs r1, 0 movs r0, 0 strh r0, [r7] @@ -52485,7 +52485,7 @@ _08024528: bl sub_800AC34 b _08024558 _08024538: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0802455E @@ -53023,7 +53023,7 @@ sub_802493C: @ 802493C ldr r1, =gUnknown_03000DB0 movs r0, 0 str r0, [r1] - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _08024A10 @@ -53271,7 +53271,7 @@ _08024B2C: _08024B6A: ldr r0, [sp, 0x10] strb r1, [r0] - bl sub_8009FCC + bl GetLinkPlayerCount mov r1, r8 strb r0, [r1] bl GetMultiplayerId @@ -53382,7 +53382,7 @@ _08024C5A: lsls r0, 24 cmp r0, 0 beq _08024D40 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _08024D20 @@ -53989,7 +53989,7 @@ _0802516C: thumb_func_start sub_8025170 sub_8025170: @ 8025170 push {r4,lr} - bl sub_800A550 + bl GetBlockReceivedStatus adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 @@ -54001,7 +54001,7 @@ sub_8025170: @ 8025170 movs r0, 0 b _08025192 _0802518C: - bl sub_800A5B4 + bl ResetBlockReceivedFlags movs r0, 0x1 _08025192: pop {r4} @@ -54031,7 +54031,7 @@ _080251BA: adds r1, 0x4A movs r0, 0 movs r2, 0x3C - bl link_0800A448 + bl SendBlock lsls r0, 24 cmp r0, 0 beq _08025226 @@ -54115,7 +54115,7 @@ _08025252: adds r1, r2, r1 movs r0, 0 movs r2, 0x3C - bl link_0800A448 + bl SendBlock lsls r0, 24 cmp r0, 0 beq _08025316 @@ -54139,7 +54139,7 @@ _08025282: _0802528E: ldr r0, [r5] adds r0, 0x4A - ldr r1, =gUnknown_020223C4 + ldr r1, =gBlockRecvBuffer movs r2, 0x3C bl memcpy ldr r1, [r5] @@ -54265,7 +54265,7 @@ _0802539C: strb r0, [r1] movs r0, 0 movs r2, 0x1 - bl link_0800A448 + bl SendBlock lsls r0, 24 cmp r0, 0 beq _08025466 @@ -54302,7 +54302,7 @@ _080253DC: adds r3, r1, 0 movs r5, 0x86 lsls r5, 1 - ldr r4, =gUnknown_020223C4 + ldr r4, =gBlockRecvBuffer _080253FA: ldr r1, [r3] adds r1, r2, r1 @@ -54452,7 +54452,7 @@ _0802553C: strb r0, [r1] movs r0, 0 movs r2, 0x1 - bl link_0800A448 + bl SendBlock lsls r0, 24 cmp r0, 0 beq _0802563C @@ -54486,7 +54486,7 @@ _08025578: adds r3, r1, 0 movs r5, 0x86 lsls r5, 1 - ldr r4, =gUnknown_020223C4 + ldr r4, =gBlockRecvBuffer _08025596: ldr r1, [r3] adds r1, r2, r1 @@ -54617,7 +54617,7 @@ _08025688: strb r0, [r1, 0x10] b _080256A0 _08025692: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _080256A0 @@ -54829,7 +54829,7 @@ _0802585C: bl sub_802903C ldr r0, [r4] bl sub_8024A30 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _08025882 @@ -54946,7 +54946,7 @@ _0802593E: adds r1, r0 movs r0, 0 movs r2, 0x1 - bl link_0800A448 + bl SendBlock lsls r0, 24 cmp r0, 0 beq _080259E8 @@ -54976,7 +54976,7 @@ _0802597E: cmp r2, r0 bcs _080259C4 adds r3, r1, 0 - ldr r5, =gUnknown_020223C4 + ldr r5, =gBlockRecvBuffer ldr r4, =0x0000318c _0802599A: ldr r0, [r3] @@ -57700,7 +57700,7 @@ _08026EF6: adds r4, 0xC adds r5, 0x1 _08026EFE: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r5, r0 @@ -58643,7 +58643,7 @@ sub_8027660: @ 8027660 push {lr} lsls r0, 24 lsrs r2, r0, 24 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0802768C @@ -59511,7 +59511,7 @@ _08027C76: thumb_func_start sub_8027D20 sub_8027D20: @ 8027D20 push {lr} - bl sub_8009FCC + bl GetLinkPlayerCount ldr r1, =gUnknown_02022C98 ldr r1, [r1] adds r1, 0x24 @@ -64818,7 +64818,7 @@ sub_802A9A8: @ 802A9A8 adds r6, r1, 0 lsls r0, 16 lsrs r7, r0, 16 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _0802AA3C @@ -64891,7 +64891,7 @@ sub_802AA48: @ 802AA48 sub_802AA60: @ 802AA60 push {r4,lr} adds r4, r0, 0 - bl sub_8009FCC + bl GetLinkPlayerCount movs r2, 0 strb r0, [r4, 0x5] adds r1, r4, 0 @@ -67232,7 +67232,7 @@ _0802BD02: b _0802BD24 .pool _0802BD14: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0802BD24 @@ -68775,7 +68775,7 @@ _0802C8A4: thumb_func_start sub_802C8AC sub_802C8AC: @ 802C8AC push {lr} - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 pop {r1} @@ -71211,7 +71211,7 @@ sub_802DBF8: @ 802DBF8 movs r6, 0 cmp r6, r10 bge _0802DC62 - ldr r0, =gUnknown_08300D38 + ldr r0, =gMonFrontPicCoords mov r9, r0 ldr r1, =gUnknown_02022D00 mov r8, r1 @@ -73081,7 +73081,7 @@ sub_802EAB0: @ 802EAB0 lsls r1, 3 ldr r0, =gTasks + 0x8 adds r4, r1, r0 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _0802EB14 diff --git a/asm/macros/event.s b/asm/macros/event.s index ee9c42c97..b5fefb925 100644 --- a/asm/macros/event.s +++ b/asm/macros/event.s @@ -241,14 +241,14 @@ @ Calls a special function; that is, a piece of ASM code designed for use by scripts and listed in a table of pointers. .macro special function .byte 0x25 - .2byte \function + .2byte SPECIAL_\function .endm @ Calls a special function. That function's output (if any) will be written to the variable you specify. .macro specialval output, function .byte 0x26 .2byte \output - .2byte \function + .2byte SPECIAL_\function .endm @ Blocks script execution until a command or ASM code manually unblocks it. Generally used with specific commands and specials. If this command runs, and a subsequent command or piece of ASM does not unblock state, the script will remain blocked indefinitely (essentially a hang). diff --git a/asm/mail.s b/asm/mail.s deleted file mode 100644 index 5f76a5ef0..000000000 --- a/asm/mail.s +++ /dev/null @@ -1,1035 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_8121478 -sub_8121478: @ 8121478 - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r7, r1, 0 - lsls r2, 24 - lsrs r6, r2, 24 - ldr r4, =gUnknown_0203A134 - ldr r0, =0x0000222c - bl AllocZeroed - str r0, [r4] - ldr r1, =0x0000021d - adds r0, r1 - movs r1, 0x2 - strb r1, [r0] - ldr r0, [r4] - ldr r2, =0x0000021e - adds r0, r2 - movs r1, 0x1 - strb r1, [r0] - ldr r4, [r4] - movs r3, 0x88 - lsls r3, 2 - adds r1, r4, r3 - ldr r0, =CopyEasyChatWord - str r0, [r1] - movs r0, 0x89 - lsls r0, 2 - adds r1, r4, r0 - ldr r0, =ConvertEasyChatWordsToString - str r0, [r1] - ldrh r1, [r5, 0x20] - adds r0, r1, 0 - subs r0, 0x79 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xB - bhi _081214E8 - subs r1, 0x79 - subs r2, 0x4 - adds r0, r4, r2 - strb r1, [r0] - b _081214F2 - .pool -_081214E8: - ldr r3, =0x0000021a - adds r1, r4, r3 - movs r0, 0 - strb r0, [r1] - movs r6, 0 -_081214F2: - ldr r0, =gUnknown_0203A134 - ldr r1, [r0] - ldr r2, =0x0000021e - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _08121504 - cmp r0, 0x1 - beq _0812152C -_08121504: - movs r3, 0x8A - lsls r3, 2 - adds r2, r1, r3 - subs r3, 0xE - adds r0, r1, r3 - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, =gUnknown_0859F3B4 - b _08121540 - .pool -_0812152C: - movs r0, 0x8A - lsls r0, 2 - adds r2, r1, r0 - ldr r3, =0x0000021a - adds r0, r1, r3 - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, =gUnknown_0859F458 -_08121540: - adds r0, r1 - str r0, [r2] - ldrh r0, [r5, 0x1E] - mov r1, sp - bl sub_80D45E8 - lsls r0, 16 - ldr r1, =0xffff0000 - adds r0, r1 - movs r1, 0xCD - lsls r1, 17 - cmp r0, r1 - bhi _081215AC - ldr r1, =gUnknown_0203A134 - ldr r2, [r1] - ldr r3, =0x0000021a - adds r0, r2, r3 - ldrb r0, [r0] - adds r3, r1, 0 - cmp r0, 0x6 - beq _0812158C - cmp r0, 0x9 - beq _0812159C - ldr r0, =0x0000021b - adds r1, r2, r0 - movs r0, 0 - strb r0, [r1] - b _081215BA - .pool -_0812158C: - ldr r0, =0x0000021b - adds r1, r2, r0 - movs r0, 0x1 - strb r0, [r1] - b _081215BA - .pool -_0812159C: - ldr r0, =0x0000021b - adds r1, r2, r0 - movs r0, 0x2 - strb r0, [r1] - b _081215BA - .pool -_081215AC: - ldr r0, =gUnknown_0203A134 - ldr r1, [r0] - ldr r2, =0x0000021b - adds r1, r2 - movs r2, 0 - strb r2, [r1] - adds r3, r0, 0 -_081215BA: - ldr r1, [r3] - movs r3, 0x85 - lsls r3, 2 - adds r0, r1, r3 - str r5, [r0] - movs r2, 0x83 - lsls r2, 2 - adds r0, r1, r2 - str r7, [r0] - adds r3, 0x4 - adds r0, r1, r3 - strb r6, [r0] - ldr r0, =sub_81219F0 - bl SetMainCallback2 - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8121478 - - thumb_func_start sub_81215EC -sub_81215EC: @ 81215EC - push {r4-r6,lr} - sub sp, 0xC - ldr r0, =gMain - movs r1, 0x87 - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x12 - bls _08121600 - b _081219E2 -_08121600: - lsls r0, 2 - ldr r1, =_08121614 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08121614: - .4byte _08121660 - .4byte _0812166E - .4byte _08121688 - .4byte _0812168E - .4byte _08121694 - .4byte _0812169A - .4byte _081216F4 - .4byte _08121730 - .4byte _08121740 - .4byte _08121774 - .4byte _08121782 - .4byte _081217D8 - .4byte _081217EC - .4byte _081218B0 - .4byte _081218CC - .4byte _081218EC - .4byte _081218F6 - .4byte _08121910 - .4byte _08121980 -_08121660: - movs r0, 0 - bl SetVBlankCallback - bl remove_some_task - movs r0, 0 - b _081216EC -_0812166E: - add r1, sp, 0x8 - movs r0, 0 - strh r0, [r1] - movs r1, 0xE0 - lsls r1, 19 - ldr r2, =0x01000200 - add r0, sp, 0x8 - bl CpuSet - b _081219D4 - .pool -_08121688: - bl ResetPaletteFade - b _081219D4 -_0812168E: - bl ResetTasks - b _081219D4 -_08121694: - bl ResetSpriteData - b _081219D4 -_0812169A: - bl FreeAllSpritePalettes - bl reset_temp_tile_data_buffers - movs r0, 0x10 - movs r1, 0 - bl SetGpuReg - movs r0, 0x12 - movs r1, 0 - bl SetGpuReg - movs r0, 0x14 - movs r1, 0 - bl SetGpuReg - movs r0, 0x16 - movs r1, 0 - bl SetGpuReg - movs r0, 0x1A - movs r1, 0 - bl SetGpuReg - movs r0, 0x18 - movs r1, 0 - bl SetGpuReg - movs r0, 0x1C - movs r1, 0 - bl SetGpuReg - movs r0, 0x1E - movs r1, 0 - bl SetGpuReg - movs r0, 0x50 - movs r1, 0 - bl SetGpuReg - movs r0, 0x52 -_081216EC: - movs r1, 0 - bl SetGpuReg - b _081219D4 -_081216F4: - movs r0, 0 - bl ResetBgsAndClearDma3BusyFlags - ldr r1, =gUnknown_0859F290 - movs r0, 0 - movs r2, 0x3 - bl InitBgsFromTemplates - ldr r4, =gUnknown_0203A134 - ldr r1, [r4] - movs r2, 0x8B - lsls r2, 2 - adds r1, r2 - movs r0, 0x1 - bl SetBgTilemapBuffer - ldr r1, [r4] - ldr r0, =0x0000122c - adds r1, r0 - movs r0, 0x2 - bl SetBgTilemapBuffer - b _081219D4 - .pool -_08121730: - ldr r0, =gUnknown_0859F29C - bl InitWindows - bl DeactivateAllTextPrinters - b _081219D4 - .pool -_08121740: - ldr r2, =gUnknown_0859F2B8 - ldr r0, =gUnknown_0203A134 - ldr r0, [r0] - ldr r1, =0x0000021a - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r2, 0x4 - adds r0, r2 - ldr r1, [r0] - movs r0, 0 - str r0, [sp] - movs r0, 0x1 - movs r2, 0 - movs r3, 0 - bl decompress_and_copy_tile_data_to_vram - b _081219D4 - .pool -_08121774: - bl free_temp_tile_data_buffers_if_possible - lsls r0, 24 - cmp r0, 0 - bne _08121780 - b _081219D4 -_08121780: - b _081219E2 -_08121782: - movs r5, 0x1E - str r5, [sp] - movs r4, 0x14 - str r4, [sp, 0x4] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl FillBgTilemapBufferRect_Palette0 - str r5, [sp] - str r4, [sp, 0x4] - movs r0, 0x2 - movs r1, 0x1 - movs r2, 0 - movs r3, 0 - bl FillBgTilemapBufferRect_Palette0 - ldr r2, =gUnknown_0859F2B8 - ldr r0, =gUnknown_0203A134 - ldr r0, [r0] - ldr r1, =0x0000021a - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r2, 0x8 - adds r0, r2 - ldr r1, [r0] - movs r0, 0x1 - movs r2, 0 - movs r3, 0 - bl CopyToBgTilemapBuffer - b _081219D4 - .pool -_081217D8: - movs r0, 0 - bl CopyBgTilemapBufferToVram - movs r0, 0x1 - bl CopyBgTilemapBufferToVram - movs r0, 0x2 - bl CopyBgTilemapBufferToVram - b _081219D4 -_081217EC: - bl sub_8098C64 - movs r1, 0xF0 - movs r2, 0x20 - bl LoadPalette - ldr r6, =gPlttBufferUnfaded - ldr r4, =gUnknown_0859F2B8 - ldr r0, =gUnknown_0203A134 - ldr r3, [r0] - ldr r2, =0x0000021a - adds r3, r2 - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x10] - subs r2, 0x26 - adds r0, r6, r2 - strh r1, [r0] - ldr r5, =gPlttBufferFaded - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0, 0x10] - adds r2, r5, r2 - strh r0, [r2] - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x12] - movs r2, 0xFB - lsls r2, 1 - adds r0, r6, r2 - strh r1, [r0] - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0, 0x12] - adds r2, r5, r2 - strh r0, [r2] - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldr r0, [r0] - movs r1, 0 - movs r2, 0x20 - bl LoadPalette - ldr r1, =gUnknown_0859F2B0 - ldr r0, =gSaveBlock2Ptr - ldr r2, [r0] - ldrb r0, [r2, 0x8] - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r6, 0x14] - ldrb r0, [r2, 0x8] - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r5, 0x14] - ldrb r0, [r2, 0x8] - lsls r0, 2 - adds r1, 0x2 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r6, 0x16] - ldrb r0, [r2, 0x8] - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r5, 0x16] - b _081219D4 - .pool -_081218B0: - ldr r0, =gUnknown_0203A134 - ldr r0, [r0] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _081218C2 - b _081219D4 -_081218C2: - bl sub_8121A1C - b _081219D4 - .pool -_081218CC: - ldr r0, =gUnknown_0203A134 - ldr r0, [r0] - movs r2, 0x86 - lsls r2, 2 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _081218DE - b _081219D4 -_081218DE: - bl sub_8121B1C - bl RunTextPrinters - b _081219D4 - .pool -_081218EC: - bl sub_8087598 - cmp r0, 0x1 - bne _081219D4 - b _081219E2 -_081218F6: - ldr r0, =sub_8121C50 - bl SetVBlankCallback - ldr r2, =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x8] - b _081219D4 - .pool -_08121910: - ldr r5, =gUnknown_0203A134 - ldr r0, [r5] - movs r1, 0x85 - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - ldrh r0, [r0, 0x1E] - bl sub_80D2E84 - lsls r0, 16 - lsrs r4, r0, 16 - ldr r0, [r5] - ldr r2, =0x0000021b - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0x1 - beq _08121940 - cmp r0, 0x2 - beq _08121958 - b _081219D4 - .pool -_08121940: - adds r0, r4, 0 - bl sub_80D2F68 - ldr r1, =SpriteCallbackDummy - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - adds r0, r4, 0 - movs r2, 0x60 - b _0812196A - .pool -_08121958: - adds r0, r4, 0 - bl sub_80D2F68 - ldr r1, =SpriteCallbackDummy - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - adds r0, r4, 0 - movs r2, 0x28 -_0812196A: - movs r3, 0x80 - bl sub_80D2D78 - ldr r1, [r5] - movs r2, 0x87 - lsls r2, 2 - adds r1, r2 - strb r0, [r1] - b _081219D4 - .pool -_08121980: - movs r1, 0x82 - lsls r1, 5 - movs r0, 0 - bl SetGpuReg - movs r0, 0 - bl ShowBg - movs r0, 0x1 - bl ShowBg - movs r0, 0x2 - bl ShowBg - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r2, =gPaletteFade - ldrb r1, [r2, 0x8] - movs r0, 0x7F - ands r0, r1 - strb r0, [r2, 0x8] - ldr r0, =gUnknown_0203A134 - ldr r0, [r0] - movs r1, 0x84 - lsls r1, 2 - adds r0, r1 - ldr r1, =sub_8121C98 - str r1, [r0] - movs r0, 0x1 - b _081219E4 - .pool -_081219D4: - ldr r1, =gMain - movs r2, 0x87 - lsls r2, 3 - adds r1, r2 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_081219E2: - movs r0, 0 -_081219E4: - add sp, 0xC - pop {r4-r6} - pop {r1} - bx r1 - .pool - thumb_func_end sub_81215EC - - thumb_func_start sub_81219F0 -sub_81219F0: @ 81219F0 - push {lr} -_081219F2: - bl sub_81215EC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08121A0C - ldr r0, =sub_8121C64 - bl SetMainCallback2 - b _08121A18 - .pool -_08121A0C: - bl sub_81221AC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081219F2 -_08121A18: - pop {r0} - bx r0 - thumb_func_end sub_81219F0 - - thumb_func_start sub_8121A1C -sub_8121A1C: @ 8121A1C - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r6, 0 - movs r5, 0 - ldr r2, =gUnknown_0203A134 - ldr r0, [r2] - movs r1, 0x8A - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - ldrb r0, [r0] - cmp r5, r0 - bcs _08121A8A - mov r8, r2 - adds r7, r1, 0 -_08121A3C: - lsls r0, r5, 6 - mov r1, r8 - ldr r2, [r1] - adds r0, r2, r0 - movs r3, 0x85 - lsls r3, 2 - adds r1, r2, r3 - lsls r3, r6, 1 - ldr r1, [r1] - adds r1, r3 - adds r2, r7 - ldr r2, [r2] - ldr r2, [r2, 0x8] - lsls r4, r5, 2 - adds r2, r4, r2 - ldr r2, [r2] - lsls r2, 30 - lsrs r2, 30 - movs r3, 0x1 - bl ConvertEasyChatWordsToString - mov r1, r8 - ldr r0, [r1] - adds r0, r7 - ldr r1, [r0] - ldr r0, [r1, 0x8] - adds r4, r0 - ldr r0, [r4] - lsls r0, 30 - lsrs r0, 30 - adds r0, r6, r0 - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - ldrb r1, [r1] - cmp r5, r1 - bcc _08121A3C -_08121A8A: - ldr r4, =gUnknown_0203A134 - ldr r1, [r4] - movs r2, 0x80 - lsls r2, 2 - adds r0, r1, r2 - movs r3, 0x85 - lsls r3, 2 - adds r1, r3 - ldr r1, [r1] - adds r1, 0x12 - bl StringCopy - adds r2, r0, 0 - ldr r1, [r4] - ldr r3, =0x0000021e - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _08121AF0 - ldr r1, =gText_FromSpace - adds r0, r2, 0 - bl StringCopy - ldr r0, [r4] - movs r1, 0x80 - lsls r1, 2 - adds r0, r1 - bl StringLength - ldr r2, [r4] - movs r3, 0x8A - lsls r3, 2 - adds r1, r2, r3 - ldr r1, [r1] - lsls r0, 16 - lsrs r0, 13 - subs r0, 0x60 - ldrb r1, [r1, 0x2] - subs r1, r0 - ldr r0, =0x00000219 - adds r2, r0 - strb r1, [r2] - b _08121B0C - .pool -_08121AF0: - movs r2, 0x80 - lsls r2, 2 - adds r0, r1, r2 - bl sub_81DB52C - ldr r0, [r4] - movs r3, 0x8A - lsls r3, 2 - adds r1, r0, r3 - ldr r1, [r1] - ldrb r1, [r1, 0x2] - ldr r2, =0x00000219 - adds r0, r2 - strb r1, [r0] -_08121B0C: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8121A1C - - thumb_func_start sub_8121B1C -sub_8121B1C: @ 8121B1C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x2C - movs r7, 0 - movs r0, 0 - bl PutWindowTilemap - movs r0, 0x1 - bl PutWindowTilemap - movs r0, 0 - movs r1, 0 - bl FillWindowPixelBuffer - movs r0, 0x1 - movs r1, 0 - bl FillWindowPixelBuffer - movs r6, 0 - ldr r1, =gUnknown_0203A134 - ldr r0, [r1] - movs r2, 0x8A - lsls r2, 2 - mov r10, r2 - add r0, r10 - ldr r0, [r0] - ldrb r0, [r0] - cmp r6, r0 - bcs _08121BCC - mov r9, r1 - mov r8, r10 -_08121B60: - mov r0, r9 - ldr r1, [r0] - lsls r0, r6, 6 - adds r5, r1, r0 - ldrb r0, [r5] - cmp r0, 0xFF - beq _08121BB8 - cmp r0, 0 - beq _08121BB8 - mov r2, r8 - adds r0, r1, r2 - ldr r1, [r0] - ldr r0, [r1, 0x8] - lsls r4, r6, 2 - adds r0, r4, r0 - ldr r2, [r0] - lsls r2, 24 - lsrs r2, 26 - ldrb r0, [r1, 0x4] - adds r2, r0 - lsls r2, 24 - lsrs r2, 24 - ldrb r3, [r1, 0x3] - adds r3, r7, r3 - lsls r3, 24 - lsrs r3, 24 - ldr r0, =gUnknown_0859F2AC - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - str r5, [sp, 0x8] - movs r1, 0x1 - bl box_print - mov r1, r9 - ldr r0, [r1] - add r0, r8 - ldr r0, [r0] - ldr r0, [r0, 0x8] - adds r4, r0 - ldrb r0, [r4, 0x1] - adds r0, r7, r0 - lsls r0, 24 - lsrs r7, r0, 24 -_08121BB8: - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - ldr r2, =gUnknown_0203A134 - ldr r0, [r2] - add r0, r10 - ldr r0, [r0] - ldrb r0, [r0] - cmp r6, r0 - bcc _08121B60 -_08121BCC: - ldr r1, =gText_FromSpace - add r0, sp, 0xC - bl StringCopy - ldr r4, =gUnknown_0203A134 - ldr r1, [r4] - movs r2, 0x80 - lsls r2, 2 - adds r1, r2 - bl StringCopy - ldr r0, [r4] - ldr r1, =0x00000219 - adds r0, r1 - ldrb r2, [r0] - movs r0, 0x1 - add r1, sp, 0xC - bl GetStringCenterAlignXOffset - adds r2, r0, 0 - adds r2, 0x68 - ldr r0, [r4] - movs r1, 0x8A - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - ldrb r3, [r0, 0x1] - adds r3, 0x58 - lsls r2, 24 - lsrs r2, 24 - lsls r3, 24 - lsrs r3, 24 - ldr r0, =gUnknown_0859F2AC - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - add r0, sp, 0xC - str r0, [sp, 0x8] - movs r0, 0 - movs r1, 0x1 - bl box_print - movs r0, 0 - movs r1, 0x3 - bl CopyWindowToVram - movs r0, 0x1 - movs r1, 0x3 - bl CopyWindowToVram - add sp, 0x2C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8121B1C - - thumb_func_start sub_8121C50 -sub_8121C50: @ 8121C50 - push {lr} - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - pop {r0} - bx r0 - thumb_func_end sub_8121C50 - - thumb_func_start sub_8121C64 -sub_8121C64: @ 8121C64 - push {r4,lr} - ldr r4, =gUnknown_0203A134 - ldr r0, [r4] - ldr r1, =0x0000021b - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08121C7C - bl AnimateSprites - bl BuildOamBuffer -_08121C7C: - ldr r0, [r4] - movs r1, 0x84 - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8121C64 - - thumb_func_start sub_8121C98 -sub_8121C98: @ 8121C98 - push {lr} - bl UpdatePaletteFade - lsls r0, 24 - cmp r0, 0 - bne _08121CB2 - ldr r0, =gUnknown_0203A134 - ldr r0, [r0] - movs r1, 0x84 - lsls r1, 2 - adds r0, r1 - ldr r1, =sub_8121CC0 - str r1, [r0] -_08121CB2: - pop {r0} - bx r0 - .pool - thumb_func_end sub_8121C98 - - thumb_func_start sub_8121CC0 -sub_8121CC0: @ 8121CC0 - push {lr} - sub sp, 0x4 - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _08121CEE - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, =gUnknown_0203A134 - ldr r0, [r0] - movs r1, 0x84 - lsls r1, 2 - adds r0, r1 - ldr r1, =sub_8121D00 - str r1, [r0] -_08121CEE: - add sp, 0x4 - pop {r0} - bx r0 - .pool - thumb_func_end sub_8121CC0 - - thumb_func_start sub_8121D00 -sub_8121D00: @ 8121D00 - push {r4,lr} - bl UpdatePaletteFade - lsls r0, 24 - cmp r0, 0 - bne _08121D88 - ldr r4, =gUnknown_0203A134 - ldr r0, [r4] - movs r1, 0x83 - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - bl SetMainCallback2 - ldr r1, [r4] - ldr r2, =0x0000021b - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x2 - bgt _08121D58 - cmp r0, 0x1 - blt _08121D58 - subs r2, 0x7 - adds r0, r1, r2 - ldr r0, [r0] - ldrh r0, [r0, 0x1E] - bl sub_80D2E84 - lsls r0, 16 - lsrs r0, 16 - bl sub_80D2FF0 - ldr r0, [r4] - movs r1, 0x87 - lsls r1, 2 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - bl sub_80D2EF8 -_08121D58: - ldr r4, =gUnknown_0203A134 - ldr r0, [r4] - ldr r2, =0x0000222c - movs r1, 0 - bl memset - bl ResetPaletteFade - movs r0, 0 - bl UnsetBgTilemapBuffer - movs r0, 0x1 - bl UnsetBgTilemapBuffer - movs r0, 0 - bl ResetBgsAndClearDma3BusyFlags - bl FreeAllWindowBuffers - ldr r0, [r4] - bl Free - movs r0, 0 - str r0, [r4] -_08121D88: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8121D00 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/main_menu.s b/asm/main_menu.s index 40466ae1b..6194f0487 100644 --- a/asm/main_menu.s +++ b/asm/main_menu.s @@ -119,11 +119,11 @@ InitMainMenu: @ 802F6F4 str r0, [r1, 0x8] ldr r0, [r1, 0x8] bl ResetPaletteFade - ldr r0, =gUnknown_082FF0A0 + ldr r0, =gMainMenuBgPal movs r1, 0 movs r2, 0x20 bl LoadPalette - ldr r0, =gUnknown_082FF0C0 + ldr r0, =gMainMenuTextPal movs r1, 0xF0 movs r2, 0x20 bl LoadPalette @@ -1914,7 +1914,7 @@ task_new_game_prof_birch_speech_1: @ 80307B0 movs r0, 0x54 movs r1, 0 bl SetGpuReg - ldr r0, =gUnknown_082FED3C + ldr r0, =gBirchIntroShadowGfx movs r1, 0xC0 lsls r1, 19 bl LZ77UnCompVram @@ -3679,7 +3679,7 @@ new_game_prof_birch_speech_part2_start: @ 8031678 str r0, [r1, 0x8] ldr r0, [r1, 0x8] bl ResetPaletteFade - ldr r0, =gUnknown_082FED3C + ldr r0, =gBirchIntroShadowGfx adds r1, r4, 0 bl LZ77UnCompVram ldr r0, =gUnknown_082FEEF0 @@ -3689,7 +3689,7 @@ new_game_prof_birch_speech_part2_start: @ 8031678 movs r1, 0 movs r2, 0x40 bl LoadPalette - ldr r0, =gUnknown_082FF01A + ldr r0, =gUnknown_082FF018+2 movs r1, 0x1 movs r2, 0x10 bl LoadPalette @@ -4459,11 +4459,11 @@ set_default_player_name: @ 8031DC4 adds r5, r1, 0 cmp r0, 0 bne _08031DE4 - ldr r1, =gUnknown_082FF128 + ldr r1, =gMalePresetNames b _08031DE6 .pool _08031DE4: - ldr r1, =gUnknown_082FF178 + ldr r1, =gFemalePresetNames _08031DE6: lsls r0, r2, 2 adds r0, r1 diff --git a/asm/map_obj_8097404.s b/asm/map_obj_8097404.s index 4ed8e3bcd..96ffc2254 100644 --- a/asm/map_obj_8097404.s +++ b/asm/map_obj_8097404.s @@ -205,8 +205,8 @@ _0809756C: .pool thumb_func_end npc_sync_anim_pause_bits - thumb_func_start sub_809757C -sub_809757C: @ 809757C + thumb_func_start UnfreezeMapObjects +UnfreezeMapObjects: @ 809757C push {r4,r5,lr} movs r4, 0 ldr r5, =gMapObjects @@ -231,7 +231,7 @@ _08097598: pop {r0} bx r0 .pool - thumb_func_end sub_809757C + thumb_func_end UnfreezeMapObjects thumb_func_start little_step @ void little_step(struct obj *object, u8 direction) @@ -1396,7 +1396,7 @@ oe_exec_and_other_stuff: @ 8097DD0 adds r0, r1, 0 lsls r4, 24 lsrs r4, 24 - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments adds r2, r1, 0x4 adds r3, r1, 0 adds r3, 0x8 @@ -1434,7 +1434,7 @@ DoRippleFieldEffect: @ 8097E14 adds r4, r1, 0 ldrb r0, [r0, 0x5] bl GetFieldObjectGraphicsInfo - ldr r2, =gFieldEffectSpawnParams + ldr r2, =gFieldEffectArguments movs r3, 0x20 ldrsh r1, [r4, r3] str r1, [r2] diff --git a/asm/map_obj_lock.s b/asm/map_obj_lock.s index 60757cdd0..ee60814f5 100644 --- a/asm/map_obj_lock.s +++ b/asm/map_obj_lock.s @@ -59,8 +59,8 @@ _080983E2: bx r1 thumb_func_end sub_80983C4 - thumb_func_start sub_80983E8 -sub_80983E8: @ 80983E8 + thumb_func_start ScriptFreezeMapObjects +ScriptFreezeMapObjects: @ 80983E8 push {lr} bl player_bitmagic ldr r0, =sub_80983A4 @@ -69,7 +69,7 @@ sub_80983E8: @ 80983E8 pop {r0} bx r0 .pool - thumb_func_end sub_80983E8 + thumb_func_end ScriptFreezeMapObjects thumb_func_start sub_8098400 sub_8098400: @ 8098400 @@ -149,8 +149,8 @@ _0809849A: bx r1 thumb_func_end sub_809847C - thumb_func_start sub_80984A0 -sub_80984A0: @ 80984A0 + thumb_func_start LockSelectedMapObject +LockSelectedMapObject: @ 80984A0 push {r4,r5,lr} ldr r4, =gSelectedMapObject ldrb r0, [r4] @@ -184,7 +184,7 @@ _080984DE: pop {r0} bx r0 .pool - thumb_func_end sub_80984A0 + thumb_func_end LockSelectedMapObject thumb_func_start sub_80984F4 sub_80984F4: @ 80984F4 @@ -203,7 +203,7 @@ sub_80984F4: @ 80984F4 adds r0, r1 bl FieldObjectClearAnimIfSpecialAnimFinished bl sub_80D338C - bl sub_809757C + bl UnfreezeMapObjects pop {r0} bx r0 .pool @@ -239,7 +239,7 @@ _08098542: adds r0, r4 bl FieldObjectClearAnimIfSpecialAnimFinished bl sub_80D338C - bl sub_809757C + bl UnfreezeMapObjects pop {r4} pop {r0} bx r0 diff --git a/asm/mauville_old_man.s b/asm/mauville_old_man.s index 7b21e19e7..4972d4096 100644 --- a/asm/mauville_old_man.s +++ b/asm/mauville_old_man.s @@ -1392,7 +1392,7 @@ _08120BB0: movs r0, 0xFF strb r0, [r7, 0x7] mov r0, sp - bl sub_8009228 + bl IsStringJapanese cmp r0, 0 beq _08120BF8 mov r0, sp @@ -1458,7 +1458,7 @@ _08120C48: muls r0, r5 adds r0, 0x5 adds r0, r6, r0 - bl sub_8009228 + bl IsStringJapanese cmp r0, 0 beq _08120C5E mov r0, r8 @@ -1480,7 +1480,7 @@ _08120C6A: movs r5, 0x3 _08120C74: adds r0, r6, 0 - bl sub_8009228 + bl IsStringJapanese cmp r0, 0 beq _08120C84 mov r1, r8 @@ -1569,7 +1569,7 @@ _08120CF2: mov r1, r8 strb r0, [r1, 0x7] mov r0, sp - bl sub_8009228 + bl IsStringJapanese cmp r0, 0 beq _08120D1A movs r0, 0x1 @@ -2205,7 +2205,7 @@ sub_8121178: @ 8121178 bl ConvertInternationalString mov r0, r8 bl sub_8120EC0 - bl box_related_two__2 + bl ShowFieldMessage pop {r3} mov r8, r3 pop {r4-r6} diff --git a/asm/menu.s b/asm/menu.s index 8bb9dc436..71ff9218c 100755 --- a/asm/menu.s +++ b/asm/menu.s @@ -5201,7 +5201,7 @@ sub_819A25C: @ 819A25C lsrs r4, 24 lsls r0, 16 lsrs r0, 16 - bl sub_80D30B0 + bl GetValidMonIconPalettePtr adds r1, r4, 0 movs r2, 0x20 bl LoadPalette @@ -5228,7 +5228,7 @@ sub_819A27C: @ 819A27C lsls r5, 16 lsrs r5, 16 movs r2, 0x1 - bl sub_80D2EDC + bl GetMonIconPtr adds r1, r0, 0 movs r0, 0x20 str r0, [sp] diff --git a/asm/menu_helpers.s b/asm/menu_helpers.s index acc3065ea..423f653d9 100644 --- a/asm/menu_helpers.s +++ b/asm/menu_helpers.s @@ -533,7 +533,7 @@ sub_81221AC: @ 81221AC bl is_c1_link_related_active cmp r0, 0x1 beq _081221BE - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0x1 bne _081221C8 diff --git a/asm/metatile_behavior.s b/asm/metatile_behavior.s deleted file mode 100644 index 30b0f4348..000000000 --- a/asm/metatile_behavior.s +++ /dev/null @@ -1,2610 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start ShouldDoJumpLandingDustEffect -ShouldDoJumpLandingDustEffect: @ 8088DEC - movs r0, 0x1 - bx lr - thumb_func_end ShouldDoJumpLandingDustEffect - - thumb_func_start sub_8088DF0 -sub_8088DF0: @ 8088DF0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_08486EFC - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08088E0C - movs r0, 0 - b _08088E0E - .pool -_08088E0C: - movs r0, 0x1 -_08088E0E: - pop {r1} - bx r1 - thumb_func_end sub_8088DF0 - - thumb_func_start MetatileBehavior_IsJumpEast -MetatileBehavior_IsJumpEast: @ 8088E14 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x38 - beq _08088E22 - movs r0, 0 - b _08088E24 -_08088E22: - movs r0, 0x1 -_08088E24: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsJumpEast - - thumb_func_start MetatileBehavior_IsJumpWest -MetatileBehavior_IsJumpWest: @ 8088E28 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x39 - beq _08088E36 - movs r0, 0 - b _08088E38 -_08088E36: - movs r0, 0x1 -_08088E38: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsJumpWest - - thumb_func_start MetatileBehavior_IsJumpNorth -MetatileBehavior_IsJumpNorth: @ 8088E3C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3A - beq _08088E4A - movs r0, 0 - b _08088E4C -_08088E4A: - movs r0, 0x1 -_08088E4C: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsJumpNorth - - thumb_func_start MetatileBehavior_IsJumpSouth -MetatileBehavior_IsJumpSouth: @ 8088E50 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3B - beq _08088E5E - movs r0, 0 - b _08088E60 -_08088E5E: - movs r0, 0x1 -_08088E60: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsJumpSouth - - thumb_func_start sub_8088E64 -sub_8088E64: @ 8088E64 - push {lr} - lsls r0, 24 - movs r1, 0xFE - lsls r1, 24 - adds r0, r1 - lsrs r0, 24 - cmp r0, 0x1 - bls _08088E78 - movs r0, 0 - b _08088E7A -_08088E78: - movs r0, 0x1 -_08088E7A: - pop {r1} - bx r1 - thumb_func_end sub_8088E64 - - thumb_func_start MetatileBehavior_IsSandOrDeepSand -MetatileBehavior_IsSandOrDeepSand: @ 8088E80 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x21 - beq _08088E8E - cmp r0, 0x6 - bne _08088E92 -_08088E8E: - movs r0, 0x1 - b _08088E94 -_08088E92: - movs r0, 0 -_08088E94: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsSandOrDeepSand - - thumb_func_start MetatileBehavior_IsDeepSand -MetatileBehavior_IsDeepSand: @ 8088E98 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - beq _08088EA6 - movs r0, 0 - b _08088EA8 -_08088EA6: - movs r0, 0x1 -_08088EA8: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsDeepSand - - thumb_func_start MetatileBehavior_IsReflective -MetatileBehavior_IsReflective: @ 8088EAC - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x10 - beq _08088ECA - cmp r0, 0x16 - beq _08088ECA - cmp r0, 0x1A - beq _08088ECA - cmp r0, 0x20 - beq _08088ECA - cmp r0, 0x14 - beq _08088ECA - cmp r0, 0x2B - bne _08088ECE -_08088ECA: - movs r0, 0x1 - b _08088ED0 -_08088ECE: - movs r0, 0 -_08088ED0: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsReflective - - thumb_func_start MetatileBehavior_IsIce -MetatileBehavior_IsIce: @ 8088ED4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x20 - beq _08088EE2 - movs r0, 0 - b _08088EE4 -_08088EE2: - movs r0, 0x1 -_08088EE4: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsIce - - thumb_func_start is_tile_x69_2_warp_door -is_tile_x69_2_warp_door: @ 8088EE8 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x69 - beq _08088EF6 - movs r0, 0 - b _08088EF8 -_08088EF6: - movs r0, 0x1 -_08088EF8: - pop {r1} - bx r1 - thumb_func_end is_tile_x69_2_warp_door - - thumb_func_start sub_8088EFC -sub_8088EFC: @ 8088EFC - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x8D - beq _08088F0A - cmp r0, 0x69 - bne _08088F0E -_08088F0A: - movs r0, 0x1 - b _08088F10 -_08088F0E: - movs r0, 0 -_08088F10: - pop {r1} - bx r1 - thumb_func_end sub_8088EFC - - thumb_func_start MetatileBehavior_IsEscalator -MetatileBehavior_IsEscalator: @ 8088F14 - push {lr} - lsls r0, 24 - movs r1, 0x96 - lsls r1, 24 - adds r0, r1 - lsrs r0, 24 - cmp r0, 0x1 - bls _08088F28 - movs r0, 0 - b _08088F2A -_08088F28: - movs r0, 0x1 -_08088F2A: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsEscalator - - thumb_func_start sub_8088F30 -sub_8088F30: @ 8088F30 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - beq _08088F3E - movs r0, 0 - b _08088F40 -_08088F3E: - movs r0, 0x1 -_08088F40: - pop {r1} - bx r1 - thumb_func_end sub_8088F30 - - thumb_func_start MetatileBehavior_IsLadder -MetatileBehavior_IsLadder: @ 8088F44 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x61 - beq _08088F52 - movs r0, 0 - b _08088F54 -_08088F52: - movs r0, 0x1 -_08088F54: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsLadder - - thumb_func_start sub_8088F58 -sub_8088F58: @ 8088F58 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x60 - beq _08088F6A - cmp r0, 0x6C - beq _08088F6A - cmp r0, 0x6E - bne _08088F6E -_08088F6A: - movs r0, 0x1 - b _08088F70 -_08088F6E: - movs r0, 0 -_08088F70: - pop {r1} - bx r1 - thumb_func_end sub_8088F58 - - thumb_func_start sub_8088F74 -sub_8088F74: @ 8088F74 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6E - beq _08088F82 - movs r0, 0 - b _08088F84 -_08088F82: - movs r0, 0x1 -_08088F84: - pop {r1} - bx r1 - thumb_func_end sub_8088F74 - - thumb_func_start MetatileBehavior_IsSurfableWaterOrUnderwater -MetatileBehavior_IsSurfableWaterOrUnderwater: @ 8088F88 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_08486EFC - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08088FA4 - movs r0, 0 - b _08088FA6 - .pool -_08088FA4: - movs r0, 0x1 -_08088FA6: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsSurfableWaterOrUnderwater - - thumb_func_start MetatileBehavior_IsEastArrowWarp -MetatileBehavior_IsEastArrowWarp: @ 8088FAC - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x62 - beq _08088FBA - movs r0, 0 - b _08088FBC -_08088FBA: - movs r0, 0x1 -_08088FBC: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsEastArrowWarp - - thumb_func_start MetatileBehavior_IsWestArrowWarp -MetatileBehavior_IsWestArrowWarp: @ 8088FC0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x63 - beq _08088FCE - movs r0, 0 - b _08088FD0 -_08088FCE: - movs r0, 0x1 -_08088FD0: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsWestArrowWarp - - thumb_func_start MetatileBehavior_IsNorthArrowWarp -MetatileBehavior_IsNorthArrowWarp: @ 8088FD4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x64 - beq _08088FE2 - cmp r0, 0x1B - bne _08088FE6 -_08088FE2: - movs r0, 0x1 - b _08088FE8 -_08088FE6: - movs r0, 0 -_08088FE8: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsNorthArrowWarp - - thumb_func_start MetatileBehavior_IsSouthArrowWarp -MetatileBehavior_IsSouthArrowWarp: @ 8088FEC - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x65 - beq _08088FFE - cmp r0, 0x6D - beq _08088FFE - cmp r0, 0x1C - bne _08089002 -_08088FFE: - movs r0, 0x1 - b _08089004 -_08089002: - movs r0, 0 -_08089004: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsSouthArrowWarp - - thumb_func_start sub_8089008 -sub_8089008: @ 8089008 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r5, 0 - adds r0, r4, 0 - bl MetatileBehavior_IsEastArrowWarp - lsls r0, 24 - cmp r0, 0 - bne _08089040 - adds r0, r4, 0 - bl MetatileBehavior_IsWestArrowWarp - lsls r0, 24 - cmp r0, 0 - bne _08089040 - adds r0, r4, 0 - bl MetatileBehavior_IsNorthArrowWarp - lsls r0, 24 - cmp r0, 0 - bne _08089040 - adds r0, r4, 0 - bl MetatileBehavior_IsSouthArrowWarp - lsls r0, 24 - cmp r0, 0 - beq _08089042 -_08089040: - movs r5, 0x1 -_08089042: - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8089008 - - thumb_func_start sub_808904C -sub_808904C: @ 808904C - push {lr} - lsls r0, 24 - lsrs r1, r0, 24 - movs r2, 0xC0 - lsls r2, 24 - adds r0, r2 - lsrs r0, 24 - cmp r0, 0x8 - bls _08089082 - adds r0, r1, 0 - subs r0, 0x50 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bls _08089082 - cmp r1, 0xD0 - beq _08089082 - cmp r1, 0xD2 - beq _08089082 - cmp r1, 0x13 - beq _08089082 - cmp r1, 0x20 - beq _08089082 - cmp r1, 0xBB - beq _08089082 - cmp r1, 0xBC - bne _08089086 -_08089082: - movs r0, 0x1 - b _08089088 -_08089086: - movs r0, 0 -_08089088: - pop {r1} - bx r1 - thumb_func_end sub_808904C - - thumb_func_start MetatileBehavior_IsIce_2 -@ bool8 MetatileBehavior_IsIce_2(u8 metatileBehavior) -MetatileBehavior_IsIce_2: @ 808908C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x20 - beq _0808909A - movs r0, 0 - b _0808909C -_0808909A: - movs r0, 0x1 -_0808909C: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsIce_2 - - thumb_func_start MetatileBehavior_IsTrickHouseSlipperyFloor -@ bool8 MetatileBehavior_IsTrickHouseSlipperyFloor(u8 metatileBehavior) -MetatileBehavior_IsTrickHouseSlipperyFloor: @ 80890A0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x48 - beq _080890AE - movs r0, 0 - b _080890B0 -_080890AE: - movs r0, 0x1 -_080890B0: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsTrickHouseSlipperyFloor - - thumb_func_start MetatileBehavior_0x05 -MetatileBehavior_0x05: @ 80890B4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - beq _080890C2 - movs r0, 0 - b _080890C4 -_080890C2: - movs r0, 0x1 -_080890C4: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_0x05 - - thumb_func_start MetatileBehavior_IsWalkNorth -@ bool8 MetatileBehavior_IsWalkNorth(u8 metatileBehavior) -MetatileBehavior_IsWalkNorth: @ 80890C8 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x42 - beq _080890D6 - movs r0, 0 - b _080890D8 -_080890D6: - movs r0, 0x1 -_080890D8: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsWalkNorth - - thumb_func_start MetatileBehavior_IsWalkSouth -@ bool8 MetatileBehavior_IsWalkSouth(u8 metatileBehavior) -MetatileBehavior_IsWalkSouth: @ 80890DC - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x43 - beq _080890EA - movs r0, 0 - b _080890EC -_080890EA: - movs r0, 0x1 -_080890EC: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsWalkSouth - - thumb_func_start MetatileBehavior_IsWalkWest -@ bool8 MetatileBehavior_IsWalkWest(u8 metatileBehavior) -MetatileBehavior_IsWalkWest: @ 80890F0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x41 - beq _080890FE - movs r0, 0 - b _08089100 -_080890FE: - movs r0, 0x1 -_08089100: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsWalkWest - - thumb_func_start MetatileBehavior_IsWalkEast -@ bool8 MetatileBehavior_IsWalkEast(u8 metatileBehavior) -MetatileBehavior_IsWalkEast: @ 8089104 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _08089112 - movs r0, 0 - b _08089114 -_08089112: - movs r0, 0x1 -_08089114: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsWalkEast - - thumb_func_start MetatileBehavior_IsNorthwardCurrent -@ bool8 MetatileBehavior_IsNorthwardCurrent(u8 metatileBehavior) -MetatileBehavior_IsNorthwardCurrent: @ 8089118 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x52 - beq _08089126 - movs r0, 0 - b _08089128 -_08089126: - movs r0, 0x1 -_08089128: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsNorthwardCurrent - - thumb_func_start MetatileBehavior_IsSouthwardCurrent -@ bool8 MetatileBehavior_IsSouthwardCurrent(u8 metatileBehavior) -MetatileBehavior_IsSouthwardCurrent: @ 808912C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x53 - beq _0808913A - movs r0, 0 - b _0808913C -_0808913A: - movs r0, 0x1 -_0808913C: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsSouthwardCurrent - - thumb_func_start MetatileBehavior_IsWestwardCurrent -@ bool8 MetatileBehavior_IsWestwardCurrent(u8 metatileBehavior) -MetatileBehavior_IsWestwardCurrent: @ 8089140 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x51 - beq _0808914E - movs r0, 0 - b _08089150 -_0808914E: - movs r0, 0x1 -_08089150: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsWestwardCurrent - - thumb_func_start MetatileBehavior_IsEastwardCurrent -@ bool8 MetatileBehavior_IsEastwardCurrent(u8 metatileBehavior) -MetatileBehavior_IsEastwardCurrent: @ 8089154 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x50 - beq _08089162 - movs r0, 0 - b _08089164 -_08089162: - movs r0, 0x1 -_08089164: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsEastwardCurrent - - thumb_func_start MetatileBehavior_IsSlideNorth -@ bool8 MetatileBehavior_IsSlideNorth(u8 metatileBehavior) -MetatileBehavior_IsSlideNorth: @ 8089168 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x46 - beq _08089176 - movs r0, 0 - b _08089178 -_08089176: - movs r0, 0x1 -_08089178: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsSlideNorth - - thumb_func_start MetatileBehavior_IsSlideSouth -@ bool8 MetatileBehavior_IsSlideSouth(u8 metatileBehavior) -MetatileBehavior_IsSlideSouth: @ 808917C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x47 - beq _0808918A - movs r0, 0 - b _0808918C -_0808918A: - movs r0, 0x1 -_0808918C: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsSlideSouth - - thumb_func_start MetatileBehavior_IsSlideWest -@ bool8 MetatileBehavior_IsSlideWest(u8 metatileBehavior) -MetatileBehavior_IsSlideWest: @ 8089190 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x45 - beq _0808919E - movs r0, 0 - b _080891A0 -_0808919E: - movs r0, 0x1 -_080891A0: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsSlideWest - - thumb_func_start MetatileBehavior_IsSlideEast -@ bool8 MetatileBehavior_IsSlideEast(u8 metatileBehavior) -MetatileBehavior_IsSlideEast: @ 80891A4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x44 - beq _080891B2 - movs r0, 0 - b _080891B4 -_080891B2: - movs r0, 0x1 -_080891B4: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsSlideEast - - thumb_func_start MetatileBehavior_IsCounter -MetatileBehavior_IsCounter: @ 80891B8 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x80 - beq _080891C6 - movs r0, 0 - b _080891C8 -_080891C6: - movs r0, 0x1 -_080891C8: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsCounter - - thumb_func_start MetatileBehavior_IsPlayerFacingTVScreen -@ bool8 MetatileBehavior_IsPlayerFacingTVScreen(u8 behavior, u8 direction) -MetatileBehavior_IsPlayerFacingTVScreen: @ 80891CC - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0x2 - bne _080891DE - cmp r0, 0x86 - beq _080891E2 -_080891DE: - movs r0, 0 - b _080891E4 -_080891E2: - movs r0, 0x1 -_080891E4: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsPlayerFacingTVScreen - - thumb_func_start MetatileBehavior_IsPC -MetatileBehavior_IsPC: @ 80891E8 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x83 - beq _080891F6 - movs r0, 0 - b _080891F8 -_080891F6: - movs r0, 0x1 -_080891F8: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsPC - - thumb_func_start is_tile_x84 -is_tile_x84: @ 80891FC - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x84 - beq _0808920A - movs r0, 0 - b _0808920C -_0808920A: - movs r0, 0x1 -_0808920C: - pop {r1} - bx r1 - thumb_func_end is_tile_x84 - - thumb_func_start sub_8089210 -sub_8089210: @ 8089210 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x91 - beq _08089232 - cmp r0, 0x93 - beq _08089232 - cmp r0, 0x95 - beq _08089232 - cmp r0, 0x97 - beq _08089232 - cmp r0, 0x99 - beq _08089232 - cmp r0, 0x9B - beq _08089232 - cmp r0, 0x9D - bne _08089236 -_08089232: - movs r0, 0x1 - b _08089238 -_08089236: - movs r0, 0 -_08089238: - pop {r1} - bx r1 - thumb_func_end sub_8089210 - - thumb_func_start sub_808923C -sub_808923C: @ 808923C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x90 - beq _08089252 - cmp r0, 0x92 - beq _08089252 - cmp r0, 0x94 - beq _08089252 - cmp r0, 0x9A - bne _08089256 -_08089252: - movs r0, 0x1 - b _08089258 -_08089256: - movs r0, 0 -_08089258: - pop {r1} - bx r1 - thumb_func_end sub_808923C - - thumb_func_start sub_808925C -sub_808925C: @ 808925C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x96 - beq _0808926A - cmp r0, 0x9C - bne _0808926E -_0808926A: - movs r0, 0x1 - b _08089270 -_0808926E: - movs r0, 0 -_08089270: - pop {r1} - bx r1 - thumb_func_end sub_808925C - - thumb_func_start is_tile_x98 -is_tile_x98: @ 8089274 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x98 - beq _08089282 - movs r0, 0 - b _08089284 -_08089282: - movs r0, 0x1 -_08089284: - pop {r1} - bx r1 - thumb_func_end is_tile_x98 - - thumb_func_start sub_8089288 -sub_8089288: @ 8089288 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xB0 - beq _08089296 - movs r0, 0 - b _08089298 -_08089296: - movs r0, 0x1 -_08089298: - pop {r1} - bx r1 - thumb_func_end sub_8089288 - - thumb_func_start sub_808929C -sub_808929C: @ 808929C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xB1 - beq _080892AA - movs r0, 0 - b _080892AC -_080892AA: - movs r0, 0x1 -_080892AC: - pop {r1} - bx r1 - thumb_func_end sub_808929C - - thumb_func_start sub_80892B0 -sub_80892B0: @ 80892B0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xB2 - beq _080892BE - movs r0, 0 - b _080892C0 -_080892BE: - movs r0, 0x1 -_080892C0: - pop {r1} - bx r1 - thumb_func_end sub_80892B0 - - thumb_func_start sub_80892C4 -sub_80892C4: @ 80892C4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xB3 - beq _080892D2 - movs r0, 0 - b _080892D4 -_080892D2: - movs r0, 0x1 -_080892D4: - pop {r1} - bx r1 - thumb_func_end sub_80892C4 - - thumb_func_start sub_80892D8 -sub_80892D8: @ 80892D8 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xB9 - beq _080892E6 - movs r0, 0 - b _080892E8 -_080892E6: - movs r0, 0x1 -_080892E8: - pop {r1} - bx r1 - thumb_func_end sub_80892D8 - - thumb_func_start sub_80892EC -sub_80892EC: @ 80892EC - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xC6 - beq _080892FA - movs r0, 0 - b _080892FC -_080892FA: - movs r0, 0x1 -_080892FC: - pop {r1} - bx r1 - thumb_func_end sub_80892EC - - thumb_func_start sub_8089300 -sub_8089300: @ 8089300 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xC7 - beq _0808930E - movs r0, 0 - b _08089310 -_0808930E: - movs r0, 0x1 -_08089310: - pop {r1} - bx r1 - thumb_func_end sub_8089300 - - thumb_func_start sub_8089314 -sub_8089314: @ 8089314 - push {lr} - lsls r0, 24 - cmp r0, 0 - beq _08089320 - movs r0, 0 - b _08089322 -_08089320: - movs r0, 0x1 -_08089322: - pop {r1} - bx r1 - thumb_func_end sub_8089314 - - thumb_func_start sub_8089328 -sub_8089328: @ 8089328 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xB7 - beq _08089336 - movs r0, 0 - b _08089338 -_08089336: - movs r0, 0x1 -_08089338: - pop {r1} - bx r1 - thumb_func_end sub_8089328 - - thumb_func_start sub_808933C -sub_808933C: @ 808933C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xB2 - beq _0808934A - movs r0, 0 - b _0808934C -_0808934A: - movs r0, 0x1 -_0808934C: - pop {r1} - bx r1 - thumb_func_end sub_808933C - - thumb_func_start sub_8089350 -sub_8089350: @ 8089350 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xB5 - beq _0808935E - movs r0, 0 - b _08089360 -_0808935E: - movs r0, 0x1 -_08089360: - pop {r1} - bx r1 - thumb_func_end sub_8089350 - - thumb_func_start sub_8089364 -sub_8089364: @ 8089364 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xC3 - beq _08089372 - movs r0, 0 - b _08089374 -_08089372: - movs r0, 0x1 -_08089374: - pop {r1} - bx r1 - thumb_func_end sub_8089364 - - thumb_func_start sub_8089378 -sub_8089378: @ 8089378 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xC2 - beq _08089386 - movs r0, 0 - b _08089388 -_08089386: - movs r0, 0x1 -_08089388: - pop {r1} - bx r1 - thumb_func_end sub_8089378 - - thumb_func_start sub_808938C -sub_808938C: @ 808938C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xB8 - beq _0808939A - movs r0, 0 - b _0808939C -_0808939A: - movs r0, 0x1 -_0808939C: - pop {r1} - bx r1 - thumb_func_end sub_808938C - - thumb_func_start sub_80893A0 -sub_80893A0: @ 80893A0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xBE - beq _080893AE - movs r0, 0 - b _080893B0 -_080893AE: - movs r0, 0x1 -_080893B0: - pop {r1} - bx r1 - thumb_func_end sub_80893A0 - - thumb_func_start sub_80893B4 -sub_80893B4: @ 80893B4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xBD - beq _080893C2 - movs r0, 0 - b _080893C4 -_080893C2: - movs r0, 0x1 -_080893C4: - pop {r1} - bx r1 - thumb_func_end sub_80893B4 - - thumb_func_start sub_80893C8 -sub_80893C8: @ 80893C8 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xBA - beq _080893D6 - movs r0, 0 - b _080893D8 -_080893D6: - movs r0, 0x1 -_080893D8: - pop {r1} - bx r1 - thumb_func_end sub_80893C8 - - thumb_func_start sub_80893DC -sub_80893DC: @ 80893DC - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xBF - beq _080893EA - movs r0, 0 - b _080893EC -_080893EA: - movs r0, 0x1 -_080893EC: - pop {r1} - bx r1 - thumb_func_end sub_80893DC - - thumb_func_start sub_80893F0 -sub_80893F0: @ 80893F0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xC4 - beq _080893FE - movs r0, 0 - b _08089400 -_080893FE: - movs r0, 0x1 -_08089400: - pop {r1} - bx r1 - thumb_func_end sub_80893F0 - - thumb_func_start sub_8089404 -sub_8089404: @ 8089404 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xC5 - beq _08089412 - movs r0, 0 - b _08089414 -_08089412: - movs r0, 0x1 -_08089414: - pop {r1} - bx r1 - thumb_func_end sub_8089404 - - thumb_func_start MetatileBehavior_HasRipples -MetatileBehavior_HasRipples: @ 8089418 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x10 - beq _0808942A - cmp r0, 0x16 - beq _0808942A - cmp r0, 0x14 - bne _0808942E -_0808942A: - movs r0, 0x1 - b _08089430 -_0808942E: - movs r0, 0 -_08089430: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_HasRipples - - thumb_func_start MetatileBehavior_IsPuddle -MetatileBehavior_IsPuddle: @ 8089434 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x16 - beq _08089442 - movs r0, 0 - b _08089444 -_08089442: - movs r0, 0x1 -_08089444: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsPuddle - - thumb_func_start MetatileBehavior_IsTallGrass -MetatileBehavior_IsTallGrass: @ 8089448 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - beq _08089456 - movs r0, 0 - b _08089458 -_08089456: - movs r0, 0x1 -_08089458: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsTallGrass - - thumb_func_start MetatileBehavior_IsLongGrass -MetatileBehavior_IsLongGrass: @ 808945C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - beq _0808946A - movs r0, 0 - b _0808946C -_0808946A: - movs r0, 0x1 -_0808946C: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsLongGrass - - thumb_func_start MetatileBehavior_IsBerryTreeSoil -MetatileBehavior_IsBerryTreeSoil: @ 8089470 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xA0 - beq _0808947E - movs r0, 0 - b _08089480 -_0808947E: - movs r0, 0x1 -_08089480: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsBerryTreeSoil - - thumb_func_start MetatileBehavior_IsAsh -MetatileBehavior_IsAsh: @ 8089484 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x24 - beq _08089492 - movs r0, 0 - b _08089494 -_08089492: - movs r0, 0x1 -_08089494: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsAsh - - thumb_func_start MetatileBehavior_IsUnusedFootprintMetatile -MetatileBehavior_IsUnusedFootprintMetatile: @ 8089498 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x25 - beq _080894A6 - movs r0, 0 - b _080894A8 -_080894A6: - movs r0, 0x1 -_080894A8: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsUnusedFootprintMetatile - - thumb_func_start sub_80894AC -sub_80894AC: @ 80894AC - push {lr} - lsls r0, 24 - lsrs r1, r0, 24 - movs r2, 0x90 - lsls r2, 24 - adds r0, r2 - lsrs r0, 24 - cmp r0, 0x3 - bls _080894CA - adds r0, r1, 0 - subs r0, 0x7C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bhi _080894CE -_080894CA: - movs r0, 0x1 - b _080894D0 -_080894CE: - movs r0, 0 -_080894D0: - pop {r1} - bx r1 - thumb_func_end sub_80894AC - - thumb_func_start sub_80894D4 -sub_80894D4: @ 80894D4 - push {lr} - lsls r0, 24 - lsrs r1, r0, 24 - adds r2, r1, 0 - adds r0, r1, 0 - subs r0, 0x70 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bls _0808950A - adds r0, r1, 0 - subs r0, 0x7A - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _080894F8 - movs r0, 0x2 - b _0808950A -_080894F8: - adds r0, r2, 0 - subs r0, 0x7C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _08089508 - movs r0, 0 - b _0808950A -_08089508: - movs r0, 0x3 -_0808950A: - pop {r1} - bx r1 - thumb_func_end sub_80894D4 - - thumb_func_start sub_8089510 -sub_8089510: @ 8089510 - push {lr} - lsls r0, 24 - movs r1, 0x90 - lsls r1, 24 - adds r0, r1 - lsrs r0, 24 - cmp r0, 0x3 - bls _08089524 - movs r0, 0 - b _08089526 -_08089524: - movs r0, 0x1 -_08089526: - pop {r1} - bx r1 - thumb_func_end sub_8089510 - - thumb_func_start sub_808952C -sub_808952C: @ 808952C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl MetatileBehavior_IsSurfableWaterOrUnderwater - lsls r0, 24 - cmp r0, 0 - bne _08089550 - adds r0, r4, 0 - bl sub_8088DF0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08089550 - movs r0, 0x1 - b _08089552 -_08089550: - movs r0, 0 -_08089552: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_808952C - - thumb_func_start sub_8089558 -sub_8089558: @ 8089558 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl MetatileBehavior_IsSurfableWaterOrUnderwater - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808957E - adds r0, r4, 0 - bl sub_8088DF0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0808957E - movs r0, 0x1 - b _08089580 -_0808957E: - movs r0, 0 -_08089580: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8089558 - - thumb_func_start sub_8089588 -sub_8089588: @ 8089588 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xB - beq _08089596 - movs r0, 0 - b _08089598 -_08089596: - movs r0, 0x1 -_08089598: - pop {r1} - bx r1 - thumb_func_end sub_8089588 - - thumb_func_start sub_808959C -sub_808959C: @ 808959C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xC - beq _080895AA - movs r0, 0 - b _080895AC -_080895AA: - movs r0, 0x1 -_080895AC: - pop {r1} - bx r1 - thumb_func_end sub_808959C - - thumb_func_start sub_80895B0 -sub_80895B0: @ 80895B0 - push {lr} - lsls r0, 24 - lsrs r1, r0, 24 - movs r2, 0xEF - lsls r2, 24 - adds r0, r2 - lsrs r0, 24 - cmp r0, 0x1 - bls _080895C6 - cmp r1, 0x14 - bne _080895CA -_080895C6: - movs r0, 0x1 - b _080895CC -_080895CA: - movs r0, 0 -_080895CC: - pop {r1} - bx r1 - thumb_func_end sub_80895B0 - - thumb_func_start sub_80895D0 -sub_80895D0: @ 80895D0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x19 - beq _080895DE - cmp r0, 0x2A - bne _080895E2 -_080895DE: - movs r0, 0x1 - b _080895E4 -_080895E2: - movs r0, 0 -_080895E4: - pop {r1} - bx r1 - thumb_func_end sub_80895D0 - - thumb_func_start MetatileBehavior_IsShallowFlowingWater -MetatileBehavior_IsShallowFlowingWater: @ 80895E8 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x17 - beq _080895FA - cmp r0, 0x1B - beq _080895FA - cmp r0, 0x1C - bne _080895FE -_080895FA: - movs r0, 0x1 - b _08089600 -_080895FE: - movs r0, 0 -_08089600: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsShallowFlowingWater - - thumb_func_start sub_8089604 -sub_8089604: @ 8089604 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x26 - beq _08089612 - movs r0, 0 - b _08089614 -_08089612: - movs r0, 0x1 -_08089614: - pop {r1} - bx r1 - thumb_func_end sub_8089604 - - thumb_func_start sub_8089618 -sub_8089618: @ 8089618 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x27 - beq _08089626 - movs r0, 0 - b _08089628 -_08089626: - movs r0, 0x1 -_08089628: - pop {r1} - bx r1 - thumb_func_end sub_8089618 - - thumb_func_start sub_808962C -sub_808962C: @ 808962C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x15 - beq _0808963E - cmp r0, 0x11 - beq _0808963E - cmp r0, 0x12 - bne _08089642 -_0808963E: - movs r0, 0x1 - b _08089644 -_08089642: - movs r0, 0 -_08089644: - pop {r1} - bx r1 - thumb_func_end sub_808962C - - thumb_func_start sub_8089648 -sub_8089648: @ 8089648 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x18 - beq _08089656 - cmp r0, 0x1A - bne _0808965A -_08089656: - movs r0, 0x1 - b _0808965C -_0808965A: - movs r0, 0 -_0808965C: - pop {r1} - bx r1 - thumb_func_end sub_8089648 - - thumb_func_start sub_8089660 -sub_8089660: @ 8089660 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl MetatileBehavior_IsSurfableWaterOrUnderwater - lsls r0, 24 - cmp r0, 0 - beq _08089682 - adds r0, r4, 0 - bl MetatileBehavior_IsWaterfall - lsls r0, 24 - cmp r0, 0 - bne _08089682 - movs r0, 0x1 - b _08089684 -_08089682: - movs r0, 0 -_08089684: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8089660 - - thumb_func_start MetatileBehavior_IsEastBlocked -MetatileBehavior_IsEastBlocked: @ 808968C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x30 - beq _080896A6 - cmp r0, 0x34 - beq _080896A6 - cmp r0, 0x36 - beq _080896A6 - cmp r0, 0xC1 - beq _080896A6 - cmp r0, 0xBE - bne _080896AA -_080896A6: - movs r0, 0x1 - b _080896AC -_080896AA: - movs r0, 0 -_080896AC: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsEastBlocked - - thumb_func_start MetatileBehavior_IsWestBlocked -MetatileBehavior_IsWestBlocked: @ 80896B0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x31 - beq _080896CA - cmp r0, 0x35 - beq _080896CA - cmp r0, 0x37 - beq _080896CA - cmp r0, 0xC1 - beq _080896CA - cmp r0, 0xBE - bne _080896CE -_080896CA: - movs r0, 0x1 - b _080896D0 -_080896CE: - movs r0, 0 -_080896D0: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsWestBlocked - - thumb_func_start MetatileBehavior_IsNorthBlocked -MetatileBehavior_IsNorthBlocked: @ 80896D4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x32 - beq _080896EA - cmp r0, 0x34 - beq _080896EA - cmp r0, 0x35 - beq _080896EA - cmp r0, 0xC0 - bne _080896EE -_080896EA: - movs r0, 0x1 - b _080896F0 -_080896EE: - movs r0, 0 -_080896F0: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsNorthBlocked - - thumb_func_start MetatileBehavior_IsSouthBlocked -MetatileBehavior_IsSouthBlocked: @ 80896F4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x33 - beq _0808970A - cmp r0, 0x36 - beq _0808970A - cmp r0, 0x37 - beq _0808970A - cmp r0, 0xC0 - bne _0808970E -_0808970A: - movs r0, 0x1 - b _08089710 -_0808970E: - movs r0, 0 -_08089710: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsSouthBlocked - - thumb_func_start MetatileBehavior_IsShortGrass -MetatileBehavior_IsShortGrass: @ 8089714 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x7 - beq _08089722 - movs r0, 0 - b _08089724 -_08089722: - movs r0, 0x1 -_08089724: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsShortGrass - - thumb_func_start MetatileBehavior_IsHotSprings -MetatileBehavior_IsHotSprings: @ 8089728 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x28 - beq _08089736 - movs r0, 0 - b _08089738 -_08089736: - movs r0, 0x1 -_08089738: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsHotSprings - - thumb_func_start MetatileBehavior_IsWaterfall -@ bool8 MetatileBehavior_IsWaterfall(u8 metatileBehavior) -MetatileBehavior_IsWaterfall: @ 808973C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - beq _0808974A - movs r0, 0 - b _0808974C -_0808974A: - movs r0, 0x1 -_0808974C: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsWaterfall - - thumb_func_start MetatileBehavior_IsFortreeBridge -MetatileBehavior_IsFortreeBridge: @ 8089750 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x78 - beq _0808975E - movs r0, 0 - b _08089760 -_0808975E: - movs r0, 0x1 -_08089760: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsFortreeBridge - - thumb_func_start sub_8089764 -sub_8089764: @ 8089764 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x74 - beq _08089772 - movs r0, 0 - b _08089774 -_08089772: - movs r0, 0x1 -_08089774: - pop {r1} - bx r1 - thumb_func_end sub_8089764 - - thumb_func_start sub_8089778 -sub_8089778: @ 8089778 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x75 - beq _08089786 - movs r0, 0 - b _08089788 -_08089786: - movs r0, 0x1 -_08089788: - pop {r1} - bx r1 - thumb_func_end sub_8089778 - - thumb_func_start sub_808978C -sub_808978C: @ 808978C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x76 - beq _0808979A - movs r0, 0 - b _0808979C -_0808979A: - movs r0, 0x1 -_0808979C: - pop {r1} - bx r1 - thumb_func_end sub_808978C - - thumb_func_start sub_80897A0 -sub_80897A0: @ 80897A0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x77 - beq _080897AE - movs r0, 0 - b _080897B0 -_080897AE: - movs r0, 0x1 -_080897B0: - pop {r1} - bx r1 - thumb_func_end sub_80897A0 - - thumb_func_start MetatileBehavior_IsPacifidlogLog -MetatileBehavior_IsPacifidlogLog: @ 80897B4 - push {lr} - lsls r0, 24 - movs r1, 0x8C - lsls r1, 24 - adds r0, r1 - lsrs r0, 24 - cmp r0, 0x3 - bls _080897C8 - movs r0, 0 - b _080897CA -_080897C8: - movs r0, 0x1 -_080897CA: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsPacifidlogLog - - thumb_func_start is_tile_x8C -is_tile_x8C: @ 80897D0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x8C - beq _080897DE - movs r0, 0 - b _080897E0 -_080897DE: - movs r0, 0x1 -_080897E0: - pop {r1} - bx r1 - thumb_func_end is_tile_x8C - - thumb_func_start is_tile_x85 -is_tile_x85: @ 80897E4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x85 - beq _080897F2 - movs r0, 0 - b _080897F4 -_080897F2: - movs r0, 0x1 -_080897F4: - pop {r1} - bx r1 - thumb_func_end is_tile_x85 - - thumb_func_start is_tile_x8B -is_tile_x8B: @ 80897F8 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x8B - beq _08089806 - movs r0, 0 - b _08089808 -_08089806: - movs r0, 0x1 -_08089808: - pop {r1} - bx r1 - thumb_func_end is_tile_x8B - - thumb_func_start is_tile_xEA -is_tile_xEA: @ 808980C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xEA - beq _0808981A - movs r0, 0 - b _0808981C -_0808981A: - movs r0, 0x1 -_0808981C: - pop {r1} - bx r1 - thumb_func_end is_tile_xEA - - thumb_func_start is_tile_x8A -is_tile_x8A: @ 8089820 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x8A - beq _0808982E - movs r0, 0 - b _08089830 -_0808982E: - movs r0, 0x1 -_08089830: - pop {r1} - bx r1 - thumb_func_end is_tile_x8A - - thumb_func_start is_tile_x87 -is_tile_x87: @ 8089834 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x87 - beq _08089842 - movs r0, 0 - b _08089844 -_08089842: - movs r0, 0x1 -_08089844: - pop {r1} - bx r1 - thumb_func_end is_tile_x87 - - thumb_func_start MetatileBehavior_0xBB -@ bool8 MetatileBehavior_0xBB(u8 metatileBehavior) -MetatileBehavior_0xBB: @ 8089848 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xBB - beq _08089856 - movs r0, 0 - b _08089858 -_08089856: - movs r0, 0x1 -_08089858: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_0xBB - - thumb_func_start MetatileBehavior_0xBC -@ bool8 MetatileBehavior_0xBC(u8 metatileBehavior) -MetatileBehavior_0xBC: @ 808985C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xBC - beq _0808986A - movs r0, 0 - b _0808986C -_0808986A: - movs r0, 0x1 -_0808986C: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_0xBC - - thumb_func_start sub_8089870 -sub_8089870: @ 8089870 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x29 - beq _0808987E - movs r0, 0 - b _08089880 -_0808987E: - movs r0, 0x1 -_08089880: - pop {r1} - bx r1 - thumb_func_end sub_8089870 - - thumb_func_start is_role_x68 -is_role_x68: @ 8089884 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x68 - beq _08089892 - movs r0, 0 - b _08089894 -_08089892: - movs r0, 0x1 -_08089894: - pop {r1} - bx r1 - thumb_func_end is_role_x68 - - thumb_func_start MetatileBehavior_IsAquaHideoutWarp -MetatileBehavior_IsAquaHideoutWarp: @ 8089898 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x67 - beq _080898A6 - movs r0, 0 - b _080898A8 -_080898A6: - movs r0, 0x1 -_080898A8: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsAquaHideoutWarp - - thumb_func_start sub_80898AC -sub_80898AC: @ 80898AC - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x70 - beq _080898BA - movs r0, 0 - b _080898BC -_080898BA: - movs r0, 0x1 -_080898BC: - pop {r1} - bx r1 - thumb_func_end sub_80898AC - - thumb_func_start sub_80898C0 -sub_80898C0: @ 80898C0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xE - beq _080898CE - movs r0, 0 - b _080898D0 -_080898CE: - movs r0, 0x1 -_080898D0: - pop {r1} - bx r1 - thumb_func_end sub_80898C0 - - thumb_func_start MetatileBehavior_IsSurfableFishableWater -MetatileBehavior_IsSurfableFishableWater: @ 80898D4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x10 - beq _080898F8 - cmp r0, 0x15 - beq _080898F8 - cmp r0, 0x11 - beq _080898F8 - cmp r0, 0x12 - beq _080898F8 - cmp r0, 0x14 - beq _080898F8 - subs r0, 0x50 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bhi _080898FC -_080898F8: - movs r0, 0x1 - b _080898FE -_080898FC: - movs r0, 0 -_080898FE: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsSurfableFishableWater - - thumb_func_start sub_8089904 -sub_8089904: @ 8089904 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xF - beq _08089912 - movs r0, 0 - b _08089914 -_08089912: - movs r0, 0x1 -_08089914: - pop {r1} - bx r1 - thumb_func_end sub_8089904 - - thumb_func_start sub_8089918 -sub_8089918: @ 8089918 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x66 - beq _08089926 - movs r0, 0 - b _08089928 -_08089926: - movs r0, 0x1 -_08089928: - pop {r1} - bx r1 - thumb_func_end sub_8089918 - - thumb_func_start sub_808992C -sub_808992C: @ 808992C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xD2 - beq _0808993A - movs r0, 0 - b _0808993C -_0808993A: - movs r0, 0x1 -_0808993C: - pop {r1} - bx r1 - thumb_func_end sub_808992C - - thumb_func_start MetatileBehavior_IsMuddySlope -@ bool8 MetatileBehavior_IsMuddySlope(u8 metatileBehavior) -MetatileBehavior_IsMuddySlope: @ 8089940 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xD0 - beq _0808994E - movs r0, 0 - b _08089950 -_0808994E: - movs r0, 0x1 -_08089950: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsMuddySlope - - thumb_func_start MetatileBehavior_IsBumpySlope -MetatileBehavior_IsBumpySlope: @ 8089954 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xD1 - beq _08089962 - movs r0, 0 - b _08089964 -_08089962: - movs r0, 0x1 -_08089964: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsBumpySlope - - thumb_func_start MetatileBehavior_IsIsolatedVerticalRail -MetatileBehavior_IsIsolatedVerticalRail: @ 8089968 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xD3 - beq _08089976 - movs r0, 0 - b _08089978 -_08089976: - movs r0, 0x1 -_08089978: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsIsolatedVerticalRail - - thumb_func_start MetatileBehavior_IsIsolatedHorizontalRail -MetatileBehavior_IsIsolatedHorizontalRail: @ 808997C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xD4 - beq _0808998A - movs r0, 0 - b _0808998C -_0808998A: - movs r0, 0x1 -_0808998C: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsIsolatedHorizontalRail - - thumb_func_start MetatileBehavior_IsVerticalRail -MetatileBehavior_IsVerticalRail: @ 8089990 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xD5 - beq _0808999E - movs r0, 0 - b _080899A0 -_0808999E: - movs r0, 0x1 -_080899A0: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsVerticalRail - - thumb_func_start MetatileBehavior_IsHorizontalRail -MetatileBehavior_IsHorizontalRail: @ 80899A4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xD6 - beq _080899B2 - movs r0, 0 - b _080899B4 -_080899B2: - movs r0, 0x1 -_080899B4: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsHorizontalRail - - thumb_func_start MetatileBehavior_IsSeaweed -MetatileBehavior_IsSeaweed: @ 80899B8 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x22 - beq _080899C6 - cmp r0, 0x2A - bne _080899CA -_080899C6: - movs r0, 0x1 - b _080899CC -_080899CA: - movs r0, 0 -_080899CC: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsSeaweed - - thumb_func_start MetatileBehavior_IsRunningDisallowed -MetatileBehavior_IsRunningDisallowed: @ 80899D0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xA - beq _080899EC - cmp r0, 0x3 - beq _080899EC - cmp r0, 0x28 - beq _080899EC - bl MetatileBehavior_IsPacifidlogLog - lsls r0, 24 - cmp r0, 0 - beq _080899F0 -_080899EC: - movs r0, 0x1 - b _080899F2 -_080899F0: - movs r0, 0 -_080899F2: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsRunningDisallowed - - thumb_func_start sub_80899F8 -sub_80899F8: @ 80899F8 - push {lr} - lsls r0, 24 - lsrs r1, r0, 24 - movs r2, 0xFE - lsls r2, 24 - adds r0, r2 - lsrs r0, 24 - cmp r0, 0x1 - bls _08089A12 - cmp r1, 0x24 - beq _08089A12 - cmp r1, 0x9 - bne _08089A16 -_08089A12: - movs r0, 0x1 - b _08089A18 -_08089A16: - movs r0, 0 -_08089A18: - pop {r1} - bx r1 - thumb_func_end sub_80899F8 - - thumb_func_start sub_8089A1C -sub_8089A1C: @ 8089A1C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x8E - beq _08089A2A - movs r0, 0 - b _08089A2C -_08089A2A: - movs r0, 0x1 -_08089A2C: - pop {r1} - bx r1 - thumb_func_end sub_8089A1C - - thumb_func_start sub_8089A30 -sub_8089A30: @ 8089A30 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xE0 - beq _08089A3E - movs r0, 0 - b _08089A40 -_08089A3E: - movs r0, 0x1 -_08089A40: - pop {r1} - bx r1 - thumb_func_end sub_8089A30 - - thumb_func_start sub_8089A44 -sub_8089A44: @ 8089A44 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xE1 - beq _08089A52 - movs r0, 0 - b _08089A54 -_08089A52: - movs r0, 0x1 -_08089A54: - pop {r1} - bx r1 - thumb_func_end sub_8089A44 - - thumb_func_start sub_8089A58 -sub_8089A58: @ 8089A58 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xE2 - beq _08089A66 - movs r0, 0 - b _08089A68 -_08089A66: - movs r0, 0x1 -_08089A68: - pop {r1} - bx r1 - thumb_func_end sub_8089A58 - - thumb_func_start sub_8089A6C -sub_8089A6C: @ 8089A6C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xE3 - beq _08089A7A - movs r0, 0 - b _08089A7C -_08089A7A: - movs r0, 0x1 -_08089A7C: - pop {r1} - bx r1 - thumb_func_end sub_8089A6C - - thumb_func_start sub_8089A80 -sub_8089A80: @ 8089A80 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xE4 - beq _08089A8E - movs r0, 0 - b _08089A90 -_08089A8E: - movs r0, 0x1 -_08089A90: - pop {r1} - bx r1 - thumb_func_end sub_8089A80 - - thumb_func_start sub_8089A94 -sub_8089A94: @ 8089A94 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xE5 - beq _08089AA2 - movs r0, 0 - b _08089AA4 -_08089AA2: - movs r0, 0x1 -_08089AA4: - pop {r1} - bx r1 - thumb_func_end sub_8089A94 - - thumb_func_start sub_8089AA8 -sub_8089AA8: @ 8089AA8 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xE6 - beq _08089AB6 - movs r0, 0 - b _08089AB8 -_08089AB6: - movs r0, 0x1 -_08089AB8: - pop {r1} - bx r1 - thumb_func_end sub_8089AA8 - - thumb_func_start sub_8089ABC -sub_8089ABC: @ 8089ABC - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xD - beq _08089ACA - movs r0, 0 - b _08089ACC -_08089ACA: - movs r0, 0x1 -_08089ACC: - pop {r1} - bx r1 - thumb_func_end sub_8089ABC - - thumb_func_start sub_8089AD0 -sub_8089AD0: @ 8089AD0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0x2 - bne _08089AE2 - cmp r0, 0xE8 - beq _08089AE6 -_08089AE2: - movs r0, 0 - b _08089AE8 -_08089AE6: - movs r0, 0x1 -_08089AE8: - pop {r1} - bx r1 - thumb_func_end sub_8089AD0 - - thumb_func_start sub_8089AEC -sub_8089AEC: @ 8089AEC - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0x2 - bne _08089AFE - cmp r0, 0xE7 - beq _08089B02 -_08089AFE: - movs r0, 0 - b _08089B04 -_08089B02: - movs r0, 0x1 -_08089B04: - pop {r1} - bx r1 - thumb_func_end sub_8089AEC - - thumb_func_start MetatileBehavior_IsQuestionnaire -MetatileBehavior_IsQuestionnaire: @ 8089B08 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x8F - beq _08089B16 - movs r0, 0 - b _08089B18 -_08089B16: - movs r0, 0x1 -_08089B18: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsQuestionnaire - - thumb_func_start MetatileBehavior_IsLongGrass2 -MetatileBehavior_IsLongGrass2: @ 8089B1C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - beq _08089B2A - movs r0, 0 - b _08089B2C -_08089B2A: - movs r0, 0x1 -_08089B2C: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsLongGrass2 - - thumb_func_start MetatileBehavior_IsLongGrassSouthEdge -MetatileBehavior_IsLongGrassSouthEdge: @ 8089B30 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x9 - beq _08089B3E - movs r0, 0 - b _08089B40 -_08089B3E: - movs r0, 0x1 -_08089B40: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsLongGrassSouthEdge - - thumb_func_start MetatileBehavior_IsTrainerHillTimer -MetatileBehavior_IsTrainerHillTimer: @ 8089B44 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xE9 - beq _08089B52 - movs r0, 0 - b _08089B54 -_08089B52: - movs r0, 0x1 -_08089B54: - pop {r1} - bx r1 - thumb_func_end MetatileBehavior_IsTrainerHillTimer - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/money.s b/asm/money.s deleted file mode 100644 index 53e795714..000000000 --- a/asm/money.s +++ /dev/null @@ -1,311 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - - - - - thumb_func_start sub_80E51B0 -sub_80E51B0: @ 80E51B0 - push {lr} - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - movs r1, 0x92 - lsls r1, 3 - adds r0, r1 - ldr r1, =gSpecialVar_0x8005 - ldrh r1, [r1] - bl IsEnoughMoney - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .pool - thumb_func_end sub_80E51B0 - - thumb_func_start sub_80E51D4 -sub_80E51D4: @ 80E51D4 - push {lr} - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - movs r1, 0x92 - lsls r1, 3 - adds r0, r1 - ldr r1, =gSpecialVar_0x8005 - ldrh r1, [r1] - bl SubtractMoney - pop {r0} - bx r0 - .pool - thumb_func_end sub_80E51D4 - - thumb_func_start PrintMoneyAmountInMoneyBox -@ void PrintMoneyAmountInMoneyBox(u8 windowId, int amount, s8 a3) -PrintMoneyAmountInMoneyBox: @ 80E51F4 - push {lr} - sub sp, 0x4 - adds r3, r1, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r2, 24 - lsrs r2, 24 - str r2, [sp] - movs r1, 0x26 - movs r2, 0x1 - bl PrintMoneyAmount - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end PrintMoneyAmountInMoneyBox - - thumb_func_start PrintMoneyAmount -@ void PrintMoneyAmount(u8 windowId, char x, char y, int amount, u8 a5) -PrintMoneyAmount: @ 80E5214 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - ldr r4, [sp, 0x24] - lsls r0, 24 - lsrs r7, r0, 24 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - lsls r2, 24 - lsrs r6, r2, 24 - lsls r4, 24 - lsrs r5, r4, 24 - ldr r4, =gStringVar1 - adds r0, r4, 0 - adds r1, r3, 0 - movs r2, 0 - movs r3, 0x6 - bl ConvertIntToDecimalStringN - adds r0, r4, 0 - bl StringLength - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x6 - subs r1, r0 - ldr r2, =gStringVar4 - adds r0, r1, 0 - subs r1, 0x1 - cmp r0, 0 - ble _080E5264 - movs r3, 0x77 -_080E5258: - strb r3, [r2] - adds r2, 0x1 - adds r0, r1, 0 - subs r1, 0x1 - cmp r0, 0 - bgt _080E5258 -_080E5264: - ldr r1, =gText_PokedollarVar1 - adds r0, r2, 0 - bl StringExpandPlaceholders - ldr r2, =gStringVar4 - str r6, [sp] - str r5, [sp, 0x4] - movs r0, 0 - str r0, [sp, 0x8] - adds r0, r7, 0 - movs r1, 0x1 - mov r3, r8 - bl PrintTextOnWindow - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end PrintMoneyAmount - - thumb_func_start set_window_border_style_and_print_money_box -@ void set_window_border_style_and_print_money_box(u8 windowId, u16 tileStart, u8 palette, int amount) -set_window_border_style_and_print_money_box: @ 80E5298 - push {r4-r6,lr} - mov r6, r8 - push {r6} - adds r6, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - mov r8, r3 - lsls r6, 24 - lsrs r6, 24 - lsls r4, 16 - lsrs r4, 16 - lsls r5, 24 - lsrs r5, 24 - adds r0, r6, 0 - movs r1, 0 - adds r2, r4, 0 - adds r3, r5, 0 - bl SetWindowBorderStyle - adds r0, r6, 0 - mov r1, r8 - movs r2, 0 - bl PrintMoneyAmountInMoneyBox - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end set_window_border_style_and_print_money_box - - thumb_func_start sub_80E52D4 -sub_80E52D4: @ 80E52D4 - push {lr} - adds r1, r0, 0 - ldr r0, =gUnknown_02039F98 - ldrb r0, [r0] - movs r2, 0 - bl PrintMoneyAmountInMoneyBox - pop {r0} - bx r0 - .pool - thumb_func_end sub_80E52D4 - - thumb_func_start sub_80E52EC -@ void sub_80E52EC(int money, int x, int y) -sub_80E52EC: @ 80E52EC - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x18 - mov r8, r0 - adds r4, r1, 0 - adds r3, r2, 0 - lsls r4, 24 - lsls r3, 24 - lsrs r6, r4, 24 - movs r0, 0x80 - lsls r0, 17 - adds r4, r0 - lsrs r4, 24 - lsrs r5, r3, 24 - adds r3, r0 - lsrs r3, 24 - movs r0, 0xA - str r0, [sp] - movs r0, 0x2 - str r0, [sp, 0x4] - movs r0, 0xF - str r0, [sp, 0x8] - movs r0, 0x8 - str r0, [sp, 0xC] - add r0, sp, 0x10 - movs r1, 0 - adds r2, r4, 0 - bl SetWindowTemplateFields - ldr r4, =gUnknown_02039F98 - add r0, sp, 0x10 - bl AddWindow - strb r0, [r4] - ldrb r0, [r4] - movs r1, 0 - bl FillWindowPixelBuffer - ldrb r0, [r4] - bl PutWindowTilemap - ldrb r0, [r4] - movs r1, 0x1 - bl CopyWindowToVram - ldrb r0, [r4] - movs r1, 0x85 - lsls r1, 2 - movs r2, 0xE - mov r3, r8 - bl set_window_border_style_and_print_money_box - lsls r6, 19 - movs r0, 0x98 - lsls r0, 13 - adds r6, r0 - lsrs r6, 16 - lsls r5, 19 - movs r0, 0xB0 - lsls r0, 12 - adds r5, r0 - lsrs r5, 16 - adds r0, r6, 0 - adds r1, r5, 0 - bl AddMoneyLabelObject - add sp, 0x18 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80E52EC - - thumb_func_start sub_80E5384 -sub_80E5384: @ 80E5384 - push {r4,lr} - bl RemoveMoneyLabelObject - ldr r4, =gUnknown_02039F98 - ldrb r0, [r4] - movs r1, 0 - bl sub_8198070 - ldrb r0, [r4] - movs r1, 0x2 - bl CopyWindowToVram - ldrb r0, [r4] - bl RemoveWindow - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80E5384 - - thumb_func_start AddMoneyLabelObject -AddMoneyLabelObject: @ 80E53AC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r5, 16 - lsrs r5, 16 - ldr r0, =gUnknown_0858C2A4 - bl LoadCompressedObjectPic - ldr r0, =gUnknown_0858C2AC - bl LoadCompressedObjectPalette - ldr r0, =gUnknown_0858C28C - lsls r4, 16 - asrs r4, 16 - lsls r5, 16 - asrs r5, 16 - adds r1, r4, 0 - adds r2, r5, 0 - movs r3, 0 - bl CreateSprite - ldr r1, =gUnknown_02039F99 - strb r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end AddMoneyLabelObject - - thumb_func_start RemoveMoneyLabelObject -RemoveMoneyLabelObject: @ 80E53F4 - push {lr} - ldr r0, =gUnknown_02039F99 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - bl DestroySpriteAndFreeResources - pop {r0} - bx r0 - .pool - thumb_func_end RemoveMoneyLabelObject - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/mystery_event_menu.s b/asm/mystery_event_menu.s index 49de57848..df8e443a1 100644 --- a/asm/mystery_event_menu.s +++ b/asm/mystery_event_menu.s @@ -337,7 +337,7 @@ _08178C54: lsls r0, 24 cmp r0, 0 beq _08178D00 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _08178C68 @@ -435,13 +435,13 @@ _08178D28: _08178D36: b _08178E34 _08178D38: - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 cmp r0, 0 bne _08178D44 b _08178E58 _08178D44: - bl sub_800A5B4 + bl ResetBlockReceivedFlags ldr r1, =gMain movs r2, 0x87 lsls r2, 3 @@ -462,7 +462,7 @@ _08178D60: b _08178E3C .pool _08178D74: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r6, [r0] cmp r6, 0 bne _08178E58 diff --git a/asm/mystery_event_script.s b/asm/mystery_event_script.s index d544f689f..ce8591981 100644 --- a/asm/mystery_event_script.s +++ b/asm/mystery_event_script.s @@ -46,7 +46,7 @@ sub_8153804: @ 8153804 ldr r1, =gUnknown_08674C86 bl StringExpandPlaceholders movs r0, 0x3 - bl sub_81538C4 + bl SetMysteryEventScriptStatus pop {r0} bx r0 .pool @@ -140,13 +140,13 @@ _081538AC: .pool thumb_func_end sub_81538A0 - thumb_func_start sub_81538C4 -sub_81538C4: @ 81538C4 + thumb_func_start SetMysteryEventScriptStatus +SetMysteryEventScriptStatus: @ 81538C4 ldr r1, =gUnknown_0203BBC0 str r0, [r1, 0x6C] bx lr .pool - thumb_func_end sub_81538C4 + thumb_func_end SetMysteryEventScriptStatus thumb_func_start sub_81538D0 sub_81538D0: @ 81538D0 diff --git a/asm/naming_screen.s b/asm/naming_screen.s index 1839a7568..22d7b260e 100644 --- a/asm/naming_screen.s +++ b/asm/naming_screen.s @@ -840,7 +840,7 @@ pokemon_transfer_to_pc_with_message: @ 80E34E4 bl VarGet lsls r0, 24 lsrs r0, 24 - bl sav3_get_box_name + bl GetBoxNamePtr adds r1, r0, 0 adds r0, r4, 0 bl StringCopy @@ -859,7 +859,7 @@ _080E3534: bl VarGet lsls r0, 24 lsrs r0, 24 - bl sav3_get_box_name + bl GetBoxNamePtr adds r1, r0, 0 adds r0, r4, 0 bl StringCopy @@ -874,7 +874,7 @@ _080E3534: bl get_unknown_box_id lsls r0, 24 lsrs r0, 24 - bl sav3_get_box_name + bl GetBoxNamePtr adds r1, r0, 0 adds r0, r4, 0 bl StringCopy diff --git a/asm/party_menu.s b/asm/party_menu.s index 1e47701ae..f2e681b9b 100755 --- a/asm/party_menu.s +++ b/asm/party_menu.s @@ -5441,7 +5441,7 @@ sub_81B2E64: @ 81B2E64 mov r2, r9 lsls r1, r2, 16 asrs r1, 16 - bl sub_8075060 + bl GetHPBarLevel lsls r0, 24 lsrs r0, 24 cmp r0, 0x2 @@ -5495,7 +5495,7 @@ _081B2F04: asrs r1, 16 ldr r2, [r6] ldrb r2, [r2, 0x1A] - bl sub_8075034 + bl GetScaledHPFraction lsls r0, 24 lsrs r5, r0, 24 ldrb r0, [r6, 0x8] @@ -10051,7 +10051,7 @@ task_launch_hm_phase_2: @ 81B5750 cmp r0, 0x1 bne _081B577C bl brm_get_selected_species - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 16 lsrs r0, 16 str r0, [r1] @@ -10135,7 +10135,7 @@ _081B57FE: hm_surf_run_dp02scr: @ 81B5804 push {lr} bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r1] @@ -10239,7 +10239,7 @@ sub_81B58A8: @ 81B58A8 hm2_waterfall: @ 81B58D4 push {lr} bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r1] @@ -10299,7 +10299,7 @@ _081B594E: sub_81B5958: @ 81B5958 push {lr} bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r1] @@ -10314,7 +10314,7 @@ sub_81B5958: @ 81B5958 sub_81B5974: @ 81B5974 push {lr} bl sub_809D1E8 - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r1, 0x4] @@ -10452,7 +10452,7 @@ sub_81B5A8C: @ 81B5A8C asrs r2, 16 adds r0, r1, 0 adds r1, r2, 0 - bl sub_8075060 + bl GetHPBarLevel lsls r0, 24 lsrs r0, 24 cmp r0, 0x2 @@ -13868,7 +13868,7 @@ sub_81B7810: @ 81B7810 adds r0, r7, 0 adds r1, r4, 0 movs r2, 0x1 - bl sub_813DA40 + bl BeginEvolutionScene adds r0, r5, 0 bl DestroyTask b _081B786E @@ -15205,7 +15205,7 @@ sub_81B841C: @ 81B841C beq _081B8438 adds r0, r1, 0 movs r1, 0x1 - bl sub_80D6D70 + bl AddPCItem b _081B8440 .pool _081B8438: @@ -15872,7 +15872,7 @@ sub_81B8958: @ 81B8958 thumb_func_start sub_81B8984 sub_81B8984: @ 81B8984 push {lr} - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 bne _081B8994 @@ -16222,13 +16222,13 @@ _081B8CB0: strb r0, [r6, 0x2] b _081B8D58 _081B8CBE: - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 bne _081B8CFC movs r5, 0x1 movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity mov r2, sp ldr r1, =gBattlePartyID lsls r0, 24 @@ -16255,7 +16255,7 @@ _081B8CF0: _081B8CFC: movs r5, 0x2 movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity mov r1, sp ldr r4, =gBattlePartyID lsls r0, 24 @@ -16264,7 +16264,7 @@ _081B8CFC: ldrh r0, [r0] strb r0, [r1] movs r0, 0x2 - bl GetBankByPlayerAI + bl GetBankByIdentity mov r1, sp lsls r0, 24 lsrs r0, 23 @@ -16344,19 +16344,19 @@ sub_81B8D88: @ 81B8D88 cmp r0, 0 bne _081B8DB0 movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r4, r0, 24 movs r0, 0x2 b _081B8DBC _081B8DB0: movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r4, r0, 24 movs r0, 0x3 _081B8DBC: - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r6, r0, 24 bl sub_81B1250 @@ -16382,7 +16382,7 @@ _081B8DE2: strb r0, [r5, 0x2] b _081B8E72 _081B8DF0: - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 bne _081B8E28 diff --git a/asm/player_pc.s b/asm/player_pc.s index 14062347c..cd91ed3e1 100644 --- a/asm/player_pc.s +++ b/asm/player_pc.s @@ -31,7 +31,7 @@ _0816AE1A: ldrh r0, [r0] adds r1, r6 ldrh r1, [r1] - bl sub_80D6D70 + bl AddPCItem lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 diff --git a/asm/pokeball.s b/asm/pokeball.s index 06958d7d2..fed227c80 100755 --- a/asm/pokeball.s +++ b/asm/pokeball.s @@ -17,7 +17,7 @@ sub_80753E8: @ 80753E8 ldr r1, =gDoingBattleAnim movs r0, 0x1 strb r0, [r1] - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r6, =gActiveBank ldrb r1, [r6] @@ -185,7 +185,7 @@ _08075548: .pool _08075584: movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity ldr r1, =gBankTarget strb r0, [r1] movs r0, 0x1 @@ -992,7 +992,7 @@ _08075C22: movs r2, 0xC bl PlayCry4 _08075C2E: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x4] mov r2, r8 @@ -1082,7 +1082,7 @@ _08075CD8: movs r2, 0xB bl PlayCry4 _08075CE4: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x4] mov r2, r8 @@ -1199,23 +1199,23 @@ _08075DD4: lsrs r0, 16 mov r9, r0 movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 cmp r5, r0 beq _08075E00 movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 cmp r5, r0 bne _08075E56 _08075E00: - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08075E56 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r1, [r0, 0x9] @@ -1243,11 +1243,11 @@ _08075E4C: movs r2, 0x80 bl m4aMPlayVolumeControl _08075E56: - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08075E70 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r1, [r0, 0x9] @@ -1261,13 +1261,13 @@ _08075E70: .pool _08075E80: movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 cmp r5, r0 beq _08075E9C movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 cmp r5, r0 @@ -1278,7 +1278,7 @@ _08075E9C: _08075EA0: movs r4, 0x2 _08075EA2: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x4] mov r2, r8 @@ -1508,7 +1508,7 @@ _0807605C: strh r1, [r0, 0x26] ldr r0, =gDoingBattleAnim strb r2, [r0] - ldr r4, =gUnknown_020244D0 + ldr r4, =gBattleSpritesDataPtr ldr r0, [r4] ldr r0, [r0, 0x4] lsls r1, r6, 1 @@ -1619,7 +1619,7 @@ _08076130: ands r0, r1 cmp r0, 0 beq _08076196 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x4] lsls r1, r7, 1 @@ -1815,11 +1815,11 @@ _080762F8: ldrb r0, [r5, 0x6] strh r0, [r5, 0x3A] strh r1, [r5, 0x2E] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _08076358 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r1, [r0, 0x9] @@ -1830,7 +1830,7 @@ _080762F8: movs r0, 0x3A ldrsh r4, [r5, r0] movs r0, 0x2 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 cmp r4, r0 @@ -1888,11 +1888,11 @@ sub_8076398: @ 8076398 ble _080763EC movs r0, 0 strh r0, [r5, 0x2E] - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _080763E8 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0, 0x8] ldrb r1, [r0, 0x9] @@ -1903,7 +1903,7 @@ sub_8076398: @ 8076398 movs r0, 0x3A ldrsh r4, [r5, r0] movs r0, 0x3 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 cmp r4, r0 diff --git a/asm/pokeblock_feed.s b/asm/pokeblock_feed.s index d82c5df07..1f8e45f0a 100644 --- a/asm/pokeblock_feed.s +++ b/asm/pokeblock_feed.s @@ -95,7 +95,7 @@ _08179C48: bl FreeAllSpritePalettes b _08179D32 _08179C4E: - bl init_uns_table_pokemon_copy + bl AllocateMonSpritesGfx ldr r1, =gMain movs r2, 0x87 lsls r2, 3 @@ -322,7 +322,7 @@ _08179E48: lsls r0, r5, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] ldr r1, [r1, 0x8] adds r2, r5, 0 @@ -797,7 +797,7 @@ sub_817A2C0: @ 817A2C0 ldr r0, =gUnknown_0203BD18 ldr r0, [r0] bl Free - bl sub_805F094 + bl FreeMonSpritesGfx _0817A304: pop {r4} pop {r0} diff --git a/asm/pokedex.s b/asm/pokedex.s index fdaacde2c..f9ee0eeab 100644 --- a/asm/pokedex.s +++ b/asm/pokedex.s @@ -8429,8 +8429,8 @@ _080BFDB4: .pool thumb_func_end sub_80BFD7C - thumb_func_start sub_80BFDF4 -sub_80BFDF4: @ 80BFDF4 + thumb_func_start CreateDexDisplayMonDataTask +CreateDexDisplayMonDataTask: @ 80BFDF4 push {r4-r6,lr} adds r4, r0, 0 adds r5, r1, 0 @@ -8460,7 +8460,7 @@ sub_80BFDF4: @ 80BFDF4 pop {r1} bx r1 .pool - thumb_func_end sub_80BFDF4 + thumb_func_end CreateDexDisplayMonDataTask thumb_func_start sub_80BFE38 sub_80BFE38: @ 80BFE38 diff --git a/asm/pokemon_2.s b/asm/pokemon_2.s deleted file mode 100644 index 17856f6d3..000000000 --- a/asm/pokemon_2.s +++ /dev/null @@ -1,356 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start CopyPlayerPartyMonToBattleData -CopyPlayerPartyMonToBattleData: @ 806B9FC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x18 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x14] - lsls r1, 24 - lsrs r1, 24 - mov r9, r1 - movs r0, 0x64 - mov r5, r9 - muls r5, r0 - ldr r0, =gPlayerParty - adds r5, r0 - adds r0, r5, 0 - movs r1, 0xB - movs r2, 0 - bl GetMonData - ldr r1, =gBattleMons - mov r8, r1 - movs r1, 0x58 - ldr r2, [sp, 0x14] - adds r4, r2, 0 - muls r4, r1 - mov r3, r8 - adds r6, r4, r3 - strh r0, [r6] - adds r0, r5, 0 - movs r1, 0xC - movs r2, 0 - bl GetMonData - strh r0, [r6, 0x2E] - movs r6, 0 - mov r0, r8 - adds r0, 0x24 - adds r7, r4, r0 -_0806BA4E: - adds r1, r6, 0 - adds r1, 0xD - adds r0, r5, 0 - movs r2, 0 - bl GetMonData - movs r1, 0xC - add r1, r8 - mov r10, r1 - adds r1, r4, r1 - strh r0, [r1] - adds r1, r6, 0 - adds r1, 0x11 - adds r0, r5, 0 - movs r2, 0 - bl GetMonData - strb r0, [r7] - adds r7, 0x1 - adds r4, 0x2 - adds r6, 0x1 - cmp r6, 0x3 - ble _0806BA4E - movs r0, 0x64 - mov r4, r9 - muls r4, r0 - ldr r0, =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x15 - movs r2, 0 - bl GetMonData - movs r2, 0xC - negs r2, r2 - add r2, r10 - mov r9, r2 - movs r1, 0x58 - ldr r3, [sp, 0x14] - adds r5, r3, 0 - muls r5, r1 - adds r7, r5, r2 - adds r1, r7, 0 - adds r1, 0x3B - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x20 - movs r2, 0 - bl GetMonData - adds r1, r7, 0 - adds r1, 0x2B - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x19 - movs r2, 0 - bl GetMonData - mov r1, r10 - adds r1, 0x38 - adds r1, r5, r1 - str r0, [r1] - adds r0, r4, 0 - movs r1, 0x27 - movs r2, 0 - bl GetMonData - movs r6, 0x1F - ands r0, r6 - ldrb r2, [r7, 0x14] - movs r1, 0x20 - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r7, 0x14] - adds r0, r4, 0 - movs r1, 0x28 - movs r2, 0 - bl GetMonData - movs r1, 0x1F - mov r8, r1 - mov r2, r8 - ands r0, r2 - lsls r0, 5 - ldrh r2, [r7, 0x14] - ldr r1, =0xfffffc1f - ands r1, r2 - orrs r1, r0 - strh r1, [r7, 0x14] - adds r0, r4, 0 - movs r1, 0x29 - movs r2, 0 - bl GetMonData - ands r0, r6 - lsls r0, 2 - ldrb r2, [r7, 0x15] - movs r1, 0x7D - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r7, 0x15] - adds r0, r4, 0 - movs r1, 0x2A - movs r2, 0 - bl GetMonData - movs r1, 0x1F - ands r1, r0 - lsls r1, 15 - ldr r0, [r7, 0x14] - ldr r2, =0xfff07fff - ands r0, r2 - orrs r0, r1 - str r0, [r7, 0x14] - adds r0, r4, 0 - movs r1, 0x2B - movs r2, 0 - bl GetMonData - mov r3, r8 - ands r0, r3 - lsls r0, 4 - ldrh r2, [r7, 0x16] - ldr r1, =0xfffffe0f - ands r1, r2 - orrs r1, r0 - strh r1, [r7, 0x16] - adds r0, r4, 0 - movs r1, 0x2C - movs r2, 0 - bl GetMonData - ands r0, r6 - lsls r0, 1 - ldrb r2, [r7, 0x17] - movs r1, 0x3F - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r7, 0x17] - adds r0, r4, 0 - movs r1, 0 - movs r2, 0 - bl GetMonData - mov r1, r10 - adds r1, 0x3C - adds r1, r5, r1 - str r0, [r1] - adds r0, r4, 0 - movs r1, 0x37 - movs r2, 0 - bl GetMonData - mov r1, r10 - adds r1, 0x40 - adds r1, r5, r1 - str r0, [r1] - adds r0, r4, 0 - movs r1, 0x38 - movs r2, 0 - bl GetMonData - adds r1, r7, 0 - adds r1, 0x2A - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x39 - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x28] - adds r0, r4, 0 - movs r1, 0x3A - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x2C] - adds r0, r4, 0 - movs r1, 0x3B - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x2] - adds r0, r4, 0 - movs r1, 0x3C - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x4] - adds r0, r4, 0 - movs r1, 0x3D - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x6] - adds r0, r4, 0 - movs r1, 0x3E - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x8] - adds r0, r4, 0 - movs r1, 0x3F - movs r2, 0 - bl GetMonData - strh r0, [r7, 0xA] - adds r0, r4, 0 - movs r1, 0x2D - movs r2, 0 - bl GetMonData - movs r1, 0x1 - ands r0, r1 - lsls r0, 6 - ldrb r2, [r7, 0x17] - movs r1, 0x41 - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r7, 0x17] - adds r0, r4, 0 - movs r1, 0x2E - movs r2, 0 - bl GetMonData - lsls r0, 7 - ldrb r2, [r7, 0x17] - movs r1, 0x7F - ands r1, r2 - orrs r1, r0 - strb r1, [r7, 0x17] - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0 - bl GetMonData - mov r1, r10 - adds r1, 0x48 - adds r1, r5, r1 - str r0, [r1] - ldr r2, =gBaseStats - ldrh r1, [r7] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x6] - adds r1, r7, 0 - adds r1, 0x21 - strb r0, [r1] - ldrh r1, [r7] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x7] - adds r1, r7, 0 - adds r1, 0x22 - strb r0, [r1] - ldrh r0, [r7] - ldrb r1, [r7, 0x17] - lsrs r1, 7 - bl GetAbilityBySpecies - adds r1, r7, 0 - adds r1, 0x20 - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, r10 - adds r0, 0x24 - adds r0, r5, r0 - mov r1, sp - bl StringCopy10 - mov r2, r10 - adds r2, 0x30 - adds r2, r5, r2 - adds r0, r4, 0 - movs r1, 0x7 - bl GetMonData - ldr r0, [sp, 0x14] - bl GetBankSide - ldr r1, =gBattleStruct - lsls r0, 24 - lsrs r0, 23 - adds r0, 0xA8 - ldr r1, [r1] - adds r1, r0 - ldrh r0, [r7, 0x28] - strh r0, [r1] - movs r2, 0x6 - mov r1, r9 - movs r6, 0x7 - add r5, r10 - adds r0, r5, 0 - adds r0, 0x13 -_0806BCB2: - strb r2, [r0] - subs r0, 0x1 - subs r6, 0x1 - cmp r6, 0 - bge _0806BCB2 - movs r2, 0 - movs r0, 0x58 - ldr r3, [sp, 0x14] - muls r0, r3 - adds r1, 0x50 - adds r0, r1 - str r2, [r0] - ldr r0, [sp, 0x14] - bl sub_803FA70 - ldr r0, [sp, 0x14] - movs r1, 0 - bl sub_805EF84 - add sp, 0x18 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end CopyPlayerPartyMonToBattleData - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/pokemon_icon.s b/asm/pokemon_icon.s index e90253ab0..6009bd3f3 100755 --- a/asm/pokemon_icon.s +++ b/asm/pokemon_icon.s @@ -32,7 +32,7 @@ sub_80D2CC4: @ 80D2CC4 str r0, [sp, 0x18] adds r0, r4, 0 adds r2, r5, 0 - bl sub_80D2EDC + bl GetMonIconPtr str r0, [sp, 0x1C] ldr r0, =gUnknown_0857C5B4 str r0, [sp, 0x20] @@ -271,9 +271,9 @@ _080D2ED2: bx r1 thumb_func_end sub_80D2E84 - thumb_func_start sub_80D2EDC -@ void *sub_80D2EDC(u16 speciesId, u32 personality, bool32) -sub_80D2EDC: @ 80D2EDC + thumb_func_start GetMonIconPtr +@ void *GetMonIconPtr(u16 speciesId, u32 personality, bool32) +GetMonIconPtr: @ 80D2EDC push {r4,lr} adds r4, r2, 0 lsls r0, 16 @@ -286,7 +286,7 @@ sub_80D2EDC: @ 80D2EDC pop {r4} pop {r1} bx r1 - thumb_func_end sub_80D2EDC + thumb_func_end GetMonIconPtr thumb_func_start sub_80D2EF8 sub_80D2EF8: @ 80D2EF8 @@ -534,8 +534,8 @@ sub_80D30A0: @ 80D30A0 .pool thumb_func_end sub_80D30A0 - thumb_func_start sub_80D30B0 -sub_80D30B0: @ 80D30B0 + thumb_func_start GetValidMonIconPalettePtr +GetValidMonIconPalettePtr: @ 80D30B0 push {lr} lsls r0, 16 lsrs r2, r0, 16 @@ -556,7 +556,7 @@ _080D30C2: pop {r1} bx r1 .pool - thumb_func_end sub_80D30B0 + thumb_func_end GetValidMonIconPalettePtr thumb_func_start sub_80D30DC sub_80D30DC: @ 80D30DC diff --git a/asm/pokemon_item_effect.s b/asm/pokemon_item_effect.s index c798d7753..49b205967 100644 --- a/asm/pokemon_item_effect.s +++ b/asm/pokemon_item_effect.s @@ -221,7 +221,7 @@ _0806BEE0: mov r0, r8 movs r2, 0 ldr r3, [sp, 0x10] - bl sub_813DA40 + bl BeginEvolutionScene movs r0, 0 bl _0806CD5C _0806BEF0: @@ -1155,7 +1155,7 @@ _0806C6AE: movs r0, 0 movs r1, 0 movs r2, 0 - bl dp01_build_cmdbuf_x00_a_b_0 + bl EmitGetMonData ldrb r0, [r4] bl MarkBufferBankForExecution strb r5, [r4] diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 6cca9c144..d1f7bd161 100755 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -1019,7 +1019,7 @@ _080C777E: _080C779E: lsls r0, r5, 24 lsrs r0, 24 - bl sav3_get_box_name + bl GetBoxNamePtr ldr r1, =gText_Box bl StringCopy adds r4, r5, 0x1 @@ -1043,7 +1043,7 @@ _080C77C2: lsrs r5, r0, 16 cmp r5, 0xD bls _080C77C2 - bl sub_80D242C + bl ResetWaldaWallpaper pop {r4-r6} pop {r0} bx r0 @@ -1566,7 +1566,7 @@ sub_80C7BE4: @ 80C7BE4 lsls r4, 2 adds r0, r4 ldrb r0, [r0] - bl sav3_get_box_name + bl GetBoxNamePtr mov r10, r0 mov r1, r9 ldr r0, [r1] @@ -5424,7 +5424,7 @@ _080C9F1C: bl StorageGetCurrentBox lsls r0, 24 lsrs r0, 24 - bl sav3_get_box_name + bl GetBoxNamePtr adds r1, r0, 0 movs r0, 0 str r0, [sp] @@ -6902,7 +6902,7 @@ sub_80CABE0: @ 80CABE0 cmp r1, r0 beq _080CAC0A ldr r0, =0x000008d7 - bl FlagReset + bl FlagClear ldr r4, =0x00004036 bl StorageGetCurrentBox adds r1, r0, 0 @@ -7122,7 +7122,7 @@ sub_80CADD8: @ 80CADD8 bl sub_80CFF34 movs r0, 0x15 bl sub_80CFF34 - bl sub_80D2494 + bl IsWaldaWallpaperUnlocked cmp r0, 0 beq _080CAE04 movs r0, 0x16 @@ -10421,7 +10421,7 @@ _080CC888: b _080CC9DA .pool _080CC8C4: - bl sub_80D24A8 + bl GetWaldaWallpaperPatternId lsls r1, r0, 1 adds r1, r0 lsls r1, 2 @@ -10448,13 +10448,13 @@ _080CC8C4: adds r1, r4 movs r2, 0x20 bl CpuSet - bl sub_80D2510 + bl GetWaldaWallpaperColorsPtr ldr r1, [r7] ldr r2, =0x00000794 adds r1, r2 movs r2, 0x2 bl CpuSet - bl sub_80D2510 + bl GetWaldaWallpaperColorsPtr ldr r1, [r7] ldr r3, =0x000007b4 adds r1, r3 @@ -10500,7 +10500,7 @@ _080CC976: adds r1, r5 str r0, [r1] ldr r4, =gUnknown_0857B004 - bl sub_80D24DC + bl GetWaldaWallpaperIconId lsls r0, 2 adds r0, r4 ldr r0, [r0] @@ -10831,7 +10831,7 @@ sub_80CCB50: @ 80CCB50 ldr r5, =0x000021b8 adds r4, r5 mov r0, r8 - bl sav3_get_box_name + bl GetBoxNamePtr adds r1, r0, 0 adds r0, r4, 0 movs r2, 0 @@ -10852,7 +10852,7 @@ sub_80CCB50: @ 80CCB50 ldr r0, [sp, 0x2C] bl LoadSpriteSheet mov r0, r8 - bl sav3_get_box_name + bl GetBoxNamePtr bl sub_80CD00C movs r4, 0 lsls r0, 16 @@ -10997,7 +10997,7 @@ _080CCDB0: ldr r5, =0x000021b8 adds r4, r5 ldr r0, [sp, 0x28] - bl sav3_get_box_name + bl GetBoxNamePtr adds r1, r0, 0 adds r0, r4, 0 movs r2, 0 @@ -11027,7 +11027,7 @@ _080CCDB0: movs r2, 0x4 bl LoadPalette ldr r0, [sp, 0x28] - bl sav3_get_box_name + bl GetBoxNamePtr bl sub_80CD00C lsls r0, 16 mov r1, r10 @@ -17910,7 +17910,7 @@ sub_80D07B0: @ 80D07B0 beq _080D0828 adds r0, r5, 0 movs r2, 0x1 - bl sub_80D2EDC + bl GetMonIconPtr adds r4, r0, 0 adds r0, r5, 0 bl sub_80D3080 @@ -21085,8 +21085,8 @@ _080D20CA: bx r1 thumb_func_end GetBoxedMonPtr - thumb_func_start sav3_get_box_name -sav3_get_box_name: @ 80D20D0 + thumb_func_start GetBoxNamePtr +GetBoxNamePtr: @ 80D20D0 push {lr} lsls r0, 24 lsrs r2, r0, 24 @@ -21106,7 +21106,7 @@ _080D20EC: pop {r1} bx r1 .pool - thumb_func_end sav3_get_box_name + thumb_func_end GetBoxNamePtr thumb_func_start sub_80D20F8 sub_80D20F8: @ 80D20F8 @@ -21544,8 +21544,8 @@ _080D241E: bx r1 thumb_func_end sub_80D23A8 - thumb_func_start sub_80D242C -sub_80D242C: @ 80D242C + thumb_func_start ResetWaldaWallpaper +ResetWaldaWallpaper: @ 80D242C ldr r2, =gSaveBlock1Ptr ldr r0, [r2] ldr r1, =0x00003d84 @@ -21575,10 +21575,10 @@ sub_80D242C: @ 80D242C strb r0, [r1] bx lr .pool - thumb_func_end sub_80D242C + thumb_func_end ResetWaldaWallpaper - thumb_func_start sub_80D2480 -sub_80D2480: @ 80D2480 + thumb_func_start SetWaldaWallpaperLockedOrUnlocked +SetWaldaWallpaperLockedOrUnlocked: @ 80D2480 ldr r1, =gSaveBlock1Ptr ldr r1, [r1] ldr r2, =0x00003d86 @@ -21586,10 +21586,10 @@ sub_80D2480: @ 80D2480 strb r0, [r1] bx lr .pool - thumb_func_end sub_80D2480 + thumb_func_end SetWaldaWallpaperLockedOrUnlocked - thumb_func_start sub_80D2494 -sub_80D2494: @ 80D2494 + thumb_func_start IsWaldaWallpaperUnlocked +IsWaldaWallpaperUnlocked: @ 80D2494 ldr r0, =gSaveBlock1Ptr ldr r0, [r0] ldr r1, =0x00003d86 @@ -21597,10 +21597,10 @@ sub_80D2494: @ 80D2494 ldrb r0, [r0] bx lr .pool - thumb_func_end sub_80D2494 + thumb_func_end IsWaldaWallpaperUnlocked - thumb_func_start sub_80D24A8 -sub_80D24A8: @ 80D24A8 + thumb_func_start GetWaldaWallpaperPatternId +GetWaldaWallpaperPatternId: @ 80D24A8 ldr r0, =gSaveBlock1Ptr ldr r0, [r0] ldr r1, =0x00003d85 @@ -21608,10 +21608,10 @@ sub_80D24A8: @ 80D24A8 ldrb r0, [r0] bx lr .pool - thumb_func_end sub_80D24A8 + thumb_func_end GetWaldaWallpaperPatternId - thumb_func_start sub_80D24BC -sub_80D24BC: @ 80D24BC + thumb_func_start SetWaldaWallpaperPatternId +SetWaldaWallpaperPatternId: @ 80D24BC push {lr} lsls r0, 24 lsrs r1, r0, 24 @@ -21626,10 +21626,10 @@ _080D24D0: pop {r0} bx r0 .pool - thumb_func_end sub_80D24BC + thumb_func_end SetWaldaWallpaperPatternId - thumb_func_start sub_80D24DC -sub_80D24DC: @ 80D24DC + thumb_func_start GetWaldaWallpaperIconId +GetWaldaWallpaperIconId: @ 80D24DC ldr r0, =gSaveBlock1Ptr ldr r0, [r0] ldr r1, =0x00003d84 @@ -21637,10 +21637,10 @@ sub_80D24DC: @ 80D24DC ldrb r0, [r0] bx lr .pool - thumb_func_end sub_80D24DC + thumb_func_end GetWaldaWallpaperIconId - thumb_func_start sub_80D24F0 -sub_80D24F0: @ 80D24F0 + thumb_func_start SetWaldaWallpaperIconId +SetWaldaWallpaperIconId: @ 80D24F0 push {lr} lsls r0, 24 lsrs r1, r0, 24 @@ -21655,20 +21655,20 @@ _080D2504: pop {r0} bx r0 .pool - thumb_func_end sub_80D24F0 + thumb_func_end SetWaldaWallpaperIconId - thumb_func_start sub_80D2510 -sub_80D2510: @ 80D2510 + thumb_func_start GetWaldaWallpaperColorsPtr +GetWaldaWallpaperColorsPtr: @ 80D2510 ldr r0, =gSaveBlock1Ptr ldr r0, [r0] ldr r1, =0x00003d70 adds r0, r1 bx lr .pool - thumb_func_end sub_80D2510 + thumb_func_end GetWaldaWallpaperColorsPtr - thumb_func_start sub_80D2524 -sub_80D2524: @ 80D2524 + thumb_func_start SetWaldaWallpaperColors +SetWaldaWallpaperColors: @ 80D2524 push {r4,lr} ldr r2, =gSaveBlock1Ptr ldr r2, [r2] @@ -21682,20 +21682,20 @@ sub_80D2524: @ 80D2524 pop {r0} bx r0 .pool - thumb_func_end sub_80D2524 + thumb_func_end SetWaldaWallpaperColors - thumb_func_start sub_80D2548 -sub_80D2548: @ 80D2548 + thumb_func_start GetWaldaPhrasePtr +GetWaldaPhrasePtr: @ 80D2548 ldr r0, =gSaveBlock1Ptr ldr r0, [r0] ldr r1, =0x00003d74 adds r0, r1 bx lr .pool - thumb_func_end sub_80D2548 + thumb_func_end GetWaldaPhrasePtr - thumb_func_start sub_80D255C -sub_80D255C: @ 80D255C + thumb_func_start SetWaldaPhrase +SetWaldaPhrase: @ 80D255C push {lr} adds r1, r0, 0 ldr r0, =gSaveBlock1Ptr @@ -21706,10 +21706,10 @@ sub_80D255C: @ 80D255C pop {r0} bx r0 .pool - thumb_func_end sub_80D255C + thumb_func_end SetWaldaPhrase - thumb_func_start sub_80D2578 -sub_80D2578: @ 80D2578 + thumb_func_start IsWaldaPhraseEmpty +IsWaldaPhraseEmpty: @ 80D2578 push {lr} movs r1, 0 ldr r0, =gSaveBlock1Ptr @@ -21725,7 +21725,7 @@ _080D258C: pop {r1} bx r1 .pool - thumb_func_end sub_80D2578 + thumb_func_end IsWaldaPhraseEmpty thumb_func_start sub_80D259C sub_80D259C: @ 80D259C diff --git a/asm/pokemon_summary_screen.s b/asm/pokemon_summary_screen.s index 2ad67ba5a..fd2518075 100755 --- a/asm/pokemon_summary_screen.s +++ b/asm/pokemon_summary_screen.s @@ -5,7832 +5,6 @@ .text - thumb_func_start sub_81BF8EC -sub_81BF8EC: @ 81BF8EC - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r1 - adds r5, r2, 0 - adds r6, r3, 0 - lsls r0, 24 - lsrs r7, r0, 24 - lsls r5, 24 - lsrs r5, 24 - lsls r6, 24 - lsrs r6, 24 - ldr r4, =gUnknown_0203CF1C - ldr r0, =0x000040f8 - bl AllocZeroed - str r0, [r4] - ldr r1, =0x000040bc - adds r0, r1 - strb r7, [r0] - ldr r0, [r4] - mov r2, r8 - str r2, [r0] - adds r1, 0x2 - adds r0, r1 - strb r5, [r0] - ldr r0, [r4] - ldr r2, =0x000040bf - adds r0, r2 - strb r6, [r0] - ldr r1, [r4] - ldr r0, [sp, 0x18] - str r0, [r1, 0x4] - cmp r7, 0x2 - bne _081BF94C - subs r2, 0x2 - adds r1, r2 - movs r0, 0x1 - b _081BF952 - .pool -_081BF94C: - ldr r0, =0x000040bd - adds r1, r0 - movs r0, 0 -_081BF952: - strb r0, [r1] - cmp r7, 0x1 - beq _081BF9A0 - cmp r7, 0x1 - bgt _081BF96C - cmp r7, 0 - beq _081BF97C - ldr r2, =gUnknown_0203CF1C - b _081BF9EE - .pool -_081BF96C: - cmp r7, 0x2 - beq _081BF97C - cmp r7, 0x3 - beq _081BF9D0 - ldr r2, =gUnknown_0203CF1C - b _081BF9EE - .pool -_081BF97C: - ldr r2, =gUnknown_0203CF1C - ldr r0, [r2] - ldr r1, =0x000040c1 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - ldr r1, =0x000040c2 - adds r0, r1 - movs r1, 0x3 - b _081BF9EC - .pool -_081BF9A0: - ldr r2, =gUnknown_0203CF1C - ldr r0, [r2] - ldr r1, =0x000040c1 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - ldr r1, =0x000040c2 - adds r0, r1 - movs r1, 0x3 - strb r1, [r0] - ldr r0, [r2] - ldr r1, =0x000040c8 - adds r0, r1 - strb r7, [r0] - b _081BF9EE - .pool -_081BF9D0: - ldr r2, =gUnknown_0203CF1C - ldr r0, [r2] - ldr r1, =0x000040c1 - adds r0, r1 - movs r1, 0x2 - strb r1, [r0] - ldr r0, [r2] - ldr r1, =0x000040c2 - adds r0, r1 - strb r7, [r0] - ldr r0, [r2] - adds r1, 0x1 - adds r0, r1 - movs r1, 0x1 -_081BF9EC: - strb r1, [r0] -_081BF9EE: - ldr r0, [r2] - ldr r2, =0x000040c1 - adds r1, r0, r2 - ldrb r1, [r1] - subs r2, 0x1 - adds r0, r2 - strb r1, [r0] - movs r0, 0xFF - bl sub_81C488C - ldr r0, =gBattleSpritesGfx - ldr r0, [r0] - cmp r0, 0 - bne _081BFA12 - movs r0, 0 - movs r1, 0 - bl sub_806F2AC -_081BFA12: - ldr r0, =sub_81BFAE4 - bl SetMainCallback2 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81BF8EC - - thumb_func_start sub_81BFA38 -sub_81BFA38: @ 81BFA38 - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x4 - mov r8, r0 - adds r4, r1, 0 - adds r5, r2, 0 - ldr r6, [sp, 0x18] - lsls r4, 24 - lsrs r4, 24 - lsls r5, 24 - lsrs r5, 24 - lsls r6, 16 - lsrs r6, 16 - str r3, [sp] - movs r0, 0x3 - mov r1, r8 - adds r2, r4, 0 - adds r3, r5, 0 - bl sub_81BF8EC - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040c4 - adds r0, r1 - strh r6, [r0] - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81BFA38 - - thumb_func_start sub_81BFA80 -sub_81BFA80: @ 81BFA80 - push {r4,lr} - sub sp, 0x4 - ldr r4, [sp, 0xC] - lsls r0, 24 - lsrs r0, 24 - lsls r2, 24 - lsrs r2, 24 - lsls r3, 24 - lsrs r3, 24 - str r4, [sp] - bl sub_81BF8EC - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040ef - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81BFA80 - - thumb_func_start sub_81BFAB4 -sub_81BFAB4: @ 81BFAB4 - push {lr} - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl do_scheduled_bg_tilemap_copies_to_vram - bl UpdatePaletteFade - pop {r0} - bx r0 - thumb_func_end sub_81BFAB4 - - thumb_func_start sub_81BFAD0 -sub_81BFAD0: @ 81BFAD0 - push {lr} - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - pop {r0} - bx r0 - thumb_func_end sub_81BFAD0 - - thumb_func_start sub_81BFAE4 -sub_81BFAE4: @ 81BFAE4 - push {lr} -_081BFAE6: - bl sub_81221EC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081BFB0A - bl sub_81BFB10 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081BFB0A - bl sub_81221AC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081BFAE6 -_081BFB0A: - pop {r0} - bx r0 - thumb_func_end sub_81BFAE4 - - thumb_func_start sub_81BFB10 -sub_81BFB10: @ 81BFB10 - push {r4,lr} - sub sp, 0x4 - ldr r0, =gMain - movs r1, 0x87 - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x18 - bls _081BFB24 - b _081BFE00 -_081BFB24: - lsls r0, 2 - ldr r1, =_081BFB38 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_081BFB38: - .4byte _081BFB9C - .4byte _081BFBAA - .4byte _081BFBBC - .4byte _081BFBD0 - .4byte _081BFBE4 - .4byte _081BFBEA - .4byte _081BFC04 - .4byte _081BFC20 - .4byte _081BFC26 - .4byte _081BFC38 - .4byte _081BFC58 - .4byte _081BFC7C - .4byte _081BFC82 - .4byte _081BFC94 - .4byte _081BFCAC - .4byte _081BFCC0 - .4byte _081BFCD8 - .4byte _081BFCF8 - .4byte _081BFD34 - .4byte _081BFD50 - .4byte _081BFD60 - .4byte _081BFD74 - .4byte _081BFD7A - .4byte _081BFDB0 - .4byte _081BFDCC -_081BFB9C: - bl SetVBlankHBlankCallbacksToNull - bl sub_8121DA0 - bl clear_scheduled_bg_copies_to_vram - b _081BFDE6 -_081BFBAA: - bl remove_some_task - ldr r1, =gMain - movs r0, 0x87 - lsls r0, 3 - adds r1, r0 - b _081BFDEE - .pool -_081BFBBC: - bl ResetPaletteFade - ldr r2, =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - b _081BFDE4 - .pool -_081BFBD0: - bl ResetSpriteData - ldr r1, =gMain - movs r0, 0x87 - lsls r0, 3 - adds r1, r0 - b _081BFDEE - .pool -_081BFBE4: - bl FreeAllSpritePalettes - b _081BFDE6 -_081BFBEA: - bl sub_81BFE24 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040f0 - adds r0, r1 - movs r1, 0 - strh r1, [r0] - b _081BFDE6 - .pool -_081BFC04: - bl sub_81BFEB0 - lsls r0, 24 - cmp r0, 0 - bne _081BFC10 - b _081BFE18 -_081BFC10: - ldr r1, =gMain - movs r0, 0x87 - lsls r0, 3 - adds r1, r0 - b _081BFDEE - .pool -_081BFC20: - bl sub_81C2554 - b _081BFDE6 -_081BFC26: - bl sub_81C1BA0 - ldr r1, =gMain - movs r0, 0x87 - lsls r0, 3 - adds r1, r0 - b _081BFDEE - .pool -_081BFC38: - ldr r4, =gUnknown_0203CF1C - ldr r0, [r4] - adds r0, 0xC - bl sub_81C0098 - ldr r0, [r4] - ldr r1, =0x000040f0 - adds r0, r1 - movs r1, 0 - strh r1, [r0] - b _081BFDE6 - .pool -_081BFC58: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r0, 0xC - bl sub_81C00F0 - lsls r0, 24 - cmp r0, 0 - bne _081BFC6A - b _081BFE18 -_081BFC6A: - ldr r1, =gMain - movs r0, 0x87 - lsls r0, 3 - adds r1, r0 - b _081BFDEE - .pool -_081BFC7C: - bl sub_81C25E8 - b _081BFDE6 -_081BFC82: - bl sub_81C286C - ldr r1, =gMain - movs r0, 0x87 - lsls r0, 3 - adds r1, r0 - b _081BFDEE - .pool -_081BFC94: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040c0 - adds r0, r1 - ldrb r0, [r0] - bl sub_81C2D9C - b _081BFDE6 - .pool -_081BFCAC: - bl sub_81C0348 - ldr r1, =gMain - movs r0, 0x87 - lsls r0, 3 - adds r1, r0 - b _081BFDEE - .pool -_081BFCC0: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040c0 - adds r0, r1 - ldrb r0, [r0] - bl sub_81C2AFC - b _081BFDE6 - .pool -_081BFCD8: - bl sub_81C4190 - bl sub_81C42C8 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040f0 - adds r0, r1 - movs r1, 0 - strh r1, [r0] - b _081BFDE6 - .pool -_081BFCF8: - ldr r4, =gUnknown_0203CF1C - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0xC - ldr r2, =0x000040f0 - adds r1, r2 - bl sub_81C45F4 - ldr r1, [r4] - ldr r2, =0x000040d3 - adds r1, r2 - strb r0, [r1] - ldr r1, [r4] - adds r2, r1, r2 - ldrb r0, [r2] - cmp r0, 0xFF - bne _081BFD1C - b _081BFE18 -_081BFD1C: - ldr r0, =0x000040f0 - adds r1, r0 - movs r0, 0 - strh r0, [r1] - b _081BFDE6 - .pool -_081BFD34: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r0, 0xC - bl sub_81C4984 - ldr r1, =gMain - movs r0, 0x87 - lsls r0, 3 - adds r1, r0 - b _081BFDEE - .pool -_081BFD50: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r0, 0xC - bl sub_81C4A08 - b _081BFDE6 - .pool -_081BFD60: - bl sub_81C4A88 - ldr r1, =gMain - movs r0, 0x87 - lsls r0, 3 - adds r1, r0 - b _081BFDEE - .pool -_081BFD74: - bl sub_81C4280 - b _081BFDE6 -_081BFD7A: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040bc - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x3 - beq _081BFDA0 - ldr r0, =sub_81C0510 - movs r1, 0 - bl CreateTask - b _081BFDE6 - .pool -_081BFDA0: - ldr r0, =sub_81C171C - movs r1, 0 - bl CreateTask - b _081BFDE6 - .pool -_081BFDB0: - movs r0, 0x1 - negs r0, r0 - movs r1, 0x10 - movs r2, 0 - bl BlendPalettes - ldr r1, =gMain - movs r0, 0x87 - lsls r0, 3 - adds r1, r0 - b _081BFDEE - .pool -_081BFDCC: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r2, =gPaletteFade - ldrb r1, [r2, 0x8] - movs r0, 0x7F - ands r0, r1 -_081BFDE4: - strb r0, [r2, 0x8] -_081BFDE6: - ldr r1, =gMain - movs r2, 0x87 - lsls r2, 3 - adds r1, r2 -_081BFDEE: - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _081BFE18 - .pool -_081BFE00: - ldr r0, =sub_81BFAD0 - bl SetVBlankCallback - ldr r0, =sub_81BFAB4 - bl SetMainCallback2 - movs r0, 0x1 - b _081BFE1A - .pool -_081BFE18: - movs r0, 0 -_081BFE1A: - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_81BFB10 - - thumb_func_start sub_81BFE24 -sub_81BFE24: @ 81BFE24 - push {r4,lr} - movs r0, 0 - bl ResetBgsAndClearDma3BusyFlags - ldr r1, =gUnknown_0861CBB4 - movs r0, 0 - movs r2, 0x4 - bl InitBgsFromTemplates - ldr r4, =gUnknown_0203CF1C - ldr r1, [r4] - ldr r0, =0x000020bc - adds r1, r0 - movs r0, 0x1 - bl SetBgTilemapBuffer - ldr r1, [r4] - ldr r0, =0x000010bc - adds r1, r0 - movs r0, 0x2 - bl SetBgTilemapBuffer - ldr r1, [r4] - adds r1, 0xBC - movs r0, 0x3 - bl SetBgTilemapBuffer - bl sub_8121E10 - movs r0, 0x1 - bl schedule_bg_copy_tilemap_to_vram - movs r0, 0x2 - bl schedule_bg_copy_tilemap_to_vram - movs r0, 0x3 - bl schedule_bg_copy_tilemap_to_vram - movs r1, 0x82 - lsls r1, 5 - movs r0, 0 - bl SetGpuReg - movs r0, 0x50 - movs r1, 0 - bl SetGpuReg - movs r0, 0 - bl ShowBg - movs r0, 0x1 - bl ShowBg - movs r0, 0x2 - bl ShowBg - movs r0, 0x3 - bl ShowBg - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81BFE24 - - thumb_func_start sub_81BFEB0 -sub_81BFEB0: @ 81BFEB0 - push {r4,lr} - sub sp, 0x4 - ldr r1, =gUnknown_0203CF1C - ldr r0, [r1] - ldr r2, =0x000040f0 - adds r0, r2 - movs r2, 0 - ldrsh r0, [r0, r2] - adds r4, r1, 0 - cmp r0, 0xC - bls _081BFEC8 - b _081C008C -_081BFEC8: - lsls r0, 2 - ldr r1, =_081BFEE0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_081BFEE0: - .4byte _081BFF14 - .4byte _081BFF30 - .4byte _081BFF60 - .4byte _081BFF78 - .4byte _081BFF90 - .4byte _081BFFA8 - .4byte _081BFFC0 - .4byte _081BFFF0 - .4byte _081BFFFC - .4byte _081C0018 - .4byte _081C0024 - .4byte _081C0040 - .4byte _081C0064 -_081BFF14: - bl reset_temp_tile_data_buffers - ldr r1, =gUnknown_08D97D0C - movs r0, 0 - str r0, [sp] - movs r0, 0x1 - movs r2, 0 - movs r3, 0 - bl decompress_and_copy_tile_data_to_vram - b _081C0046 - .pool -_081BFF30: - bl free_temp_tile_data_buffers_if_possible - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081BFF3E - b _081C008C -_081BFF3E: - ldr r0, =gUnknown_08D9862C - ldr r4, =gUnknown_0203CF1C - ldr r1, [r4] - adds r1, 0xBC - bl LZDecompressWram - ldr r1, [r4] - ldr r2, =0x000040f0 - adds r1, r2 - b _081C004E - .pool -_081BFF60: - ldr r0, =gUnknown_08D98CC8 - ldr r1, [r4] - ldr r2, =0x000008bc - adds r1, r2 - bl LZDecompressWram - ldr r1, [r4] - b _081C004A - .pool -_081BFF78: - ldr r0, =gUnknown_08D987FC - ldr r1, [r4] - ldr r2, =0x000018bc - adds r1, r2 - bl LZDecompressWram - ldr r1, [r4] - b _081C004A - .pool -_081BFF90: - ldr r0, =gUnknown_08D9898C - ldr r1, [r4] - ldr r2, =0x000028bc - adds r1, r2 - bl LZDecompressWram - ldr r1, [r4] - b _081C004A - .pool -_081BFFA8: - ldr r0, =gUnknown_08D98B28 - ldr r1, [r4] - ldr r2, =0x000038bc - adds r1, r2 - bl LZDecompressWram - ldr r1, [r4] - b _081C004A - .pool -_081BFFC0: - ldr r0, =gUnknown_08D9853C - movs r2, 0x80 - lsls r2, 1 - movs r1, 0 - bl LoadCompressedPalette - ldr r0, =gUnknown_08D85620 - movs r1, 0x81 - movs r2, 0x1E - bl LoadPalette - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - ldr r2, =0x000040f0 - adds r1, r2 - b _081C004E - .pool -_081BFFF0: - ldr r0, =gUnknown_0861CFBC - bl LoadCompressedObjectPic - b _081C0046 - .pool -_081BFFFC: - ldr r0, =gUnknown_0861D074 - bl LoadCompressedObjectPic - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - ldr r2, =0x000040f0 - adds r1, r2 - b _081C004E - .pool -_081C0018: - ldr r0, =gUnknown_0861D0F8 - bl LoadCompressedObjectPic - b _081C0046 - .pool -_081C0024: - ldr r0, =gUnknown_0861D100 - bl LoadCompressedObjectPalette - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - ldr r2, =0x000040f0 - adds r1, r2 - b _081C004E - .pool -_081C0040: - ldr r0, =gUnknown_0861D07C - bl LoadCompressedObjectPalette -_081C0046: - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] -_081C004A: - ldr r0, =0x000040f0 - adds r1, r0 -_081C004E: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _081C008C - .pool -_081C0064: - ldr r0, =gUnknown_08D97B84 - movs r1, 0xE8 - lsls r1, 1 - movs r2, 0x60 - bl LoadCompressedPalette - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040f0 - adds r0, r1 - movs r1, 0 - strh r1, [r0] - movs r0, 0x1 - b _081C008E - .pool -_081C008C: - movs r0, 0 -_081C008E: - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_81BFEB0 - - thumb_func_start sub_81C0098 -sub_81C0098: @ 81C0098 - push {r4,lr} - adds r3, r0, 0 - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - ldr r2, =0x000040bd - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _081C00D0 - ldr r2, [r1] - ldr r4, =0x000040be - adds r0, r1, r4 - ldrb r1, [r0] - movs r0, 0x64 - muls r1, r0 - adds r1, r2 - adds r0, r3, 0 - movs r2, 0x64 - bl memcpy - b _081C00E6 - .pool -_081C00D0: - ldr r0, [r1] - ldr r2, =0x000040be - adds r1, r2 - ldrb r2, [r1] - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 4 - adds r0, r1 - adds r1, r3, 0 - bl sub_8069004 -_081C00E6: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C0098 - - thumb_func_start sub_81C00F0 -sub_81C00F0: @ 81C00F0 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r5, r0, 0 - ldr r0, =gUnknown_0203CF1C - ldr r7, [r0] - adds r6, r7, 0 - adds r6, 0x70 - ldr r1, =0x000040f0 - adds r0, r7, r1 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0x1 - beq _081C0198 - cmp r0, 0x1 - bgt _081C0120 - cmp r0, 0 - beq _081C012C - b _081C0314 - .pool -_081C0120: - cmp r0, 0x2 - beq _081C01DC - cmp r0, 0x3 - bne _081C012A - b _081C02A8 -_081C012A: - b _081C0314 -_081C012C: - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - strh r0, [r6] - adds r0, r5, 0 - movs r1, 0x41 - bl GetMonData - strh r0, [r6, 0x2] - adds r0, r5, 0 - movs r1, 0x19 - bl GetMonData - str r0, [r6, 0x10] - adds r0, r5, 0 - movs r1, 0x38 - bl GetMonData - strb r0, [r6, 0x5] - adds r0, r5, 0 - movs r1, 0x2E - bl GetMonData - strb r0, [r6, 0x8] - adds r0, r5, 0 - movs r1, 0xC - bl GetMonData - strh r0, [r6, 0x2E] - adds r0, r5, 0 - movs r1, 0 - bl GetMonData - str r0, [r6, 0xC] - adds r0, r5, 0 - movs r1, 0x4 - bl GetMonData - adds r1, r7, 0 - adds r1, 0xA5 - strb r0, [r1] - lsls r0, 24 - cmp r0, 0 - beq _081C018C - movs r0, 0x1 - strb r0, [r6, 0x4] - b _081C0322 -_081C018C: - adds r0, r5, 0 - movs r1, 0x2D - bl GetMonData - strb r0, [r6, 0x4] - b _081C0322 -_081C0198: - movs r4, 0 - movs r0, 0x8C - adds r0, r7 - mov r8, r0 - movs r1, 0xA4 - adds r1, r7 - mov r9, r1 - adds r6, r7, 0 - adds r6, 0x84 -_081C01AA: - adds r1, r4, 0 - adds r1, 0xD - adds r0, r5, 0 - bl GetMonData - strh r0, [r6] - adds r1, r4, 0 - adds r1, 0x11 - adds r0, r5, 0 - bl GetMonData - mov r2, r8 - adds r1, r2, r4 - strb r0, [r1] - adds r6, 0x2 - adds r4, 0x1 - cmp r4, 0x3 - bls _081C01AA - adds r0, r5, 0 - movs r1, 0x15 - bl GetMonData - mov r1, r9 - strb r0, [r1] - b _081C0322 -_081C01DC: - ldr r1, [r7] - ldr r0, =gPlayerParty - cmp r1, r0 - beq _081C01F8 - ldr r2, =0x000040bc - adds r0, r7, r2 - ldrb r0, [r0] - cmp r0, 0x2 - beq _081C01F8 - ldr r1, =0x000040ef - adds r0, r7, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _081C0254 -_081C01F8: - adds r0, r5, 0 - bl GetNature - adds r1, r6, 0 - adds r1, 0x33 - strb r0, [r1] - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - strh r0, [r6, 0x20] - adds r0, r5, 0 - movs r1, 0x3A - bl GetMonData - strh r0, [r6, 0x22] - adds r0, r5, 0 - movs r1, 0x3B - bl GetMonData - strh r0, [r6, 0x24] - adds r0, r5, 0 - movs r1, 0x3C - bl GetMonData - strh r0, [r6, 0x26] - adds r0, r5, 0 - movs r1, 0x3E - bl GetMonData - strh r0, [r6, 0x28] - adds r0, r5, 0 - movs r1, 0x3F - bl GetMonData - strh r0, [r6, 0x2A] - adds r0, r5, 0 - movs r1, 0x3D - b _081C02A0 - .pool -_081C0254: - adds r0, r5, 0 - bl GetNature - adds r1, r7, 0 - adds r1, 0xA3 - strb r0, [r1] - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - strh r0, [r6, 0x20] - adds r0, r5, 0 - movs r1, 0x3A - bl GetMonData - strh r0, [r6, 0x22] - adds r0, r5, 0 - movs r1, 0x54 - bl GetMonData - strh r0, [r6, 0x24] - adds r0, r5, 0 - movs r1, 0x55 - bl GetMonData - strh r0, [r6, 0x26] - adds r0, r5, 0 - movs r1, 0x57 - bl GetMonData - strh r0, [r6, 0x28] - adds r0, r5, 0 - movs r1, 0x58 - bl GetMonData - strh r0, [r6, 0x2A] - adds r0, r5, 0 - movs r1, 0x56 -_081C02A0: - bl GetMonData - strh r0, [r6, 0x2C] - b _081C0322 -_081C02A8: - adds r4, r7, 0 - adds r4, 0xA6 - adds r0, r5, 0 - movs r1, 0x7 - adds r2, r4, 0 - bl GetMonData - adds r0, r5, 0 - movs r1, 0x3 - bl GetMonData - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl ConvertInternationalString - adds r0, r5, 0 - bl sub_81B205C - strb r0, [r6, 0x7] - adds r0, r5, 0 - movs r1, 0x31 - bl GetMonData - adds r1, r7, 0 - adds r1, 0xA2 - strb r0, [r1] - adds r0, r5, 0 - movs r1, 0x1 - bl GetMonData - str r0, [r6, 0x48] - adds r0, r5, 0 - movs r1, 0x23 - bl GetMonData - strb r0, [r6, 0x9] - adds r0, r5, 0 - movs r1, 0x24 - bl GetMonData - strb r0, [r6, 0xA] - adds r0, r5, 0 - movs r1, 0x25 - bl GetMonData - strb r0, [r6, 0xB] - adds r0, r5, 0 - movs r1, 0x20 - bl GetMonData - strh r0, [r6, 0x30] - b _081C0322 -_081C0314: - adds r0, r5, 0 - movs r1, 0x52 - bl GetMonData - strb r0, [r6, 0x6] - movs r0, 0x1 - b _081C0332 -_081C0322: - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - ldr r2, =0x000040f0 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - movs r0, 0 -_081C0332: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_81C00F0 - - thumb_func_start sub_81C0348 -sub_81C0348: @ 81C0348 - push {r4-r6,lr} - ldr r6, =gUnknown_0203CF1C - ldr r2, [r6] - ldr r1, =0x000040c0 - adds r0, r2, r1 - ldrb r0, [r0] - subs r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _081C037C - movs r0, 0 - movs r1, 0xFF - bl sub_81C1DA4 - movs r0, 0 - movs r1, 0xFF - movs r2, 0 - bl sub_81C1EFC - b _081C03D8 - .pool -_081C037C: - ldr r1, =0x000040c6 - adds r0, r2, r1 - ldrb r1, [r0] - lsls r1, 1 - adds r0, r2, 0 - adds r0, 0x84 - adds r0, r1 - ldrh r0, [r0] - bl sub_81C240C - ldr r0, [r6] - ldr r5, =0x000020bc - adds r0, r5 - movs r1, 0x3 - movs r2, 0 - bl sub_81C2194 - ldr r0, [r6] - ldr r4, =0x000030bc - adds r0, r4 - movs r1, 0x1 - movs r2, 0 - bl sub_81C2194 - ldr r1, [r6] - adds r1, r4 - movs r0, 0x1 - bl SetBgTilemapBuffer - ldr r1, [r6] - adds r1, r5 - movs r0, 0x2 - bl SetBgTilemapBuffer - movs r1, 0x80 - lsls r1, 9 - movs r0, 0x2 - movs r2, 0x1 - bl ChangeBgX - movs r0, 0x13 - bl ClearWindowTilemap - movs r0, 0xD - bl ClearWindowTilemap -_081C03D8: - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x77 - ldrb r0, [r0] - cmp r0, 0 - bne _081C0400 - movs r0, 0 - movs r1, 0xFF - bl sub_81C2074 - b _081C0416 - .pool -_081C0400: - ldr r2, =0x000040c0 - adds r0, r1, r2 - ldrb r0, [r0] - subs r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _081C0416 - movs r0, 0xD - bl PutWindowTilemap -_081C0416: - bl sub_81C2524 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r0, 0xC - bl sub_81C2228 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C0348 - - thumb_func_start sub_81C0434 -sub_81C0434: @ 81C0434 - push {lr} - bl FreeAllWindowBuffers - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - bl Free - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C0434 - - thumb_func_start sub_81C044C -sub_81C044C: @ 81C044C - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_81C0484 - str r1, [r0] - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C044C - - thumb_func_start sub_81C0484 -sub_81C0484: @ 81C0484 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - bl sub_81221EC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081C04EC - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _081C04EC - ldr r4, =gUnknown_0203CF1C - ldr r0, [r4] - ldr r0, [r0, 0x4] - bl SetMainCallback2 - ldr r1, =gUnknown_0203CF20 - ldr r0, [r4] - ldr r2, =0x000040be - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - bl sub_81C4898 - bl ResetSpriteData - bl FreeAllSpritePalettes - bl StopCryAndClearCrySongs - ldr r0, =gMPlay_BGM - ldr r1, =0x0000ffff - movs r2, 0x80 - lsls r2, 1 - bl m4aMPlayVolumeControl - ldr r0, =gBattleSpritesGfx - ldr r0, [r0] - cmp r0, 0 - bne _081C04E2 - movs r0, 0 - bl sub_806F47C -_081C04E2: - bl sub_81C0434 - adds r0, r5, 0 - bl DestroyTask -_081C04EC: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C0484 - - thumb_func_start sub_81C0510 -sub_81C0510: @ 81C0510 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_81221EC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081C05FE - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r2, 0x80 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _081C05FE - ldr r5, =gMain - ldrh r1, [r5, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _081C0550 - movs r1, 0x1 - negs r1, r1 - adds r0, r4, 0 - bl sub_81C0604 - b _081C05FE - .pool -_081C0550: - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _081C0562 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_81C0604 - b _081C05FE -_081C0562: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _081C0576 - bl GetLRKeysState - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081C0582 -_081C0576: - movs r1, 0x1 - negs r1, r1 - adds r0, r4, 0 - bl sub_81C0A8C - b _081C05FE -_081C0582: - ldrh r1, [r5, 0x2E] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _081C0598 - bl GetLRKeysState - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _081C05A2 -_081C0598: - adds r0, r4, 0 - movs r1, 0x1 - bl sub_81C0A8C - b _081C05FE -_081C05A2: - ldrh r1, [r5, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _081C05E6 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040c0 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - beq _081C05FE - cmp r0, 0 - bne _081C05D8 - bl sub_81C48F0 - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_81C044C - b _081C05FE - .pool -_081C05D8: - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_81C0E48 - b _081C05FE -_081C05E6: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _081C05FE - bl sub_81C48F0 - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_81C044C -_081C05FE: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_81C0510 - - thumb_func_start sub_81C0604 -sub_81C0604: @ 81C0604 - push {r4-r7,lr} - lsls r0, 24 - lsrs r7, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - adds r4, r5, 0 - ldr r1, =gUnknown_0203CF1C - ldr r3, [r1] - ldr r2, =0x000040c3 - adds r0, r3, r2 - ldrb r0, [r0] - adds r6, r1, 0 - cmp r0, 0 - bne _081C06EE - ldr r1, =0x000040bd - adds r0, r3, r1 - ldrb r2, [r0] - cmp r2, 0x1 - bne _081C0678 - adds r1, 0x3 - adds r0, r3, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _081C0654 - lsls r1, r5, 24 - asrs r1, 24 - movs r4, 0x2 - eors r1, r2 - negs r0, r1 - orrs r0, r1 - asrs r0, 31 - ands r4, r0 - b _081C065C - .pool -_081C0654: - movs r4, 0x3 - cmp r5, 0x1 - bne _081C065C - movs r4, 0x1 -_081C065C: - ldr r2, [r6] - ldr r0, [r2] - ldr r3, =0x000040be - adds r1, r2, r3 - ldrb r1, [r1] - adds r3, 0x1 - adds r2, r3 - ldrb r2, [r2] - adds r3, r4, 0 - bl sub_80D214C - b _081C0696 - .pool -_081C0678: - bl sub_81B1250 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081C068E - lsls r0, r5, 24 - asrs r0, 24 - bl sub_81C09B4 - b _081C0696 -_081C068E: - lsls r0, r4, 24 - asrs r0, 24 - bl sub_81C08F8 -_081C0696: - lsls r0, 24 - lsrs r4, r0, 24 - lsls r0, r4, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _081C06EE - movs r0, 0x5 - bl PlaySE - ldr r5, =gUnknown_0203CF1C - ldr r0, [r5] - adds r0, 0x77 - ldrb r0, [r0] - cmp r0, 0 - beq _081C06D4 - movs r0, 0x2 - movs r1, 0x1 - bl sub_81C4204 - movs r0, 0xD - bl ClearWindowTilemap - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - movs r0, 0 - movs r1, 0x2 - bl sub_81C2074 -_081C06D4: - ldr r0, [r5] - ldr r1, =0x000040be - adds r0, r1 - movs r2, 0 - strb r4, [r0] - ldr r1, =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - strh r2, [r0, 0x8] - ldr r1, =sub_81C0704 - str r1, [r0] -_081C06EE: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C0604 - - thumb_func_start sub_81C0704 -sub_81C0704: @ 81C0704 - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r4, r1, 3 - ldr r6, =gTasks + 0x8 - adds r5, r4, r6 - movs r1, 0 - ldrsh r0, [r5, r1] - cmp r0, 0xC - bls _081C071E - b _081C08BC -_081C071E: - lsls r0, 2 - ldr r1, =_081C0730 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_081C0730: - .4byte _081C0764 - .4byte _081C076A - .4byte _081C0780 - .4byte _081C07A8 - .4byte _081C07C8 - .4byte _081C07E0 - .4byte _081C07F0 - .4byte _081C0800 - .4byte _081C0828 - .4byte _081C086C - .4byte _081C0872 - .4byte _081C0878 - .4byte _081C0894 -_081C0764: - bl StopCryAndClearCrySongs - b _081C08EC -_081C076A: - bl sub_81C4898 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040d3 - b _081C0786 - .pool -_081C0780: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040d4 -_081C0786: - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - bl DestroySpriteAndFreeResources - b _081C08EC - .pool -_081C07A8: - ldr r4, =gUnknown_0203CF1C - ldr r0, [r4] - adds r0, 0xC - bl sub_81C0098 - ldr r0, [r4] - ldr r1, =0x000040f0 - adds r0, r1 - movs r1, 0 - strh r1, [r0] - b _081C08EC - .pool -_081C07C8: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r0, 0xC - bl sub_81C00F0 - lsls r0, 24 - cmp r0, 0 - bne _081C07DA - b _081C08F2 -_081C07DA: - b _081C08EC - .pool -_081C07E0: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r0, 0xC - bl sub_81C49E0 - b _081C08EC - .pool -_081C07F0: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r0, 0xC - bl sub_81C4A08 - b _081C08EC - .pool -_081C0800: - ldr r4, =gUnknown_0203CF1C - ldr r0, [r4] - adds r0, 0x77 - ldrb r0, [r0] - cmp r0, 0 - beq _081C0816 - movs r1, 0x2 - negs r1, r1 - movs r0, 0xA - bl sub_81C2074 -_081C0816: - ldr r0, [r4] - adds r0, 0xC - bl sub_81C2228 - movs r0, 0 - strh r0, [r5, 0x2] - b _081C08EC - .pool -_081C0828: - ldr r4, =gUnknown_0203CF1C - ldr r0, [r4] - adds r0, 0xC - adds r1, r5, 0x2 - bl sub_81C45F4 - ldr r1, [r4] - ldr r2, =0x000040d3 - adds r1, r2 - strb r0, [r1] - ldr r0, [r4] - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0xFF - beq _081C08F2 - ldr r2, =gSprites - adds r1, r0, 0 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0x1 - strh r1, [r0, 0x32] - bl sub_81C0E24 - movs r0, 0 - strh r0, [r5, 0x2] - b _081C08EC - .pool -_081C086C: - bl sub_81C4280 - b _081C08EC -_081C0872: - bl sub_81C25E8 - b _081C08EC -_081C0878: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040c0 - adds r0, r1 - ldrb r0, [r0] - bl sub_81C2D9C - bl sub_81C2524 - b _081C08EC - .pool -_081C0894: - ldr r2, =gSprites - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040d3 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0 - strh r1, [r0, 0x32] - b _081C08EC - .pool -_081C08BC: - bl sub_81221EC - lsls r0, 24 - cmp r0, 0 - bne _081C08F2 - ldr r0, =sub_81C20F0 - bl FuncIsActiveTask - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _081C08F2 - strh r0, [r5] - adds r0, r6, 0 - subs r0, 0x8 - adds r0, r4, r0 - ldr r1, =sub_81C0510 - str r1, [r0] - b _081C08F2 - .pool -_081C08EC: - ldrh r0, [r5] - adds r0, 0x1 - strh r0, [r5] -_081C08F2: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_81C0704 - - thumb_func_start sub_81C08F8 -sub_81C08F8: @ 81C08F8 - push {r4-r7,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, =gUnknown_0203CF1C - ldr r2, [r1] - ldr r7, [r2] - ldr r3, =0x000040c0 - adds r0, r2, r3 - ldrb r0, [r0] - adds r5, r1, 0 - cmp r0, 0 - bne _081C0960 - lsls r0, r4, 24 - asrs r3, r0, 24 - movs r1, 0x1 - negs r1, r1 - adds r6, r0, 0 - cmp r3, r1 - bne _081C0928 - ldr r1, =0x000040be - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _081C0988 -_081C0928: - asrs r0, r6, 24 - cmp r0, 0x1 - bne _081C0940 - ldr r0, [r5] - ldr r2, =0x000040be - adds r1, r0, r2 - ldr r3, =0x000040bf - adds r0, r3 - ldrb r1, [r1] - ldrb r0, [r0] - cmp r1, r0 - bcs _081C0988 -_081C0940: - ldr r0, [r5] - ldr r1, =0x000040be - adds r0, r1 - ldrb r0, [r0] - adds r0, r4 - lsls r0, 24 - asrs r0, 24 - b _081C09AE - .pool -_081C0960: - ldr r3, =0x000040be - adds r0, r2, r3 - ldrb r5, [r0] - lsls r6, r4, 24 -_081C0968: - lsls r0, r5, 24 - asrs r0, 24 - asrs r1, r6, 24 - adds r0, r1 - lsls r0, 24 - lsrs r5, r0, 24 - asrs r4, r0, 24 - cmp r4, 0 - blt _081C0988 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040bf - adds r0, r1 - ldrb r0, [r0] - cmp r4, r0 - ble _081C099C -_081C0988: - movs r0, 0x1 - negs r0, r0 - b _081C09AE - .pool -_081C099C: - movs r0, 0x64 - muls r0, r4 - adds r0, r7, r0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _081C0968 - adds r0, r4, 0 -_081C09AE: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_81C08F8 - - thumb_func_start sub_81C09B4 -sub_81C09B4: @ 81C09B4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r0, 24 - mov r12, r0 - ldr r6, =gUnknown_0203CF1C - ldr r0, [r6] - ldr r1, [r0] - mov r8, r1 - movs r5, 0 - movs r2, 0 - ldr r3, =gUnknown_0861CC1C - movs r1, 0 - ldrsb r1, [r3, r1] - ldr r4, =0x000040be - adds r0, r4 - ldrb r0, [r0] - cmp r1, r0 - beq _081C09FC - adds r7, r3, 0 - adds r3, r4, 0 -_081C09E0: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x5 - bhi _081C09FC - adds r0, r2, r7 - movs r1, 0 - ldrsb r1, [r0, r1] - ldr r0, [r6] - adds r0, r3 - ldrb r0, [r0] - cmp r1, r0 - bne _081C09E0 - adds r5, r2, 0 -_081C09FC: - mov r0, r12 - lsls r6, r0, 24 - ldr r7, =gUnknown_0861CC1C -_081C0A02: - lsls r0, r5, 24 - asrs r0, 24 - asrs r1, r6, 24 - adds r0, r1 - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, r5, 24 - lsrs r0, r1, 24 - cmp r0, 0x5 - bhi _081C0A40 - asrs r0, r1, 24 - adds r0, r7 - movs r4, 0 - ldrsb r4, [r0, r4] - movs r0, 0x64 - muls r0, r4 - add r0, r8 - bl sub_81C0A50 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081C0A02 - adds r0, r4, 0 - b _081C0A44 - .pool -_081C0A40: - movs r0, 0x1 - negs r0, r0 -_081C0A44: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_81C09B4 - - thumb_func_start sub_81C0A50 -sub_81C0A50: @ 81C0A50 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _081C0A84 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040be - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _081C0A78 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _081C0A84 -_081C0A78: - movs r0, 0x1 - b _081C0A86 - .pool -_081C0A84: - movs r0, 0 -_081C0A86: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_81C0A50 - - thumb_func_start sub_81C0A8C -sub_81C0A8C: @ 81C0A8C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - lsls r0, 24 - lsrs r6, r0, 24 - str r6, [sp] - lsls r1, 24 - lsrs r3, r1, 24 - str r3, [sp, 0x4] - ldr r0, =gUnknown_0203CF1C - mov r8, r0 - ldr r2, [r0] - adds r1, r2, 0 - adds r1, 0x70 - lsls r0, r6, 2 - adds r0, r6 - lsls r7, r0, 3 - ldr r0, =gTasks + 0x8 - mov r9, r0 - adds r0, r7, r0 - str r0, [sp, 0x8] - ldrb r1, [r1, 0x4] - mov r10, r1 - cmp r1, 0 - bne _081C0B6E - lsls r0, r3, 24 - asrs r5, r0, 24 - movs r0, 0x1 - negs r0, r0 - cmp r5, r0 - bne _081C0AE0 - ldr r1, =0x000040c0 - adds r0, r2, r1 - ldr r3, =0x000040c1 - adds r1, r2, r3 - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - beq _081C0B6E -_081C0AE0: - cmp r5, 0x1 - bne _081C0AF4 - ldr r1, =0x000040c0 - adds r0, r2, r1 - ldr r3, =0x000040c2 - adds r1, r2, r3 - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - beq _081C0B6E -_081C0AF4: - movs r0, 0x5 - bl PlaySE - mov r1, r8 - ldr r0, [r1] - ldr r4, =0x000040c0 - adds r0, r4 - ldrb r0, [r0] - bl sub_81C2C38 - mov r2, r8 - ldr r1, [r2] - adds r1, r4 - ldrb r0, [r1] - ldr r3, [sp, 0x4] - adds r0, r3 - strb r0, [r1] - mov r1, r10 - ldr r0, [sp, 0x8] - strh r1, [r0] - cmp r5, 0x1 - bne _081C0B4C - ldr r1, =sub_81C0B8C - mov r0, r9 - subs r0, 0x8 - adds r0, r7, r0 - ldr r2, [r0] - adds r0, r6, 0 - bl SetTaskFuncWithFollowupFunc - b _081C0B5C - .pool -_081C0B4C: - ldr r1, =sub_81C0CC4 - mov r0, r9 - subs r0, 0x8 - adds r0, r7, r0 - ldr r2, [r0] - ldr r0, [sp] - bl SetTaskFuncWithFollowupFunc -_081C0B5C: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r2, =0x000040c0 - adds r0, r2 - ldrb r0, [r0] - bl sub_81C2DE4 - bl sub_81C424C -_081C0B6E: - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C0A8C - - thumb_func_start sub_81C0B8C -sub_81C0B8C: @ 81C0B8C - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _081C0C2A - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r3, =0x000040c9 - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0 - bne _081C0BE0 - movs r0, 0x1 - strh r0, [r4, 0x2] - movs r0, 0x1 - movs r1, 0x7 - movs r2, 0x1 - bl SetBgAttribute - movs r0, 0x2 - movs r1, 0x7 - movs r2, 0x2 - bl SetBgAttribute - movs r0, 0x1 - bl schedule_bg_copy_tilemap_to_vram - b _081C0BFE - .pool -_081C0BE0: - movs r0, 0x2 - strh r0, [r4, 0x2] - movs r0, 0x2 - movs r1, 0x7 - movs r2, 0x1 - bl SetBgAttribute - movs r0, 0x1 - movs r1, 0x7 - movs r2, 0x2 - bl SetBgAttribute - movs r0, 0x2 - bl schedule_bg_copy_tilemap_to_vram -_081C0BFE: - ldrb r0, [r4, 0x2] - movs r1, 0 - movs r2, 0 - bl ChangeBgX - ldrb r0, [r4, 0x2] - ldr r1, =gUnknown_0203CF1C - ldr r1, [r1] - ldr r3, =0x000040c0 - adds r2, r1, r3 - ldrb r2, [r2] - lsls r2, 12 - adds r2, 0xBC - adds r1, r2 - bl SetBgTilemapBuffer - movs r0, 0x1 - bl ShowBg - movs r0, 0x2 - bl ShowBg -_081C0C2A: - ldrb r0, [r4, 0x2] - movs r1, 0x80 - lsls r1, 6 - movs r2, 0x1 - bl ChangeBgX - ldrh r0, [r4] - adds r0, 0x20 - strh r0, [r4] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xFF - ble _081C0C52 - ldr r0, =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, =sub_81C0C68 - str r0, [r1] -_081C0C52: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C0B8C - - thumb_func_start sub_81C0C68 -sub_81C0C68: @ 81C0C68 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r2, r4, 2 - adds r2, r4 - lsls r2, 3 - ldr r0, =gTasks + 0x8 - adds r2, r0 - ldr r5, =gUnknown_0203CF1C - ldr r3, [r5] - ldr r0, =0x000040c9 - adds r3, r0 - ldrb r0, [r3] - movs r1, 0x1 - eors r0, r1 - movs r1, 0 - strb r0, [r3] - strh r1, [r2, 0x2] - strh r1, [r2] - bl sub_81C1BA0 - ldr r0, [r5] - ldr r1, =0x000040c0 - adds r0, r1 - ldrb r0, [r0] - bl sub_81C2AFC - bl sub_81C4280 - bl sub_81C0E24 - adds r0, r4, 0 - bl SwitchTaskToFollowupFunc - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C0C68 - - thumb_func_start sub_81C0CC4 -sub_81C0CC4: @ 81C0CC4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _081C0D0C - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040c9 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _081C0CFC - movs r0, 0x2 - b _081C0CFE - .pool -_081C0CFC: - movs r0, 0x1 -_081C0CFE: - strh r0, [r4, 0x2] - ldrb r0, [r4, 0x2] - movs r1, 0x80 - lsls r1, 9 - movs r2, 0 - bl ChangeBgX -_081C0D0C: - ldrb r0, [r4, 0x2] - movs r1, 0x80 - lsls r1, 6 - movs r2, 0x2 - bl ChangeBgX - ldrh r0, [r4] - adds r0, 0x20 - strh r0, [r4] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xFF - ble _081C0D34 - ldr r0, =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, =sub_81C0D44 - str r0, [r1] -_081C0D34: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C0CC4 - - thumb_func_start sub_81C0D44 -sub_81C0D44: @ 81C0D44 - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040c9 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _081C0D8C - movs r0, 0x1 - movs r1, 0x7 - movs r2, 0x1 - bl SetBgAttribute - movs r0, 0x2 - movs r1, 0x7 - movs r2, 0x2 - bl SetBgAttribute - movs r0, 0x2 - bl schedule_bg_copy_tilemap_to_vram - b _081C0DA6 - .pool -_081C0D8C: - movs r0, 0x2 - movs r1, 0x7 - movs r2, 0x1 - bl SetBgAttribute - movs r0, 0x1 - movs r1, 0x7 - movs r2, 0x2 - bl SetBgAttribute - movs r0, 0x1 - bl schedule_bg_copy_tilemap_to_vram -_081C0DA6: - ldr r6, =gUnknown_0203CF1C - ldr r2, [r6] - ldr r7, =0x000040c0 - adds r1, r2, r7 - ldrb r0, [r1] - cmp r0, 0x1 - bls _081C0DD0 - ldrb r0, [r4, 0x2] - ldrb r1, [r1] - lsls r1, 12 - ldr r3, =0xfffff0bc - adds r1, r3 - adds r1, r2, r1 - bl SetBgTilemapBuffer - ldrb r0, [r4, 0x2] - movs r1, 0x80 - lsls r1, 9 - movs r2, 0 - bl ChangeBgX -_081C0DD0: - movs r0, 0x1 - bl ShowBg - movs r0, 0x2 - bl ShowBg - ldr r2, [r6] - ldr r0, =0x000040c9 - adds r2, r0 - ldrb r0, [r2] - movs r1, 0x1 - eors r0, r1 - movs r1, 0 - strb r0, [r2] - strh r1, [r4, 0x2] - strh r1, [r4] - bl sub_81C1BA0 - ldr r0, [r6] - adds r0, r7 - ldrb r0, [r0] - bl sub_81C2AFC - bl sub_81C4280 - bl sub_81C0E24 - adds r0, r5, 0 - bl SwitchTaskToFollowupFunc - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C0D44 - - thumb_func_start sub_81C0E24 -sub_81C0E24: @ 81C0E24 - push {lr} - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - ldr r2, =0x000040c0 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x1 - bne _081C0E3C - adds r0, r1, 0 - adds r0, 0xC - bl sub_81C22CC -_081C0E3C: - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C0E24 - - thumb_func_start sub_81C0E48 -sub_81C0E48: @ 81C0E48 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r7, r0, 24 - ldr r5, =gUnknown_0203CF1C - ldr r0, [r5] - ldr r2, =0x000040c6 - adds r0, r2 - movs r1, 0 - strb r1, [r0] - ldr r1, [r5] - adds r2, r1, r2 - ldrb r0, [r2] - lsls r0, 1 - adds r1, 0x84 - adds r1, r0 - ldrh r6, [r1] - mov r8, r6 - movs r0, 0x13 - bl ClearWindowTilemap - ldr r2, =gSprites - ldr r0, [r5] - ldr r1, =0x000040d5 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r0, [r0] - lsls r0, 29 - cmp r0, 0 - blt _081C0E96 - movs r0, 0xD - bl ClearWindowTilemap -_081C0E96: - movs r4, 0x3 - negs r4, r4 - movs r0, 0x9 - adds r1, r4, 0 - bl sub_81C1DA4 - movs r0, 0x9 - adds r1, r4, 0 - adds r2, r6, 0 - bl sub_81C1EFC - ldr r0, [r5] - ldr r1, =0x000040c8 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _081C0EC4 - movs r0, 0x5 - bl ClearWindowTilemap - movs r0, 0x6 - bl PutWindowTilemap -_081C0EC4: - ldr r0, [r5] - ldr r1, =0x000020bc - adds r0, r1 - movs r1, 0x3 - movs r2, 0 - bl sub_81C2194 - ldr r0, [r5] - ldr r1, =0x000030bc - adds r0, r1 - movs r1, 0x1 - movs r2, 0 - bl sub_81C2194 - mov r0, r8 - bl sub_81C3E9C - bl sub_81C3F44 - bl sub_81C44F0 - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - movs r0, 0x1 - bl schedule_bg_copy_tilemap_to_vram - movs r0, 0x2 - bl schedule_bg_copy_tilemap_to_vram - movs r0, 0x8 - bl sub_81C4AF8 - ldr r1, =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_81C0F44 - str r1, [r0] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C0E48 - - thumb_func_start sub_81C0F44 -sub_81C0F44: @ 81C0F44 - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - bl sub_81221EC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081C103A - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _081C0F98 - movs r0, 0x4 - strh r0, [r4] - movs r1, 0x1 - negs r1, r1 - ldr r0, =gUnknown_0203CF1C - ldr r2, [r0] - ldr r0, =0x000040c6 - adds r2, r0 - adds r0, r4, 0 - bl sub_81C1070 - b _081C103A - .pool -_081C0F98: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _081C0FC0 - movs r0, 0x4 - strh r0, [r4] - ldr r0, =gUnknown_0203CF1C - ldr r2, [r0] - ldr r0, =0x000040c6 - adds r2, r0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_81C1070 - b _081C103A - .pool -_081C0FC0: - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _081C1026 - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - ldr r2, =0x000040c8 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x1 - beq _081C0FE8 - subs r2, 0x4 - adds r0, r1, r2 - ldr r0, [r0] - ldr r1, =0x00ffffff - ands r0, r1 - movs r1, 0x80 - lsls r1, 11 - cmp r0, r1 - bne _081C1004 -_081C0FE8: - movs r0, 0x5 - bl PlaySE - adds r0, r5, 0 - bl sub_81C11F4 - b _081C103A - .pool -_081C1004: - bl sub_81C1040 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081C101E - movs r0, 0x5 - bl PlaySE - adds r0, r5, 0 - bl sub_81C129C - b _081C103A -_081C101E: - movs r0, 0x20 - bl PlaySE - b _081C103A -_081C1026: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _081C103A - movs r0, 0x5 - bl PlaySE - adds r0, r6, 0 - bl sub_81C11F4 -_081C103A: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_81C0F44 - - thumb_func_start sub_81C1040 -sub_81C1040: @ 81C1040 - push {lr} - movs r1, 0x1 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r2, r0, 0 - adds r2, 0x84 -_081C104C: - lsls r0, r1, 1 - adds r0, r2, r0 - ldrh r0, [r0] - cmp r0, 0 - beq _081C1060 - movs r0, 0x1 - b _081C106C - .pool -_081C1060: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x3 - bls _081C104C - movs r0, 0 -_081C106C: - pop {r1} - bx r1 - thumb_func_end sub_81C1040 - - thumb_func_start sub_81C1070 -sub_81C1070: @ 81C1070 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r7, r0, 0 - adds r4, r1, 0 - mov r8, r2 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x5 - bl PlaySE - mov r0, r8 - ldrb r6, [r0] - movs r2, 0 - lsls r4, 24 - asrs r4, 24 - mov r12, r4 - movs r1, 0 - ldrsh r4, [r7, r1] - ldrb r0, [r7] - lsls r3, r0, 24 -_081C109C: - lsls r0, r6, 24 - asrs r0, 24 - add r0, r12 - lsls r0, 24 - lsrs r6, r0, 24 - asrs r0, 24 - cmp r0, r4 - ble _081C10B0 - movs r6, 0 - b _081C10B6 -_081C10B0: - cmp r0, 0 - bge _081C10B6 - lsrs r6, r3, 24 -_081C10B6: - lsls r0, r6, 24 - asrs r1, r0, 24 - mov r9, r0 - cmp r1, 0x4 - bne _081C10C2 - b _081C11CC -_081C10C2: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - lsls r1, 1 - adds r0, 0x84 - adds r0, r1 - ldrh r5, [r0] - cmp r5, 0 - bne _081C10E2 - lsls r0, r2, 24 - movs r1, 0x80 - lsls r1, 17 - adds r0, r1 - lsrs r2, r0, 24 - asrs r0, 24 - cmp r0, 0x3 - ble _081C109C -_081C10E2: - adds r0, r5, 0 - bl sub_81C240C - movs r0, 0x1 - bl schedule_bg_copy_tilemap_to_vram - movs r0, 0x2 - bl schedule_bg_copy_tilemap_to_vram - adds r0, r5, 0 - bl sub_81C3E9C - mov r1, r8 - ldrb r0, [r1] - cmp r0, 0x4 - bne _081C1110 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040c4 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0 - beq _081C1118 -_081C1110: - movs r1, 0x2 - ldrsh r0, [r7, r1] - cmp r0, 0x1 - bne _081C115E -_081C1118: - movs r0, 0x13 - bl ClearWindowTilemap - ldr r2, =gSprites - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040d5 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r0, [r0] - lsls r0, 29 - cmp r0, 0 - blt _081C1142 - movs r0, 0xD - bl ClearWindowTilemap -_081C1142: - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - movs r4, 0x3 - negs r4, r4 - movs r0, 0x9 - adds r1, r4, 0 - bl sub_81C1DA4 - movs r0, 0x9 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_81C1EFC -_081C115E: - mov r1, r8 - ldrb r0, [r1] - cmp r0, 0x4 - beq _081C11A0 - mov r1, r9 - asrs r0, r1, 24 - cmp r0, 0x4 - bne _081C11A0 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040c4 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0 - bne _081C11A0 - movs r0, 0xE - bl ClearWindowTilemap - movs r0, 0xF - bl ClearWindowTilemap - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - movs r0, 0 - movs r1, 0x3 - bl sub_81C1DA4 - movs r0, 0 - movs r1, 0x3 - movs r2, 0 - bl sub_81C1EFC -_081C11A0: - mov r0, r8 - strb r6, [r0] - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040c6 - adds r0, r1 - cmp r8, r0 - bne _081C11E0 - movs r0, 0x8 - bl sub_81C4D18 - b _081C11E6 - .pool -_081C11CC: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040c4 - adds r0, r1 - ldrh r5, [r0] - b _081C10E2 - .pool -_081C11E0: - movs r0, 0x12 - bl sub_81C4D18 -_081C11E6: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_81C1070 - - thumb_func_start sub_81C11F4 -sub_81C11F4: @ 81C11F4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r0, 0x8 - bl sub_81C4C60 - movs r0, 0x6 - bl ClearWindowTilemap - movs r0, 0x5 - bl PutWindowTilemap - movs r0, 0 - bl sub_81C3E9C - ldr r4, =gUnknown_0203CF1C - ldr r0, [r4] - ldr r1, =0x000020bc - adds r0, r1 - movs r1, 0x3 - movs r2, 0x1 - bl sub_81C2194 - ldr r0, [r4] - ldr r1, =0x000030bc - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_81C2194 - bl sub_81C4064 - ldr r0, [r4] - ldr r1, =0x000040c6 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x4 - beq _081C125E - movs r0, 0xE - bl ClearWindowTilemap - movs r0, 0xF - bl ClearWindowTilemap - movs r0, 0 - movs r1, 0x3 - bl sub_81C1DA4 - movs r0, 0 - movs r1, 0x3 - movs r2, 0 - bl sub_81C1EFC -_081C125E: - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - movs r0, 0x1 - bl schedule_bg_copy_tilemap_to_vram - movs r0, 0x2 - bl schedule_bg_copy_tilemap_to_vram - ldr r0, =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, =sub_81C0510 - str r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C11F4 - - thumb_func_start sub_81C129C -sub_81C129C: @ 81C129C - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r2, =0x000040c6 - adds r1, r0, r2 - ldrb r1, [r1] - adds r2, 0x1 - adds r0, r2 - strb r1, [r0] - movs r0, 0x1 - bl sub_81C4C84 - movs r0, 0x12 - bl sub_81C4AF8 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_81C12E4 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C129C - - thumb_func_start sub_81C12E4 -sub_81C12E4: @ 81C12E4 - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - bl sub_81221EC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081C13AA - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _081C1338 - movs r0, 0x3 - strh r0, [r4] - movs r1, 0x1 - negs r1, r1 - ldr r0, =gUnknown_0203CF1C - ldr r2, [r0] - ldr r0, =0x000040c7 - adds r2, r0 - adds r0, r4, 0 - bl sub_81C1070 - b _081C13AA - .pool -_081C1338: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _081C1360 - movs r0, 0x3 - strh r0, [r4] - ldr r0, =gUnknown_0203CF1C - ldr r2, [r0] - ldr r0, =0x000040c7 - adds r2, r0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_81C1070 - b _081C13AA - .pool -_081C1360: - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _081C139A - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r2, =0x000040c6 - adds r1, r0, r2 - adds r2, 0x1 - adds r0, r2 - ldrb r1, [r1] - ldrb r0, [r0] - cmp r1, r0 - bne _081C1390 - adds r0, r5, 0 - movs r1, 0 - bl sub_81C13B0 - b _081C13AA - .pool -_081C1390: - adds r0, r5, 0 - movs r1, 0x1 - bl sub_81C13B0 - b _081C13AA -_081C139A: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _081C13AA - adds r0, r6, 0 - movs r1, 0 - bl sub_81C13B0 -_081C13AA: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_81C12E4 - - thumb_func_start sub_81C13B0 -sub_81C13B0: @ 81C13B0 - push {r4-r7,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r7, r0, 24 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x5 - bl PlaySE - movs r0, 0 - bl sub_81C4C84 - movs r0, 0x12 - bl sub_81C4C60 - cmp r4, 0x1 - bne _081C1464 - ldr r0, =gUnknown_0203CF1C - ldr r3, [r0] - ldr r1, =0x000040bd - adds r0, r3, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _081C1410 - ldr r0, [r3] - ldr r2, =0x000040be - adds r1, r3, r2 - ldrb r2, [r1] - movs r1, 0x64 - muls r1, r2 - adds r0, r1 - ldr r4, =0x000040c6 - adds r1, r3, r4 - ldrb r1, [r1] - adds r4, 0x1 - adds r2, r3, r4 - ldrb r2, [r2] - bl sub_81C14BC - b _081C1430 - .pool -_081C1410: - ldr r0, [r3] - ldr r2, =0x000040be - adds r1, r3, r2 - ldrb r2, [r1] - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 4 - adds r0, r1 - ldr r4, =0x000040c6 - adds r1, r3, r4 - ldrb r1, [r1] - adds r4, 0x1 - adds r2, r3, r4 - ldrb r2, [r2] - bl sub_81C15EC -_081C1430: - ldr r5, =gUnknown_0203CF1C - ldr r0, [r5] - adds r0, 0xC - bl sub_81C0098 - ldr r1, [r5] - ldr r6, =0x000040c6 - adds r0, r1, r6 - ldrb r0, [r0] - ldr r4, =0x000040c7 - adds r1, r4 - ldrb r1, [r1] - bl sub_81C40A0 - ldr r1, [r5] - adds r0, r1, r6 - ldrb r0, [r0] - adds r1, r4 - ldrb r1, [r1] - bl sub_81C4568 - ldr r0, [r5] - adds r4, r0, r4 - ldrb r1, [r4] - adds r0, r6 - strb r1, [r0] -_081C1464: - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - ldr r2, =0x000040c6 - adds r0, r1, r2 - ldrb r0, [r0] - lsls r0, 1 - adds r1, 0x84 - adds r1, r0 - ldrh r4, [r1] - adds r0, r4, 0 - bl sub_81C3E9C - adds r0, r4, 0 - bl sub_81C240C - movs r0, 0x1 - bl schedule_bg_copy_tilemap_to_vram - movs r0, 0x2 - bl schedule_bg_copy_tilemap_to_vram - ldr r1, =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_81C0F44 - str r1, [r0] - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C13B0 - - thumb_func_start sub_81C14BC -sub_81C14BC: @ 81C14BC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x28 - adds r7, r0, 0 - adds r4, r1, 0 - adds r6, r2, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r6, 24 - lsrs r6, 24 - ldr r0, =gUnknown_0203CF1C - ldr r2, [r0] - lsls r0, r4, 1 - mov r10, r0 - adds r1, r2, 0 - adds r1, 0x84 - adds r0, r1, r0 - str r0, [sp, 0x8] - ldrh r0, [r0] - mov r3, sp - adds r3, 0x2 - str r3, [sp, 0x1C] - strh r0, [r3] - lsls r0, r6, 1 - mov r9, r0 - add r1, r9 - str r1, [sp, 0xC] - ldrh r1, [r1] - mov r0, sp - strh r1, [r0] - adds r1, r2, 0 - adds r1, 0x8C - adds r3, r1, r4 - str r3, [sp, 0x10] - ldrb r0, [r3] - mov r3, sp - adds r3, 0x5 - str r3, [sp, 0x24] - strb r0, [r3] - adds r1, r6 - str r1, [sp, 0x14] - ldrb r0, [r1] - mov r1, sp - adds r1, 0x4 - str r1, [sp, 0x20] - strb r0, [r1] - adds r2, 0xA4 - str r2, [sp, 0x18] - ldrb r0, [r2] - mov r5, sp - adds r5, 0x6 - strb r0, [r5] - ldr r1, =gUnknown_08329D22 - adds r0, r4, r1 - ldrb r0, [r0] - mov r8, r0 - ldrb r0, [r5] - adds r2, r0, 0 - mov r3, r8 - ands r2, r3 - mov r3, r10 - asrs r2, r3 - lsls r2, 24 - lsrs r2, 24 - adds r1, r6, r1 - ldrb r1, [r1] - mov r12, r1 - adds r1, r0, 0 - mov r3, r12 - ands r1, r3 - mov r3, r9 - asrs r1, r3 - lsls r1, 24 - lsrs r1, 24 - mov r3, r8 - bics r0, r3 - strb r0, [r5] - ldrb r0, [r5] - mov r3, r12 - bics r0, r3 - strb r0, [r5] - mov r0, r9 - lsls r2, r0 - mov r3, r10 - lsls r1, r3 - adds r2, r1 - ldrb r0, [r5] - orrs r0, r2 - strb r0, [r5] - adds r1, r4, 0 - adds r1, 0xD - adds r0, r7, 0 - mov r2, sp - bl SetMonData - adds r1, r6, 0 - adds r1, 0xD - adds r0, r7, 0 - ldr r2, [sp, 0x1C] - bl SetMonData - adds r4, 0x11 - adds r0, r7, 0 - adds r1, r4, 0 - ldr r2, [sp, 0x20] - bl SetMonData - adds r6, 0x11 - adds r0, r7, 0 - adds r1, r6, 0 - ldr r2, [sp, 0x24] - bl SetMonData - adds r0, r7, 0 - movs r1, 0x15 - adds r2, r5, 0 - bl SetMonData - mov r0, sp - ldrh r0, [r0] - ldr r1, [sp, 0x8] - strh r0, [r1] - ldr r3, [sp, 0x1C] - ldrh r0, [r3] - ldr r1, [sp, 0xC] - strh r0, [r1] - ldr r3, [sp, 0x20] - ldrb r0, [r3] - ldr r1, [sp, 0x10] - strb r0, [r1] - ldr r3, [sp, 0x24] - ldrb r0, [r3] - ldr r1, [sp, 0x14] - strb r0, [r1] - ldrb r0, [r5] - ldr r3, [sp, 0x18] - strb r0, [r3] - add sp, 0x28 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C14BC - - thumb_func_start sub_81C15EC -sub_81C15EC: @ 81C15EC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x28 - adds r7, r0, 0 - adds r4, r1, 0 - adds r6, r2, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r6, 24 - lsrs r6, 24 - ldr r0, =gUnknown_0203CF1C - ldr r2, [r0] - lsls r0, r4, 1 - mov r10, r0 - adds r1, r2, 0 - adds r1, 0x84 - adds r0, r1, r0 - str r0, [sp, 0x8] - ldrh r0, [r0] - mov r3, sp - adds r3, 0x2 - str r3, [sp, 0x1C] - strh r0, [r3] - lsls r0, r6, 1 - mov r9, r0 - add r1, r9 - str r1, [sp, 0xC] - ldrh r1, [r1] - mov r0, sp - strh r1, [r0] - adds r1, r2, 0 - adds r1, 0x8C - adds r3, r1, r4 - str r3, [sp, 0x10] - ldrb r0, [r3] - mov r3, sp - adds r3, 0x5 - str r3, [sp, 0x24] - strb r0, [r3] - adds r1, r6 - str r1, [sp, 0x14] - ldrb r0, [r1] - mov r1, sp - adds r1, 0x4 - str r1, [sp, 0x20] - strb r0, [r1] - adds r2, 0xA4 - str r2, [sp, 0x18] - ldrb r0, [r2] - mov r5, sp - adds r5, 0x6 - strb r0, [r5] - ldr r1, =gUnknown_08329D22 - adds r0, r4, r1 - ldrb r0, [r0] - mov r8, r0 - ldrb r0, [r5] - adds r2, r0, 0 - mov r3, r8 - ands r2, r3 - mov r3, r10 - asrs r2, r3 - lsls r2, 24 - lsrs r2, 24 - adds r1, r6, r1 - ldrb r1, [r1] - mov r12, r1 - adds r1, r0, 0 - mov r3, r12 - ands r1, r3 - mov r3, r9 - asrs r1, r3 - lsls r1, 24 - lsrs r1, 24 - mov r3, r8 - bics r0, r3 - strb r0, [r5] - ldrb r0, [r5] - mov r3, r12 - bics r0, r3 - strb r0, [r5] - mov r0, r9 - lsls r2, r0 - mov r3, r10 - lsls r1, r3 - adds r2, r1 - ldrb r0, [r5] - orrs r0, r2 - strb r0, [r5] - adds r1, r4, 0 - adds r1, 0xD - adds r0, r7, 0 - mov r2, sp - bl SetBoxMonData - adds r1, r6, 0 - adds r1, 0xD - adds r0, r7, 0 - ldr r2, [sp, 0x1C] - bl SetBoxMonData - adds r4, 0x11 - adds r0, r7, 0 - adds r1, r4, 0 - ldr r2, [sp, 0x20] - bl SetBoxMonData - adds r6, 0x11 - adds r0, r7, 0 - adds r1, r6, 0 - ldr r2, [sp, 0x24] - bl SetBoxMonData - adds r0, r7, 0 - movs r1, 0x15 - adds r2, r5, 0 - bl SetBoxMonData - mov r0, sp - ldrh r0, [r0] - ldr r1, [sp, 0x8] - strh r0, [r1] - ldr r3, [sp, 0x1C] - ldrh r0, [r3] - ldr r1, [sp, 0xC] - strh r0, [r1] - ldr r3, [sp, 0x20] - ldrb r0, [r3] - ldr r1, [sp, 0x10] - strb r0, [r1] - ldr r3, [sp, 0x24] - ldrb r0, [r3] - ldr r1, [sp, 0x14] - strb r0, [r1] - ldrb r0, [r5] - ldr r3, [sp, 0x18] - strb r0, [r3] - add sp, 0x28 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C15EC - - thumb_func_start sub_81C171C -sub_81C171C: @ 81C171C - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_81C44F0 - movs r0, 0x8 - bl sub_81C4AF8 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_81C174C - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C171C - - thumb_func_start sub_81C174C -sub_81C174C: @ 81C174C - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - bl sub_81221EC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081C176A - b _081C189A -_081C176A: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r2, 0x80 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _081C177A - b _081C189A -_081C177A: - ldr r6, =gMain - ldrh r1, [r6, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _081C17B4 - movs r0, 0x4 - strh r0, [r4] - movs r1, 0x1 - negs r1, r1 - ldr r0, =gUnknown_0203CF1C - ldr r2, [r0] - ldr r0, =0x000040c6 - adds r2, r0 - adds r0, r4, 0 - bl sub_81C1070 - b _081C189A - .pool -_081C17B4: - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _081C17DC - movs r0, 0x4 - strh r0, [r4] - ldr r0, =gUnknown_0203CF1C - ldr r2, [r0] - ldr r1, =0x000040c6 - adds r2, r1 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_81C1070 - b _081C189A - .pool -_081C17DC: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _081C17F0 - bl GetLRKeysState - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081C17FC -_081C17F0: - movs r1, 0x1 - negs r1, r1 - adds r0, r5, 0 - bl sub_81C0A8C - b _081C189A -_081C17FC: - ldrh r1, [r6, 0x2E] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _081C1812 - bl GetLRKeysState - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _081C181C -_081C1812: - adds r0, r5, 0 - movs r1, 0x1 - bl sub_81C0A8C - b _081C189A -_081C181C: - ldrh r1, [r6, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _081C1876 - bl sub_81C18A8 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081C1868 - bl sub_81C48F0 - movs r0, 0x5 - bl PlaySE - ldr r2, =gUnknown_0203CF21 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040c6 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2] - ldr r1, =gSpecialVar_0x8005 - ldrb r0, [r2] - strh r0, [r1] - adds r0, r5, 0 - bl sub_81C044C - b _081C189A - .pool -_081C1868: - movs r0, 0x20 - bl PlaySE - adds r0, r5, 0 - bl sub_81C18F4 - b _081C189A -_081C1876: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _081C189A - bl sub_81C48F0 - movs r0, 0x5 - bl PlaySE - ldr r1, =gUnknown_0203CF21 - movs r0, 0x4 - strb r0, [r1] - ldr r1, =gSpecialVar_0x8005 - movs r0, 0x4 - strh r0, [r1] - adds r0, r5, 0 - bl sub_81C044C -_081C189A: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C174C - - thumb_func_start sub_81C18A8 -sub_81C18A8: @ 81C18A8 - push {lr} - ldr r0, =gUnknown_0203CF1C - ldr r2, [r0] - ldr r0, =0x000040c6 - adds r1, r2, r0 - ldrb r0, [r1] - cmp r0, 0x4 - beq _081C18DA - ldr r3, =0x000040c4 - adds r0, r2, r3 - ldrh r0, [r0] - cmp r0, 0 - beq _081C18DA - ldrb r1, [r1] - lsls r1, 1 - adds r0, r2, 0 - adds r0, 0x84 - adds r0, r1 - ldrh r0, [r0] - bl sub_81B6D14 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081C18EC -_081C18DA: - movs r0, 0x1 - b _081C18EE - .pool -_081C18EC: - movs r0, 0 -_081C18EE: - pop {r1} - bx r1 - thumb_func_end sub_81C18A8 - - thumb_func_start sub_81C18F4 -sub_81C18F4: @ 81C18F4 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0xE - bl ClearWindowTilemap - movs r0, 0xF - bl ClearWindowTilemap - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - movs r0, 0 - movs r1, 0x3 - bl sub_81C1DA4 - movs r0, 0 - movs r1, 0x3 - movs r2, 0 - bl sub_81C1EFC - bl sub_81C4154 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, =sub_81C1940 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C18F4 - - thumb_func_start sub_81C1940 -sub_81C1940: @ 81C1940 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 24 - lsrs r7, r0, 24 - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - mov r8, r0 - ldr r0, =gTasks + 0x8 - mov r9, r0 - mov r4, r8 - add r4, r9 - ldr r0, =sub_81C1E20 - bl FuncIsActiveTask - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081C196C - b _081C1B74 -_081C196C: - ldr r6, =gMain - ldrh r1, [r6, 0x2E] - movs r0, 0x40 - ands r0, r1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0 - beq _081C19B0 - movs r0, 0x1 - strh r0, [r4, 0x2] - movs r0, 0x4 - strh r0, [r4] - movs r1, 0x1 - negs r1, r1 - ldr r0, =gUnknown_0203CF1C - ldr r2, [r0] - ldr r0, =0x000040c6 - adds r2, r0 - adds r0, r4, 0 - bl sub_81C1070 - movs r0, 0 - strh r0, [r4, 0x2] - b _081C1B6A - .pool -_081C19B0: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _081C19DC - movs r0, 0x1 - strh r0, [r4, 0x2] - movs r0, 0x4 - strh r0, [r4] - ldr r0, =gUnknown_0203CF1C - ldr r2, [r0] - ldr r1, =0x000040c6 - adds r2, r1 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_81C1070 - strh r5, [r4, 0x2] - b _081C1B6A - .pool -_081C19DC: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - bne _081C19F0 - bl GetLRKeysState - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081C1A64 -_081C19F0: - ldr r4, =gUnknown_0203CF1C - ldr r0, [r4] - ldr r2, =0x000040c0 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0x2 - bne _081C1A00 - b _081C1B74 -_081C1A00: - movs r0, 0x13 - bl ClearWindowTilemap - ldr r2, =gSprites - ldr r0, [r4] - ldr r1, =0x000040d5 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r0, [r0] - lsls r0, 29 - cmp r0, 0 - blt _081C1A28 - movs r0, 0xD - bl ClearWindowTilemap -_081C1A28: - ldr r1, [r4] - ldr r2, =0x000040c6 - adds r0, r1, r2 - ldrb r0, [r0] - lsls r0, 1 - adds r1, 0x84 - adds r1, r0 - ldrh r5, [r1] - mov r0, r9 - subs r0, 0x8 - add r0, r8 - ldr r1, =sub_81C174C - str r1, [r0] - movs r1, 0x1 - negs r1, r1 - adds r0, r7, 0 - b _081C1ACE - .pool -_081C1A64: - ldrh r1, [r6, 0x2E] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _081C1A7A - bl GetLRKeysState - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _081C1B04 -_081C1A7A: - ldr r4, =gUnknown_0203CF1C - ldr r0, [r4] - ldr r1, =0x000040c0 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x3 - beq _081C1B74 - movs r0, 0x13 - bl ClearWindowTilemap - ldr r2, =gSprites - ldr r0, [r4] - ldr r1, =0x000040d5 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r0, [r0] - lsls r0, 29 - cmp r0, 0 - blt _081C1AB0 - movs r0, 0xD - bl ClearWindowTilemap -_081C1AB0: - ldr r1, [r4] - ldr r2, =0x000040c6 - adds r0, r1, r2 - ldrb r0, [r0] - lsls r0, 1 - adds r1, 0x84 - adds r1, r0 - ldrh r5, [r1] - mov r0, r9 - subs r0, 0x8 - add r0, r8 - ldr r1, =sub_81C174C - str r1, [r0] - adds r0, r7, 0 - movs r1, 0x1 -_081C1ACE: - bl sub_81C0A8C - movs r4, 0x2 - negs r4, r4 - movs r0, 0x9 - adds r1, r4, 0 - bl sub_81C1DA4 - movs r0, 0x9 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_81C1EFC - b _081C1B74 - .pool -_081C1B04: - ldrh r1, [r6, 0x2E] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _081C1B74 - movs r0, 0x13 - bl ClearWindowTilemap - ldr r2, =gSprites - ldr r4, =gUnknown_0203CF1C - ldr r0, [r4] - ldr r1, =0x000040d5 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r0, [r0] - lsls r0, 29 - cmp r0, 0 - blt _081C1B38 - movs r0, 0xD - bl ClearWindowTilemap -_081C1B38: - ldr r1, [r4] - ldr r2, =0x000040c6 - adds r0, r1, r2 - ldrb r0, [r0] - lsls r0, 1 - adds r1, 0x84 - adds r1, r0 - ldrh r5, [r1] - adds r0, r5, 0 - bl sub_81C3E9C - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - movs r4, 0x3 - negs r4, r4 - movs r0, 0x9 - adds r1, r4, 0 - bl sub_81C1DA4 - movs r0, 0x9 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_81C1EFC -_081C1B6A: - mov r0, r9 - subs r0, 0x8 - add r0, r8 - ldr r1, =sub_81C174C - str r1, [r0] -_081C1B74: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C1940 - - thumb_func_start sub_81C1B94 -sub_81C1B94: @ 81C1B94 - ldr r0, =gUnknown_0203CF21 - ldrb r0, [r0] - bx lr - .pool - thumb_func_end sub_81C1B94 - - thumb_func_start sub_81C1BA0 -sub_81C1BA0: @ 81C1BA0 - push {r4-r7,lr} - sub sp, 0xC - movs r0, 0x20 - bl Alloc - adds r4, r0, 0 - movs r5, 0 -_081C1BAE: - lsls r0, r5, 25 - lsrs r1, r0, 24 - adds r6, r1, 0 - ldr r0, =gUnknown_0203CF1C - ldr r3, [r0] - ldr r2, =0x000040c1 - adds r0, r3, r2 - ldrb r0, [r0] - cmp r5, r0 - bcs _081C1BD8 - lsls r0, r1, 1 - adds r0, r4 - movs r1, 0x40 - strh r1, [r0] - strh r1, [r0, 0x2] - movs r1, 0x50 - b _081C1BEE - .pool -_081C1BD8: - ldr r7, =0x000040c2 - adds r0, r3, r7 - ldrb r2, [r0] - cmp r5, r2 - bls _081C1BF8 - lsls r0, r1, 1 - adds r0, r4 - movs r1, 0x4A - strh r1, [r0] - strh r1, [r0, 0x2] - movs r1, 0x5A -_081C1BEE: - strh r1, [r0, 0x10] - strh r1, [r0, 0x12] - b _081C1C78 - .pool -_081C1BF8: - ldr r7, =0x000040c0 - adds r0, r3, r7 - ldrb r0, [r0] - cmp r5, r0 - bcs _081C1C1C - lsls r1, 1 - adds r1, r4 - movs r0, 0x46 - strh r0, [r1] - movs r0, 0x47 - strh r0, [r1, 0x2] - movs r0, 0x56 - strh r0, [r1, 0x10] - movs r0, 0x57 - b _081C1C76 - .pool -_081C1C1C: - cmp r5, r0 - bne _081C1C4C - cmp r5, r2 - beq _081C1C38 - lsls r1, 1 - adds r1, r4 - movs r0, 0x41 - strh r0, [r1] - movs r0, 0x42 - strh r0, [r1, 0x2] - movs r0, 0x51 - strh r0, [r1, 0x10] - movs r0, 0x52 - b _081C1C76 -_081C1C38: - lsls r1, 1 - adds r1, r4 - movs r0, 0x4B - strh r0, [r1] - movs r0, 0x4C - strh r0, [r1, 0x2] - movs r0, 0x5B - strh r0, [r1, 0x10] - movs r0, 0x5C - b _081C1C76 -_081C1C4C: - cmp r5, r2 - beq _081C1C64 - lsls r1, 1 - adds r1, r4 - movs r0, 0x43 - strh r0, [r1] - movs r0, 0x44 - strh r0, [r1, 0x2] - movs r0, 0x53 - strh r0, [r1, 0x10] - movs r0, 0x54 - b _081C1C76 -_081C1C64: - lsls r1, r6, 1 - adds r1, r4 - movs r0, 0x48 - strh r0, [r1] - movs r0, 0x49 - strh r0, [r1, 0x2] - movs r0, 0x58 - strh r0, [r1, 0x10] - movs r0, 0x59 -_081C1C76: - strh r0, [r1, 0x12] -_081C1C78: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x3 - bls _081C1BAE - movs r0, 0x8 - str r0, [sp] - movs r0, 0x2 - str r0, [sp, 0x4] - movs r0, 0x10 - str r0, [sp, 0x8] - movs r0, 0x3 - adds r1, r4, 0 - movs r2, 0xB - movs r3, 0 - bl CopyToBgTilemapBufferRect_ChangePalette - movs r0, 0x3 - bl schedule_bg_copy_tilemap_to_vram - adds r0, r4, 0 - bl Free - add sp, 0xC - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_81C1BA0 - - thumb_func_start sub_81C1CB0 -sub_81C1CB0: @ 81C1CB0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r4, r0, 0 - mov r8, r1 - lsls r2, 24 - lsrs r6, r2, 24 - lsls r3, 24 - lsrs r5, r3, 24 - ldrb r1, [r4, 0x6] - ldrb r0, [r4, 0x7] - lsls r0, 1 - muls r0, r1 - bl Alloc - adds r7, r0, 0 - mov r1, sp - ldrh r0, [r4, 0x4] - strh r0, [r1] - ldrb r1, [r4, 0x7] - ldrb r0, [r4, 0x6] - adds r2, r1, 0 - muls r2, r0 - movs r0, 0x80 - lsls r0, 17 - orrs r2, r0 - mov r0, sp - adds r1, r7, 0 - bl CpuSet - ldrb r0, [r4, 0x6] - cmp r0, r6 - beq _081C1D60 - cmp r5, 0 - bne _081C1D30 - movs r5, 0 - ldrb r0, [r4, 0x7] - cmp r5, r0 - bcs _081C1D60 -_081C1D00: - ldrb r2, [r4, 0x6] - adds r1, r2, 0 - muls r1, r5 - adds r3, r6, r1 - lsls r3, 1 - ldr r0, [r4] - adds r0, r3 - lsls r1, 1 - adds r1, r7, r1 - subs r2, r6 - ldr r3, =0x001fffff - ands r2, r3 - bl CpuSet - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - ldrb r3, [r4, 0x7] - cmp r5, r3 - bcc _081C1D00 - b _081C1D60 - .pool -_081C1D30: - movs r5, 0 - ldrb r0, [r4, 0x7] - cmp r5, r0 - bcs _081C1D60 -_081C1D38: - ldrb r2, [r4, 0x6] - adds r1, r2, 0 - muls r1, r5 - lsls r3, r1, 1 - ldr r0, [r4] - adds r0, r3 - adds r1, r6, r1 - lsls r1, 1 - adds r1, r7, r1 - subs r2, r6 - ldr r3, =0x001fffff - ands r2, r3 - bl CpuSet - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - ldrb r3, [r4, 0x7] - cmp r5, r3 - bcc _081C1D38 -_081C1D60: - movs r5, 0 - b _081C1D8A - .pool -_081C1D68: - ldrb r2, [r4, 0x6] - adds r0, r2, 0 - muls r0, r5 - lsls r0, 1 - adds r0, r7, r0 - ldrb r1, [r4, 0x9] - adds r1, r5 - lsls r1, 5 - ldrb r3, [r4, 0x8] - adds r1, r3 - lsls r1, 1 - add r1, r8 - bl CpuSet - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 -_081C1D8A: - ldrb r0, [r4, 0x7] - cmp r5, r0 - bcc _081C1D68 - adds r0, r7, 0 - bl Free - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_81C1CB0 - - thumb_func_start sub_81C1DA4 -sub_81C1DA4: @ 81C1DA4 - push {r4-r6,lr} - lsls r0, 16 - lsrs r6, r0, 16 - lsls r1, 16 - lsrs r4, r1, 16 - asrs r1, 16 - ldr r3, =gUnknown_0861CC04 - ldrb r2, [r3, 0x6] - cmp r1, r2 - ble _081C1DBA - adds r4, r2, 0 -_081C1DBA: - lsls r0, r4, 16 - asrs r0, 16 - cmp r0, 0 - beq _081C1DC6 - cmp r0, r2 - bne _081C1DE8 -_081C1DC6: - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - ldr r0, =0x000020bc - adds r1, r0 - lsls r2, r4, 24 - lsrs r2, 24 - adds r0, r3, 0 - movs r3, 0x1 - bl sub_81C1CB0 - b _081C1E12 - .pool -_081C1DE8: - ldr r5, =sub_81C1E20 - adds r0, r5, 0 - bl FindTaskIdByFunc - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xFF - bne _081C1E04 - adds r0, r5, 0 - movs r1, 0x8 - bl CreateTask - lsls r0, 24 - lsrs r2, r0, 24 -_081C1E04: - ldr r1, =gTasks - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - strh r4, [r0, 0x8] - strh r6, [r0, 0xA] -_081C1E12: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C1DA4 - - thumb_func_start sub_81C1E20 -sub_81C1E20: @ 81C1E20 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - ldrh r0, [r4] - ldrh r1, [r4, 0x2] - adds r0, r1 - strh r0, [r4, 0x2] - lsls r0, 16 - cmp r0, 0 - bge _081C1E50 - movs r0, 0 - strh r0, [r4, 0x2] - ldr r7, =gUnknown_0861CC04 - b _081C1E60 - .pool -_081C1E50: - movs r0, 0x2 - ldrsh r1, [r4, r0] - ldr r0, =gUnknown_0861CC04 - ldrb r2, [r0, 0x6] - adds r7, r0, 0 - cmp r1, r2 - ble _081C1E60 - strh r2, [r4, 0x2] -_081C1E60: - ldr r5, =gUnknown_0203CF1C - ldr r1, [r5] - ldr r0, =0x000020bc - adds r1, r0 - ldrb r2, [r4, 0x2] - adds r0, r7, 0 - movs r3, 0x1 - bl sub_81C1CB0 - movs r1, 0x2 - ldrsh r0, [r4, r1] - cmp r0, 0 - ble _081C1E80 - ldrb r7, [r7, 0x6] - cmp r0, r7 - blt _081C1EE0 -_081C1E80: - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0 - bge _081C1EAC - ldr r0, [r5] - ldr r1, =0x000040c0 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x2 - bne _081C1ED4 - movs r0, 0xE - bl PutWindowTilemap - b _081C1ED4 - .pool -_081C1EAC: - ldr r2, =gSprites - ldr r0, [r5] - ldr r1, =0x000040d5 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r0, [r0] - lsls r0, 29 - cmp r0, 0 - blt _081C1ECE - movs r0, 0xD - bl PutWindowTilemap -_081C1ECE: - movs r0, 0x13 - bl PutWindowTilemap -_081C1ED4: - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - adds r0, r6, 0 - bl DestroyTask -_081C1EE0: - movs r0, 0x1 - bl schedule_bg_copy_tilemap_to_vram - movs r0, 0x2 - bl schedule_bg_copy_tilemap_to_vram - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C1E20 - - thumb_func_start sub_81C1EFC -sub_81C1EFC: @ 81C1EFC - push {r4-r7,lr} - lsls r0, 16 - lsrs r7, r0, 16 - lsls r1, 16 - lsls r2, 16 - lsrs r6, r2, 16 - lsrs r4, r1, 16 - asrs r1, 16 - ldr r3, =gUnknown_0861CC10 - ldrb r2, [r3, 0x6] - cmp r1, r2 - ble _081C1F16 - adds r4, r2, 0 -_081C1F16: - lsls r0, r4, 16 - asrs r0, 16 - cmp r0, 0 - beq _081C1F22 - cmp r0, r2 - bne _081C1F44 -_081C1F22: - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - ldr r0, =0x000030bc - adds r1, r0 - lsls r2, r4, 24 - lsrs r2, 24 - adds r0, r3, 0 - movs r3, 0x1 - bl sub_81C1CB0 - b _081C1F70 - .pool -_081C1F44: - ldr r5, =sub_81C1F80 - adds r0, r5, 0 - bl FindTaskIdByFunc - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xFF - bne _081C1F60 - adds r0, r5, 0 - movs r1, 0x8 - bl CreateTask - lsls r0, 24 - lsrs r2, r0, 24 -_081C1F60: - ldr r1, =gTasks - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - strh r4, [r0, 0x8] - strh r7, [r0, 0xA] - strh r6, [r0, 0xC] -_081C1F70: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C1EFC - - thumb_func_start sub_81C1F80 -sub_81C1F80: @ 81C1F80 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - ldrh r0, [r4] - ldrh r1, [r4, 0x2] - adds r0, r1 - strh r0, [r4, 0x2] - lsls r0, 16 - cmp r0, 0 - bge _081C1FB0 - movs r0, 0 - strh r0, [r4, 0x2] - ldr r7, =gUnknown_0861CC10 - b _081C1FC0 - .pool -_081C1FB0: - movs r0, 0x2 - ldrsh r1, [r4, r0] - ldr r0, =gUnknown_0861CC10 - ldrb r2, [r0, 0x6] - adds r7, r0, 0 - cmp r1, r2 - ble _081C1FC0 - strh r2, [r4, 0x2] -_081C1FC0: - ldr r5, =gUnknown_0203CF1C - ldr r1, [r5] - ldr r0, =0x000030bc - adds r1, r0 - ldrb r2, [r4, 0x2] - adds r0, r7, 0 - movs r3, 0x1 - bl sub_81C1CB0 - movs r1, 0x2 - ldrsh r0, [r4, r1] - cmp r0, 0 - ble _081C1FE0 - ldrb r7, [r7, 0x6] - cmp r0, r7 - blt _081C2058 -_081C1FE0: - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0 - bge _081C2024 - ldr r0, [r5] - ldr r1, =0x000040c0 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x3 - bne _081C2006 - ldr r0, =sub_81C0B8C - bl FuncIsActiveTask - lsls r0, 24 - cmp r0, 0 - bne _081C2006 - movs r0, 0xF - bl PutWindowTilemap -_081C2006: - ldrh r0, [r4, 0x4] - bl sub_81C240C - b _081C204C - .pool -_081C2024: - ldr r2, =gSprites - ldr r0, [r5] - ldr r1, =0x000040d5 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r0, [r0] - lsls r0, 29 - cmp r0, 0 - blt _081C2046 - movs r0, 0xD - bl PutWindowTilemap -_081C2046: - movs r0, 0x13 - bl PutWindowTilemap -_081C204C: - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - adds r0, r6, 0 - bl DestroyTask -_081C2058: - movs r0, 0x1 - bl schedule_bg_copy_tilemap_to_vram - movs r0, 0x2 - bl schedule_bg_copy_tilemap_to_vram - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C1F80 - - thumb_func_start sub_81C2074 -sub_81C2074: @ 81C2074 - push {r4,r5,lr} - lsls r0, 16 - lsrs r5, r0, 16 - lsls r1, 16 - lsrs r4, r1, 16 - asrs r1, 16 - ldr r3, =gUnknown_0861CBEC - ldrb r2, [r3, 0x6] - cmp r1, r2 - ble _081C208A - adds r4, r2, 0 -_081C208A: - lsls r0, r4, 16 - asrs r0, 16 - cmp r0, 0 - beq _081C2096 - cmp r0, r2 - bne _081C20C8 -_081C2096: - ldr r5, =gUnknown_0203CF1C - ldr r1, [r5] - adds r1, 0xBC - lsls r4, 24 - lsrs r4, 24 - adds r0, r3, 0 - adds r2, r4, 0 - movs r3, 0 - bl sub_81C1CB0 - ldr r0, =gUnknown_0861CBF8 - ldr r1, [r5] - adds r1, 0xBC - adds r2, r4, 0 - movs r3, 0 - bl sub_81C1CB0 - b _081C20E2 - .pool -_081C20C8: - ldr r0, =sub_81C20F0 - movs r1, 0x8 - 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 r4, [r1, 0x8] - strh r5, [r1, 0xA] -_081C20E2: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C2074 - - thumb_func_start sub_81C20F0 -sub_81C20F0: @ 81C20F0 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r5, r0, r1 - ldrh r0, [r5] - ldrh r1, [r5, 0x2] - adds r0, r1 - strh r0, [r5, 0x2] - lsls r0, 16 - cmp r0, 0 - bge _081C2120 - movs r0, 0 - strh r0, [r5, 0x2] - ldr r7, =gUnknown_0861CBEC - b _081C2130 - .pool -_081C2120: - movs r0, 0x2 - ldrsh r1, [r5, r0] - ldr r0, =gUnknown_0861CBEC - ldrb r2, [r0, 0x6] - adds r7, r0, 0 - cmp r1, r2 - ble _081C2130 - strh r2, [r5, 0x2] -_081C2130: - ldr r4, =gUnknown_0203CF1C - ldr r1, [r4] - adds r1, 0xBC - ldrb r2, [r5, 0x2] - adds r0, r7, 0 - movs r3, 0 - bl sub_81C1CB0 - ldr r0, =gUnknown_0861CBF8 - ldr r1, [r4] - adds r1, 0xBC - ldrb r2, [r5, 0x2] - movs r3, 0 - bl sub_81C1CB0 - movs r0, 0x3 - bl schedule_bg_copy_tilemap_to_vram - movs r1, 0x2 - ldrsh r0, [r5, r1] - cmp r0, 0 - ble _081C2162 - ldrb r7, [r7, 0x6] - cmp r0, r7 - blt _081C2180 -_081C2162: - movs r1, 0 - ldrsh r0, [r5, r1] - cmp r0, 0 - bge _081C217A - bl sub_81C4A88 - movs r0, 0xD - bl PutWindowTilemap - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram -_081C217A: - adds r0, r6, 0 - bl DestroyTask -_081C2180: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C20F0 - - thumb_func_start sub_81C2194 -sub_81C2194: @ 81C2194 - push {r4-r7,lr} - adds r6, r0, 0 - lsls r2, 24 - lsls r1, 28 - lsrs r4, r1, 16 - ldr r7, =0x0000056a - cmp r2, 0 - bne _081C21E4 - movs r3, 0 - ldr r5, =gUnknown_08DC3CD4 -_081C21A8: - adds r2, r7, r3 - lsls r2, 1 - adds r2, r6 - lsls r0, r3, 1 - adds r0, r5 - ldrh r1, [r0] - adds r1, r4, r1 - strh r1, [r2] - adds r0, r2, 0 - adds r0, 0x40 - strh r1, [r0] - adds r2, 0x80 - adds r0, r3, 0 - adds r0, 0x14 - lsls r0, 1 - adds r0, r5 - ldrh r0, [r0] - adds r0, r4, r0 - strh r0, [r2] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x13 - bls _081C21A8 - b _081C221C - .pool -_081C21E4: - movs r3, 0 - ldr r5, =gUnknown_08DC3CD4 -_081C21E8: - adds r1, r7, r3 - lsls r1, 1 - adds r1, r6 - adds r0, r3, 0 - adds r0, 0x14 - lsls r0, 1 - adds r0, r5 - ldrh r0, [r0] - adds r0, r4, r0 - strh r0, [r1] - adds r2, r1, 0 - adds r2, 0x40 - adds r0, r3, 0 - adds r0, 0x28 - lsls r0, 1 - adds r0, r5 - ldrh r0, [r0] - adds r0, r4, r0 - strh r0, [r2] - adds r1, 0x80 - strh r0, [r1] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x13 - bls _081C21E8 -_081C221C: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C2194 - - thumb_func_start sub_81C2228 -sub_81C2228: @ 81C2228 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0 - bl CheckPartyPokerus - lsls r0, 24 - cmp r0, 0 - bne _081C225C - adds r0, r4, 0 - movs r1, 0 - bl CheckPartyHasHadPokerus - lsls r0, 24 - cmp r0, 0 - beq _081C225C - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r2, =0x00000502 - adds r1, r0, r2 - movs r2, 0x2C - b _081C2266 - .pool -_081C225C: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r2, =0x00000502 - adds r1, r0, r2 - ldr r2, =0x0000081a -_081C2266: - strh r2, [r1] - ldr r1, =0x00000d02 - adds r0, r1 - strh r2, [r0] - movs r0, 0x3 - bl schedule_bg_copy_tilemap_to_vram - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C2228 - - thumb_func_start sub_81C228C -sub_81C228C: @ 81C228C - push {lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _081C22AC - movs r0, 0x8 - str r0, [sp] - str r1, [sp, 0x4] - movs r0, 0x3 - movs r1, 0x1 - movs r2, 0x4 - movs r3, 0x8 - bl sub_8199C30 - b _081C22C0 -_081C22AC: - movs r0, 0x8 - str r0, [sp] - movs r0, 0x5 - str r0, [sp, 0x4] - movs r0, 0x3 - movs r1, 0x1 - movs r2, 0x4 - movs r3, 0x8 - bl sub_8199C30 -_081C22C0: - movs r0, 0x3 - bl schedule_bg_copy_tilemap_to_vram - add sp, 0x8 - pop {r0} - bx r0 - thumb_func_end sub_81C228C - - thumb_func_start sub_81C22CC -sub_81C22CC: @ 81C22CC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - adds r6, r1, 0 - adds r6, 0x70 - ldrb r1, [r6, 0x5] - mov r8, r0 - cmp r1, 0x63 - bhi _081C2340 - ldr r5, =gExperienceTables - adds r2, r1, 0 - adds r1, r2, 0x1 - lsls r1, 2 - ldr r4, =gBaseStats - ldrh r3, [r6] - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - adds r0, r4 - ldrb r3, [r0, 0x13] - movs r0, 0xCA - lsls r0, 1 - muls r0, r3 - adds r1, r0 - adds r1, r5 - lsls r2, 2 - adds r2, r0 - adds r2, r5 - ldr r1, [r1] - ldr r2, [r2] - subs r1, r2 - ldr r0, [r6, 0x10] - subs r4, r0, r2 - lsls r0, r4, 6 - bl __udivsi3 - adds r6, r0, 0 - movs r7, 0 - adds r0, r7, 0 - orrs r0, r6 - cmp r0, 0 - bne _081C2344 - cmp r4, 0 - beq _081C2344 - movs r6, 0x1 - movs r7, 0 - b _081C2344 - .pool -_081C2340: - movs r6, 0 - movs r7, 0 -_081C2344: - mov r1, r8 - ldr r0, [r1] - ldr r2, =0x00001d66 - adds r2, r0 - mov r9, r2 - movs r0, 0 - mov r12, r0 - ldr r1, =0x00002062 - mov r10, r1 -_081C2356: - cmp r7, 0 - bgt _081C2362 - cmp r7, 0 - bne _081C237C - cmp r6, 0x7 - bls _081C237C -_081C2362: - mov r2, r12 - lsls r0, r2, 1 - add r0, r9 - ldr r2, =0x0000206a - adds r1, r2, 0 - strh r1, [r0] - b _081C23B6 - .pool -_081C237C: - mov r1, r12 - lsls r0, r1, 1 - add r0, r9 - mov r8, r0 - adds r5, r7, 0 - adds r4, r6, 0 - cmp r7, 0 - bge _081C2394 - movs r4, 0x7 - movs r5, 0 - adds r4, r6 - adcs r5, r7 -_081C2394: - lsls r3, r5, 29 - lsrs r2, r4, 3 - adds r0, r3, 0 - orrs r0, r2 - asrs r1, r5, 3 - lsrs r5, r0, 29 - lsls r4, r1, 3 - adds r3, r5, 0 - orrs r3, r4 - lsls r2, r0, 3 - adds r1, r7, 0 - adds r0, r6, 0 - subs r0, r2 - sbcs r1, r3 - add r0, r10 - mov r2, r8 - strh r0, [r2] -_081C23B6: - movs r0, 0x8 - negs r0, r0 - asrs r1, r0, 31 - adds r6, r0 - adcs r7, r1 - cmp r7, 0 - bge _081C23C8 - movs r6, 0 - movs r7, 0 -_081C23C8: - mov r0, r12 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r12, r0 - cmp r0, 0x7 - bls _081C2356 - movs r0, 0x1 - bl GetBgTilemapBuffer - ldr r1, =gUnknown_0203CF1C - ldr r1, [r1] - ldr r2, =0x000010bc - adds r1, r2 - cmp r0, r1 - bne _081C23F8 - movs r0, 0x1 - bl schedule_bg_copy_tilemap_to_vram - b _081C23FE - .pool -_081C23F8: - movs r0, 0x2 - bl schedule_bg_copy_tilemap_to_vram -_081C23FE: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_81C22CC - - thumb_func_start sub_81C240C -sub_81C240C: @ 81C240C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 16 - lsrs r3, r0, 16 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000038bc - adds r5, r0, r1 - cmp r3, 0 - beq _081C2510 - ldr r1, =gContestEffects - ldr r2, =gContestMoves - lsls r3, 3 - adds r0, r3, r2 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldrb r4, [r0, 0x1] - mov r9, r1 - mov r8, r2 - mov r10, r3 - cmp r4, 0xFF - beq _081C244C - adds r0, r4, 0 - movs r1, 0xA - bl __udivsi3 - lsls r0, 24 - lsrs r4, r0, 24 -_081C244C: - movs r2, 0 - movs r6, 0x3 - movs r3, 0xF3 - lsls r3, 2 -_081C2454: - cmp r4, 0xFF - beq _081C2484 - cmp r2, r4 - bcs _081C2484 - lsrs r0, r2, 2 - adds r1, r2, 0 - ands r1, r6 - lsls r0, 5 - adds r0, r1 - lsls r0, 1 - adds r0, r5 - adds r0, r3 - ldr r7, =0x0000103a - b _081C2496 - .pool -_081C2484: - lsrs r0, r2, 2 - adds r1, r2, 0 - ands r1, r6 - lsls r0, 5 - adds r0, r1 - lsls r0, 1 - adds r0, r5 - adds r0, r3 - ldr r7, =0x00001039 -_081C2496: - adds r1, r7, 0 - strh r1, [r0] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x7 - bls _081C2454 - mov r0, r10 - add r0, r8 - ldrb r0, [r0] - lsls r0, 2 - add r0, r9 - ldrb r4, [r0, 0x2] - cmp r4, 0xFF - beq _081C24C0 - adds r0, r4, 0 - movs r1, 0xA - bl __udivsi3 - lsls r0, 24 - lsrs r4, r0, 24 -_081C24C0: - movs r2, 0 - movs r6, 0x3 - ldr r3, =0x0000044c -_081C24C6: - cmp r4, 0xFF - beq _081C24F0 - cmp r2, r4 - bcs _081C24F0 - lsrs r0, r2, 2 - adds r1, r2, 0 - ands r1, r6 - lsls r0, 5 - adds r0, r1 - lsls r0, 1 - adds r0, r5 - adds r0, r3 - ldr r7, =0x0000103c - b _081C2502 - .pool -_081C24F0: - lsrs r0, r2, 2 - adds r1, r2, 0 - ands r1, r6 - lsls r0, 5 - adds r0, r1 - lsls r0, 1 - adds r0, r5 - adds r0, r3 - ldr r7, =0x0000103d -_081C2502: - adds r1, r7, 0 - strh r1, [r0] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x7 - bls _081C24C6 -_081C2510: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C240C - - thumb_func_start sub_81C2524 -sub_81C2524: @ 81C2524 - push {lr} - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r0, 0x74 - ldrb r0, [r0] - cmp r0, 0 - beq _081C2544 - movs r1, 0x80 - lsls r1, 9 - movs r0, 0x3 - movs r2, 0 - bl ChangeBgX - b _081C254E - .pool -_081C2544: - movs r0, 0x3 - movs r1, 0 - movs r2, 0 - bl ChangeBgX -_081C254E: - pop {r0} - bx r0 - thumb_func_end sub_81C2524 - - thumb_func_start sub_81C2554 -sub_81C2554: @ 81C2554 - push {r4,r5,lr} - ldr r0, =gUnknown_0861CC24 - bl InitWindows - bl DeactivateAllTextPrinters - movs r4, 0 -_081C2562: - adds r0, r4, 0 - movs r1, 0 - bl FillWindowPixelBuffer - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x13 - bls _081C2562 - movs r4, 0 - ldr r5, =gUnknown_0203CF1C - ldr r3, =0x000040cb - movs r2, 0xFF -_081C257C: - ldr r0, [r5] - adds r0, r3 - adds r0, r4 - ldrb r1, [r0] - orrs r1, r2 - strb r1, [r0] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x7 - bls _081C257C - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C2554 - - thumb_func_start sub_81C25A4 -sub_81C25A4: @ 81C25A4 - push {r4-r6,lr} - sub sp, 0x14 - ldr r4, [sp, 0x24] - ldr r5, [sp, 0x28] - lsls r0, 24 - lsrs r0, 24 - lsls r2, 24 - lsrs r2, 24 - lsls r3, 24 - lsrs r3, 24 - lsls r4, 24 - lsrs r4, 24 - lsls r5, 24 - lsrs r5, 24 - movs r6, 0 - str r6, [sp] - str r4, [sp, 0x4] - lsls r4, r5, 1 - adds r4, r5 - ldr r5, =gUnknown_0861CD2C - adds r4, r5 - str r4, [sp, 0x8] - str r6, [sp, 0xC] - str r1, [sp, 0x10] - movs r1, 0x1 - bl AddTextPrinterParametrized2 - add sp, 0x14 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C25A4 - - thumb_func_start sub_81C25E8 -sub_81C25E8: @ 81C25E8 - push {lr} - movs r0, 0x11 - movs r1, 0 - bl FillWindowPixelBuffer - movs r0, 0x12 - movs r1, 0 - bl FillWindowPixelBuffer - movs r0, 0x13 - movs r1, 0 - bl FillWindowPixelBuffer - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r0, 0x74 - ldrb r0, [r0] - cmp r0, 0 - bne _081C2618 - bl sub_81C2628 - b _081C261C - .pool -_081C2618: - bl sub_81C2794 -_081C261C: - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - pop {r0} - bx r0 - thumb_func_end sub_81C25E8 - - thumb_func_start sub_81C2628 -sub_81C2628: @ 81C2628 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x18 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - movs r1, 0xC - adds r1, r0 - mov r8, r1 - adds r7, r0, 0 - adds r7, 0x70 - ldrh r0, [r7] - bl SpeciesToPokedexNum - lsls r0, 16 - lsrs r5, r0, 16 - ldr r0, =0x0000ffff - cmp r5, r0 - beq _081C26CE - ldr r6, =gStringVar1 - ldr r1, =gText_UnkCtrlF908Clear01 - adds r0, r6, 0 - bl StringCopy - ldr r4, =gStringVar2 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x2 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - adds r0, r6, 0 - adds r1, r4, 0 - bl StringAppend - mov r0, r8 - bl IsMonShiny - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _081C26AC - str r0, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - movs r0, 0x11 - adds r1, r6, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_81C25A4 - movs r0, 0 - bl sub_81C228C - b _081C26C6 - .pool -_081C26AC: - movs r0, 0 - str r0, [sp] - movs r0, 0x7 - str r0, [sp, 0x4] - movs r0, 0x11 - adds r1, r6, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_81C25A4 - movs r0, 0x1 - bl sub_81C228C -_081C26C6: - movs r0, 0x11 - bl PutWindowTilemap - b _081C26EE -_081C26CE: - movs r0, 0x11 - bl ClearWindowTilemap - mov r0, r8 - bl IsMonShiny - lsls r0, 24 - cmp r0, 0 - bne _081C26E8 - movs r0, 0 - bl sub_81C228C - b _081C26EE -_081C26E8: - movs r0, 0x1 - bl sub_81C228C -_081C26EE: - ldr r4, =gStringVar1 - ldr r1, =gText_LevelSymbol - adds r0, r4, 0 - bl StringCopy - ldr r5, =gStringVar2 - ldrb r1, [r7, 0x5] - adds r0, r5, 0 - movs r2, 0 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - adds r0, r4, 0 - adds r1, r5, 0 - bl StringAppend - movs r6, 0 - str r6, [sp] - movs r5, 0x1 - str r5, [sp, 0x4] - movs r0, 0x13 - adds r1, r4, 0 - movs r2, 0x18 - movs r3, 0x11 - bl sub_81C25A4 - mov r0, r8 - adds r1, r4, 0 - bl GetMonNickname - str r6, [sp] - str r5, [sp, 0x4] - movs r0, 0x12 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_81C25A4 - add r1, sp, 0x8 - movs r0, 0xBA - strb r0, [r1] - mov r0, sp - adds r0, 0x9 - ldrh r2, [r7, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - str r6, [sp] - str r5, [sp, 0x4] - movs r0, 0x13 - add r1, sp, 0x8 - movs r2, 0 - movs r3, 0x1 - bl sub_81C25A4 - ldrh r1, [r7, 0x2] - mov r0, r8 - bl sub_81C27DC - movs r0, 0x12 - bl PutWindowTilemap - movs r0, 0x13 - bl PutWindowTilemap - add sp, 0x18 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C2628 - - thumb_func_start sub_81C2794 -sub_81C2794: @ 81C2794 - push {r4,lr} - sub sp, 0x8 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r0, 0xC - ldr r4, =gStringVar1 - adds r1, r4, 0 - bl GetMonNickname - movs r0, 0 - str r0, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - movs r0, 0x12 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_81C25A4 - movs r0, 0x12 - bl PutWindowTilemap - movs r0, 0x11 - bl ClearWindowTilemap - movs r0, 0x13 - bl ClearWindowTilemap - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C2794 - - thumb_func_start sub_81C27DC -sub_81C27DC: @ 81C27DC - push {lr} - sub sp, 0x8 - lsls r1, 16 - lsrs r1, 16 - cmp r1, 0x20 - beq _081C282C - cmp r1, 0x1D - beq _081C282C - bl GetMonGender - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _081C27FE - cmp r0, 0xFE - beq _081C2818 - b _081C282C -_081C27FE: - ldr r1, =gText_MaleSymbol - str r0, [sp] - movs r0, 0x3 - str r0, [sp, 0x4] - movs r0, 0x13 - movs r2, 0x39 - movs r3, 0x11 - bl sub_81C25A4 - b _081C282C - .pool -_081C2818: - ldr r1, =gText_FemaleSymbol - movs r0, 0 - str r0, [sp] - movs r0, 0x4 - str r0, [sp, 0x4] - movs r0, 0x13 - movs r2, 0x39 - movs r3, 0x11 - bl sub_81C25A4 -_081C282C: - add sp, 0x8 - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C27DC - - thumb_func_start sub_81C2838 -sub_81C2838: @ 81C2838 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - ldr r3, =gUnknown_0861CDD3 - cmp r1, 0 - bne _081C284A - subs r3, 0x80 -_081C284A: - lsls r2, 16 - lsrs r2, 16 - movs r0, 0x10 - str r0, [sp] - str r0, [sp, 0x4] - adds r0, r4, 0 - adds r1, r3, 0 - movs r3, 0 - bl BlitBitmapToWindow - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C2838 - - thumb_func_start sub_81C286C -sub_81C286C: @ 81C286C - push {r4-r7,lr} - sub sp, 0x8 - ldr r1, =gText_PkmnInfo - movs r5, 0 - str r5, [sp] - movs r6, 0x1 - str r6, [sp, 0x4] - movs r0, 0 - movs r2, 0x2 - movs r3, 0x1 - bl sub_81C25A4 - ldr r1, =gText_PkmnSkills - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0x1 - movs r2, 0x2 - movs r3, 0x1 - bl sub_81C25A4 - ldr r1, =gText_BattleMoves - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0x2 - movs r2, 0x2 - movs r3, 0x1 - bl sub_81C25A4 - ldr r1, =gText_ContestMoves - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0x3 - movs r2, 0x2 - movs r3, 0x1 - bl sub_81C25A4 - ldr r7, =gText_Cancel2 - movs r0, 0x1 - adds r1, r7, 0 - movs r2, 0x3E - bl GetStringRightAlignXOffset - adds r4, r0, 0 - adds r2, r4, 0 - subs r2, 0x10 - cmp r2, 0 - bge _081C28CC - movs r2, 0 -_081C28CC: - movs r0, 0x4 - movs r1, 0 - bl sub_81C2838 - lsls r2, r4, 24 - lsrs r2, 24 - str r5, [sp] - str r5, [sp, 0x4] - movs r0, 0x4 - adds r1, r7, 0 - movs r3, 0x1 - bl sub_81C25A4 - ldr r7, =gText_Info - movs r0, 0x1 - adds r1, r7, 0 - movs r2, 0x3E - bl GetStringRightAlignXOffset - adds r4, r0, 0 - adds r2, r4, 0 - subs r2, 0x10 - cmp r2, 0 - bge _081C28FE - movs r2, 0 -_081C28FE: - movs r0, 0x5 - movs r1, 0 - bl sub_81C2838 - lsls r2, r4, 24 - lsrs r2, 24 - str r5, [sp] - str r5, [sp, 0x4] - movs r0, 0x5 - adds r1, r7, 0 - movs r3, 0x1 - bl sub_81C25A4 - ldr r7, =gText_Switch - movs r0, 0x1 - adds r1, r7, 0 - movs r2, 0x3E - bl GetStringRightAlignXOffset - adds r4, r0, 0 - adds r2, r4, 0 - subs r2, 0x10 - cmp r2, 0 - bge _081C2930 - movs r2, 0 -_081C2930: - movs r0, 0x6 - movs r1, 0 - bl sub_81C2838 - lsls r2, r4, 24 - lsrs r2, 24 - str r5, [sp] - str r5, [sp, 0x4] - movs r0, 0x6 - adds r1, r7, 0 - movs r3, 0x1 - bl sub_81C25A4 - ldr r1, =gText_RentalPkmn - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0x8 - movs r2, 0 - movs r3, 0x1 - bl sub_81C25A4 - ldr r1, =gText_TypeSlash - str r5, [sp] - str r5, [sp, 0x4] - movs r0, 0x9 - movs r2, 0 - movs r3, 0x1 - bl sub_81C25A4 - ldr r4, =gText_HP4 - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0x2A - bl GetStringCenterAlignXOffset - adds r0, 0x6 - lsls r2, r0, 24 - lsrs r2, 24 - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0xA - adds r1, r4, 0 - movs r3, 0x1 - bl sub_81C25A4 - ldr r4, =gText_Attack3 - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0x2A - bl GetStringCenterAlignXOffset - adds r0, 0x6 - lsls r2, r0, 24 - lsrs r2, 24 - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0xA - adds r1, r4, 0 - movs r3, 0x11 - bl sub_81C25A4 - ldr r4, =gText_Defense3 - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0x2A - bl GetStringCenterAlignXOffset - adds r0, 0x6 - lsls r2, r0, 24 - lsrs r2, 24 - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0xA - adds r1, r4, 0 - movs r3, 0x21 - bl sub_81C25A4 - ldr r4, =gText_SpAtk4 - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0x24 - bl GetStringCenterAlignXOffset - adds r0, 0x2 - lsls r2, r0, 24 - lsrs r2, 24 - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0xB - adds r1, r4, 0 - movs r3, 0x1 - bl sub_81C25A4 - ldr r4, =gText_SpDef4 - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0x24 - bl GetStringCenterAlignXOffset - adds r0, 0x2 - lsls r2, r0, 24 - lsrs r2, 24 - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0xB - adds r1, r4, 0 - movs r3, 0x11 - bl sub_81C25A4 - ldr r4, =gText_Speed2 - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0x24 - bl GetStringCenterAlignXOffset - adds r0, 0x2 - lsls r2, r0, 24 - lsrs r2, 24 - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0xB - adds r1, r4, 0 - movs r3, 0x21 - bl sub_81C25A4 - ldr r1, =gText_ExpPoints - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0xC - movs r2, 0x6 - movs r3, 0x1 - bl sub_81C25A4 - ldr r1, =gText_NextLv - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0xC - movs r2, 0x6 - movs r3, 0x11 - bl sub_81C25A4 - ldr r1, =gText_Status - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0xD - movs r2, 0x2 - movs r3, 0x1 - bl sub_81C25A4 - ldr r1, =gText_Power - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0xE - movs r2, 0 - movs r3, 0x1 - bl sub_81C25A4 - ldr r1, =gText_Accuracy2 - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0xE - movs r2, 0 - movs r3, 0x11 - bl sub_81C25A4 - ldr r1, =gText_Appeal - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0xF - movs r2, 0 - movs r3, 0x1 - bl sub_81C25A4 - ldr r1, =gText_Jam - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0xF - movs r2, 0 - movs r3, 0x11 - bl sub_81C25A4 - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C286C - - thumb_func_start sub_81C2AFC -sub_81C2AFC: @ 81C2AFC - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - movs r0, 0 - bl ClearWindowTilemap - movs r0, 0x1 - bl ClearWindowTilemap - movs r0, 0x2 - bl ClearWindowTilemap - movs r0, 0x3 - bl ClearWindowTilemap - cmp r4, 0x1 - beq _081C2B66 - cmp r4, 0x1 - bgt _081C2B2A - cmp r4, 0 - beq _081C2B34 - b _081C2C06 -_081C2B2A: - cmp r5, 0x2 - beq _081C2B80 - cmp r5, 0x3 - beq _081C2BC4 - b _081C2C06 -_081C2B34: - movs r0, 0 - bl PutWindowTilemap - movs r0, 0x4 - bl PutWindowTilemap - bl sub_81A6BF4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081C2B58 - bl sub_81B9E94 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081C2B5E -_081C2B58: - movs r0, 0x8 - bl PutWindowTilemap -_081C2B5E: - movs r0, 0x9 - bl PutWindowTilemap - b _081C2C06 -_081C2B66: - movs r0, 0x1 - bl PutWindowTilemap - movs r0, 0xA - bl PutWindowTilemap - movs r0, 0xB - bl PutWindowTilemap - movs r0, 0xC - bl PutWindowTilemap - b _081C2C06 -_081C2B80: - movs r0, 0x2 - bl PutWindowTilemap - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - ldr r2, =0x000040bc - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x3 - bne _081C2BBC - adds r2, 0x8 - adds r0, r1, r2 - ldr r0, [r0] - ldr r1, =0x00ffffff - ands r0, r1 - movs r1, 0x80 - lsls r1, 11 - cmp r0, r1 - beq _081C2C06 - movs r0, 0xE - bl PutWindowTilemap - b _081C2C06 - .pool -_081C2BBC: - movs r0, 0x5 - bl PutWindowTilemap - b _081C2C06 -_081C2BC4: - movs r0, 0x3 - bl PutWindowTilemap - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - ldr r2, =0x000040bc - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x3 - bne _081C2C00 - adds r2, 0x8 - adds r0, r1, r2 - ldr r0, [r0] - ldr r1, =0x00ffffff - ands r0, r1 - movs r1, 0x80 - lsls r1, 11 - cmp r0, r1 - beq _081C2C06 - movs r0, 0xF - bl PutWindowTilemap - b _081C2C06 - .pool -_081C2C00: - movs r0, 0x5 - bl PutWindowTilemap -_081C2C06: - movs r4, 0 - ldr r5, =gUnknown_0203CF1C -_081C2C0A: - ldr r0, [r5] - ldr r1, =0x000040cb - adds r0, r1 - adds r0, r4 - ldrb r0, [r0] - bl PutWindowTilemap - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x7 - bls _081C2C0A - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C2AFC - - thumb_func_start sub_81C2C38 -sub_81C2C38: @ 81C2C38 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - cmp r0, 0x1 - beq _081C2C84 - cmp r0, 0x1 - bgt _081C2C4E - cmp r0, 0 - beq _081C2C58 - b _081C2D0E -_081C2C4E: - cmp r1, 0x2 - beq _081C2C98 - cmp r1, 0x3 - beq _081C2CD4 - b _081C2D0E -_081C2C58: - movs r0, 0x4 - bl ClearWindowTilemap - bl sub_81A6BF4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081C2C76 - bl sub_81B9E94 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081C2C7C -_081C2C76: - movs r0, 0x8 - bl ClearWindowTilemap -_081C2C7C: - movs r0, 0x9 - bl ClearWindowTilemap - b _081C2D0E -_081C2C84: - movs r0, 0xA - bl ClearWindowTilemap - movs r0, 0xB - bl ClearWindowTilemap - movs r0, 0xC - bl ClearWindowTilemap - b _081C2D0E -_081C2C98: - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - ldr r2, =0x000040bc - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x3 - bne _081C2CCC - adds r2, 0x8 - adds r0, r1, r2 - ldr r0, [r0] - ldr r1, =0x00ffffff - ands r0, r1 - movs r1, 0x80 - lsls r1, 11 - cmp r0, r1 - beq _081C2D0E - movs r0, 0xE - bl ClearWindowTilemap - b _081C2D0E - .pool -_081C2CCC: - movs r0, 0x5 - bl ClearWindowTilemap - b _081C2D0E -_081C2CD4: - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - ldr r2, =0x000040bc - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x3 - bne _081C2D08 - adds r2, 0x8 - adds r0, r1, r2 - ldr r0, [r0] - ldr r1, =0x00ffffff - ands r0, r1 - movs r1, 0x80 - lsls r1, 11 - cmp r0, r1 - beq _081C2D0E - movs r0, 0xF - bl ClearWindowTilemap - b _081C2D0E - .pool -_081C2D08: - movs r0, 0x5 - bl ClearWindowTilemap -_081C2D0E: - movs r4, 0 -_081C2D10: - adds r0, r4, 0 - bl sub_81C2D68 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x7 - bls _081C2D10 - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_81C2C38 - - thumb_func_start sub_81C2D2C -sub_81C2D2C: @ 81C2D2C - push {r4,lr} - adds r3, r0, 0 - lsls r1, 24 - lsrs r2, r1, 24 - ldr r0, =gUnknown_0203CF1C - ldr r4, =0x000040cb - adds r1, r2, r4 - ldr r0, [r0] - adds r4, r0, r1 - ldrb r0, [r4] - cmp r0, 0xFF - bne _081C2D56 - lsls r0, r2, 3 - adds r0, r3, r0 - bl AddWindow - strb r0, [r4] - ldrb r0, [r4] - movs r1, 0 - bl FillWindowPixelBuffer -_081C2D56: - ldrb r0, [r4] - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_81C2D2C - - thumb_func_start sub_81C2D68 -sub_81C2D68: @ 81C2D68 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_0203CF1C - ldr r2, =0x000040cb - adds r0, r2 - ldr r1, [r1] - adds r4, r1, r0 - ldrb r0, [r4] - cmp r0, 0xFF - beq _081C2D8C - bl ClearWindowTilemap - ldrb r0, [r4] - bl RemoveWindow - movs r0, 0xFF - strb r0, [r4] -_081C2D8C: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C2D68 - - thumb_func_start sub_81C2D9C -sub_81C2D9C: @ 81C2D9C - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 -_081C2DA4: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040cb - adds r0, r1 - adds r1, r0, r4 - ldrb r0, [r1] - cmp r0, 0xFF - beq _081C2DBA - movs r1, 0 - bl FillWindowPixelBuffer -_081C2DBA: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x7 - bls _081C2DA4 - ldr r0, =gUnknown_0861CE54 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl _call_via_r0 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C2D9C - - thumb_func_start sub_81C2DE4 -sub_81C2DE4: @ 81C2DE4 - push {lr} - lsls r0, 24 - ldr r1, =gUnknown_0861CE64 - lsrs r0, 22 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x10 - bl CreateTask - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C2DE4 - - thumb_func_start sub_81C2E00 -sub_81C2E00: @ 81C2E00 - push {lr} - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r0, 0x74 - ldrb r0, [r0] - cmp r0, 0 - beq _081C2E24 - bl sub_81C335C - bl sub_81C33CC - bl sub_81C3428 - bl sub_81C349C - b _081C2E3C - .pool -_081C2E24: - bl sub_81C2EC4 - bl sub_81C2F5C - bl sub_81C2FD8 - bl sub_81C302C - bl sub_81C307C - bl sub_81C3194 -_081C2E3C: - pop {r0} - bx r0 - thumb_func_end sub_81C2E00 - - thumb_func_start sub_81C2E40 -sub_81C2E40: @ 81C2E40 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - ldrh r0, [r4] - subs r0, 0x1 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x6 - bhi _081C2EB8 - lsls r0, 2 - ldr r1, =_081C2E70 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_081C2E70: - .4byte _081C2E8C - .4byte _081C2E92 - .4byte _081C2E98 - .4byte _081C2E9E - .4byte _081C2EA4 - .4byte _081C2EAA - .4byte _081C2EB0 -_081C2E8C: - bl sub_81C2EC4 - b _081C2EB8 -_081C2E92: - bl sub_81C2F5C - b _081C2EB8 -_081C2E98: - bl sub_81C2FD8 - b _081C2EB8 -_081C2E9E: - bl sub_81C302C - b _081C2EB8 -_081C2EA4: - bl sub_81C307C - b _081C2EB8 -_081C2EAA: - bl sub_81C3194 - b _081C2EB8 -_081C2EB0: - adds r0, r2, 0 - bl DestroyTask - b _081C2EBE -_081C2EB8: - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] -_081C2EBE: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_81C2E40 - - thumb_func_start sub_81C2EC4 -sub_81C2EC4: @ 81C2EC4 - push {r4-r6,lr} - sub sp, 0x8 - bl sub_81A6BF4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081C2F54 - bl sub_81B9E94 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081C2F54 - ldr r0, =gUnknown_0861CCCC - movs r1, 0 - bl sub_81C2D2C - lsls r0, 24 - lsrs r5, r0, 24 - ldr r4, =gText_OTSlash - movs r6, 0 - str r6, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_81C25A4 - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0 - bl GetStringWidth - adds r2, r0, 0 - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0xA2 - ldrb r0, [r0] - cmp r0, 0 - bne _081C2F40 - adds r1, 0xA6 - lsls r2, 24 - lsrs r2, 24 - str r6, [sp] - movs r0, 0x5 - str r0, [sp, 0x4] - adds r0, r5, 0 - movs r3, 0x1 - bl sub_81C25A4 - b _081C2F54 - .pool -_081C2F40: - adds r1, 0xA6 - lsls r2, 24 - lsrs r2, 24 - str r6, [sp] - movs r0, 0x6 - str r0, [sp, 0x4] - adds r0, r5, 0 - movs r3, 0x1 - bl sub_81C25A4 -_081C2F54: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_81C2EC4 - - thumb_func_start sub_81C2F5C -sub_81C2F5C: @ 81C2F5C - push {r4,r5,lr} - sub sp, 0x8 - bl sub_81A6BF4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081C2FC0 - bl sub_81B9E94 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081C2FC0 - ldr r5, =gStringVar1 - ldr r1, =gText_UnkCtrlF907F908 - adds r0, r5, 0 - bl StringCopy - ldr r1, =gUnknown_0203CF1C - ldr r1, [r1] - adds r1, 0xB8 - ldrh r1, [r1] - movs r2, 0x2 - movs r3, 0x5 - bl ConvertIntToDecimalStringN - movs r0, 0x1 - adds r1, r5, 0 - movs r2, 0x38 - bl GetStringRightAlignXOffset - adds r4, r0, 0 - ldr r0, =gUnknown_0861CCCC - movs r1, 0x1 - bl sub_81C2D2C - lsls r0, 24 - lsrs r0, 24 - lsls r4, 24 - lsrs r4, 24 - movs r1, 0 - str r1, [sp] - movs r1, 0x1 - str r1, [sp, 0x4] - adds r1, r5, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_81C25A4 -_081C2FC0: - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C2F5C - - thumb_func_start sub_81C2FD8 -sub_81C2FD8: @ 81C2FD8 - push {r4,lr} - sub sp, 0x8 - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x70 - ldrh r0, [r0] - adds r1, 0x78 - ldrb r1, [r1] - bl GetAbilityBySpecies - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, =gUnknown_0861CCCC - movs r1, 0x2 - bl sub_81C2D2C - lsls r0, 24 - lsrs r0, 24 - movs r1, 0xD - muls r1, r4 - ldr r2, =gAbilityNames - adds r1, r2 - movs r2, 0 - str r2, [sp] - movs r2, 0x1 - str r2, [sp, 0x4] - movs r2, 0 - movs r3, 0x1 - bl sub_81C25A4 - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C2FD8 - - thumb_func_start sub_81C302C -sub_81C302C: @ 81C302C - push {r4,lr} - sub sp, 0x8 - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x70 - ldrh r0, [r0] - adds r1, 0x78 - ldrb r1, [r1] - bl GetAbilityBySpecies - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, =gUnknown_0861CCCC - movs r1, 0x2 - bl sub_81C2D2C - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gAbilityDescriptionPointers - lsls r4, 2 - adds r4, r1 - ldr r1, [r4] - movs r2, 0 - str r2, [sp] - str r2, [sp, 0x4] - movs r3, 0x11 - bl sub_81C25A4 - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C302C - - thumb_func_start sub_81C307C -sub_81C307C: @ 81C307C - push {r4-r6,lr} - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r4, r0, 0 - adds r4, 0x70 - bl sub_81AFBF0 - ldr r1, =gUnknown_0861CE74 - movs r0, 0 - bl sub_81AFC0C - ldr r1, =gUnknown_0861CE7B - movs r0, 0x1 - bl sub_81AFC0C - bl sub_81C31C0 - bl sub_81A6BF4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081C30C2 - bl sub_81B9E94 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081C30C2 - bl sub_81C3304 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081C30E0 -_081C30C2: - ldr r0, =gStringVar4 - ldr r1, =gText_XNature - bl sub_81AFC28 - b _081C3182 - .pool -_081C30E0: - movs r0, 0x20 - bl Alloc - adds r6, r0, 0 - movs r0, 0x20 - bl Alloc - adds r5, r0, 0 - adds r0, r6, 0 - bl sub_81C31F0 - ldrb r0, [r4, 0x9] - cmp r0, 0xD4 - bhi _081C310C - adds r1, r0, 0 - adds r0, r5, 0 - bl sub_8124610 - movs r0, 0x4 - adds r1, r5, 0 - bl sub_81AFC0C -_081C310C: - bl sub_81C3220 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081C3148 - ldrb r0, [r4, 0xA] - cmp r0, 0 - bne _081C3134 - ldrb r0, [r4, 0x9] - ldr r1, =gText_XNatureHatchedAtYZ - cmp r0, 0xD4 - bls _081C3170 - ldr r1, =gText_XNatureHatchedSomewhereAt - b _081C3170 - .pool -_081C3134: - ldrb r0, [r4, 0x9] - ldr r1, =gText_XNatureMetAtYZ - cmp r0, 0xD4 - bls _081C3170 - ldr r1, =gText_XNatureMetSomewhereAt - b _081C3170 - .pool -_081C3148: - ldrb r0, [r4, 0x9] - cmp r0, 0xFF - bne _081C3158 - ldr r1, =gText_XNatureFatefulEncounter - b _081C3170 - .pool -_081C3158: - cmp r0, 0xFE - beq _081C316E - bl sub_81C32BC - lsls r0, 24 - cmp r0, 0 - beq _081C316E - ldrb r0, [r4, 0x9] - ldr r1, =gText_XNatureProbablyMetAt - cmp r0, 0xD4 - bls _081C3170 -_081C316E: - ldr r1, =gText_XNatureObtainedInTrade -_081C3170: - ldr r0, =gStringVar4 - bl sub_81AFC28 - adds r0, r6, 0 - bl Free - adds r0, r5, 0 - bl Free -_081C3182: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C307C - - thumb_func_start sub_81C3194 -sub_81C3194: @ 81C3194 - push {lr} - sub sp, 0x8 - ldr r0, =gUnknown_0861CCCC - movs r1, 0x3 - bl sub_81C2D2C - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gStringVar4 - movs r2, 0 - str r2, [sp] - str r2, [sp, 0x4] - movs r3, 0x1 - bl sub_81C25A4 - add sp, 0x8 - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C3194 - - thumb_func_start sub_81C31C0 -sub_81C31C0: @ 81C31C0 - push {lr} - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =gNatureNamePointers - adds r0, 0xA3 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - movs r0, 0x2 - bl sub_81AFC0C - ldr r1, =gText_EmptyString5 - movs r0, 0x5 - bl sub_81AFC0C - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C31C0 - - thumb_func_start sub_81C31F0 -sub_81C31F0: @ 81C31F0 - push {r4,lr} - adds r4, r0, 0 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r0, 0x7A - ldrb r1, [r0] - cmp r1, 0 - bne _081C3202 - movs r1, 0x5 -_081C3202: - adds r0, r4, 0 - movs r2, 0 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - movs r0, 0x3 - adds r1, r4, 0 - bl sub_81AFC0C - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C31F0 - - thumb_func_start sub_81C3220 -sub_81C3220: @ 81C3220 - push {r4-r6,lr} - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r6, r0, 0 - adds r6, 0x70 - ldr r1, [r0] - ldr r0, =gEnemyParty - cmp r1, r0 - bne _081C326C - bl GetMultiplayerId - movs r1, 0x1 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gLinkPlayers - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r0, r2, 0x4 - adds r0, r1, r0 - ldrh r4, [r0] - adds r0, r1, r2 - ldrb r5, [r0, 0x13] - ldr r0, =gStringVar1 - adds r2, 0x8 - adds r1, r2 - bl StringCopy - b _081C3282 - .pool -_081C326C: - bl sub_80F0020 - adds r4, r0, 0 - ldr r0, =0x0000ffff - ands r4, r0 - ldr r0, =gSaveBlock2Ptr - ldr r1, [r0] - ldrb r5, [r1, 0x8] - ldr r0, =gStringVar1 - bl StringCopy -_081C3282: - adds r0, r6, 0 - adds r0, 0x32 - ldrb r0, [r0] - cmp r5, r0 - bne _081C32A4 - ldr r0, [r6, 0x48] - ldr r1, =0x0000ffff - ands r0, r1 - cmp r4, r0 - bne _081C32A4 - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x36 - bl StringCompareWithoutExtCtrlCodes - cmp r0, 0 - beq _081C32B4 -_081C32A4: - movs r0, 0 - b _081C32B6 - .pool -_081C32B4: - movs r0, 0x1 -_081C32B6: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_81C3220 - - thumb_func_start sub_81C32BC -sub_81C32BC: @ 81C32BC - push {lr} - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r0, 0x70 - ldrb r0, [r0, 0xB] - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bls _081C32D8 - movs r0, 0 - b _081C32DA - .pool -_081C32D8: - movs r0, 0x1 -_081C32DA: - pop {r1} - bx r1 - thumb_func_end sub_81C32BC - - thumb_func_start sub_81C32E0 -sub_81C32E0: @ 81C32E0 - push {lr} - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r0, 0x70 - ldrb r0, [r0, 0xB] - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bls _081C32FC - movs r0, 0 - b _081C32FE - .pool -_081C32FC: - movs r0, 0x1 -_081C32FE: - pop {r1} - bx r1 - thumb_func_end sub_81C32E0 - - thumb_func_start sub_81C3304 -sub_81C3304: @ 81C3304 - push {lr} - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 15 - ands r0, r1 - cmp r0, 0 - beq _081C3354 - ldr r0, =gMain - ldr r1, =0x00000439 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _081C3354 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040be - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - beq _081C333A - cmp r0, 0x4 - beq _081C333A - cmp r0, 0x5 - bne _081C3354 -_081C333A: - movs r0, 0x1 - b _081C3356 - .pool -_081C3354: - movs r0, 0 -_081C3356: - pop {r1} - bx r1 - thumb_func_end sub_81C3304 - - thumb_func_start sub_81C335C -sub_81C335C: @ 81C335C - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x8 - ldr r0, =gUnknown_0861CCCC - movs r1, 0 - bl sub_81C2D2C - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, =gText_OTSlash - mov r8, r0 - movs r0, 0x1 - mov r1, r8 - movs r2, 0 - bl GetStringWidth - adds r5, r0, 0 - movs r0, 0 - mov r9, r0 - str r0, [sp] - movs r6, 0x1 - str r6, [sp, 0x4] - adds r0, r4, 0 - mov r1, r8 - movs r2, 0 - movs r3, 0x1 - bl sub_81C25A4 - ldr r1, =gText_FiveMarks - lsls r5, 24 - lsrs r5, 24 - mov r0, r9 - str r0, [sp] - str r6, [sp, 0x4] - adds r0, r4, 0 - adds r2, r5, 0 - movs r3, 0x1 - bl sub_81C25A4 - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C335C - - thumb_func_start sub_81C33CC -sub_81C33CC: @ 81C33CC - push {r4,r5,lr} - sub sp, 0x8 - ldr r5, =gStringVar1 - ldr r1, =gText_UnkCtrlF907F908 - adds r0, r5, 0 - bl StringCopy - ldr r1, =gText_FiveMarks - adds r0, r5, 0 - bl StringAppend - movs r0, 0x1 - adds r1, r5, 0 - movs r2, 0x38 - bl GetStringRightAlignXOffset - adds r4, r0, 0 - ldr r0, =gUnknown_0861CCCC - movs r1, 0x1 - bl sub_81C2D2C - lsls r0, 24 - lsrs r0, 24 - lsls r4, 24 - lsrs r4, 24 - movs r1, 0 - str r1, [sp] - movs r1, 0x1 - str r1, [sp, 0x4] - adds r1, r5, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_81C25A4 - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C33CC - - thumb_func_start sub_81C3428 -sub_81C3428: @ 81C3428 - push {r4,lr} - sub sp, 0x8 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r1, r0, 0 - adds r1, 0x70 - adds r0, 0xA5 - ldrb r0, [r0] - cmp r0, 0x1 - bne _081C3448 - ldr r4, =gText_EggWillTakeALongTime - b _081C346C - .pool -_081C3448: - ldrh r0, [r1, 0x30] - cmp r0, 0x5 - bhi _081C3458 - ldr r4, =gText_EggAboutToHatch - b _081C346C - .pool -_081C3458: - cmp r0, 0xA - bhi _081C3464 - ldr r4, =gText_EggWillHatchSoon - b _081C346C - .pool -_081C3464: - ldr r4, =gText_EggWillTakeALongTime - cmp r0, 0x28 - bhi _081C346C - ldr r4, =gText_EggWillTakeSomeTime -_081C346C: - ldr r0, =gUnknown_0861CCCC - movs r1, 0x2 - bl sub_81C2D2C - lsls r0, 24 - lsrs r0, 24 - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_81C25A4 - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C3428 - - thumb_func_start sub_81C349C -sub_81C349C: @ 81C349C - push {r4,lr} - sub sp, 0x8 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r4, r0, 0 - adds r4, 0x70 - adds r0, 0xA5 - ldrb r0, [r0] - cmp r0, 0x1 - beq _081C3500 - ldrb r0, [r4, 0x9] - cmp r0, 0xFF - bne _081C34C4 - ldr r4, =gText_PeculiarEggNicePlace - b _081C3502 - .pool -_081C34C4: - bl sub_81C32BC - lsls r0, 24 - cmp r0, 0 - beq _081C34D8 - bl sub_81C3220 - lsls r0, 24 - cmp r0, 0 - bne _081C34E0 -_081C34D8: - ldr r4, =gText_PeculiarEggTrade - b _081C3502 - .pool -_081C34E0: - ldrb r0, [r4, 0x9] - cmp r0, 0xFD - bne _081C3500 - bl sub_81C32E0 - lsls r0, 24 - lsrs r0, 24 - ldr r4, =gText_EggFromTraveler - cmp r0, 0x1 - bne _081C3502 - ldr r4, =gText_EggFromHotSprings - b _081C3502 - .pool -_081C3500: - ldr r4, =gText_OddEggFoundByCouple -_081C3502: - ldr r0, =gUnknown_0861CCCC - movs r1, 0x3 - bl sub_81C2D2C - lsls r0, 24 - lsrs r0, 24 - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - adds r1, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_81C25A4 - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C349C - - thumb_func_start sub_81C3530 -sub_81C3530: @ 81C3530 - push {lr} - bl sub_81C35E4 - bl sub_81C3690 - bl sub_81C3710 - bl sub_81C37D8 - bl sub_81C3808 - bl sub_81C3890 - bl sub_81C38C0 - pop {r0} - bx r0 - thumb_func_end sub_81C3530 - - thumb_func_start sub_81C3554 -sub_81C3554: @ 81C3554 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - ldrh r0, [r4] - subs r0, 0x1 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x7 - bhi _081C35D6 - lsls r0, 2 - ldr r1, =_081C3584 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_081C3584: - .4byte _081C35A4 - .4byte _081C35AA - .4byte _081C35B0 - .4byte _081C35B6 - .4byte _081C35BC - .4byte _081C35C2 - .4byte _081C35C8 - .4byte _081C35CE -_081C35A4: - bl sub_81C35E4 - b _081C35D6 -_081C35AA: - bl sub_81C3690 - b _081C35D6 -_081C35B0: - bl sub_81C3710 - b _081C35D6 -_081C35B6: - bl sub_81C37D8 - b _081C35D6 -_081C35BC: - bl sub_81C3808 - b _081C35D6 -_081C35C2: - bl sub_81C3890 - b _081C35D6 -_081C35C8: - bl sub_81C38C0 - b _081C35D6 -_081C35CE: - adds r0, r2, 0 - bl DestroyTask - b _081C35DC -_081C35D6: - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] -_081C35DC: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_81C3554 - - thumb_func_start sub_81C35E4 -sub_81C35E4: @ 81C35E4 - push {r4,r5,lr} - sub sp, 0x8 - ldr r4, =gUnknown_0203CF1C - ldr r0, [r4] - adds r0, 0x9E - ldrh r0, [r0] - cmp r0, 0xAF - bne _081C3628 - bl sub_81B1250 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081C3628 - ldr r0, [r4] - ldr r1, =0x000040be - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - beq _081C3614 - cmp r0, 0x4 - beq _081C3614 - cmp r0, 0x5 - bne _081C3628 -_081C3614: - movs r0, 0xAF - bl ItemId_GetItem - adds r5, r0, 0 - b _081C3650 - .pool -_081C3628: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r1, r0, 0 - adds r1, 0x9E - ldrh r0, [r1] - cmp r0, 0 - bne _081C3644 - ldr r5, =gText_None - b _081C3650 - .pool -_081C3644: - ldrh r0, [r1] - ldr r4, =gStringVar1 - adds r1, r4, 0 - bl CopyItemName - adds r5, r4, 0 -_081C3650: - movs r0, 0x1 - adds r1, r5, 0 - movs r2, 0x48 - bl GetStringCenterAlignXOffset - adds r4, r0, 0 - adds r4, 0x6 - ldr r0, =gUnknown_0861CCEC - movs r1, 0 - bl sub_81C2D2C - lsls r0, 24 - lsrs r0, 24 - lsls r4, 24 - lsrs r4, 24 - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - adds r1, r5, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_81C25A4 - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C35E4 - - thumb_func_start sub_81C3690 -sub_81C3690: @ 81C3690 - push {r4,r5,lr} - sub sp, 0x8 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r1, r0, 0 - adds r1, 0x76 - ldrb r0, [r1] - cmp r0, 0 - bne _081C36B0 - ldr r5, =gText_None - b _081C36C8 - .pool -_081C36B0: - ldr r0, =gStringVar1 - ldrb r1, [r1] - movs r2, 0x1 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldr r4, =gStringVar4 - ldr r1, =gText_RibbonsVar1 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r5, r4, 0 -_081C36C8: - movs r0, 0x1 - adds r1, r5, 0 - movs r2, 0x46 - bl GetStringCenterAlignXOffset - adds r4, r0, 0 - adds r4, 0x6 - ldr r0, =gUnknown_0861CCEC - movs r1, 0x1 - bl sub_81C2D2C - lsls r0, 24 - lsrs r0, 24 - lsls r4, 24 - lsrs r4, 24 - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - adds r1, r5, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_81C25A4 - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C3690 - - thumb_func_start sub_81C3710 -sub_81C3710: @ 81C3710 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - movs r0, 0x8 - bl Alloc - mov r9, r0 - movs r0, 0x8 - bl Alloc - mov r8, r0 - movs r0, 0x8 - bl Alloc - adds r6, r0, 0 - movs r0, 0x8 - bl Alloc - adds r5, r0, 0 - ldr r4, =gUnknown_0203CF1C - ldr r0, [r4] - adds r0, 0x90 - ldrh r1, [r0] - mov r0, r9 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - ldr r0, [r4] - adds r0, 0x92 - ldrh r1, [r0] - mov r0, r8 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - ldr r0, [r4] - adds r0, 0x94 - ldrh r1, [r0] - adds r0, r6, 0 - movs r2, 0x1 - movs r3, 0x7 - bl ConvertIntToDecimalStringN - ldr r0, [r4] - adds r0, 0x96 - ldrh r1, [r0] - adds r0, r5, 0 - movs r2, 0x1 - movs r3, 0x7 - bl ConvertIntToDecimalStringN - bl sub_81AFBF0 - movs r0, 0 - mov r1, r9 - bl sub_81AFC0C - movs r0, 0x1 - mov r1, r8 - bl sub_81AFC0C - movs r0, 0x2 - adds r1, r6, 0 - bl sub_81AFC0C - movs r0, 0x3 - adds r1, r5, 0 - bl sub_81AFC0C - ldr r0, =gStringVar4 - ldr r1, =gUnknown_0861CE82 - bl sub_81AFC28 - mov r0, r9 - bl Free - mov r0, r8 - bl Free - adds r0, r6, 0 - bl Free - adds r0, r5, 0 - bl Free - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C3710 - - thumb_func_start sub_81C37D8 -sub_81C37D8: @ 81C37D8 - push {lr} - sub sp, 0x8 - ldr r0, =gUnknown_0861CCEC - movs r1, 0x2 - bl sub_81C2D2C - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gStringVar4 - movs r2, 0 - str r2, [sp] - str r2, [sp, 0x4] - movs r2, 0x4 - movs r3, 0x1 - bl sub_81C25A4 - add sp, 0x8 - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C37D8 - - thumb_func_start sub_81C3808 -sub_81C3808: @ 81C3808 - push {r4-r6,lr} - mov r6, r8 - push {r6} - ldr r0, =gStringVar1 - mov r8, r0 - ldr r4, =gUnknown_0203CF1C - ldr r0, [r4] - adds r0, 0x98 - ldrh r1, [r0] - mov r0, r8 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - ldr r6, =gStringVar2 - ldr r0, [r4] - adds r0, 0x9A - ldrh r1, [r0] - adds r0, r6, 0 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - ldr r5, =gStringVar3 - ldr r0, [r4] - adds r0, 0x9C - ldrh r1, [r0] - adds r0, r5, 0 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - bl sub_81AFBF0 - movs r0, 0 - mov r1, r8 - bl sub_81AFC0C - movs r0, 0x1 - adds r1, r6, 0 - bl sub_81AFC0C - movs r0, 0x2 - adds r1, r5, 0 - bl sub_81AFC0C - ldr r0, =gStringVar4 - ldr r1, =gUnknown_0861CE8E - bl sub_81AFC28 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C3808 - - thumb_func_start sub_81C3890 -sub_81C3890: @ 81C3890 - push {lr} - sub sp, 0x8 - ldr r0, =gUnknown_0861CCEC - movs r1, 0x3 - bl sub_81C2D2C - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gStringVar4 - movs r2, 0 - str r2, [sp] - str r2, [sp, 0x4] - movs r2, 0x2 - movs r3, 0x1 - bl sub_81C25A4 - add sp, 0x8 - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C3890 - - thumb_func_start sub_81C38C0 -sub_81C38C0: @ 81C38C0 - push {r4-r6,lr} - sub sp, 0x8 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - adds r5, r0, 0 - adds r5, 0x70 - ldr r0, =gUnknown_0861CCEC - movs r1, 0x4 - bl sub_81C2D2C - lsls r0, 24 - lsrs r6, r0, 24 - ldr r4, =gStringVar1 - ldr r1, [r5, 0x10] - adds r0, r4, 0 - movs r2, 0x1 - movs r3, 0x7 - bl ConvertIntToDecimalStringN - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0x2A - bl GetStringRightAlignXOffset - adds r0, 0x2 - lsls r2, r0, 24 - lsrs r2, 24 - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - adds r0, r6, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_81C25A4 - ldrb r0, [r5, 0x5] - cmp r0, 0x63 - bhi _081C3948 - ldr r4, =gExperienceTables - adds r1, r0, 0 - adds r1, 0x1 - lsls r1, 2 - ldr r3, =gBaseStats - ldrh r2, [r5] - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r3 - ldrb r2, [r0, 0x13] - movs r0, 0xCA - lsls r0, 1 - muls r0, r2 - adds r1, r0 - adds r1, r4 - ldr r1, [r1] - ldr r0, [r5, 0x10] - subs r1, r0 - b _081C394A - .pool -_081C3948: - movs r1, 0 -_081C394A: - ldr r4, =gStringVar1 - adds r0, r4, 0 - movs r2, 0x1 - movs r3, 0x6 - bl ConvertIntToDecimalStringN - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0x2A - bl GetStringRightAlignXOffset - adds r0, 0x2 - lsls r2, r0, 24 - lsrs r2, 24 - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - adds r0, r6, 0 - adds r1, r4, 0 - movs r3, 0x11 - bl sub_81C25A4 - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C38C0 - - thumb_func_start sub_81C3984 -sub_81C3984: @ 81C3984 - push {r4,lr} - movs r0, 0 - bl sub_81C3B08 - movs r0, 0x1 - bl sub_81C3B08 - movs r0, 0x2 - bl sub_81C3B08 - movs r0, 0x3 - bl sub_81C3B08 - ldr r4, =gUnknown_0203CF1C - ldr r0, [r4] - ldr r1, =0x000040bc - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x3 - bne _081C39EA - bl sub_81C3F44 - ldr r1, [r4] - ldr r0, =0x000040c6 - adds r2, r1, r0 - ldrb r0, [r2] - cmp r0, 0x4 - bne _081C39DC - ldr r0, =0x000040c4 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - beq _081C39EA - bl sub_81C3E9C - b _081C39EA - .pool -_081C39DC: - ldrb r0, [r2] - lsls r0, 1 - adds r1, 0x84 - adds r1, r0 - ldrh r0, [r1] - bl sub_81C3E9C -_081C39EA: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_81C3984 - - thumb_func_start sub_81C39F0 -sub_81C39F0: @ 81C39F0 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - ldrh r0, [r4] - subs r0, 0x1 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x7 - bhi _081C3AFC - lsls r0, 2 - ldr r1, =_081C3A20 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_081C3A20: - .4byte _081C3A40 - .4byte _081C3A48 - .4byte _081C3A50 - .4byte _081C3A58 - .4byte _081C3A60 - .4byte _081C3A7C - .4byte _081C3ABE - .4byte _081C3AF4 -_081C3A40: - movs r0, 0 - bl sub_81C3B08 - b _081C3AFC -_081C3A48: - movs r0, 0x1 - bl sub_81C3B08 - b _081C3AFC -_081C3A50: - movs r0, 0x2 - bl sub_81C3B08 - b _081C3AFC -_081C3A58: - movs r0, 0x3 - bl sub_81C3B08 - b _081C3AFC -_081C3A60: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040bc - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x3 - bne _081C3AFC - bl sub_81C3F44 - b _081C3AFC - .pool -_081C3A7C: - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - ldr r2, =0x000040bc - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x3 - bne _081C3AFC - ldr r0, =0x000040c6 - adds r2, r1, r0 - ldrb r0, [r2] - cmp r0, 0x4 - bne _081C3AB0 - ldr r2, =0x000040c4 - adds r0, r1, r2 - ldrh r0, [r0] - strh r0, [r4, 0x2] - b _081C3AFC - .pool -_081C3AB0: - ldrb r0, [r2] - lsls r0, 1 - adds r1, 0x84 - adds r1, r0 - ldrh r0, [r1] - strh r0, [r4, 0x2] - b _081C3AFC -_081C3ABE: - ldr r0, =gUnknown_0203CF1C - ldr r1, [r0] - ldr r2, =0x000040bc - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x3 - bne _081C3AFC - adds r2, 0x8 - adds r0, r1, r2 - ldr r0, [r0] - ldr r1, =0x00ffffff - ands r0, r1 - movs r1, 0x80 - lsls r1, 11 - cmp r0, r1 - beq _081C3AFC - ldrh r0, [r4, 0x2] - bl sub_81C3E9C - b _081C3AFC - .pool -_081C3AF4: - adds r0, r2, 0 - bl DestroyTask - b _081C3B02 -_081C3AFC: - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] -_081C3B02: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_81C39F0 - - thumb_func_start sub_81C3B08 -sub_81C3B08: @ 81C3B08 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - mov r10, r0 - ldr r4, =gUnknown_0861CD14 - adds r0, r4, 0 - movs r1, 0 - bl sub_81C2D2C - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_81C2D2C - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x8] - lsls r1, r7, 1 - mov r0, r10 - adds r0, 0x84 - adds r0, r1 - ldrh r5, [r0] - cmp r5, 0 - beq _081C3C00 - mov r0, r10 - adds r0, 0xA4 - ldrb r1, [r0] - adds r0, r5, 0 - adds r2, r7, 0 - bl CalculatePPWithBonus - adds r6, r0, 0 - lsls r6, 24 - lsrs r6, 24 - movs r0, 0xD - adds r1, r5, 0 - muls r1, r0 - ldr r0, =gMoveNames - adds r1, r0 - lsls r0, r7, 4 - mov r9, r0 - mov r3, r9 - adds r3, 0x1 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0 - str r0, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - mov r0, r8 - movs r2, 0 - bl sub_81C25A4 - ldr r0, =gStringVar1 - mov r8, r0 - mov r5, r10 - adds r5, 0x8C - adds r5, r7 - ldrb r1, [r5] - movs r2, 0x1 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldr r4, =gStringVar2 - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0x1 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - bl sub_81AFBF0 - movs r0, 0 - mov r1, r8 - bl sub_81AFC0C - movs r0, 0x1 - adds r1, r4, 0 - bl sub_81AFC0C - ldr r4, =gStringVar4 - ldr r1, =gUnknown_0861CE97 - adds r0, r4, 0 - bl sub_81AFC28 - adds r7, r4, 0 - ldrb r0, [r5] - adds r1, r6, 0 - bl sub_814FC20 - lsls r0, 24 - lsrs r0, 24 - adds r5, r0, 0 - adds r5, 0x9 - movs r0, 0x1 - adds r1, r7, 0 - movs r2, 0x2C - bl GetStringRightAlignXOffset - mov r4, r9 - b _081C3C26 - .pool -_081C3C00: - ldr r1, =gText_OneDash - lsls r4, r7, 4 - adds r3, r4, 0x1 - lsls r3, 24 - lsrs r3, 24 - str r5, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - mov r0, r8 - movs r2, 0 - bl sub_81C25A4 - ldr r7, =gText_TwoDashes - movs r5, 0xC - movs r0, 0x1 - adds r1, r7, 0 - movs r2, 0x2C - bl GetStringCenterAlignXOffset -_081C3C26: - lsls r2, r0, 24 - lsrs r2, 24 - adds r3, r4, 0x1 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0 - str r0, [sp] - lsls r0, r5, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - ldr r0, [sp, 0x8] - adds r1, r7, 0 - bl sub_81C25A4 - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C3B08 - - thumb_func_start sub_81C3C5C -sub_81C3C5C: @ 81C3C5C - push {r4-r6,lr} - sub sp, 0x8 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0 - beq _081C3CFC - movs r0, 0x13 - str r0, [sp] - movs r0, 0x20 - str r0, [sp, 0x4] - movs r0, 0xE - movs r1, 0 - movs r2, 0x35 - movs r3, 0 - bl FillWindowPixelRect - ldr r2, =gBattleMoves - lsls r1, r5, 1 - adds r0, r1, r5 - lsls r0, 2 - adds r2, r0, r2 - ldrb r0, [r2, 0x1] - adds r6, r1, 0 - cmp r0, 0x1 - bhi _081C3C9C - ldr r1, =gText_ThreeDashes - b _081C3CAC - .pool -_081C3C9C: - ldr r4, =gStringVar1 - ldrb r1, [r2, 0x1] - adds r0, r4, 0 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - adds r1, r4, 0 -_081C3CAC: - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - movs r0, 0xE - movs r2, 0x35 - movs r3, 0x1 - bl sub_81C25A4 - ldr r1, =gBattleMoves - adds r0, r6, r5 - lsls r0, 2 - adds r1, r0, r1 - ldrb r0, [r1, 0x3] - cmp r0, 0 - bne _081C3CDC - ldr r1, =gText_ThreeDashes - b _081C3CEC - .pool -_081C3CDC: - ldr r4, =gStringVar1 - ldrb r1, [r1, 0x3] - adds r0, r4, 0 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - adds r1, r4, 0 -_081C3CEC: - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - movs r0, 0xE - movs r2, 0x35 - movs r3, 0x11 - bl sub_81C25A4 -_081C3CFC: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C3C5C - - thumb_func_start sub_81C3D08 -sub_81C3D08: @ 81C3D08 - push {r4,lr} - movs r0, 0 - bl sub_81C3B08 - movs r0, 0x1 - bl sub_81C3B08 - movs r0, 0x2 - bl sub_81C3B08 - movs r0, 0x3 - bl sub_81C3B08 - ldr r4, =gUnknown_0203CF1C - ldr r0, [r4] - ldr r1, =0x000040bc - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x3 - bne _081C3D40 - bl sub_81C3F44 - ldr r0, [r4] - ldr r1, =0x000040c6 - adds r0, r1 - ldrb r0, [r0] - bl sub_81C3E2C -_081C3D40: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81C3D08 - - thumb_func_start sub_81C3D54 -sub_81C3D54: @ 81C3D54 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - ldrh r0, [r4] - subs r0, 0x1 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x6 - bhi _081C3E20 - lsls r0, 2 - ldr r1, =_081C3D84 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_081C3D84: - .4byte _081C3DA0 - .4byte _081C3DA8 - .4byte _081C3DB0 - .4byte _081C3DB8 - .4byte _081C3DC0 - .4byte _081C3DDC - .4byte _081C3E18 -_081C3DA0: - movs r0, 0 - bl sub_81C3B08 - b _081C3E20 -_081C3DA8: - movs r0, 0x1 - bl sub_81C3B08 - b _081C3E20 -_081C3DB0: - movs r0, 0x2 - bl sub_81C3B08 - b _081C3E20 -_081C3DB8: - movs r0, 0x3 - bl sub_81C3B08 - b _081C3E20 -_081C3DC0: - ldr r0, =gUnknown_0203CF1C - ldr r0, [r0] - ldr r1, =0x000040bc - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x3 - bne _081C3E20 - bl sub_81C3F44 - b _081C3E20 - .pool -_081C3DDC: - ldr r0, =gUnknown_0203CF1C - ldr r2, [r0] - ldr r1, =0x000040bc - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0x3 - bne _081C3E20 - adds r1, 0x8 - adds r0, r2, r1 - ldr r0, [r0] - ldr r1, =0x00ffffff - ands r0, r1 - movs r1, 0x80 - lsls r1, 11 - cmp r0, r1 - beq _081C3E20 - ldr r1, =0x000040c6 - adds r0, r2, r1 - ldrb r0, [r0] - bl sub_81C3E2C - b _081C3E20 - .pool -_081C3E18: - adds r0, r2, 0 - bl DestroyTask - b _081C3E26 -_081C3E20: - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] -_081C3E26: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_81C3D54 - thumb_func_start sub_81C3E2C sub_81C3E2C: @ 81C3E2C push {r4,lr} @@ -8807,7 +981,7 @@ _081C4620: lsls r0, r2, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] ldr r1, [r1, 0x8] b _081C46D6 @@ -8817,12 +991,12 @@ _081C4668: lsls r0, r2, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] b _081C46B0 .pool _081C4680: - ldr r0, =gBattleSpritesGfx + ldr r0, =gMonSpritesGfxPtr ldr r3, [r0] adds r4, r0, 0 cmp r3, 0 diff --git a/asm/pokenav.s b/asm/pokenav.s index 58e60c51d..0c7a80742 100755 --- a/asm/pokenav.s +++ b/asm/pokenav.s @@ -13136,7 +13136,7 @@ _081CD8E4: ldr r2, =0x00006325 adds r4, r2 adds r0, r3, 0 - bl sav3_get_box_name + bl GetBoxNamePtr adds r1, r0, 0 adds r0, r4, 0 _081CD8F4: @@ -24164,7 +24164,7 @@ _081D2F2C: adds r4, r5, 0x5 lsls r0, r7, 24 lsrs r0, 24 - bl sav3_get_box_name + bl GetBoxNamePtr adds r1, r0, 0 adds r0, r4, 0 _081D2F3A: @@ -27356,7 +27356,7 @@ _081D4870: bl MapGridGetMetatileBehaviorAt lsls r0, 24 lsrs r0, 24 - bl sub_8088E64 + bl MetatileBehavior_IsPokeGrass lsls r0, 24 lsrs r0, 24 _081D4888: @@ -28252,7 +28252,7 @@ _081D4FB6: lsls r0, 24 cmp r0, 0 beq _081D500C - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _081D4FE6 @@ -28280,7 +28280,7 @@ _081D4FEC: strb r0, [r4] b _081D500C _081D4FF8: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _081D500C @@ -28673,13 +28673,13 @@ _081D5374: bl sub_80097E8 b _081D53C0 _081D537A: - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 cmp r0, 0 bne _081D5386 b _081D548A _081D5386: - bl sub_800A5B4 + bl ResetBlockReceivedFlags movs r0, 0xF strb r0, [r4, 0x8] b _081D548A @@ -28694,7 +28694,7 @@ _081D5390: b _081D548A .pool _081D53A8: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _081D548A diff --git a/asm/porthole.s b/asm/porthole.s deleted file mode 100644 index 282f6f584..000000000 --- a/asm/porthole.s +++ /dev/null @@ -1,282 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_80FB59C -sub_80FB59C: @ 80FB59C - push {r4-r6,lr} - sub sp, 0xC - mov r4, sp - adds r4, 0x5 - mov r5, sp - adds r5, 0x6 - add r6, sp, 0x8 - add r0, sp, 0x4 - adds r1, r4, 0 - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_8137FFC - lsls r0, 24 - cmp r0, 0 - bne _080FB5DE - add r0, sp, 0x4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - movs r1, 0 - ldrsb r1, [r4, r1] - movs r2, 0x1 - negs r2, r2 - movs r3, 0 - ldrsb r3, [r5, r3] - movs r4, 0 - ldrsb r4, [r6, r4] - str r4, [sp] - bl warp1_set - movs r0, 0x1 - b _080FB5E0 -_080FB5DE: - movs r0, 0 -_080FB5E0: - add sp, 0xC - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80FB59C - - thumb_func_start sub_80FB5E8 -sub_80FB5E8: @ 80FB5E8 - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - ldr r0, =0x000040b4 - bl GetVarPointer - adds r7, r0, 0 - ldr r0, =gSaveBlock1Ptr - ldr r3, [r0] - adds r6, r3, 0x4 - movs r0, 0 - ldrsh r2, [r4, r0] - cmp r2, 0x1 - beq _080FB648 - cmp r2, 0x1 - bgt _080FB624 - cmp r2, 0 - beq _080FB62E - b _080FB6E2 - .pool -_080FB624: - cmp r2, 0x2 - beq _080FB68A - cmp r2, 0x3 - beq _080FB6C4 - b _080FB6E2 -_080FB62E: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080FB6E2 - strh r2, [r4, 0x2] - movs r0, 0x2 - strh r0, [r4] - b _080FB6E2 - .pool -_080FB648: - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _080FB656 - strh r2, [r4, 0x2] -_080FB656: - ldrb r1, [r6, 0x1] - ldrb r2, [r3, 0x4] - movs r0, 0xFF - bl sub_80D3340 - lsls r0, 24 - cmp r0, 0 - beq _080FB6E2 - movs r0, 0x1 - bl sub_8137FC0 - cmp r0, 0x1 - bne _080FB686 - ldrh r0, [r7] - cmp r0, 0x2 - bne _080FB680 - movs r0, 0x9 - b _080FB682 - .pool -_080FB680: - movs r0, 0xA -_080FB682: - strh r0, [r7] - b _080FB692 -_080FB686: - movs r0, 0x2 - strh r0, [r4] -_080FB68A: - movs r1, 0x2 - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _080FB698 -_080FB692: - movs r0, 0x3 - strh r0, [r4] - b _080FB6E2 -_080FB698: - ldrh r0, [r7] - cmp r0, 0x2 - bne _080FB6AC - ldrb r1, [r6, 0x1] - ldrb r2, [r6] - ldr r3, =gUnknown_0858E8AB - b _080FB6B2 - .pool -_080FB6AC: - ldrb r1, [r6, 0x1] - ldrb r2, [r6] - ldr r3, =gUnknown_0858E8AD -_080FB6B2: - movs r0, 0xFF - bl exec_movement - movs r0, 0x1 - strh r0, [r4] - b _080FB6E2 - .pool -_080FB6C4: - ldr r0, =0x00004001 - bl FlagReset - movs r0, 0x80 - lsls r0, 7 - bl FlagReset - movs r0, 0 - bl copy_saved_warp2_bank_and_enter_x_to_warp1 - bl sp13E_warp_to_last_warp - adds r0, r5, 0 - bl DestroyTask -_080FB6E2: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80FB5E8 - - thumb_func_start sub_80FB6EC -sub_80FB6EC: @ 80FB6EC - push {r4,lr} - sub sp, 0x4 - ldr r1, =SpriteCallbackDummy - movs r0, 0 - str r0, [sp] - movs r0, 0x8C - movs r2, 0x70 - movs r3, 0x50 - bl AddPseudoFieldObject - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r4, r1, r2 - adds r2, r4, 0 - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - ldr r0, =0x000040b4 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - bne _080FB74C - movs r0, 0x4 - bl FieldObjectDirectionToImageAnimId - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl StartSpriteAnim - b _080FB75E - .pool -_080FB74C: - movs r0, 0x3 - bl FieldObjectDirectionToImageAnimId - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl StartSpriteAnim -_080FB75E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80FB6EC - - thumb_func_start sub_80FB768 -sub_80FB768: @ 80FB768 - push {lr} - bl sub_80FB6EC - ldr r2, =gMapObjects - ldr r0, =gPlayerAvatar - ldrb r1, [r0, 0x5] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x1] - movs r2, 0x20 - orrs r1, r2 - strb r1, [r0, 0x1] - bl pal_fill_black - ldr r0, =sub_80FB5E8 - movs r1, 0x50 - bl CreateTask - bl ScriptContext2_Enable - pop {r0} - bx r0 - .pool - thumb_func_end sub_80FB768 - - thumb_func_start sub_80FB7A4 -sub_80FB7A4: @ 80FB7A4 - push {lr} - ldr r0, =0x0000088d - bl FlagSet - ldr r0, =0x00004001 - bl FlagSet - movs r0, 0x80 - lsls r0, 7 - bl FlagSet - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - movs r1, 0x4 - ldrsb r1, [r0, r1] - movs r2, 0x5 - ldrsb r2, [r0, r2] - movs r3, 0x1 - negs r3, r3 - movs r0, 0 - bl saved_warp2_set - bl sub_80FB59C - bl sub_80AF8B8 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80FB7A4 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/rayquaza_scene.s b/asm/rayquaza_scene.s index fdfd22979..f9936f1ca 100755 --- a/asm/rayquaza_scene.s +++ b/asm/rayquaza_scene.s @@ -5968,26 +5968,5 @@ _081D99B4: bx r0 thumb_func_end sub_81D98B4 - thumb_func_start sub_81D99BC -sub_81D99BC: @ 81D99BC - push {r4,lr} - bl sub_80D2578 - cmp r0, 0 - bne _081D99DC - ldr r4, =gStringVar1 - bl sub_80D2548 - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - movs r0, 0x1 - b _081D99DE - .pool -_081D99DC: - movs r0, 0 -_081D99DE: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_81D99BC .align 2, 0 @ Don't pad with nop. diff --git a/asm/record_mixing.s b/asm/record_mixing.s index a62022cc7..7e9ea30d1 100644 --- a/asm/record_mixing.s +++ b/asm/record_mixing.s @@ -849,7 +849,7 @@ _080E745A: strh r0, [r5, 0x20] b _080E7566 _080E7464: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _080E746E @@ -1066,7 +1066,7 @@ sub_80E7630: @ 80E7630 ldr r1, =gTasks adds r0, r1 mov r10, r0 - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 lsrs r0, 24 str r0, [sp, 0x4] @@ -1135,7 +1135,7 @@ _080E76DC: bl memcpy _080E76E4: mov r0, r8 - bl sub_800A5EC + bl ResetBlockReceivedFlag mov r0, r9 lsls r1, r0, 1 adds r1, r5, r1 @@ -1162,7 +1162,7 @@ _080E7714: lsrs r0, 24 mov r8, r0 _080E771C: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r8, r0 @@ -1179,7 +1179,7 @@ _080E771C: adds r1, 0x1 strh r1, [r0, 0x8] _080E773E: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 ldr r4, [sp, 0x8] @@ -1302,7 +1302,7 @@ sub_80E7810: @ 80E7810 sub_80E7820: @ 80E7820 lsls r0, 24 lsrs r0, 16 - ldr r1, =gUnknown_020223C4 + ldr r1, =gBlockRecvBuffer adds r0, r1 bx lr .pool @@ -1312,7 +1312,7 @@ sub_80E7820: @ 80E7820 sub_80E7830: @ 80E7830 push {r4,lr} adds r4, r0, 0 - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r0, 0x3 @@ -1341,7 +1341,7 @@ _080E7856: .pool _080E7868: movs r0, 0 - bl sub_800A2A4 + bl GetLinkPlayerTrainerId adds r2, r0, 0 movs r0, 0x1 ands r2, r0 @@ -1362,7 +1362,7 @@ _080E7880: .pool _080E7894: movs r0, 0 - bl sub_800A2A4 + bl GetLinkPlayerTrainerId movs r1, 0x9 bl __umodsi3 adds r2, r0, 0 @@ -1523,7 +1523,7 @@ _080E79CE: adds r4, r1, 0 adds r4, 0x20 adds r0, r4, 0 - bl sub_8009228 + bl IsStringJapanese cmp r0, 0 beq _080E79F2 adds r0, r4, 0 @@ -1738,7 +1738,7 @@ sub_80E7B60: @ 80E7B60 ldr r0, =gLinkPlayers ldrh r0, [r0, 0x4] bl SeedRng2 - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r4, r0, 24 movs r0, 0 @@ -1878,7 +1878,7 @@ _080E7C9A: bne _080E7CEE adds r0, r5, 0 adds r0, 0x24 - bl sub_8009228 + bl IsStringJapanese cmp r0, 0 beq _080E7CBA adds r0, r5, 0 @@ -1901,7 +1901,7 @@ _080E7CC6: adds r4, r0, 0 adds r0, r5, 0 adds r0, 0x2C - bl sub_8009228 + bl IsStringJapanese cmp r0, 0 beq _080E7CE2 ldrb r0, [r4] @@ -1931,7 +1931,7 @@ _080E7CFA: lsrs r0, 16 mov r8, r0 _080E7D04: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r8, r0 @@ -2266,7 +2266,7 @@ sub_80E7F68: @ 80E7F68 bne _080E7FE4 ldrh r0, [r4] movs r1, 0x1 - bl sub_80D6D1C + bl CheckPCHasItem lsls r0, 24 cmp r0, 0 bne _080E7FE4 @@ -2368,7 +2368,7 @@ _080E807C: bl sub_800AC34 b _080E80F2 _080E8090: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _080E810A @@ -3557,7 +3557,7 @@ sub_80E89AC: @ 80E89AC adds r6, r0, 0 mov r8, r1 mov r9, r2 - bl sub_8009FCC + bl GetLinkPlayerCount adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 diff --git a/asm/recorded_battle.s b/asm/recorded_battle.s index 94d96b2f8..2209312c2 100644 --- a/asm/recorded_battle.s +++ b/asm/recorded_battle.s @@ -95,7 +95,7 @@ sub_8184E58: @ 8184E58 ldrb r0, [r0] cmp r0, 0x1 bne _08184EA0 - ldr r1, =gUnknown_0203BD2C + ldr r1, =gRecordedBattleRngSeed ldr r0, =gRngValue ldr r0, [r0] str r0, [r1] @@ -112,7 +112,7 @@ _08184EA0: cmp r0, 0x2 bne _08184EAC ldr r0, =gRngValue - ldr r1, =gUnknown_0203BD2C + ldr r1, =gRecordedBattleRngSeed ldr r1, [r1] str r1, [r0] _08184EAC: @@ -125,7 +125,7 @@ _08184EAC: bl GetMultiplayerId ldr r1, =gUnknown_0203C7B4 strb r0, [r1] - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 mov r10, r0 @@ -236,8 +236,8 @@ _08184FA0: .pool thumb_func_end sub_8184E58 - thumb_func_start sub_8184FBC -sub_8184FBC: @ 8184FBC + thumb_func_start RecordedBattle_SetBankAction +RecordedBattle_SetBankAction: @ 8184FBC push {r4-r6,lr} lsls r0, 24 lsrs r5, r0, 24 @@ -269,10 +269,10 @@ _08184FF0: pop {r0} bx r0 .pool - thumb_func_end sub_8184FBC + thumb_func_end RecordedBattle_SetBankAction - thumb_func_start sub_8185008 -sub_8185008: @ 8185008 + thumb_func_start RecordedBattle_ClearBankAction +RecordedBattle_ClearBankAction: @ 8185008 push {r4-r7,lr} lsls r0, 24 lsrs r5, r0, 24 @@ -310,7 +310,7 @@ _08185046: pop {r0} bx r0 .pool - thumb_func_end sub_8185008 + thumb_func_end RecordedBattle_ClearBankAction thumb_func_start sub_8185054 sub_8185054: @ 8185054 @@ -348,7 +348,7 @@ _0818507A: movs r2, 0 movs r3, 0x10 bl BeginNormalPaletteFade - ldr r0, =sub_80384E4 + ldr r0, =CB2_QuitRecordedBattle bl SetMainCallback2 movs r0, 0xFF b _081850C6 @@ -505,7 +505,7 @@ _081851D0: adds r4, 0x1C adds r5, 0x1 _081851DA: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r5, r0 @@ -681,8 +681,8 @@ _08185332: bx r1 thumb_func_end sub_81852F0 - thumb_func_start sub_8185338 -sub_8185338: @ 8185338 + thumb_func_start MoveRecordedBattleToSaveData +MoveRecordedBattleToSaveData: @ 8185338 push {r4-r7,lr} mov r7, r10 mov r6, r9 @@ -779,7 +779,7 @@ _081853BA: movs r4, 0x9D lsls r4, 3 adds r1, r7, r4 - ldr r5, =gUnknown_0203BD2C + ldr r5, =gRecordedBattleRngSeed ldr r0, [r5] str r0, [r1] ldr r0, =gUnknown_0203C7B8 @@ -1469,7 +1469,7 @@ _08185A14: pop {r1} bx r1 .pool - thumb_func_end sub_8185338 + thumb_func_end MoveRecordedBattleToSaveData thumb_func_start sub_8185A54 sub_8185A54: @ 8185A54 @@ -1576,7 +1576,7 @@ sub_8185B1C: @ 8185B1C ldr r0, =gMain ldr r1, =sub_8185AB0 str r1, [r0, 0x8] - ldr r0, =sub_8036760 + ldr r0, =CB2_InitBattle bl SetMainCallback2 adds r0, r4, 0 bl DestroyTask @@ -1701,7 +1701,7 @@ _08185C2A: adds r6, 0x1 cmp r6, 0x3 ble _08185BBE - ldr r1, =gUnknown_0203BD2C + ldr r1, =gRecordedBattleRngSeed movs r3, 0x9D lsls r3, 3 adds r0, r7, r3 @@ -2212,7 +2212,7 @@ _081860C2: ldr r1, [sp, 0x4C] lsrs r0, r1, 24 movs r1, 0x6 - bl sub_8184FBC + bl RecordedBattle_SetBankAction movs r5, 0 ldr r2, =gUnknown_0203CC70 mov r8, r2 @@ -2241,7 +2241,7 @@ _081860F0: lsrs r1, 24 ldr r2, [sp, 0x4C] lsrs r0, r2, 24 - bl sub_8184FBC + bl RecordedBattle_SetBankAction b _08186118 .pool _08186110: @@ -2655,8 +2655,8 @@ sub_8186444: @ 8186444 .pool thumb_func_end sub_8186444 - thumb_func_start rfu_lacks_rfufunc -rfu_lacks_rfufunc: @ 8186450 + thumb_func_start sub_8186450 +sub_8186450: @ 8186450 push {lr} movs r1, 0 ldr r0, =gUnknown_0203CCD0 @@ -2669,7 +2669,7 @@ _0818645E: pop {r1} bx r1 .pool - thumb_func_end rfu_lacks_rfufunc + thumb_func_end sub_8186450 thumb_func_start sub_8186468 sub_8186468: @ 8186468 diff --git a/asm/region_map.s b/asm/region_map.s index 150b4893e..032bdf7a5 100644 --- a/asm/region_map.s +++ b/asm/region_map.s @@ -1939,7 +1939,7 @@ sub_8123C00: @ 8123C00 adds r1, r4, 0 adds r2, r5, 0 adds r3, r6, 0 - bl sub_8137FFC + bl GetSSTidalLocation lsls r0, 24 lsrs r0, 24 mov r10, r5 diff --git a/asm/reset_rtc_screen.s b/asm/reset_rtc_screen.s index ac2c1181c..1f5ef83d8 100644 --- a/asm/reset_rtc_screen.s +++ b/asm/reset_rtc_screen.s @@ -291,7 +291,7 @@ sub_809EB04: @ 809EB04 lsrs r5, 24 ldr r0, =gUnknown_085104C4 bl LoadSpritePalette - ldr r0, =gUnknown_085104F0 + ldr r0, =gSpriteTemplate_85104F0 mov r8, r0 movs r1, 0x35 movs r2, 0x44 @@ -655,7 +655,7 @@ sub_809EDE8: @ 809EDE8 lsls r0, r4, 1 adds r0, r4 lsls r0, 2 - ldr r1, =gUnknown_0851041C + ldr r1, =gUnknown_08510420 - 0x4 adds r2, r0, r1 ldr r1, =gMain ldrh r3, [r1, 0x2E] diff --git a/asm/reshow_battle_screen.s b/asm/reshow_battle_screen.s deleted file mode 100644 index f83a11ff1..000000000 --- a/asm/reshow_battle_screen.s +++ /dev/null @@ -1,1040 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start nullsub_35 -nullsub_35: @ 80A92F4 - bx lr - thumb_func_end nullsub_35 - - thumb_func_start sub_80A92F8 -sub_80A92F8: @ 80A92F8 - push {lr} - ldr r2, =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x8] - movs r0, 0 - bl SetHBlankCallback - movs r0, 0 - bl SetVBlankCallback - movs r0, 0x4C - movs r1, 0 - bl SetGpuReg - ldr r0, =gBattleScripting - adds r2, r0, 0 - adds r2, 0x21 - movs r1, 0 - strb r1, [r2] - adds r0, 0x22 - strb r1, [r0] - ldr r0, =c2_80777E8 - bl SetMainCallback2 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A92F8 - - thumb_func_start c2_80777E8 -c2_80777E8: @ 80A933C - push {r4-r7,lr} - sub sp, 0x8 - ldr r0, =gBattleScripting - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0x13 - bls _080A934C - b _080A95A4 -_080A934C: - lsls r0, 2 - ldr r1, =_080A9360 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080A9360: - .4byte _080A93B0 - .4byte _080A942C - .4byte _080A9444 - .4byte _080A944A - .4byte _080A9450 - .4byte _080A9460 - .4byte _080A9466 - .4byte _080A948E - .4byte _080A9492 - .4byte _080A9496 - .4byte _080A949A - .4byte _080A94B8 - .4byte _080A94C0 - .4byte _080A94C8 - .4byte _080A94D0 - .4byte _080A94D8 - .4byte _080A94E0 - .4byte _080A94E8 - .4byte _080A94F0 - .4byte _080A94F8 -_080A93B0: - bl dp12_8087EA4 - bl trs_config - movs r0, 0x1 - movs r1, 0x1 - movs r2, 0 - bl SetBgAttribute - movs r0, 0x2 - movs r1, 0x1 - movs r2, 0 - bl SetBgAttribute - movs r0, 0 - bl ShowBg - movs r0, 0x1 - bl ShowBg - movs r0, 0x2 - bl ShowBg - movs r0, 0x3 - bl ShowBg - bl ResetPaletteFade - ldr r0, =gUnknown_02022E14 - movs r1, 0 - strh r1, [r0] - ldr r0, =gUnknown_02022E16 - strh r1, [r0] - ldr r0, =gUnknown_02022E18 - strh r1, [r0] - ldr r0, =gUnknown_02022E1A - strh r1, [r0] - ldr r0, =gUnknown_02022E1C - strh r1, [r0] - ldr r0, =gUnknown_02022E1E - strh r1, [r0] - ldr r0, =gUnknown_02022E20 - strh r1, [r0] - ldr r0, =gUnknown_02022E22 - strh r1, [r0] - b _080A95D2 - .pool -_080A942C: - movs r0, 0 - str r0, [sp, 0x4] - movs r1, 0xC0 - lsls r1, 19 - ldr r2, =0x01006000 - add r0, sp, 0x4 - bl CpuFastSet - b _080A95D2 - .pool -_080A9444: - bl sub_8035AA4 - b _080A95D2 -_080A944A: - bl ResetSpriteData - b _080A95D2 -_080A9450: - bl FreeAllSpritePalettes - ldr r1, =gReservedSpritePaletteCount - movs r0, 0x4 - strb r0, [r1] - b _080A95D2 - .pool -_080A9460: - bl sub_805E350 - b _080A95D2 -_080A9466: - ldr r5, =gBattleScripting - adds r4, r5, 0 - adds r4, 0x22 - ldrb r0, [r4] - bl sub_805E08C - lsls r0, 24 - cmp r0, 0 - beq _080A9484 - movs r0, 0 - strb r0, [r4] - b _080A95D2 - .pool -_080A9484: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - adds r1, r5, 0 - b _080A94AA -_080A948E: - movs r0, 0 - b _080A949C -_080A9492: - movs r0, 0x1 - b _080A949C -_080A9496: - movs r0, 0x2 - b _080A949C -_080A949A: - movs r0, 0x3 -_080A949C: - bl sub_80A9614 - lsls r0, 24 - cmp r0, 0 - beq _080A94A8 - b _080A95D2 -_080A94A8: - ldr r1, =gBattleScripting -_080A94AA: - adds r1, 0x21 - ldrb r0, [r1] - subs r0, 0x1 - strb r0, [r1] - b _080A95D2 - .pool -_080A94B8: - movs r0, 0 - bl sub_80A9708 - b _080A95D2 -_080A94C0: - movs r0, 0x1 - bl sub_80A9708 - b _080A95D2 -_080A94C8: - movs r0, 0x2 - bl sub_80A9708 - b _080A95D2 -_080A94D0: - movs r0, 0x3 - bl sub_80A9708 - b _080A95D2 -_080A94D8: - movs r0, 0 - bl sub_80A9ADC - b _080A95D2 -_080A94E0: - movs r0, 0x1 - bl sub_80A9ADC - b _080A95D2 -_080A94E8: - movs r0, 0x2 - bl sub_80A9ADC - b _080A95D2 -_080A94F0: - movs r0, 0x3 - bl sub_80A9ADC - b _080A95D2 -_080A94F8: - bl sub_805EC84 - movs r0, 0x1 - bl GetBankByPlayerAI - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r7, =gBattlePartyID - lsls r0, r4, 1 - adds r0, r7 - ldrh r0, [r0] - movs r6, 0x64 - muls r0, r6 - ldr r5, =gEnemyParty - adds r0, r5 - movs r1, 0xB - bl GetMonData - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl sub_805EE54 - bl battle_type_is_double - lsls r0, 24 - cmp r0, 0 - beq _080A955C - movs r0, 0x3 - bl GetBankByPlayerAI - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r0, r4, 1 - adds r0, r7 - ldrh r0, [r0] - muls r0, r6 - adds r0, r5 - movs r1, 0xB - bl GetMonData - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl sub_805EE54 -_080A955C: - ldr r1, =gUnknown_020244AC - ldr r0, =gBankInMenu - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - movs r1, 0 - bl sub_8059CB4 - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - beq _080A95D2 - ldr r0, =gUnknown_03003124 - ldrb r0, [r0] - cmp r0, 0 - beq _080A95D2 - bl sub_800E0E8 - movs r0, 0 - movs r1, 0 - bl sub_800DFB4 - b _080A95D2 - .pool -_080A95A4: - ldr r0, =vblank_cb_08078BB4 - bl SetVBlankCallback - bl sub_80A95F4 - movs r0, 0x1 - str r0, [sp] - movs r0, 0xFF - movs r1, 0 - movs r2, 0x10 - movs r3, 0 - bl BeginHardwarePaletteFade - ldr r2, =gPaletteFade - ldrb r1, [r2, 0x8] - movs r0, 0x7F - ands r0, r1 - strb r0, [r2, 0x8] - ldr r0, =sub_8038420 - bl SetMainCallback2 - bl sub_805EF14 -_080A95D2: - ldr r1, =gBattleScripting - adds r1, 0x21 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end c2_80777E8 - - thumb_func_start sub_80A95F4 -sub_80A95F4: @ 80A95F4 - ldr r3, =0x0400000a - ldrb r2, [r3] - movs r1, 0xD - negs r1, r1 - adds r0, r1, 0 - ands r0, r2 - strb r0, [r3] - ldr r2, =0x0400000c - ldrb r0, [r2] - ands r1, r0 - strb r1, [r2] - bx lr - .pool - thumb_func_end sub_80A95F4 - - thumb_func_start sub_80A9614 -sub_80A9614: @ 80A9614 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r4, r0 - bcs _080A96FC - adds r0, r4, 0 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080A9676 - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r1, [r0] - lsls r0, r4, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _080A966C - ldr r1, =gBattlePartyID - lsls r0, r4, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - adds r1, r4, 0 - bl sub_805DC0C - b _080A96F4 - .pool -_080A966C: - adds r0, r4, 0 - movs r1, 0 - bl sub_805E7DC - b _080A96F4 -_080A9676: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r2, 0x80 - ands r1, r2 - cmp r1, 0 - beq _080A9698 - cmp r4, 0 - bne _080A9698 - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x8] - b _080A96AA - .pool -_080A9698: - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 2 - ands r0, r1 - cmp r0, 0 - beq _080A96B2 - cmp r4, 0 - bne _080A96B2 - movs r0, 0x6 -_080A96AA: - movs r1, 0 - bl sub_805DF84 - b _080A96F4 -_080A96B2: - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r1, [r0] - lsls r0, r4, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _080A96EC - 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 sub_805DD7C - b _080A96F4 - .pool -_080A96EC: - adds r0, r4, 0 - movs r1, 0 - bl sub_805E7DC -_080A96F4: - ldr r0, =gBattleScripting - adds r0, 0x22 - movs r1, 0 - strb r1, [r0] -_080A96FC: - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_80A9614 - - thumb_func_start sub_80A9708 -sub_80A9708: @ 80A9708 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r7, r0 - bcc _080A9722 - b _080A9AA0 -_080A9722: - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r0, [r0] - lsls r2, r7, 2 - adds r0, r2, r0 - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - str r2, [sp] - cmp r0, 0 - beq _080A9748 - adds r0, r7, 0 - bl sub_80A614C - b _080A974E - .pool -_080A9748: - adds r0, r7, 0 - bl sub_80A6138 -_080A974E: - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - adds r0, r7, 0 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080A9762 - b _080A986C -_080A9762: - ldr r1, =gBattlePartyID - lsls r0, r7, 1 - adds r6, r0, r1 - ldrh r0, [r6] - movs r1, 0x64 - mov r10, r1 - mov r2, r10 - muls r2, r0 - adds r0, r2, 0 - ldr r1, =gEnemyParty - mov r9, r1 - add r0, r9 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - bne _080A9786 - b _080A9AA0 -_080A9786: - ldrh r0, [r6] - mov r2, r10 - muls r2, r0 - adds r0, r2, 0 - add r0, r9 - movs r1, 0xB - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r7, 0 - bl GetBankIdentity - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_806A068 - ldr r5, =gUnknown_0202499C - adds r0, r7, 0 - movs r1, 0x2 - bl sub_80A5C6C - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r7, 0 - bl sub_80A82E4 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r5, 0 - adds r1, r4, 0 - mov r2, r8 - bl CreateSprite - ldr r1, =gBankSpriteIds - adds r4, r7, r1 - strb r0, [r4] - ldr r5, =gSprites - ldrb r0, [r4] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - lsls r3, r7, 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 r1, r5, 0 - adds r1, 0x1C - adds r0, r1 - ldr r1, =SpriteCallbackDummy - str r1, [r0] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - strh r7, [r0, 0x2E] - ldrh r0, [r6] - mov r1, r10 - muls r1, r0 - adds r0, r1, 0 - add r0, r9 - movs r1, 0xB - bl GetMonData - ldrb r2, [r4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r5 - strh r0, [r1, 0x32] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r1, =gBattleMonForms - adds r1, r7, r1 - ldrb r1, [r1] - bl StartSpriteAnim - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r0, [r0] - ldr r2, [sp] - adds r0, r2, r0 - b _080A9A50 - .pool -_080A986C: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r2, 0x80 - ands r1, r2 - cmp r1, 0 - beq _080A98D0 - cmp r7, 0 - bne _080A98D0 - ldr r5, =gSaveBlock2Ptr - ldr r0, [r5] - ldrb r4, [r0, 0x8] - movs r0, 0 - bl GetBankIdentity - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_806A12C - ldr r6, =gUnknown_0202499C - ldr r1, =gUnknown_08305D2C - ldr r0, [r5] - ldrb r0, [r0, 0x8] - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0] - movs r4, 0x8 - subs r4, r0 - lsls r4, 18 - movs r0, 0xA0 - lsls r0, 15 - adds r4, r0 - asrs r4, 16 - movs r0, 0 - bl sub_80A82E4 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r6, 0 - b _080A9914 - .pool -_080A98D0: - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 2 - ands r0, r1 - cmp r0, 0 - beq _080A9968 - cmp r7, 0 - bne _080A9968 - movs r0, 0 - bl GetBankIdentity - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0x6 - bl sub_806A12C - ldr r5, =gUnknown_0202499C - ldr r0, =gUnknown_08305D2C - ldrb r0, [r0, 0x18] - movs r4, 0x8 - subs r4, r0 - lsls r4, 18 - movs r1, 0xA0 - lsls r1, 15 - adds r4, r1 - asrs r4, 16 - movs r0, 0 - bl sub_80A82E4 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r5, 0 -_080A9914: - movs r1, 0x50 - adds r2, r4, 0 - bl CreateSprite - ldr r3, =gBankSpriteIds - strb r0, [r3] - ldr r4, =gSprites - ldrb r0, [r3] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldrb r2, [r1, 0x5] - movs r0, 0xF - ands r0, r2 - strb r0, [r1, 0x5] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r4, 0 - adds r1, 0x1C - adds r0, r1 - ldr r1, =SpriteCallbackDummy - str r1, [r0] - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - strh r7, [r0, 0x2E] - b _080A9A70 - .pool -_080A9968: - ldr r1, =gBattlePartyID - lsls r0, r7, 1 - adds r6, r0, r1 - ldrh r0, [r6] - movs r2, 0x64 - mov r10, r2 - mov r1, r10 - muls r1, r0 - adds r0, r1, 0 - ldr r2, =gPlayerParty - mov r9, r2 - add r0, r9 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - bne _080A998C - b _080A9AA0 -_080A998C: - ldrh r0, [r6] - mov r1, r10 - muls r1, r0 - adds r0, r1, 0 - add r0, r9 - movs r1, 0xB - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r7, 0 - bl GetBankIdentity - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_806A068 - ldr r5, =gUnknown_0202499C - adds r0, r7, 0 - movs r1, 0x2 - bl sub_80A5C6C - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r7, 0 - bl sub_80A82E4 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r5, 0 - adds r1, r4, 0 - mov r2, r8 - bl CreateSprite - ldr r1, =gBankSpriteIds - adds r4, r7, r1 - strb r0, [r4] - ldr r5, =gSprites - ldrb r0, [r4] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - lsls r3, r7, 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 r1, r5, 0 - adds r1, 0x1C - adds r0, r1 - ldr r1, =SpriteCallbackDummy - str r1, [r0] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - strh r7, [r0, 0x2E] - ldrh r0, [r6] - mov r2, r10 - muls r2, r0 - adds r0, r2, 0 - add r0, r9 - movs r1, 0xB - bl GetMonData - ldrb r2, [r4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r5 - strh r0, [r1, 0x32] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r1, =gBattleMonForms - adds r1, r7, r1 - ldrb r1, [r1] - bl StartSpriteAnim - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r0, [r0] - ldr r1, [sp] - adds r0, r1, r0 -_080A9A50: - ldrh r1, [r0, 0x2] - ldr r0, =0x00000181 - cmp r1, r0 - bne _080A9A70 - ldrb r0, [r4] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r0, r5, 0 - adds r0, 0x8 - adds r1, r0 - ldr r0, =gUnknown_08309AAC - ldr r2, =0x00000604 - adds r0, r2 - ldr r0, [r0] - str r0, [r1] -_080A9A70: - ldr r1, =gSprites - ldr r0, =gBankSpriteIds - adds r0, r7, r0 - ldrb r0, [r0] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r1 - ldr r0, =gUnknown_020244D0 - ldr r0, [r0] - ldr r0, [r0] - ldr r1, [sp] - adds r0, r1, r0 - ldr r1, [r0] - lsls r1, 31 - adds r2, 0x3E - lsrs r1, 31 - lsls r1, 2 - ldrb r3, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2] -_080A9AA0: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A9708 - - thumb_func_start sub_80A9ADC -sub_80A9ADC: @ 80A9ADC - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r5, r0 - bcc _080A9AEC - b _080A9C5E -_080A9AEC: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r2, 0x80 - ands r1, r2 - cmp r1, 0 - beq _080A9B0C - cmp r5, 0 - bne _080A9B0C - bl battle_make_oam_safari_battle - b _080A9B24 - .pool -_080A9B0C: - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 2 - ands r0, r1 - cmp r0, 0 - beq _080A9B1E - cmp r5, 0 - bne _080A9B1E - b _080A9C5E -_080A9B1E: - adds r0, r5, 0 - bl battle_make_oam_normal_battle -_080A9B24: - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, =gHealthBoxesIds - adds r4, r5, r0 - strb r6, [r4] - adds r0, r5, 0 - bl sub_8072B18 - adds r0, r6, 0 - bl sub_80729D0 - adds r0, r5, 0 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080A9B6C - ldrb r0, [r4] - ldr r1, =gBattlePartyID - lsls r4, r5, 1 - adds r1, r4, r1 - ldrh r2, [r1] - movs r1, 0x64 - muls r1, r2 - ldr r2, =gEnemyParty - adds r1, r2 - movs r2, 0 - bl healthbar_draw_field_maybe - b _080A9BB8 - .pool -_080A9B6C: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080A9BA0 - ldrb r0, [r4] - ldr r1, =gBattlePartyID - lsls r4, r5, 1 - adds r1, r4, r1 - ldrh r2, [r1] - movs r1, 0x64 - muls r1, r2 - ldr r2, =gPlayerParty - adds r1, r2 - movs r2, 0xA - bl healthbar_draw_field_maybe - b _080A9BB8 - .pool -_080A9BA0: - ldrb r0, [r4] - ldr r1, =gBattlePartyID - lsls r4, r5, 1 - adds r1, r4, r1 - ldrh r2, [r1] - movs r1, 0x64 - muls r1, r2 - ldr r2, =gPlayerParty - adds r1, r2 - movs r2, 0 - bl healthbar_draw_field_maybe -_080A9BB8: - adds r0, r5, 0 - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - beq _080A9BD4 - adds r0, r5, 0 - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _080A9BF0 -_080A9BD4: - ldr r0, =gHealthBoxesIds - adds r0, r5, r0 - ldrb r0, [r0] - movs r1, 0x1 - bl nullsub_30 - b _080A9BFC - .pool -_080A9BF0: - ldr r0, =gHealthBoxesIds - adds r0, r5, r0 - ldrb r0, [r0] - movs r1, 0 - bl nullsub_30 -_080A9BFC: - adds r0, r5, 0 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080A9C34 - ldr r0, =gBattlePartyID - adds r0, r4, r0 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - bne _080A9C5E - adds r0, r6, 0 - bl sub_8072984 - b _080A9C5E - .pool -_080A9C34: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080A9C5E - ldr r0, =gBattlePartyID - adds r0, r4, r0 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - bne _080A9C5E - adds r0, r6, 0 - bl sub_8072984 -_080A9C5E: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A9ADC - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/roamer.s b/asm/roamer.s deleted file mode 100644 index f6b48f10f..000000000 --- a/asm/roamer.s +++ /dev/null @@ -1,502 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - - thumb_func_start ClearRoamerData -ClearRoamerData: @ 8161B34 - push {r4,r5,lr} - ldr r5, =gSaveBlock1Ptr - ldr r0, [r5] - ldr r4, =0x000031dc - adds r0, r4 - movs r1, 0 - movs r2, 0x1C - bl memset - ldr r0, [r5] - adds r0, r4 - ldr r1, =0x00000197 - strh r1, [r0, 0x8] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end ClearRoamerData - - thumb_func_start ClearRoamerLocationData -ClearRoamerLocationData: @ 8161B60 - push {r4-r6,lr} - movs r2, 0 - ldr r6, =sRoamerLocation - ldr r4, =sLocationHistory - movs r3, 0 - adds r5, r4, 0x1 -_08161B6C: - lsls r1, r2, 1 - adds r0, r1, r4 - strb r3, [r0] - adds r1, r5 - strb r3, [r1] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x2 - bls _08161B6C - movs r0, 0 - strb r0, [r6] - strb r0, [r6, 0x1] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end ClearRoamerLocationData - - thumb_func_start CreateInitialRoamerMon -CreateInitialRoamerMon: @ 8161B94 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - lsls r0, 16 - cmp r0, 0 - bne _08161BBC - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - ldr r2, =0x000031dc - adds r1, r2 - ldr r2, =0x00000197 - b _08161BC8 - .pool -_08161BBC: - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - ldr r2, =0x000031dc - adds r1, r2 - movs r2, 0xCC - lsls r2, 1 -_08161BC8: - strh r2, [r1, 0x8] - adds r7, r0, 0 - ldr r6, =gEnemyParty - ldr r0, [r7] - ldr r5, =0x000031dc - adds r0, r5 - ldrh r1, [r0, 0x8] - movs r4, 0 - str r4, [sp] - str r4, [sp, 0x4] - str r4, [sp, 0x8] - str r4, [sp, 0xC] - adds r0, r6, 0 - movs r2, 0x28 - movs r3, 0x20 - bl CreateMon - ldr r0, [r7] - adds r0, r5 - movs r1, 0x28 - strb r1, [r0, 0xC] - ldr r0, [r7] - adds r0, r5 - strb r4, [r0, 0xD] - ldr r0, [r7] - adds r0, r5 - movs r1, 0x1 - strb r1, [r0, 0x13] - adds r0, r6, 0 - movs r1, 0x42 - bl GetMonData - ldr r1, [r7] - adds r1, r5 - str r0, [r1] - adds r0, r6, 0 - movs r1, 0 - bl GetMonData - ldr r1, [r7] - adds r1, r5 - str r0, [r1, 0x4] - adds r0, r6, 0 - movs r1, 0x3A - bl GetMonData - ldr r1, [r7] - adds r1, r5 - movs r2, 0 - mov r8, r2 - strh r0, [r1, 0xA] - adds r0, r6, 0 - movs r1, 0x16 - bl GetMonData - ldr r1, [r7] - adds r1, r5 - strb r0, [r1, 0xE] - adds r0, r6, 0 - movs r1, 0x17 - bl GetMonData - ldr r1, [r7] - adds r1, r5 - strb r0, [r1, 0xF] - adds r0, r6, 0 - movs r1, 0x18 - bl GetMonData - ldr r1, [r7] - adds r1, r5 - strb r0, [r1, 0x10] - adds r0, r6, 0 - movs r1, 0x21 - bl GetMonData - ldr r1, [r7] - adds r1, r5 - strb r0, [r1, 0x11] - adds r0, r6, 0 - movs r1, 0x2F - bl GetMonData - ldr r1, [r7] - adds r1, r5 - strb r0, [r1, 0x12] - ldr r4, =sRoamerLocation - mov r0, r8 - strb r0, [r4] - bl Random - ldr r5, =sRoamerLocations - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x14 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 1 - adds r1, r5 - ldrb r0, [r1] - strb r0, [r4, 0x1] - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end CreateInitialRoamerMon - - thumb_func_start InitRoamer -InitRoamer: @ 8161CBC - push {lr} - bl ClearRoamerData - bl ClearRoamerLocationData - ldr r0, =gSpecialVar_0x8004 - ldrh r0, [r0] - bl CreateInitialRoamerMon - pop {r0} - bx r0 - .pool - thumb_func_end InitRoamer - - thumb_func_start UpdateLocationHistoryForRoamer -UpdateLocationHistoryForRoamer: @ 8161CD8 - ldr r0, =sLocationHistory - ldrb r1, [r0, 0x2] - strb r1, [r0, 0x4] - ldrb r1, [r0, 0x3] - strb r1, [r0, 0x5] - ldrb r1, [r0] - strb r1, [r0, 0x2] - ldrb r1, [r0, 0x1] - strb r1, [r0, 0x3] - ldr r1, =gSaveBlock1Ptr - ldr r2, [r1] - ldrb r1, [r2, 0x4] - strb r1, [r0] - ldrb r1, [r2, 0x5] - strb r1, [r0, 0x1] - bx lr - .pool - thumb_func_end UpdateLocationHistoryForRoamer - - thumb_func_start RoamerMoveToOtherLocationSet -RoamerMoveToOtherLocationSet: @ 8161D00 - push {r4,r5,lr} - movs r1, 0 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r2, =0x000031dc - adds r0, r2 - ldrb r0, [r0, 0x13] - cmp r0, 0 - beq _08161D3E - ldr r0, =sRoamerLocation - strb r1, [r0] - ldr r5, =sRoamerLocations - adds r4, r0, 0 -_08161D1A: - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x14 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 1 - adds r1, r5 - ldrb r1, [r1] - ldrb r0, [r4, 0x1] - cmp r0, r1 - beq _08161D1A - strb r1, [r4, 0x1] -_08161D3E: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end RoamerMoveToOtherLocationSet - - thumb_func_start RoamerMove -RoamerMove: @ 8161D54 - push {r4-r7,lr} - movs r4, 0 - bl Random - lsls r0, 16 - movs r1, 0xF0 - lsls r1, 12 - ands r1, r0 - cmp r1, 0 - bne _08161D6E - bl RoamerMoveToOtherLocationSet - b _08161DE2 -_08161D6E: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x000031dc - adds r0, r1 - ldrb r0, [r0, 0x13] - cmp r0, 0 - beq _08161DE2 - ldr r7, =sRoamerLocation - ldr r3, =sRoamerLocations -_08161D80: - lsls r0, r4, 1 - adds r0, r4 - lsls r2, r0, 1 - adds r1, r2, r3 - ldrb r0, [r7, 0x1] - ldrb r1, [r1] - cmp r0, r1 - bne _08161DD8 - ldr r6, =sRoamerLocations - adds r5, r2, 0x1 - ldr r4, =sLocationHistory -_08161D96: - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x5 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - adds r0, r5 - adds r0, r6 - ldrb r1, [r0] - ldrb r0, [r4, 0x4] - cmp r0, 0 - bne _08161DBA - ldrb r0, [r4, 0x5] - cmp r0, r1 - beq _08161D96 -_08161DBA: - cmp r1, 0xFF - beq _08161D96 - strb r1, [r7, 0x1] - b _08161DE2 - .pool -_08161DD8: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x13 - bls _08161D80 -_08161DE2: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end RoamerMove - - thumb_func_start IsRoamerAt -IsRoamerAt: @ 8161DE8 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 24 - lsrs r1, 24 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r3, =0x000031dc - adds r0, r3 - ldrb r0, [r0, 0x13] - cmp r0, 0 - beq _08161E20 - ldr r0, =sRoamerLocation - ldrb r3, [r0] - cmp r2, r3 - bne _08161E20 - ldrb r0, [r0, 0x1] - cmp r1, r0 - bne _08161E20 - movs r0, 0x1 - b _08161E22 - .pool -_08161E20: - movs r0, 0 -_08161E22: - pop {r1} - bx r1 - thumb_func_end IsRoamerAt - - thumb_func_start CreateRoamerMonInstance -CreateRoamerMonInstance: @ 8161E28 - push {r4,r5,lr} - sub sp, 0x4 - ldr r5, =gEnemyParty - bl ZeroEnemyPartyMons - ldr r4, =gSaveBlock1Ptr - ldr r0, [r4] - ldr r1, =0x000031dc - adds r0, r1 - ldrh r1, [r0, 0x8] - ldrb r2, [r0, 0xC] - ldr r3, [r0] - ldr r0, [r0, 0x4] - str r0, [sp] - adds r0, r5, 0 - bl CreateMonWithIVsPersonality - ldr r2, [r4] - ldr r0, =0x000031e9 - adds r2, r0 - adds r0, r5, 0 - movs r1, 0x37 - bl SetMonData - ldr r2, [r4] - ldr r1, =0x000031e6 - adds r2, r1 - adds r0, r5, 0 - movs r1, 0x39 - bl SetMonData - ldr r2, [r4] - ldr r0, =0x000031ea - adds r2, r0 - adds r0, r5, 0 - movs r1, 0x16 - bl SetMonData - ldr r2, [r4] - ldr r1, =0x000031eb - adds r2, r1 - adds r0, r5, 0 - movs r1, 0x17 - bl SetMonData - ldr r2, [r4] - ldr r0, =0x000031ec - adds r2, r0 - adds r0, r5, 0 - movs r1, 0x18 - bl SetMonData - ldr r2, [r4] - ldr r1, =0x000031ed - adds r2, r1 - adds r0, r5, 0 - movs r1, 0x21 - bl SetMonData - ldr r2, [r4] - ldr r0, =0x000031ee - adds r2, r0 - adds r0, r5, 0 - movs r1, 0x2F - bl SetMonData - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end CreateRoamerMonInstance - - thumb_func_start TryStartRoamerEncounter -TryStartRoamerEncounter: @ 8161EDC - push {lr} - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - ldrb r0, [r1, 0x4] - ldrb r1, [r1, 0x5] - bl IsRoamerAt - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08161F10 - bl Random - lsls r0, 16 - movs r1, 0xC0 - lsls r1, 10 - ands r1, r0 - cmp r1, 0 - bne _08161F10 - bl CreateRoamerMonInstance - movs r0, 0x1 - b _08161F12 - .pool -_08161F10: - movs r0, 0 -_08161F12: - pop {r1} - bx r1 - thumb_func_end TryStartRoamerEncounter - - thumb_func_start UpdateRoamerHPStatus -UpdateRoamerHPStatus: @ 8161F18 - push {r4-r6,lr} - adds r6, r0, 0 - movs r1, 0x39 - bl GetMonData - ldr r5, =gSaveBlock1Ptr - ldr r1, [r5] - ldr r4, =0x000031dc - adds r1, r4 - strh r0, [r1, 0xA] - adds r0, r6, 0 - movs r1, 0x37 - bl GetMonData - ldr r1, [r5] - adds r1, r4 - strb r0, [r1, 0xD] - bl RoamerMoveToOtherLocationSet - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end UpdateRoamerHPStatus - - thumb_func_start SetRoamerInactive -SetRoamerInactive: @ 8161F4C - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x000031dc - adds r0, r1 - movs r1, 0 - strb r1, [r0, 0x13] - bx lr - .pool - thumb_func_end SetRoamerInactive - - thumb_func_start GetRoamerLocation -GetRoamerLocation: @ 8161F64 - ldr r3, =sRoamerLocation - ldrb r2, [r3] - strb r2, [r0] - ldrb r0, [r3, 0x1] - strb r0, [r1] - bx lr - .pool - thumb_func_end GetRoamerLocation - - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/rom3.s b/asm/rom3.s deleted file mode 100644 index c3a730836..000000000 --- a/asm/rom3.s +++ /dev/null @@ -1,3775 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start battle_wireless_setup_if_required_maybe -battle_wireless_setup_if_required_maybe: @ 8032654 - push {lr} - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08032686 - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - beq _0803266E - bl sub_800B488 -_0803266E: - ldr r0, =gUnknown_03003124 - ldrb r0, [r0] - cmp r0, 0 - bne _0803267A - bl sub_8009734 -_0803267A: - ldr r0, =task00_08081A90 - movs r1, 0 - bl CreateTask - bl sub_8033244 -_08032686: - pop {r0} - bx r0 - .pool - thumb_func_end battle_wireless_setup_if_required_maybe - - thumb_func_start sub_803269C -sub_803269C: @ 803269C - push {r4-r7,lr} - sub sp, 0x14 - ldr r0, =gBattleMainFunc - ldr r1, =nullsub_20 - str r1, [r0] - movs r0, 0 - str r0, [sp, 0x10] - movs r1, 0 - ldr r7, =gBattleBankFunc - ldr r6, =gUnknown_020244AC - movs r2, 0 - ldr r5, =gUnknown_020244B0 - ldr r4, =nullsub_21 - ldr r3, =gBanksBySide -_080326B8: - lsls r0, r1, 2 - adds r0, r7 - str r4, [r0] - adds r1, r3 - movs r0, 0xFF - strb r0, [r1] - ldr r0, [sp, 0x10] - adds r0, r6 - strb r2, [r0] - ldr r0, [sp, 0x10] - adds r0, r5 - strb r2, [r0] - ldr r0, [sp, 0x10] - adds r0, 0x1 - str r0, [sp, 0x10] - adds r1, r0, 0 - cmp r1, 0x3 - ble _080326B8 - bl battle_wireless_setup_if_required_maybe - ldr r0, =gBattleExecBuffer - movs r5, 0 - str r5, [r0] - bl sub_80A3934 - bl ClearBattleMonForms - movs r0, 0xF - bl BattleAI_HandleItemUseBeforeAISetup - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08032728 - bl ZeroEnemyPartyMons - ldr r4, =gEnemyParty - movs r1, 0x90 - lsls r1, 1 - str r5, [sp] - str r5, [sp, 0x4] - str r5, [sp, 0x8] - str r5, [sp, 0xC] - adds r0, r4, 0 - movs r2, 0x2 - movs r3, 0x20 - bl CreateMon - str r5, [sp, 0x10] - adds r0, r4, 0 - movs r1, 0xC - add r2, sp, 0x10 - bl SetMonData -_08032728: - ldr r0, =gUnknown_02022FF4 - str r5, [r0] - ldr r0, =gUnknown_0202428C - strb r5, [r0] - add sp, 0x14 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803269C - - thumb_func_start sub_8032768 -sub_8032768: @ 8032768 - push {r4,r5,lr} - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 17 - ands r0, r1 - cmp r0, 0 - bne _08032784 - movs r0, 0x1 - bl sub_8184DA4 - b _0803278A - .pool -_08032784: - movs r0, 0x2 - bl sub_8184DA4 -_0803278A: - ldr r4, =gBattleTypeFlags - ldr r0, [r4] - movs r1, 0x80 - lsls r1, 17 - ands r0, r1 - cmp r0, 0 - bne _0803279C - bl sub_8185EB8 -_0803279C: - ldr r0, [r4] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080327B0 - bl b_setup_bx_link - b _080327B4 - .pool -_080327B0: - bl b_setup_bx -_080327B4: - bl sub_8033050 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - bne _080327E2 - movs r4, 0 - ldr r0, =gNoOfAllBanks - ldrb r1, [r0] - cmp r4, r1 - bge _080327E2 - adds r5, r0, 0 -_080327D0: - lsls r0, r4, 24 - lsrs r0, 24 - movs r1, 0 - bl sub_81B8D64 - adds r4, 0x1 - ldrb r0, [r5] - cmp r4, r0 - blt _080327D0 -_080327E2: - movs r4, 0 - ldr r3, =gBattleStruct - movs r2, 0xD2 - lsls r2, 1 - movs r1, 0 -_080327EC: - ldr r0, [r3] - adds r0, r4, r0 - adds r0, r2 - strb r1, [r0] - adds r4, 0x1 - cmp r4, 0x5F - bls _080327EC - movs r4, 0 - ldr r3, =gBattleStruct - movs r2, 0x81 - lsls r2, 2 - movs r1, 0 -_08032804: - ldr r0, [r3] - adds r0, r4, r0 - adds r0, r2 - strb r1, [r0] - adds r4, 0x1 - cmp r4, 0x67 - bls _08032804 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8032768 - - thumb_func_start b_setup_bx -b_setup_bx: @ 8032824 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, =gBattleTypeFlags - ldr r3, [r0] - movs r5, 0x80 - lsls r5, 15 - ands r5, r3 - cmp r5, 0 - beq _080328E4 - ldr r1, =gBattleMainFunc - ldr r0, =sub_8039ECC - str r0, [r1] - movs r4, 0x80 - lsls r4, 17 - ands r4, r3 - cmp r4, 0 - beq _08032874 - ldr r2, =gBattleBankFunc - ldr r0, =SetBankFuncToRecordedPlayerBufferRunCommand - str r0, [r2] - ldr r1, =gBanksBySide - movs r0, 0 - strb r0, [r1] - b _0803287E - .pool -_08032874: - ldr r2, =gBattleBankFunc - ldr r0, =SetBankFuncToPlayerBufferRunCommand - str r0, [r2] - ldr r1, =gBanksBySide - strb r4, [r1] -_0803287E: - ldr r3, =SetBankFuncToOpponentBufferRunCommand - str r3, [r2, 0x4] - movs r0, 0x1 - strb r0, [r1, 0x1] - ldr r0, =SetBankFuncToPlayerPartnerBufferRunCommand - str r0, [r2, 0x8] - movs r0, 0x2 - strb r0, [r1, 0x2] - str r3, [r2, 0xC] - movs r0, 0x3 - strb r0, [r1, 0x3] - ldr r1, =gNoOfAllBanks - movs r0, 0x4 - strb r0, [r1] - movs r0, 0 - movs r1, 0 - bl sub_81B8D64 - movs r0, 0x1 - movs r1, 0 - bl sub_81B8D64 - movs r0, 0x2 - movs r1, 0x1 - bl sub_81B8D64 - movs r0, 0x3 - movs r1, 0x1 - bl sub_81B8D64 - ldr r0, =gBattlePartyID - movs r1, 0 - strh r1, [r0] - strh r1, [r0, 0x2] - movs r1, 0x3 - b _08032A76 - .pool -_080328E4: - movs r7, 0x1 - adds r0, r3, 0 - ands r0, r7 - cmp r0, 0 - beq _080328F0 - b _080329E0 -_080328F0: - ldr r0, =gBattleMainFunc - ldr r2, =sub_8039ECC - str r2, [r0] - movs r1, 0x80 - ands r1, r3 - mov r12, r2 - cmp r1, 0 - beq _08032918 - ldr r1, =gBattleBankFunc - ldr r0, =SetBankFuncToSafariBufferRunCommand - b _08032934 - .pool -_08032918: - movs r0, 0x80 - lsls r0, 2 - ands r3, r0 - cmp r3, 0 - beq _08032930 - ldr r1, =gBattleBankFunc - ldr r0, =SetBankFuncToWallyBufferRunCommand - b _08032934 - .pool -_08032930: - ldr r1, =gBattleBankFunc - ldr r0, =SetBankFuncToPlayerBufferRunCommand -_08032934: - str r0, [r1] - mov r10, r1 - ldr r4, =gBanksBySide - movs r0, 0 - mov r9, r0 - mov r1, r9 - strb r1, [r4] - mov r5, r10 - ldr r2, =SetBankFuncToOpponentBufferRunCommand - mov r8, r2 - str r2, [r5, 0x4] - movs r6, 0x1 - strb r6, [r4, 0x1] - ldr r2, =gNoOfAllBanks - movs r7, 0x2 - strb r7, [r2] - ldr r0, =gBattleTypeFlags - ldr r3, [r0] - movs r0, 0x80 - lsls r0, 17 - ands r0, r3 - cmp r0, 0 - bne _08032964 - b _08032CB2 -_08032964: - movs r1, 0x80 - lsls r1, 18 - ands r1, r3 - cmp r1, 0 - beq _080329CC - movs r1, 0x80 - lsls r1, 24 - ands r1, r3 - cmp r1, 0 - beq _080329B4 - mov r1, r12 - ldr r0, =gBattleMainFunc - str r1, [r0] - ldr r0, =SetBankFuncToRecordedPlayerBufferRunCommand - str r0, [r5] - mov r1, r9 - strb r1, [r4] - ldr r0, =SetBankFuncToRecordedOpponentBufferRunCommand - str r0, [r5, 0x4] - strb r6, [r4, 0x1] - strb r7, [r2] - b _08032CB2 - .pool -_080329B4: - ldr r0, =SetBankFuncToRecordedPlayerBufferRunCommand - str r0, [r5, 0x4] - strb r1, [r4, 0x1] - ldr r0, =SetBankFuncToRecordedOpponentBufferRunCommand - str r0, [r5] - strb r6, [r4] - strb r7, [r2] - b _08032CB2 - .pool -_080329CC: - ldr r0, =SetBankFuncToRecordedPlayerBufferRunCommand - mov r2, r10 - str r0, [r2] - strb r1, [r4] - mov r0, r8 - str r0, [r2, 0x4] - strb r6, [r4, 0x1] - b _08032CB2 - .pool -_080329E0: - ldr r1, =sub_8039ECC - ldr r2, =gBattleMainFunc - str r1, [r2] - ldr r2, =gBattleBankFunc - ldr r0, =SetBankFuncToPlayerBufferRunCommand - str r0, [r2] - ldr r4, =gBanksBySide - strb r5, [r4] - ldr r6, =SetBankFuncToOpponentBufferRunCommand - str r6, [r2, 0x4] - strb r7, [r4, 0x1] - str r0, [r2, 0x8] - movs r0, 0x2 - mov r12, r0 - mov r1, r12 - strb r1, [r4, 0x2] - str r6, [r2, 0xC] - movs r0, 0x3 - mov r8, r0 - mov r1, r8 - strb r1, [r4, 0x3] - ldr r0, =gNoOfAllBanks - mov r10, r0 - movs r1, 0x4 - mov r9, r1 - strb r1, [r0] - movs r0, 0x80 - lsls r0, 17 - ands r0, r3 - cmp r0, 0 - bne _08032A20 - b _08032CB2 -_08032A20: - movs r1, 0xA0 - lsls r1, 1 - adds r0, r3, 0 - ands r0, r1 - cmp r0, r1 - bne _08032AA0 - ldr r0, =sub_8039ECC - ldr r1, =gBattleMainFunc - str r0, [r1] - ldr r0, =SetBankFuncToRecordedPlayerBufferRunCommand - str r0, [r2] - strb r5, [r4] - str r6, [r2, 0x4] - strb r7, [r4, 0x1] - str r0, [r2, 0x8] - mov r0, r12 - strb r0, [r4, 0x2] - str r6, [r2, 0xC] - mov r1, r8 - strb r1, [r4, 0x3] - mov r0, r9 - mov r2, r10 - strb r0, [r2] - movs r0, 0 - movs r1, 0 - bl sub_81B8D64 - movs r0, 0x1 - movs r1, 0 - bl sub_81B8D64 - movs r0, 0x2 - movs r1, 0x1 - bl sub_81B8D64 - movs r0, 0x3 - movs r1, 0x1 - bl sub_81B8D64 - ldr r0, =gBattlePartyID - strh r5, [r0] - strh r5, [r0, 0x2] - mov r1, r8 -_08032A76: - strh r1, [r0, 0x4] - strh r1, [r0, 0x6] - b _08032CB2 - .pool -_08032AA0: - movs r5, 0x40 - ands r5, r3 - cmp r5, 0 - bne _08032AAA - b _08032C3C -_08032AAA: - ldr r0, =gUnknown_0203C7B4 - ldrb r5, [r0] - movs r0, 0 - mov r10, r0 - ldr r1, =gLinkPlayers - mov r12, r1 - adds r7, r4, 0 - mov r8, r0 - ldr r6, =gBattlePartyID - movs r4, 0 - movs r2, 0x3 - mov r9, r2 -_08032AC2: - mov r1, r12 - adds r0, r4, r1 - ldrh r0, [r0, 0x18] - cmp r0, 0x2 - bgt _08032AE4 - cmp r0, 0x1 - bge _08032AFC - cmp r0, 0 - beq _08032AE8 - b _08032B06 - .pool -_08032AE4: - cmp r0, 0x3 - bne _08032B06 -_08032AE8: - ldr r0, =gLinkPlayers - adds r0, r4, r0 - ldrb r0, [r0, 0x18] - movs r1, 0 - bl sub_81B8D64 - b _08032B06 - .pool -_08032AFC: - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x1 - bl sub_81B8D64 -_08032B06: - cmp r10, r5 - bne _08032B56 - ldr r0, =gLinkPlayers - adds r3, r4, r0 - ldrh r1, [r3, 0x18] - lsls r1, 2 - ldr r2, =gBattleBankFunc - adds r1, r2 - ldr r2, =SetBankFuncToRecordedPlayerBufferRunCommand - str r2, [r1] - ldrh r1, [r3, 0x18] - mov r12, r0 - cmp r1, 0x2 - bgt _08032B38 - cmp r1, 0x1 - bge _08032B4C - cmp r1, 0 - beq _08032B3C - b _08032C2C - .pool -_08032B38: - cmp r1, 0x3 - bne _08032C2C -_08032B3C: - mov r1, r12 - adds r0, r4, r1 - ldrh r1, [r0, 0x18] - adds r1, r7 - mov r2, r8 - strb r2, [r1] - ldrh r0, [r0, 0x18] - b _08032C12 -_08032B4C: - adds r1, r7 - movs r0, 0x2 - strb r0, [r1] - ldrh r0, [r3, 0x18] - b _08032C24 -_08032B56: - ldr r2, =gLinkPlayers - adds r0, r4, r2 - ldrh r1, [r0, 0x18] - movs r3, 0x1 - adds r0, r3, 0 - ands r0, r1 - mov r12, r2 - cmp r0, 0 - bne _08032B80 - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - add r0, r12 - ldrh r1, [r0, 0x18] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08032B92 - b _08032BD8 - .pool -_08032B80: - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - add r0, r12 - ldrh r1, [r0, 0x18] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08032BD8 -_08032B92: - mov r0, r12 - adds r2, r4, r0 - ldrh r0, [r2, 0x18] - lsls r0, 2 - ldr r1, =gBattleBankFunc - adds r0, r1 - ldr r1, =SetBankFuncToRecordedPlayerBufferRunCommand - str r1, [r0] - ldrh r1, [r2, 0x18] - cmp r1, 0x2 - bgt _08032BBC - cmp r1, 0x1 - bge _08032BD0 - cmp r1, 0 - beq _08032BC0 - b _08032C2C - .pool -_08032BBC: - cmp r1, 0x3 - bne _08032C2C -_08032BC0: - mov r2, r12 - adds r0, r4, r2 - ldrh r1, [r0, 0x18] - adds r1, r7 - mov r2, r8 - strb r2, [r1] - ldrh r0, [r0, 0x18] - b _08032C12 -_08032BD0: - adds r1, r7 - movs r0, 0x2 - strb r0, [r1] - b _08032C22 -_08032BD8: - mov r0, r12 - adds r2, r4, r0 - ldrh r0, [r2, 0x18] - lsls r0, 2 - ldr r1, =gBattleBankFunc - adds r0, r1 - ldr r1, =SetBankFuncToRecordedOpponentBufferRunCommand - str r1, [r0] - ldrh r0, [r2, 0x18] - cmp r0, 0x2 - bgt _08032C00 - cmp r0, 0x1 - bge _08032C1C - cmp r0, 0 - beq _08032C04 - b _08032C2C - .pool -_08032C00: - cmp r0, 0x3 - bne _08032C2C -_08032C04: - mov r0, r12 - adds r2, r4, r0 - ldrh r0, [r2, 0x18] - adds r0, r7 - movs r1, 0x1 - strb r1, [r0] - ldrh r0, [r2, 0x18] -_08032C12: - lsls r0, 1 - adds r0, r6 - mov r1, r8 - strh r1, [r0] - b _08032C2C -_08032C1C: - adds r0, r7 - mov r1, r9 - strb r1, [r0] -_08032C22: - ldrh r0, [r2, 0x18] -_08032C24: - lsls r0, 1 - adds r0, r6 - mov r2, r9 - strh r2, [r0] -_08032C2C: - adds r4, 0x1C - movs r0, 0x1 - add r10, r0 - mov r1, r10 - cmp r1, 0x3 - bgt _08032C3A - b _08032AC2 -_08032C3A: - b _08032CB2 -_08032C3C: - movs r1, 0x4 - ands r1, r3 - cmp r1, 0 - beq _08032C7C - ldr r0, =SetBankFuncToRecordedPlayerBufferRunCommand - str r0, [r2] - strb r5, [r4] - str r0, [r2, 0x8] - mov r0, r12 - strb r0, [r4, 0x2] - movs r0, 0x80 - lsls r0, 18 - ands r3, r0 - cmp r3, 0 - beq _08032C70 - ldr r0, =SetBankFuncToRecordedOpponentBufferRunCommand - str r0, [r2, 0x4] - strb r7, [r4, 0x1] - str r0, [r2, 0xC] - mov r1, r8 - strb r1, [r4, 0x3] - b _08032CB2 - .pool -_08032C70: - str r6, [r2, 0x4] - strb r7, [r4, 0x1] - str r6, [r2, 0xC] - mov r2, r8 - strb r2, [r4, 0x3] - b _08032CB2 -_08032C7C: - ldr r0, =SetBankFuncToRecordedPlayerBufferRunCommand - str r0, [r2, 0x4] - strb r1, [r4, 0x1] - str r0, [r2, 0xC] - mov r0, r12 - strb r0, [r4, 0x3] - movs r0, 0x80 - lsls r0, 18 - ands r3, r0 - cmp r3, 0 - beq _08032CA8 - ldr r0, =SetBankFuncToRecordedOpponentBufferRunCommand - str r0, [r2] - strb r7, [r4] - str r0, [r2, 0x8] - mov r1, r8 - strb r1, [r4, 0x2] - b _08032CB2 - .pool -_08032CA8: - str r6, [r2] - strb r7, [r4] - str r6, [r2, 0x8] - mov r2, r8 - strb r2, [r4, 0x2] -_08032CB2: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end b_setup_bx - - thumb_func_start b_setup_bx_link -b_setup_bx_link: @ 8032CC0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r4, =gBattleTypeFlags - ldr r1, [r4] - movs r5, 0x1 - adds r3, r1, 0 - ands r3, r5 - cmp r3, 0 - bne _08032D48 - movs r4, 0x4 - ands r4, r1 - cmp r4, 0 - beq _08032D1C - ldr r1, =gBattleMainFunc - ldr r0, =sub_8039ECC - str r0, [r1] - ldr r2, =gBattleBankFunc - ldr r0, =SetBankFuncToPlayerBufferRunCommand - str r0, [r2] - ldr r1, =gBanksBySide - strb r3, [r1] - ldr r0, =SetBankFuncToLinkOpponentBufferRunCommand - str r0, [r2, 0x4] - strb r5, [r1, 0x1] - ldr r1, =gNoOfAllBanks - movs r0, 0x2 - b _0803303A - .pool -_08032D1C: - ldr r2, =gBattleBankFunc - ldr r0, =SetBankFuncToPlayerBufferRunCommand - str r0, [r2, 0x4] - ldr r1, =gBanksBySide - strb r4, [r1, 0x1] - ldr r0, =SetBankFuncToLinkOpponentBufferRunCommand - str r0, [r2] - strb r5, [r1] - ldr r1, =gNoOfAllBanks - movs r0, 0x2 - b _0803303A - .pool -_08032D48: - movs r0, 0x41 - ands r0, r1 - cmp r0, 0x1 - bne _08032DD0 - movs r6, 0x4 - adds r3, r6, 0 - ands r3, r1 - cmp r3, 0 - beq _08032D98 - ldr r1, =gBattleMainFunc - ldr r0, =sub_8039ECC - str r0, [r1] - ldr r2, =gBattleBankFunc - ldr r4, =SetBankFuncToPlayerBufferRunCommand - str r4, [r2] - ldr r1, =gBanksBySide - movs r0, 0 - strb r0, [r1] - ldr r3, =SetBankFuncToLinkOpponentBufferRunCommand - str r3, [r2, 0x4] - strb r5, [r1, 0x1] - str r4, [r2, 0x8] - movs r0, 0x2 - strb r0, [r1, 0x2] - str r3, [r2, 0xC] - movs r0, 0x3 - strb r0, [r1, 0x3] - b _08032DB4 - .pool -_08032D98: - ldr r2, =gBattleBankFunc - ldr r0, =SetBankFuncToPlayerBufferRunCommand - str r0, [r2, 0x4] - ldr r1, =gBanksBySide - strb r3, [r1, 0x1] - ldr r3, =SetBankFuncToLinkOpponentBufferRunCommand - str r3, [r2] - strb r5, [r1] - str r0, [r2, 0xC] - movs r0, 0x2 - strb r0, [r1, 0x3] - str r3, [r2, 0x8] - movs r0, 0x3 - strb r0, [r1, 0x2] -_08032DB4: - ldr r0, =gNoOfAllBanks - strb r6, [r0] - b _0803303C - .pool -_08032DD0: - movs r0, 0x80 - lsls r0, 1 - ands r0, r1 - cmp r0, 0 - beq _08032E8C - movs r4, 0x4 - adds r3, r4, 0 - ands r3, r1 - cmp r3, 0 - beq _08032E1C - ldr r1, =gBattleMainFunc - ldr r0, =sub_8039ECC - str r0, [r1] - ldr r2, =gBattleBankFunc - ldr r0, =SetBankFuncToPlayerBufferRunCommand - str r0, [r2] - ldr r1, =gBanksBySide - movs r0, 0 - strb r0, [r1] - ldr r3, =SetBankFuncToOpponentBufferRunCommand - str r3, [r2, 0x4] - strb r5, [r1, 0x1] - ldr r0, =SetBankFuncToLinkPartnerBufferRunCommand - b _08032E2E - .pool -_08032E1C: - ldr r2, =gBattleBankFunc - ldr r0, =SetBankFuncToLinkPartnerBufferRunCommand - str r0, [r2] - ldr r1, =gBanksBySide - strb r3, [r1] - ldr r3, =SetBankFuncToLinkOpponentBufferRunCommand - str r3, [r2, 0x4] - strb r5, [r1, 0x1] - ldr r0, =SetBankFuncToPlayerBufferRunCommand -_08032E2E: - str r0, [r2, 0x8] - movs r0, 0x2 - strb r0, [r1, 0x2] - str r3, [r2, 0xC] - movs r0, 0x3 - strb r0, [r1, 0x3] - ldr r0, =gNoOfAllBanks - strb r4, [r0] - movs r0, 0 - movs r1, 0 - bl sub_81B8D64 - movs r0, 0x1 - movs r1, 0 - bl sub_81B8D64 - movs r0, 0x2 - movs r1, 0x1 - bl sub_81B8D64 - movs r0, 0x3 - movs r1, 0x1 - bl sub_81B8D64 - ldr r0, =gBattlePartyID - movs r1, 0 - strh r1, [r0] - strh r1, [r0, 0x2] - movs r1, 0x3 - strh r1, [r0, 0x4] - strh r1, [r0, 0x6] - b _0803303C - .pool -_08032E8C: - bl GetMultiplayerId - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, [r4] - movs r1, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08032EA4 - ldr r1, =gBattleMainFunc - ldr r0, =sub_8039ECC - str r0, [r1] -_08032EA4: - movs r0, 0 - mov r10, r0 - ldr r1, =gLinkPlayers - mov r12, r1 - ldr r7, =gBanksBySide - mov r8, r0 - ldr r6, =gBattlePartyID - movs r4, 0 - movs r2, 0x3 - mov r9, r2 -_08032EB8: - mov r1, r12 - adds r0, r4, r1 - ldrh r0, [r0, 0x18] - cmp r0, 0x2 - bgt _08032EE0 - cmp r0, 0x1 - bge _08032EF8 - cmp r0, 0 - beq _08032EE4 - b _08032F02 - .pool -_08032EE0: - cmp r0, 0x3 - bne _08032F02 -_08032EE4: - ldr r0, =gLinkPlayers - adds r0, r4, r0 - ldrb r0, [r0, 0x18] - movs r1, 0 - bl sub_81B8D64 - b _08032F02 - .pool -_08032EF8: - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x1 - bl sub_81B8D64 -_08032F02: - cmp r10, r5 - bne _08032F52 - ldr r0, =gLinkPlayers - adds r3, r4, r0 - ldrh r1, [r3, 0x18] - lsls r1, 2 - ldr r2, =gBattleBankFunc - adds r1, r2 - ldr r2, =SetBankFuncToPlayerBufferRunCommand - str r2, [r1] - ldrh r1, [r3, 0x18] - mov r12, r0 - cmp r1, 0x2 - bgt _08032F34 - cmp r1, 0x1 - bge _08032F48 - cmp r1, 0 - beq _08032F38 - b _08033028 - .pool -_08032F34: - cmp r1, 0x3 - bne _08033028 -_08032F38: - mov r1, r12 - adds r0, r4, r1 - ldrh r1, [r0, 0x18] - adds r1, r7 - mov r2, r8 - strb r2, [r1] - ldrh r0, [r0, 0x18] - b _0803300E -_08032F48: - adds r1, r7 - movs r0, 0x2 - strb r0, [r1] - ldrh r0, [r3, 0x18] - b _08033020 -_08032F52: - ldr r2, =gLinkPlayers - adds r0, r4, r2 - ldrh r1, [r0, 0x18] - movs r3, 0x1 - adds r0, r3, 0 - ands r0, r1 - mov r12, r2 - cmp r0, 0 - bne _08032F7C - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - add r0, r12 - ldrh r1, [r0, 0x18] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08032F8E - b _08032FD4 - .pool -_08032F7C: - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - add r0, r12 - ldrh r1, [r0, 0x18] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08032FD4 -_08032F8E: - mov r0, r12 - adds r2, r4, r0 - ldrh r0, [r2, 0x18] - lsls r0, 2 - ldr r1, =gBattleBankFunc - adds r0, r1 - ldr r1, =SetBankFuncToLinkPartnerBufferRunCommand - str r1, [r0] - ldrh r1, [r2, 0x18] - cmp r1, 0x2 - bgt _08032FB8 - cmp r1, 0x1 - bge _08032FCC - cmp r1, 0 - beq _08032FBC - b _08033028 - .pool -_08032FB8: - cmp r1, 0x3 - bne _08033028 -_08032FBC: - mov r2, r12 - adds r0, r4, r2 - ldrh r1, [r0, 0x18] - adds r1, r7 - mov r2, r8 - strb r2, [r1] - ldrh r0, [r0, 0x18] - b _0803300E -_08032FCC: - adds r1, r7 - movs r0, 0x2 - strb r0, [r1] - b _0803301E -_08032FD4: - mov r0, r12 - adds r2, r4, r0 - ldrh r0, [r2, 0x18] - lsls r0, 2 - ldr r1, =gBattleBankFunc - adds r0, r1 - ldr r1, =SetBankFuncToLinkOpponentBufferRunCommand - str r1, [r0] - ldrh r0, [r2, 0x18] - cmp r0, 0x2 - bgt _08032FFC - cmp r0, 0x1 - bge _08033018 - cmp r0, 0 - beq _08033000 - b _08033028 - .pool -_08032FFC: - cmp r0, 0x3 - bne _08033028 -_08033000: - mov r0, r12 - adds r2, r4, r0 - ldrh r0, [r2, 0x18] - adds r0, r7 - movs r1, 0x1 - strb r1, [r0] - ldrh r0, [r2, 0x18] -_0803300E: - lsls r0, 1 - adds r0, r6 - mov r1, r8 - strh r1, [r0] - b _08033028 -_08033018: - adds r0, r7 - mov r1, r9 - strb r1, [r0] -_0803301E: - ldrh r0, [r2, 0x18] -_08033020: - lsls r0, 1 - adds r0, r6 - mov r2, r9 - strh r2, [r0] -_08033028: - adds r4, 0x1C - movs r0, 0x1 - add r10, r0 - mov r1, r10 - cmp r1, 0x3 - bgt _08033036 - b _08032EB8 -_08033036: - ldr r1, =gNoOfAllBanks - movs r0, 0x4 -_0803303A: - strb r0, [r1] -_0803303C: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end b_setup_bx_link - - thumb_func_start sub_8033050 -sub_8033050: @ 8033050 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08033068 - b _0803319C -_08033068: - movs r0, 0 - mov r8, r0 - b _0803317A - .pool -_08033074: - movs r5, 0 - movs r0, 0x1 - add r0, r8 - mov r10, r0 - ldr r0, =gBanksBySide - add r0, r8 - mov r9, r0 - mov r0, r8 - lsls r6, r0, 1 - movs r7, 0 -_08033088: - mov r0, r8 - cmp r0, 0x1 - bgt _080330F0 - mov r0, r9 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080330A8 - ldr r0, =gPlayerParty - b _080330AA - .pool -_080330A8: - ldr r0, =gEnemyParty -_080330AA: - adds r4, r7, r0 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _08033170 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - cmp r0, 0 - beq _08033170 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - beq _08033170 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _08033170 - ldr r0, =gBattlePartyID - adds r0, r6, r0 - strh r5, [r0] - b _08033178 - .pool -_080330F0: - mov r0, r9 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08033118 - ldr r0, =gPlayerParty - adds r4, r7, r0 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _08033170 - adds r0, r4, 0 - movs r1, 0xB - b _0803312C - .pool -_08033118: - ldr r0, =gEnemyParty - adds r4, r7, r0 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _08033170 - adds r0, r4, 0 - movs r1, 0x41 -_0803312C: - bl GetMonData - cmp r0, 0 - beq _08033170 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - beq _08033170 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _08033170 - ldr r1, =gBattlePartyID - mov r0, r8 - subs r0, 0x2 - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] - cmp r0, r5 - beq _08033170 - adds r0, r6, r1 - strh r5, [r0] - b _08033178 - .pool -_08033170: - adds r7, 0x64 - adds r5, 0x1 - cmp r5, 0x5 - ble _08033088 -_08033178: - mov r8, r10 -_0803317A: - ldr r0, =gNoOfAllBanks - ldrb r0, [r0] - cmp r8, r0 - bge _08033184 - b _08033074 -_08033184: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 8 - ands r0, r1 - cmp r0, 0 - beq _0803319C - ldr r0, =gBattlePartyID - movs r1, 0 - strh r1, [r0, 0x2] - movs r1, 0x3 - strh r1, [r0, 0x6] -_0803319C: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8033050 - - thumb_func_start dp01_prepare_buffer -dp01_prepare_buffer: @ 80331B8 - push {r4-r6,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r3, r0, 24 - adds r5, r3, 0 - lsls r2, 16 - lsrs r2, 16 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080331E4 - adds r0, r3, 0 - adds r1, r2, 0 - adds r2, r4, 0 - bl PrepareBufferDataTransferLink - b _08033236 - .pool -_080331E4: - cmp r5, 0 - beq _080331EE - cmp r5, 0x1 - beq _08033218 - b _08033236 -_080331EE: - movs r3, 0 - cmp r3, r2 - bge _08033236 - ldr r6, =gBattleBufferA - ldr r5, =gActiveBank -_080331F8: - ldrb r0, [r5] - lsls r0, 9 - adds r0, r3, r0 - adds r0, r6 - ldrb r1, [r4] - strb r1, [r0] - adds r4, 0x1 - adds r3, 0x1 - cmp r3, r2 - blt _080331F8 - b _08033236 - .pool -_08033218: - movs r3, 0 - cmp r3, r2 - bge _08033236 - ldr r6, =gBattleBufferB - ldr r5, =gActiveBank -_08033222: - ldrb r0, [r5] - lsls r0, 9 - adds r0, r3, r0 - adds r0, r6 - ldrb r1, [r4] - strb r1, [r0] - adds r4, 0x1 - adds r3, 0x1 - cmp r3, r2 - blt _08033222 -_08033236: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_prepare_buffer - - thumb_func_start sub_8033244 -sub_8033244: @ 8033244 - push {r4-r6,lr} - ldr r0, =task00_wireless_something - movs r1, 0 - bl CreateTask - ldr r2, =gUnknown_02022D08 - strb r0, [r2] - ldr r5, =gTasks - ldrb r1, [r2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - movs r6, 0 - movs r4, 0 - strh r4, [r0, 0x1E] - ldrb r1, [r2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - strh r4, [r0, 0x20] - ldrb r1, [r2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - strh r4, [r0, 0x22] - ldrb r1, [r2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - strh r4, [r0, 0x24] - ldrb r1, [r2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - strh r4, [r0, 0x26] - ldr r0, =sub_803375C - movs r1, 0 - bl CreateTask - ldr r2, =gUnknown_02022D09 - strb r0, [r2] - ldrb r1, [r2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - strh r4, [r0, 0x20] - ldrb r1, [r2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - strh r4, [r0, 0x22] - ldrb r1, [r2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - strh r4, [r0, 0x24] - ldrb r1, [r2] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - strh r4, [r0, 0x26] - ldr r0, =gUnknown_02022D0A - strb r6, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8033244 - - thumb_func_start PrepareBufferDataTransferLink -PrepareBufferDataTransferLink: @ 80332F4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r9, r2 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 16 - lsrs r1, 16 - mov r12, r1 - movs r1, 0x3 - mov r0, r12 - bics r0, r1 - adds r0, 0x4 - mov r8, r0 - ldr r2, =gTasks - ldr r3, =gUnknown_02022D08 - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r4, r0, r2 - movs r1, 0x24 - ldrsh r0, [r4, r1] - add r0, r8 - adds r0, 0x9 - movs r1, 0x80 - lsls r1, 5 - adds r5, r2, 0 - cmp r0, r1 - ble _08033346 - ldrh r0, [r4, 0x24] - movs r2, 0 - strh r0, [r4, 0x20] - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - strh r2, [r0, 0x24] -_08033346: - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - movs r2, 0x24 - ldrsh r1, [r0, r2] - ldr r4, =gUnknown_020244A0 - ldr r0, [r4] - adds r0, r1 - strb r6, [r0] - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - movs r7, 0x24 - ldrsh r1, [r0, r7] - ldr r0, [r4] - adds r1, r0 - ldr r0, =gActiveBank - ldrb r0, [r0] - strb r0, [r1, 0x1] - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - movs r2, 0x24 - ldrsh r1, [r0, r2] - ldr r0, [r4] - adds r1, r0 - ldr r0, =gBankAttacker - ldrb r0, [r0] - strb r0, [r1, 0x2] - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - movs r7, 0x24 - ldrsh r1, [r0, r7] - ldr r0, [r4] - adds r1, r0 - ldr r0, =gBankTarget - ldrb r0, [r0] - strb r0, [r1, 0x3] - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - movs r1, 0x24 - ldrsh r0, [r0, r1] - ldr r1, [r4] - adds r0, r1 - mov r2, r8 - strb r2, [r0, 0x4] - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - movs r7, 0x24 - ldrsh r1, [r0, r7] - ldr r0, [r4] - adds r1, r0 - movs r0, 0xFF - lsls r0, 8 - mov r2, r8 - ands r0, r2 - asrs r0, 8 - strb r0, [r1, 0x5] - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - movs r7, 0x24 - ldrsh r1, [r0, r7] - ldr r0, [r4] - adds r1, r0 - ldr r0, =gAbsentBankFlags - ldrb r0, [r0] - strb r0, [r1, 0x6] - ldrb r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - movs r2, 0x24 - ldrsh r1, [r0, r2] - ldr r0, [r4] - adds r1, r0 - ldr r0, =gEffectBank - ldrb r0, [r0] - strb r0, [r1, 0x7] - movs r2, 0 - cmp r2, r12 - bge _08033434 - mov r10, r5 - adds r6, r3, 0 -_08033412: - ldrb r1, [r6] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - add r0, r10 - movs r7, 0x24 - ldrsh r1, [r0, r7] - ldr r0, [r4] - adds r1, r2, r1 - adds r1, r0 - mov r7, r9 - adds r0, r7, r2 - ldrb r0, [r0] - strb r0, [r1, 0x8] - adds r2, 0x1 - cmp r2, r12 - blt _08033412 -_08033434: - ldrb r0, [r3] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r5 - ldrh r0, [r1, 0x24] - add r0, r8 - adds r0, 0x8 - strh r0, [r1, 0x24] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end PrepareBufferDataTransferLink - - thumb_func_start task00_wireless_something -task00_wireless_something: @ 8033474 - push {r4-r7,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r2, 0x1E - ldrsh r0, [r0, r2] - adds r7, r1, 0 - cmp r0, 0x5 - bls _08033490 - b _08033640 -_08033490: - lsls r0, 2 - ldr r1, =_080334A4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080334A4: - .4byte _080334BC - .4byte _080334CA - .4byte _080334E6 - .4byte _08033570 - .4byte _080335E6 - .4byte _08033624 -_080334BC: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r7 - movs r1, 0x64 - strh r1, [r0, 0x1C] - b _080334F6 -_080334CA: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r1, r0, r7 - ldrh r0, [r1, 0x1C] - subs r0, 0x1 - strh r0, [r1, 0x1C] - lsls r0, 16 - cmp r0, 0 - beq _080334E0 - b _08033640 -_080334E0: - ldrh r0, [r1, 0x1E] - adds r0, 0x1 - b _0803363E -_080334E6: - ldr r0, =gLinkVSyncDisabled - ldrb r0, [r0] - cmp r0, 0 - beq _08033504 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r7 -_080334F6: - ldrh r1, [r0, 0x1E] - adds r1, 0x1 - strh r1, [r0, 0x1E] - b _08033640 - .pool -_08033504: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 1 - ands r0, r1 - cmp r0, 0 - beq _0803351C - movs r5, 0x2 - b _0803352A - .pool -_0803351C: - movs r0, 0x40 - ands r1, r0 - movs r0, 0x2 - cmp r1, 0 - beq _08033528 - movs r0, 0x4 -_08033528: - adds r5, r0, 0 -_0803352A: - bl sub_800ABAC - lsls r0, 24 - lsrs r0, 24 - cmp r0, r5 - bcs _08033538 - b _08033640 -_08033538: - bl sub_800ABBC - lsls r0, 24 - cmp r0, 0 - beq _0803355C - bl sub_800A620 - ldr r0, =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x1E] - adds r0, 0x1 - b _0803363E - .pool -_0803355C: - ldr r0, =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x1E] - adds r0, 0x1 - b _0803363E - .pool -_08033570: - lsls r1, r4, 2 - adds r0, r1, r4 - lsls r0, 3 - adds r2, r0, r7 - movs r3, 0x26 - ldrsh r5, [r2, r3] - movs r0, 0x24 - ldrsh r6, [r2, r0] - mov r12, r6 - cmp r5, r12 - beq _08033640 - ldrh r0, [r2, 0x22] - movs r6, 0x22 - ldrsh r3, [r2, r6] - cmp r3, 0 - bne _080335E0 - cmp r5, r12 - ble _080335A0 - movs r6, 0x20 - ldrsh r0, [r2, r6] - cmp r5, r0 - bne _080335A0 - strh r3, [r2, 0x20] - strh r3, [r2, 0x26] -_080335A0: - adds r4, r1, r4 - lsls r4, 3 - adds r4, r7 - movs r0, 0x26 - ldrsh r1, [r4, r0] - ldr r5, =gUnknown_020244A0 - ldr r0, [r5] - adds r1, r0 - ldrb r0, [r1, 0x4] - ldrb r1, [r1, 0x5] - lsls r1, 8 - orrs r0, r1 - adds r0, 0x8 - lsls r0, 16 - lsrs r6, r0, 16 - bl bitmask_all_link_players_but_self - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x26 - ldrsh r2, [r4, r1] - ldr r1, [r5] - adds r1, r2 - adds r2, r6, 0 - bl link_0800A448 - ldrh r0, [r4, 0x1E] - adds r0, 0x1 - strh r0, [r4, 0x1E] - b _08033640 - .pool -_080335E0: - subs r0, 0x1 - strh r0, [r2, 0x22] - b _08033640 -_080335E6: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - beq _08033640 - ldr r0, =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - movs r3, 0x26 - ldrsh r2, [r1, r3] - ldr r0, =gUnknown_020244A0 - ldr r0, [r0] - adds r2, r0 - ldrb r0, [r2, 0x4] - ldrb r2, [r2, 0x5] - lsls r2, 8 - movs r3, 0x1 - strh r3, [r1, 0x22] - orrs r0, r2 - ldrh r6, [r1, 0x26] - adds r0, r6 - adds r0, 0x8 - strh r0, [r1, 0x26] - b _0803363C - .pool -_08033624: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r1, r0, r7 - ldrh r0, [r1, 0x22] - subs r0, 0x1 - strh r0, [r1, 0x22] - lsls r0, 16 - cmp r0, 0 - bne _08033640 - movs r0, 0x1 - strh r0, [r1, 0x22] -_0803363C: - movs r0, 0x3 -_0803363E: - strh r0, [r1, 0x1E] -_08033640: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end task00_wireless_something - - thumb_func_start sub_8033648 -sub_8033648: @ 8033648 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, =gUnknown_03003124 - ldrb r0, [r0] - cmp r0, 0 - beq _08033738 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08033738 - bl sub_8011BD0 - movs r4, 0 - ldr r0, =gUnknown_020223C4 - mov r10, r0 - b _0803372C - .pool -_08033680: - bl sub_800A550 - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gBitTable - lsls r1, r4, 2 - adds r1, r2 - ldr r1, [r1] - ands r0, r1 - adds r1, r4, 0x1 - mov r9, r1 - cmp r0, 0 - beq _08033726 - adds r0, r4, 0 - bl sub_800A5EC - lsls r0, r4, 8 - mov r4, r10 - adds r3, r0, r4 - ldr r1, =gUnknown_020223C8 - adds r0, r1 - ldrh r6, [r0] - ldr r7, =gTasks - ldr r4, =gUnknown_02022D09 - mov r12, r4 - ldrb r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r2, r0, r7 - movs r0, 0x24 - ldrsh r1, [r2, r0] - adds r0, r6, 0 - adds r0, 0x9 - adds r1, r0 - movs r0, 0x80 - lsls r0, 5 - cmp r1, r0 - ble _080336E0 - ldrh r0, [r2, 0x24] - strh r0, [r2, 0x20] - ldrb r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r7 - movs r1, 0 - strh r1, [r0, 0x24] -_080336E0: - ldr r2, =gUnknown_020244A4 - mov r4, r12 - ldrb r1, [r4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r7 - movs r4, 0x24 - ldrsh r1, [r0, r4] - ldr r0, [r2] - adds r5, r0, r1 - adds r4, r3, 0 - movs r2, 0 - adds r3, r6, 0 - adds r3, 0x8 - mov r8, r7 - mov r7, r12 - cmp r2, r3 - bge _08033714 -_08033706: - adds r0, r5, r2 - adds r1, r4, r2 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, r3 - blt _08033706 -_08033714: - ldrb r0, [r7] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - add r1, r8 - ldrh r0, [r1, 0x24] - adds r0, r6, r0 - adds r0, 0x8 - strh r0, [r1, 0x24] -_08033726: - mov r1, r9 - lsls r0, r1, 24 - lsrs r4, r0, 24 -_0803372C: - bl sub_8009FCC - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - bcc _08033680 -_08033738: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8033648 - - thumb_func_start sub_803375C -sub_803375C: @ 803375C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 24 - lsrs r7, r0, 24 - ldr r1, =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r3, r0, r1 - movs r0, 0x26 - ldrsh r2, [r3, r0] - movs r4, 0x24 - ldrsh r0, [r3, r4] - cmp r2, r0 - bne _08033780 - b _0803389C -_08033780: - cmp r2, r0 - ble _08033792 - movs r4, 0x20 - ldrsh r0, [r3, r4] - cmp r2, r0 - bne _08033792 - movs r0, 0 - strh r0, [r3, 0x20] - strh r0, [r3, 0x26] -_08033792: - lsls r2, r7, 2 - adds r0, r2, r7 - lsls r0, 3 - adds r5, r0, r1 - movs r0, 0x26 - ldrsh r1, [r5, r0] - ldr r3, =gUnknown_020244A4 - mov r8, r3 - ldr r0, [r3] - adds r3, r1, r0 - ldrb r4, [r3, 0x1] - ldrb r6, [r3, 0x4] - ldrb r0, [r3, 0x5] - lsls r0, 8 - orrs r6, r0 - ldrb r0, [r3] - mov r9, r2 - cmp r0, 0x1 - beq _0803385C - cmp r0, 0x1 - bgt _080337CC - cmp r0, 0 - beq _080337D2 - b _0803388A - .pool -_080337CC: - cmp r0, 0x2 - beq _08033874 - b _0803388A -_080337D2: - ldr r2, =gBattleExecBuffer - ldr r1, =gBitTable - lsls r0, r4, 2 - adds r0, r1 - ldr r1, [r2] - ldr r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _0803389C - lsls r0, r4, 9 - ldr r1, =gBattleBufferA - adds r0, r1 - adds r1, r3, 0 - adds r1, 0x8 - adds r2, r6, 0 - bl memcpy - adds r0, r4, 0 - bl sub_803F850 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x4 - ands r0, r1 - cmp r0, 0 - bne _0803388A - ldr r2, =gBankAttacker - movs r4, 0x26 - ldrsh r0, [r5, r4] - mov r3, r8 - ldr r1, [r3] - adds r0, r1 - ldrb r0, [r0, 0x2] - strb r0, [r2] - ldr r2, =gBankTarget - movs r4, 0x26 - ldrsh r0, [r5, r4] - adds r0, r1 - ldrb r0, [r0, 0x3] - strb r0, [r2] - ldr r2, =gAbsentBankFlags - movs r3, 0x26 - ldrsh r0, [r5, r3] - adds r0, r1 - ldrb r0, [r0, 0x6] - strb r0, [r2] - ldr r2, =gEffectBank - movs r4, 0x26 - ldrsh r0, [r5, r4] - adds r0, r1 - ldrb r0, [r0, 0x7] - strb r0, [r2] - b _0803388A - .pool -_0803385C: - lsls r0, r4, 9 - ldr r1, =gBattleBufferB - adds r0, r1 - adds r1, r3, 0 - adds r1, 0x8 - adds r2, r6, 0 - bl memcpy - b _0803388A - .pool -_08033874: - ldrb r2, [r3, 0x8] - ldr r3, =gBattleExecBuffer - ldr r1, =gBitTable - lsls r0, r4, 2 - adds r0, r1 - lsls r2, 2 - ldr r1, [r0] - lsls r1, r2 - ldr r0, [r3] - bics r0, r1 - str r0, [r3] -_0803388A: - ldr r0, =gTasks - mov r2, r9 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x26] - adds r0, r6, r0 - adds r0, 0x8 - strh r0, [r1, 0x26] -_0803389C: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_803375C - - thumb_func_start dp01_build_cmdbuf_x00_a_b_0 -dp01_build_cmdbuf_x00_a_b_0: @ 80338B4 - push {r4,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r3, 0 - strb r3, [r1] - strb r4, [r1, 0x1] - strb r2, [r1, 0x2] - strb r3, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x00_a_b_0 - - thumb_func_start dp01_build_cmdbuf_x01_a_b_0 -dp01_build_cmdbuf_x01_a_b_0: @ 80338D8 - push {r4,r5,lr} - adds r5, r1, 0 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r4, 0 - movs r3, 0x1 - strb r3, [r1] - strb r5, [r1, 0x1] - strb r2, [r1, 0x2] - strb r4, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x01_a_b_0 - - thumb_func_start EmitSetAttributes -EmitSetAttributes: @ 8033900 - push {r4-r6,lr} - ldr r4, [sp, 0x10] - lsls r0, 24 - lsrs r6, r0, 24 - lsls r3, 24 - lsrs r5, r3, 24 - ldr r0, =gUnknown_02022D10 - movs r3, 0x2 - strb r3, [r0] - strb r1, [r0, 0x1] - strb r2, [r0, 0x2] - adds r1, r0, 0 - cmp r5, 0 - beq _0803392E - adds r3, r1, 0x3 - adds r2, r5, 0 -_08033920: - ldrb r0, [r4] - strb r0, [r3] - adds r4, 0x1 - adds r3, 0x1 - subs r2, 0x1 - cmp r2, 0 - bne _08033920 -_0803392E: - adds r2, r5, 0x3 - adds r0, r6, 0 - bl dp01_prepare_buffer - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end EmitSetAttributes - - thumb_func_start sub_8033940 -sub_8033940: @ 8033940 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r2, 24 - lsrs r4, r2, 24 - ldr r0, =gUnknown_02022D10 - movs r2, 0x3 - strb r2, [r0] - strb r1, [r0, 0x1] - strb r4, [r0, 0x2] - adds r5, r0, 0 - cmp r4, 0 - beq _0803396C - adds r1, r5, 0x3 - adds r2, r4, 0 -_0803395E: - ldrb r0, [r3] - strb r0, [r1] - adds r3, 0x1 - adds r1, 0x1 - subs r2, 0x1 - cmp r2, 0 - bne _0803395E -_0803396C: - adds r2, r4, 0x3 - adds r0, r6, 0 - adds r1, r5, 0 - bl dp01_prepare_buffer - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8033940 - - thumb_func_start dp01_build_cmdbuf_x04_4_4_4 -dp01_build_cmdbuf_x04_4_4_4: @ 8033980 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x4 - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x04_4_4_4 - - thumb_func_start dp01_build_cmdbuf_x05_a_b_c -dp01_build_cmdbuf_x05_a_b_c: @ 80339A0 - push {r4,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r3, 0x5 - strb r3, [r1] - strb r4, [r1, 0x1] - strb r2, [r1, 0x2] - strb r3, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x05_a_b_c - - thumb_func_start dp01_build_cmdbuf_x06_a -dp01_build_cmdbuf_x06_a: @ 80339C4 - push {lr} - adds r3, r1, 0 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x6 - strb r2, [r1] - strb r3, [r1, 0x1] - movs r2, 0x2 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x06_a - - thumb_func_start dp01_build_cmdbuf_x07_7_7_7 -dp01_build_cmdbuf_x07_7_7_7: @ 80339E4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x7 - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x07_7_7_7 - - thumb_func_start dp01_build_cmdbuf_x08_8_8_8 -dp01_build_cmdbuf_x08_8_8_8: @ 8033A04 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x8 - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x08_8_8_8 - - thumb_func_start dp01_build_cmdbuf_x09_9_9_9 -dp01_build_cmdbuf_x09_9_9_9: @ 8033A24 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x9 - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x09_9_9_9 - - thumb_func_start dp01_build_cmdbuf_x0A_A_A_A -dp01_build_cmdbuf_x0A_A_A_A: @ 8033A44 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0xA - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x0A_A_A_A - - thumb_func_start dp01_build_cmdbuf_x0B_B_B_B -dp01_build_cmdbuf_x0B_B_B_B: @ 8033A64 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0xB - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x0B_B_B_B - - thumb_func_start dp01_build_cmdbuf_x0C_C_C_C -dp01_build_cmdbuf_x0C_C_C_C: @ 8033A84 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0xC - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x0C_C_C_C - - thumb_func_start dp01_build_cmdbuf_x0D_a -dp01_build_cmdbuf_x0D_a: @ 8033AA4 - push {lr} - adds r3, r1, 0 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0xD - strb r2, [r1] - strb r3, [r1, 0x1] - movs r2, 0x2 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x0D_a - - thumb_func_start sub_8033AC4 -sub_8033AC4: @ 8033AC4 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 24 - lsrs r4, r1, 24 - ldr r1, =gUnknown_02022D10 - movs r0, 0xE - strb r0, [r1] - strb r4, [r1, 0x1] - lsls r0, r4, 1 - adds r0, r4 - adds r5, r1, 0 - cmp r0, 0 - beq _08033AF2 - adds r1, r5, 0x2 - adds r3, r0, 0 -_08033AE4: - ldrb r0, [r2] - strb r0, [r1] - adds r2, 0x1 - adds r1, 0x1 - subs r3, 0x1 - cmp r3, 0 - bne _08033AE4 -_08033AF2: - lsls r2, r4, 1 - adds r2, r4 - adds r2, 0x2 - adds r0, r6, 0 - adds r1, r5, 0 - bl dp01_prepare_buffer - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8033AC4 - - thumb_func_start dp01_build_cmdbuf_x0F_aa_b_cc_dddd_e_mlc_weather_00_x1Cbytes -dp01_build_cmdbuf_x0F_aa_b_cc_dddd_e_mlc_weather_00_x1Cbytes: @ 8033B0C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - ldr r4, [sp, 0x20] - ldr r5, [sp, 0x24] - ldr r6, [sp, 0x2C] - mov r8, r6 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r1, 16 - lsrs r1, 16 - lsls r3, 16 - lsrs r3, 16 - ldr r7, =gUnknown_02022D10 - movs r0, 0 - mov r12, r0 - movs r0, 0xF - strb r0, [r7] - strb r1, [r7, 0x1] - lsrs r1, 8 - strb r1, [r7, 0x2] - strb r2, [r7, 0x3] - strb r3, [r7, 0x4] - movs r6, 0xFF - lsls r6, 8 - lsrs r3, 8 - strb r3, [r7, 0x5] - strb r4, [r7, 0x6] - adds r0, r4, 0 - ands r0, r6 - asrs r0, 8 - strb r0, [r7, 0x7] - movs r0, 0xFF - lsls r0, 16 - ands r0, r4 - asrs r0, 16 - strb r0, [r7, 0x8] - lsrs r4, 24 - strb r4, [r7, 0x9] - strb r5, [r7, 0xA] - mov r0, r8 - strb r0, [r7, 0xB] - mov r0, r12 - str r0, [sp] - movs r0, 0xE - movs r1, 0 - movs r2, 0xD - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _08033BAC - str r0, [sp] - movs r0, 0xE - movs r1, 0 - movs r2, 0x4D - movs r3, 0 - bl AbilityBattleEffects - lsls r0, 24 - cmp r0, 0 - bne _08033BAC - ldr r0, =gBattleWeather - ldrh r0, [r0] - strb r0, [r7, 0xC] - ands r6, r0 - lsrs r0, r6, 8 - strb r0, [r7, 0xD] - adds r4, r7, 0 - b _08033BB6 - .pool -_08033BAC: - ldr r0, =gUnknown_02022D10 - movs r1, 0 - strb r1, [r0, 0xC] - strb r1, [r0, 0xD] - adds r4, r0, 0 -_08033BB6: - movs r0, 0 - strb r0, [r4, 0xE] - strb r0, [r4, 0xF] - adds r0, r4, 0 - adds r0, 0x10 - ldr r1, [sp, 0x28] - movs r2, 0x1C - bl memcpy - mov r0, r9 - adds r1, r4, 0 - movs r2, 0x2C - bl dp01_prepare_buffer - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x0F_aa_b_cc_dddd_e_mlc_weather_00_x1Cbytes - - thumb_func_start dp01_build_cmdbuf_x10_TODO -dp01_build_cmdbuf_x10_TODO: @ 8033BE4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - lsls r1, 16 - lsrs r1, 16 - ldr r2, =gUnknown_02022D10 - movs r0, 0x10 - strb r0, [r2] - ldr r0, =gBattleOutcome - ldrb r0, [r0] - strb r0, [r2, 0x1] - strb r1, [r2, 0x2] - lsrs r1, 8 - strb r1, [r2, 0x3] - adds r0, r2, 0x4 - mov r12, r0 - ldr r4, =gCurrentMove - ldrh r0, [r4] - strh r0, [r2, 0x4] - ldr r0, =gUnknown_020241EC - ldrh r0, [r0] - mov r1, r12 - strh r0, [r1, 0x2] - ldr r0, =gLastUsedItem - ldrh r0, [r0] - strh r0, [r1, 0x4] - ldr r0, =gLastUsedAbility - ldrb r0, [r0] - strb r0, [r1, 0x6] - ldr r0, =gBattleScripting - ldrb r0, [r0, 0x17] - strb r0, [r1, 0x7] - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r1, r0, 0 - adds r1, 0x52 - ldrb r1, [r1] - mov r3, r12 - strb r1, [r3, 0x8] - adds r0, 0xB1 - ldrb r0, [r0] - strb r0, [r3, 0x9] - ldr r0, =gStringBank - ldrb r0, [r0] - strb r0, [r3, 0xA] - ldr r3, =gBattleMoves - ldrh r1, [r4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrb r0, [r0, 0x2] - mov r7, r12 - strb r0, [r7, 0xB] - movs r3, 0 - mov r9, r2 - ldr r0, =gBattleTextBuff3 - mov r8, r0 - adds r2, 0x10 - ldr r0, =gBattleMons - adds r4, r0, 0 - adds r4, 0x20 -_08033C6A: - adds r1, r2, r3 - ldrb r0, [r4] - strb r0, [r1] - adds r4, 0x58 - adds r3, 0x1 - cmp r3, 0x3 - ble _08033C6A - movs r3, 0 - mov r5, r12 - adds r5, 0x10 - mov r4, r12 - adds r4, 0x20 - ldr r6, =gBattleTextBuff2 - mov r2, r12 - adds r2, 0x30 -_08033C88: - adds r1, r5, r3 - ldr r7, =gBattleTextBuff1 - adds r0, r3, r7 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r4, r3 - adds r0, r3, r6 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r2, r3 - mov r7, r8 - adds r0, r3, r7 - ldrb r0, [r0] - strb r0, [r1] - adds r3, 0x1 - cmp r3, 0xF - ble _08033C88 - mov r0, r10 - mov r1, r9 - movs r2, 0x44 - bl dp01_prepare_buffer - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x10_TODO - - thumb_func_start dp01_build_cmdbuf_x11_TODO -dp01_build_cmdbuf_x11_TODO: @ 8033CFC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - lsls r1, 16 - lsrs r1, 16 - ldr r2, =gUnknown_02022D10 - movs r0, 0x11 - strb r0, [r2] - strb r0, [r2, 0x1] - strb r1, [r2, 0x2] - lsrs r1, 8 - strb r1, [r2, 0x3] - adds r0, r2, 0x4 - mov r12, r0 - ldr r0, =gCurrentMove - ldrh r0, [r0] - strh r0, [r2, 0x4] - ldr r0, =gUnknown_020241EC - ldrh r0, [r0] - mov r1, r12 - strh r0, [r1, 0x2] - ldr r0, =gLastUsedItem - ldrh r0, [r0] - strh r0, [r1, 0x4] - ldr r0, =gLastUsedAbility - ldrb r0, [r0] - strb r0, [r1, 0x6] - ldr r0, =gBattleScripting - ldrb r0, [r0, 0x17] - strb r0, [r1, 0x7] - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x52 - ldrb r0, [r0] - strb r0, [r1, 0x8] - movs r3, 0 - mov r9, r2 - ldr r7, =gBattleTextBuff3 - mov r8, r7 - mov r4, r9 - adds r4, 0x10 - ldr r0, =gBattleMons - adds r2, r0, 0 - adds r2, 0x20 -_08033D5E: - adds r1, r4, r3 - ldrb r0, [r2] - strb r0, [r1] - adds r2, 0x58 - adds r3, 0x1 - cmp r3, 0x3 - ble _08033D5E - movs r3, 0 - mov r5, r12 - adds r5, 0x10 - mov r4, r12 - adds r4, 0x20 - ldr r6, =gBattleTextBuff2 - mov r2, r12 - adds r2, 0x30 -_08033D7C: - adds r1, r5, r3 - ldr r7, =gBattleTextBuff1 - adds r0, r3, r7 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r4, r3 - adds r0, r3, r6 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r2, r3 - mov r7, r8 - adds r0, r3, r7 - ldrb r0, [r0] - strb r0, [r1] - adds r3, 0x1 - cmp r3, 0xF - ble _08033D7C - mov r0, r10 - mov r1, r9 - movs r2, 0x44 - bl dp01_prepare_buffer - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x11_TODO - - thumb_func_start dp01_build_cmdbuf_x12_a_bb -dp01_build_cmdbuf_x12_a_bb: @ 8033DE4 - push {r4,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r2, 16 - lsrs r2, 16 - ldr r1, =gUnknown_02022D10 - movs r3, 0x12 - strb r3, [r1] - strb r4, [r1, 0x1] - strb r2, [r1, 0x2] - lsrs r2, 8 - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x12_a_bb - - thumb_func_start sub_8033E10 -sub_8033E10: @ 8033E10 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x13 - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end sub_8033E10 - - thumb_func_start sub_8033E30 -sub_8033E30: @ 8033E30 - push {r4-r6,lr} - adds r5, r3, 0 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r3, =gUnknown_02022D10 - movs r4, 0 - movs r0, 0x14 - strb r0, [r3] - strb r1, [r3, 0x1] - strb r2, [r3, 0x2] - strb r4, [r3, 0x3] - movs r2, 0 - adds r1, r3, 0 - adds r4, r1, 0x4 -_08033E4C: - adds r0, r5, r2 - ldrb r0, [r0] - strb r0, [r4] - adds r4, 0x1 - adds r2, 0x1 - cmp r2, 0x13 - bls _08033E4C - adds r0, r6, 0 - movs r2, 0x18 - bl dp01_prepare_buffer - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8033E30 - - thumb_func_start sub_8033E6C -sub_8033E6C: @ 8033E6C - push {r4,r5,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, =gUnknown_02022D10 - movs r0, 0x15 - strb r0, [r1] - movs r2, 0 - adds r3, r1, 0x1 -_08033E7E: - adds r0, r4, r2 - ldrb r0, [r0] - strb r0, [r3] - adds r3, 0x1 - adds r2, 0x1 - cmp r2, 0x2 - ble _08033E7E - adds r0, r5, 0 - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8033E6C - - thumb_func_start dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f -dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f: @ 8033EA0 - push {r4-r6,lr} - ldr r6, [sp, 0x10] - lsls r0, 24 - lsrs r5, r0, 24 - ldr r4, =gUnknown_02022D10 - movs r0, 0x16 - strb r0, [r4] - strb r1, [r4, 0x1] - strb r2, [r4, 0x2] - strb r3, [r4, 0x3] - movs r2, 0 - adds r1, r4, 0 - adds r3, r1, 0x4 -_08033EBA: - adds r0, r6, r2 - ldrb r0, [r0] - strb r0, [r3] - adds r3, 0x1 - adds r2, 0x1 - cmp r2, 0x2 - ble _08033EBA - adds r0, r5, 0 - movs r2, 0x8 - bl dp01_prepare_buffer - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f - - thumb_func_start dp01_build_cmdbuf_x17_17_17_17 -dp01_build_cmdbuf_x17_17_17_17: @ 8033EDC - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x17 - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x17_17_17_17 - - thumb_func_start dp01_build_cmdbuf_x18_0_aa_health_bar_update -dp01_build_cmdbuf_x18_0_aa_health_bar_update: @ 8033EFC - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 16 - lsrs r1, 16 - ldr r3, =gUnknown_02022D10 - movs r4, 0 - movs r2, 0x18 - strb r2, [r3] - strb r4, [r3, 0x1] - strb r1, [r3, 0x2] - lsls r1, 16 - asrs r1, 16 - movs r2, 0xFF - lsls r2, 8 - ands r1, r2 - asrs r1, 8 - strb r1, [r3, 0x3] - adds r1, r3, 0 - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x18_0_aa_health_bar_update - - thumb_func_start dp01_build_cmdbuf_x19_a_bb -dp01_build_cmdbuf_x19_a_bb: @ 8033F34 - push {r4,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r2, 16 - lsrs r2, 16 - ldr r1, =gUnknown_02022D10 - movs r3, 0x19 - strb r3, [r1] - strb r4, [r1, 0x1] - strb r2, [r1, 0x2] - lsls r2, 16 - asrs r2, 16 - movs r3, 0xFF - lsls r3, 8 - ands r2, r3 - asrs r2, 8 - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x19_a_bb - - thumb_func_start dp01_build_cmdbuf_x1A_aaaa_bbbb -dp01_build_cmdbuf_x1A_aaaa_bbbb: @ 8033F68 - push {r4-r6,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r3, 0x1A - strb r3, [r1] - strb r4, [r1, 0x1] - movs r6, 0xFF - lsls r6, 8 - adds r3, r4, 0 - ands r3, r6 - lsrs r3, 8 - strb r3, [r1, 0x2] - movs r5, 0xFF - lsls r5, 16 - adds r3, r4, 0 - ands r3, r5 - lsrs r3, 16 - strb r3, [r1, 0x3] - lsrs r4, 24 - strb r4, [r1, 0x4] - strb r2, [r1, 0x5] - adds r3, r2, 0 - ands r3, r6 - lsrs r3, 8 - strb r3, [r1, 0x6] - adds r3, r2, 0 - ands r3, r5 - lsrs r3, 16 - strb r3, [r1, 0x7] - lsrs r2, 24 - strb r2, [r1, 0x8] - movs r2, 0x9 - bl dp01_prepare_buffer - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x1A_aaaa_bbbb - - thumb_func_start dp01_build_cmdbuf_x1B_aaaa_b -dp01_build_cmdbuf_x1B_aaaa_b: @ 8033FBC - push {r4,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r3, 0x1B - strb r3, [r1] - strb r4, [r1, 0x1] - strb r2, [r1, 0x2] - movs r3, 0xFF - lsls r3, 8 - ands r3, r2 - lsrs r3, 8 - strb r3, [r1, 0x3] - movs r3, 0xFF - lsls r3, 16 - ands r3, r2 - lsrs r3, 16 - strb r3, [r1, 0x4] - lsrs r2, 24 - strb r2, [r1, 0x5] - movs r2, 0x6 - bl dp01_prepare_buffer - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x1B_aaaa_b - - thumb_func_start dp01_build_cmdbuf_x1C_a -dp01_build_cmdbuf_x1C_a: @ 8033FF8 - push {lr} - adds r3, r1, 0 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x1C - strb r2, [r1] - strb r3, [r1, 0x1] - movs r2, 0x2 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x1C_a - - thumb_func_start dp01_build_cmdbuf_x1D_1D_numargs_varargs -dp01_build_cmdbuf_x1D_1D_numargs_varargs: @ 8034018 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 16 - lsrs r4, r1, 16 - ldr r1, =gUnknown_02022D10 - movs r0, 0x1D - strb r0, [r1] - strb r0, [r1, 0x1] - strb r4, [r1, 0x2] - lsrs r0, r4, 8 - strb r0, [r1, 0x3] - adds r5, r1, 0 - cmp r4, 0 - beq _08034048 - adds r1, r5, 0x4 - adds r3, r4, 0 -_0803403A: - ldrb r0, [r2] - strb r0, [r1] - adds r2, 0x1 - adds r1, 0x1 - subs r3, 0x1 - cmp r3, 0 - bne _0803403A -_08034048: - adds r2, r4, 0x4 - lsls r2, 16 - lsrs r2, 16 - adds r0, r6, 0 - adds r1, r5, 0 - bl dp01_prepare_buffer - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x1D_1D_numargs_varargs - - thumb_func_start sub_8034060 -sub_8034060: @ 8034060 - push {r4-r6,lr} - adds r4, r3, 0 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r2, 16 - lsrs r5, r2, 16 - ldr r2, =gUnknown_02022D10 - movs r0, 0x1E - strb r0, [r2] - strb r1, [r2, 0x1] - movs r3, 0xFF - lsls r3, 8 - adds r0, r1, 0 - ands r0, r3 - lsrs r0, 8 - strb r0, [r2, 0x2] - movs r0, 0xFF - lsls r0, 16 - ands r0, r1 - lsrs r0, 16 - strb r0, [r2, 0x3] - lsrs r1, 24 - strb r1, [r2, 0x4] - strb r5, [r2, 0x5] - adds r0, r5, 0 - ands r0, r3 - lsrs r0, 8 - strb r0, [r2, 0x6] - adds r1, r2, 0 - cmp r5, 0 - beq _080340B0 - adds r3, r1, 0x7 - adds r2, r5, 0 -_080340A2: - ldrb r0, [r4] - strb r0, [r3] - adds r4, 0x1 - adds r3, 0x1 - subs r2, 0x1 - cmp r2, 0 - bne _080340A2 -_080340B0: - adds r2, r5, 0x7 - lsls r2, 16 - lsrs r2, 16 - adds r0, r6, 0 - bl dp01_prepare_buffer - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8034060 - - thumb_func_start sub_80340C8 -sub_80340C8: @ 80340C8 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 16 - lsrs r4, r1, 16 - ldr r1, =gUnknown_02022D10 - movs r0, 0x1F - strb r0, [r1] - strb r4, [r1, 0x1] - lsrs r0, r4, 8 - strb r0, [r1, 0x2] - adds r5, r1, 0 - cmp r4, 0 - beq _080340F6 - adds r1, r5, 0x3 - adds r3, r4, 0 -_080340E8: - ldrb r0, [r2] - strb r0, [r1] - adds r2, 0x1 - adds r1, 0x1 - subs r3, 0x1 - cmp r3, 0 - bne _080340E8 -_080340F6: - adds r2, r4, 0x3 - lsls r2, 16 - lsrs r2, 16 - adds r0, r6, 0 - adds r1, r5, 0 - bl dp01_prepare_buffer - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80340C8 - - thumb_func_start sub_8034110 -sub_8034110: @ 8034110 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 16 - lsrs r4, r1, 16 - ldr r1, =gUnknown_02022D10 - movs r0, 0x20 - strb r0, [r1] - strb r4, [r1, 0x1] - lsrs r0, r4, 8 - strb r0, [r1, 0x2] - adds r5, r1, 0 - cmp r4, 0 - beq _0803413E - adds r1, r5, 0x3 - adds r3, r4, 0 -_08034130: - ldrb r0, [r2] - strb r0, [r1] - adds r2, 0x1 - adds r1, 0x1 - subs r3, 0x1 - cmp r3, 0 - bne _08034130 -_0803413E: - adds r2, r4, 0x3 - lsls r2, 16 - lsrs r2, 16 - adds r0, r6, 0 - adds r1, r5, 0 - bl dp01_prepare_buffer - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8034110 - - thumb_func_start dp01_build_cmdbuf_x21_a_bb -dp01_build_cmdbuf_x21_a_bb: @ 8034158 - push {r4,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r2, 16 - lsrs r2, 16 - ldr r1, =gUnknown_02022D10 - movs r3, 0x21 - strb r3, [r1] - strb r4, [r1, 0x1] - strb r2, [r1, 0x2] - lsrs r2, 8 - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x21_a_bb - - thumb_func_start dp01_build_cmdbuf_x22_a_three_bytes -dp01_build_cmdbuf_x22_a_three_bytes: @ 8034184 - push {r4,r5,lr} - adds r4, r2, 0 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r2, =gUnknown_02022D10 - movs r0, 0x22 - strb r0, [r2] - strb r1, [r2, 0x1] - movs r3, 0 - adds r1, r2, 0x2 -_08034198: - adds r0, r4, r3 - ldrb r0, [r0] - strb r0, [r1] - adds r1, 0x1 - adds r3, 0x1 - cmp r3, 0x2 - ble _08034198 - adds r0, r5, 0 - adds r1, r2, 0 - movs r2, 0x5 - bl dp01_prepare_buffer - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x22_a_three_bytes - - thumb_func_start dp01_build_cmdbuf_x23_aa_0 -dp01_build_cmdbuf_x23_aa_0: @ 80341BC - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 16 - lsrs r1, 16 - ldr r3, =gUnknown_02022D10 - movs r4, 0 - movs r2, 0x23 - strb r2, [r3] - strb r1, [r3, 0x1] - lsrs r1, 8 - strb r1, [r3, 0x2] - strb r4, [r3, 0x3] - adds r1, r3, 0 - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x23_aa_0 - - thumb_func_start dp01_build_cmdbuf_x24_aa_0 -dp01_build_cmdbuf_x24_aa_0: @ 80341E8 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 16 - lsrs r1, 16 - ldr r3, =gUnknown_02022D10 - movs r4, 0 - movs r2, 0x24 - strb r2, [r3] - strb r1, [r3, 0x1] - lsrs r1, 8 - strb r1, [r3, 0x2] - strb r4, [r3, 0x3] - adds r1, r3, 0 - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x24_aa_0 - - thumb_func_start dp01_build_cmdbuf_x25_25_25_25 -dp01_build_cmdbuf_x25_25_25_25: @ 8034214 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x25 - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x25_25_25_25 - - thumb_func_start dp01_build_cmdbuf_x26_a -dp01_build_cmdbuf_x26_a: @ 8034234 - push {lr} - adds r3, r1, 0 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x26 - strb r2, [r1] - strb r3, [r1, 0x1] - movs r2, 0x2 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x26_a - - thumb_func_start dp01_build_cmdbuf_x27_27_27_27 -dp01_build_cmdbuf_x27_27_27_27: @ 8034254 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x27 - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x27_27_27_27 - - thumb_func_start dp01_build_cmdbuf_x28_28_28_28 -dp01_build_cmdbuf_x28_28_28_28: @ 8034274 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x28 - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x28_28_28_28 - - thumb_func_start dp01_build_cmdbuf_x29_29_29_29 -dp01_build_cmdbuf_x29_29_29_29: @ 8034294 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x29 - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x29_29_29_29 - - thumb_func_start dp01_build_cmdbuf_x2A_2A_2A_2A -dp01_build_cmdbuf_x2A_2A_2A_2A: @ 80342B4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x2A - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x2A_2A_2A_2A - - thumb_func_start dp01_build_cmdbuf_x2B_aa_0 -dp01_build_cmdbuf_x2B_aa_0: @ 80342D4 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 16 - lsrs r1, 16 - ldr r3, =gUnknown_02022D10 - movs r4, 0 - movs r2, 0x2B - strb r2, [r3] - strb r1, [r3, 0x1] - lsrs r1, 8 - strb r1, [r3, 0x2] - strb r4, [r3, 0x3] - adds r1, r3, 0 - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x2B_aa_0 - - thumb_func_start sub_8034300 -sub_8034300: @ 8034300 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 16 - lsrs r1, 16 - ldr r4, =gUnknown_02022D10 - movs r3, 0x2C - strb r3, [r4] - strb r1, [r4, 0x1] - lsrs r1, 8 - strb r1, [r4, 0x2] - strb r2, [r4, 0x3] - adds r1, r4, 0 - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8034300 - - thumb_func_start dp01_build_cmdbuf_x2D_2D_2D_2D -dp01_build_cmdbuf_x2D_2D_2D_2D: @ 803432C - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x2D - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x2D_2D_2D_2D - - thumb_func_start dp01_build_cmdbuf_x2E_a -dp01_build_cmdbuf_x2E_a: @ 803434C - push {lr} - adds r3, r1, 0 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x2E - strb r2, [r1] - strb r3, [r1, 0x1] - movs r2, 0x2 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x2E_a - - thumb_func_start dp01_build_cmdbuf_x2F_2F_2F_2F -dp01_build_cmdbuf_x2F_2F_2F_2F: @ 803436C - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x2F - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x2F_2F_2F_2F - - thumb_func_start dp01_build_cmdbuf_x30_TODO -dp01_build_cmdbuf_x30_TODO: @ 803438C - push {r4,r5,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r5, r0, 24 - lsls r2, 24 - lsrs r2, 24 - ldr r1, =gUnknown_02022D10 - movs r3, 0x30 - strb r3, [r1] - movs r0, 0x7F - ands r0, r2 - strb r0, [r1, 0x1] - movs r0, 0x80 - ands r0, r2 - lsls r0, 24 - lsrs r0, 31 - strb r0, [r1, 0x2] - strb r3, [r1, 0x3] - movs r2, 0 - adds r3, r1, 0x4 -_080343B4: - adds r0, r4, r2 - ldrb r0, [r0] - strb r0, [r3] - adds r3, 0x1 - adds r2, 0x1 - cmp r2, 0x2F - ble _080343B4 - adds r0, r5, 0 - movs r2, 0x34 - bl dp01_prepare_buffer - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x30_TODO - - thumb_func_start dp01_build_cmdbuf_x31_31_31_31 -dp01_build_cmdbuf_x31_31_31_31: @ 80343D4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x31 - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x31_31_31_31 - - thumb_func_start dp01_build_cmdbuf_x32_32_32_32 -dp01_build_cmdbuf_x32_32_32_32: @ 80343F4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x32 - strb r2, [r1] - strb r2, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x32_32_32_32 - - thumb_func_start dp01_build_cmdbuf_x33_a_33_33 -dp01_build_cmdbuf_x33_a_33_33: @ 8034414 - push {lr} - adds r3, r1, 0 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x33 - strb r2, [r1] - strb r3, [r1, 0x1] - strb r2, [r1, 0x2] - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x33_a_33_33 - - thumb_func_start dp01_build_cmdbuf_x34_a_bb_aka_battle_anim -dp01_build_cmdbuf_x34_a_bb_aka_battle_anim: @ 8034438 - push {r4,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r2, 16 - lsrs r2, 16 - ldr r1, =gUnknown_02022D10 - movs r3, 0x34 - strb r3, [r1] - strb r4, [r1, 0x1] - strb r2, [r1, 0x2] - lsrs r2, 8 - strb r2, [r1, 0x3] - movs r2, 0x4 - bl dp01_prepare_buffer - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x34_a_bb_aka_battle_anim - - thumb_func_start sub_8034464 -sub_8034464: @ 8034464 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r2, 24 - lsrs r2, 24 - ldr r4, =gUnknown_02022D10 - movs r0, 0x35 - strb r0, [r4] - strb r1, [r4, 0x1] - cmp r2, 0 - beq _0803448C - adds r0, r4, 0x4 - bl sub_81850DC - strb r0, [r4, 0x2] - strb r0, [r4, 0x3] - b _08034490 - .pool -_0803448C: - strb r2, [r4, 0x2] - strb r2, [r4, 0x3] -_08034490: - ldr r1, =gUnknown_02022D10 - ldrb r2, [r1, 0x2] - adds r2, 0x4 - adds r0, r5, 0 - bl dp01_prepare_buffer - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8034464 - - thumb_func_start dp01_build_cmdbuf_x38_a -dp01_build_cmdbuf_x38_a: @ 80344A8 - push {lr} - adds r3, r1, 0 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_02022D10 - movs r2, 0x36 - strb r2, [r1] - strb r3, [r1, 0x1] - movs r2, 0x2 - bl dp01_prepare_buffer - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x38_a - - thumb_func_start dp01_build_cmdbuf_x37_a -dp01_build_cmdbuf_x37_a: @ 80344C8 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r4, =gUnknown_02022D10 - movs r0, 0x37 - strb r0, [r4] - strb r1, [r4, 0x1] - ldr r0, =gSaveBlock2Ptr - ldr r1, [r0] - ldr r0, =0x00000ca9 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 28 - lsrs r0, 31 - strb r0, [r4, 0x2] - ldrb r0, [r1] - lsls r0, 28 - lsrs r0, 31 - strb r0, [r4, 0x3] - adds r0, r4, 0x6 - bl sub_81850DC - strb r0, [r4, 0x4] - strb r0, [r4, 0x5] - ldrb r2, [r4, 0x4] - adds r2, 0x6 - adds r0, r5, 0 - adds r1, r4, 0 - bl dp01_prepare_buffer - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end dp01_build_cmdbuf_x37_a - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/rom4.s b/asm/rom4.s index 9fb9e2bd6..bf682fc51 100644 --- a/asm/rom4.s +++ b/asm/rom4.s @@ -36,15 +36,15 @@ flag_var_implications_of_teleport_: @ 8084660 push {lr} bl player_avatar_init_params_reset ldr r0, =0x0000088b - bl FlagReset + bl FlagClear ldr r0, =0x0000088d - bl FlagReset + bl FlagClear ldr r0, =0x0000088c - bl FlagReset + bl FlagClear ldr r0, =0x00000889 - bl FlagReset + bl FlagClear ldr r0, =0x00000888 - bl FlagReset + bl FlagClear pop {r0} bx r0 .pool @@ -55,15 +55,15 @@ sub_808469C: @ 808469C push {lr} bl player_avatar_init_params_reset ldr r0, =0x0000088b - bl FlagReset + bl FlagClear ldr r0, =0x0000088d - bl FlagReset + bl FlagClear ldr r0, =0x0000088c - bl FlagReset + bl FlagClear ldr r0, =0x00000889 - bl FlagReset + bl FlagClear ldr r0, =0x00000888 - bl FlagReset + bl FlagClear ldr r0, =gUnknown_08271862 bl ScriptContext2_RunNewScript pop {r0} @@ -76,15 +76,15 @@ flagmods_08054D70: @ 80846E4 push {lr} bl player_avatar_init_params_reset ldr r0, =0x0000088b - bl FlagReset + bl FlagClear ldr r0, =0x0000088d - bl FlagReset + bl FlagClear ldr r0, =0x0000088c - bl FlagReset + bl FlagClear ldr r0, =0x00000889 - bl FlagReset + bl FlagClear ldr r0, =0x00000888 - bl FlagReset + bl FlagClear pop {r0} bx r0 .pool @@ -95,15 +95,15 @@ sub_8084720: @ 8084720 push {r4,lr} bl player_avatar_init_params_reset ldr r0, =0x0000088b - bl FlagReset + bl FlagClear ldr r0, =0x0000088d - bl FlagReset + bl FlagClear ldr r0, =0x0000088c - bl FlagReset + bl FlagClear ldr r0, =0x00000889 - bl FlagReset + bl FlagClear ldr r0, =0x00000888 - bl FlagReset + bl FlagClear ldr r4, =0x00004039 adds r0, r4, 0 bl VarGet @@ -128,7 +128,7 @@ _08084764: sub_8084788: @ 8084788 push {lr} ldr r0, =0x0000088c - bl FlagReset + bl FlagClear bl sub_8085B2C bl wild_pokemon_reroll bl UpdateLocationHistoryForRoamer @@ -324,8 +324,8 @@ _080848F4: .pool thumb_func_end CopyFieldObjectTemplateCoordsToSav1 - thumb_func_start update_saveblock1_field_object_coords -update_saveblock1_field_object_coords: @ 8084910 + thumb_func_start Overworld_SetMapObjTemplateCoords +Overworld_SetMapObjTemplateCoords: @ 8084910 push {r4-r6,lr} lsls r0, 24 lsrs r5, r0, 24 @@ -356,10 +356,10 @@ _08084944: pop {r4-r6} pop {r0} bx r0 - thumb_func_end update_saveblock1_field_object_coords + thumb_func_end Overworld_SetMapObjTemplateCoords - thumb_func_start update_saveblock1_field_object_movement_behavior -update_saveblock1_field_object_movement_behavior: @ 808494C + thumb_func_start Overworld_SetMapObjTemplateMovementType +Overworld_SetMapObjTemplateMovementType: @ 808494C push {r4,r5,lr} lsls r0, 24 lsrs r4, r0, 24 @@ -387,7 +387,7 @@ _08084978: pop {r4,r5} pop {r0} bx r0 - thumb_func_end update_saveblock1_field_object_movement_behavior + thumb_func_end Overworld_SetMapObjTemplateMovementType thumb_func_start mapdata_load_assets_to_gpu_and_full_redraw mapdata_load_assets_to_gpu_and_full_redraw: @ 8084980 @@ -710,9 +710,9 @@ warp_in: @ 8084BD8 bx r0 thumb_func_end warp_in - thumb_func_start warp1_set -@ void warp1_set(char bank, char map, char warpid, char enter_x, char enter_y) -warp1_set: @ 8084BEC + thumb_func_start Overworld_SetWarpDestination +@ void Overworld_SetWarpDestination(char bank, char map, char warpid, char enter_x, char enter_y) +Overworld_SetWarpDestination: @ 8084BEC push {r4-r6,lr} sub sp, 0x8 adds r4, r0, 0 @@ -741,7 +741,7 @@ warp1_set: @ 8084BEC pop {r0} bx r0 .pool - thumb_func_end warp1_set + thumb_func_end Overworld_SetWarpDestination thumb_func_start warp1_set_2 @ void warp1_set_2(char bank, char map, char warpid) @@ -757,7 +757,7 @@ warp1_set_2: @ 8084C28 movs r3, 0x1 negs r3, r3 str r3, [sp] - bl warp1_set + bl Overworld_SetWarpDestination add sp, 0x4 pop {r0} bx r0 @@ -857,7 +857,7 @@ sub_8084CCC: @ 8084CCC lsls r4, 24 asrs r4, 24 str r4, [sp] - bl warp1_set + bl Overworld_SetWarpDestination _08084CFA: add sp, 0x4 pop {r4} @@ -879,8 +879,8 @@ copy_saved_warp3_bank_and_enter_x_to_warp1: @ 8084D04 .pool thumb_func_end copy_saved_warp3_bank_and_enter_x_to_warp1 - thumb_func_start sub_8084D1C -sub_8084D1C: @ 8084D1C + thumb_func_start Overworld_SetHealLocationWarp +Overworld_SetHealLocationWarp: @ 8084D1C push {r4,r5,lr} sub sp, 0x8 lsls r0, 24 @@ -911,7 +911,7 @@ _08084D50: pop {r0} bx r0 .pool - thumb_func_end sub_8084D1C + thumb_func_end Overworld_SetHealLocationWarp thumb_func_start sub_8084D5C sub_8084D5C: @ 8084D5C @@ -1126,7 +1126,7 @@ _08084EF0: lsls r4, r6, 24 asrs r4, 24 str r4, [sp] - bl warp1_set + bl Overworld_SetWarpDestination _08084F0A: add sp, 0x4 pop {r4-r6} @@ -1289,7 +1289,7 @@ sub_8084FF8: @ 8084FF8 lsls r4, r5, 24 asrs r4, 24 str r4, [sp] - bl warp1_set + bl Overworld_SetWarpDestination b _0808504C _08085030: bl mapheader_run_script_with_tag_x6 @@ -1365,7 +1365,7 @@ mliX_load_map: @ 8085098 negs r3, r3 str r3, [sp] adds r2, r3, 0 - bl warp1_set + bl Overworld_SetWarpDestination ldr r4, =gMapHeader ldrb r0, [r4, 0x14] cmp r0, 0x3A @@ -1375,14 +1375,14 @@ _080850C8: bl warp_shift bl set_current_map_header_from_sav1_save_old_name bl CopyFieldObjectTemplatesToSav1 - bl sav2_set_x9_depending_on_sav1_map + bl TrySetMapSaveWarpStatus bl ClearTempFieldEventData bl wild_pokemon_reroll bl prev_quest_postbuffer_cursor_backup_reset adds r0, r6, 0 adds r1, r5, 0 bl sub_80B21B4 - bl sub_809E7B0 + bl DoTimeBasedEvents bl sub_80AEDBC bl sub_8085B2C bl update_sav1_flash_used_on_map @@ -1404,7 +1404,7 @@ _08085116: bl sub_80A0A2C bl UpdateLocationHistoryForRoamer bl RoamerMove - bl sub_80AEE20 + bl DoCurrentWeather bl wild_encounter_reset_coro_args bl mapheader_run_script_with_tag_x5 ldr r2, =gMapHeader @@ -1463,7 +1463,7 @@ _080851A2: lsls r0, 24 lsrs r6, r0, 24 bl sub_80EB218 - bl sav2_set_x9_depending_on_sav1_map + bl TrySetMapSaveWarpStatus bl ClearTempFieldEventData bl wild_pokemon_reroll bl prev_quest_postbuffer_cursor_backup_reset @@ -1481,14 +1481,14 @@ _080851A2: bl sub_80B21B4 cmp r7, 0x1 beq _080851EE - bl sub_809E7B0 + bl DoTimeBasedEvents _080851EE: bl sub_80AEDBC bl sub_8085B2C cmp r5, 0 beq _08085200 ldr r0, =0x00000888 - bl FlagReset + bl FlagClear _08085200: bl update_sav1_flash_used_on_map bl sav1_reset_battle_music_maybe @@ -1699,19 +1699,19 @@ _080853AC: lsls r4, 24 lsrs r5, r4, 24 adds r0, r5, 0 - bl sub_8088F74 + bl MetatileBehavior_IsDeepSouthWarp lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _080853E8 adds r0, r5, 0 - bl sub_8088F58 + bl MetatileBehavior_IsNonAnimDoor lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _08085442 adds r0, r5, 0 - bl sub_8088EFC + bl MetatileBehavior_IsDoor lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1858,8 +1858,8 @@ _080854DE: .pool thumb_func_end update_sav1_flash_used_on_map - thumb_func_start sub_80854EC -sub_80854EC: @ 80854EC + thumb_func_start Overworld_SetFlashLevel +Overworld_SetFlashLevel: @ 80854EC push {lr} adds r1, r0, 0 cmp r1, 0 @@ -1878,7 +1878,7 @@ _080854FE: pop {r0} bx r0 .pool - thumb_func_end sub_80854EC + thumb_func_end Overworld_SetFlashLevel thumb_func_start sav1_get_flash_used_on_map sav1_get_flash_used_on_map: @ 8085514 @@ -2263,14 +2263,14 @@ _080857E8: .pool thumb_func_end sub_8085784 - thumb_func_start sav1_set_battle_music_maybe -sav1_set_battle_music_maybe: @ 80857F4 + thumb_func_start Overworld_SetSavedMusic +Overworld_SetSavedMusic: @ 80857F4 ldr r1, =gSaveBlock1Ptr ldr r1, [r1] strh r0, [r1, 0x2C] bx lr .pool - thumb_func_end sav1_set_battle_music_maybe + thumb_func_end Overworld_SetSavedMusic thumb_func_start sav1_reset_battle_music_maybe sav1_reset_battle_music_maybe: @ 8085800 @@ -2339,8 +2339,8 @@ _08085890: bx r0 thumb_func_end sub_8085810 - thumb_func_start sub_8085898 -sub_8085898: @ 8085898 + thumb_func_start Overworld_ChangeMusicToDefault +Overworld_ChangeMusicToDefault: @ 8085898 push {r4,lr} bl GetCurrentMapMusic adds r4, r0, 0 @@ -2360,10 +2360,10 @@ _080858BE: pop {r4} pop {r0} bx r0 - thumb_func_end sub_8085898 + thumb_func_end Overworld_ChangeMusicToDefault - thumb_func_start sub_80858C4 -sub_80858C4: @ 80858C4 + thumb_func_start Overworld_ChangeMusicTo +Overworld_ChangeMusicTo: @ 80858C4 push {r4,lr} lsls r0, 16 lsrs r4, r0, 16 @@ -2383,7 +2383,7 @@ _080858E4: pop {r0} bx r0 .pool - thumb_func_end sub_80858C4 + thumb_func_end Overworld_ChangeMusicTo thumb_func_start is_warp1_light_level_8_or_9 is_warp1_light_level_8_or_9: @ 80858F0 @@ -3175,7 +3175,7 @@ CB2_NewGame: @ 8085EF8 bl ScriptContext1_Init bl ScriptContext2_Disable ldr r1, =gFieldCallback - ldr r0, =sub_80FB4E0 + ldr r0, =ExecuteTruckSequence str r0, [r1] ldr r1, =gUnknown_03005DB0 movs r0, 0 @@ -3525,8 +3525,8 @@ _08086278: _08086286: bl CopyFieldObjectTemplateCoordsToSav1 _0808628A: - bl sub_809757C - bl sub_809E7B0 + bl UnfreezeMapObjects + bl DoTimeBasedEvents bl sub_8084788 ldr r0, =gMapHeader ldrh r1, [r0, 0x12] @@ -3640,7 +3640,7 @@ VBlankCB_Field: @ 8086390 bl sub_80BA0A8 bl FieldUpdateBgTilemapScroll bl TransferPlttBuffer - bl sub_80A09D0 + bl TransferTilesetAnimsBuffer pop {r0} bx r0 thumb_func_end VBlankCB_Field diff --git a/asm/rom6.s b/asm/rom6.s index b18ec1b3e..b729369c8 100644 --- a/asm/rom6.s +++ b/asm/rom6.s @@ -167,7 +167,7 @@ sub_8135578: @ 8135578 cmp r4, 0 bne _081355FC bl player_get_direction_lower_nybble - ldr r6, =gFieldEffectSpawnParams + ldr r6, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r6, 0x4] @@ -258,7 +258,7 @@ sub_813561C: @ 813561C thumb_func_start sub_8135654 sub_8135654: @ 8135654 push {r4,lr} - bl sub_81797DC + bl ShouldDoBrailleStrengthEffect lsls r0, 24 cmp r0, 0 beq _0813568C @@ -303,7 +303,7 @@ _081356AC: sub_81356C4: @ 81356C4 push {lr} bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r1] @@ -380,7 +380,7 @@ hm2_dig: @ 8135760 movs r0, 0x26 bl FieldEffectStart bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r1] @@ -404,7 +404,7 @@ sub_8135780: @ 8135780 lsrs r0, r2, 16 strh r0, [r1, 0x18] strh r2, [r1, 0x1A] - bl sub_81795E8 + bl ShouldDoBrailleDigEffect lsls r0, 24 cmp r0, 0 bne _081357AC @@ -422,12 +422,12 @@ sub_81357BC: @ 81357BC push {r4,lr} movs r0, 0x26 bl FieldEffectActiveListRemove - bl sub_81795E8 + bl ShouldDoBrailleDigEffect lsls r0, 24 lsrs r4, r0, 24 cmp r4, 0 beq _081357D6 - bl sub_817963C + bl DoBrailleDigEffect b _081357EE _081357D6: ldr r0, =task08_080A1C44 @@ -3329,7 +3329,7 @@ _081370E2: thumb_func_start sub_81370FC sub_81370FC: @ 81370FC push {r4,lr} - bl sub_81798D0 + bl ShouldDoBrailleFlyEffect lsls r0, 24 cmp r0, 0 beq _08137134 @@ -3381,7 +3381,7 @@ hm2_flash: @ 8137178 lsls r4, 24 lsrs r4, 24 bl brm_get_pokemon_selection - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments lsls r0, 24 lsrs r0, 24 str r0, [r1] @@ -4121,7 +4121,7 @@ _081377BC: add r2, sp, 0x18 bl SetMonData adds r0, r4, 0 - bl sub_80EE5A4 + bl GetRibbonCount strb r0, [r5, 0x1] movs r7, 0x1 _0813780A: @@ -4337,7 +4337,7 @@ sub_8137988: @ 8137988 .pool _081379C8: ldr r0, =0x0000089a - bl FlagReset + bl FlagClear _081379CE: pop {r0} bx r0 @@ -4629,7 +4629,7 @@ sub_8137C10: @ 8137C10 ldr r0, =gSpecialVar_0x8004 ldrh r0, [r0] bl sub_8137A98 - bl box_related_two__2 + bl ShowFieldMessage pop {r0} bx r0 .pool @@ -4705,7 +4705,7 @@ _08137CAC: thumb_func_start sub_8137CB4 sub_8137CB4: @ 8137CB4 push {lr} - ldr r0, =sub_8177888 + ldr r0, =CB2_ShowDiploma bl SetMainCallback2 bl ScriptContext2_Enable pop {r0} @@ -5030,7 +5030,7 @@ _08137F6E: movs r1, 0 bl VarSet movs r0, 0 - bl sav1_set_battle_music_maybe + bl Overworld_SetSavedMusic _08137F7C: pop {r4} pop {r0} @@ -5056,14 +5056,14 @@ sub_8137F90: @ 8137F90 sub_8137FB0: @ 8137FB0 push {lr} ldr r0, =0x0000088d - bl FlagReset + bl FlagClear pop {r0} bx r0 .pool thumb_func_end sub_8137FB0 - thumb_func_start sub_8137FC0 -sub_8137FC0: @ 8137FC0 + thumb_func_start CountSSTidalStep +CountSSTidalStep: @ 8137FC0 push {r4,lr} lsls r0, 16 lsrs r4, r0, 16 @@ -5091,10 +5091,10 @@ _08137FF6: pop {r4} pop {r1} bx r1 - thumb_func_end sub_8137FC0 + thumb_func_end CountSSTidalStep - thumb_func_start sub_8137FFC -sub_8137FFC: @ 8137FFC + thumb_func_start GetSSTidalLocation +GetSSTidalLocation: @ 8137FFC push {r4-r7,lr} mov r7, r8 push {r7} @@ -5203,7 +5203,7 @@ _081380CE: pop {r4-r7} pop {r1} bx r1 - thumb_func_end sub_8137FFC + thumb_func_end GetSSTidalLocation thumb_func_start is_tile_that_overrides_player_control is_tile_that_overrides_player_control: @ 81380D8 @@ -5399,13 +5399,13 @@ sub_8138240: @ 8138240 bl GetMultiplayerId lsls r0, 24 lsrs r7, r0, 24 - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r5, r0, 24 movs r4, 0 cmp r4, r5 bcs _0813828A - ldr r0, =gUnknown_0858D144 + ldr r0, =gTVStringVarPtrs mov r8, r0 _08138262: cmp r7, r4 @@ -6378,7 +6378,7 @@ sub_8138AA4: @ 8138AA4 sub_8138AC0: @ 8138AC0 push {lr} ldr r0, =gStringVar4 - bl box_related_two__2 + bl ShowFieldMessage pop {r0} bx r0 .pool @@ -6485,7 +6485,7 @@ sub_8138B8C: @ 8138B8C movs r0, 0x13 movs r1, 0 movs r3, 0x6 - bl warp1_set + bl Overworld_SetWarpDestination b _08138BC2 .pool _08138BB0: @@ -6496,7 +6496,7 @@ _08138BB0: movs r0, 0x13 movs r1, 0x1 movs r3, 0x6 - bl warp1_set + bl Overworld_SetWarpDestination _08138BC2: add sp, 0x4 pop {r0} @@ -6537,7 +6537,7 @@ _08138BF6: thumb_func_start sub_8138C04 sub_8138C04: @ 8138C04 push {r4,lr} - bl sub_8139688 + bl GetLeadMonIndex lsls r0, 24 lsrs r0, 24 movs r1, 0x64 @@ -7051,7 +7051,7 @@ sub_8138FEC: @ 8138FEC ldr r1, =gSpecialVar_0x8004 ldr r0, =0x000001f5 strh r0, [r1] - bl FlagReset + bl FlagClear pop {r0} bx r0 .pool @@ -7060,7 +7060,7 @@ sub_8138FEC: @ 8138FEC thumb_func_start sub_8139004 sub_8139004: @ 8139004 push {lr} - bl sub_8139688 + bl GetLeadMonIndex lsls r0, 24 lsrs r0, 24 movs r1, 0x64 @@ -7084,7 +7084,7 @@ _0813902A: thumb_func_start sub_8139030 sub_8139030: @ 8139030 push {lr} - bl sub_8139688 + bl GetLeadMonIndex lsls r0, 24 lsrs r0, 24 movs r1, 0x64 @@ -7108,7 +7108,7 @@ _08139056: thumb_func_start sub_813905C sub_813905C: @ 813905C push {lr} - bl sub_8139688 + bl GetLeadMonIndex lsls r0, 24 lsrs r0, 24 movs r1, 0x64 @@ -7132,7 +7132,7 @@ _08139082: thumb_func_start sub_8139088 sub_8139088: @ 8139088 push {lr} - bl sub_8139688 + bl GetLeadMonIndex lsls r0, 24 lsrs r0, 24 movs r1, 0x64 @@ -7156,7 +7156,7 @@ _081390AE: thumb_func_start sub_81390B4 sub_81390B4: @ 81390B4 push {lr} - bl sub_8139688 + bl GetLeadMonIndex lsls r0, 24 lsrs r0, 24 movs r1, 0x64 @@ -7295,7 +7295,7 @@ RemoveScriptFieldObject: @ 81391AC thumb_func_start sub_81391D0 sub_81391D0: @ 81391D0 push {lr} - bl sub_8139688 + bl GetLeadMonIndex lsls r0, 24 lsrs r0, 24 movs r1, 0x64 @@ -7347,7 +7347,7 @@ sub_8139228: @ 8139228 sub_8139238: @ 8139238 push {lr} ldr r0, =gStringVar1 - bl sub_8165284 + bl GetEreaderTrainerName pop {r0} bx r0 .pool @@ -7479,7 +7479,7 @@ _08139342: thumb_func_start sub_8139348 sub_8139348: @ 8139348 push {lr} - bl sub_8139688 + bl GetLeadMonIndex lsls r0, 24 lsrs r0, 24 movs r1, 0x64 @@ -7507,7 +7507,7 @@ sub_8139370: @ 8139370 movs r1, 0x1 mov r0, sp strb r1, [r0] - bl sub_8139688 + bl GetLeadMonIndex lsls r0, 24 lsrs r0, 24 movs r1, 0x64 @@ -7519,7 +7519,7 @@ sub_8139370: @ 8139370 mov r2, sp bl SetMonData adds r0, r4, 0 - bl sub_80EE5A4 + bl GetRibbonCount lsls r0, 24 lsrs r0, 24 cmp r0, 0x4 @@ -7538,7 +7538,7 @@ _081393B6: thumb_func_start sub_81393C8 sub_81393C8: @ 81393C8 push {lr} - bl sub_8139688 + bl GetLeadMonIndex lsls r0, 24 lsrs r0, 24 movs r1, 0x64 @@ -7858,7 +7858,7 @@ sub_8139648: @ 8139648 cmp r0, 0x1 beq _08139664 movs r0, 0x14 - bl sub_80AED7C + bl SetSav1Weather _08139664: pop {r0} bx r0 @@ -7876,14 +7876,14 @@ sub_8139668: @ 8139668 cmp r0, 0x1 beq _08139684 movs r0, 0x15 - bl sub_80AED7C + bl SetSav1Weather _08139684: pop {r0} bx r0 thumb_func_end sub_8139668 - thumb_func_start sub_8139688 -sub_8139688: @ 8139688 + thumb_func_start GetLeadMonIndex +GetLeadMonIndex: @ 8139688 push {r4-r6,lr} bl CalculatePlayerPartyCount lsls r0, 24 @@ -7926,7 +7926,7 @@ _081396D8: pop {r4-r6} pop {r1} bx r1 - thumb_func_end sub_8139688 + thumb_func_end GetLeadMonIndex thumb_func_start sub_81396E0 sub_81396E0: @ 81396E0 @@ -8050,7 +8050,7 @@ sub_81397C4: @ 81397C4 cmp r1, r0 bls _081397E0 movs r0, 0 - bl sub_80EF340 + bl TV_PrintIntToStringVar b _08139862 .pool _081397E0: @@ -9094,7 +9094,7 @@ _0813A062: lsls r0, 2 adds r0, r7 ldr r0, [r0] - bl box_related_two__2 + bl ShowFieldMessage pop {r4-r7} pop {r0} bx r0 @@ -9996,7 +9996,7 @@ _0813A7C6: lsrs r0, 22 adds r0, r1 ldr r0, [r0] - bl box_related_two__2 + bl ShowFieldMessage pop {r0} bx r0 .pool @@ -10036,7 +10036,7 @@ sub_813A820: @ 813A820 lsls r0, r4, 2 adds r0, r1 ldr r0, [r0] - bl box_related_two__2 + bl ShowFieldMessage ldr r0, =0x00004031 adds r1, r4, 0 bl VarSet @@ -10056,7 +10056,7 @@ sub_813A854: @ 813A854 lsrs r0, 14 adds r0, r4 ldr r0, [r0] - bl box_related_two__2 + bl ShowFieldMessage pop {r4} pop {r0} bx r0 @@ -11039,7 +11039,7 @@ _0813B0F8: ldr r0, =sub_813B160 movs r1, 0x8 bl CreateTask - ldr r3, =gFieldEffectSpawnParams + ldr r3, =gFieldEffectArguments movs r0, 0x1 str r0, [r3] movs r0, 0x3A @@ -11074,7 +11074,7 @@ _0813B13A: adds r0, r5, r0 ldrb r2, [r0] movs r0, 0x1 - bl update_saveblock1_field_object_coords + bl Overworld_SetMapObjTemplateCoords add sp, 0x4 pop {r4,r5} pop {r0} @@ -11238,7 +11238,7 @@ _0813B27E: cmp r0, r4 beq _0813B2A6 ldr r0, =0x000008d7 - bl FlagReset + bl FlagClear _0813B2A6: ldr r0, =0x00004036 lsrs r1, r7, 16 @@ -11564,7 +11564,7 @@ sub_813B534: @ 813B534 str r0, [r2] movs r0, 0 str r0, [r1] - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0813B552 @@ -11651,11 +11651,11 @@ _0813B5FE: lsrs r0, 24 ldr r1, =gSpecialVar_0x8004 movs r2, 0x2 - bl link_0800A448 + bl SendBlock b _0813B708 .pool _0813B614: - bl sub_800A550 + bl GetBlockReceivedStatus movs r1, 0x2 ands r1, r0 cmp r1, 0 @@ -11669,14 +11669,14 @@ _0813B622: b _0813B790 _0813B62E: ldr r5, =gSpecialVar_0x8005 - ldr r0, =gUnknown_020223C4 + ldr r0, =gBlockRecvBuffer movs r1, 0x80 lsls r1, 1 adds r0, r1 ldrh r0, [r0] strh r0, [r5] movs r0, 0x1 - bl sub_800A5EC + bl ResetBlockReceivedFlag ldr r0, =gSpecialVar_0x8004 ldrh r0, [r0] cmp r0, 0x1 @@ -11738,11 +11738,11 @@ _0813B6C2: lsrs r0, 24 ldr r1, =gScriptResult movs r2, 0x2 - bl link_0800A448 + bl SendBlock b _0813B708 .pool _0813B6E4: - bl sub_800A550 + bl GetBlockReceivedStatus movs r1, 0x1 ands r1, r0 cmp r1, 0 @@ -11752,11 +11752,11 @@ _0813B6E4: cmp r0, 0 beq _0813B790 ldr r1, =gScriptResult - ldr r0, =gUnknown_020223C4 + ldr r0, =gBlockRecvBuffer ldrh r0, [r0] strh r0, [r1] movs r0, 0 - bl sub_800A5EC + bl ResetBlockReceivedFlag _0813B708: ldr r1, =gTasks lsls r0, r4, 2 @@ -11778,7 +11778,7 @@ _0813B728: cmp r0, 0x2 bne _0813B790 ldr r0, =gUnknown_0824979B - bl box_related_two__3 + bl ShowFieldAutoScrollMessage b _0813B790 .pool _0813B74C: @@ -11787,7 +11787,7 @@ _0813B74C: cmp r0, 0x3 bne _0813B790 ldr r0, =gUnknown_0824979B - bl box_related_two__3 + bl ShowFieldAutoScrollMessage b _0813B790 .pool _0813B764: @@ -12075,7 +12075,7 @@ sub_813B9A0: @ 813B9A0 cmp r1, r0 bne _0813B9B6 movs r0, 0x3 - bl sub_8084D1C + bl Overworld_SetHealLocationWarp _0813B9B6: pop {r0} bx r0 @@ -12187,16 +12187,16 @@ sub_813BA60: @ 813BA60 adds r1, r2 strh r0, [r1] ldr r0, =0x00000315 - bl FlagReset + bl FlagClear ldr r0, =0x00000316 - bl FlagReset + bl FlagClear ldr r0, =0x00000317 - bl FlagReset + bl FlagClear movs r0, 0xC6 lsls r0, 2 - bl FlagReset + bl FlagClear ldr r0, =0x000002da - bl FlagReset + bl FlagClear ldr r0, =0x00004095 movs r1, 0x1 bl VarSet diff --git a/asm/rom_80A5C6C.s b/asm/rom_80A5C6C.s index ea75d4e2b..bf273ac53 100644 --- a/asm/rom_80A5C6C.s +++ b/asm/rom_80A5C6C.s @@ -74,7 +74,7 @@ _080A5D00: lsls r0, 24 cmp r0, 0 beq _080A5D28 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0x18] ldrb r1, [r2, 0x4] @@ -94,7 +94,7 @@ _080A5D28: lsls r0, 24 cmp r0, 0 beq _080A5D60 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0] lsls r0, r5, 2 @@ -112,7 +112,7 @@ _080A5D28: b _080A5D7E .pool _080A5D60: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0] lsls r0, r5, 2 @@ -180,7 +180,7 @@ _080A5DDA: lsls r0, 24 cmp r0, 0 beq _080A5E04 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0x18] ldrb r1, [r2, 0x4] @@ -195,7 +195,7 @@ _080A5E00: ldr r2, [r2, 0x8] b _080A5E42 _080A5E04: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0] lsls r1, r4, 2 @@ -285,7 +285,7 @@ _080A5EC0: _080A5EC8: cmp r5, 0xC9 bne _080A5F58 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0] lsls r1, r4, 2 @@ -344,7 +344,7 @@ _080A5F44: lsls r0, 16 lsrs r0, 16 _080A5F4E: - ldr r1, =gUnknown_08300D38 + ldr r1, =gMonFrontPicCoords lsls r0, 2 b _080A5F90 .pool @@ -352,7 +352,7 @@ _080A5F58: ldr r0, =0x00000181 cmp r5, r0 bne _080A5F7C - ldr r0, =gUnknown_08525F78 + ldr r0, =gCastformFrontSpriteCoords ldr r1, =gBattleMonForms adds r1, r4, r1 ldrb r1, [r1] @@ -366,11 +366,11 @@ _080A5F7C: lsls r0, 1 cmp r5, r0 bls _080A5F8C - ldr r0, =gUnknown_08300D38 + ldr r0, =gMonFrontPicCoords b _080A5F92 .pool _080A5F8C: - ldr r1, =gUnknown_08300D38 + ldr r1, =gMonFrontPicCoords _080A5F8E: lsls r0, r5, 2 _080A5F90: @@ -419,11 +419,11 @@ _080A5FE8: lsls r0, 1 cmp r4, r0 bls _080A5FF8 - ldr r0, =gUnknown_08305DCC + ldr r0, =gEnemyMonElevation b _080A5FFC .pool _080A5FF8: - ldr r0, =gUnknown_08305DCC + ldr r0, =gEnemyMonElevation adds r0, r7, r0 _080A5FFC: ldrb r5, [r0] @@ -531,7 +531,7 @@ sub_80A60AC: @ 80A60AC lsls r0, 24 cmp r0, 0 beq _080A60E8 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0x18] ldrb r1, [r2, 0x4] @@ -546,7 +546,7 @@ _080A60E4: ldrh r1, [r2] b _080A610E _080A60E8: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0] lsls r0, r4, 2 @@ -554,7 +554,7 @@ _080A60E8: ldrh r0, [r1, 0x2] cmp r0, 0 bne _080A610C - ldr r1, =gUnknown_02038438 + ldr r1, =gAnimSpeciesByBanks lsls r0, r4, 1 adds r0, r1 ldrh r1, [r0] @@ -654,7 +654,7 @@ sub_80A6190: @ 80A6190 lsls r0, 24 cmp r0, 0 beq _080A61E4 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0] lsls r0, r5, 2 @@ -672,7 +672,7 @@ sub_80A6190: @ 80A6190 b _080A6202 .pool _080A61E4: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0] lsls r0, r5, 2 @@ -724,9 +724,9 @@ GetAnimBankSpriteId: @ 80A6240 adds r1, r0, 0 cmp r0, 0 bne _080A6268 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] - bl sub_80A6A90 + bl AnimBankSpriteExists lsls r0, 24 cmp r0, 0 beq _080A62B6 @@ -737,9 +737,9 @@ GetAnimBankSpriteId: @ 80A6240 _080A6268: cmp r0, 0x1 bne _080A6288 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] - bl sub_80A6A90 + bl AnimBankSpriteExists lsls r0, 24 cmp r0, 0 beq _080A62B6 @@ -750,22 +750,22 @@ _080A6268: _080A6288: cmp r1, 0x2 bne _080A62A4 - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r4, 0x2 eors r0, r4 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080A62B6 b _080A62C0 .pool _080A62A4: - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r4, 0x2 eors r0, r4 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 bne _080A62C0 @@ -1242,7 +1242,7 @@ sub_80A65EC: @ 80A65EC ldrh r1, [r4, 0x22] adds r0, r1 strh r0, [r4, 0x34] - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -1421,7 +1421,7 @@ move_anim_8074EE0: @ 80A674C adds r4, r0, 0 bl FreeSpriteOamMatrix adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite pop {r4} pop {r0} bx r0 @@ -1439,7 +1439,7 @@ sub_80A6760: @ 80A6760 ldrh r1, [r4, 0x22] adds r0, r1 strh r0, [r4, 0x34] - ldr r5, =gAnimationBankAttacker + ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -1518,7 +1518,7 @@ sub_80A67F4: @ 80A67F4 movs r1, 0 bl SetGpuReg adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite pop {r4} pop {r0} bx r0 @@ -1537,7 +1537,7 @@ sub_80A6814: @ 80A6814 movs r1, 0 bl SetGpuReg adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r4} pop {r0} bx r0 @@ -1547,7 +1547,7 @@ sub_80A6814: @ 80A6814 sub_80A6838: @ 80A6838 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -1575,13 +1575,13 @@ sub_80A6864: @ 80A6864 lsls r1, 16 lsrs r5, r1, 16 mov r8, r5 - ldr r7, =gAnimationBankAttacker + ldr r7, =gAnimBankAttacker ldrb r0, [r7] movs r1, 0 bl sub_80A5C6C lsls r0, 24 lsrs r6, r0, 24 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0 bl sub_80A5C6C @@ -1729,7 +1729,7 @@ sub_80A6980: @ 80A6980 lsls r1, 24 cmp r1, 0 bne _080A69A8 - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0 bl sub_80A60AC @@ -1765,7 +1765,7 @@ sub_80A69CC: @ 80A69CC lsls r1, 24 cmp r1, 0 bne _080A69F0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 bl sub_80A60AC @@ -1777,7 +1777,7 @@ sub_80A69CC: @ 80A69CC b _080A6A04 .pool _080A69F0: - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A60AC @@ -1810,7 +1810,7 @@ _080A6A04: GetBankSide: @ 80A6A30 lsls r0, 24 lsrs r0, 24 - ldr r1, =gBanksBySide + ldr r1, =gBanksByIdentity adds r0, r1 ldrb r1, [r0] movs r0, 0x1 @@ -1823,15 +1823,15 @@ GetBankSide: @ 80A6A30 GetBankIdentity: @ 80A6A44 lsls r0, 24 lsrs r0, 24 - ldr r1, =gBanksBySide + ldr r1, =gBanksByIdentity adds r0, r1 ldrb r0, [r0] bx lr .pool thumb_func_end GetBankIdentity - thumb_func_start GetBankByPlayerAI -GetBankByPlayerAI: @ 80A6A54 + thumb_func_start GetBankByIdentity +GetBankByIdentity: @ 80A6A54 push {r4,lr} lsls r0, 24 lsrs r3, r0, 24 @@ -1840,7 +1840,7 @@ GetBankByPlayerAI: @ 80A6A54 ldrb r2, [r0] cmp r1, r2 bcs _080A6A7E - ldr r4, =gBanksBySide + ldr r4, =gBanksByIdentity ldrb r0, [r4] cmp r0, r3 beq _080A6A7E @@ -1860,10 +1860,10 @@ _080A6A7E: pop {r1} bx r1 .pool - thumb_func_end GetBankByPlayerAI + thumb_func_end GetBankByIdentity - thumb_func_start sub_80A6A90 -sub_80A6A90: @ 80A6A90 + thumb_func_start AnimBankSpriteExists +AnimBankSpriteExists: @ 80A6A90 push {r4,r5,lr} lsls r0, 24 lsrs r4, r0, 24 @@ -1872,18 +1872,18 @@ sub_80A6A90: @ 80A6A90 lsls r0, 24 cmp r0, 0 beq _080A6ABC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] cmp r0, r4 beq _080A6B0A - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] cmp r0, r4 beq _080A6B0A b _080A6B18 .pool _080A6ABC: - ldr r0, =gBanksBySide + ldr r0, =gBanksByIdentity adds r0, r4, r0 ldrb r0, [r0] cmp r0, 0xFF @@ -1926,17 +1926,17 @@ _080A6B1A: pop {r4,r5} pop {r1} bx r1 - thumb_func_end sub_80A6A90 + thumb_func_end AnimBankSpriteExists - thumb_func_start battle_type_is_double -battle_type_is_double: @ 80A6B20 + thumb_func_start IsDoubleBattle +IsDoubleBattle: @ 80A6B20 ldr r0, =gBattleTypeFlags ldr r0, [r0] movs r1, 0x1 ands r0, r1 bx lr .pool - thumb_func_end battle_type_is_double + thumb_func_end IsDoubleBattle thumb_func_start sub_80A6B30 sub_80A6B30: @ 80A6B30 @@ -2061,9 +2061,9 @@ sub_80A6BFC: @ 80A6BFC b _080A6C60 .pool _080A6C30: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] - bl GetBankIdentity_permutated + bl sub_80A8364 lsls r0, 24 lsrs r1, r0, 24 cmp r1, 0x1 @@ -2271,21 +2271,21 @@ _080A6DBE: movs r0, 0x3 movs r1, 0 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute movs r0, 0x3 movs r1, 0x1 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute b _080A6DE8 _080A6DD4: movs r0, 0x3 movs r1, 0 movs r2, 0x1 - bl lcd_bg_operations + bl SetAnimBgAttribute movs r0, 0x3 movs r1, 0x1 movs r2, 0 - bl lcd_bg_operations + bl SetAnimBgAttribute _080A6DE8: pop {r0} bx r0 @@ -2934,7 +2934,7 @@ sub_80A7270: @ 80A7270 cmp r0, 0 bne _080A72A6 adds r0, r7, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080A72B4 @@ -2976,7 +2976,7 @@ _080A72B4: lsls r0, 30 cmp r0, 0 bne _080A7312 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0, 0x4] lsls r0, r7, 1 @@ -3372,7 +3372,7 @@ _080A75F6: _080A7602: cmp r7, 0 beq _080A7614 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] adds r1, r0, 0 adds r1, 0x10 @@ -3383,7 +3383,7 @@ _080A7614: mov r0, r8 cmp r0, 0 beq _080A7628 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] adds r1, r0, 0 adds r1, 0x10 @@ -3394,11 +3394,11 @@ _080A7628: mov r0, r9 cmp r0, 0 beq _080A764E - ldr r6, =gAnimationBankAttacker + ldr r6, =gAnimBankAttacker ldrb r0, [r6] movs r5, 0x2 eors r0, r5 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080A764E @@ -3413,11 +3413,11 @@ _080A764E: mov r0, r10 cmp r0, 0 beq _080A7674 - ldr r6, =gAnimationBankTarget + ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r5, 0x2 eors r0, r5 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080A7674 @@ -3496,15 +3496,15 @@ _080A76F2: cmp r5, 0 beq _080A771A movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080A771A movs r0, 0 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 adds r0, 0x10 @@ -3514,15 +3514,15 @@ _080A771A: cmp r6, 0 beq _080A7746 movs r0, 0x2 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080A7746 movs r0, 0x2 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 adds r1, r0, 0 @@ -3534,15 +3534,15 @@ _080A7746: cmp r7, 0 beq _080A7772 movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080A7772 movs r0, 0x1 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 adds r1, r0, 0 @@ -3555,15 +3555,15 @@ _080A7772: cmp r0, 0 beq _080A77A0 movs r0, 0x3 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080A77A0 movs r0, 0x3 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 adds r1, r0, 0 @@ -3592,7 +3592,7 @@ sub_80A77B4: @ 80A77B4 push {lr} lsls r0, 24 lsrs r0, 24 - bl GetBankByPlayerAI + bl GetBankByIdentity lsls r0, 24 lsrs r0, 24 pop {r1} @@ -3670,7 +3670,7 @@ _080A7838: _080A7842: adds r0, r5, 0 bl sub_80A69CC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -3682,7 +3682,7 @@ _080A7842: _080A785C: ldrh r0, [r6, 0x8] strh r0, [r5, 0x2E] - ldr r4, =gAnimationBankTarget + ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -3701,7 +3701,7 @@ _080A785C: strh r0, [r5, 0x36] ldr r0, =sub_80A6EEC str r0, [r5, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 pop {r4-r7} @@ -3716,7 +3716,7 @@ sub_80A78AC: @ 80A78AC adds r6, r0, 0 movs r1, 0x1 bl sub_80A69CC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -3730,7 +3730,7 @@ _080A78CC: ldr r4, =gBattleAnimArgs ldrh r0, [r4, 0x8] strh r0, [r6, 0x2E] - ldr r5, =gAnimationBankTarget + ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 bl sub_80A5C6C @@ -3768,7 +3768,7 @@ sub_80A791C: @ 80A791C cmp r0, 0 beq _080A7930 adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080A7930: pop {r4} pop {r0} @@ -3799,17 +3799,17 @@ _080A7954: adds r0, r5, 0 adds r1, r4, 0 bl sub_80A69CC - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker b _080A7976 .pool _080A796C: adds r0, r5, 0 adds r1, r4, 0 bl sub_80A6980 - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget _080A7976: ldrb r6, [r0] - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -3844,7 +3844,7 @@ _080A798E: strh r0, [r5, 0x36] ldr r0, =sub_80A6EEC str r0, [r5, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r5, 0 bl StoreSpriteCallbackInData6 pop {r4-r7} @@ -4070,7 +4070,7 @@ _080A7B60: cmp r1, r0 bne _080A7B90 adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _080A7B90: pop {r4,r5} pop {r0} @@ -4090,7 +4090,7 @@ sub_80A7B98: @ 80A7B98 cmp r3, 0xFF bne _080A7BBC adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _080A7BE2 .pool _080A7BBC: @@ -4210,7 +4210,7 @@ _080A7C78: b _080A7CAC _080A7CA6: adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _080A7CAC: pop {r4,r5} pop {r0} @@ -4230,7 +4230,7 @@ sub_80A7CB4: @ 80A7CB4 cmp r2, 0xFF bne _080A7CD8 adds r0, r4, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask b _080A7CEE .pool _080A7CD8: @@ -4554,7 +4554,7 @@ _080A7F42: lsls r0, 24 cmp r0, 0 beq _080A7F78 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r0, [r0, 0x18] ldrh r2, [r0] @@ -4571,7 +4571,7 @@ _080A7F78: lsls r0, 24 cmp r0, 0 bne _080A7FD8 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0] lsls r0, r5, 2 @@ -4606,7 +4606,7 @@ _080A7FD0: b _080A8026 .pool _080A7FD8: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0] lsls r0, r5, 2 @@ -4641,7 +4641,7 @@ _080A8018: b _080A8042 .pool _080A8024: - ldr r0, =gUnknown_08300D38 + ldr r0, =gMonFrontPicCoords _080A8026: lsls r1, r2, 2 adds r1, r0 @@ -4807,7 +4807,7 @@ sub_80A8140: @ 80A8140 push {lr} lsls r0, 24 lsrs r2, r0, 24 - ldr r0, =gHappinessMoveAnim + ldr r0, =gAnimFriendship ldrb r0, [r0] movs r1, 0 cmp r0, 0x1E @@ -4823,7 +4823,7 @@ _080A815E: ldr r0, =gBattleAnimArgs strh r1, [r0, 0xE] adds r0, r2, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask pop {r0} bx r0 .pool @@ -4837,9 +4837,9 @@ sub_80A8174: @ 80A8174 lsls r0, 24 lsrs r4, r0, 24 adds r7, r4, 0 - ldr r6, =gAnimationBankTarget + ldr r6, =gAnimBankTarget ldrb r0, [r6] - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080A81B4 @@ -4863,10 +4863,10 @@ sub_80A8174: @ 80A8174 orrs r0, r2 strb r0, [r1, 0x5] _080A81B4: - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker mov r8, r0 ldrb r0, [r0] - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080A81EC @@ -4894,7 +4894,7 @@ _080A81EC: ldrb r0, [r6] movs r5, 0x2 eors r0, r5 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080A8224 @@ -4922,7 +4922,7 @@ _080A8224: mov r1, r8 ldrb r0, [r1] eors r0, r5 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080A825C @@ -4968,7 +4968,7 @@ _080A8286: lsls r0, r5, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl b_side_obj__get_some_boolean + bl IsAnimBankSpriteVisible lsls r0, 24 cmp r0, 0 beq _080A82C8 @@ -5083,8 +5083,8 @@ _080A835C: bx r1 thumb_func_end sub_80A8328 - thumb_func_start GetBankIdentity_permutated -GetBankIdentity_permutated: @ 80A8364 + thumb_func_start sub_80A8364 +sub_80A8364: @ 80A8364 push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 @@ -5109,7 +5109,7 @@ _080A838C: pop {r4} pop {r1} bx r1 - thumb_func_end GetBankIdentity_permutated + thumb_func_end sub_80A8364 thumb_func_start sub_80A8394 sub_80A8394: @ 80A8394 @@ -5155,7 +5155,7 @@ sub_80A8394: @ 80A8394 bl AllocSpritePalette lsls r0, 24 lsrs r5, r0, 24 - ldr r4, =gBattleSpritesGfx + ldr r4, =gMonSpritesGfxPtr ldr r0, [r4] cmp r0, 0 beq _080A8412 @@ -5200,7 +5200,7 @@ _080A8412: lsrs r0, 24 cmp r0, 0x1 beq _080A845E - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0] ldr r2, [sp, 0x40] @@ -5213,7 +5213,7 @@ _080A845E: lsls r0, r6, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] movs r3, 0xBE lsls r3, 1 @@ -5226,7 +5226,7 @@ _080A8488: lsls r0, r6, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] movs r2, 0xBE lsls r2, 1 @@ -5263,7 +5263,7 @@ _080A84B0: lsrs r0, 24 cmp r0, 0x1 beq _080A84F6 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r1, [r0] ldr r3, [sp, 0x40] @@ -5276,7 +5276,7 @@ _080A84F6: lsls r0, r6, 3 ldr r1, =gMonBackPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] movs r2, 0xBE lsls r2, 1 @@ -5294,7 +5294,7 @@ _080A8524: lsls r0, r6, 3 ldr r1, =gMonBackPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] movs r3, 0xBE lsls r3, 1 @@ -5305,7 +5305,7 @@ _080A8524: mov r3, r8 bl LoadSpecialPokePic_2 _080A8540: - ldr r5, =gBattleSpritesGfx + ldr r5, =gMonSpritesGfxPtr ldr r0, [r5] movs r4, 0xBE lsls r4, 1 @@ -5338,7 +5338,7 @@ _080A8540: mov r2, r10 lsls r1, r2, 16 asrs r1, 16 - ldr r3, =gUnknown_08300D38 + ldr r3, =gMonFrontPicCoords b _080A85B2 .pool _080A85A0: @@ -5416,7 +5416,7 @@ sub_80A861C: @ 80A861C lsls r0, 24 cmp r0, 0 beq _080A86C4 - ldr r0, =gUnknown_02039F34 + ldr r0, =gContestResources ldr r0, [r0] ldr r2, [r0, 0x18] ldrb r1, [r2, 0x4] @@ -5490,7 +5490,7 @@ _080A86C4: lsls r0, 24 cmp r0, 0 bne _080A8790 - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0] mov r1, r8 @@ -5580,7 +5580,7 @@ _080A8784: b _080A8864 .pool _080A8790: - ldr r0, =gUnknown_020244D0 + ldr r0, =gBattleSpritesDataPtr ldr r0, [r0] ldr r0, [r0] mov r1, r8 @@ -5662,7 +5662,7 @@ _080A8834: add r0, r8 ldrb r0, [r0] lsls r0, 2 - ldr r1, =gUnknown_08525F78 + ldr r1, =gCastformFrontSpriteCoords adds r4, r0, r1 b _080A8866 .pool @@ -5671,13 +5671,13 @@ _080A8850: lsls r0, 1 cmp r7, r0 bls _080A8860 - ldr r4, =gUnknown_08300D38 + ldr r4, =gMonFrontPicCoords b _080A8866 .pool _080A8860: lsls r1, r7, 2 _080A8862: - ldr r0, =gUnknown_08300D38 + ldr r0, =gMonFrontPicCoords _080A8864: adds r4, r1, r0 _080A8866: @@ -5807,7 +5807,7 @@ _080A8946: bl sub_80A5C6C lsls r0, 24 lsrs r7, r0, 24 - bl battle_type_is_double + bl IsDoubleBattle lsls r0, 24 cmp r0, 0 beq _080A8998 @@ -5941,7 +5941,7 @@ sub_80A8A6C: @ 80A8A6C push {r4,lr} adds r4, r0, 0 bl sub_80A6838 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -5998,7 +5998,7 @@ _080A8AB6: sub_80A8AEC: @ 80A8AEC push {r4,lr} adds r4, r0, 0 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -6054,7 +6054,7 @@ sub_80A8B64: @ 80A8B64 push {r4,lr} adds r4, r0, 0 bl sub_80A6838 - ldr r0, =gAnimationBankAttacker + ldr r0, =gAnimBankAttacker ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -6081,7 +6081,7 @@ _080A8B9C: strh r0, [r4, 0x22] ldr r0, =sub_80A67D8 str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 pop {r4} @@ -6106,7 +6106,7 @@ sub_80A8BC4: @ 80A8BC4 lsrs r0, 24 movs r6, 0 strh r0, [r5, 0x8] - ldr r7, =gAnimationBankAttacker + ldr r7, =gAnimBankAttacker ldrb r0, [r7] bl GetBankSide lsls r0, 24 @@ -6283,7 +6283,7 @@ _080A8D58: ldr r0, =0x00002771 bl FreeSpritePaletteByTag adds r0, r5, 0 - bl move_anim_task_del + bl DestroyAnimVisualTask _080A8D6C: pop {r4,r5} pop {r0} @@ -6389,7 +6389,7 @@ _080A8E26: sub_80A8E30: @ 80A8E30 push {r4,r5,lr} adds r5, r0, 0 - ldr r4, =gAnimationBankAttacker + ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 bl sub_80A5C6C @@ -6465,7 +6465,7 @@ _080A8EC4: cmp r0, r1 bge _080A8EDC adds r0, r4, 0 - bl move_anim_8072740 + bl DestroyAnimSprite _080A8EDC: pop {r4,r5} pop {r0} @@ -6487,7 +6487,7 @@ sub_80A8EE4: @ 80A8EE4 ldrh r1, [r4, 0x22] adds r0, r1 strh r0, [r4, 0x36] - ldr r0, =gAnimationBankTarget + ldr r0, =gAnimBankTarget ldrb r0, [r0] bl GetBankSide lsls r0, 24 @@ -6514,7 +6514,7 @@ _080A8F32: strh r0, [r4, 0x22] ldr r0, =sub_80A6EEC str r0, [r4, 0x1C] - ldr r1, =move_anim_8072740 + ldr r1, =DestroyAnimSprite adds r0, r4, 0 bl StoreSpriteCallbackInData6 pop {r4,r5} diff --git a/asm/save.s b/asm/save.s deleted file mode 100644 index 825da0756..000000000 --- a/asm/save.s +++ /dev/null @@ -1,164 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - - thumb_func_start sub_8153688 -sub_8153688: @ 8153688 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0xB - bls _081536A2 - b _081537C2 -_081536A2: - lsls r0, 2 - ldr r1, =_081536B4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_081536B4: - .4byte _081536E4 - .4byte _081536F4 - .4byte _081536FE - .4byte _0815371A - .4byte _0815372C - .4byte _08153742 - .4byte _08153758 - .4byte _08153762 - .4byte _08153778 - .4byte _0815378C - .4byte _08153796 - .4byte _081537A8 -_081536E4: - ldr r0, =gSoftResetDisabled - movs r1, 0x1 - strb r1, [r0] - movs r0, 0x1 - strh r0, [r4] - b _081537C2 - .pool -_081536F4: - bl sub_800ADF8 - movs r0, 0x2 - strh r0, [r4] - b _081537C2 -_081536FE: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - beq _081537C2 - movs r1, 0x4 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _08153714 - bl save_serialize_map -_08153714: - movs r0, 0x3 - strh r0, [r4] - b _081537C2 -_0815371A: - movs r1, 0x4 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _08153726 - bl sub_8076D5C -_08153726: - bl sub_8153380 - b _08153752 -_0815372C: - ldrh r0, [r4, 0x2] - adds r0, 0x1 - strh r0, [r4, 0x2] - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0x5 - bne _081537C2 - movs r0, 0 - strh r0, [r4, 0x2] - strh r1, [r4] - b _081537C2 -_08153742: - bl sub_81533AC - lsls r0, 24 - cmp r0, 0 - beq _08153752 - movs r0, 0x6 - strh r0, [r4] - b _081537C2 -_08153752: - movs r0, 0x4 - strh r0, [r4] - b _081537C2 -_08153758: - bl sub_81533E0 - movs r0, 0x7 - strh r0, [r4] - b _081537C2 -_08153762: - movs r1, 0x4 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _0815376E - bl sav2_gender2_inplace_and_xFE -_0815376E: - bl sub_800ADF8 - movs r0, 0x8 - strh r0, [r4] - b _081537C2 -_08153778: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - beq _081537C2 - bl sub_8153408 - movs r0, 0x9 - strh r0, [r4] - b _081537C2 -_0815378C: - bl sub_800ADF8 - movs r0, 0xA - strh r0, [r4] - b _081537C2 -_08153796: - bl sub_800A520 - lsls r0, 24 - cmp r0, 0 - beq _081537C2 - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _081537C2 -_081537A8: - ldrh r0, [r4, 0x2] - adds r0, 0x1 - strh r0, [r4, 0x2] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x5 - ble _081537C2 - ldr r1, =gSoftResetDisabled - movs r0, 0 - strb r0, [r1] - adds r0, r2, 0 - bl DestroyTask -_081537C2: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8153688 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/save_failed_screen.s b/asm/save_failed_screen.s deleted file mode 100644 index 182ff8954..000000000 --- a/asm/save_failed_screen.s +++ /dev/null @@ -1,707 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_8178F44 -sub_8178F44: @ 8178F44 - push {r4,r5,lr} - sub sp, 0x18 - adds r5, r0, 0 - adds r4, r1, 0 - adds r3, r2, 0 - lsls r3, 24 - add r0, sp, 0x14 - movs r2, 0 - strb r2, [r0] - adds r1, r0, 0 - movs r0, 0xF - strb r0, [r1, 0x1] - movs r0, 0x3 - strb r0, [r1, 0x2] - ldr r0, =gUnknown_0203BD0E - ldrb r0, [r0] - lsls r4, 27 - lsrs r4, 24 - lsrs r3, 21 - adds r3, 0x1 - lsls r3, 24 - lsrs r3, 24 - str r2, [sp] - str r2, [sp, 0x4] - str r1, [sp, 0x8] - str r2, [sp, 0xC] - str r5, [sp, 0x10] - movs r1, 0x1 - adds r2, r4, 0 - bl AddTextPrinterParametrized2 - add sp, 0x18 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8178F44 - - thumb_func_start DoSaveFailedScreen -DoSaveFailedScreen: @ 8178F90 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, =sub_8178FDC - bl SetMainCallback2 - ldr r0, =gUnknown_0203BCFC - strh r4, [r0] - ldr r1, =gUnknown_0203BCFE - movs r2, 0 - movs r0, 0 - strh r0, [r1] - strh r0, [r1, 0x2] - ldr r0, =gUnknown_0203BD0E - strb r2, [r0] - strb r2, [r0, 0x1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end DoSaveFailedScreen - - thumb_func_start sub_8178FC8 -sub_8178FC8: @ 8178FC8 - push {lr} - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - pop {r0} - bx r0 - thumb_func_end sub_8178FC8 - - thumb_func_start sub_8178FDC -sub_8178FDC: @ 8178FDC - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - ldr r0, =gMain - movs r1, 0x87 - lsls r1, 3 - adds r7, r0, r1 - ldrb r0, [r7] - cmp r0, 0 - beq _08178FF8 - cmp r0, 0x1 - bne _08178FF8 - b _0817925C -_08178FF8: - movs r0, 0 - bl SetVBlankCallback - movs r0, 0 - movs r1, 0 - bl SetGpuReg - movs r0, 0xE - movs r1, 0 - bl SetGpuReg - movs r0, 0xC - movs r1, 0 - bl SetGpuReg - movs r0, 0xA - movs r1, 0 - bl SetGpuReg - movs r0, 0x8 - movs r1, 0 - bl SetGpuReg - movs r0, 0x1C - movs r1, 0 - bl SetGpuReg - movs r0, 0x1E - movs r1, 0 - bl SetGpuReg - movs r0, 0x18 - movs r1, 0 - bl SetGpuReg - movs r0, 0x1A - movs r1, 0 - bl SetGpuReg - movs r0, 0x14 - movs r1, 0 - bl SetGpuReg - movs r0, 0x16 - movs r1, 0 - bl SetGpuReg - movs r0, 0x10 - movs r1, 0 - bl SetGpuReg - movs r0, 0x12 - movs r1, 0 - bl SetGpuReg - add r1, sp, 0x4 - movs r0, 0 - strh r0, [r1] - ldr r2, =0x040000d4 - str r1, [r2] - movs r1, 0xC0 - lsls r1, 19 - str r1, [r2, 0x4] - ldr r0, =0x8100c000 - str r0, [r2, 0x8] - ldr r0, [r2, 0x8] - movs r3, 0 - mov r8, r3 - str r3, [sp, 0x8] - add r4, sp, 0x8 - str r4, [r2] - movs r0, 0xE0 - lsls r0, 19 - str r0, [r2, 0x4] - ldr r0, =0x85000100 - str r0, [r2, 0x8] - ldr r0, [r2, 0x8] - add r0, sp, 0x4 - mov r3, r8 - strh r3, [r0] - str r0, [r2] - movs r0, 0xA0 - lsls r0, 19 - str r0, [r2, 0x4] - ldr r0, =0x81000200 - str r0, [r2, 0x8] - ldr r0, [r2, 0x8] - ldr r0, =gUnknown_085B0E04 - bl LZ77UnCompVram - ldr r0, =gUnknown_085B0A80 - ldr r1, =0x06007000 - bl LZ77UnCompVram - ldr r0, =gUnknown_085B0C0C - ldr r1, =0x06007800 - bl LZ77UnCompVram - ldr r0, =gUnknown_085EFDE4 - ldr r1, =0x06010020 - bl LZ77UnCompVram - movs r0, 0 - bl ResetBgsAndClearDma3BusyFlags - ldr r1, =gUnknown_085EFD88 - movs r0, 0 - movs r2, 0x3 - bl InitBgsFromTemplates - ldr r5, =0x0201e000 - movs r0, 0 - adds r1, r5, 0 - bl SetBgTilemapBuffer - mov r0, r8 - str r0, [sp, 0x8] - ldr r2, =0x05000200 - adds r0, r4, 0 - adds r1, r5, 0 - bl CpuSet - ldr r1, =gUnknown_0850E87C - movs r2, 0x90 - lsls r2, 1 - movs r6, 0x85 - lsls r6, 2 - movs r0, 0 - adds r3, r6, 0 - bl LoadBgTiles - ldr r0, =gUnknown_085EFD94 - bl InitWindows - ldr r0, =gUnknown_085EFD9C - bl AddWindowWithoutTileMap - ldr r4, =gUnknown_0203BD0E - strb r0, [r4] - ldrb r0, [r4] - movs r1, 0x80 - lsls r1, 4 - adds r2, r5, r1 - movs r1, 0x7 - bl SetWindowAttribute - ldr r0, =gUnknown_085EFDA4 - bl AddWindowWithoutTileMap - strb r0, [r4, 0x1] - ldrb r0, [r4, 0x1] - movs r3, 0xE8 - lsls r3, 5 - adds r5, r3 - movs r1, 0x7 - adds r2, r5, 0 - bl SetWindowAttribute - bl DeactivateAllTextPrinters - bl ResetSpriteData - bl ResetTasks - bl ResetPaletteFade - ldr r0, =gUnknown_085B0A00 - movs r1, 0 - movs r2, 0x40 - bl LoadPalette - ldr r0, =gUnknown_085EFDC4 - movs r1, 0x80 - lsls r1, 1 - movs r2, 0x20 - bl LoadPalette - ldr r0, =gUnknown_0850FEFC - movs r1, 0xE0 - movs r2, 0x20 - bl LoadPalette - ldr r0, =gUnknown_0860F074 - movs r1, 0xF0 - movs r2, 0x20 - bl LoadPalette - ldrb r0, [r4] - movs r1, 0 - adds r2, r6, 0 - movs r3, 0xE - bl SetWindowBorderStyle - ldrb r0, [r4, 0x1] - movs r1, 0 - adds r2, r6, 0 - movs r3, 0xE - bl SetWindowBorderStyle - ldrb r0, [r4, 0x1] - movs r1, 0x11 - bl FillWindowPixelBuffer - ldrb r0, [r4] - movs r1, 0x11 - bl FillWindowPixelBuffer - ldrb r0, [r4, 0x1] - movs r1, 0x2 - bl CopyWindowToVram - ldrb r0, [r4] - movs r1, 0x1 - bl CopyWindowToVram - ldr r0, =gText_SaveFailedCheckingBackup - movs r1, 0x1 - movs r2, 0 - bl sub_8178F44 - movs r0, 0x1 - negs r0, r0 - mov r1, r8 - str r1, [sp] - movs r1, 0 - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - movs r0, 0x1 - bl EnableInterrupts - ldr r0, =sub_8178FC8 - bl SetVBlankCallback - movs r1, 0x82 - lsls r1, 5 - movs r0, 0 - bl SetGpuReg - movs r0, 0 - bl ShowBg - movs r0, 0x2 - bl ShowBg - movs r0, 0x3 - bl ShowBg - ldrb r0, [r7] - adds r0, 0x1 - strb r0, [r7] - b _08179272 - .pool -_0817925C: - bl UpdatePaletteFade - lsls r0, 24 - cmp r0, 0 - bne _08179272 - ldr r0, =sub_8179288 - bl SetMainCallback2 - ldr r0, =sub_8179454 - bl SetVBlankCallback -_08179272: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8178FDC - - thumb_func_start sub_8179288 -sub_8179288: @ 8179288 - push {r4-r6,lr} - movs r5, 0 - ldr r0, =gUnknown_0203BCFE - movs r1, 0x1 - strh r1, [r0] - ldr r1, =gDamagedSaveSectors - ldr r0, [r1] - cmp r0, 0 - beq _081792EC - adds r6, r1, 0 -_0817929C: - ldr r0, [r6] - bl sub_81795AC - lsls r0, 24 - cmp r0, 0 - bne _08179348 - ldr r4, =gUnknown_0203BD0E - ldrb r0, [r4] - movs r1, 0x11 - bl FillWindowPixelBuffer - ldr r0, =gText_CheckCompleted - movs r1, 0x1 - movs r2, 0 - bl sub_8178F44 - ldr r0, =gUnknown_0203BCFC - ldrb r0, [r0] - bl HandleSavingData - ldr r0, [r6] - cmp r0, 0 - beq _081792DC - ldrb r0, [r4] - movs r1, 0x11 - bl FillWindowPixelBuffer - ldr r0, =gText_SaveFailedCheckingBackup - movs r1, 0x1 - movs r2, 0 - bl sub_8178F44 -_081792DC: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, [r6] - cmp r0, 0 - beq _081792EC - cmp r5, 0x2 - bls _0817929C -_081792EC: - cmp r5, 0x3 - bne _0817931C - ldr r0, =gUnknown_0203BD0E - ldrb r0, [r0] - movs r1, 0x11 - bl FillWindowPixelBuffer - ldr r0, =gText_BackupMemoryDamaged - b _08179330 - .pool -_0817931C: - ldr r0, =gUnknown_0203BD0E - ldrb r0, [r0] - movs r1, 0x11 - bl FillWindowPixelBuffer - ldr r0, =gGameContinueCallback - ldr r0, [r0] - cmp r0, 0 - bne _08179370 - ldr r0, =gText_SaveCompleteGameCannotContinue -_08179330: - movs r1, 0x1 - movs r2, 0 - bl sub_8178F44 - b _0817937A - .pool -_08179348: - ldr r0, =gUnknown_0203BD0E - ldrb r0, [r0] - movs r1, 0x11 - bl FillWindowPixelBuffer - ldr r0, =gText_BackupMemoryDamaged - movs r1, 0x1 - movs r2, 0 - bl sub_8178F44 - ldr r0, =sub_8179390 - bl SetMainCallback2 - b _08179380 - .pool -_08179370: - ldr r0, =gText_SaveCompletePressA - movs r1, 0x1 - movs r2, 0 - bl sub_8178F44 -_0817937A: - ldr r0, =sub_81793E0 - bl SetMainCallback2 -_08179380: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8179288 - - thumb_func_start sub_8179390 -sub_8179390: @ 8179390 - push {lr} - ldr r1, =gUnknown_0203BCFE - movs r0, 0 - strh r0, [r1] - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _081793C4 - ldr r0, =gUnknown_0203BD0E - ldrb r0, [r0] - movs r1, 0x11 - bl FillWindowPixelBuffer - ldr r0, =gText_GamePlayCannotBeContinued - movs r1, 0x1 - movs r2, 0 - bl sub_8178F44 - ldr r0, =sub_8178FC8 - bl SetVBlankCallback - ldr r0, =sub_81793E0 - bl SetMainCallback2 -_081793C4: - pop {r0} - bx r0 - .pool - thumb_func_end sub_8179390 - - thumb_func_start sub_81793E0 -sub_81793E0: @ 81793E0 - push {lr} - sub sp, 0x4 - ldr r0, =gUnknown_0203BCFE - movs r2, 0 - strh r2, [r0] - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08179410 - movs r0, 0x1 - negs r0, r0 - str r2, [sp] - movs r1, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, =sub_8178FC8 - bl SetVBlankCallback - ldr r0, =sub_8179428 - bl SetMainCallback2 -_08179410: - add sp, 0x4 - pop {r0} - bx r0 - .pool - thumb_func_end sub_81793E0 - - thumb_func_start sub_8179428 -sub_8179428: @ 8179428 - push {r4,r5,lr} - bl UpdatePaletteFade - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _0817944E - ldr r5, =gGameContinueCallback - ldr r0, [r5] - cmp r0, 0 - bne _08179448 - bl DoSoftReset - b _0817944E - .pool -_08179448: - bl SetMainCallback2 - str r4, [r5] -_0817944E: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8179428 - - thumb_func_start sub_8179454 -sub_8179454: @ 8179454 - push {r4,r5,lr} - ldr r5, =gMain - ldr r0, [r5, 0x24] - lsrs r4, r0, 3 - movs r0, 0x7 - ands r4, r0 - ldr r0, =gUnknown_085EFD80 - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [r5, 0x38] - str r1, [r5, 0x3C] - ldrh r1, [r5, 0x3A] - ldr r0, =0xfffffe00 - ands r0, r1 - movs r1, 0x70 - orrs r0, r1 - strh r0, [r5, 0x3A] - adds r1, r5, 0 - adds r1, 0x38 - movs r0, 0x48 - strb r0, [r1] - ldr r0, =gUnknown_0203BCFE - ldrh r0, [r0] - cmp r0, 0 - beq _081794DC - ldr r3, =gUnknown_085EFDAC - lsls r2, r4, 1 - adds r2, r4 - adds r0, r2, r3 - ldrb r4, [r0] - ldrh r1, [r5, 0x3C] - ldr r0, =0xfffffc00 - ands r0, r1 - orrs r0, r4 - strh r0, [r5, 0x3C] - adds r0, r3, 0x2 - adds r0, r2, r0 - ldrb r1, [r0] - lsls r1, 4 - adds r3, 0x1 - adds r2, r3 - ldrb r0, [r2] - lsls r0, 3 - orrs r1, r0 - adds r3, r5, 0 - adds r3, 0x3B - movs r0, 0x1F - ands r1, r0 - lsls r1, 1 - ldrb r2, [r3] - movs r0, 0x3F - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] - b _081794E8 - .pool -_081794DC: - ldrh r0, [r5, 0x3C] - ldr r1, =0xfffffc00 - ands r1, r0 - movs r0, 0x1 - orrs r1, r0 - strh r1, [r5, 0x3C] -_081794E8: - ldr r0, =gUnknown_030022F8 - movs r1, 0xE0 - lsls r1, 19 - movs r2, 0x1 - bl CpuFastSet - ldr r1, =gUnknown_0203BCFE - ldrh r0, [r1, 0x2] - cmp r0, 0 - beq _08179500 - subs r0, 0x1 - strh r0, [r1, 0x2] -_08179500: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8179454 - - thumb_func_start sub_8179514 -sub_8179514: @ 8179514 - push {r4,lr} - lsls r0, 16 - lsrs r0, 16 - ldr r4, =gSaveDataBuffer - movs r3, 0x80 - lsls r3, 5 - movs r1, 0 - adds r2, r4, 0 - bl ReadFlash - movs r1, 0 - ldr r2, =0x000003ff -_0817952C: - ldr r0, [r4] - cmp r0, 0 - beq _08179540 - movs r0, 0x1 - b _0817954E - .pool -_08179540: - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - adds r4, 0x4 - cmp r1, r2 - bls _0817952C - movs r0, 0 -_0817954E: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8179514 - - thumb_func_start sub_8179554 -sub_8179554: @ 8179554 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 16 - lsrs r6, r0, 16 - movs r0, 0 - ldr r1, =0x00000fff - mov r8, r1 - ldr r7, =ProgramFlashByte -_08179566: - movs r4, 0 - adds r5, r0, 0x1 -_0817956A: - ldr r3, [r7] - adds r0, r6, 0 - adds r1, r4, 0 - movs r2, 0 - bl _call_via_r3 - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, r8 - bls _0817956A - adds r0, r6, 0 - bl sub_8179514 - lsls r0, 24 - lsrs r1, r0, 24 - lsls r0, r5, 16 - lsrs r0, 16 - cmp r1, 0 - beq _08179596 - cmp r0, 0x81 - bls _08179566 -_08179596: - adds r0, r1, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8179554 - - thumb_func_start sub_81795AC -sub_81795AC: @ 81795AC - push {r4-r6,lr} - adds r5, r0, 0 - movs r6, 0 -_081795B2: - movs r4, 0x1 - lsls r4, r6 - adds r0, r5, 0 - ands r0, r4 - cmp r0, 0 - beq _081795CC - adds r0, r6, 0 - bl sub_8179554 - lsls r0, 24 - cmp r0, 0 - bne _081795CC - bics r5, r4 -_081795CC: - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, 0x1F - bls _081795B2 - cmp r5, 0 - beq _081795DE - movs r0, 0x1 - b _081795E0 -_081795DE: - movs r0, 0 -_081795E0: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_81795AC - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/save_location.s b/asm/save_location.s deleted file mode 100755 index 1a5b3c6da..000000000 --- a/asm/save_location.s +++ /dev/null @@ -1,205 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sav1_are_mapnumbers_in_given_list -sav1_are_mapnumbers_in_given_list: @ 81AFC84 - push {r4,lr} - adds r2, r0, 0 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - movs r1, 0x4 - ldrsb r1, [r0, r1] - lsls r1, 8 - ldrb r0, [r0, 0x5] - lsls r0, 24 - asrs r0, 24 - adds r0, r1 - lsls r0, 16 - lsrs r3, r0, 16 - ldrh r0, [r2] - ldr r1, =0x0000ffff - cmp r0, r1 - beq _081AFCC4 - adds r4, r1, 0 - adds r1, r2, 0 -_081AFCAA: - ldrh r0, [r1] - cmp r0, r3 - bne _081AFCBC - movs r0, 0x1 - b _081AFCC6 - .pool -_081AFCBC: - adds r1, 0x2 - ldrh r0, [r1] - cmp r0, r4 - bne _081AFCAA -_081AFCC4: - movs r0, 0 -_081AFCC6: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sav1_are_mapnumbers_in_given_list - - thumb_func_start sav1_is_in_pokecenter -sav1_is_in_pokecenter: @ 81AFCCC - push {lr} - ldr r0, =gUnknown_086143BC - bl sav1_are_mapnumbers_in_given_list - pop {r1} - bx r1 - .pool - thumb_func_end sav1_is_in_pokecenter - - thumb_func_start sub_81AFCDC -sub_81AFCDC: @ 81AFCDC - push {lr} - ldr r0, =gUnknown_0861440A - bl sav1_are_mapnumbers_in_given_list - pop {r1} - bx r1 - .pool - thumb_func_end sub_81AFCDC - - thumb_func_start sub_81AFCEC -sub_81AFCEC: @ 81AFCEC - push {lr} - ldr r0, =gUnknown_0861440E - bl sav1_are_mapnumbers_in_given_list - pop {r1} - bx r1 - .pool - thumb_func_end sub_81AFCEC - - thumb_func_start sav2_set_x9_bit3_when_sav1_in_pokecenter -sav2_set_x9_bit3_when_sav1_in_pokecenter: @ 81AFCFC - push {lr} - bl sav1_is_in_pokecenter - cmp r0, 0 - bne _081AFD18 - ldr r0, =gSaveBlock2Ptr - ldr r2, [r0] - ldrb r1, [r2, 0x9] - movs r0, 0xFD - ands r0, r1 - b _081AFD22 - .pool -_081AFD18: - ldr r0, =gSaveBlock2Ptr - ldr r2, [r0] - ldrb r1, [r2, 0x9] - movs r0, 0x2 - orrs r0, r1 -_081AFD22: - strb r0, [r2, 0x9] - pop {r0} - bx r0 - .pool - thumb_func_end sav2_set_x9_bit3_when_sav1_in_pokecenter - - thumb_func_start sub_81AFD2C -sub_81AFD2C: @ 81AFD2C - push {lr} - bl sub_81AFCDC - cmp r0, 0 - bne _081AFD48 - ldr r0, =gSaveBlock2Ptr - ldr r2, [r0] - ldrb r1, [r2, 0x9] - movs r0, 0xFB - ands r0, r1 - b _081AFD52 - .pool -_081AFD48: - ldr r0, =gSaveBlock2Ptr - ldr r2, [r0] - ldrb r1, [r2, 0x9] - movs r0, 0x4 - orrs r0, r1 -_081AFD52: - strb r0, [r2, 0x9] - pop {r0} - bx r0 - .pool - thumb_func_end sub_81AFD2C - - thumb_func_start sub_81AFD5C -sub_81AFD5C: @ 81AFD5C - push {lr} - bl sub_81AFCEC - cmp r0, 0 - bne _081AFD78 - ldr r0, =gSaveBlock2Ptr - ldr r2, [r0] - ldrb r1, [r2, 0x9] - movs r0, 0xF7 - ands r0, r1 - b _081AFD82 - .pool -_081AFD78: - ldr r0, =gSaveBlock2Ptr - ldr r2, [r0] - ldrb r1, [r2, 0x9] - movs r0, 0x8 - orrs r0, r1 -_081AFD82: - strb r0, [r2, 0x9] - pop {r0} - bx r0 - .pool - thumb_func_end sub_81AFD5C - - thumb_func_start sav2_set_x9_depending_on_sav1_map -sav2_set_x9_depending_on_sav1_map: @ 81AFD8C - push {lr} - bl sav2_set_x9_bit3_when_sav1_in_pokecenter - bl sub_81AFD2C - bl sub_81AFD5C - pop {r0} - bx r0 - thumb_func_end sav2_set_x9_depending_on_sav1_map - - thumb_func_start sub_81AFDA0 -sub_81AFDA0: @ 81AFDA0 - ldr r0, =gSaveBlock2Ptr - ldr r2, [r0] - adds r2, 0xA8 - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 8 - orrs r0, r1 - movs r1, 0x1 - orrs r0, r1 - movs r1, 0x2 - orrs r0, r1 - movs r1, 0x4 - orrs r0, r1 - movs r1, 0x10 - orrs r0, r1 - movs r1, 0x20 - orrs r0, r1 - movs r1, 0x8 - orrs r0, r1 - str r0, [r2] - bx lr - .pool - thumb_func_end sub_81AFDA0 - - thumb_func_start sub_81AFDD0 -sub_81AFDD0: @ 81AFDD0 - ldr r0, =gSaveBlock2Ptr - ldr r2, [r0] - ldrb r1, [r2, 0x9] - movs r0, 0x80 - orrs r0, r1 - strb r0, [r2, 0x9] - bx lr - .pool - thumb_func_end sub_81AFDD0 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/scrcmd.s b/asm/scrcmd.s deleted file mode 100644 index 7980ba564..000000000 --- a/asm/scrcmd.s +++ /dev/null @@ -1,5744 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start s00_nop -s00_nop: @ 80992CC - movs r0, 0 - bx lr - thumb_func_end s00_nop - - thumb_func_start s01_nop -s01_nop: @ 80992D0 - movs r0, 0 - bx lr - thumb_func_end s01_nop - - thumb_func_start s02_end -s02_end: @ 80992D4 - push {lr} - bl StopScript - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s02_end - - thumb_func_start s24_execute_ASM_2 -s24_execute_ASM_2: @ 80992E0 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadWord - adds r1, r0, 0 - adds r0, r4, 0 - bl SetupNativeScript - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s24_execute_ASM_2 - - thumb_func_start s25_extended_cmd -s25_extended_cmd: @ 80992F8 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - ldr r1, =gUnknown_081DBA64 - lsrs r0, 14 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end s25_extended_cmd - - thumb_func_start s26_extended_cmd_setvar -s26_extended_cmd_setvar: @ 8099318 - push {r4-r6,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl GetVarPointer - adds r6, r0, 0 - ldr r4, =gUnknown_081DBA64 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 14 - adds r0, r4 - ldr r0, [r0] - bl _call_via_r0 - strh r0, [r6] - movs r0, 0 - pop {r4-r6} - pop {r1} - bx r1 - .pool - thumb_func_end s26_extended_cmd_setvar - - thumb_func_start s23_execute_ASM -s23_execute_ASM: @ 809934C - push {lr} - bl ScriptReadWord - bl _call_via_r0 - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s23_execute_ASM - - thumb_func_start s27_set_to_waitstate -s27_set_to_waitstate: @ 809935C - push {lr} - bl ScriptContext1_Stop - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end s27_set_to_waitstate - - thumb_func_start s05_goto -s05_goto: @ 8099368 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadWord - adds r1, r0, 0 - adds r0, r4, 0 - bl ScriptJump - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s05_goto - - thumb_func_start s03_return -s03_return: @ 8099380 - push {lr} - bl ScriptReturn - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s03_return - - thumb_func_start s04_call -s04_call: @ 809938C - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadWord - adds r1, r0, 0 - adds r0, r4, 0 - bl ScriptCall - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s04_call - - thumb_func_start s06_if_jump -@ int s06_if_jump(script_env *env) -s06_if_jump: @ 80993A4 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r4, [r0] - adds r0, 0x1 - str r0, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadWord - adds r2, r0, 0 - ldr r1, =gUnknown_085102C0 - lsls r0, r4, 1 - adds r0, r4 - ldrb r3, [r5, 0x2] - adds r0, r3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080993D2 - adds r0, r5, 0 - adds r1, r2, 0 - bl ScriptJump -_080993D2: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end s06_if_jump - - thumb_func_start s07_if_call -s07_if_call: @ 80993E0 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r4, [r0] - adds r0, 0x1 - str r0, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadWord - adds r2, r0, 0 - ldr r1, =gUnknown_085102C0 - lsls r0, r4, 1 - adds r0, r4 - ldrb r3, [r5, 0x2] - adds r0, r3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0809940E - adds r0, r5, 0 - adds r1, r2, 0 - bl ScriptCall -_0809940E: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end s07_if_call - - thumb_func_start sB8_set_virtual_address -@ int sB8_set_virtual_address(script_env *env) -sB8_set_virtual_address: @ 809941C - push {r4,lr} - ldr r4, [r0, 0x8] - subs r4, 0x1 - bl ScriptReadWord - ldr r1, =gUnknown_020375C4 - subs r0, r4 - str r0, [r1] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sB8_set_virtual_address - - thumb_func_start sB9_virtual_jump -@ int sB9_virtual_jump(script_env *env) -sB9_virtual_jump: @ 8099438 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadWord - adds r1, r0, 0 - ldr r0, =gUnknown_020375C4 - ldr r0, [r0] - subs r1, r0 - adds r0, r4, 0 - bl ScriptJump - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sB9_virtual_jump - - thumb_func_start sBA_virtual_call -sBA_virtual_call: @ 809945C - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadWord - adds r1, r0, 0 - ldr r0, =gUnknown_020375C4 - ldr r0, [r0] - subs r1, r0 - adds r0, r4, 0 - bl ScriptCall - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sBA_virtual_call - - thumb_func_start sBB_virtual_if_jump -sBB_virtual_if_jump: @ 8099480 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r4, [r0] - adds r0, 0x1 - str r0, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadWord - ldr r1, =gUnknown_020375C4 - ldr r1, [r1] - subs r2, r0, r1 - ldr r1, =gUnknown_085102C0 - lsls r0, r4, 1 - adds r0, r4 - ldrb r3, [r5, 0x2] - adds r0, r3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080994B2 - adds r0, r5, 0 - adds r1, r2, 0 - bl ScriptJump -_080994B2: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sBB_virtual_if_jump - - thumb_func_start sBC_virtual_if_call -sBC_virtual_if_call: @ 80994C4 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r4, [r0] - adds r0, 0x1 - str r0, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadWord - ldr r1, =gUnknown_020375C4 - ldr r1, [r1] - subs r2, r0, r1 - ldr r1, =gUnknown_085102C0 - lsls r0, r4, 1 - adds r0, r4 - ldrb r3, [r5, 0x2] - adds r0, r3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080994F6 - adds r0, r5, 0 - adds r1, r2, 0 - bl ScriptCall -_080994F6: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sBC_virtual_if_call - - thumb_func_start s08_jumpstd -s08_jumpstd: @ 8099508 - push {lr} - adds r2, r0, 0 - ldr r0, [r2, 0x8] - ldrb r1, [r0] - adds r0, 0x1 - str r0, [r2, 0x8] - lsls r1, 2 - ldr r0, =gUnknown_081DC2A0 - adds r1, r0 - ldr r0, =gUnknown_081DC2CC - cmp r1, r0 - bcs _08099528 - ldr r1, [r1] - adds r0, r2, 0 - bl ScriptJump -_08099528: - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end s08_jumpstd - - thumb_func_start s09_callstd -s09_callstd: @ 8099538 - push {lr} - adds r2, r0, 0 - ldr r0, [r2, 0x8] - ldrb r1, [r0] - adds r0, 0x1 - str r0, [r2, 0x8] - lsls r1, 2 - ldr r0, =gUnknown_081DC2A0 - adds r1, r0 - ldr r0, =gUnknown_081DC2CC - cmp r1, r0 - bcs _08099558 - ldr r1, [r1] - adds r0, r2, 0 - bl ScriptCall -_08099558: - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end s09_callstd - - thumb_func_start s0A_jumpstd_if -s0A_jumpstd_if: @ 8099568 - push {r4,lr} - adds r3, r0, 0 - ldr r0, [r3, 0x8] - ldrb r2, [r0] - adds r0, 0x1 - str r0, [r3, 0x8] - ldrb r4, [r0] - adds r0, 0x1 - str r0, [r3, 0x8] - ldr r1, =gUnknown_085102C0 - lsls r0, r2, 1 - adds r0, r2 - ldrb r2, [r3, 0x2] - adds r0, r2 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080995A0 - lsls r0, r4, 2 - ldr r1, =gUnknown_081DC2A0 - adds r1, r0, r1 - ldr r0, =gUnknown_081DC2CC - cmp r1, r0 - bcs _080995A0 - ldr r1, [r1] - adds r0, r3, 0 - bl ScriptJump -_080995A0: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s0A_jumpstd_if - - thumb_func_start s0B_callstd_if -s0B_callstd_if: @ 80995B4 - push {r4,lr} - adds r3, r0, 0 - ldr r0, [r3, 0x8] - ldrb r2, [r0] - adds r0, 0x1 - str r0, [r3, 0x8] - ldrb r4, [r0] - adds r0, 0x1 - str r0, [r3, 0x8] - ldr r1, =gUnknown_085102C0 - lsls r0, r2, 1 - adds r0, r2 - ldrb r2, [r3, 0x2] - adds r0, r2 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080995EC - lsls r0, r4, 2 - ldr r1, =gUnknown_081DC2A0 - adds r1, r0, r1 - ldr r0, =gUnknown_081DC2CC - cmp r1, r0 - bcs _080995EC - ldr r1, [r1] - adds r0, r3, 0 - bl ScriptCall -_080995EC: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s0B_callstd_if - - thumb_func_start s0C_restore_execution_after_sCF -s0C_restore_execution_after_sCF: @ 8099600 - push {lr} - ldr r1, =gUnknown_020375C0 - ldr r1, [r1] - bl ScriptJump - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end s0C_restore_execution_after_sCF - - thumb_func_start s0D_endscript_killram -s0D_endscript_killram: @ 8099614 - push {r4,lr} - adds r4, r0, 0 - bl ClearRamScript - adds r0, r4, 0 - bl StopScript - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s0D_endscript_killram - - thumb_func_start s0E_set_byte -s0E_set_byte: @ 809962C - push {lr} - ldr r1, [r0, 0x8] - ldrb r2, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - adds r0, r2, 0 - bl sub_81538C4 - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s0E_set_byte - - thumb_func_start s0F_u32_var_to_const -@ int s0F_u32_var_to_const(script_env *env) -s0F_u32_var_to_const: @ 8099644 - push {r4,r5,lr} - adds r4, r0, 0 - ldr r0, [r4, 0x8] - ldrb r5, [r0] - adds r0, 0x1 - str r0, [r4, 0x8] - adds r0, r4, 0 - bl ScriptReadWord - lsls r5, 2 - adds r4, 0x64 - adds r4, r5 - str r0, [r4] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end s0F_u32_var_to_const - - thumb_func_start s12_u32_var_to_ptr -@ int s12_u32_var_to_ptr(script_env *env) -s12_u32_var_to_ptr: @ 8099668 - push {r4,r5,lr} - adds r4, r0, 0 - ldr r0, [r4, 0x8] - ldrb r5, [r0] - adds r0, 0x1 - str r0, [r4, 0x8] - adds r0, r4, 0 - bl ScriptReadWord - lsls r5, 2 - adds r4, 0x64 - adds r4, r5 - ldrb r0, [r0] - str r0, [r4] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end s12_u32_var_to_ptr - - thumb_func_start s11_u8_ptr_to_const -@ int s11_u8_ptr_to_const(script_env *env) -s11_u8_ptr_to_const: @ 809968C - push {r4,lr} - ldr r1, [r0, 0x8] - ldrb r4, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl ScriptReadWord - strb r4, [r0] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s11_u8_ptr_to_const - - thumb_func_start s10_u8_var_to_const -@ int s10_u8_var_to_const(script_env *env) -s10_u8_var_to_const: @ 80996A4 - ldr r1, [r0, 0x8] - ldrb r3, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - lsls r3, 2 - adds r2, r0, 0 - adds r2, 0x64 - adds r2, r3 - ldrb r3, [r1] - str r3, [r2] - adds r1, 0x1 - str r1, [r0, 0x8] - movs r0, 0 - bx lr - thumb_func_end s10_u8_var_to_const - - thumb_func_start s13_u8_var_to_ptr -@ int s13_u8_var_to_ptr(script_env *env) -s13_u8_var_to_ptr: @ 80996C0 - push {r4,r5,lr} - adds r4, r0, 0 - ldr r0, [r4, 0x8] - ldrb r5, [r0] - adds r0, 0x1 - str r0, [r4, 0x8] - adds r0, r4, 0 - bl ScriptReadWord - lsls r5, 2 - adds r4, 0x64 - adds r4, r5 - ldr r1, [r4] - strb r1, [r0] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end s13_u8_var_to_ptr - - thumb_func_start s14_u32_var_to_var -s14_u32_var_to_var: @ 80996E4 - ldr r1, [r0, 0x8] - ldrb r3, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - ldrb r2, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - lsls r3, 2 - adds r0, 0x64 - adds r3, r0, r3 - lsls r2, 2 - adds r0, r2 - ldr r0, [r0] - str r0, [r3] - movs r0, 0 - bx lr - thumb_func_end s14_u32_var_to_var - - thumb_func_start s15_u8_ptr_to_ptr -s15_u8_ptr_to_ptr: @ 8099704 - push {r4,r5,lr} - adds r4, r0, 0 - bl ScriptReadWord - adds r5, r0, 0 - adds r0, r4, 0 - bl ScriptReadWord - ldrb r0, [r0] - strb r0, [r5] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end s15_u8_ptr_to_ptr - - thumb_func_start s16_u16_gvar_to_const -s16_u16_gvar_to_const: @ 8099720 - push {r4,r5,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl GetVarPointer - adds r4, r0, 0 - adds r0, r5, 0 - bl ScriptReadHalfword - strh r0, [r4] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end s16_u16_gvar_to_const - - thumb_func_start s19_u16_gvar_gvar -s19_u16_gvar_gvar: @ 8099744 - push {r4,r5,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl GetVarPointer - adds r5, r0, 0 - adds r0, r4, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl GetVarPointer - ldrh r0, [r0] - strh r0, [r5] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end s19_u16_gvar_gvar - - thumb_func_start s1A_u16_gvar_gvar -s1A_u16_gvar_gvar: @ 8099770 - push {r4,r5,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl GetVarPointer - adds r5, r0, 0 - adds r0, r4, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - strh r0, [r5] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end s1A_u16_gvar_gvar - - thumb_func_start compare_012 -compare_012: @ 809979C - push {lr} - lsls r0, 16 - lsrs r0, 16 - lsls r1, 16 - lsrs r1, 16 - cmp r0, r1 - bcs _080997AE - movs r0, 0 - b _080997B8 -_080997AE: - cmp r0, r1 - beq _080997B6 - movs r0, 0x2 - b _080997B8 -_080997B6: - movs r0, 0x1 -_080997B8: - pop {r1} - bx r1 - thumb_func_end compare_012 - - thumb_func_start s1B_cmp_u8_var_var -s1B_cmp_u8_var_var: @ 80997BC - push {r4,lr} - adds r4, r0, 0 - ldr r2, [r4, 0x8] - ldrb r0, [r2] - lsls r0, 2 - adds r3, r4, 0 - adds r3, 0x64 - adds r0, r3, r0 - ldrb r0, [r0] - adds r2, 0x1 - str r2, [r4, 0x8] - ldrb r1, [r2] - lsls r1, 2 - adds r3, r1 - ldrb r1, [r3] - adds r2, 0x1 - str r2, [r4, 0x8] - bl compare_012 - strb r0, [r4, 0x2] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s1B_cmp_u8_var_var - - thumb_func_start s1C_cmp_u8_var_const -s1C_cmp_u8_var_const: @ 80997EC - push {r4,lr} - adds r4, r0, 0 - ldr r2, [r4, 0x8] - ldrb r1, [r2] - lsls r1, 2 - adds r0, 0x64 - adds r0, r1 - ldrb r0, [r0] - adds r2, 0x1 - str r2, [r4, 0x8] - ldrb r1, [r2] - adds r2, 0x1 - str r2, [r4, 0x8] - bl compare_012 - strb r0, [r4, 0x2] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s1C_cmp_u8_var_const - - thumb_func_start s1D_cmp_u8_var_ptr -s1D_cmp_u8_var_ptr: @ 8099814 - push {r4,r5,lr} - adds r4, r0, 0 - ldr r2, [r4, 0x8] - ldrb r1, [r2] - lsls r1, 2 - adds r0, 0x64 - adds r0, r1 - ldrb r5, [r0] - adds r2, 0x1 - str r2, [r4, 0x8] - adds r0, r4, 0 - bl ScriptReadWord - ldrb r1, [r0] - adds r0, r5, 0 - bl compare_012 - strb r0, [r4, 0x2] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end s1D_cmp_u8_var_ptr - - thumb_func_start s1E_cmp_u8_ptr_var -s1E_cmp_u8_ptr_var: @ 8099840 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadWord - ldrb r0, [r0] - ldr r3, [r4, 0x8] - ldrb r2, [r3] - lsls r2, 2 - adds r1, r4, 0 - adds r1, 0x64 - adds r1, r2 - ldrb r1, [r1] - adds r3, 0x1 - str r3, [r4, 0x8] - bl compare_012 - strb r0, [r4, 0x2] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s1E_cmp_u8_ptr_var - - thumb_func_start s1F_cmp_u8_ptr_const -s1F_cmp_u8_ptr_const: @ 809986C - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadWord - ldrb r0, [r0] - ldr r2, [r4, 0x8] - ldrb r1, [r2] - adds r2, 0x1 - str r2, [r4, 0x8] - bl compare_012 - strb r0, [r4, 0x2] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s1F_cmp_u8_ptr_const - - thumb_func_start s20_cmp_u8_ptr_ptr -s20_cmp_u8_ptr_ptr: @ 809988C - push {r4,r5,lr} - adds r4, r0, 0 - bl ScriptReadWord - ldrb r5, [r0] - adds r0, r4, 0 - bl ScriptReadWord - ldrb r1, [r0] - adds r0, r5, 0 - bl compare_012 - strb r0, [r4, 0x2] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end s20_cmp_u8_ptr_ptr - - thumb_func_start s21_cmp_u16_gvar_const -s21_cmp_u16_gvar_const: @ 80998B0 - push {r4,r5,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl GetVarPointer - ldrh r5, [r0] - adds r0, r4, 0 - bl ScriptReadHalfword - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r5, 0 - bl compare_012 - strb r0, [r4, 0x2] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end s21_cmp_u16_gvar_const - - thumb_func_start s22_cmp_u16_gvar_gvar -s22_cmp_u16_gvar_gvar: @ 80998E0 - push {r4,r5,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl GetVarPointer - adds r5, r0, 0 - adds r0, r4, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl GetVarPointer - ldrh r2, [r5] - ldrh r1, [r0] - adds r0, r2, 0 - bl compare_012 - strb r0, [r4, 0x2] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end s22_cmp_u16_gvar_gvar - - thumb_func_start s17_u16_gvar_add_const -s17_u16_gvar_add_const: @ 8099914 - push {r4,r5,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl GetVarPointer - adds r4, r0, 0 - adds r0, r5, 0 - bl ScriptReadHalfword - ldrh r1, [r4] - adds r0, r1 - strh r0, [r4] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end s17_u16_gvar_add_const - - thumb_func_start sub_809993C -sub_809993C: @ 809993C - push {r4,r5,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl GetVarPointer - adds r5, r0, 0 - adds r0, r4, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldrh r1, [r5] - subs r1, r0 - strh r1, [r5] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_809993C - - thumb_func_start s8F_get_random_val -s8F_get_random_val: @ 809996C - push {r4,r5,lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldr r5, =gScriptResult - bl Random - lsls r0, 16 - lsrs r0, 16 - adds r1, r4, 0 - bl __umodsi3 - strh r0, [r5] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end s8F_get_random_val - - thumb_func_start sub_80999A0 -sub_80999A0: @ 80999A0 - push {r4,r5,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r1, r0, 0 - ldr r5, =gScriptResult - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl AddBagItem - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sub_80999A0 - - thumb_func_start sub_80999E4 -sub_80999E4: @ 80999E4 - push {r4,r5,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r1, r0, 0 - ldr r5, =gScriptResult - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl RemoveBagItem - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sub_80999E4 - - thumb_func_start sub_8099A28 -sub_8099A28: @ 8099A28 - push {r4,r5,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r1, r0, 0 - ldr r5, =gScriptResult - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl CheckBagHasSpace - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8099A28 - - thumb_func_start sub_8099A6C -sub_8099A6C: @ 8099A6C - push {r4,r5,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r1, r0, 0 - ldr r5, =gScriptResult - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl CheckBagHasItem - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8099A6C - - thumb_func_start s48_get_item_type -s48_get_item_type: @ 8099AB0 - push {r4,lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - ldr r4, =gScriptResult - bl GetPocketByItemId - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s48_get_item_type - - thumb_func_start sub_8099ADC -sub_8099ADC: @ 8099ADC - push {r4,r5,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - ldr r5, =gScriptResult - adds r0, r4, 0 - bl sub_80D6D70 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8099ADC - - thumb_func_start sub_8099B20 -sub_8099B20: @ 8099B20 - push {r4,r5,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - ldr r5, =gScriptResult - adds r0, r4, 0 - bl sub_80D6D1C - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8099B20 - - thumb_func_start sub_8099B64 -sub_8099B64: @ 8099B64 - push {r4,lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldr r4, =gScriptResult - lsls r0, 24 - lsrs r0, 24 - bl DecorationAdd - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8099B64 - - thumb_func_start sub_8099B90 -sub_8099B90: @ 8099B90 - push {r4,lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldr r4, =gScriptResult - lsls r0, 24 - lsrs r0, 24 - bl DecorationRemove - lsls r0, 24 - asrs r0, 24 - strh r0, [r4] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8099B90 - - thumb_func_start sub_8099BBC -sub_8099BBC: @ 8099BBC - push {r4,lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldr r4, =gScriptResult - lsls r0, 24 - lsrs r0, 24 - bl DecorationCheckSpace - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8099BBC - - thumb_func_start sub_8099BE8 -sub_8099BE8: @ 8099BE8 - push {r4,lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldr r4, =gScriptResult - lsls r0, 24 - lsrs r0, 24 - bl sub_8161918 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8099BE8 - - thumb_func_start s29_flag_set -@ int s29_flag_set(script_env *env) -s29_flag_set: @ 8099C14 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl FlagSet - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s29_flag_set - - thumb_func_start s2A_flag_clear -@ int s2A_flag_clear(script_env *env) -s2A_flag_clear: @ 8099C28 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl FlagReset - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s2A_flag_clear - - thumb_func_start s2B_flag_check -@ int s2B_flag_check(script_env *env) -s2B_flag_check: @ 8099C3C - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl FlagGet - strb r0, [r4, 0x2] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s2B_flag_check - - thumb_func_start sC3_unknown -@ int sC3_unknown(script_env *env) -sC3_unknown: @ 8099C58 - push {lr} - ldr r1, [r0, 0x8] - ldrb r2, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - adds r0, r2, 0 - bl IncrementGameStat - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sC3_unknown - - thumb_func_start s9A_unknown -@ int s9A_unknown(script_env *env) -s9A_unknown: @ 8099C70 - push {lr} - ldr r1, [r0, 0x8] - ldrb r2, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - adds r0, r2, 0 - bl sub_80B009C - bl ScriptContext1_Stop - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end s9A_unknown - - thumb_func_start s99_unknown -@ int s99_unknown(script_env *env) -s99_unknown: @ 8099C8C - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - bl sub_80854EC - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s99_unknown - - thumb_func_start sub_8099CA8 -sub_8099CA8: @ 8099CA8 - push {lr} - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08099CC0 - movs r0, 0 - b _08099CC2 - .pool -_08099CC0: - movs r0, 0x1 -_08099CC2: - pop {r1} - bx r1 - thumb_func_end sub_8099CA8 - - thumb_func_start s97_screen_special_effect -@ int s97_screen_special_effect(script_env *env) -s97_screen_special_effect: @ 8099CC8 - push {r4,lr} - adds r4, r0, 0 - ldr r1, [r4, 0x8] - ldrb r0, [r1] - adds r1, 0x1 - str r1, [r4, 0x8] - movs r1, 0 - bl fade_screen - ldr r1, =sub_8099CA8 - adds r0, r4, 0 - bl SetupNativeScript - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s97_screen_special_effect - - thumb_func_start s98_refade_with_timer -@ int s98_refade_with_timer(script_env *env) -s98_refade_with_timer: @ 8099CF0 - push {r4,lr} - adds r4, r0, 0 - ldr r2, [r4, 0x8] - ldrb r0, [r2] - adds r2, 0x1 - str r2, [r4, 0x8] - ldrb r1, [r2] - adds r2, 0x1 - str r2, [r4, 0x8] - lsls r1, 24 - asrs r1, 24 - bl fade_screen - ldr r1, =sub_8099CA8 - adds r0, r4, 0 - bl SetupNativeScript - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s98_refade_with_timer - - thumb_func_start sub_8099D20 -@ int sub_8099D20(script_env *env) -sub_8099D20: @ 8099D20 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r4, [r0] - adds r0, 0x1 - str r0, [r5, 0x8] - cmp r4, 0x1 - beq _08099D3E - cmp r4, 0x1 - bgt _08099D3A - cmp r4, 0 - beq _08099D60 - b _08099D3E -_08099D3A: - cmp r4, 0x2 - beq _08099D60 -_08099D3E: - ldr r0, =gPlttBufferUnfaded - ldr r1, =gPaletteDecompressionBuffer - ldr r2, =0x04000100 - bl CpuSet - adds r0, r4, 0 - movs r1, 0 - bl fade_screen - b _08099D72 - .pool -_08099D60: - ldr r0, =gPaletteDecompressionBuffer - ldr r1, =gPlttBufferUnfaded - ldr r2, =0x04000100 - bl CpuSet - adds r0, r4, 0 - movs r1, 0 - bl fade_screen -_08099D72: - ldr r1, =sub_8099CA8 - adds r0, r5, 0 - bl SetupNativeScript - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8099D20 - - thumb_func_start s28_pause_asm -s28_pause_asm: @ 8099D94 - push {lr} - ldr r1, =gUnknown_020375C8 - ldrh r0, [r1] - subs r0, 0x1 - strh r0, [r1] - lsls r0, 16 - cmp r0, 0 - beq _08099DAC - movs r0, 0 - b _08099DAE - .pool -_08099DAC: - movs r0, 0x1 -_08099DAE: - pop {r1} - bx r1 - thumb_func_end s28_pause_asm - - thumb_func_start s28_pause -@ int s28_pause(script_env *env) -s28_pause: @ 8099DB4 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - ldr r1, =gUnknown_020375C8 - strh r0, [r1] - ldr r1, =s28_pause_asm - adds r0, r4, 0 - bl SetupNativeScript - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s28_pause - - thumb_func_start s2C_unknown -@ int s2C_unknown(script_env *env) -s2C_unknown: @ 8099DD8 - push {r4,r5,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl RtcInitLocalTimeOffset - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end s2C_unknown - - thumb_func_start s2D_unknown -@ int s2D_unknown(script_env *env) -s2D_unknown: @ 8099E10 - push {lr} - bl sub_809E7B0 - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s2D_unknown - - thumb_func_start s2E_unknown -@ int s2E_unknown(script_env *env) -s2E_unknown: @ 8099E1C - push {lr} - bl RtcCalcLocalTime - ldr r2, =gSpecialVar_0x8000 - ldr r1, =gLocalTime - movs r0, 0x2 - ldrsb r0, [r1, r0] - strh r0, [r2] - ldr r2, =gSpecialVar_0x8001 - movs r0, 0x3 - ldrsb r0, [r1, r0] - strh r0, [r2] - ldr r2, =gSpecialVar_0x8002 - movs r0, 0x4 - ldrsb r0, [r1, r0] - strh r0, [r2] - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end s2E_unknown - - thumb_func_start sA4_set_weather_data -@ int sA4_set_weather_data(script_env *env) -sA4_set_weather_data: @ 8099E54 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - bl sub_80AED7C - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sA4_set_weather_data - - thumb_func_start sA3_set_standard_weather_data -@ int sA3_set_standard_weather_data(script_env *env) -sA3_set_standard_weather_data: @ 8099E70 - push {lr} - bl sub_80AEDBC - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sA3_set_standard_weather_data - - thumb_func_start sub_8099E7C -@ int sub_8099E7C(script_env *env) -sub_8099E7C: @ 8099E7C - push {lr} - bl sub_80AEE20 - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sub_8099E7C - - thumb_func_start sA6_activate_per_step_callback_eg_ash -@ int sA6_activate_per_step_callback_eg_ash(script_env *env) -sA6_activate_per_step_callback_eg_ash: @ 8099E88 - push {lr} - ldr r1, [r0, 0x8] - ldrb r2, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - adds r0, r2, 0 - bl activate_per_step_callback - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sA6_activate_per_step_callback_eg_ash - - thumb_func_start sA7_set_new_map_footer -@ int sA7_set_new_map_footer(script_env *env) -sA7_set_new_map_footer: @ 8099EA0 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - bl sub_8085524 - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sA7_set_new_map_footer - - thumb_func_start s39_warp_sfx -@ int s39_warp_sfx(script_env *env) -s39_warp_sfx: @ 8099EBC - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x4 - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r1, [r0] - mov r9, r1 - adds r0, 0x1 - str r0, [r5, 0x8] - ldrb r1, [r0] - mov r8, r1 - adds r1, r0, 0x1 - str r1, [r5, 0x8] - ldrb r6, [r0, 0x1] - adds r1, 0x1 - str r1, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - mov r1, r9 - lsls r1, 24 - asrs r1, 24 - mov r9, r1 - mov r1, r8 - lsls r1, 24 - asrs r1, 24 - mov r8, r1 - lsls r6, 24 - asrs r6, 24 - lsls r4, 24 - asrs r4, 24 - lsls r0, 24 - asrs r0, 24 - str r0, [sp] - mov r0, r9 - adds r2, r6, 0 - adds r3, r4, 0 - bl warp1_set - bl sub_80AF734 - bl player_avatar_init_params_reset - movs r0, 0x1 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end s39_warp_sfx - - thumb_func_start s3A_warp_new_music -@ int s3A_warp_new_music(script_env *env) -s3A_warp_new_music: @ 8099F44 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x4 - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r1, [r0] - mov r9, r1 - adds r0, 0x1 - str r0, [r5, 0x8] - ldrb r1, [r0] - mov r8, r1 - adds r1, r0, 0x1 - str r1, [r5, 0x8] - ldrb r6, [r0, 0x1] - adds r1, 0x1 - str r1, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - mov r1, r9 - lsls r1, 24 - asrs r1, 24 - mov r9, r1 - mov r1, r8 - lsls r1, 24 - asrs r1, 24 - mov r8, r1 - lsls r6, 24 - asrs r6, 24 - lsls r4, 24 - asrs r4, 24 - lsls r0, 24 - asrs r0, 24 - str r0, [sp] - mov r0, r9 - adds r2, r6, 0 - adds r3, r4, 0 - bl warp1_set - bl sp13E_warp_to_last_warp - bl player_avatar_init_params_reset - movs r0, 0x1 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end s3A_warp_new_music - - thumb_func_start s3B_warp_keep_music -@ int s3B_warp_keep_music(script_env *env) -s3B_warp_keep_music: @ 8099FCC - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x4 - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r1, [r0] - mov r9, r1 - adds r0, 0x1 - str r0, [r5, 0x8] - ldrb r1, [r0] - mov r8, r1 - adds r1, r0, 0x1 - str r1, [r5, 0x8] - ldrb r6, [r0, 0x1] - adds r1, 0x1 - str r1, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - mov r1, r9 - lsls r1, 24 - asrs r1, 24 - mov r9, r1 - mov r1, r8 - lsls r1, 24 - asrs r1, 24 - mov r8, r1 - lsls r6, 24 - asrs r6, 24 - lsls r4, 24 - asrs r4, 24 - lsls r0, 24 - asrs r0, 24 - str r0, [sp] - mov r0, r9 - adds r2, r6, 0 - adds r3, r4, 0 - bl warp1_set - bl sub_80AF7D0 - bl player_avatar_init_params_reset - movs r0, 0x1 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end s3B_warp_keep_music - - thumb_func_start sub_809A054 -sub_809A054: @ 809A054 - push {r4-r6,lr} - sub sp, 0x8 - ldr r1, [r0, 0x8] - ldrb r6, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - ldrb r5, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - mov r4, sp - adds r4, 0x6 - add r0, sp, 0x4 - adds r1, r4, 0 - bl PlayerGetDestCoords - cmp r6, 0xFF - bne _0809A092 - cmp r5, 0xFF - bne _0809A092 - add r0, sp, 0x4 - ldrh r0, [r0] - subs r0, 0x7 - lsls r0, 16 - asrs r0, 16 - ldrh r1, [r4] - subs r1, 0x7 - lsls r1, 16 - asrs r1, 16 - bl sub_8084EBC - b _0809A0B6 -_0809A092: - lsls r0, r6, 24 - asrs r0, 24 - lsls r1, r5, 24 - asrs r1, 24 - movs r2, 0x1 - negs r2, r2 - add r3, sp, 0x4 - ldrb r3, [r3] - subs r3, 0x7 - lsls r3, 24 - asrs r3, 24 - ldrb r4, [r4] - subs r4, 0x7 - lsls r4, 24 - asrs r4, 24 - str r4, [sp] - bl warp1_set -_0809A0B6: - bl sp13F_fall_to_last_warp - bl player_avatar_init_params_reset - movs r0, 0x1 - add sp, 0x8 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_809A054 - - thumb_func_start s3D_warp_v4 -s3D_warp_v4: @ 809A0C8 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x4 - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r1, [r0] - mov r9, r1 - adds r0, 0x1 - str r0, [r5, 0x8] - ldrb r1, [r0] - mov r8, r1 - adds r1, r0, 0x1 - str r1, [r5, 0x8] - ldrb r6, [r0, 0x1] - adds r1, 0x1 - str r1, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - mov r1, r9 - lsls r1, 24 - asrs r1, 24 - mov r9, r1 - mov r1, r8 - lsls r1, 24 - asrs r1, 24 - mov r8, r1 - lsls r6, 24 - asrs r6, 24 - lsls r4, 24 - asrs r4, 24 - lsls r0, 24 - asrs r0, 24 - str r0, [sp] - mov r0, r9 - adds r2, r6, 0 - adds r3, r4, 0 - bl warp1_set - bl sub_80AF848 - bl player_avatar_init_params_reset - movs r0, 0x1 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end s3D_warp_v4 - - thumb_func_start sub_809A150 -sub_809A150: @ 809A150 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x4 - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r1, [r0] - mov r9, r1 - adds r0, 0x1 - str r0, [r5, 0x8] - ldrb r1, [r0] - mov r8, r1 - adds r1, r0, 0x1 - str r1, [r5, 0x8] - ldrb r6, [r0, 0x1] - adds r1, 0x1 - str r1, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - mov r1, r9 - lsls r1, 24 - asrs r1, 24 - mov r9, r1 - mov r1, r8 - lsls r1, 24 - asrs r1, 24 - mov r8, r1 - lsls r6, 24 - asrs r6, 24 - lsls r4, 24 - asrs r4, 24 - lsls r0, 24 - asrs r0, 24 - str r0, [sp] - mov r0, r9 - adds r2, r6, 0 - adds r3, r4, 0 - bl warp1_set - bl sub_80AF87C - bl player_avatar_init_params_reset - movs r0, 0x1 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_809A150 - - thumb_func_start s3E_set_new_map -s3E_set_new_map: @ 809A1D8 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x4 - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r1, [r0] - mov r9, r1 - adds r0, 0x1 - str r0, [r5, 0x8] - ldrb r1, [r0] - mov r8, r1 - adds r1, r0, 0x1 - str r1, [r5, 0x8] - ldrb r6, [r0, 0x1] - adds r1, 0x1 - str r1, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - mov r1, r9 - lsls r1, 24 - asrs r1, 24 - mov r9, r1 - mov r1, r8 - lsls r1, 24 - asrs r1, 24 - mov r8, r1 - lsls r6, 24 - asrs r6, 24 - lsls r4, 24 - asrs r4, 24 - lsls r0, 24 - asrs r0, 24 - str r0, [sp] - mov r0, r9 - adds r2, r6, 0 - adds r3, r4, 0 - bl warp1_set - movs r0, 0 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end s3E_set_new_map - - thumb_func_start s3F_set_new_map_DMA -s3F_set_new_map_DMA: @ 809A258 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x8 - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r1, [r0] - mov r9, r1 - adds r0, 0x1 - str r0, [r5, 0x8] - ldrb r1, [r0] - mov r8, r1 - adds r1, r0, 0x1 - str r1, [r5, 0x8] - ldrb r6, [r0, 0x1] - adds r1, 0x1 - str r1, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - mov r1, r9 - lsls r1, 24 - asrs r1, 24 - mov r9, r1 - mov r1, r8 - lsls r1, 24 - asrs r1, 24 - mov r8, r1 - lsls r6, 24 - asrs r6, 24 - lsls r4, 24 - asrs r4, 24 - str r4, [sp] - lsls r0, 24 - asrs r0, 24 - str r0, [sp, 0x4] - movs r0, 0 - mov r1, r9 - mov r2, r8 - adds r3, r6, 0 - bl saved_warp2_set_2 - movs r0, 0 - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end s3F_set_new_map_DMA - - thumb_func_start sub_809A2DC -sub_809A2DC: @ 809A2DC - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x4 - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r1, [r0] - mov r9, r1 - adds r0, 0x1 - str r0, [r5, 0x8] - ldrb r1, [r0] - mov r8, r1 - adds r1, r0, 0x1 - str r1, [r5, 0x8] - ldrb r6, [r0, 0x1] - adds r1, 0x1 - str r1, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - mov r1, r9 - lsls r1, 24 - asrs r1, 24 - mov r9, r1 - mov r1, r8 - lsls r1, 24 - asrs r1, 24 - mov r8, r1 - lsls r6, 24 - asrs r6, 24 - lsls r4, 24 - asrs r4, 24 - lsls r0, 24 - asrs r0, 24 - str r0, [sp] - mov r0, r9 - adds r2, r6, 0 - adds r3, r4, 0 - bl sub_8084E2C - movs r0, 0 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_809A2DC - - thumb_func_start sub_809A35C -sub_809A35C: @ 809A35C - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x4 - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r1, [r0] - mov r9, r1 - adds r0, 0x1 - str r0, [r5, 0x8] - ldrb r1, [r0] - mov r8, r1 - adds r1, r0, 0x1 - str r1, [r5, 0x8] - ldrb r6, [r0, 0x1] - adds r1, 0x1 - str r1, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - mov r1, r9 - lsls r1, 24 - asrs r1, 24 - mov r9, r1 - mov r1, r8 - lsls r1, 24 - asrs r1, 24 - mov r8, r1 - lsls r6, 24 - asrs r6, 24 - lsls r4, 24 - asrs r4, 24 - lsls r0, 24 - asrs r0, 24 - str r0, [sp] - mov r0, r9 - adds r2, r6, 0 - adds r3, r4, 0 - bl sub_8084E80 - movs r0, 0 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_809A35C - - thumb_func_start sC4_unknown -sC4_unknown: @ 809A3DC - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x4 - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r1, [r0] - mov r9, r1 - adds r0, 0x1 - str r0, [r5, 0x8] - ldrb r1, [r0] - mov r8, r1 - adds r1, r0, 0x1 - str r1, [r5, 0x8] - ldrb r6, [r0, 0x1] - adds r1, 0x1 - str r1, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - mov r1, r9 - lsls r1, 24 - asrs r1, 24 - mov r9, r1 - mov r1, r8 - lsls r1, 24 - asrs r1, 24 - mov r8, r1 - lsls r6, 24 - asrs r6, 24 - lsls r4, 24 - asrs r4, 24 - lsls r0, 24 - asrs r0, 24 - str r0, [sp] - mov r0, r9 - adds r2, r6, 0 - adds r3, r4, 0 - bl sub_8084DD4 - movs r0, 0 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sC4_unknown - - thumb_func_start s42_get_map_camera_pos -@ int s42_get_map_camera_pos(script_env *env) -s42_get_map_camera_pos: @ 809A45C - push {r4,r5,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl GetVarPointer - adds r5, r0, 0 - adds r0, r4, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl GetVarPointer - ldr r2, =gSaveBlock1Ptr - ldr r1, [r2] - ldrh r1, [r1] - strh r1, [r5] - ldr r1, [r2] - ldrh r1, [r1, 0x2] - strh r1, [r0] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end s42_get_map_camera_pos - - thumb_func_start s43_get_player_party_count -s43_get_player_party_count: @ 809A498 - push {r4,lr} - ldr r4, =gScriptResult - bl CalculatePlayerPartyCount - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s43_get_player_party_count - - thumb_func_start s2F_music_play -s2F_music_play: @ 809A4B4 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl PlaySE - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s2F_music_play - - thumb_func_start s30_music_check_asm -s30_music_check_asm: @ 809A4C8 - push {lr} - bl IsSEPlaying - lsls r0, 24 - cmp r0, 0 - beq _0809A4D8 - movs r0, 0 - b _0809A4DA -_0809A4D8: - movs r0, 0x1 -_0809A4DA: - pop {r1} - bx r1 - thumb_func_end s30_music_check_asm - - thumb_func_start s30_music_check -s30_music_check: @ 809A4E0 - push {lr} - ldr r1, =s30_music_check_asm - bl SetupNativeScript - movs r0, 0x1 - pop {r1} - bx r1 - .pool - thumb_func_end s30_music_check - - thumb_func_start s31_PlayFanfare -s31_PlayFanfare: @ 809A4F4 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl PlayFanfare - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s31_PlayFanfare - - thumb_func_start s32_fanfare_wait_asm -s32_fanfare_wait_asm: @ 809A508 - push {lr} - bl IsFanfareTaskInactive - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end s32_fanfare_wait_asm - - thumb_func_start s32_fanfare_wait -s32_fanfare_wait: @ 809A518 - push {lr} - ldr r1, =s32_fanfare_wait_asm - bl SetupNativeScript - movs r0, 0x1 - pop {r1} - bx r1 - .pool - thumb_func_end s32_fanfare_wait - - thumb_func_start s33_play_music -@ int s33_play_music(script_env *env) -s33_play_music: @ 809A52C - push {r4,r5,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r2, r0, 16 - adds r5, r2, 0 - ldr r0, [r4, 0x8] - ldrb r1, [r0] - adds r0, 0x1 - str r0, [r4, 0x8] - cmp r1, 0x1 - bne _0809A54C - adds r0, r2, 0 - bl sav1_set_battle_music_maybe -_0809A54C: - adds r0, r5, 0 - bl PlayNewMapMusic - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end s33_play_music - - thumb_func_start s34_unknown -s34_unknown: @ 809A55C - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl sav1_set_battle_music_maybe - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s34_unknown - - thumb_func_start s35_fade_to_default -s35_fade_to_default: @ 809A570 - push {lr} - bl sub_8085898 - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s35_fade_to_default - - thumb_func_start s36_fade_to_music -s36_fade_to_music: @ 809A57C - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl sub_80858C4 - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s36_fade_to_music - - thumb_func_start s37_fadeout -s37_fadeout: @ 809A590 - push {r4,lr} - adds r4, r0, 0 - ldr r0, [r4, 0x8] - ldrb r1, [r0] - adds r0, 0x1 - str r0, [r4, 0x8] - cmp r1, 0 - beq _0809A5AA - lsls r0, r1, 26 - lsrs r0, 24 - bl FadeOutBGMTemporarily - b _0809A5B0 -_0809A5AA: - movs r0, 0x4 - bl FadeOutBGMTemporarily -_0809A5B0: - ldr r1, =IsBGMPausedOrStopped - adds r0, r4, 0 - bl SetupNativeScript - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s37_fadeout - - thumb_func_start s38_fadein -s38_fadein: @ 809A5C4 - push {lr} - ldr r1, [r0, 0x8] - ldrb r2, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - cmp r2, 0 - beq _0809A5DC - lsls r0, r2, 26 - lsrs r0, 24 - bl FadeInBGM - b _0809A5E2 -_0809A5DC: - movs r0, 0x4 - bl FadeInBGM -_0809A5E2: - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s38_fadein - - thumb_func_start s4F_execute_movement -s4F_execute_movement: @ 809A5E8 - push {r4,r5,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadWord - adds r3, r0, 0 - lsls r0, r4, 24 - lsrs r0, 24 - ldr r1, =gSaveBlock1Ptr - ldr r2, [r1] - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - bl exec_movement - ldr r0, =gUnknown_020375CA - strh r4, [r0] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end s4F_execute_movement - - thumb_func_start s50_execute_movement_remote -s50_execute_movement_remote: @ 809A62C - push {r4,r5,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadWord - adds r3, r0, 0 - ldr r0, [r5, 0x8] - ldrb r2, [r0] - adds r0, 0x1 - str r0, [r5, 0x8] - ldrb r1, [r0] - adds r0, 0x1 - str r0, [r5, 0x8] - lsls r0, r4, 24 - lsrs r0, 24 - bl exec_movement - ldr r0, =gUnknown_020375CA - strh r4, [r0] - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end s50_execute_movement_remote - - thumb_func_start s51a_0806B288 -s51a_0806B288: @ 809A670 - push {lr} - ldr r0, =gUnknown_020375CA - ldrb r0, [r0] - ldr r1, =gUnknown_020375CE - ldrb r1, [r1] - ldr r2, =gUnknown_020375CC - ldrb r2, [r2] - bl sub_80D3340 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .pool - thumb_func_end s51a_0806B288 - - thumb_func_start s51_waitmove -s51_waitmove: @ 809A698 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _0809A6B4 - ldr r0, =gUnknown_020375CA - strh r1, [r0] -_0809A6B4: - ldr r1, =gUnknown_020375CC - ldr r0, =gSaveBlock1Ptr - ldr r2, [r0] - movs r0, 0x4 - ldrsb r0, [r2, r0] - strh r0, [r1] - ldr r1, =gUnknown_020375CE - movs r0, 0x5 - ldrsb r0, [r2, r0] - strh r0, [r1] - ldr r1, =s51a_0806B288 - adds r0, r4, 0 - bl SetupNativeScript - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s51_waitmove - - thumb_func_start s52_waitmove_remote -s52_waitmove_remote: @ 809A6EC - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _0809A708 - ldr r0, =gUnknown_020375CA - strh r1, [r0] -_0809A708: - ldr r0, [r4, 0x8] - ldrb r2, [r0] - adds r0, 0x1 - str r0, [r4, 0x8] - ldrb r1, [r0] - adds r0, 0x1 - str r0, [r4, 0x8] - ldr r0, =gUnknown_020375CC - strh r2, [r0] - ldr r0, =gUnknown_020375CE - strh r1, [r0] - ldr r1, =s51a_0806B288 - adds r0, r4, 0 - bl SetupNativeScript - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s52_waitmove_remote - - thumb_func_start s53_hide_sprite -s53_hide_sprite: @ 809A740 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gSaveBlock1Ptr - ldr r2, [r1] - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - bl RemoveFieldObjectByLocalIdAndMap - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end s53_hide_sprite - - thumb_func_start s54_hide_sprite_set_coords -s54_hide_sprite_set_coords: @ 809A768 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldr r3, [r4, 0x8] - ldrb r2, [r3] - adds r3, 0x1 - str r3, [r4, 0x8] - ldrb r1, [r3] - adds r3, 0x1 - str r3, [r4, 0x8] - lsls r0, 24 - lsrs r0, 24 - bl RemoveFieldObjectByLocalIdAndMap - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s54_hide_sprite_set_coords - - thumb_func_start s55_show_sprite -s55_show_sprite: @ 809A798 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gSaveBlock1Ptr - ldr r2, [r1] - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - bl show_sprite - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end s55_show_sprite - - thumb_func_start s56_show_sprite_set_coords -s56_show_sprite_set_coords: @ 809A7C0 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldr r3, [r4, 0x8] - ldrb r2, [r3] - adds r3, 0x1 - str r3, [r4, 0x8] - ldrb r1, [r3] - adds r3, 0x1 - str r3, [r4, 0x8] - lsls r0, 24 - lsrs r0, 24 - bl show_sprite - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s56_show_sprite_set_coords - - thumb_func_start s57_move_sprites -s57_move_sprites: @ 809A7F0 - push {r4-r6,lr} - sub sp, 0x4 - adds r6, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - adds r0, r6, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r6, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r5, 24 - lsrs r5, 24 - ldr r1, =gSaveBlock1Ptr - ldr r2, [r1] - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - lsls r4, 16 - asrs r4, 16 - lsls r0, 16 - asrs r0, 16 - str r0, [sp] - adds r0, r5, 0 - adds r3, r4, 0 - bl sub_808EBA8 - movs r0, 0 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .pool - thumb_func_end s57_move_sprites - - thumb_func_start s63_new_sprite_location_permanent -s63_new_sprite_location_permanent: @ 809A858 - push {r4-r6,lr} - adds r6, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - adds r0, r6, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r6, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r2, r0, 0 - lsls r5, 24 - lsrs r5, 24 - lsls r4, 16 - asrs r4, 16 - lsls r2, 16 - asrs r2, 16 - adds r0, r5, 0 - adds r1, r4, 0 - bl update_saveblock1_field_object_coords - movs r0, 0 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end s63_new_sprite_location_permanent - - thumb_func_start s64_set_sprite_top_left_corner -s64_set_sprite_top_left_corner: @ 809A8B0 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gSaveBlock1Ptr - ldr r2, [r1] - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - bl sub_808F254 - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end s64_set_sprite_top_left_corner - - thumb_func_start s58_npc_f1_clear_x20 -s58_npc_f1_clear_x20: @ 809A8D8 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldr r3, [r4, 0x8] - ldrb r2, [r3] - adds r3, 0x1 - str r3, [r4, 0x8] - ldrb r1, [r3] - adds r3, 0x1 - str r3, [r4, 0x8] - lsls r0, 24 - lsrs r0, 24 - movs r3, 0 - bl npc_by_local_id_and_map_set_field_1_bit_x20 - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s58_npc_f1_clear_x20 - - thumb_func_start s59_npc_f1_set_x20 -s59_npc_f1_set_x20: @ 809A908 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldr r3, [r4, 0x8] - ldrb r2, [r3] - adds r3, 0x1 - str r3, [r4, 0x8] - ldrb r1, [r3] - adds r3, 0x1 - str r3, [r4, 0x8] - lsls r0, 24 - lsrs r0, 24 - movs r3, 0x1 - bl npc_by_local_id_and_map_set_field_1_bit_x20 - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s59_npc_f1_set_x20 - - thumb_func_start sA8_unknown -sA8_unknown: @ 809A938 - push {r4,r5,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldr r3, [r5, 0x8] - ldrb r2, [r3] - adds r3, 0x1 - str r3, [r5, 0x8] - ldrb r1, [r3] - adds r4, r3, 0x1 - str r4, [r5, 0x8] - ldrb r3, [r3, 0x1] - adds r4, 0x1 - str r4, [r5, 0x8] - lsls r0, 24 - lsrs r0, 24 - adds r3, 0x53 - lsls r3, 24 - lsrs r3, 24 - bl sub_808E78C - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sA8_unknown - - thumb_func_start sA9_unknown -sA9_unknown: @ 809A974 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldr r3, [r4, 0x8] - ldrb r2, [r3] - adds r3, 0x1 - str r3, [r4, 0x8] - ldrb r1, [r3] - adds r3, 0x1 - str r3, [r4, 0x8] - lsls r0, 24 - lsrs r0, 24 - bl sub_808E7E4 - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sA9_unknown - - thumb_func_start s5A_face_player -s5A_face_player: @ 809A9A4 - push {r4,lr} - ldr r2, =gMapObjects - ldr r0, =gSelectedMapObject - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r4, r0, r2 - ldrb r0, [r4] - lsls r0, 31 - cmp r0, 0 - beq _0809A9CC - bl player_get_direction_lower_nybble - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl FieldObjectFaceOppositeDirection -_0809A9CC: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s5A_face_player - - thumb_func_start s5B_npc_set_direction -s5B_npc_set_direction: @ 809A9DC - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldr r1, [r4, 0x8] - ldrb r3, [r1] - adds r1, 0x1 - str r1, [r4, 0x8] - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gSaveBlock1Ptr - ldr r2, [r1] - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - bl FieldObjectTurnByLocalIdAndMap - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s5B_npc_set_direction - - thumb_func_start s65_set_sprite_behaviour -s65_set_sprite_behaviour: @ 809AA10 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldr r2, [r4, 0x8] - ldrb r1, [r2] - adds r2, 0x1 - str r2, [r4, 0x8] - lsls r0, 24 - lsrs r0, 24 - bl update_saveblock1_field_object_movement_behavior - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s65_set_sprite_behaviour - - thumb_func_start sAA_create_new_sprite -sAA_create_new_sprite: @ 809AA38 - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x8 - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r1, [r0] - mov r8, r1 - adds r0, 0x1 - str r0, [r5, 0x8] - ldrb r6, [r0] - adds r0, 0x1 - str r0, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r3, r0, 0 - ldr r0, [r5, 0x8] - ldrb r2, [r0] - adds r0, 0x1 - str r0, [r5, 0x8] - ldrb r1, [r0] - adds r0, 0x1 - str r0, [r5, 0x8] - lsls r4, 16 - asrs r4, 16 - lsls r3, 16 - asrs r3, 16 - str r2, [sp] - str r1, [sp, 0x4] - mov r0, r8 - adds r1, r6, 0 - adds r2, r4, 0 - bl sprite_new - movs r0, 0 - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sAA_create_new_sprite - - thumb_func_start sAB_unknown -sAB_unknown: @ 809AAA8 - push {lr} - ldr r2, [r0, 0x8] - ldrb r3, [r2] - adds r2, 0x1 - str r2, [r0, 0x8] - ldrb r1, [r2] - adds r2, 0x1 - str r2, [r0, 0x8] - adds r0, r3, 0 - bl sub_8097B78 - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sAB_unknown - - thumb_func_start sub_809AAC4 -sub_809AAC4: @ 809AAC4 - push {r4,lr} - adds r4, r0, 0 - bl is_c1_link_related_active - cmp r0, 0 - bne _0809AAE4 - bl sub_80983E8 - ldr r1, =sub_80983C4 - adds r0, r4, 0 - bl SetupNativeScript - movs r0, 0x1 - b _0809AAE6 - .pool -_0809AAE4: - movs r0, 0 -_0809AAE6: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809AAC4 - - thumb_func_start sub_809AAEC -sub_809AAEC: @ 809AAEC - push {r4,lr} - adds r4, r0, 0 - bl is_c1_link_related_active - cmp r0, 0 - beq _0809AAFC - movs r0, 0 - b _0809AB3A -_0809AAFC: - ldr r2, =gMapObjects - ldr r0, =gSelectedMapObject - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - lsls r0, 31 - cmp r0, 0 - beq _0809AB2C - bl sub_80984A0 - ldr r1, =sub_809847C - adds r0, r4, 0 - bl SetupNativeScript - b _0809AB38 - .pool -_0809AB2C: - bl sub_80983E8 - ldr r1, =sub_80983C4 - adds r0, r4, 0 - bl SetupNativeScript -_0809AB38: - movs r0, 0x1 -_0809AB3A: - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_809AAEC - - thumb_func_start s6B_release -s6B_release: @ 809AB44 - push {lr} - bl textbox_close - movs r0, 0xFF - movs r1, 0 - movs r2, 0 - bl GetFieldObjectIdByLocalIdAndMap - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =gMapObjects - adds r0, r1 - bl FieldObjectClearAnimIfSpecialAnimFinished - bl sub_80D338C - bl sub_809757C - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end s6B_release - - thumb_func_start s6C_release_2 -s6C_release_2: @ 809AB7C - push {r4,lr} - bl textbox_close - ldr r4, =gMapObjects - ldr r0, =gSelectedMapObject - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r4 - ldrb r0, [r1] - lsls r0, 31 - cmp r0, 0 - beq _0809AB9E - adds r0, r1, 0 - bl FieldObjectClearAnimIfSpecialAnimFinished -_0809AB9E: - movs r0, 0xFF - movs r1, 0 - movs r2, 0 - bl GetFieldObjectIdByLocalIdAndMap - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl FieldObjectClearAnimIfSpecialAnimFinished - bl sub_80D338C - bl sub_809757C - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s6C_release_2 - - thumb_func_start s67_execute_box -s67_execute_box: @ 809ABD4 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadWord - cmp r0, 0 - bne _0809ABE2 - ldr r0, [r4, 0x64] -_0809ABE2: - bl box_related_two__2 - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s67_execute_box - - thumb_func_start sub_809ABF0 -sub_809ABF0: @ 809ABF0 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadWord - cmp r0, 0 - bne _0809ABFE - ldr r0, [r4, 0x64] -_0809ABFE: - bl sub_8098238 - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809ABF0 - - thumb_func_start s9B_unknown -s9B_unknown: @ 809AC0C - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadWord - adds r3, r0, 0 - cmp r3, 0 - bne _0809AC1C - ldr r3, [r4, 0x64] -_0809AC1C: - ldr r2, =gTextFlags - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - movs r1, 0x8 - orrs r0, r1 - strb r0, [r2] - adds r0, r3, 0 - bl box_related_two__3 - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s9B_unknown - - thumb_func_start sub_809AC3C -sub_809AC3C: @ 809AC3C - push {r4,r5,lr} - sub sp, 0xC - adds r5, r0, 0 - bl ScriptReadWord - adds r4, r0, 0 - cmp r4, 0 - bne _0809AC4E - ldr r4, [r5, 0x64] -_0809AC4E: - bl sub_81973A4 - movs r0, 0 - movs r1, 0x1 - bl sub_81973C4 - movs r0, 0x1 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - str r0, [sp, 0x8] - movs r1, 0x1 - adds r2, r4, 0 - movs r3, 0 - bl PrintTextOnWindow - movs r0, 0 - add sp, 0xC - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_809AC3C - - thumb_func_start sub_809AC78 -sub_809AC78: @ 809AC78 - push {lr} - ldr r1, =sub_809833C - bl SetupNativeScript - movs r0, 0x1 - pop {r1} - bx r1 - .pool - thumb_func_end sub_809AC78 - - thumb_func_start s68_close_box -s68_close_box: @ 809AC8C - push {lr} - bl textbox_close - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s68_close_box - - thumb_func_start sub_809AC98 -sub_809AC98: @ 809AC98 - push {lr} - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0809ACB8 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0809ACB8 - movs r0, 0 - b _0809ACBA - .pool -_0809ACB8: - movs r0, 0x1 -_0809ACBA: - pop {r1} - bx r1 - thumb_func_end sub_809AC98 - - thumb_func_start sub_809ACC0 -sub_809ACC0: @ 809ACC0 - push {lr} - ldr r1, =sub_809AC98 - bl SetupNativeScript - movs r0, 0x1 - pop {r1} - bx r1 - .pool - thumb_func_end sub_809ACC0 - - thumb_func_start s6E_yes_no -s6E_yes_no: @ 809ACD4 - push {lr} - ldr r2, [r0, 0x8] - ldrb r3, [r2] - adds r2, 0x1 - str r2, [r0, 0x8] - ldrb r1, [r2] - adds r2, 0x1 - str r2, [r0, 0x8] - adds r0, r3, 0 - bl yes_no_box - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0809ACF6 - movs r0, 0 - b _0809ACFC -_0809ACF6: - bl ScriptContext1_Stop - movs r0, 0x1 -_0809ACFC: - pop {r1} - bx r1 - thumb_func_end s6E_yes_no - - thumb_func_start s6F_multichoice -s6F_multichoice: @ 809AD00 - push {r4,r5,lr} - ldr r2, [r0, 0x8] - ldrb r5, [r2] - adds r2, 0x1 - str r2, [r0, 0x8] - ldrb r1, [r2] - adds r3, r2, 0x1 - str r3, [r0, 0x8] - ldrb r2, [r2, 0x1] - adds r4, r3, 0x1 - str r4, [r0, 0x8] - ldrb r3, [r3, 0x1] - adds r4, 0x1 - str r4, [r0, 0x8] - adds r0, r5, 0 - bl Multichoice - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0809AD2E - movs r0, 0 - b _0809AD34 -_0809AD2E: - bl ScriptContext1_Stop - movs r0, 0x1 -_0809AD34: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end s6F_multichoice - - thumb_func_start sub_809AD3C -sub_809AD3C: @ 809AD3C - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x4 - ldr r2, [r0, 0x8] - ldrb r1, [r2] - mov r8, r1 - adds r2, 0x1 - str r2, [r0, 0x8] - ldrb r1, [r2] - adds r3, r2, 0x1 - str r3, [r0, 0x8] - ldrb r2, [r2, 0x1] - adds r5, r3, 0x1 - str r5, [r0, 0x8] - ldrb r6, [r3, 0x1] - adds r4, r5, 0x1 - str r4, [r0, 0x8] - ldrb r3, [r5, 0x1] - adds r4, 0x1 - str r4, [r0, 0x8] - str r6, [sp] - mov r0, r8 - bl sub_80E1E58 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0809AD7A - movs r0, 0 - b _0809AD80 -_0809AD7A: - bl ScriptContext1_Stop - movs r0, 0x1 -_0809AD80: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_809AD3C - - thumb_func_start sub_809AD8C -sub_809AD8C: @ 809AD8C - movs r0, 0 - bx lr - thumb_func_end sub_809AD8C - - thumb_func_start sub_809AD90 -sub_809AD90: @ 809AD90 - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x4 - ldr r2, [r0, 0x8] - ldrb r1, [r2] - mov r8, r1 - adds r2, 0x1 - str r2, [r0, 0x8] - ldrb r1, [r2] - adds r3, r2, 0x1 - str r3, [r0, 0x8] - ldrb r2, [r2, 0x1] - adds r5, r3, 0x1 - str r5, [r0, 0x8] - ldrb r6, [r3, 0x1] - adds r4, r5, 0x1 - str r4, [r0, 0x8] - ldrb r3, [r5, 0x1] - adds r4, 0x1 - str r4, [r0, 0x8] - str r6, [sp] - mov r0, r8 - bl sub_80E21D0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0809ADCE - movs r0, 0 - b _0809ADD4 -_0809ADCE: - bl ScriptContext1_Stop - movs r0, 0x1 -_0809ADD4: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_809AD90 - - thumb_func_start s73_nop_skip_word -s73_nop_skip_word: @ 809ADE0 - ldr r1, [r0, 0x8] - adds r1, 0x4 - str r1, [r0, 0x8] - movs r0, 0 - bx lr - thumb_func_end s73_nop_skip_word - - thumb_func_start sub_809ADEC -sub_809ADEC: @ 809ADEC - ldr r1, [r0, 0x8] - adds r1, 0x4 - str r1, [r0, 0x8] - movs r0, 0 - bx lr - thumb_func_end sub_809ADEC - - thumb_func_start sub_809ADF8 -sub_809ADF8: @ 809ADF8 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - ldr r3, [r4, 0x8] - ldrb r1, [r3] - adds r3, 0x1 - str r3, [r4, 0x8] - ldrb r2, [r3] - adds r3, 0x1 - str r3, [r4, 0x8] - bl sub_80E2900 - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809ADF8 - - thumb_func_start s76_close_picture_box -s76_close_picture_box: @ 809AE28 - push {r4,lr} - adds r4, r0, 0 - bl picbox_close - adds r1, r0, 0 - cmp r1, 0 - beq _0809AE40 - adds r0, r4, 0 - bl SetupNativeScript - movs r0, 0x1 - b _0809AE42 -_0809AE40: - movs r0, 0 -_0809AE42: - pop {r4} - pop {r1} - bx r1 - thumb_func_end s76_close_picture_box - - thumb_func_start sub_809AE48 -sub_809AE48: @ 809AE48 - push {lr} - ldr r1, [r0, 0x8] - ldrb r2, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - cmp r2, 0 - beq _0809AE5C - adds r0, r2, 0 - bl sub_812FDA8 -_0809AE5C: - bl sub_80F8ADC - bl ScriptContext1_Stop - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_809AE48 - - thumb_func_start sub_809AE6C -sub_809AE6C: @ 809AE6C - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x20 - bl ScriptReadWord - adds r1, r0, 0 - ldr r4, =gStringVar4 - adds r1, 0x6 - adds r0, r4, 0 - bl StringExpandPlaceholders - movs r2, 0x1 - negs r2, r2 - movs r0, 0x6 - adds r1, r4, 0 - bl GetStringWidth - lsrs r0, 3 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0x1C - bls _0809AE9C - movs r7, 0x1C -_0809AE9C: - movs r5, 0x4 - ldrb r0, [r4] - adds r2, r7, 0x2 - add r1, sp, 0x18 - mov r8, r1 - cmp r0, 0xFF - beq _0809AEC0 - adds r1, r4, 0 -_0809AEAC: - ldrb r0, [r1] - adds r1, 0x1 - cmp r0, 0xFE - bne _0809AEBA - adds r0, r5, 0x3 - lsls r0, 24 - lsrs r5, r0, 24 -_0809AEBA: - ldrb r0, [r1] - cmp r0, 0xFF - bne _0809AEAC -_0809AEC0: - cmp r5, 0x12 - bls _0809AEC6 - movs r5, 0x12 -_0809AEC6: - lsls r0, r2, 24 - lsrs r0, 24 - movs r2, 0x1E - subs r2, r0 - lsrs r0, r2, 31 - adds r2, r0 - asrs r2, 1 - lsls r2, 24 - adds r0, r5, 0x2 - lsls r0, 24 - lsrs r0, 24 - movs r4, 0x14 - subs r4, r0 - lsrs r0, r4, 31 - adds r4, r0 - asrs r4, 1 - lsls r4, 24 - lsrs r6, r2, 24 - movs r0, 0x80 - lsls r0, 17 - adds r2, r0 - lsrs r2, 24 - lsrs r3, r4, 24 - movs r1, 0x80 - lsls r1, 18 - adds r4, r1 - lsrs r4, 24 - subs r6, r2, r6 - subs r6, 0x1 - lsls r6, 3 - adds r6, 0x3 - lsls r6, 24 - lsrs r6, 24 - subs r4, r3 - subs r4, 0x1 - lsls r4, 27 - lsrs r4, 24 - adds r3, 0x1 - lsls r3, 24 - lsrs r3, 24 - str r7, [sp] - str r5, [sp, 0x4] - movs r0, 0xF - str r0, [sp, 0x8] - movs r0, 0x1 - str r0, [sp, 0xC] - add r0, sp, 0x10 - movs r1, 0 - bl sub_8198A50 - ldr r0, [sp, 0x10] - ldr r1, [sp, 0x14] - str r0, [sp, 0x18] - str r1, [sp, 0x1C] - ldr r5, =gUnknown_03000F30 - mov r0, r8 - bl AddWindow - strb r0, [r5] - ldrb r0, [r5] - movs r1, 0x85 - lsls r1, 2 - movs r2, 0xE0 - bl sub_809882C - ldrb r0, [r5] - movs r1, 0 - bl sub_81973FC - ldrb r0, [r5] - bl PutWindowTilemap - ldrb r0, [r5] - movs r1, 0x11 - bl FillWindowPixelBuffer - ldrb r0, [r5] - ldr r2, =gStringVar4 - str r4, [sp] - movs r1, 0xFF - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - movs r1, 0x6 - adds r3, r6, 0 - bl PrintTextOnWindow - ldrb r0, [r5] - movs r1, 0x3 - bl CopyWindowToVram - movs r0, 0 - add sp, 0x20 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_809AE6C - - thumb_func_start sub_809AF94 -sub_809AF94: @ 809AF94 - push {lr} - bl sub_809BDB4 - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sub_809AF94 - - thumb_func_start sBD_virtual_message -sBD_virtual_message: @ 809AFA0 - push {lr} - bl ScriptReadWord - ldr r1, =gUnknown_020375C4 - ldr r1, [r1] - subs r0, r1 - bl box_related_two__2 - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end sBD_virtual_message - - thumb_func_start s7D_load_pokename -s7D_load_pokename: @ 809AFBC - push {r4,lr} - ldr r1, [r0, 0x8] - ldrb r4, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - ldr r1, =gUnknown_085102D4 - lsls r4, 2 - adds r4, r1 - ldr r2, [r4] - movs r1, 0xB - muls r1, r0 - ldr r0, =gSpeciesNames - adds r1, r0 - adds r0, r2, 0 - bl StringCopy - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s7D_load_pokename - - thumb_func_start s7E_load_first_pokenames -s7E_load_first_pokenames: @ 809AFFC - push {r4,lr} - ldr r1, [r0, 0x8] - ldrb r2, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - ldr r0, =gUnknown_085102D4 - lsls r2, 2 - adds r2, r0 - ldr r4, [r2] - bl sub_8139688 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0xB - movs r2, 0 - bl GetMonData - movs r1, 0xB - muls r1, r0 - ldr r0, =gSpeciesNames - adds r1, r0 - adds r0, r4, 0 - bl StringCopy - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s7E_load_first_pokenames - - thumb_func_start s7F_load_pokename_team -s7F_load_pokename_team: @ 809B048 - push {r4,lr} - ldr r1, [r0, 0x8] - ldrb r4, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r1, =gUnknown_085102D4 - lsls r4, 2 - adds r4, r1 - ldr r4, [r4] - movs r1, 0x2 - adds r2, r4, 0 - bl GetMonData - adds r0, r4, 0 - bl StringGetEnd10 - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s7F_load_pokename_team - - thumb_func_start s80_load_item_name -s80_load_item_name: @ 809B090 - push {r4,lr} - ldr r1, [r0, 0x8] - ldrb r4, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - ldr r1, =gUnknown_085102D4 - lsls r4, 2 - adds r4, r1 - ldr r1, [r4] - bl CopyItemName - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s80_load_item_name - - thumb_func_start sub_809B0C4 -sub_809B0C4: @ 809B0C4 - push {r4-r6,lr} - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r6, [r0] - adds r0, 0x1 - str r0, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r2, r0, 0 - lsls r2, 16 - lsrs r2, 16 - ldr r0, =gUnknown_085102D4 - lsls r6, 2 - adds r6, r0 - ldr r1, [r6] - adds r0, r4, 0 - bl CopyItemNameHandlePlural - movs r0, 0 - pop {r4-r6} - pop {r1} - bx r1 - .pool - thumb_func_end sub_809B0C4 - - thumb_func_start sub_809B114 -sub_809B114: @ 809B114 - push {r4,lr} - ldr r1, [r0, 0x8] - ldrb r4, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r1, r0, 0 - lsls r1, 16 - ldr r0, =gUnknown_085102D4 - lsls r4, 2 - adds r4, r0 - ldr r0, [r4] - lsrs r1, 11 - ldr r2, =gDecorations + 1 - adds r1, r2 - bl StringCopy - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_809B114 - - thumb_func_start s82_load_item_name -s82_load_item_name: @ 809B150 - push {r4,lr} - ldr r1, [r0, 0x8] - ldrb r4, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - ldr r1, =gUnknown_085102D4 - lsls r4, 2 - adds r4, r1 - ldr r2, [r4] - movs r1, 0xD - muls r1, r0 - ldr r0, =gMoveNames - adds r1, r0 - adds r0, r2, 0 - bl StringCopy - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s82_load_item_name - - thumb_func_start s83_load_textvar_var -s83_load_textvar_var: @ 809B190 - push {r4,r5,lr} - ldr r1, [r0, 0x8] - ldrb r5, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r4, 0 - bl sub_80EF370 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - ldr r0, =gUnknown_085102D4 - lsls r5, 2 - adds r5, r0 - ldr r0, [r5] - adds r1, r4, 0 - movs r2, 0 - bl ConvertIntToDecimalStringN - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end s83_load_textvar_var - - thumb_func_start s84_load_textvar_std_expression -s84_load_textvar_std_expression: @ 809B1D4 - push {r4,lr} - ldr r1, [r0, 0x8] - ldrb r4, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - ldr r1, =gUnknown_085102D4 - lsls r4, 2 - adds r4, r1 - ldr r2, [r4] - ldr r1, =gUnknown_0858BAF0 - lsrs r0, 14 - adds r0, r1 - ldr r1, [r0] - adds r0, r2, 0 - bl StringCopy - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s84_load_textvar_std_expression - - thumb_func_start sub_809B214 -sub_809B214: @ 809B214 - push {r4,lr} - ldr r1, [r0, 0x8] - ldrb r4, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r1, r0, 0 - ldr r0, =gUnknown_085102D4 - lsls r4, 2 - adds r4, r0 - ldr r0, [r4] - lsls r1, 24 - lsrs r1, 24 - bl sub_818E868 - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_809B214 - - thumb_func_start s85_load_textvar_pointer -s85_load_textvar_pointer: @ 809B248 - push {r4,lr} - ldr r1, [r0, 0x8] - ldrb r4, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl ScriptReadWord - adds r1, r0, 0 - ldr r0, =gUnknown_085102D4 - lsls r4, 2 - adds r4, r0 - ldr r0, [r4] - bl StringCopy - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s85_load_textvar_pointer - - thumb_func_start sBE_virtual_load_text -sBE_virtual_load_text: @ 809B270 - push {lr} - bl ScriptReadWord - adds r1, r0, 0 - ldr r0, =gUnknown_020375C4 - ldr r0, [r0] - subs r1, r0 - ldr r0, =gStringVar4 - bl StringExpandPlaceholders - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end sBE_virtual_load_text - - thumb_func_start sBF_virtual_load_textbuffer -sBF_virtual_load_textbuffer: @ 809B294 - push {r4,lr} - ldr r1, [r0, 0x8] - ldrb r4, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl ScriptReadWord - adds r1, r0, 0 - ldr r0, =gUnknown_020375C4 - ldr r0, [r0] - subs r1, r0 - ldr r0, =gUnknown_085102D4 - lsls r4, 2 - adds r4, r0 - ldr r0, [r4] - bl StringCopy - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sBF_virtual_load_textbuffer - - thumb_func_start sC6_load_textvar_box_label -sC6_load_textvar_box_label: @ 809B2C8 - push {r4,lr} - ldr r1, [r0, 0x8] - ldrb r4, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldr r1, =gUnknown_085102D4 - lsls r4, 2 - adds r4, r1 - ldr r4, [r4] - lsls r0, 24 - lsrs r0, 24 - bl sav3_get_box_name - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sC6_load_textvar_box_label - - thumb_func_start s79_give_pokemon -s79_give_pokemon: @ 809B304 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x8 - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r6, r0, 0 - lsls r6, 16 - lsrs r6, 16 - ldr r0, [r4, 0x8] - ldrb r1, [r0] - mov r9, r1 - adds r0, 0x1 - str r0, [r4, 0x8] - adds r0, r4, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - adds r0, r4, 0 - bl ScriptReadWord - mov r8, r0 - adds r0, r4, 0 - bl ScriptReadWord - ldr r1, [r4, 0x8] - ldrb r2, [r1] - adds r1, 0x1 - str r1, [r4, 0x8] - ldr r4, =gScriptResult - str r0, [sp] - str r2, [sp, 0x4] - adds r0, r6, 0 - mov r1, r9 - adds r2, r5, 0 - mov r3, r8 - bl sub_80F9244 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4] - movs r0, 0 - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - .pool - thumb_func_end s79_give_pokemon - - thumb_func_start s7A_create_egg -s7A_create_egg: @ 809B384 - push {r4,lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - ldr r4, =gScriptResult - bl sub_80F92C8 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s7A_create_egg - - thumb_func_start s7B_change_pokedata_AP -s7B_change_pokedata_AP: @ 809B3B0 - push {r4,r5,lr} - ldr r1, [r0, 0x8] - ldrb r5, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - ldrb r4, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl ScriptReadHalfword - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r5, 0 - adds r2, r4, 0 - bl sub_80F9400 - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end s7B_change_pokedata_AP - - thumb_func_start sub_809B3DC -sub_809B3DC: @ 809B3DC - push {r4-r7,lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r7, r0, 16 - ldr r1, =gScriptResult - movs r0, 0x6 - strh r0, [r1] - movs r6, 0 - b _0809B42A - .pool -_0809B3F4: - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0809B424 - adds r0, r4, 0 - adds r1, r7, 0 - bl pokemon_has_move - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0809B424 - ldr r0, =gScriptResult - strh r6, [r0] - ldr r0, =gSpecialVar_0x8004 - strh r5, [r0] - b _0809B44A - .pool -_0809B424: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 -_0809B42A: - cmp r6, 0x5 - bhi _0809B44A - movs r0, 0x64 - adds r1, r6, 0 - muls r1, r0 - ldr r0, =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - movs r2, 0 - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0 - bne _0809B3F4 -_0809B44A: - movs r0, 0 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_809B3DC - - thumb_func_start s90_AddMoney -@ int s90_AddMoney(script_env *env) -s90_AddMoney: @ 809B458 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadWord - adds r2, r0, 0 - ldr r0, [r4, 0x8] - ldrb r1, [r0] - adds r0, 0x1 - str r0, [r4, 0x8] - cmp r1, 0 - bne _0809B47E - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - movs r1, 0x92 - lsls r1, 3 - adds r0, r1 - adds r1, r2, 0 - bl AddMoney -_0809B47E: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s90_AddMoney - - thumb_func_start s91_SubtractMoney -@ int s91_SubtractMoney(script_env *env) -s91_SubtractMoney: @ 809B48C - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadWord - adds r2, r0, 0 - ldr r0, [r4, 0x8] - ldrb r1, [r0] - adds r0, 0x1 - str r0, [r4, 0x8] - cmp r1, 0 - bne _0809B4B2 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - movs r1, 0x92 - lsls r1, 3 - adds r0, r1 - adds r1, r2, 0 - bl SubtractMoney -_0809B4B2: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s91_SubtractMoney - - thumb_func_start s92_check_money -@ int s92_check_money(script_env *env) -s92_check_money: @ 809B4C0 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadWord - adds r2, r0, 0 - ldr r0, [r4, 0x8] - ldrb r1, [r0] - adds r0, 0x1 - str r0, [r4, 0x8] - cmp r1, 0 - bne _0809B4EE - ldr r4, =gScriptResult - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - movs r1, 0x92 - lsls r1, 3 - adds r0, r1 - adds r1, r2, 0 - bl IsEnoughMoney - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4] -_0809B4EE: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s92_check_money - - thumb_func_start s93_display_money -@ int s93_display_money(script_env *env) -s93_display_money: @ 809B500 - push {r4,r5,lr} - ldr r1, [r0, 0x8] - ldrb r5, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - ldrb r4, [r1] - adds r2, r1, 0x1 - str r2, [r0, 0x8] - ldrb r1, [r1, 0x1] - adds r2, 0x1 - str r2, [r0, 0x8] - cmp r1, 0 - bne _0809B530 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - movs r1, 0x92 - lsls r1, 3 - adds r0, r1 - bl GetMoney - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_80E52EC -_0809B530: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end s93_display_money - - thumb_func_start s94_hide_money -s94_hide_money: @ 809B53C - push {lr} - bl sub_80E5384 - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s94_hide_money - - thumb_func_start s95_update_money -@ int s95_update_money(script_env *env) -s95_update_money: @ 809B548 - push {lr} - ldr r1, [r0, 0x8] - adds r1, 0x1 - adds r2, r1, 0x1 - str r2, [r0, 0x8] - ldrb r1, [r1, 0x1] - adds r2, 0x1 - str r2, [r0, 0x8] - cmp r1, 0 - bne _0809B56E - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - movs r1, 0x92 - lsls r1, 3 - adds r0, r1 - bl GetMoney - bl sub_80E52D4 -_0809B56E: - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end s95_update_money - - thumb_func_start sub_809B578 -sub_809B578: @ 809B578 - push {r4,r5,lr} - ldr r1, [r0, 0x8] - ldrb r5, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - ldrb r4, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl GetCoins - lsls r0, 16 - lsrs r0, 16 - adds r1, r5, 0 - adds r2, r4, 0 - bl ShowCoinsWindow - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_809B578 - - thumb_func_start sC1_hide_coins -sC1_hide_coins: @ 809B5A0 - push {lr} - ldr r1, [r0, 0x8] - adds r1, 0x2 - str r1, [r0, 0x8] - bl HideCoinsWindow - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sC1_hide_coins - - thumb_func_start sC2_update_coins -sC2_update_coins: @ 809B5B4 - push {lr} - ldr r1, [r0, 0x8] - adds r1, 0x2 - str r1, [r0, 0x8] - bl GetCoins - lsls r0, 16 - lsrs r0, 16 - bl PrintCoinsString - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sC2_update_coins - - thumb_func_start s5C_trainer_battle_configure_and_start -s5C_trainer_battle_configure_and_start: @ 809B5D0 - push {r4,lr} - adds r4, r0, 0 - ldr r0, [r4, 0x8] - bl TrainerBattleConfigure - str r0, [r4, 0x8] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s5C_trainer_battle_configure_and_start - - thumb_func_start sub_809B5E4 -sub_809B5E4: @ 809B5E4 - push {lr} - bl sub_80B17E0 - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_809B5E4 - - thumb_func_start sub_809B5F0 -sub_809B5F0: @ 809B5F0 - push {r4,lr} - adds r4, r0, 0 - bl sub_80B1AF8 - str r0, [r4, 0x8] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809B5F0 - - thumb_func_start sub_809B604 -@ bool8 sub_809B604(struct script_env *env) -sub_809B604: @ 809B604 - push {r4,lr} - adds r4, r0, 0 - bl sub_80B1B10 - str r0, [r4, 0x8] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809B604 - - thumb_func_start s60_check_trainer_flag -s60_check_trainer_flag: @ 809B618 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - bl trainer_flag_check - strb r0, [r4, 0x2] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end s60_check_trainer_flag - - thumb_func_start s61_set_trainer_flag -s61_set_trainer_flag: @ 809B63C - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - bl trainer_flag_set - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s61_set_trainer_flag - - thumb_func_start s62_unset_trainer_flag -s62_unset_trainer_flag: @ 809B658 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - bl trainer_flag_clear - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s62_unset_trainer_flag - - thumb_func_start sB6_load_battle -sB6_load_battle: @ 809B674 - push {r4-r6,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - ldr r0, [r4, 0x8] - ldrb r6, [r0] - adds r0, 0x1 - str r0, [r4, 0x8] - adds r0, r4, 0 - bl ScriptReadHalfword - adds r2, r0, 0 - lsls r2, 16 - lsrs r2, 16 - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_80F93A0 - movs r0, 0 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sB6_load_battle - - thumb_func_start sub_809B6A8 -sub_809B6A8: @ 809B6A8 - push {lr} - bl sub_80B08A8 - bl ScriptContext1_Stop - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_809B6A8 - - thumb_func_start s86_pokemart -s86_pokemart: @ 809B6B8 - push {lr} - bl ScriptReadWord - bl CreatePokemartMenu - bl ScriptContext1_Stop - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end s86_pokemart - - thumb_func_start s87_pokemartdecor -s87_pokemartdecor: @ 809B6CC - push {lr} - bl ScriptReadWord - bl CreateDecorationShop1Menu - bl ScriptContext1_Stop - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end s87_pokemartdecor - - thumb_func_start s88_pokemartbp -s88_pokemartbp: @ 809B6E0 - push {lr} - bl ScriptReadWord - bl CreateDecorationShop2Menu - bl ScriptContext1_Stop - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end s88_pokemartbp - - thumb_func_start s89_open_casino_game1 -s89_open_casino_game1: @ 809B6F4 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 24 - lsrs r0, 24 - ldr r1, =c2_exit_to_overworld_1_continue_scripts_restart_music - bl sub_812A540 - bl ScriptContext1_Stop - movs r0, 0x1 - pop {r1} - bx r1 - .pool - thumb_func_end s89_open_casino_game1 - - thumb_func_start berry_script_cmd -@ bool8 berry_script_cmd(struct script_env *env) -berry_script_cmd: @ 809B71C - push {r4,r5,lr} - ldr r1, [r0, 0x8] - ldrb r5, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - ldrb r3, [r1] - adds r2, r1, 0x1 - str r2, [r0, 0x8] - ldrb r4, [r1, 0x1] - adds r2, 0x1 - str r2, [r0, 0x8] - cmp r3, 0 - bne _0809B744 - adds r0, r5, 0 - movs r1, 0 - adds r2, r4, 0 - movs r3, 0 - bl PlantBerryTree - b _0809B750 -_0809B744: - adds r0, r5, 0 - adds r1, r3, 0 - adds r2, r4, 0 - movs r3, 0 - bl PlantBerryTree -_0809B750: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end berry_script_cmd - - thumb_func_start sub_809B758 -sub_809B758: @ 809B758 - push {r4,lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldr r4, =gScriptResult - lsls r0, 24 - lsrs r0, 24 - bl GetPriceReduction - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_809B758 - - thumb_func_start sub_809B784 -sub_809B784: @ 809B784 - push {lr} - bl sub_81B9404 - bl ScriptContext1_Stop - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_809B784 - - thumb_func_start sub_809B794 -sub_809B794: @ 809B794 - push {lr} - bl sub_80F840C - bl ScriptContext1_Stop - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_809B794 - - thumb_func_start sub_809B7A4 -sub_809B7A4: @ 809B7A4 - push {lr} - bl sub_80F8484 - bl ScriptContext1_Stop - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_809B7A4 - - thumb_func_start sub_809B7B4 -sub_809B7B4: @ 809B7B4 - push {lr} - ldr r0, =gUnknown_02039F2C - ldrb r0, [r0] - bl sub_80F84C4 - bl ScriptContext1_Stop - movs r0, 0x1 - pop {r1} - bx r1 - .pool - thumb_func_end sub_809B7B4 - - thumb_func_start s9C_execute_HM -s9C_execute_HM: @ 809B7CC - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - ldr r1, =gUnknown_020375D0 - strh r0, [r1] - lsls r0, 24 - lsrs r0, 24 - bl FieldEffectStart - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end s9C_execute_HM - - thumb_func_start s9D_set_HM_animation_data -s9D_set_HM_animation_data: @ 809B7F4 - push {r4,lr} - ldr r1, [r0, 0x8] - ldrb r4, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldr r1, =gFieldEffectSpawnParams - lsls r4, 2 - adds r4, r1 - lsls r0, 16 - asrs r0, 16 - str r0, [r4] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s9D_set_HM_animation_data - - thumb_func_start sub_809B824 -sub_809B824: @ 809B824 - push {lr} - ldr r0, =gUnknown_020375D0 - ldrb r0, [r0] - bl FieldEffectActiveListContains - lsls r0, 24 - cmp r0, 0 - beq _0809B83C - movs r0, 0 - b _0809B83E - .pool -_0809B83C: - movs r0, 0x1 -_0809B83E: - pop {r1} - bx r1 - thumb_func_end sub_809B824 - - thumb_func_start s9E_checkarray_HM_animation -s9E_checkarray_HM_animation: @ 809B844 - push {r4,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - ldr r1, =gUnknown_020375D0 - strh r0, [r1] - ldr r1, =sub_809B824 - adds r0, r4, 0 - bl SetupNativeScript - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end s9E_checkarray_HM_animation - - thumb_func_start s9F_changeposition_fly -s9F_changeposition_fly: @ 809B870 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 24 - lsrs r0, 24 - bl sub_8084D1C - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end s9F_changeposition_fly - - thumb_func_start sA0_check_gender -sA0_check_gender: @ 809B88C - ldr r1, =gScriptResult - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x8] - strh r0, [r1] - movs r0, 0 - bx lr - .pool - thumb_func_end sA0_check_gender - - thumb_func_start sA1_play_cry -sA1_play_cry: @ 809B8A4 - push {r4,r5,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl PlayCry5 - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sA1_play_cry - - thumb_func_start sub_809B8DC -sub_809B8DC: @ 809B8DC - push {lr} - ldr r1, =IsCryFinished - bl SetupNativeScript - movs r0, 0x1 - pop {r1} - bx r1 - .pool - thumb_func_end sub_809B8DC - - thumb_func_start sA2_setmaptile -sA2_setmaptile: @ 809B8F0 - push {r4-r7,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r6, r0, 16 - adds r0, r4, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r7, r0, 16 - adds r0, r4, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - adds r1, r6, 0x7 - lsls r1, 16 - lsrs r6, r1, 16 - adds r1, r5, 0x7 - lsls r1, 16 - lsrs r5, r1, 16 - cmp r0, 0 - bne _0809B954 - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r7, 0 - bl MapGridSetMetatileIdAt - b _0809B966 -_0809B954: - movs r1, 0xC0 - lsls r1, 4 - adds r0, r1, 0 - adds r2, r7, 0 - orrs r2, r0 - adds r0, r6, 0 - adds r1, r5, 0 - bl MapGridSetMetatileIdAt -_0809B966: - movs r0, 0 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sA2_setmaptile - - thumb_func_start sAC_open_door -sAC_open_door: @ 809B970 - push {r4,r5,lr} - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - adds r0, r4, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - adds r5, 0x7 - lsls r5, 16 - lsrs r5, 16 - movs r0, 0xE0 - lsls r0, 11 - adds r4, r0 - lsrs r4, 16 - adds r0, r5, 0 - adds r1, r4, 0 - bl cur_mapdata_get_door_sound_at - lsls r0, 16 - lsrs r0, 16 - bl PlaySE - adds r0, r5, 0 - adds r1, r4, 0 - bl task_overworld_door_add_if_role_69_for_opening_door_at - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sAC_open_door - - thumb_func_start sub_809B9C8 -sub_809B9C8: @ 809B9C8 - push {r4,r5,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r1, r0, 0 - lsls r1, 16 - adds r4, 0x7 - lsls r4, 16 - lsrs r4, 16 - movs r0, 0xE0 - lsls r0, 11 - adds r1, r0 - lsrs r1, 16 - adds r0, r4, 0 - bl sub_808A8AC - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_809B9C8 - - thumb_func_start sub_809BA0C -sub_809BA0C: @ 809BA0C - push {lr} - bl sub_808A91C - lsls r0, 24 - cmp r0, 0 - beq _0809BA1C - movs r0, 0 - b _0809BA1E -_0809BA1C: - movs r0, 0x1 -_0809BA1E: - pop {r1} - bx r1 - thumb_func_end sub_809BA0C - - thumb_func_start sub_809BA24 -sub_809BA24: @ 809BA24 - push {lr} - ldr r1, =sub_809BA0C - bl SetupNativeScript - movs r0, 0x1 - pop {r1} - bx r1 - .pool - thumb_func_end sub_809BA24 - - thumb_func_start sub_809BA38 -sub_809BA38: @ 809BA38 - push {r4,r5,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r1, r0, 0 - lsls r1, 16 - adds r4, 0x7 - lsls r4, 16 - lsrs r4, 16 - movs r0, 0xE0 - lsls r0, 11 - adds r1, r0 - lsrs r1, 16 - adds r0, r4, 0 - bl sub_808A854 - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_809BA38 - - thumb_func_start sub_809BA7C -sub_809BA7C: @ 809BA7C - push {r4,r5,lr} - adds r5, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r1, r0, 0 - lsls r1, 16 - adds r4, 0x7 - lsls r4, 16 - lsrs r4, 16 - movs r0, 0xE0 - lsls r0, 11 - adds r1, r0 - lsrs r1, 16 - adds r0, r4, 0 - bl sub_808A880 - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_809BA7C - - thumb_func_start sub_809BAC0 -sub_809BAC0: @ 809BAC0 - push {r4,lr} - adds r4, r0, 0 - ldr r0, [r4, 0x8] - adds r0, 0x1 - str r0, [r4, 0x8] - adds r0, r4, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r0, r4, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r0, r4, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_809BAC0 - - thumb_func_start sub_809BAFC -sub_809BAFC: @ 809BAFC - movs r0, 0 - bx lr - thumb_func_end sub_809BAFC - - thumb_func_start sB3_get_coin_amount -sB3_get_coin_amount: @ 809BB00 - push {r4,lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl GetVarPointer - adds r4, r0, 0 - bl GetCoins - strh r0, [r4] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sB3_get_coin_amount - - thumb_func_start sub_809BB20 -sub_809BB20: @ 809BB20 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - bl AddCoins - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0809BB48 - ldr r1, =gScriptResult - movs r0, 0 - b _0809BB4C - .pool -_0809BB48: - ldr r1, =gScriptResult - movs r0, 0x1 -_0809BB4C: - strh r0, [r1] - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end sub_809BB20 - - thumb_func_start sub_809BB58 -sub_809BB58: @ 809BB58 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - bl SubtractCoins - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0809BB80 - ldr r1, =gScriptResult - movs r0, 0 - b _0809BB84 - .pool -_0809BB80: - ldr r1, =gScriptResult - movs r0, 0x1 -_0809BB84: - strh r0, [r1] - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end sub_809BB58 - - thumb_func_start sub_809BB90 -sub_809BB90: @ 809BB90 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 24 - lsrs r0, 24 - bl sub_81A89A0 - ldr r1, =gUnknown_020375CA - strh r0, [r1] - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end sub_809BB90 - - thumb_func_start sub_809BBB4 -sub_809BBB4: @ 809BBB4 - push {lr} - bl sub_81A8AF8 - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sub_809BBB4 - - thumb_func_start ScrCmd_MossdeepGymSwitch -ScrCmd_MossdeepGymSwitch: @ 809BBC0 - push {lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 24 - lsrs r0, 24 - bl sub_81A8934 - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end ScrCmd_MossdeepGymSwitch - - thumb_func_start sub_809BBDC -sub_809BBDC: @ 809BBDC - push {lr} - bl sub_81A895C - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sub_809BBDC - - thumb_func_start sub_809BBE8 -sub_809BBE8: @ 809BBE8 - push {lr} - bl sub_80B47BC - ldr r1, =gSelectedMapObject - strb r0, [r1] - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end sub_809BBE8 - - thumb_func_start sub_809BBFC -sub_809BBFC: @ 809BBFC - push {r4,lr} - adds r4, r0, 0 - bl is_c1_link_related_active - cmp r0, 0 - beq _0809BC0C - movs r0, 0 - b _0809BC30 -_0809BC0C: - ldr r2, =gMapObjects - ldr r0, =gSelectedMapObject - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - lsls r0, 31 - cmp r0, 0 - beq _0809BC2E - bl sub_8098630 - ldr r1, =sub_8098734 - adds r0, r4, 0 - bl SetupNativeScript -_0809BC2E: - movs r0, 0x1 -_0809BC30: - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_809BBFC - - thumb_func_start sCD_set_obedient_bit -sCD_set_obedient_bit: @ 809BC44 - push {lr} - sub sp, 0x4 - movs r2, 0x1 - mov r1, sp - strb r2, [r1] - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x50 - mov r2, sp - bl SetMonData - movs r0, 0 - add sp, 0x4 - pop {r1} - bx r1 - .pool - thumb_func_end sCD_set_obedient_bit - - thumb_func_start sCE_check_obedient_bit -sCE_check_obedient_bit: @ 809BC7C - push {r4,lr} - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - ldr r4, =gScriptResult - movs r1, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x50 - movs r2, 0 - bl GetMonData - strh r0, [r4] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sCE_check_obedient_bit - - thumb_func_start sCF_execute_RAM_script_DMA -sCF_execute_RAM_script_DMA: @ 809BCB4 - push {r4,lr} - adds r4, r0, 0 - bl sub_8099244 - adds r2, r0, 0 - cmp r2, 0 - beq _0809BCD0 - ldr r1, =gUnknown_020375C0 - ldr r0, [r4, 0x8] - str r0, [r1] - adds r0, r4, 0 - adds r1, r2, 0 - bl ScriptJump -_0809BCD0: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sCF_execute_RAM_script_DMA - - thumb_func_start sD1_warp_v5 -sD1_warp_v5: @ 809BCDC - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x4 - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r1, [r0] - mov r9, r1 - adds r0, 0x1 - str r0, [r5, 0x8] - ldrb r1, [r0] - mov r8, r1 - adds r1, r0, 0x1 - str r1, [r5, 0x8] - ldrb r6, [r0, 0x1] - adds r1, 0x1 - str r1, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - mov r1, r9 - lsls r1, 24 - asrs r1, 24 - mov r9, r1 - mov r1, r8 - lsls r1, 24 - asrs r1, 24 - mov r8, r1 - lsls r6, 24 - asrs r6, 24 - lsls r4, 24 - asrs r4, 24 - lsls r0, 24 - asrs r0, 24 - str r0, [sp] - mov r0, r9 - adds r2, r6, 0 - adds r3, r4, 0 - bl warp1_set - bl player_get_direction_lower_nybble - lsls r0, 24 - lsrs r0, 24 - bl sub_808D074 - bl sub_80B0244 - bl player_avatar_init_params_reset - movs r0, 0x1 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sD1_warp_v5 - - thumb_func_start sub_809BD70 -sub_809BD70: @ 809BD70 - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r3, r0, 16 - ldr r0, [r4, 0x8] - ldrb r2, [r0] - mov r1, sp - strb r2, [r1] - adds r0, 0x1 - str r0, [r4, 0x8] - cmp r3, 0x5 - bhi _0809BDA6 - movs r0, 0x64 - muls r0, r3 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x23 - mov r2, sp - bl SetMonData -_0809BDA6: - movs r0, 0 - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_809BD70 - - thumb_func_start sub_809BDB4 -sub_809BDB4: @ 809BDB4 - push {r4,lr} - ldr r4, =gUnknown_03000F30 - ldrb r0, [r4] - movs r1, 0x1 - bl sub_819746C - ldrb r0, [r4] - bl RemoveWindow - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_809BDB4 - - thumb_func_start sub_809BDD0 -sub_809BDD0: @ 809BDD0 - push {r4,lr} - ldr r1, [r0, 0x8] - ldrb r4, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - ldr r1, =gUnknown_085102D4 - lsls r4, 2 - adds r4, r1 - ldr r4, [r4] - bl GetTrainerClassNameFromId - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_809BDD0 - - thumb_func_start sub_809BE0C -sub_809BE0C: @ 809BE0C - push {r4,lr} - ldr r1, [r0, 0x8] - ldrb r4, [r1] - adds r1, 0x1 - str r1, [r0, 0x8] - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - ldr r1, =gUnknown_085102D4 - lsls r4, 2 - adds r4, r1 - ldr r4, [r4] - bl GetTrainerNameFromId - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_809BE0C - - thumb_func_start sub_809BE48 -sub_809BE48: @ 809BE48 - ldr r1, =gUnknown_020375CA - strh r0, [r1] - bx lr - .pool - thumb_func_end sub_809BE48 - - thumb_func_start sub_809BE54 -sub_809BE54: @ 809BE54 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x4 - adds r5, r0, 0 - ldr r0, [r5, 0x8] - ldrb r1, [r0] - mov r9, r1 - adds r0, 0x1 - str r0, [r5, 0x8] - ldrb r1, [r0] - mov r8, r1 - adds r1, r0, 0x1 - str r1, [r5, 0x8] - ldrb r6, [r0, 0x1] - adds r1, 0x1 - str r1, [r5, 0x8] - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - bl ScriptReadHalfword - lsls r0, 16 - lsrs r0, 16 - bl VarGet - mov r1, r9 - lsls r1, 24 - asrs r1, 24 - mov r9, r1 - mov r1, r8 - lsls r1, 24 - asrs r1, 24 - mov r8, r1 - lsls r6, 24 - asrs r6, 24 - lsls r4, 24 - asrs r4, 24 - lsls r0, 24 - asrs r0, 24 - str r0, [sp] - mov r0, r9 - adds r2, r6, 0 - adds r3, r4, 0 - bl warp1_set - bl sub_80AF79C - bl player_avatar_init_params_reset - movs r0, 0x1 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_809BE54 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/script_menu.s b/asm/script_menu.s index 8aecbf696..55ce5736a 100644 --- a/asm/script_menu.s +++ b/asm/script_menu.s @@ -5,9 +5,9 @@ .text - thumb_func_start Multichoice -@ bool8 Multichoice(u8 x, u8 y, u8 menuId, bool8 noCancelling) -Multichoice: @ 80E1E08 + thumb_func_start ScriptMenu_Multichoice +@ bool8 ScriptMenu_Multichoice(u8 x, u8 y, u8 menuId, bool8 noCancelling) +ScriptMenu_Multichoice: @ 80E1E08 push {r4-r7,lr} sub sp, 0x4 lsls r0, 24 @@ -44,10 +44,10 @@ _080E1E4E: pop {r4-r7} pop {r1} bx r1 - thumb_func_end Multichoice + thumb_func_end ScriptMenu_Multichoice - thumb_func_start sub_80E1E58 -sub_80E1E58: @ 80E1E58 + thumb_func_start ScriptMenu_MultichoiceWithDefault +ScriptMenu_MultichoiceWithDefault: @ 80E1E58 push {r4-r7,lr} mov r7, r8 push {r7} @@ -91,7 +91,7 @@ _080E1EAA: pop {r4-r7} pop {r1} bx r1 - thumb_func_end sub_80E1E58 + thumb_func_end ScriptMenu_MultichoiceWithDefault thumb_func_start sub_80E1EB8 sub_80E1EB8: @ 80E1EB8 @@ -379,8 +379,8 @@ _080E20FC: .pool thumb_func_end sub_80E2058 - thumb_func_start yes_no_box -yes_no_box: @ 80E2108 + thumb_func_start ScriptMenu_YesNo +ScriptMenu_YesNo: @ 80E2108 push {r4,lr} ldr r4, =task_yes_no_maybe adds r0, r4, 0 @@ -405,7 +405,7 @@ _080E213A: pop {r4} pop {r1} bx r1 - thumb_func_end yes_no_box + thumb_func_end ScriptMenu_YesNo thumb_func_start sub_80E2140 sub_80E2140: @ 80E2140 @@ -485,8 +485,8 @@ _080E21C4: .pool thumb_func_end task_yes_no_maybe - thumb_func_start sub_80E21D0 -sub_80E21D0: @ 80E21D0 + thumb_func_start ScriptMenu_MultichoiceGrid +ScriptMenu_MultichoiceGrid: @ 80E21D0 push {r4-r7,lr} mov r7, r10 mov r6, r9 @@ -627,7 +627,7 @@ _080E22E8: pop {r1} bx r1 .pool - thumb_func_end sub_80E21D0 + thumb_func_end ScriptMenu_MultichoiceGrid thumb_func_start sub_80E2308 sub_80E2308: @ 80E2308 @@ -1334,8 +1334,8 @@ _080E28F8: bx r0 thumb_func_end task_picbox - thumb_func_start sub_80E2900 -sub_80E2900: @ 80E2900 + thumb_func_start ScriptMenu_ShowPokemonPic +ScriptMenu_ShowPokemonPic: @ 80E2900 push {r4-r7,lr} mov r7, r8 push {r7} @@ -1422,10 +1422,10 @@ _080E29BA: pop {r4-r7} pop {r1} bx r1 - thumb_func_end sub_80E2900 + thumb_func_end ScriptMenu_ShowPokemonPic - thumb_func_start picbox_close -picbox_close: @ 80E29C4 + thumb_func_start ScriptMenu_GetPicboxWaitFunc +ScriptMenu_GetPicboxWaitFunc: @ 80E29C4 push {lr} ldr r0, =task_picbox bl FindTaskIdByFunc @@ -1449,7 +1449,7 @@ _080E29F4: _080E29F6: pop {r1} bx r1 - thumb_func_end picbox_close + thumb_func_end ScriptMenu_GetPicboxWaitFunc thumb_func_start sub_80E29FC sub_80E29FC: @ 80E29FC diff --git a/asm/script_movement.s b/asm/script_movement.s index f28fc9d44..5f06fd179 100755 --- a/asm/script_movement.s +++ b/asm/script_movement.s @@ -5,8 +5,8 @@ .text - thumb_func_start exec_movement -exec_movement: @ 80D32E8 + thumb_func_start ScriptMovement_StartObjectMovementScript +ScriptMovement_StartObjectMovementScript: @ 80D32E8 push {r4,lr} sub sp, 0x4 adds r4, r3, 0 @@ -47,10 +47,10 @@ _080D3332: pop {r1} bx r1 .pool - thumb_func_end exec_movement + thumb_func_end ScriptMovement_StartObjectMovementScript - thumb_func_start sub_80D3340 -sub_80D3340: @ 80D3340 + thumb_func_start ScriptMovement_IsObjectMovementFinished +ScriptMovement_IsObjectMovementFinished: @ 80D3340 push {r4,lr} sub sp, 0x4 lsls r0, 24 @@ -87,7 +87,7 @@ _080D3384: pop {r4} pop {r1} bx r1 - thumb_func_end sub_80D3340 + thumb_func_end ScriptMovement_IsObjectMovementFinished thumb_func_start sub_80D338C sub_80D338C: @ 80D338C diff --git a/asm/script_pokemon_util_80F87D8.s b/asm/script_pokemon_util_80F87D8.s index e26194298..18d7b7fe3 100644 --- a/asm/script_pokemon_util_80F87D8.s +++ b/asm/script_pokemon_util_80F87D8.s @@ -83,7 +83,7 @@ sub_80F8850: @ 80F8850 thumb_func_start sub_80F8864 sub_80F8864: @ 80F8864 push {lr} - ldr r0, =gUnknown_02039F2C + ldr r0, =gScriptContestCategory ldrh r0, [r0] cmp r0, 0x4 bhi _080F88A4 @@ -222,7 +222,7 @@ sub_80F8970: @ 80F8970 mov r12, r0 ldr r1, =gSpecialVar_0x8006 mov r9, r1 - ldr r2, =gUnknown_02039E02 + ldr r2, =gUnknown_02039E00 + 2 mov r10, r2 mov r2, r12 mov r1, sp @@ -397,8 +397,8 @@ sub_80F8ACC: @ 80F8ACC .pool thumb_func_end sub_80F8ACC - thumb_func_start sub_80F8ADC -sub_80F8ADC: @ 80F8ADC + thumb_func_start ShowContestWinner +ShowContestWinner: @ 80F8ADC push {lr} ldr r0, =sub_812FDEC bl SetMainCallback2 @@ -408,7 +408,7 @@ sub_80F8ADC: @ 80F8ADC pop {r0} bx r0 .pool - thumb_func_end sub_80F8ADC + thumb_func_end ShowContestWinner thumb_func_start sub_80F8AFC sub_80F8AFC: @ 80F8AFC @@ -625,7 +625,7 @@ sub_80F8C7C: @ 80F8C7C ldrb r0, [r6] muls r0, r5 adds r0, r4 - bl sub_80EE5A4 + bl GetRibbonCount lsls r0, 24 lsrs r0, 24 cmp r0, 0x4 @@ -670,7 +670,7 @@ sub_80F8D28: @ 80F8D28 beq _080F8D44 b _080F8E9C _080F8D44: - bl init_uns_table_pokemon_copy + bl AllocateMonSpritesGfx movs r0, 0xA mov r9, r0 movs r1, 0x3 @@ -710,7 +710,7 @@ _080F8D44: lsls r0, r6, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] ldr r1, [r1, 0x8] adds r2, r6, 0 @@ -722,7 +722,7 @@ _080F8DC4: lsls r0, r6, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] ldr r1, [r1, 0x8] adds r2, r6, 0 @@ -842,7 +842,7 @@ sub_80F8EB8: @ 80F8EB8 ldrh r0, [r1, 0x8] adds r0, 0x1 strh r0, [r1, 0x8] - bl sub_805F094 + bl FreeMonSpritesGfx _080F8EDC: pop {r0} bx r0 @@ -1093,7 +1093,7 @@ sub_80F90DC: @ 80F90DC ands r0, r1 cmp r0, 0 beq _080F90FE - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080F90FE @@ -1116,7 +1116,7 @@ sub_80F910C: @ 80F910C ands r0, r1 cmp r0, 0 beq _080F9126 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080F9126 @@ -1269,9 +1269,9 @@ _080F922C: .pool thumb_func_end sp000_heal_pokemon - thumb_func_start sub_80F9244 -@ void sub_80F9244(s16 species_num, u8 level, int held_item) -sub_80F9244: @ 80F9244 + thumb_func_start ScriptGiveMon +@ void ScriptGiveMon(s16 species_num, u8 level, int held_item) +ScriptGiveMon: @ 80F9244 push {r4-r6,lr} mov r6, r8 push {r6} @@ -1332,10 +1332,10 @@ _080F92B8: pop {r4-r6} pop {r1} bx r1 - thumb_func_end sub_80F9244 + thumb_func_end ScriptGiveMon - thumb_func_start sub_80F92C8 -sub_80F92C8: @ 80F92C8 + thumb_func_start ScriptGiveEgg +ScriptGiveEgg: @ 80F92C8 push {lr} sub sp, 0x68 adds r1, r0, 0 @@ -1357,7 +1357,7 @@ sub_80F92C8: @ 80F92C8 add sp, 0x68 pop {r1} bx r1 - thumb_func_end sub_80F92C8 + thumb_func_end ScriptGiveEgg thumb_func_start sub_80F92F8 sub_80F92F8: @ 80F92F8 @@ -1450,8 +1450,8 @@ _080F9392: .pool thumb_func_end sub_80F9370 - thumb_func_start sub_80F93A0 -sub_80F93A0: @ 80F93A0 + thumb_func_start CreateScriptedWildMon +CreateScriptedWildMon: @ 80F93A0 push {r4-r7,lr} mov r7, r8 push {r7} @@ -1496,10 +1496,10 @@ _080F93EE: pop {r0} bx r0 .pool - thumb_func_end sub_80F93A0 + thumb_func_end CreateScriptedWildMon - thumb_func_start sub_80F9400 -sub_80F9400: @ 80F9400 + thumb_func_start ScriptSetMonMoveSlot +ScriptSetMonMoveSlot: @ 80F9400 push {r4,lr} lsls r0, 24 lsrs r3, r0, 24 @@ -1525,7 +1525,7 @@ _080F941C: pop {r0} bx r0 .pool - thumb_func_end sub_80F9400 + thumb_func_end ScriptSetMonMoveSlot thumb_func_start sub_80F9438 sub_80F9438: @ 80F9438 diff --git a/asm/secret_base.s b/asm/secret_base.s index e514e88f1..69cfff512 100644 --- a/asm/secret_base.s +++ b/asm/secret_base.s @@ -861,7 +861,7 @@ sub_80E916C: @ 80E916C asrs r0, 24 str r0, [sp] adds r0, r5, 0 - bl warp1_set + bl Overworld_SetWarpDestination bl warp_in ldr r1, =gFieldCallback ldr r0, =sub_80E9108 @@ -1163,13 +1163,13 @@ _080E941E: lsls r0, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl sub_8089350 + bl MetatileBehavior_IsMB_B5 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _080E9462 adds r0, r4, 0 - bl sub_8089364 + bl MetatileBehavior_IsMB_C3 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1192,7 +1192,7 @@ _080E9462: mov r3, r10 ldrb r1, [r3] lsls r1, 5 - ldr r2, =gUnknown_085A5C24 + ldr r2, =gDecorations + 0x1c adds r1, r2 ldr r1, [r1] ldrh r1, [r1] @@ -1208,7 +1208,7 @@ _080E9462: adds r0, 0xAE lsls r0, 16 lsrs r0, 16 - bl FlagReset + bl FlagClear ldrb r0, [r6] ldr r5, =gSaveBlock1Ptr ldr r2, [r5] @@ -3288,7 +3288,7 @@ _080EA62C: .pool _080EA668: adds r0, r5, 0 - bl sub_80893C8 + bl MetatileBehavior_IsSecretBaseGlitterMat lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -3308,7 +3308,7 @@ _080EA680: .pool _080EA698: adds r0, r5, 0 - bl sub_808938C + bl MetatileBehavior_IsSecretBaseBalloon lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -3377,7 +3377,7 @@ _080EA714: .pool _080EA72C: adds r0, r5, 0 - bl sub_80893A0 + bl MetatileBehavior_IsMB_BE lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -3409,7 +3409,7 @@ _080EA75E: .pool _080EA778: adds r0, r5, 0 - bl sub_80893B4 + bl MetatileBehavior_IsSecretBaseSoundMat lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -3429,7 +3429,7 @@ _080EA778: .pool _080EA7A8: adds r0, r5, 0 - bl MetatileBehavior_0xBB + bl MetatileBehavior_IsSecretBaseJumpMat lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -3449,7 +3449,7 @@ _080EA7A8: .pool _080EA7D8: adds r0, r5, 0 - bl MetatileBehavior_0xBC + bl MetatileBehavior_IsSecretBaseSpinMat lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -4494,7 +4494,7 @@ sub_80EAF80: @ 80EAF80 bne _080EAF9A b _080EB16A _080EAF9A: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r0, 0x2 diff --git a/asm/shop.s b/asm/shop.s index f4dacaa76..94756624c 100644 --- a/asm/shop.s +++ b/asm/shop.s @@ -1125,7 +1125,7 @@ BuyMenuInitBgs: @ 80E036C BuyMenuDecompressBgGraphics: @ 80E0424 push {lr} sub sp, 0x4 - ldr r1, =gUnknown_08D9AFBC + ldr r1, =gBuyMenuFrame_Gfx movs r2, 0xE8 lsls r2, 2 ldr r3, =0x000003e3 @@ -1133,11 +1133,11 @@ BuyMenuDecompressBgGraphics: @ 80E0424 str r0, [sp] movs r0, 0x1 bl decompress_and_copy_tile_data_to_vram - ldr r0, =gUnknown_08D9B0F0 + ldr r0, =gBuyMenuFrame_Tilemap ldr r1, =gUnknown_02039F70 ldr r1, [r1] bl LZDecompressWram - ldr r0, =gUnknown_08D9B0C8 + ldr r0, =gMenuMoneyPal movs r1, 0xC0 movs r2, 0x20 bl LoadCompressedPalette @@ -1259,7 +1259,7 @@ BuyMenuDrawGraphics: @ 80E0524 movs r0, 0 movs r1, 0x1 movs r2, 0xD - bl set_window_border_style_and_print_money_box + bl PrintMoneyAmountInMoneyBoxWithBorder movs r0, 0 bl schedule_bg_copy_tilemap_to_vram movs r0, 0x1 @@ -2465,7 +2465,7 @@ BuyMenuSubtractMoney: @ 80E0F88 lsls r2, 6 adds r1, r2 ldr r1, [r1] - bl SubtractMoney + bl RemoveMoney movs r0, 0x5F bl PlaySE ldr r0, [r5] diff --git a/asm/slot_machine.s b/asm/slot_machine.s index 6bd62ed9f..6390ae992 100644 --- a/asm/slot_machine.s +++ b/asm/slot_machine.s @@ -55,8 +55,8 @@ _0812A530: .pool thumb_func_end sub_812A4DC - thumb_func_start sub_812A540 -sub_812A540: @ 812A540 + thumb_func_start PlaySlotMachine +PlaySlotMachine: @ 812A540 push {r4-r6,lr} adds r4, r0, 0 adds r6, r1, 0 @@ -85,7 +85,7 @@ sub_812A540: @ 812A540 pop {r0} bx r0 .pool - thumb_func_end sub_812A540 + thumb_func_end PlaySlotMachine thumb_func_start sub_812A588 sub_812A588: @ 812A588 diff --git a/asm/starter_choose.s b/asm/starter_choose.s index 7e998c45f..da42959ea 100644 --- a/asm/starter_choose.s +++ b/asm/starter_choose.s @@ -122,12 +122,12 @@ set_256color_bg_bg0: @ 8133F0C ldr r0, =0x81000200 str r0, [r2, 0x8] ldr r0, [r2, 0x8] - ldr r0, =gUnknown_085B0E04 + ldr r0, =gBirchHelpGfx bl LZ77UnCompVram - ldr r0, =gUnknown_085B0A80 + ldr r0, =gBirchBagTilemap ldr r1, =0x06003000 bl LZ77UnCompVram - ldr r0, =gUnknown_085B0C0C + ldr r0, =gBirchGrassTilemap ldr r1, =0x06003800 bl LZ77UnCompVram movs r0, 0 @@ -155,7 +155,7 @@ set_256color_bg_bg0: @ 8133F0C movs r1, 0xE0 movs r2, 0x20 bl LoadPalette - ldr r0, =gUnknown_085B0A00 + ldr r0, =gBirchBagGrassPal movs r1, 0 movs r2, 0x40 bl LoadPalette diff --git a/asm/tileset.s b/asm/tileset.s deleted file mode 100644 index 0605c7621..000000000 --- a/asm/tileset.s +++ /dev/null @@ -1,1793 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_80A0954 -@ void sub_80A0954() -sub_80A0954: @ 80A0954 - push {lr} - sub sp, 0x4 - ldr r1, =gUnknown_03000F34 - movs r0, 0 - strb r0, [r1] - movs r0, 0 - str r0, [sp] - ldr r1, =gUnknown_02037624 - ldr r2, =0x0500003c - mov r0, sp - bl CpuSet - add sp, 0x4 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A0954 - - thumb_func_start sub_80A0980 -sub_80A0980: @ 80A0980 - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r2, 16 - lsrs r6, r2, 16 - ldr r3, =gUnknown_03000F34 - ldrb r0, [r3] - cmp r0, 0x13 - bhi _080A09C0 - ldr r2, =gUnknown_02037624 - adds r1, r0, 0 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - str r4, [r0] - ldrb r1, [r3] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r1, r2, 0x4 - adds r0, r1 - str r5, [r0] - ldrb r1, [r3] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - strh r6, [r0, 0x8] - ldrb r0, [r3] - adds r0, 0x1 - strb r0, [r3] -_080A09C0: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A0980 - - thumb_func_start sub_80A09D0 -sub_80A09D0: @ 80A09D0 - push {r4-r6,lr} - movs r3, 0 - ldr r4, =gUnknown_03000F34 - adds r6, r4, 0 - ldrb r0, [r4] - cmp r3, r0 - bge _080A0A02 - ldr r2, =0x040000d4 - ldr r1, =gUnknown_02037624 - movs r5, 0x80 - lsls r5, 24 -_080A09E6: - ldr r0, [r1] - str r0, [r2] - ldr r0, [r1, 0x4] - str r0, [r2, 0x4] - ldrh r0, [r1, 0x8] - lsrs r0, 1 - orrs r0, r5 - str r0, [r2, 0x8] - ldr r0, [r2, 0x8] - adds r1, 0xC - adds r3, 0x1 - ldrb r0, [r4] - cmp r3, r0 - blt _080A09E6 -_080A0A02: - movs r0, 0 - strb r0, [r6] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A09D0 - - thumb_func_start cur_mapheader_run_tileset_funcs_after_some_cpuset -cur_mapheader_run_tileset_funcs_after_some_cpuset: @ 80A0A18 - push {lr} - bl sub_80A0954 - bl cur_mapheader_run_tileset1_func - bl cur_mapheader_run_tileset2_func - pop {r0} - bx r0 - thumb_func_end cur_mapheader_run_tileset_funcs_after_some_cpuset - - thumb_func_start sub_80A0A2C -sub_80A0A2C: @ 80A0A2C - push {lr} - bl cur_mapheader_run_tileset2_func - pop {r0} - bx r0 - thumb_func_end sub_80A0A2C - - thumb_func_start sub_80A0A38 -sub_80A0A38: @ 80A0A38 - push {r4,lr} - bl sub_80A0954 - ldr r2, =gUnknown_03000F36 - ldrh r0, [r2] - adds r0, 0x1 - strh r0, [r2] - ldr r1, =gUnknown_03000F38 - lsls r0, 16 - lsrs r0, 16 - ldrh r1, [r1] - cmp r0, r1 - bcc _080A0A56 - movs r0, 0 - strh r0, [r2] -_080A0A56: - ldr r4, =gUnknown_03000F3A - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - ldr r1, =gUnknown_03000F3C - lsls r0, 16 - lsrs r0, 16 - ldrh r1, [r1] - cmp r0, r1 - bcc _080A0A6E - movs r0, 0 - strh r0, [r4] -_080A0A6E: - ldr r0, =gUnknown_03000F40 - ldr r1, [r0] - cmp r1, 0 - beq _080A0A7C - ldrh r0, [r2] - bl _call_via_r1 -_080A0A7C: - ldr r0, =gUnknown_03000F44 - ldr r1, [r0] - cmp r1, 0 - beq _080A0A8A - ldrh r0, [r4] - bl _call_via_r1 -_080A0A8A: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A0A38 - - thumb_func_start cur_mapheader_run_tileset1_func -cur_mapheader_run_tileset1_func: @ 80A0AA8 - push {lr} - ldr r0, =gUnknown_03000F36 - movs r1, 0 - strh r1, [r0] - ldr r0, =gUnknown_03000F38 - strh r1, [r0] - ldr r1, =gUnknown_03000F40 - movs r0, 0 - str r0, [r1] - ldr r0, =gMapHeader - ldr r0, [r0] - ldr r0, [r0, 0x10] - cmp r0, 0 - beq _080A0ACE - ldr r0, [r0, 0x14] - cmp r0, 0 - beq _080A0ACE - bl _call_via_r0 -_080A0ACE: - pop {r0} - bx r0 - .pool - thumb_func_end cur_mapheader_run_tileset1_func - - thumb_func_start cur_mapheader_run_tileset2_func -cur_mapheader_run_tileset2_func: @ 80A0AE4 - push {lr} - ldr r0, =gUnknown_03000F3A - movs r1, 0 - strh r1, [r0] - ldr r0, =gUnknown_03000F3C - strh r1, [r0] - ldr r1, =gUnknown_03000F44 - movs r0, 0 - str r0, [r1] - ldr r0, =gMapHeader - ldr r0, [r0] - ldr r0, [r0, 0x14] - cmp r0, 0 - beq _080A0B0A - ldr r0, [r0, 0x14] - cmp r0, 0 - beq _080A0B0A - bl _call_via_r0 -_080A0B0A: - pop {r0} - bx r0 - .pool - thumb_func_end cur_mapheader_run_tileset2_func - - thumb_func_start TilesetCb_General -TilesetCb_General: @ 80A0B20 - ldr r1, =gUnknown_03000F36 - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F38 - movs r2, 0x80 - lsls r2, 1 - adds r0, r2, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F40 - ldr r0, =sub_80A0B70 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_General - - thumb_func_start TilesetCb_InsideBuilding -TilesetCb_InsideBuilding: @ 80A0B48 - ldr r1, =gUnknown_03000F36 - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F38 - movs r2, 0x80 - lsls r2, 1 - adds r0, r2, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F40 - ldr r0, =sub_80A0BB4 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_InsideBuilding - - thumb_func_start sub_80A0B70 -sub_80A0B70: @ 80A0B70 - push {r4,r5,lr} - lsls r5, r0, 16 - movs r0, 0xF0 - lsls r0, 12 - ands r0, r5 - lsrs r4, r0, 16 - cmp r4, 0 - bne _080A0B86 - lsrs r0, r5, 20 - bl sub_80A0BCC -_080A0B86: - cmp r4, 0x1 - bne _080A0B90 - lsrs r0, r5, 20 - bl sub_80A0BF4 -_080A0B90: - cmp r4, 0x2 - bne _080A0B9A - lsrs r0, r5, 20 - bl sub_80A0C1C -_080A0B9A: - cmp r4, 0x3 - bne _080A0BA4 - lsrs r0, r5, 20 - bl sub_80A0C44 -_080A0BA4: - cmp r4, 0x4 - bne _080A0BAE - lsrs r0, r5, 20 - bl sub_80A12AC -_080A0BAE: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80A0B70 - - thumb_func_start sub_80A0BB4 -sub_80A0BB4: @ 80A0BB4 - push {lr} - lsls r1, r0, 16 - movs r0, 0xE0 - lsls r0, 11 - ands r0, r1 - cmp r0, 0 - bne _080A0BC8 - lsrs r0, r1, 19 - bl sub_80A1688 -_080A0BC8: - pop {r0} - bx r0 - thumb_func_end sub_80A0BB4 - - thumb_func_start sub_80A0BCC -sub_80A0BCC: @ 80A0BCC - push {lr} - lsls r0, 16 - movs r1, 0xC0 - lsls r1, 10 - ands r1, r0 - ldr r0, =gUnknown_08510764 - lsrs r1, 14 - adds r1, r0 - ldr r0, [r1] - ldr r1, =0x06003f80 - movs r2, 0x80 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A0BCC - - thumb_func_start sub_80A0BF4 -sub_80A0BF4: @ 80A0BF4 - push {lr} - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x7 - ands r0, r1 - ldr r1, =gUnknown_08512574 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x06003600 - movs r2, 0xF0 - lsls r2, 2 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A0BF4 - - thumb_func_start sub_80A0C1C -sub_80A0C1C: @ 80A0C1C - push {lr} - lsls r0, 16 - movs r1, 0xE0 - lsls r1, 11 - ands r1, r0 - ldr r0, =gUnknown_08512E54 - lsrs r1, 14 - adds r1, r0 - ldr r0, [r1] - ldr r1, =0x06003a00 - movs r2, 0xA0 - lsls r2, 1 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A0C1C - - thumb_func_start sub_80A0C44 -sub_80A0C44: @ 80A0C44 - push {lr} - lsls r0, 16 - movs r1, 0xC0 - lsls r1, 10 - ands r1, r0 - ldr r0, =gUnknown_08513174 - lsrs r1, 14 - adds r1, r0 - ldr r0, [r1] - ldr r1, =0x06003e00 - movs r2, 0xC0 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A0C44 - - thumb_func_start TilesetCb_Petalburg -TilesetCb_Petalburg: @ 80A0C6C - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - movs r0, 0 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_Petalburg - - thumb_func_start TilesetCb_Rustboro -TilesetCb_Rustboro: @ 80A0C94 - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A103C - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_Rustboro - - thumb_func_start TilesetCb_Dewford -TilesetCb_Dewford: @ 80A0CC0 - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A10B8 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_Dewford - - thumb_func_start TilesetCb_Slateport -TilesetCb_Slateport: @ 80A0CEC - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A10D0 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_Slateport - - thumb_func_start TilesetCb_Mauville -TilesetCb_Mauville: @ 80A0D18 - ldr r1, =gUnknown_03000F3A - ldr r0, =gUnknown_03000F36 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A10E8 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_Mauville - - thumb_func_start TilesetCb_Lavaridge -TilesetCb_Lavaridge: @ 80A0D48 - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A115C - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_Lavaridge - - thumb_func_start TilesetCb_Fallarbor -TilesetCb_Fallarbor: @ 80A0D74 - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - movs r0, 0 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_Fallarbor - - thumb_func_start TilesetCb_Fortree -TilesetCb_Fortree: @ 80A0D9C - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - movs r0, 0 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_Fortree - - thumb_func_start TilesetCb_Lilycove -TilesetCb_Lilycove: @ 80A0DC4 - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - movs r0, 0 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_Lilycove - - thumb_func_start TilesetCb_Mossdeep -TilesetCb_Mossdeep: @ 80A0DEC - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - movs r0, 0 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_Mossdeep - - thumb_func_start TilesetCb_EverGrande -TilesetCb_EverGrande: @ 80A0E14 - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A1188 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_EverGrande - - thumb_func_start TilesetCb_Pacifidlog -TilesetCb_Pacifidlog: @ 80A0E40 - ldr r1, =gUnknown_03000F3A - ldr r0, =gUnknown_03000F36 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A11FC - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_Pacifidlog - - thumb_func_start TilesetCb_Sootopolis -TilesetCb_Sootopolis: @ 80A0E70 - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A122C - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_Sootopolis - - thumb_func_start TilesetCb_BattleFrontierOutsideWest -TilesetCb_BattleFrontierOutsideWest: @ 80A0E9C - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A127C - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_BattleFrontierOutsideWest - - thumb_func_start TilesetCb_BattleFrontierOutsideEast -TilesetCb_BattleFrontierOutsideEast: @ 80A0EC8 - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A1294 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_BattleFrontierOutsideEast - - thumb_func_start TilesetCb_Underwater -TilesetCb_Underwater: @ 80A0EF4 - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - movs r0, 0x80 - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A1244 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_Underwater - - thumb_func_start TilesetCb_SootopolisGym -TilesetCb_SootopolisGym: @ 80A0F18 - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - movs r0, 0xF0 - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A15D8 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_SootopolisGym - - thumb_func_start TilesetCb_Cave -TilesetCb_Cave: @ 80A0F3C - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A1260 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_Cave - - thumb_func_start TilesetCb_EliteFour -TilesetCb_EliteFour: @ 80A0F68 - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - movs r0, 0x80 - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A15F0 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_EliteFour - - thumb_func_start TilesetCb_MauvilleGym -TilesetCb_MauvilleGym: @ 80A0F8C - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A15C0 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_MauvilleGym - - thumb_func_start TilesetCb_BikeShop -TilesetCb_BikeShop: @ 80A0FB8 - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A161C - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_BikeShop - - thumb_func_start TilesetCb_BattlePyramid -TilesetCb_BattlePyramid: @ 80A0FE4 - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A1634 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_BattlePyramid - - thumb_func_start TilesetCb_BattleDome -TilesetCb_BattleDome: @ 80A1010 - ldr r1, =gUnknown_03000F3A - movs r0, 0 - strh r0, [r1] - ldr r1, =gUnknown_03000F3C - ldr r0, =gUnknown_03000F38 - ldrh r0, [r0] - strh r0, [r1] - ldr r1, =gUnknown_03000F44 - ldr r0, =sub_80A1658 - str r0, [r1] - bx lr - .pool - thumb_func_end TilesetCb_BattleDome - - thumb_func_start sub_80A103C -sub_80A103C: @ 80A103C - push {r4-r6,lr} - lsls r5, r0, 16 - movs r0, 0xE0 - lsls r0, 11 - ands r0, r5 - lsrs r6, r0, 16 - cmp r6, 0 - bne _080A105C - lsrs r4, r5, 19 - adds r0, r4, 0 - movs r1, 0 - bl sub_80A1434 - adds r0, r4, 0 - bl sub_80A1470 -_080A105C: - cmp r6, 0x1 - bne _080A1068 - lsrs r0, r5, 19 - movs r1, 0x1 - bl sub_80A1434 -_080A1068: - cmp r6, 0x2 - bne _080A1074 - lsrs r0, r5, 19 - movs r1, 0x2 - bl sub_80A1434 -_080A1074: - cmp r6, 0x3 - bne _080A1080 - lsrs r0, r5, 19 - movs r1, 0x3 - bl sub_80A1434 -_080A1080: - cmp r6, 0x4 - bne _080A108C - lsrs r0, r5, 19 - movs r1, 0x4 - bl sub_80A1434 -_080A108C: - cmp r6, 0x5 - bne _080A1098 - lsrs r0, r5, 19 - movs r1, 0x5 - bl sub_80A1434 -_080A1098: - cmp r6, 0x6 - bne _080A10A4 - lsrs r0, r5, 19 - movs r1, 0x6 - bl sub_80A1434 -_080A10A4: - cmp r6, 0x7 - bne _080A10B0 - lsrs r0, r5, 19 - movs r1, 0x7 - bl sub_80A1434 -_080A10B0: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80A103C - - thumb_func_start sub_80A10B8 -sub_80A10B8: @ 80A10B8 - push {lr} - lsls r1, r0, 16 - movs r0, 0xE0 - lsls r0, 11 - ands r0, r1 - cmp r0, 0 - bne _080A10CC - lsrs r0, r1, 19 - bl sub_80A1520 -_080A10CC: - pop {r0} - bx r0 - thumb_func_end sub_80A10B8 - - thumb_func_start sub_80A10D0 -sub_80A10D0: @ 80A10D0 - push {lr} - lsls r1, r0, 16 - movs r0, 0xF0 - lsls r0, 12 - ands r0, r1 - cmp r0, 0 - bne _080A10E4 - lsrs r0, r1, 20 - bl sub_80A1598 -_080A10E4: - pop {r0} - bx r0 - thumb_func_end sub_80A10D0 - - thumb_func_start sub_80A10E8 -sub_80A10E8: @ 80A10E8 - push {r4,r5,lr} - lsls r4, r0, 16 - movs r0, 0xE0 - lsls r0, 11 - ands r0, r4 - lsrs r5, r0, 16 - cmp r5, 0 - bne _080A1100 - lsrs r0, r4, 19 - movs r1, 0 - bl sub_80A1394 -_080A1100: - cmp r5, 0x1 - bne _080A110C - lsrs r0, r4, 19 - movs r1, 0x1 - bl sub_80A1394 -_080A110C: - cmp r5, 0x2 - bne _080A1118 - lsrs r0, r4, 19 - movs r1, 0x2 - bl sub_80A1394 -_080A1118: - cmp r5, 0x3 - bne _080A1124 - lsrs r0, r4, 19 - movs r1, 0x3 - bl sub_80A1394 -_080A1124: - cmp r5, 0x4 - bne _080A1130 - lsrs r0, r4, 19 - movs r1, 0x4 - bl sub_80A1394 -_080A1130: - cmp r5, 0x5 - bne _080A113C - lsrs r0, r4, 19 - movs r1, 0x5 - bl sub_80A1394 -_080A113C: - cmp r5, 0x6 - bne _080A1148 - lsrs r0, r4, 19 - movs r1, 0x6 - bl sub_80A1394 -_080A1148: - cmp r5, 0x7 - bne _080A1154 - lsrs r0, r4, 19 - movs r1, 0x7 - bl sub_80A1394 -_080A1154: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80A10E8 - - thumb_func_start sub_80A115C -sub_80A115C: @ 80A115C - push {r4,r5,lr} - lsls r4, r0, 16 - movs r0, 0xF0 - lsls r0, 12 - ands r0, r4 - lsrs r5, r0, 16 - cmp r5, 0 - bne _080A1176 - lsrs r0, r4, 20 - lsls r0, 24 - lsrs r0, 24 - bl sub_80A12D4 -_080A1176: - cmp r5, 0x1 - bne _080A1180 - lsrs r0, r4, 20 - bl sub_80A1498 -_080A1180: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80A115C - - thumb_func_start sub_80A1188 -sub_80A1188: @ 80A1188 - push {r4,r5,lr} - lsls r4, r0, 16 - movs r0, 0xE0 - lsls r0, 11 - ands r0, r4 - lsrs r5, r0, 16 - cmp r5, 0 - bne _080A11A0 - lsrs r0, r4, 19 - movs r1, 0 - bl sub_80A14C0 -_080A11A0: - cmp r5, 0x1 - bne _080A11AC - lsrs r0, r4, 19 - movs r1, 0x1 - bl sub_80A14C0 -_080A11AC: - cmp r5, 0x2 - bne _080A11B8 - lsrs r0, r4, 19 - movs r1, 0x2 - bl sub_80A14C0 -_080A11B8: - cmp r5, 0x3 - bne _080A11C4 - lsrs r0, r4, 19 - movs r1, 0x3 - bl sub_80A14C0 -_080A11C4: - cmp r5, 0x4 - bne _080A11D0 - lsrs r0, r4, 19 - movs r1, 0x4 - bl sub_80A14C0 -_080A11D0: - cmp r5, 0x5 - bne _080A11DC - lsrs r0, r4, 19 - movs r1, 0x5 - bl sub_80A14C0 -_080A11DC: - cmp r5, 0x6 - bne _080A11E8 - lsrs r0, r4, 19 - movs r1, 0x6 - bl sub_80A14C0 -_080A11E8: - cmp r5, 0x7 - bne _080A11F4 - lsrs r0, r4, 19 - movs r1, 0x7 - bl sub_80A14C0 -_080A11F4: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80A1188 - - thumb_func_start sub_80A11FC -sub_80A11FC: @ 80A11FC - push {r4,r5,lr} - lsls r4, r0, 16 - movs r0, 0xF0 - lsls r0, 12 - ands r0, r4 - lsrs r5, r0, 16 - cmp r5, 0 - bne _080A1216 - lsrs r0, r4, 20 - lsls r0, 24 - lsrs r0, 24 - bl sub_80A131C -_080A1216: - cmp r5, 0x1 - bne _080A1224 - lsrs r0, r4, 20 - lsls r0, 24 - lsrs r0, 24 - bl sub_80A136C -_080A1224: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80A11FC - - thumb_func_start sub_80A122C -sub_80A122C: @ 80A122C - push {lr} - lsls r1, r0, 16 - movs r0, 0xF0 - lsls r0, 12 - ands r0, r1 - cmp r0, 0 - bne _080A1240 - lsrs r0, r1, 20 - bl sub_80A1798 -_080A1240: - pop {r0} - bx r0 - thumb_func_end sub_80A122C - - thumb_func_start sub_80A1244 -sub_80A1244: @ 80A1244 - push {lr} - lsls r1, r0, 16 - movs r0, 0xF0 - lsls r0, 12 - ands r0, r1 - cmp r0, 0 - bne _080A125C - lsrs r0, r1, 20 - lsls r0, 24 - lsrs r0, 24 - bl sub_80A1344 -_080A125C: - pop {r0} - bx r0 - thumb_func_end sub_80A1244 - - thumb_func_start sub_80A1260 -sub_80A1260: @ 80A1260 - push {lr} - lsls r1, r0, 16 - movs r0, 0xF0 - lsls r0, 12 - ands r0, r1 - lsrs r0, 16 - cmp r0, 0x1 - bne _080A1276 - lsrs r0, r1, 20 - bl sub_80A14F8 -_080A1276: - pop {r0} - bx r0 - thumb_func_end sub_80A1260 - - thumb_func_start sub_80A127C -sub_80A127C: @ 80A127C - push {lr} - lsls r1, r0, 16 - movs r0, 0xE0 - lsls r0, 11 - ands r0, r1 - cmp r0, 0 - bne _080A1290 - lsrs r0, r1, 19 - bl sub_80A1548 -_080A1290: - pop {r0} - bx r0 - thumb_func_end sub_80A127C - - thumb_func_start sub_80A1294 -sub_80A1294: @ 80A1294 - push {lr} - lsls r1, r0, 16 - movs r0, 0xE0 - lsls r0, 11 - ands r0, r1 - cmp r0, 0 - bne _080A12A8 - lsrs r0, r1, 19 - bl sub_80A1570 -_080A12A8: - pop {r0} - bx r0 - thumb_func_end sub_80A1294 - - thumb_func_start sub_80A12AC -sub_80A12AC: @ 80A12AC - push {lr} - lsls r0, 16 - movs r1, 0xC0 - lsls r1, 10 - ands r1, r0 - ldr r0, =gUnknown_08513684 - lsrs r1, 14 - adds r1, r0 - ldr r0, [r1] - ldr r1, =0x06003c00 - movs r2, 0xA0 - lsls r2, 1 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A12AC - - thumb_func_start sub_80A12D4 -sub_80A12D4: @ 80A12D4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x3 - ands r0, r4 - ldr r5, =gUnknown_08513894 - lsls r0, 2 - adds r0, r5 - ldr r0, [r0] - ldr r1, =0x06006400 - movs r2, 0x80 - bl sub_80A0980 - adds r1, r4, 0x2 - adds r0, r1, 0 - asrs r0, 2 - lsls r0, 2 - subs r0, r1, r0 - lsls r0, 24 - lsrs r0, 22 - adds r0, r5 - ldr r0, [r0] - ldr r1, =0x06006480 - movs r2, 0x80 - bl sub_80A0980 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A12D4 - - thumb_func_start sub_80A131C -sub_80A131C: @ 80A131C - push {lr} - lsls r0, 24 - movs r1, 0xC0 - lsls r1, 18 - ands r1, r0 - ldr r0, =gUnknown_085143E4 - lsrs r1, 22 - adds r1, r0 - ldr r0, [r1] - ldr r1, =0x06007a00 - movs r2, 0xF0 - lsls r2, 2 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A131C - - thumb_func_start sub_80A1344 -sub_80A1344: @ 80A1344 - push {lr} - lsls r0, 24 - movs r1, 0xC0 - lsls r1, 18 - ands r1, r0 - ldr r0, =gUnknown_085145F4 - lsrs r1, 22 - adds r1, r0 - ldr r0, [r1] - ldr r1, =0x06007e00 - movs r2, 0x80 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A1344 - - thumb_func_start sub_80A136C -sub_80A136C: @ 80A136C - push {lr} - lsls r0, 24 - movs r1, 0xE0 - lsls r1, 19 - ands r1, r0 - ldr r0, =gUnknown_08514E04 - lsrs r1, 22 - adds r1, r0 - ldr r0, [r1] - ldr r1, =0x06007e00 - movs r2, 0x80 - lsls r2, 1 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A136C - - thumb_func_start sub_80A1394 -sub_80A1394: @ 80A1394 - push {r4-r6,lr} - lsls r0, 16 - lsrs r5, r0, 16 - lsls r1, 24 - lsrs r6, r1, 24 - subs r0, r5, r6 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0xB - bhi _080A13F0 - adds r0, r5, 0 - movs r1, 0xC - bl __umodsi3 - adds r4, r0, 0 - lsls r4, 16 - ldr r0, =gUnknown_08515384 - lsrs r4, 14 - adds r0, r4, r0 - ldr r0, [r0] - ldr r1, =gUnknown_08515344 - lsls r5, r6, 2 - adds r1, r5, r1 - ldr r1, [r1] - movs r2, 0x80 - bl sub_80A0980 - ldr r0, =gUnknown_085153B4 - adds r4, r0 - ldr r0, [r4] - ldr r1, =gUnknown_08515364 - adds r5, r1 - ldr r1, [r5] - movs r2, 0x80 - bl sub_80A0980 - b _080A141C - .pool -_080A13F0: - movs r0, 0x3 - ands r5, r0 - ldr r0, =gUnknown_085153E4 - lsls r5, 2 - adds r0, r5, r0 - ldr r0, [r0] - ldr r1, =gUnknown_08515344 - lsls r4, r6, 2 - adds r1, r4, r1 - ldr r1, [r1] - movs r2, 0x80 - bl sub_80A0980 - ldr r0, =gUnknown_085153F4 - adds r5, r0 - ldr r0, [r5] - ldr r1, =gUnknown_08515364 - adds r4, r1 - ldr r1, [r4] - movs r2, 0x80 - bl sub_80A0980 -_080A141C: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A1394 - - thumb_func_start sub_80A1434 -sub_80A1434: @ 80A1434 - push {lr} - lsls r0, 16 - lsrs r0, 16 - lsls r1, 24 - lsrs r3, r1, 24 - subs r0, r3 - lsls r0, 16 - movs r1, 0xE0 - lsls r1, 11 - ands r1, r0 - ldr r0, =gUnknown_08515824 - lsrs r1, 14 - adds r1, r0 - ldr r2, [r1] - cmp r2, 0 - beq _080A1464 - ldr r0, =gUnknown_08515804 - lsls r1, r3, 2 - adds r1, r0 - ldr r1, [r1] - adds r0, r2, 0 - movs r2, 0x80 - bl sub_80A0980 -_080A1464: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A1434 - - thumb_func_start sub_80A1470 -sub_80A1470: @ 80A1470 - push {lr} - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - ands r0, r1 - ldr r1, =gUnknown_08515964 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x06007800 - movs r2, 0x80 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A1470 - - thumb_func_start sub_80A1498 -sub_80A1498: @ 80A1498 - push {lr} - lsls r0, 16 - movs r1, 0xC0 - lsls r1, 10 - ands r1, r0 - ldr r0, =gUnknown_08515D8C - lsrs r1, 14 - adds r1, r0 - ldr r0, [r1] - ldr r1, =0x06005400 - movs r2, 0x80 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A1498 - - thumb_func_start sub_80A14C0 -sub_80A14C0: @ 80A14C0 - push {lr} - lsls r0, 16 - lsrs r0, 16 - lsls r1, 24 - lsrs r1, 24 - subs r0, r1 - lsls r0, 16 - movs r2, 0xE0 - lsls r2, 11 - ands r2, r0 - ldr r0, =gUnknown_085161DC - lsrs r2, 14 - adds r2, r0 - ldr r0, [r2] - ldr r2, =gUnknown_085161BC - lsls r1, 2 - adds r1, r2 - ldr r1, [r1] - movs r2, 0x80 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A14C0 - - thumb_func_start sub_80A14F8 -sub_80A14F8: @ 80A14F8 - push {lr} - lsls r0, 16 - movs r1, 0xC0 - lsls r1, 10 - ands r1, r0 - ldr r0, =gUnknown_08515D8C - lsrs r1, 14 - adds r1, r0 - ldr r0, [r1] - ldr r1, =0x06007400 - movs r2, 0x80 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A14F8 - - thumb_func_start sub_80A1520 -sub_80A1520: @ 80A1520 - push {lr} - lsls r0, 16 - movs r1, 0xC0 - lsls r1, 10 - ands r1, r0 - ldr r0, =gUnknown_085164FC - lsrs r1, 14 - adds r1, r0 - ldr r0, [r1] - ldr r1, =0x06005540 - movs r2, 0xC0 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A1520 - - thumb_func_start sub_80A1548 -sub_80A1548: @ 80A1548 - push {lr} - lsls r0, 16 - movs r1, 0xC0 - lsls r1, 10 - ands r1, r0 - ldr r0, =gUnknown_0851680C - lsrs r1, 14 - adds r1, r0 - ldr r0, [r1] - ldr r1, =0x06005b40 - movs r2, 0xC0 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A1548 - - thumb_func_start sub_80A1570 -sub_80A1570: @ 80A1570 - push {lr} - lsls r0, 16 - movs r1, 0xC0 - lsls r1, 10 - ands r1, r0 - ldr r0, =gUnknown_08516B1C - lsrs r1, 14 - adds r1, r0 - ldr r0, [r1] - ldr r1, =0x06005b40 - movs r2, 0xC0 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A1570 - - thumb_func_start sub_80A1598 -sub_80A1598: @ 80A1598 - push {lr} - lsls r0, 16 - movs r1, 0xC0 - lsls r1, 10 - ands r1, r0 - ldr r0, =gUnknown_08516D2C - lsrs r1, 14 - adds r1, r0 - ldr r0, [r1] - ldr r1, =0x06005c00 - movs r2, 0x80 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A1598 - - thumb_func_start sub_80A15C0 -sub_80A15C0: @ 80A15C0 - push {lr} - lsls r2, r0, 16 - lsrs r0, r2, 16 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080A15D4 - lsrs r0, r2, 17 - bl sub_80A1748 -_080A15D4: - pop {r0} - bx r0 - thumb_func_end sub_80A15C0 - - thumb_func_start sub_80A15D8 -sub_80A15D8: @ 80A15D8 - push {lr} - lsls r1, r0, 16 - movs r0, 0xE0 - lsls r0, 11 - ands r0, r1 - cmp r0, 0 - bne _080A15EC - lsrs r0, r1, 19 - bl sub_80A16B0 -_080A15EC: - pop {r0} - bx r0 - thumb_func_end sub_80A15D8 - - thumb_func_start sub_80A15F0 -sub_80A15F0: @ 80A15F0 - push {r4,r5,lr} - lsls r4, r0, 16 - lsrs r0, r4, 16 - adds r5, r0, 0 - movs r0, 0x3F - ands r0, r5 - cmp r0, 0x1 - bne _080A1606 - lsrs r0, r4, 22 - bl sub_80A1720 -_080A1606: - movs r0, 0x7 - ands r0, r5 - cmp r0, 0x1 - bne _080A1614 - lsrs r0, r4, 19 - bl sub_80A16F8 -_080A1614: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80A15F0 - - thumb_func_start sub_80A161C -sub_80A161C: @ 80A161C - push {lr} - lsls r1, r0, 16 - movs r0, 0xC0 - lsls r0, 10 - ands r0, r1 - cmp r0, 0 - bne _080A1630 - lsrs r0, r1, 18 - bl sub_80A1770 -_080A1630: - pop {r0} - bx r0 - thumb_func_end sub_80A161C - - thumb_func_start sub_80A1634 -sub_80A1634: @ 80A1634 - push {r4,lr} - lsls r4, r0, 16 - movs r0, 0xE0 - lsls r0, 11 - ands r0, r4 - cmp r0, 0 - bne _080A1650 - lsrs r4, 19 - adds r0, r4, 0 - bl sub_80A17C0 - adds r0, r4, 0 - bl sub_80A17EC -_080A1650: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80A1634 - - thumb_func_start sub_80A1658 -sub_80A1658: @ 80A1658 - push {lr} - lsls r1, r0, 16 - movs r0, 0xC0 - lsls r0, 10 - ands r0, r1 - cmp r0, 0 - bne _080A166C - lsrs r0, r1, 18 - bl sub_80A1818 -_080A166C: - pop {r0} - bx r0 - thumb_func_end sub_80A1658 - - thumb_func_start sub_80A1670 -sub_80A1670: @ 80A1670 - push {lr} - lsls r1, r0, 16 - movs r0, 0xC0 - lsls r0, 10 - ands r0, r1 - cmp r0, 0 - bne _080A1684 - lsrs r0, r1, 18 - bl sub_80A1884 -_080A1684: - pop {r0} - bx r0 - thumb_func_end sub_80A1670 - - thumb_func_start sub_80A1688 -sub_80A1688: @ 80A1688 - push {lr} - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - ands r0, r1 - ldr r1, =gUnknown_08516E3C - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x06003e00 - movs r2, 0x80 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A1688 - - thumb_func_start sub_80A16B0 -sub_80A16B0: @ 80A16B0 - push {r4,lr} - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - adds r4, r0, 0 - lsls r4, 16 - ldr r0, =gUnknown_08517A44 - lsrs r4, 14 - adds r0, r4, r0 - ldr r0, [r0] - ldr r1, =0x06007e00 - movs r2, 0xC0 - lsls r2, 1 - bl sub_80A0980 - ldr r0, =gUnknown_08517A50 - adds r4, r0 - ldr r0, [r4] - ldr r1, =0x06007a00 - movs r2, 0xA0 - lsls r2, 2 - bl sub_80A0980 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A16B0 - - thumb_func_start sub_80A16F8 -sub_80A16F8: @ 80A16F8 - push {lr} - lsls r0, 16 - movs r1, 0xC0 - lsls r1, 10 - ands r1, r0 - ldr r0, =gUnknown_08517BFC - lsrs r1, 14 - adds r1, r0 - ldr r0, [r1] - ldr r1, =0x06007f00 - movs r2, 0x20 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A16F8 - - thumb_func_start sub_80A1720 -sub_80A1720: @ 80A1720 - push {lr} - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - ands r0, r1 - ldr r1, =gUnknown_08517C0C - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x06007c00 - movs r2, 0x80 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A1720 - - thumb_func_start sub_80A1748 -sub_80A1748: @ 80A1748 - push {lr} - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - ands r0, r1 - ldr r1, =gUnknown_08518034 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x06005200 - movs r2, 0x80 - lsls r2, 2 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A1748 - - thumb_func_start sub_80A1770 -sub_80A1770: @ 80A1770 - push {lr} - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - ands r0, r1 - ldr r1, =gUnknown_0851829C - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x06007e00 - movs r2, 0x90 - lsls r2, 1 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A1770 - - thumb_func_start sub_80A1798 -sub_80A1798: @ 80A1798 - push {lr} - lsls r0, 16 - movs r1, 0xE0 - lsls r1, 11 - ands r1, r0 - ldr r0, =gUnknown_085202C4 - lsrs r1, 14 - adds r1, r0 - ldr r0, [r1] - ldr r1, =0x06005e00 - movs r2, 0xC0 - lsls r2, 4 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A1798 - - thumb_func_start sub_80A17C0 -sub_80A17C0: @ 80A17C0 - push {lr} - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - lsls r0, 16 - ldr r1, =gUnknown_08524864 - lsrs r0, 14 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x060052e0 - movs r2, 0x80 - lsls r2, 1 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A17C0 - - thumb_func_start sub_80A17EC -sub_80A17EC: @ 80A17EC - push {lr} - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - lsls r0, 16 - ldr r1, =gUnknown_08524870 - lsrs r0, 14 - adds r0, r1 - ldr r0, [r0] - ldr r1, =0x060050e0 - movs r2, 0x80 - lsls r2, 1 - bl sub_80A0980 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80A17EC - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/title_screen.s b/asm/title_screen.s index 15037e80d..bc9401fb6 100644 --- a/asm/title_screen.s +++ b/asm/title_screen.s @@ -468,7 +468,7 @@ title_screen_vblank_callback: @ 80AA780 bl LoadOam bl ProcessSpriteCopyRequests bl TransferPlttBuffer - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y ldrh r1, [r0] movs r0, 0x16 bl SetGpuReg @@ -590,7 +590,7 @@ _080AA7E0: b _080AAB1E .pool _080AA8C4: - ldr r0, =gTitleScreenPokemonLogoTiles + ldr r0, =gTitleScreenPokemonLogoGfx movs r1, 0xC0 lsls r1, 19 bl LZ77UnCompVram @@ -602,13 +602,13 @@ _080AA8C4: lsls r2, 1 movs r1, 0 bl LoadPalette - ldr r0, =gTitleScreenRayquazaTiles + ldr r0, =gTitleScreenRayquazaGfx ldr r1, =0x06008000 bl LZ77UnCompVram - ldr r0, =gUnknown_0853F83C + ldr r0, =gTitleScreenRayquazaTilemap ldr r1, =0x0600d000 bl LZ77UnCompVram - ldr r0, =gTitleScreenCloudsTiles + ldr r0, =gTitleScreenCloudsGfx ldr r1, =0x0600c000 bl LZ77UnCompVram ldr r0, =gUnknown_08DDE458 @@ -627,7 +627,7 @@ _080AA8C4: bl LoadCompressedObjectPic ldr r0, =gUnknown_0854013C bl LoadCompressedObjectPic - ldr r0, =gUnknown_08DDE438 + ldr r0, =gTitleScreenEmeraldVersionPal movs r1, 0x80 lsls r1, 1 movs r2, 0x20 @@ -1156,14 +1156,14 @@ _080AAE30: ldrh r0, [r3, 0x10] adds r0, 0x1 strh r0, [r3, 0x10] - ldr r2, =gUnknown_02022E1A + ldr r2, =gBattle_BG1_Y movs r1, 0x10 ldrsh r0, [r3, r1] lsrs r1, r0, 31 adds r0, r1 asrs r0, 1 strh r0, [r2] - ldr r1, =gUnknown_02022E18 + ldr r1, =gBattle_BG1_X movs r0, 0 strh r0, [r1] _080AAE72: @@ -1228,7 +1228,7 @@ c2_clear_save_data_screen_1: @ 80AAEF0 lsls r0, 24 cmp r0, 0 bne _080AAF02 - ldr r0, =c2_clear_save_data_screen_2 + ldr r0, =CB2_InitClearSaveDataScreen bl SetMainCallback2 _080AAF02: pop {r0} diff --git a/asm/trade.s b/asm/trade.s index 8712567c7..51b517a0b 100644 --- a/asm/trade.s +++ b/asm/trade.s @@ -18,7 +18,7 @@ sub_8077170: @ 8077170 lsrs r2, 16 movs r0, 0 adds r1, r4, 0 - bl link_0800A448 + bl SendBlock lsls r0, 24 lsrs r0, 24 b _080771A2 @@ -83,7 +83,7 @@ _080771F8: thumb_func_start sub_8077200 sub_8077200: @ 8077200 push {lr} - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 lsrs r0, 24 pop {r1} @@ -103,7 +103,7 @@ sub_8077210: @ 8077210 b _08077230 .pool _0807722C: - bl sub_800A5B4 + bl ResetBlockReceivedFlags _08077230: pop {r0} bx r0 @@ -125,7 +125,7 @@ sub_8077234: @ 8077234 _08077250: lsls r0, r4, 24 lsrs r0, 24 - bl sub_800A5EC + bl ResetBlockReceivedFlag _08077258: pop {r4} pop {r0} @@ -397,7 +397,7 @@ _080774B2: bl sub_807A19C movs r0, 0 bl ShowBg - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r2, [r0] cmp r2, 0 bne _0807754C @@ -504,7 +504,7 @@ _080775D8: b _08077B22 .pool _080775E8: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0x1 beq _080775F2 @@ -1832,7 +1832,7 @@ sub_80781C8: @ 80781C8 b _08078244 .pool _08078220: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r4, [r0] cmp r4, 0 bne _08078244 @@ -2198,7 +2198,7 @@ _08078552: adds r1, r5, 0 eors r1, r2 lsls r1, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 movs r2, 0xC8 bl sub_8078438 @@ -2237,7 +2237,7 @@ _080785B6: adds r1, r5, 0 eors r1, r2 lsls r1, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 movs r2, 0xC8 bl sub_8078438 @@ -2276,7 +2276,7 @@ _0807861A: adds r1, r5, 0 eors r1, r2 lsls r1, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 movs r2, 0xC8 bl sub_8078438 @@ -2318,7 +2318,7 @@ _0807868A: adds r1, r5, 0 eors r1, r2 lsls r1, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 movs r2, 0xD8 bl sub_8078438 @@ -2360,7 +2360,7 @@ _080786F0: adds r1, r5, 0 eors r1, r2 lsls r1, 8 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer adds r1, r2 movs r2, 0xB bl sub_8078438 @@ -2467,7 +2467,7 @@ sub_80787E0: @ 80787E0 ands r0, r2 cmp r0, 0 beq _08078864 - ldr r0, =gUnknown_020223C4 + ldr r0, =gBlockRecvBuffer ldrh r1, [r0] ldr r0, =0x0000bbbb cmp r1, r0 @@ -2521,7 +2521,7 @@ _08078864: ands r0, r2 cmp r0, 0 beq _080788F6 - ldr r3, =gUnknown_020223C4 + ldr r3, =gBlockRecvBuffer movs r1, 0x80 lsls r1, 1 adds r0, r3, r1 @@ -2597,7 +2597,7 @@ sub_8078900: @ 8078900 ands r0, r5 cmp r0, 0 beq _080789E2 - ldr r2, =gUnknown_020223C4 + ldr r2, =gBlockRecvBuffer ldrh r1, [r2] ldr r0, =0x0000ddee cmp r1, r0 @@ -4052,7 +4052,7 @@ sub_80794CC: @ 80794CC b _0807953A .pool _08079518: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0807953A @@ -5954,7 +5954,7 @@ _0807A488: asrs r0, 16 lsls r1, 16 asrs r1, 16 - bl sub_8075060 + bl GetHPBarLevel ldr r1, [r7] adds r1, 0x5D adds r1, r6 @@ -5997,7 +5997,7 @@ _0807A4E8: asrs r0, 16 lsls r1, 16 asrs r1, 16 - bl sub_8075060 + bl GetHPBarLevel ldr r1, [r7] adds r1, 0x63 adds r1, r6 @@ -6279,7 +6279,7 @@ _0807A718: thumb_func_start sub_807A728 sub_807A728: @ 807A728 push {r4-r7,lr} - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _0807A7B4 @@ -6603,7 +6603,7 @@ _0807A97C: adds r4, 0x1C adds r5, 0x1 _0807A980: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r5, r0 @@ -6632,7 +6632,7 @@ _0807A9B0: adds r4, 0x1C adds r5, 0x1 _0807A9B4: - bl sub_8009FCC + bl GetLinkPlayerCount lsls r0, 24 lsrs r0, 24 cmp r5, r0 @@ -7054,7 +7054,7 @@ _0807ACC4: thumb_func_start sub_807ACDC sub_807ACDC: @ 807ACDC push {lr} - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0807ACF0 @@ -7128,7 +7128,7 @@ _0807AD58: lsls r0, r5, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] ldr r1, [r1, 0x8] adds r2, r5, 0 @@ -7141,7 +7141,7 @@ _0807AD94: lsls r0, r5, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r2, [r1] lsls r4, r6, 1 adds r1, r4, 0x1 @@ -7254,7 +7254,7 @@ _0807AE78: .4byte _0807B0D4 .4byte _0807B0F0 _0807AEAC: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _0807AEC0 @@ -7270,7 +7270,7 @@ _0807AEC0: adds r0, r5, 0 bl AllocZeroed str r0, [r4] - bl init_uns_table_pokemon_copy + bl AllocateMonSpritesGfx bl ResetTasks bl ResetSpriteData bl FreeAllSpritePalettes @@ -7321,7 +7321,7 @@ _0807AEC0: b _0807B116 .pool _0807AF58: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r5, [r0] cmp r5, 0 bne _0807AF90 @@ -7401,7 +7401,7 @@ _0807B000: b _0807B116 _0807B006: bl sub_807AC64 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0x1 beq _0807B014 @@ -7729,7 +7729,7 @@ _0807B2D0: adds r0, r5, 0 bl AllocZeroed str r0, [r4] - bl init_uns_table_pokemon_copy + bl AllocateMonSpritesGfx bl ResetTasks bl ResetSpriteData bl FreeAllSpritePalettes @@ -7989,7 +7989,7 @@ _0807B566: _0807B57C: mov r0, r9 bl sub_807B464 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _0807B58E @@ -8029,7 +8029,7 @@ _0807B5D0: ldr r1, [r4] adds r1, 0x74 movs r2, 0x14 - bl link_0800A448 + bl SendBlock ldr r1, [r4] adds r1, 0x93 ldrb r0, [r1] @@ -8939,7 +8939,7 @@ _0807C04C: adds r1, r0 lsls r1, 2 adds r1, r3 - ldr r2, =gUnknown_08300D38 + ldr r2, =gMonFrontPicCoords adds r0, r4, 0 adds r0, 0xF0 ldrh r0, [r0] @@ -10369,7 +10369,7 @@ _0807CCEE: lsls r0, r2, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] ldr r1, [r1, 0x10] ldr r3, [r3, 0x6C] @@ -10395,7 +10395,7 @@ _0807CD1C: adds r1, r0 lsls r1, 2 adds r1, r4 - ldr r3, =gUnknown_08300D38 + ldr r3, =gMonFrontPicCoords adds r2, 0xF2 ldrh r0, [r2] lsls r0, 2 @@ -10663,7 +10663,7 @@ _0807CF5C: movs r0, 0 bl GetBgTilemapBuffer bl Free - bl sub_805F094 + bl FreeMonSpritesGfx ldr r0, [r7] bl Free str r4, [r7] @@ -11001,7 +11001,7 @@ _0807D428: adds r1, r0 lsls r1, 2 adds r1, r3 - ldr r2, =gUnknown_08300D38 + ldr r2, =gMonFrontPicCoords adds r0, r4, 0 adds r0, 0xF0 ldrh r0, [r0] @@ -12474,7 +12474,7 @@ _0807E13A: lsls r0, r2, 3 ldr r1, =gMonFrontPicTable adds r0, r1 - ldr r1, =gBattleSpritesGfx + ldr r1, =gMonSpritesGfxPtr ldr r1, [r1] ldr r1, [r1, 0x10] ldr r3, [r3, 0x6C] @@ -12500,7 +12500,7 @@ _0807E168: adds r1, r0 lsls r1, 2 adds r1, r4 - ldr r3, =gUnknown_08300D38 + ldr r3, =gMonFrontPicCoords adds r2, 0xF2 ldrh r0, [r2] lsls r0, 2 @@ -12768,7 +12768,7 @@ _0807E3A8: movs r0, 0 bl GetBgTilemapBuffer bl Free - bl sub_805F094 + bl FreeMonSpritesGfx ldr r0, [r7] bl Free str r4, [r7] @@ -12877,7 +12877,7 @@ _0807E4C2: sub_807E4DC: @ 807E4DC push {r4-r6,lr} bl sub_807ACDC - bl sub_800A550 + bl GetBlockReceivedStatus lsls r0, 24 lsrs r5, r0, 24 movs r6, 0x1 @@ -12885,7 +12885,7 @@ sub_807E4DC: @ 807E4DC ands r0, r6 cmp r0, 0 beq _0807E51A - ldr r4, =gUnknown_020223C4 + ldr r4, =gBlockRecvBuffer ldrh r1, [r4] ldr r0, =0x0000dcba cmp r1, r0 @@ -12903,13 +12903,13 @@ _0807E504: strb r6, [r0] _0807E514: movs r0, 0 - bl sub_800A5EC + bl ResetBlockReceivedFlag _0807E51A: movs r0, 0x2 ands r0, r5 cmp r0, 0 beq _0807E542 - ldr r0, =gUnknown_020223C4 + ldr r0, =gBlockRecvBuffer movs r1, 0x80 lsls r1, 1 adds r0, r1 @@ -12924,7 +12924,7 @@ _0807E51A: strb r1, [r0] _0807E53C: movs r0, 0x1 - bl sub_800A5EC + bl ResetBlockReceivedFlag _0807E542: pop {r4-r6} pop {r0} @@ -13600,7 +13600,7 @@ _0807EAEC: ldr r1, [r4] adds r1, 0x74 movs r2, 0x14 - bl link_0800A448 + bl SendBlock ldr r0, [r4] adds r0, 0x72 movs r1, 0x2 @@ -14090,7 +14090,7 @@ _0807EFF0: b _0807F03A .pool _0807F028: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r1, [r0] cmp r1, 0 bne _0807F03A @@ -14136,7 +14136,7 @@ c2_080543C4: @ 807F068 movs r0, 0 bl GetBgTilemapBuffer bl Free - bl sub_805F094 + bl FreeMonSpritesGfx ldr r4, =gUnknown_020322A0 ldr r0, [r4] bl Free diff --git a/asm/trader.s b/asm/trader.s index 8c21648fc..8e0b17905 100644 --- a/asm/trader.s +++ b/asm/trader.s @@ -351,7 +351,7 @@ sub_8133CF4: @ 8133CF4 ldr r5, =gScriptResult _08133CFA: adds r0, r4, 0 - bl sub_8161AD0 + bl CountDecorationCategoryN lsls r0, 24 cmp r0, 0 beq _08133D10 @@ -395,7 +395,7 @@ sub_8133D2C: @ 8133D2C cmp r1, r0 beq _08133D72 adds r0, r1, 0 - bl sub_81618D0 + bl GetFirstEmptyDecorSlot lsls r0, 24 asrs r0, 24 movs r1, 0x1 @@ -433,15 +433,15 @@ sub_8133DA0: @ 8133DA0 push {r4-r6,lr} lsls r0, 24 lsrs r6, r0, 24 - bl sub_81279C4 + bl IsSelectedDecorInThePC lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _08133DFC ldr r5, =gSpecialVar_0x8006 - ldr r0, =gUnknown_0203A172 + ldr r0, =gCurDecorationIndex ldrb r1, [r0] - ldr r0, =gUnknown_0203A14C + ldr r0, =gCurDecorInventoryItems ldr r0, [r0] adds r0, r1 ldrb r0, [r0] diff --git a/asm/trainer_card.s b/asm/trainer_card.s index 7552d7ace..bee1f4f7f 100644 --- a/asm/trainer_card.s +++ b/asm/trainer_card.s @@ -191,7 +191,7 @@ _080C2836: ldrb r0, [r0] cmp r0, 0x1 bne _080C2852 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0x1 bne _080C2852 @@ -261,7 +261,7 @@ _080C28D8: b _080C2ACA .pool _080C28E4: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r5, [r0] cmp r5, 0 bne _080C290A @@ -301,7 +301,7 @@ _080C293C: bne _080C2946 b _080C2ACA _080C2946: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080C2960 @@ -346,7 +346,7 @@ _080C299C: ands r0, r1 cmp r0, 0 beq _080C29F4 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080C29DC @@ -358,7 +358,7 @@ _080C299C: cmp r0, 0x1 beq _080C2A14 _080C29C0: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080C29DC @@ -382,7 +382,7 @@ _080C29F4: ands r0, r1 cmp r0, 0 beq _080C2ACA - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080C2A20 @@ -430,7 +430,7 @@ _080C2A2C: b _080C2ACA .pool _080C2A68: - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 bne _080C2ACA @@ -1403,7 +1403,7 @@ sub_80C3278: @ 80C3278 movs r0, 0x40 movs r1, 0xF0 bl SetGpuReg - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080C32E0 @@ -4267,7 +4267,7 @@ _080C4BF6: ldrb r0, [r1, 0x4] adds r0, 0x1 strb r0, [r1, 0x4] - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0 beq _080C4B20 @@ -4745,7 +4745,7 @@ sub_80C4FF0: @ 80C4FF0 bl InUnionRoom cmp r0, 0x1 bne _080C5060 - ldr r0, =gUnknown_03003124 + ldr r0, =gReceivedRemoteLinkPlayers ldrb r0, [r0] cmp r0, 0x1 bne _080C5060 diff --git a/asm/trainer_rematch.s b/asm/trainer_rematch.s index 0c30cfea9..b814934a3 100755 --- a/asm/trainer_rematch.s +++ b/asm/trainer_rematch.s @@ -185,7 +185,7 @@ _081DA6D4: adds r0, r1 adds r0, r6 ldrh r0, [r0] - bl trainer_flag_check + bl HasTrainerAlreadyBeenFought lsls r0, 24 cmp r0, 0 bne _081DA6F0 diff --git a/asm/trainer_see.s b/asm/trainer_see.s index d57ad1815..59dd9f74b 100644 --- a/asm/trainer_see.s +++ b/asm/trainer_see.s @@ -267,7 +267,7 @@ CheckIfTrainerCanApproachPlayer: @ 80B3DF0 mov r8, r4 cmp r0, 0x1 bne _080B3E50 - ldr r1, =gUnknown_0855072C + ldr r1, =gIsTrainerInRange ldrb r0, [r7, 0x18] lsls r0, 28 lsrs r0, 26 @@ -300,7 +300,7 @@ _080B3E4C: _080B3E50: movs r5, 0 _080B3E52: - ldr r0, =gUnknown_0855072C + ldr r0, =gIsTrainerInRange lsls r4, r5, 2 adds r4, r0 ldrb r1, [r7, 0x1D] @@ -702,7 +702,7 @@ c3_8081EDC: @ 80B4118 b _080B416C .pool _080B4150: - ldr r7, =gUnknown_0855073C + ldr r7, =gTrainerSeeFuncList _080B4152: movs r1, 0x8 ldrsh r0, [r4, r1] @@ -734,7 +734,7 @@ sub_80B417C: @ 80B417C push {r4,r5,lr} adds r5, r1, 0 adds r4, r2, 0 - ldr r1, =gFieldEffectSpawnParams + ldr r1, =gFieldEffectArguments adds r2, r1, 0x4 adds r3, r1, 0 adds r3, 0x8 @@ -1050,7 +1050,7 @@ sub_80B43E0: @ 80B43E0 lsls r0, 24 cmp r0, 0 beq _080B4426 - ldr r2, =gFieldEffectSpawnParams + ldr r2, =gFieldEffectArguments movs r1, 0x10 ldrsh r0, [r4, r1] str r0, [r2] @@ -1186,7 +1186,7 @@ sub_80B44C8: @ 80B44C8 adds r0, 0x1 strh r0, [r4, 0x16] _080B44FA: - ldr r1, =gUnknown_0855076C + ldr r1, =gTrainerSeeFuncList2 movs r2, 0x8 ldrsh r0, [r4, r2] lsls r0, 2 @@ -1303,7 +1303,7 @@ sub_80B45D0: @ 80B45D0 ldr r1, =gScriptResult movs r0, 0x1 strh r0, [r1] - bl sub_809757C + bl UnfreezeMapObjects ldr r0, =gUnknown_03006090 ldrb r0, [r0, 0xC] bl sub_80974D0 @@ -1322,4 +1322,324 @@ _080B4616: .pool thumb_func_end sub_80B45D0 + thumb_func_start oei_exclamation_mark +oei_exclamation_mark: @ 80B4620 + push {lr} + ldr r0, =gSpriteTemplate_85507B4 + movs r1, 0 + movs r2, 0 + movs r3, 0x53 + bl CreateSpriteAtEnd + lsls r0, 24 + lsrs r1, r0, 24 + cmp r1, 0x40 + beq _080B4648 + lsls r0, r1, 4 + adds r0, r1 + lsls r0, 2 + ldr r1, =gSprites + adds r0, r1 + movs r1, 0 + movs r2, 0 + bl sub_80B46D8 +_080B4648: + movs r0, 0 + pop {r1} + bx r1 + .pool + thumb_func_end oei_exclamation_mark + + thumb_func_start sub_80B4658 +sub_80B4658: @ 80B4658 + push {lr} + ldr r0, =gSpriteTemplate_85507B4 + movs r1, 0 + movs r2, 0 + movs r3, 0x52 + bl CreateSpriteAtEnd + lsls r0, 24 + lsrs r1, r0, 24 + cmp r1, 0x40 + beq _080B4680 + lsls r0, r1, 4 + adds r0, r1 + lsls r0, 2 + ldr r1, =gSprites + adds r0, r1 + movs r1, 0x21 + movs r2, 0x1 + bl sub_80B46D8 +_080B4680: + movs r0, 0 + pop {r1} + bx r1 + .pool + thumb_func_end sub_80B4658 + + thumb_func_start sub_80B4690 +sub_80B4690: @ 80B4690 + push {r4,lr} + ldr r0, =gSpriteTemplate_85507CC + movs r1, 0 + movs r2, 0 + movs r3, 0x52 + bl CreateSpriteAtEnd + lsls r0, 24 + lsrs r0, 24 + cmp r0, 0x40 + beq _080B46C6 + lsls r4, r0, 4 + adds r4, r0 + lsls r4, 2 + ldr r0, =gSprites + adds r4, r0 + adds r0, r4, 0 + movs r1, 0x2E + movs r2, 0 + bl sub_80B46D8 + ldrb r1, [r4, 0x5] + movs r0, 0xF + ands r0, r1 + movs r1, 0x20 + orrs r0, r1 + strb r0, [r4, 0x5] +_080B46C6: + movs r0, 0 + pop {r4} + pop {r1} + bx r1 + .pool + thumb_func_end sub_80B4690 + + thumb_func_start sub_80B46D8 +@ void sub_80B46D8(struct obj *object, s16 a2, u8 a3) +sub_80B46D8: @ 80B46D8 + push {r4,lr} + lsls r2, 24 + lsrs r2, 24 + ldrb r4, [r0, 0x5] + movs r3, 0xD + negs r3, r3 + ands r3, r4 + movs r4, 0x4 + orrs r3, r4 + strb r3, [r0, 0x5] + movs r3, 0x3E + adds r3, r0 + mov r12, r3 + ldrb r3, [r3] + movs r4, 0x2 + orrs r3, r4 + mov r4, r12 + strb r3, [r4] + ldr r4, =gFieldEffectArguments + ldr r3, [r4] + strh r3, [r0, 0x2E] + ldr r3, [r4, 0x4] + strh r3, [r0, 0x30] + ldr r3, [r4, 0x8] + strh r3, [r0, 0x32] + ldr r3, =0x0000fffb + strh r3, [r0, 0x34] + strh r1, [r0, 0x3C] + adds r1, r2, 0 + bl StartSpriteAnim + pop {r4} + pop {r0} + bx r0 + .pool + thumb_func_end sub_80B46D8 + + thumb_func_start objc_exclamation_mark_probably +objc_exclamation_mark_probably: @ 80B4724 + push {r4,lr} + sub sp, 0x4 + adds r4, r0, 0 + ldrh r0, [r4, 0x2E] + lsls r0, 24 + lsrs r0, 24 + ldrh r1, [r4, 0x30] + lsls r1, 24 + lsrs r1, 24 + ldrh r2, [r4, 0x32] + lsls r2, 24 + lsrs r2, 24 + mov r3, sp + bl TryGetFieldObjectIdByLocalIdAndMap + lsls r0, 24 + cmp r0, 0 + bne _080B4756 + adds r0, r4, 0 + adds r0, 0x3F + ldrb r1, [r0] + movs r0, 0x10 + ands r0, r1 + cmp r0, 0 + beq _080B4764 +_080B4756: + ldrh r1, [r4, 0x3C] + lsls r1, 24 + lsrs r1, 24 + adds r0, r4, 0 + bl FieldEffectStop + b _080B47B2 +_080B4764: + ldr r2, =gMapObjects + mov r0, sp + ldrb r1, [r0] + lsls r0, r1, 3 + adds r0, r1 + lsls r0, 2 + adds r0, r2 + ldrb r0, [r0, 0x4] + lsls r1, r0, 4 + adds r1, r0 + lsls r1, 2 + ldr r0, =gSprites + adds r1, r0 + ldrh r3, [r4, 0x34] + ldrh r0, [r4, 0x36] + adds r2, r3, r0 + strh r2, [r4, 0x36] + ldrh r0, [r1, 0x20] + strh r0, [r4, 0x20] + ldrh r0, [r1, 0x22] + subs r0, 0x10 + strh r0, [r4, 0x22] + ldrh r0, [r1, 0x24] + strh r0, [r4, 0x24] + ldrh r0, [r1, 0x26] + adds r0, r2 + strh r0, [r4, 0x26] + lsls r2, 16 + asrs r2, 16 + cmp r2, 0 + beq _080B47B0 + adds r0, r3, 0x1 + strh r0, [r4, 0x34] + b _080B47B2 + .pool +_080B47B0: + strh r2, [r4, 0x34] +_080B47B2: + add sp, 0x4 + pop {r4} + pop {r0} + bx r0 + thumb_func_end objc_exclamation_mark_probably + + thumb_func_start sub_80B47BC +sub_80B47BC: @ 80B47BC + push {lr} + ldr r0, =gUnknown_02038BFC + ldrb r0, [r0] + cmp r0, 0 + beq _080B47D4 + ldr r0, =gUnknown_03006090 + ldrb r0, [r0, 0xC] + b _080B47D8 + .pool +_080B47D4: + ldr r0, =gUnknown_03006090 + ldrb r0, [r0] +_080B47D8: + pop {r1} + bx r1 + .pool + thumb_func_end sub_80B47BC + + thumb_func_start sub_80B47E0 +sub_80B47E0: @ 80B47E0 + push {lr} + lsls r0, 24 + lsrs r0, 24 + cmp r0, 0x1 + bls _080B47EE + movs r0, 0 + b _080B4800 +_080B47EE: + cmp r0, 0 + beq _080B47FC + ldr r0, =gUnknown_03006090 + ldrb r0, [r0, 0xC] + b _080B4800 + .pool +_080B47FC: + ldr r0, =gUnknown_03006090 + ldrb r0, [r0] +_080B4800: + pop {r1} + bx r1 + .pool + thumb_func_end sub_80B47E0 + + thumb_func_start sub_80B4808 +sub_80B4808: @ 80B4808 + push {lr} + ldr r0, =gUnknown_030060AC + ldrb r0, [r0] + cmp r0, 0x1 + bne _080B4870 + ldr r2, =gUnknown_03006090 + ldr r0, =gUnknown_03006080 + ldrh r1, [r0] + lsls r0, r1, 1 + adds r0, r1 + lsls r0, 2 + adds r0, r2 + ldrb r1, [r0] + lsls r0, r1, 3 + adds r0, r1 + lsls r0, 2 + ldr r1, =gMapObjects + adds r0, r1 + ldrb r0, [r0, 0x18] + lsls r0, 28 + lsrs r0, 28 + bl GetOppositeDirection + lsls r0, 24 + lsrs r0, 24 + bl GetFaceDirectionAnimId + ldr r3, =gUnknown_03006084 + strb r0, [r3] + movs r0, 0xFE + strb r0, [r3, 0x1] + ldr r0, =gSaveBlock1Ptr + ldr r0, [r0] + ldrb r1, [r0, 0x5] + ldrb r2, [r0, 0x4] + movs r0, 0xFF + bl ScriptMovement_StartObjectMovementScript + b _080B489E + .pool +_080B4870: + ldr r0, =gPlayerAvatar + ldrb r1, [r0, 0x5] + lsls r0, r1, 3 + adds r0, r1 + lsls r0, 2 + ldr r1, =gMapObjects + adds r0, r1 + ldrb r0, [r0, 0x18] + lsls r0, 28 + lsrs r0, 28 + bl GetFaceDirectionAnimId + ldr r3, =gUnknown_03006084 + strb r0, [r3] + movs r0, 0xFE + strb r0, [r3, 0x1] + ldr r0, =gSaveBlock1Ptr + ldr r0, [r0] + ldrb r1, [r0, 0x5] + ldrb r2, [r0, 0x4] + movs r0, 0xFF + bl ScriptMovement_StartObjectMovementScript +_080B489E: + movs r0, 0xFF + bl sub_809BE48 + pop {r0} + bx r0 + .pool + thumb_func_end sub_80B4808 + .align 2, 0 @ Don't pad with nop. diff --git a/asm/truck_scene.s b/asm/truck_scene.s deleted file mode 100644 index bc3388cb6..000000000 --- a/asm/truck_scene.s +++ /dev/null @@ -1,589 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_80FB0B0 -sub_80FB0B0: @ 80FB0B0 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x78 - bl __modsi3 - cmp r0, 0 - bne _080FB0C4 - movs r0, 0x1 - negs r0, r0 - b _080FB0D6 -_080FB0C4: - adds r0, r4, 0 - movs r1, 0xA - bl __modsi3 - cmp r0, 0x4 - ble _080FB0D4 - movs r0, 0 - b _080FB0D6 -_080FB0D4: - movs r0, 0x1 -_080FB0D6: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80FB0B0 - - thumb_func_start sub_80FB0DC -sub_80FB0DC: @ 80FB0DC - push {lr} - adds r0, 0x78 - movs r1, 0xB4 - bl __modsi3 - cmp r0, 0 - beq _080FB0EE - movs r0, 0 - b _080FB0F2 -_080FB0EE: - movs r0, 0x1 - negs r0, r0 -_080FB0F2: - pop {r1} - bx r1 - thumb_func_end sub_80FB0DC - - thumb_func_start sub_80FB0F8 -sub_80FB0F8: @ 80FB0F8 - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, =gTasks + 0x8 - adds r5, r1, r0 - movs r1, 0 - ldrsh r0, [r5, r1] - adds r0, 0x1E - bl sub_80FB0DC - ldr r4, =gSaveBlock1Ptr - ldr r2, [r4] - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - lsls r0, 18 - movs r3, 0xC0 - lsls r3, 10 - orrs r0, r3 - asrs r0, 16 - str r0, [sp] - movs r0, 0x1 - movs r3, 0x3 - bl sub_808E82C - movs r3, 0 - ldrsh r0, [r5, r3] - bl sub_80FB0DC - ldr r2, [r4] - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - lsls r0, 17 - ldr r3, =0xfffd0000 - adds r0, r3 - asrs r0, 16 - str r0, [sp] - movs r0, 0x2 - movs r3, 0 - bl sub_808E82C - movs r1, 0 - ldrsh r0, [r5, r1] - bl sub_80FB0DC - ldr r2, [r4] - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - movs r4, 0 - movs r3, 0x3 - negs r3, r3 - lsls r0, 18 - asrs r0, 16 - str r0, [sp] - movs r0, 0x3 - bl sub_808E82C - ldrh r0, [r5] - adds r0, 0x1 - strh r0, [r5] - lsls r0, 16 - ldr r1, =0x75300000 - cmp r0, r1 - bne _080FB180 - strh r4, [r5] -_080FB180: - movs r3, 0 - ldrsh r0, [r5, r3] - bl sub_80FB0B0 - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - movs r0, 0 - bl SetCameraPanning - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80FB0F8 - - thumb_func_start sub_80FB1AC -sub_80FB1AC: @ 80FB1AC - push {r4-r7,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r3, r0, 3 - ldr r4, =gTasks + 0x8 - adds r7, r3, r4 - ldrh r1, [r7] - adds r1, 0x1 - strh r1, [r7] - ldrh r0, [r7, 0x4] - adds r0, 0x1 - strh r0, [r7, 0x4] - lsls r1, 16 - asrs r1, 16 - cmp r1, 0x5 - ble _080FB1DC - movs r0, 0 - strh r0, [r7] - ldrh r0, [r7, 0x2] - adds r0, 0x1 - strh r0, [r7, 0x2] -_080FB1DC: - ldrh r0, [r7, 0x2] - cmp r0, 0x13 - bne _080FB1F0 - adds r0, r2, 0 - bl DestroyTask - b _080FB2A8 - .pool -_080FB1F0: - ldr r2, =gUnknown_0858E898 - movs r1, 0x2 - ldrsh r0, [r7, r1] - adds r0, r2 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x2 - bne _080FB20C - adds r0, r4, 0 - subs r0, 0x8 - adds r0, r3, r0 - ldr r1, =sub_80FB2C0 - str r1, [r0] -_080FB20C: - movs r4, 0x2 - ldrsh r0, [r7, r4] - adds r0, r2 - movs r5, 0 - ldrsb r5, [r0, r5] - lsls r5, 16 - lsrs r5, 16 - movs r1, 0x4 - ldrsh r0, [r7, r1] - bl sub_80FB0B0 - adds r1, r0, 0 - lsls r5, 16 - asrs r5, 16 - lsls r1, 16 - asrs r1, 16 - adds r0, r5, 0 - bl SetCameraPanning - movs r4, 0x4 - ldrsh r0, [r7, r4] - adds r0, 0x1E - bl sub_80FB0DC - ldr r6, =gSaveBlock1Ptr - ldr r2, [r6] - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - movs r3, 0x3 - subs r3, r5 - lsls r3, 16 - asrs r3, 16 - lsls r0, 18 - movs r4, 0xC0 - lsls r4, 10 - orrs r0, r4 - asrs r0, 16 - str r0, [sp] - movs r0, 0x1 - bl sub_808E82C - movs r1, 0x4 - ldrsh r0, [r7, r1] - bl sub_80FB0DC - ldr r2, [r6] - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - negs r3, r5 - lsls r3, 16 - asrs r3, 16 - lsls r0, 17 - ldr r4, =0xfffd0000 - adds r0, r4 - asrs r0, 16 - str r0, [sp] - movs r0, 0x2 - bl sub_808E82C - movs r1, 0x4 - ldrsh r0, [r7, r1] - bl sub_80FB0DC - ldr r2, [r6] - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - movs r4, 0x3 - negs r4, r4 - adds r3, r4, 0 - subs r3, r5 - lsls r3, 16 - asrs r3, 16 - lsls r0, 18 - asrs r0, 16 - str r0, [sp] - movs r0, 0x3 - bl sub_808E82C -_080FB2A8: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80FB1AC - - thumb_func_start sub_80FB2C0 -sub_80FB2C0: @ 80FB2C0 - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - adds r3, r0, 0 - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r2, r0, r1 - ldrh r0, [r2] - adds r0, 0x1 - strh r0, [r2] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x5 - ble _080FB2F0 - movs r0, 0 - strh r0, [r2] - ldrh r0, [r2, 0x2] - adds r0, 0x1 - strh r0, [r2, 0x2] -_080FB2F0: - ldrh r0, [r2, 0x2] - cmp r0, 0x13 - bne _080FB304 - adds r0, r3, 0 - bl DestroyTask - b _080FB358 - .pool -_080FB304: - ldr r1, =gUnknown_0858E898 - movs r3, 0x2 - ldrsh r0, [r2, r3] - adds r0, r1 - movs r1, 0 - mov r8, r1 - movs r6, 0 - ldrsb r6, [r0, r6] - adds r0, r6, 0 - bl SetCameraPanning - ldr r5, =gSaveBlock1Ptr - ldr r0, [r5] - ldrb r1, [r0, 0x5] - ldrb r2, [r0, 0x4] - movs r3, 0x3 - subs r3, r6 - movs r0, 0x3 - str r0, [sp] - movs r0, 0x1 - bl sub_808E82C - ldr r0, [r5] - ldrb r1, [r0, 0x5] - ldrb r2, [r0, 0x4] - negs r3, r6 - mov r4, r8 - subs r4, 0x3 - str r4, [sp] - movs r0, 0x2 - bl sub_808E82C - ldr r0, [r5] - ldrb r1, [r0, 0x5] - ldrb r2, [r0, 0x4] - subs r4, r6 - mov r3, r8 - str r3, [sp] - movs r0, 0x3 - adds r3, r4, 0 - bl sub_808E82C -_080FB358: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80FB2C0 - - thumb_func_start sub_80FB36C -sub_80FB36C: @ 80FB36C - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0x5 - bls _080FB386 - b _080FB4D8 -_080FB386: - lsls r0, 2 - ldr r1, =_080FB398 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080FB398: - .4byte _080FB3B0 - .4byte _080FB3E8 - .4byte _080FB404 - .4byte _080FB450 - .4byte _080FB474 - .4byte _080FB492 -_080FB3B0: - ldrh r0, [r4, 0x2] - adds r0, 0x1 - strh r0, [r4, 0x2] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x5A - beq _080FB3C0 - b _080FB4D8 -_080FB3C0: - movs r0, 0 - bl SetCameraPanningCallback - movs r0, 0 - strh r0, [r4, 0x2] - ldr r0, =sub_80FB0F8 - movs r1, 0xA - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x4] - movs r0, 0x1 - strh r0, [r4] - movs r0, 0x31 - bl PlaySE - b _080FB4D8 - .pool -_080FB3E8: - ldrh r0, [r4, 0x2] - adds r0, 0x1 - strh r0, [r4, 0x2] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x96 - bne _080FB4D8 - bl pal_fill_black - movs r0, 0 - strh r0, [r4, 0x2] - movs r0, 0x2 - strh r0, [r4] - b _080FB4D8 -_080FB404: - ldrh r0, [r4, 0x2] - adds r3, r0, 0x1 - strh r3, [r4, 0x2] - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _080FB4D8 - lsls r1, r3, 16 - movs r0, 0x96 - lsls r0, 17 - cmp r1, r0 - ble _080FB4D8 - strh r2, [r4, 0x2] - ldrb r0, [r4, 0x4] - bl DestroyTask - ldr r0, =sub_80FB1AC - movs r1, 0xA - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x6] - movs r0, 0x3 - strh r0, [r4] - movs r0, 0x32 - bl PlaySE - b _080FB4D8 - .pool -_080FB450: - ldr r2, =gTasks - movs r0, 0x6 - ldrsh r1, [r4, r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r5, [r0, 0x4] - cmp r5, 0 - bne _080FB4D8 - bl InstallCameraPanAheadCallback - strh r5, [r4, 0x2] - movs r0, 0x4 - strh r0, [r4] - b _080FB4D8 - .pool -_080FB474: - ldrh r0, [r4, 0x2] - adds r0, 0x1 - strh r0, [r4, 0x2] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x5A - bne _080FB4D8 - movs r0, 0x33 - bl PlaySE - movs r0, 0 - strh r0, [r4, 0x2] - movs r0, 0x5 - strh r0, [r4] - b _080FB4D8 -_080FB492: - ldrh r0, [r4, 0x2] - adds r0, 0x1 - strh r0, [r4, 0x2] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x78 - bne _080FB4D8 - movs r2, 0x82 - lsls r2, 2 - movs r0, 0xB - movs r1, 0x8 - bl MapGridSetMetatileIdAt - movs r2, 0x84 - lsls r2, 2 - movs r0, 0xB - movs r1, 0x9 - bl MapGridSetMetatileIdAt - movs r2, 0x86 - lsls r2, 2 - movs r0, 0xB - movs r1, 0xA - bl MapGridSetMetatileIdAt - bl DrawWholeMapView - movs r0, 0x34 - bl PlaySE - adds r0, r5, 0 - bl DestroyTask - bl ScriptContext2_Disable -_080FB4D8: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80FB36C - - thumb_func_start sub_80FB4E0 -sub_80FB4E0: @ 80FB4E0 - push {lr} - sub sp, 0x4 - ldr r2, =0x0000020d - movs r0, 0xB - movs r1, 0x8 - bl MapGridSetMetatileIdAt - ldr r2, =0x00000215 - movs r0, 0xB - movs r1, 0x9 - bl MapGridSetMetatileIdAt - ldr r2, =0x0000021d - movs r0, 0xB - movs r1, 0xA - bl MapGridSetMetatileIdAt - bl DrawWholeMapView - bl ScriptContext2_Enable - movs r0, 0 - str r0, [sp] - ldr r1, =gPlttBufferFaded - ldr r2, =0x01000100 - mov r0, sp - bl CpuFastSet - ldr r0, =sub_80FB36C - movs r1, 0xA - bl CreateTask - add sp, 0x4 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80FB4E0 - - thumb_func_start sub_80FB540 -sub_80FB540: @ 80FB540 - push {r4-r6,lr} - sub sp, 0x4 - ldr r0, =sub_80FB36C - bl FuncIsActiveTask - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - bne _080FB58A - ldr r4, =gSaveBlock1Ptr - ldr r0, [r4] - ldrb r1, [r0, 0x5] - ldrb r2, [r0, 0x4] - movs r0, 0x3 - str r0, [sp] - movs r0, 0x1 - movs r3, 0x3 - bl sub_808E82C - ldr r0, [r4] - ldrb r1, [r0, 0x5] - ldrb r2, [r0, 0x4] - movs r5, 0x3 - negs r5, r5 - str r5, [sp] - movs r0, 0x2 - movs r3, 0 - bl sub_808E82C - ldr r0, [r4] - ldrb r1, [r0, 0x5] - ldrb r2, [r0, 0x4] - str r6, [sp] - movs r0, 0x3 - adds r3, r5, 0 - bl sub_808E82C -_080FB58A: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80FB540 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/tv.s b/asm/tv.s deleted file mode 100644 index d61392fa1..000000000 --- a/asm/tv.s +++ /dev/null @@ -1,16938 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start ClearTVShowData -ClearTVShowData: @ 80EBEE0 - push {r4-r7,lr} - movs r3, 0 - ldr r6, =gSaveBlock1Ptr - movs r5, 0 - ldr r7, =0x000027ce -_080EBEEA: - ldr r0, [r6] - lsls r1, r3, 3 - adds r1, r3 - lsls r1, 2 - adds r0, r1 - ldr r2, =0x000027cc - adds r0, r2 - strb r5, [r0] - ldr r0, [r6] - adds r0, r1 - adds r2, 0x1 - adds r0, r2 - strb r5, [r0] - movs r2, 0 - adds r4, r3, 0x1 - adds r3, r1, 0 -_080EBF0A: - ldr r0, [r6] - adds r1, r2, r3 - adds r0, r7 - adds r0, r1 - strb r5, [r0] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x21 - bls _080EBF0A - lsls r0, r4, 24 - lsrs r3, r0, 24 - cmp r3, 0x18 - bls _080EBEEA - bl sub_80EEE5C - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end ClearTVShowData - - thumb_func_start special_0x44 -special_0x44: @ 80EBF3C - push {r4-r7,lr} - movs r4, 0x5 - ldr r1, =gSaveBlock1Ptr - ldr r0, [r1] - movs r2, 0xA2 - lsls r2, 6 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _080EBF70 - adds r3, r1, 0 - subs r2, 0xB4 -_080EBF54: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x17 - bhi _080EBF70 - ldr r0, [r3] - lsls r1, r4, 3 - adds r1, r4 - lsls r1, 2 - adds r0, r1 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080EBF54 -_080EBF70: - bl Random - lsls r0, 16 - lsrs r0, 16 - adds r1, r4, 0 - bl __modsi3 - lsls r0, 24 - lsrs r5, r0, 24 - adds r7, r5, 0 - ldr r6, =gSaveBlock1Ptr -_080EBF86: - ldr r1, [r6] - lsls r0, r5, 3 - adds r0, r5 - lsls r4, r0, 2 - adds r1, r4 - ldr r0, =0x000027cc - adds r1, r0 - ldrb r0, [r1] - bl sub_80EFFE0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - beq _080EBFBC - ldr r0, [r6] - adds r0, r4 - ldr r1, =0x000027cd - adds r0, r1 - ldrb r0, [r0] - b _080EBFCC - .pool -_080EBFBC: - ldr r2, =0x000027cc - adds r0, r4, r2 - ldr r1, [r6] - adds r1, r0 - ldrh r0, [r1, 0x16] - cmp r0, 0 - bne _080EBFD8 - ldrb r0, [r1, 0x1] -_080EBFCC: - cmp r0, 0x1 - bne _080EBFD8 - adds r0, r5, 0 - b _080EBFEC - .pool -_080EBFD8: - cmp r5, 0 - bne _080EBFE0 - movs r5, 0x17 - b _080EBFE6 -_080EBFE0: - subs r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_080EBFE6: - cmp r5, r7 - bne _080EBF86 - movs r0, 0xFF -_080EBFEC: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end special_0x44 - - thumb_func_start sub_80EBFF4 -sub_80EBFF4: @ 80EBFF4 - push {lr} - bl special_0x44 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xFF - bne _080EC006 - movs r0, 0xFF - b _080EC03E -_080EC006: - ldr r0, =gSaveBlock1Ptr - ldr r2, [r0] - ldr r3, =0x00002b90 - adds r0, r2, r3 - ldrh r0, [r0] - cmp r0, 0 - beq _080EC03C - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2, r0 - ldr r2, =0x000027cc - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0x29 - bne _080EC03C - bl sub_80EC18C - lsls r0, 24 - lsrs r0, 24 - b _080EC03E - .pool -_080EC03C: - adds r0, r1, 0 -_080EC03E: - pop {r1} - bx r1 - thumb_func_end sub_80EBFF4 - - thumb_func_start UpdateTVScreensOnMap -@ void UpdateTVScreensOnMap(s32 mapWidth, s32 mapHeight) -UpdateTVScreensOnMap: @ 80EC044 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldr r0, =0x00000891 - bl FlagSet - bl CheckForBigMovieOrEmergencyNewsOnTV - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EC06A - cmp r0, 0x2 - beq _080EC0BE - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldrh r0, [r0, 0x4] - cmp r0, 0xD - bne _080EC080 -_080EC06A: - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x3 - bl SetTVMetatilesOnMap - b _080EC0BE - .pool -_080EC080: - ldr r0, =0x00000892 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _080EC0BE - bl sub_80EBFF4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - bne _080EC0AE - bl sub_80EEF20 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - bne _080EC0AE - bl IsTVShowInSearchOfTrainersAiring - lsls r0, 24 - cmp r0, 0 - beq _080EC0BE -_080EC0AE: - ldr r0, =0x00000891 - bl FlagReset - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x3 - bl SetTVMetatilesOnMap -_080EC0BE: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end UpdateTVScreensOnMap - - thumb_func_start SetTVMetatilesOnMap -@ void SetTVMetatilesOnMap(s32 mapWidth, s32 mapHeight, u16 metatileId) -SetTVMetatilesOnMap: @ 80EC0CC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r9, r0 - mov r10, r1 - lsls r2, 16 - lsrs r2, 16 - movs r5, 0 - cmp r5, r10 - bge _080EC120 - movs r1, 0xC0 - lsls r1, 4 - adds r0, r1, 0 - mov r8, r2 - mov r1, r8 - orrs r1, r0 - mov r8, r1 -_080EC0F2: - movs r4, 0 - adds r7, r5, 0x1 - cmp r4, r9 - bge _080EC11A - mov r0, r8 - lsls r6, r0, 16 -_080EC0FE: - adds r0, r4, 0 - adds r1, r5, 0 - bl MapGridGetMetatileBehaviorAt - cmp r0, 0x86 - bne _080EC114 - adds r0, r4, 0 - adds r1, r5, 0 - lsrs r2, r6, 16 - bl MapGridSetMetatileIdAt -_080EC114: - adds r4, 0x1 - cmp r4, r9 - blt _080EC0FE -_080EC11A: - adds r5, r7, 0 - cmp r5, r10 - blt _080EC0F2 -_080EC120: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end SetTVMetatilesOnMap - - thumb_func_start TurnOffTVScreen -TurnOffTVScreen: @ 80EC130 - push {lr} - ldr r1, =gUnknown_03005DC0 - ldr r0, [r1] - ldr r1, [r1, 0x4] - movs r2, 0x2 - bl SetTVMetatilesOnMap - bl DrawWholeMapView - pop {r0} - bx r0 - .pool - thumb_func_end TurnOffTVScreen - - thumb_func_start TurnOnTVScreen -TurnOnTVScreen: @ 80EC14C - push {lr} - ldr r1, =gUnknown_03005DC0 - ldr r0, [r1] - ldr r1, [r1, 0x4] - movs r2, 0x3 - bl SetTVMetatilesOnMap - bl DrawWholeMapView - pop {r0} - bx r0 - .pool - thumb_func_end TurnOnTVScreen - - thumb_func_start special_0x45 -special_0x45: @ 80EC168 - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - ldr r0, =gSpecialVar_0x8004 - ldrh r2, [r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - adds r1, r0 - ldr r0, =0x000027cc - adds r1, r0 - ldrb r0, [r1] - bx lr - .pool - thumb_func_end special_0x45 - - thumb_func_start sub_80EC18C -sub_80EC18C: @ 80EC18C - push {r4,lr} - movs r2, 0 - ldr r0, =gSaveBlock1Ptr - ldr r3, [r0] -_080EC194: - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - adds r1, r3, r0 - ldr r4, =0x000027cc - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _080EC1C0 - cmp r0, 0x29 - beq _080EC1C0 - adds r4, 0x1 - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080EC1C0 - adds r0, r2, 0 - b _080EC1CC - .pool -_080EC1C0: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x17 - bls _080EC194 - movs r0, 0xFF -_080EC1CC: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80EC18C - - thumb_func_start special_0x4a -special_0x4a: @ 80EC1D4 - push {lr} - ldr r3, =gSaveBlock1Ptr - ldr r2, =gSpecialVar_0x8004 - ldrh r1, [r2] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r3, [r3] - adds r0, r3, r0 - ldrb r0, [r0] - cmp r0, 0x29 - bne _080EC214 - ldr r1, =0x00002b90 - adds r0, r3, r1 - ldrh r0, [r0] - cmp r0, 0 - beq _080EC214 - bl sub_80EC18C - lsls r0, 24 - lsrs r0, 24 - b _080EC216 - .pool -_080EC214: - ldrb r0, [r2] -_080EC216: - pop {r1} - bx r1 - thumb_func_end special_0x4a - - thumb_func_start ResetGabbyAndTy -ResetGabbyAndTy: @ 80EC21C - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - ldr r3, =gSaveBlock1Ptr - ldr r2, [r3] - ldr r1, =0x00002ba4 - adds r0, r2, r1 - movs r4, 0 - mov r10, r4 - movs r1, 0 - strh r1, [r0] - ldr r4, =0x00002ba6 - adds r0, r2, r4 - strh r1, [r0] - adds r4, 0x2 - adds r0, r2, r4 - strh r1, [r0] - ldr r0, =0x00002baa - adds r1, r2, r0 - ldr r0, =0x0000ffff - strh r0, [r1] - adds r4, 0x6 - adds r2, r4 - ldrb r1, [r2] - movs r0, 0x2 - negs r0, r0 - mov r9, r0 - ands r0, r1 - strb r0, [r2] - ldr r1, [r3] - adds r1, r4 - ldrb r2, [r1] - movs r0, 0x3 - negs r0, r0 - mov r8, r0 - ands r0, r2 - strb r0, [r1] - ldr r1, [r3] - adds r1, r4 - ldrb r2, [r1] - movs r6, 0x5 - negs r6, r6 - adds r0, r6, 0 - ands r0, r2 - strb r0, [r1] - ldr r1, [r3] - adds r1, r4 - ldrb r2, [r1] - movs r5, 0x9 - negs r5, r5 - adds r0, r5, 0 - ands r0, r2 - strb r0, [r1] - ldr r1, [r3] - adds r1, r4 - ldrb r2, [r1] - movs r0, 0x11 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - ldr r1, [r3] - adds r1, r4 - ldrb r2, [r1] - movs r0, 0x1F - ands r0, r2 - strb r0, [r1] - ldr r0, [r3] - ldr r2, =0x00002baf - adds r0, r2 - ldrb r1, [r0] - mov r4, r9 - ands r4, r1 - strb r4, [r0] - ldr r0, [r3] - adds r0, r2 - ldrb r1, [r0] - mov r4, r8 - ands r4, r1 - strb r4, [r0] - ldr r0, [r3] - adds r0, r2 - ldrb r1, [r0] - ands r6, r1 - strb r6, [r0] - ldr r0, [r3] - adds r0, r2 - ldrb r1, [r0] - ands r5, r1 - strb r5, [r0] - ldr r1, [r3] - adds r1, r2 - ldrb r2, [r1] - movs r0, 0xF - ands r0, r2 - strb r0, [r1] - ldr r0, [r3] - ldr r1, =0x00002bac - adds r0, r1 - mov r4, r10 - strb r4, [r0] - ldr r0, [r3] - adds r1, 0x1 - adds r0, r1 - strb r4, [r0] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end ResetGabbyAndTy - - thumb_func_start GabbyAndTyBeforeInterview -GabbyAndTyBeforeInterview: @ 80EC31C - push {r4,lr} - ldr r3, =gSaveBlock1Ptr - ldr r2, [r3] - ldr r0, =gBattleResults - mov r12, r0 - ldrh r1, [r0, 0x6] - ldr r4, =0x00002ba4 - adds r0, r2, r4 - strh r1, [r0] - mov r0, r12 - ldrh r1, [r0, 0x26] - adds r4, 0x2 - adds r0, r2, r4 - strh r1, [r0] - mov r0, r12 - ldrh r1, [r0, 0x22] - adds r4, 0x2 - adds r0, r2, r4 - strh r1, [r0] - ldr r0, =0x00002bad - adds r2, r0 - ldrb r1, [r2] - adds r0, r1, 0 - adds r4, r3, 0 - cmp r0, 0xFF - beq _080EC354 - adds r0, r1, 0x1 - strb r0, [r2] -_080EC354: - ldr r2, [r4] - mov r0, r12 - ldrb r1, [r0, 0x5] - lsls r1, 31 - ldr r0, =0x00002bae - adds r2, r0 - lsrs r1, 31 - ldrb r3, [r2] - movs r0, 0x2 - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2] - mov r1, r12 - ldrb r0, [r1] - cmp r0, 0 - beq _080EC398 - ldr r0, [r4] - ldr r1, =0x00002bae - adds r0, r1 - ldrb r1, [r0] - movs r2, 0x2 - orrs r1, r2 - b _080EC3A6 - .pool -_080EC398: - ldr r0, [r4] - ldr r1, =0x00002bae - adds r0, r1 - ldrb r2, [r0] - movs r1, 0x3 - negs r1, r1 - ands r1, r2 -_080EC3A6: - strb r1, [r0] - mov r1, r12 - ldrb r0, [r1, 0x3] - cmp r0, 0 - beq _080EC3C4 - ldr r0, [r4] - ldr r1, =0x00002bae - adds r0, r1 - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - b _080EC3D2 - .pool -_080EC3C4: - ldr r0, [r4] - ldr r1, =0x00002bae - adds r0, r1 - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 -_080EC3D2: - strb r1, [r0] - mov r0, r12 - ldrb r1, [r0, 0x5] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080EC410 - movs r1, 0 - mov r0, r12 - adds r0, 0x36 - ldrb r0, [r0] - cmp r0, 0 - bne _080EC410 -_080EC3EC: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xA - bhi _080EC41E - mov r0, r12 - adds r0, 0x36 - adds r0, r1, r0 - ldrb r0, [r0] - cmp r0, 0 - beq _080EC3EC - ldr r0, [r4] - ldr r4, =0x00002bae - adds r0, r4 - b _080EC416 - .pool -_080EC410: - ldr r0, [r4] - ldr r1, =0x00002bae - adds r0, r1 -_080EC416: - ldrb r1, [r0] - movs r2, 0x8 - orrs r1, r2 - strb r1, [r0] -_080EC41E: - bl TakeTVShowInSearchOfTrainersOffTheAir - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r4, =0x00002ba8 - adds r0, r4 - ldrh r0, [r0] - cmp r0, 0 - bne _080EC436 - movs r0, 0x1 - bl FlagSet -_080EC436: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end GabbyAndTyBeforeInterview - - thumb_func_start GabbyAndTyAfterInterview -GabbyAndTyAfterInterview: @ 80EC448 - push {r4-r6,lr} - ldr r5, =gSaveBlock1Ptr - ldr r2, [r5] - ldr r6, =0x00002bae - adds r0, r2, r6 - ldrb r1, [r0] - lsls r1, 31 - ldr r4, =0x00002baf - adds r2, r4 - lsrs r1, 31 - ldrb r3, [r2] - movs r0, 0x2 - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2] - ldr r2, [r5] - adds r0, r2, r6 - ldrb r0, [r0] - adds r2, r4 - movs r1, 0x2 - ands r1, r0 - ldrb r3, [r2] - movs r0, 0x3 - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2] - ldr r2, [r5] - adds r0, r2, r6 - ldrb r0, [r0] - adds r2, r4 - movs r1, 0x4 - ands r1, r0 - ldrb r3, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2] - ldr r2, [r5] - adds r0, r2, r6 - ldrb r0, [r0] - adds r2, r4 - movs r1, 0x8 - ands r1, r0 - ldrb r3, [r2] - movs r0, 0x9 - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2] - ldr r1, [r5] - adds r1, r6 - ldrb r0, [r1] - movs r2, 0x10 - orrs r0, r2 - strb r0, [r1] - ldr r0, [r5] - ldr r1, =gMapHeader - ldrb r1, [r1, 0x14] - ldr r2, =0x00002bac - adds r0, r2 - strb r1, [r0] - movs r0, 0x6 - bl IncrementGameStat - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end GabbyAndTyAfterInterview - - thumb_func_start TakeTVShowInSearchOfTrainersOffTheAir -TakeTVShowInSearchOfTrainersOffTheAir: @ 80EC4E8 - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - ldr r0, =0x00002bae - adds r1, r0 - ldrb r2, [r1] - movs r0, 0x11 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - bx lr - .pool - thumb_func_end TakeTVShowInSearchOfTrainersOffTheAir - - thumb_func_start GabbyAndTyGetBattleNum -GabbyAndTyGetBattleNum: @ 80EC504 - push {lr} - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r2, =0x00002bad - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0x5 - bls _080EC522 - ldrb r0, [r1] - movs r1, 0x3 - bl __umodsi3 - adds r0, 0x6 - lsls r0, 24 - lsrs r0, 24 -_080EC522: - pop {r1} - bx r1 - .pool - thumb_func_end GabbyAndTyGetBattleNum - - thumb_func_start IsTVShowInSearchOfTrainersAiring -IsTVShowInSearchOfTrainersAiring: @ 80EC530 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x00002bae - adds r0, r1 - ldrb r0, [r0] - lsls r0, 27 - lsrs r0, 31 - bx lr - .pool - thumb_func_end IsTVShowInSearchOfTrainersAiring - - thumb_func_start GabbyAndTyGetLastQuote -GabbyAndTyGetLastQuote: @ 80EC548 - push {r4,r5,lr} - ldr r5, =gSaveBlock1Ptr - ldr r0, [r5] - ldr r2, =0x00002baa - adds r1, r0, r2 - ldrh r0, [r1] - ldr r4, =0x0000ffff - cmp r0, r4 - beq _080EC584 - ldr r0, =gStringVar1 - ldrh r1, [r1] - bl CopyEasyChatWord - ldr r1, [r5] - ldr r0, =0x00002baa - adds r1, r0 - ldrh r2, [r1] - adds r0, r4, 0 - orrs r0, r2 - strh r0, [r1] - movs r0, 0x1 - b _080EC586 - .pool -_080EC584: - movs r0, 0 -_080EC586: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end GabbyAndTyGetLastQuote - - thumb_func_start GabbyAndTyGetLastBattleTrivia -GabbyAndTyGetLastBattleTrivia: @ 80EC58C - push {lr} - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x00002baf - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080EC5AC - movs r0, 0x1 - b _080EC5D2 - .pool -_080EC5AC: - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080EC5B8 - movs r0, 0x2 - b _080EC5D2 -_080EC5B8: - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080EC5C4 - movs r0, 0x3 - b _080EC5D2 -_080EC5C4: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _080EC5D0 - movs r0, 0 - b _080EC5D2 -_080EC5D0: - movs r0, 0x4 -_080EC5D2: - pop {r1} - bx r1 - thumb_func_end GabbyAndTyGetLastBattleTrivia - - thumb_func_start GabbyAndTySetScriptVarsToFieldObjectLocalIds -GabbyAndTySetScriptVarsToFieldObjectLocalIds: @ 80EC5D8 - push {lr} - bl GabbyAndTyGetBattleNum - lsls r0, 24 - lsrs r0, 24 - subs r0, 0x1 - cmp r0, 0x7 - bhi _080EC6B0 - lsls r0, 2 - ldr r1, =_080EC5F8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080EC5F8: - .4byte _080EC618 - .4byte _080EC62C - .4byte _080EC640 - .4byte _080EC654 - .4byte _080EC668 - .4byte _080EC67C - .4byte _080EC690 - .4byte _080EC6A4 -_080EC618: - ldr r1, =gSpecialVar_0x8004 - movs r0, 0xE - strh r0, [r1] - ldr r1, =gSpecialVar_0x8005 - movs r0, 0xD - b _080EC6AE - .pool -_080EC62C: - ldr r1, =gSpecialVar_0x8004 - movs r0, 0x5 - strh r0, [r1] - ldr r1, =gSpecialVar_0x8005 - movs r0, 0x6 - b _080EC6AE - .pool -_080EC640: - ldr r1, =gSpecialVar_0x8004 - movs r0, 0x12 - strh r0, [r1] - ldr r1, =gSpecialVar_0x8005 - movs r0, 0x11 - b _080EC6AE - .pool -_080EC654: - ldr r1, =gSpecialVar_0x8004 - movs r0, 0x15 - strh r0, [r1] - ldr r1, =gSpecialVar_0x8005 - movs r0, 0x16 - b _080EC6AE - .pool -_080EC668: - ldr r1, =gSpecialVar_0x8004 - movs r0, 0x8 - strh r0, [r1] - ldr r1, =gSpecialVar_0x8005 - movs r0, 0x9 - b _080EC6AE - .pool -_080EC67C: - ldr r1, =gSpecialVar_0x8004 - movs r0, 0x13 - strh r0, [r1] - ldr r1, =gSpecialVar_0x8005 - movs r0, 0x14 - b _080EC6AE - .pool -_080EC690: - ldr r1, =gSpecialVar_0x8004 - movs r0, 0x17 - strh r0, [r1] - ldr r1, =gSpecialVar_0x8005 - movs r0, 0x18 - b _080EC6AE - .pool -_080EC6A4: - ldr r1, =gSpecialVar_0x8004 - movs r0, 0xA - strh r0, [r1] - ldr r1, =gSpecialVar_0x8005 - movs r0, 0xB -_080EC6AE: - strh r0, [r1] -_080EC6B0: - pop {r0} - bx r0 - .pool - thumb_func_end GabbyAndTySetScriptVarsToFieldObjectLocalIds - - thumb_func_start InterviewAfter -InterviewAfter: @ 80EC6BC - push {lr} - ldr r0, =gSpecialVar_0x8005 - ldrh r0, [r0] - subs r0, 0x1 - cmp r0, 0x7 - bhi _080EC724 - lsls r0, 2 - ldr r1, =_080EC6DC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080EC6DC: - .4byte _080EC6FC - .4byte _080EC702 - .4byte _080EC708 - .4byte _080EC70E - .4byte _080EC724 - .4byte _080EC714 - .4byte _080EC71A - .4byte _080EC720 -_080EC6FC: - bl sub_80ED548 - b _080EC724 -_080EC702: - bl sub_80ED5B8 - b _080EC724 -_080EC708: - bl sub_80ED610 - b _080EC724 -_080EC70E: - bl TaskDummy5 - b _080EC724 -_080EC714: - bl sub_80ECF5C - b _080EC724 -_080EC71A: - bl sub_80ED164 - b _080EC724 -_080EC720: - bl sub_80ECA38 -_080EC724: - pop {r0} - bx r0 - thumb_func_end InterviewAfter - - thumb_func_start sub_80EC728 -sub_80EC728: @ 80EC728 - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r4, 0 - bl sub_80EED88 - bl sub_80ED718 - ldr r5, =gBattleResults - ldrh r0, [r5, 0x28] - cmp r0, 0 - bne _080EC74C - bl sub_80EC8FC - b _080EC888 - .pool -_080EC74C: - bl sub_80EC8A4 - ldr r0, =0x0000ffff - bl sub_80EFB38 - lsls r0, 24 - cmp r0, 0 - beq _080EC75E - b _080EC888 -_080EC75E: - ldrh r1, [r5, 0x28] - movs r0, 0xB - muls r0, r1 - ldr r1, =gSpeciesNames - adds r0, r1 - adds r1, r5, 0 - adds r1, 0x2A - bl StringCompare - cmp r0, 0 - bne _080EC776 - b _080EC888 -_080EC776: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x000027cc - adds r0, r1 - bl sub_80EFB08 - ldr r1, =gUnknown_030060BC - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EC888 - movs r0, 0x15 - movs r1, 0 - bl sub_80EF46C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EC888 - movs r2, 0 - adds r1, r5, 0 - adds r1, 0x36 -_080EC7A8: - adds r0, r2, r1 - ldrb r0, [r0] - adds r0, r4, r0 - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xA - bls _080EC7A8 - cmp r4, 0 - bne _080EC7CA - ldrb r1, [r5, 0x5] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080EC888 -_080EC7CA: - movs r4, 0 - ldr r2, =gSaveBlock1Ptr - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r6, r1, r0 - movs r0, 0x15 - strb r0, [r6] - strb r4, [r6, 0x1] - ldrb r1, [r5, 0x5] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080EC81C - movs r4, 0x1 - movs r0, 0x1 - adds r3, r6, 0 - adds r3, 0x13 - ldr r1, =gSaveBlock2Ptr - mov r8, r1 - adds r7, r6, 0x4 - b _080EC84E - .pool -_080EC81C: - movs r2, 0 - ldr r0, =gLastUsedItem - mov r12, r0 - adds r3, r6, 0 - adds r3, 0x13 - ldr r1, =gSaveBlock2Ptr - mov r8, r1 - adds r7, r6, 0x4 - adds r1, r5, 0 - adds r1, 0x36 -_080EC830: - adds r0, r2, r1 - ldrb r0, [r0] - adds r0, r4, r0 - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xA - bls _080EC830 - cmp r4, 0xFF - bls _080EC84A - movs r4, 0xFF -_080EC84A: - mov r1, r12 - ldrh r0, [r1] -_080EC84E: - strb r4, [r6, 0x12] - strb r0, [r6, 0xF] - mov r0, r8 - ldr r1, [r0] - adds r0, r3, 0 - bl StringCopy - ldr r4, =gUnknown_03005D3A - adds r0, r7, 0 - adds r1, r4, 0 - bl StringCopy - adds r0, r7, 0 - bl sub_81DB604 - adds r5, r0, 0 - adds r0, r7, 0 - bl StripExtCtrlCodes - subs r4, 0x2A - ldrh r0, [r4, 0x28] - strh r0, [r6, 0x10] - adds r0, r6, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r6, 0x2] - strb r5, [r6, 0x3] -_080EC888: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EC728 - - thumb_func_start sub_80EC8A4 -sub_80EC8A4: @ 80EC8A4 - push {r4,lr} - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - ldr r0, =0x00002b2c - adds r4, r1, r0 - ldrb r0, [r4] - cmp r0, 0x19 - beq _080EC8CA - ldr r2, =0x000027cc - adds r0, r1, r2 - movs r1, 0x18 - bl sub_80EF910 - movs r0, 0x5 - bl GetGameStat - strh r0, [r4, 0x6] - movs r0, 0x19 - strb r0, [r4] -_080EC8CA: - ldrh r0, [r4, 0x2] - adds r0, 0x1 - strh r0, [r4, 0x2] - ldr r1, =gBattleResults - ldrh r0, [r1, 0x28] - strh r0, [r4, 0x4] - ldrh r0, [r1, 0x6] - strh r0, [r4, 0x8] - ldr r0, =gMapHeader - ldrb r0, [r0, 0x14] - strb r0, [r4, 0xA] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EC8A4 - - thumb_func_start sub_80EC8FC -sub_80EC8FC: @ 80EC8FC - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, =0x0000ffff - bl sub_80EFB38 - lsls r0, 24 - cmp r0, 0 - bne _080EC9B4 - movs r1, 0 - movs r5, 0 - ldr r2, =gUnknown_03005D46 -_080EC914: - adds r0, r1, r2 - ldrb r0, [r0] - adds r0, r5, r0 - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xA - bls _080EC914 - cmp r5, 0xFF - bls _080EC92E - movs r5, 0xFF -_080EC92E: - cmp r5, 0x2 - bls _080EC9B4 - ldr r0, =gBattleOutcome - mov r8, r0 - ldrb r0, [r0] - cmp r0, 0x6 - beq _080EC940 - cmp r0, 0x1 - bne _080EC9B4 -_080EC940: - ldr r7, =gSaveBlock1Ptr - ldr r0, [r7] - ldr r6, =0x000027cc - adds r0, r6 - bl sub_80EFB08 - ldr r4, =gUnknown_030060BC - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EC9B4 - movs r0, 0x17 - movs r1, 0 - bl sub_80EF46C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EC9B4 - movs r1, 0 - ldrsb r1, [r4, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - ldr r4, [r7] - adds r4, r0 - movs r1, 0 - movs r0, 0x17 - strb r0, [r4] - strb r1, [r4, 0x1] - ldr r1, =gBattleResults - ldrh r0, [r1, 0x6] - strh r0, [r4, 0xC] - ldrh r0, [r1, 0x20] - strh r0, [r4, 0xE] - strb r5, [r4, 0x10] - mov r1, r8 - ldrb r0, [r1] - strb r0, [r4, 0x11] - ldr r0, =gMapHeader - ldrb r0, [r0, 0x14] - strb r0, [r4, 0x12] - adds r0, r4, 0 - adds r0, 0x13 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - adds r0, r4, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x2] -_080EC9B4: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EC8FC - - thumb_func_start sub_80EC9E8 -sub_80EC9E8: @ 80EC9E8 - push {r4,lr} - adds r4, r0, 0 - bl sub_80F0020 - strb r0, [r4, 0x1E] - lsrs r2, r0, 8 - strb r2, [r4, 0x1F] - adds r1, r4, 0 - adds r1, 0x20 - strb r0, [r1] - adds r1, 0x1 - strb r2, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r0, r4, 0 - adds r0, 0x23 - strb r2, [r0] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80EC9E8 - - thumb_func_start sub_80ECA10 -sub_80ECA10: @ 80ECA10 - push {r4,lr} - adds r4, r0, 0 - bl sub_80F0020 - adds r1, r4, 0 - adds r1, 0x20 - strb r0, [r1] - lsrs r1, r0, 8 - adds r2, r4, 0 - adds r2, 0x21 - strb r1, [r2] - adds r2, 0x1 - strb r0, [r2] - adds r0, r4, 0 - adds r0, 0x23 - strb r1, [r0] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80ECA10 - - thumb_func_start sub_80ECA38 -sub_80ECA38: @ 80ECA38 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, =gSaveBlock1Ptr - mov r8, r0 - ldr r7, [r0] - ldr r1, =0x00002b2c - adds r6, r7, r1 - ldrb r1, [r6] - cmp r1, 0x8 - bne _080ECACE - ldr r0, =gUnknown_030060BC - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - lsls r4, r0, 3 - adds r4, r0 - lsls r4, 2 - ldr r5, =0x000027cc - adds r4, r5 - adds r4, r7, r4 - strb r1, [r4] - movs r0, 0x1 - strb r0, [r4, 0x1] - adds r0, r4, 0 - adds r0, 0x14 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - ldr r0, =gUnknown_02039F2C - ldrh r0, [r0] - strb r0, [r4, 0x1C] - ldr r0, =gUnknown_02039F24 - ldrb r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r4, 0x12] - ldrh r0, [r6, 0x2] - strh r0, [r4, 0x2] - ldrb r0, [r6, 0xC] - strb r0, [r4, 0xC] - ldrb r0, [r6, 0xD] - strb r0, [r4, 0xD] - ldrb r0, [r6, 0xE] - strb r0, [r4, 0xE] - ldrh r0, [r6, 0x10] - strh r0, [r4, 0x10] - ldrb r0, [r6, 0xF] - strb r0, [r4, 0xF] - adds r0, r4, 0x4 - ldr r2, =0x00002b30 - adds r1, r7, r2 - bl StringCopy - adds r0, r4, 0 - bl sub_80ECA10 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x1D] - ldrb r0, [r6, 0x1E] - strb r0, [r4, 0x1E] - mov r1, r8 - ldr r0, [r1] - adds r0, r5 - movs r1, 0x18 - bl sub_80EF910 -_080ECACE: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ECA38 - - thumb_func_start sub_80ECB00 -sub_80ECB00: @ 80ECB00 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - lsls r0, 24 - lsrs r7, r0, 24 - lsls r1, 16 - lsrs r1, 16 - mov r10, r1 - lsls r2, 16 - lsrs r2, 16 - mov r9, r2 - lsls r3, 16 - lsrs r3, 16 - mov r8, r3 - ldr r6, =gSaveBlock1Ptr - ldr r0, [r6] - ldr r5, =0x000027cc - adds r0, r5 - bl sub_80EFADC - ldr r4, =gUnknown_030060BC - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080ECBEC - movs r0, 0xA - bl sub_80EF550 - ldr r0, =gScriptResult - ldrh r0, [r0] - cmp r0, 0x1 - beq _080ECBEC - movs r1, 0 - ldrsb r1, [r4, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r1, [r6] - adds r4, r1, r0 - movs r0, 0xA - strb r0, [r4] - movs r5, 0x1 - strb r5, [r4, 0x1] - adds r0, r4, 0x4 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _080ECBA0 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _080ECBA2 - strb r5, [r4, 0x18] - b _080ECBA4 - .pool -_080ECBA0: - movs r0, 0x2 -_080ECBA2: - strb r0, [r4, 0x18] -_080ECBA4: - mov r0, r10 - strh r0, [r4, 0x14] - mov r0, r9 - strh r0, [r4, 0x16] - mov r0, r8 - strh r0, [r4, 0x2] - lsls r0, r7, 3 - subs r0, r7 - lsls r5, r0, 2 - ldr r6, =gLinkPlayers + 8 - adds r1, r5, r6 - mov r0, sp - bl StringCopy - mov r0, sp - bl StripExtCtrlCodes - adds r0, r4, 0 - adds r0, 0xC - mov r1, sp - bl StringCopy - adds r0, r4, 0 - bl sub_80ECA10 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x19] - cmp r0, 0x1 - beq _080ECBE8 - adds r0, r6, r5 - ldrh r0, [r0, 0x12] - cmp r0, 0x1 - bne _080ECBEA -_080ECBE8: - movs r0, 0x1 -_080ECBEA: - strb r0, [r4, 0x1A] -_080ECBEC: - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ECB00 - - thumb_func_start sub_80ECC04 -sub_80ECC04: @ 80ECC04 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - mov r10, r0 - ldr r0, [sp, 0x44] - lsls r1, 24 - lsrs r5, r1, 24 - lsls r2, 24 - lsrs r6, r2, 24 - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0x20] - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - ldr r0, =gSaveBlock1Ptr - mov r8, r0 - ldr r0, [r0] - ldr r7, =0x000027cc - adds r0, r7 - bl sub_80EFADC - ldr r4, =gUnknown_030060BC - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080ECC54 - movs r0, 0x9 - bl sub_80EF550 - ldr r0, =gScriptResult - ldrh r0, [r0] - cmp r0, 0x1 - bne _080ECC68 -_080ECC54: - movs r0, 0 - b _080ECCEE - .pool -_080ECC68: - movs r1, 0 - ldrsb r1, [r4, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r7 - mov r2, r8 - ldr r1, [r2] - adds r4, r1, r0 - movs r0, 0x9 - strb r0, [r4] - movs r7, 0x1 - strb r7, [r4, 0x1] - adds r0, r4, 0 - adds r0, 0xC - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - mov r0, sp - mov r1, r10 - bl StringCopy - mov r0, sp - bl StripExtCtrlCodes - adds r0, r4, 0x4 - mov r1, sp - bl StringCopy - movs r0, 0x7 - ands r5, r0 - ldrb r1, [r4, 0x3] - subs r0, 0xF - ands r0, r1 - orrs r0, r5 - movs r1, 0x3 - ands r6, r1 - lsls r2, r6, 3 - subs r1, 0x1C - ands r0, r1 - orrs r0, r2 - strb r0, [r4, 0x3] - add r0, sp, 0x20 - ldrb r0, [r0] - strb r0, [r4, 0x2] - adds r0, r4, 0 - bl sub_80ECA10 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x14] - cmp r0, 0x1 - beq _080ECCDA - mov r1, r9 - cmp r1, 0x1 - bne _080ECCE8 -_080ECCDA: - strb r7, [r4, 0x15] - b _080ECCEC - .pool -_080ECCE8: - mov r2, r9 - strb r2, [r4, 0x15] -_080ECCEC: - movs r0, 0x1 -_080ECCEE: - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80ECC04 - - thumb_func_start sub_80ECD00 -sub_80ECD00: @ 80ECD00 - push {r4-r6,lr} - sub sp, 0x20 - ldr r6, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8006 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r6] - adds r4, r1, r0 - ldr r0, =gSpecialVar_0x8005 - ldrh r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 1 - strb r0, [r4, 0x16] - adds r0, r4, 0x2 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - movs r0, 0xB - strb r0, [r4] - movs r5, 0x1 - strb r5, [r4, 0x1] - bl sub_80F0020 - strb r0, [r4, 0xA] - lsrs r0, 8 - strb r0, [r4, 0xB] - ldr r1, =gStringVar1 - mov r0, sp - bl StringCopy - mov r0, sp - bl StripExtCtrlCodes - adds r0, r4, 0 - adds r0, 0xC - mov r1, sp - bl StringCopy - adds r0, r4, 0 - bl sub_80ECA10 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x17] - cmp r0, 0x1 - beq _080ECD74 - ldr r0, [r6] - ldr r1, =0x000031a0 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080ECD98 -_080ECD74: - strb r5, [r4, 0x18] - b _080ECD9A - .pool -_080ECD98: - strb r0, [r4, 0x18] -_080ECD9A: - add sp, 0x20 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80ECD00 - - thumb_func_start sub_80ECDA4 -sub_80ECDA4: @ 80ECDA4 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r5, =gSaveBlock1Ptr - ldr r0, [r5] - ldr r4, =0x000027cc - adds r0, r4 - movs r1, 0x18 - bl sub_80EF910 - ldr r0, [r5] - adds r0, r4 - bl sub_80EFADC - ldr r1, =gUnknown_030060BC - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080ECDDC - ldr r0, [r5] - ldr r1, =0x00002b2c - adds r0, r1 - strb r6, [r0, 0xD] - movs r1, 0x8 - strb r1, [r0] -_080ECDDC: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ECDA4 - - thumb_func_start sub_80ECDF4 -sub_80ECDF4: @ 80ECDF4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x00002b2c - adds r4, r0, r1 - ldr r1, =0x000027cc - adds r0, r1 - bl sub_80EFADC - ldr r1, =gUnknown_030060BC - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080ECE1C - strb r5, [r4, 0xE] -_080ECE1C: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ECDF4 - - thumb_func_start sub_80ECE34 -sub_80ECE34: @ 80ECE34 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x00002b2c - adds r4, r0, r1 - ldr r1, =0x000027cc - adds r0, r1 - bl sub_80EFADC - ldr r1, =gUnknown_030060BC - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080ECE5C - strb r5, [r4, 0xF] -_080ECE5C: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ECE34 - - thumb_func_start sub_80ECE74 -sub_80ECE74: @ 80ECE74 - push {r4,r5,lr} - lsls r0, 16 - lsrs r5, r0, 16 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x00002b2c - adds r4, r0, r1 - ldr r1, =0x000027cc - adds r0, r1 - bl sub_80EFADC - ldr r1, =gUnknown_030060BC - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080ECE9C - strh r5, [r4, 0x10] -_080ECE9C: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ECE74 - - thumb_func_start sub_80ECEB4 -sub_80ECEB4: @ 80ECEB4 - push {r4-r7,lr} - lsls r0, 24 - lsrs r7, r0, 24 - lsls r1, 24 - lsrs r6, r1, 24 - ldr r0, =gSaveBlock1Ptr - ldr r4, [r0] - ldr r0, =0x00002b2c - adds r5, r4, r0 - ldr r1, =0x000027cc - adds r0, r4, r1 - bl sub_80EFADC - ldr r1, =gUnknown_030060BC - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080ECF4C - ldr r2, =gUnknown_02039E00 - lsls r1, r6, 6 - adds r0, r1, r2 - ldrh r0, [r0] - strh r0, [r5, 0x2] - ldr r0, =0x00002b30 - adds r4, r0 - adds r2, 0xD - adds r1, r2 - adds r0, r4, 0 - bl StringCopy - adds r0, r4, 0 - bl StripExtCtrlCodes - strb r7, [r5, 0xC] - adds r1, r6, 0x1 - ldr r0, =gUnknown_02039F30 - ldrb r0, [r0] - cmp r1, r0 - ble _080ECF30 - ldr r0, =gLinkPlayers - ldrh r0, [r0, 0x1A] - b _080ECF4A - .pool -_080ECF30: - ldr r0, =gGameLanguage - ldrb r0, [r0] - cmp r0, 0x1 - beq _080ECF48 - ldr r1, =gLinkPlayers - lsls r0, r6, 3 - subs r0, r6 - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0, 0x1A] - cmp r0, 0x1 - bne _080ECF4A -_080ECF48: - movs r0, 0x1 -_080ECF4A: - strb r0, [r5, 0x1E] -_080ECF4C: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ECEB4 - - thumb_func_start sub_80ECF5C -sub_80ECF5C: @ 80ECF5C - push {r4-r7,lr} - ldr r0, =gSaveBlock1Ptr - ldr r6, [r0] - ldr r0, =0x00002b2c - adds r5, r6, r0 - ldrb r2, [r5] - cmp r2, 0x6 - bne _080ED02C - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - adds r4, r6, r0 - strb r2, [r4] - movs r7, 0x1 - strb r7, [r4, 0x1] - ldrh r0, [r5, 0x2] - strh r0, [r4, 0x2] - adds r0, r4, 0 - adds r0, 0x16 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - adds r0, r4, 0 - adds r0, 0x8 - ldr r2, =0x00002b34 - adds r1, r6, r2 - bl StringCopy - ldrb r0, [r5, 0x13] - lsls r0, 29 - lsrs r0, 29 - ldrb r2, [r4, 0x13] - movs r3, 0x8 - negs r3, r3 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - strb r1, [r4, 0x13] - ldrb r2, [r5, 0x13] - movs r0, 0x18 - ands r0, r2 - movs r2, 0x19 - negs r2, r2 - ands r2, r1 - orrs r2, r0 - strb r2, [r4, 0x13] - ldrh r0, [r5, 0x14] - strh r0, [r4, 0x14] - ldrb r0, [r5, 0x13] - movs r1, 0x60 - ands r1, r0 - movs r0, 0x61 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r4, 0x13] - ldrb r1, [r5, 0x13] - lsls r1, 29 - lsrs r1, 29 - ands r0, r3 - orrs r0, r1 - strb r0, [r4, 0x13] - adds r0, r4, 0 - bl sub_80ECA10 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x1E] - cmp r0, 0x1 - beq _080ECFFA - ldrb r0, [r5, 0x1F] - cmp r0, 0x1 - bne _080ED01C -_080ECFFA: - strb r7, [r4, 0x1F] - b _080ED01E - .pool -_080ED01C: - strb r0, [r4, 0x1F] -_080ED01E: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x000027cc - adds r0, r1 - movs r1, 0x18 - bl sub_80EF910 -_080ED02C: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ECF5C - - thumb_func_start sub_80ED03C -sub_80ED03C: @ 80ED03C - push {r4-r6,lr} - lsls r0, 16 - lsrs r6, r0, 16 - ldr r4, =gSaveBlock1Ptr - ldr r0, [r4] - ldr r1, =0x00002b2c - adds r5, r0, r1 - bl sub_80EF7B4 - ldr r0, [r4] - ldr r1, =0x000027cc - adds r0, r1 - bl sub_80EFADC - ldr r1, =gUnknown_030060BC - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080ED07A - ldr r0, [r4] - ldr r1, =0x000027cc - adds r0, r1 - movs r1, 0x18 - bl sub_80EF910 - strh r6, [r5, 0x14] - movs r0, 0x6 - strb r0, [r5] -_080ED07A: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ED03C - - thumb_func_start sub_80ED090 -sub_80ED090: @ 80ED090 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, =gSaveBlock1Ptr - ldr r4, [r0] - ldr r0, =0x00002b2c - adds r7, r4, r0 - ldr r1, =0x000027cc - adds r0, r4, r1 - bl sub_80EFADC - ldr r1, =gUnknown_030060BC - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080ED134 - movs r3, 0x3 - adds r0, r5, 0 - ands r0, r3 - lsls r0, 5 - ldrb r1, [r7, 0x13] - movs r2, 0x61 - negs r2, r2 - ands r2, r1 - orrs r2, r0 - strb r2, [r7, 0x13] - ldr r0, =gUnknown_02039F2C - ldrb r0, [r0] - movs r1, 0x7 - ands r1, r0 - movs r0, 0x8 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r7, 0x13] - ldr r1, =gUnknown_02039F2E - ldrb r1, [r1] - ands r3, r1 - lsls r3, 3 - movs r1, 0x19 - negs r1, r1 - ands r0, r1 - orrs r0, r3 - strb r0, [r7, 0x13] - ldr r0, =gUnknown_02039F24 - mov r8, r0 - ldrb r0, [r0] - movs r6, 0x64 - muls r0, r6 - ldr r5, =gPlayerParty - adds r0, r5 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x2] - mov r1, r8 - ldrb r0, [r1] - muls r0, r6 - adds r0, r5 - ldr r1, =0x00002b34 - adds r4, r1 - movs r1, 0x2 - adds r2, r4, 0 - bl GetMonData - adds r0, r4, 0 - bl StripExtCtrlCodes - mov r1, r8 - ldrb r0, [r1] - muls r0, r6 - adds r0, r5 - movs r1, 0x3 - bl GetMonData - strb r0, [r7, 0x1F] -_080ED134: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ED090 - - thumb_func_start sub_80ED164 -sub_80ED164: @ 80ED164 - push {r4-r6,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r6, r1, r0 - movs r0, 0x7 - strb r0, [r6] - movs r0, 0x1 - strb r0, [r6, 0x1] - adds r0, r6, 0x2 - ldr r4, =gSaveBlock2Ptr - ldr r1, [r4] - bl StringCopy - adds r0, r6, 0 - adds r0, 0xC - ldr r1, [r4] - ldr r2, =0x00000bd8 - adds r1, r2 - bl StringCopy - ldr r1, [r4] - ldr r2, =0x00000bd4 - adds r0, r1, r2 - ldrh r0, [r0] - strh r0, [r6, 0xA] - adds r2, 0x2 - adds r0, r1, r2 - ldrh r0, [r0] - strh r0, [r6, 0x14] - ldr r5, =0x00000d07 - adds r1, r5 - ldrb r0, [r1] - movs r1, 0 - bl sub_8164FCC - strh r0, [r6, 0x16] - ldr r0, [r4] - ldr r1, =0x00000d06 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r6, 0x1C] - ldr r0, [r4] - adds r0, r5 - ldrb r0, [r0] - cmp r0, 0 - bne _080ED1F4 - movs r0, 0x32 - b _080ED1F6 - .pool -_080ED1F4: - movs r0, 0x64 -_080ED1F6: - strb r0, [r6, 0x1A] - ldr r0, =gSpecialVar_0x8004 - ldrh r0, [r0] - strb r0, [r6, 0x1B] - adds r0, r6, 0 - bl sub_80ECA10 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r6, 0x1D] - cmp r0, 0x1 - beq _080ED21C - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldr r2, =0x00000beb - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080ED21E -_080ED21C: - movs r0, 0x1 -_080ED21E: - strb r0, [r6, 0x1E] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ED164 - - thumb_func_start SaveRecordedItemPurchasesForTVShow -@ void SaveRecordedItemPurchasesForTVShow() -SaveRecordedItemPurchasesForTVShow: @ 80ED238 - push {r4-r7,lr} - ldr r5, =gSaveBlock1Ptr - ldr r0, [r5] - ldrh r1, [r0, 0x4] - ldr r0, =0x00003c1a - cmp r1, r0 - beq _080ED2F2 - ldr r0, =0x0000371a - cmp r1, r0 - beq _080ED2F2 - ldr r0, =0x00005555 - bl sub_80EFB38 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _080ED2F2 - ldr r0, [r5] - ldr r7, =0x000027cc - adds r0, r7 - bl sub_80EFB08 - ldr r6, =gUnknown_030060BC - strb r0, [r6] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080ED2F2 - movs r0, 0x16 - movs r1, 0 - bl sub_80EF46C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080ED2F2 - bl sub_80EF500 - ldr r2, =gUnknown_02039F80 - ldrh r0, [r2, 0x2] - cmp r0, 0x13 - bls _080ED2F2 - movs r1, 0 - ldrsb r1, [r6, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r7 - ldr r1, [r5] - adds r5, r1, r0 - movs r0, 0x16 - strb r0, [r5] - strb r4, [r5, 0x1] - ldr r0, =gMapHeader - ldrb r0, [r0, 0x14] - strb r0, [r5, 0x12] - movs r4, 0 - adds r7, r5, 0x6 - mov r12, r2 - adds r6, r5, 0 - adds r6, 0xC -_080ED2B6: - lsls r2, r4, 1 - adds r3, r7, r2 - lsls r1, r4, 2 - add r1, r12 - ldrh r0, [r1] - strh r0, [r3] - adds r2, r6, r2 - ldrh r0, [r1, 0x2] - strh r0, [r2] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x2 - bls _080ED2B6 - movs r0, 0x1 - bl GetPriceReduction - strb r0, [r5, 0x2] - adds r0, r5, 0 - adds r0, 0x13 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - adds r0, r5, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r5, 0x3] -_080ED2F2: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end SaveRecordedItemPurchasesForTVShow - - thumb_func_start sub_80ED320 -sub_80ED320: @ 80ED320 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - bl sub_80EF7A8 - ldr r0, =gScriptResult - ldrh r0, [r0] - cmp r0, 0x1 - beq _080ED400 - ldr r0, =gSpecialVar_0x8004 - mov r8, r0 - ldrh r0, [r0] - movs r7, 0x64 - muls r0, r7 - ldr r6, =gPlayerParty - adds r0, r6 - ldr r4, =gStringVar1 - movs r1, 0x2 - adds r2, r4, 0 - bl GetMonData - ldr r1, =gSaveBlock2Ptr - mov r9, r1 - ldr r0, [r1] - bl StringLength - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bls _080ED400 - adds r0, r4, 0 - bl StringLength - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bls _080ED400 - ldr r2, =gSaveBlock1Ptr - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r4, [r2] - adds r4, r0 - movs r0, 0x5 - strb r0, [r4] - movs r5, 0x1 - strb r5, [r4, 0x1] - mov r2, r8 - ldrh r0, [r2] - muls r0, r7 - adds r0, r6 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r4, 0x2] - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - strb r0, [r4, 0x1A] - bl Random - lsls r0, 16 - lsrs r0, 16 - ands r0, r5 - strb r0, [r4, 0x1B] - ldrh r0, [r4, 0x2] - bl sub_80EFA24 - strh r0, [r4, 0x1C] - adds r0, r4, 0 - adds r0, 0xF - mov r2, r9 - ldr r1, [r2] - bl StringCopy - mov r1, r8 - ldrh r0, [r1] - muls r0, r7 - adds r0, r6 - adds r5, r4, 0x4 - movs r1, 0x2 - adds r2, r5, 0 - bl GetMonData - adds r0, r5, 0 - bl StripExtCtrlCodes - adds r0, r4, 0 - bl sub_80ECA10 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x1E] - mov r2, r8 - ldrh r0, [r2] - muls r0, r7 - adds r0, r6 - movs r1, 0x3 - bl GetMonData - strb r0, [r4, 0x1F] -_080ED400: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ED320 - - thumb_func_start StartMassOutbreak -StartMassOutbreak: @ 80ED430 - push {r4,r5,lr} - ldr r4, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r0, [r0] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r0, =0x000027cc - adds r1, r0 - ldr r2, [r4] - adds r1, r2, r1 - ldrh r3, [r1, 0xC] - ldr r5, =0x00002b90 - adds r0, r2, r5 - strh r3, [r0] - ldrb r0, [r1, 0x10] - ldr r3, =0x00002b92 - adds r2, r3 - strb r0, [r2] - ldr r0, [r4] - ldrb r2, [r1, 0x11] - adds r5, 0x3 - adds r0, r5 - strb r2, [r0] - ldr r0, [r4] - ldrb r2, [r1, 0x14] - adds r3, 0x2 - adds r0, r3 - strb r2, [r0] - ldr r0, [r4] - ldrb r2, [r1, 0x2] - adds r5, 0x2 - adds r0, r5 - strb r2, [r0] - ldr r2, [r4] - ldrh r3, [r1, 0xE] - adds r5, 0x1 - adds r0, r2, r5 - strh r3, [r0] - ldrh r3, [r1, 0x4] - adds r5, 0x2 - adds r0, r2, r5 - strh r3, [r0] - ldrh r3, [r1, 0x6] - adds r5, 0x2 - adds r0, r2, r5 - strh r3, [r0] - ldrh r3, [r1, 0x8] - adds r5, 0x2 - adds r0, r2, r5 - strh r3, [r0] - ldrh r3, [r1, 0xA] - adds r5, 0x2 - adds r0, r2, r5 - strh r3, [r0] - ldrb r0, [r1, 0x3] - ldr r3, =0x00002ba0 - adds r2, r3 - strb r0, [r2] - ldr r0, [r4] - ldrb r1, [r1, 0x13] - adds r5, 0x3 - adds r0, r5 - strb r1, [r0] - ldr r0, [r4] - ldr r1, =0x00002ba2 - adds r0, r1 - movs r1, 0x2 - strh r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end StartMassOutbreak - - thumb_func_start sub_80ED4DC -sub_80ED4DC: @ 80ED4DC - push {r4,lr} - bl sub_80EFA88 - ldr r0, =gScriptResult - ldrh r0, [r0] - cmp r0, 0x1 - beq _080ED532 - ldr r2, =gSaveBlock1Ptr - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - adds r0, r4, 0 - adds r0, 0x17 - bl sub_818E848 - movs r0, 0x2 - strb r0, [r4, 0x18] - movs r0, 0xC - strb r0, [r4] - movs r0, 0x1 - strb r0, [r4, 0x1] - adds r0, r4, 0x2 - bl sub_818E81C - adds r0, r4, 0 - adds r0, 0xA - adds r1, r4, 0 - adds r1, 0xB - bl sub_818E7E0 - bl sub_818E880 - strb r0, [r4, 0x16] - adds r0, r4, 0 - bl sub_80ECA10 -_080ED532: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ED4DC - - thumb_func_start sub_80ED548 -sub_80ED548: @ 80ED548 - push {r4,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r4, [r2] - adds r4, r0 - movs r0, 0x1 - strb r0, [r4] - strb r0, [r4, 0x1] - adds r0, r4, 0 - adds r0, 0x10 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - bl sub_8139688 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r4, 0x2] - adds r0, r4, 0 - bl sub_80ECA10 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x18] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ED548 - - thumb_func_start sub_80ED5B8 -sub_80ED5B8: @ 80ED5B8 - push {r4,r5,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r4, [r2] - adds r4, r0 - movs r5, 0 - movs r0, 0x2 - strb r0, [r4] - movs r0, 0x1 - strb r0, [r4, 0x1] - adds r0, r4, 0 - adds r0, 0x10 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - strh r5, [r4, 0x2] - adds r0, r4, 0 - bl sub_80ECA10 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x18] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ED5B8 - - thumb_func_start sub_80ED610 -sub_80ED610: @ 80ED610 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r5, r1, r0 - movs r0, 0x3 - strb r0, [r5] - movs r0, 0x1 - mov r8, r0 - mov r1, r8 - strb r1, [r5, 0x1] - bl sub_8139688 - lsls r0, 24 - lsrs r0, 24 - movs r7, 0x64 - muls r0, r7 - ldr r6, =gPlayerParty - adds r0, r6 - movs r1, 0x20 - movs r2, 0 - bl GetMonData - lsrs r0, 4 - movs r1, 0xF - ands r0, r1 - ldrb r2, [r5, 0x4] - movs r1, 0x10 - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r5, 0x4] - ldr r0, =gSpecialVar_0x8007 - ldrb r0, [r0] - lsls r0, 4 - movs r2, 0xF - ands r1, r2 - orrs r1, r0 - strb r1, [r5, 0x4] - adds r0, r5, 0x5 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - bl sub_8139688 - lsls r0, 24 - lsrs r0, 24 - muls r0, r7 - adds r0, r6 - adds r4, r5, 0 - adds r4, 0x10 - movs r1, 0x2 - adds r2, r4, 0 - bl GetMonData - adds r0, r4, 0 - bl StripExtCtrlCodes - bl sub_8139688 - lsls r0, 24 - lsrs r0, 24 - muls r0, r7 - adds r0, r6 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r5, 0x2] - adds r0, r5, 0 - bl sub_80ECA10 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r5, 0xD] - cmp r0, 0x1 - beq _080ED6D4 - bl sub_8139688 - lsls r0, 24 - lsrs r0, 24 - muls r0, r7 - adds r0, r6 - movs r1, 0x3 - bl GetMonData - cmp r0, 0x1 - bne _080ED6F4 -_080ED6D4: - mov r0, r8 - b _080ED706 - .pool -_080ED6F4: - bl sub_8139688 - lsls r0, 24 - lsrs r0, 24 - muls r0, r7 - adds r0, r6 - movs r1, 0x3 - bl GetMonData -_080ED706: - strb r0, [r5, 0xE] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80ED610 - - thumb_func_start TaskDummy5 -TaskDummy5: @ 80ED714 - bx lr - thumb_func_end TaskDummy5 - - thumb_func_start sub_80ED718 -sub_80ED718: @ 80ED718 - push {r4-r6,lr} - ldr r0, =0x00000864 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _080ED7E4 - movs r1, 0 - ldr r0, =gSaveBlock1Ptr - ldr r2, [r0] - ldr r3, =0x000027cc -_080ED72E: - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2, r0 - adds r0, r3 - ldrb r0, [r0] - cmp r0, 0x29 - beq _080ED7E4 - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x17 - bls _080ED72E - ldr r0, =0x00000147 - bl sub_80EFB38 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _080ED7E4 - ldr r6, =gSaveBlock1Ptr - ldr r0, [r6] - ldr r1, =0x000027cc - adds r0, r1 - bl sub_80EFADC - ldr r4, =gUnknown_030060BC - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080ED7E4 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x5 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - movs r2, 0 - ldrsb r2, [r4, r2] - lsls r1, r2, 3 - adds r1, r2 - lsls r1, 2 - ldr r2, =0x000027cc - adds r1, r2 - ldr r4, [r6] - adds r4, r1 - movs r1, 0x29 - strb r1, [r4] - movs r3, 0x1 - strb r3, [r4, 0x1] - ldr r2, =gUnknown_0858D094 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r0, [r1, 0xA] - strb r0, [r4, 0x14] - strb r5, [r4, 0x2] - strb r5, [r4, 0x3] - ldrh r0, [r1] - movs r2, 0 - strh r0, [r4, 0xC] - strh r5, [r4, 0xE] - ldrh r0, [r1, 0x2] - strh r0, [r4, 0x4] - ldrh r0, [r1, 0x4] - strh r0, [r4, 0x6] - ldrh r0, [r1, 0x6] - strh r0, [r4, 0x8] - ldrh r0, [r1, 0x8] - strh r0, [r4, 0xA] - ldrb r0, [r1, 0xB] - strb r0, [r4, 0x10] - strb r2, [r4, 0x11] - strb r2, [r4, 0x12] - movs r0, 0x32 - strb r0, [r4, 0x13] - strb r2, [r4, 0x15] - strh r3, [r4, 0x16] - adds r0, r4, 0 - bl sub_80ECA10 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x18] -_080ED7E4: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ED718 - - thumb_func_start EndMassOutbreak -EndMassOutbreak: @ 80ED808 - push {r4,r5,lr} - ldr r3, =gSaveBlock1Ptr - ldr r0, [r3] - ldr r2, =0x00002b90 - adds r1, r0, r2 - movs r4, 0 - movs r2, 0 - strh r2, [r1] - ldr r5, =0x00002b92 - adds r0, r5 - strb r4, [r0] - ldr r0, [r3] - ldr r1, =0x00002b93 - adds r0, r1 - strb r4, [r0] - ldr r0, [r3] - adds r5, 0x2 - adds r0, r5 - strb r4, [r0] - ldr r0, [r3] - adds r1, 0x2 - adds r0, r1 - strb r4, [r0] - ldr r0, [r3] - adds r5, 0x2 - adds r1, r0, r5 - strh r2, [r1] - adds r5, 0x2 - adds r1, r0, r5 - strh r2, [r1] - adds r5, 0x2 - adds r1, r0, r5 - strh r2, [r1] - adds r5, 0x2 - adds r1, r0, r5 - strh r2, [r1] - adds r5, 0x2 - adds r1, r0, r5 - strh r2, [r1] - ldr r1, =0x00002ba0 - adds r0, r1 - strb r4, [r0] - ldr r0, [r3] - adds r5, 0x3 - adds r0, r5 - strb r4, [r0] - ldr r0, [r3] - adds r1, 0x2 - adds r0, r1 - strh r2, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end EndMassOutbreak - - thumb_func_start sub_80ED888 -sub_80ED888: @ 80ED888 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r4, 0 - bl sub_80ED8B4 - adds r0, r4, 0 - bl UpdateMassOutbreakTimeLeft - adds r0, r4, 0 - bl sub_80EF120 - adds r0, r4, 0 - bl sub_80EDA48 - adds r0, r4, 0 - bl sub_80EEB98 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80ED888 - - thumb_func_start sub_80ED8B4 -sub_80ED8B4: @ 80ED8B4 - push {r4-r7,lr} - lsls r0, 16 - lsrs r5, r0, 16 - ldr r1, =gSaveBlock1Ptr - ldr r0, [r1] - ldr r2, =0x00002b90 - adds r0, r2 - ldrh r0, [r0] - mov r12, r1 - cmp r0, 0 - bne _080ED91C - movs r1, 0 - ldr r6, =0x000027cc -_080ED8CE: - mov r7, r12 - ldr r4, [r7] - lsls r0, r1, 3 - adds r0, r1 - lsls r3, r0, 2 - adds r2, r4, r3 - adds r0, r2, r6 - ldrb r0, [r0] - cmp r0, 0x29 - bne _080ED912 - ldr r7, =0x000027cd - adds r0, r2, r7 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080ED912 - adds r0, r3, r6 - adds r1, r4, r0 - ldrh r0, [r1, 0x16] - cmp r0, r5 - bcs _080ED90C - movs r0, 0 - strh r0, [r1, 0x16] - b _080ED91C - .pool -_080ED90C: - subs r0, r5 - strh r0, [r1, 0x16] - b _080ED91C -_080ED912: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x17 - bls _080ED8CE -_080ED91C: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80ED8B4 - - thumb_func_start UpdateMassOutbreakTimeLeft -UpdateMassOutbreakTimeLeft: @ 80ED924 - push {lr} - lsls r0, 16 - lsrs r2, r0, 16 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r3, =0x00002ba2 - adds r1, r0, r3 - ldrh r0, [r1] - cmp r0, r2 - bhi _080ED948 - bl EndMassOutbreak - b _080ED94C - .pool -_080ED948: - subs r0, r2 - strh r0, [r1] -_080ED94C: - pop {r0} - bx r0 - thumb_func_end UpdateMassOutbreakTimeLeft - - thumb_func_start sub_80ED950 -sub_80ED950: @ 80ED950 - push {r4,lr} - lsls r0, 24 - cmp r0, 0 - beq _080ED978 - ldr r4, =gUnknown_0203A026 - ldrh r0, [r4] - lsrs r0, 8 - cmp r0, 0x4 - bls _080ED966 - bl sub_80ED9A8 -_080ED966: - ldrb r0, [r4] - strh r0, [r4] - cmp r0, 0xFF - beq _080ED99C - adds r0, 0x1 - b _080ED99A - .pool -_080ED978: - ldr r4, =gUnknown_0203A026 - ldrb r0, [r4] - cmp r0, 0x4 - bls _080ED984 - bl sub_80ED9A8 -_080ED984: - ldrh r0, [r4] - movs r1, 0xFF - lsls r1, 8 - ands r1, r0 - strh r1, [r4] - lsrs r0, r1, 8 - cmp r0, 0xFF - beq _080ED99C - movs r2, 0x80 - lsls r2, 1 - adds r0, r1, r2 -_080ED99A: - strh r0, [r4] -_080ED99C: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ED950 - - thumb_func_start sub_80ED9A8 -sub_80ED9A8: @ 80ED9A8 - push {r4-r6,lr} - ldr r6, =gSaveBlock1Ptr - ldr r0, [r6] - ldr r5, =0x000027cc - adds r0, r5 - bl sub_80EFB08 - ldr r4, =gUnknown_030060BC - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EDA18 - movs r0, 0x18 - movs r1, 0 - bl sub_80EF46C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EDA18 - movs r1, 0 - ldrsb r1, [r4, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r4, [r6] - adds r4, r0 - movs r1, 0 - movs r0, 0x18 - strb r0, [r4] - strb r1, [r4, 0x1] - ldr r1, =gUnknown_0203A026 - ldrh r0, [r1] - strb r0, [r4, 0x2] - ldrh r0, [r1] - lsrs r0, 8 - strb r0, [r4, 0x3] - ldr r0, =gUnknown_0203A024 - ldrh r0, [r0] - strh r0, [r4, 0x4] - adds r0, r4, 0 - adds r0, 0x13 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - adds r0, r4, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x6] -_080EDA18: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80ED9A8 - - thumb_func_start sub_80EDA3C -sub_80EDA3C: @ 80EDA3C - ldr r1, =gUnknown_0203A024 - strh r0, [r1] - bx lr - .pool - thumb_func_end sub_80EDA3C - - thumb_func_start sub_80EDA48 -sub_80EDA48: @ 80EDA48 - push {r4,lr} - ldr r4, =gSaveBlock1Ptr - ldr r0, [r4] - ldr r2, =0x00002b2c - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, 0x19 - bne _080EDA6E - ldrh r0, [r1, 0x2] - cmp r0, 0x13 - bls _080EDA62 - bl sub_80EDA80 -_080EDA62: - ldr r0, [r4] - ldr r1, =0x000027cc - adds r0, r1 - movs r1, 0x18 - bl sub_80EF910 -_080EDA6E: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EDA48 - - thumb_func_start sub_80EDA80 -sub_80EDA80: @ 80EDA80 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r7, =gSaveBlock1Ptr - ldr r0, [r7] - ldr r1, =0x00002b2c - adds r5, r0, r1 - ldr r0, =0x0000ffff - bl sub_80EFB38 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - bne _080EDB1C - ldr r0, [r7] - ldr r1, =0x000027cc - mov r8, r1 - add r0, r8 - bl sub_80EFB08 - ldr r4, =gUnknown_030060BC - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EDB1C - movs r0, 0x19 - movs r1, 0 - bl sub_80EF46C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EDB1C - movs r1, 0 - ldrsb r1, [r4, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - add r0, r8 - ldr r4, [r7] - adds r4, r0 - movs r0, 0x19 - strb r0, [r4] - strb r6, [r4, 0x1] - ldrh r0, [r5, 0x2] - strh r0, [r4, 0x2] - movs r0, 0x5 - bl GetGameStat - ldrh r1, [r5, 0x6] - subs r0, r1 - strh r0, [r4, 0x6] - ldrh r0, [r5, 0x4] - strh r0, [r4, 0x4] - ldrh r0, [r5, 0x8] - strh r0, [r4, 0x8] - ldrb r0, [r5, 0xA] - strb r0, [r4, 0xA] - adds r0, r4, 0 - adds r0, 0x13 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - adds r0, r4, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0xB] - ldr r0, [r7] - add r0, r8 - movs r1, 0x18 - bl sub_80EF910 -_080EDB1C: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EDA80 - - thumb_func_start sub_80EDB44 -sub_80EDB44: @ 80EDB44 - push {r4-r7,lr} - movs r0, 0x1A - movs r1, 0x1 - bl sub_80EF46C - ldr r4, =gSaveBlock1Ptr - ldr r0, [r4] - ldr r1, =0x000027cc - adds r0, r1 - bl sub_80EFB08 - ldr r2, =gUnknown_030060BC - strb r0, [r2] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EDC40 - movs r1, 0 - ldrsb r1, [r2, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r2, =0x000027cc - adds r0, r2 - ldr r1, [r4] - adds r4, r1, r0 - movs r1, 0 - movs r0, 0x1A - strb r0, [r4] - strb r1, [r4, 0x1] - ldr r6, =0x00000867 - movs r5, 0 -_080EDB88: - lsls r0, r6, 16 - lsrs r0, 16 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _080EDB9C - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_080EDB9C: - adds r6, 0x1 - ldr r0, =0x0000086e - cmp r6, r0 - bls _080EDB88 - strb r5, [r4, 0x4] - bl IsNationalPokedexEnabled - cmp r0, 0 - beq _080EDBCC - movs r0, 0x1 - bl pokedex_count - b _080EDBD2 - .pool -_080EDBCC: - movs r0, 0x1 - bl sub_80C0844 -_080EDBD2: - strh r0, [r4, 0x2] - ldr r1, =gMapHeader - ldrb r0, [r1, 0x14] - strb r0, [r4, 0x7] - ldrh r0, [r1, 0x12] - movs r1, 0 - strh r0, [r4, 0xA] - strb r1, [r4, 0x5] - strb r1, [r4, 0x6] - movs r6, 0 - adds r7, r4, 0 - adds r7, 0x13 -_080EDBEA: - ldr r0, =gUnknown_0858D0DE - lsls r5, r6, 1 - adds r0, r5, r0 - ldrh r0, [r0] - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080EDC04 - ldrb r0, [r4, 0x5] - adds r0, 0x1 - strb r0, [r4, 0x5] -_080EDC04: - ldr r0, =gUnknown_0858D0D0 - adds r0, r5, r0 - ldrh r0, [r0] - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080EDC1C - ldrb r0, [r4, 0x6] - adds r0, 0x1 - strb r0, [r4, 0x6] -_080EDC1C: - adds r6, 0x1 - cmp r6, 0x6 - bls _080EDBEA - ldr r0, =gSaveBlock2Ptr - ldr r1, [r0] - ldr r2, =0x00000eb8 - adds r0, r1, r2 - ldrh r0, [r0] - strh r0, [r4, 0x8] - adds r0, r7, 0 - bl StringCopy - adds r0, r4, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0xC] -_080EDC40: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EDB44 - - thumb_func_start sub_80EDC60 -sub_80EDC60: @ 80EDC60 - push {r4-r7,lr} - adds r5, r0, 0 - ldr r7, =gSaveBlock1Ptr - ldr r0, [r7] - ldr r6, =0x000027cc - adds r0, r6 - bl sub_80EFB08 - ldr r4, =gUnknown_030060BC - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EDCCE - movs r0, 0x1B - movs r1, 0 - bl sub_80EF46C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EDCCE - movs r1, 0 - ldrsb r1, [r4, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - ldr r4, [r7] - adds r4, r0 - movs r1, 0 - movs r0, 0x1B - strb r0, [r4] - strb r1, [r4, 0x1] - ldr r1, =gSaveBlock2Ptr - ldr r0, [r1] - ldrb r0, [r0, 0x8] - strb r0, [r4, 0x8] - ldrh r0, [r5] - strh r0, [r4, 0x4] - ldrh r0, [r5, 0x2] - strh r0, [r4, 0x6] - adds r0, r4, 0 - adds r0, 0x13 - ldr r1, [r1] - bl StringCopy - adds r0, r4, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x9] -_080EDCCE: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EDC60 - - thumb_func_start sub_80EDCE8 -sub_80EDCE8: @ 80EDCE8 - push {r4-r6,lr} - ldr r6, =gSaveBlock1Ptr - ldr r0, [r6] - ldr r5, =0x000027cc - adds r0, r5 - bl sub_80EFB08 - ldr r4, =gUnknown_030060BC - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EDD56 - movs r0, 0x1C - movs r1, 0 - bl sub_80EF46C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EDD56 - movs r1, 0 - ldrsb r1, [r4, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r4, [r6] - adds r4, r0 - movs r1, 0 - movs r0, 0x1C - strb r0, [r4] - strb r1, [r4, 0x1] - ldr r0, =gSpecialVar_0x8005 - ldrh r0, [r0] - strh r0, [r4, 0x2] - ldr r1, =gMapHeader - ldrb r0, [r1, 0x14] - strb r0, [r4, 0x4] - ldrh r0, [r1, 0x12] - strh r0, [r4, 0x6] - adds r0, r4, 0 - adds r0, 0x13 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - adds r0, r4, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x5] -_080EDD56: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EDCE8 - - thumb_func_start sub_80EDD78 -sub_80EDD78: @ 80EDD78 - push {r4-r6,lr} - lsls r0, 16 - lsrs r4, r0, 16 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x000027cc - adds r0, r1 - bl sub_80EFB08 - ldr r1, =gUnknown_030060BC - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EDE54 - movs r0, 0x1D - movs r1, 0 - bl sub_80EF46C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EDE54 - movs r5, 0 - ldr r0, =gUnknown_0203A02A - ldrb r1, [r0] - adds r6, r0, 0 - cmp r1, 0 - beq _080EDDCC - cmp r1, 0x1 - beq _080EDDEE - b _080EDE54 - .pool -_080EDDCC: - ldr r0, =gUnknown_0203A028 - ldrh r1, [r0] - adds r0, r1, 0 - adds r0, 0xC8 - cmp r4, r0 - blt _080EDDE4 - movs r5, 0x1 - subs r0, r4, r1 - b _080EDE12 - .pool -_080EDDE4: - cmp r1, 0x63 - bls _080EDE54 - adds r0, r1, 0 - subs r0, 0x64 - b _080EDE0C -_080EDDEE: - ldr r0, =gUnknown_0203A028 - ldrh r1, [r0] - adds r0, r1, 0 - adds r0, 0x32 - cmp r4, r0 - blt _080EDE04 - movs r5, 0x1 - subs r0, r4, r1 - b _080EDE12 - .pool -_080EDE04: - cmp r1, 0x31 - bls _080EDE54 - adds r0, r1, 0 - subs r0, 0x32 -_080EDE0C: - cmp r4, r0 - bgt _080EDE54 - subs r0, r1, r4 -_080EDE12: - lsls r0, 16 - lsrs r3, r0, 16 - ldr r2, =gSaveBlock1Ptr - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r4, [r2] - adds r4, r0 - movs r1, 0 - movs r0, 0x1D - strb r0, [r4] - strb r1, [r4, 0x1] - strh r3, [r4, 0x4] - ldrb r0, [r6] - strb r0, [r4, 0x3] - strb r5, [r4, 0x2] - adds r0, r4, 0 - adds r0, 0x13 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - adds r0, r4, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x8] -_080EDE54: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EDD78 - - thumb_func_start sub_80EDE70 -sub_80EDE70: @ 80EDE70 - ldr r2, =gUnknown_0203A02A - movs r1, 0 - strb r1, [r2] - ldr r1, =gUnknown_0203A028 - strh r0, [r1] - bx lr - .pool - thumb_func_end sub_80EDE70 - - thumb_func_start sub_80EDE84 -sub_80EDE84: @ 80EDE84 - ldr r2, =gUnknown_0203A02A - movs r1, 0x1 - strb r1, [r2] - ldr r1, =gUnknown_0203A028 - strh r0, [r1] - bx lr - .pool - thumb_func_end sub_80EDE84 - - thumb_func_start sub_80EDE98 -sub_80EDE98: @ 80EDE98 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r8, r0 - movs r3, 0 - ldr r6, =gUnknown_030060D0 - ldr r7, =gSaveBlock1Ptr - adds r2, r6, 0 - movs r1, 0 -_080EDEAC: - adds r0, r3, r2 - strb r1, [r0] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0xF - bls _080EDEAC - movs r3, 0 - movs r5, 0 -_080EDEBE: - ldr r0, [r7] - ldr r1, =0x00001aae - adds r0, r1 - adds r0, r3 - ldrb r4, [r0] - adds r3, 0x1 - cmp r4, 0 - beq _080EDF0A - movs r1, 0 - ldrb r0, [r6] - cmp r0, 0 - bne _080EDEE8 - strb r4, [r6] - b _080EDF04 - .pool -_080EDEE8: - adds r0, r1, r6 - ldrb r0, [r0] - cmp r0, r4 - beq _080EDF0A - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xF - bhi _080EDF0A - adds r2, r1, r6 - ldrb r0, [r2] - cmp r0, 0 - bne _080EDEE8 - strb r4, [r2] -_080EDF04: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_080EDF0A: - lsls r0, r3, 24 - lsrs r3, r0, 24 - cmp r3, 0xF - bls _080EDEBE - cmp r5, 0x4 - bls _080EDF1E - movs r0, 0x4 - mov r1, r8 - strb r0, [r1, 0x3] - b _080EDF22 -_080EDF1E: - mov r0, r8 - strb r5, [r0, 0x3] -_080EDF22: - mov r1, r8 - ldrb r0, [r1, 0x3] - cmp r0, 0 - beq _080EDFA4 - cmp r0, 0x1 - bne _080EDF34 - ldrb r0, [r6] - strb r0, [r1, 0x4] - b _080EDFA4 -_080EDF34: - movs r6, 0 - adds r7, r5, 0 - muls r7, r5 - cmp r6, r7 - bge _080EDF7E - ldr r0, =gUnknown_030060D0 - mov r9, r0 -_080EDF42: - bl Random - lsls r0, 16 - lsrs r0, 16 - adds r1, r5, 0 - bl __modsi3 - lsls r0, 24 - lsrs r4, r0, 24 - bl Random - lsls r0, 16 - lsrs r0, 16 - adds r1, r5, 0 - bl __modsi3 - lsls r0, 24 - lsrs r1, r0, 24 - mov r0, r9 - adds r2, r4, r0 - ldrb r3, [r2] - add r1, r9 - ldrb r0, [r1] - strb r0, [r2] - strb r3, [r1] - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, r7 - blt _080EDF42 -_080EDF7E: - movs r3, 0 - mov r1, r8 - ldrb r1, [r1, 0x3] - cmp r3, r1 - bcs _080EDFA4 - mov r2, r8 - adds r2, 0x4 - ldr r4, =gUnknown_030060D0 -_080EDF8E: - adds r1, r2, r3 - adds r0, r3, r4 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - mov r0, r8 - ldrb r0, [r0, 0x3] - cmp r3, r0 - bcc _080EDF8E -_080EDFA4: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EDE98 - - thumb_func_start sub_80EDFB4 -sub_80EDFB4: @ 80EDFB4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r10, r0 - movs r7, 0 - movs r0, 0 - mov r9, r0 - ldr r1, =gUnknown_030060C0 - mov r8, r1 -_080EDFCA: - movs r0, 0x64 - adds r1, r7, 0 - muls r1, r0 - ldr r0, =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _080EE094 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _080EE094 - adds r0, r4, 0 - movs r1, 0x38 - bl GetMonData - ldr r2, =gUnknown_030060E0 - mov r3, r9 - lsls r1, r3, 3 - adds r6, r1, r2 - strb r0, [r6] - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - strh r0, [r6, 0x2] - movs r5, 0 - adds r0, r4, 0 - movs r1, 0xD - bl GetMonData - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _080EE020 - mov r0, r8 - strh r1, [r0] - movs r5, 0x1 -_080EE020: - adds r0, r4, 0 - movs r1, 0xE - bl GetMonData - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _080EE03C - lsls r0, r5, 1 - add r0, r8 - strh r1, [r0] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_080EE03C: - adds r0, r4, 0 - movs r1, 0xF - bl GetMonData - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _080EE058 - lsls r0, r5, 1 - add r0, r8 - strh r1, [r0] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_080EE058: - adds r0, r4, 0 - movs r1, 0x10 - bl GetMonData - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _080EE074 - lsls r0, r5, 1 - add r0, r8 - strh r1, [r0] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_080EE074: - bl Random - lsls r0, 16 - lsrs r0, 16 - adds r1, r5, 0 - bl __modsi3 - lsls r0, 1 - add r0, r8 - ldrh r0, [r0] - strh r0, [r6, 0x4] - mov r0, r9 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 -_080EE094: - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0x5 - bls _080EDFCA - movs r7, 0 - movs r1, 0 - cmp r1, r9 - bcs _080EE0BE - ldr r2, =gUnknown_030060E0 -_080EE0A8: - lsls r0, r7, 3 - adds r0, r2 - ldrb r0, [r0] - adds r0, r1, r0 - lsls r0, 16 - lsrs r1, r0, 16 - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, r9 - bcc _080EE0A8 -_080EE0BE: - adds r0, r1, 0 - mov r1, r9 - bl __divsi3 - mov r1, r10 - strb r0, [r1, 0x2] - bl Random - lsls r0, 16 - lsrs r0, 16 - mov r1, r9 - bl __modsi3 - lsls r0, 16 - ldr r1, =gUnknown_030060E0 - lsrs r0, 13 - adds r0, r1 - ldrh r1, [r0, 0x2] - mov r2, r10 - strh r1, [r2, 0x8] - ldrh r0, [r0, 0x4] - strh r0, [r2, 0xA] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EDFB4 - - thumb_func_start sub_80EE104 -sub_80EE104: @ 80EE104 - push {r4,lr} - movs r0, 0x1F - movs r1, 0x1 - bl sub_80EF46C - ldr r4, =gSaveBlock1Ptr - ldr r0, [r4] - ldr r1, =0x000027cc - adds r0, r1 - bl sub_80EFB08 - ldr r2, =gUnknown_030060BC - strb r0, [r2] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EE168 - movs r1, 0 - ldrsb r1, [r2, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r4, [r4] - adds r4, r0 - movs r1, 0 - movs r0, 0x1F - strb r0, [r4] - strb r1, [r4, 0x1] - adds r0, r4, 0 - adds r0, 0x13 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - adds r0, r4, 0 - bl sub_80EDE98 - adds r0, r4, 0 - bl sub_80EDFB4 - adds r0, r4, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0xC] -_080EE168: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EE104 - - thumb_func_start sub_80EE184 -sub_80EE184: @ 80EE184 - push {r4-r7,lr} - ldr r6, =gSaveBlock1Ptr - ldr r0, [r6] - ldr r5, =0x000027cc - adds r0, r5 - bl sub_80EFB08 - ldr r4, =gUnknown_030060BC - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _080EE1A4 - b _080EE2C2 -_080EE1A4: - movs r0, 0x1E - movs r1, 0 - bl sub_80EF46C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080EE1B6 - b _080EE2C2 -_080EE1B6: - movs r1, 0 - ldrsb r1, [r4, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r1, [r6] - adds r4, r1, r0 - movs r1, 0 - movs r0, 0x1E - strb r0, [r4] - strb r1, [r4, 0x1] - movs r5, 0 - ldr r6, =gBattleResults - ldr r3, =gMapHeader - ldr r7, =gSaveBlock2Ptr - adds r2, r6, 0 - adds r2, 0x36 -_080EE1DA: - adds r0, r1, r2 - ldrb r0, [r0] - adds r0, r5, r0 - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xA - bls _080EE1DA - ldrb r1, [r6, 0x5] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080EE1FE - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 -_080EE1FE: - ldrb r0, [r3, 0x14] - strb r0, [r4, 0x4] - adds r0, r4, 0 - adds r0, 0x13 - ldr r1, [r7] - bl StringCopy - ldrh r0, [r6, 0x6] - strh r0, [r4, 0xA] - ldr r0, =gBattleOutcome - ldrb r0, [r0] - subs r0, 0x1 - cmp r0, 0x9 - bhi _080EE282 - lsls r0, 2 - ldr r1, =_080EE244 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080EE244: - .4byte _080EE276 - .4byte _080EE26C - .4byte _080EE26C - .4byte _080EE27A - .4byte _080EE27A - .4byte _080EE27E - .4byte _080EE272 - .4byte _080EE27A - .4byte _080EE282 - .4byte _080EE27E -_080EE26C: - movs r0, 0 - strb r0, [r4] - b _080EE2C2 -_080EE272: - movs r0, 0 - b _080EE280 -_080EE276: - movs r0, 0x1 - b _080EE280 -_080EE27A: - movs r0, 0x2 - b _080EE280 -_080EE27E: - movs r0, 0x3 -_080EE280: - strb r0, [r4, 0x5] -_080EE282: - ldr r1, =gBattleResults - ldrh r0, [r1, 0x20] - strh r0, [r4, 0x2] - ldrb r0, [r4, 0x5] - cmp r0, 0x1 - beq _080EE2B2 - cmp r0, 0x1 - bgt _080EE2B6 - cmp r0, 0 - bne _080EE2B6 - ldrb r1, [r1, 0x5] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080EE2A8 - movs r0, 0x1 - b _080EE2AC - .pool -_080EE2A8: - lsls r0, r1, 26 - lsrs r0, 28 -_080EE2AC: - strh r0, [r4, 0x6] - strh r5, [r4, 0x8] - b _080EE2B6 -_080EE2B2: - ldrh r0, [r1, 0x22] - strh r0, [r4, 0xC] -_080EE2B6: - adds r0, r4, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0xE] -_080EE2C2: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EE184 - - thumb_func_start sub_80EE2CC -sub_80EE2CC: @ 80EE2CC - push {r4-r6,lr} - ldr r6, =gSaveBlock1Ptr - ldr r0, [r6] - ldr r5, =0x000027cc - adds r0, r5 - bl sub_80EFB08 - ldr r4, =gUnknown_030060BC - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EE33A - movs r0, 0x20 - movs r1, 0 - bl sub_80EF46C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EE33A - movs r1, 0 - ldrsb r1, [r4, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r4, [r6] - adds r4, r0 - movs r1, 0 - movs r0, 0x20 - strb r0, [r4] - strb r1, [r4, 0x1] - adds r0, r4, 0 - adds r0, 0x13 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - ldr r0, =gSpecialVar_0x8004 - ldrb r1, [r0] - movs r0, 0x4 - subs r0, r1 - strb r0, [r4, 0x4] - ldr r0, =gSpecialVar_0x8005 - ldrh r0, [r0] - strh r0, [r4, 0x2] - adds r0, r4, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x5] -_080EE33A: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EE2CC - - thumb_func_start sub_80EE35C -sub_80EE35C: @ 80EE35C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r7, r3, 0 - ldr r3, [sp, 0x24] - lsls r0, 16 - lsrs r0, 16 - mov r10, r0 - lsls r1, 16 - lsrs r1, 16 - mov r9, r1 - lsls r2, 24 - lsrs r6, r2, 24 - lsls r3, 16 - lsrs r3, 16 - str r3, [sp] - ldr r0, =gSaveBlock1Ptr - mov r8, r0 - ldr r0, [r0] - ldr r5, =0x000027cc - adds r0, r5 - bl sub_80EFB08 - ldr r4, =gUnknown_030060BC - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EE426 - movs r0, 0x21 - movs r1, 0 - bl sub_80EF46C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EE426 - movs r1, 0 - ldrsb r1, [r4, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - mov r2, r8 - ldr r1, [r2] - adds r4, r1, r0 - movs r1, 0 - movs r0, 0x21 - strb r0, [r4] - strb r1, [r4, 0x1] - adds r0, r4, 0 - adds r0, 0x13 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - mov r0, r10 - strh r0, [r4, 0x4] - mov r1, r9 - strh r1, [r4, 0x6] - lsls r0, r6, 1 - adds r0, r7 - ldrh r0, [r0] - strh r0, [r4, 0x2] - movs r2, 0 - movs r3, 0 - adds r5, r4, 0 - adds r5, 0x8 -_080EE3EE: - cmp r2, r6 - beq _080EE408 - lsls r0, r2, 1 - adds r0, r7 - ldrh r1, [r0] - cmp r1, 0 - beq _080EE408 - lsls r0, r3, 1 - adds r0, r5, r0 - strh r1, [r0] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 -_080EE408: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x3 - bls _080EE3EE - strb r3, [r4, 0x10] - mov r2, sp - ldrh r2, [r2] - strh r2, [r4, 0xE] - adds r0, r4, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x11] -_080EE426: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EE35C - - thumb_func_start sub_80EE44C -sub_80EE44C: @ 80EE44C - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r1, 24 - lsrs r7, r1, 24 - ldr r6, =gSaveBlock1Ptr - ldr r0, [r6] - ldr r5, =0x000027cc - adds r0, r5 - bl sub_80EFB08 - ldr r4, =gUnknown_030060BC - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EE4BE - movs r0, 0x27 - movs r1, 0 - bl sub_80EF46C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EE4BE - movs r1, 0 - ldrsb r1, [r4, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r4, [r6] - adds r4, r0 - movs r1, 0 - movs r0, 0x27 - strb r0, [r4] - strb r1, [r4, 0x1] - adds r0, r4, 0 - adds r0, 0x13 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - mov r0, r8 - strb r0, [r4, 0x2] - strb r7, [r4, 0x3] - adds r0, r4, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x4] -_080EE4BE: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EE44C - - thumb_func_start sub_80EE4DC -sub_80EE4DC: @ 80EE4DC - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - ldr r7, =gSaveBlock1Ptr - ldr r0, [r7] - ldr r5, =0x000027cc - adds r0, r5 - bl sub_80EFB08 - ldr r4, =gUnknown_030060BC - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EE59A - movs r0, 0x23 - movs r1, 0 - bl sub_80EF46C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EE59A - movs r1, 0 - ldrsb r1, [r4, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldr r1, [r7] - adds r5, r1, r0 - movs r1, 0 - movs r0, 0x23 - strb r0, [r5] - strb r1, [r5, 0x1] - adds r0, r5, 0 - adds r0, 0x13 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - adds r4, r5, 0x4 - adds r0, r6, 0 - movs r1, 0x2 - adds r2, r4, 0 - bl GetMonData - adds r0, r4, 0 - bl StripExtCtrlCodes - adds r0, r6, 0 - bl sub_80EE5A4 - strb r0, [r5, 0x2] - mov r0, r8 - bl sub_80EE69C - strb r0, [r5, 0x3] - adds r0, r5, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r5, 0xF] - cmp r0, 0x1 - beq _080EE578 - adds r0, r6, 0 - movs r1, 0x3 - bl GetMonData - cmp r0, 0x1 - bne _080EE590 -_080EE578: - movs r0, 0x1 - b _080EE598 - .pool -_080EE590: - adds r0, r6, 0 - movs r1, 0x3 - bl GetMonData -_080EE598: - strb r0, [r5, 0x10] -_080EE59A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80EE4DC - - thumb_func_start sub_80EE5A4 -sub_80EE5A4: @ 80EE5A4 - push {r4,r5,lr} - adds r5, r0, 0 - movs r1, 0x32 - bl GetMonData - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x33 - bl GetMonData - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x34 - bl GetMonData - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x35 - bl GetMonData - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x36 - bl GetMonData - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x43 - bl GetMonData - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x44 - bl GetMonData - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x45 - bl GetMonData - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x46 - bl GetMonData - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x47 - bl GetMonData - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x48 - bl GetMonData - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x49 - bl GetMonData - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x4A - bl GetMonData - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x4B - bl GetMonData - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x4C - bl GetMonData - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x4D - bl GetMonData - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x4E - bl GetMonData - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80EE5A4 - - thumb_func_start sub_80EE69C -sub_80EE69C: @ 80EE69C - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x43 - beq _080EE722 - cmp r0, 0x32 - bne _080EE6AE - movs r0, 0x1 - b _080EE728 -_080EE6AE: - cmp r0, 0x33 - bne _080EE6B6 - movs r0, 0x5 - b _080EE728 -_080EE6B6: - cmp r0, 0x34 - bne _080EE6BE - movs r0, 0x9 - b _080EE728 -_080EE6BE: - cmp r0, 0x35 - bne _080EE6C6 - movs r0, 0xD - b _080EE728 -_080EE6C6: - cmp r0, 0x36 - bne _080EE6CE - movs r0, 0x11 - b _080EE728 -_080EE6CE: - cmp r0, 0x44 - bne _080EE6D6 - movs r0, 0x15 - b _080EE728 -_080EE6D6: - cmp r0, 0x45 - bne _080EE6DE - movs r0, 0x16 - b _080EE728 -_080EE6DE: - cmp r0, 0x46 - bne _080EE6E6 - movs r0, 0x17 - b _080EE728 -_080EE6E6: - cmp r0, 0x47 - bne _080EE6EE - movs r0, 0x18 - b _080EE728 -_080EE6EE: - cmp r0, 0x48 - bne _080EE6F6 - movs r0, 0x19 - b _080EE728 -_080EE6F6: - cmp r0, 0x49 - bne _080EE6FE - movs r0, 0x1A - b _080EE728 -_080EE6FE: - cmp r0, 0x4A - bne _080EE706 - movs r0, 0x1B - b _080EE728 -_080EE706: - cmp r0, 0x4B - bne _080EE70E - movs r0, 0x1C - b _080EE728 -_080EE70E: - cmp r0, 0x4C - bne _080EE716 - movs r0, 0x1D - b _080EE728 -_080EE716: - cmp r0, 0x4D - bne _080EE71E - movs r0, 0x1E - b _080EE728 -_080EE71E: - cmp r0, 0x4E - beq _080EE726 -_080EE722: - movs r0, 0 - b _080EE728 -_080EE726: - movs r0, 0x1F -_080EE728: - pop {r1} - bx r1 - thumb_func_end sub_80EE69C - - thumb_func_start sub_80EE72C -sub_80EE72C: @ 80EE72C - push {r4-r6,lr} - ldr r5, =gSaveBlock1Ptr - ldr r0, [r5] - ldr r6, =0x000027cc - adds r0, r6 - bl sub_80EFB08 - ldr r4, =gUnknown_030060BC - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EE79C - movs r0, 0x22 - movs r1, 0 - bl sub_80EF46C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EE79C - movs r1, 0 - ldrsb r1, [r4, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - ldr r4, [r5] - adds r4, r0 - movs r1, 0 - movs r0, 0x22 - strb r0, [r4] - strb r1, [r4, 0x1] - adds r0, r4, 0 - adds r0, 0x13 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - ldr r0, [r5] - ldr r2, =0x00002bb0 - adds r1, r0, r2 - ldrh r1, [r1] - strh r1, [r4, 0x4] - ldr r1, =0x00002bb2 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r4, 0x6] - adds r0, r4, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x8] -_080EE79C: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EE72C - - thumb_func_start sub_80EE7C0 -sub_80EE7C0: @ 80EE7C0 - push {r4,lr} - ldr r4, =gSaveBlock1Ptr - ldr r0, [r4] - ldr r1, =0x000027cc - adds r0, r1 - bl sub_80EFADC - ldr r1, =gUnknown_030060BC - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EE810 - movs r0, 0xB - bl sub_80EF550 - ldr r0, =gScriptResult - ldrh r0, [r0] - cmp r0, 0x1 - beq _080EE810 - ldr r0, [r4] - ldr r1, =0x00003150 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0xFF - beq _080EE810 - movs r0, 0 - b _080EE812 - .pool -_080EE810: - movs r0, 0x1 -_080EE812: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80EE7C0 - - thumb_func_start sub_80EE818 -sub_80EE818: @ 80EE818 - push {r4-r7,lr} - movs r0, 0x24 - movs r1, 0 - bl sub_80EF46C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080EE870 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x000027cc - adds r7, r0, r1 - bl sub_80F0020 - adds r4, r0, 0 - movs r6, 0x5 - lsrs r5, r4, 8 -_080EE83C: - lsls r0, r6, 3 - adds r0, r6 - lsls r0, 2 - adds r1, r0, r7 - ldrb r0, [r1] - cmp r0, 0x24 - bne _080EE866 - movs r3, 0xFF - adds r0, r4, 0 - ands r0, r3 - adds r2, r1, 0 - adds r2, 0x22 - ldrb r2, [r2] - cmp r0, r2 - bne _080EE866 - adds r0, r5, 0 - ands r0, r3 - adds r1, 0x23 - ldrb r1, [r1] - cmp r0, r1 - beq _080EE89C -_080EE866: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x17 - bls _080EE83C -_080EE870: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x000027cc - adds r0, r1 - bl sub_80EFB08 - ldr r1, =gUnknown_030060BC - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EE8C0 - movs r0, 0x1 - b _080EE8C2 - .pool -_080EE89C: - ldr r5, =gSaveBlock1Ptr - ldr r0, [r5] - ldr r4, =0x000027cc - adds r0, r4 - adds r1, r6, 0 - bl sub_80EF910 - ldr r0, [r5] - adds r0, r4 - bl sub_80EF93C - movs r0, 0x1 - b _080EE8C2 - .pool -_080EE8C0: - movs r0, 0 -_080EE8C2: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80EE818 - - thumb_func_start sub_80EE8C8 -sub_80EE8C8: @ 80EE8C8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 16 - lsrs r6, r0, 16 - lsls r1, 24 - lsrs r4, r1, 24 - ldr r5, =gSaveBlock1Ptr - ldr r0, [r5] - ldr r1, =0x000027cc - adds r0, r1 - bl sub_80EFB08 - ldr r2, =gUnknown_030060BC - strb r0, [r2] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _080EE8F4 - b _080EEA52 -_080EE8F4: - movs r1, 0 - ldrsb r1, [r2, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r2, =0x000027cc - adds r0, r2 - ldr r1, [r5] - adds r7, r1, r0 - movs r1, 0 - movs r0, 0x24 - strb r0, [r7] - strb r1, [r7, 0x1] - adds r0, r7, 0 - adds r0, 0x13 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - strh r6, [r7, 0x2] - strb r4, [r7, 0xD] - subs r0, r4, 0x1 - cmp r0, 0xC - bls _080EE926 - b _080EEA46 -_080EE926: - lsls r0, 2 - ldr r1, =_080EE944 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080EE944: - .4byte _080EE978 - .4byte _080EE9A8 - .4byte _080EE9E8 - .4byte _080EEA00 - .4byte _080EE978 - .4byte _080EE978 - .4byte _080EE978 - .4byte _080EE978 - .4byte _080EE978 - .4byte _080EE978 - .4byte _080EE978 - .4byte _080EE978 - .4byte _080EE978 -_080EE978: - ldr r4, =gPlayerParty - adds r0, r4, 0 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x4] - adds r0, r4, 0 - adds r0, 0x64 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x6] - adds r4, 0xC8 - adds r0, r4, 0 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x8] - b _080EEA46 - .pool -_080EE9A8: - ldr r4, =gPlayerParty - adds r0, r4, 0 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x4] - adds r0, r4, 0 - adds r0, 0x64 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x6] - adds r0, r4, 0 - adds r0, 0xC8 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x8] - movs r1, 0x96 - lsls r1, 1 - adds r0, r4, r1 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r7, 0xA] - b _080EEA46 - .pool -_080EE9E8: - ldr r4, =gPlayerParty - adds r0, r4, 0 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x4] - adds r4, 0x64 - adds r0, r4, 0 - b _080EEA3C - .pool -_080EEA00: - ldr r2, =gSaveBlock1Ptr - mov r8, r2 - ldr r6, =gSaveBlock2Ptr - ldr r0, [r6] - ldr r1, =0x00000caa - adds r0, r1 - ldrh r0, [r0] - movs r5, 0x64 - adds r1, r0, 0 - muls r1, r5 - movs r4, 0xEA - lsls r4, 1 - adds r1, r4 - ldr r0, [r2] - adds r0, r1 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x4] - ldr r0, [r6] - ldr r2, =0x00000cac - adds r0, r2 - ldrh r0, [r0] - adds r1, r0, 0 - muls r1, r5 - adds r1, r4 - mov r2, r8 - ldr r0, [r2] - adds r0, r1 -_080EEA3C: - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x6] -_080EEA46: - adds r0, r7, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r7, 0xC] -_080EEA52: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EE8C8 - - thumb_func_start sub_80EEA70 -sub_80EEA70: @ 80EEA70 - push {r4-r7,lr} - sub sp, 0x20 - movs r0, 0x26 - movs r1, 0 - bl sub_80EF46C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080EEA86 - b _080EEB8C -_080EEA86: - ldr r7, =gSaveBlock1Ptr - ldr r0, [r7] - ldr r1, =0x000027cc - adds r0, r1 - bl sub_80EFB08 - ldr r2, =gUnknown_030060BC - strb r0, [r2] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EEB8C - movs r1, 0 - ldrsb r1, [r2, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r7] - adds r5, r1, r0 - movs r1, 0 - movs r0, 0x26 - strb r0, [r5] - strb r1, [r5, 0x1] - adds r0, r5, 0 - adds r0, 0x13 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - ldr r0, =0x000040ec - bl VarGet - strh r0, [r5, 0x2] - bl sub_80E980C - ldr r1, =gStringVar1 - mov r0, sp - bl StringCopy - mov r0, sp - bl StripExtCtrlCodes - adds r0, r5, 0x4 - mov r1, sp - bl StringCopy - ldr r0, =0x000040ed - bl VarGet - strh r0, [r5, 0x10] - ldr r0, =0x000040ee - bl VarGet - adds r4, r0, 0 - ldr r0, =0x000040ef - bl VarGet - lsls r4, 16 - lsrs r4, 16 - lsls r0, 16 - adds r4, r0 - str r4, [r5, 0xC] - adds r0, r5, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r5, 0x1B] - cmp r0, 0x1 - beq _080EEB3A - ldr r4, [r7] - ldr r6, =0x00004054 - adds r0, r6, 0 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 5 - adds r4, r1 - ldr r0, =0x00001aa9 - adds r4, r0 - ldrb r0, [r4] - cmp r0, 0x1 - bne _080EEB70 -_080EEB3A: - movs r0, 0x1 - b _080EEB8A - .pool -_080EEB70: - adds r0, r6, 0 - bl VarGet - ldr r2, [r7] - lsls r0, 16 - lsrs r0, 16 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 5 - adds r2, r1 - ldr r1, =0x00001aa9 - adds r2, r1 - ldrb r0, [r2] -_080EEB8A: - strb r0, [r5, 0x1C] -_080EEB8C: - add sp, 0x20 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EEA70 - - thumb_func_start sub_80EEB98 -sub_80EEB98: @ 80EEB98 - push {r4-r7,lr} - movs r5, 0 - ldr r6, =gUnknown_0858D0EC - adds r7, r6, 0x2 - b _080EEBAE - .pool -_080EEBA8: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_080EEBAE: - cmp r5, 0x6 - bhi _080EEBCE - lsls r4, r5, 2 - adds r0, r4, r6 - ldrh r0, [r0] - bl VarGet - adds r4, r7 - lsls r0, 16 - lsrs r0, 16 - ldrh r4, [r4] - cmp r0, r4 - bcc _080EEBA8 - adds r0, r5, 0 - bl sub_80EEBF4 -_080EEBCE: - movs r5, 0 - ldr r4, =gUnknown_0858D0EC -_080EEBD2: - lsls r0, r5, 2 - adds r0, r4 - ldrh r0, [r0] - movs r1, 0 - bl VarSet - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x6 - bls _080EEBD2 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EEB98 - - thumb_func_start sub_80EEBF4 -sub_80EEBF4: @ 80EEBF4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r0, 0x25 - movs r1, 0x1 - bl sub_80EF46C - ldr r4, =gSaveBlock1Ptr - ldr r0, [r4] - ldr r1, =0x000027cc - adds r0, r1 - bl sub_80EFB08 - ldr r2, =gUnknown_030060BC - strb r0, [r2] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EEC60 - movs r1, 0 - ldrsb r1, [r2, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r4, [r4] - adds r4, r0 - movs r1, 0 - movs r0, 0x25 - strb r0, [r4] - strb r1, [r4, 0x1] - adds r0, r4, 0 - adds r0, 0x13 - ldr r1, =gSaveBlock2Ptr - ldr r1, [r1] - bl StringCopy - strb r5, [r4, 0x4] - ldr r1, =gUnknown_0858D0EC - lsls r0, r5, 2 - adds r0, r1 - ldrh r0, [r0] - bl VarGet - strh r0, [r4, 0x2] - adds r0, r4, 0 - bl sub_80EC9E8 - ldr r0, =gGameLanguage - ldrb r0, [r0] - strb r0, [r4, 0x5] -_080EEC60: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EEBF4 - - thumb_func_start sub_80EEC80 -sub_80EEC80: @ 80EEC80 - push {r4,lr} - ldr r4, =0x000040e6 - adds r0, r4, 0 - bl VarGet - adds r1, r0, 0 - adds r1, 0x1 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl VarSet - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EEC80 - - thumb_func_start sub_80EECA4 -sub_80EECA4: @ 80EECA4 - push {r4,lr} - ldr r4, =0x000040eb - adds r0, r4, 0 - bl VarGet - adds r1, r0, 0 - adds r1, 0x1 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl VarSet - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EECA4 - - thumb_func_start sub_80EECC8 -sub_80EECC8: @ 80EECC8 - push {r4,lr} - ldr r4, =0x000040e7 - adds r0, r4, 0 - bl VarGet - adds r1, r0, 0 - adds r1, 0x1 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl VarSet - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EECC8 - - thumb_func_start sub_80EECEC -sub_80EECEC: @ 80EECEC - push {r4,lr} - ldr r4, =0x000040e8 - adds r0, r4, 0 - bl VarGet - adds r1, r0, 0 - adds r1, 0x1 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl VarSet - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EECEC - - thumb_func_start sub_80EED10 -sub_80EED10: @ 80EED10 - push {r4,lr} - ldr r4, =0x000040e9 - adds r0, r4, 0 - bl VarGet - adds r1, r0, 0 - adds r1, 0x1 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl VarSet - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EED10 - - thumb_func_start sub_80EED34 -sub_80EED34: @ 80EED34 - push {r4,lr} - ldr r4, =0x000040ea - adds r0, r4, 0 - bl VarGet - adds r1, r0, 0 - ldr r0, =gSpecialVar_0x8006 - ldrh r0, [r0] - adds r1, r0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl VarSet - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EED34 - - thumb_func_start sub_80EED60 -sub_80EED60: @ 80EED60 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldr r5, =0x000040f1 - adds r0, r5, 0 - bl VarGet - adds r4, r0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - adds r1, r4, 0 - bl VarSet - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EED60 - - thumb_func_start sub_80EED88 -sub_80EED88: @ 80EED88 - push {r4-r7,lr} - ldr r0, =0x00000864 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _080EEE0C - ldr r6, =gSaveBlock1Ptr - ldr r0, [r6] - ldr r7, =0x00002b50 - adds r0, r7 - bl sub_80EEE30 - ldr r5, =gUnknown_030060BC - strb r0, [r5] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080EEE0C - ldr r0, =0x0000028f - bl sub_80EFB38 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EEE0C - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - ands r0, r1 - adds r4, r0, 0x1 - adds r0, r4, 0 - bl sub_80EF0E4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EEE0C - ldr r1, [r6] - movs r0, 0 - ldrsb r0, [r5, r0] - lsls r0, 2 - adds r1, r0 - adds r1, r7 - strb r4, [r1] - ldr r2, [r6] - movs r0, 0 - ldrsb r0, [r5, r0] - lsls r0, 2 - adds r0, r2, r0 - ldr r1, =0x00002b52 - adds r0, r1 - movs r1, 0x4 - strh r1, [r0] - movs r0, 0 - ldrsb r0, [r5, r0] - lsls r0, 2 - adds r2, r0 - ldr r0, =0x00002b51 - adds r2, r0 - movs r0, 0x1 - strb r0, [r2] -_080EEE0C: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EED88 - - thumb_func_start sub_80EEE30 -sub_80EEE30: @ 80EEE30 - push {lr} - adds r2, r0, 0 - movs r1, 0 -_080EEE36: - lsls r0, r1, 24 - asrs r1, r0, 24 - lsls r0, r1, 2 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080EEE48 - adds r0, r1, 0 - b _080EEE58 -_080EEE48: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - asrs r0, 24 - cmp r0, 0xF - ble _080EEE36 - movs r0, 0x1 - negs r0, r0 -_080EEE58: - pop {r1} - bx r1 - thumb_func_end sub_80EEE30 - - thumb_func_start sub_80EEE5C -sub_80EEE5C: @ 80EEE5C - push {r4,lr} - movs r4, 0 -_080EEE60: - adds r0, r4, 0 - bl sub_80EEE78 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xF - bls _080EEE60 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80EEE5C - - thumb_func_start sub_80EEE78 -sub_80EEE78: @ 80EEE78 - push {r4,lr} - lsls r0, 24 - ldr r3, =gSaveBlock1Ptr - ldr r1, [r3] - lsrs r0, 22 - adds r1, r0 - ldr r2, =0x00002b50 - adds r1, r2 - movs r2, 0 - strb r2, [r1] - ldr r1, [r3] - adds r1, r0 - ldr r4, =0x00002b51 - adds r1, r4 - strb r2, [r1] - ldr r1, [r3] - adds r1, r0 - ldr r0, =0x00002b52 - adds r1, r0 - strh r2, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EEE78 - - thumb_func_start sub_80EEEB8 -sub_80EEEB8: @ 80EEEB8 - push {r4-r7,lr} - movs r2, 0 - ldr r6, =gSaveBlock1Ptr -_080EEEBE: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - lsls r1, r2, 2 - adds r0, r1 - ldr r3, =0x00002b50 - adds r0, r3 - ldrb r0, [r0] - adds r5, r2, 0x1 - cmp r0, 0 - bne _080EEF12 - lsls r0, r5, 24 - b _080EEF0C - .pool -_080EEEE0: - ldr r3, [r6] - lsls r4, r2, 2 - adds r0, r3, r4 - ldr r7, =0x00002b50 - adds r0, r7 - ldrb r0, [r0] - cmp r0, 0 - beq _080EEF08 - adds r0, r3, r7 - adds r1, r0, r1 - adds r0, r4 - ldr r0, [r0] - str r0, [r1] - adds r0, r2, 0 - bl sub_80EEE78 - b _080EEF12 - .pool -_080EEF08: - adds r0, r2, 0x1 - lsls r0, 24 -_080EEF0C: - lsrs r2, r0, 24 - cmp r2, 0xF - bls _080EEEE0 -_080EEF12: - lsls r0, r5, 24 - lsrs r2, r0, 24 - cmp r2, 0xE - bls _080EEEBE - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80EEEB8 - - thumb_func_start sub_80EEF20 -sub_80EEF20: @ 80EEF20 - push {r4,lr} - movs r2, 0 - ldr r0, =gSaveBlock1Ptr - ldr r3, [r0] -_080EEF28: - lsls r0, r2, 2 - adds r1, r3, r0 - ldr r4, =0x00002b50 - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _080EEF58 - adds r4, 0x1 - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080EEF58 - adds r4, 0x1 - adds r0, r1, r4 - ldrh r0, [r0] - cmp r0, 0x2 - bhi _080EEF58 - adds r0, r2, 0 - b _080EEF64 - .pool -_080EEF58: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xF - bls _080EEF28 - movs r0, 0xFF -_080EEF64: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80EEF20 - - thumb_func_start sub_80EEF6C -sub_80EEF6C: @ 80EEF6C - push {r4,r5,lr} - bl sub_80EEF20 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xFF - bne _080EEF84 - ldr r1, =gScriptResult - movs r0, 0 - b _080EF01A - .pool -_080EEF84: - ldr r5, =gSaveBlock1Ptr - ldr r0, [r5] - lsls r4, r2, 2 - adds r1, r0, r4 - ldr r0, =0x00002b52 - adds r2, r1, r0 - ldrh r0, [r2] - cmp r0, 0 - bne _080EEFE8 - ldr r2, =0x00002b51 - adds r1, r2 - movs r0, 0x2 - strb r0, [r1] - ldr r0, =gLocalTime - ldrb r0, [r0, 0x2] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x13 - bgt _080EEFC8 - ldr r1, =gUnknown_0858D11C - ldr r0, [r5] - adds r0, r4 - subs r2, 0x1 - b _080EEFD0 - .pool -_080EEFC8: - ldr r1, =gUnknown_0858D130 - ldr r0, [r5] - adds r0, r4 - ldr r2, =0x00002b50 -_080EEFD0: - adds r0, r2 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl box_related_two__2 - b _080EF016 - .pool -_080EEFE8: - ldrh r1, [r2] - ldr r0, =gStringVar1 - movs r2, 0 - movs r3, 0x1 - bl ConvertIntToDecimalStringN - ldr r0, [r5] - adds r0, r4 - ldr r1, =0x00002b51 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - ldr r1, =gUnknown_0858D108 - ldr r0, [r5] - adds r0, r4 - ldr r2, =0x00002b50 - adds r0, r2 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl box_related_two__2 -_080EF016: - ldr r1, =gScriptResult - movs r0, 0x1 -_080EF01A: - strh r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EEF6C - - thumb_func_start GetPriceReduction -GetPriceReduction: @ 80EF038 - push {r4,r5,lr} - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0 - bne _080EF048 - b _080EF08A -_080EF044: - movs r0, 0x1 - b _080EF08C -_080EF048: - movs r2, 0 - ldr r4, =gSaveBlock1Ptr -_080EF04C: - ldr r1, [r4] - lsls r0, r2, 2 - adds r1, r0 - ldr r5, =0x00002b50 - adds r0, r1, r5 - ldrb r0, [r0] - cmp r0, r3 - bne _080EF080 - ldr r2, =0x00002b51 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x2 - bne _080EF08A - adds r0, r3, 0 - bl IsPriceDiscounted - lsls r0, 24 - cmp r0, 0 - bne _080EF044 - b _080EF08A - .pool -_080EF080: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xF - bls _080EF04C -_080EF08A: - movs r0, 0 -_080EF08C: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end GetPriceReduction - - thumb_func_start IsPriceDiscounted -IsPriceDiscounted: @ 80EF094 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080EF0A6 - cmp r0, 0x3 - beq _080EF0C8 -_080EF0A2: - movs r0, 0x1 - b _080EF0D6 -_080EF0A6: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldrh r1, [r0, 0x4] - movs r0, 0x80 - lsls r0, 1 - cmp r1, r0 - bne _080EF0D4 - ldr r0, =gScriptLastTalked - ldrh r0, [r0] - cmp r0, 0x19 - beq _080EF0A2 - b _080EF0D4 - .pool -_080EF0C8: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldrh r1, [r0, 0x4] - ldr r0, =0x0000150d - cmp r1, r0 - beq _080EF0A2 -_080EF0D4: - movs r0, 0 -_080EF0D6: - pop {r1} - bx r1 - .pool - thumb_func_end IsPriceDiscounted - - thumb_func_start sub_80EF0E4 -sub_80EF0E4: @ 80EF0E4 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _080EF0F2 -_080EF0EE: - movs r0, 0x1 - b _080EF112 -_080EF0F2: - movs r1, 0 - ldr r0, =gSaveBlock1Ptr - ldr r3, [r0] - ldr r4, =0x00002b50 -_080EF0FA: - lsls r0, r1, 2 - adds r0, r3, r0 - adds r0, r4 - ldrb r0, [r0] - cmp r0, r2 - beq _080EF0EE - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xF - bls _080EF0FA - movs r0, 0 -_080EF112: - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_80EF0E4 - - thumb_func_start sub_80EF120 -sub_80EF120: @ 80EF120 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 16 - lsrs r7, r0, 16 - movs r6, 0 - ldr r0, =gSaveBlock1Ptr - mov r8, r0 -_080EF130: - mov r1, r8 - ldr r0, [r1] - lsls r1, r6, 2 - adds r2, r0, r1 - ldr r3, =0x00002b50 - adds r0, r2, r3 - ldrb r0, [r0] - adds r4, r1, 0 - cmp r0, 0 - beq _080EF196 - ldr r1, =0x00002b52 - adds r0, r2, r1 - ldrh r0, [r0] - cmp r0, r7 - bcs _080EF164 - adds r0, r6, 0 - bl sub_80EEE78 - b _080EF196 - .pool -_080EF164: - ldr r5, =0x00002b51 - adds r0, r2, r5 - ldrb r0, [r0] - cmp r0, 0 - bne _080EF186 - ldr r0, =0x00000864 - bl FlagGet - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x1 - bne _080EF186 - mov r2, r8 - ldr r0, [r2] - adds r0, r4 - adds r0, r5 - strb r1, [r0] -_080EF186: - mov r3, r8 - ldr r1, [r3] - adds r1, r4 - ldr r0, =0x00002b52 - adds r1, r0 - ldrh r0, [r1] - subs r0, r7 - strh r0, [r1] -_080EF196: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0xF - bls _080EF130 - bl sub_80EEEB8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EF120 - - thumb_func_start sub_80EF1BC -sub_80EF1BC: @ 80EF1BC - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - adds r2, r1, 0 - cmp r1, 0x1 - beq _080EF1FC - cmp r1, 0x1 - bgt _080EF1D6 - cmp r1, 0 - beq _080EF1E0 - b _080EF244 -_080EF1D6: - cmp r2, 0x2 - beq _080EF218 - cmp r2, 0x3 - beq _080EF234 - b _080EF244 -_080EF1E0: - ldr r1, =gUnknown_0858D144 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =gUnknown_0858BAF0 - ldr r1, [r1, 0x14] - bl StringCopy - b _080EF244 - .pool -_080EF1FC: - ldr r1, =gUnknown_0858D144 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =gUnknown_0858BAF0 - ldr r1, [r1, 0x18] - bl StringCopy - b _080EF244 - .pool -_080EF218: - ldr r1, =gUnknown_0858D144 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =gUnknown_0858BAF0 - ldr r1, [r1, 0x1C] - bl StringCopy - b _080EF244 - .pool -_080EF234: - ldr r1, =gUnknown_0858D144 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =gUnknown_0858BAF0 - ldr r1, [r1, 0x20] - bl StringCopy -_080EF244: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EF1BC - - thumb_func_start CopyContestCategoryToStringVar -@ void CopyContestCategoryToStringVar(u8 stringVarIndex, u8 contestCategoryId) -CopyContestCategoryToStringVar: @ 80EF250 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 24 - lsrs r0, r1, 24 - cmp r0, 0x4 - bhi _080EF300 - lsls r0, 2 - ldr r1, =_080EF26C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080EF26C: - .4byte _080EF280 - .4byte _080EF29C - .4byte _080EF2B8 - .4byte _080EF2D4 - .4byte _080EF2F0 -_080EF280: - ldr r1, =gUnknown_0858D144 - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =gUnknown_0858BAF0 - ldr r1, [r1] - bl StringCopy - b _080EF300 - .pool -_080EF29C: - ldr r1, =gUnknown_0858D144 - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =gUnknown_0858BAF0 - ldr r1, [r1, 0x4] - bl StringCopy - b _080EF300 - .pool -_080EF2B8: - ldr r1, =gUnknown_0858D144 - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =gUnknown_0858BAF0 - ldr r1, [r1, 0x8] - bl StringCopy - b _080EF300 - .pool -_080EF2D4: - ldr r1, =gUnknown_0858D144 - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =gUnknown_0858BAF0 - ldr r1, [r1, 0xC] - bl StringCopy - b _080EF300 - .pool -_080EF2F0: - ldr r1, =gUnknown_0858D144 - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, =gUnknown_0858BAF0 - ldr r1, [r1, 0x10] - bl StringCopy -_080EF300: - pop {r0} - bx r0 - .pool - thumb_func_end CopyContestCategoryToStringVar - - thumb_func_start SetContestCategoryStringVarForInterview -@ void SetContestCategoryStringVarForInterview() -SetContestCategoryStringVarForInterview: @ 80EF30C - push {lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r1, r0 - ldrb r1, [r1, 0x13] - lsls r1, 29 - lsrs r1, 29 - movs r0, 0x1 - bl CopyContestCategoryToStringVar - pop {r0} - bx r0 - .pool - thumb_func_end SetContestCategoryStringVarForInterview - - thumb_func_start sub_80EF340 -sub_80EF340: @ 80EF340 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - bl sub_80EF370 - adds r3, r0, 0 - ldr r0, =gUnknown_0858D144 - lsls r4, 2 - adds r4, r0 - ldr r0, [r4] - lsls r3, 24 - lsrs r3, 24 - adds r1, r5, 0 - movs r2, 0 - bl ConvertIntToDecimalStringN - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EF340 - - thumb_func_start sub_80EF370 -sub_80EF370: @ 80EF370 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0xA - bl __divsi3 - cmp r0, 0 - beq _080EF3FC - adds r0, r4, 0 - movs r1, 0x64 - bl __divsi3 - cmp r0, 0 - bne _080EF38E - movs r0, 0x2 - b _080EF406 -_080EF38E: - movs r1, 0xFA - lsls r1, 2 - adds r0, r4, 0 - bl __divsi3 - cmp r0, 0 - bne _080EF3A0 - movs r0, 0x3 - b _080EF406 -_080EF3A0: - ldr r1, =0x00002710 - adds r0, r4, 0 - bl __divsi3 - cmp r0, 0 - bne _080EF3B4 - movs r0, 0x4 - b _080EF406 - .pool -_080EF3B4: - ldr r1, =0x000186a0 - adds r0, r4, 0 - bl __divsi3 - cmp r0, 0 - bne _080EF3C8 - movs r0, 0x5 - b _080EF406 - .pool -_080EF3C8: - ldr r1, =0x000f4240 - adds r0, r4, 0 - bl __divsi3 - cmp r0, 0 - bne _080EF3DC - movs r0, 0x6 - b _080EF406 - .pool -_080EF3DC: - ldr r1, =0x00989680 - adds r0, r4, 0 - bl __divsi3 - cmp r0, 0 - bne _080EF3F0 - movs r0, 0x7 - b _080EF406 - .pool -_080EF3F0: - ldr r1, =0x05f5e100 - adds r0, r4, 0 - bl __divsi3 - cmp r0, 0 - beq _080EF404 -_080EF3FC: - movs r0, 0x1 - b _080EF406 - .pool -_080EF404: - movs r0, 0x8 -_080EF406: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80EF370 - - thumb_func_start sub_80EF40C -sub_80EF40C: @ 80EF40C - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r1, 0 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - movs r7, 0 - movs r5, 0 -_080EF41E: - lsls r4, r5, 1 - adds r0, r6, 0x6 - adds r1, r0, r4 - ldrh r0, [r1] - cmp r0, 0 - beq _080EF43E - bl itemid_get_market_price - lsls r0, 16 - lsrs r0, 16 - adds r1, r6, 0 - adds r1, 0xC - adds r1, r4 - ldrh r1, [r1] - muls r0, r1 - adds r7, r0 -_080EF43E: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x2 - bls _080EF41E - ldrb r0, [r6, 0x2] - cmp r0, 0x1 - bne _080EF458 - asrs r1, r7, 1 - mov r0, r8 - bl sub_80EF340 - b _080EF460 -_080EF458: - mov r0, r8 - adds r1, r7, 0 - bl sub_80EF340 -_080EF460: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80EF40C - - thumb_func_start sub_80EF46C -sub_80EF46C: @ 80EF46C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - lsls r1, 24 - lsrs r1, 24 - mov r9, r1 - ldr r5, =gSaveBlock1Ptr - ldr r0, [r5] - ldr r4, =0x000027cc - adds r0, r4 - mov r8, r0 - bl sub_80F0020 - adds r7, r0, 0 - movs r6, 0x5 -_080EF494: - lsls r0, r6, 3 - adds r0, r6 - lsls r0, 2 - mov r2, r8 - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, r10 - bne _080EF4E4 - movs r3, 0xFF - adds r0, r7, 0 - ands r0, r3 - adds r2, r1, 0 - adds r2, 0x22 - ldrb r2, [r2] - cmp r0, r2 - bne _080EF4E4 - lsrs r0, r7, 8 - ands r0, r3 - adds r1, 0x23 - ldrb r1, [r1] - cmp r0, r1 - bne _080EF4E4 - mov r0, r9 - cmp r0, 0x1 - bne _080EF4D8 - ldr r0, [r5] - adds r0, r4 - adds r1, r6, 0 - bl sub_80EF910 - ldr r0, [r5] - adds r0, r4 - bl sub_80EF93C -_080EF4D8: - movs r0, 0x1 - b _080EF4F0 - .pool -_080EF4E4: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x17 - bls _080EF494 - movs r0, 0 -_080EF4F0: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80EF46C - - thumb_func_start sub_80EF500 -sub_80EF500: @ 80EF500 - push {r4-r7,lr} - movs r2, 0 -_080EF504: - adds r1, r2, 0x1 - lsls r0, r1, 24 - lsrs r5, r0, 24 - adds r7, r1, 0 - cmp r5, 0x2 - bhi _080EF53C - ldr r6, =gUnknown_02039F80 - lsls r0, r2, 2 - adds r4, r0, r6 -_080EF516: - lsls r0, r5, 2 - adds r3, r0, r6 - ldrh r0, [r4, 0x2] - ldrh r1, [r3, 0x2] - cmp r0, r1 - bcs _080EF532 - ldrh r1, [r4] - adds r2, r0, 0 - ldrh r0, [r3] - strh r0, [r4] - ldrh r0, [r3, 0x2] - strh r0, [r4, 0x2] - strh r1, [r3] - strh r2, [r3, 0x2] -_080EF532: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x2 - bls _080EF516 -_080EF53C: - lsls r0, r7, 24 - lsrs r2, r0, 24 - cmp r2, 0x1 - bls _080EF504 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EF500 - - thumb_func_start sub_80EF550 -sub_80EF550: @ 80EF550 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - movs r1, 0 - ldr r5, =gSaveBlock1Ptr - ldr r4, =0x000027cc -_080EF55C: - ldr r3, [r5] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r2, r3, r0 - adds r0, r2, r4 - ldrb r0, [r0] - cmp r0, r6 - bne _080EF5A4 - ldr r6, =0x000027cd - adds r0, r2, r6 - ldrb r2, [r0] - cmp r2, 0x1 - bne _080EF590 - ldr r0, =gScriptResult - strh r2, [r0] - b _080EF5B2 - .pool -_080EF590: - adds r0, r3, r4 - bl sub_80EF910 - ldr r0, [r5] - adds r0, r4 - bl sub_80EF93C - bl sub_80EFA88 - b _080EF5B2 -_080EF5A4: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x4 - bls _080EF55C - bl sub_80EFA88 -_080EF5B2: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80EF550 - - thumb_func_start InterviewBefore -InterviewBefore: @ 80EF5B8 - push {lr} - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gSpecialVar_0x8005 - ldrh r0, [r0] - subs r0, 0x1 - cmp r0, 0xA - bhi _080EF646 - lsls r0, 2 - ldr r1, =_080EF5E0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080EF5E0: - .4byte _080EF60C - .4byte _080EF612 - .4byte _080EF618 - .4byte _080EF61E - .4byte _080EF624 - .4byte _080EF62A - .4byte _080EF630 - .4byte _080EF636 - .4byte _080EF63C - .4byte _080EF646 - .4byte _080EF642 -_080EF60C: - bl sub_80EF64C - b _080EF646 -_080EF612: - bl sub_80EF6C4 - b _080EF646 -_080EF618: - bl sub_80EF704 - b _080EF646 -_080EF61E: - bl sub_80EF79C - b _080EF646 -_080EF624: - bl sub_80EF7A8 - b _080EF646 -_080EF62A: - bl sub_80EF7B4 - b _080EF646 -_080EF630: - bl sub_80EF80C - b _080EF646 -_080EF636: - bl sub_80EF7F4 - b _080EF646 -_080EF63C: - bl sub_80EF800 - b _080EF646 -_080EF642: - bl sub_80EF84C -_080EF646: - pop {r0} - bx r0 - thumb_func_end InterviewBefore - - thumb_func_start sub_80EF64C -sub_80EF64C: @ 80EF64C - push {r4,lr} - movs r0, 0x1 - bl sub_80EF550 - ldr r0, =gScriptResult - ldrh r0, [r0] - cmp r0, 0 - bne _080EF6A0 - ldr r4, =gStringVar1 - bl sub_8139688 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0xB - movs r2, 0 - bl GetMonData - movs r1, 0xB - muls r1, r0 - ldr r0, =gSpeciesNames - adds r1, r0 - adds r0, r4, 0 - bl StringCopy - ldr r2, =gSaveBlock1Ptr - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, [r2] - adds r0, r1 - ldr r1, =0x000027d0 - adds r0, r1 - movs r1, 0x6 - bl sub_811F88C -_080EF6A0: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EF64C - - thumb_func_start sub_80EF6C4 -sub_80EF6C4: @ 80EF6C4 - push {lr} - movs r0, 0x2 - bl sub_80EF550 - ldr r0, =gScriptResult - ldrh r0, [r0] - cmp r0, 0 - bne _080EF6F0 - ldr r2, =gSaveBlock1Ptr - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, [r2] - adds r0, r1 - ldr r1, =0x000027d0 - adds r0, r1 - movs r1, 0x6 - bl sub_811F88C -_080EF6F0: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EF6C4 - - thumb_func_start sub_80EF704 -sub_80EF704: @ 80EF704 - push {r4-r6,lr} - movs r0, 0x3 - bl sub_80EF550 - ldr r0, =gScriptResult - ldrh r0, [r0] - cmp r0, 0 - bne _080EF774 - ldr r6, =gStringVar1 - bl sub_8139688 - lsls r0, 24 - lsrs r0, 24 - movs r5, 0x64 - muls r0, r5 - ldr r4, =gPlayerParty - adds r0, r4 - movs r1, 0xB - movs r2, 0 - bl GetMonData - movs r1, 0xB - muls r1, r0 - ldr r0, =gSpeciesNames - adds r1, r0 - adds r0, r6, 0 - bl StringCopy - bl sub_8139688 - lsls r0, 24 - lsrs r0, 24 - muls r0, r5 - adds r0, r4 - ldr r4, =gStringVar2 - movs r1, 0x2 - adds r2, r4, 0 - bl GetMonData - adds r0, r4, 0 - bl StringGetEnd10 - ldr r2, =gSaveBlock1Ptr - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, [r2] - adds r0, r1 - ldr r1, =0x000027e8 - adds r0, r1 - movs r1, 0x2 - bl sub_811F88C -_080EF774: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EF704 - - thumb_func_start sub_80EF79C -sub_80EF79C: @ 80EF79C - ldr r1, =gScriptResult - movs r0, 0x1 - strh r0, [r1] - bx lr - .pool - thumb_func_end sub_80EF79C - - thumb_func_start sub_80EF7A8 -sub_80EF7A8: @ 80EF7A8 - push {lr} - movs r0, 0x5 - bl sub_80EF550 - pop {r0} - bx r0 - thumb_func_end sub_80EF7A8 - - thumb_func_start sub_80EF7B4 -sub_80EF7B4: @ 80EF7B4 - push {lr} - movs r0, 0x6 - bl sub_80EF550 - ldr r0, =gScriptResult - ldrh r0, [r0] - cmp r0, 0 - bne _080EF7E0 - ldr r2, =gSaveBlock1Ptr - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, [r2] - adds r0, r1 - ldr r1, =0x000027d0 - adds r0, r1 - movs r1, 0x2 - bl sub_811F88C -_080EF7E0: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EF7B4 - - thumb_func_start sub_80EF7F4 -sub_80EF7F4: @ 80EF7F4 - push {lr} - movs r0, 0x8 - bl sub_80EF550 - pop {r0} - bx r0 - thumb_func_end sub_80EF7F4 - - thumb_func_start sub_80EF800 -sub_80EF800: @ 80EF800 - push {lr} - movs r0, 0x9 - bl sub_80EF550 - pop {r0} - bx r0 - thumb_func_end sub_80EF800 - - thumb_func_start sub_80EF80C -sub_80EF80C: @ 80EF80C - push {lr} - movs r0, 0x7 - bl sub_80EF550 - ldr r0, =gScriptResult - ldrh r0, [r0] - cmp r0, 0 - bne _080EF838 - ldr r2, =gSaveBlock1Ptr - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, [r2] - adds r0, r1 - ldr r1, =0x000027e4 - adds r0, r1 - movs r1, 0x1 - bl sub_811F88C -_080EF838: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EF80C - - thumb_func_start sub_80EF84C -sub_80EF84C: @ 80EF84C - push {lr} - movs r0, 0xB - bl sub_80EF550 - ldr r0, =gScriptResult - ldrh r0, [r0] - cmp r0, 0 - bne _080EF878 - ldr r2, =gSaveBlock1Ptr - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, [r2] - adds r0, r1 - ldr r1, =0x000027e0 - adds r0, r1 - movs r1, 0x1 - bl sub_811F88C -_080EF878: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EF84C - - thumb_func_start sub_80EF88C -sub_80EF88C: @ 80EF88C - push {r4-r6,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r1, r0 - ldr r0, =gPlayerParty - adds r5, r1, r0 - ldr r6, =gStringVar1 - adds r0, r5, 0 - movs r1, 0x2 - adds r2, r6, 0 - bl GetMonData - mov r4, sp - adds r0, r5, 0 - movs r1, 0x3 - mov r2, sp - bl GetMonData - strb r0, [r4] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _080EF8EC - adds r0, r5, 0 - movs r1, 0xB - movs r2, 0 - bl GetMonData - movs r1, 0xB - muls r0, r1 - ldr r1, =gSpeciesNames - adds r0, r1 - adds r1, r6, 0 - bl StringCompare - cmp r0, 0 - bne _080EF8EC - movs r0, 0 - b _080EF8EE - .pool -_080EF8EC: - movs r0, 0x1 -_080EF8EE: - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80EF88C - - thumb_func_start sub_80EF8F8 -sub_80EF8F8: @ 80EF8F8 - push {lr} - bl sub_8139688 - lsls r0, 24 - lsrs r0, 24 - bl sub_80EF88C - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_80EF8F8 - - thumb_func_start sub_80EF910 -sub_80EF910: @ 80EF910 - push {lr} - lsls r1, 24 - lsrs r1, 24 - lsls r2, r1, 3 - adds r2, r1 - lsls r2, 2 - adds r2, r0 - movs r0, 0 - strb r0, [r2] - strb r0, [r2, 0x1] - movs r1, 0 - adds r2, 0x2 - movs r3, 0 -_080EF92A: - adds r0, r2, r1 - strb r3, [r0] - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x21 - bls _080EF92A - pop {r0} - bx r0 - thumb_func_end sub_80EF910 - - thumb_func_start sub_80EF93C -sub_80EF93C: @ 80EF93C - push {r4-r7,lr} - adds r4, r0, 0 - movs r5, 0 -_080EF942: - lsls r0, r5, 3 - adds r0, r5 - lsls r1, r0, 2 - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _080EF986 - adds r0, r5, 0x1 - b _080EF97E -_080EF954: - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - adds r3, r0, r4 - ldrb r0, [r3] - cmp r0, 0 - beq _080EF97C - adds r1, r4 - adds r0, r3, 0 - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - adds r0, r4, 0 - adds r1, r2, 0 - bl sub_80EF910 - b _080EF986 -_080EF97C: - adds r0, r2, 0x1 -_080EF97E: - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x4 - bls _080EF954 -_080EF986: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x3 - bls _080EF942 - movs r5, 0x5 -_080EF992: - lsls r0, r5, 3 - adds r0, r5 - lsls r1, r0, 2 - adds r0, r1, r4 - ldrb r0, [r0] - adds r5, 0x1 - cmp r0, 0 - bne _080EF9D8 - lsls r0, r5, 24 - b _080EF9D2 -_080EF9A6: - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - adds r3, r0, r4 - ldrb r0, [r3] - cmp r0, 0 - beq _080EF9CE - adds r1, r4 - adds r0, r3, 0 - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - adds r0, r4, 0 - adds r1, r2, 0 - bl sub_80EF910 - b _080EF9D8 -_080EF9CE: - adds r0, r2, 0x1 - lsls r0, 24 -_080EF9D2: - lsrs r2, r0, 24 - cmp r2, 0x17 - bls _080EF9A6 -_080EF9D8: - lsls r0, r5, 24 - lsrs r5, r0, 24 - cmp r5, 0x17 - bls _080EF992 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80EF93C - - thumb_func_start sub_80EF9E8 -sub_80EF9E8: @ 80EF9E8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r0, r1, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r0, 16 - lsrs r0, 16 - bl sub_80EFA24 - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - ldr r0, =gUnknown_0858D144 - lsls r4, 2 - adds r4, r0 - ldr r0, [r4] - movs r1, 0xB - muls r1, r5 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sub_80EF9E8 - - thumb_func_start sub_80EFA24 -sub_80EFA24: @ 80EFA24 - push {r4-r6,lr} - lsls r0, 16 - lsrs r5, r0, 16 - bl Random - lsls r0, 16 - lsrs r0, 16 - ldr r1, =0x0000019b - bl __umodsi3 - adds r0, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - adds r6, r4, 0 - b _080EFA62 - .pool -_080EFA48: - cmp r4, 0x1 - bne _080EFA54 - ldr r4, =0x0000019b - b _080EFA5A - .pool -_080EFA54: - subs r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 -_080EFA5A: - cmp r4, r6 - bne _080EFA62 - adds r4, r5, 0 - b _080EFA7E -_080EFA62: - adds r0, r4, 0 - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0 - bl GetSetPokedexFlag - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x1 - bne _080EFA48 - cmp r4, r5 - beq _080EFA48 -_080EFA7E: - adds r0, r4, 0 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80EFA24 - - thumb_func_start sub_80EFA88 -sub_80EFA88: @ 80EFA88 - push {lr} - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x000027cc - adds r0, r1 - bl sub_80EFADC - ldr r1, =gUnknown_030060BC - strb r0, [r1] - ldr r2, =gSpecialVar_0x8006 - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - strh r1, [r2] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _080EFACC - ldr r1, =gScriptResult - movs r0, 0x1 - b _080EFAD0 - .pool -_080EFACC: - ldr r1, =gScriptResult - movs r0, 0 -_080EFAD0: - strh r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EFA88 - - thumb_func_start sub_80EFADC -sub_80EFADC: @ 80EFADC - push {lr} - adds r2, r0, 0 - movs r1, 0 -_080EFAE2: - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080EFAF6 - lsls r0, r1, 24 - asrs r0, 24 - b _080EFB04 -_080EFAF6: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x4 - bls _080EFAE2 - movs r0, 0x1 - negs r0, r0 -_080EFB04: - pop {r1} - bx r1 - thumb_func_end sub_80EFADC - - thumb_func_start sub_80EFB08 -sub_80EFB08: @ 80EFB08 - push {lr} - adds r2, r0, 0 - movs r1, 0x5 -_080EFB0E: - lsls r0, r1, 24 - asrs r1, r0, 24 - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080EFB24 - adds r0, r1, 0 - b _080EFB34 -_080EFB24: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - asrs r0, 24 - cmp r0, 0x17 - ble _080EFB0E - movs r0, 0x1 - negs r0, r0 -_080EFB34: - pop {r1} - bx r1 - thumb_func_end sub_80EFB08 - - thumb_func_start sub_80EFB38 -sub_80EFB38: @ 80EFB38 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - bl Random - lsls r0, 16 - lsrs r0, 16 - cmp r0, r4 - bls _080EFB50 - movs r0, 0x1 - b _080EFB52 -_080EFB50: - movs r0, 0 -_080EFB52: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80EFB38 - - thumb_func_start sub_80EFB58 -sub_80EFB58: @ 80EFB58 - push {r4-r6,lr} - adds r4, r0, 0 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x6 - bl __umodsi3 - lsls r0, 24 - lsrs r2, r0, 24 - adds r5, r4, 0x4 - ldr r6, =0x0000ffff - b _080EFB7E - .pool -_080EFB78: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 -_080EFB7E: - cmp r2, 0x6 - bne _080EFB84 - movs r2, 0 -_080EFB84: - lsls r1, r2, 1 - adds r0, r5, r1 - ldrh r0, [r0] - adds r3, r4, 0x4 - cmp r0, r6 - beq _080EFB78 - ldr r0, =gStringVar3 - adds r1, r3, r1 - ldrh r1, [r1] - bl CopyEasyChatWord - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EFB58 - - thumb_func_start sub_80EFBA4 -sub_80EFBA4: @ 80EFBA4 - push {lr} - adds r2, r0, 0 - movs r3, 0 - movs r1, 0 - ldrb r0, [r2, 0x4] - cmp r0, 0xFF - beq _080EFBD0 - adds r2, 0x4 -_080EFBB4: - adds r0, r2, r1 - ldrb r0, [r0] - adds r0, r3, r0 - lsls r0, 16 - lsrs r3, r0, 16 - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xA - bhi _080EFBD0 - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0xFF - bne _080EFBB4 -_080EFBD0: - movs r0, 0x7 - ands r3, r0 - adds r0, r3, 0 - pop {r1} - bx r1 - thumb_func_end sub_80EFBA4 - - thumb_func_start sub_80EFBDC -sub_80EFBDC: @ 80EFBDC - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x10 - ldr r4, [sp, 0x2C] - ldr r5, [sp, 0x30] - mov r8, r5 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r1, 24 - lsrs r5, r1, 24 - lsls r2, 24 - lsrs r6, r2, 24 - lsls r3, 16 - lsrs r3, 16 - lsls r4, 16 - lsrs r4, 16 - movs r2, 0 - movs r7, 0xFF -_080EFC06: - mov r1, sp - adds r0, r1, r2 - ldrb r1, [r0] - orrs r1, r7 - strb r1, [r0] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x2 - bls _080EFC06 - cmp r3, 0 - bne _080EFC72 - mov r4, r8 - adds r4, 0xF - adds r0, r4, 0 - bl StringLength - lsls r0, 16 - lsrs r2, r0, 16 - cmp r6, 0 - bne _080EFC36 - mov r0, sp - adds r1, r4, r5 - b _080EFC40 -_080EFC36: - cmp r6, 0x1 - bne _080EFC46 - mov r0, sp - subs r1, r2, r5 - adds r1, r4, r1 -_080EFC40: - ldrb r1, [r1] - strb r1, [r0] - b _080EFC6C -_080EFC46: - cmp r6, 0x2 - bne _080EFC56 - mov r1, sp - adds r0, r4, r5 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r5, 0x1 - b _080EFC66 -_080EFC56: - mov r1, sp - subs r0, r2, 0x2 - subs r0, r5 - adds r0, r4, r0 - ldrb r0, [r0] - strb r0, [r1] - subs r0, r2, 0x1 - subs r0, r5 -_080EFC66: - adds r0, r4, r0 - ldrb r0, [r0] - strb r0, [r1, 0x1] -_080EFC6C: - mov r2, r8 - ldrb r1, [r2, 0x1E] - b _080EFCC8 -_080EFC72: - cmp r3, 0x1 - bne _080EFCD0 - mov r4, r8 - adds r4, 0x4 - adds r0, r4, 0 - bl StringLength - lsls r0, 16 - lsrs r2, r0, 16 - cmp r6, 0 - bne _080EFC8E - mov r0, sp - adds r1, r4, r5 - b _080EFC98 -_080EFC8E: - cmp r6, 0x1 - bne _080EFC9E - mov r0, sp - subs r1, r2, r5 - adds r1, r4, r1 -_080EFC98: - ldrb r1, [r1] - strb r1, [r0] - b _080EFCC4 -_080EFC9E: - cmp r6, 0x2 - bne _080EFCAE - mov r1, sp - adds r0, r4, r5 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r5, 0x1 - b _080EFCBE -_080EFCAE: - mov r1, sp - subs r0, r2, 0x2 - subs r0, r5 - adds r0, r4, r0 - ldrb r0, [r0] - strb r0, [r1] - subs r0, r2, 0x1 - subs r0, r5 -_080EFCBE: - adds r0, r4, r0 - ldrb r0, [r0] - strb r0, [r1, 0x1] -_080EFCC4: - mov r5, r8 - ldrb r1, [r5, 0x1F] -_080EFCC8: - mov r0, sp - bl ConvertInternationalString - b _080EFD30 -_080EFCD0: - movs r0, 0xB - muls r4, r0 - ldr r7, =gSpeciesNames - adds r0, r4, r7 - bl StringLength - lsls r0, 16 - lsrs r2, r0, 16 - cmp r6, 0 - bne _080EFCF0 - mov r0, sp - adds r1, r5, r4 - b _080EFCFA - .pool -_080EFCF0: - cmp r6, 0x1 - bne _080EFD02 - mov r0, sp - subs r1, r2, r5 - adds r1, r4 -_080EFCFA: - adds r1, r7 - ldrb r1, [r1] - strb r1, [r0] - b _080EFD30 -_080EFD02: - cmp r6, 0x2 - bne _080EFD16 - mov r1, sp - adds r0, r5, r4 - adds r0, r7 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r4, 0x1 - adds r0, r5, r0 - b _080EFD2A -_080EFD16: - mov r1, sp - subs r0, r2, 0x2 - subs r0, r5 - adds r0, r4 - adds r0, r7 - ldrb r0, [r0] - strb r0, [r1] - subs r0, r2, 0x1 - subs r0, r5 - adds r0, r4 -_080EFD2A: - adds r0, r7 - ldrb r0, [r0] - strb r0, [r1, 0x1] -_080EFD30: - ldr r0, =gUnknown_0858D144 - mov r2, r9 - lsls r1, r2, 2 - adds r1, r0 - ldr r0, [r1] - mov r1, sp - bl StringCopy - add sp, 0x10 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EFBDC - - thumb_func_start sub_80EFD54 -sub_80EFD54: @ 80EFD54 - push {r4,lr} - movs r1, 0 - ldr r0, =gSaveBlock1Ptr - ldr r3, [r0] - ldr r0, =gSpecialVar_0x8004 - ldrh r2, [r0] - ldr r4, =0x000027cc -_080EFD62: - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r3, r0 - adds r0, r4 - ldrb r0, [r0] - cmp r0, r2 - bne _080EFD84 - movs r0, 0x1 - b _080EFD90 - .pool -_080EFD84: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x4 - bls _080EFD62 - movs r0, 0 -_080EFD90: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80EFD54 - - thumb_func_start sub_80EFD98 -sub_80EFD98: @ 80EFD98 - push {r4,lr} - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r4, =gStringVar1 - movs r1, 0x2 - adds r2, r4, 0 - bl GetMonData - ldr r0, =gStringVar3 - adds r1, r4, 0 - bl StringCompare - cmp r0, 0 - beq _080EFDD4 - bl sub_80ED320 - movs r0, 0x1 - b _080EFDD6 - .pool -_080EFDD4: - movs r0, 0 -_080EFDD6: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80EFD98 - - thumb_func_start sub_80EFDDC -sub_80EFDDC: @ 80EFDDC - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0x8 - ldr r0, =gSpecialVar_0x8004 - mov r9, r0 - ldrh r0, [r0] - movs r1, 0x64 - mov r8, r1 - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - ldr r6, =gPlayerParty - adds r0, r6 - ldr r2, =gStringVar3 - movs r1, 0x2 - bl GetMonData - mov r1, r9 - ldrh r0, [r1] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - ldr r1, =gStringVar2 - mov r10, r1 - movs r1, 0x2 - mov r2, r10 - bl GetMonData - mov r1, r9 - ldrh r0, [r1] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - movs r1, 0xB - movs r2, 0 - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - mov r1, r9 - ldrh r0, [r1] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - bl GetMonGender - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - mov r1, r9 - ldrh r0, [r1] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - movs r1, 0 - movs r2, 0 - bl GetMonData - str r0, [sp] - ldr r0, =c2_080CC144 - str r0, [sp, 0x4] - movs r0, 0x3 - mov r1, r10 - adds r2, r5, 0 - adds r3, r4, 0 - bl DoNamingScreen - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EFDDC - - thumb_func_start c2_080CC144 -c2_080CC144: @ 80EFE98 - push {lr} - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r2, =gStringVar2 - movs r1, 0x2 - bl SetMonData - bl c2_exit_to_overworld_1_continue_scripts_restart_music - pop {r0} - bx r0 - .pool - thumb_func_end c2_080CC144 - - thumb_func_start sub_80EFEC4 -sub_80EFEC4: @ 80EFEC4 - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x8 - ldr r0, =gSpecialVar_0x8012 - ldrb r0, [r0] - ldr r1, =gSpecialVar_0x8013 - ldrb r1, [r1] - bl GetBoxedMonPtr - adds r6, r0, 0 - ldr r2, =gStringVar3 - movs r1, 0x2 - bl GetBoxMonData - ldr r0, =gStringVar2 - mov r8, r0 - adds r0, r6, 0 - movs r1, 0x2 - mov r2, r8 - bl GetBoxMonData - adds r0, r6, 0 - movs r1, 0xB - movs r2, 0 - bl GetBoxMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - adds r0, r6, 0 - bl GetBoxMonGender - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - movs r1, 0 - movs r2, 0 - bl GetBoxMonData - str r0, [sp] - ldr r0, =sub_80EFF48 - str r0, [sp, 0x4] - movs r0, 0x3 - mov r1, r8 - adds r2, r5, 0 - adds r3, r4, 0 - bl DoNamingScreen - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EFEC4 - - thumb_func_start sub_80EFF48 -sub_80EFF48: @ 80EFF48 - push {lr} - ldr r0, =gSpecialVar_0x8012 - ldrb r0, [r0] - ldr r1, =gSpecialVar_0x8013 - ldrb r1, [r1] - ldr r2, =gStringVar2 - bl SetBoxMonNickFromAnyBox - bl c2_exit_to_overworld_1_continue_scripts_restart_music - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EFF48 - - thumb_func_start sub_80EFF6C -sub_80EFF6C: @ 80EFF6C - push {r4,lr} - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - ldr r4, =gStringVar1 - movs r1, 0x2 - adds r2, r4, 0 - bl GetMonData - adds r0, r4, 0 - bl StringGetEnd10 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EFF6C - - thumb_func_start sub_80EFF9C -sub_80EFF9C: @ 80EFF9C - push {r4,lr} - bl sub_80F0020 - adds r4, r0, 0 - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x1 - movs r2, 0 - bl GetMonData - cmp r4, r0 - bne _080EFFD0 - ldr r1, =gScriptResult - movs r0, 0 - b _080EFFD4 - .pool -_080EFFD0: - ldr r1, =gScriptResult - movs r0, 0x1 -_080EFFD4: - strh r0, [r1] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80EFF9C - - thumb_func_start sub_80EFFE0 -sub_80EFFE0: @ 80EFFE0 - push {lr} - lsls r0, 24 - lsrs r1, r0, 24 - adds r2, r1, 0 - cmp r1, 0 - beq _080F0016 - subs r0, r1, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bhi _080EFFFA - movs r0, 0x2 - b _080F001C -_080EFFFA: - adds r0, r1, 0 - subs r0, 0x15 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bhi _080F000A - movs r0, 0x3 - b _080F001C -_080F000A: - adds r0, r2, 0 - subs r0, 0x29 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bls _080F001A -_080F0016: - movs r0, 0 - b _080F001C -_080F001A: - movs r0, 0x4 -_080F001C: - pop {r1} - bx r1 - thumb_func_end sub_80EFFE0 - - thumb_func_start sub_80F0020 -sub_80F0020: @ 80F0020 - ldr r0, =gSaveBlock2Ptr - ldr r2, [r0] - ldrb r0, [r2, 0xD] - lsls r0, 24 - ldrb r1, [r2, 0xC] - lsls r1, 16 - orrs r0, r1 - ldrb r1, [r2, 0xB] - lsls r1, 8 - orrs r0, r1 - ldrb r1, [r2, 0xA] - orrs r0, r1 - bx lr - .pool - thumb_func_end sub_80F0020 - - thumb_func_start CheckForBigMovieOrEmergencyNewsOnTV -CheckForBigMovieOrEmergencyNewsOnTV: @ 80F0040 - push {lr} - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - movs r0, 0x4 - ldrsb r0, [r1, r0] - cmp r0, 0x1 - bne _080F0060 - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x8] - cmp r0, 0 - bne _080F006C - movs r0, 0x5 - ldrsb r0, [r1, r0] - cmp r0, 0 - beq _080F0074 -_080F0060: - movs r0, 0 - b _080F009E - .pool -_080F006C: - movs r0, 0x5 - ldrsb r0, [r1, r0] - cmp r0, 0x2 - bne _080F0060 -_080F0074: - ldr r0, =0x000008bd - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080F0092 - movs r0, 0x89 - lsls r0, 4 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080F009C -_080F0092: - movs r0, 0x1 - b _080F009E - .pool -_080F009C: - movs r0, 0x2 -_080F009E: - pop {r1} - bx r1 - thumb_func_end CheckForBigMovieOrEmergencyNewsOnTV - - thumb_func_start GetMomOrDadStringForTVMessage -GetMomOrDadStringForTVMessage: @ 80F00A4 - push {r4,lr} - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - movs r0, 0x4 - ldrsb r0, [r1, r0] - cmp r0, 0x1 - bne _080F0104 - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x8] - cmp r0, 0 - bne _080F00EC - movs r0, 0x5 - ldrsb r0, [r1, r0] - cmp r0, 0 - bne _080F0104 - ldr r0, =gStringVar1 - ldr r1, =gText_Mom - bl StringCopy - ldr r0, =0x00004003 - movs r1, 0x1 - bl VarSet - b _080F0104 - .pool -_080F00EC: - movs r0, 0x5 - ldrsb r0, [r1, r0] - cmp r0, 0x2 - bne _080F0104 - ldr r0, =gStringVar1 - ldr r1, =gText_Mom - bl StringCopy - ldr r0, =0x00004003 - movs r1, 0x1 - bl VarSet -_080F0104: - ldr r4, =0x00004003 - adds r0, r4, 0 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - beq _080F0142 - adds r0, r4, 0 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - beq _080F0158 - adds r0, r4, 0 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - bls _080F016C - adds r0, r4, 0 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080F0158 -_080F0142: - ldr r0, =gStringVar1 - ldr r1, =gText_Mom - bl StringCopy - b _080F01A8 - .pool -_080F0158: - ldr r0, =gStringVar1 - ldr r1, =gText_Dad - bl StringCopy - b _080F01A8 - .pool -_080F016C: - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080F0198 - ldr r0, =gStringVar1 - ldr r1, =gText_Mom - bl StringCopy - adds r0, r4, 0 - movs r1, 0x1 - bl VarSet - b _080F01A8 - .pool -_080F0198: - ldr r0, =gStringVar1 - ldr r1, =gText_Dad - bl StringCopy - adds r0, r4, 0 - movs r1, 0x2 - bl VarSet -_080F01A8: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end GetMomOrDadStringForTVMessage - - thumb_func_start sub_80F01B8 -sub_80F01B8: @ 80F01B8 - push {lr} - ldr r0, =0x000040bc - movs r1, 0 - bl VarSet - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldrb r1, [r0, 0x5] - ldrb r2, [r0, 0x4] - movs r0, 0x5 - bl RemoveFieldObjectByLocalIdAndMap - ldr r0, =0x00000396 - bl FlagSet - pop {r0} - bx r0 - .pool - thumb_func_end sub_80F01B8 - - thumb_func_start sub_80F01E8 -sub_80F01E8: @ 80F01E8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r6, r2, 24 - movs r0, 0xE1 - lsls r0, 4 - bl Alloc - mov r8, r0 - cmp r0, 0 - bne _080F0206 - b _080F0344 -_080F0206: - movs r4, 0 -_080F0208: - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 5 - adds r0, r4 - lsls r0, 2 - add r0, r8 - adds r1, r4, 0 - muls r1, r5 - adds r1, r7, r1 - movs r2, 0xE1 - lsls r2, 2 - bl memcpy - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080F0208 - mov r5, r8 - movs r4, 0 - ldr r7, =gLinkPlayers - b _080F0276 - .pool -_080F0238: - lsls r0, r4, 3 - subs r2, r0, r4 - lsls r0, r2, 2 - adds r3, r0, r7 - ldrb r1, [r3] - subs r0, r1, 0x1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _080F025A - lsls r0, r2, 5 - adds r0, r4 - lsls r0, 2 - adds r0, r5, r0 - bl sub_80F1254 - b _080F0270 -_080F025A: - cmp r1, 0x3 - bne _080F0270 - ldrh r0, [r3, 0x1A] - cmp r0, 0x1 - bne _080F0270 - lsls r0, r2, 5 - adds r0, r4 - lsls r0, 2 - adds r0, r5, r0 - bl sub_80F12A4 -_080F0270: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 -_080F0276: - bl sub_8009FCC - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - bcc _080F0238 - cmp r6, 0x1 - beq _080F02C4 - cmp r6, 0x1 - bgt _080F0290 - cmp r6, 0 - beq _080F029A - b _080F031E -_080F0290: - cmp r6, 0x2 - beq _080F02DC - cmp r6, 0x3 - beq _080F0304 - b _080F031E -_080F029A: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x000027cc - adds r0, r1 - movs r2, 0xE1 - lsls r2, 2 - adds r1, r5, r2 - movs r3, 0xE1 - lsls r3, 3 - adds r2, r5, r3 - ldr r4, =0x00000a8c - adds r3, r5, r4 - bl sub_80F0358 - b _080F031E - .pool -_080F02C4: - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - ldr r0, =0x000027cc - adds r1, r0 - movs r3, 0xE1 - lsls r3, 3 - adds r2, r5, r3 - b _080F02EA - .pool -_080F02DC: - movs r0, 0xE1 - lsls r0, 2 - adds r1, r5, r0 - ldr r0, =gSaveBlock1Ptr - ldr r2, [r0] - ldr r3, =0x000027cc - adds r2, r3 -_080F02EA: - ldr r4, =0x00000a8c - adds r3, r5, r4 - adds r0, r5, 0 - bl sub_80F0358 - b _080F031E - .pool -_080F0304: - movs r0, 0xE1 - lsls r0, 2 - adds r1, r5, r0 - movs r3, 0xE1 - lsls r3, 3 - adds r2, r5, r3 - ldr r0, =gSaveBlock1Ptr - ldr r3, [r0] - ldr r4, =0x000027cc - adds r3, r4 - adds r0, r5, 0 - bl sub_80F0358 -_080F031E: - ldr r5, =gSaveBlock1Ptr - ldr r0, [r5] - ldr r4, =0x000027cc - adds r0, r4 - bl sub_80EF93C - bl sub_80F0C04 - ldr r0, [r5] - adds r0, r4 - bl sub_80EF93C - bl sub_80F0708 - bl sub_80F0B64 - mov r0, r8 - bl Free -_080F0344: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80F01E8 - - thumb_func_start sub_80F0358 -sub_80F0358: @ 80F0358 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - str r0, [sp, 0x10] - str r1, [sp, 0x14] - str r2, [sp, 0x18] - str r3, [sp, 0x1C] - add r0, sp, 0x10 - str r0, [sp] - add r0, sp, 0x14 - str r0, [sp, 0x4] - add r0, sp, 0x18 - str r0, [sp, 0x8] - add r0, sp, 0x1C - str r0, [sp, 0xC] - bl sub_8009FCC - ldr r1, =gUnknown_03001174 - strb r0, [r1] -_080F0384: - movs r6, 0 - ldr r0, =gUnknown_03001174 - ldrb r1, [r0] - cmp r6, r1 - bcs _080F0384 - mov r10, r0 -_080F0390: - cmp r6, 0 - bne _080F0398 - ldr r2, =gUnknown_0203A02C - strb r6, [r2] -_080F0398: - lsls r4, r6, 2 - mov r3, sp - adds r0, r3, r4 - ldr r0, [r0] - ldr r0, [r0] - bl sub_80F06D0 - ldr r1, =gUnknown_03001176 - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - adds r7, r4, 0 - cmp r0, r1 - bne _080F03E0 - ldr r1, =gUnknown_0203A02C - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - mov r2, r10 - ldrb r2, [r2] - cmp r0, r2 - beq _080F048C - adds r6, 0x1 - mov r9, r6 - b _080F0470 - .pool -_080F03E0: - movs r5, 0 - mov r3, r10 - ldrb r0, [r3] - subs r0, 0x1 - adds r2, r6, 0x1 - mov r9, r2 - cmp r5, r0 - bge _080F0456 - ldr r3, =gUnknown_03001174 - mov r8, r3 -_080F03F4: - adds r0, r6, r5 - adds r4, r0, 0x1 - mov r0, r8 - ldrb r1, [r0] - adds r0, r4, 0 - bl __modsi3 - lsls r0, 2 - add r0, sp - ldr r0, [r0] - ldr r0, [r0] - bl sub_80EFB08 - ldr r1, =gUnknown_030060BC - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080F0446 - mov r2, r8 - ldrb r1, [r2] - adds r0, r4, 0 - bl __modsi3 - adds r2, r0, 0 - lsls r0, r2, 2 - add r0, sp - ldr r0, [r0] - mov r3, sp - adds r1, r3, r7 - ldr r1, [r1] - lsls r2, 24 - lsrs r2, 24 - bl sub_80F049C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080F0456 -_080F0446: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - mov r1, r8 - ldrb r0, [r1] - subs r0, 0x1 - cmp r5, r0 - blt _080F03F4 -_080F0456: - mov r2, r10 - ldrb r0, [r2] - subs r0, 0x1 - cmp r5, r0 - bne _080F0470 - mov r3, sp - adds r0, r3, r7 - ldr r0, [r0] - ldr r0, [r0] - ldr r1, =gUnknown_03001176 - ldrb r1, [r1] - bl sub_80EF910 -_080F0470: - mov r1, r9 - lsls r0, r1, 24 - lsrs r6, r0, 24 - mov r2, r10 - ldrb r2, [r2] - cmp r6, r2 - bcc _080F0390 - b _080F0384 - .pool -_080F048C: - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80F0358 - - thumb_func_start sub_80F049C -sub_80F049C: @ 80F049C - push {r4-r7,lr} - sub sp, 0x4 - lsls r2, 24 - lsrs r7, r2, 24 - ldr r4, [r0] - ldr r6, [r1] - movs r5, 0 - ldr r2, =gUnknown_03001176 - movs r1, 0 - ldrsb r1, [r2, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - ldrb r0, [r0] - str r2, [sp] - bl sub_80EFFE0 - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - ldr r2, [sp] - cmp r0, 0x3 - beq _080F050C - cmp r0, 0x3 - bgt _080F04DC - cmp r0, 0x2 - beq _080F04E2 - b _080F055A - .pool -_080F04DC: - cmp r1, 0x4 - beq _080F0534 - b _080F055A -_080F04E2: - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r4, r0 - ldrb r2, [r2] - lsls r2, 24 - asrs r2, 24 - lsls r1, r2, 3 - adds r1, r2 - lsls r1, 2 - adds r1, r6, r1 - adds r2, r7, 0 - bl sub_80F0580 - b _080F0556 - .pool -_080F050C: - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r4, r0 - ldrb r2, [r2] - lsls r2, 24 - asrs r2, 24 - lsls r1, r2, 3 - adds r1, r2 - lsls r1, 2 - adds r1, r6, r1 - adds r2, r7, 0 - bl sub_80F05E8 - b _080F0556 - .pool -_080F0534: - ldr r0, =gUnknown_030060BC - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r4, r0 - ldrb r2, [r2] - lsls r2, 24 - asrs r2, 24 - lsls r1, r2, 3 - adds r1, r2 - lsls r1, 2 - adds r1, r6, r1 - adds r2, r7, 0 - bl sub_80F0668 -_080F0556: - lsls r0, 24 - lsrs r5, r0, 24 -_080F055A: - cmp r5, 0x1 - beq _080F0568 - movs r0, 0 - b _080F0574 - .pool -_080F0568: - ldr r0, =gUnknown_03001176 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_80EF910 - movs r0, 0x1 -_080F0574: - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_80F049C - - thumb_func_start sub_80F0580 -sub_80F0580: @ 80F0580 - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - lsls r0, r2, 24 - lsrs r0, 24 - bl sub_800A2A4 - adds r5, r0, 0 - movs r2, 0xFF - ands r0, r2 - adds r1, r4, 0 - adds r1, 0x22 - ldrb r1, [r1] - cmp r0, r1 - bne _080F05B0 - lsrs r0, r5, 8 - ands r0, r2 - adds r1, r4, 0 - adds r1, 0x23 - ldrb r1, [r1] - cmp r0, r1 - bne _080F05B0 - movs r0, 0 - b _080F05E0 -_080F05B0: - adds r1, r4, 0 - adds r1, 0x20 - ldrb r0, [r1] - adds r2, r4, 0 - adds r2, 0x22 - strb r0, [r2] - adds r3, r4, 0 - adds r3, 0x21 - ldrb r0, [r3] - adds r2, 0x1 - strb r0, [r2] - strb r5, [r1] - lsrs r0, r5, 8 - strb r0, [r3] - adds r1, r6, 0 - adds r0, r4, 0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - movs r0, 0x1 - strb r0, [r6, 0x1] -_080F05E0: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80F0580 - - thumb_func_start sub_80F05E8 -sub_80F05E8: @ 80F05E8 - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - lsls r0, r2, 24 - lsrs r0, 24 - bl sub_800A2A4 - adds r2, r0, 0 - movs r3, 0xFF - ands r0, r3 - adds r1, r4, 0 - adds r1, 0x20 - ldrb r1, [r1] - cmp r0, r1 - bne _080F0614 - lsrs r0, r2, 8 - ands r0, r3 - adds r1, r4, 0 - adds r1, 0x21 - ldrb r1, [r1] - cmp r0, r1 - beq _080F0634 -_080F0614: - movs r3, 0xFF - adds r0, r2, 0 - ands r0, r3 - adds r1, r4, 0 - adds r1, 0x22 - lsrs r5, r2, 8 - ldrb r1, [r1] - cmp r0, r1 - bne _080F0638 - adds r0, r5, 0 - ands r0, r3 - adds r1, r4, 0 - adds r1, 0x23 - ldrb r1, [r1] - cmp r0, r1 - bne _080F0638 -_080F0634: - movs r0, 0 - b _080F0660 -_080F0638: - ldrb r1, [r4, 0x1E] - adds r0, r4, 0 - adds r0, 0x20 - strb r1, [r0] - ldrb r0, [r4, 0x1F] - adds r1, r4, 0 - adds r1, 0x21 - strb r0, [r1] - strb r2, [r4, 0x1E] - strb r5, [r4, 0x1F] - adds r1, r6, 0 - adds r0, r4, 0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - movs r0, 0x1 - strb r0, [r6, 0x1] -_080F0660: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80F05E8 - - thumb_func_start sub_80F0668 -sub_80F0668: @ 80F0668 - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - lsls r0, r2, 24 - lsrs r0, 24 - bl sub_800A2A4 - adds r5, r0, 0 - movs r2, 0xFF - ands r0, r2 - adds r1, r4, 0 - adds r1, 0x22 - ldrb r1, [r1] - cmp r0, r1 - bne _080F0698 - lsrs r0, r5, 8 - ands r0, r2 - adds r1, r4, 0 - adds r1, 0x23 - ldrb r1, [r1] - cmp r0, r1 - bne _080F0698 - movs r0, 0 - b _080F06CA -_080F0698: - adds r1, r4, 0 - adds r1, 0x20 - ldrb r0, [r1] - adds r2, r4, 0 - adds r2, 0x22 - strb r0, [r2] - adds r3, r4, 0 - adds r3, 0x21 - ldrb r0, [r3] - adds r2, 0x1 - strb r0, [r2] - strb r5, [r1] - lsrs r0, r5, 8 - strb r0, [r3] - adds r1, r6, 0 - adds r0, r4, 0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - movs r0, 0x1 - strb r0, [r6, 0x1] - strh r0, [r6, 0x16] -_080F06CA: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80F0668 - - thumb_func_start sub_80F06D0 -sub_80F06D0: @ 80F06D0 - push {lr} - adds r3, r0, 0 - movs r2, 0 -_080F06D6: - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - adds r1, r0, r3 - ldrb r0, [r1, 0x1] - cmp r0, 0 - bne _080F06F6 - ldrb r0, [r1] - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3B - bhi _080F06F6 - lsls r0, r2, 24 - asrs r0, 24 - b _080F0704 -_080F06F6: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x17 - bls _080F06D6 - movs r0, 0x1 - negs r0, r0 -_080F0704: - pop {r1} - bx r1 - thumb_func_end sub_80F06D0 - - thumb_func_start sub_80F0708 -sub_80F0708: @ 80F0708 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - movs r0, 0 - mov r9, r0 -_080F0716: - ldr r3, =gSaveBlock1Ptr - ldr r1, [r3] - mov r4, r9 - lsls r2, r4, 3 - adds r0, r2, r4 - lsls r0, 2 - adds r1, r0 - ldr r0, =0x000027cc - adds r1, r0 - ldrb r0, [r1] - adds r7, r2, 0 - cmp r0, 0x29 - bls _080F0732 - b _080F0AD8 -_080F0732: - lsls r0, 2 - ldr r1, =_080F0748 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F0748: - .4byte _080F0AE2 - .4byte _080F0848 - .4byte _080F0AE2 - .4byte _080F0860 - .4byte _080F0878 - .4byte _080F0890 - .4byte _080F08BC - .4byte _080F08D4 - .4byte _080F07F0 - .4byte _080F0AE2 - .4byte _080F081C - .4byte _080F0AE2 - .4byte _080F0AE2 - .4byte _080F0AD8 - .4byte _080F0AD8 - .4byte _080F0AD8 - .4byte _080F0AD8 - .4byte _080F0AD8 - .4byte _080F0AD8 - .4byte _080F0AD8 - .4byte _080F0AD8 - .4byte _080F0900 - .4byte _080F0AE2 - .4byte _080F0918 - .4byte _080F0944 - .4byte _080F095C - .4byte _080F0AE2 - .4byte _080F0AE2 - .4byte _080F0AE2 - .4byte _080F0AE2 - .4byte _080F0974 - .4byte _080F09A0 - .4byte _080F0AE2 - .4byte _080F09C0 - .4byte _080F0AE2 - .4byte _080F0AE2 - .4byte _080F09F4 - .4byte _080F0AE2 - .4byte _080F0AE2 - .4byte _080F0AE2 - .4byte _080F0AD8 - .4byte _080F0AE2 -_080F07F0: - ldr r0, [r3] - mov r1, r9 - adds r4, r7, r1 - lsls r4, 2 - adds r0, r4, r0 - ldr r6, =0x000027cc - adds r0, r6 - ldrh r0, [r0, 0x12] - lsls r5, r1, 24 - lsrs r5, 24 - adds r1, r5, 0 - str r3, [sp, 0x4] - bl sub_80F0B24 - ldr r3, [sp, 0x4] - ldr r0, [r3] - adds r4, r0 - adds r4, r6 - ldrh r0, [r4, 0x2] - b _080F09E6 - .pool -_080F081C: - ldr r0, [r3] - mov r2, r9 - adds r4, r7, r2 - lsls r4, 2 - adds r0, r4, r0 - ldr r6, =0x000027cc - adds r0, r6 - ldrh r0, [r0, 0x16] - lsls r5, r2, 24 - lsrs r5, 24 - adds r1, r5, 0 - str r3, [sp, 0x4] - bl sub_80F0B24 - ldr r3, [sp, 0x4] - ldr r0, [r3] - adds r4, r0 - adds r4, r6 - ldrh r0, [r4, 0x2] - b _080F09E6 - .pool -_080F0848: - ldr r0, [r3] - mov r4, r9 - adds r1, r7, r4 - lsls r1, 2 - adds r1, r0 - ldr r0, =0x000027cc - adds r1, r0 - ldrh r0, [r1, 0x2] - b _080F09B0 - .pool -_080F0860: - ldr r0, [r3] - mov r2, r9 - adds r1, r7, r2 - lsls r1, 2 - adds r1, r0 - ldr r4, =0x000027cc - adds r1, r4 - ldrh r0, [r1, 0x2] - lsls r1, r2, 24 - b _080F09B2 - .pool -_080F0878: - ldr r0, [r3] - mov r2, r9 - adds r1, r7, r2 - lsls r1, 2 - adds r1, r0 - ldr r4, =0x000027cc - adds r1, r4 - ldrh r0, [r1, 0x6] - lsls r1, r2, 24 - b _080F09B2 - .pool -_080F0890: - ldr r0, [r3] - mov r1, r9 - adds r4, r7, r1 - lsls r4, 2 - adds r0, r4, r0 - ldr r6, =0x000027cc - adds r0, r6 - ldrh r0, [r0, 0x2] - lsls r5, r1, 24 - lsrs r5, 24 - adds r1, r5, 0 - str r3, [sp, 0x4] - bl sub_80F0B24 - ldr r3, [sp, 0x4] - ldr r0, [r3] - adds r4, r0 - adds r4, r6 - ldrh r0, [r4, 0x1C] - b _080F09E6 - .pool -_080F08BC: - ldr r0, [r3] - mov r2, r9 - adds r1, r7, r2 - lsls r1, 2 - adds r1, r0 - ldr r4, =0x000027cc - adds r1, r4 - ldrh r0, [r1, 0x2] - lsls r1, r2, 24 - b _080F09B2 - .pool -_080F08D4: - ldr r0, [r3] - mov r1, r9 - adds r4, r7, r1 - lsls r4, 2 - adds r0, r4, r0 - ldr r6, =0x000027cc - adds r0, r6 - ldrh r0, [r0, 0xA] - lsls r5, r1, 24 - lsrs r5, 24 - adds r1, r5, 0 - str r3, [sp, 0x4] - bl sub_80F0B24 - ldr r3, [sp, 0x4] - ldr r0, [r3] - adds r4, r0 - adds r4, r6 - ldrh r0, [r4, 0x14] - b _080F09E6 - .pool -_080F0900: - ldr r0, [r3] - mov r2, r9 - adds r1, r7, r2 - lsls r1, 2 - adds r1, r0 - ldr r4, =0x000027cc - adds r1, r4 - ldrh r0, [r1, 0x10] - lsls r1, r2, 24 - b _080F09B2 - .pool -_080F0918: - ldr r0, [r3] - mov r1, r9 - adds r4, r7, r1 - lsls r4, 2 - adds r0, r4, r0 - ldr r6, =0x000027cc - adds r0, r6 - ldrh r0, [r0, 0xC] - lsls r5, r1, 24 - lsrs r5, 24 - adds r1, r5, 0 - str r3, [sp, 0x4] - bl sub_80F0B24 - ldr r3, [sp, 0x4] - ldr r0, [r3] - adds r4, r0 - adds r4, r6 - ldrh r0, [r4, 0xE] - b _080F09E6 - .pool -_080F0944: - ldr r0, [r3] - mov r2, r9 - adds r1, r7, r2 - lsls r1, 2 - adds r1, r0 - ldr r4, =0x000027cc - adds r1, r4 - ldrh r0, [r1, 0x4] - lsls r1, r2, 24 - b _080F09B2 - .pool -_080F095C: - ldr r0, [r3] - mov r1, r9 - adds r4, r7, r1 - lsls r4, 2 - adds r0, r4, r0 - ldr r6, =0x000027cc - adds r0, r6 - ldrh r0, [r0, 0x8] - b _080F09D0 - .pool -_080F0974: - ldr r0, [r3] - mov r2, r9 - adds r4, r7, r2 - lsls r4, 2 - adds r0, r4, r0 - ldr r6, =0x000027cc - adds r0, r6 - ldrh r0, [r0, 0x2] - lsls r5, r2, 24 - lsrs r5, 24 - adds r1, r5, 0 - str r3, [sp, 0x4] - bl sub_80F0B24 - ldr r3, [sp, 0x4] - ldr r0, [r3] - adds r4, r0 - adds r4, r6 - ldrh r0, [r4, 0xA] - b _080F09E6 - .pool -_080F09A0: - ldr r0, [r3] - mov r4, r9 - adds r1, r7, r4 - lsls r1, 2 - adds r1, r0 - ldr r0, =0x000027cc - adds r1, r0 - ldrh r0, [r1, 0x8] -_080F09B0: - lsls r1, r4, 24 -_080F09B2: - lsrs r1, 24 - bl sub_80F0B24 - b _080F0AE2 - .pool -_080F09C0: - ldr r0, [r3] - mov r1, r9 - adds r4, r7, r1 - lsls r4, 2 - adds r0, r4, r0 - ldr r6, =0x000027cc - adds r0, r6 - ldrh r0, [r0, 0x6] -_080F09D0: - lsls r5, r1, 24 - lsrs r5, 24 - adds r1, r5, 0 - str r3, [sp, 0x4] - bl sub_80F0B24 - ldr r3, [sp, 0x4] - ldr r0, [r3] - adds r4, r0 - adds r4, r6 - ldrh r0, [r4, 0x4] -_080F09E6: - adds r1, r5, 0 - bl sub_80F0B24 - b _080F0AE2 - .pool -_080F09F4: - ldr r0, [r3] - mov r2, r9 - adds r4, r7, r2 - lsls r4, 2 - adds r0, r4, r0 - ldr r5, =0x000027cc - adds r0, r5 - ldrh r0, [r0, 0x4] - lsls r2, 24 - mov r8, r2 - lsrs r6, r2, 24 - adds r1, r6, 0 - str r3, [sp, 0x4] - bl sub_80F0B24 - ldr r3, [sp, 0x4] - ldr r0, [r3] - adds r0, r4, r0 - adds r0, r5 - ldrh r0, [r0, 0x6] - adds r1, r6, 0 - bl sub_80F0B24 - ldr r3, [sp, 0x4] - ldr r0, [r3] - adds r4, r0 - adds r4, r5 - ldrb r0, [r4, 0xD] - subs r0, 0x1 - mov r6, r8 - cmp r0, 0xC - bhi _080F0AE2 - lsls r0, 2 - ldr r1, =_080F0A48 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F0A48: - .4byte _080F0A7C - .4byte _080F0AA0 - .4byte _080F0AE2 - .4byte _080F0AE2 - .4byte _080F0A7C - .4byte _080F0A7C - .4byte _080F0A7C - .4byte _080F0A7C - .4byte _080F0A7C - .4byte _080F0A7C - .4byte _080F0A7C - .4byte _080F0A7C - .4byte _080F0A7C -_080F0A7C: - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - mov r4, r9 - adds r0, r7, r4 - lsls r0, 2 - adds r0, r1 - ldr r1, =0x000027cc - adds r0, r1 - ldrh r0, [r0, 0x8] - lsrs r1, r6, 24 - bl sub_80F0B24 - b _080F0AE2 - .pool -_080F0AA0: - ldr r2, =gSaveBlock1Ptr - ldr r0, [r2] - mov r1, r9 - adds r4, r7, r1 - lsls r4, 2 - adds r0, r4, r0 - ldr r5, =0x000027cc - adds r0, r5 - ldrh r0, [r0, 0x8] - lsrs r6, 24 - adds r1, r6, 0 - str r2, [sp] - bl sub_80F0B24 - ldr r2, [sp] - ldr r0, [r2] - adds r4, r0 - adds r4, r5 - ldrh r0, [r4, 0xA] - adds r1, r6, 0 - bl sub_80F0B24 - b _080F0AE2 - .pool -_080F0AD8: - mov r2, r9 - lsls r0, r2, 24 - lsrs r0, 24 - bl sub_80F0B00 -_080F0AE2: - mov r0, r9 - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - cmp r0, 0x17 - bhi _080F0AF2 - b _080F0716 -_080F0AF2: - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80F0708 - - thumb_func_start sub_80F0B00 -sub_80F0B00: @ 80F0B00 - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gSaveBlock1Ptr - ldr r2, [r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - adds r2, r1 - ldr r0, =0x000027cd - adds r2, r0 - movs r0, 0 - strb r0, [r2] - bx lr - .pool - thumb_func_end sub_80F0B00 - - thumb_func_start sub_80F0B24 -sub_80F0B24: @ 80F0B24 - push {r4,lr} - lsls r0, 16 - lsrs r0, 16 - lsls r1, 24 - lsrs r4, r1, 24 - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0 - bl GetSetPokedexFlag - lsls r0, 24 - asrs r2, r0, 24 - cmp r2, 0 - bne _080F0B56 - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - lsls r0, r4, 3 - adds r0, r4 - lsls r0, 2 - adds r1, r0 - ldr r0, =0x000027cd - adds r1, r0 - strb r2, [r1] -_080F0B56: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80F0B24 - - thumb_func_start sub_80F0B64 -sub_80F0B64: @ 80F0B64 - push {r4-r6,lr} - ldr r0, =0x00000864 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080F0BA2 - movs r2, 0 - ldr r4, =0x000027cd - movs r3, 0 - ldr r5, =gSaveBlock1Ptr -_080F0B7C: - ldr r0, [r5] - lsls r1, r2, 3 - adds r1, r2 - lsls r1, 2 - adds r1, r0, r1 - ldr r6, =0x000027cc - adds r0, r1, r6 - ldrb r0, [r0] - cmp r0, 0x7 - beq _080F0B94 - cmp r0, 0x29 - bne _080F0B98 -_080F0B94: - adds r0, r1, r4 - strb r3, [r0] -_080F0B98: - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x17 - bls _080F0B7C -_080F0BA2: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80F0B64 - - thumb_func_start sub_80F0BB8 -sub_80F0BB8: @ 80F0BB8 - push {r4-r6,lr} - movs r5, 0 - ldr r6, =gSaveBlock1Ptr -_080F0BBE: - ldr r1, [r6] - lsls r0, r5, 3 - adds r0, r5 - lsls r4, r0, 2 - adds r1, r4 - ldr r0, =0x000027cc - adds r1, r0 - ldrb r0, [r1] - bl sub_80EFFE0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _080F0BE6 - ldr r0, [r6] - adds r0, r4 - ldr r1, =0x000027cd - adds r0, r1 - movs r1, 0 - strb r1, [r0] -_080F0BE6: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x4 - bls _080F0BBE - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80F0BB8 - - thumb_func_start sub_80F0C04 -sub_80F0C04: @ 80F0C04 - push {r4,r5,lr} - movs r3, 0 - movs r2, 0x5 - ldr r0, =gSaveBlock1Ptr - ldr r4, [r0] - ldr r5, =0x000027cc -_080F0C10: - lsls r0, r2, 24 - asrs r1, r0, 24 - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r4, r0 - adds r0, r5 - ldrb r0, [r0] - cmp r0, 0 - bne _080F0C2E - lsls r0, r3, 24 - movs r2, 0x80 - lsls r2, 17 - adds r0, r2 - lsrs r3, r0, 24 -_080F0C2E: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - asrs r0, 24 - cmp r0, 0x17 - ble _080F0C10 - movs r2, 0 - lsls r0, r3, 24 - asrs r0, 24 - movs r1, 0x5 - subs r0, r1, r0 - cmp r2, r0 - bge _080F0C6E - adds r5, r0, 0 -_080F0C4A: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x000027cc - adds r0, r1 - lsls r1, r2, 24 - asrs r4, r1, 24 - movs r2, 0xA0 - lsls r2, 19 - adds r1, r2 - lsrs r1, 24 - bl sub_80EF910 - adds r4, 0x1 - lsls r4, 24 - lsrs r2, r4, 24 - asrs r4, 24 - cmp r4, r5 - blt _080F0C4A -_080F0C6E: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80F0C04 - - thumb_func_start sub_80F0C7C -sub_80F0C7C: @ 80F0C7C - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - adds r7, r1, 0 - lsls r2, 24 - lsrs r6, r2, 24 - movs r0, 0x80 - lsls r0, 1 - bl Alloc - adds r5, r0, 0 - cmp r5, 0 - beq _080F0D4C - movs r4, 0 -_080F0C9A: - lsls r0, r4, 6 - adds r0, r5 - adds r1, r4, 0 - muls r1, r7 - add r1, r8 - movs r2, 0x40 - bl memcpy - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080F0C9A - cmp r6, 0x1 - beq _080F0CF0 - cmp r6, 0x1 - bgt _080F0CC2 - cmp r6, 0 - beq _080F0CCC - b _080F0D3E -_080F0CC2: - cmp r6, 0x2 - beq _080F0D08 - cmp r6, 0x3 - beq _080F0D28 - b _080F0D3E -_080F0CCC: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x00002b50 - adds r0, r1 - adds r1, r5, 0 - adds r1, 0x40 - adds r2, r5, 0 - adds r2, 0x80 - adds r3, r5, 0 - adds r3, 0xC0 - bl sub_80F0D60 - b _080F0D3E - .pool -_080F0CF0: - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - ldr r0, =0x00002b50 - adds r1, r0 - adds r2, r5, 0 - adds r2, 0x80 - b _080F0D14 - .pool -_080F0D08: - adds r1, r5, 0 - adds r1, 0x40 - ldr r0, =gSaveBlock1Ptr - ldr r2, [r0] - ldr r0, =0x00002b50 - adds r2, r0 -_080F0D14: - adds r3, r5, 0 - adds r3, 0xC0 - adds r0, r5, 0 - bl sub_80F0D60 - b _080F0D3E - .pool -_080F0D28: - adds r1, r5, 0 - adds r1, 0x40 - adds r2, r5, 0 - adds r2, 0x80 - ldr r0, =gSaveBlock1Ptr - ldr r3, [r0] - ldr r0, =0x00002b50 - adds r3, r0 - adds r0, r5, 0 - bl sub_80F0D60 -_080F0D3E: - bl sub_80F0EEC - bl sub_80F0F24 - adds r0, r5, 0 - bl Free -_080F0D4C: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80F0C7C - - thumb_func_start sub_80F0D60 -sub_80F0D60: @ 80F0D60 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - str r0, [sp, 0x10] - str r1, [sp, 0x14] - str r2, [sp, 0x18] - str r3, [sp, 0x1C] - add r0, sp, 0x10 - str r0, [sp] - add r0, sp, 0x14 - str r0, [sp, 0x4] - add r0, sp, 0x18 - str r0, [sp, 0x8] - add r0, sp, 0x1C - str r0, [sp, 0xC] - bl sub_8009FCC - ldr r1, =gUnknown_03001175 - strb r0, [r1] - movs r0, 0 - mov r10, r0 -_080F0D90: - movs r7, 0 - mov r1, r10 - adds r1, 0x1 - str r1, [sp, 0x20] - b _080F0E28 - .pool -_080F0DA0: - lsls r4, r7, 2 - mov r1, sp - adds r0, r1, r4 - ldr r0, [r0] - ldr r0, [r0] - mov r1, r10 - bl sub_80F0ECC - ldr r1, =gUnknown_03001176 - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - mov r8, r4 - adds r1, r7, 0x1 - mov r9, r1 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080F0E22 - movs r5, 0 - ldr r1, =gUnknown_03001175 - ldrb r0, [r1] - subs r0, 0x1 - cmp r5, r0 - bge _080F0E22 - adds r6, r1, 0 -_080F0DD4: - adds r0, r7, r5 - adds r4, r0, 0x1 - ldrb r1, [r6] - adds r0, r4, 0 - bl __modsi3 - lsls r0, 2 - add r0, sp - ldr r0, [r0] - ldr r0, [r0] - bl sub_80EEE30 - ldr r1, =gUnknown_030060BC - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080F0E14 - ldrb r1, [r6] - adds r0, r4, 0 - bl __modsi3 - lsls r0, 2 - add r0, sp - ldr r0, [r0] - mov r1, sp - add r1, r8 - ldr r1, [r1] - bl sub_80F0E58 -_080F0E14: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - ldrb r0, [r6] - subs r0, 0x1 - cmp r5, r0 - blt _080F0DD4 -_080F0E22: - mov r1, r9 - lsls r0, r1, 24 - lsrs r7, r0, 24 -_080F0E28: - ldr r0, =gUnknown_03001175 - ldrb r0, [r0] - cmp r7, r0 - bcc _080F0DA0 - ldr r1, [sp, 0x20] - lsls r0, r1, 24 - lsrs r0, 24 - mov r10, r0 - cmp r0, 0xF - bls _080F0D90 - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80F0D60 - - thumb_func_start sub_80F0E58 -sub_80F0E58: @ 80F0E58 - push {lr} - ldr r0, [r0] - ldr r1, [r1] - ldr r2, =gUnknown_03001176 - ldrb r2, [r2] - lsls r2, 24 - asrs r2, 24 - lsls r2, 2 - adds r1, r2 - ldr r2, =gUnknown_030060BC - ldrb r2, [r2] - lsls r2, 24 - asrs r2, 24 - bl sub_80F0E84 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80F0E58 - - thumb_func_start sub_80F0E84 -sub_80F0E84: @ 80F0E84 - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r6, r2, 24 - ldrb r3, [r5] - adds r0, r3, 0 - cmp r0, 0 - bne _080F0E9A -_080F0E96: - movs r0, 0 - b _080F0EC6 -_080F0E9A: - movs r1, 0 - adds r2, r3, 0 - adds r3, r0, 0 -_080F0EA0: - lsls r0, r1, 2 - adds r0, r4 - ldrb r0, [r0] - cmp r0, r3 - beq _080F0E96 - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xF - bls _080F0EA0 - lsls r0, r6, 24 - asrs r0, 22 - adds r0, r4 - strb r2, [r0] - movs r1, 0x1 - strb r1, [r0, 0x1] - ldrh r1, [r5, 0x2] - strh r1, [r0, 0x2] - movs r0, 0x1 -_080F0EC6: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80F0E84 - - thumb_func_start sub_80F0ECC -sub_80F0ECC: @ 80F0ECC - push {lr} - lsls r1, 24 - lsrs r2, r1, 24 - lsls r1, r2, 2 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _080F0EE2 - lsls r0, r2, 24 - asrs r0, 24 - b _080F0EE6 -_080F0EE2: - movs r0, 0x1 - negs r0, r0 -_080F0EE6: - pop {r1} - bx r1 - thumb_func_end sub_80F0ECC - - thumb_func_start sub_80F0EEC -sub_80F0EEC: @ 80F0EEC - push {r4,lr} - movs r4, 0 -_080F0EF0: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - lsls r1, r4, 2 - adds r0, r1 - ldr r1, =0x00002b50 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x4 - bls _080F0F08 - adds r0, r4, 0 - bl sub_80EEE78 -_080F0F08: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xF - bls _080F0EF0 - bl sub_80EEEB8 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80F0EEC - - thumb_func_start sub_80F0F24 -sub_80F0F24: @ 80F0F24 - push {r4,r5,lr} - ldr r0, =0x00000864 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080F0F50 - movs r2, 0 - ldr r5, =gSaveBlock1Ptr - ldr r4, =0x00002b51 - movs r3, 0 -_080F0F3C: - ldr r0, [r5] - lsls r1, r2, 2 - adds r0, r1 - adds r0, r4 - strb r3, [r0] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xF - bls _080F0F3C -_080F0F50: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80F0F24 - - thumb_func_start sub_80F0F64 -sub_80F0F64: @ 80F0F64 - push {r4-r7,lr} - adds r6, r0, 0 - adds r5, r1, 0 - movs r0, 0x2C - bl AllocZeroed - adds r4, r0, 0 - movs r7, 0 -_080F0F74: - lsls r0, r7, 3 - adds r1, r0, r7 - lsls r1, 2 - adds r1, r6 - ldrb r1, [r1] - subs r1, 0x1 - adds r2, r0, 0 - cmp r1, 0x28 - bls _080F0F88 - b _080F11F4 -_080F0F88: - lsls r0, r1, 2 - ldr r1, =_080F0F98 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F0F98: - .4byte _080F103C - .4byte _080F103C - .4byte _080F105A - .4byte _080F11F4 - .4byte _080F1152 - .4byte _080F111E - .4byte _080F10E6 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F1092 - .4byte _080F10C6 - .4byte _080F118A - .4byte _080F11AA - .4byte _080F11CA - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11F4 - .4byte _080F11EA -_080F103C: - adds r0, r2, r7 - lsls r0, 2 - adds r0, r6, r0 - str r0, [r4] - adds r0, 0x10 - bl sub_8009228 - cmp r0, 0 - beq _080F1056 - ldr r1, [r4] - movs r0, 0x1 - strb r0, [r1, 0x18] - b _080F11F4 -_080F1056: - ldr r0, [r4] - b _080F11F2 -_080F105A: - adds r0, r2, r7 - lsls r0, 2 - adds r0, r6, r0 - str r0, [r4, 0x4] - adds r0, 0x5 - bl sub_8009228 - cmp r0, 0 - beq _080F1074 - ldr r1, [r4, 0x4] - movs r0, 0x1 - strb r0, [r1, 0xD] - b _080F1078 -_080F1074: - ldr r0, [r4, 0x4] - strb r5, [r0, 0xD] -_080F1078: - ldr r0, [r4, 0x4] - adds r0, 0x10 - bl sub_8009228 - cmp r0, 0 - beq _080F108C - ldr r1, [r4, 0x4] - movs r0, 0x1 - strb r0, [r1, 0xE] - b _080F11F4 -_080F108C: - ldr r0, [r4, 0x4] - strb r5, [r0, 0xE] - b _080F11F4 -_080F1092: - adds r0, r2, r7 - lsls r0, 2 - adds r0, r6, r0 - str r0, [r4, 0x18] - adds r0, 0x13 - bl sub_8009228 - cmp r0, 0 - beq _080F10AC - ldr r1, [r4, 0x18] - movs r0, 0x1 - strb r0, [r1, 0x2] - b _080F10B0 -_080F10AC: - ldr r0, [r4, 0x18] - strb r5, [r0, 0x2] -_080F10B0: - ldr r0, [r4, 0x18] - adds r0, 0x4 - bl sub_8009228 - cmp r0, 0 - beq _080F10C0 - ldr r1, [r4, 0x18] - b _080F10DA -_080F10C0: - ldr r0, [r4, 0x18] - strb r5, [r0, 0x3] - b _080F11F4 -_080F10C6: - adds r0, r2, r7 - lsls r0, 2 - adds r0, r6, r0 - str r0, [r4, 0x1C] - adds r0, 0x13 - bl sub_8009228 - cmp r0, 0 - beq _080F10E0 - ldr r1, [r4, 0x1C] -_080F10DA: - movs r0, 0x1 - strb r0, [r1, 0x3] - b _080F11F4 -_080F10E0: - ldr r0, [r4, 0x1C] - strb r5, [r0, 0x3] - b _080F11F4 -_080F10E6: - adds r0, r2, r7 - lsls r0, 2 - adds r0, r6, r0 - str r0, [r4, 0x14] - adds r0, 0x2 - bl sub_8009228 - cmp r0, 0 - beq _080F1100 - ldr r1, [r4, 0x14] - movs r0, 0x1 - strb r0, [r1, 0x1D] - b _080F1104 -_080F1100: - ldr r0, [r4, 0x14] - strb r5, [r0, 0x1D] -_080F1104: - ldr r0, [r4, 0x14] - adds r0, 0xC - bl sub_8009228 - cmp r0, 0 - beq _080F1118 - ldr r1, [r4, 0x14] - movs r0, 0x1 - strb r0, [r1, 0x1E] - b _080F11F4 -_080F1118: - ldr r0, [r4, 0x14] - strb r5, [r0, 0x1E] - b _080F11F4 -_080F111E: - adds r0, r2, r7 - lsls r0, 2 - adds r0, r6, r0 - str r0, [r4, 0x10] - adds r0, 0x16 - bl sub_8009228 - cmp r0, 0 - beq _080F1138 - ldr r1, [r4, 0x10] - movs r0, 0x1 - strb r0, [r1, 0x1E] - b _080F113C -_080F1138: - ldr r0, [r4, 0x10] - strb r5, [r0, 0x1E] -_080F113C: - ldr r0, [r4, 0x10] - adds r0, 0x8 - bl sub_8009228 - cmp r0, 0 - beq _080F114C - ldr r1, [r4, 0x10] - b _080F117E -_080F114C: - ldr r0, [r4, 0x10] - strb r5, [r0, 0x1F] - b _080F11F4 -_080F1152: - adds r0, r2, r7 - lsls r0, 2 - adds r0, r6, r0 - str r0, [r4, 0xC] - adds r0, 0xF - bl sub_8009228 - cmp r0, 0 - beq _080F116C - ldr r1, [r4, 0xC] - movs r0, 0x1 - strb r0, [r1, 0x1E] - b _080F1170 -_080F116C: - ldr r0, [r4, 0xC] - strb r5, [r0, 0x1E] -_080F1170: - ldr r0, [r4, 0xC] - adds r0, 0x4 - bl sub_8009228 - cmp r0, 0 - beq _080F1184 - ldr r1, [r4, 0xC] -_080F117E: - movs r0, 0x1 - strb r0, [r1, 0x1F] - b _080F11F4 -_080F1184: - ldr r0, [r4, 0xC] - strb r5, [r0, 0x1F] - b _080F11F4 -_080F118A: - adds r0, r2, r7 - lsls r0, 2 - adds r0, r6, r0 - str r0, [r4, 0x8] - adds r0, 0x13 - bl sub_8009228 - cmp r0, 0 - beq _080F11A4 - ldr r1, [r4, 0x8] - movs r0, 0x1 - strb r0, [r1, 0x2] - b _080F11F4 -_080F11A4: - ldr r0, [r4, 0x8] - strb r5, [r0, 0x2] - b _080F11F4 -_080F11AA: - adds r0, r2, r7 - lsls r0, 2 - adds r0, r6, r0 - str r0, [r4, 0x20] - adds r0, 0x13 - bl sub_8009228 - cmp r0, 0 - beq _080F11C4 - ldr r1, [r4, 0x20] - movs r0, 0x1 - strb r0, [r1, 0x6] - b _080F11F4 -_080F11C4: - ldr r0, [r4, 0x20] - strb r5, [r0, 0x6] - b _080F11F4 -_080F11CA: - adds r0, r2, r7 - lsls r0, 2 - adds r0, r6, r0 - str r0, [r4, 0x24] - adds r0, 0x13 - bl sub_8009228 - cmp r0, 0 - beq _080F11E4 - ldr r1, [r4, 0x24] - movs r0, 0x1 - strb r0, [r1, 0xB] - b _080F11F4 -_080F11E4: - ldr r0, [r4, 0x24] - strb r5, [r0, 0xB] - b _080F11F4 -_080F11EA: - adds r0, r2, r7 - lsls r0, 2 - adds r0, r6, r0 - str r0, [r4, 0x28] -_080F11F2: - strb r5, [r0, 0x18] -_080F11F4: - adds r7, 0x1 - cmp r7, 0x17 - bgt _080F11FC - b _080F0F74 -_080F11FC: - adds r0, r4, 0 - bl Free - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80F0F64 - - thumb_func_start sub_80F1208 -sub_80F1208: @ 80F1208 - push {r4,r5,lr} - adds r5, r0, 0 - bl sub_80F14F8 - adds r4, r5, 0 - movs r1, 0xD8 - lsls r1, 2 - adds r0, r4, r1 - cmp r4, r0 - bcs _080F124C -_080F121C: - ldrb r0, [r4] - cmp r0, 0x7 - bne _080F1240 - ldrb r0, [r4, 0x1D] - cmp r0, 0x1 - bne _080F1230 - ldrb r0, [r4, 0x1E] - cmp r0, 0x1 - bne _080F1236 - b _080F1240 -_080F1230: - ldrb r0, [r4, 0x1E] - cmp r0, 0x1 - bne _080F1240 -_080F1236: - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x24 - bl memset -_080F1240: - adds r4, 0x24 - movs r1, 0xD8 - lsls r1, 2 - adds r0, r5, r1 - cmp r4, r0 - bcc _080F121C -_080F124C: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80F1208 - - thumb_func_start sub_80F1254 -sub_80F1254: @ 80F1254 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r4, 0 - movs r1, 0xD8 - lsls r1, 2 - adds r0, r4, r1 - cmp r4, r0 - bcs _080F128A -_080F1264: - ldrb r0, [r4] - cmp r0, 0x7 - bne _080F127E - adds r0, r4, 0 - adds r0, 0xC - bl sub_8009228 - cmp r0, 0 - beq _080F127A - movs r0, 0x1 - b _080F127C -_080F127A: - movs r0, 0x2 -_080F127C: - strb r0, [r4, 0x1E] -_080F127E: - adds r4, 0x24 - movs r1, 0xD8 - lsls r1, 2 - adds r0, r5, r1 - cmp r4, r0 - bcc _080F1264 -_080F128A: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80F1254 - - thumb_func_start sub_80F1290 -sub_80F1290: @ 80F1290 - push {lr} - bl sub_8009228 - movs r1, 0x2 - cmp r0, 0 - beq _080F129E - movs r1, 0x1 -_080F129E: - adds r0, r1, 0 - pop {r1} - bx r1 - thumb_func_end sub_80F1290 - - thumb_func_start sub_80F12A4 -sub_80F12A4: @ 80F12A4 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r4, 0 - movs r1, 0xD8 - lsls r1, 2 - adds r0, r4, r1 - cmp r4, r0 - bcc _080F12B6 - b _080F14F0 -_080F12B6: - ldrb r0, [r4] - subs r0, 0x1 - cmp r0, 0x28 - bls _080F12C0 - b _080F14E2 -_080F12C0: - lsls r0, 2 - ldr r1, =_080F12D0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F12D0: - .4byte _080F1374 - .4byte _080F137A - .4byte _080F1380 - .4byte _080F138E - .4byte _080F139A - .4byte _080F13A8 - .4byte _080F13BE - .4byte _080F13CC - .4byte _080F13E0 - .4byte _080F13F4 - .4byte _080F1408 - .4byte _080F1416 - .4byte _080F14E2 - .4byte _080F14E2 - .4byte _080F14E2 - .4byte _080F14E2 - .4byte _080F14E2 - .4byte _080F14E2 - .4byte _080F14E2 - .4byte _080F14E2 - .4byte _080F142A - .4byte _080F1438 - .4byte _080F1444 - .4byte _080F1450 - .4byte _080F145C - .4byte _080F14AC - .4byte _080F1468 - .4byte _080F14B8 - .4byte _080F148C - .4byte _080F1474 - .4byte _080F14AC - .4byte _080F14B8 - .4byte _080F1480 - .4byte _080F148C - .4byte _080F1498 - .4byte _080F14AC - .4byte _080F14B8 - .4byte _080F14C4 - .4byte _080F14D8 - .4byte _080F14E2 - .4byte _080F14E2 -_080F1374: - adds r0, r4, 0 - adds r0, 0x10 - b _080F1422 -_080F137A: - adds r0, r4, 0 - adds r0, 0x10 - b _080F1422 -_080F1380: - adds r0, r4, 0x5 - bl sub_80F1290 - strb r0, [r4, 0xD] - adds r0, r4, 0 - adds r0, 0x10 - b _080F1478 -_080F138E: - adds r0, r4, 0 - adds r0, 0xB - bl sub_80F1290 - strb r0, [r4, 0x17] - b _080F14E2 -_080F139A: - adds r0, r4, 0 - adds r0, 0xF - bl sub_80F1290 - strb r0, [r4, 0x1E] - adds r0, r4, 0x4 - b _080F13B6 -_080F13A8: - adds r0, r4, 0 - adds r0, 0x16 - bl sub_80F1290 - strb r0, [r4, 0x1E] - adds r0, r4, 0 - adds r0, 0x8 -_080F13B6: - bl sub_80F1290 - strb r0, [r4, 0x1F] - b _080F14E2 -_080F13BE: - adds r0, r4, 0x2 - bl sub_80F1290 - strb r0, [r4, 0x1D] - adds r0, r4, 0 - adds r0, 0xC - b _080F13D8 -_080F13CC: - adds r0, r4, 0 - adds r0, 0x14 - bl sub_80F1290 - strb r0, [r4, 0x1D] - adds r0, r4, 0x4 -_080F13D8: - bl sub_80F1290 - strb r0, [r4, 0x1E] - b _080F14E2 -_080F13E0: - adds r0, r4, 0 - adds r0, 0xC - bl sub_80F1290 - strb r0, [r4, 0x14] - adds r0, r4, 0x4 - bl sub_80F1290 - strb r0, [r4, 0x15] - b _080F14E2 -_080F13F4: - adds r0, r4, 0x4 - bl sub_80F1290 - strb r0, [r4, 0x19] - adds r0, r4, 0 - adds r0, 0xC - bl sub_80F1290 - strb r0, [r4, 0x1A] - b _080F14E2 -_080F1408: - adds r0, r4, 0x2 - bl sub_80F1290 - strb r0, [r4, 0x17] - adds r0, r4, 0 - adds r0, 0xC - b _080F1422 -_080F1416: - adds r0, r4, 0x2 - bl sub_80F1290 - strb r0, [r4, 0x17] - adds r0, r4, 0 - adds r0, 0xB -_080F1422: - bl sub_80F1290 - strb r0, [r4, 0x18] - b _080F14E2 -_080F142A: - adds r0, r4, 0 - adds r0, 0x13 - bl sub_80F1290 - strb r0, [r4, 0x2] - adds r0, r4, 0x4 - b _080F143C -_080F1438: - adds r0, r4, 0 - adds r0, 0x13 -_080F143C: - bl sub_80F1290 - strb r0, [r4, 0x3] - b _080F14E2 -_080F1444: - adds r0, r4, 0 - adds r0, 0x13 - bl sub_80F1290 - strb r0, [r4, 0x2] - b _080F14E2 -_080F1450: - adds r0, r4, 0 - adds r0, 0x13 - bl sub_80F1290 - strb r0, [r4, 0x6] - b _080F14E2 -_080F145C: - adds r0, r4, 0 - adds r0, 0x13 - bl sub_80F1290 - strb r0, [r4, 0xB] - b _080F14E2 -_080F1468: - adds r0, r4, 0 - adds r0, 0x13 - bl sub_80F1290 - strb r0, [r4, 0x9] - b _080F14E2 -_080F1474: - adds r0, r4, 0 - adds r0, 0x13 -_080F1478: - bl sub_80F1290 - strb r0, [r4, 0xE] - b _080F14E2 -_080F1480: - adds r0, r4, 0 - adds r0, 0x13 - bl sub_80F1290 - strb r0, [r4, 0x11] - b _080F14E2 -_080F148C: - adds r0, r4, 0 - adds r0, 0x13 - bl sub_80F1290 - strb r0, [r4, 0x8] - b _080F14E2 -_080F1498: - adds r0, r4, 0 - adds r0, 0x13 - bl sub_80F1290 - strb r0, [r4, 0xF] - adds r0, r4, 0x4 - bl sub_80F1290 - strb r0, [r4, 0x10] - b _080F14E2 -_080F14AC: - adds r0, r4, 0 - adds r0, 0x13 - bl sub_80F1290 - strb r0, [r4, 0xC] - b _080F14E2 -_080F14B8: - adds r0, r4, 0 - adds r0, 0x13 - bl sub_80F1290 - strb r0, [r4, 0x5] - b _080F14E2 -_080F14C4: - adds r0, r4, 0 - adds r0, 0x13 - bl sub_80F1290 - strb r0, [r4, 0x1B] - adds r0, r4, 0x4 - bl sub_80F1290 - strb r0, [r4, 0x1C] - b _080F14E2 -_080F14D8: - adds r0, r4, 0 - adds r0, 0x13 - bl sub_80F1290 - strb r0, [r4, 0x4] -_080F14E2: - adds r4, 0x24 - movs r1, 0xD8 - lsls r1, 2 - adds r0, r5, r1 - cmp r4, r0 - bcs _080F14F0 - b _080F12B6 -_080F14F0: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80F12A4 - - thumb_func_start sub_80F14F8 -sub_80F14F8: @ 80F14F8 - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r5, 0 - movs r6, 0x17 -_080F1500: - ldrb r0, [r4] - cmp r0, 0x17 - beq _080F151C - cmp r0, 0x19 - bne _080F152C - ldrb r0, [r4, 0xA] - cmp r0, 0x58 - bls _080F152C - adds r0, r5, 0 - movs r1, 0 - movs r2, 0x24 - bl memset - b _080F152C -_080F151C: - ldrb r0, [r4, 0x12] - cmp r0, 0x58 - bls _080F152C - adds r0, r5, 0 - movs r1, 0 - movs r2, 0x24 - bl memset -_080F152C: - adds r4, 0x24 - adds r5, 0x24 - subs r6, 0x1 - cmp r6, 0 - bge _080F1500 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80F14F8 - - thumb_func_start sub_80F153C -sub_80F153C: @ 80F153C - push {lr} - ldr r0, =gSaveBlock1Ptr - ldr r2, [r0] - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r2, r0 - ldr r1, =0x000027cd - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080F155A - b _080F16E6 -_080F155A: - subs r1, 0x1 - adds r0, r2, r1 - ldrb r0, [r0] - subs r0, 0x1 - cmp r0, 0x28 - bls _080F1568 - b _080F16E6 -_080F1568: - lsls r0, 2 - ldr r1, =_080F1584 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F1584: - .4byte _080F1628 - .4byte _080F162E - .4byte _080F1634 - .4byte _080F163A - .4byte _080F165E - .4byte _080F1646 - .4byte _080F164C - .4byte _080F1664 - .4byte _080F1670 - .4byte _080F166A - .4byte _080F16B8 - .4byte _080F16E2 - .4byte _080F16E6 - .4byte _080F16E6 - .4byte _080F16E6 - .4byte _080F16E6 - .4byte _080F16E6 - .4byte _080F16E6 - .4byte _080F16E6 - .4byte _080F16E6 - .4byte _080F1652 - .4byte _080F1658 - .4byte _080F1676 - .4byte _080F167C - .4byte _080F1682 - .4byte _080F1688 - .4byte _080F168E - .4byte _080F1694 - .4byte _080F169A - .4byte _080F16A0 - .4byte _080F16A6 - .4byte _080F16AC - .4byte _080F16B2 - .4byte _080F16BE - .4byte _080F16C4 - .4byte _080F16CA - .4byte _080F16D0 - .4byte _080F16D6 - .4byte _080F16DC - .4byte _080F16E6 - .4byte _080F1640 -_080F1628: - bl DoTVShowPokemonFanClubLetter - b _080F16E6 -_080F162E: - bl DoTVShowRecentHappenings - b _080F16E6 -_080F1634: - bl DoTVShowPokemonFanClubOpinions - b _080F16E6 -_080F163A: - bl DoTVShowDummiedOut - b _080F16E6 -_080F1640: - bl DoTVShowPokemonNewsMassOutbreak - b _080F16E6 -_080F1646: - bl DoTVShowBravoTrainerPokemonProfile - b _080F16E6 -_080F164C: - bl DoTVShowBravoTrainerBattleTower - b _080F16E6 -_080F1652: - bl DoTVShowPokemonTodaySuccessfulCapture - b _080F16E6 -_080F1658: - bl DoTVShowTodaysSmartShopper - b _080F16E6 -_080F165E: - bl DoTVShowTheNameRaterShow - b _080F16E6 -_080F1664: - bl DoTVShowPokemonContestLiveUpdates - b _080F16E6 -_080F166A: - bl DoTVShowPokemonBattleUpdate - b _080F16E6 -_080F1670: - bl DoTVShow3CheersForPokeblocks - b _080F16E6 -_080F1676: - bl DoTVShowPokemonTodayFailedCapture - b _080F16E6 -_080F167C: - bl DoTVShowPokemonAngler - b _080F16E6 -_080F1682: - bl DoTVShowTheWorldOfMasters - b _080F16E6 -_080F1688: - bl DoTVShowTodaysRivalTrainer - b _080F16E6 -_080F168E: - bl DoTVShowDewfordTrendWatcherNetwork - b _080F16E6 -_080F1694: - bl DoTVShowHoennTreasureInvestigators - b _080F16E6 -_080F169A: - bl DoTVShowFindThatGamer - b _080F16E6 -_080F16A0: - bl DoTVShowBreakingNewsTV - b _080F16E6 -_080F16A6: - bl DoTVShowSecretBaseVisit - b _080F16E6 -_080F16AC: - bl DoTVShowPokemonLotterWinnerFlashReport - b _080F16E6 -_080F16B2: - bl DoTVShowThePokemonBattleSeminar - b _080F16E6 -_080F16B8: - bl DoTVShowTrainerFanClubSpecial - b _080F16E6 -_080F16BE: - bl DoTVShowTrainerFanClub - b _080F16E6 -_080F16C4: - bl DoTVShowSpotTheCuties - b _080F16E6 -_080F16CA: - bl DoTVShowPokemonNewsBattleFrontier - b _080F16E6 -_080F16D0: - bl DoTVShowWhatsNo1InHoennToday - b _080F16E6 -_080F16D6: - bl DoTVShowSecretBaseSecrets - b _080F16E6 -_080F16DC: - bl DoTVShowSafariFanClub - b _080F16E6 -_080F16E2: - bl DoTVShowPokemonContestLiveUpdates2 -_080F16E6: - pop {r0} - bx r0 - thumb_func_end sub_80F153C - - thumb_func_start DoTVShowBravoTrainerPokemonProfile -DoTVShowBravoTrainerPokemonProfile: @ 80F16EC - push {r4,r5,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r5, [r0] - cmp r5, 0x8 - bls _080F1712 - b _080F1952 -_080F1712: - lsls r0, r5, 2 - ldr r1, =_080F1734 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F1734: - .4byte _080F1758 - .4byte _080F17B0 - .4byte _080F17E8 - .4byte _080F1818 - .4byte _080F184C - .4byte _080F1880 - .4byte _080F18C4 - .4byte _080F190C - .4byte _080F193C -_080F1758: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x16 - ldrb r2, [r4, 0x1E] - bl sub_81DB5E8 - ldrb r1, [r4, 0x13] - lsls r1, 29 - lsrs r1, 29 - movs r0, 0x1 - bl CopyContestCategoryToStringVar - ldrb r1, [r4, 0x13] - lsls r1, 27 - lsrs r1, 30 - movs r0, 0x2 - bl sub_80EF1BC - ldrh r1, [r4, 0x2] - movs r0, 0xB - muls r0, r1 - ldr r1, =gSpeciesNames - adds r0, r1 - adds r1, r4, 0 - adds r1, 0x8 - bl StringCompare - cmp r0, 0 - bne _080F17A4 - ldr r1, =gUnknown_0203A030 - movs r0, 0x8 - b _080F1950 - .pool -_080F17A4: - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - b _080F1950 - .pool -_080F17B0: - ldr r0, =gStringVar1 - ldrh r2, [r4, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar2 - adds r1, r4, 0 - adds r1, 0x8 - ldrb r2, [r4, 0x1F] - bl sub_81DB5E8 - ldrb r1, [r4, 0x13] - lsls r1, 29 - lsrs r1, 29 - movs r0, 0x2 - bl CopyContestCategoryToStringVar - b _080F194C - .pool -_080F17E8: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x16 - ldrb r2, [r4, 0x1E] - bl sub_81DB5E8 - ldrb r1, [r4, 0x13] - movs r0, 0x60 - ands r0, r1 - cmp r0, 0 - bne _080F180C - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - b _080F1950 - .pool -_080F180C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - b _080F1950 - .pool -_080F1818: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x16 - ldrb r2, [r4, 0x1E] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r1, [r4, 0x4] - bl CopyEasyChatWord - ldrb r1, [r4, 0x13] - lsls r1, 25 - lsrs r1, 30 - adds r1, 0x1 - movs r0, 0x2 - bl sub_80EF340 - ldr r1, =gUnknown_0203A030 - movs r0, 0x5 - b _080F1950 - .pool -_080F184C: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x16 - ldrb r2, [r4, 0x1E] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r1, [r4, 0x4] - bl CopyEasyChatWord - ldrb r1, [r4, 0x13] - lsls r1, 25 - lsrs r1, 30 - adds r1, 0x1 - movs r0, 0x2 - bl sub_80EF340 - ldr r1, =gUnknown_0203A030 - movs r0, 0x5 - b _080F1950 - .pool -_080F1880: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x16 - ldrb r2, [r4, 0x1E] - bl sub_81DB5E8 - ldrb r1, [r4, 0x13] - lsls r1, 29 - lsrs r1, 29 - movs r0, 0x1 - bl CopyContestCategoryToStringVar - ldr r0, =gStringVar3 - ldrh r1, [r4, 0x6] - bl CopyEasyChatWord - ldrh r0, [r4, 0x14] - cmp r0, 0 - beq _080F18B8 - ldr r1, =gUnknown_0203A030 - movs r0, 0x6 - b _080F1950 - .pool -_080F18B8: - ldr r1, =gUnknown_0203A030 - movs r0, 0x7 - b _080F1950 - .pool -_080F18C4: - ldr r0, =gStringVar1 - ldrh r2, [r4, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar2 - ldrh r2, [r4, 0x14] - movs r1, 0xD - muls r1, r2 - ldr r2, =gMoveNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - ldrh r1, [r4, 0x6] - bl CopyEasyChatWord - ldr r1, =gUnknown_0203A030 - movs r0, 0x7 - b _080F1950 - .pool -_080F190C: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x16 - ldrb r2, [r4, 0x1E] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r4, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - bl TVShowDone - b _080F1952 - .pool -_080F193C: - ldr r0, =gStringVar1 - ldrh r2, [r4, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy -_080F194C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 -_080F1950: - strb r0, [r1] -_080F1952: - ldr r0, =gUnknown_0858D204 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowBravoTrainerPokemonProfile - - thumb_func_start DoTVShowBravoTrainerBattleTower -DoTVShowBravoTrainerBattleTower: @ 80F1974 - push {r4,r5,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r5, [r0] - adds r2, r0, 0 - cmp r5, 0xE - bls _080F199C - b _080F1BEA -_080F199C: - lsls r0, r5, 2 - ldr r1, =_080F19C0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F19C0: - .4byte _080F19FC - .4byte _080F1A40 - .4byte _080F1A90 - .4byte _080F1AB4 - .4byte _080F1AE0 - .4byte _080F1B28 - .4byte _080F1B38 - .4byte _080F1B48 - .4byte _080F1B4E - .4byte _080F1B4E - .4byte _080F1B4E - .4byte _080F1B68 - .4byte _080F1B94 - .4byte _080F1B94 - .4byte _080F1BCC -_080F19FC: - ldr r0, =gStringVar1 - adds r1, r4, 0x2 - ldrb r2, [r4, 0x1D] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r4, 0xA] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldrh r0, [r4, 0x16] - cmp r0, 0x6 - bls _080F1A34 - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F1BEA - .pool -_080F1A34: - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F1BEA - .pool -_080F1A40: - ldrb r0, [r4, 0x1A] - cmp r0, 0x32 - bne _080F1A58 - ldr r0, =gStringVar1 - ldr r1, =gText_Lv50 - bl StringCopy - b _080F1A60 - .pool -_080F1A58: - ldr r0, =gStringVar1 - ldr r1, =gText_OpenLevel - bl StringCopy -_080F1A60: - ldrh r1, [r4, 0x16] - movs r0, 0x1 - bl sub_80EF340 - ldrb r0, [r4, 0x1C] - cmp r0, 0x1 - bne _080F1A84 - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F1BEA - .pool -_080F1A84: - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F1BEA - .pool -_080F1A90: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x1E] - bl sub_81DB5E8 - ldrh r1, [r4, 0x16] - adds r1, 0x1 - movs r0, 0x1 - bl sub_80EF340 -_080F1AA6: - ldrb r0, [r4, 0x1B] - cmp r0, 0 - beq _080F1B02 - b _080F1B1C - .pool -_080F1AB4: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x1E] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r4, 0x14] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - b _080F1AA6 - .pool -_080F1AE0: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x1E] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r4, 0x14] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldrb r0, [r4, 0x1B] - cmp r0, 0 - bne _080F1B1C -_080F1B02: - ldr r1, =gUnknown_0203A030 - movs r0, 0x5 - strb r0, [r1] - b _080F1BEA - .pool -_080F1B1C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x6 - strb r0, [r1] - b _080F1BEA - .pool -_080F1B28: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x1E] - b _080F1B54 - .pool -_080F1B38: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x1E] - b _080F1B54 - .pool -_080F1B48: - movs r0, 0xB - strb r0, [r2] - b _080F1BEA -_080F1B4E: - ldr r0, =gStringVar1 - adds r1, r4, 0x2 - ldrb r2, [r4, 0x1D] -_080F1B54: - bl sub_81DB5E8 - ldr r1, =gUnknown_0203A030 - movs r0, 0xB - strb r0, [r1] - b _080F1BEA - .pool -_080F1B68: - ldr r0, =gStringVar1 - ldrh r1, [r4, 0x18] - bl CopyEasyChatWord - ldrb r0, [r4, 0x1B] - cmp r0, 0 - bne _080F1B88 - ldr r1, =gUnknown_0203A030 - movs r0, 0xC - strb r0, [r1] - b _080F1BEA - .pool -_080F1B88: - ldr r1, =gUnknown_0203A030 - movs r0, 0xD - strb r0, [r1] - b _080F1BEA - .pool -_080F1B94: - ldr r0, =gStringVar1 - ldrh r1, [r4, 0x18] - bl CopyEasyChatWord - ldr r0, =gStringVar2 - adds r1, r4, 0x2 - ldrb r2, [r4, 0x1D] - bl sub_81DB5E8 - ldr r0, =gStringVar3 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x1E] - bl sub_81DB5E8 - ldr r1, =gUnknown_0203A030 - movs r0, 0xE - strb r0, [r1] - b _080F1BEA - .pool -_080F1BCC: - ldr r0, =gStringVar1 - adds r1, r4, 0x2 - ldrb r2, [r4, 0x1D] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r4, 0xA] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - bl TVShowDone -_080F1BEA: - ldr r0, =gUnknown_0858D240 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowBravoTrainerBattleTower - - thumb_func_start DoTVShowTodaysSmartShopper -DoTVShowTodaysSmartShopper: @ 80F1C0C - push {r4-r6,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r5, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r6, [r0] - adds r2, r0, 0 - cmp r6, 0xC - bls _080F1C34 - b _080F1E2C -_080F1C34: - lsls r0, r6, 2 - ldr r1, =_080F1C58 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F1C58: - .4byte _080F1C8C - .4byte _080F1CC8 - .4byte _080F1D10 - .4byte _080F1D22 - .4byte _080F1D10 - .4byte _080F1D10 - .4byte _080F1D4C - .4byte _080F1D7C - .4byte _080F1DAC - .4byte _080F1DB8 - .4byte _080F1DC6 - .4byte _080F1DD8 - .4byte _080F1E1C -_080F1C8C: - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x3] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrb r1, [r5, 0x12] - movs r2, 0 - bl GetMapName - ldrh r0, [r5, 0xC] - cmp r0, 0xFE - bls _080F1CBC - ldr r1, =gUnknown_0203A030 - movs r0, 0xB - strb r0, [r1] - b _080F1E2C - .pool -_080F1CBC: - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F1E2C - .pool -_080F1CC8: - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x3] - bl sub_81DB5E8 - ldr r4, =gStringVar2 - ldrh r0, [r5, 0x6] - bl ItemId_GetItem - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldrh r1, [r5, 0xC] - movs r0, 0x2 - bl sub_80EF340 - ldr r4, =gUnknown_0203A030 - bl Random - ldrb r2, [r4] - adds r2, 0x1 - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - ands r0, r1 - adds r0, r2 - strb r0, [r4] - b _080F1E2C - .pool -_080F1D10: - ldrh r0, [r5, 0x8] - cmp r0, 0 - beq _080F1D1C - movs r0, 0x6 - strb r0, [r2] - b _080F1E2C -_080F1D1C: - movs r0, 0xA - strb r0, [r2] - b _080F1E2C -_080F1D22: - ldrh r1, [r5, 0xC] - adds r1, 0x1 - movs r0, 0x2 - bl sub_80EF340 - ldrh r0, [r5, 0x8] - cmp r0, 0 - beq _080F1D40 - ldr r1, =gUnknown_0203A030 - movs r0, 0x6 - strb r0, [r1] - b _080F1E2C - .pool -_080F1D40: - ldr r1, =gUnknown_0203A030 - movs r0, 0xA - strb r0, [r1] - b _080F1E2C - .pool -_080F1D4C: - ldr r4, =gStringVar2 - ldrh r0, [r5, 0x8] - bl ItemId_GetItem - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldrh r1, [r5, 0xE] - movs r0, 0x2 - bl sub_80EF340 - ldrh r0, [r5, 0xA] - cmp r0, 0 - beq _080F1D94 - ldr r1, =gUnknown_0203A030 - movs r0, 0x7 - strb r0, [r1] - b _080F1E2C - .pool -_080F1D7C: - ldr r4, =gStringVar2 - ldrh r0, [r5, 0xA] - bl ItemId_GetItem - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldrh r1, [r5, 0x10] - movs r0, 0x2 - bl sub_80EF340 -_080F1D94: - ldrb r0, [r5, 0x2] - cmp r0, 0x1 - beq _080F1DFA - ldr r1, =gUnknown_0203A030 - movs r0, 0x9 - strb r0, [r1] - b _080F1E2C - .pool -_080F1DAC: - ldrh r0, [r5, 0xC] - cmp r0, 0xFE - bls _080F1DD2 - movs r0, 0xC - strb r0, [r2] - b _080F1E2C -_080F1DB8: - movs r0, 0x1 - adds r1, r5, 0 - bl sub_80EF40C - bl TVShowDone - b _080F1E2C -_080F1DC6: - ldrb r0, [r5, 0x2] - cmp r0, 0x1 - bne _080F1DD2 - movs r0, 0x8 - strb r0, [r2] - b _080F1E2C -_080F1DD2: - movs r0, 0x9 - strb r0, [r2] - b _080F1E2C -_080F1DD8: - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x3] - bl sub_81DB5E8 - ldr r4, =gStringVar2 - ldrh r0, [r5, 0x6] - bl ItemId_GetItem - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldrb r0, [r5, 0x2] - cmp r0, 0x1 - bne _080F1E10 -_080F1DFA: - ldr r1, =gUnknown_0203A030 - movs r0, 0x8 - strb r0, [r1] - b _080F1E2C - .pool -_080F1E10: - ldr r1, =gUnknown_0203A030 - movs r0, 0xC - strb r0, [r1] - b _080F1E2C - .pool -_080F1E1C: - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x3] - bl sub_81DB5E8 - bl TVShowDone -_080F1E2C: - ldr r0, =gUnknown_0858D1D0 - lsls r1, r6, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowTodaysSmartShopper - - thumb_func_start DoTVShowTheNameRaterShow -DoTVShowTheNameRaterShow: @ 80F1E48 - push {r4-r6,lr} - sub sp, 0x8 - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r5, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r6, [r0] - adds r2, r0, 0 - cmp r6, 0x12 - bls _080F1E72 - b _080F20FE -_080F1E72: - lsls r0, r6, 2 - ldr r1, =_080F1E94 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F1E94: - .4byte _080F1EE0 - .4byte _080F1F28 - .4byte _080F1F4A - .4byte _080F1F28 - .4byte _080F1F28 - .4byte _080F1F28 - .4byte _080F1F28 - .4byte _080F1F28 - .4byte _080F1F28 - .4byte _080F1F90 - .4byte _080F1F90 - .4byte _080F1F90 - .4byte _080F20EC - .4byte _080F1FCC - .4byte _080F200C - .4byte _080F202C - .4byte _080F2074 - .4byte _080F20A4 - .4byte _080F20F0 -_080F1EE0: - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0xF - ldrb r2, [r5, 0x1E] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r5, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x1F] - bl sub_81DB5E8 - ldr r4, =gUnknown_0203A030 - adds r0, r5, 0 - bl sub_80EFBA4 - adds r0, 0x1 - strb r0, [r4] - b _080F20FE - .pool -_080F1F28: - ldrb r0, [r5, 0x1A] - cmp r0, 0 - bne _080F1F34 - movs r0, 0x9 - strb r0, [r2] - b _080F20FE -_080F1F34: - cmp r0, 0x1 - bne _080F1F3E - movs r0, 0xA - strb r0, [r2] - b _080F20FE -_080F1F3E: - cmp r0, 0x2 - beq _080F1F44 - b _080F20FE -_080F1F44: - movs r0, 0xB - strb r0, [r2] - b _080F20FE -_080F1F4A: - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0xF - ldrb r2, [r5, 0x1E] - bl sub_81DB5E8 - ldrb r0, [r5, 0x1A] - cmp r0, 0 - bne _080F1F6C - ldr r1, =gUnknown_0203A030 - movs r0, 0x9 - strb r0, [r1] - b _080F20FE - .pool -_080F1F6C: - cmp r0, 0x1 - bne _080F1F7C - ldr r1, =gUnknown_0203A030 - movs r0, 0xA - strb r0, [r1] - b _080F20FE - .pool -_080F1F7C: - cmp r0, 0x2 - beq _080F1F82 - b _080F20FE -_080F1F82: - ldr r1, =gUnknown_0203A030 - movs r0, 0xB - strb r0, [r1] - b _080F20FE - .pool -_080F1F90: - ldr r0, =gStringVar1 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x1F] - bl sub_81DB5E8 - movs r4, 0 - str r4, [sp] - str r5, [sp, 0x4] - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_80EFBDC - str r4, [sp] - str r5, [sp, 0x4] - movs r0, 0x2 - movs r1, 0x1 - movs r2, 0 - movs r3, 0x1 - bl sub_80EFBDC - ldr r1, =gUnknown_0203A030 - movs r0, 0xC - strb r0, [r1] - b _080F20FE - .pool -_080F1FCC: - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0xF - ldrb r2, [r5, 0x1E] - bl sub_81DB5E8 - movs r4, 0 - str r4, [sp] - str r5, [sp, 0x4] - movs r0, 0x1 - movs r1, 0 - movs r2, 0x2 - movs r3, 0 - bl sub_80EFBDC - str r4, [sp] - str r5, [sp, 0x4] - movs r0, 0x2 - movs r1, 0 - movs r2, 0x3 - movs r3, 0x1 - bl sub_80EFBDC - ldr r1, =gUnknown_0203A030 - movs r0, 0xE - strb r0, [r1] - b _080F20FE - .pool -_080F200C: - movs r4, 0 - str r4, [sp] - str r5, [sp, 0x4] - movs r0, 0x1 - movs r1, 0 - movs r2, 0x2 - movs r3, 0x1 - bl sub_80EFBDC - str r4, [sp] - str r5, [sp, 0x4] - movs r0, 0x2 - movs r1, 0 - movs r2, 0x3 - movs r3, 0 - b _080F20D2 -_080F202C: - movs r0, 0 - str r0, [sp] - str r5, [sp, 0x4] - movs r1, 0 - movs r2, 0x2 - movs r3, 0x1 - bl sub_80EFBDC - ldr r0, =gStringVar2 - ldrh r2, [r5, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldrh r0, [r5, 0x2] - str r0, [sp] - str r5, [sp, 0x4] - movs r0, 0x2 - movs r1, 0 - movs r2, 0x3 - movs r3, 0x2 - bl sub_80EFBDC - ldr r1, =gUnknown_0203A030 - movs r0, 0x10 - strb r0, [r1] - b _080F20FE - .pool -_080F2074: - ldrh r0, [r5, 0x2] - str r0, [sp] - str r5, [sp, 0x4] - movs r0, 0 - movs r1, 0 - movs r2, 0x2 - movs r3, 0x2 - bl sub_80EFBDC - movs r0, 0 - str r0, [sp] - str r5, [sp, 0x4] - movs r0, 0x2 - movs r1, 0 - movs r2, 0x3 - movs r3, 0x1 - bl sub_80EFBDC - ldr r1, =gUnknown_0203A030 - movs r0, 0x11 - strb r0, [r1] - b _080F20FE - .pool -_080F20A4: - movs r0, 0 - str r0, [sp] - str r5, [sp, 0x4] - movs r1, 0 - movs r2, 0x2 - movs r3, 0x1 - bl sub_80EFBDC - ldr r0, =gStringVar2 - ldrh r2, [r5, 0x1C] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldrh r0, [r5, 0x1C] - str r0, [sp] - str r5, [sp, 0x4] - movs r0, 0x2 - movs r1, 0 - movs r2, 0x3 - movs r3, 0x2 -_080F20D2: - bl sub_80EFBDC - ldr r1, =gUnknown_0203A030 - movs r0, 0x12 - strb r0, [r1] - b _080F20FE - .pool -_080F20EC: - movs r6, 0x12 - strb r6, [r2] -_080F20F0: - ldr r0, =gStringVar1 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x1F] - bl sub_81DB5E8 - bl TVShowDone -_080F20FE: - ldr r0, =gUnknown_0858D338 - lsls r1, r6, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowTheNameRaterShow - - thumb_func_start DoTVShowPokemonTodaySuccessfulCapture -DoTVShowPokemonTodaySuccessfulCapture: @ 80F211C - push {r4-r6,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r5, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r6, [r0] - adds r2, r0, 0 - cmp r6, 0xB - bls _080F2144 - b _080F2358 -_080F2144: - lsls r0, r6, 2 - ldr r1, =_080F2168 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F2168: - .4byte _080F2198 - .4byte _080F21EC - .4byte _080F21F2 - .4byte _080F222C - .4byte _080F2264 - .4byte _080F226A - .4byte _080F22A0 - .4byte _080F22F4 - .4byte _080F22F4 - .4byte _080F2324 - .4byte _080F2324 - .4byte _080F2354 -_080F2198: - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x2] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r5, 0x10] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x3] - bl sub_81DB5E8 - ldrb r0, [r5, 0xF] - cmp r0, 0x1 - bne _080F21E0 - ldr r1, =gUnknown_0203A030 - movs r0, 0x5 - strb r0, [r1] - b _080F2358 - .pool -_080F21E0: - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F2358 - .pool -_080F21EC: - movs r0, 0x2 - strb r0, [r2] - b _080F2358 -_080F21F2: - ldr r4, =gStringVar2 - ldrb r0, [r5, 0xF] - bl ItemId_GetItem - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldrb r1, [r5, 0x12] - movs r0, 0x2 - bl sub_80EF340 - ldrb r0, [r5, 0x12] - cmp r0, 0x3 - bhi _080F2220 - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F2358 - .pool -_080F2220: - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F2358 - .pool -_080F222C: - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x2] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r5, 0x10] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x3] - bl sub_81DB5E8 - b _080F2286 - .pool -_080F2264: - movs r0, 0x6 - strb r0, [r2] - b _080F2358 -_080F226A: - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x2] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r5, 0x10] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy -_080F2286: - ldr r1, =gUnknown_0203A030 - movs r0, 0x6 - strb r0, [r1] - b _080F2358 - .pool -_080F22A0: - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x2] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r5, 0x10] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x3] - bl sub_81DB5E8 - ldr r4, =gUnknown_0203A030 - bl Random - ldrb r2, [r4] - adds r2, 0x1 - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - ands r0, r1 - adds r0, r2 - strb r0, [r4] - b _080F2358 - .pool -_080F22F4: - ldr r0, =gStringVar1 - ldrh r1, [r5, 0x10] - movs r4, 0xB - muls r1, r4 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar2 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x3] - bl sub_81DB5E8 - ldrh r1, [r5, 0x10] - movs r0, 0x2 - bl sub_80EF9E8 - b _080F233E - .pool -_080F2324: - ldr r0, =gStringVar1 - ldrh r1, [r5, 0x10] - movs r4, 0xB - muls r1, r4 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar2 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x3] - bl sub_81DB5E8 -_080F233E: - ldr r0, =gUnknown_0203A030 - strb r4, [r0] - b _080F2358 - .pool -_080F2354: - bl TVShowDone -_080F2358: - ldr r0, =gUnknown_0858D1A0 - lsls r1, r6, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowPokemonTodaySuccessfulCapture - - thumb_func_start DoTVShowPokemonTodayFailedCapture -DoTVShowPokemonTodayFailedCapture: @ 80F2370 - push {r4,r5,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r5, [r0] - cmp r5, 0x6 - bls _080F2396 - b _080F24C0 -_080F2396: - lsls r0, r5, 2 - ldr r1, =_080F23B8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F23B8: - .4byte _080F23D4 - .4byte _080F2408 - .4byte _080F245C - .4byte _080F245C - .4byte _080F24A0 - .4byte _080F24A0 - .4byte _080F24BC -_080F23D4: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x2] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r4, 0xC] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F24C0 - .pool -_080F2408: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x2] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrb r1, [r4, 0x12] - movs r2, 0 - bl GetMapName - ldr r0, =gStringVar3 - ldrh r2, [r4, 0xE] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldrb r0, [r4, 0x11] - cmp r0, 0x1 - bne _080F2450 - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F24C0 - .pool -_080F2450: - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F24C0 - .pool -_080F245C: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x2] - bl sub_81DB5E8 - ldrb r1, [r4, 0x10] - movs r0, 0x1 - bl sub_80EF340 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - lsls r0, 16 - cmp r0, 0 - bne _080F2494 - ldr r1, =gUnknown_0203A030 - movs r0, 0x5 - strb r0, [r1] - b _080F24C0 - .pool -_080F2494: - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F24C0 - .pool -_080F24A0: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x2] - bl sub_81DB5E8 - ldr r1, =gUnknown_0203A030 - movs r0, 0x6 - strb r0, [r1] - b _080F24C0 - .pool -_080F24BC: - bl TVShowDone -_080F24C0: - ldr r0, =gUnknown_0858D394 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowPokemonTodayFailedCapture - - thumb_func_start DoTVShowPokemonFanClubLetter -DoTVShowPokemonFanClubLetter: @ 80F24D8 - push {r4-r7,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r5, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r7, [r0] - adds r6, r0, 0 - cmp r7, 0x33 - bls _080F2500 - b _080F26F0 -_080F2500: - lsls r0, r7, 2 - ldr r1, =_080F2524 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F2524: - .4byte _080F25F4 - .4byte _080F2628 - .4byte _080F2654 - .4byte _080F265A - .4byte _080F2672 - .4byte _080F2672 - .4byte _080F2672 - .4byte _080F2684 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26F0 - .4byte _080F26A6 - .4byte _080F26CC -_080F25F4: - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0x10 - ldrb r2, [r5, 0x18] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r5, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r1, =gUnknown_0203A030 - movs r0, 0x32 - strb r0, [r1] - b _080F26F0 - .pool -_080F2628: - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - ands r0, r1 - adds r2, r0, 0x1 - cmp r2, 0x1 - bne _080F2648 - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F26F0 - .pool -_080F2648: - ldr r1, =gUnknown_0203A030 - adds r0, r2, 0x2 - strb r0, [r1] - b _080F26F0 - .pool -_080F2654: - movs r0, 0x33 - strb r0, [r6] - b _080F26F0 -_080F265A: - bl Random - ldrb r4, [r6] - adds r4, 0x1 - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - adds r0, r4 - strb r0, [r6] - b _080F26F0 -_080F2672: - adds r0, r5, 0 - bl sub_80EFB58 - ldr r1, =gUnknown_0203A030 - movs r0, 0x7 - strb r0, [r1] - b _080F26F0 - .pool -_080F2684: - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1F - bl __umodsi3 - adds r0, 0x46 - lsls r0, 16 - lsrs r2, r0, 16 - movs r0, 0x2 - adds r1, r2, 0 - bl sub_80EF340 - bl TVShowDone - b _080F26F0 -_080F26A6: - ldr r4, =gStringVar4 - adds r1, r5, 0x4 - adds r0, r4, 0 - movs r2, 0x2 - movs r3, 0x2 - bl ConvertEasyChatWordsToString - adds r0, r4, 0 - bl box_related_two__2 - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F26FC - .pool -_080F26CC: - ldr r4, =gStringVar4 - adds r1, r5, 0x4 - adds r0, r4, 0 - movs r2, 0x2 - movs r3, 0x2 - bl ConvertEasyChatWordsToString - adds r0, r4, 0 - bl box_related_two__2 - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F26FC - .pool -_080F26F0: - ldr r0, =gUnknown_0858D150 - lsls r1, r7, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 -_080F26FC: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowPokemonFanClubLetter - - thumb_func_start DoTVShowRecentHappenings -DoTVShowRecentHappenings: @ 80F2708 - push {r4-r7,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r5, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r6, [r0] - adds r7, r0, 0 - cmp r6, 0x32 - bls _080F2730 - b _080F288C -_080F2730: - lsls r0, r6, 2 - ldr r1, =_080F2754 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F2754: - .4byte _080F2820 - .4byte _080F2844 - .4byte _080F285C - .4byte _080F285C - .4byte _080F285C - .4byte _080F2862 - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F288C - .4byte _080F2868 -_080F2820: - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0x10 - ldrb r2, [r5, 0x18] - bl sub_81DB5E8 - adds r0, r5, 0 - bl sub_80EFB58 - ldr r1, =gUnknown_0203A030 - movs r0, 0x32 - strb r0, [r1] - b _080F288C - .pool -_080F2844: - bl Random - ldrb r4, [r7] - adds r4, 0x1 - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - adds r0, r4 - strb r0, [r7] - b _080F288C -_080F285C: - movs r0, 0x5 - strb r0, [r7] - b _080F288C -_080F2862: - bl TVShowDone - b _080F288C -_080F2868: - ldr r4, =gStringVar4 - adds r1, r5, 0x4 - adds r0, r4, 0 - movs r2, 0x2 - movs r3, 0x2 - bl ConvertEasyChatWordsToString - adds r0, r4, 0 - bl box_related_two__2 - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F2898 - .pool -_080F288C: - ldr r0, =gUnknown_0858D170 - lsls r1, r6, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 -_080F2898: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowRecentHappenings - - thumb_func_start DoTVShowPokemonFanClubOpinions -DoTVShowPokemonFanClubOpinions: @ 80F28A4 - push {r4-r6,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r6, =gUnknown_0203A030 - ldrb r5, [r6] - cmp r5, 0x3 - bgt _080F28E8 - cmp r5, 0x1 - bge _080F2930 - cmp r5, 0 - beq _080F28EE - b _080F297E - .pool -_080F28E8: - cmp r5, 0x4 - beq _080F2968 - b _080F297E -_080F28EE: - ldr r0, =gStringVar1 - adds r1, r4, 0x5 - ldrb r2, [r4, 0xD] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r4, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - adds r1, r4, 0 - adds r1, 0x10 - ldrb r2, [r4, 0xE] - bl sub_81DB5E8 - ldrb r0, [r4, 0x4] - lsrs r0, 4 - adds r0, 0x1 - strb r0, [r6] - b _080F297E - .pool -_080F2930: - ldr r0, =gStringVar1 - adds r1, r4, 0x5 - ldrb r2, [r4, 0xD] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r4, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - ldrh r1, [r4, 0x1C] - bl CopyEasyChatWord - movs r0, 0x4 - strb r0, [r6] - b _080F297E - .pool -_080F2968: - ldr r0, =gStringVar1 - adds r1, r4, 0x5 - ldrb r2, [r4, 0xD] - bl sub_81DB5E8 - ldr r0, =gStringVar3 - ldrh r1, [r4, 0x1E] - bl CopyEasyChatWord - bl TVShowDone -_080F297E: - ldr r0, =gUnknown_0858D188 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowPokemonFanClubOpinions - - thumb_func_start DoTVShowDummiedOut -DoTVShowDummiedOut: @ 80F299C - bx lr - thumb_func_end DoTVShowDummiedOut - - thumb_func_start DoTVShowPokemonNewsMassOutbreak -DoTVShowPokemonNewsMassOutbreak: @ 80F29A0 - push {r4,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r4, [r2] - adds r4, r0 - ldr r0, =gStringVar1 - ldrb r1, [r4, 0x10] - movs r2, 0 - bl GetMapName - ldr r0, =gStringVar2 - ldrh r2, [r4, 0xC] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - bl TVShowDone - bl StartMassOutbreak - ldr r1, =gUnknown_0858D19C - ldr r0, =gUnknown_0203A030 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl box_related_two__2 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowPokemonNewsMassOutbreak - - thumb_func_start DoTVShowPokemonContestLiveUpdates -DoTVShowPokemonContestLiveUpdates: @ 80F2A10 - push {r4-r7,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r6, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r7, [r0] - adds r2, r0, 0 - cmp r7, 0x20 - bls _080F2A38 - b _080F311C -_080F2A38: - lsls r0, r7, 2 - ldr r1, =_080F2A5C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F2A5C: - .4byte _080F2AE0 - .4byte _080F2B54 - .4byte _080F2BA2 - .4byte _080F2BC8 - .4byte _080F2BF4 - .4byte _080F2D2C - .4byte _080F2D40 - .4byte _080F2D54 - .4byte _080F2D68 - .4byte _080F2DE8 - .4byte _080F2DFC - .4byte _080F2E10 - .4byte _080F2E24 - .4byte _080F2E38 - .4byte _080F2E4C - .4byte _080F2ECC - .4byte _080F2EE0 - .4byte _080F2EF4 - .4byte _080F2F08 - .4byte _080F2F1C - .4byte _080F2F30 - .4byte _080F2F44 - .4byte _080F2F58 - .4byte _080F2F94 - .4byte _080F3064 - .4byte _080F3080 - .4byte _080F30E0 - .4byte _080F30E0 - .4byte _080F30A8 - .4byte _080F30AE - .4byte _080F30E0 - .4byte _080F30E0 - .4byte _080F30FC -_080F2AE0: - ldr r0, =gStringVar1 - ldrb r1, [r6, 0x1C] - bl sub_818E868 - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - adds r1, r6, 0 - adds r1, 0x14 - ldrb r2, [r6, 0x1D] - bl sub_81DB5E8 - ldrb r0, [r6, 0xD] - ldrb r1, [r6, 0xE] - cmp r0, r1 - bne _080F2B38 - cmp r0, 0 - bne _080F2B2C - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F311C - .pool -_080F2B2C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F311C - .pool -_080F2B38: - cmp r0, r1 - bls _080F2B48 - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F311C - .pool -_080F2B48: - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F311C - .pool -_080F2B54: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldrb r1, [r6, 0xF] - cmp r1, 0x8 - bne _080F2B6C - b _080F2CF0 -_080F2B6C: - cmp r1, 0x8 - bgt _080F2B88 -_080F2B70: - cmp r1, 0x2 - bne _080F2B76 - b _080F2CD8 -_080F2B76: - cmp r1, 0x2 - bgt _080F2B7C - b _080F2C96 -_080F2B7C: - b _080F2CAC - .pool -_080F2B88: - cmp r1, 0x20 - bne _080F2B8E - b _080F2D08 -_080F2B8E: - cmp r1, 0x20 - bgt _080F2B94 - b _080F2CBA -_080F2B94: - cmp r1, 0x40 - bne _080F2B9A - b _080F2D14 -_080F2B9A: - cmp r1, 0x80 - beq _080F2BA0 - b _080F311C -_080F2BA0: - b _080F2D20 -_080F2BA2: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy -_080F2BB2: - ldrb r1, [r6, 0xF] - cmp r1, 0x8 - bne _080F2BBA - b _080F2CF0 -_080F2BBA: - cmp r1, 0x8 - ble _080F2B70 - b _080F2B88 - .pool -_080F2BC8: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - adds r1, r6, 0 - adds r1, 0x14 - ldrb r2, [r6, 0x1D] - bl sub_81DB5E8 - b _080F2BB2 - .pool -_080F2BF4: - ldrb r0, [r6, 0x1C] - cmp r0, 0x4 - bhi _080F2C74 - lsls r0, 2 - ldr r1, =_080F2C08 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F2C08: - .4byte _080F2C1C - .4byte _080F2C30 - .4byte _080F2C44 - .4byte _080F2C58 - .4byte _080F2C6C -_080F2C1C: - ldr r0, =gStringVar1 - ldr r1, =gText_Cool - bl StringCopy - b _080F2C74 - .pool -_080F2C30: - ldr r0, =gStringVar1 - ldr r1, =gText_Beauty - bl StringCopy - b _080F2C74 - .pool -_080F2C44: - ldr r0, =gStringVar1 - ldr r1, =gText_Cute - bl StringCopy - b _080F2C74 - .pool -_080F2C58: - ldr r0, =gStringVar1 - ldr r1, =gText_Smart - bl StringCopy - b _080F2C74 - .pool -_080F2C6C: - ldr r0, =gStringVar1 - ldr r1, =gText_Tough - bl StringCopy -_080F2C74: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldrb r1, [r6, 0xF] - cmp r1, 0x8 - beq _080F2CF0 - cmp r1, 0x8 - bgt _080F2CB2 - cmp r1, 0x2 - beq _080F2CD8 - cmp r1, 0x2 - bgt _080F2CAC -_080F2C96: - cmp r1, 0x1 - beq _080F2CCA - b _080F311C - .pool -_080F2CAC: - cmp r1, 0x4 - beq _080F2CE4 - b _080F311C -_080F2CB2: - cmp r1, 0x20 - beq _080F2D08 - cmp r1, 0x20 - bgt _080F2CC0 -_080F2CBA: - cmp r1, 0x10 - beq _080F2CFC - b _080F311C -_080F2CC0: - cmp r1, 0x40 - beq _080F2D14 - cmp r1, 0x80 - beq _080F2D20 - b _080F311C -_080F2CCA: - ldr r1, =gUnknown_0203A030 - movs r0, 0x8 - strb r0, [r1] - b _080F311C - .pool -_080F2CD8: - ldr r1, =gUnknown_0203A030 - movs r0, 0x5 - strb r0, [r1] - b _080F311C - .pool -_080F2CE4: - ldr r1, =gUnknown_0203A030 - movs r0, 0xE - strb r0, [r1] - b _080F311C - .pool -_080F2CF0: - ldr r1, =gUnknown_0203A030 - movs r0, 0x7 - strb r0, [r1] - b _080F311C - .pool -_080F2CFC: - ldr r1, =gUnknown_0203A030 - movs r0, 0x6 - strb r0, [r1] - b _080F311C - .pool -_080F2D08: - ldr r1, =gUnknown_0203A030 - movs r0, 0x14 - strb r0, [r1] - b _080F311C - .pool -_080F2D14: - ldr r1, =gUnknown_0203A030 - movs r0, 0x15 - strb r0, [r1] - b _080F311C - .pool -_080F2D20: - ldr r1, =gUnknown_0203A030 - movs r0, 0x16 - strb r0, [r1] - b _080F311C - .pool -_080F2D2C: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - b _080F2F72 - .pool -_080F2D40: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - b _080F2F72 - .pool -_080F2D54: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - b _080F2F72 - .pool -_080F2D68: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldrb r0, [r6, 0x1C] - cmp r0, 0x4 - bls _080F2D80 - b _080F311C -_080F2D80: - lsls r0, 2 - ldr r1, =_080F2D98 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F2D98: - .4byte _080F2DAC - .4byte _080F2DB8 - .4byte _080F2DC4 - .4byte _080F2DD0 - .4byte _080F2DDC -_080F2DAC: - ldr r1, =gUnknown_0203A030 - movs r0, 0x9 - strb r0, [r1] - b _080F311C - .pool -_080F2DB8: - ldr r1, =gUnknown_0203A030 - movs r0, 0xA - strb r0, [r1] - b _080F311C - .pool -_080F2DC4: - ldr r1, =gUnknown_0203A030 - movs r0, 0xB - strb r0, [r1] - b _080F311C - .pool -_080F2DD0: - ldr r1, =gUnknown_0203A030 - movs r0, 0xC - strb r0, [r1] - b _080F311C - .pool -_080F2DDC: - ldr r1, =gUnknown_0203A030 - movs r0, 0xD - strb r0, [r1] - b _080F311C - .pool -_080F2DE8: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - b _080F2F72 - .pool -_080F2DFC: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - b _080F2F72 - .pool -_080F2E10: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - b _080F2F72 - .pool -_080F2E24: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - b _080F2F72 - .pool -_080F2E38: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - b _080F2F72 - .pool -_080F2E4C: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldrb r0, [r6, 0x1C] - cmp r0, 0x4 - bls _080F2E64 - b _080F311C -_080F2E64: - lsls r0, 2 - ldr r1, =_080F2E7C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F2E7C: - .4byte _080F2E90 - .4byte _080F2E9C - .4byte _080F2EA8 - .4byte _080F2EB4 - .4byte _080F2EC0 -_080F2E90: - ldr r1, =gUnknown_0203A030 - movs r0, 0xF - strb r0, [r1] - b _080F311C - .pool -_080F2E9C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x10 - strb r0, [r1] - b _080F311C - .pool -_080F2EA8: - ldr r1, =gUnknown_0203A030 - movs r0, 0x11 - strb r0, [r1] - b _080F311C - .pool -_080F2EB4: - ldr r1, =gUnknown_0203A030 - movs r0, 0x12 - strb r0, [r1] - b _080F311C - .pool -_080F2EC0: - ldr r1, =gUnknown_0203A030 - movs r0, 0x13 - strb r0, [r1] - b _080F311C - .pool -_080F2ECC: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - b _080F2F72 - .pool -_080F2EE0: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - b _080F2F72 - .pool -_080F2EF4: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - b _080F2F72 - .pool -_080F2F08: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - b _080F2F72 - .pool -_080F2F1C: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - b _080F2F72 - .pool -_080F2F30: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - b _080F2F72 - .pool -_080F2F44: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - b _080F2F72 - .pool -_080F2F58: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - ldrh r2, [r6, 0x10] - movs r1, 0xD - muls r1, r2 - ldr r2, =gMoveNames -_080F2F72: - adds r1, r2 - bl StringCopy - ldr r1, =gUnknown_0203A030 - movs r0, 0x17 - strb r0, [r1] - b _080F311C - .pool -_080F2F94: - ldr r0, =gStringVar1 - ldrh r1, [r6, 0x12] - movs r5, 0xB - muls r1, r5 - ldr r4, =gSpeciesNames - adds r1, r4 - bl StringCopy - ldr r0, =gStringVar2 - adds r1, r6, 0x4 - ldrb r2, [r6, 0x1E] - bl sub_81DB5E8 - ldr r0, =gStringVar3 - ldrh r1, [r6, 0x2] - muls r1, r5 - adds r1, r4 - bl StringCopy - ldrb r0, [r6, 0xC] - cmp r0, 0x8 - beq _080F3028 - cmp r0, 0x8 - bgt _080F2FEA - cmp r0, 0x2 - beq _080F3010 - cmp r0, 0x2 - bgt _080F2FE4 - cmp r0, 0x1 - beq _080F3002 - b _080F311C - .pool -_080F2FE4: - cmp r0, 0x4 - beq _080F301C - b _080F311C -_080F2FEA: - cmp r0, 0x20 - beq _080F3040 - cmp r0, 0x20 - bgt _080F2FF8 - cmp r0, 0x10 - beq _080F3034 - b _080F311C -_080F2FF8: - cmp r0, 0x40 - beq _080F304C - cmp r0, 0x80 - beq _080F3058 - b _080F311C -_080F3002: - ldr r1, =gUnknown_0203A030 - movs r0, 0x1F - strb r0, [r1] - b _080F311C - .pool -_080F3010: - ldr r1, =gUnknown_0203A030 - movs r0, 0x1E - strb r0, [r1] - b _080F311C - .pool -_080F301C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x1D - strb r0, [r1] - b _080F311C - .pool -_080F3028: - ldr r1, =gUnknown_0203A030 - movs r0, 0x1C - strb r0, [r1] - b _080F311C - .pool -_080F3034: - ldr r1, =gUnknown_0203A030 - movs r0, 0x1B - strb r0, [r1] - b _080F311C - .pool -_080F3040: - ldr r1, =gUnknown_0203A030 - movs r0, 0x1A - strb r0, [r1] - b _080F311C - .pool -_080F304C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x19 - strb r0, [r1] - b _080F311C - .pool -_080F3058: - ldr r1, =gUnknown_0203A030 - movs r0, 0x18 - strb r0, [r1] - b _080F311C - .pool -_080F3064: - ldr r0, =gStringVar1 - ldrh r2, [r6, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - b _080F30EA - .pool -_080F3080: - ldr r0, =gStringVar1 - adds r1, r6, 0x4 - ldrb r2, [r6, 0x1E] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - b _080F30EA - .pool -_080F30A8: - movs r0, 0x20 - strb r0, [r2] - b _080F311C -_080F30AE: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x14 - ldrb r2, [r6, 0x1D] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - b _080F30E2 - .pool -_080F30E0: - ldr r0, =gStringVar1 -_080F30E2: - adds r1, r6, 0x4 - ldrb r2, [r6, 0x1E] - bl sub_81DB5E8 -_080F30EA: - ldr r1, =gUnknown_0203A030 - movs r0, 0x20 - strb r0, [r1] - b _080F311C - .pool -_080F30FC: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x14 - ldrb r2, [r6, 0x1D] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x12] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - bl TVShowDone -_080F311C: - ldr r0, =gUnknown_0858D27C - lsls r1, r7, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowPokemonContestLiveUpdates - - thumb_func_start DoTVShowPokemonBattleUpdate -DoTVShowPokemonBattleUpdate: @ 80F3140 - push {r4,r5,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r5, [r0] - adds r2, r0, 0 - cmp r5, 0x7 - bls _080F3168 - b _080F3362 -_080F3168: - lsls r0, r5, 2 - ldr r1, =_080F318C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F318C: - .4byte _080F31AC - .4byte _080F31CA - .4byte _080F321C - .4byte _080F3268 - .4byte _080F329C - .4byte _080F32C0 - .4byte _080F32EC - .4byte _080F3338 -_080F31AC: - ldrb r1, [r4, 0x18] - cmp r1, 0 - bge _080F31B4 - b _080F3362 -_080F31B4: - cmp r1, 0x1 - ble _080F31BE - cmp r1, 0x2 - beq _080F31C4 - b _080F3362 -_080F31BE: - movs r0, 0x1 - strb r0, [r2] - b _080F3362 -_080F31C4: - movs r0, 0x5 - strb r0, [r2] - b _080F3362 -_080F31CA: - ldr r0, =gStringVar1 - adds r1, r4, 0x4 - ldrb r2, [r4, 0x19] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x1A] - bl sub_81DB5E8 - ldrb r0, [r4, 0x18] - cmp r0, 0 - bne _080F3200 - ldr r0, =gStringVar3 - ldr r1, =gText_Single - bl StringCopy - b _080F3208 - .pool -_080F3200: - ldr r0, =gStringVar3 - ldr r1, =gText_Double - bl StringCopy -_080F3208: - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F3362 - .pool -_080F321C: - ldr r0, =gStringVar1 - adds r1, r4, 0x4 - ldrb r2, [r4, 0x19] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r4, 0x16] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - ldrh r2, [r4, 0x14] - movs r1, 0xD - muls r1, r2 - ldr r2, =gMoveNames - adds r1, r2 - bl StringCopy - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F3362 - .pool -_080F3268: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x1A] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r4, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F3362 - .pool -_080F329C: - ldr r0, =gStringVar1 - adds r1, r4, 0x4 - ldrb r2, [r4, 0x19] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x1A] - bl sub_81DB5E8 - bl TVShowDone - b _080F3362 - .pool -_080F32C0: - ldr r0, =gStringVar1 - adds r1, r4, 0x4 - ldrb r2, [r4, 0x19] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x1A] - bl sub_81DB5E8 - ldr r1, =gUnknown_0203A030 - movs r0, 0x6 - strb r0, [r1] - b _080F3362 - .pool -_080F32EC: - ldr r0, =gStringVar1 - adds r1, r4, 0x4 - ldrb r2, [r4, 0x19] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r4, 0x16] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - ldrh r2, [r4, 0x14] - movs r1, 0xD - muls r1, r2 - ldr r2, =gMoveNames - adds r1, r2 - bl StringCopy - ldr r1, =gUnknown_0203A030 - movs r0, 0x7 - strb r0, [r1] - b _080F3362 - .pool -_080F3338: - ldr r0, =gStringVar1 - adds r1, r4, 0x4 - ldrb r2, [r4, 0x19] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x1A] - bl sub_81DB5E8 - ldr r0, =gStringVar3 - ldrh r2, [r4, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - bl TVShowDone -_080F3362: - ldr r0, =gUnknown_0858D300 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowPokemonBattleUpdate - - thumb_func_start DoTVShow3CheersForPokeblocks -DoTVShow3CheersForPokeblocks: @ 80F3388 - push {r4,r5,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r5, [r0] - cmp r5, 0x5 - bls _080F33AE - b _080F3624 -_080F33AE: - lsls r0, r5, 2 - ldr r1, =_080F33D0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F33D0: - .4byte _080F33E8 - .4byte _080F3418 - .4byte _080F3500 - .4byte _080F350C - .4byte _080F35F4 - .4byte _080F3620 -_080F33E8: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x14] - bl sub_81DB5E8 - ldrb r0, [r4, 0x2] - cmp r0, 0x14 - bls _080F340C - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F3624 - .pool -_080F340C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F3624 - .pool -_080F3418: - ldrb r0, [r4, 0x3] - lsls r0, 29 - lsrs r0, 29 - cmp r0, 0x4 - bhi _080F349C - lsls r0, 2 - ldr r1, =_080F3430 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F3430: - .4byte _080F3444 - .4byte _080F3458 - .4byte _080F346C - .4byte _080F3480 - .4byte _080F3494 -_080F3444: - ldr r0, =gStringVar1 - ldr r1, =gText_Spicy2 - bl StringCopy - b _080F349C - .pool -_080F3458: - ldr r0, =gStringVar1 - ldr r1, =gText_Dry2 - bl StringCopy - b _080F349C - .pool -_080F346C: - ldr r0, =gStringVar1 - ldr r1, =gText_Sweet2 - bl StringCopy - b _080F349C - .pool -_080F3480: - ldr r0, =gStringVar1 - ldr r1, =gText_Bitter2 - bl StringCopy - b _080F349C - .pool -_080F3494: - ldr r0, =gStringVar1 - ldr r1, =gText_Sour2 - bl StringCopy -_080F349C: - ldrb r0, [r4, 0x2] - cmp r0, 0x18 - bls _080F34BC - ldr r0, =gStringVar2 - ldr r1, =gText_Excellent - bl StringCopy - b _080F34DC - .pool -_080F34BC: - cmp r0, 0x16 - bls _080F34D4 - ldr r0, =gStringVar2 - ldr r1, =gText_VeryGood - bl StringCopy - b _080F34DC - .pool -_080F34D4: - ldr r0, =gStringVar2 - ldr r1, =gText_Good - bl StringCopy -_080F34DC: - ldr r0, =gStringVar3 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x14] - bl sub_81DB5E8 - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F3624 - .pool -_080F3500: - ldr r0, =gStringVar1 - adds r1, r4, 0x4 - ldrb r2, [r4, 0x15] - b _080F3606 - .pool -_080F350C: - ldrb r0, [r4, 0x3] - lsls r0, 29 - lsrs r0, 29 - cmp r0, 0x4 - bhi _080F3590 - lsls r0, 2 - ldr r1, =_080F3524 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F3524: - .4byte _080F3538 - .4byte _080F354C - .4byte _080F3560 - .4byte _080F3574 - .4byte _080F3588 -_080F3538: - ldr r0, =gStringVar1 - ldr r1, =gText_Spicy2 - bl StringCopy - b _080F3590 - .pool -_080F354C: - ldr r0, =gStringVar1 - ldr r1, =gText_Dry2 - bl StringCopy - b _080F3590 - .pool -_080F3560: - ldr r0, =gStringVar1 - ldr r1, =gText_Sweet2 - bl StringCopy - b _080F3590 - .pool -_080F3574: - ldr r0, =gStringVar1 - ldr r1, =gText_Bitter2 - bl StringCopy - b _080F3590 - .pool -_080F3588: - ldr r0, =gStringVar1 - ldr r1, =gText_Sour2 - bl StringCopy -_080F3590: - ldrb r0, [r4, 0x2] - cmp r0, 0x10 - bls _080F35B0 - ldr r0, =gStringVar2 - ldr r1, =gText_SoSo - bl StringCopy - b _080F35D0 - .pool -_080F35B0: - cmp r0, 0xD - bls _080F35C8 - ldr r0, =gStringVar2 - ldr r1, =gText_Bad - bl StringCopy - b _080F35D0 - .pool -_080F35C8: - ldr r0, =gStringVar2 - ldr r1, =gText_TheWorst - bl StringCopy -_080F35D0: - ldr r0, =gStringVar3 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x14] - bl sub_81DB5E8 - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F3624 - .pool -_080F35F4: - ldr r0, =gStringVar1 - adds r1, r4, 0x4 - ldrb r2, [r4, 0x15] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x14] -_080F3606: - bl sub_81DB5E8 - ldr r1, =gUnknown_0203A030 - movs r0, 0x5 - strb r0, [r1] - b _080F3624 - .pool -_080F3620: - bl TVShowDone -_080F3624: - ldr r0, =gUnknown_0858D228 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShow3CheersForPokeblocks - - thumb_func_start DoTVShowInSearchOfTrainers -DoTVShowInSearchOfTrainers: @ 80F363C - push {r4-r7,lr} - ldr r0, =gScriptResult - movs r1, 0 - strh r1, [r0] - ldr r0, =gUnknown_0203A030 - ldrb r7, [r0] - adds r2, r0, 0 - cmp r7, 0x8 - bls _080F3650 - b _080F37EA -_080F3650: - lsls r0, r7, 2 - ldr r1, =_080F3668 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F3668: - .4byte _080F368C - .4byte _080F36D4 - .4byte _080F36DA - .4byte _080F372C - .4byte _080F379C - .4byte _080F379C - .4byte _080F379C - .4byte _080F379C - .4byte _080F37A2 -_080F368C: - ldr r0, =gStringVar1 - ldr r4, =gSaveBlock1Ptr - ldr r1, [r4] - ldr r2, =0x00002bac - adds r1, r2 - ldrb r1, [r1] - movs r2, 0 - bl GetMapName - ldr r0, [r4] - ldr r1, =0x00002bad - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x1 - bls _080F36C8 - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F37EA - .pool -_080F36C8: - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F37EA - .pool -_080F36D4: - movs r0, 0x2 - strb r0, [r2] - b _080F37EA -_080F36DA: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x00002bae - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080F36FC - movs r0, 0x4 - strb r0, [r2] - b _080F37EA - .pool -_080F36FC: - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080F370A - movs r0, 0x5 - strb r0, [r2] - b _080F37EA -_080F370A: - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080F3718 - movs r0, 0x6 - strb r0, [r2] - b _080F37EA -_080F3718: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080F3726 - movs r0, 0x7 - strb r0, [r2] - b _080F37EA -_080F3726: - movs r0, 0x3 - strb r0, [r2] - b _080F37EA -_080F372C: - ldr r0, =gStringVar1 - ldr r4, =gSaveBlock1Ptr - ldr r1, [r4] - ldr r2, =0x00002ba4 - adds r1, r2 - ldrh r1, [r1] - movs r6, 0xB - muls r1, r6 - ldr r5, =gSpeciesNames - adds r1, r5 - bl StringCopy - ldr r0, =gStringVar2 - ldr r1, [r4] - ldr r2, =0x00002ba8 - adds r1, r2 - ldrh r2, [r1] - movs r1, 0xD - muls r1, r2 - ldr r2, =gMoveNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - ldr r1, [r4] - ldr r2, =0x00002ba6 - adds r1, r2 - ldrh r1, [r1] - muls r1, r6 - adds r1, r5 - bl StringCopy - ldr r1, =gUnknown_0203A030 - movs r0, 0x8 - strb r0, [r1] - b _080F37EA - .pool -_080F379C: - movs r0, 0x8 - strb r0, [r2] - b _080F37EA -_080F37A2: - ldr r0, =gStringVar1 - ldr r4, =gSaveBlock1Ptr - ldr r1, [r4] - ldr r2, =0x00002baa - adds r1, r2 - ldrh r1, [r1] - bl CopyEasyChatWord - ldr r0, =gStringVar2 - ldr r1, [r4] - ldr r2, =0x00002ba4 - adds r1, r2 - ldrh r1, [r1] - movs r6, 0xB - muls r1, r6 - ldr r5, =gSpeciesNames - adds r1, r5 - bl StringCopy - ldr r0, =gStringVar3 - ldr r1, [r4] - ldr r2, =0x00002ba6 - adds r1, r2 - ldrh r1, [r1] - muls r1, r6 - adds r1, r5 - bl StringCopy - ldr r1, =gScriptResult - movs r0, 0x1 - strh r0, [r1] - ldr r1, =gUnknown_0203A030 - movs r0, 0 - strb r0, [r1] - bl TakeTVShowInSearchOfTrainersOffTheAir -_080F37EA: - ldr r0, =gUnknown_0858D66C - lsls r1, r7, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowInSearchOfTrainers - - thumb_func_start DoTVShowPokemonAngler -DoTVShowPokemonAngler: @ 80F3828 - push {r4,r5,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r0, =gScriptResult - movs r1, 0 - strh r1, [r0] - ldrb r0, [r4, 0x2] - ldrb r2, [r4, 0x3] - cmp r0, r2 - bcs _080F3868 - ldr r0, =gUnknown_0203A030 - strb r1, [r0] - b _080F3870 - .pool -_080F3868: - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - adds r0, r1, 0 -_080F3870: - ldrb r5, [r0] - cmp r5, 0 - beq _080F3880 - cmp r5, 0x1 - beq _080F38B8 - b _080F38E0 - .pool -_080F3880: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x6] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r4, 0x4] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldrb r1, [r4, 0x3] - movs r0, 0x2 - bl sub_80EF340 - bl TVShowDone - b _080F38E0 - .pool -_080F38B8: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x6] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r4, 0x4] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldrb r1, [r4, 0x2] - movs r0, 0x2 - bl sub_80EF340 - bl TVShowDone -_080F38E0: - ldr r0, =gUnknown_0858D3B0 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowPokemonAngler - - thumb_func_start DoTVShowTheWorldOfMasters -DoTVShowTheWorldOfMasters: @ 80F3904 - push {r4-r6,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r6, =gUnknown_0203A030 - ldrb r5, [r6] - cmp r5, 0x1 - beq _080F3974 - cmp r5, 0x1 - bgt _080F3948 - cmp r5, 0 - beq _080F394E - b _080F39BE - .pool -_080F3948: - cmp r5, 0x2 - beq _080F3994 - b _080F39BE -_080F394E: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0xB] - bl sub_81DB5E8 - ldrh r1, [r4, 0x6] - movs r0, 0x1 - bl sub_80EF340 - ldrh r1, [r4, 0x2] - movs r0, 0x2 - bl sub_80EF340 - movs r0, 0x1 - strb r0, [r6] - b _080F39BE - .pool -_080F3974: - ldr r0, =gStringVar1 - ldrh r2, [r4, 0x8] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - movs r0, 0x2 - strb r0, [r6] - b _080F39BE - .pool -_080F3994: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0xB] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrb r1, [r4, 0xA] - movs r2, 0 - bl GetMapName - ldr r0, =gStringVar3 - ldrh r2, [r4, 0x4] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - bl TVShowDone -_080F39BE: - ldr r0, =gUnknown_0858D3B8 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowTheWorldOfMasters - - thumb_func_start DoTVShowTodaysRivalTrainer -DoTVShowTodaysRivalTrainer: @ 80F39E4 - push {r4,r5,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r5, [r0] - adds r2, r0, 0 - cmp r5, 0xA - bls _080F3A0C - b _080F3BE8 -_080F3A0C: - lsls r0, r5, 2 - ldr r1, =_080F3A30 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F3A30: - .4byte _080F3A5C - .4byte _080F3B30 - .4byte _080F3B58 - .4byte _080F3B90 - .4byte _080F3BA2 - .4byte _080F3BC4 - .4byte _080F3BD8 - .4byte _080F3A92 - .4byte _080F3AC0 - .4byte _080F3ADC - .4byte _080F3AF8 -_080F3A5C: - ldrb r0, [r4, 0x7] - cmp r0, 0x56 - beq _080F3A6C - cmp r0, 0x57 - beq _080F3A72 - movs r0, 0x7 - strb r0, [r2] - b _080F3BE8 -_080F3A6C: - movs r0, 0x8 - strb r0, [r2] - b _080F3BE8 -_080F3A72: - ldrh r1, [r4, 0xA] - ldr r0, =0x00000117 - cmp r1, r0 - bgt _080F3A8C - subs r0, 0x2 - cmp r1, r0 - blt _080F3A8C - movs r0, 0xA - strb r0, [r2] - b _080F3BE8 - .pool -_080F3A8C: - movs r0, 0x9 - strb r0, [r2] - b _080F3BE8 -_080F3A92: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0xC] - bl sub_81DB5E8 - ldrh r1, [r4, 0x2] - movs r0, 0x1 - bl sub_80EF340 - ldr r0, =gStringVar3 - ldrb r1, [r4, 0x7] - movs r2, 0 - bl GetMapName -_080F3AB0: - ldrb r0, [r4, 0x4] - cmp r0, 0 - bne _080F3B12 - b _080F3B24 - .pool -_080F3AC0: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0xC] - bl sub_81DB5E8 - ldrh r1, [r4, 0x2] - movs r0, 0x1 - bl sub_80EF340 - b _080F3AB0 - .pool -_080F3ADC: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0xC] - bl sub_81DB5E8 - ldrh r1, [r4, 0x2] - movs r0, 0x1 - bl sub_80EF340 - b _080F3AB0 - .pool -_080F3AF8: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0xC] - bl sub_81DB5E8 - ldrh r1, [r4, 0x2] - movs r0, 0x1 - bl sub_80EF340 - ldrb r0, [r4, 0x4] - cmp r0, 0 - beq _080F3B24 -_080F3B12: - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F3BE8 - .pool -_080F3B24: - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F3BE8 - .pool -_080F3B30: - ldrb r1, [r4, 0x4] - movs r0, 0 - bl sub_80EF340 - ldr r0, =0x000008a8 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _080F3BCC - ldr r0, [r4, 0x4] - ldr r1, =0x00ffff00 - ands r0, r1 - cmp r0, 0 - bne _080F3B6E - b _080F3B84 - .pool -_080F3B58: - ldr r0, =0x000008a8 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _080F3BCC - ldr r0, [r4, 0x4] - ldr r1, =0x00ffff00 - ands r0, r1 - cmp r0, 0 - beq _080F3B84 -_080F3B6E: - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F3BE8 - .pool -_080F3B84: - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F3BE8 - .pool -_080F3B90: - ldrh r0, [r4, 0x8] - cmp r0, 0 - bne _080F3B9C - movs r0, 0x6 - strb r0, [r2] - b _080F3BE8 -_080F3B9C: - movs r0, 0x5 - strb r0, [r2] - b _080F3BE8 -_080F3BA2: - ldrb r1, [r4, 0x6] - movs r0, 0 - bl sub_80EF340 - ldrb r1, [r4, 0x5] - movs r0, 0x1 - bl sub_80EF340 - ldrh r0, [r4, 0x8] - cmp r0, 0 - beq _080F3BCC - ldr r1, =gUnknown_0203A030 - movs r0, 0x5 - strb r0, [r1] - b _080F3BE8 - .pool -_080F3BC4: - ldrh r1, [r4, 0x8] - movs r0, 0 - bl sub_80EF340 -_080F3BCC: - ldr r1, =gUnknown_0203A030 - movs r0, 0x6 - strb r0, [r1] - b _080F3BE8 - .pool -_080F3BD8: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0xC] - bl sub_81DB5E8 - bl TVShowDone -_080F3BE8: - ldr r0, =gUnknown_0858D3C4 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowTodaysRivalTrainer - - thumb_func_start DoTVShowDewfordTrendWatcherNetwork -DoTVShowDewfordTrendWatcherNetwork: @ 80F3C04 - push {r4,r5,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r5, [r0] - cmp r5, 0x6 - bls _080F3C2A - b _080F3D54 -_080F3C2A: - lsls r0, r5, 2 - ldr r1, =_080F3C4C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F3C4C: - .4byte _080F3C68 - .4byte _080F3CA0 - .4byte _080F3CA0 - .4byte _080F3CD4 - .4byte _080F3D0C - .4byte _080F3D0C - .4byte _080F3D40 -_080F3C68: - ldr r0, =gStringVar1 - ldrh r1, [r4, 0x4] - bl CopyEasyChatWord - ldr r0, =gStringVar2 - ldrh r1, [r4, 0x6] - bl CopyEasyChatWord - ldrb r0, [r4, 0x8] - cmp r0, 0 - bne _080F3C94 - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F3D54 - .pool -_080F3C94: - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F3D54 - .pool -_080F3CA0: - ldr r0, =gStringVar1 - ldrh r1, [r4, 0x4] - bl CopyEasyChatWord - ldr r0, =gStringVar2 - ldrh r1, [r4, 0x6] - bl CopyEasyChatWord - ldr r0, =gStringVar3 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x9] - bl sub_81DB5E8 - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F3D54 - .pool -_080F3CD4: - ldr r0, =gStringVar1 - ldrh r1, [r4, 0x4] - bl CopyEasyChatWord - ldr r0, =gStringVar2 - ldrh r1, [r4, 0x6] - bl CopyEasyChatWord - ldrb r0, [r4, 0x8] - cmp r0, 0 - bne _080F3D00 - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F3D54 - .pool -_080F3D00: - ldr r1, =gUnknown_0203A030 - movs r0, 0x5 - strb r0, [r1] - b _080F3D54 - .pool -_080F3D0C: - ldr r0, =gStringVar1 - ldrh r1, [r4, 0x4] - bl CopyEasyChatWord - ldr r0, =gStringVar2 - ldrh r1, [r4, 0x6] - bl CopyEasyChatWord - ldr r0, =gStringVar3 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x9] - bl sub_81DB5E8 - ldr r1, =gUnknown_0203A030 - movs r0, 0x6 - strb r0, [r1] - b _080F3D54 - .pool -_080F3D40: - ldr r0, =gStringVar1 - ldrh r1, [r4, 0x4] - bl CopyEasyChatWord - ldr r0, =gStringVar2 - ldrh r1, [r4, 0x6] - bl CopyEasyChatWord - bl TVShowDone -_080F3D54: - ldr r0, =gUnknown_0858D3F0 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowDewfordTrendWatcherNetwork - - thumb_func_start DoTVShowHoennTreasureInvestigators -DoTVShowHoennTreasureInvestigators: @ 80F3D74 - push {r4-r7,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r5, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r7, =gUnknown_0203A030 - ldrb r6, [r7] - cmp r6, 0x1 - beq _080F3E02 - cmp r6, 0x1 - bgt _080F3DB8 - cmp r6, 0 - beq _080F3DBE - b _080F3E5C - .pool -_080F3DB8: - cmp r6, 0x2 - beq _080F3E3C - b _080F3E5C -_080F3DBE: - ldr r4, =gStringVar1 - ldrh r0, [r5, 0x2] - bl ItemId_GetItem - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldrb r0, [r5, 0x4] - cmp r0, 0x57 - bne _080F3DFC - ldrh r1, [r5, 0x6] - ldr r0, =0x00000117 - cmp r1, r0 - bgt _080F3DF0 - subs r0, 0x2 - cmp r1, r0 - blt _080F3DF0 - movs r0, 0x2 - strb r0, [r7] - b _080F3E5C - .pool -_080F3DF0: - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F3E5C - .pool -_080F3DFC: - movs r0, 0x1 - strb r0, [r7] - b _080F3E5C -_080F3E02: - ldr r4, =gStringVar1 - ldrh r0, [r5, 0x2] - bl ItemId_GetItem - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldr r0, =gStringVar2 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x5] - bl sub_81DB5E8 - ldr r0, =gStringVar3 - ldrb r1, [r5, 0x4] - movs r2, 0 - bl GetMapName - bl TVShowDone - b _080F3E5C - .pool -_080F3E3C: - ldr r4, =gStringVar1 - ldrh r0, [r5, 0x2] - bl ItemId_GetItem - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldr r0, =gStringVar2 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x5] - bl sub_81DB5E8 - bl TVShowDone -_080F3E5C: - ldr r0, =gUnknown_0858D40C - lsls r1, r6, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowHoennTreasureInvestigators - - thumb_func_start DoTVShowFindThatGamer -DoTVShowFindThatGamer: @ 80F3E7C - push {r4,r5,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r5, [r0] - cmp r5, 0x1 - beq _080F3F28 - cmp r5, 0x1 - bgt _080F3EC0 - cmp r5, 0 - beq _080F3ECC - b _080F4008 - .pool -_080F3EC0: - cmp r5, 0x2 - beq _080F3F78 - cmp r5, 0x3 - bne _080F3ECA - b _080F3FCC -_080F3ECA: - b _080F4008 -_080F3ECC: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x8] - bl sub_81DB5E8 - ldrb r0, [r4, 0x3] - cmp r0, 0 - beq _080F3EE8 - cmp r0, 0x1 - beq _080F3EFC - b _080F3F04 - .pool -_080F3EE8: - ldr r0, =gStringVar2 - ldr r1, =gText_Slots - bl StringCopy - b _080F3F04 - .pool -_080F3EFC: - ldr r0, =gStringVar2 - ldr r1, =gText_Roulette - bl StringCopy -_080F3F04: - ldrb r1, [r4, 0x2] - cmp r1, 0x1 - bne _080F3F1C - ldr r0, =gUnknown_0203A030 - strb r1, [r0] - b _080F4008 - .pool -_080F3F1C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F4008 - .pool -_080F3F28: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x8] - bl sub_81DB5E8 - ldrb r0, [r4, 0x3] - cmp r0, 0 - beq _080F3F44 - cmp r0, 0x1 - beq _080F3F58 - b _080F3F60 - .pool -_080F3F44: - ldr r0, =gStringVar2 - ldr r1, =gText_Slots - bl StringCopy - b _080F3F60 - .pool -_080F3F58: - ldr r0, =gStringVar2 - ldr r1, =gText_Roulette - bl StringCopy -_080F3F60: - ldrh r1, [r4, 0x4] - movs r0, 0x2 - bl sub_80EF340 - bl TVShowDone - b _080F4008 - .pool -_080F3F78: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x8] - bl sub_81DB5E8 - ldrb r0, [r4, 0x3] - cmp r0, 0 - beq _080F3F94 - cmp r0, 0x1 - beq _080F3FA8 - b _080F3FB0 - .pool -_080F3F94: - ldr r0, =gStringVar2 - ldr r1, =gText_Slots - bl StringCopy - b _080F3FB0 - .pool -_080F3FA8: - ldr r0, =gStringVar2 - ldr r1, =gText_Roulette - bl StringCopy -_080F3FB0: - ldrh r1, [r4, 0x4] - movs r0, 0x2 - bl sub_80EF340 - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F4008 - .pool -_080F3FCC: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x8] - bl sub_81DB5E8 - ldrb r1, [r4, 0x3] - cmp r1, 0 - beq _080F3FE8 - cmp r1, 0x1 - beq _080F3FFC - b _080F4004 - .pool -_080F3FE8: - ldr r0, =gStringVar2 - ldr r1, =gText_Roulette - bl StringCopy - b _080F4004 - .pool -_080F3FFC: - ldr r0, =gStringVar2 - ldr r1, =gText_Slots - bl StringCopy -_080F4004: - bl TVShowDone -_080F4008: - ldr r0, =gUnknown_0858D418 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowFindThatGamer - - thumb_func_start DoTVShowBreakingNewsTV -DoTVShowBreakingNewsTV: @ 80F4028 - push {r4-r7,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r6, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r7, [r0] - adds r2, r0, 0 - cmp r7, 0xC - bls _080F4050 - b _080F4344 -_080F4050: - lsls r0, r7, 2 - ldr r1, =_080F4074 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F4074: - .4byte _080F40A8 - .4byte _080F40BA - .4byte _080F40FC - .4byte _080F4140 - .4byte _080F4168 - .4byte _080F418C - .4byte _080F41D0 - .4byte _080F4254 - .4byte _080F42C8 - .4byte _080F42F4 - .4byte _080F42F4 - .4byte _080F4334 - .4byte _080F4284 -_080F40A8: - ldrb r0, [r6, 0x5] - cmp r0, 0 - bne _080F40B4 - movs r0, 0x1 - strb r0, [r2] - b _080F4344 -_080F40B4: - movs r0, 0x5 - strb r0, [r2] - b _080F4344 -_080F40BA: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x13 - ldrb r2, [r6, 0xE] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - ldrb r1, [r6, 0x4] - movs r2, 0 - bl GetMapName - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F4344 - .pool -_080F40FC: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x13 - ldrb r2, [r6, 0xE] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r1, [r6, 0x2] - movs r5, 0xB - muls r1, r5 - ldr r4, =gSpeciesNames - adds r1, r4 - bl StringCopy - ldr r0, =gStringVar3 - ldrh r1, [r6, 0xA] - muls r1, r5 - adds r1, r4 - bl StringCopy - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F4344 - .pool -_080F4140: - ldrh r1, [r6, 0x8] - movs r0, 0 - bl sub_80EF340 - ldr r4, =gStringVar2 - ldrh r0, [r6, 0x6] - bl ItemId_GetItem - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F4344 - .pool -_080F4168: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x13 - ldrb r2, [r6, 0xE] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrb r1, [r6, 0x4] - movs r2, 0 - bl GetMapName - bl TVShowDone - b _080F4344 - .pool -_080F418C: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x13 - ldrb r2, [r6, 0xE] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - ldrb r1, [r6, 0x4] - movs r2, 0 - bl GetMapName - ldr r1, =gUnknown_0203A030 - movs r0, 0x6 - strb r0, [r1] - b _080F4344 - .pool -_080F41D0: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x13 - ldrb r2, [r6, 0xE] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r1, [r6, 0x2] - movs r5, 0xB - muls r1, r5 - ldr r4, =gSpeciesNames - adds r1, r4 - bl StringCopy - ldr r0, =gStringVar3 - ldrh r1, [r6, 0xA] - muls r1, r5 - adds r1, r4 - bl StringCopy - ldrb r0, [r6, 0x5] - cmp r0, 0x2 - beq _080F423C - cmp r0, 0x2 - bgt _080F4218 - cmp r0, 0x1 - beq _080F421E - b _080F4344 - .pool -_080F4218: - cmp r0, 0x3 - beq _080F4248 - b _080F4344 -_080F421E: - ldrh r0, [r6, 0xC] - cmp r0, 0 - bne _080F4230 - ldr r1, =gUnknown_0203A030 - movs r0, 0xC - strb r0, [r1] - b _080F4344 - .pool -_080F4230: - ldr r1, =gUnknown_0203A030 - movs r0, 0x7 - strb r0, [r1] - b _080F4344 - .pool -_080F423C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x9 - strb r0, [r1] - b _080F4344 - .pool -_080F4248: - ldr r1, =gUnknown_0203A030 - movs r0, 0xA - strb r0, [r1] - b _080F4344 - .pool -_080F4254: - ldr r0, =gStringVar1 - ldrh r2, [r6, 0xC] - movs r1, 0xD - muls r1, r2 - ldr r2, =gMoveNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar2 - ldrh r2, [r6, 0xA] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - b _080F42A8 - .pool -_080F4284: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x13 - ldrb r2, [r6, 0xE] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r1, [r6, 0x2] - movs r5, 0xB - muls r1, r5 - ldr r4, =gSpeciesNames - adds r1, r4 - bl StringCopy - ldr r0, =gStringVar3 - ldrh r1, [r6, 0xA] - muls r1, r5 - adds r1, r4 -_080F42A8: - bl StringCopy - ldr r1, =gUnknown_0203A030 - movs r0, 0x8 - strb r0, [r1] - b _080F4344 - .pool -_080F42C8: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x13 - ldrb r2, [r6, 0xE] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrb r1, [r6, 0x4] - movs r2, 0 - bl GetMapName - ldr r1, =gUnknown_0203A030 - movs r0, 0xB - strb r0, [r1] - b _080F4344 - .pool -_080F42F4: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x13 - ldrb r2, [r6, 0xE] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r1, [r6, 0x2] - movs r4, 0xB - muls r1, r4 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - ldrb r1, [r6, 0x4] - movs r2, 0 - bl GetMapName - ldr r0, =gUnknown_0203A030 - strb r4, [r0] - b _080F4344 - .pool -_080F4334: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x13 - ldrb r2, [r6, 0xE] - bl sub_81DB5E8 - bl TVShowDone -_080F4344: - ldr r0, =gUnknown_0858D428 - lsls r1, r7, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowBreakingNewsTV - - thumb_func_start DoTVShowSecretBaseVisit -DoTVShowSecretBaseVisit: @ 80F4360 - push {r4-r6,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r5, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r6, [r0] - adds r2, r0, 0 - cmp r6, 0xD - bls _080F4388 - b _080F4588 -_080F4388: - lsls r0, r6, 2 - ldr r1, =_080F43AC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F43AC: - .4byte _080F43E4 - .4byte _080F4414 - .4byte _080F44E4 - .4byte _080F4448 - .4byte _080F44E4 - .4byte _080F449C - .4byte _080F44C0 - .4byte _080F44E4 - .4byte _080F44EA - .4byte _080F4538 - .4byte _080F4538 - .4byte _080F4538 - .4byte _080F4538 - .4byte _080F4584 -_080F43E4: - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0xC] - bl sub_81DB5E8 - ldrb r0, [r5, 0x3] - cmp r0, 0 - bne _080F4408 - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F4588 - .pool -_080F4408: - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F4588 - .pool -_080F4414: - ldr r0, =gStringVar2 - ldrb r1, [r5, 0x4] - lsls r1, 5 - ldr r2, =gDecorations + 1 - adds r1, r2 - bl StringCopy - ldrb r0, [r5, 0x3] - cmp r0, 0x1 - bne _080F443C - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F4588 - .pool -_080F443C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F4588 - .pool -_080F4448: - ldr r0, =gStringVar2 - ldrb r1, [r5, 0x5] - lsls r1, 5 - ldr r2, =gDecorations + 1 - adds r1, r2 - bl StringCopy - ldrb r1, [r5, 0x3] - cmp r1, 0x3 - beq _080F4484 - cmp r1, 0x3 - bgt _080F4470 - cmp r1, 0x2 - beq _080F4476 - b _080F4588 - .pool -_080F4470: - cmp r1, 0x4 - beq _080F4490 - b _080F4588 -_080F4476: - ldr r1, =gUnknown_0203A030 - movs r0, 0x7 - strb r0, [r1] - b _080F4588 - .pool -_080F4484: - ldr r1, =gUnknown_0203A030 - movs r0, 0x6 - strb r0, [r1] - b _080F4588 - .pool -_080F4490: - ldr r1, =gUnknown_0203A030 - movs r0, 0x5 - strb r0, [r1] - b _080F4588 - .pool -_080F449C: - ldr r0, =gStringVar2 - ldrb r1, [r5, 0x6] - lsls r1, 5 - ldr r4, =gDecorations + 1 - adds r1, r4 - bl StringCopy - ldr r0, =gStringVar3 - ldrb r1, [r5, 0x7] - lsls r1, 5 - adds r1, r4 - b _080F44CA - .pool -_080F44C0: - ldr r0, =gStringVar2 - ldrb r1, [r5, 0x6] - lsls r1, 5 - ldr r2, =gDecorations + 1 - adds r1, r2 -_080F44CA: - bl StringCopy - ldr r1, =gUnknown_0203A030 - movs r0, 0x8 - strb r0, [r1] - b _080F4588 - .pool -_080F44E4: - movs r0, 0x8 - strb r0, [r2] - b _080F4588 -_080F44EA: - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0xC] - bl sub_81DB5E8 - ldrb r1, [r5, 0x2] - cmp r1, 0x18 - bhi _080F450C - ldr r1, =gUnknown_0203A030 - movs r0, 0xC - strb r0, [r1] - b _080F4588 - .pool -_080F450C: - cmp r1, 0x31 - bhi _080F451C - ldr r1, =gUnknown_0203A030 - movs r0, 0xB - strb r0, [r1] - b _080F4588 - .pool -_080F451C: - cmp r1, 0x45 - bhi _080F452C - ldr r1, =gUnknown_0203A030 - movs r0, 0xA - strb r0, [r1] - b _080F4588 - .pool -_080F452C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x9 - strb r0, [r1] - b _080F4588 - .pool -_080F4538: - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0xC] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r5, 0x8] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - ldrh r1, [r5, 0xA] - movs r4, 0xD - muls r1, r4 - ldr r2, =gMoveNames - adds r1, r2 - bl StringCopy - ldr r0, =gUnknown_0203A030 - strb r4, [r0] - b _080F4588 - .pool -_080F4584: - bl TVShowDone -_080F4588: - ldr r0, =gUnknown_0858D45C - lsls r1, r6, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowSecretBaseVisit - - thumb_func_start DoTVShowPokemonLotterWinnerFlashReport -DoTVShowPokemonLotterWinnerFlashReport: @ 80F45A0 - push {r4-r6,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r5, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r6, [r0] - ldr r0, =gStringVar1 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x5] - bl sub_81DB5E8 - ldrb r0, [r5, 0x4] - cmp r0, 0 - bne _080F45FC - ldr r0, =gStringVar2 - ldr r1, =gText_Jackpot - bl StringCopy - b _080F4634 - .pool -_080F45FC: - cmp r0, 0x1 - bne _080F4614 - ldr r0, =gStringVar2 - ldr r1, =gText_First - bl StringCopy - b _080F4634 - .pool -_080F4614: - cmp r0, 0x2 - bne _080F462C - ldr r0, =gStringVar2 - ldr r1, =gText_Second - bl StringCopy - b _080F4634 - .pool -_080F462C: - ldr r0, =gStringVar2 - ldr r1, =gText_Third - bl StringCopy -_080F4634: - ldr r4, =gStringVar3 - ldrh r0, [r5, 0x2] - bl ItemId_GetItem - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - bl TVShowDone - ldr r1, =gUnknown_0858D494 - lsls r0, r6, 2 - adds r0, r1 - ldr r0, [r0] - bl box_related_two__2 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowPokemonLotterWinnerFlashReport - - thumb_func_start DoTVShowThePokemonBattleSeminar -DoTVShowThePokemonBattleSeminar: @ 80F466C - push {r4-r7,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r6, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r7, [r0] - cmp r7, 0x6 - bls _080F4692 - b _080F4858 -_080F4692: - lsls r0, r7, 2 - ldr r1, =_080F46B4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F46B4: - .4byte _080F46D0 - .4byte _080F4714 - .4byte _080F4760 - .4byte _080F47B4 - .4byte _080F47EC - .4byte _080F4814 - .4byte _080F4838 -_080F46D0: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x13 - ldrb r2, [r6, 0x11] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r1, [r6, 0x6] - movs r5, 0xB - muls r1, r5 - ldr r4, =gSpeciesNames - adds r1, r4 - bl StringCopy - ldr r0, =gStringVar3 - ldrh r1, [r6, 0x4] - muls r1, r5 - adds r1, r4 - bl StringCopy - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F4858 - .pool -_080F4714: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x13 - ldrb r2, [r6, 0x11] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x4] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, =gStringVar3 - ldrh r2, [r6, 0x2] - movs r1, 0xD - muls r1, r2 - ldr r2, =gMoveNames - adds r1, r2 - bl StringCopy - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F4858 - .pool -_080F4760: - ldr r0, =gStringVar1 - ldrh r2, [r6, 0x6] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 - bl StringCopy - ldrb r1, [r6, 0x10] - cmp r1, 0x2 - beq _080F479C - cmp r1, 0x2 - bgt _080F4788 - cmp r1, 0x1 - beq _080F478E - b _080F4824 - .pool -_080F4788: - cmp r1, 0x3 - beq _080F47A8 - b _080F4824 -_080F478E: - ldr r1, =gUnknown_0203A030 - movs r0, 0x5 - strb r0, [r1] - b _080F4858 - .pool -_080F479C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F4858 - .pool -_080F47A8: - ldr r0, =gUnknown_0203A030 - strb r1, [r0] - b _080F4858 - .pool -_080F47B4: - ldr r0, =gStringVar1 - ldrh r1, [r6, 0x8] - movs r5, 0xD - muls r1, r5 - ldr r4, =gMoveNames - adds r1, r4 - bl StringCopy - ldr r0, =gStringVar2 - ldrh r1, [r6, 0xA] - muls r1, r5 - adds r1, r4 - bl StringCopy - ldr r0, =gStringVar3 - ldrh r1, [r6, 0xC] - muls r1, r5 - adds r1, r4 - b _080F4820 - .pool -_080F47EC: - ldr r0, =gStringVar1 - ldrh r1, [r6, 0x8] - movs r5, 0xD - muls r1, r5 - ldr r4, =gMoveNames - adds r1, r4 - bl StringCopy - ldr r0, =gStringVar2 - ldrh r1, [r6, 0xA] - muls r1, r5 - adds r1, r4 - b _080F4820 - .pool -_080F4814: - ldr r0, =gStringVar2 - ldrh r2, [r6, 0x8] - movs r1, 0xD - muls r1, r2 - ldr r2, =gMoveNames - adds r1, r2 -_080F4820: - bl StringCopy -_080F4824: - ldr r1, =gUnknown_0203A030 - movs r0, 0x6 - strb r0, [r1] - b _080F4858 - .pool -_080F4838: - ldr r0, =gStringVar1 - ldrh r1, [r6, 0xE] - movs r5, 0xD - muls r1, r5 - ldr r4, =gMoveNames - adds r1, r4 - bl StringCopy - ldr r0, =gStringVar2 - ldrh r1, [r6, 0x2] - muls r1, r5 - adds r1, r4 - bl StringCopy - bl TVShowDone -_080F4858: - ldr r0, =gUnknown_0858D498 - lsls r1, r7, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowThePokemonBattleSeminar - - thumb_func_start DoTVShowTrainerFanClubSpecial -DoTVShowTrainerFanClubSpecial: @ 80F487C - push {r4,r5,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r5, [r0] - cmp r5, 0x5 - bls _080F48A2 - b _080F499A -_080F48A2: - lsls r0, r5, 2 - ldr r1, =_080F48C4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F48C4: - .4byte _080F48DC - .4byte _080F4944 - .4byte _080F4944 - .4byte _080F4944 - .4byte _080F4944 - .4byte _080F4978 -_080F48DC: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x18] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - adds r1, r4, 0x2 - ldrb r2, [r4, 0x17] - bl sub_81DB5E8 - ldr r0, =gStringVar3 - ldrh r1, [r4, 0x14] - bl CopyEasyChatWord - ldrb r1, [r4, 0x16] - cmp r1, 0x59 - bls _080F4918 - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F499A - .pool -_080F4918: - cmp r1, 0x45 - bls _080F4928 - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F499A - .pool -_080F4928: - cmp r1, 0x1D - bls _080F4938 - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F499A - .pool -_080F4938: - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F499A - .pool -_080F4944: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x18] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - adds r1, r4, 0x2 - ldrb r2, [r4, 0x17] - bl sub_81DB5E8 - ldrb r1, [r4, 0x16] - movs r0, 0x2 - bl sub_80EF340 - ldr r1, =gUnknown_0203A030 - movs r0, 0x5 - strb r0, [r1] - b _080F499A - .pool -_080F4978: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0xC - ldrb r2, [r4, 0x18] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - adds r1, r4, 0x2 - ldrb r2, [r4, 0x17] - bl sub_81DB5E8 - ldr r0, =gStringVar3 - ldrh r1, [r4, 0x14] - bl CopyEasyChatWord - bl TVShowDone -_080F499A: - ldr r0, =gUnknown_0858D320 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowTrainerFanClubSpecial - - thumb_func_start DoTVShowTrainerFanClub -DoTVShowTrainerFanClub: @ 80F49BC - push {r4,r5,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r5, [r0] - adds r2, r0, 0 - cmp r5, 0xB - bls _080F49E4 - b _080F4B3A -_080F49E4: - lsls r0, r5, 2 - ldr r1, =_080F4A08 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F4A08: - .4byte _080F4A38 - .4byte _080F4B14 - .4byte _080F4B14 - .4byte _080F4B14 - .4byte _080F4B14 - .4byte _080F4B14 - .4byte _080F4B14 - .4byte _080F4B14 - .4byte _080F4B14 - .4byte _080F4B14 - .4byte _080F4B14 - .4byte _080F4B1A -_080F4A38: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x8] - bl sub_81DB5E8 - adds r0, r4, 0 - adds r0, 0x23 - ldrb r0, [r0] - lsls r0, 8 - adds r1, r4, 0 - adds r1, 0x22 - ldrb r1, [r1] - adds r0, r1 - movs r1, 0xA - bl __umodsi3 - cmp r0, 0x9 - bls _080F4A60 - b _080F4B3A -_080F4A60: - lsls r0, 2 - ldr r1, =_080F4A74 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F4A74: - .4byte _080F4A9C - .4byte _080F4AA8 - .4byte _080F4AB4 - .4byte _080F4AC0 - .4byte _080F4ACC - .4byte _080F4AD8 - .4byte _080F4AE4 - .4byte _080F4AF0 - .4byte _080F4AFC - .4byte _080F4B08 -_080F4A9C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F4B3A - .pool -_080F4AA8: - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F4B3A - .pool -_080F4AB4: - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F4B3A - .pool -_080F4AC0: - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F4B3A - .pool -_080F4ACC: - ldr r1, =gUnknown_0203A030 - movs r0, 0x5 - strb r0, [r1] - b _080F4B3A - .pool -_080F4AD8: - ldr r1, =gUnknown_0203A030 - movs r0, 0x6 - strb r0, [r1] - b _080F4B3A - .pool -_080F4AE4: - ldr r1, =gUnknown_0203A030 - movs r0, 0x7 - strb r0, [r1] - b _080F4B3A - .pool -_080F4AF0: - ldr r1, =gUnknown_0203A030 - movs r0, 0x8 - strb r0, [r1] - b _080F4B3A - .pool -_080F4AFC: - ldr r1, =gUnknown_0203A030 - movs r0, 0x9 - strb r0, [r1] - b _080F4B3A - .pool -_080F4B08: - ldr r1, =gUnknown_0203A030 - movs r0, 0xA - strb r0, [r1] - b _080F4B3A - .pool -_080F4B14: - movs r0, 0xB - strb r0, [r2] - b _080F4B3A -_080F4B1A: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x8] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - ldrh r1, [r4, 0x4] - bl CopyEasyChatWord - ldr r0, =gStringVar3 - ldrh r1, [r4, 0x6] - bl CopyEasyChatWord - bl TVShowDone -_080F4B3A: - ldr r0, =gUnknown_0858D4B4 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowTrainerFanClub - - thumb_func_start DoTVShowSpotTheCuties -DoTVShowSpotTheCuties: @ 80F4B5C - push {r4,r5,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r5, [r0] - cmp r5, 0xF - bls _080F4B82 - b _080F4D84 -_080F4B82: - lsls r0, r5, 2 - ldr r1, =_080F4BA4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F4BA4: - .4byte _080F4BE4 - .4byte _080F4C30 - .4byte _080F4C30 - .4byte _080F4C30 - .4byte _080F4C64 - .4byte _080F4D64 - .4byte _080F4D64 - .4byte _080F4D64 - .4byte _080F4D64 - .4byte _080F4D64 - .4byte _080F4D64 - .4byte _080F4D64 - .4byte _080F4D64 - .4byte _080F4D64 - .4byte _080F4D64 - .4byte _080F4D80 -_080F4BE4: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0xF] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - adds r1, r4, 0x4 - ldrb r2, [r4, 0x10] - bl sub_81DB5E8 - ldrb r1, [r4, 0x2] - cmp r1, 0x9 - bhi _080F4C14 - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F4D84 - .pool -_080F4C14: - cmp r1, 0x13 - bhi _080F4C24 - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F4D84 - .pool -_080F4C24: - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F4D84 - .pool -_080F4C30: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0xF] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - adds r1, r4, 0x4 - ldrb r2, [r4, 0x10] - bl sub_81DB5E8 - ldrb r1, [r4, 0x2] - movs r0, 0x2 - bl sub_80EF340 - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F4D84 - .pool -_080F4C64: - ldr r0, =gStringVar2 - adds r1, r4, 0x4 - ldrb r2, [r4, 0x10] - bl sub_81DB5E8 - ldrb r0, [r4, 0x3] - cmp r0, 0x18 - bls _080F4C76 - b _080F4D84 -_080F4C76: - lsls r0, 2 - ldr r1, =_080F4C88 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F4C88: - .4byte _080F4CEC - .4byte _080F4CF8 - .4byte _080F4CF8 - .4byte _080F4CF8 - .4byte _080F4CF8 - .4byte _080F4D04 - .4byte _080F4D04 - .4byte _080F4D04 - .4byte _080F4D04 - .4byte _080F4D10 - .4byte _080F4D10 - .4byte _080F4D10 - .4byte _080F4D10 - .4byte _080F4D1C - .4byte _080F4D1C - .4byte _080F4D1C - .4byte _080F4D1C - .4byte _080F4D28 - .4byte _080F4D28 - .4byte _080F4D28 - .4byte _080F4D28 - .4byte _080F4D34 - .4byte _080F4D40 - .4byte _080F4D4C - .4byte _080F4D58 -_080F4CEC: - ldr r1, =gUnknown_0203A030 - movs r0, 0x5 - strb r0, [r1] - b _080F4D84 - .pool -_080F4CF8: - ldr r1, =gUnknown_0203A030 - movs r0, 0x6 - strb r0, [r1] - b _080F4D84 - .pool -_080F4D04: - ldr r1, =gUnknown_0203A030 - movs r0, 0x7 - strb r0, [r1] - b _080F4D84 - .pool -_080F4D10: - ldr r1, =gUnknown_0203A030 - movs r0, 0x8 - strb r0, [r1] - b _080F4D84 - .pool -_080F4D1C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x9 - strb r0, [r1] - b _080F4D84 - .pool -_080F4D28: - ldr r1, =gUnknown_0203A030 - movs r0, 0xA - strb r0, [r1] - b _080F4D84 - .pool -_080F4D34: - ldr r1, =gUnknown_0203A030 - movs r0, 0xB - strb r0, [r1] - b _080F4D84 - .pool -_080F4D40: - ldr r1, =gUnknown_0203A030 - movs r0, 0xC - strb r0, [r1] - b _080F4D84 - .pool -_080F4D4C: - ldr r1, =gUnknown_0203A030 - movs r0, 0xD - strb r0, [r1] - b _080F4D84 - .pool -_080F4D58: - ldr r1, =gUnknown_0203A030 - movs r0, 0xE - strb r0, [r1] - b _080F4D84 - .pool -_080F4D64: - ldr r0, =gStringVar2 - adds r1, r4, 0x4 - ldrb r2, [r4, 0x10] - bl sub_81DB5E8 - ldr r1, =gUnknown_0203A030 - movs r0, 0xF - strb r0, [r1] - b _080F4D84 - .pool -_080F4D80: - bl TVShowDone -_080F4D84: - ldr r0, =gUnknown_0858D4E4 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowSpotTheCuties - - thumb_func_start DoTVShowPokemonNewsBattleFrontier -DoTVShowPokemonNewsBattleFrontier: @ 80F4D9C - push {r4-r7,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r6, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r7, [r0] - adds r2, r0, 0 - cmp r7, 0x12 - bls _080F4DC4 - b _080F5014 -_080F4DC4: - lsls r0, r7, 2 - ldr r1, =_080F4DE8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F4DE8: - .4byte _080F4E34 - .4byte _080F4F18 - .4byte _080F4ECE - .4byte _080F4EF4 - .4byte _080F4EF4 - .4byte _080F4F18 - .4byte _080F4F18 - .4byte _080F4F18 - .4byte _080F4F18 - .4byte _080F4F18 - .4byte _080F4F18 - .4byte _080F4F18 - .4byte _080F4F18 - .4byte _080F4F18 - .4byte _080F4F3C - .4byte _080F4F74 - .4byte _080F4F9C - .4byte _080F4FE0 - .4byte _080F5004 -_080F4E34: - ldrb r0, [r6, 0xD] - subs r0, 0x1 - cmp r0, 0xC - bls _080F4E3E - b _080F5014 -_080F4E3E: - lsls r0, 2 - ldr r1, =_080F4E4C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F4E4C: - .4byte _080F4E80 - .4byte _080F4E86 - .4byte _080F4E8C - .4byte _080F4E92 - .4byte _080F4E98 - .4byte _080F4E9E - .4byte _080F4EA4 - .4byte _080F4EAA - .4byte _080F4EB0 - .4byte _080F4EB6 - .4byte _080F4EBC - .4byte _080F4EC2 - .4byte _080F4EC8 -_080F4E80: - movs r0, 0x1 - strb r0, [r2] - b _080F5014 -_080F4E86: - movs r0, 0x2 - strb r0, [r2] - b _080F5014 -_080F4E8C: - movs r0, 0x3 - strb r0, [r2] - b _080F5014 -_080F4E92: - movs r0, 0x4 - strb r0, [r2] - b _080F5014 -_080F4E98: - movs r0, 0x5 - strb r0, [r2] - b _080F5014 -_080F4E9E: - movs r0, 0x6 - strb r0, [r2] - b _080F5014 -_080F4EA4: - movs r0, 0x7 - strb r0, [r2] - b _080F5014 -_080F4EAA: - movs r0, 0x8 - strb r0, [r2] - b _080F5014 -_080F4EB0: - movs r0, 0x9 - strb r0, [r2] - b _080F5014 -_080F4EB6: - movs r0, 0xA - strb r0, [r2] - b _080F5014 -_080F4EBC: - movs r0, 0xB - strb r0, [r2] - b _080F5014 -_080F4EC2: - movs r0, 0xC - strb r0, [r2] - b _080F5014 -_080F4EC8: - movs r0, 0xD - strb r0, [r2] - b _080F5014 -_080F4ECE: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x13 - ldrb r2, [r6, 0xC] - bl sub_81DB5E8 - ldrh r1, [r6, 0x2] - movs r0, 0x1 - bl sub_80EF340 - ldr r1, =gUnknown_0203A030 - movs r0, 0x10 - strb r0, [r1] - b _080F5014 - .pool -_080F4EF4: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x13 - ldrb r2, [r6, 0xC] - bl sub_81DB5E8 - ldrh r1, [r6, 0x2] - movs r0, 0x1 - bl sub_80EF340 - ldr r1, =gUnknown_0203A030 - movs r0, 0xF - strb r0, [r1] - b _080F5014 - .pool -_080F4F18: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x13 - ldrb r2, [r6, 0xC] - bl sub_81DB5E8 - ldrh r1, [r6, 0x2] - movs r0, 0x1 - bl sub_80EF340 - ldr r1, =gUnknown_0203A030 - movs r0, 0xE - strb r0, [r1] - b _080F5014 - .pool -_080F4F3C: - ldr r0, =gStringVar1 - ldrh r1, [r6, 0x4] - movs r5, 0xB - muls r1, r5 - ldr r4, =gSpeciesNames - adds r1, r4 - bl StringCopy - ldr r0, =gStringVar2 - ldrh r1, [r6, 0x6] - muls r1, r5 - adds r1, r4 - bl StringCopy - ldr r0, =gStringVar3 - ldrh r1, [r6, 0x8] - muls r1, r5 - adds r1, r4 - b _080F4FEC - .pool -_080F4F74: - ldr r0, =gStringVar1 - ldrh r1, [r6, 0x4] - movs r5, 0xB - muls r1, r5 - ldr r4, =gSpeciesNames - adds r1, r4 - bl StringCopy - ldr r0, =gStringVar2 - ldrh r1, [r6, 0x6] - muls r1, r5 - adds r1, r4 - b _080F4FEC - .pool -_080F4F9C: - ldr r0, =gStringVar1 - ldrh r1, [r6, 0x4] - movs r5, 0xB - muls r1, r5 - ldr r4, =gSpeciesNames - adds r1, r4 - bl StringCopy - ldr r0, =gStringVar2 - ldrh r1, [r6, 0x6] - muls r1, r5 - adds r1, r4 - bl StringCopy - ldr r0, =gStringVar3 - ldrh r1, [r6, 0x8] - muls r1, r5 - adds r1, r4 - bl StringCopy - ldr r1, =gUnknown_0203A030 - movs r0, 0x11 - strb r0, [r1] - b _080F5014 - .pool -_080F4FE0: - ldr r0, =gStringVar1 - ldrh r2, [r6, 0xA] - movs r1, 0xB - muls r1, r2 - ldr r2, =gSpeciesNames - adds r1, r2 -_080F4FEC: - bl StringCopy - ldr r1, =gUnknown_0203A030 - movs r0, 0x12 - strb r0, [r1] - b _080F5014 - .pool -_080F5004: - ldr r0, =gStringVar1 - adds r1, r6, 0 - adds r1, 0x13 - ldrb r2, [r6, 0xC] - bl sub_81DB5E8 - bl TVShowDone -_080F5014: - ldr r0, =gUnknown_0858D524 - lsls r1, r7, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowPokemonNewsBattleFrontier - - thumb_func_start DoTVShowWhatsNo1InHoennToday -DoTVShowWhatsNo1InHoennToday: @ 80F5030 - push {r4,r5,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r5, [r0] - cmp r5, 0x8 - bls _080F5056 - b _080F5164 -_080F5056: - lsls r0, r5, 2 - ldr r1, =_080F5078 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F5078: - .4byte _080F509C - .4byte _080F5130 - .4byte _080F5130 - .4byte _080F5130 - .4byte _080F5130 - .4byte _080F5130 - .4byte _080F5130 - .4byte _080F5130 - .4byte _080F5154 -_080F509C: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x5] - bl sub_81DB5E8 - ldrb r0, [r4, 0x4] - cmp r0, 0x6 - bhi _080F5164 - lsls r0, 2 - ldr r1, =_080F50C0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F50C0: - .4byte _080F50DC - .4byte _080F50E8 - .4byte _080F50F4 - .4byte _080F5100 - .4byte _080F510C - .4byte _080F5118 - .4byte _080F5124 -_080F50DC: - ldr r1, =gUnknown_0203A030 - movs r0, 0x1 - strb r0, [r1] - b _080F5164 - .pool -_080F50E8: - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F5164 - .pool -_080F50F4: - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F5164 - .pool -_080F5100: - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F5164 - .pool -_080F510C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x5 - strb r0, [r1] - b _080F5164 - .pool -_080F5118: - ldr r1, =gUnknown_0203A030 - movs r0, 0x6 - strb r0, [r1] - b _080F5164 - .pool -_080F5124: - ldr r1, =gUnknown_0203A030 - movs r0, 0x7 - strb r0, [r1] - b _080F5164 - .pool -_080F5130: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x5] - bl sub_81DB5E8 - ldrh r1, [r4, 0x2] - movs r0, 0x1 - bl sub_80EF340 - ldr r1, =gUnknown_0203A030 - movs r0, 0x8 - strb r0, [r1] - b _080F5164 - .pool -_080F5154: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x5] - bl sub_81DB5E8 - bl TVShowDone -_080F5164: - ldr r0, =gUnknown_0858D570 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowWhatsNo1InHoennToday - - thumb_func_start sub_80F5180 -sub_80F5180: @ 80F5180 - push {r4,lr} - movs r1, 0 - movs r2, 0 - ldr r3, [r0, 0xC] - movs r4, 0x1 -_080F518A: - adds r0, r3, 0 - lsrs r0, r1 - ands r0, r4 - cmp r0, 0 - beq _080F519A - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 -_080F519A: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x1F - bls _080F518A - adds r0, r2, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80F5180 - - thumb_func_start sub_80F51AC -sub_80F51AC: @ 80F51AC - push {r4-r6,lr} - lsls r1, 24 - lsrs r4, r1, 24 - movs r2, 0 - movs r3, 0 - ldr r1, [r0, 0xC] - movs r5, 0x1 - ldr r6, =gUnknown_0858D690 -_080F51BC: - adds r0, r1, 0 - lsrs r0, r2 - ands r0, r5 - cmp r0, 0 - beq _080F51DA - cmp r3, r4 - bne _080F51D4 - adds r0, r2, r6 - ldrb r0, [r0] - b _080F51E6 - .pool -_080F51D4: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 -_080F51DA: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x1F - bls _080F51BC - movs r0, 0 -_080F51E6: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80F51AC - - thumb_func_start DoTVShowSecretBaseSecrets -DoTVShowSecretBaseSecrets: @ 80F51EC - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r5, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r2, [r0] - mov r9, r2 - adds r2, r0, 0 - mov r0, r9 - cmp r0, 0x2B - bls _080F521E - b _080F552A -_080F521E: - lsls r0, 2 - ldr r1, =_080F5240 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F5240: - .4byte _080F52F0 - .4byte _080F5348 - .4byte _080F53C4 - .4byte _080F5444 - .4byte _080F5498 - .4byte _080F5498 - .4byte _080F5498 - .4byte _080F54C4 - .4byte _080F54E8 - .4byte _080F54EC - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F54F0 - .4byte _080F5510 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 - .4byte _080F5526 -_080F52F0: - ldr r0, =gStringVar1 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x1C] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x1B] - bl sub_81DB5E8 - adds r0, r5, 0 - bl sub_80F5180 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - bne _080F5328 - ldr r1, =gUnknown_0203A030 - movs r0, 0x8 - strb r0, [r1] - b _080F552A - .pool -_080F5328: - movs r0, 0x1 - strb r0, [r5, 0x12] - bl Random - ldr r4, =gUnknown_0203A031 - lsls r0, 16 - lsrs r0, 16 - adds r1, r6, 0 - bl __modsi3 - strb r0, [r4] - ldrb r1, [r4] - b _080F542A - .pool -_080F5348: - ldr r0, =gStringVar2 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x1B] - bl sub_81DB5E8 - adds r0, r5, 0 - bl sub_80F5180 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x1 - beq _080F53DE - cmp r6, 0x2 - beq _080F5370 - movs r4, 0 - b _080F538A - .pool -_080F5370: - strb r6, [r5, 0x12] - ldr r0, =gUnknown_0203A031 - ldrb r0, [r0] - cmp r0, 0 - bne _080F5384 - adds r0, r5, 0 - movs r1, 0x1 - b _080F542C - .pool -_080F5384: - adds r0, r5, 0 - movs r1, 0 - b _080F542C -_080F538A: - bl Random - ldr r7, =gUnknown_0203A031 - lsls r0, 16 - lsrs r0, 16 - adds r1, r6, 0 - bl __modsi3 - strb r0, [r7, 0x1] - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r7] - cmp r0, r1 - bne _080F53B2 - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - ldr r0, =0x0000fffe - cmp r4, r0 - bls _080F538A -_080F53B2: - movs r0, 0x2 - strb r0, [r5, 0x12] - ldrb r1, [r7, 0x1] - b _080F542A - .pool -_080F53C4: - ldr r0, =gStringVar2 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x1B] - bl sub_81DB5E8 - adds r0, r5, 0 - bl sub_80F5180 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x2 - bne _080F53F0 -_080F53DE: - ldr r1, =gUnknown_0203A030 - movs r0, 0x9 - strb r0, [r1] - b _080F552A - .pool -_080F53F0: - movs r4, 0 - ldr r7, =gUnknown_0203A031 - ldr r2, =0x0000fffe - mov r8, r2 -_080F53F8: - bl Random - lsls r0, 16 - lsrs r0, 16 - adds r1, r6, 0 - bl __modsi3 - strb r0, [r7, 0x2] - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r7] - cmp r0, r1 - beq _080F5418 - ldrb r2, [r7, 0x1] - cmp r0, r2 - bne _080F5422 -_080F5418: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, r8 - bls _080F53F8 -_080F5422: - movs r0, 0x3 - strb r0, [r5, 0x12] - ldr r0, =gUnknown_0203A031 - ldrb r1, [r0, 0x2] -_080F542A: - adds r0, r5, 0 -_080F542C: - bl sub_80F51AC - ldr r1, =gUnknown_0203A030 - strb r0, [r1] - b _080F552A - .pool -_080F5444: - ldr r0, =gStringVar1 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x1C] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x1B] - bl sub_81DB5E8 - ldrh r1, [r5, 0x2] - movs r0, 0x2 - bl sub_80EF340 - ldrh r0, [r5, 0x2] - cmp r0, 0x1E - bhi _080F547C - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F552A - .pool -_080F547C: - cmp r0, 0x64 - bhi _080F548C - ldr r1, =gUnknown_0203A030 - movs r0, 0x5 - strb r0, [r1] - b _080F552A - .pool -_080F548C: - ldr r1, =gUnknown_0203A030 - movs r0, 0x6 - strb r0, [r1] - b _080F552A - .pool -_080F5498: - ldr r0, =gStringVar1 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x1C] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x1B] - bl sub_81DB5E8 - ldr r1, =gUnknown_0203A030 - movs r0, 0x7 - strb r0, [r1] - b _080F552A - .pool -_080F54C4: - ldr r0, =gStringVar1 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x1C] - bl sub_81DB5E8 - ldr r0, =gStringVar2 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x1B] - bl sub_81DB5E8 - bl TVShowDone - b _080F552A - .pool -_080F54E8: - movs r0, 0x3 - b _080F5528 -_080F54EC: - movs r0, 0x3 - b _080F5528 -_080F54F0: - ldr r4, =gStringVar2 - ldrh r0, [r5, 0x10] - bl ItemId_GetItem - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldr r1, =gUnknown_0203A030 - ldrb r0, [r5, 0x12] - strb r0, [r1] - b _080F552A - .pool -_080F5510: - adds r0, r5, 0 - adds r0, 0x22 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080F5522 - movs r0, 0x16 - b _080F5528 -_080F5522: - movs r0, 0x15 - b _080F5528 -_080F5526: - ldrb r0, [r5, 0x12] -_080F5528: - strb r0, [r2] -_080F552A: - ldr r0, =gUnknown_0858D594 - mov r2, r9 - lsls r1, r2, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowSecretBaseSecrets - - thumb_func_start DoTVShowSafariFanClub -DoTVShowSafariFanClub: @ 80F5548 - push {r4,r5,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, =gUnknown_0203A030 - ldrb r5, [r0] - adds r2, r0, 0 - cmp r5, 0xA - bls _080F5570 - b _080F56BC -_080F5570: - lsls r0, r5, 2 - ldr r1, =_080F5594 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_080F5594: - .4byte _080F55C0 - .4byte _080F55DC - .4byte _080F5614 - .4byte _080F5628 - .4byte _080F569A - .4byte _080F562E - .4byte _080F5650 - .4byte _080F5680 - .4byte _080F5694 - .4byte _080F569A - .4byte _080F56B8 -_080F55C0: - ldrb r1, [r4, 0x2] - cmp r1, 0 - bne _080F55CC - movs r0, 0x6 - strb r0, [r2] - b _080F56BC -_080F55CC: - cmp r1, 0x3 - bhi _080F55D6 - movs r0, 0x5 - strb r0, [r2] - b _080F56BC -_080F55D6: - movs r0, 0x1 - strb r0, [r2] - b _080F56BC -_080F55DC: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x4] - bl sub_81DB5E8 - ldrb r1, [r4, 0x2] - movs r0, 0x1 - bl sub_80EF340 - ldrb r0, [r4, 0x3] - cmp r0, 0 - bne _080F5608 - ldr r1, =gUnknown_0203A030 - movs r0, 0x3 - strb r0, [r1] - b _080F56BC - .pool -_080F5608: - ldr r1, =gUnknown_0203A030 - movs r0, 0x2 - strb r0, [r1] - b _080F56BC - .pool -_080F5614: - ldrb r1, [r4, 0x3] - movs r0, 0x1 - bl sub_80EF340 - ldr r1, =gUnknown_0203A030 - movs r0, 0x4 - strb r0, [r1] - b _080F56BC - .pool -_080F5628: - movs r0, 0x4 - strb r0, [r2] - b _080F56BC -_080F562E: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x4] - bl sub_81DB5E8 - ldrb r1, [r4, 0x2] - movs r0, 0x1 - bl sub_80EF340 - ldrb r0, [r4, 0x3] - cmp r0, 0 - beq _080F5662 - b _080F5674 - .pool -_080F5650: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x4] - bl sub_81DB5E8 - ldrb r0, [r4, 0x3] - cmp r0, 0 - bne _080F5674 -_080F5662: - ldr r1, =gUnknown_0203A030 - movs r0, 0x8 - strb r0, [r1] - b _080F56BC - .pool -_080F5674: - ldr r1, =gUnknown_0203A030 - movs r0, 0x7 - strb r0, [r1] - b _080F56BC - .pool -_080F5680: - ldrb r1, [r4, 0x3] - movs r0, 0x1 - bl sub_80EF340 - ldr r1, =gUnknown_0203A030 - movs r0, 0x9 - strb r0, [r1] - b _080F56BC - .pool -_080F5694: - movs r0, 0x9 - strb r0, [r2] - b _080F56BC -_080F569A: - ldr r0, =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x4] - bl sub_81DB5E8 - ldr r1, =gUnknown_0203A030 - movs r0, 0xA - strb r0, [r1] - b _080F56BC - .pool -_080F56B8: - bl TVShowDone -_080F56BC: - ldr r0, =gUnknown_0858D640 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowSafariFanClub - - thumb_func_start DoTVShowPokemonContestLiveUpdates2 -DoTVShowPokemonContestLiveUpdates2: @ 80F56D4 - push {r4-r6,lr} - ldr r2, =gSaveBlock1Ptr - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =0x000027cc - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - ldr r1, =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r6, =gUnknown_0203A030 - ldrb r5, [r6] - cmp r5, 0x2 - bgt _080F5718 - cmp r5, 0x1 - bge _080F5744 - cmp r5, 0 - beq _080F571E - b _080F575E - .pool -_080F5718: - cmp r5, 0x3 - beq _080F574E - b _080F575E -_080F571E: - ldr r0, =gStringVar1 - ldrb r1, [r4, 0xA] - bl sub_818E868 - ldrb r1, [r4, 0x16] - cmp r1, 0x1 - bne _080F5734 - strb r1, [r6] - b _080F575E - .pool -_080F5734: - cmp r1, 0 - bne _080F573E - movs r0, 0x2 - strb r0, [r6] - b _080F575E -_080F573E: - movs r0, 0x3 - strb r0, [r6] - b _080F575E -_080F5744: - ldr r0, =gStringVar3 - adds r1, r4, 0x2 - ldrb r2, [r4, 0x17] - bl sub_81DB5E8 -_080F574E: - ldr r0, =gStringVar2 - adds r1, r4, 0 - adds r1, 0xB - ldrb r2, [r4, 0x18] - bl sub_81DB5E8 - bl TVShowDone -_080F575E: - ldr r0, =gUnknown_0858D384 - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl box_related_two__2 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end DoTVShowPokemonContestLiveUpdates2 - - thumb_func_start TVShowDone -TVShowDone: @ 80F577C - ldr r1, =gScriptResult - movs r0, 0x1 - strh r0, [r1] - ldr r1, =gUnknown_0203A030 - movs r0, 0 - strb r0, [r1] - ldr r0, =gSaveBlock1Ptr - ldr r2, [r0] - ldr r0, =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r2, r0 - ldr r0, =0x000027cd - adds r2, r0 - movs r0, 0 - strb r0, [r2] - bx lr - .pool - thumb_func_end TVShowDone - - thumb_func_start ResetTVShowState -ResetTVShowState: @ 80F57B8 - ldr r1, =gUnknown_0203A030 - movs r0, 0 - strb r0, [r1] - bx lr - .pool - thumb_func_end ResetTVShowState - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/unk_text_util_2.s b/asm/unk_text_util_2.s deleted file mode 100755 index 7f1a5ef70..000000000 --- a/asm/unk_text_util_2.s +++ /dev/null @@ -1,583 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start Font6Func -@ int Font6Func(struct TextPrinter *x) -Font6Func: @ 81BA250 - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r6, 0 - adds r4, 0x14 - ldrb r0, [r6, 0x1C] - cmp r0, 0x6 - bls _081BA260 - b _081BA660 -_081BA260: - lsls r0, 2 - ldr r1, =_081BA270 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_081BA270: - .4byte _081BA28C - .4byte _081BA554 - .4byte _081BA566 - .4byte _081BA590 - .4byte _081BA5C8 - .4byte _081BA63C - .4byte _081BA64E -_081BA28C: - ldr r2, =gMain - ldrh r1, [r2, 0x2C] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - beq _081BA2A6 - ldrb r1, [r4] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _081BA2A6 - movs r0, 0 - strb r0, [r6, 0x1E] -_081BA2A6: - ldrb r1, [r6, 0x1E] - cmp r1, 0 - beq _081BA2E8 - ldrb r0, [r6, 0x1D] - cmp r0, 0 - beq _081BA2E8 - subs r0, r1, 0x1 - strb r0, [r6, 0x1E] - ldr r0, =gTextFlags - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _081BA2C4 - b _081BA50E -_081BA2C4: - ldrh r1, [r2, 0x2E] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _081BA2D0 - b _081BA50E -_081BA2D0: - ldrb r0, [r4] - movs r1, 0x10 - orrs r0, r1 - strb r0, [r4] - movs r0, 0 - strb r0, [r6, 0x1E] - b _081BA50E - .pool -_081BA2E8: - ldr r2, =gTextFlags - ldrb r1, [r2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _081BA2FC - movs r0, 0x3 - b _081BA2FE - .pool -_081BA2FC: - ldrb r0, [r6, 0x1D] -_081BA2FE: - strb r0, [r6, 0x1E] - ldr r0, [r6] - ldrb r3, [r0] - adds r0, 0x1 - str r0, [r6] - adds r0, r3, 0 - subs r0, 0xF8 - cmp r0, 0x7 - bls _081BA312 - b _081BA52E -_081BA312: - lsls r0, 2 - ldr r1, =_081BA320 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_081BA320: - .4byte _081BA524 - .4byte _081BA512 - .4byte _081BA504 - .4byte _081BA500 - .4byte _081BA36E - .4byte _081BA368 - .4byte _081BA340 - .4byte _081BA660 -_081BA340: - ldrb r0, [r6, 0x6] - strb r0, [r6, 0x8] - ldrb r1, [r6, 0x5] - ldr r0, =gFonts - ldr r2, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r6, 0xB] - ldrb r0, [r0, 0x5] - adds r1, r0 - ldrb r0, [r6, 0x9] - adds r0, r1 - strb r0, [r6, 0x9] -_081BA35E: - movs r0, 0x2 - b _081BA662 - .pool -_081BA368: - ldr r0, [r6] - adds r0, 0x1 - b _081BA4C4 -_081BA36E: - ldr r0, [r6] - ldrb r3, [r0] - adds r0, 0x1 - str r0, [r6] - subs r0, r3, 0x1 - cmp r0, 0xF - bls _081BA37E - b _081BA52E -_081BA37E: - lsls r0, 2 - ldr r1, =_081BA38C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_081BA38C: - .4byte _081BA3CC - .4byte _081BA3EE - .4byte _081BA412 - .4byte _081BA42C - .4byte _081BA478 - .4byte _081BA47E - .4byte _081BA35E - .4byte _081BA498 - .4byte _081BA4A8 - .4byte _081BA4BC - .4byte _081BA4C0 - .4byte _081BA4C8 - .4byte _081BA4D2 - .4byte _081BA4DE - .4byte _081BA4EE - .4byte _081BA4C0 -_081BA3CC: - ldr r2, [r6] - ldrb r1, [r2] - lsls r1, 4 - ldrb r3, [r6, 0xC] - movs r0, 0xF - ands r0, r3 - orrs r0, r1 - strb r0, [r6, 0xC] - adds r2, 0x1 - str r2, [r6] - lsls r0, 24 - lsrs r0, 28 - ldrb r2, [r6, 0xD] - lsls r1, r2, 28 - lsrs r1, 28 - lsrs r2, 4 - b _081BA472 -_081BA3EE: - ldr r1, [r6] - ldrb r2, [r1] - movs r0, 0xF - ands r0, r2 - ldrb r3, [r6, 0xD] - movs r2, 0x10 - negs r2, r2 - ands r2, r3 - orrs r2, r0 - strb r2, [r6, 0xD] - adds r1, 0x1 - str r1, [r6] - ldrb r0, [r6, 0xC] - lsrs r0, 4 - lsls r1, r2, 28 - lsrs r1, 28 - lsrs r2, 4 - b _081BA472 -_081BA412: - ldr r1, [r6] - ldrb r0, [r1] - lsls r0, 4 - ldrb r3, [r6, 0xD] - movs r2, 0xF - ands r2, r3 - orrs r2, r0 - strb r2, [r6, 0xD] - adds r1, 0x1 - str r1, [r6] - ldrb r0, [r6, 0xC] - lsrs r0, 4 - b _081BA46A -_081BA42C: - ldr r3, [r6] - ldrb r1, [r3] - lsls r1, 4 - ldrb r4, [r6, 0xC] - movs r2, 0xF - adds r0, r2, 0 - ands r0, r4 - orrs r0, r1 - strb r0, [r6, 0xC] - adds r5, r3, 0x1 - str r5, [r6] - ldrb r3, [r3, 0x1] - adds r1, r2, 0 - ands r1, r3 - ldrb r4, [r6, 0xD] - movs r3, 0x10 - negs r3, r3 - ands r3, r4 - orrs r3, r1 - strb r3, [r6, 0xD] - adds r4, r5, 0x1 - str r4, [r6] - ldrb r1, [r5, 0x1] - lsls r1, 4 - ands r2, r3 - orrs r2, r1 - strb r2, [r6, 0xD] - adds r4, 0x1 - str r4, [r6] - lsls r0, 24 - lsrs r0, 28 -_081BA46A: - lsls r1, r2, 28 - lsrs r1, 28 - lsls r2, 24 - lsrs r2, 28 -_081BA472: - bl GenerateFontHalfRowLookupTable - b _081BA35E -_081BA478: - ldr r0, [r6] - adds r0, 0x1 - b _081BA4C4 -_081BA47E: - ldr r0, [r6] - ldrb r0, [r0] - movs r1, 0xF - ands r1, r0 - ldrb r2, [r4] - movs r0, 0x10 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r4] - ldr r0, [r6] - adds r0, 0x1 - b _081BA4C4 -_081BA498: - ldr r0, [r6] - ldrb r1, [r0] - strb r1, [r6, 0x1E] - adds r0, 0x1 - str r0, [r6] - movs r0, 0x6 - strb r0, [r6, 0x1C] - b _081BA35E -_081BA4A8: - movs r0, 0x1 - strb r0, [r6, 0x1C] - ldrb r1, [r2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _081BA50E - movs r0, 0 - strb r0, [r4, 0x2] - b _081BA50E -_081BA4BC: - movs r0, 0x5 - b _081BA64A -_081BA4C0: - ldr r0, [r6] - adds r0, 0x2 -_081BA4C4: - str r0, [r6] - b _081BA35E -_081BA4C8: - ldr r1, [r6] - adds r0, r1, 0x1 - str r0, [r6] - ldrb r3, [r1, 0x1] - b _081BA52E -_081BA4D2: - ldr r1, [r6] - ldrb r0, [r1] - ldrb r2, [r6, 0x6] - adds r0, r2 - strb r0, [r6, 0x8] - b _081BA4E8 -_081BA4DE: - ldr r1, [r6] - ldrb r0, [r1] - ldrb r2, [r6, 0x7] - adds r0, r2 - strb r0, [r6, 0x9] -_081BA4E8: - adds r1, 0x1 - str r1, [r6] - b _081BA35E -_081BA4EE: - ldrb r0, [r6, 0x4] - ldrb r2, [r6, 0xD] - lsls r2, 28 - lsrs r1, r2, 4 - orrs r1, r2 - lsrs r1, 24 - bl FillWindowPixelBuffer - b _081BA35E -_081BA500: - movs r0, 0x2 - b _081BA506 -_081BA504: - movs r0, 0x3 -_081BA506: - strb r0, [r6, 0x1C] - adds r0, r6, 0 - bl TextPrinterInitDownArrowCounters -_081BA50E: - movs r0, 0x3 - b _081BA662 -_081BA512: - ldr r0, [r6] - ldrb r3, [r0] - movs r2, 0x80 - lsls r2, 1 - adds r1, r2, 0 - orrs r3, r1 - adds r0, 0x1 - str r0, [r6] - b _081BA52E -_081BA524: - ldr r0, [r6] - adds r0, 0x1 - str r0, [r6] - movs r0, 0 - b _081BA662 -_081BA52E: - adds r0, r3, 0 - bl DecompressGlyphFont6 - adds r0, r6, 0 - bl CopyGlyphToWindow - ldr r0, =gUnknown_03002F90 - adds r0, 0x80 - ldrb r1, [r6, 0xA] - ldrb r0, [r0] - adds r1, r0 - ldrb r0, [r6, 0x8] - adds r0, r1 - strb r0, [r6, 0x8] - movs r0, 0 - b _081BA662 - .pool -_081BA554: - adds r0, r6, 0 - bl TextPrinterWait - lsls r0, 16 - cmp r0, 0 - beq _081BA50E - movs r0, 0 - strb r0, [r6, 0x1C] - b _081BA50E -_081BA566: - adds r0, r6, 0 - bl TextPrinterWaitWithDownArrow - lsls r0, 16 - cmp r0, 0 - beq _081BA50E - ldrb r0, [r6, 0x4] - ldrb r2, [r6, 0xD] - lsls r2, 28 - lsrs r1, r2, 4 - orrs r1, r2 - lsrs r1, 24 - bl FillWindowPixelBuffer - ldrb r0, [r6, 0x6] - movs r1, 0 - strb r0, [r6, 0x8] - ldrb r0, [r6, 0x7] - strb r0, [r6, 0x9] - strb r1, [r6, 0x1C] - b _081BA50E -_081BA590: - adds r0, r6, 0 - bl TextPrinterWaitWithDownArrow - lsls r0, 16 - cmp r0, 0 - beq _081BA50E - adds r0, r6, 0 - bl TextPrinterClearDownArrow - ldrb r1, [r6, 0x5] - ldr r0, =gFonts - ldr r2, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r6, 0xB] - ldrb r0, [r0, 0x5] - adds r1, r0 - strb r1, [r6, 0x1F] - ldrb r0, [r6, 0x6] - strb r0, [r6, 0x8] - movs r0, 0x4 - strb r0, [r6, 0x1C] - b _081BA50E - .pool -_081BA5C8: - ldrb r2, [r6, 0x1F] - cmp r2, 0 - beq _081BA638 - ldr r4, =gUnknown_08616124 - ldr r5, =gSaveBlock2Ptr - ldr r0, [r5] - ldrb r0, [r0, 0x14] - lsls r1, r0, 29 - lsrs r0, r1, 29 - adds r0, r4 - ldrb r0, [r0] - cmp r2, r0 - bcs _081BA604 - ldrb r0, [r6, 0x4] - ldrb r1, [r6, 0xD] - lsls r1, 28 - lsrs r3, r1, 4 - orrs r3, r1 - lsrs r3, 24 - movs r1, 0 - bl ScrollWindow - movs r0, 0 - strb r0, [r6, 0x1F] - b _081BA62E - .pool -_081BA604: - ldrb r0, [r6, 0x4] - lsrs r1, 29 - adds r1, r4 - ldrb r2, [r1] - ldrb r1, [r6, 0xD] - lsls r1, 28 - lsrs r3, r1, 4 - orrs r3, r1 - lsrs r3, 24 - movs r1, 0 - bl ScrollWindow - ldr r0, [r5] - ldrb r0, [r0, 0x14] - lsls r0, 29 - lsrs r0, 29 - adds r0, r4 - ldrb r1, [r6, 0x1F] - ldrb r0, [r0] - subs r1, r0 - strb r1, [r6, 0x1F] -_081BA62E: - ldrb r0, [r6, 0x4] - movs r1, 0x2 - bl CopyWindowToVram - b _081BA50E -_081BA638: - strb r2, [r6, 0x1C] - b _081BA50E -_081BA63C: - bl IsSEPlaying - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _081BA64A - b _081BA50E -_081BA64A: - strb r0, [r6, 0x1C] - b _081BA50E -_081BA64E: - ldrb r0, [r6, 0x1E] - adds r1, r0, 0 - cmp r1, 0 - beq _081BA65C - subs r0, 0x1 - strb r0, [r6, 0x1E] - b _081BA50E -_081BA65C: - strb r1, [r6, 0x1C] - b _081BA50E -_081BA660: - movs r0, 0x1 -_081BA662: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end Font6Func - - thumb_func_start DecompressGlyphFont6 -DecompressGlyphFont6: @ 81BA668 - push {r4,r5,lr} - lsls r0, 16 - lsrs r2, r0, 19 - lsls r2, 9 - movs r1, 0xE0 - lsls r1, 11 - ands r1, r0 - lsrs r1, 11 - ldr r0, =gFont6BrailleGlyphs - adds r1, r0 - adds r5, r2, r1 - ldr r4, =gUnknown_03002F90 - adds r0, r5, 0 - adds r1, r4, 0 - bl DecompressGlyphTile - adds r0, r5, 0 - adds r0, 0x10 - adds r1, r4, 0 - adds r1, 0x20 - bl DecompressGlyphTile - movs r1, 0x80 - lsls r1, 1 - adds r0, r5, r1 - adds r1, r4, 0 - adds r1, 0x40 - bl DecompressGlyphTile - movs r1, 0x88 - lsls r1, 1 - adds r0, r5, r1 - adds r1, r4, 0 - adds r1, 0x60 - bl DecompressGlyphTile - adds r0, r4, 0 - adds r0, 0x80 - movs r1, 0x10 - strb r1, [r0] - adds r0, 0x1 - strb r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DecompressGlyphFont6 - - thumb_func_start GetGlyphWidthFont6 -GetGlyphWidthFont6: @ 81BA6CC - movs r0, 0x10 - bx lr - thumb_func_end GetGlyphWidthFont6 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/unknown_task.s b/asm/unknown_task.s index e3526c809..f6b96287e 100644 --- a/asm/unknown_task.s +++ b/asm/unknown_task.s @@ -267,35 +267,35 @@ _080BA1D8: .4byte _080BA250 .4byte _080BA24C _080BA214: - ldr r0, =gUnknown_02022E14 + ldr r0, =gBattle_BG0_X b _080BA24E .pool _080BA21C: - ldr r0, =gUnknown_02022E16 + ldr r0, =gBattle_BG0_Y b _080BA24E .pool _080BA224: - ldr r0, =gUnknown_02022E18 + ldr r0, =gBattle_BG1_X b _080BA24E .pool _080BA22C: - ldr r0, =gUnknown_02022E1A + ldr r0, =gBattle_BG1_Y b _080BA24E .pool _080BA234: - ldr r0, =gUnknown_02022E1C + ldr r0, =gBattle_BG2_X b _080BA24E .pool _080BA23C: - ldr r0, =gUnknown_02022E1E + ldr r0, =gBattle_BG2_Y b _080BA24E .pool _080BA244: - ldr r0, =gUnknown_02022E20 + ldr r0, =gBattle_BG3_X b _080BA24E .pool _080BA24C: - ldr r0, =gUnknown_02022E22 + ldr r0, =gBattle_BG3_Y _080BA24E: ldrh r6, [r0] _080BA250: diff --git a/asm/walda_phrase.s b/asm/walda_phrase.s deleted file mode 100755 index be754f386..000000000 --- a/asm/walda_phrase.s +++ /dev/null @@ -1,543 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start walda_maybe -walda_maybe: @ 81D99E4 - push {r4,lr} - sub sp, 0x8 - ldr r4, =gStringVar2 - bl sub_80D2548 - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - movs r0, 0 - str r0, [sp] - ldr r0, =sub_81D9A1C - str r0, [sp, 0x4] - movs r0, 0x4 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0 - bl DoNamingScreen - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end walda_maybe - - thumb_func_start sub_81D9A1C -sub_81D9A1C: @ 81D9A1C - push {r4,r5,lr} - ldr r4, =gSpecialVar_0x8004 - ldr r5, =gStringVar2 - adds r0, r5, 0 - bl sub_81D9A98 - strh r0, [r4] - ldrh r0, [r4] - cmp r0, 0x1 - beq _081D9A68 - cmp r0, 0x1 - bgt _081D9A44 - cmp r0, 0 - beq _081D9A62 - b _081D9A68 - .pool -_081D9A44: - cmp r0, 0x2 - bne _081D9A68 - bl sub_80D2578 - cmp r0, 0 - beq _081D9A5C - ldr r0, =gText_Peekaboo - bl sub_80D255C - b _081D9A68 - .pool -_081D9A5C: - movs r0, 0x1 - strh r0, [r4] - b _081D9A68 -_081D9A62: - adds r0, r5, 0 - bl sub_80D255C -_081D9A68: - ldr r4, =gStringVar1 - bl sub_80D2548 - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldr r1, =gFieldCallback - ldr r0, =sub_80AF168 - str r0, [r1] - ldr r0, =c2_exit_to_overworld_2_switch - bl SetMainCallback2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81D9A1C - - thumb_func_start sub_81D9A98 -sub_81D9A98: @ 81D9A98 - push {r4,lr} - adds r4, r0, 0 - ldrb r0, [r4] - cmp r0, 0xFF - bne _081D9AA6 - movs r0, 0x2 - b _081D9ABC -_081D9AA6: - bl sub_80D2548 - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCompare - cmp r0, 0 - beq _081D9ABA - movs r0, 0 - b _081D9ABC -_081D9ABA: - movs r0, 0x1 -_081D9ABC: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_81D9A98 - - thumb_func_start sub_81D9AC4 -sub_81D9AC4: @ 81D9AC4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - adds r0, 0xA - bl ReadUnalignedWord - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldr r0, =gScriptResult - mov r8, r0 - bl sub_80D2548 - mov r7, sp - adds r7, 0xA - add r6, sp, 0xC - mov r5, sp - adds r5, 0xD - str r4, [sp] - str r0, [sp, 0x4] - add r0, sp, 0x8 - adds r1, r7, 0 - adds r2, r6, 0 - adds r3, r5, 0 - bl sub_81D9B68 - mov r1, r8 - strh r0, [r1] - lsls r0, 16 - cmp r0, 0 - beq _081D9B1E - ldrb r0, [r5] - bl sub_80D24BC - ldrb r0, [r6] - bl sub_80D24F0 - add r0, sp, 0x8 - ldrh r0, [r0] - ldrh r1, [r7] - bl sub_80D2524 -_081D9B1E: - mov r1, r8 - ldrh r0, [r1] - bl sub_80D2480 - mov r1, r8 - ldrb r0, [r1] - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_81D9AC4 - - thumb_func_start sub_81D9B40 -sub_81D9B40: @ 81D9B40 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - movs r1, 0 - ldr r3, =gUnknown_0862AD14 -_081D9B4A: - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, r2 - bne _081D9B5C - lsls r0, r1, 24 - lsrs r0, 24 - b _081D9B64 - .pool -_081D9B5C: - adds r1, 0x1 - cmp r1, 0x1F - bls _081D9B4A - movs r0, 0x20 -_081D9B64: - pop {r1} - bx r1 - thumb_func_end sub_81D9B40 - - thumb_func_start sub_81D9B68 -sub_81D9B68: @ 81D9B68 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x2C - mov r10, r0 - str r1, [sp, 0x20] - str r2, [sp, 0x24] - str r3, [sp, 0x28] - ldr r0, [sp, 0x4C] - ldr r5, [sp, 0x50] - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - adds r0, r5, 0 - bl StringLength - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xF - bne _081D9C7E - movs r4, 0 - add r7, sp, 0x10 -_081D9B98: - adds r0, r5, r4 - ldrb r0, [r0] - bl sub_81D9B40 - adds r1, r7, r4 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x20 - beq _081D9C7E - adds r4, 0x1 - cmp r4, 0xE - ble _081D9B98 - movs r6, 0x3 - movs r5, 0 - movs r0, 0x5 - mov r8, r0 - movs r4, 0xD -_081D9BBC: - mov r1, r8 - str r1, [sp] - add r0, sp, 0x4 - adds r1, r7, 0 - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_81D9D5C - adds r6, 0x8 - adds r5, 0x5 - subs r4, 0x1 - cmp r4, 0 - bge _081D9BBC - movs r0, 0x2 - str r0, [sp] - add r0, sp, 0x4 - adds r1, r7, 0 - movs r2, 0x46 - movs r3, 0x73 - bl sub_81D9D5C - add r0, sp, 0x4 - movs r1, 0 - movs r2, 0x3 - bl sub_81D9DAC - adds r4, r0, 0 - adds r0, r7, 0 - movs r1, 0x75 - movs r2, 0x3 - bl sub_81D9DAC - cmp r4, r0 - bne _081D9C7E - add r0, sp, 0x4 - movs r1, 0x9 - movs r2, 0x15 - bl sub_81D9C90 - add r0, sp, 0x4 - ldrb r0, [r0, 0x8] - movs r2, 0xF - ands r2, r0 - add r0, sp, 0x4 - movs r1, 0x8 - bl sub_81D9C90 - add r0, sp, 0x4 - ldrb r2, [r0, 0x8] - lsrs r2, 4 - movs r1, 0x8 - bl sub_81D9CDC - add r0, sp, 0x4 - ldrb r2, [r0, 0x6] - adds r1, r0, 0 - ldrb r0, [r0] - ldrb r1, [r1, 0x2] - eors r0, r1 - add r1, sp, 0x4 - ldrb r4, [r1, 0x4] - eors r0, r4 - mov r3, r9 - lsrs r1, r3, 8 - eors r0, r1 - cmp r2, r0 - bne _081D9C7E - add r0, sp, 0x4 - ldrb r3, [r0, 0x7] - adds r2, r0, 0 - ldrb r1, [r0, 0x1] - ldrb r0, [r2, 0x3] - eors r1, r0 - adds r0, r2, 0 - ldrb r2, [r0, 0x5] - eors r1, r2 - movs r0, 0xFF - mov r5, r9 - ands r0, r5 - eors r1, r0 - cmp r3, r1 - bne _081D9C7E - add r0, sp, 0x4 - ldrh r0, [r0] - mov r1, r10 - strh r0, [r1] - mov r0, sp - adds r0, 0x6 - ldrh r0, [r0] - ldr r3, [sp, 0x20] - strh r0, [r3] - ldr r5, [sp, 0x24] - strb r4, [r5] - ldr r0, [sp, 0x28] - strb r2, [r0] - movs r0, 0x1 - b _081D9C80 -_081D9C7E: - movs r0, 0 -_081D9C80: - add sp, 0x2C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_81D9B68 - - thumb_func_start sub_81D9C90 -sub_81D9C90: @ 81D9C90 - push {r4-r7,lr} - adds r7, r0, 0 - mov r12, r1 - subs r3, r2, 0x1 - cmp r2, 0 - beq _081D9CD6 -_081D9C9C: - ldrb r1, [r7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r4, r0, 31 - mov r2, r12 - subs r2, 0x1 - subs r5, r3, 0x1 - cmp r2, 0 - blt _081D9CCC - movs r6, 0x80 - adds r3, r2, r7 -_081D9CB4: - ldrb r1, [r3] - adds r0, r6, 0 - ands r0, r1 - lsls r0, 24 - lsls r1, 1 - orrs r4, r1 - strb r4, [r3] - lsrs r4, r0, 31 - subs r3, 0x1 - subs r2, 0x1 - cmp r2, 0 - bge _081D9CB4 -_081D9CCC: - adds r3, r5, 0 - movs r0, 0x1 - negs r0, r0 - cmp r3, r0 - bne _081D9C9C -_081D9CD6: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_81D9C90 - - thumb_func_start sub_81D9CDC -sub_81D9CDC: @ 81D9CDC - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r3, r2, 24 - lsls r0, r3, 4 - orrs r3, r0 - lsls r0, r3, 24 - lsrs r3, r0, 24 - movs r4, 0 - cmp r4, r5 - bcs _081D9D04 -_081D9CF4: - adds r2, r6, r4 - ldrb r1, [r2] - adds r0, r3, 0 - eors r0, r1 - strb r0, [r2] - adds r4, 0x1 - cmp r4, r5 - bcc _081D9CF4 -_081D9D04: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_81D9CDC - - thumb_func_start sub_81D9D0C -sub_81D9D0C: @ 81D9D0C - push {lr} - lsrs r3, r1, 3 - movs r2, 0x7 - ands r2, r1 - movs r1, 0x80 - asrs r1, r2 - adds r0, r3 - ldrb r0, [r0] - ands r0, r1 - cmp r0, 0 - beq _081D9D24 - movs r0, 0x1 -_081D9D24: - pop {r1} - bx r1 - thumb_func_end sub_81D9D0C - - thumb_func_start sub_81D9D28 -sub_81D9D28: @ 81D9D28 - lsrs r3, r1, 3 - movs r2, 0x7 - ands r2, r1 - movs r1, 0x80 - asrs r1, r2 - lsls r1, 24 - lsrs r1, 24 - adds r0, r3 - ldrb r2, [r0] - orrs r1, r2 - strb r1, [r0] - bx lr - thumb_func_end sub_81D9D28 - - thumb_func_start sub_81D9D40 -sub_81D9D40: @ 81D9D40 - lsrs r3, r1, 3 - movs r2, 0x7 - ands r2, r1 - movs r1, 0x80 - asrs r1, r2 - mvns r1, r1 - lsls r1, 24 - lsrs r1, 24 - adds r0, r3 - ldrb r2, [r0] - ands r1, r2 - strb r1, [r0] - bx lr - thumb_func_end sub_81D9D40 - - thumb_func_start sub_81D9D5C -sub_81D9D5C: @ 81D9D5C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r6, r0, 0 - mov r9, r1 - adds r1, r2, 0 - mov r8, r3 - ldr r7, [sp, 0x1C] - movs r5, 0 - cmp r5, r7 - bcs _081D9DA0 - adds r4, r1, 0 -_081D9D76: - mov r0, r8 - adds r1, r0, r5 - mov r0, r9 - bl sub_81D9D0C - lsls r0, 24 - cmp r0, 0 - beq _081D9D90 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_81D9D28 - b _081D9D98 -_081D9D90: - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_81D9D40 -_081D9D98: - adds r4, 0x1 - adds r5, 0x1 - cmp r5, r7 - bcc _081D9D76 -_081D9DA0: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_81D9D5C - - thumb_func_start sub_81D9DAC -sub_81D9DAC: @ 81D9DAC - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - adds r7, r1, 0 - adds r6, r2, 0 - movs r4, 0 - movs r5, 0 - cmp r4, r6 - bcs _081D9DD6 -_081D9DC0: - lsls r4, 1 - adds r1, r7, r5 - mov r0, r8 - bl sub_81D9D0C - lsls r0, 24 - lsrs r0, 24 - orrs r4, r0 - adds r5, 0x1 - cmp r5, r6 - bcc _081D9DC0 -_081D9DD6: - adds r0, r4, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_81D9DAC - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/wild_encounter.s b/asm/wild_encounter.s index 2c628a5e4..9b6c901f6 100644 --- a/asm/wild_encounter.s +++ b/asm/wild_encounter.s @@ -68,7 +68,7 @@ _080B4920: bl MapGridGetMetatileBehaviorAt lsls r0, 24 lsrs r0, 24 - bl sub_8089660 + bl MetatileBehavior_IsSurfableAndNotWaterfall lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1424,7 +1424,7 @@ _080B539C: lsls r0, r6, 24 lsrs r4, r0, 24 adds r0, r4, 0 - bl sub_808952C + bl MetatileBehavior_IsLandWildEncounter lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1498,7 +1498,7 @@ _080B5418: .pool _080B543C: adds r0, r4, 0 - bl sub_8089558 + bl MetatileBehavior_IsWaterWildEncounter lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1509,7 +1509,7 @@ _080B543C: cmp r0, 0 beq _080B54FE adds r0, r4, 0 - bl sub_80894AC + bl MetatileBehavior_IsBridge lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1726,7 +1726,7 @@ _080B562C: bl MapGridGetMetatileBehaviorAt lsls r0, 24 lsrs r0, 24 - bl sub_808952C + bl MetatileBehavior_IsLandWildEncounter lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -1769,7 +1769,7 @@ _080B568C: bl MapGridGetMetatileBehaviorAt lsls r0, 24 lsrs r0, 24 - bl sub_8089558 + bl MetatileBehavior_IsWaterWildEncounter lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 |