diff options
Diffstat (limited to 'asm')
-rw-r--r-- | asm/battle_message.s | 3043 | ||||
-rw-r--r-- | asm/field_control_avatar.s | 2 | ||||
-rw-r--r-- | asm/field_effect.s | 10 | ||||
-rw-r--r-- | asm/field_map_obj.s | 4 | ||||
-rw-r--r-- | asm/field_weather.s | 6 | ||||
-rw-r--r-- | asm/fldeff_cut.s | 6 | ||||
-rw-r--r-- | asm/fldeff_flash.s | 6 | ||||
-rw-r--r-- | asm/item_menu.s | 48 | ||||
-rw-r--r-- | asm/link_rfu.s | 8 | ||||
-rw-r--r-- | asm/link_rfu_3.s | 14 | ||||
-rw-r--r-- | asm/naming_screen.s | 28 | ||||
-rw-r--r-- | asm/overworld.s | 32 | ||||
-rw-r--r-- | asm/party_menu.s | 19390 | ||||
-rw-r--r-- | asm/pokedex_screen.s | 4 | ||||
-rw-r--r-- | asm/pokemon_jump_2.s | 8 | ||||
-rw-r--r-- | asm/pokemon_special_anim.s | 8 | ||||
-rw-r--r-- | asm/pokemon_storage_system.s | 6 | ||||
-rw-r--r-- | asm/pokemon_summary_screen.s | 78 | ||||
-rw-r--r-- | asm/region_map.s | 28 | ||||
-rw-r--r-- | asm/script_pokemon_util_80A0058.s | 4 | ||||
-rw-r--r-- | asm/script_pokemon_util_80BF8FC.s | 2 | ||||
-rw-r--r-- | asm/shop.s | 8 |
22 files changed, 155 insertions, 22588 deletions
diff --git a/asm/battle_message.s b/asm/battle_message.s deleted file mode 100644 index fc21f17ee..000000000 --- a/asm/battle_message.s +++ /dev/null @@ -1,3043 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start BufferStringBattle -BufferStringBattle: @ 80D7274 - 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, _080D7330 @ =gUnknown_2039A34 - ldr r0, _080D7334 @ =gActiveBattler - mov r8, r0 - ldrb r1, [r0] - lsls r1, 9 - ldr r0, _080D7338 @ =gBattleBufferA + 4 - adds r1, r0 - str r1, [r4] - ldr r2, _080D733C @ =gLastUsedItem - ldrh r0, [r1, 0x4] - strh r0, [r2] - ldr r2, _080D7340 @ =gLastUsedAbility - ldrb r0, [r1, 0x6] - strb r0, [r2] - ldr r5, _080D7344 @ =gBattleScripting - ldrb r0, [r1, 0x7] - strb r0, [r5, 0x17] - ldr r3, _080D7348 @ =gBattleStruct - ldr r0, [r3] - adds r0, 0x52 - ldrb r1, [r1, 0x8] - strb r1, [r0] - ldr r0, [r3] - adds r0, 0xAD - ldr r1, [r4] - ldrb r1, [r1, 0x9] - strb r1, [r0] - ldr r1, _080D734C @ =gPotentialItemEffectBattler - 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 r10, r5 - ldr r1, _080D7350 @ =gBattleTextBuff1 - mov r9, r1 - ldr r3, _080D7354 @ =gUnknown_2039A30 -_080D72D6: - 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 _080D72D6 - movs r2, 0 - ldr r0, _080D7350 @ =gBattleTextBuff1 - mov r8, r0 - ldr r3, _080D7330 @ =gUnknown_2039A34 - ldr r5, _080D7358 @ =gBattleTextBuff2 - ldr r4, _080D735C @ =gBattleTextBuff3 -_080D72F4: - 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 _080D72F4 - cmp r6, 0x5 - bls _080D7326 - b _080D77B8 -_080D7326: - lsls r0, r6, 2 - ldr r1, _080D7360 @ =_080D7364 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080D7330: .4byte gUnknown_2039A34 -_080D7334: .4byte gActiveBattler -_080D7338: .4byte gBattleBufferA + 4 -_080D733C: .4byte gLastUsedItem -_080D7340: .4byte gLastUsedAbility -_080D7344: .4byte gBattleScripting -_080D7348: .4byte gBattleStruct -_080D734C: .4byte gPotentialItemEffectBattler -_080D7350: .4byte gBattleTextBuff1 -_080D7354: .4byte gUnknown_2039A30 -_080D7358: .4byte gBattleTextBuff2 -_080D735C: .4byte gBattleTextBuff3 -_080D7360: .4byte _080D7364 - .align 2, 0 -_080D7364: - .4byte _080D737C - .4byte _080D7428 - .4byte _080D74C8 - .4byte _080D7558 - .4byte _080D75F0 - .4byte _080D7654 -_080D737C: - ldr r0, _080D739C @ =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080D73C4 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080D73B4 - movs r0, 0x40 - ands r1, r0 - cmp r1, 0 - beq _080D73A4 - ldr r7, _080D73A0 @ =gUnknown_83FD397 - b _080D77DC - .align 2, 0 -_080D739C: .4byte gBattleTypeFlags -_080D73A0: .4byte gUnknown_83FD397 -_080D73A4: - ldr r0, _080D73B8 @ =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0xC0 - lsls r0, 4 - ldr r7, _080D73BC @ =gUnknown_83FD383 - cmp r1, r0 - beq _080D73B4 - b _080D77DC -_080D73B4: - ldr r7, _080D73C0 @ =gUnknown_83FD366 - b _080D77DC - .align 2, 0 -_080D73B8: .4byte gTrainerBattleOpponent_A -_080D73BC: .4byte gUnknown_83FD383 -_080D73C0: .4byte gUnknown_83FD366 -_080D73C4: - movs r0, 0x80 - lsls r0, 8 - ands r0, r1 - cmp r0, 0 - beq _080D73E8 - movs r0, 0x80 - lsls r0, 6 - ands r1, r0 - ldr r7, _080D73E0 @ =gUnknown_83FD2D9 - cmp r1, 0 - bne _080D73DC - b _080D77DC -_080D73DC: - ldr r7, _080D73E4 @ =gUnknown_83FD30D - b _080D77DC - .align 2, 0 -_080D73E0: .4byte gUnknown_83FD2D9 -_080D73E4: .4byte gUnknown_83FD30D -_080D73E8: - movs r0, 0x80 - lsls r0, 6 - ands r0, r1 - cmp r0, 0 - beq _080D73FC - ldr r7, _080D73F8 @ =gUnknown_83FD297 - b _080D77DC - .align 2, 0 -_080D73F8: .4byte gUnknown_83FD297 -_080D73FC: - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080D740C - ldr r7, _080D7408 @ =gUnknown_83FD2BF - b _080D77DC - .align 2, 0 -_080D7408: .4byte gUnknown_83FD2BF -_080D740C: - movs r0, 0x80 - lsls r0, 2 - ands r1, r0 - ldr r7, _080D7420 @ =gUnknown_83FD284 - cmp r1, 0 - bne _080D741A - b _080D77DC -_080D741A: - ldr r7, _080D7424 @ =gUnknown_83FD2AA - b _080D77DC - .align 2, 0 -_080D7420: .4byte gUnknown_83FD284 -_080D7424: .4byte gUnknown_83FD2AA -_080D7428: - mov r1, r12 - ldrb r0, [r1] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _080D7468 - ldr r0, _080D7454 @ =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080D7460 - movs r0, 0x40 - ands r1, r0 - ldr r7, _080D7458 @ =gUnknown_83FD466 - cmp r1, 0 - bne _080D744E - b _080D77DC -_080D744E: - ldr r7, _080D745C @ =gUnknown_83FD4B5 - b _080D77DC - .align 2, 0 -_080D7454: .4byte gBattleTypeFlags -_080D7458: .4byte gUnknown_83FD466 -_080D745C: .4byte gUnknown_83FD4B5 -_080D7460: - ldr r7, _080D7464 @ =gUnknown_83FD45E - b _080D77DC - .align 2, 0 -_080D7464: .4byte gUnknown_83FD45E -_080D7468: - ldr r0, _080D7480 @ =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080D74A0 - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080D7488 - ldr r7, _080D7484 @ =gUnknown_83FD41E - b _080D77DC - .align 2, 0 -_080D7480: .4byte gBattleTypeFlags -_080D7484: .4byte gUnknown_83FD41E -_080D7488: - movs r0, 0x2 - ands r1, r0 - ldr r7, _080D7498 @ =gUnknown_83FD3C7 - cmp r1, 0 - bne _080D7494 - b _080D77DC -_080D7494: - ldr r7, _080D749C @ =gUnknown_83FD407 - b _080D77DC - .align 2, 0 -_080D7498: .4byte gUnknown_83FD3C7 -_080D749C: .4byte gUnknown_83FD407 -_080D74A0: - movs r0, 0x2 - ands r1, r0 - cmp r1, 0 - beq _080D74B8 - ldr r0, _080D74BC @ =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0xC0 - lsls r0, 4 - ldr r7, _080D74C0 @ =gUnknown_83FD3F7 - cmp r1, r0 - beq _080D74B8 - b _080D77DC -_080D74B8: - ldr r7, _080D74C4 @ =gUnknown_83FD3B1 - b _080D77DC - .align 2, 0 -_080D74BC: .4byte gTrainerBattleOpponent_A -_080D74C0: .4byte gUnknown_83FD3F7 -_080D74C4: .4byte gUnknown_83FD3B1 -_080D74C8: - mov r1, r12 - ldrb r0, [r1] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _080D7520 - ldr r0, _080D74E8 @ =gBattleStruct - ldr r0, [r0] - adds r0, 0xAD - ldrb r2, [r0] - cmp r2, 0 - bne _080D74F0 - ldr r7, _080D74EC @ =gUnknown_83FD4CD - b _080D77DC - .align 2, 0 -_080D74E8: .4byte gBattleStruct -_080D74EC: .4byte gUnknown_83FD4CD -_080D74F0: - cmp r2, 0x1 - beq _080D7500 - ldr r0, _080D7504 @ =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080D750C -_080D7500: - ldr r7, _080D7508 @ =gUnknown_83FD4EB - b _080D77DC - .align 2, 0 -_080D7504: .4byte gBattleTypeFlags -_080D7508: .4byte gUnknown_83FD4EB -_080D750C: - ldr r7, _080D7518 @ =gUnknown_83FD50D - cmp r2, 0x2 - beq _080D7514 - b _080D77DC -_080D7514: - ldr r7, _080D751C @ =gUnknown_83FD4FA - b _080D77DC - .align 2, 0 -_080D7518: .4byte gUnknown_83FD50D -_080D751C: .4byte gUnknown_83FD4FA -_080D7520: - ldr r0, _080D7540 @ =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 4 - cmp r1, r0 - bne _080D7550 - ldr r0, _080D7544 @ =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - ldr r7, _080D7548 @ =gUnknown_83FD535 - cmp r0, 0 - bne _080D753C - b _080D77DC -_080D753C: - ldr r7, _080D754C @ =gUnknown_83FD545 - b _080D77DC - .align 2, 0 -_080D7540: .4byte gTrainerBattleOpponent_A -_080D7544: .4byte gBattleTypeFlags -_080D7548: .4byte gUnknown_83FD535 -_080D754C: .4byte gUnknown_83FD545 -_080D7550: - ldr r7, _080D7554 @ =gUnknown_83FD522 - b _080D77DC - .align 2, 0 -_080D7554: .4byte gUnknown_83FD522 -_080D7558: - mov r1, r10 - ldrb r0, [r1, 0x17] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _080D75B0 - ldr r0, _080D7584 @ =gBattleStruct - ldr r0, [r0] - adds r0, 0xAD - ldrb r2, [r0] - cmp r2, 0 - beq _080D757E - ldr r0, _080D7588 @ =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080D7590 -_080D757E: - ldr r7, _080D758C @ =gUnknown_83FD475 - b _080D77DC - .align 2, 0 -_080D7584: .4byte gBattleStruct -_080D7588: .4byte gBattleTypeFlags -_080D758C: .4byte gUnknown_83FD475 -_080D7590: - cmp r2, 0x1 - bne _080D759C - ldr r7, _080D7598 @ =gUnknown_83FD47D - b _080D77DC - .align 2, 0 -_080D7598: .4byte gUnknown_83FD47D -_080D759C: - ldr r7, _080D75A8 @ =gUnknown_83FD497 - cmp r2, 0x2 - beq _080D75A4 - b _080D77DC -_080D75A4: - ldr r7, _080D75AC @ =gUnknown_83FD488 - b _080D77DC - .align 2, 0 -_080D75A8: .4byte gUnknown_83FD497 -_080D75AC: .4byte gUnknown_83FD488 -_080D75B0: - ldr r0, _080D75C8 @ =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080D75E0 - movs r0, 0x40 - ands r1, r0 - cmp r1, 0 - beq _080D75D0 - ldr r7, _080D75CC @ =gUnknown_83FD44E - b _080D77DC - .align 2, 0 -_080D75C8: .4byte gBattleTypeFlags -_080D75CC: .4byte gUnknown_83FD44E -_080D75D0: - ldr r0, _080D75E4 @ =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0xC0 - lsls r0, 4 - ldr r7, _080D75E8 @ =gUnknown_83FD43E - cmp r1, r0 - beq _080D75E0 - b _080D77DC -_080D75E0: - ldr r7, _080D75EC @ =gUnknown_83FD3E4 - b _080D77DC - .align 2, 0 -_080D75E4: .4byte gTrainerBattleOpponent_A -_080D75E8: .4byte gUnknown_83FD43E -_080D75EC: .4byte gUnknown_83FD3E4 -_080D75F0: - mov r0, r9 - bl sub_80D86C8 - ldr r0, _080D761C @ =gUnknown_2039A34 - ldr r2, [r0] - ldrh r1, [r2] - movs r0, 0xB1 - lsls r0, 1 - cmp r1, r0 - bls _080D762C - ldr r0, _080D7620 @ =gBattleTextBuff2 - ldr r2, _080D7624 @ =gUnknown_83FEA28 - ldr r1, _080D7628 @ =gBattleStruct - ldr r1, [r1] - adds r1, 0x8E - ldrb r1, [r1] - lsls r1, 2 - adds r1, r2 - ldr r1, [r1] - bl StringCopy - b _080D763C - .align 2, 0 -_080D761C: .4byte gUnknown_2039A34 -_080D7620: .4byte gBattleTextBuff2 -_080D7624: .4byte gUnknown_83FEA28 -_080D7628: .4byte gBattleStruct -_080D762C: - ldr r0, _080D7648 @ =gBattleTextBuff2 - ldrh r2, [r2] - movs r1, 0xD - muls r1, r2 - ldr r2, _080D764C @ =gMoveNames - adds r1, r2 - bl StringCopy -_080D763C: - ldr r0, _080D7648 @ =gBattleTextBuff2 - bl sub_80D8720 - ldr r7, _080D7650 @ =gUnknown_83FD57B - b _080D77DC - .align 2, 0 -_080D7648: .4byte gBattleTextBuff2 -_080D764C: .4byte gMoveNames -_080D7650: .4byte gUnknown_83FD57B -_080D7654: - ldr r4, _080D7694 @ =gBattleTextBuff1 - ldrb r1, [r4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080D76D4 - movs r0, 0x7F - ands r0, r1 - strb r0, [r4] - mov r1, r12 - ldrb r0, [r1] - bl GetBattlerSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080D7682 - ldrb r1, [r4] - cmp r1, 0x3 - beq _080D7682 - movs r0, 0x3 - eors r0, r1 - strb r0, [r4] -_080D7682: - ldr r0, _080D7694 @ =gBattleTextBuff1 - ldrb r0, [r0] - subs r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _080D769C - ldr r7, _080D7698 @ =gUnknown_83FCC8A - b _080D77DC - .align 2, 0 -_080D7694: .4byte gBattleTextBuff1 -_080D7698: .4byte gUnknown_83FCC8A -_080D769C: - ldr r0, _080D76AC @ =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080D76B4 - ldr r7, _080D76B0 @ =gUnknown_83FCD9F - b _080D77DC - .align 2, 0 -_080D76AC: .4byte gBattleTypeFlags -_080D76B0: .4byte gUnknown_83FCD9F -_080D76B4: - ldr r0, _080D76C8 @ =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0xC0 - lsls r0, 4 - ldr r7, _080D76CC @ =gUnknown_83FCD92 - cmp r1, r0 - beq _080D76C4 - b _080D77DC -_080D76C4: - ldr r7, _080D76D0 @ =gUnknown_83FE9D4 - b _080D77DC - .align 2, 0 -_080D76C8: .4byte gTrainerBattleOpponent_A -_080D76CC: .4byte gUnknown_83FCD92 -_080D76D0: .4byte gUnknown_83FE9D4 -_080D76D4: - mov r1, r12 - ldrb r0, [r1] - bl GetBattlerSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080D76F0 - ldrb r1, [r4] - cmp r1, 0x3 - beq _080D76F0 - movs r0, 0x3 - eors r0, r1 - strb r0, [r4] -_080D76F0: - ldr r0, _080D7710 @ =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080D7738 - ldr r0, _080D7714 @ =gBattleTextBuff1 - ldrb r0, [r0] - cmp r0, 0x2 - beq _080D7728 - cmp r0, 0x2 - bgt _080D7718 - cmp r0, 0x1 - beq _080D771E - b _080D77DC - .align 2, 0 -_080D7710: .4byte gBattleTypeFlags -_080D7714: .4byte gBattleTextBuff1 -_080D7718: - cmp r0, 0x3 - beq _080D7730 - b _080D77DC -_080D771E: - ldr r7, _080D7724 @ =gUnknown_83FCCF8 - b _080D77DC - .align 2, 0 -_080D7724: .4byte gUnknown_83FCCF8 -_080D7728: - ldr r7, _080D772C @ =gUnknown_83FCD27 - b _080D77DC - .align 2, 0 -_080D772C: .4byte gUnknown_83FCD27 -_080D7730: - ldr r7, _080D7734 @ =gUnknown_83FCD66 - b _080D77DC - .align 2, 0 -_080D7734: .4byte gUnknown_83FCD66 -_080D7738: - ldr r0, _080D7758 @ =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0xC0 - lsls r0, 4 - cmp r1, r0 - bne _080D7780 - ldr r0, _080D775C @ =gBattleTextBuff1 - ldrb r0, [r0] - cmp r0, 0x2 - beq _080D7770 - cmp r0, 0x2 - bgt _080D7760 - cmp r0, 0x1 - beq _080D7766 - b _080D77DC - .align 2, 0 -_080D7758: .4byte gTrainerBattleOpponent_A -_080D775C: .4byte gBattleTextBuff1 -_080D7760: - cmp r0, 0x3 - beq _080D7778 - b _080D77DC -_080D7766: - ldr r7, _080D776C @ =gUnknown_83FD1C7 - b _080D77DC - .align 2, 0 -_080D776C: .4byte gUnknown_83FD1C7 -_080D7770: - ldr r7, _080D7774 @ =gUnknown_83FE9E4 - b _080D77DC - .align 2, 0 -_080D7774: .4byte gUnknown_83FE9E4 -_080D7778: - ldr r7, _080D777C @ =gUnknown_83FE9FF - b _080D77DC - .align 2, 0 -_080D777C: .4byte gUnknown_83FE9FF -_080D7780: - ldr r0, _080D7794 @ =gBattleTextBuff1 - ldrb r0, [r0] - cmp r0, 0x2 - beq _080D77A8 - cmp r0, 0x2 - bgt _080D7798 - cmp r0, 0x1 - beq _080D779E - b _080D77DC - .align 2, 0 -_080D7794: .4byte gBattleTextBuff1 -_080D7798: - cmp r0, 0x3 - beq _080D77B0 - b _080D77DC -_080D779E: - ldr r7, _080D77A4 @ =gUnknown_83FCCE4 - b _080D77DC - .align 2, 0 -_080D77A4: .4byte gUnknown_83FCCE4 -_080D77A8: - ldr r7, _080D77AC @ =gUnknown_83FCD0F - b _080D77DC - .align 2, 0 -_080D77AC: .4byte gUnknown_83FCD0F -_080D77B0: - ldr r7, _080D77B4 @ =gUnknown_83FCD41 - b _080D77DC - .align 2, 0 -_080D77B4: .4byte gUnknown_83FCD41 -_080D77B8: - ldr r0, _080D77C8 @ =0x00000181 - cmp r6, r0 - bls _080D77D0 - ldr r1, _080D77CC @ =gDisplayedStringBattle - movs r0, 0xFF - strb r0, [r1] - b _080D77E2 - .align 2, 0 -_080D77C8: .4byte 0x00000181 -_080D77CC: .4byte gDisplayedStringBattle -_080D77D0: - ldr r1, _080D77F0 @ =gBattleStringsTable - adds r0, r6, 0 - subs r0, 0xC - lsls r0, 2 - adds r0, r1 - ldr r7, [r0] -_080D77DC: - adds r0, r7, 0 - bl BattleStringExpandPlaceholdersToDisplayedString -_080D77E2: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080D77F0: .4byte gBattleStringsTable - thumb_func_end BufferStringBattle - - thumb_func_start BattleStringExpandPlaceholdersToDisplayedString -BattleStringExpandPlaceholdersToDisplayedString: @ 80D77F4 - push {lr} - ldr r1, _080D7800 @ =gDisplayedStringBattle - bl BattleStringExpandPlaceholders - pop {r1} - bx r1 - .align 2, 0 -_080D7800: .4byte gDisplayedStringBattle - thumb_func_end BattleStringExpandPlaceholdersToDisplayedString - - thumb_func_start TryGetStatusString -TryGetStatusString: @ 80D7804 - push {r4,r5,lr} - sub sp, 0x8 - adds r4, r0, 0 - ldr r1, _080D781C @ =gUnknown_83FEB5C - mov r0, sp - movs r2, 0x8 - bl memcpy - mov r2, sp - movs r3, 0 - b _080D782C - .align 2, 0 -_080D781C: .4byte gUnknown_83FEB5C -_080D7820: - strb r1, [r2] - adds r4, 0x1 - adds r2, 0x1 - adds r3, 0x1 - cmp r3, 0x7 - bhi _080D7834 -_080D782C: - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _080D7820 -_080D7834: - ldr r5, [sp] - ldr r4, [sp, 0x4] - movs r3, 0 - ldr r2, _080D7850 @ =gStatusConditionStringsTable -_080D783C: - ldr r1, [r2] - ldr r0, [r1] - cmp r5, r0 - bne _080D7854 - ldr r0, [r1, 0x4] - cmp r4, r0 - bne _080D7854 - ldr r0, [r2, 0x4] - b _080D785E - .align 2, 0 -_080D7850: .4byte gStatusConditionStringsTable -_080D7854: - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x6 - bls _080D783C - movs r0, 0 -_080D785E: - add sp, 0x8 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end TryGetStatusString - - thumb_func_start BattleStringExpandPlaceholders -BattleStringExpandPlaceholders: @ 80D7868 - 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 - bl GetMultiplayerId - lsls r0, 24 - lsrs r7, r0, 24 - mov r0, r9 - ldrb r1, [r0] - bl _080D83F0 -_080D788A: - cmp r1, 0xFD - beq _080D7892 - bl _080D83E0 -_080D7892: - movs r1, 0x1 - add r9, r1 - mov r2, r9 - ldrb r0, [r2] - cmp r0, 0x30 - bls _080D78A2 - bl _080D8382 -_080D78A2: - lsls r0, 2 - ldr r1, _080D78AC @ =_080D78B0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080D78AC: .4byte _080D78B0 - .align 2, 0 -_080D78B0: - .4byte _080D7974 - .4byte _080D79A2 - .4byte _080D79DE - .4byte _080D79E8 - .4byte _080D79F4 - .4byte _080D7A00 - .4byte _080D7A24 - .4byte _080D7A48 - .4byte _080D7A6C - .4byte _080D7A90 - .4byte _080D7ABC - .4byte _080D7AEC - .4byte _080D7B1C - .4byte _080D7B4C - .4byte _080D7BE0 - .4byte _080D7C4C - .4byte _080D7CC0 - .4byte _080D7D34 - .4byte _080D7DA8 - .4byte _080D7E1C - .4byte _080D7E90 - .4byte _080D7EA8 - .4byte _080D7EE4 - .4byte _080D7FB0 - .4byte _080D7FB8 - .4byte _080D7FC8 - .4byte _080D7FD8 - .4byte _080D7FE8 - .4byte _080D8008 - .4byte _080D80A4 - .4byte _080D8162 - .4byte _080D8174 - .4byte _080D8188 - .4byte _080D819C - .4byte _080D81C0 - .4byte _080D81DC - .4byte _080D81E8 - .4byte _080D8214 - .4byte _080D8260 - .4byte _080D82F8 - .4byte _080D8340 - .4byte _080D8348 - .4byte _080D8318 - .4byte _080D8320 - .4byte _080D8368 - .4byte _080D8370 - .4byte _080D8240 - .4byte _080D8250 - .4byte _080D79B8 -_080D7974: - ldr r5, _080D7984 @ =gBattleTextBuff1 - ldrb r0, [r5] - cmp r0, 0xFD - bne _080D798C - ldr r4, _080D7988 @ =gStringVar1 - adds r0, r5, 0 - b _080D79C4 - .align 2, 0 -_080D7984: .4byte gBattleTextBuff1 -_080D7988: .4byte gStringVar1 -_080D798C: - adds r0, r5, 0 - bl TryGetStatusString - adds r4, r0, 0 - cmp r4, 0 - beq _080D799C - bl _080D8382 -_080D799C: - adds r4, r5, 0 - bl _080D8382 -_080D79A2: - ldr r1, _080D79B0 @ =gBattleTextBuff2 - ldrb r0, [r1] - cmp r0, 0xFD - bne _080D79D8 - ldr r4, _080D79B4 @ =gStringVar2 - b _080D79C2 - .align 2, 0 -_080D79B0: .4byte gBattleTextBuff2 -_080D79B4: .4byte gStringVar2 -_080D79B8: - ldr r1, _080D79D0 @ =gBattleTextBuff3 - ldrb r0, [r1] - cmp r0, 0xFD - bne _080D79D8 - ldr r4, _080D79D4 @ =gStringVar3 -_080D79C2: - adds r0, r1, 0 -_080D79C4: - adds r1, r4, 0 - bl ExpandBattleTextBuffPlaceholders - bl _080D8382 - .align 2, 0 -_080D79D0: .4byte gBattleTextBuff3 -_080D79D4: .4byte gStringVar3 -_080D79D8: - adds r4, r1, 0 - bl _080D8382 -_080D79DE: - ldr r4, _080D79E4 @ =gStringVar1 - bl _080D8382 - .align 2, 0 -_080D79E4: .4byte gStringVar1 -_080D79E8: - ldr r4, _080D79F0 @ =gStringVar2 - bl _080D8382 - .align 2, 0 -_080D79F0: .4byte gStringVar2 -_080D79F4: - ldr r4, _080D79FC @ =gStringVar3 - bl _080D8382 - .align 2, 0 -_080D79FC: .4byte gStringVar3 -_080D7A00: - movs r0, 0 - bl GetBattlerAtPosition - ldr r1, _080D7A1C @ =gBattlerPartyIndexes - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080D7A20 @ =gPlayerParty - adds r0, r1 - bl _080D82AA - .align 2, 0 -_080D7A1C: .4byte gBattlerPartyIndexes -_080D7A20: .4byte gPlayerParty -_080D7A24: - movs r0, 0x1 - bl GetBattlerAtPosition - ldr r1, _080D7A40 @ =gBattlerPartyIndexes - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080D7A44 @ =gEnemyParty - adds r0, r1 - bl _080D82AA - .align 2, 0 -_080D7A40: .4byte gBattlerPartyIndexes -_080D7A44: .4byte gEnemyParty -_080D7A48: - movs r0, 0x2 - bl GetBattlerAtPosition - ldr r1, _080D7A64 @ =gBattlerPartyIndexes - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080D7A68 @ =gPlayerParty - adds r0, r1 - bl _080D82AA - .align 2, 0 -_080D7A64: .4byte gBattlerPartyIndexes -_080D7A68: .4byte gPlayerParty -_080D7A6C: - movs r0, 0x3 - bl GetBattlerAtPosition - ldr r1, _080D7A88 @ =gBattlerPartyIndexes - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080D7A8C @ =gEnemyParty - adds r0, r1 - bl _080D82AA - .align 2, 0 -_080D7A88: .4byte gBattlerPartyIndexes -_080D7A8C: .4byte gEnemyParty -_080D7A90: - ldr r2, _080D7AB0 @ =gBattlerPartyIndexes - ldr r1, _080D7AB4 @ =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, _080D7AB8 @ =gPlayerParty - adds r0, r1 - bl _080D82AA - .align 2, 0 -_080D7AB0: .4byte gBattlerPartyIndexes -_080D7AB4: .4byte gLinkPlayers -_080D7AB8: .4byte gPlayerParty -_080D7ABC: - ldr r2, _080D7AE0 @ =gBattlerPartyIndexes - ldr r1, _080D7AE4 @ =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, _080D7AE8 @ =gEnemyParty - adds r0, r1 - bl _080D82AA - .align 2, 0 -_080D7AE0: .4byte gBattlerPartyIndexes -_080D7AE4: .4byte gLinkPlayers -_080D7AE8: .4byte gEnemyParty -_080D7AEC: - ldr r2, _080D7B10 @ =gBattlerPartyIndexes - ldr r1, _080D7B14 @ =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, _080D7B18 @ =gPlayerParty - adds r0, r1 - bl _080D82AA - .align 2, 0 -_080D7B10: .4byte gBattlerPartyIndexes -_080D7B14: .4byte gLinkPlayers -_080D7B18: .4byte gPlayerParty -_080D7B1C: - ldr r2, _080D7B40 @ =gBattlerPartyIndexes - ldr r1, _080D7B44 @ =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, _080D7B48 @ =gEnemyParty - adds r0, r1 - b _080D82AA - .align 2, 0 -_080D7B40: .4byte gBattlerPartyIndexes -_080D7B44: .4byte gLinkPlayers -_080D7B48: .4byte gEnemyParty -_080D7B4C: - ldr r4, _080D7B70 @ =gBattlerAttacker - ldrb r0, [r4] - bl GetBattlerSide - lsls r0, 24 - adds r2, r4, 0 - cmp r0, 0 - beq _080D7BC0 - ldr r0, _080D7B74 @ =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, _080D7B78 @ =gUnknown_83FD555 - cmp r1, 0 - beq _080D7B8A - ldr r4, _080D7B7C @ =gUnknown_83FD55B - b _080D7B8A - .align 2, 0 -_080D7B70: .4byte gBattlerAttacker -_080D7B74: .4byte gBattleTypeFlags -_080D7B78: .4byte gUnknown_83FD555 -_080D7B7C: .4byte gUnknown_83FD55B -_080D7B80: - mov r3, r8 - adds r0, r3, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 -_080D7B8A: - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _080D7B80 - ldrb r0, [r2] - bl GetBattlerPosition - adds r1, r0, 0 - movs r0, 0x1 - ands r0, r1 - bl GetBattlerAtPosition - ldr r1, _080D7BB8 @ =gBattlerPartyIndexes - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080D7BBC @ =gEnemyParty - adds r0, r1 - b _080D82AA - .align 2, 0 -_080D7BB8: .4byte gBattlerPartyIndexes -_080D7BBC: .4byte gEnemyParty -_080D7BC0: - ldrb r0, [r2] - bl GetBattlerPosition - adds r1, r0, 0 - movs r0, 0x1 - ands r0, r1 - bl GetBattlerAtPosition - ldr r1, _080D7BDC @ =gBattlerPartyIndexes - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - b _080D82D4 - .align 2, 0 -_080D7BDC: .4byte gBattlerPartyIndexes -_080D7BE0: - ldr r4, _080D7C14 @ =gBattlerAttacker - ldrb r0, [r4] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _080D7C20 - ldrb r0, [r4] - bl GetBattlerPosition - adds r1, r0, 0 - movs r0, 0x1 - ands r0, r1 - bl GetBattlerAtPosition - ldr r1, _080D7C18 @ =gBattlerPartyIndexes - lsls r0, 24 - lsrs r0, 23 - adds r0, 0x4 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080D7C1C @ =gPlayerParty - adds r0, r1 - b _080D82AA - .align 2, 0 -_080D7C14: .4byte gBattlerAttacker -_080D7C18: .4byte gBattlerPartyIndexes -_080D7C1C: .4byte gPlayerParty -_080D7C20: - ldrb r0, [r4] - bl GetBattlerPosition - adds r1, r0, 0 - movs r0, 0x1 - ands r0, r1 - bl GetBattlerAtPosition - ldr r1, _080D7C44 @ =gBattlerPartyIndexes - lsls r0, 24 - lsrs r0, 23 - adds r0, 0x4 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080D7C48 @ =gEnemyParty - b _080D82DA - .align 2, 0 -_080D7C44: .4byte gBattlerPartyIndexes -_080D7C48: .4byte gEnemyParty -_080D7C4C: - ldr r5, _080D7C98 @ =gBattlerAttacker - ldrb r0, [r5] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - beq _080D7CB0 - ldr r0, _080D7C9C @ =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, _080D7CA0 @ =gUnknown_83FD555 - cmp r1, 0 - beq _080D7C6A - ldr r4, _080D7CA4 @ =gUnknown_83FD55B -_080D7C6A: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r3, _080D7CA8 @ =gBattlerPartyIndexes - ldr r2, _080D7CAC @ =gEnemyParty - mov r12, r2 - adds r2, r5, 0 - cmp r0, 0xFF - beq _080D7C8C -_080D7C7A: - 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 _080D7C7A -_080D7C8C: - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r1, [r0] - b _080D82A4 - .align 2, 0 -_080D7C98: .4byte gBattlerAttacker -_080D7C9C: .4byte gBattleTypeFlags -_080D7CA0: .4byte gUnknown_83FD555 -_080D7CA4: .4byte gUnknown_83FD55B -_080D7CA8: .4byte gBattlerPartyIndexes -_080D7CAC: .4byte gEnemyParty -_080D7CB0: - ldr r1, _080D7CBC @ =gBattlerPartyIndexes - ldrb r0, [r5] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - b _080D82D4 - .align 2, 0 -_080D7CBC: .4byte gBattlerPartyIndexes -_080D7CC0: - ldr r5, _080D7D0C @ =gBattlerTarget - ldrb r0, [r5] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - beq _080D7D24 - ldr r0, _080D7D10 @ =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, _080D7D14 @ =gUnknown_83FD555 - cmp r1, 0 - beq _080D7CDE - ldr r4, _080D7D18 @ =gUnknown_83FD55B -_080D7CDE: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r3, _080D7D1C @ =gBattlerPartyIndexes - ldr r2, _080D7D20 @ =gEnemyParty - mov r12, r2 - adds r2, r5, 0 - cmp r0, 0xFF - beq _080D7D00 -_080D7CEE: - 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 _080D7CEE -_080D7D00: - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r1, [r0] - b _080D82A4 - .align 2, 0 -_080D7D0C: .4byte gBattlerTarget -_080D7D10: .4byte gBattleTypeFlags -_080D7D14: .4byte gUnknown_83FD555 -_080D7D18: .4byte gUnknown_83FD55B -_080D7D1C: .4byte gBattlerPartyIndexes -_080D7D20: .4byte gEnemyParty -_080D7D24: - ldr r1, _080D7D30 @ =gBattlerPartyIndexes - ldrb r0, [r5] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - b _080D82D4 - .align 2, 0 -_080D7D30: .4byte gBattlerPartyIndexes -_080D7D34: - ldr r5, _080D7D80 @ =gEffectBattler - ldrb r0, [r5] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - beq _080D7D98 - ldr r0, _080D7D84 @ =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, _080D7D88 @ =gUnknown_83FD555 - cmp r1, 0 - beq _080D7D52 - ldr r4, _080D7D8C @ =gUnknown_83FD55B -_080D7D52: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r3, _080D7D90 @ =gBattlerPartyIndexes - ldr r2, _080D7D94 @ =gEnemyParty - mov r12, r2 - adds r2, r5, 0 - cmp r0, 0xFF - beq _080D7D74 -_080D7D62: - 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 _080D7D62 -_080D7D74: - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r1, [r0] - b _080D82A4 - .align 2, 0 -_080D7D80: .4byte gEffectBattler -_080D7D84: .4byte gBattleTypeFlags -_080D7D88: .4byte gUnknown_83FD555 -_080D7D8C: .4byte gUnknown_83FD55B -_080D7D90: .4byte gBattlerPartyIndexes -_080D7D94: .4byte gEnemyParty -_080D7D98: - ldr r1, _080D7DA4 @ =gBattlerPartyIndexes - ldrb r0, [r5] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - b _080D82D4 - .align 2, 0 -_080D7DA4: .4byte gBattlerPartyIndexes -_080D7DA8: - ldr r5, _080D7DF4 @ =gActiveBattler - ldrb r0, [r5] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - beq _080D7E0C - ldr r0, _080D7DF8 @ =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, _080D7DFC @ =gUnknown_83FD555 - cmp r1, 0 - beq _080D7DC6 - ldr r4, _080D7E00 @ =gUnknown_83FD55B -_080D7DC6: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r3, _080D7E04 @ =gBattlerPartyIndexes - ldr r2, _080D7E08 @ =gEnemyParty - mov r12, r2 - adds r2, r5, 0 - cmp r0, 0xFF - beq _080D7DE8 -_080D7DD6: - 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 _080D7DD6 -_080D7DE8: - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r1, [r0] - b _080D82A4 - .align 2, 0 -_080D7DF4: .4byte gActiveBattler -_080D7DF8: .4byte gBattleTypeFlags -_080D7DFC: .4byte gUnknown_83FD555 -_080D7E00: .4byte gUnknown_83FD55B -_080D7E04: .4byte gBattlerPartyIndexes -_080D7E08: .4byte gEnemyParty -_080D7E0C: - ldr r1, _080D7E18 @ =gBattlerPartyIndexes - ldrb r0, [r5] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - b _080D82D4 - .align 2, 0 -_080D7E18: .4byte gBattlerPartyIndexes -_080D7E1C: - ldr r5, _080D7E68 @ =gBattleScripting - ldrb r0, [r5, 0x17] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - beq _080D7E80 - ldr r0, _080D7E6C @ =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, _080D7E70 @ =gUnknown_83FD555 - cmp r1, 0 - beq _080D7E3A - ldr r4, _080D7E74 @ =gUnknown_83FD55B -_080D7E3A: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r3, _080D7E78 @ =gBattlerPartyIndexes - ldr r2, _080D7E7C @ =gEnemyParty - mov r12, r2 - adds r2, r5, 0 - cmp r0, 0xFF - beq _080D7E5C -_080D7E4A: - 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 _080D7E4A -_080D7E5C: - ldrb r0, [r2, 0x17] - lsls r0, 1 - adds r0, r3 - ldrh r1, [r0] - b _080D82A4 - .align 2, 0 -_080D7E68: .4byte gBattleScripting -_080D7E6C: .4byte gBattleTypeFlags -_080D7E70: .4byte gUnknown_83FD555 -_080D7E74: .4byte gUnknown_83FD55B -_080D7E78: .4byte gBattlerPartyIndexes -_080D7E7C: .4byte gEnemyParty -_080D7E80: - ldr r1, _080D7E8C @ =gBattlerPartyIndexes - ldrb r0, [r5, 0x17] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - b _080D82D4 - .align 2, 0 -_080D7E8C: .4byte gBattlerPartyIndexes -_080D7E90: - ldr r0, _080D7EA4 @ =gUnknown_2039A34 - ldr r2, [r0] - ldrh r1, [r2] - movs r0, 0xB1 - lsls r0, 1 - cmp r1, r0 - bhi _080D7EB6 - ldrh r1, [r2] - b _080D7ED6 - .align 2, 0 -_080D7EA4: .4byte gUnknown_2039A34 -_080D7EA8: - ldr r0, _080D7EC8 @ =gUnknown_2039A34 - ldr r2, [r0] - ldrh r1, [r2, 0x2] - movs r0, 0xB1 - lsls r0, 1 - cmp r1, r0 - bls _080D7ED4 -_080D7EB6: - ldr r0, _080D7ECC @ =gBattleStruct - ldr r0, [r0] - adds r0, 0x8E - ldrb r0, [r0] - lsls r0, 2 - ldr r1, _080D7ED0 @ =gUnknown_83FEA28 - adds r4, r0, r1 - b _080D8382 - .align 2, 0 -_080D7EC8: .4byte gUnknown_2039A34 -_080D7ECC: .4byte gBattleStruct -_080D7ED0: .4byte gUnknown_83FEA28 -_080D7ED4: - ldrh r1, [r2, 0x2] -_080D7ED6: - movs r0, 0xD - muls r1, r0 - ldr r0, _080D7EE0 @ =gMoveNames - adds r4, r1, r0 - b _080D8382 - .align 2, 0 -_080D7EE0: .4byte gMoveNames -_080D7EE4: - ldr r0, _080D7F1C @ =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080D7F9C - ldr r2, _080D7F20 @ =gLastUsedItem - ldrh r0, [r2] - cmp r0, 0xAF - bne _080D7F98 - movs r0, 0x40 - ands r1, r0 - cmp r1, 0 - bne _080D7F44 - ldr r0, _080D7F24 @ =gBattleStruct - ldr r0, [r0] - adds r0, 0xB5 - ldrb r0, [r0] - cmp r0, 0 - beq _080D7F2C - ldr r2, _080D7F28 @ =gPotentialItemEffectBattler - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080D7F38 - b _080D7F90 - .align 2, 0 -_080D7F1C: .4byte gBattleTypeFlags -_080D7F20: .4byte gLastUsedItem -_080D7F24: .4byte gBattleStruct -_080D7F28: .4byte gPotentialItemEffectBattler -_080D7F2C: - ldr r2, _080D7F40 @ =gPotentialItemEffectBattler - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080D7F90 -_080D7F38: - ldrb r0, [r2] - lsls r1, r0, 3 - subs r1, r0 - b _080D7F64 - .align 2, 0 -_080D7F40: .4byte gPotentialItemEffectBattler -_080D7F44: - ldr r2, _080D7F7C @ =gLinkPlayers - ldr r0, _080D7F80 @ =gBattleStruct - ldr r0, [r0] - adds r0, 0xB5 - ldrb r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, _080D7F84 @ =gPotentialItemEffectBattler - ldrb r2, [r1] - ldrh r0, [r0, 0x18] - cmp r0, r2 - bne _080D7F90 - lsls r1, r2, 3 - subs r1, r2 -_080D7F64: - lsls r1, 2 - ldr r0, _080D7F88 @ =gEnigmaBerries - adds r1, r0 - mov r0, sp - bl StringCopy - ldr r1, _080D7F8C @ =gUnknown_83FD8AF - mov r0, sp - bl StringAppend - mov r4, sp - b _080D8382 - .align 2, 0 -_080D7F7C: .4byte gLinkPlayers -_080D7F80: .4byte gBattleStruct -_080D7F84: .4byte gPotentialItemEffectBattler -_080D7F88: .4byte gEnigmaBerries -_080D7F8C: .4byte gUnknown_83FD8AF -_080D7F90: - ldr r4, _080D7F94 @ =gUnknown_83FD8A2 - b _080D8382 - .align 2, 0 -_080D7F94: .4byte gUnknown_83FD8A2 -_080D7F98: - ldrh r0, [r2] - b _080D7FA0 -_080D7F9C: - ldr r0, _080D7FAC @ =gLastUsedItem - ldrh r0, [r0] -_080D7FA0: - mov r1, sp - bl CopyItemName - mov r4, sp - b _080D8382 - .align 2, 0 -_080D7FAC: .4byte gLastUsedItem -_080D7FB0: - ldr r0, _080D7FB4 @ =gLastUsedAbility - b _080D7FF0 - .align 2, 0 -_080D7FB4: .4byte gLastUsedAbility -_080D7FB8: - ldr r1, _080D7FC0 @ =gUnknown_2039A30 - ldr r0, _080D7FC4 @ =gBattlerAttacker - b _080D7FEC - .align 2, 0 -_080D7FC0: .4byte gUnknown_2039A30 -_080D7FC4: .4byte gBattlerAttacker -_080D7FC8: - ldr r1, _080D7FD0 @ =gUnknown_2039A30 - ldr r0, _080D7FD4 @ =gBattlerTarget - b _080D7FEC - .align 2, 0 -_080D7FD0: .4byte gUnknown_2039A30 -_080D7FD4: .4byte gBattlerTarget -_080D7FD8: - ldr r1, _080D7FE0 @ =gUnknown_2039A30 - ldr r0, _080D7FE4 @ =gBattleScripting - ldrb r0, [r0, 0x17] - b _080D7FEE - .align 2, 0 -_080D7FE0: .4byte gUnknown_2039A30 -_080D7FE4: .4byte gBattleScripting -_080D7FE8: - ldr r1, _080D7FFC @ =gUnknown_2039A30 - ldr r0, _080D8000 @ =gEffectBattler -_080D7FEC: - ldrb r0, [r0] -_080D7FEE: - adds r0, r1 -_080D7FF0: - ldrb r1, [r0] - movs r0, 0xD - muls r1, r0 - ldr r0, _080D8004 @ =gAbilityNames - adds r4, r1, r0 - b _080D8382 - .align 2, 0 -_080D7FFC: .4byte gUnknown_2039A30 -_080D8000: .4byte gEffectBattler -_080D8004: .4byte gAbilityNames -_080D8008: - ldr r3, _080D8020 @ =gTrainerBattleOpponent_A - ldrh r1, [r3] - movs r0, 0x80 - lsls r0, 3 - cmp r1, r0 - bne _080D8024 - bl GetSecretBaseTrainerNameIndex - lsls r0, 24 - lsrs r0, 24 - movs r1, 0xD - b _080D8094 - .align 2, 0 -_080D8020: .4byte gTrainerBattleOpponent_A -_080D8024: - movs r0, 0xC0 - lsls r0, 4 - cmp r1, r0 - bne _080D8038 - bl sub_80447F0 - lsls r0, 16 - lsrs r0, 16 - movs r1, 0xD - b _080D8094 -_080D8038: - ldr r0, _080D8054 @ =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 1 - ands r0, r1 - cmp r0, 0 - beq _080D8058 - bl GetBattleTowerTrainerClassNameId - lsls r0, 24 - lsrs r0, 24 - movs r1, 0xD - b _080D8094 - .align 2, 0 -_080D8054: .4byte gBattleTypeFlags -_080D8058: - movs r0, 0x80 - lsls r0, 12 - ands r0, r1 - cmp r0, 0 - beq _080D806E - bl sub_815DA10 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0xD - b _080D8094 -_080D806E: - movs r0, 0x80 - lsls r0, 4 - ands r1, r0 - cmp r1, 0 - beq _080D8084 - bl GetEreaderTrainerClassId - lsls r0, 24 - lsrs r0, 24 - movs r1, 0xD - b _080D8094 -_080D8084: - ldr r2, _080D809C @ =gTrainers - ldrh r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r1, [r0, 0x1] - movs r0, 0xD -_080D8094: - muls r1, r0 - ldr r0, _080D80A0 @ =gTrainerClassNames - adds r4, r1, r0 - b _080D8382 - .align 2, 0 -_080D809C: .4byte gTrainers -_080D80A0: .4byte gTrainerClassNames -_080D80A4: - ldr r0, _080D80E8 @ =gTrainerBattleOpponent_A - ldrh r2, [r0] - movs r1, 0x80 - lsls r1, 3 - adds r5, r0, 0 - cmp r2, r1 - bne _080D80D6 - movs r2, 0 - ldr r0, _080D80EC @ =gBattleResources - ldr r3, [r0] -_080D80B8: - 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 _080D80B8 - mov r3, sp - adds r1, r3, r2 - movs r0, 0xFF - strb r0, [r1] - mov r4, sp -_080D80D6: - ldrh r1, [r5] - movs r0, 0xC0 - lsls r0, 4 - cmp r1, r0 - bne _080D80F0 - movs r1, 0x1 - adds r0, r7, 0 - eors r0, r1 - b _080D81C8 - .align 2, 0 -_080D80E8: .4byte gTrainerBattleOpponent_A -_080D80EC: .4byte gBattleResources -_080D80F0: - ldr r0, _080D8108 @ =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 1 - ands r0, r1 - cmp r0, 0 - beq _080D810C - mov r0, sp - bl GetBattleTowerTrainerName - b _080D8382 - .align 2, 0 -_080D8108: .4byte gBattleTypeFlags -_080D810C: - movs r0, 0x80 - lsls r0, 12 - ands r0, r1 - cmp r0, 0 - beq _080D8120 - mov r0, sp - bl sub_815DA28 - mov r4, sp - b _080D8382 -_080D8120: - movs r0, 0x80 - lsls r0, 4 - ands r1, r0 - cmp r1, 0 - beq _080D8134 - mov r0, sp - bl CopyEReaderTrainerName5 - mov r4, sp - b _080D8382 -_080D8134: - ldr r2, _080D8158 @ =gTrainers - ldrh r0, [r5] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r0, r1, r2 - ldrb r0, [r0, 0x1] - cmp r0, 0x51 - beq _080D814E - cmp r0, 0x59 - beq _080D814E - cmp r0, 0x5A - bne _080D815C -_080D814E: - movs r0, 0x6 - bl GetExpandedPlaceholder - adds r4, r0, 0 - b _080D8382 - .align 2, 0 -_080D8158: .4byte gTrainers -_080D815C: - adds r0, r2, 0x4 - adds r4, r1, r0 - b _080D8382 -_080D8162: - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - ldr r1, _080D8170 @ =gLinkPlayers + 8 - adds r4, r0, r1 - b _080D8382 - .align 2, 0 -_080D8170: .4byte gLinkPlayers + 8 -_080D8174: - ldr r4, _080D8184 @ =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x18] - movs r0, 0x2 - b _080D81AA - .align 2, 0 -_080D8184: .4byte gLinkPlayers -_080D8188: - ldr r4, _080D8198 @ =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x18] - movs r0, 0x1 - b _080D81AA - .align 2, 0 -_080D8198: .4byte gLinkPlayers -_080D819C: - ldr r4, _080D81BC @ =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x18] - movs r0, 0x3 -_080D81AA: - eors r0, r1 - bl GetBattlerMultiplayerId - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r4, 0x8 - adds r4, r1, r4 - b _080D8382 - .align 2, 0 -_080D81BC: .4byte gLinkPlayers -_080D81C0: - ldr r0, _080D81D4 @ =gBattleScripting - ldrb r0, [r0, 0x17] - bl GetBattlerMultiplayerId -_080D81C8: - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - ldr r0, _080D81D8 @ =gLinkPlayers + 8 - adds r4, r1, r0 - b _080D8382 - .align 2, 0 -_080D81D4: .4byte gBattleScripting -_080D81D8: .4byte gLinkPlayers + 8 -_080D81DC: - ldr r0, _080D81E4 @ =gSaveBlock2Ptr - ldr r4, [r0] - b _080D8382 - .align 2, 0 -_080D81E4: .4byte gSaveBlock2Ptr -_080D81E8: - ldr r0, _080D8204 @ =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 12 - ands r0, r1 - cmp r0, 0 - beq _080D820C - ldr r4, _080D8208 @ =gStringVar4 - adds r0, r4, 0 - movs r1, 0 - bl sub_815DC40 - b _080D8382 - .align 2, 0 -_080D8204: .4byte gBattleTypeFlags -_080D8208: .4byte gStringVar4 -_080D820C: - bl GetTrainerALoseText - adds r4, r0, 0 - b _080D8382 -_080D8214: - ldr r0, _080D8230 @ =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 12 - ands r0, r1 - cmp r0, 0 - beq _080D8238 - ldr r4, _080D8234 @ =gStringVar4 - adds r0, r4, 0 - movs r1, 0 - bl sub_815DBF4 - b _080D8382 - .align 2, 0 -_080D8230: .4byte gBattleTypeFlags -_080D8234: .4byte gStringVar4 -_080D8238: - bl GetTrainerWonSpeech - adds r4, r0, 0 - b _080D8382 -_080D8240: - ldr r4, _080D824C @ =gStringVar4 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_815DC40 - b _080D8382 - .align 2, 0 -_080D824C: .4byte gStringVar4 -_080D8250: - ldr r4, _080D825C @ =gStringVar4 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_815DBF4 - b _080D8382 - .align 2, 0 -_080D825C: .4byte gStringVar4 -_080D8260: - ldr r0, _080D82B4 @ =gBattleScripting - ldrb r0, [r0, 0x17] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - beq _080D82CC - ldr r0, _080D82B8 @ =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, _080D82BC @ =gUnknown_83FD555 - cmp r1, 0 - beq _080D827E - ldr r4, _080D82C0 @ =gUnknown_83FD55B -_080D827E: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r5, _080D82C4 @ =gEnemyParty - mov r12, r5 - ldr r2, _080D82C8 @ =gBattleStruct - cmp r0, 0xFF - beq _080D829E -_080D828C: - 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 _080D828C -_080D829E: - ldr r0, [r2] - adds r0, 0x52 - ldrb r1, [r0] -_080D82A4: - movs r0, 0x64 - muls r0, r1 - add r0, r12 -_080D82AA: - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _080D82E4 - .align 2, 0 -_080D82B4: .4byte gBattleScripting -_080D82B8: .4byte gBattleTypeFlags -_080D82BC: .4byte gUnknown_83FD555 -_080D82C0: .4byte gUnknown_83FD55B -_080D82C4: .4byte gEnemyParty -_080D82C8: .4byte gBattleStruct -_080D82CC: - ldr r0, _080D82F0 @ =gBattleStruct - ldr r0, [r0] - adds r0, 0x52 - ldrb r1, [r0] -_080D82D4: - movs r0, 0x64 - muls r0, r1 - ldr r1, _080D82F4 @ =gPlayerParty -_080D82DA: - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_080D82E4: - mov r0, sp - bl StringGetEnd10 - mov r4, sp - b _080D8382 - .align 2, 0 -_080D82F0: .4byte gBattleStruct -_080D82F4: .4byte gPlayerParty -_080D82F8: - ldr r0, _080D830C @ =0x00000834 - bl FlagGet - lsls r0, 24 - ldr r4, _080D8310 @ =gUnknown_83FD81A - cmp r0, 0 - beq _080D8382 - ldr r4, _080D8314 @ =gUnknown_83FD824 - b _080D8382 - .align 2, 0 -_080D830C: .4byte 0x00000834 -_080D8310: .4byte gUnknown_83FD81A -_080D8314: .4byte gUnknown_83FD824 -_080D8318: - ldr r0, _080D831C @ =gBattlerAttacker - b _080D8322 - .align 2, 0 -_080D831C: .4byte gBattlerAttacker -_080D8320: - ldr r0, _080D8334 @ =gBattlerTarget -_080D8322: - ldrb r0, [r0] - bl GetBattlerSide - lsls r0, 24 - ldr r4, _080D8338 @ =gUnknown_83FD569 - cmp r0, 0 - bne _080D8382 - ldr r4, _080D833C @ =gUnknown_83FD56D - b _080D8382 - .align 2, 0 -_080D8334: .4byte gBattlerTarget -_080D8338: .4byte gUnknown_83FD569 -_080D833C: .4byte gUnknown_83FD56D -_080D8340: - ldr r0, _080D8344 @ =gBattlerAttacker - b _080D834A - .align 2, 0 -_080D8344: .4byte gBattlerAttacker -_080D8348: - ldr r0, _080D835C @ =gBattlerTarget -_080D834A: - ldrb r0, [r0] - bl GetBattlerSide - lsls r0, 24 - ldr r4, _080D8360 @ =gUnknown_83FD560 - cmp r0, 0 - bne _080D8382 - ldr r4, _080D8364 @ =gUnknown_83FD564 - b _080D8382 - .align 2, 0 -_080D835C: .4byte gBattlerTarget -_080D8360: .4byte gUnknown_83FD560 -_080D8364: .4byte gUnknown_83FD564 -_080D8368: - ldr r0, _080D836C @ =gBattlerAttacker - b _080D8372 - .align 2, 0 -_080D836C: .4byte gBattlerAttacker -_080D8370: - ldr r0, _080D83D4 @ =gBattlerTarget -_080D8372: - ldrb r0, [r0] - bl GetBattlerSide - lsls r0, 24 - ldr r4, _080D83D8 @ =gUnknown_83FD572 - cmp r0, 0 - bne _080D8382 - ldr r4, _080D83DC @ =gUnknown_83FD576 -_080D8382: - ldrb r1, [r4] - adds r0, r1, 0 - mov r5, r9 - ldrb r2, [r5] - mov r3, r9 - adds r3, 0x1 - cmp r0, 0xFF - beq _080D83A4 -_080D8392: - 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 _080D8392 -_080D83A4: - adds r0, r2, 0 - subs r0, 0x24 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _080D83BC - lsls r0, r2, 24 - lsrs r0, 24 - cmp r0, 0x2E - beq _080D83BC - cmp r0, 0x2F - bne _080D83EC -_080D83BC: - 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 _080D83EC - .align 2, 0 -_080D83D4: .4byte gBattlerTarget -_080D83D8: .4byte gUnknown_83FD572 -_080D83DC: .4byte gUnknown_83FD576 -_080D83E0: - mov r3, r8 - adds r0, r3, r6 - strb r1, [r0] - adds r6, 0x1 - mov r3, r9 - adds r3, 0x1 -_080D83EC: - mov r9, r3 - ldrb r1, [r3] -_080D83F0: - adds r0, r1, 0 - cmp r0, 0xFF - beq _080D83FA - bl _080D788A -_080D83FA: - 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 BattleStringExpandPlaceholders - - thumb_func_start ExpandBattleTextBuffPlaceholders -ExpandBattleTextBuffPlaceholders: @ 80D8418 - 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 _080D8436 - b _080D86BA -_080D8436: - adds r0, r7, r5 - ldrb r1, [r0] - adds r4, r0, 0 - cmp r1, 0xA - bls _080D8442 - b _080D86B0 -_080D8442: - lsls r0, r1, 2 - ldr r1, _080D844C @ =_080D8450 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080D844C: .4byte _080D8450 - .align 2, 0 -_080D8450: - .4byte _080D847C - .4byte _080D8498 - .4byte _080D84EC - .4byte _080D8504 - .4byte _080D8514 - .4byte _080D858C - .4byte _080D85A0 - .4byte _080D85B2 - .4byte _080D85F8 - .4byte _080D860C - .4byte _080D8628 -_080D847C: - adds r0, r5, r7 - ldrb r1, [r0, 0x1] - ldrb r0, [r0, 0x2] - lsls r0, 8 - orrs r1, r0 - ldr r0, _080D8494 @ =gBattleStringsTable - subs r1, 0xC - lsls r1, 2 - adds r1, r0 - ldr r1, [r1] - b _080D868E - .align 2, 0 -_080D8494: .4byte gBattleStringsTable -_080D8498: - ldrb r0, [r4, 0x1] - cmp r0, 0x2 - beq _080D84B4 - cmp r0, 0x2 - bgt _080D84A8 - cmp r0, 0x1 - beq _080D84AE - b _080D84D6 -_080D84A8: - cmp r0, 0x4 - beq _080D84BC - b _080D84D6 -_080D84AE: - ldrb r4, [r4, 0x3] - mov r8, r4 - b _080D84D6 -_080D84B4: - ldrb r1, [r4, 0x3] - ldrb r0, [r4, 0x4] - lsls r0, 8 - b _080D84D2 -_080D84BC: - 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 -_080D84D2: - orrs r1, r0 - mov r8, r1 -_080D84D6: - 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 _080D86B0 -_080D84EC: - 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, _080D8500 @ =gMoveNames - adds r1, r0 - b _080D868E - .align 2, 0 -_080D8500: .4byte gMoveNames -_080D8504: - adds r0, r5, r7 - ldrb r0, [r0, 0x1] - lsls r1, r0, 3 - subs r1, r0 - ldr r0, _080D8510 @ =gTypeNames - b _080D8616 - .align 2, 0 -_080D8510: .4byte gTypeNames -_080D8514: - ldrb r0, [r4, 0x1] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _080D8538 - ldrb r1, [r4, 0x2] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080D8534 @ =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _080D8574 - .align 2, 0 -_080D8534: .4byte gPlayerParty -_080D8538: - ldr r0, _080D8550 @ =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080D8558 - ldr r1, _080D8554 @ =gUnknown_83FD55B - adds r0, r6, 0 - bl StringAppend - b _080D8560 - .align 2, 0 -_080D8550: .4byte gBattleTypeFlags -_080D8554: .4byte gUnknown_83FD55B -_080D8558: - ldr r1, _080D8584 @ =gUnknown_83FD555 - adds r0, r6, 0 - bl StringAppend -_080D8560: - adds r0, r5, r7 - ldrb r1, [r0, 0x2] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080D8588 @ =gEnemyParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_080D8574: - mov r0, sp - bl StringGetEnd10 - adds r0, r6, 0 - mov r1, sp - bl StringAppend - b _080D86AE - .align 2, 0 -_080D8584: .4byte gUnknown_83FD555 -_080D8588: .4byte gEnemyParty -_080D858C: - ldr r1, _080D859C @ =gUnknown_83FD5D0 - adds r0, r5, r7 - ldrb r0, [r0, 0x1] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - b _080D8618 - .align 2, 0 -_080D859C: .4byte gUnknown_83FD5D0 -_080D85A0: - 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 _080D86AE -_080D85B2: - adds r4, r5, r7 - ldrb r0, [r4, 0x1] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _080D85D8 - ldrb r1, [r4, 0x2] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080D85D4 @ =gPlayerParty - adds r0, r1 - movs r1, 0x2 - adds r2, r6, 0 - bl GetMonData - b _080D85EA - .align 2, 0 -_080D85D4: .4byte gPlayerParty -_080D85D8: - ldrb r1, [r4, 0x2] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080D85F4 @ =gEnemyParty - adds r0, r1 - movs r1, 0x2 - adds r2, r6, 0 - bl GetMonData -_080D85EA: - adds r0, r6, 0 - bl StringGetEnd10 - b _080D86AE - .align 2, 0 -_080D85F4: .4byte gEnemyParty -_080D85F8: - ldr r1, _080D8608 @ =gUnknown_83FD63C - adds r0, r5, r7 - ldrb r0, [r0, 0x1] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - b _080D8618 - .align 2, 0 -_080D8608: .4byte gUnknown_83FD63C -_080D860C: - adds r0, r5, r7 - ldrb r1, [r0, 0x1] - movs r0, 0xD - muls r1, r0 - ldr r0, _080D8624 @ =gAbilityNames -_080D8616: - adds r1, r0 -_080D8618: - adds r0, r6, 0 - bl StringAppend - adds r5, 0x2 - b _080D86B0 - .align 2, 0 -_080D8624: .4byte gAbilityNames -_080D8628: - adds r0, r5, r7 - ldrb r2, [r0, 0x1] - ldrb r0, [r0, 0x2] - lsls r0, 8 - orrs r2, r0 - ldr r0, _080D8674 @ =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080D86A6 - cmp r2, 0xAF - bne _080D869C - ldr r2, _080D8678 @ =gLinkPlayers - ldr r0, _080D867C @ =gBattleStruct - ldr r0, [r0] - adds r0, 0xB5 - ldrb r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, _080D8680 @ =gPotentialItemEffectBattler - ldrb r2, [r1] - ldrh r0, [r0, 0x18] - cmp r0, r2 - bne _080D868C - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - ldr r0, _080D8684 @ =gEnigmaBerries - adds r1, r0 - adds r0, r6, 0 - bl StringCopy - ldr r1, _080D8688 @ =gUnknown_83FD8AF - b _080D868E - .align 2, 0 -_080D8674: .4byte gBattleTypeFlags -_080D8678: .4byte gLinkPlayers -_080D867C: .4byte gBattleStruct -_080D8680: .4byte gPotentialItemEffectBattler -_080D8684: .4byte gEnigmaBerries -_080D8688: .4byte gUnknown_83FD8AF -_080D868C: - ldr r1, _080D8698 @ =gUnknown_83FD8A2 -_080D868E: - adds r0, r6, 0 - bl StringAppend - b _080D86AE - .align 2, 0 -_080D8698: .4byte gUnknown_83FD8A2 -_080D869C: - adds r0, r2, 0 - adds r1, r6, 0 - bl CopyItemName - b _080D86AE -_080D86A6: - adds r0, r2, 0 - adds r1, r6, 0 - bl CopyItemName -_080D86AE: - adds r5, 0x3 -_080D86B0: - adds r0, r7, r5 - ldrb r0, [r0] - cmp r0, 0xFF - beq _080D86BA - b _080D8436 -_080D86BA: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end ExpandBattleTextBuffPlaceholders - - thumb_func_start sub_80D86C8 -sub_80D86C8: @ 80D86C8 - push {r4,r5,lr} - adds r4, r0, 0 - movs r2, 0 - ldr r5, _080D86FC @ =gUnknown_2039A34 - ldr r3, _080D8700 @ =gUnknown_83FEA70 -_080D86D2: - cmp r2, 0x4 - beq _080D86E8 - ldrh r1, [r3] - cmp r1, 0 - bne _080D86DE - adds r2, 0x1 -_080D86DE: - ldr r0, [r5] - adds r3, 0x2 - ldrh r0, [r0] - cmp r1, r0 - bne _080D86D2 -_080D86E8: - cmp r2, 0 - blt _080D8714 - cmp r2, 0x2 - bgt _080D8708 - ldr r1, _080D8704 @ =gUnknown_83FE88B - adds r0, r4, 0 - bl StringCopy - b _080D8714 - .align 2, 0 -_080D86FC: .4byte gUnknown_2039A34 -_080D8700: .4byte gUnknown_83FEA70 -_080D8704: .4byte gUnknown_83FE88B -_080D8708: - cmp r2, 0x4 - bgt _080D8714 - ldr r1, _080D871C @ =gUnknown_83FE88F - adds r0, r4, 0 - bl StringCopy -_080D8714: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D871C: .4byte gUnknown_83FE88F - thumb_func_end sub_80D86C8 - - thumb_func_start sub_80D8720 -sub_80D8720: @ 80D8720 - push {r4,r5,lr} - adds r3, r0, 0 - movs r4, 0 - b _080D872A -_080D8728: - adds r3, 0x1 -_080D872A: - ldrb r0, [r3] - cmp r0, 0xFF - bne _080D8728 - ldr r1, _080D8760 @ =gUnknown_83FEA70 - ldr r5, _080D8764 @ =gUnknown_2039A34 - movs r0, 0 - lsls r0, 1 - adds r2, r0, r1 -_080D873A: - cmp r4, 0x4 - beq _080D8754 - ldrh r1, [r2] - cmp r1, 0 - bne _080D8746 - adds r4, 0x1 -_080D8746: - ldr r0, [r5] - adds r2, 0x2 - ldrh r0, [r0] - cmp r1, r0 - bne _080D873A - cmp r4, 0x4 - bhi _080D87B0 -_080D8754: - lsls r0, r4, 2 - ldr r1, _080D8768 @ =_080D876C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080D8760: .4byte gUnknown_83FEA70 -_080D8764: .4byte gUnknown_2039A34 -_080D8768: .4byte _080D876C - .align 2, 0 -_080D876C: - .4byte _080D8780 - .4byte _080D8788 - .4byte _080D8790 - .4byte _080D8798 - .4byte _080D87A8 -_080D8780: - ldr r1, _080D8784 @ =gUnknown_83FD586 - b _080D879A - .align 2, 0 -_080D8784: .4byte gUnknown_83FD586 -_080D8788: - ldr r1, _080D878C @ =gUnknown_83FD588 - b _080D879A - .align 2, 0 -_080D878C: .4byte gUnknown_83FD588 -_080D8790: - ldr r1, _080D8794 @ =gUnknown_83FD58A - b _080D879A - .align 2, 0 -_080D8794: .4byte gUnknown_83FD58A -_080D8798: - ldr r1, _080D87A4 @ =gUnknown_83FD58C -_080D879A: - adds r0, r3, 0 - bl StringCopy - b _080D87B0 - .align 2, 0 -_080D87A4: .4byte gUnknown_83FD58C -_080D87A8: - ldr r1, _080D87B8 @ =gUnknown_83FD58E - adds r0, r3, 0 - bl StringCopy -_080D87B0: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D87B8: .4byte gUnknown_83FD58E - thumb_func_end sub_80D8720 - - thumb_func_start BattlePutTextOnWindow -BattlePutTextOnWindow: @ 80D87BC - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - adds r4, r0, 0 - lsls r1, 24 - lsrs r7, r1, 24 - movs r0, 0xC0 - mov r8, r0 - mov r1, r8 - ands r1, r7 - mov r8, r1 - movs r0, 0x3F - ands r7, r0 - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080D87F2 - ldr r0, _080D8814 @ =gUnknown_83FEB64 - lsls r1, r7, 1 - adds r1, r7 - lsls r1, 2 - adds r1, r0 - ldrb r1, [r1] - adds r0, r7, 0 - bl FillWindowPixelBuffer -_080D87F2: - movs r0, 0x40 - mov r1, r8 - ands r0, r1 - cmp r0, 0 - beq _080D881C - bl ContextNpcGetTextColor - lsls r0, 24 - lsrs r0, 24 - mov r2, sp - ldr r1, _080D8818 @ =gUnknown_83FEC90 - adds r0, r1 - ldrb r0, [r0] - strb r0, [r2, 0x5] - lsls r6, r7, 1 - b _080D882E - .align 2, 0 -_080D8814: .4byte gUnknown_83FEB64 -_080D8818: .4byte gUnknown_83FEC90 -_080D881C: - mov r3, sp - ldr r1, _080D884C @ =gUnknown_83FEB64 - lsls r2, r7, 1 - adds r0, r2, r7 - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0, 0x1] - strb r0, [r3, 0x5] - adds r6, r2, 0 -_080D882E: - cmp r7, 0xF - blt _080D8878 - cmp r7, 0x14 - bgt _080D8850 - ldr r0, _080D884C @ =gUnknown_83FEB64 - adds r1, r6, r7 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - ldrb r2, [r1, 0x4] - adds r1, r4, 0 - bl GetStringWidth - movs r1, 0x30 - b _080D8868 - .align 2, 0 -_080D884C: .4byte gUnknown_83FEB64 -_080D8850: - cmp r7, 0x17 - bgt _080D8878 - ldr r0, _080D8874 @ =gUnknown_83FEB64 - adds r1, r6, r7 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - ldrb r2, [r1, 0x4] - adds r1, r4, 0 - bl GetStringWidth - movs r1, 0x40 -_080D8868: - subs r1, r0 - lsrs r0, r1, 31 - adds r1, r0 - asrs r1, 1 - b _080D8882 - .align 2, 0 -_080D8874: .4byte gUnknown_83FEB64 -_080D8878: - ldr r1, _080D88F8 @ =gUnknown_83FEB64 - adds r0, r6, r7 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0, 0x2] -_080D8882: - cmp r1, 0 - bge _080D8888 - movs r1, 0 -_080D8888: - str r4, [sp] - mov r0, sp - strb r7, [r0, 0x4] - strb r1, [r0, 0x6] - mov r1, sp - ldr r0, _080D88F8 @ =gUnknown_83FEB64 - mov r12, r0 - adds r3, r6, r7 - lsls r3, 2 - add r3, r12 - 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 r3, r12 - cmp r7, 0x18 - bne _080D8900 - ldr r0, _080D88FC @ =gTextFlags - ldrb r2, [r0] - movs r1, 0x3 - negs r1, r1 - ands r1, r2 - b _080D8908 - .align 2, 0 -_080D88F8: .4byte gUnknown_83FEB64 -_080D88FC: .4byte gTextFlags -_080D8900: - ldr r0, _080D8930 @ =gTextFlags - ldrb r1, [r0] - movs r2, 0x2 - orrs r1, r2 -_080D8908: - strb r1, [r0] - adds r4, r0, 0 - ldr r1, _080D8934 @ =gBattleTypeFlags - ldr r2, [r1] - movs r0, 0x2 - ands r0, r2 - adds r5, r1, 0 - cmp r0, 0 - bne _080D8928 - movs r0, 0x80 - lsls r0, 9 - ands r2, r0 - cmp r2, 0 - beq _080D8938 - cmp r7, 0x18 - beq _080D8938 -_080D8928: - ldrb r0, [r4] - movs r1, 0x4 - orrs r0, r1 - b _080D8940 - .align 2, 0 -_080D8930: .4byte gTextFlags -_080D8934: .4byte gBattleTypeFlags -_080D8938: - ldrb r1, [r4] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 -_080D8940: - strb r0, [r4] - cmp r7, 0 - beq _080D894A - cmp r7, 0x18 - bne _080D8970 -_080D894A: - ldr r0, [r5] - movs r1, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080D8958 - movs r3, 0x1 - b _080D8960 -_080D8958: - bl GetTextSpeedSetting - lsls r0, 24 - lsrs r3, r0, 24 -_080D8960: - ldr r0, _080D896C @ =gTextFlags - ldrb r1, [r0] - movs r2, 0x1 - orrs r1, r2 - strb r1, [r0] - b _080D8982 - .align 2, 0 -_080D896C: .4byte gTextFlags -_080D8970: - adds r0, r6, r7 - lsls r0, 2 - adds r0, r3 - ldrb r3, [r0, 0x6] - ldrb r1, [r4] - movs r0, 0x2 - negs r0, r0 - ands r0, r1 - strb r0, [r4] -_080D8982: - mov r0, sp - adds r1, r3, 0 - movs r2, 0 - bl AddTextPrinter - movs r0, 0x80 - mov r1, r8 - ands r1, r0 - cmp r1, 0 - bne _080D89A4 - adds r0, r7, 0 - bl PutWindowTilemap - adds r0, r7, 0 - movs r1, 0x3 - bl CopyWindowToVram -_080D89A4: - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end BattlePutTextOnWindow - - thumb_func_start sub_80D89B0 -sub_80D89B0: @ 80D89B0 - push {lr} - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0xC - beq _080D89CC - ldr r0, _080D89D0 @ =0x00000177 - cmp r1, r0 - beq _080D89CC - adds r0, 0x8 - cmp r1, r0 - beq _080D89CC - subs r0, 0x7 - cmp r1, r0 - bne _080D89D4 -_080D89CC: - movs r0, 0x1 - b _080D89D6 - .align 2, 0 -_080D89D0: .4byte 0x00000177 -_080D89D4: - movs r0, 0 -_080D89D6: - pop {r1} - bx r1 - thumb_func_end sub_80D89B0 - - thumb_func_start SetPpNumbersPaletteInMoveSelection -SetPpNumbersPaletteInMoveSelection: @ 80D89DC - push {r4,r5,lr} - ldr r0, _080D8A38 @ =gActiveBattler - ldrb r2, [r0] - lsls r1, r2, 9 - ldr r0, _080D8A3C @ =gBattleBufferA + 4 - adds r1, r0 - ldr r4, _080D8A40 @ =gUnknown_8D2FBB4 - ldr r0, _080D8A44 @ =gMoveSelectionCursor - 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 GetCurrentPpToMaxPpState - lsls r0, 24 - ldr r5, _080D8A48 @ =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, _080D8A4C @ =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 - .align 2, 0 -_080D8A38: .4byte gActiveBattler -_080D8A3C: .4byte gBattleBufferA + 4 -_080D8A40: .4byte gUnknown_8D2FBB4 -_080D8A44: .4byte gMoveSelectionCursor -_080D8A48: .4byte gPlttBufferUnfaded -_080D8A4C: .4byte gPlttBufferFaded + 0xB8 - thumb_func_end SetPpNumbersPaletteInMoveSelection - - thumb_func_start GetCurrentPpToMaxPpState -GetCurrentPpToMaxPpState: @ 80D8A50 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - adds r3, r2, 0 - lsls r1, 24 - lsrs r0, r1, 24 - cmp r0, r2 - beq _080D8A98 - cmp r0, 0x2 - bhi _080D8A6A - cmp r2, 0x1 - bhi _080D8A98 - b _080D8A72 -_080D8A6A: - cmp r0, 0x7 - bhi _080D8A7C - cmp r2, 0x2 - bhi _080D8A98 -_080D8A72: - movs r0, 0x2 - subs r0, r2 - lsls r0, 24 - lsrs r0, 24 - b _080D8A9A -_080D8A7C: - cmp r2, 0 - bne _080D8A84 - movs r0, 0x2 - b _080D8A9A -_080D8A84: - lsrs r0, r1, 26 - cmp r2, r0 - bhi _080D8A8E - movs r0, 0x1 - b _080D8A9A -_080D8A8E: - lsrs r0, r1, 25 - cmp r3, r0 - bhi _080D8A98 - movs r0, 0 - b _080D8A9A -_080D8A98: - movs r0, 0x3 -_080D8A9A: - pop {r1} - bx r1 - thumb_func_end GetCurrentPpToMaxPpState - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/field_control_avatar.s b/asm/field_control_avatar.s index dd84f75c1..c0efe9975 100644 --- a/asm/field_control_avatar.s +++ b/asm/field_control_avatar.s @@ -2572,7 +2572,7 @@ _0806DC78: bl sub_805550C ldrb r0, [r4, 0x7] ldrb r1, [r4, 0x6] - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId ldr r1, [r0, 0x4] ldrb r0, [r4, 0x5] ldr r1, [r1, 0x8] diff --git a/asm/field_effect.s b/asm/field_effect.s index a8542fcc3..41c33c6fc 100644 --- a/asm/field_effect.s +++ b/asm/field_effect.s @@ -2014,7 +2014,7 @@ task00_8084310: @ 8084310 ldrsh r6, [r4, r0] cmp r6, 0 bne _08084350 - bl field_weather_is_fade_finished + bl IsWeatherNotFadingIn lsls r0, 24 cmp r0, 0 beq _08084376 @@ -2287,7 +2287,7 @@ _08084560: .4byte gSprites sub_8084564: @ 8084564 push {r4,lr} adds r4, r0, 0 - bl field_weather_is_fade_finished + bl IsWeatherNotFadingIn lsls r0, 24 cmp r0, 0 beq _08084578 @@ -4002,7 +4002,7 @@ sub_8085274: @ 8085274 adds r4, r0, 0 adds r5, r1, 0 adds r6, r2, 0 - bl field_weather_is_fade_finished + bl IsWeatherNotFadingIn lsls r0, 24 cmp r0, 0 beq _080852B4 @@ -5025,7 +5025,7 @@ _08085A50: .4byte gTasks sub_8085A54: @ 8085A54 push {r4,lr} adds r4, r0, 0 - bl field_weather_is_fade_finished + bl IsWeatherNotFadingIn lsls r0, 24 cmp r0, 0 beq _08085A78 @@ -5492,7 +5492,7 @@ _08085E08: .4byte gTasks sub_8085E0C: @ 8085E0C push {r4-r6,lr} adds r6, r0, 0 - bl field_weather_is_fade_finished + bl IsWeatherNotFadingIn lsls r0, 24 cmp r0, 0 beq _08085E82 diff --git a/asm/field_map_obj.s b/asm/field_map_obj.s index 8787ff647..8c782d3dd 100644 --- a/asm/field_map_obj.s +++ b/asm/field_map_obj.s @@ -376,7 +376,7 @@ sub_805E080: @ 805E080 str r0, [sp, 0x8] adds r0, r6, 0 adds r1, r7, 0 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId ldr r1, [r0, 0x4] lsls r0, r4, 1 adds r0, r4 @@ -4294,7 +4294,7 @@ _0805FD90: .4byte gMapHeader _0805FD94: adds r0, r2, 0 adds r1, r3, 0 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId ldr r0, [r0, 0x4] ldr r1, [r0, 0x4] _0805FDA0: diff --git a/asm/field_weather.s b/asm/field_weather.s index b65548171..ece13573f 100644 --- a/asm/field_weather.s +++ b/asm/field_weather.s @@ -1889,8 +1889,8 @@ _0807AA68: .4byte 0x000006ca _0807AA6C: .4byte 0x000006cb thumb_func_end FieldWeather_StartFadingOutCreditsMap - thumb_func_start field_weather_is_fade_finished -field_weather_is_fade_finished: @ 807AA70 + thumb_func_start IsWeatherNotFadingIn +IsWeatherNotFadingIn: @ 807AA70 ldr r0, _0807AA84 @ =gUnknown_2037F34 ldr r1, _0807AA88 @ =0x000006c6 adds r0, r1 @@ -1904,7 +1904,7 @@ field_weather_is_fade_finished: @ 807AA70 .align 2, 0 _0807AA84: .4byte gUnknown_2037F34 _0807AA88: .4byte 0x000006c6 - thumb_func_end field_weather_is_fade_finished + thumb_func_end IsWeatherNotFadingIn thumb_func_start sub_807AA8C sub_807AA8C: @ 807AA8C diff --git a/asm/fldeff_cut.s b/asm/fldeff_cut.s index ec892e0bb..d56ccd500 100644 --- a/asm/fldeff_cut.s +++ b/asm/fldeff_cut.s @@ -24,8 +24,8 @@ sub_8097874: @ 8097874 bx r1 thumb_func_end sub_8097874 - thumb_func_start sub_8097898 -sub_8097898: @ 8097898 + thumb_func_start SetUpFieldMove_Cut +SetUpFieldMove_Cut: @ 8097898 push {r4-r7,lr} mov r7, r8 push {r7} @@ -138,7 +138,7 @@ _08097970: .align 2, 0 _0809797C: .4byte gPlayerFacingPosition _08097980: .4byte 0x0000ffff - thumb_func_end sub_8097898 + thumb_func_end SetUpFieldMove_Cut thumb_func_start sub_8097984 sub_8097984: @ 8097984 diff --git a/asm/fldeff_flash.s b/asm/fldeff_flash.s index 51e55de63..23f86d6b7 100644 --- a/asm/fldeff_flash.s +++ b/asm/fldeff_flash.s @@ -5,8 +5,8 @@ .text - thumb_func_start sub_80C9B2C -sub_80C9B2C: @ 80C9B2C + thumb_func_start SetUpFieldMove_Flash +SetUpFieldMove_Flash: @ 80C9B2C push {lr} ldr r0, _080C9B54 @ =gMapHeader ldrb r0, [r0, 0x15] @@ -37,7 +37,7 @@ _080C9B6C: _080C9B6E: pop {r1} bx r1 - thumb_func_end sub_80C9B2C + thumb_func_end SetUpFieldMove_Flash thumb_func_start sub_80C9B74 sub_80C9B74: @ 80C9B74 diff --git a/asm/item_menu.s b/asm/item_menu.s index a8487864a..3f662656e 100644 --- a/asm/item_menu.s +++ b/asm/item_menu.s @@ -5,8 +5,8 @@ .text - thumb_func_start sub_8107DB4 -sub_8107DB4: @ 8107DB4 + thumb_func_start GoToBagMenu +GoToBagMenu: @ 8107DB4 push {r4-r7,lr} mov r7, r8 push {r7} @@ -136,19 +136,19 @@ _08107EA8: .4byte gSpecialVar_ItemId _08107EAC: .4byte sub_8107F10 _08107EB0: .4byte gUnknown_203AD10 _08107EB4: .4byte gUnknown_203ACFC - thumb_func_end sub_8107DB4 + thumb_func_end GoToBagMenu thumb_func_start CB2_BagMenuFromStartMenu CB2_BagMenuFromStartMenu: @ 8107EB8 push {lr} - ldr r2, _08107EC8 @ =CB2_ReturnToStartMenu + ldr r2, _08107EC8 @ =CB2_ReturnToFieldWithOpenMenu movs r0, 0 movs r1, 0x3 - bl sub_8107DB4 + bl GoToBagMenu pop {r0} bx r0 .align 2, 0 -_08107EC8: .4byte CB2_ReturnToStartMenu +_08107EC8: .4byte CB2_ReturnToFieldWithOpenMenu thumb_func_end CB2_BagMenuFromStartMenu thumb_func_start sub_8107ECC @@ -157,7 +157,7 @@ sub_8107ECC: @ 8107ECC ldr r2, _08107EDC @ =SetCB2ToReshowScreenAfterMenu2 movs r0, 0x5 movs r1, 0x3 - bl sub_8107DB4 + bl GoToBagMenu pop {r0} bx r0 .align 2, 0 @@ -1934,15 +1934,15 @@ _08108CE8: .4byte 0x0000fff0 _08108CEC: .4byte gUnknown_203ACFC thumb_func_end sub_8108CB4 - thumb_func_start sub_8108CF0 -sub_8108CF0: @ 8108CF0 + thumb_func_start CB2_SetUpReshowBattleScreenAfterMenu +CB2_SetUpReshowBattleScreenAfterMenu: @ 8108CF0 ldr r1, _08108CF8 @ =gUnknown_203ACFC movs r0, 0 strb r0, [r1, 0x5] bx lr .align 2, 0 _08108CF8: .4byte gUnknown_203ACFC - thumb_func_end sub_8108CF0 + thumb_func_end CB2_SetUpReshowBattleScreenAfterMenu thumb_func_start sub_8108CFC sub_8108CFC: @ 8108CFC @@ -2514,7 +2514,7 @@ sub_8109140: @ 8109140 movs r1, 0 movs r2, 0xE movs r3, 0x1E - bl SetBgRectPal + bl SetBgTilemapPalette movs r0, 0x1 bl ScheduleBgCopyTilemapToVram add sp, 0x8 @@ -4399,7 +4399,7 @@ _0810A120: _0810A13E: ldr r0, _0810A154 @ =gUnknown_203AD10 ldr r1, [r0] - ldr r0, _0810A158 @ =sub_8126EDC + ldr r0, _0810A158 @ =CB2_ChooseMonToGiveItem str r0, [r1] mov r0, r8 subs r0, 0x8 @@ -4409,7 +4409,7 @@ _0810A13E: b _0810A166 .align 2, 0 _0810A154: .4byte gUnknown_203AD10 -_0810A158: .4byte sub_8126EDC +_0810A158: .4byte CB2_ChooseMonToGiveItem _0810A15C: .4byte ItemMenu_StartFadeToExitCallback _0810A160: adds r0, r7, 0 @@ -4786,7 +4786,7 @@ _0810A458: .4byte sub_810A45C thumb_func_start sub_810A45C sub_810A45C: @ 810A45C push {lr} - bl sub_8123730 + bl CB2_SelectBagItemToGive pop {r0} bx r0 thumb_func_end sub_810A45C @@ -4918,7 +4918,7 @@ sub_810A554: @ 810A554 ldr r2, _0810A564 @ =sub_808CE60 movs r0, 0x4 movs r1, 0x3 - bl sub_8107DB4 + bl GoToBagMenu pop {r0} bx r0 .align 2, 0 @@ -5063,7 +5063,7 @@ sub_810A67C: @ 810A67C ldr r2, _0810A68C @ =CB2_ReturnToField movs r0, 0x2 movs r1, 0x3 - bl sub_8107DB4 + bl GoToBagMenu pop {r0} bx r0 .align 2, 0 @@ -6127,7 +6127,7 @@ sub_810AF74: @ 810AF74 ldr r2, _0810AF98 @ =SetCB2ToReshowScreenAfterMenu2 movs r0, 0x6 movs r1, 0 - bl sub_8107DB4 + bl GoToBagMenu pop {r0} bx r0 .align 2, 0 @@ -6358,7 +6358,7 @@ _0810B16C: movs r0, 0x8 _0810B170: movs r1, 0 - bl sub_8107DB4 + bl GoToBagMenu pop {r4} pop {r0} bx r0 @@ -6856,10 +6856,10 @@ _0810B564: movs r2, 0 bl DestroyListMenuTask bl sub_810AECC - ldr r1, _0810B5B0 @ =gUnknown_3005E98 - ldr r0, _0810B5B4 @ =ItemUseCB_Medicine + ldr r1, _0810B5B0 @ =gItemUseCB + ldr r0, _0810B5B4 @ =ItemUseCB_MedicineStep str r0, [r1] - ldr r0, _0810B5B8 @ =sub_81279A4 + ldr r0, _0810B5B8 @ =ChooseMonForInBattleItem bl ItemMenu_SetExitCallback mov r0, r9 subs r0, 0x8 @@ -6868,9 +6868,9 @@ _0810B564: str r1, [r0] b _0810B5C6 .align 2, 0 -_0810B5B0: .4byte gUnknown_3005E98 -_0810B5B4: .4byte ItemUseCB_Medicine -_0810B5B8: .4byte sub_81279A4 +_0810B5B0: .4byte gItemUseCB +_0810B5B4: .4byte ItemUseCB_MedicineStep +_0810B5B8: .4byte ChooseMonForInBattleItem _0810B5BC: .4byte sub_810B070 _0810B5C0: ldrh r0, [r5, 0x10] diff --git a/asm/link_rfu.s b/asm/link_rfu.s index 0ccbda9eb..df112d1ad 100644 --- a/asm/link_rfu.s +++ b/asm/link_rfu.s @@ -3172,8 +3172,8 @@ _080FEBA6: bx r0 thumb_func_end sub_80FEB3C - thumb_func_start sub_80FEBAC -sub_80FEBAC: @ 80FEBAC + thumb_func_start DoEasyChatScreen +DoEasyChatScreen: @ 80FEBAC push {r4-r6,lr} mov r6, r8 push {r6} @@ -3214,7 +3214,7 @@ sub_80FEBAC: @ 80FEBAC _080FEC00: .4byte sub_80FEC54 _080FEC04: .4byte gTasks _080FEC08: .4byte sub_80FEC0C - thumb_func_end sub_80FEBAC + thumb_func_end DoEasyChatScreen thumb_func_start sub_80FEC0C sub_80FEC0C: @ 80FEC0C @@ -3588,7 +3588,7 @@ _080FEF08: ldr r0, _080FEF24 @ =gSpecialVar_0x8004 ldrb r0, [r0] ldr r2, _080FEF28 @ =sub_80568C4 - bl sub_80FEBAC + bl DoEasyChatScreen _080FEF12: pop {r0} bx r0 diff --git a/asm/link_rfu_3.s b/asm/link_rfu_3.s index 24125485e..1e076a55e 100644 --- a/asm/link_rfu_3.s +++ b/asm/link_rfu_3.s @@ -3650,7 +3650,7 @@ _08117784: ldr r0, _0811779C @ =sub_811C1C8 str r0, [r1, 0x8] movs r0, 0x2 - bl sub_81274A8 + bl InitChooseHalfPartyForBattle b _081178E0 .align 2, 0 _08117798: .4byte gMain @@ -5602,12 +5602,12 @@ _0811887C: _081188C4: .4byte gUnknown_203B06C _081188C8: .4byte gSpecialVar_Result _081188CC: - bl sub_811FB18 + bl GetPartyMenuType lsls r0, 24 lsrs r0, 24 cmp r0, 0x8 beq _081188E4 - bl sub_811FB18 + bl GetPartyMenuType lsls r0, 24 lsrs r0, 24 cmp r0, 0x9 @@ -7335,7 +7335,7 @@ _081197CA: adds r0, r1 ldr r0, [r0] str r0, [r2] - ldr r2, _0811982C @ =gUnknown_203B06A + ldr r2, _0811982C @ =gUnionRoomRequestedMonType ldr r1, [r6] movs r3, 0x2 ldrsh r0, [r7, r3] @@ -7344,7 +7344,7 @@ _081197CA: ldrb r0, [r1, 0x9] lsrs r0, 2 strb r0, [r2] - ldr r2, _08119830 @ =gUnknown_203B068 + ldr r2, _08119830 @ =gUnionRoomOfferedSpecies ldr r1, [r6] movs r3, 0x2 ldrsh r0, [r7, r3] @@ -7369,8 +7369,8 @@ _081197CA: _08119820: .4byte gUnknown_8458D1C _08119824: .4byte gUnknown_203B06C _08119828: .4byte gUnknown_203B064 -_0811982C: .4byte gUnknown_203B06A -_08119830: .4byte gUnknown_203B068 +_0811982C: .4byte gUnionRoomRequestedMonType +_08119830: .4byte gUnionRoomOfferedSpecies _08119834: .4byte gFieldCallback _08119838: .4byte sub_807DCE4 _0811983C: .4byte CB2_ReturnToField diff --git a/asm/naming_screen.s b/asm/naming_screen.s index 817d215a0..49ab9164f 100644 --- a/asm/naming_screen.s +++ b/asm/naming_screen.s @@ -3623,7 +3623,7 @@ sub_809F5C4: @ 809F5C4 push {r4,r5,lr} sub sp, 0x10 movs r4, 0 - ldr r1, _0809F61C @ =gUnknown_841621F + ldr r1, _0809F61C @ =gText_MaleSymbol add r0, sp, 0xC bl StringCopy ldr r5, _0809F620 @ =gUnknown_203998C @@ -3635,7 +3635,7 @@ sub_809F5C4: @ 809F5C4 beq _0809F614 cmp r0, 0xFE bne _0809F5EE - ldr r1, _0809F628 @ =gUnknown_8416221 + ldr r1, _0809F628 @ =gText_FemaleSymbol add r0, sp, 0xC bl StringCopy movs r4, 0x1 @@ -3664,10 +3664,10 @@ _0809F614: pop {r0} bx r0 .align 2, 0 -_0809F61C: .4byte gUnknown_841621F +_0809F61C: .4byte gText_MaleSymbol _0809F620: .4byte gUnknown_203998C _0809F624: .4byte 0x00001e36 -_0809F628: .4byte gUnknown_8416221 +_0809F628: .4byte gText_FemaleSymbol _0809F62C: .4byte 0x00001e13 _0809F630: .4byte gUnknown_83E2428 thumb_func_end sub_809F5C4 @@ -4490,7 +4490,7 @@ sub_809FC90: @ 809FC90 ldrb r2, [r1, 0x8] movs r0, 0 str r0, [sp] - ldr r0, _0809FCB4 @ =CB2_ReturnToStartMenu + ldr r0, _0809FCB4 @ =CB2_ReturnToFieldWithOpenMenu str r0, [sp, 0x4] movs r0, 0 movs r3, 0 @@ -4500,7 +4500,7 @@ sub_809FC90: @ 809FC90 bx r0 .align 2, 0 _0809FCB0: .4byte gSaveBlock2Ptr -_0809FCB4: .4byte CB2_ReturnToStartMenu +_0809FCB4: .4byte CB2_ReturnToFieldWithOpenMenu thumb_func_end sub_809FC90 thumb_func_start sub_809FCB8 @@ -4512,7 +4512,7 @@ sub_809FCB8: @ 809FCB8 ldrb r2, [r1, 0x8] movs r0, 0 str r0, [sp] - ldr r0, _0809FCDC @ =CB2_ReturnToStartMenu + ldr r0, _0809FCDC @ =CB2_ReturnToFieldWithOpenMenu str r0, [sp, 0x4] movs r0, 0x1 movs r3, 0 @@ -4522,7 +4522,7 @@ sub_809FCB8: @ 809FCB8 bx r0 .align 2, 0 _0809FCD8: .4byte gSaveBlock2Ptr -_0809FCDC: .4byte CB2_ReturnToStartMenu +_0809FCDC: .4byte CB2_ReturnToFieldWithOpenMenu thumb_func_end sub_809FCB8 thumb_func_start sub_809FCE0 @@ -4534,7 +4534,7 @@ sub_809FCE0: @ 809FCE0 ldrb r2, [r1, 0x8] movs r0, 0 str r0, [sp] - ldr r0, _0809FD04 @ =CB2_ReturnToStartMenu + ldr r0, _0809FD04 @ =CB2_ReturnToFieldWithOpenMenu str r0, [sp, 0x4] movs r0, 0x2 movs r3, 0 @@ -4544,7 +4544,7 @@ sub_809FCE0: @ 809FCE0 bx r0 .align 2, 0 _0809FD00: .4byte gSaveBlock2Ptr -_0809FD04: .4byte CB2_ReturnToStartMenu +_0809FD04: .4byte CB2_ReturnToFieldWithOpenMenu thumb_func_end sub_809FCE0 thumb_func_start sub_809FD08 @@ -4556,7 +4556,7 @@ sub_809FD08: @ 809FD08 ldrb r2, [r1, 0x8] movs r0, 0 str r0, [sp] - ldr r0, _0809FD2C @ =CB2_ReturnToStartMenu + ldr r0, _0809FD2C @ =CB2_ReturnToFieldWithOpenMenu str r0, [sp, 0x4] movs r0, 0x3 movs r3, 0 @@ -4566,7 +4566,7 @@ sub_809FD08: @ 809FD08 bx r0 .align 2, 0 _0809FD28: .4byte gSaveBlock2Ptr -_0809FD2C: .4byte CB2_ReturnToStartMenu +_0809FD2C: .4byte CB2_ReturnToFieldWithOpenMenu thumb_func_end sub_809FD08 thumb_func_start sub_809FD30 @@ -4578,7 +4578,7 @@ sub_809FD30: @ 809FD30 ldrb r2, [r1, 0x8] movs r0, 0 str r0, [sp] - ldr r0, _0809FD54 @ =CB2_ReturnToStartMenu + ldr r0, _0809FD54 @ =CB2_ReturnToFieldWithOpenMenu str r0, [sp, 0x4] movs r0, 0x4 movs r3, 0 @@ -4588,7 +4588,7 @@ sub_809FD30: @ 809FD30 bx r0 .align 2, 0 _0809FD50: .4byte gSaveBlock2Ptr -_0809FD54: .4byte CB2_ReturnToStartMenu +_0809FD54: .4byte CB2_ReturnToFieldWithOpenMenu thumb_func_end sub_809FD30 .align 2, 0 @ Don't pad with nop. diff --git a/asm/overworld.s b/asm/overworld.s index 28bcd8ecb..370aa054d 100644 --- a/asm/overworld.s +++ b/asm/overworld.s @@ -473,7 +473,7 @@ _08054F8A: str r2, [sp, 0x4] adds r0, r2, 0 adds r1, r5, 0 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId mov r6, r10 ldr r1, [r6] mov r2, r8 @@ -821,8 +821,8 @@ _08055232: bx r1 thumb_func_end warp_data_is_not_neg_1 - thumb_func_start get_mapheader_by_bank_and_number -get_mapheader_by_bank_and_number: @ 8055238 + thumb_func_start Overworld_GetMapHeaderByGroupAndId +Overworld_GetMapHeaderByGroupAndId: @ 8055238 lsls r0, 16 lsls r1, 16 ldr r2, _0805524C @ =gMapGroups @@ -835,7 +835,7 @@ get_mapheader_by_bank_and_number: @ 8055238 bx lr .align 2, 0 _0805524C: .4byte gMapGroups - thumb_func_end get_mapheader_by_bank_and_number + thumb_func_end Overworld_GetMapHeaderByGroupAndId thumb_func_start warp1_get_mapheader warp1_get_mapheader: @ 8055250 @@ -850,7 +850,7 @@ warp1_get_mapheader: @ 8055250 asrs r1, 24 lsls r1, 16 lsrs r1, 16 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId pop {r1} bx r1 .align 2, 0 @@ -872,7 +872,7 @@ set_current_map_header_from_sav1_save_old_name: @ 8055274 asrs r1, 24 lsls r1, 16 lsrs r1, 16 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId adds r1, r4, 0 ldm r0!, {r2,r3,r6} stm r1!, {r2,r3,r6} @@ -908,7 +908,7 @@ set_current_map_header_from_sav1: @ 80552BC asrs r1, 24 lsls r1, 16 lsrs r1, 16 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId adds r1, r4, 0 ldm r0!, {r2,r3,r5} stm r1!, {r2,r3,r5} @@ -2336,7 +2336,7 @@ sub_8055D6C: @ 8055D6C asrs r1, 24 lsls r1, 16 lsrs r1, 16 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId ldrh r0, [r0, 0x10] pop {r1} bx r1 @@ -2863,7 +2863,7 @@ get_map_light_level_by_bank_and_number: @ 8056158 lsls r1, 24 asrs r1, 8 lsrs r1, 16 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId ldrb r0, [r0, 0x17] pop {r1} bx r1 @@ -2925,7 +2925,7 @@ sub_80561B4: @ 80561B4 asrs r1, 24 lsls r1, 16 lsrs r1, 16 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId ldrb r0, [r0, 0x14] pop {r1} bx r1 @@ -3014,7 +3014,7 @@ sav1_saved_warp2_map_get_name: @ 8056238 asrs r1, 24 lsls r1, 16 lsrs r1, 16 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId ldrb r0, [r0, 0x14] pop {r1} bx r1 @@ -3036,7 +3036,7 @@ GetCurrentRegionMapSectionId: @ 8056260 asrs r1, 24 lsls r1, 16 lsrs r1, 16 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId ldrb r0, [r0, 0x14] pop {r1} bx r1 @@ -3058,7 +3058,7 @@ sav1_map_get_battletype: @ 8056288 asrs r1, 24 lsls r1, 16 lsrs r1, 16 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId ldrb r0, [r0, 0x1B] pop {r1} bx r1 @@ -3754,8 +3754,8 @@ _080568A0: .4byte gFieldCallback _080568A4: .4byte sub_807DDD0 thumb_func_end c2_8056854 - thumb_func_start CB2_ReturnToStartMenu -CB2_ReturnToStartMenu: @ 80568A8 + thumb_func_start CB2_ReturnToFieldWithOpenMenu +CB2_ReturnToFieldWithOpenMenu: @ 80568A8 push {lr} bl sub_80569BC ldr r1, _080568BC @ =gFieldCallback2 @@ -3767,7 +3767,7 @@ CB2_ReturnToStartMenu: @ 80568A8 .align 2, 0 _080568BC: .4byte gFieldCallback2 _080568C0: .4byte FieldCB2_ReturnToStartMenuInit - thumb_func_end CB2_ReturnToStartMenu + thumb_func_end CB2_ReturnToFieldWithOpenMenu thumb_func_start sub_80568C4 sub_80568C4: @ 80568C4 diff --git a/asm/party_menu.s b/asm/party_menu.s deleted file mode 100644 index 3cb62c712..000000000 --- a/asm/party_menu.s +++ /dev/null @@ -1,19390 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start PartyMenuInit -PartyMenuInit: @ 811EA44 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - ldr r4, [sp, 0x24] - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r1, 24 - lsrs r1, 24 - mov r10, r1 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - lsls r3, 24 - lsrs r3, 24 - str r3, [sp] - lsls r4, 24 - lsrs r7, r4, 24 - bl reset_brm - ldr r6, _0811EA8C @ =gUnknown_203B09C - movs r0, 0x8E - lsls r0, 2 - bl Alloc - adds r5, r0, 0 - str r5, [r6] - cmp r5, 0 - bne _0811EA90 - ldr r0, [sp, 0x2C] - bl SetMainCallback2 - b _0811EB80 - .align 2, 0 -_0811EA8C: .4byte gUnknown_203B09C -_0811EA90: - ldr r3, _0811EAE0 @ =gUnknown_203B0A0 - movs r1, 0xF - mov r0, r9 - ands r1, r0 - ldrb r2, [r3, 0x8] - movs r0, 0x10 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3, 0x8] - ldr r1, [sp, 0x2C] - str r1, [r3] - movs r4, 0 - mov r0, r8 - strb r0, [r3, 0xB] - lsls r2, r7, 2 - ldrh r1, [r5, 0xA] - movs r0, 0x3 - ands r0, r1 - orrs r0, r2 - strh r0, [r5, 0xA] - ldr r0, [sp, 0x28] - str r0, [r5] - str r4, [r5, 0x4] - ldrb r1, [r5, 0x8] - movs r0, 0xF - negs r0, r0 - ands r0, r1 - strb r0, [r5, 0x8] - adds r7, r3, 0 - mov r1, r9 - cmp r1, 0x4 - bne _0811EAE4 - ldr r0, [r6] - ldrb r1, [r0, 0x8] - movs r2, 0x1 - orrs r1, r2 - strb r1, [r0, 0x8] - b _0811EAF0 - .align 2, 0 -_0811EAE0: .4byte gUnknown_203B0A0 -_0811EAE4: - ldr r2, [r6] - ldrb r1, [r2, 0x8] - movs r0, 0x2 - negs r0, r0 - ands r0, r1 - strb r0, [r2, 0x8] -_0811EAF0: - mov r5, r10 - cmp r5, 0xFF - beq _0811EB08 - movs r0, 0x3 - ands r0, r5 - lsls r0, 4 - ldrb r2, [r7, 0x8] - movs r1, 0x31 - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r7, 0x8] -_0811EB08: - movs r2, 0 - ldr r5, _0811EB90 @ =gUnknown_203B09C - movs r4, 0x86 - lsls r4, 2 - movs r3, 0 -_0811EB12: - ldr r0, [r5] - lsls r1, r2, 1 - adds r0, r4 - adds r0, r1 - strh r3, [r0] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0xF - bls _0811EB12 - movs r2, 0 - ldr r4, _0811EB90 @ =gUnknown_203B09C - movs r3, 0xFF -_0811EB2C: - ldr r0, [r4] - adds r0, 0xC - adds r0, r2 - ldrb r1, [r0] - orrs r1, r3 - strb r1, [r0] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x2 - bls _0811EB2C - ldr r0, [sp] - cmp r0, 0 - beq _0811EB68 - adds r1, r7, 0 - movs r0, 0x9 - ldrsb r0, [r1, r0] - cmp r0, 0x5 - bgt _0811EB66 - adds r1, r0, 0 - movs r0, 0x64 - muls r0, r1 - ldr r1, _0811EB94 @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - bne _0811EB6A -_0811EB66: - movs r0, 0 -_0811EB68: - strb r0, [r7, 0x9] -_0811EB6A: - ldr r2, _0811EB98 @ =gTextFlags - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - bl CalculatePlayerPartyCount - ldr r0, _0811EB9C @ =sub_811EBD0 - bl SetMainCallback2 -_0811EB80: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0811EB90: .4byte gUnknown_203B09C -_0811EB94: .4byte gPlayerParty -_0811EB98: .4byte gTextFlags -_0811EB9C: .4byte sub_811EBD0 - thumb_func_end PartyMenuInit - - thumb_func_start sub_811EBA0 -sub_811EBA0: @ 811EBA0 - push {lr} - bl RunTasks - bl AnimateSprites - bl BuildOamBuffer - bl DoScheduledBgTilemapCopiesToVram - bl UpdatePaletteFade - pop {r0} - bx r0 - thumb_func_end sub_811EBA0 - - thumb_func_start sub_811EBBC -sub_811EBBC: @ 811EBBC - push {lr} - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - pop {r0} - bx r0 - thumb_func_end sub_811EBBC - - thumb_func_start sub_811EBD0 -sub_811EBD0: @ 811EBD0 - push {lr} -_0811EBD2: - bl sub_80BF748 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0811EBF6 - bl sub_811EBFC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0811EBF6 - bl MenuHelpers_LinkSomething - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0811EBD2 -_0811EBF6: - pop {r0} - bx r0 - thumb_func_end sub_811EBD0 - - thumb_func_start sub_811EBFC -sub_811EBFC: @ 811EBFC - push {r4,lr} - sub sp, 0x4 - ldr r0, _0811EC1C @ =gMain - movs r1, 0x87 - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x16 - bls _0811EC10 - b _0811EE14 -_0811EC10: - lsls r0, 2 - ldr r1, _0811EC20 @ =_0811EC24 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0811EC1C: .4byte gMain -_0811EC20: .4byte _0811EC24 - .align 2, 0 -_0811EC24: - .4byte _0811EC80 - .4byte _0811EC8E - .4byte _0811EC94 - .4byte _0811ECA8 - .4byte _0811ECAE - .4byte _0811ECB4 - .4byte _0811ECC6 - .4byte _0811ECCC - .4byte _0811ECF4 - .4byte _0811ED02 - .4byte _0811ED14 - .4byte _0811ED38 - .4byte _0811ED3E - .4byte _0811ED44 - .4byte _0811ED4A - .4byte _0811ED50 - .4byte _0811ED70 - .4byte _0811ED90 - .4byte _0811ED96 - .4byte _0811EDAC - .4byte _0811EDB4 - .4byte _0811EDD0 - .4byte _0811EDDE -_0811EC80: - bl SetVBlankHBlankCallbacksToNull - bl ClearVramOamPltt - bl ClearScheduledBgCopiesToVram - b _0811EDFC -_0811EC8E: - bl ScanlineEffect_Stop - b _0811EDFC -_0811EC94: - bl ResetPaletteFade - ldr r2, _0811ECA4 @ =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - b _0811EDFA - .align 2, 0 -_0811ECA4: .4byte gPaletteFade -_0811ECA8: - bl ResetSpriteData - b _0811EDFC -_0811ECAE: - bl FreeAllSpritePalettes - b _0811EDFC -_0811ECB4: - bl MenuHelpers_LinkSomething - lsls r0, 24 - cmp r0, 0 - beq _0811ECC0 - b _0811EDFC -_0811ECC0: - bl ResetTasks - b _0811EDFC -_0811ECC6: - bl sub_81208E4 - b _0811EDFC -_0811ECCC: - bl sub_811EECC - lsls r0, 24 - cmp r0, 0 - bne _0811ECDE - bl sub_811EE38 - movs r0, 0x1 - b _0811EE2E -_0811ECDE: - ldr r0, _0811ECF0 @ =gUnknown_203B09C - ldr r0, [r0] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - movs r1, 0 - strh r1, [r0] - b _0811EDFC - .align 2, 0 -_0811ECF0: .4byte gUnknown_203B09C -_0811ECF4: - bl sub_811EF44 - lsls r0, 24 - cmp r0, 0 - bne _0811ED00 - b _0811EE2C -_0811ED00: - b _0811EDFC -_0811ED02: - ldr r0, _0811ED10 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0x8] - lsls r0, 26 - lsrs r0, 30 - bl sub_8121060 - b _0811EDFC - .align 2, 0 -_0811ED10: .4byte gUnknown_203B0A0 -_0811ED14: - ldr r0, _0811ED30 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0x8] - lsls r0, 26 - lsrs r0, 30 - bl sub_811F0BC - ldr r0, _0811ED34 @ =gUnknown_203B09C - ldr r0, [r0] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - movs r1, 0 - strh r1, [r0] - b _0811EDFC - .align 2, 0 -_0811ED30: .4byte gUnknown_203B0A0 -_0811ED34: .4byte gUnknown_203B09C -_0811ED38: - bl LoadHeldItemIcons - b _0811EDFC -_0811ED3E: - bl sub_8122860 - b _0811EDFC -_0811ED44: - bl sub_8122980 - b _0811EDFC -_0811ED4A: - bl LoadMonIconPalettes - b _0811EDFC -_0811ED50: - bl party_menu_add_per_mon_objects - lsls r0, 24 - cmp r0, 0 - beq _0811EE2C - ldr r0, _0811ED6C @ =gUnknown_203B09C - ldr r0, [r0] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - movs r1, 0 - strh r1, [r0] - b _0811EDFC - .align 2, 0 -_0811ED6C: .4byte gUnknown_203B09C -_0811ED70: - bl sub_811F5EC - lsls r0, 24 - cmp r0, 0 - beq _0811EE2C - ldr r0, _0811ED8C @ =gUnknown_203B09C - ldr r0, [r0] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - movs r1, 0 - strh r1, [r0] - b _0811EDFC - .align 2, 0 -_0811ED8C: .4byte gUnknown_203B09C -_0811ED90: - bl sub_811F774 - b _0811EDFC -_0811ED96: - ldr r0, _0811EDA8 @ =gUnknown_203B09C - ldr r0, [r0] - ldrb r0, [r0, 0x8] - lsls r0, 31 - lsrs r0, 31 - bl sub_81210F8 - b _0811EDFC - .align 2, 0 -_0811EDA8: .4byte gUnknown_203B09C -_0811EDAC: - movs r0, 0x5 - bl HelpSystem_SetSomeVariable2 - b _0811EDFC -_0811EDB4: - ldr r4, _0811EDCC @ =gUnknown_203B09C - ldr r0, [r4] - ldr r0, [r0] - movs r1, 0 - bl CreateTask - ldr r0, [r4] - ldrh r0, [r0, 0xA] - lsrs r0, 2 - bl sub_8121D0C - b _0811EDFC - .align 2, 0 -_0811EDCC: .4byte gUnknown_203B09C -_0811EDD0: - movs r0, 0x1 - negs r0, r0 - movs r1, 0x10 - movs r2, 0 - bl BlendPalettes - b _0811EDFC -_0811EDDE: - movs r0, 0x1 - negs r0, r0 - movs r1, 0x2 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r2, _0811EE0C @ =gPaletteFade - ldrb r1, [r2, 0x8] - movs r0, 0x7F - ands r0, r1 -_0811EDFA: - strb r0, [r2, 0x8] -_0811EDFC: - ldr r1, _0811EE10 @ =gMain - movs r0, 0x87 - lsls r0, 3 - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _0811EE2C - .align 2, 0 -_0811EE0C: .4byte gPaletteFade -_0811EE10: .4byte gMain -_0811EE14: - ldr r0, _0811EE24 @ =sub_811EBBC - bl SetVBlankCallback - ldr r0, _0811EE28 @ =sub_811EBA0 - bl SetMainCallback2 - movs r0, 0x1 - b _0811EE2E - .align 2, 0 -_0811EE24: .4byte sub_811EBBC -_0811EE28: .4byte sub_811EBA0 -_0811EE2C: - movs r0, 0 -_0811EE2E: - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_811EBFC - - thumb_func_start sub_811EE38 -sub_811EE38: @ 811EE38 - push {lr} - sub sp, 0x4 - movs r0, 0x1 - negs r0, r0 - movs r1, 0x2 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, _0811EE68 @ =sub_811EE74 - movs r1, 0 - bl CreateTask - ldr r0, _0811EE6C @ =sub_811EBBC - bl SetVBlankCallback - ldr r0, _0811EE70 @ =sub_811EBA0 - bl SetMainCallback2 - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0811EE68: .4byte sub_811EE74 -_0811EE6C: .4byte sub_811EBBC -_0811EE70: .4byte sub_811EBA0 - thumb_func_end sub_811EE38 - - thumb_func_start sub_811EE74 -sub_811EE74: @ 811EE74 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0811EEA0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0811EE98 - ldr r0, _0811EEA4 @ =gUnknown_203B0A0 - ldr r0, [r0] - bl SetMainCallback2 - bl sub_811F070 - adds r0, r4, 0 - bl DestroyTask -_0811EE98: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0811EEA0: .4byte gPaletteFade -_0811EEA4: .4byte gUnknown_203B0A0 - thumb_func_end sub_811EE74 - - thumb_func_start reset_brm -reset_brm: @ 811EEA8 - ldr r0, _0811EEBC @ =gUnknown_203B09C - movs r1, 0 - str r1, [r0] - ldr r0, _0811EEC0 @ =gUnknown_203B0BC - str r1, [r0] - ldr r0, _0811EEC4 @ =gUnknown_203B0B4 - str r1, [r0] - ldr r0, _0811EEC8 @ =gUnknown_203B0B8 - str r1, [r0] - bx lr - .align 2, 0 -_0811EEBC: .4byte gUnknown_203B09C -_0811EEC0: .4byte gUnknown_203B0BC -_0811EEC4: .4byte gUnknown_203B0B4 -_0811EEC8: .4byte gUnknown_203B0B8 - thumb_func_end reset_brm - - thumb_func_start sub_811EECC -sub_811EECC: @ 811EECC - push {r4,r5,lr} - bl ResetAllBgsCoordinatesAndBgCntRegs - ldr r5, _0811EF34 @ =gUnknown_203B0BC - movs r4, 0x80 - lsls r4, 4 - adds r0, r4, 0 - bl Alloc - str r0, [r5] - cmp r0, 0 - beq _0811EF3C - movs r1, 0 - adds r2, r4, 0 - bl memset - movs r0, 0 - bl ResetBgsAndClearDma3BusyFlags - ldr r1, _0811EF38 @ =gUnknown_8459EB8 - movs r0, 0 - movs r2, 0x3 - bl InitBgsFromTemplates - ldr r1, [r5] - movs r0, 0x1 - bl SetBgTilemapBuffer - movs r0, 0x1 - bl ScheduleBgCopyTilemapToVram - 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, 0x1 - b _0811EF3E - .align 2, 0 -_0811EF34: .4byte gUnknown_203B0BC -_0811EF38: .4byte gUnknown_8459EB8 -_0811EF3C: - movs r0, 0 -_0811EF3E: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_811EECC - - thumb_func_start sub_811EF44 -sub_811EF44: @ 811EF44 - push {r4,lr} - sub sp, 0x4 - ldr r0, _0811EF64 @ =gUnknown_203B09C - ldr r0, [r0] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0x7 - bhi _0811F02C - lsls r0, 2 - ldr r1, _0811EF68 @ =_0811EF6C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0811EF64: .4byte gUnknown_203B09C -_0811EF68: .4byte _0811EF6C - .align 2, 0 -_0811EF6C: - .4byte _0811EF8C - .4byte _0811EFB4 - .4byte _0811EFD4 - .4byte _0811F000 - .4byte _0811F004 - .4byte _0811F008 - .4byte _0811F00C - .4byte _0811F010 -_0811EF8C: - ldr r4, _0811EFAC @ =gUnknown_203B0B8 - ldr r0, _0811EFB0 @ =gFile_graphics_interface_party_menu_misc_sheet - mov r1, sp - bl MallocAndDecompress - adds r1, r0, 0 - str r1, [r4] - ldr r2, [sp] - lsls r2, 16 - lsrs r2, 16 - movs r0, 0x1 - movs r3, 0 - bl LoadBgTiles - b _0811F016 - .align 2, 0 -_0811EFAC: .4byte gUnknown_203B0B8 -_0811EFB0: .4byte gFile_graphics_interface_party_menu_misc_sheet -_0811EFB4: - bl IsDma3ManagerBusyWithBgCopy - lsls r0, 24 - cmp r0, 0 - bne _0811F030 - ldr r0, _0811EFCC @ =gFile_graphics_interface_party_menu_misc_tilemap - ldr r1, _0811EFD0 @ =gUnknown_203B0BC - ldr r1, [r1] - bl LZDecompressWram - b _0811F016 - .align 2, 0 -_0811EFCC: .4byte gFile_graphics_interface_party_menu_misc_tilemap -_0811EFD0: .4byte gUnknown_203B0BC -_0811EFD4: - ldr r0, _0811EFF4 @ =gUnknown_8E829C8 - movs r2, 0xB0 - lsls r2, 1 - movs r1, 0 - bl LoadCompressedPalette - ldr r0, _0811EFF8 @ =gPlttBufferUnfaded - ldr r4, _0811EFFC @ =gUnknown_203B09C - ldr r1, [r4] - adds r1, 0x18 - movs r2, 0xB0 - bl CpuSet - ldr r1, [r4] - b _0811F01A - .align 2, 0 -_0811EFF4: .4byte gUnknown_8E829C8 -_0811EFF8: .4byte gPlttBufferUnfaded -_0811EFFC: .4byte gUnknown_203B09C -_0811F000: - movs r0, 0x4 - b _0811F012 -_0811F004: - movs r0, 0x5 - b _0811F012 -_0811F008: - movs r0, 0x6 - b _0811F012 -_0811F00C: - movs r0, 0x7 - b _0811F012 -_0811F010: - movs r0, 0x8 -_0811F012: - bl sub_811F03C -_0811F016: - ldr r0, _0811F028 @ =gUnknown_203B09C - ldr r1, [r0] -_0811F01A: - movs r0, 0x86 - lsls r0, 2 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _0811F030 - .align 2, 0 -_0811F028: .4byte gUnknown_203B09C -_0811F02C: - movs r0, 0x1 - b _0811F032 -_0811F030: - movs r0, 0 -_0811F032: - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_811EF44 - - thumb_func_start sub_811F03C -sub_811F03C: @ 811F03C - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 28 - ldr r5, _0811F068 @ =gPlttBufferUnfaded + 0x60 - lsrs r4, 23 - adds r1, r5, 0 - subs r1, 0x60 - adds r1, r4, r1 - adds r0, r5, 0 - movs r2, 0x10 - bl CpuSet - ldr r0, _0811F06C @ =gPlttBufferFaded - adds r4, r0 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x10 - bl CpuSet - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0811F068: .4byte gPlttBufferUnfaded + 0x60 -_0811F06C: .4byte gPlttBufferFaded - thumb_func_end sub_811F03C - - thumb_func_start sub_811F070 -sub_811F070: @ 811F070 - push {lr} - ldr r0, _0811F0AC @ =gUnknown_203B09C - ldr r0, [r0] - cmp r0, 0 - beq _0811F07E - bl Free -_0811F07E: - ldr r0, _0811F0B0 @ =gUnknown_203B0BC - ldr r0, [r0] - cmp r0, 0 - beq _0811F08A - bl Free -_0811F08A: - ldr r0, _0811F0B4 @ =gUnknown_203B0B8 - ldr r0, [r0] - cmp r0, 0 - beq _0811F096 - bl Free -_0811F096: - ldr r0, _0811F0B8 @ =gUnknown_203B0B4 - ldr r0, [r0] - cmp r0, 0 - beq _0811F0A2 - bl Free -_0811F0A2: - bl FreeAllWindowBuffers - pop {r0} - bx r0 - .align 2, 0 -_0811F0AC: .4byte gUnknown_203B09C -_0811F0B0: .4byte gUnknown_203B0BC -_0811F0B4: .4byte gUnknown_203B0B8 -_0811F0B8: .4byte gUnknown_203B0B4 - thumb_func_end sub_811F070 - - thumb_func_start sub_811F0BC -sub_811F0BC: @ 811F0BC - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r4, _0811F108 @ =gUnknown_203B0B4 - movs r0, 0x60 - bl Alloc - str r0, [r4] - movs r2, 0 - ldr r7, _0811F10C @ =gUnknown_8459EE4 - lsls r0, r5, 1 - adds r0, r5 - lsls r3, r0, 4 - mov r12, r4 - ldr r6, _0811F110 @ =gUnknown_8459F04 -_0811F0DA: - ldr r0, [r4] - lsls r1, r2, 4 - adds r1, r0 - str r7, [r1] - lsls r0, r2, 3 - adds r0, r6 - adds r0, r3, r0 - str r0, [r1, 0x4] - strb r2, [r1, 0x8] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x5 - bls _0811F0DA - mov r1, r12 - ldr r0, [r1] - ldr r1, _0811F114 @ =gUnknown_8459EC4 - str r1, [r0] - cmp r5, 0x3 - bne _0811F118 - str r1, [r0, 0x30] - b _0811F11E - .align 2, 0 -_0811F108: .4byte gUnknown_203B0B4 -_0811F10C: .4byte gUnknown_8459EE4 -_0811F110: .4byte gUnknown_8459F04 -_0811F114: .4byte gUnknown_8459EC4 -_0811F118: - cmp r5, 0 - beq _0811F11E - str r1, [r0, 0x10] -_0811F11E: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_811F0BC - - thumb_func_start sub_811F124 -sub_811F124: @ 811F124 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0811F16C @ =gUnknown_203B0A0 - ldrb r1, [r0, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x5 - bne _0811F174 - cmp r4, 0x2 - bls _0811F174 - adds r0, r4, 0 - bl sub_811F528 - ldr r5, _0811F170 @ =gUnknown_203B0B4 - lsls r4, 4 - ldr r0, [r5] - adds r0, r4 - movs r1, 0x8 - bl sub_812142C - ldr r0, [r5] - adds r0, r4, r0 - ldrb r0, [r0, 0x8] - movs r1, 0x2 - bl CopyWindowToVram - ldr r0, [r5] - adds r4, r0 - ldrb r0, [r4, 0x8] - bl PutWindowTilemap - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - b _0811F22A - .align 2, 0 -_0811F16C: .4byte gUnknown_203B0A0 -_0811F170: .4byte gUnknown_203B0B4 -_0811F174: - movs r0, 0x64 - muls r0, r4 - ldr r1, _0811F1A4 @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - bne _0811F1AC - ldr r5, _0811F1A8 @ =gUnknown_203B0B4 - ldr r0, [r5] - lsls r4, 4 - adds r0, r4, r0 - ldrb r0, [r0, 0x8] - bl sub_8121404 - ldr r0, [r5] - adds r0, r4, r0 - ldrb r0, [r0, 0x8] - movs r1, 0x2 - bl CopyWindowToVram - b _0811F218 - .align 2, 0 -_0811F1A4: .4byte gPlayerParty -_0811F1A8: .4byte gUnknown_203B0B4 -_0811F1AC: - ldr r0, _0811F1C0 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0x8] - movs r1, 0xF - ands r1, r0 - cmp r1, 0x4 - bne _0811F1C4 - adds r0, r4, 0 - bl sub_811F388 - b _0811F1E2 - .align 2, 0 -_0811F1C0: .4byte gUnknown_203B0A0 -_0811F1C4: - cmp r1, 0xB - bne _0811F1D0 - adds r0, r4, 0 - bl sub_811F404 - b _0811F1E2 -_0811F1D0: - adds r0, r4, 0 - bl sub_811F430 - lsls r0, 24 - cmp r0, 0 - bne _0811F1E2 - adds r0, r4, 0 - bl sub_811F234 -_0811F1E2: - ldr r2, _0811F1F8 @ =gUnknown_203B0A0 - ldrb r1, [r2, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x5 - bne _0811F1FC - adds r0, r4, 0 - movs r1, 0 - bl sub_811F818 - b _0811F216 - .align 2, 0 -_0811F1F8: .4byte gUnknown_203B0A0 -_0811F1FC: - movs r0, 0x9 - ldrsb r0, [r2, r0] - cmp r0, r4 - bne _0811F20E - adds r0, r4, 0 - movs r1, 0x1 - bl sub_811F818 - b _0811F216 -_0811F20E: - adds r0, r4, 0 - movs r1, 0 - bl sub_811F818 -_0811F216: - lsls r4, 4 -_0811F218: - ldr r0, _0811F230 @ =gUnknown_203B0B4 - ldr r0, [r0] - adds r0, r4, r0 - ldrb r0, [r0, 0x8] - bl PutWindowTilemap - movs r0, 0 - bl ScheduleBgCopyTilemapToVram -_0811F22A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0811F230: .4byte gUnknown_203B0B4 - thumb_func_end sub_811F124 - - thumb_func_start sub_811F234 -sub_811F234: @ 811F234 - push {r4-r7,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x64 - adds r1, r4, 0 - muls r1, r0 - ldr r0, _0811F284 @ =gPlayerParty - adds r7, r1, r0 - adds r0, r7, 0 - movs r1, 0x2D - bl GetMonData - adds r2, r0, 0 - cmp r2, 0 - beq _0811F28C - ldr r6, _0811F288 @ =gUnknown_203B0B4 - ldr r0, [r6] - lsls r5, r4, 4 - adds r0, r5, r0 - ldr r2, [r0] - ldrb r0, [r0, 0x8] - movs r1, 0 - str r1, [sp] - movs r1, 0x1 - str r1, [sp, 0x4] - ldr r4, [r2] - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl _call_via_r4 - ldr r1, [r6] - adds r1, r5 - adds r0, r7, 0 - movs r2, 0 - bl sub_8121738 - b _0811F2EE - .align 2, 0 -_0811F284: .4byte gPlayerParty -_0811F288: .4byte gUnknown_203B0B4 -_0811F28C: - ldr r5, _0811F2F8 @ =gUnknown_203B0B4 - ldr r0, [r5] - lsls r4, 4 - adds r0, r4, r0 - ldr r1, [r0] - ldrb r0, [r0, 0x8] - str r2, [sp] - str r2, [sp, 0x4] - ldr r6, [r1] - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl _call_via_r6 - ldr r1, [r5] - adds r1, r4 - adds r0, r7, 0 - movs r2, 0 - bl sub_8121738 - ldr r1, [r5] - adds r1, r4 - adds r0, r7, 0 - movs r2, 0 - bl sub_8121790 - ldr r1, [r5] - adds r1, r4 - adds r0, r7, 0 - movs r2, 0 - bl sub_8121854 - ldr r1, [r5] - adds r1, r4 - adds r0, r7, 0 - movs r2, 0 - bl sub_812199C - ldr r1, [r5] - adds r1, r4 - adds r0, r7, 0 - movs r2, 0 - bl sub_8121A3C - ldr r1, [r5] - adds r1, r4 - adds r0, r7, 0 - bl sub_8121AF0 -_0811F2EE: - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0811F2F8: .4byte gUnknown_203B0B4 - thumb_func_end sub_811F234 - - thumb_func_start sub_811F2FC -sub_811F2FC: @ 811F2FC - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - movs r1, 0x64 - adds r2, r0, 0 - muls r2, r1 - ldr r1, _0811F380 @ =gPlayerParty - adds r6, r2, r1 - ldr r7, _0811F384 @ =gUnknown_203B0B4 - ldr r1, [r7] - lsls r5, r0, 4 - adds r1, r5, r1 - ldr r2, [r1] - ldrb r0, [r1, 0x8] - movs r1, 0 - str r1, [sp] - movs r1, 0x1 - str r1, [sp, 0x4] - ldr r4, [r2] - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl _call_via_r4 - ldr r1, [r7] - adds r1, r5 - adds r0, r6, 0 - movs r2, 0 - bl sub_8121738 - adds r0, r6, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0811F368 - ldr r1, [r7] - adds r1, r5 - adds r0, r6, 0 - movs r2, 0 - bl sub_8121790 - ldr r1, [r7] - adds r1, r5 - adds r0, r6, 0 - movs r2, 0 - bl sub_8121854 -_0811F368: - ldr r1, [r7] - adds r1, r5 - mov r0, r8 - movs r2, 0 - bl sub_8121C70 - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0811F380: .4byte gPlayerParty -_0811F384: .4byte gUnknown_203B0B4 - thumb_func_end sub_811F2FC - - thumb_func_start sub_811F388 -sub_811F388: @ 811F388 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x64 - muls r0, r4 - ldr r1, _0811F3AC @ =gPlayerParty - adds r0, r1 - ldr r5, _0811F3B0 @ =gSelectedOrderFromParty - bl sub_8127550 - lsls r0, 24 - cmp r0, 0 - bne _0811F3C2 - adds r0, r4, 0 - movs r1, 0x6 - bl sub_811F2FC - b _0811F3F8 - .align 2, 0 -_0811F3AC: .4byte gPlayerParty -_0811F3B0: .4byte gSelectedOrderFromParty -_0811F3B4: - adds r1, 0x2 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_811F2FC - b _0811F3F8 -_0811F3C2: - ldr r0, _0811F400 @ =gUnknown_203B0A0 - ldrb r1, [r0, 0x8] - movs r0, 0xC0 - ands r0, r1 - movs r3, 0x3 - cmp r0, 0x80 - bne _0811F3D2 - movs r3, 0x2 -_0811F3D2: - movs r1, 0 - cmp r1, r3 - bcs _0811F3F0 -_0811F3D8: - adds r2, r5, r1 - ldrb r0, [r2] - cmp r0, 0 - beq _0811F3E6 - subs r0, 0x1 - cmp r0, r4 - beq _0811F3B4 -_0811F3E6: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, r3 - bcc _0811F3D8 -_0811F3F0: - adds r0, r4, 0 - movs r1, 0x1 - bl sub_811F2FC -_0811F3F8: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0811F400: .4byte gUnknown_203B0A0 - thumb_func_end sub_811F388 - - thumb_func_start sub_811F404 -sub_811F404: @ 811F404 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl sub_81209D4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0811F422 - adds r0, r4, 0 - movs r1, 0x5 - bl sub_811F2FC - b _0811F42A -_0811F422: - adds r0, r4, 0 - movs r1, 0x6 - bl sub_811F2FC -_0811F42A: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_811F404 - - thumb_func_start sub_811F430 -sub_811F430: @ 811F430 - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, _0811F468 @ =gPlayerParty - adds r6, r1, r0 - ldr r0, _0811F46C @ =gSpecialVar_ItemId - ldrh r4, [r0] - ldr r0, _0811F470 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0xB] - cmp r0, 0xC - bne _0811F47C - ldr r0, _0811F474 @ =gSpecialVar_Result - movs r1, 0 - strh r1, [r0] - ldr r0, _0811F478 @ =gSpecialVar_0x8005 - ldrh r0, [r0] - cmp r0, 0xE - bhi _0811F492 - lsls r2, r0, 24 - lsrs r2, 24 - adds r0, r5, 0 - movs r1, 0 - bl sub_811F4D0 - b _0811F4C6 - .align 2, 0 -_0811F468: .4byte gPlayerParty -_0811F46C: .4byte gSpecialVar_ItemId -_0811F470: .4byte gUnknown_203B0A0 -_0811F474: .4byte gSpecialVar_Result -_0811F478: .4byte gSpecialVar_0x8005 -_0811F47C: - cmp r0, 0x3 - bne _0811F492 - adds r0, r4, 0 - bl GetItemCompatibilityRule - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0811F496 - cmp r0, 0x2 - beq _0811F4A2 -_0811F492: - movs r0, 0 - b _0811F4C8 -_0811F496: - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0 - bl sub_811F4D0 - b _0811F4C6 -_0811F4A2: - adds r0, r6, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0811F4BE - adds r0, r6, 0 - movs r1, 0x3 - adds r2, r4, 0 - bl GetEvolutionTargetSpecies - lsls r0, 16 - cmp r0, 0 - bne _0811F492 -_0811F4BE: - adds r0, r5, 0 - movs r1, 0 - bl sub_811F2FC -_0811F4C6: - movs r0, 0x1 -_0811F4C8: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_811F430 - - thumb_func_start sub_811F4D0 -sub_811F4D0: @ 811F4D0 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 16 - lsrs r1, 16 - lsls r2, 24 - lsrs r2, 24 - movs r0, 0x64 - muls r0, r4 - ldr r3, _0811F4FC @ =gPlayerParty - adds r0, r3 - bl sub_8120B20 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - beq _0811F50E - cmp r0, 0x2 - bgt _0811F500 - cmp r0, 0x1 - beq _0811F504 - b _0811F518 - .align 2, 0 -_0811F4FC: .4byte gPlayerParty -_0811F500: - cmp r0, 0x3 - bne _0811F518 -_0811F504: - adds r0, r4, 0 - movs r1, 0x8 - bl sub_811F2FC - b _0811F520 -_0811F50E: - adds r0, r4, 0 - movs r1, 0x9 - bl sub_811F2FC - b _0811F520 -_0811F518: - adds r0, r4, 0 - movs r1, 0x7 - bl sub_811F2FC -_0811F520: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_811F4D0 - - thumb_func_start sub_811F528 -sub_811F528: @ 811F528 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0811F558 @ =gUnknown_203B0B4 - lsls r2, r0, 4 - ldr r1, [r1] - adds r5, r1, r2 - subs r0, 0x3 - lsls r0, 24 - ldr r1, _0811F55C @ =gUnknown_2022B58 - mov r8, r1 - lsrs r7, r0, 19 - adds r6, r7, r1 - ldrh r0, [r6] - cmp r0, 0 - bne _0811F560 - ldrb r0, [r5, 0x8] - bl sub_8121404 - b _0811F5DC - .align 2, 0 -_0811F558: .4byte gUnknown_203B0B4 -_0811F55C: .4byte gUnknown_2022B58 -_0811F560: - ldr r2, [r5] - ldrb r0, [r5, 0x8] - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - ldr r4, [r2] - movs r2, 0 - movs r3, 0 - bl _call_via_r4 - ldr r4, _0811F5E8 @ =gStringVar1 - mov r0, r8 - adds r0, 0x4 - adds r7, r0 - adds r0, r4, 0 - adds r1, r7, 0 - bl StringCopy - adds r0, r4, 0 - bl StringGetEnd10 - adds r0, r4, 0 - bl StringLength - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x5 - bhi _0811F5A0 - adds r0, r4, 0 - movs r1, 0x1 - bl ConvertInternationalString -_0811F5A0: - ldrb r0, [r5, 0x8] - ldr r3, [r5] - adds r3, 0x4 - adds r1, r4, 0 - movs r2, 0 - bl sub_8121704 - ldrb r0, [r6, 0xF] - adds r1, r5, 0 - bl sub_8121808 - ldrb r0, [r6, 0x1C] - ldrh r1, [r6] - adds r2, r7, 0 - adds r3, r5, 0 - bl sub_81218BC - ldrh r0, [r6, 0x10] - adds r1, r5, 0 - bl sub_8121A04 - ldrh r0, [r6, 0x12] - adds r1, r5, 0 - bl sub_8121AA4 - ldrh r0, [r6, 0x10] - ldrh r1, [r6, 0x12] - adds r2, r5, 0 - bl sub_8121B2C -_0811F5DC: - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0811F5E8: .4byte gStringVar1 - thumb_func_end sub_811F528 - - thumb_func_start sub_811F5EC -sub_811F5EC: @ 811F5EC - push {r4,r5,lr} - ldr r5, _0811F614 @ =gUnknown_203B09C - ldr r0, [r5] - movs r4, 0x86 - lsls r4, 2 - adds r0, r4 - ldrb r0, [r0] - bl sub_811F124 - ldr r1, [r5] - adds r1, r4 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x6 - beq _0811F618 - movs r0, 0 - b _0811F61A - .align 2, 0 -_0811F614: .4byte gUnknown_203B09C -_0811F618: - movs r0, 0x1 -_0811F61A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_811F5EC - - thumb_func_start sub_811F620 -sub_811F620: @ 811F620 - lsls r0, 16 - ldr r1, _0811F630 @ =gUnknown_203B0B8 - lsrs r0, 11 - ldr r1, [r1] - adds r1, r0 - adds r0, r1, 0 - bx lr - .align 2, 0 -_0811F630: .4byte gUnknown_203B0B8 - thumb_func_end sub_811F620 - - thumb_func_start party_menu_add_per_mon_objects_internal -party_menu_add_per_mon_objects_internal: @ 811F634 - 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, _0811F6A8 @ =gUnknown_203B0A0 - ldrb r1, [r0, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x5 - bne _0811F6E4 - cmp r7, 0x2 - bls _0811F6E4 - subs r0, r7, 0x3 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - ldr r0, _0811F6AC @ =gUnknown_2022B58 - mov r9, r0 - mov r2, r10 - lsls r2, 5 - mov r8, r2 - mov r6, r8 - add r6, r9 - ldrh r0, [r6] - cmp r0, 0 - beq _0811F728 - mov r1, r9 - adds r1, 0x18 - add r1, r8 - ldr r1, [r1] - ldr r4, _0811F6B0 @ =gUnknown_203B0B4 - lsls r5, r7, 4 - ldr r2, [r4] - adds r2, r5 - movs r3, 0 - str r3, [sp] - bl party_menu_link_mon_icon_anim - ldrh r0, [r6] - ldrh r1, [r6, 0x2] - ldr r2, [r4] - adds r2, r5 - bl party_menu_link_mon_held_item_object - ldrh r0, [r6] - ldr r1, [r4] - adds r1, r5 - bl party_menu_link_mon_pokeball_object - ldrh r0, [r6, 0x10] - cmp r0, 0 - bne _0811F6B4 - movs r3, 0x7 - b _0811F6C4 - .align 2, 0 -_0811F6A8: .4byte gUnknown_203B0A0 -_0811F6AC: .4byte gUnknown_2022B58 -_0811F6B0: .4byte gUnknown_203B0B4 -_0811F6B4: - mov r0, r9 - adds r0, 0x14 - add r0, r8 - ldr r0, [r0] - bl pokemon_ailments_get_primary - lsls r0, 24 - lsrs r3, r0, 24 -_0811F6C4: - ldr r1, _0811F6DC @ =gUnknown_2022B58 - mov r2, r10 - lsls r0, r2, 5 - adds r0, r1 - ldrh r0, [r0] - ldr r1, _0811F6E0 @ =gUnknown_203B0B4 - ldr r2, [r1] - adds r2, r5 - adds r1, r3, 0 - bl party_menu_link_mon_status_condition_object - b _0811F728 - .align 2, 0 -_0811F6DC: .4byte gUnknown_2022B58 -_0811F6E0: .4byte gUnknown_203B0B4 -_0811F6E4: - movs r0, 0x64 - adds r1, r7, 0 - muls r1, r0 - ldr r0, _0811F738 @ =gPlayerParty - adds r6, r1, r0 - adds r0, r6, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0811F728 - ldr r4, _0811F73C @ =gUnknown_203B0B4 - lsls r5, r7, 4 - ldr r1, [r4] - adds r1, r5 - adds r0, r6, 0 - adds r2, r7, 0 - bl party_menu_icon_anim - ldr r1, [r4] - adds r1, r5 - adds r0, r6, 0 - bl party_menu_held_item_object - ldr r1, [r4] - adds r1, r5 - adds r0, r6, 0 - bl party_menu_pokeball_object - ldr r1, [r4] - adds r1, r5 - adds r0, r6, 0 - bl party_menu_status_condition_object -_0811F728: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0811F738: .4byte gPlayerParty -_0811F73C: .4byte gUnknown_203B0B4 - thumb_func_end party_menu_add_per_mon_objects_internal - - thumb_func_start party_menu_add_per_mon_objects -party_menu_add_per_mon_objects: @ 811F740 - push {r4,r5,lr} - ldr r5, _0811F768 @ =gUnknown_203B09C - ldr r0, [r5] - movs r4, 0x86 - lsls r4, 2 - adds r0, r4 - ldrb r0, [r0] - bl party_menu_add_per_mon_objects_internal - ldr r1, [r5] - adds r1, r4 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x6 - beq _0811F76C - movs r0, 0 - b _0811F76E - .align 2, 0 -_0811F768: .4byte gUnknown_203B09C -_0811F76C: - movs r0, 0x1 -_0811F76E: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end party_menu_add_per_mon_objects - - thumb_func_start sub_811F774 -sub_811F774: @ 811F774 - push {r4,lr} - sub sp, 0xC - ldr r0, _0811F79C @ =gUnknown_203B0A0 - ldrb r1, [r0, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x5 - bne _0811F7A0 - movs r0, 0x7 - str r0, [sp] - movs r0, 0x2 - str r0, [sp, 0x4] - movs r0, 0x1 - str r0, [sp, 0x8] - movs r1, 0xE - movs r2, 0x17 - movs r3, 0x11 - bl FillBgTilemapBufferRect - b _0811F808 - .align 2, 0 -_0811F79C: .4byte gUnknown_203B0A0 -_0811F7A0: - ldr r4, _0811F7D8 @ =gUnknown_203B09C - ldr r0, [r4] - ldrb r0, [r0, 0x8] - lsls r0, 31 - cmp r0, 0 - beq _0811F7E0 - movs r0, 0xBF - movs r1, 0x88 - bl sub_8122794 - ldr r3, [r4] - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x7F - ands r0, r1 - lsls r0, 4 - ldrh r2, [r3, 0x8] - ldr r1, _0811F7DC @ =0xfffff80f - ands r1, r2 - orrs r1, r0 - strh r1, [r3, 0x8] - bl sub_811F9DC - movs r0, 0xBF - movs r1, 0x98 - bl sub_8122794 - b _0811F7E8 - .align 2, 0 -_0811F7D8: .4byte gUnknown_203B09C -_0811F7DC: .4byte 0xfffff80f -_0811F7E0: - movs r0, 0xC6 - movs r1, 0x94 - bl sub_8122754 -_0811F7E8: - ldr r3, [r4] - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x7F - ands r0, r1 - lsls r0, 11 - ldr r1, [r3, 0x8] - ldr r2, _0811F810 @ =0xfffc07ff - ands r1, r2 - orrs r1, r0 - str r1, [r3, 0x8] - ldr r0, _0811F814 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0x9] - movs r1, 0x1 - bl sub_811F818 -_0811F808: - add sp, 0xC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0811F810: .4byte 0xfffc07ff -_0811F814: .4byte gUnknown_203B0A0 - thumb_func_end sub_811F774 - - thumb_func_start sub_811F818 -sub_811F818: @ 811F818 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - lsls r0, 24 - lsrs r7, r0, 24 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - cmp r7, 0x6 - beq _0811F884 - cmp r7, 0x7 - beq _0811F8C0 - movs r0, 0x64 - muls r0, r7 - ldr r1, _0811F87C @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0811F934 - ldr r6, _0811F880 @ =gUnknown_203B0B4 - lsls r5, r7, 4 - ldr r4, [r6] - adds r4, r5 - adds r0, r7, 0 - mov r1, r8 - bl sub_811F944 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_812142C - ldr r0, [r6] - adds r0, r5, r0 - ldrb r0, [r0, 0x9] - mov r1, r8 - bl sub_812238C - ldr r0, [r6] - adds r5, r0 - ldrb r0, [r5, 0xB] - mov r1, r8 - bl sub_81227B8 - b _0811F934 - .align 2, 0 -_0811F87C: .4byte gPlayerParty -_0811F880: .4byte gUnknown_203B0B4 -_0811F884: - mov r0, r8 - cmp r0, 0 - bne _0811F89E - movs r0, 0x2 - str r0, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - movs r1, 0x17 - movs r2, 0x10 - movs r3, 0x7 - bl SetBgRectPal - b _0811F8B0 -_0811F89E: - movs r0, 0x2 - str r0, [sp] - str r0, [sp, 0x4] - movs r0, 0x1 - movs r1, 0x17 - movs r2, 0x10 - movs r3, 0x7 - bl SetBgRectPal -_0811F8B0: - ldr r0, _0811F8BC @ =gUnknown_203B09C - ldr r0, [r0] - ldrh r0, [r0, 0x8] - lsls r0, 21 - b _0811F926 - .align 2, 0 -_0811F8BC: .4byte gUnknown_203B09C -_0811F8C0: - ldr r0, _0811F8E0 @ =gUnknown_203B09C - ldr r0, [r0] - ldrb r0, [r0, 0x8] - lsls r0, 31 - cmp r0, 0 - bne _0811F8F2 - mov r0, r8 - cmp r0, 0 - bne _0811F8E4 - movs r0, 0x2 - str r0, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - movs r1, 0x17 - movs r2, 0x11 - b _0811F904 - .align 2, 0 -_0811F8E0: .4byte gUnknown_203B09C -_0811F8E4: - movs r0, 0x2 - str r0, [sp] - str r0, [sp, 0x4] - movs r0, 0x1 - movs r1, 0x17 - movs r2, 0x11 - b _0811F904 -_0811F8F2: - mov r0, r8 - cmp r0, 0 - bne _0811F90C - movs r0, 0x2 - str r0, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - movs r1, 0x17 - movs r2, 0x12 -_0811F904: - movs r3, 0x7 - bl SetBgRectPal - b _0811F91E -_0811F90C: - movs r0, 0x2 - str r0, [sp] - str r0, [sp, 0x4] - movs r0, 0x1 - movs r1, 0x17 - movs r2, 0x12 - movs r3, 0x7 - bl SetBgRectPal -_0811F91E: - ldr r0, _0811F940 @ =gUnknown_203B09C - ldr r0, [r0] - ldr r0, [r0, 0x8] - lsls r0, 14 -_0811F926: - lsrs r0, 25 - mov r1, r8 - bl sub_81227B8 - movs r0, 0x1 - bl ScheduleBgCopyTilemapToVram -_0811F934: - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0811F940: .4byte gUnknown_203B09C - thumb_func_end sub_811F818 - - thumb_func_start sub_811F944 -sub_811F944: @ 811F944 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - lsrs r1, 24 - movs r4, 0 - cmp r1, 0x1 - bne _0811F956 - movs r4, 0x1 -_0811F956: - movs r0, 0x64 - muls r0, r5 - ldr r1, _0811F9D4 @ =gPlayerParty - adds r0, r1 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - bne _0811F96C - movs r0, 0x2 - orrs r4, r0 -_0811F96C: - ldr r2, _0811F9D8 @ =gUnknown_203B0A0 - ldrb r1, [r2, 0x8] - movs r0, 0x30 - ands r0, r1 - cmp r0, 0x20 - bne _0811F98C - cmp r5, 0x1 - beq _0811F984 - cmp r5, 0x4 - beq _0811F984 - cmp r5, 0x5 - bne _0811F98C -_0811F984: - movs r0, 0x8 - orrs r4, r0 - lsls r0, r4, 24 - lsrs r4, r0, 24 -_0811F98C: - ldrb r1, [r2, 0xB] - cmp r1, 0x9 - bne _0811F99A - movs r0, 0x10 - orrs r4, r0 - lsls r0, r4, 24 - lsrs r4, r0, 24 -_0811F99A: - cmp r1, 0x8 - bne _0811F9B6 - movs r0, 0x9 - ldrsb r0, [r2, r0] - cmp r5, r0 - beq _0811F9AE - movs r0, 0xA - ldrsb r0, [r2, r0] - cmp r5, r0 - bne _0811F9B6 -_0811F9AE: - movs r0, 0x4 - orrs r4, r0 - lsls r0, r4, 24 - lsrs r4, r0, 24 -_0811F9B6: - ldrb r0, [r2, 0xB] - cmp r0, 0xA - bne _0811F9CC - movs r0, 0x9 - ldrsb r0, [r2, r0] - cmp r5, r0 - bne _0811F9CC - movs r0, 0x20 - orrs r4, r0 - lsls r0, r4, 24 - lsrs r4, r0, 24 -_0811F9CC: - adds r0, r4, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0811F9D4: .4byte gPlayerParty -_0811F9D8: .4byte gUnknown_203B0A0 - thumb_func_end sub_811F944 - - thumb_func_start sub_811F9DC -sub_811F9DC: @ 811F9DC - push {r4-r6,lr} - sub sp, 0xC - ldr r1, _0811FA18 @ =gUnknown_8459FC4 - movs r6, 0x7 - str r6, [sp] - movs r5, 0x2 - str r5, [sp, 0x4] - movs r4, 0x11 - str r4, [sp, 0x8] - movs r0, 0x1 - movs r2, 0x17 - movs r3, 0x10 - bl CopyToBgTilemapBufferRect_ChangePalette - ldr r1, _0811FA1C @ =gUnknown_8459FE0 - str r6, [sp] - str r5, [sp, 0x4] - str r4, [sp, 0x8] - movs r0, 0x1 - movs r2, 0x17 - movs r3, 0x12 - bl CopyToBgTilemapBufferRect_ChangePalette - movs r0, 0x1 - bl ScheduleBgCopyTilemapToVram - add sp, 0xC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0811FA18: .4byte gUnknown_8459FC4 -_0811FA1C: .4byte gUnknown_8459FE0 - thumb_func_end sub_811F9DC - - thumb_func_start IsMultiBattle -IsMultiBattle: @ 811FA20 - push {lr} - ldr r0, _0811FA34 @ =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x4B - ands r0, r1 - cmp r0, 0x4B - beq _0811FA38 - movs r0, 0 - b _0811FA3A - .align 2, 0 -_0811FA34: .4byte gBattleTypeFlags -_0811FA38: - movs r0, 0x1 -_0811FA3A: - pop {r1} - bx r1 - thumb_func_end IsMultiBattle - - thumb_func_start sub_811FA40 -sub_811FA40: @ 811FA40 - push {r4-r6,lr} - adds r4, r0, 0 - adds r6, r1, 0 - movs r0, 0x64 - bl Alloc - adds r5, r0, 0 - adds r1, r4, 0 - movs r2, 0x64 - bl memcpy - adds r0, r4, 0 - adds r1, r6, 0 - movs r2, 0x64 - bl memcpy - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0x64 - bl memcpy - adds r0, r5, 0 - bl Free - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_811FA40 - - thumb_func_start sub_811FA78 -sub_811FA78: @ 811FA78 - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - negs r0, r0 - movs r1, 0x2 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, _0811FAAC @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0811FAB0 @ =sub_811FAB4 - str r1, [r0] - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0811FAAC: .4byte gTasks -_0811FAB0: .4byte sub_811FAB4 - thumb_func_end sub_811FA78 - - thumb_func_start sub_811FAB4 -sub_811FAB4: @ 811FAB4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _0811FAE8 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0811FB04 - ldr r4, _0811FAEC @ =gUnknown_203B0A0 - ldrb r1, [r4, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x1 - bne _0811FAD6 - bl sub_81280C4 -_0811FAD6: - ldr r0, _0811FAF0 @ =gUnknown_203B09C - ldr r0, [r0] - ldr r0, [r0, 0x4] - cmp r0, 0 - beq _0811FAF4 - bl SetMainCallback2 - b _0811FAFA - .align 2, 0 -_0811FAE8: .4byte gPaletteFade -_0811FAEC: .4byte gUnknown_203B0A0 -_0811FAF0: .4byte gUnknown_203B09C -_0811FAF4: - ldr r0, [r4] - bl SetMainCallback2 -_0811FAFA: - bl sub_811F070 - adds r0, r5, 0 - bl DestroyTask -_0811FB04: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_811FAB4 - - thumb_func_start GetCursorSelectionMonId -GetCursorSelectionMonId: @ 811FB0C - ldr r0, _0811FB14 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0x9] - bx lr - .align 2, 0 -_0811FB14: .4byte gUnknown_203B0A0 - thumb_func_end GetCursorSelectionMonId - - thumb_func_start sub_811FB18 -sub_811FB18: @ 811FB18 - ldr r0, _0811FB24 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0x8] - lsls r0, 28 - lsrs r0, 28 - bx lr - .align 2, 0 -_0811FB24: .4byte gUnknown_203B0A0 - thumb_func_end sub_811FB18 - - thumb_func_start sub_811FB28 -sub_811FB28: @ 811FB28 - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - ldr r0, _0811FB64 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0811FB98 - bl sub_80BF748 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0811FB98 - bl sub_811FBA4 - adds r4, r0, 0 - bl sub_811FEFC - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - beq _0811FB78 - cmp r0, 0x2 - bgt _0811FB68 - cmp r0, 0x1 - beq _0811FB6E - b _0811FB98 - .align 2, 0 -_0811FB64: .4byte gPaletteFade -_0811FB68: - cmp r0, 0x8 - beq _0811FB82 - b _0811FB98 -_0811FB6E: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_811FBC4 - b _0811FB98 -_0811FB78: - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_811FD88 - b _0811FB98 -_0811FB82: - ldr r0, _0811FBA0 @ =gUnknown_203B09C - ldr r0, [r0] - ldrb r0, [r0, 0x8] - lsls r0, 31 - cmp r0, 0 - beq _0811FB98 - movs r0, 0x5 - bl PlaySE - bl sub_8124258 -_0811FB98: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0811FBA0: .4byte gUnknown_203B09C - thumb_func_end sub_811FB28 - - thumb_func_start sub_811FBA4 -sub_811FBA4: @ 811FBA4 - push {lr} - ldr r0, _0811FBB8 @ =gUnknown_203B0A0 - ldrb r1, [r0, 0xB] - cmp r1, 0x8 - beq _0811FBB2 - cmp r1, 0xA - bne _0811FBBC -_0811FBB2: - adds r0, 0xA - b _0811FBBE - .align 2, 0 -_0811FBB8: .4byte gUnknown_203B0A0 -_0811FBBC: - adds r0, 0x9 -_0811FBBE: - pop {r1} - bx r1 - thumb_func_end sub_811FBA4 - - thumb_func_start sub_811FBC4 -sub_811FBC4: @ 811FBC4 - push {r4-r6,lr} - adds r5, r1, 0 - lsls r0, 24 - lsrs r6, r0, 24 - movs r0, 0 - ldrsb r0, [r5, r0] - cmp r0, 0x6 - bne _0811FBE4 - ldr r0, _0811FBE0 @ =gUnknown_203B0A0 - ldr r1, [r0, 0x4] - adds r0, r6, 0 - bl _call_via_r1 - b _0811FD56 - .align 2, 0 -_0811FBE0: .4byte gUnknown_203B0A0 -_0811FBE4: - ldr r0, _0811FBFC @ =gUnknown_203B0A0 - ldrb r0, [r0, 0xB] - subs r0, 0x3 - cmp r0, 0xA - bls _0811FBF0 - b _0811FD4A -_0811FBF0: - lsls r0, 2 - ldr r1, _0811FC00 @ =_0811FC04 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0811FBFC: .4byte gUnknown_203B0A0 -_0811FC00: .4byte _0811FC04 - .align 2, 0 -_0811FC04: - .4byte _0811FC46 - .4byte _0811FD4A - .4byte _0811FCC0 - .4byte _0811FCC0 - .4byte _0811FCA6 - .4byte _0811FCDA - .4byte _0811FD4A - .4byte _0811FC30 - .4byte _0811FCE8 - .4byte _0811FC8C - .4byte _0811FD34 -_0811FC30: - adds r0, r5, 0 - bl sub_811FD5C - lsls r0, 24 - cmp r0, 0 - bne _0811FC3E - b _0811FD56 -_0811FC3E: - adds r0, r6, 0 - bl sub_80E5724 - b _0811FD56 -_0811FC46: - adds r0, r5, 0 - bl sub_811FD5C - lsls r0, 24 - cmp r0, 0 - bne _0811FC54 - b _0811FD56 -_0811FC54: - ldr r0, _0811FC78 @ =gUnknown_203B0A0 - ldrb r1, [r0, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x1 - bne _0811FC68 - ldr r0, _0811FC7C @ =gUnknown_203B09C - ldr r1, [r0] - ldr r0, _0811FC80 @ =sub_8128184 - str r0, [r1, 0x4] -_0811FC68: - ldr r0, _0811FC84 @ =gUnknown_3005E98 - ldr r1, _0811FC88 @ =sub_81255BC - ldr r2, [r0] - adds r0, r6, 0 - bl _call_via_r2 - b _0811FD56 - .align 2, 0 -_0811FC78: .4byte gUnknown_203B0A0 -_0811FC7C: .4byte gUnknown_203B09C -_0811FC80: .4byte sub_8128184 -_0811FC84: .4byte gUnknown_3005E98 -_0811FC88: .4byte sub_81255BC -_0811FC8C: - adds r0, r5, 0 - bl sub_811FD5C - lsls r0, 24 - cmp r0, 0 - beq _0811FD56 - movs r0, 0x5 - bl PlaySE - adds r0, r6, 0 - bl sub_8126DC8 - b _0811FD56 -_0811FCA6: - adds r0, r5, 0 - bl sub_811FD5C - lsls r0, 24 - cmp r0, 0 - beq _0811FD56 - movs r0, 0x5 - bl PlaySE - adds r0, r6, 0 - bl sub_8127404 - b _0811FD56 -_0811FCC0: - adds r0, r5, 0 - bl sub_811FD5C - lsls r0, 24 - cmp r0, 0 - beq _0811FD56 - movs r0, 0x5 - bl PlaySE - adds r0, r6, 0 - bl sub_8126F40 - b _0811FD56 -_0811FCDA: - movs r0, 0x5 - bl PlaySE - adds r0, r6, 0 - bl sub_8122E5C - b _0811FD56 -_0811FCE8: - movs r0, 0x5 - bl PlaySE - ldr r1, _0811FD24 @ =gSpecialVar_0x8004 - movs r0, 0 - ldrsb r0, [r5, r0] - strh r0, [r1] - ldr r0, _0811FD28 @ =gUnknown_203B0A0 - ldrb r1, [r0, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x7 - bne _0811FD1A - ldr r4, _0811FD2C @ =gSpecialVar_0x8005 - movs r1, 0 - ldrsb r1, [r5, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0811FD30 @ =gPlayerParty - adds r0, r1 - bl GetNumberOfRelearnableMoves - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4] -_0811FD1A: - adds r0, r6, 0 - bl sub_811FA78 - b _0811FD56 - .align 2, 0 -_0811FD24: .4byte gSpecialVar_0x8004 -_0811FD28: .4byte gUnknown_203B0A0 -_0811FD2C: .4byte gSpecialVar_0x8005 -_0811FD30: .4byte gPlayerParty -_0811FD34: - adds r0, r5, 0 - bl sub_811FD5C - lsls r0, 24 - cmp r0, 0 - beq _0811FD56 - ldrb r1, [r5] - adds r0, r6, 0 - bl sub_81209F4 - b _0811FD56 -_0811FD4A: - movs r0, 0x5 - bl PlaySE - adds r0, r6, 0 - bl sub_8122C30 -_0811FD56: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_811FBC4 - - thumb_func_start sub_811FD5C -sub_811FD5C: @ 811FD5C - push {lr} - ldrb r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0811FD78 @ =gPlayerParty - adds r0, r1 - movs r1, 0x2D - bl GetMonData - cmp r0, 0x1 - beq _0811FD7C - movs r0, 0x1 - b _0811FD84 - .align 2, 0 -_0811FD78: .4byte gPlayerParty -_0811FD7C: - movs r0, 0x1A - bl PlaySE - movs r0, 0 -_0811FD84: - pop {r1} - bx r1 - thumb_func_end sub_811FD5C - - thumb_func_start sub_811FD88 -sub_811FD88: @ 811FD88 - push {r4,r5,lr} - adds r5, r1, 0 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0811FDA4 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0xB] - cmp r0, 0x8 - beq _0811FDBA - cmp r0, 0x8 - bgt _0811FDA8 - cmp r0, 0x1 - beq _0811FDB2 - b _0811FDD6 - .align 2, 0 -_0811FDA4: .4byte gUnknown_203B0A0 -_0811FDA8: - cmp r0, 0xA - beq _0811FDBA - cmp r0, 0xD - beq _0811FDC8 - b _0811FDD6 -_0811FDB2: - movs r0, 0x1A - bl PlaySE - b _0811FE14 -_0811FDBA: - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_81235E8 - b _0811FE14 -_0811FDC8: - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_8120A58 - b _0811FE14 -_0811FDD6: - movs r0, 0x5 - bl PlaySE - ldr r0, _0811FDF0 @ =gUnknown_203B0A0 - ldrb r1, [r0, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x4 - bne _0811FDF4 - adds r0, r4, 0 - bl sub_811FE24 - b _0811FE14 - .align 2, 0 -_0811FDF0: .4byte gUnknown_203B0A0 -_0811FDF4: - bl MenuHelpers_LinkSomething - lsls r0, 24 - cmp r0, 0 - bne _0811FE04 - ldr r1, _0811FE1C @ =gSpecialVar_0x8004 - movs r0, 0x7 - strh r0, [r1] -_0811FE04: - ldr r0, _0811FE20 @ =gUnknown_203B0C0 - movs r1, 0 - strb r1, [r0] - movs r0, 0x7 - strb r0, [r5] - adds r0, r4, 0 - bl sub_811FA78 -_0811FE14: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0811FE1C: .4byte gSpecialVar_0x8004 -_0811FE20: .4byte gUnknown_203B0C0 - thumb_func_end sub_811FD88 - - thumb_func_start sub_811FE24 -sub_811FE24: @ 811FE24 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _0811FE5C @ =gUnknown_203B09C - ldr r0, [r0] - adds r0, 0xD - bl sub_8121CE4 - ldr r5, _0811FE60 @ =gStringVar4 - ldr r1, _0811FE64 @ =gUnknown_84176CF - adds r0, r5, 0 - bl StringExpandPlaceholders - adds r0, r5, 0 - movs r1, 0x1 - bl sub_81202F8 - ldr r1, _0811FE68 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0811FE6C @ =sub_811FE70 - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0811FE5C: .4byte gUnknown_203B09C -_0811FE60: .4byte gStringVar4 -_0811FE64: .4byte gUnknown_84176CF -_0811FE68: .4byte gTasks -_0811FE6C: .4byte sub_811FE70 - thumb_func_end sub_811FE24 - - thumb_func_start sub_811FE70 -sub_811FE70: @ 811FE70 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0811FE94 - bl sub_812200C - ldr r0, _0811FE9C @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0811FEA0 @ =sub_811FEA4 - str r0, [r1] -_0811FE94: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0811FE9C: .4byte gTasks -_0811FEA0: .4byte sub_811FEA4 - thumb_func_end sub_811FE70 - - thumb_func_start sub_811FEA4 -sub_811FEA4: @ 811FEA4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl Menu_ProcessInputNoWrapClearOnChoose - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _0811FECA - cmp r1, 0 - bgt _0811FEC4 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0811FEE8 - b _0811FEF4 -_0811FEC4: - cmp r1, 0x1 - beq _0811FEEE - b _0811FEF4 -_0811FECA: - ldr r0, _0811FEE0 @ =gUnknown_203B0C0 - strb r1, [r0] - ldr r1, _0811FEE4 @ =gUnknown_203B0A0 - movs r0, 0x7 - strb r0, [r1, 0x9] - bl sub_81274FC - adds r0, r4, 0 - bl sub_811FA78 - b _0811FEF4 - .align 2, 0 -_0811FEE0: .4byte gUnknown_203B0C0 -_0811FEE4: .4byte gUnknown_203B0A0 -_0811FEE8: - movs r0, 0x5 - bl PlaySE -_0811FEEE: - adds r0, r4, 0 - bl sub_81203B8 -_0811FEF4: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_811FEA4 - - thumb_func_start sub_811FEFC -sub_811FEFC: @ 811FEFC - push {r4,lr} - adds r4, r0, 0 - ldr r0, _0811FF14 @ =gMain - ldrh r1, [r0, 0x30] - adds r3, r0, 0 - cmp r1, 0x20 - beq _0811FF2A - cmp r1, 0x20 - bgt _0811FF18 - cmp r1, 0x10 - beq _0811FF2E - b _0811FF32 - .align 2, 0 -_0811FF14: .4byte gMain -_0811FF18: - cmp r1, 0x40 - beq _0811FF22 - cmp r1, 0x80 - beq _0811FF26 - b _0811FF32 -_0811FF22: - movs r1, 0xFF - b _0811FF4E -_0811FF26: - movs r1, 0x1 - b _0811FF4E -_0811FF2A: - movs r1, 0xFE - b _0811FF4E -_0811FF2E: - movs r1, 0x2 - b _0811FF4E -_0811FF32: - bl sub_80BF66C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0811FF46 - cmp r0, 0x2 - beq _0811FF4A - movs r1, 0 - b _0811FF4C -_0811FF46: - movs r1, 0xFF - b _0811FF4C -_0811FF4A: - movs r1, 0x1 -_0811FF4C: - ldr r3, _0811FF5C @ =gMain -_0811FF4E: - ldrh r2, [r3, 0x2E] - movs r0, 0x8 - ands r0, r2 - cmp r0, 0 - beq _0811FF60 - movs r0, 0x8 - b _0811FF8C - .align 2, 0 -_0811FF5C: .4byte gMain -_0811FF60: - lsls r0, r1, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _0811FF72 - adds r0, r4, 0 - bl sub_811FF94 - movs r0, 0 - b _0811FF8C -_0811FF72: - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - beq _0811FF86 - movs r0, 0 - ldrsb r0, [r4, r0] - cmp r0, 0x7 - bne _0811FF86 - movs r0, 0x2 - b _0811FF8C -_0811FF86: - ldrh r1, [r3, 0x2E] - movs r0, 0x3 - ands r0, r1 -_0811FF8C: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_811FEFC - - thumb_func_start sub_811FF94 -sub_811FF94: @ 811FF94 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r1, 24 - lsrs r1, 24 - ldrb r4, [r5] - ldr r0, _0811FFB8 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0x8] - lsls r0, 26 - lsrs r0, 30 - cmp r0, 0 - bne _0811FFBC - lsls r1, 24 - asrs r1, 24 - adds r0, r5, 0 - bl sub_811FFF0 - b _0811FFC6 - .align 2, 0 -_0811FFB8: .4byte gUnknown_203B0A0 -_0811FFBC: - lsls r1, 24 - asrs r1, 24 - adds r0, r5, 0 - bl sub_81200F8 -_0811FFC6: - movs r1, 0 - ldrsb r1, [r5, r1] - lsls r4, 24 - asrs r0, r4, 24 - cmp r1, r0 - beq _0811FFE8 - movs r0, 0x5 - bl PlaySE - lsrs r0, r4, 24 - movs r1, 0 - bl sub_811F818 - ldrb r0, [r5] - movs r1, 0x1 - bl sub_811F818 -_0811FFE8: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_811FF94 - - thumb_func_start sub_811FFF0 -sub_811FFF0: @ 811FFF0 - push {r4,lr} - adds r4, r0, 0 - lsls r1, 24 - asrs r1, 24 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08120016 - cmp r1, r0 - bgt _0812000C - subs r0, 0x1 - cmp r1, r0 - beq _081200C0 - b _081200EE -_0812000C: - cmp r1, 0x1 - beq _0812005C - cmp r1, 0x2 - beq _08120094 - b _081200EE -_08120016: - ldrb r0, [r4] - movs r1, 0 - ldrsb r1, [r4, r1] - cmp r1, 0 - bne _08120024 - movs r0, 0x7 - b _081200EC -_08120024: - cmp r1, 0x6 - bne _08120034 - ldr r0, _08120030 @ =gPlayerPartyCount - ldrb r0, [r0] - subs r0, 0x1 - b _081200EC - .align 2, 0 -_08120030: .4byte gPlayerPartyCount -_08120034: - cmp r1, 0x7 - bne _08120058 - ldr r0, _08120048 @ =gUnknown_203B09C - ldr r0, [r0] - ldrb r0, [r0, 0x8] - lsls r0, 31 - cmp r0, 0 - beq _0812004C - movs r0, 0x6 - b _081200EC - .align 2, 0 -_08120048: .4byte gUnknown_203B09C -_0812004C: - ldr r0, _08120054 @ =gPlayerPartyCount - ldrb r0, [r0] - subs r0, 0x1 - b _081200EC - .align 2, 0 -_08120054: .4byte gPlayerPartyCount -_08120058: - subs r0, 0x1 - b _081200EC -_0812005C: - ldrb r2, [r4] - movs r0, 0 - ldrsb r0, [r4, r0] - cmp r0, 0x7 - beq _081200EA - movs r1, 0 - ldrsb r1, [r4, r1] - ldr r0, _08120084 @ =gPlayerPartyCount - ldrb r0, [r0] - subs r0, 0x1 - cmp r1, r0 - bne _08120090 - ldr r0, _08120088 @ =gUnknown_203B09C - ldr r0, [r0] - ldrb r0, [r0, 0x8] - lsls r0, 31 - cmp r0, 0 - beq _0812008C - movs r0, 0x6 - b _081200EC - .align 2, 0 -_08120084: .4byte gPlayerPartyCount -_08120088: .4byte gUnknown_203B09C -_0812008C: - movs r0, 0x7 - b _081200EC -_08120090: - adds r0, r2, 0x1 - b _081200EC -_08120094: - ldr r0, _081200B8 @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r0, 0x1 - beq _081200EE - movs r0, 0 - ldrsb r0, [r4, r0] - cmp r0, 0 - bne _081200EE - ldr r0, _081200BC @ =gUnknown_203B09C - ldr r0, [r0] - ldrb r0, [r0, 0x8] - lsls r0, 28 - lsrs r0, 29 - cmp r0, 0 - bne _081200EC - movs r0, 0x1 - b _081200EC - .align 2, 0 -_081200B8: .4byte gPlayerPartyCount -_081200BC: .4byte gUnknown_203B09C -_081200C0: - movs r0, 0 - ldrsb r0, [r4, r0] - cmp r0, 0 - beq _081200EE - cmp r0, 0x6 - beq _081200EE - cmp r0, 0x7 - beq _081200EE - ldr r0, _081200F4 @ =gUnknown_203B09C - ldr r3, [r0] - movs r1, 0 - ldrsb r1, [r4, r1] - movs r0, 0x7 - ands r1, r0 - lsls r1, 1 - ldrb r2, [r3, 0x8] - movs r0, 0xF - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3, 0x8] -_081200EA: - movs r0, 0 -_081200EC: - strb r0, [r4] -_081200EE: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081200F4: .4byte gUnknown_203B09C - thumb_func_end sub_811FFF0 - - thumb_func_start sub_81200F8 -sub_81200F8: @ 81200F8 - push {r4-r6,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r2, r1, 24 - asrs r5, r1, 24 - movs r6, 0x1 - negs r6, r6 - cmp r5, r6 - beq _08120124 - cmp r5, r6 - bgt _0812011A - movs r0, 0x2 - negs r0, r0 - cmp r5, r0 - bne _08120118 - b _08120238 -_08120118: - b _08120290 -_0812011A: - cmp r5, 0x1 - beq _08120180 - cmp r5, 0x2 - beq _081201C0 - b _08120290 -_08120124: - ldrb r1, [r4] - movs r0, 0 - ldrsb r0, [r4, r0] - cmp r0, 0 - bne _08120132 - movs r0, 0x7 - b _0812028E -_08120132: - cmp r0, 0x6 - bne _08120144 - ldr r0, _08120140 @ =gPlayerPartyCount - ldrb r0, [r0] - subs r0, 0x1 - b _0812028E - .align 2, 0 -_08120140: .4byte gPlayerPartyCount -_08120144: - cmp r0, 0x7 - bne _08120160 - ldr r0, _08120158 @ =gUnknown_203B09C - ldr r0, [r0] - ldrb r0, [r0, 0x8] - lsls r0, 31 - cmp r0, 0 - beq _0812015C - movs r0, 0x6 - b _0812028E - .align 2, 0 -_08120158: .4byte gUnknown_203B09C -_0812015C: - subs r0, r1, 0x1 - strb r0, [r4] -_08120160: - movs r0, 0 - ldrsb r0, [r4, r0] - lsls r1, r2, 24 - asrs r1, 24 - bl sub_812029C - lsls r0, 24 - lsrs r2, r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _0812017C - b _08120290 -_0812017C: - strb r2, [r4] - b _08120290 -_08120180: - movs r0, 0 - ldrsb r0, [r4, r0] - cmp r0, 0x6 - bne _0812018C - movs r0, 0x7 - b _0812028E -_0812018C: - cmp r0, 0x7 - bne _08120194 - movs r0, 0 - b _0812028E -_08120194: - movs r0, 0 - ldrsb r0, [r4, r0] - movs r1, 0x1 - bl sub_812029C - lsls r0, 24 - lsrs r2, r0, 24 - asrs r0, 24 - cmp r0, r6 - bne _0812017C - ldr r0, _081201B8 @ =gUnknown_203B09C - ldr r0, [r0] - ldrb r0, [r0, 0x8] - lsls r0, 31 - cmp r0, 0 - beq _081201BC - movs r0, 0x6 - b _0812028E - .align 2, 0 -_081201B8: .4byte gUnknown_203B09C -_081201BC: - movs r0, 0x7 - b _0812028E -_081201C0: - movs r0, 0 - ldrsb r0, [r4, r0] - cmp r0, 0 - bne _081201F8 - ldr r0, _081201E8 @ =gUnknown_203B09C - ldr r0, [r0] - ldrb r0, [r0, 0x8] - lsls r0, 28 - lsrs r6, r0, 29 - cmp r6, 0x3 - bne _081201F0 - ldr r0, _081201EC @ =gPlayerParty + 300 @ &gPlayerParty[3] - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08120290 - strb r6, [r4] - b _08120290 - .align 2, 0 -_081201E8: .4byte gUnknown_203B09C -_081201EC: .4byte gPlayerParty + 300 @ &gPlayerParty[3] -_081201F0: - ldr r0, _081201F4 @ =gPlayerParty + 200 @ &gPlayerParty[2] - b _0812020C - .align 2, 0 -_081201F4: .4byte gPlayerParty + 200 @ &gPlayerParty[2] -_081201F8: - cmp r0, 0x1 - bne _08120290 - ldr r0, _0812021C @ =gUnknown_203B09C - ldr r0, [r0] - ldrb r0, [r0, 0x8] - lsls r0, 28 - lsrs r5, r0, 29 - cmp r5, 0x5 - bne _08120224 - ldr r0, _08120220 @ =gPlayerParty + 500 @ &gPlayerParty[5] -_0812020C: - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08120290 - strb r5, [r4] - b _08120290 - .align 2, 0 -_0812021C: .4byte gUnknown_203B09C -_08120220: .4byte gPlayerParty + 500 @ &gPlayerParty[5] -_08120224: - ldr r0, _08120234 @ =gPlayerParty + 400 @ &gPlayerParty[4] - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08120290 - movs r0, 0x4 - b _0812028E - .align 2, 0 -_08120234: .4byte gPlayerParty + 400 @ &gPlayerParty[4] -_08120238: - ldrb r1, [r4] - subs r0, r1, 0x2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08120268 - ldr r0, _08120264 @ =gUnknown_203B09C - ldr r3, [r0] - movs r1, 0 - ldrsb r1, [r4, r1] - movs r0, 0x7 - ands r1, r0 - lsls r1, 1 - ldrb r2, [r3, 0x8] - movs r0, 0xF - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3, 0x8] - movs r0, 0 - b _0812028E - .align 2, 0 -_08120264: .4byte gUnknown_203B09C -_08120268: - subs r0, r1, 0x4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08120290 - ldr r0, _08120298 @ =gUnknown_203B09C - ldr r3, [r0] - movs r1, 0 - ldrsb r1, [r4, r1] - movs r0, 0x7 - ands r1, r0 - lsls r1, 1 - ldrb r2, [r3, 0x8] - movs r0, 0xF - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3, 0x8] - movs r0, 0x1 -_0812028E: - strb r0, [r4] -_08120290: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08120298: .4byte gUnknown_203B09C - thumb_func_end sub_81200F8 - - thumb_func_start sub_812029C -sub_812029C: @ 812029C - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - asrs r6, r1, 24 -_081202A6: - lsls r0, r5, 24 - asrs r0, 24 - adds r0, r6 - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, r5, 24 - lsrs r0, r1, 24 - cmp r0, 0x5 - bhi _081202D4 - asrs r4, r1, 24 - movs r0, 0x64 - muls r0, r4 - ldr r1, _081202D0 @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _081202A6 - adds r0, r4, 0 - b _081202D8 - .align 2, 0 -_081202D0: .4byte gPlayerParty -_081202D4: - movs r0, 0x1 - negs r0, r0 -_081202D8: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_812029C - - thumb_func_start GetMonNickname -GetMonNickname: @ 81202E0 - push {r4,lr} - adds r4, r1, 0 - movs r1, 0x2 - adds r2, r4, 0 - bl GetMonData - adds r0, r4, 0 - bl StringGetEnd10 - pop {r4} - pop {r1} - bx r1 - thumb_func_end GetMonNickname - - thumb_func_start sub_81202F8 -sub_81202F8: @ 81202F8 - push {r4,lr} - lsls r4, r1, 24 - lsrs r4, 24 - bl sub_8121FC0 - ldr r0, _08120320 @ =sub_8120328 - movs r1, 0x1 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08120324 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - strh r4, [r1, 0x8] - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08120320: .4byte sub_8120328 -_08120324: .4byte gTasks - thumb_func_end sub_81202F8 - - thumb_func_start sub_8120328 -sub_8120328: @ 8120328 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - movs r0, 0x6 - bl RunTextPrinters_CheckActive - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - beq _08120364 - ldr r0, _0812036C @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - movs r2, 0x8 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _0812035E - movs r0, 0x6 - movs r1, 0 - bl ClearStdWindowAndFrameToTransparent - movs r0, 0x6 - bl ClearWindowTilemap -_0812035E: - adds r0, r5, 0 - bl DestroyTask -_08120364: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0812036C: .4byte gTasks - thumb_func_end sub_8120328 - - thumb_func_start sub_8120370 -sub_8120370: @ 8120370 - push {lr} - ldr r0, _08120380 @ =sub_8120328 - bl FuncIsActiveTask - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_08120380: .4byte sub_8120328 - thumb_func_end sub_8120370 - - thumb_func_start sub_8120384 -sub_8120384: @ 8120384 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_80BF748 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081203AA - movs r0, 0 - bl sub_8121D0C - ldr r0, _081203B0 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _081203B4 @ =sub_811FB28 - str r0, [r1] -_081203AA: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081203B0: .4byte gTasks -_081203B4: .4byte sub_811FB28 - thumb_func_end sub_8120384 - - thumb_func_start sub_81203B8 -sub_81203B8: @ 81203B8 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08120410 - movs r0, 0x6 - movs r1, 0 - bl ClearStdWindowAndFrameToTransparent - movs r0, 0x6 - bl ClearWindowTilemap - bl MenuHelpers_LinkSomething - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081203FC - ldr r0, _081203F4 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _081203F8 @ =sub_8120384 - b _0812040E - .align 2, 0 -_081203F4: .4byte gTasks -_081203F8: .4byte sub_8120384 -_081203FC: - movs r0, 0 - bl sub_8121D0C - ldr r0, _08120418 @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _0812041C @ =sub_811FB28 -_0812040E: - str r0, [r1] -_08120410: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08120418: .4byte gTasks -_0812041C: .4byte sub_811FB28 - thumb_func_end sub_81203B8 - - thumb_func_start sub_8120420 -sub_8120420: @ 8120420 - push {r4-r6,lr} - adds r5, r0, 0 - lsls r1, 16 - lsrs r4, r1, 16 - lsls r2, 24 - lsrs r6, r2, 24 - lsls r3, 24 - cmp r3, 0 - bne _0812043C - ldr r3, _08120438 @ =0x0000ffff - movs r0, 0x5 - b _08120448 - .align 2, 0 -_08120438: .4byte 0x0000ffff -_0812043C: - ldr r0, _08120454 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0xB] - cmp r0, 0x6 - bne _0812045C - ldr r3, _08120458 @ =0x0000ffff - movs r0, 0x7 -_08120448: - adds r1, r5, 0 - adds r2, r4, 0 - bl ItemUse_SetQuestLogEvent - b _08120468 - .align 2, 0 -_08120454: .4byte gUnknown_203B0A0 -_08120458: .4byte 0x0000ffff -_0812045C: - ldr r3, _08120498 @ =0x0000ffff - movs r0, 0x6 - adds r1, r5, 0 - adds r2, r4, 0 - bl ItemUse_SetQuestLogEvent -_08120468: - ldr r1, _0812049C @ =gStringVar1 - adds r0, r5, 0 - bl GetMonNickname - ldr r1, _081204A0 @ =gStringVar2 - adds r0, r4, 0 - bl CopyItemName - ldr r4, _081204A4 @ =gStringVar4 - ldr r1, _081204A8 @ =gUnknown_8416C2A - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08120498: .4byte 0x0000ffff -_0812049C: .4byte gStringVar1 -_081204A0: .4byte gStringVar2 -_081204A4: .4byte gStringVar4 -_081204A8: .4byte gUnknown_8416C2A - thumb_func_end sub_8120420 - - thumb_func_start sub_81204AC -sub_81204AC: @ 81204AC - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r5, 24 - lsrs r5, 24 - ldr r3, _081204F8 @ =0x0000ffff - movs r0, 0x8 - adds r1, r6, 0 - adds r2, r4, 0 - bl ItemUse_SetQuestLogEvent - ldr r1, _081204FC @ =gStringVar1 - adds r0, r6, 0 - bl GetMonNickname - ldr r1, _08120500 @ =gStringVar2 - adds r0, r4, 0 - bl CopyItemName - ldr r4, _08120504 @ =gStringVar4 - ldr r1, _08120508 @ =gUnknown_8416CAC - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081204F8: .4byte 0x0000ffff -_081204FC: .4byte gStringVar1 -_08120500: .4byte gStringVar2 -_08120504: .4byte gStringVar4 -_08120508: .4byte gUnknown_8416CAC - thumb_func_end sub_81204AC - - thumb_func_start sub_812050C -sub_812050C: @ 812050C - push {r4,r5,lr} - adds r4, r1, 0 - adds r5, r2, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r5, 24 - lsrs r5, 24 - ldr r1, _08120548 @ =gStringVar1 - bl GetMonNickname - ldr r1, _0812054C @ =gStringVar2 - adds r0, r4, 0 - bl CopyItemName - ldr r4, _08120550 @ =gStringVar4 - ldr r1, _08120554 @ =gUnknown_8416C49 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08120548: .4byte gStringVar1 -_0812054C: .4byte gStringVar2 -_08120550: .4byte gStringVar4 -_08120554: .4byte gUnknown_8416C49 - thumb_func_end sub_812050C - - thumb_func_start sub_8120558 -sub_8120558: @ 8120558 - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r5, 16 - lsrs r5, 16 - lsls r6, 24 - lsrs r6, 24 - ldr r0, _081205B0 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _081205B4 @ =gPlayerParty - adds r0, r1 - adds r1, r5, 0 - adds r2, r4, 0 - bl sub_8124B60 - ldr r1, _081205B8 @ =gStringVar1 - adds r0, r4, 0 - bl CopyItemName - ldr r1, _081205BC @ =gStringVar2 - adds r0, r5, 0 - bl CopyItemName - ldr r4, _081205C0 @ =gStringVar4 - ldr r1, _081205C4 @ =gUnknown_8416CEA - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081205B0: .4byte gUnknown_203B0A0 -_081205B4: .4byte gPlayerParty -_081205B8: .4byte gStringVar1 -_081205BC: .4byte gStringVar2 -_081205C0: .4byte gStringVar4 -_081205C4: .4byte gUnknown_8416CEA - thumb_func_end sub_8120558 - - thumb_func_start sub_81205C8 -sub_81205C8: @ 81205C8 - push {r4-r7,lr} - sub sp, 0x4 - adds r6, r0, 0 - lsls r5, r1, 16 - lsrs r4, r5, 16 - adds r7, r4, 0 - adds r0, r4, 0 - bl ItemIsMail - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081205F2 - adds r0, r6, 0 - adds r1, r4, 0 - bl GiveMailToMon - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - beq _08120606 -_081205F2: - mov r0, sp - strb r7, [r0] - mov r1, sp - lsrs r0, r5, 24 - strb r0, [r1, 0x1] - adds r0, r6, 0 - movs r1, 0xC - mov r2, sp - bl SetMonData -_08120606: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_81205C8 - - thumb_func_start sub_8120610 -sub_8120610: @ 8120610 - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - mov r1, sp - strh r0, [r1] - cmp r0, 0 - bne _0812062C - movs r0, 0 - b _0812064E -_0812062C: - movs r1, 0x1 - bl AddBagItem - lsls r0, 24 - cmp r0, 0 - beq _0812064C - movs r1, 0 - mov r0, sp - strh r1, [r0] - adds r0, r4, 0 - movs r1, 0xC - mov r2, sp - bl SetMonData - movs r0, 0x2 - b _0812064E -_0812064C: - movs r0, 0x1 -_0812064E: - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8120610 - - thumb_func_start sub_8120658 -sub_8120658: @ 8120658 - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl ItemId_GetPocket - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - beq _08120678 - cmp r0, 0x5 - beq _0812067E - ldr r1, _08120674 @ =gStartMenuText_Bag - b _08120686 - .align 2, 0 -_08120674: .4byte gStartMenuText_Bag -_08120678: - movs r0, 0xB6 - lsls r0, 1 - b _08120680 -_0812067E: - ldr r0, _08120698 @ =0x0000016d -_08120680: - bl ItemId_GetName - adds r1, r0, 0 -_08120686: - ldr r0, _0812069C @ =gStringVar1 - bl StringCopy - ldr r0, _081206A0 @ =gStringVar4 - ldr r1, _081206A4 @ =gUnknown_8416D78 - bl StringExpandPlaceholders - pop {r0} - bx r0 - .align 2, 0 -_08120698: .4byte 0x0000016d -_0812069C: .4byte gStringVar1 -_081206A0: .4byte gStringVar4 -_081206A4: .4byte gUnknown_8416D78 - thumb_func_end sub_8120658 - - thumb_func_start sub_81206A8 -sub_81206A8: @ 81206A8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r0, 2 - add r0, r8 - lsls r0, 3 - ldr r1, _08120750 @ =gTasks+0x8 - adds r7, r0, r1 - ldrh r0, [r7, 0x4] - ldrh r1, [r7] - adds r0, r1 - strh r0, [r7] - ldrh r0, [r7, 0x6] - subs r0, 0x1 - strh r0, [r7, 0x6] - movs r2, 0x8 - ldrsh r0, [r7, r2] - movs r5, 0x64 - muls r0, r5 - ldr r4, _08120754 @ =gPlayerParty - adds r0, r4 - movs r1, 0x39 - adds r2, r7, 0 - bl SetMonData - movs r3, 0x8 - ldrsh r2, [r7, r3] - adds r0, r2, 0 - muls r0, r5 - adds r0, r4 - ldr r6, _08120758 @ =gUnknown_203B0B4 - lsls r2, 4 - ldr r1, [r6] - adds r1, r2 - movs r2, 0x1 - bl sub_812199C - movs r0, 0x8 - ldrsh r2, [r7, r0] - adds r0, r2, 0 - muls r0, r5 - adds r0, r4 - lsls r2, 4 - ldr r1, [r6] - adds r1, r2 - bl sub_8121AF0 - movs r1, 0x6 - ldrsh r0, [r7, r1] - cmp r0, 0 - beq _08120724 - movs r2, 0 - ldrsh r1, [r7, r2] - cmp r1, 0 - beq _08120724 - movs r3, 0x2 - ldrsh r0, [r7, r3] - cmp r1, r0 - bne _08120746 -_08120724: - movs r0, 0 - ldrsh r1, [r7, r0] - movs r2, 0xA - ldrsh r0, [r7, r2] - cmp r1, r0 - ble _08120740 - ldr r0, _0812075C @ =gStringVar2 - movs r3, 0xA - ldrsh r2, [r7, r3] - subs r1, r2 - movs r2, 0 - movs r3, 0x3 - bl ConvertIntToDecimalStringN -_08120740: - mov r0, r8 - bl SwitchTaskToFollowupFunc -_08120746: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08120750: .4byte gTasks+0x8 -_08120754: .4byte gPlayerParty -_08120758: .4byte gUnknown_203B0B4 -_0812075C: .4byte gStringVar2 - thumb_func_end sub_81206A8 - - thumb_func_start sub_8120760 -sub_8120760: @ 8120760 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r8, r0 - mov r9, r1 - adds r5, r2, 0 - mov r10, r3 - ldr r7, [sp, 0x20] - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - mov r0, r9 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r5, 24 - lsrs r5, 24 - mov r0, r10 - lsls r0, 16 - lsrs r0, 16 - mov r10, r0 - movs r0, 0x64 - mov r6, r9 - muls r6, r0 - ldr r0, _081207E4 @ =gPlayerParty - adds r6, r0 - mov r0, r8 - lsls r4, r0, 2 - add r4, r8 - lsls r4, 3 - ldr r0, _081207E8 @ =gTasks+0x8 - adds r4, r0 - adds r0, r6, 0 - movs r1, 0x39 - bl GetMonData - strh r0, [r4] - adds r0, r6, 0 - movs r1, 0x3A - bl GetMonData - strh r0, [r4, 0x2] - lsls r5, 24 - asrs r5, 24 - strh r5, [r4, 0x4] - mov r0, r10 - strh r0, [r4, 0x6] - mov r0, r9 - strh r0, [r4, 0x8] - ldrh r0, [r4] - strh r0, [r4, 0xA] - ldr r1, _081207EC @ =sub_81206A8 - mov r0, r8 - adds r2, r7, 0 - bl SetTaskFuncWithFollowupFunc - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081207E4: .4byte gPlayerParty -_081207E8: .4byte gTasks+0x8 -_081207EC: .4byte sub_81206A8 - thumb_func_end sub_8120760 - - thumb_func_start sub_81207F0 -sub_81207F0: @ 81207F0 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - ldr r1, _08120814 @ =gTasks+0x8 - adds r3, r0, r1 - cmp r5, 0x5 - bhi _08120852 - lsls r0, r5, 2 - ldr r1, _08120818 @ =_0812081C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08120814: .4byte gTasks+0x8 -_08120818: .4byte _0812081C - .align 2, 0 -_0812081C: - .4byte _08120834 - .4byte _0812083A - .4byte _0812083E - .4byte _08120842 - .4byte _08120846 - .4byte _0812084A -_08120834: - strh r2, [r3] - strh r2, [r3, 0xA] - b _08120852 -_0812083A: - strh r2, [r3, 0x2] - b _08120852 -_0812083E: - strh r2, [r3, 0x4] - b _08120852 -_08120842: - strh r2, [r3, 0x6] - b _08120852 -_08120846: - strh r2, [r3, 0x8] - b _08120852 -_0812084A: - ldr r1, _08120858 @ =sub_81206A8 - adds r0, r4, 0 - bl SetTaskFuncWithFollowupFunc -_08120852: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08120858: .4byte sub_81206A8 - thumb_func_end sub_81207F0 - - thumb_func_start pokemon_ailments_get_primary -pokemon_ailments_get_primary: @ 812085C - push {lr} - adds r1, r0, 0 - movs r0, 0x88 - ands r0, r1 - cmp r0, 0 - beq _0812086C - movs r0, 0x1 - b _0812089E -_0812086C: - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08120878 - movs r0, 0x2 - b _0812089E -_08120878: - movs r0, 0x7 - ands r0, r1 - cmp r0, 0 - beq _08120884 - movs r0, 0x3 - b _0812089E -_08120884: - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08120890 - movs r0, 0x4 - b _0812089E -_08120890: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _0812089C - movs r0, 0 - b _0812089E -_0812089C: - movs r0, 0x5 -_0812089E: - pop {r1} - bx r1 - thumb_func_end pokemon_ailments_get_primary - - thumb_func_start sub_81208A4 -sub_81208A4: @ 81208A4 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - bne _081208B6 - movs r0, 0x7 - b _081208DE -_081208B6: - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData - bl pokemon_ailments_get_primary - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _081208DE - adds r0, r4, 0 - movs r1, 0 - bl CheckPartyPokerus - lsls r0, 24 - cmp r0, 0 - bne _081208DC - movs r0, 0 - b _081208DE -_081208DC: - movs r0, 0x6 -_081208DE: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_81208A4 - - thumb_func_start sub_81208E4 -sub_81208E4: @ 81208E4 - push {r4,r5,lr} - ldr r2, _08120934 @ =gUnknown_203B0A0 - ldrb r1, [r2, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0xB - bne _0812096E - adds r5, r2, 0 - adds r5, 0xE - movs r0, 0 - strh r0, [r2, 0xE] - ldr r0, _08120938 @ =gSpecialVar_0x8005 - ldrh r0, [r0] - cmp r0, 0 - bne _08120944 - movs r4, 0 - ldr r0, _0812093C @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r4, r0 - bcs _0812096E -_0812090C: - movs r0, 0x64 - muls r0, r4 - ldr r1, _08120940 @ =gPlayerParty - adds r0, r1 - bl sub_812097C - lsls r0, 16 - lsrs r0, 16 - lsls r0, r4 - ldrh r1, [r5] - adds r0, r1 - strh r0, [r5] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0812093C @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r4, r0 - bcc _0812090C - b _0812096E - .align 2, 0 -_08120934: .4byte gUnknown_203B0A0 -_08120938: .4byte gSpecialVar_0x8005 -_0812093C: .4byte gPlayerPartyCount -_08120940: .4byte gPlayerParty -_08120944: - movs r4, 0 - b _08120966 -_08120948: - movs r0, 0x64 - muls r0, r4 - ldr r1, _08120974 @ =gPlayerParty - adds r0, r1 - bl sub_81209AC - lsls r0, 16 - lsrs r0, 16 - lsls r0, r4 - ldrh r1, [r5] - adds r0, r1 - strh r0, [r5] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 -_08120966: - ldr r0, _08120978 @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r4, r0 - bcc _08120948 -_0812096E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08120974: .4byte gPlayerParty -_08120978: .4byte gPlayerPartyCount - thumb_func_end sub_81208E4 - - thumb_func_start sub_812097C -sub_812097C: @ 812097C - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0x1 - beq _081209A2 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - bl sub_8149A00 - cmp r0, 0 - beq _081209A2 - movs r0, 0x1 - b _081209A4 -_081209A2: - movs r0, 0 -_081209A4: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_812097C - - thumb_func_start sub_81209AC -sub_81209AC: @ 81209AC - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0x1 - beq _081209CA - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0x55 - bne _081209CA - movs r0, 0x1 - b _081209CC -_081209CA: - movs r0, 0 -_081209CC: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_81209AC - - thumb_func_start sub_81209D4 -sub_81209D4: @ 81209D4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _081209F0 @ =gUnknown_203B0A0 - movs r2, 0xE - ldrsh r1, [r1, r2] - asrs r1, r0 - movs r0, 0x1 - ands r1, r0 - cmp r1, 0 - bne _081209EC - movs r0, 0 -_081209EC: - pop {r1} - bx r1 - .align 2, 0 -_081209F0: .4byte gUnknown_203B0A0 - thumb_func_end sub_81209D4 - - thumb_func_start sub_81209F4 -sub_81209F4: @ 81209F4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - adds r0, r5, 0 - bl sub_81209D4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08120A24 - movs r0, 0x5 - bl PlaySE - ldr r0, _08120A20 @ =gSpecialVar_0x8004 - strh r5, [r0] - adds r0, r4, 0 - bl sub_811FA78 - b _08120A46 - .align 2, 0 -_08120A20: .4byte gSpecialVar_0x8004 -_08120A24: - movs r0, 0x1A - bl PlaySE - ldr r0, _08120A4C @ =gUnknown_8417696 - movs r1, 0 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08120A50 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08120A54 @ =sub_81203B8 - str r1, [r0] -_08120A46: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08120A4C: .4byte gUnknown_8417696 -_08120A50: .4byte gTasks -_08120A54: .4byte sub_81203B8 - thumb_func_end sub_81209F4 - - thumb_func_start sub_8120A58 -sub_8120A58: @ 8120A58 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _08120A84 @ =gUnknown_84176B8 - movs r1, 0x1 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08120A88 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08120A8C @ =sub_8120A90 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08120A84: .4byte gUnknown_84176B8 -_08120A88: .4byte gTasks -_08120A8C: .4byte sub_8120A90 - thumb_func_end sub_8120A58 - - thumb_func_start sub_8120A90 -sub_8120A90: @ 8120A90 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08120AB4 - bl sub_812200C - ldr r0, _08120ABC @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08120AC0 @ =sub_8120AC4 - str r0, [r1] -_08120AB4: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08120ABC: .4byte gTasks -_08120AC0: .4byte sub_8120AC4 - thumb_func_end sub_8120A90 - - thumb_func_start sub_8120AC4 -sub_8120AC4: @ 8120AC4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl Menu_ProcessInputNoWrapClearOnChoose - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _08120AEA - cmp r1, 0 - bgt _08120AE4 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08120AFC - b _08120B10 -_08120AE4: - cmp r1, 0x1 - beq _08120B02 - b _08120B10 -_08120AEA: - ldr r1, _08120AF8 @ =gSpecialVar_0x8004 - movs r0, 0x7 - strh r0, [r1] - adds r0, r4, 0 - bl sub_811FA78 - b _08120B10 - .align 2, 0 -_08120AF8: .4byte gSpecialVar_0x8004 -_08120AFC: - movs r0, 0x5 - bl PlaySE -_08120B02: - ldr r0, _08120B18 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08120B1C @ =sub_81203B8 - str r0, [r1] -_08120B10: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08120B18: .4byte gTasks -_08120B1C: .4byte sub_81203B8 - thumb_func_end sub_8120AC4 - - thumb_func_start sub_8120B20 -sub_8120B20: @ 8120B20 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r0, 0 - lsls r1, 16 - lsrs r4, r1, 16 - adds r7, r4, 0 - lsls r2, 24 - lsrs r6, r2, 24 - mov r8, r6 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - beq _08120B42 - movs r0, 0x3 - b _08120B9E -_08120B42: - movs r0, 0x90 - lsls r0, 1 - cmp r4, r0 - bls _08120B64 - adds r1, r4, 0 - subs r1, 0x21 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl CanMonLearnTMHM - cmp r0, 0 - beq _08120B7C - adds r0, r7, 0 - bl ItemIdToBattleMoveId - b _08120B86 -_08120B64: - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - adds r1, r6, 0 - bl IsMonCompatibleWithMoveTutorMove - lsls r0, 24 - cmp r0, 0 - bne _08120B80 -_08120B7C: - movs r0, 0x1 - b _08120B9E -_08120B80: - mov r0, r8 - bl GetMoveTutorMove -_08120B86: - lsls r0, 16 - lsrs r1, r0, 16 - adds r0, r5, 0 - bl MonKnowsMove - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08120B9C - movs r0, 0 - b _08120B9E -_08120B9C: - movs r0, 0x2 -_08120B9E: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8120B20 - - thumb_func_start GetMoveTutorMove -GetMoveTutorMove: @ 8120BA8 - push {lr} - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x10 - beq _08120BC8 - cmp r1, 0x10 - bgt _08120BBC - cmp r1, 0xF - beq _08120BC2 - b _08120BD6 -_08120BBC: - cmp r1, 0x11 - beq _08120BD0 - b _08120BD6 -_08120BC2: - movs r0, 0xA9 - lsls r0, 1 @ MOVE_FRENZY_PLANT - b _08120BDE -_08120BC8: - ldr r0, _08120BCC @ =0x00000133 @ MOVE_BLAST_BURN - b _08120BDE - .align 2, 0 -_08120BCC: .4byte 0x00000133 -_08120BD0: - movs r0, 0x9A - lsls r0, 1 @ MOVE_HYDRO_CANNON - b _08120BDE -_08120BD6: - ldr r0, _08120BE4 @ =gMoveTutorMoves - lsls r1, 1 - adds r1, r0 - ldrh r0, [r1] -_08120BDE: - pop {r1} - bx r1 - .align 2, 0 -_08120BE4: .4byte gMoveTutorMoves - thumb_func_end GetMoveTutorMove - - thumb_func_start IsMonCompatibleWithMoveTutorMove -IsMonCompatibleWithMoveTutorMove: @ 8120BE8 - push {lr} - lsls r0, 16 - lsrs r0, 16 - lsls r1, 24 - lsrs r2, r1, 24 - cmp r2, 0x10 - beq _08120C0C - cmp r2, 0x10 - bgt _08120C00 - cmp r2, 0xF - beq _08120C06 - b _08120C18 -_08120C00: - cmp r2, 0x11 - beq _08120C12 - b _08120C18 -_08120C06: - cmp r0, 3 @ SPECIES_VENUSAUR - beq _08120C34 - b _08120C2A -_08120C0C: - cmp r0, 6 @ SPECIES_CHARIZARD - beq _08120C34 - b _08120C2A -_08120C12: - cmp r0, 9 @ SPECIES_BLASTOISE - beq _08120C34 - b _08120C2A -_08120C18: - ldr r1, _08120C30 @ =gMoveTutorMoveCompatibilityTable - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] - asrs r0, r2 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08120C34 -_08120C2A: - movs r0, 0 - b _08120C36 - .align 2, 0 -_08120C30: .4byte gMoveTutorMoveCompatibilityTable -_08120C34: - movs r0, 0x1 -_08120C36: - pop {r1} - bx r1 - thumb_func_end IsMonCompatibleWithMoveTutorMove - - thumb_func_start sub_8120C3C -sub_8120C3C: @ 8120C3C - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, _08120C60 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08120C5C - ldr r0, _08120C64 @ =gTasks - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldr r0, _08120C68 @ =sub_8120C6C - str r0, [r1] -_08120C5C: - pop {r0} - bx r0 - .align 2, 0 -_08120C60: .4byte gPaletteFade -_08120C64: .4byte gTasks -_08120C68: .4byte sub_8120C6C - thumb_func_end sub_8120C3C - - thumb_func_start sub_8120C6C -sub_8120C6C: @ 8120C6C - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _08120C9C @ =0xffff1fff - movs r1, 0 - str r1, [sp] - movs r1, 0x4 - movs r2, 0 - movs r3, 0x6 - bl BeginNormalPaletteFade - ldr r1, _08120CA0 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08120CA4 @ =sub_8120CA8 - str r1, [r0] - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08120C9C: .4byte 0xffff1fff -_08120CA0: .4byte gTasks -_08120CA4: .4byte sub_8120CA8 - thumb_func_end sub_8120C6C - - thumb_func_start sub_8120CA8 -sub_8120CA8: @ 8120CA8 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, _08120CCC @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08120CC8 - ldr r0, _08120CD0 @ =gTasks - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldr r0, _08120CD4 @ =sub_8120CD8 - str r0, [r1] -_08120CC8: - pop {r0} - bx r0 - .align 2, 0 -_08120CCC: .4byte gPaletteFade -_08120CD0: .4byte gTasks -_08120CD4: .4byte sub_8120CD8 - thumb_func_end sub_8120CA8 - - thumb_func_start sub_8120CD8 -sub_8120CD8: @ 8120CD8 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_81220D4 - ldr r2, _08120D00 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r2 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r1, 0x8] - ldr r0, _08120D04 @ =sub_8120D08 - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08120D00: .4byte gTasks -_08120D04: .4byte sub_8120D08 - thumb_func_end sub_8120CD8 - - thumb_func_start sub_8120D08 -sub_8120D08: @ 8120D08 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r4, r1, 3 - ldr r5, _08120D38 @ =gTasks+0x8 - adds r0, r4, r5 - ldrb r0, [r0] - bl RunTextPrinters_CheckActive - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - beq _08120D30 - adds r0, r5, 0 - subs r0, 0x8 - adds r0, r4, r0 - ldr r1, _08120D3C @ =sub_8120D40 - str r1, [r0] -_08120D30: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08120D38: .4byte gTasks+0x8 -_08120D3C: .4byte sub_8120D40 - thumb_func_end sub_8120D08 - - thumb_func_start sub_8120D40 -sub_8120D40: @ 8120D40 - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _08120D70 @ =0xffff0008 - movs r1, 0 - str r1, [sp] - movs r1, 0x4 - movs r2, 0x6 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r1, _08120D74 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08120D78 @ =sub_8120D7C - str r1, [r0] - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08120D70: .4byte 0xffff0008 -_08120D74: .4byte gTasks -_08120D78: .4byte sub_8120D7C - thumb_func_end sub_8120D40 - - thumb_func_start sub_8120D7C -sub_8120D7C: @ 8120D7C - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, _08120DA0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08120D9C - ldr r0, _08120DA4 @ =gTasks - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldr r0, _08120DA8 @ =sub_8120DAC - str r0, [r1] -_08120D9C: - pop {r0} - bx r0 - .align 2, 0 -_08120DA0: .4byte gPaletteFade -_08120DA4: .4byte gTasks -_08120DA8: .4byte sub_8120DAC - thumb_func_end sub_8120D7C - - thumb_func_start sub_8120DAC -sub_8120DAC: @ 8120DAC - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r4, r0, 2 - adds r4, r0 - lsls r4, 3 - ldr r5, _08120DD4 @ =gTasks+0x8 - adds r0, r4, r5 - ldrb r0, [r0] - ldr r1, _08120DD8 @ =gUnknown_8417494 - bl sub_8122084 - subs r5, 0x8 - adds r4, r5 - ldr r0, _08120DDC @ =sub_8120DE0 - str r0, [r4] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08120DD4: .4byte gTasks+0x8 -_08120DD8: .4byte gUnknown_8417494 -_08120DDC: .4byte sub_8120DE0 - thumb_func_end sub_8120DAC - - thumb_func_start sub_8120DE0 -sub_8120DE0: @ 8120DE0 - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r5, r1, 3 - ldr r6, _08120E14 @ =gTasks+0x8 - adds r4, r5, r6 - ldrb r0, [r4] - bl RunTextPrinters_CheckActive - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - beq _08120E0E - ldrb r0, [r4] - bl sub_8122110 - adds r0, r6, 0 - subs r0, 0x8 - adds r0, r5, r0 - ldr r1, _08120E18 @ =sub_8120E1C - str r1, [r0] -_08120E0E: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08120E14: .4byte gTasks+0x8 -_08120E18: .4byte sub_8120E1C - thumb_func_end sub_8120DE0 - - thumb_func_start sub_8120E1C -sub_8120E1C: @ 8120E1C - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _08120E4C @ =0x0000fff7 - movs r1, 0 - str r1, [sp] - movs r1, 0x4 - movs r2, 0x6 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r1, _08120E50 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08120E54 @ =sub_8120E58 - str r1, [r0] - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08120E4C: .4byte 0x0000fff7 -_08120E50: .4byte gTasks -_08120E54: .4byte sub_8120E58 - thumb_func_end sub_8120E1C - - thumb_func_start sub_8120E58 -sub_8120E58: @ 8120E58 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08120E90 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08120EAC - movs r0, 0 - movs r1, 0x4F - movs r2, 0xD0 - bl TextWindow_SetUserSelectedFrame - movs r0, 0 - movs r1, 0x58 - movs r2, 0xF0 - bl TextWindow_SetStdFrame0_WithPal - ldr r0, _08120E94 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0xB] - cmp r0, 0x3 - bne _08120E98 - movs r0, 0x5 - bl sub_8121D0C - b _08120E9E - .align 2, 0 -_08120E90: .4byte gPaletteFade -_08120E94: .4byte gUnknown_203B0A0 -_08120E98: - movs r0, 0 - bl sub_8121D0C -_08120E9E: - ldr r0, _08120EB4 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08120EB8 @ =sub_811FB28 - str r0, [r1] -_08120EAC: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08120EB4: .4byte gTasks -_08120EB8: .4byte sub_811FB28 - thumb_func_end sub_8120E58 - - thumb_func_start sub_8120EBC -sub_8120EBC: @ 8120EBC - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _08120ED8 @ =gTasks+0x8 - adds r3, r1, r0 - movs r2, 0 - strh r2, [r3] - subs r0, 0x8 - adds r1, r0 - ldr r0, _08120EDC @ =sub_8120EE0 - str r0, [r1] - bx lr - .align 2, 0 -_08120ED8: .4byte gTasks+0x8 -_08120EDC: .4byte sub_8120EE0 - thumb_func_end sub_8120EBC - - thumb_func_start sub_8120EE0 -sub_8120EE0: @ 8120EE0 - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, _08120F1C @ =gTasks+0x8 - adds r6, r0, r1 - ldr r0, _08120F20 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08120F68 - adds r0, r5, 0 - bl sub_8120F78 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08120F68 - movs r1, 0 - ldrsh r0, [r6, r1] - cmp r0, 0xA0 - beq _08120F38 - cmp r0, 0xA0 - bgt _08120F24 - cmp r0, 0x50 - beq _08120F2A - b _08120F62 - .align 2, 0 -_08120F1C: .4byte gTasks+0x8 -_08120F20: .4byte gPaletteFade -_08120F24: - cmp r0, 0xF0 - beq _08120F44 - b _08120F62 -_08120F2A: - ldr r0, _08120F34 @ =gUnknown_203B0A9 - movs r1, 0x2 - bl sub_811FF94 - b _08120F62 - .align 2, 0 -_08120F34: .4byte gUnknown_203B0A9 -_08120F38: - movs r0, 0x5 - bl PlaySE - bl sub_8122BD4 - b _08120F62 -_08120F44: - ldr r4, _08120F70 @ =gUnknown_203B09C - ldr r0, [r4] - adds r0, 0xE - bl sub_8121CE4 - ldr r1, _08120F74 @ =gUnknown_845A618 - ldr r0, [r4] - ldrb r0, [r0, 0xF] - lsls r0, 3 - adds r1, 0x4 - adds r0, r1 - ldr r1, [r0] - adds r0, r5, 0 - bl _call_via_r1 -_08120F62: - ldrh r0, [r6] - adds r0, 0x1 - strh r0, [r6] -_08120F68: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08120F70: .4byte gUnknown_203B09C -_08120F74: .4byte gUnknown_845A618 - thumb_func_end sub_8120EE0 - - thumb_func_start sub_8120F78 -sub_8120F78: @ 8120F78 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, _08120F90 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08120F94 - movs r0, 0 - b _08120FA4 - .align 2, 0 -_08120F90: .4byte gMain -_08120F94: - ldr r0, _08120FA8 @ =gUnknown_203B09C - ldr r1, [r0] - ldr r0, _08120FAC @ =sub_8120FB0 - str r0, [r1, 0x4] - adds r0, r2, 0 - bl sub_811FA78 - movs r0, 0x1 -_08120FA4: - pop {r1} - bx r1 - .align 2, 0 -_08120FA8: .4byte gUnknown_203B09C -_08120FAC: .4byte sub_8120FB0 - thumb_func_end sub_8120F78 - - thumb_func_start sub_8120FB0 -sub_8120FB0: @ 8120FB0 - push {lr} - bl FreeRestoreBattleData - bl LoadPlayerParty - bl SetTeachyTvControllerModeToResume - ldr r0, _08120FC8 @ =CB2_ReturnToTeachyTV - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_08120FC8: .4byte CB2_ReturnToTeachyTV - thumb_func_end sub_8120FB0 - - thumb_func_start sub_8120FCC -sub_8120FCC: @ 8120FCC - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _08120FE8 @ =gTasks+0x8 - adds r3, r1, r0 - movs r2, 0 - strh r2, [r3] - subs r0, 0x8 - adds r1, r0 - ldr r0, _08120FEC @ =sub_8120FF0 - str r0, [r1] - bx lr - .align 2, 0 -_08120FE8: .4byte gTasks+0x8 -_08120FEC: .4byte sub_8120FF0 - thumb_func_end sub_8120FCC - - thumb_func_start sub_8120FF0 -sub_8120FF0: @ 8120FF0 - push {r4,r5,lr} - lsls r0, 24 - lsrs r2, r0, 24 - adds r5, r2, 0 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, _0812102C @ =gTasks+0x8 - adds r4, r0, r1 - ldr r0, _08121030 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08121048 - adds r0, r2, 0 - bl sub_8120F78 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08121048 - ldrh r1, [r4] - movs r2, 0 - ldrsh r0, [r4, r2] - cmp r0, 0x50 - beq _08121034 - adds r0, r1, 0x1 - strh r0, [r4] - b _08121048 - .align 2, 0 -_0812102C: .4byte gTasks+0x8 -_08121030: .4byte gPaletteFade -_08121034: - ldr r0, _08121050 @ =gUnknown_203B09C - ldr r1, [r0] - ldr r0, _08121054 @ =sub_8128184 - str r0, [r1, 0x4] - ldr r0, _08121058 @ =gUnknown_3005E98 - ldr r1, _0812105C @ =sub_81255BC - ldr r2, [r0] - adds r0, r5, 0 - bl _call_via_r2 -_08121048: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08121050: .4byte gUnknown_203B09C -_08121054: .4byte sub_8128184 -_08121058: .4byte gUnknown_3005E98 -_0812105C: .4byte sub_81255BC - thumb_func_end sub_8120FF0 - - thumb_func_start sub_8121060 -sub_8121060: @ 8121060 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - cmp r0, 0x1 - beq _08121088 - cmp r0, 0x1 - bgt _08121076 - cmp r0, 0 - beq _0812107C - b _081210A0 -_08121076: - cmp r1, 0x2 - beq _08121094 - b _081210A0 -_0812107C: - ldr r0, _08121084 @ =gUnknown_845A010 - bl InitWindows - b _081210A6 - .align 2, 0 -_08121084: .4byte gUnknown_845A010 -_08121088: - ldr r0, _08121090 @ =gUnknown_845A050 - bl InitWindows - b _081210A6 - .align 2, 0 -_08121090: .4byte gUnknown_845A050 -_08121094: - ldr r0, _0812109C @ =gUnknown_845A090 - bl InitWindows - b _081210A6 - .align 2, 0 -_0812109C: .4byte gUnknown_845A090 -_081210A0: - ldr r0, _081210F4 @ =gUnknown_845A0D0 - bl InitWindows -_081210A6: - bl DeactivateAllTextPrinters - movs r4, 0 -_081210AC: - adds r0, r4, 0 - movs r1, 0 - bl FillWindowPixelBuffer - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x5 - bls _081210AC - movs r0, 0 - movs r1, 0x4F - movs r2, 0xD0 - bl TextWindow_SetUserSelectedFrame - movs r0, 0 - movs r1, 0x58 - movs r2, 0xF0 - bl TextWindow_SetStdFrame0_WithPal - movs r0, 0x2 - bl stdpal_get - movs r1, 0xC0 - movs r2, 0x20 - bl LoadPalette - movs r0, 0 - bl stdpal_get - movs r1, 0xE0 - movs r2, 0x20 - bl LoadPalette - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081210F4: .4byte gUnknown_845A0D0 - thumb_func_end sub_8121060 - - thumb_func_start sub_81210F8 -sub_81210F8: @ 81210F8 - push {r4-r6,lr} - sub sp, 0x14 - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, _08121174 @ =gUnknown_203B0A0 - ldrb r1, [r0, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x5 - bne _0812110E - b _08121238 -_0812110E: - cmp r2, 0x1 - bne _08121188 - ldr r0, _08121178 @ =gUnknown_845A118 - bl AddWindow - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - movs r1, 0 - bl FillWindowPixelBuffer - ldr r5, _0812117C @ =gUnknown_84169D5 - movs r0, 0 - adds r1, r5, 0 - movs r2, 0 - bl GetStringWidth - movs r2, 0x30 - subs r2, r0 - lsrs r2, 1 - lsls r2, 24 - lsrs r2, 24 - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - ldr r0, _08121180 @ =gUnknown_8459FFC - str r0, [sp, 0x8] - movs r0, 0x1 - negs r0, r0 - str r0, [sp, 0xC] - str r5, [sp, 0x10] - adds r0, r4, 0 - movs r1, 0 - movs r3, 0x1 - bl AddTextPrinterParameterized4 - adds r0, r4, 0 - bl PutWindowTilemap - adds r0, r4, 0 - movs r1, 0x2 - bl CopyWindowToVram - ldr r0, _08121184 @ =gUnknown_845A110 - bl AddWindow - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 - b _08121194 - .align 2, 0 -_08121174: .4byte gUnknown_203B0A0 -_08121178: .4byte gUnknown_845A118 -_0812117C: .4byte gUnknown_84169D5 -_08121180: .4byte gUnknown_8459FFC -_08121184: .4byte gUnknown_845A110 -_08121188: - ldr r0, _081211E0 @ =gUnknown_845A108 - bl AddWindow - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0x3 -_08121194: - adds r0, r6, 0 - movs r1, 0 - bl FillWindowPixelBuffer - ldr r0, _081211E4 @ =gUnknown_203B0A0 - ldrb r1, [r0, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0xA - beq _081211F0 - ldr r4, _081211E8 @ =gFameCheckerText_Cancel - movs r0, 0 - adds r1, r4, 0 - movs r2, 0 - bl GetStringWidth - movs r1, 0x30 - subs r1, r0 - lsrs r0, r1, 31 - adds r1, r0 - asrs r1, 1 - adds r1, r5, r1 - lsls r1, 24 - lsrs r5, r1, 24 - ldr r0, _081211EC @ =gUnknown_8459FFC - str r0, [sp] - movs r0, 0x1 - negs r0, r0 - str r0, [sp, 0x4] - str r4, [sp, 0x8] - adds r0, r6, 0 - movs r1, 0 - adds r2, r5, 0 - movs r3, 0x1 - bl AddTextPrinterParameterized3 - b _08121224 - .align 2, 0 -_081211E0: .4byte gUnknown_845A108 -_081211E4: .4byte gUnknown_203B0A0 -_081211E8: .4byte gFameCheckerText_Cancel -_081211EC: .4byte gUnknown_8459FFC -_081211F0: - ldr r4, _08121240 @ =gOtherText_Exit - movs r0, 0 - adds r1, r4, 0 - movs r2, 0 - bl GetStringWidth - movs r1, 0x30 - subs r1, r0 - lsrs r0, r1, 31 - adds r1, r0 - asrs r1, 1 - adds r1, r5, r1 - lsls r1, 24 - lsrs r5, r1, 24 - ldr r0, _08121244 @ =gUnknown_8459FFC - str r0, [sp] - movs r0, 0x1 - negs r0, r0 - str r0, [sp, 0x4] - str r4, [sp, 0x8] - adds r0, r6, 0 - movs r1, 0 - adds r2, r5, 0 - movs r3, 0x1 - bl AddTextPrinterParameterized3 -_08121224: - adds r0, r6, 0 - bl PutWindowTilemap - adds r0, r6, 0 - movs r1, 0x2 - bl CopyWindowToVram - movs r0, 0 - bl ScheduleBgCopyTilemapToVram -_08121238: - add sp, 0x14 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08121240: .4byte gOtherText_Exit -_08121244: .4byte gUnknown_8459FFC - thumb_func_end sub_81210F8 - - thumb_func_start sub_8121248 -sub_8121248: @ 8121248 - lsls r0, 24 - ldr r1, _08121258 @ =gUnknown_203B09C - lsrs r0, 23 - adds r0, 0x18 - ldr r1, [r1] - adds r1, r0 - adds r0, r1, 0 - bx lr - .align 2, 0 -_08121258: .4byte gUnknown_203B09C - thumb_func_end sub_8121248 - - thumb_func_start sub_812125C -sub_812125C: @ 812125C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x2C - str r1, [sp, 0xC] - ldr r1, [sp, 0x4C] - ldr r4, [sp, 0x50] - ldr r5, [sp, 0x54] - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x8] - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x10] - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0x14] - lsls r1, 24 - lsrs r1, 24 - str r1, [sp, 0x18] - lsls r4, 24 - lsrs r6, r4, 24 - lsls r5, 24 - lsrs r5, 24 - mov r10, r5 - mov r0, r10 - muls r0, r6 - lsls r0, 5 - bl AllocZeroed - mov r9, r0 - cmp r0, 0 - beq _0812132A - movs r5, 0 - ldr r0, [sp, 0x14] - lsls r0, 19 - str r0, [sp, 0x1C] - ldr r1, [sp, 0x18] - lsls r1, 19 - str r1, [sp, 0x20] - lsls r2, r6, 19 - str r2, [sp, 0x24] - mov r0, r10 - lsls r0, 19 - str r0, [sp, 0x28] - cmp r5, r10 - bcs _08121308 -_081212BE: - movs r4, 0 - adds r1, r5, 0x1 - mov r8, r1 - cmp r4, r6 - bcs _081212FE - ldr r2, [sp, 0x18] - adds r0, r2, r5 - ldr r2, [sp, 0x10] - adds r1, r0, 0 - muls r1, r2 - adds r7, r1, 0 -_081212D4: - ldr r1, [sp, 0x14] - adds r0, r1, r4 - adds r0, r7 - ldr r2, [sp, 0xC] - adds r0, r2, r0 - ldrb r0, [r0] - bl sub_811F620 - adds r1, r5, 0 - muls r1, r6 - adds r1, r4 - lsls r1, 5 - add r1, r9 - movs r2, 0x10 - bl CpuSet - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, r6 - bcc _081212D4 -_081212FE: - mov r1, r8 - lsls r0, r1, 24 - lsrs r5, r0, 24 - cmp r5, r10 - bcc _081212BE -_08121308: - ldr r0, [sp, 0x1C] - lsrs r2, r0, 16 - ldr r1, [sp, 0x20] - lsrs r3, r1, 16 - ldr r1, [sp, 0x24] - lsrs r0, r1, 16 - str r0, [sp] - ldr r1, [sp, 0x28] - lsrs r0, r1, 16 - str r0, [sp, 0x4] - ldr r0, [sp, 0x8] - mov r1, r9 - bl BlitBitmapToWindow - mov r0, r9 - bl Free -_0812132A: - add sp, 0x2C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_812125C - - thumb_func_start sub_812133C -sub_812133C: @ 812133C - push {r4-r6,lr} - sub sp, 0xC - ldr r4, [sp, 0x1C] - ldr r5, [sp, 0x20] - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r6, r1, 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 - cmp r3, 0 - bne _08121368 - cmp r4, 0 - bne _08121368 - movs r3, 0xA - movs r4, 0x7 -_08121368: - cmp r5, 0 - bne _08121384 - ldr r1, _08121380 @ =gUnknown_845A180 - str r2, [sp] - str r3, [sp, 0x4] - str r4, [sp, 0x8] - movs r2, 0xA - adds r3, r6, 0 - bl sub_812125C - b _08121394 - .align 2, 0 -_08121380: .4byte gUnknown_845A180 -_08121384: - ldr r1, _0812139C @ =gUnknown_845A1C6 - str r2, [sp] - str r3, [sp, 0x4] - str r4, [sp, 0x8] - movs r2, 0xA - adds r3, r6, 0 - bl sub_812125C -_08121394: - add sp, 0xC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0812139C: .4byte gUnknown_845A1C6 - thumb_func_end sub_812133C - - thumb_func_start sub_81213A0 -sub_81213A0: @ 81213A0 - push {r4-r6,lr} - sub sp, 0xC - ldr r4, [sp, 0x1C] - ldr r5, [sp, 0x20] - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r6, r1, 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 - cmp r3, 0 - bne _081213CC - cmp r4, 0 - bne _081213CC - movs r3, 0x12 - movs r4, 0x3 -_081213CC: - cmp r5, 0 - bne _081213E8 - ldr r1, _081213E4 @ =gUnknown_845A20C - str r2, [sp] - str r3, [sp, 0x4] - str r4, [sp, 0x8] - movs r2, 0x12 - adds r3, r6, 0 - bl sub_812125C - b _081213F8 - .align 2, 0 -_081213E4: .4byte gUnknown_845A20C -_081213E8: - ldr r1, _08121400 @ =gUnknown_845A242 - str r2, [sp] - str r3, [sp, 0x4] - str r4, [sp, 0x8] - movs r2, 0x12 - adds r3, r6, 0 - bl sub_812125C -_081213F8: - add sp, 0xC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08121400: .4byte gUnknown_845A242 - thumb_func_end sub_81213A0 - - thumb_func_start sub_8121404 -sub_8121404: @ 8121404 - push {lr} - sub sp, 0xC - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08121428 @ =gUnknown_845A278 - movs r2, 0 - str r2, [sp] - movs r2, 0x12 - str r2, [sp, 0x4] - movs r2, 0x3 - str r2, [sp, 0x8] - movs r2, 0x12 - movs r3, 0 - bl sub_812125C - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_08121428: .4byte gUnknown_845A278 - thumb_func_end sub_8121404 - - thumb_func_start sub_812142C -sub_812142C: @ 812142C - push {r4-r7,lr} - lsls r1, 24 - lsrs r4, r1, 24 - adds r5, r4, 0 - ldrb r0, [r0, 0x8] - movs r1, 0x5 - bl GetWindowAttribute - lsls r0, 28 - lsrs r6, r0, 24 - adds r7, r6, 0 - movs r0, 0x20 - ands r0, r4 - cmp r0, 0 - beq _081214A0 - movs r0, 0x1 - ands r0, r4 - cmp r0, 0 - beq _0812145C - ldr r5, _08121458 @ =gUnknown_845A2D4 - b _0812160A - .align 2, 0 -_08121458: .4byte gUnknown_845A2D4 -_0812145C: - ldr r5, _08121494 @ =gUnknown_845A2D4 - ldrb r0, [r5] - bl sub_8121248 - ldr r4, _08121498 @ =gUnknown_845A2B2 - ldrb r1, [r4] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x1] - bl sub_8121248 - ldrb r1, [r4, 0x1] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x2] - bl sub_8121248 - ldrb r1, [r4, 0x2] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldr r5, _0812149C @ =gUnknown_845A2E3 - b _0812163E - .align 2, 0 -_08121494: .4byte gUnknown_845A2D4 -_08121498: .4byte gUnknown_845A2B2 -_0812149C: .4byte gUnknown_845A2E3 -_081214A0: - movs r0, 0x10 - ands r0, r4 - cmp r0, 0 - beq _081214EC - ldr r5, _081214E0 @ =gUnknown_845A2D4 - ldrb r0, [r5] - bl sub_8121248 - ldr r4, _081214E4 @ =gUnknown_845A2B2 - ldrb r1, [r4] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x1] - bl sub_8121248 - ldrb r1, [r4, 0x1] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x2] - bl sub_8121248 - ldrb r1, [r4, 0x2] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldr r5, _081214E8 @ =gUnknown_845A2E3 - b _0812163E - .align 2, 0 -_081214E0: .4byte gUnknown_845A2D4 -_081214E4: .4byte gUnknown_845A2B2 -_081214E8: .4byte gUnknown_845A2E3 -_081214EC: - movs r0, 0x4 - ands r0, r4 - cmp r0, 0 - beq _08121548 - movs r0, 0x1 - ands r0, r4 - cmp r0, 0 - beq _08121504 - ldr r5, _08121500 @ =gUnknown_845A2D4 - b _0812160A - .align 2, 0 -_08121500: .4byte gUnknown_845A2D4 -_08121504: - ldr r5, _0812153C @ =gUnknown_845A2D4 - ldrb r0, [r5] - bl sub_8121248 - ldr r4, _08121540 @ =gUnknown_845A2B2 - ldrb r1, [r4] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x1] - bl sub_8121248 - ldrb r1, [r4, 0x1] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x2] - bl sub_8121248 - ldrb r1, [r4, 0x2] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldr r5, _08121544 @ =gUnknown_845A2E3 - b _0812163E - .align 2, 0 -_0812153C: .4byte gUnknown_845A2D4 -_08121540: .4byte gUnknown_845A2B2 -_08121544: .4byte gUnknown_845A2E3 -_08121548: - movs r0, 0x2 - ands r0, r4 - cmp r0, 0 - beq _081215A4 - movs r0, 0x1 - ands r0, r4 - cmp r0, 0 - beq _08121560 - ldr r5, _0812155C @ =gUnknown_845A2D1 - b _0812160A - .align 2, 0 -_0812155C: .4byte gUnknown_845A2D1 -_08121560: - ldr r5, _08121598 @ =gUnknown_845A2C8 - ldrb r0, [r5] - bl sub_8121248 - ldr r4, _0812159C @ =gUnknown_845A2B2 - ldrb r1, [r4] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x1] - bl sub_8121248 - ldrb r1, [r4, 0x1] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x2] - bl sub_8121248 - ldrb r1, [r4, 0x2] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldr r5, _081215A0 @ =gUnknown_845A2DD - b _0812163E - .align 2, 0 -_08121598: .4byte gUnknown_845A2C8 -_0812159C: .4byte gUnknown_845A2B2 -_081215A0: .4byte gUnknown_845A2DD -_081215A4: - movs r0, 0x8 - ands r0, r4 - cmp r0, 0 - beq _08121600 - movs r0, 0x1 - ands r0, r4 - cmp r0, 0 - beq _081215BC - ldr r5, _081215B8 @ =gUnknown_845A2CE - b _0812160A - .align 2, 0 -_081215B8: .4byte gUnknown_845A2CE -_081215BC: - ldr r5, _081215F4 @ =gUnknown_845A2C5 - ldrb r0, [r5] - bl sub_8121248 - ldr r4, _081215F8 @ =gUnknown_845A2B2 - ldrb r1, [r4] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x1] - bl sub_8121248 - ldrb r1, [r4, 0x1] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x2] - bl sub_8121248 - ldrb r1, [r4, 0x2] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldr r5, _081215FC @ =gUnknown_845A2DA - b _0812163E - .align 2, 0 -_081215F4: .4byte gUnknown_845A2C5 -_081215F8: .4byte gUnknown_845A2B2 -_081215FC: .4byte gUnknown_845A2DA -_08121600: - movs r0, 0x1 - ands r5, r0 - cmp r5, 0 - beq _08121684 - ldr r5, _08121674 @ =gUnknown_845A2CB -_0812160A: - ldrb r0, [r5] - bl sub_8121248 - ldr r4, _08121678 @ =gUnknown_845A2B2 - ldrb r1, [r4] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x1] - bl sub_8121248 - ldrb r1, [r4, 0x1] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x2] - bl sub_8121248 - ldrb r1, [r4, 0x2] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldr r5, _0812167C @ =gUnknown_845A2E0 -_0812163E: - ldrb r0, [r5] - bl sub_8121248 - ldr r4, _08121680 @ =gUnknown_845A2B5 - ldrb r1, [r4] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x1] - bl sub_8121248 - ldrb r1, [r4, 0x1] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x2] - bl sub_8121248 - ldrb r1, [r4, 0x2] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - b _081216EC - .align 2, 0 -_08121674: .4byte gUnknown_845A2CB -_08121678: .4byte gUnknown_845A2B2 -_0812167C: .4byte gUnknown_845A2E0 -_08121680: .4byte gUnknown_845A2B5 -_08121684: - ldr r5, _081216F4 @ =gUnknown_845A2C2 - ldrb r0, [r5] - bl sub_8121248 - ldr r4, _081216F8 @ =gUnknown_845A2B2 - ldrb r1, [r4] - adds r1, r7 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x1] - bl sub_8121248 - ldrb r1, [r4, 0x1] - adds r1, r7 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x2] - bl sub_8121248 - ldrb r1, [r4, 0x2] - adds r1, r7 - movs r2, 0x2 - bl LoadPalette - ldr r5, _081216FC @ =gUnknown_845A2D7 - ldrb r0, [r5] - bl sub_8121248 - ldr r4, _08121700 @ =gUnknown_845A2B5 - ldrb r1, [r4] - adds r1, r7 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x1] - bl sub_8121248 - ldrb r1, [r4, 0x1] - adds r1, r7 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x2] - bl sub_8121248 - ldrb r1, [r4, 0x2] - adds r1, r7 - movs r2, 0x2 - bl LoadPalette -_081216EC: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081216F4: .4byte gUnknown_845A2C2 -_081216F8: .4byte gUnknown_845A2B2 -_081216FC: .4byte gUnknown_845A2D7 -_08121700: .4byte gUnknown_845A2B5 - thumb_func_end sub_812142C - - thumb_func_start sub_8121704 -sub_8121704: @ 8121704 - push {r4,r5,lr} - sub sp, 0xC - lsls r0, 24 - lsrs r0, 24 - lsls r2, 24 - lsrs r2, 24 - ldrb r5, [r3] - ldrb r3, [r3, 0x1] - lsls r4, r2, 1 - adds r4, r2 - ldr r2, _08121734 @ =gUnknown_8459FFC - adds r4, r2 - str r4, [sp] - movs r2, 0 - str r2, [sp, 0x4] - str r1, [sp, 0x8] - movs r1, 0 - adds r2, r5, 0 - bl AddTextPrinterParameterized3 - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08121734: .4byte gUnknown_8459FFC - thumb_func_end sub_8121704 - - thumb_func_start sub_8121738 -sub_8121738: @ 8121738 - push {r4-r7,lr} - sub sp, 0x14 - adds r7, r0, 0 - adds r6, r1, 0 - lsls r2, 24 - lsrs r4, r2, 24 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08121788 - cmp r4, 0x1 - bne _08121772 - ldr r5, [r6] - ldrb r0, [r6, 0x8] - ldrb r1, [r5, 0x4] - lsrs r1, 3 - ldrb r2, [r5, 0x5] - lsrs r2, 3 - ldrb r3, [r5, 0x6] - lsrs r3, 3 - ldrb r4, [r5, 0x7] - lsrs r4, 3 - str r4, [sp] - movs r4, 0 - str r4, [sp, 0x4] - ldr r4, [r5] - bl _call_via_r4 -_08121772: - adds r0, r7, 0 - add r1, sp, 0x8 - bl GetMonNickname - ldrb r0, [r6, 0x8] - ldr r3, [r6] - adds r3, 0x4 - add r1, sp, 0x8 - movs r2, 0 - bl sub_8121704 -_08121788: - add sp, 0x14 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8121738 - - thumb_func_start sub_8121790 -sub_8121790: @ 8121790 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - adds r6, r0, 0 - adds r7, r1, 0 - lsls r2, 24 - lsrs r4, r2, 24 - mov r8, r4 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _081217FC - adds r0, r6, 0 - bl sub_81208A4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _081217BE - cmp r0, 0x6 - bne _081217FC -_081217BE: - cmp r4, 0 - beq _081217E4 - ldr r5, [r7] - ldrb r0, [r7, 0x8] - ldrb r1, [r5, 0x8] - lsrs r1, 3 - ldrb r2, [r5, 0x9] - lsrs r2, 3 - adds r2, 0x1 - ldrb r3, [r5, 0xA] - lsrs r3, 3 - ldrb r4, [r5, 0xB] - lsrs r4, 3 - str r4, [sp] - movs r4, 0 - str r4, [sp, 0x4] - ldr r4, [r5] - bl _call_via_r4 -_081217E4: - mov r0, r8 - cmp r0, 0x2 - beq _081217FC - adds r0, r6, 0 - movs r1, 0x38 - bl GetMonData - lsls r0, 24 - lsrs r0, 24 - adds r1, r7, 0 - bl sub_8121808 -_081217FC: - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8121790 - - thumb_func_start sub_8121808 -sub_8121808: @ 8121808 - push {r4-r6,lr} - adds r2, r0, 0 - adds r6, r1, 0 - lsls r2, 24 - lsrs r2, 24 - ldr r5, _08121848 @ =gStringVar2 - adds r0, r5, 0 - adds r1, r2, 0 - movs r2, 0 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - ldr r4, _0812184C @ =gStringVar1 - ldr r1, _08121850 @ =gText_Lv - adds r0, r4, 0 - bl StringCopy - adds r0, r4, 0 - adds r1, r5, 0 - bl StringAppend - ldrb r0, [r6, 0x8] - ldr r3, [r6] - adds r3, 0x8 - adds r1, r4, 0 - movs r2, 0 - bl sub_8121704 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08121848: .4byte gStringVar2 -_0812184C: .4byte gStringVar1 -_08121850: .4byte gText_Lv - thumb_func_end sub_8121808 - - thumb_func_start sub_8121854 -sub_8121854: @ 8121854 - push {r4-r7,lr} - sub sp, 0x14 - adds r6, r0, 0 - adds r7, r1, 0 - lsls r2, 24 - lsrs r2, 24 - cmp r2, 0x1 - bne _08121886 - ldr r5, [r7] - ldrb r0, [r7, 0x8] - ldrb r1, [r5, 0xC] - lsrs r1, 3 - ldrb r2, [r5, 0xD] - lsrs r2, 3 - adds r2, 0x1 - ldrb r3, [r5, 0xE] - lsrs r3, 3 - ldrb r4, [r5, 0xF] - lsrs r4, 3 - str r4, [sp] - movs r4, 0 - str r4, [sp, 0x4] - ldr r4, [r5] - bl _call_via_r4 -_08121886: - adds r0, r6, 0 - add r1, sp, 0x8 - bl GetMonNickname - adds r0, r6, 0 - bl GetMonGender - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - movs r1, 0xB - bl GetMonData - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - add r2, sp, 0x8 - adds r3, r7, 0 - bl sub_81218BC - add sp, 0x14 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8121854 - - thumb_func_start sub_81218BC -sub_81218BC: @ 81218BC - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r9, r2 - adds r7, r3, 0 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r1, 16 - lsrs r4, r1, 16 - adds r5, r4, 0 - ldrb r0, [r7, 0x8] - movs r1, 0x5 - bl GetWindowAttribute - lsls r0, 28 - lsrs r6, r0, 24 - cmp r4, 0 - beq _08121982 - cmp r4, 0x20 - beq _081218EC - cmp r4, 0x1D - bne _08121900 -_081218EC: - movs r0, 0xB - adds r1, r5, 0 - muls r1, r0 - ldr r0, _0812190C @ =gSpeciesNames - adds r1, r0 - mov r0, r9 - bl StringCompare - cmp r0, 0 - beq _08121982 -_08121900: - mov r0, r8 - cmp r0, 0 - beq _08121910 - cmp r0, 0xFE - beq _08121950 - b _08121982 - .align 2, 0 -_0812190C: .4byte gSpeciesNames -_08121910: - ldr r5, _08121944 @ =gUnknown_845A2B8 - ldrb r0, [r5] - bl sub_8121248 - ldr r4, _08121948 @ =gUnknown_845A2AE - ldrb r1, [r4] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x1] - bl sub_8121248 - ldrb r1, [r4, 0x1] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r7, 0x8] - ldr r1, _0812194C @ =gUnknown_841621F - ldr r3, [r7] - adds r3, 0xC - movs r2, 0x2 - bl sub_8121704 - b _08121982 - .align 2, 0 -_08121944: .4byte gUnknown_845A2B8 -_08121948: .4byte gUnknown_845A2AE -_0812194C: .4byte gUnknown_841621F -_08121950: - ldr r5, _08121990 @ =gUnknown_845A2BA - ldrb r0, [r5] - bl sub_8121248 - ldr r4, _08121994 @ =gUnknown_845A2AE - ldrb r1, [r4] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x1] - bl sub_8121248 - ldrb r1, [r4, 0x1] - adds r1, r6 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r7, 0x8] - ldr r1, _08121998 @ =gUnknown_8416221 - ldr r3, [r7] - adds r3, 0xC - movs r2, 0x2 - bl sub_8121704 -_08121982: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08121990: .4byte gUnknown_845A2BA -_08121994: .4byte gUnknown_845A2AE -_08121998: .4byte gUnknown_8416221 - thumb_func_end sub_81218BC - - thumb_func_start sub_812199C -sub_812199C: @ 812199C - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - adds r7, r0, 0 - adds r6, r1, 0 - lsls r2, 24 - lsrs r4, r2, 24 - mov r8, r4 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _081219F6 - cmp r4, 0 - beq _081219DE - ldr r5, [r6] - ldrb r0, [r6, 0x8] - ldrb r1, [r5, 0x10] - lsrs r1, 3 - ldrb r2, [r5, 0x11] - lsrs r2, 3 - adds r2, 0x1 - ldrb r3, [r5, 0x12] - lsrs r3, 3 - ldrb r4, [r5, 0x13] - lsrs r4, 3 - str r4, [sp] - movs r4, 0 - str r4, [sp, 0x4] - ldr r4, [r5] - bl _call_via_r4 -_081219DE: - mov r0, r8 - cmp r0, 0x2 - beq _081219F6 - adds r0, r7, 0 - movs r1, 0x39 - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - adds r1, r6, 0 - bl sub_8121A04 -_081219F6: - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_812199C - - thumb_func_start sub_8121A04 -sub_8121A04: @ 8121A04 - push {r4,r5,lr} - adds r2, r0, 0 - adds r4, r1, 0 - lsls r2, 16 - lsrs r2, 16 - ldr r5, _08121A38 @ =gStringVar1 - adds r0, r5, 0 - adds r1, r2, 0 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - movs r1, 0xBA - strb r1, [r0] - movs r1, 0xFF - strb r1, [r0, 0x1] - ldrb r0, [r4, 0x8] - ldr r3, [r4] - adds r3, 0x10 - adds r1, r5, 0 - movs r2, 0 - bl sub_8121704 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08121A38: .4byte gStringVar1 - thumb_func_end sub_8121A04 - - thumb_func_start sub_8121A3C -sub_8121A3C: @ 8121A3C - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - adds r7, r0, 0 - adds r6, r1, 0 - lsls r2, 24 - lsrs r4, r2, 24 - mov r8, r4 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08121A98 - cmp r4, 0 - beq _08121A80 - ldr r5, [r6] - ldrb r0, [r6, 0x8] - ldrb r1, [r5, 0x14] - lsrs r1, 3 - adds r1, 0x1 - ldrb r2, [r5, 0x15] - lsrs r2, 3 - adds r2, 0x1 - ldrb r3, [r5, 0x16] - lsrs r3, 3 - ldrb r4, [r5, 0x17] - lsrs r4, 3 - str r4, [sp] - movs r4, 0 - str r4, [sp, 0x4] - ldr r4, [r5] - bl _call_via_r4 -_08121A80: - mov r0, r8 - cmp r0, 0x2 - beq _08121A98 - adds r0, r7, 0 - movs r1, 0x3A - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - adds r1, r6, 0 - bl sub_8121AA4 -_08121A98: - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8121A3C - - thumb_func_start sub_8121AA4 -sub_8121AA4: @ 8121AA4 - push {r4-r6,lr} - adds r2, r0, 0 - adds r6, r1, 0 - lsls r2, 16 - lsrs r2, 16 - ldr r5, _08121AE4 @ =gStringVar2 - adds r0, r5, 0 - adds r1, r2, 0 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - ldr r4, _08121AE8 @ =gStringVar1 - ldr r1, _08121AEC @ =gUnknown_841620C - adds r0, r4, 0 - bl StringCopy - adds r0, r4, 0 - adds r1, r5, 0 - bl StringAppend - ldrb r0, [r6, 0x8] - ldr r3, [r6] - adds r3, 0x14 - adds r1, r4, 0 - movs r2, 0 - bl sub_8121704 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08121AE4: .4byte gStringVar2 -_08121AE8: .4byte gStringVar1 -_08121AEC: .4byte gUnknown_841620C - thumb_func_end sub_8121AA4 - - thumb_func_start sub_8121AF0 -sub_8121AF0: @ 8121AF0 - push {r4-r6,lr} - adds r5, r0, 0 - adds r6, r1, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08121B24 - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - movs r1, 0x3A - bl GetMonData - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - adds r2, r6, 0 - bl sub_8121B2C -_08121B24: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8121AF0 - - thumb_func_start sub_8121B2C -sub_8121B2C: @ 8121B2C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - adds r6, r2, 0 - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - lsls r1, 16 - lsrs r1, 16 - mov r9, r1 - ldrb r0, [r6, 0x8] - movs r1, 0x5 - bl GetWindowAttribute - lsls r0, 28 - lsrs r7, r0, 24 - mov r1, r8 - lsls r0, r1, 16 - asrs r0, 16 - mov r2, r9 - lsls r1, r2, 16 - asrs r1, 16 - bl GetHPBarLevel - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - beq _08121B78 - cmp r0, 0x2 - blt _08121BA8 - cmp r0, 0x4 - bgt _08121BA8 - ldr r5, _08121B74 @ =gUnknown_845A2BC - b _08121B7A - .align 2, 0 -_08121B74: .4byte gUnknown_845A2BC -_08121B78: - ldr r5, _08121BA0 @ =gUnknown_845A2BE -_08121B7A: - ldrb r0, [r5] - bl sub_8121248 - ldr r4, _08121BA4 @ =gUnknown_845A2B0 - ldrb r1, [r4] - adds r1, r7 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x1] - bl sub_8121248 - ldrb r1, [r4, 0x1] - adds r1, r7 - movs r2, 0x2 - bl LoadPalette - b _08121BCC - .align 2, 0 -_08121BA0: .4byte gUnknown_845A2BE -_08121BA4: .4byte gUnknown_845A2B0 -_08121BA8: - ldr r5, _08121C68 @ =gUnknown_845A2C0 - ldrb r0, [r5] - bl sub_8121248 - ldr r4, _08121C6C @ =gUnknown_845A2B0 - ldrb r1, [r4] - adds r1, r7 - movs r2, 0x2 - bl LoadPalette - ldrb r0, [r5, 0x1] - bl sub_8121248 - ldrb r1, [r4, 0x1] - adds r1, r7 - movs r2, 0x2 - bl LoadPalette -_08121BCC: - mov r1, r8 - lsls r0, r1, 16 - asrs r0, 16 - mov r2, r9 - lsls r1, r2, 16 - asrs r1, 16 - ldr r2, [r6] - ldrb r2, [r2, 0x1A] - bl GetScaledHPFraction - lsls r0, 24 - lsrs r5, r0, 24 - ldrb r0, [r6, 0x8] - ldr r4, _08121C6C @ =gUnknown_845A2B0 - ldrb r1, [r4, 0x1] - ldr r3, [r6] - ldrb r2, [r3, 0x18] - ldrb r3, [r3, 0x19] - str r5, [sp] - movs r7, 0x1 - str r7, [sp, 0x4] - bl FillWindowPixelRect - ldrb r0, [r6, 0x8] - ldrb r1, [r4] - ldr r3, [r6] - ldrb r2, [r3, 0x18] - ldrb r3, [r3, 0x19] - adds r3, 0x1 - str r5, [sp] - movs r4, 0x2 - str r4, [sp, 0x4] - bl FillWindowPixelRect - ldr r1, [r6] - ldrb r0, [r1, 0x1A] - cmp r5, r0 - beq _08121C50 - ldrb r0, [r6, 0x8] - ldrb r2, [r1, 0x18] - adds r2, r5 - ldrb r3, [r1, 0x19] - ldrb r1, [r1, 0x1A] - subs r1, r5 - lsls r1, 16 - lsrs r1, 16 - str r1, [sp] - str r7, [sp, 0x4] - movs r1, 0xD - bl FillWindowPixelRect - ldrb r0, [r6, 0x8] - ldr r1, [r6] - ldrb r2, [r1, 0x18] - adds r2, r5 - ldrb r3, [r1, 0x19] - adds r3, 0x1 - ldrb r1, [r1, 0x1A] - subs r1, r5 - lsls r1, 16 - lsrs r1, 16 - str r1, [sp] - str r4, [sp, 0x4] - movs r1, 0x2 - bl FillWindowPixelRect -_08121C50: - ldrb r0, [r6, 0x8] - movs r1, 0x2 - bl CopyWindowToVram - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08121C68: .4byte gUnknown_845A2C0 -_08121C6C: .4byte gUnknown_845A2B0 - thumb_func_end sub_8121B2C - - thumb_func_start sub_8121C70 -sub_8121C70: @ 8121C70 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - adds r6, r1, 0 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r2, 24 - lsrs r2, 24 - adds r7, r2, 0 - cmp r7, 0 - beq _08121CAA - ldr r5, [r6] - ldrb r0, [r6, 0x8] - ldrb r1, [r5, 0x1C] - lsrs r1, 3 - ldrb r2, [r5, 0x1D] - lsrs r2, 3 - ldrb r3, [r5, 0x1E] - lsrs r3, 3 - ldrb r4, [r5, 0x1F] - lsrs r4, 3 - str r4, [sp] - movs r4, 0x1 - str r4, [sp, 0x4] - ldr r4, [r5] - bl _call_via_r4 -_08121CAA: - cmp r7, 0x2 - beq _08121CD0 - ldrb r0, [r6, 0x8] - ldr r1, [r6] - ldrb r2, [r1, 0x1C] - ldrb r3, [r1, 0x1D] - ldr r1, _08121CDC @ =gUnknown_8459FFC - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - ldr r4, _08121CE0 @ =gUnknown_845A354 - mov r5, r8 - lsls r1, r5, 2 - adds r1, r4 - ldr r1, [r1] - str r1, [sp, 0x8] - movs r1, 0x1 - bl AddTextPrinterParameterized3 -_08121CD0: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08121CDC: .4byte gUnknown_8459FFC -_08121CE0: .4byte gUnknown_845A354 - thumb_func_end sub_8121C70 - - thumb_func_start sub_8121CE4 -sub_8121CE4: @ 8121CE4 - push {r4,lr} - adds r4, r0, 0 - ldrb r0, [r4] - cmp r0, 0xFF - beq _08121D04 - movs r1, 0 - bl ClearStdWindowAndFrameToTransparent - ldrb r0, [r4] - bl RemoveWindow - movs r0, 0xFF - strb r0, [r4] - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram -_08121D04: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8121CE4 - - thumb_func_start sub_8121D0C -sub_8121D0C: @ 8121D0C - push {r4-r6,lr} - sub sp, 0xC - adds r6, r0, 0 - ldr r0, _08121D3C @ =gUnknown_203B09C - ldr r4, [r0] - adds r5, r4, 0 - adds r5, 0xD - ldrb r0, [r4, 0xD] - cmp r0, 0xFF - beq _08121D26 - adds r0, r5, 0 - bl sub_8121CE4 -_08121D26: - cmp r6, 0x7F - beq _08121DE8 - adds r0, r6, 0 - subs r0, 0x16 - cmp r0, 0x4 - bhi _08121D80 - lsls r0, 2 - ldr r1, _08121D40 @ =_08121D44 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08121D3C: .4byte gUnknown_203B09C -_08121D40: .4byte _08121D44 - .align 2, 0 -_08121D44: - .4byte _08121D58 - .4byte _08121D70 - .4byte _08121D70 - .4byte _08121D60 - .4byte _08121D68 -_08121D58: - ldr r0, _08121D5C @ =gUnknown_845A128 - b _08121D72 - .align 2, 0 -_08121D5C: .4byte gUnknown_845A128 -_08121D60: - ldr r0, _08121D64 @ =gUnknown_845A130 - b _08121D72 - .align 2, 0 -_08121D64: .4byte gUnknown_845A130 -_08121D68: - ldr r0, _08121D6C @ =gUnknown_845A138 - b _08121D72 - .align 2, 0 -_08121D6C: .4byte gUnknown_845A138 -_08121D70: - ldr r0, _08121D7C @ =gUnknown_845A140 -_08121D72: - bl AddWindow - strb r0, [r5] - b _08121D88 - .align 2, 0 -_08121D7C: .4byte gUnknown_845A140 -_08121D80: - ldr r0, _08121D9C @ =gUnknown_845A120 - bl AddWindow - strb r0, [r4, 0xD] -_08121D88: - cmp r6, 0 - bne _08121DB0 - ldr r0, _08121DA0 @ =gUnknown_203B09C - ldr r0, [r0] - ldrb r0, [r0, 0x8] - lsls r0, 31 - cmp r0, 0 - beq _08121DA4 - movs r6, 0x2 - b _08121DB0 - .align 2, 0 -_08121D9C: .4byte gUnknown_845A120 -_08121DA0: .4byte gUnknown_203B09C -_08121DA4: - bl sub_8121DF8 - lsls r0, 24 - cmp r0, 0 - bne _08121DB0 - movs r6, 0x1 -_08121DB0: - ldrb r0, [r5] - movs r1, 0 - movs r2, 0x58 - movs r3, 0xF - bl DrawStdFrameWithCustomTileAndPalette - ldr r4, _08121DF0 @ =gStringVar4 - ldr r1, _08121DF4 @ =gUnknown_845A2E8 - lsls r0, r6, 2 - adds r0, r1 - ldr r1, [r0] - adds r0, r4, 0 - bl StringExpandPlaceholders - ldrb r0, [r5] - movs r1, 0x2 - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - str r1, [sp, 0x8] - movs r1, 0x2 - adds r2, r4, 0 - movs r3, 0 - bl AddTextPrinterParameterized - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram -_08121DE8: - add sp, 0xC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08121DF0: .4byte gStringVar4 -_08121DF4: .4byte gUnknown_845A2E8 - thumb_func_end sub_8121D0C - - thumb_func_start sub_8121DF8 -sub_8121DF8: @ 8121DF8 - push {r4-r7,lr} - ldr r7, _08121E0C @ =gPlayerParty - movs r6, 0 - ldr r0, _08121E10 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0xB] - cmp r0, 0x1 - bne _08121E14 -_08121E06: - movs r0, 0x1 - b _08121E56 - .align 2, 0 -_08121E0C: .4byte gPlayerParty -_08121E10: .4byte gUnknown_203B0A0 -_08121E14: - movs r5, 0 -_08121E16: - movs r0, 0x64 - muls r0, r5 - adds r4, r7, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08121E46 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - bne _08121E40 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - beq _08121E46 -_08121E40: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 -_08121E46: - cmp r6, 0x1 - bhi _08121E06 - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x5 - bls _08121E16 - movs r0, 0 -_08121E56: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8121DF8 - - thumb_func_start sub_8121E5C -sub_8121E5C: @ 8121E5C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x24 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x1 - beq _08121EBC - cmp r4, 0x1 - bgt _08121E78 - cmp r4, 0 - beq _08121E7E - b _08121ECC -_08121E78: - cmp r4, 0x2 - beq _08121EC4 - b _08121ECC -_08121E7E: - ldr r0, _08121EB4 @ =gUnknown_203B09C - ldr r1, [r0] - ldrb r0, [r1, 0x17] - lsls r0, 1 - movs r3, 0x13 - subs r3, r0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0xA - str r0, [sp] - ldrb r0, [r1, 0x17] - lsls r0, 25 - lsrs r0, 24 - str r0, [sp, 0x4] - movs r0, 0xE - str r0, [sp, 0x8] - ldr r0, _08121EB8 @ =0x000002bf - str r0, [sp, 0xC] - add r0, sp, 0x14 - movs r1, 0x2 - movs r2, 0x13 - bl SetWindowTemplateFields - ldr r0, [sp, 0x14] - ldr r1, [sp, 0x18] - b _08121ED2 - .align 2, 0 -_08121EB4: .4byte gUnknown_203B09C -_08121EB8: .4byte 0x000002bf -_08121EBC: - ldr r0, _08121EC0 @ =gUnknown_845A148 - b _08121ECE - .align 2, 0 -_08121EC0: .4byte gUnknown_845A148 -_08121EC4: - ldr r0, _08121EC8 @ =gUnknown_845A150 - b _08121ECE - .align 2, 0 -_08121EC8: .4byte gUnknown_845A150 -_08121ECC: - ldr r0, _08121EF8 @ =gUnknown_845A158 -_08121ECE: - ldr r1, [r0, 0x4] - ldr r0, [r0] -_08121ED2: - str r0, [sp, 0x1C] - str r1, [sp, 0x20] - add r0, sp, 0x1C - bl AddWindow - ldr r6, _08121EFC @ =gUnknown_203B09C - ldr r1, [r6] - strb r0, [r1, 0xC] - ldr r0, [r6] - ldrb r0, [r0, 0xC] - movs r1, 0 - movs r2, 0x4F - movs r3, 0xD - bl DrawStdFrameWithCustomTileAndPalette - cmp r4, 0x3 - bne _08121F00 - ldr r0, [r6] - b _08121FA2 - .align 2, 0 -_08121EF8: .4byte gUnknown_845A158 -_08121EFC: .4byte gUnknown_203B09C -_08121F00: - movs r0, 0x2 - movs r1, 0 - bl GetMenuCursorDimensionByFont - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - movs r0, 0x2 - movs r1, 0x2 - bl GetFontAttribute - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - movs r5, 0 - ldr r0, [r6] - ldrb r0, [r0, 0x17] - cmp r5, r0 - bcs _08121F7A - adds r7, r6, 0 - movs r6, 0 -_08121F2A: - ldr r1, [r7] - adds r0, r1, 0 - adds r0, 0xF - adds r4, r0, r5 - ldrb r0, [r4] - movs r2, 0x3 - cmp r0, 0x11 - bls _08121F3C - movs r2, 0x4 -_08121F3C: - ldrb r0, [r1, 0xC] - lsls r3, r5, 4 - adds r3, 0x2 - lsls r3, 24 - lsrs r3, 24 - mov r1, r8 - str r1, [sp] - str r6, [sp, 0x4] - lsls r1, r2, 1 - adds r1, r2 - ldr r2, _08121FB4 @ =gUnknown_8459FFC - adds r1, r2 - str r1, [sp, 0x8] - str r6, [sp, 0xC] - ldr r2, _08121FB8 @ =gUnknown_845A618 - ldrb r1, [r4] - lsls r1, 3 - adds r1, r2 - ldr r1, [r1] - str r1, [sp, 0x10] - movs r1, 0x2 - mov r2, r9 - bl AddTextPrinterParameterized4 - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, [r7] - ldrb r0, [r0, 0x17] - cmp r5, r0 - bcc _08121F2A -_08121F7A: - ldr r4, _08121FBC @ =gUnknown_203B09C - ldr r2, [r4] - ldrb r0, [r2, 0xC] - movs r1, 0x10 - str r1, [sp] - ldrb r1, [r2, 0x17] - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - movs r1, 0x1 - str r1, [sp, 0xC] - movs r1, 0x2 - movs r2, 0 - movs r3, 0x2 - bl Menu_InitCursorInternal - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r0, [r4] -_08121FA2: - ldrb r0, [r0, 0xC] - add sp, 0x24 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08121FB4: .4byte gUnknown_8459FFC -_08121FB8: .4byte gUnknown_845A618 -_08121FBC: .4byte gUnknown_203B09C - thumb_func_end sub_8121E5C - - thumb_func_start sub_8121FC0 -sub_8121FC0: @ 8121FC0 - push {r4,lr} - sub sp, 0x10 - adds r4, r0, 0 - movs r0, 0x6 - movs r1, 0 - movs r2, 0x4F - movs r3, 0xD - bl DrawStdFrameWithCustomTileAndPalette - ldr r2, _08122008 @ =gTextFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - bl GetTextSpeedSetting - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - 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, 0x6 - movs r1, 0x2 - adds r2, r4, 0 - bl AddTextPrinterParameterized2 - add sp, 0x10 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08122008: .4byte gTextFlags - thumb_func_end sub_8121FC0 - - thumb_func_start sub_812200C -sub_812200C: @ 812200C - push {lr} - sub sp, 0xC - ldr r0, _08122030 @ =gUnknown_845A160 - movs r1, 0x4F - str r1, [sp] - movs r1, 0xD - str r1, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - movs r1, 0x2 - movs r2, 0 - movs r3, 0x2 - bl CreateYesNoMenu - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_08122030: .4byte gUnknown_845A160 - thumb_func_end sub_812200C - - thumb_func_start sub_8122034 -sub_8122034: @ 8122034 - push {r4,lr} - ldr r0, _0812205C @ =gUnknown_845A168 - bl AddWindow - ldr r4, _08122060 @ =gUnknown_203B09C - ldr r1, [r4] - strb r0, [r1, 0xC] - ldr r0, [r4] - ldrb r0, [r0, 0xC] - movs r1, 0 - movs r2, 0x4F - movs r3, 0xD - bl DrawStdFrameWithCustomTileAndPalette - ldr r0, [r4] - ldrb r0, [r0, 0xC] - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0812205C: .4byte gUnknown_845A168 -_08122060: .4byte gUnknown_203B09C - thumb_func_end sub_8122034 - - thumb_func_start sub_8122064 -sub_8122064: @ 8122064 - push {r4,lr} - ldr r4, _08122080 @ =gUnknown_203B09C - ldr r0, [r4] - ldrb r0, [r0, 0xC] - bl ClearWindowTilemap - ldr r0, [r4] - adds r0, 0xC - bl sub_8121CE4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08122080: .4byte gUnknown_203B09C - thumb_func_end sub_8122064 - - thumb_func_start sub_8122084 -sub_8122084: @ 8122084 - push {r4,r5,lr} - sub sp, 0x10 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r5, _081220CC @ =gStringVar4 - adds r0, r5, 0 - bl StringExpandPlaceholders - ldr r2, _081220D0 @ =gTextFlags - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - bl GetTextSpeedSetting - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - 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] - adds r0, r4, 0 - movs r1, 0x4 - adds r2, r5, 0 - bl AddTextPrinterParameterized2 - add sp, 0x10 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_081220CC: .4byte gStringVar4 -_081220D0: .4byte gTextFlags - thumb_func_end sub_8122084 - - thumb_func_start sub_81220D4 -sub_81220D4: @ 81220D4 - push {r4,lr} - ldr r0, _08122108 @ =gUnknown_845A170 - bl AddWindow - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - movs r1, 0x4F - movs r2, 0xE0 - bl TextWindow_LoadResourcesStdFrame0 - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0x4F - movs r3, 0xE - bl DrawDialogFrameWithCustomTileAndPalette - ldr r1, _0812210C @ =gUnknown_8417457 - adds r0, r4, 0 - bl sub_8122084 - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08122108: .4byte gUnknown_845A170 -_0812210C: .4byte gUnknown_8417457 - thumb_func_end sub_81220D4 - - thumb_func_start sub_8122110 -sub_8122110: @ 8122110 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - bl ClearWindowTilemap - adds r0, r4, 0 - movs r1, 0 - bl ClearDialogWindowAndFrameToTransparent - adds r0, r4, 0 - bl RemoveWindow - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8122110 - - thumb_func_start sub_8122138 -sub_8122138: @ 8122138 - push {r4,r5,lr} - sub sp, 0x14 - lsls r0, 24 - lsrs r0, 24 - adds r5, r0, 0 - ldr r0, _08122168 @ =gUnknown_203B09C - ldr r4, [r0] - cmp r5, 0x11 - bhi _0812216C - ldrb r0, [r4, 0xE] - cmp r0, 0xFF - beq _081221C0 - bl ClearWindowTilemap - ldrb r0, [r4, 0xE] - bl RemoveWindow - movs r0, 0xFF - strb r0, [r4, 0xE] - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - b _081221C0 - .align 2, 0 -_08122168: .4byte gUnknown_203B09C -_0812216C: - ldrb r0, [r4, 0xE] - cmp r0, 0xFF - bne _0812217A - ldr r0, _081221C8 @ =gUnknown_845A178 - bl AddWindow - strb r0, [r4, 0xE] -_0812217A: - ldrb r0, [r4, 0xE] - bl sub_8112F18 - movs r0, 0x2 - movs r1, 0x2 - bl GetFontAttribute - lsls r0, 24 - lsrs r0, 24 - ldrb r2, [r4, 0xE] - str r0, [sp] - movs r1, 0 - str r1, [sp, 0x4] - ldr r0, _081221CC @ =gUnknown_845A00B - str r0, [sp, 0x8] - str r1, [sp, 0xC] - ldr r1, _081221D0 @ =gUnknown_845A37C - adds r0, r5, 0 - subs r0, 0x12 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - str r0, [sp, 0x10] - adds r0, r2, 0 - movs r1, 0x2 - movs r2, 0x3 - movs r3, 0x6 - bl AddTextPrinterParameterized4 - ldrb r0, [r4, 0xE] - bl PutWindowTilemap - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram -_081221C0: - add sp, 0x14 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_081221C8: .4byte gUnknown_845A178 -_081221CC: .4byte gUnknown_845A00B -_081221D0: .4byte gUnknown_845A37C - thumb_func_end sub_8122138 - - thumb_func_start party_menu_icon_anim -party_menu_icon_anim: @ 81221D4 - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r7, r1, 0 - adds r4, r2, 0 - movs r6, 0x1 - bl IsMultiBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0812220A - ldr r0, _08122240 @ =gMain - ldr r1, _08122244 @ =0x00000439 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0812220A - ldr r0, _08122248 @ =gUnknown_845A59C - adds r0, r4, r0 - ldrb r1, [r0] - eors r1, r6 - negs r0, r1 - orrs r0, r1 - lsrs r6, r0, 31 -_0812220A: - adds r0, r5, 0 - movs r1, 0x41 - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - movs r1, 0 - bl GetMonData - adds r1, r0, 0 - str r6, [sp] - adds r0, r4, 0 - adds r2, r7, 0 - movs r3, 0x1 - bl party_menu_link_mon_icon_anim - ldrb r0, [r7, 0x9] - adds r1, r5, 0 - bl sub_8122358 - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08122240: .4byte gMain -_08122244: .4byte 0x00000439 -_08122248: .4byte gUnknown_845A59C - thumb_func_end party_menu_icon_anim - - thumb_func_start party_menu_link_mon_icon_anim -party_menu_link_mon_icon_anim: @ 812224C - push {r4-r7,lr} - sub sp, 0xC - adds r6, r1, 0 - adds r4, r2, 0 - lsls r0, 16 - lsrs r5, r0, 16 - lsls r3, 24 - lsrs r7, r3, 24 - cmp r5, 0 - beq _0812229A - ldr r1, _081222A4 @ =SpriteCB_MonIcon - ldr r0, [r4, 0x4] - ldrb r2, [r0] - ldrb r3, [r0, 0x1] - movs r0, 0x4 - str r0, [sp] - str r6, [sp, 0x4] - ldr r0, [sp, 0x20] - str r0, [sp, 0x8] - adds r0, r5, 0 - bl CreateMonIcon - strb r0, [r4, 0x9] - ldr r2, _081222A8 @ =gSprites - ldrb r0, [r4, 0x9] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - movs r0, 0x3 - adds r2, r7, 0 - ands r2, r0 - lsls r2, 2 - ldrb r3, [r1, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r2 - strb r0, [r1, 0x5] -_0812229A: - add sp, 0xC - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081222A4: .4byte SpriteCB_MonIcon -_081222A8: .4byte gSprites - thumb_func_end party_menu_link_mon_icon_anim - - thumb_func_start sub_81222AC -sub_81222AC: @ 81222AC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 16 - asrs r1, 16 - lsls r2, 16 - asrs r2, 16 - adds r0, r1, 0 - adds r1, r2, 0 - bl GetHPBarLevel - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - beq _0812230C - cmp r0, 0x2 - bgt _081222D4 - cmp r0, 0x1 - beq _08122324 - b _0812233C -_081222D4: - cmp r0, 0x3 - beq _081222F4 - cmp r0, 0x4 - bne _0812233C - lsls r0, r4, 4 - adds r0, r4 - lsls r0, 2 - ldr r1, _081222F0 @ =gSprites - adds r0, r1 - movs r1, 0 - bl MonIcon_SetAnim - b _0812234C - .align 2, 0 -_081222F0: .4byte gSprites -_081222F4: - lsls r0, r4, 4 - adds r0, r4 - lsls r0, 2 - ldr r1, _08122308 @ =gSprites - adds r0, r1 - movs r1, 0x1 - bl MonIcon_SetAnim - b _0812234C - .align 2, 0 -_08122308: .4byte gSprites -_0812230C: - lsls r0, r4, 4 - adds r0, r4 - lsls r0, 2 - ldr r1, _08122320 @ =gSprites - adds r0, r1 - movs r1, 0x2 - bl MonIcon_SetAnim - b _0812234C - .align 2, 0 -_08122320: .4byte gSprites -_08122324: - lsls r0, r4, 4 - adds r0, r4 - lsls r0, 2 - ldr r1, _08122338 @ =gSprites - adds r0, r1 - movs r1, 0x3 - bl MonIcon_SetAnim - b _0812234C - .align 2, 0 -_08122338: .4byte gSprites -_0812233C: - lsls r0, r4, 4 - adds r0, r4 - lsls r0, 2 - ldr r1, _08122354 @ =gSprites - adds r0, r1 - movs r1, 0x4 - bl MonIcon_SetAnim -_0812234C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08122354: .4byte gSprites - thumb_func_end sub_81222AC - - thumb_func_start sub_8122358 -sub_8122358: @ 8122358 - push {r4-r6,lr} - adds r5, r0, 0 - adds r6, r1, 0 - lsls r5, 24 - lsrs r5, 24 - adds r0, r6, 0 - movs r1, 0x39 - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r6, 0 - movs r1, 0x3A - bl GetMonData - adds r2, r0, 0 - lsls r2, 16 - lsrs r2, 16 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_81222AC - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8122358 - - thumb_func_start sub_812238C -sub_812238C: @ 812238C - push {r4-r7,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - ldr r5, _081223BC @ =gSprites - lsls r0, r4, 4 - adds r0, r4 - lsls r6, r0, 2 - adds r2, r6, r5 - movs r7, 0 - movs r3, 0 - strh r3, [r2, 0x2E] - mov r12, r5 - cmp r1, 0 - bne _081223E4 - movs r1, 0x20 - ldrsh r0, [r2, r1] - cmp r0, 0x10 - bne _081223C4 - strh r3, [r2, 0x24] - ldr r0, _081223C0 @ =0x0000fffc - strh r0, [r2, 0x26] - b _081223CA - .align 2, 0 -_081223BC: .4byte gSprites -_081223C0: .4byte 0x0000fffc -_081223C4: - ldr r0, _081223DC @ =0x0000fffc - strh r0, [r2, 0x24] - strh r3, [r2, 0x26] -_081223CA: - lsls r0, r4, 4 - adds r0, r4 - lsls r0, 2 - mov r1, r12 - adds r1, 0x1C - adds r0, r1 - ldr r1, _081223E0 @ =sub_8122428 - b _081223F0 - .align 2, 0 -_081223DC: .4byte 0x0000fffc -_081223E0: .4byte sub_8122428 -_081223E4: - strh r3, [r2, 0x24] - strh r3, [r2, 0x26] - adds r0, r5, 0 - adds r0, 0x1C - adds r0, r6, r0 - ldr r1, _081223F8 @ =sub_81223FC -_081223F0: - str r1, [r0] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081223F8: .4byte sub_81223FC - thumb_func_end sub_812238C - - thumb_func_start sub_81223FC -sub_81223FC: @ 81223FC - push {r4,lr} - adds r4, r0, 0 - bl UpdateMonIconFrame - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _08122422 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08122420 - ldr r0, _0812241C @ =0x0000fffd - strh r0, [r4, 0x26] - b _08122422 - .align 2, 0 -_0812241C: .4byte 0x0000fffd -_08122420: - strh r1, [r4, 0x26] -_08122422: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_81223FC - - thumb_func_start sub_8122428 -sub_8122428: @ 8122428 - push {lr} - bl UpdateMonIconFrame - pop {r0} - bx r0 - thumb_func_end sub_8122428 - - thumb_func_start party_menu_held_item_object -party_menu_held_item_object: @ 8122434 - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0812245C - ldr r0, _08122464 @ =gUnknown_845A43C - ldr r2, [r4, 0x4] - ldrb r1, [r2, 0x2] - ldrb r2, [r2, 0x3] - movs r3, 0 - bl CreateSprite - strb r0, [r4, 0xA] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_81224B4 -_0812245C: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08122464: .4byte gUnknown_845A43C - thumb_func_end party_menu_held_item_object - - thumb_func_start party_menu_link_mon_held_item_object -party_menu_link_mon_held_item_object: @ 8122468 - push {r4,r5,lr} - adds r4, r2, 0 - lsls r0, 16 - lsls r1, 16 - lsrs r5, r1, 16 - cmp r0, 0 - beq _081224A4 - ldr r0, _081224AC @ =gUnknown_845A43C - ldr r2, [r4, 0x4] - ldrb r1, [r2, 0x2] - ldrb r2, [r2, 0x3] - movs r3, 0 - bl CreateSprite - strb r0, [r4, 0xA] - ldr r2, _081224B0 @ =gSprites - ldrb r0, [r4, 0xA] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r2, [r1, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x5] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_81224D0 -_081224A4: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_081224AC: .4byte gUnknown_845A43C -_081224B0: .4byte gSprites - thumb_func_end party_menu_link_mon_held_item_object - - thumb_func_start sub_81224B4 -sub_81224B4: @ 81224B4 - push {r4,lr} - adds r4, r1, 0 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - adds r1, r4, 0 - bl sub_81224D0 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_81224B4 - - thumb_func_start sub_81224D0 -sub_81224D0: @ 81224D0 - push {r4,lr} - adds r4, r1, 0 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0 - bne _081224F8 - ldr r2, _081224F4 @ =gSprites - ldrb r1, [r4, 0xA] - 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 - b _08122544 - .align 2, 0 -_081224F4: .4byte gSprites -_081224F8: - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _0812251C - ldrb r1, [r4, 0xA] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _08122518 @ =gSprites - adds r0, r1 - movs r1, 0x1 - bl StartSpriteAnim - b _0812252E - .align 2, 0 -_08122518: .4byte gSprites -_0812251C: - ldrb r1, [r4, 0xA] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _0812254C @ =gSprites - adds r0, r1 - movs r1, 0 - bl StartSpriteAnim -_0812252E: - ldr r2, _0812254C @ =gSprites - ldrb r1, [r4, 0xA] - 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 -_08122544: - strb r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0812254C: .4byte gSprites - thumb_func_end sub_81224D0 - - thumb_func_start LoadHeldItemIcons -LoadHeldItemIcons: @ 8122550 - push {lr} - ldr r0, _08122564 @ =gUnknown_845A42C - bl LoadSpriteSheet - ldr r0, _08122568 @ =gUnknown_845A434 - bl LoadSpritePalette - pop {r0} - bx r0 - .align 2, 0 -_08122564: .4byte gUnknown_845A42C -_08122568: .4byte gUnknown_845A434 - thumb_func_end LoadHeldItemIcons - - thumb_func_start sub_812256C -sub_812256C: @ 812256C - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - lsls r2, 24 - lsrs r2, 24 - cmp r2, 0 - beq _08122580 - cmp r2, 0x1 - beq _081225C8 - b _08122604 -_08122580: - movs r5, 0 - ldrb r0, [r6] - cmp r5, r0 - bcs _08122604 -_08122588: - movs r0, 0x64 - muls r0, r5 - ldr r1, _081225C4 @ =gPlayerParty - adds r0, r1 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _081225B4 - adds r0, r7, r5 - ldrb r4, [r0] - adds r0, r1, 0 - bl ItemIsMail - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_8122610 -_081225B4: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - ldrb r0, [r6] - cmp r5, r0 - bcc _08122588 - b _08122604 - .align 2, 0 -_081225C4: .4byte gPlayerParty -_081225C8: - movs r5, 0 - b _081225FE -_081225CC: - movs r0, 0x64 - muls r0, r5 - ldr r1, _0812260C @ =gEnemyParty - adds r0, r1 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _081225F8 - adds r0, r5, r7 - ldrb r4, [r0, 0x6] - adds r0, r1, 0 - bl ItemIsMail - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_8122610 -_081225F8: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 -_081225FE: - ldrb r0, [r6, 0x1] - cmp r5, r0 - bcc _081225CC -_08122604: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0812260C: .4byte gEnemyParty - thumb_func_end sub_812256C - - thumb_func_start sub_8122610 -sub_8122610: @ 8122610 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - adds r6, r0, 0 - mov r9, r1 - lsls r6, 24 - lsrs r6, 24 - mov r0, r9 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - ldr r0, _08122688 @ =gSprites - mov r8, r0 - lsls r0, r6, 4 - adds r0, r6 - lsls r0, 2 - add r0, r8 - adds r0, 0x43 - ldrb r3, [r0] - ldr r0, _0812268C @ =gUnknown_845A43C - subs r3, 0x1 - lsls r3, 24 - lsrs r3, 24 - movs r1, 0xFA - movs r2, 0xAA - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - mov r0, r8 - adds r5, r4, r0 - movs r0, 0x4 - strh r0, [r5, 0x24] - movs r0, 0xA - strh r0, [r5, 0x26] - movs r0, 0x1C - add r8, r0 - add r4, r8 - ldr r0, _08122690 @ =sub_8122694 - str r0, [r4] - strh r6, [r5, 0x3C] - adds r0, r5, 0 - mov r1, r9 - bl StartSpriteAnim - ldr r1, [r4] - adds r0, r5, 0 - bl _call_via_r1 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08122688: .4byte gSprites -_0812268C: .4byte gUnknown_845A43C -_08122690: .4byte sub_8122694 - thumb_func_end sub_8122610 - - thumb_func_start sub_8122694 -sub_8122694: @ 8122694 - push {r4,lr} - adds r4, r0, 0 - ldrh r1, [r4, 0x3C] - lsls r1, 24 - lsrs r1, 24 - ldr r2, _081226C4 @ =gSprites - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, r0, r2 - adds r0, r2, 0 - adds r0, 0x3E - ldrb r0, [r0] - lsls r0, 29 - cmp r0, 0 - bge _081226C8 - adds r0, r4, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - b _081226E6 - .align 2, 0 -_081226C4: .4byte gSprites -_081226C8: - adds r3, r4, 0 - adds r3, 0x3E - ldrb r1, [r3] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r3] - ldrh r0, [r2, 0x24] - ldrh r1, [r2, 0x20] - adds r0, r1 - strh r0, [r4, 0x20] - ldrh r0, [r2, 0x26] - ldrh r2, [r2, 0x22] - adds r0, r2 - strh r0, [r4, 0x22] -_081226E6: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8122694 - - thumb_func_start party_menu_pokeball_object -party_menu_pokeball_object: @ 81226EC - push {r4,lr} - adds r4, r1, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0812270A - ldr r0, _08122710 @ =gUnknown_845A484 - ldr r2, [r4, 0x4] - ldrb r1, [r2, 0x6] - ldrb r2, [r2, 0x7] - movs r3, 0x8 - bl CreateSprite - strb r0, [r4, 0xB] -_0812270A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08122710: .4byte gUnknown_845A484 - thumb_func_end party_menu_pokeball_object - - thumb_func_start party_menu_link_mon_pokeball_object -party_menu_link_mon_pokeball_object: @ 8122714 - push {r4,lr} - adds r4, r1, 0 - lsls r0, 16 - cmp r0, 0 - beq _08122744 - ldr r0, _0812274C @ =gUnknown_845A484 - ldr r2, [r4, 0x4] - ldrb r1, [r2, 0x6] - ldrb r2, [r2, 0x7] - movs r3, 0x8 - bl CreateSprite - strb r0, [r4, 0xB] - ldr r2, _08122750 @ =gSprites - ldrb r0, [r4, 0xB] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r2, [r1, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x5] -_08122744: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0812274C: .4byte gUnknown_845A484 -_08122750: .4byte gSprites - thumb_func_end party_menu_link_mon_pokeball_object - - thumb_func_start sub_8122754 -sub_8122754: @ 8122754 - push {lr} - adds r3, r0, 0 - adds r2, r1, 0 - lsls r3, 24 - lsrs r3, 24 - lsls r2, 24 - lsrs r2, 24 - ldr r0, _0812278C @ =gUnknown_845A484 - adds r1, r3, 0 - movs r3, 0x8 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08122790 @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r3, [r1, 0x5] - movs r2, 0xD - negs r2, r2 - ands r2, r3 - movs r3, 0x8 - orrs r2, r3 - strb r2, [r1, 0x5] - pop {r1} - bx r1 - .align 2, 0 -_0812278C: .4byte gUnknown_845A484 -_08122790: .4byte gSprites - thumb_func_end sub_8122754 - - thumb_func_start sub_8122794 -sub_8122794: @ 8122794 - push {lr} - adds r3, r0, 0 - adds r2, r1, 0 - lsls r3, 24 - lsrs r3, 24 - lsls r2, 24 - lsrs r2, 24 - ldr r0, _081227B4 @ =gUnknown_845A4F4 - adds r1, r3, 0 - movs r3, 0x8 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_081227B4: .4byte gUnknown_845A4F4 - thumb_func_end sub_8122794 - - thumb_func_start sub_81227B8 -sub_81227B8: @ 81227B8 - push {lr} - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - ldr r2, _081227D8 @ =gSprites - adds r0, r2 - bl StartSpriteAnim - pop {r0} - bx r0 - .align 2, 0 -_081227D8: .4byte gSprites - thumb_func_end sub_81227B8 - - thumb_func_start sub_81227DC -sub_81227DC: @ 81227DC - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r7, r1, 24 - lsls r2, 24 - lsrs r6, r2, 24 - cmp r6, 0 - bne _08122820 - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - ldr r0, _0812281C @ =gSprites - mov r8, r0 - add r4, r8 - adds r0, r4, 0 - movs r1, 0x2 - bl StartSpriteAnim - lsls r5, r7, 4 - adds r5, r7 - lsls r5, 2 - add r5, r8 - adds r0, r5, 0 - movs r1, 0x4 - bl StartSpriteAnim - strh r6, [r4, 0x26] - strh r6, [r5, 0x26] - b _0812284C - .align 2, 0 -_0812281C: .4byte gSprites -_08122820: - lsls r5, r0, 4 - adds r5, r0 - lsls r5, 2 - ldr r0, _08122858 @ =gSprites - mov r8, r0 - add r5, r8 - adds r0, r5, 0 - movs r1, 0x3 - bl StartSpriteAnim - lsls r4, r7, 4 - adds r4, r7 - lsls r4, 2 - add r4, r8 - adds r0, r4, 0 - movs r1, 0x5 - bl StartSpriteAnim - ldr r0, _0812285C @ =0x0000fffc - strh r0, [r5, 0x26] - movs r0, 0x4 - strh r0, [r4, 0x26] -_0812284C: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08122858: .4byte gSprites -_0812285C: .4byte 0x0000fffc - thumb_func_end sub_81227DC - - thumb_func_start sub_8122860 -sub_8122860: @ 8122860 - push {lr} - ldr r0, _08122878 @ =gUnknown_845A474 - bl LoadCompressedSpriteSheet - ldr r0, _0812287C @ =gUnknown_845A4EC - bl LoadCompressedSpriteSheet - ldr r0, _08122880 @ =gUnknown_845A47C - bl LoadCompressedSpritePalette - pop {r0} - bx r0 - .align 2, 0 -_08122878: .4byte gUnknown_845A474 -_0812287C: .4byte gUnknown_845A4EC -_08122880: .4byte gUnknown_845A47C - thumb_func_end sub_8122860 - - thumb_func_start party_menu_status_condition_object -party_menu_status_condition_object: @ 8122884 - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _081228AC - ldr r0, _081228B4 @ =gUnknown_845A584 - ldr r2, [r4, 0x4] - ldrb r1, [r2, 0x4] - ldrb r2, [r2, 0x5] - movs r3, 0 - bl CreateSprite - strb r0, [r4, 0xC] - adds r0, r5, 0 - adds r1, r4, 0 - bl party_menu_get_status_condition_and_update_object -_081228AC: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_081228B4: .4byte gUnknown_845A584 - thumb_func_end party_menu_status_condition_object - - thumb_func_start party_menu_link_mon_status_condition_object -party_menu_link_mon_status_condition_object: @ 81228B8 - push {r4,r5,lr} - adds r4, r2, 0 - lsls r0, 16 - lsls r1, 24 - lsrs r5, r1, 24 - cmp r0, 0 - beq _081228F4 - ldr r0, _081228FC @ =gUnknown_845A584 - ldr r2, [r4, 0x4] - ldrb r1, [r2, 0x4] - ldrb r2, [r2, 0x5] - movs r3, 0 - bl CreateSprite - strb r0, [r4, 0xC] - adds r0, r5, 0 - adds r1, r4, 0 - bl party_menu_update_status_condition_object - ldr r2, _08122900 @ =gSprites - ldrb r0, [r4, 0xC] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r2, [r1, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x5] -_081228F4: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_081228FC: .4byte gUnknown_845A584 -_08122900: .4byte gSprites - thumb_func_end party_menu_link_mon_status_condition_object - - thumb_func_start party_menu_get_status_condition_and_update_object -party_menu_get_status_condition_and_update_object: @ 8122904 - push {r4,lr} - adds r4, r1, 0 - bl sub_81208A4 - lsls r0, 24 - lsrs r0, 24 - adds r1, r4, 0 - bl party_menu_update_status_condition_object - pop {r4} - pop {r0} - bx r0 - thumb_func_end party_menu_get_status_condition_and_update_object - - thumb_func_start party_menu_update_status_condition_object -party_menu_update_status_condition_object: @ 812291C - push {r4,r5,lr} - adds r5, r1, 0 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - beq _0812292C - cmp r2, 0x6 - bne _08122948 -_0812292C: - ldr r2, _08122944 @ =gSprites - ldrb r1, [r5, 0xC] - 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 - b _08122972 - .align 2, 0 -_08122944: .4byte gSprites -_08122948: - ldrb r1, [r5, 0xC] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r4, _0812297C @ =gSprites - adds r0, r4 - subs r1, r2, 0x1 - lsls r1, 24 - lsrs r1, 24 - bl StartSpriteAnim - ldrb r1, [r5, 0xC] - 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 -_08122972: - strb r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0812297C: .4byte gSprites - thumb_func_end party_menu_update_status_condition_object - - thumb_func_start sub_8122980 -sub_8122980: @ 8122980 - push {lr} - ldr r0, _08122994 @ =gUnknown_845A574 - bl LoadCompressedSpriteSheet - ldr r0, _08122998 @ =gUnknown_845A57C - bl LoadCompressedSpritePalette - pop {r0} - bx r0 - .align 2, 0 -_08122994: .4byte gUnknown_845A574 -_08122998: .4byte gUnknown_845A57C - thumb_func_end sub_8122980 - - thumb_func_start sub_812299C -sub_812299C: @ 812299C - push {r4,lr} - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r2, 24 - cmp r2, 0 - bne _081229B0 - bl sub_81229FC - b _081229E8 -_081229B0: - ldr r4, _081229F0 @ =gUnknown_203B09C - ldr r1, [r4] - ldr r0, _081229F4 @ =gUnknown_845A760 - adds r0, r2, r0 - ldrb r0, [r0] - strb r0, [r1, 0x17] - movs r3, 0 - ldr r0, [r4] - ldrb r0, [r0, 0x17] - cmp r3, r0 - bcs _081229E8 - ldr r1, _081229F8 @ =gUnknown_845A72C - lsls r0, r2, 2 - adds r2, r0, r1 -_081229CC: - ldr r1, [r4] - adds r1, 0xF - adds r1, r3 - ldr r0, [r2] - adds r0, r3 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - ldr r0, [r4] - ldrb r0, [r0, 0x17] - cmp r3, r0 - bcc _081229CC -_081229E8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081229F0: .4byte gUnknown_203B09C -_081229F4: .4byte gUnknown_845A760 -_081229F8: .4byte gUnknown_845A72C - thumb_func_end sub_812299C - - thumb_func_start sub_81229FC -sub_81229FC: @ 81229FC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - mov r9, r0 - lsls r1, 24 - lsrs r1, 24 - mov r10, r1 - ldr r2, _08122A78 @ =gUnknown_203B09C - ldr r1, [r2] - movs r0, 0 - strb r0, [r1, 0x17] - ldr r1, [r2] - adds r0, r1, 0 - adds r0, 0xF - adds r1, 0x17 - movs r2, 0 - bl AppendToList - movs r7, 0 - ldr r0, _08122A7C @ =gUnknown_845A76E - ldrh r0, [r0] - str r0, [sp] - mov r0, r9 - adds r0, 0x64 - str r0, [sp, 0x4] -_08122A34: - movs r4, 0 - adds r1, r7, 0x1 - mov r8, r1 - ldr r0, [sp] - cmp r0, 0xC - beq _08122A90 - movs r0, 0x64 - mov r6, r10 - muls r6, r0 - ldr r5, _08122A7C @ =gUnknown_845A76E -_08122A48: - mov r1, r9 - adds r0, r1, r6 - adds r1, r7, 0 - adds r1, 0xD - bl GetMonData - lsls r1, r4, 1 - adds r1, r5 - ldrh r1, [r1] - cmp r0, r1 - bne _08122A80 - ldr r0, _08122A78 @ =gUnknown_203B09C - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0xF - adds r1, 0x17 - adds r2, r4, 0 - adds r2, 0x12 - lsls r2, 24 - lsrs r2, 24 - bl AppendToList - b _08122A90 - .align 2, 0 -_08122A78: .4byte gUnknown_203B09C -_08122A7C: .4byte gUnknown_845A76E -_08122A80: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - lsls r0, r4, 1 - adds r0, r5 - ldrh r0, [r0] - cmp r0, 0xC - bne _08122A48 -_08122A90: - mov r1, r8 - lsls r0, r1, 24 - lsrs r7, r0, 24 - cmp r7, 0x3 - bls _08122A34 - ldr r0, [sp, 0x4] - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08122AB6 - ldr r0, _08122AE8 @ =gUnknown_203B09C - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0xF - adds r1, 0x17 - movs r2, 0x1 - bl AppendToList -_08122AB6: - movs r0, 0x64 - mov r1, r10 - muls r1, r0 - adds r0, r1, 0 - add r0, r9 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _08122AEC - ldr r0, _08122AE8 @ =gUnknown_203B09C - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0xF - adds r1, 0x17 - movs r2, 0x6 - bl AppendToList - b _08122AFC - .align 2, 0 -_08122AE8: .4byte gUnknown_203B09C -_08122AEC: - ldr r0, _08122B1C @ =gUnknown_203B09C - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0xF - adds r1, 0x17 - movs r2, 0x3 - bl AppendToList -_08122AFC: - ldr r0, _08122B1C @ =gUnknown_203B09C - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0xF - adds r1, 0x17 - movs r2, 0x2 - bl AppendToList - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08122B1C: .4byte gUnknown_203B09C - thumb_func_end sub_81229FC - - thumb_func_start sub_8122B20 -sub_8122B20: @ 8122B20 - push {lr} - adds r2, r0, 0 - ldr r1, _08122B3C @ =gUnknown_203B0A0 - ldrb r0, [r1, 0x8] - lsls r0, 28 - lsrs r0, 28 - adds r3, r1, 0 - cmp r0, 0xA - bhi _08122BCA - lsls r0, 2 - ldr r1, _08122B40 @ =_08122B44 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08122B3C: .4byte gUnknown_203B0A0 -_08122B40: .4byte _08122B44 - .align 2, 0 -_08122B44: - .4byte _08122B70 - .4byte _08122B80 - .4byte _08122BCA - .4byte _08122BCA - .4byte _08122B8C - .4byte _08122BCA - .4byte _08122BAC - .4byte _08122BCA - .4byte _08122BBE - .4byte _08122BC2 - .4byte _08122BC6 -_08122B70: - adds r0, r2, 0 - movs r1, 0x2D - bl GetMonData - negs r1, r0 - orrs r1, r0 - lsrs r1, 31 - b _08122BCC -_08122B80: - adds r0, r2, 0 - bl sub_8127A84 - lsls r0, 24 - lsrs r1, r0, 24 - b _08122BCC -_08122B8C: - movs r0, 0x9 - ldrsb r0, [r3, r0] - bl sub_8127510 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _08122BA4 - cmp r0, 0x1 - beq _08122BA8 - movs r1, 0x7 - b _08122BCC -_08122BA4: - movs r1, 0x4 - b _08122BCC -_08122BA8: - movs r1, 0x5 - b _08122BCC -_08122BAC: - adds r0, r2, 0 - movs r1, 0x2D - bl GetMonData - movs r1, 0x6 - cmp r0, 0 - beq _08122BCC - movs r1, 0x7 - b _08122BCC -_08122BBE: - movs r1, 0xA - b _08122BCC -_08122BC2: - movs r1, 0xB - b _08122BCC -_08122BC6: - movs r1, 0xC - b _08122BCC -_08122BCA: - movs r1, 0 -_08122BCC: - adds r0, r1, 0 - pop {r1} - bx r1 - thumb_func_end sub_8122B20 - - thumb_func_start sub_8122BD4 -sub_8122BD4: @ 8122BD4 - push {r4-r6,lr} - ldr r5, _08122C20 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r5, r1] - movs r0, 0x64 - adds r4, r1, 0 - muls r4, r0 - ldr r6, _08122C24 @ =gPlayerParty - adds r4, r6 - ldr r1, _08122C28 @ =gStringVar1 - adds r0, r4, 0 - bl GetMonNickname - ldr r0, _08122C2C @ =gUnknown_203B09C - ldr r0, [r0] - adds r0, 0xD - bl sub_8121CE4 - ldrb r5, [r5, 0x9] - adds r0, r4, 0 - bl sub_8122B20 - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r6, 0 - adds r1, r5, 0 - bl sub_812299C - movs r0, 0 - bl sub_8121E5C - movs r0, 0x16 - bl sub_8121D0C - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08122C20: .4byte gUnknown_203B0A0 -_08122C24: .4byte gPlayerParty -_08122C28: .4byte gStringVar1 -_08122C2C: .4byte gUnknown_203B09C - thumb_func_end sub_8122BD4 - - thumb_func_start sub_8122C30 -sub_8122C30: @ 8122C30 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8122BD4 - ldr r1, _08122C54 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r1, 0xFF - strh r1, [r0, 0x8] - ldr r1, _08122C58 @ =sub_8122C5C - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08122C54: .4byte gTasks -_08122C58: .4byte sub_8122C5C - thumb_func_end sub_8122C30 - - thumb_func_start sub_8122C5C -sub_8122C5C: @ 8122C5C - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, _08122C94 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08122D3E - bl sub_80BF748 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08122D3E - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - ldr r1, _08122C98 @ =gTasks+0x8 - adds r7, r0, r1 - ldr r0, _08122C9C @ =gUnknown_203B09C - ldr r0, [r0] - ldrb r0, [r0, 0x17] - cmp r0, 0x3 - bhi _08122CA0 - bl Menu_ProcessInputNoWrapAround_other - b _08122CA4 - .align 2, 0 -_08122C94: .4byte gPaletteFade -_08122C98: .4byte gTasks+0x8 -_08122C9C: .4byte gUnknown_203B09C -_08122CA0: - bl Menu_ProcessInput_other -_08122CA4: - lsls r0, 24 - lsrs r5, r0, 24 - movs r0, 0 - ldrsh r4, [r7, r0] - bl Menu_GetCursorPos - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - beq _08122CCE - ldr r0, _08122D14 @ =gUnknown_203B09C - ldr r4, [r0] - bl Menu_GetCursorPos - lsls r0, 24 - lsrs r0, 24 - adds r4, 0xF - adds r4, r0 - ldrb r0, [r4] - bl sub_8122138 -_08122CCE: - bl Menu_GetCursorPos - lsls r0, 24 - lsrs r0, 24 - strh r0, [r7] - lsls r0, r5, 24 - asrs r5, r0, 24 - movs r0, 0x2 - negs r0, r0 - cmp r5, r0 - beq _08122D3E - adds r0, 0x1 - cmp r5, r0 - bne _08122D1C - movs r0, 0x5 - bl PlaySE - ldr r4, _08122D14 @ =gUnknown_203B09C - ldr r0, [r4] - adds r0, 0xE - bl sub_8121CE4 - ldr r2, _08122D18 @ =gUnknown_845A618 - ldr r0, [r4] - ldrb r1, [r0, 0x17] - adds r0, r1 - ldrb r0, [r0, 0xE] - lsls r0, 3 - adds r2, 0x4 - adds r0, r2 - ldr r1, [r0] - adds r0, r6, 0 - bl _call_via_r1 - b _08122D3E - .align 2, 0 -_08122D14: .4byte gUnknown_203B09C -_08122D18: .4byte gUnknown_845A618 -_08122D1C: - ldr r4, _08122D44 @ =gUnknown_203B09C - ldr r0, [r4] - adds r0, 0xE - bl sub_8121CE4 - ldr r1, _08122D48 @ =gUnknown_845A618 - ldr r0, [r4] - adds r0, 0xF - adds r0, r5 - ldrb r0, [r0] - lsls r0, 3 - adds r1, 0x4 - adds r0, r1 - ldr r1, [r0] - adds r0, r6, 0 - bl _call_via_r1 -_08122D3E: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08122D44: .4byte gUnknown_203B09C -_08122D48: .4byte gUnknown_845A618 - thumb_func_end sub_8122C5C - - thumb_func_start sub_8122D4C -sub_8122D4C: @ 8122D4C - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x5 - bl PlaySE - ldr r0, _08122D70 @ =gUnknown_203B09C - ldr r1, [r0] - ldr r0, _08122D74 @ =sub_8122D78 - str r0, [r1, 0x4] - adds r0, r4, 0 - bl sub_811FA78 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08122D70: .4byte gUnknown_203B09C -_08122D74: .4byte sub_8122D78 - thumb_func_end sub_8122D4C - - thumb_func_start sub_8122D78 -sub_8122D78: @ 8122D78 - push {r4,lr} - sub sp, 0x4 - ldr r4, _08122DAC @ =gUnknown_203B0A0 - ldrb r1, [r4, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x1 - bne _08122D8C - bl pokemon_change_order -_08122D8C: - ldr r0, _08122DB0 @ =gPlayerParty - ldrb r1, [r4, 0x9] - ldr r2, _08122DB4 @ =gPlayerPartyCount - ldrb r2, [r2] - subs r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - ldr r3, _08122DB8 @ =sub_8122DBC - movs r4, 0 - str r4, [sp] - bl ShowPokemonSummaryScreen - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08122DAC: .4byte gUnknown_203B0A0 -_08122DB0: .4byte gPlayerParty -_08122DB4: .4byte gPlayerPartyCount -_08122DB8: .4byte sub_8122DBC - thumb_func_end sub_8122D78 - - thumb_func_start sub_8122DBC -sub_8122DBC: @ 8122DBC - push {lr} - sub sp, 0xC - ldr r2, _08122DF4 @ =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x8] - bl sub_8138B20 - ldr r3, _08122DF8 @ =gUnknown_203B0A0 - strb r0, [r3, 0x9] - ldrb r0, [r3, 0x8] - lsls r0, 28 - lsrs r0, 28 - ldrb r2, [r3, 0xB] - movs r1, 0x16 - str r1, [sp] - ldr r1, _08122DFC @ =sub_8122C30 - str r1, [sp, 0x4] - ldr r1, [r3] - str r1, [sp, 0x8] - movs r1, 0xFF - movs r3, 0x1 - bl PartyMenuInit - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_08122DF4: .4byte gPaletteFade -_08122DF8: .4byte gUnknown_203B0A0 -_08122DFC: .4byte sub_8122C30 - thumb_func_end sub_8122DBC - - thumb_func_start brm_switch -brm_switch: @ 8122E00 - push {r4-r6,lr} - adds r6, r0, 0 - lsls r6, 24 - lsrs r6, 24 - movs r0, 0x5 - bl PlaySE - ldr r5, _08122E4C @ =gUnknown_203B0A0 - movs r0, 0x8 - strb r0, [r5, 0xB] - ldr r4, _08122E50 @ =gUnknown_203B09C - ldr r0, [r4] - adds r0, 0xD - bl sub_8121CE4 - ldr r0, [r4] - adds r0, 0xC - bl sub_8121CE4 - movs r0, 0x3 - bl sub_8121D0C - ldrb r0, [r5, 0x9] - movs r1, 0x1 - bl sub_811F818 - ldrb r0, [r5, 0x9] - strb r0, [r5, 0xA] - ldr r1, _08122E54 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08122E58 @ =sub_811FB28 - str r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08122E4C: .4byte gUnknown_203B0A0 -_08122E50: .4byte gUnknown_203B09C -_08122E54: .4byte gTasks -_08122E58: .4byte sub_811FB28 - thumb_func_end brm_switch - - thumb_func_start sub_8122E5C -sub_8122E5C: @ 8122E5C - push {r4-r7,lr} - sub sp, 0xC - lsls r0, 24 - lsrs r7, r0, 24 - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - ldr r1, _08122E84 @ =gTasks+0x8 - adds r6, r0, r1 - ldr r4, _08122E88 @ =gUnknown_203B0A0 - movs r1, 0xA - ldrsb r1, [r4, r1] - movs r0, 0x9 - ldrsb r0, [r4, r0] - cmp r1, r0 - bne _08122E8C - adds r0, r7, 0 - bl sub_81235E8 - b _08122FE2 - .align 2, 0 -_08122E84: .4byte gTasks+0x8 -_08122E88: .4byte gUnknown_203B0A0 -_08122E8C: - bl sub_812358C - add r2, sp, 0x8 - movs r0, 0x9 - ldrsb r0, [r4, r0] - ldr r1, _08122EE8 @ =gUnknown_203B0B4 - ldr r1, [r1] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0, 0x8] - movs r4, 0 - strb r0, [r2] - adds r0, r2, 0 - ldrb r0, [r0] - movs r1, 0x1 - bl GetWindowAttribute - strh r0, [r6] - add r0, sp, 0x8 - ldrb r0, [r0] - movs r1, 0x2 - bl GetWindowAttribute - strh r0, [r6, 0x2] - add r0, sp, 0x8 - ldrb r0, [r0] - movs r1, 0x3 - bl GetWindowAttribute - strh r0, [r6, 0x4] - add r0, sp, 0x8 - ldrb r0, [r0] - movs r1, 0x4 - bl GetWindowAttribute - strh r0, [r6, 0x6] - strh r4, [r6, 0x10] - movs r1, 0x4 - ldrsh r0, [r6, r1] - cmp r0, 0xA - bne _08122EEC - movs r2, 0x1 - negs r2, r2 - adds r0, r2, 0 - b _08122EEE - .align 2, 0 -_08122EE8: .4byte gUnknown_203B0B4 -_08122EEC: - movs r0, 0x1 -_08122EEE: - strh r0, [r6, 0x14] - add r2, sp, 0x8 - ldr r0, _08122F4C @ =gUnknown_203B0A0 - ldrb r0, [r0, 0xA] - lsls r0, 24 - asrs r0, 24 - ldr r1, _08122F50 @ =gUnknown_203B0B4 - ldr r1, [r1] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0, 0x8] - movs r4, 0 - strb r0, [r2, 0x1] - adds r0, r2, 0 - ldrb r0, [r0, 0x1] - movs r1, 0x1 - bl GetWindowAttribute - strh r0, [r6, 0x8] - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - movs r1, 0x2 - bl GetWindowAttribute - strh r0, [r6, 0xA] - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - movs r1, 0x3 - bl GetWindowAttribute - strh r0, [r6, 0xC] - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - movs r1, 0x4 - bl GetWindowAttribute - strh r0, [r6, 0xE] - strh r4, [r6, 0x12] - movs r1, 0xC - ldrsh r0, [r6, r1] - cmp r0, 0xA - bne _08122F54 - movs r2, 0x1 - negs r2, r2 - adds r0, r2, 0 - b _08122F56 - .align 2, 0 -_08122F4C: .4byte gUnknown_203B0A0 -_08122F50: .4byte gUnknown_203B0B4 -_08122F54: - movs r0, 0x1 -_08122F56: - strh r0, [r6, 0x16] - ldr r4, _08122FEC @ =gUnknown_203B0C8 - movs r0, 0x4 - ldrsh r1, [r6, r0] - movs r2, 0x6 - ldrsh r0, [r6, r2] - lsls r0, 1 - muls r0, r1 - bl Alloc - str r0, [r4] - ldr r5, _08122FF0 @ =gUnknown_203B0CC - movs r0, 0xC - ldrsh r1, [r6, r0] - movs r2, 0xE - ldrsh r0, [r6, r2] - lsls r0, 1 - muls r0, r1 - bl Alloc - str r0, [r5] - ldr r1, [r4] - ldrb r2, [r6] - ldrb r3, [r6, 0x2] - ldrb r0, [r6, 0x4] - str r0, [sp] - ldrb r0, [r6, 0x6] - str r0, [sp, 0x4] - movs r0, 0 - bl CopyRectIntoAltRect - ldr r1, [r5] - ldrb r2, [r6, 0x8] - ldrb r3, [r6, 0xA] - ldrb r0, [r6, 0xC] - str r0, [sp] - ldrb r0, [r6, 0xE] - str r0, [sp, 0x4] - movs r0, 0 - bl CopyRectIntoAltRect - add r0, sp, 0x8 - ldrb r0, [r0] - bl ClearWindowTilemap - add r0, sp, 0x8 - ldrb r0, [r0, 0x1] - bl ClearWindowTilemap - ldr r4, _08122FF4 @ =gUnknown_203B0A0 - movs r0, 0x9 - strb r0, [r4, 0xB] - ldrb r0, [r4, 0x9] - movs r1, 0x1 - bl sub_811F818 - ldrb r0, [r4, 0xA] - movs r1, 0x1 - bl sub_811F818 - adds r0, r7, 0 - bl sub_81231E8 - ldr r1, _08122FF8 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, _08122FFC @ =sub_8123270 - str r1, [r0] -_08122FE2: - add sp, 0xC - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08122FEC: .4byte gUnknown_203B0C8 -_08122FF0: .4byte gUnknown_203B0CC -_08122FF4: .4byte gUnknown_203B0A0 -_08122FF8: .4byte gTasks -_08122FFC: .4byte sub_8123270 - thumb_func_end sub_8122E5C - - thumb_func_start sub_8123000 -sub_8123000: @ 8123000 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r2, 0 - mov r12, r3 - ldr r7, [sp, 0x18] - lsls r0, 16 - lsrs r3, r0, 16 - adds r5, r3, 0 - lsls r1, 16 - lsrs r2, r1, 16 - mov r8, r2 - lsls r0, r3, 16 - asrs r1, r0, 16 - lsls r0, r2, 16 - asrs r0, 16 - adds r4, r1, r0 - cmp r4, 0 - blt _0812302A - cmp r1, 0x1F - ble _0812302E -_0812302A: - movs r0, 0 - b _0812305C -_0812302E: - cmp r1, 0 - bge _08123042 - negs r0, r1 - strb r0, [r6] - movs r0, 0 - mov r1, r12 - strb r0, [r1] - adds r0, r2, r3 - strb r0, [r7] - b _0812305A -_08123042: - movs r0, 0 - strb r0, [r6] - mov r0, r12 - strb r5, [r0] - cmp r4, 0x1F - ble _08123056 - movs r0, 0x20 - subs r0, r5 - strb r0, [r7] - b _0812305A -_08123056: - mov r1, r8 - strb r1, [r7] -_0812305A: - movs r0, 0x1 -_0812305C: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8123000 - - thumb_func_start sub_8123068 -sub_8123068: @ 8123068 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x34 - str r0, [sp, 0x28] - ldr r0, [sp, 0x54] - ldr r4, [sp, 0x58] - lsls r2, 16 - lsrs r2, 16 - mov r9, r2 - lsls r3, 16 - lsls r0, 16 - lsrs r0, 16 - mov r10, r0 - lsls r4, 16 - lsrs r4, 16 - str r4, [sp, 0x30] - lsls r1, 16 - asrs r7, r1, 16 - lsrs r0, r3, 16 - str r0, [sp, 0x2C] - asrs r3, 16 - mov r8, r3 - mov r5, sp - adds r5, 0x25 - mov r6, sp - adds r6, 0x26 - str r6, [sp] - adds r0, r7, 0 - mov r1, r8 - add r2, sp, 0x24 - adds r3, r5, 0 - bl sub_8123000 - lsls r0, 24 - cmp r0, 0 - beq _08123122 - ldrb r2, [r5] - mov r1, r9 - lsls r0, r1, 24 - lsrs r0, 24 - mov r9, r0 - ldrb r0, [r6] - str r0, [sp] - mov r1, r10 - lsls r0, r1, 24 - lsrs r4, r0, 24 - str r4, [sp, 0x4] - movs r0, 0 - movs r1, 0 - mov r3, r9 - bl FillBgTilemapBufferRect_Palette0 - ldr r1, [sp, 0x30] - lsls r0, r1, 16 - asrs r0, 16 - adds r0, r7, r0 - lsls r0, 16 - asrs r0, 16 - str r6, [sp] - mov r1, r8 - add r2, sp, 0x24 - adds r3, r5, 0 - bl sub_8123000 - lsls r0, 24 - cmp r0, 0 - beq _08123122 - add r0, sp, 0x24 - ldrb r2, [r0] - ldr r1, [sp, 0x2C] - lsls r0, r1, 24 - lsrs r0, 24 - str r0, [sp] - str r4, [sp, 0x4] - ldrb r0, [r5] - str r0, [sp, 0x8] - mov r0, r9 - str r0, [sp, 0xC] - ldrb r0, [r6] - str r0, [sp, 0x10] - str r4, [sp, 0x14] - movs r0, 0x11 - str r0, [sp, 0x18] - movs r0, 0 - str r0, [sp, 0x1C] - str r0, [sp, 0x20] - ldr r1, [sp, 0x28] - movs r3, 0 - bl CopyRectToBgTilemapBufferRect -_08123122: - 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_8123068 - - thumb_func_start sub_8123134 -sub_8123134: @ 8123134 - push {r4,lr} - ldr r4, _08123184 @ =gSprites - ldrb r2, [r0, 0xB] - lsls r3, r2, 4 - adds r3, r2 - lsls r3, 2 - adds r3, r4 - lsls r1, 16 - asrs r1, 13 - ldrh r2, [r3, 0x24] - adds r2, r1 - strh r2, [r3, 0x24] - ldrb r3, [r0, 0xA] - lsls r2, r3, 4 - adds r2, r3 - lsls r2, 2 - adds r2, r4 - ldrh r3, [r2, 0x24] - adds r3, r1 - strh r3, [r2, 0x24] - ldrb r3, [r0, 0x9] - lsls r2, r3, 4 - adds r2, r3 - lsls r2, 2 - adds r2, r4 - ldrh r3, [r2, 0x24] - adds r3, r1 - strh r3, [r2, 0x24] - ldrb r2, [r0, 0xC] - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r4 - ldrh r2, [r0, 0x24] - adds r2, r1 - strh r2, [r0, 0x24] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08123184: .4byte gSprites - thumb_func_end sub_8123134 - - thumb_func_start sub_8123188 -sub_8123188: @ 8123188 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _081231DC @ =gTasks+0x8 - adds r4, r1, r0 - movs r1, 0x14 - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _081231B6 - ldr r2, _081231E0 @ =gUnknown_203B0B4 - ldr r0, _081231E4 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - lsls r1, 4 - ldr r0, [r2] - adds r0, r1 - movs r2, 0x14 - ldrsh r1, [r4, r2] - bl sub_8123134 -_081231B6: - movs r1, 0x16 - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _081231D4 - ldr r2, _081231E0 @ =gUnknown_203B0B4 - ldr r0, _081231E4 @ =gUnknown_203B0A0 - movs r1, 0xA - ldrsb r1, [r0, r1] - lsls r1, 4 - ldr r0, [r2] - adds r0, r1 - movs r2, 0x16 - ldrsh r1, [r4, r2] - bl sub_8123134 -_081231D4: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081231DC: .4byte gTasks+0x8 -_081231E0: .4byte gUnknown_203B0B4 -_081231E4: .4byte gUnknown_203B0A0 - thumb_func_end sub_8123188 - - thumb_func_start sub_81231E8 -sub_81231E8: @ 81231E8 - push {r4-r6,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _08123264 @ =gTasks+0x8 - adds r5, r1, r0 - movs r1, 0x14 - ldrsh r0, [r5, r1] - cmp r0, 0 - beq _08123228 - ldr r0, _08123268 @ =gUnknown_203B0C8 - ldr r0, [r0] - ldrh r1, [r5, 0x10] - ldrh r2, [r5] - adds r1, r2 - lsls r1, 16 - asrs r1, 16 - movs r3, 0x2 - ldrsh r2, [r5, r3] - movs r4, 0x4 - ldrsh r3, [r5, r4] - movs r6, 0x6 - ldrsh r4, [r5, r6] - str r4, [sp] - movs r6, 0x14 - ldrsh r4, [r5, r6] - str r4, [sp, 0x4] - bl sub_8123068 -_08123228: - movs r1, 0x16 - ldrsh r0, [r5, r1] - cmp r0, 0 - beq _08123256 - ldr r0, _0812326C @ =gUnknown_203B0CC - ldr r0, [r0] - ldrh r1, [r5, 0x12] - ldrh r2, [r5, 0x8] - adds r1, r2 - lsls r1, 16 - asrs r1, 16 - movs r3, 0xA - ldrsh r2, [r5, r3] - movs r4, 0xC - ldrsh r3, [r5, r4] - movs r6, 0xE - ldrsh r4, [r5, r6] - str r4, [sp] - movs r6, 0x16 - ldrsh r4, [r5, r6] - str r4, [sp, 0x4] - bl sub_8123068 -_08123256: - movs r0, 0 - bl ScheduleBgCopyTilemapToVram - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08123264: .4byte gTasks+0x8 -_08123268: .4byte gUnknown_203B0C8 -_0812326C: .4byte gUnknown_203B0CC - thumb_func_end sub_81231E8 - - thumb_func_start sub_8123270 -sub_8123270: @ 8123270 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r0, r4, 2 - adds r0, r4 - lsls r7, r0, 3 - ldr r0, _08123370 @ =gTasks+0x8 - mov r8, r0 - adds r6, r7, r0 - adds r0, r4, 0 - bl sub_81231E8 - adds r0, r4, 0 - bl sub_8123188 - ldrh r1, [r6, 0x14] - ldrh r2, [r6, 0x10] - adds r1, r2 - strh r1, [r6, 0x10] - ldrh r0, [r6, 0x16] - ldrh r3, [r6, 0x12] - adds r0, r3 - strh r0, [r6, 0x12] - add r2, sp, 0x8 - ldrh r0, [r6] - adds r0, r1 - strh r0, [r2] - adds r1, r2, 0 - ldrh r0, [r6, 0x12] - ldrh r3, [r6, 0x8] - adds r2, r0, r3 - strh r2, [r1, 0x2] - adds r0, r1, 0 - ldrh r0, [r0] - cmp r0, 0x21 - bls _08123362 - lsls r0, r2, 16 - lsrs r0, 16 - cmp r0, 0x21 - bls _08123362 - movs r1, 0x14 - ldrsh r0, [r6, r1] - negs r0, r0 - strh r0, [r6, 0x14] - movs r2, 0x16 - ldrsh r0, [r6, r2] - negs r0, r0 - strh r0, [r6, 0x16] - bl swap_pokemon_and_oams - ldr r4, _08123374 @ =gUnknown_203B0A0 - ldrb r0, [r4, 0x9] - bl sub_811F234 - ldrb r0, [r4, 0xA] - bl sub_811F234 - movs r0, 0x9 - ldrsb r0, [r4, r0] - ldr r5, _08123378 @ =gUnknown_203B0B4 - ldr r1, [r5] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0, 0x8] - bl PutWindowTilemap - movs r0, 0xA - ldrsb r0, [r4, r0] - ldr r1, [r5] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0, 0x8] - bl PutWindowTilemap - ldr r0, _0812337C @ =gUnknown_203B0C8 - ldr r1, [r0] - ldrb r2, [r6] - ldrb r3, [r6, 0x2] - ldrb r0, [r6, 0x4] - str r0, [sp] - ldrb r0, [r6, 0x6] - str r0, [sp, 0x4] - movs r0, 0 - bl CopyRectIntoAltRect - ldr r0, _08123380 @ =gUnknown_203B0CC - ldr r1, [r0] - ldrb r2, [r6, 0x8] - ldrb r3, [r6, 0xA] - ldrb r0, [r6, 0xC] - str r0, [sp] - ldrb r0, [r6, 0xE] - str r0, [sp, 0x4] - movs r0, 0 - bl CopyRectIntoAltRect - movs r0, 0x9 - ldrsb r0, [r4, r0] - ldr r1, [r5] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0, 0x8] - bl ClearWindowTilemap - movs r0, 0xA - ldrsb r0, [r4, r0] - ldr r1, [r5] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0, 0x8] - bl ClearWindowTilemap - mov r0, r8 - subs r0, 0x8 - adds r0, r7, r0 - ldr r1, _08123384 @ =sub_8123388 - str r1, [r0] -_08123362: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08123370: .4byte gTasks+0x8 -_08123374: .4byte gUnknown_203B0A0 -_08123378: .4byte gUnknown_203B0B4 -_0812337C: .4byte gUnknown_203B0C8 -_08123380: .4byte gUnknown_203B0CC -_08123384: .4byte sub_8123388 - thumb_func_end sub_8123270 - - thumb_func_start sub_8123388 -sub_8123388: @ 8123388 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - ldr r1, _081233E8 @ =gTasks+0x8 - adds r4, r0, r1 - adds r0, r6, 0 - bl sub_81231E8 - adds r0, r6, 0 - bl sub_8123188 - movs r1, 0x14 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _081233F4 - movs r2, 0x16 - ldrsh r0, [r4, r2] - cmp r0, 0 - bne _081233F4 - ldr r5, _081233EC @ =gUnknown_203B0A0 - movs r0, 0x9 - ldrsb r0, [r5, r0] - ldr r4, _081233F0 @ =gUnknown_203B0B4 - ldr r1, [r4] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0, 0x8] - bl PutWindowTilemap - movs r0, 0xA - ldrsb r0, [r5, r0] - ldr r1, [r4] - lsls r0, 4 - adds r0, r1 - ldrb r0, [r0, 0x8] - bl PutWindowTilemap - movs r0, 0 - bl ScheduleBgCopyTilemapToVram - adds r0, r6, 0 - bl sub_81235E8 - b _08123418 - .align 2, 0 -_081233E8: .4byte gTasks+0x8 -_081233EC: .4byte gUnknown_203B0A0 -_081233F0: .4byte gUnknown_203B0B4 -_081233F4: - ldrh r1, [r4, 0x14] - ldrh r0, [r4, 0x10] - adds r1, r0 - strh r1, [r4, 0x10] - ldrh r0, [r4, 0x16] - ldrh r2, [r4, 0x12] - adds r0, r2 - strh r0, [r4, 0x12] - lsls r1, 16 - asrs r1, 16 - cmp r1, 0 - bne _0812340E - strh r1, [r4, 0x14] -_0812340E: - movs r1, 0x12 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _08123418 - strh r0, [r4, 0x16] -_08123418: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8123388 - - thumb_func_start oamt_swap_pos -oamt_swap_pos: @ 8123420 - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - ldrb r3, [r0] - ldrb r2, [r1] - strb r2, [r0] - strb r3, [r1] - ldr r5, _081234E8 @ =gSprites - ldrb r2, [r0] - lsls r3, r2, 4 - adds r3, r2 - lsls r3, 2 - adds r3, r5 - ldrh r6, [r3, 0x20] - ldrh r2, [r3, 0x22] - mov r8, r2 - ldrh r2, [r3, 0x24] - mov r9, r2 - ldrh r2, [r3, 0x26] - mov r10, r2 - ldrb r4, [r1] - lsls r2, r4, 4 - adds r2, r4 - lsls r2, 2 - adds r2, r5 - ldrh r2, [r2, 0x20] - strh r2, [r3, 0x20] - ldrb r2, [r0] - lsls r3, r2, 4 - adds r3, r2 - lsls r3, 2 - adds r3, r5 - ldrb r4, [r1] - lsls r2, r4, 4 - adds r2, r4 - lsls r2, 2 - adds r2, r5 - ldrh r2, [r2, 0x22] - strh r2, [r3, 0x22] - ldrb r2, [r0] - lsls r3, r2, 4 - adds r3, r2 - lsls r3, 2 - adds r3, r5 - ldrb r4, [r1] - lsls r2, r4, 4 - adds r2, r4 - lsls r2, 2 - adds r2, r5 - ldrh r2, [r2, 0x24] - strh r2, [r3, 0x24] - ldrb r0, [r0] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r5 - ldrb r3, [r1] - lsls r0, r3, 4 - adds r0, r3 - lsls r0, 2 - adds r0, r5 - ldrh r0, [r0, 0x26] - strh r0, [r2, 0x26] - ldrb r2, [r1] - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r5 - strh r6, [r0, 0x20] - ldrb r2, [r1] - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r5 - mov r2, r8 - strh r2, [r0, 0x22] - ldrb r2, [r1] - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r5 - mov r2, r9 - strh r2, [r0, 0x24] - ldrb r1, [r1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - mov r1, r10 - strh r1, [r0, 0x26] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081234E8: .4byte gSprites - thumb_func_end oamt_swap_pos - - thumb_func_start swap_pokemon_and_oams -swap_pokemon_and_oams: @ 81234EC - push {r4-r6,lr} - sub sp, 0x8 - ldr r1, _08123580 @ =gUnknown_203B0B4 - ldr r2, _08123584 @ =gUnknown_203B0A0 - movs r3, 0x9 - ldrsb r3, [r2, r3] - lsls r0, r3, 4 - ldr r1, [r1] - adds r0, r1, r0 - str r0, [sp] - ldrb r2, [r2, 0xA] - lsls r2, 24 - asrs r2, 24 - lsls r0, r2, 4 - adds r0, r1, r0 - str r0, [sp, 0x4] - movs r1, 0x64 - adds r4, r3, 0 - muls r4, r1 - ldr r0, _08123588 @ =gPlayerParty - adds r4, r0 - adds r5, r2, 0 - muls r5, r1 - adds r5, r0 - movs r0, 0x64 - bl Alloc - adds r6, r0, 0 - adds r1, r4, 0 - movs r2, 0x64 - bl memcpy - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x64 - bl memcpy - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0x64 - bl memcpy - adds r0, r6, 0 - bl Free - ldr r0, [sp] - adds r0, 0xB - ldr r1, [sp, 0x4] - adds r1, 0xB - bl oamt_swap_pos - ldr r0, [sp] - adds r0, 0xA - ldr r1, [sp, 0x4] - adds r1, 0xA - bl oamt_swap_pos - ldr r0, [sp] - adds r0, 0x9 - ldr r1, [sp, 0x4] - adds r1, 0x9 - bl oamt_swap_pos - ldr r0, [sp] - adds r0, 0xC - ldr r1, [sp, 0x4] - adds r1, 0xC - bl oamt_swap_pos - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08123580: .4byte gUnknown_203B0B4 -_08123584: .4byte gUnknown_203B0A0 -_08123588: .4byte gPlayerParty - thumb_func_end swap_pokemon_and_oams - - thumb_func_start sub_812358C -sub_812358C: @ 812358C - push {r4-r6,lr} - mov r6, r8 - push {r6} - movs r0, 0x4 - bl Alloc - adds r4, r0, 0 - ldr r0, _081235E0 @ =gUnknown_203B0A0 - mov r8, r0 - ldrb r0, [r0, 0x9] - lsls r0, 24 - asrs r0, 24 - movs r6, 0x64 - muls r0, r6 - ldr r5, _081235E4 @ =gPlayerParty - adds r0, r5 - movs r1, 0x41 - bl GetMonData - strh r0, [r4] - mov r1, r8 - movs r0, 0xA - ldrsb r0, [r1, r0] - muls r0, r6 - adds r0, r5 - movs r1, 0x41 - bl GetMonData - strh r0, [r4, 0x2] - movs r0, 0x3 - adds r1, r4, 0 - bl sub_8113550 - adds r0, r4, 0 - bl Free - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081235E0: .4byte gUnknown_203B0A0 -_081235E4: .4byte gPlayerParty - thumb_func_end sub_812358C - - thumb_func_start sub_81235E8 -sub_81235E8: @ 81235E8 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r0, _08123630 @ =gUnknown_203B09C - ldr r0, [r0] - adds r0, 0xD - bl sub_8121CE4 - ldr r4, _08123634 @ =gUnknown_203B0A0 - movs r0, 0 - strb r0, [r4, 0xB] - ldrb r0, [r4, 0x9] - movs r1, 0 - bl sub_811F818 - ldrb r0, [r4, 0xA] - strb r0, [r4, 0x9] - ldrb r0, [r4, 0xA] - movs r1, 0x1 - bl sub_811F818 - movs r0, 0 - bl sub_8121D0C - ldr r1, _08123638 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _0812363C @ =sub_811FB28 - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08123630: .4byte gUnknown_203B09C -_08123634: .4byte gUnknown_203B0A0 -_08123638: .4byte gTasks -_0812363C: .4byte sub_811FB28 - thumb_func_end sub_81235E8 - - thumb_func_start brm_cancel_1 -brm_cancel_1: @ 8123640 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r0, 0x5 - bl PlaySE - ldr r4, _08123674 @ =gUnknown_203B09C - ldr r0, [r4] - adds r0, 0xC - bl sub_8121CE4 - ldr r0, [r4] - adds r0, 0xD - bl sub_8121CE4 - ldr r0, _08123678 @ =gUnknown_203B0A0 - ldrb r1, [r0, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x6 - bne _0812367C - movs r0, 0xF - bl sub_8121D0C - b _08123682 - .align 2, 0 -_08123674: .4byte gUnknown_203B09C -_08123678: .4byte gUnknown_203B0A0 -_0812367C: - movs r0, 0 - bl sub_8121D0C -_08123682: - ldr r0, _08123698 @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _0812369C @ =sub_811FB28 - str r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08123698: .4byte gTasks -_0812369C: .4byte sub_811FB28 - thumb_func_end brm_cancel_1 - - thumb_func_start sub_81236A0 -sub_81236A0: @ 81236A0 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - movs r0, 0x5 - bl PlaySE - ldr r4, _081236F0 @ =gUnknown_203B09C - ldr r0, [r4] - adds r0, 0xC - bl sub_8121CE4 - ldr r0, [r4] - adds r0, 0xD - bl sub_8121CE4 - ldr r0, _081236F4 @ =gPlayerParty - ldr r1, _081236F8 @ =gUnknown_203B0A0 - ldrb r1, [r1, 0x9] - movs r2, 0x8 - bl sub_812299C - movs r0, 0x1 - bl sub_8121E5C - movs r0, 0x19 - bl sub_8121D0C - ldr r1, _081236FC @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - movs r1, 0xFF - strh r1, [r0, 0x8] - ldr r1, _08123700 @ =sub_8122C5C - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_081236F0: .4byte gUnknown_203B09C -_081236F4: .4byte gPlayerParty -_081236F8: .4byte gUnknown_203B0A0 -_081236FC: .4byte gTasks -_08123700: .4byte sub_8122C5C - thumb_func_end sub_81236A0 - - thumb_func_start sub_8123704 -sub_8123704: @ 8123704 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x5 - bl PlaySE - ldr r0, _08123728 @ =gUnknown_203B09C - ldr r1, [r0] - ldr r0, _0812372C @ =sub_8123730 - str r0, [r1, 0x4] - adds r0, r4, 0 - bl sub_811FA78 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08123728: .4byte gUnknown_203B09C -_0812372C: .4byte sub_8123730 - thumb_func_end sub_8123704 - - thumb_func_start sub_8123730 -sub_8123730: @ 8123730 - push {lr} - ldr r2, _08123740 @ =c2_8123744 - movs r0, 0x1 - movs r1, 0x3 - bl sub_8107DB4 - pop {r0} - bx r0 - .align 2, 0 -_08123740: .4byte c2_8123744 - thumb_func_end sub_8123730 - - thumb_func_start c2_8123744 -c2_8123744: @ 8123744 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - ldr r6, _0812376C @ =gSpecialVar_ItemId - ldrh r0, [r6] - cmp r0, 0 - bne _08123778 - ldr r3, _08123770 @ =gUnknown_203B0A0 - ldrb r0, [r3, 0x8] - lsls r0, 28 - lsrs r0, 28 - ldrb r2, [r3, 0xB] - movs r1, 0x7F - str r1, [sp] - ldr r1, _08123774 @ =sub_8122C30 - str r1, [sp, 0x4] - ldr r1, [r3] - b _081237AE - .align 2, 0 -_0812376C: .4byte gSpecialVar_ItemId -_08123770: .4byte gUnknown_203B0A0 -_08123774: .4byte sub_8122C30 -_08123778: - ldr r4, _081237BC @ =gUnknown_203B0D8 - ldr r5, _081237C0 @ =gUnknown_203B0A0 - movs r0, 0x9 - ldrsb r0, [r5, r0] - movs r1, 0x64 - mov r8, r1 - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - ldr r7, _081237C4 @ =gPlayerParty - adds r0, r7 - movs r1, 0xC - bl GetMonData - strh r0, [r4] - lsls r0, 16 - cmp r0, 0 - beq _081237CC - ldrb r0, [r5, 0x8] - lsls r0, 28 - lsrs r0, 28 - ldrb r2, [r5, 0xB] - movs r1, 0x7F - str r1, [sp] - ldr r1, _081237C8 @ =sub_81238A4 - str r1, [sp, 0x4] - ldr r1, [r5] -_081237AE: - str r1, [sp, 0x8] - movs r1, 0xFF - movs r3, 0x1 - bl PartyMenuInit - b _08123814 - .align 2, 0 -_081237BC: .4byte gUnknown_203B0D8 -_081237C0: .4byte gUnknown_203B0A0 -_081237C4: .4byte gPlayerParty -_081237C8: .4byte sub_81238A4 -_081237CC: - ldrh r0, [r6] - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _081237F8 - ldrh r0, [r6] - movs r1, 0x1 - bl RemoveBagItem - movs r0, 0x9 - ldrsb r0, [r5, r0] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r7 - ldrh r1, [r6] - bl sub_81205C8 - bl sub_8123A80 - b _08123814 -_081237F8: - ldrb r0, [r5, 0x8] - lsls r0, 28 - lsrs r0, 28 - ldrb r2, [r5, 0xB] - movs r1, 0x7F - str r1, [sp] - ldr r1, _08123820 @ =sub_8123824 - str r1, [sp, 0x4] - ldr r1, [r5] - str r1, [sp, 0x8] - movs r1, 0xFF - movs r3, 0x1 - bl PartyMenuInit -_08123814: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08123820: .4byte sub_8123824 - thumb_func_end c2_8123744 - - thumb_func_start sub_8123824 -sub_8123824: @ 8123824 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, _0812388C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08123880 - ldr r0, _08123890 @ =gSpecialVar_ItemId - ldrh r4, [r0] - ldr r0, _08123894 @ =gUnknown_203B0A0 - mov r8, r0 - ldrb r0, [r0, 0x9] - lsls r0, 24 - asrs r0, 24 - movs r6, 0x64 - muls r0, r6 - ldr r5, _08123898 @ =gPlayerParty - adds r0, r5 - adds r1, r4, 0 - movs r2, 0 - movs r3, 0 - bl sub_8120420 - mov r1, r8 - movs r0, 0x9 - ldrsb r0, [r1, r0] - muls r0, r6 - adds r0, r5 - adds r1, r4, 0 - bl sub_81205C8 - adds r0, r4, 0 - movs r1, 0x1 - bl RemoveBagItem - ldr r1, _0812389C @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, _081238A0 @ =sub_8123BF0 - str r1, [r0] -_08123880: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0812388C: .4byte gPaletteFade -_08123890: .4byte gSpecialVar_ItemId -_08123894: .4byte gUnknown_203B0A0 -_08123898: .4byte gPlayerParty -_0812389C: .4byte gTasks -_081238A0: .4byte sub_8123BF0 - thumb_func_end sub_8123824 - - thumb_func_start sub_81238A4 -sub_81238A4: @ 81238A4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _081238E4 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _081238DC - ldr r0, _081238E8 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _081238EC @ =gPlayerParty - adds r0, r1 - ldr r1, _081238F0 @ =gUnknown_203B0D8 - ldrh r1, [r1] - movs r2, 0x1 - bl sub_812050C - ldr r1, _081238F4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _081238F8 @ =sub_81238FC - str r1, [r0] -_081238DC: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081238E4: .4byte gPaletteFade -_081238E8: .4byte gUnknown_203B0A0 -_081238EC: .4byte gPlayerParty -_081238F0: .4byte gUnknown_203B0D8 -_081238F4: .4byte gTasks -_081238F8: .4byte sub_81238FC - thumb_func_end sub_81238A4 - - thumb_func_start sub_81238FC -sub_81238FC: @ 81238FC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08123920 - bl sub_812200C - ldr r0, _08123928 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0812392C @ =sub_8123930 - str r0, [r1] -_08123920: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08123928: .4byte gTasks -_0812392C: .4byte sub_8123930 - thumb_func_end sub_81238FC - - thumb_func_start sub_8123930 -sub_8123930: @ 8123930 - push {r4-r6,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl Menu_ProcessInputNoWrapClearOnChoose - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _08123956 - cmp r1, 0 - bgt _08123950 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08123A2C - b _08123A40 -_08123950: - cmp r1, 0x1 - beq _08123A32 - b _08123A40 -_08123956: - ldr r5, _08123998 @ =gSpecialVar_ItemId - ldrh r0, [r5] - movs r1, 0x1 - bl RemoveBagItem - ldr r6, _0812399C @ =gUnknown_203B0D8 - ldrh r0, [r6] - movs r1, 0x1 - bl AddBagItem - lsls r0, 24 - cmp r0, 0 - bne _081239AC - ldrh r0, [r5] - movs r1, 0x1 - bl AddBagItem - ldrh r0, [r6] - bl sub_8120658 - ldr r0, _081239A0 @ =gStringVar4 - movs r1, 0 - bl sub_81202F8 - ldr r1, _081239A4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _081239A8 @ =sub_81203B8 - str r1, [r0] - b _08123A40 - .align 2, 0 -_08123998: .4byte gSpecialVar_ItemId -_0812399C: .4byte gUnknown_203B0D8 -_081239A0: .4byte gStringVar4 -_081239A4: .4byte gTasks -_081239A8: .4byte sub_81203B8 -_081239AC: - ldrh r0, [r5] - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _081239EC - ldr r0, _081239DC @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _081239E0 @ =gPlayerParty - adds r0, r1 - ldrh r1, [r5] - bl sub_81205C8 - ldr r1, _081239E4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _081239E8 @ =sub_8123A50 - str r1, [r0] - b _08123A40 - .align 2, 0 -_081239DC: .4byte gUnknown_203B0A0 -_081239E0: .4byte gPlayerParty -_081239E4: .4byte gTasks -_081239E8: .4byte sub_8123A50 -_081239EC: - ldr r0, _08123A1C @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08123A20 @ =gPlayerParty - adds r0, r1 - ldrh r1, [r5] - bl sub_81205C8 - ldrh r0, [r5] - ldrh r1, [r6] - movs r2, 0x1 - bl sub_8120558 - ldr r1, _08123A24 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08123A28 @ =sub_8123BF0 - str r1, [r0] - b _08123A40 - .align 2, 0 -_08123A1C: .4byte gUnknown_203B0A0 -_08123A20: .4byte gPlayerParty -_08123A24: .4byte gTasks -_08123A28: .4byte sub_8123BF0 -_08123A2C: - movs r0, 0x5 - bl PlaySE -_08123A32: - ldr r0, _08123A48 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08123A4C @ =sub_81203B8 - str r0, [r1] -_08123A40: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08123A48: .4byte gTasks -_08123A4C: .4byte sub_81203B8 - thumb_func_end sub_8123930 - - thumb_func_start sub_8123A50 -sub_8123A50: @ 8123A50 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08123A70 - ldr r0, _08123A78 @ =gUnknown_203B09C - ldr r1, [r0] - ldr r0, _08123A7C @ =sub_8123A80 - str r0, [r1, 0x4] - adds r0, r4, 0 - bl sub_811FA78 -_08123A70: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08123A78: .4byte gUnknown_203B09C -_08123A7C: .4byte sub_8123A80 - thumb_func_end sub_8123A50 - - thumb_func_start sub_8123A80 -sub_8123A80: @ 8123A80 - push {lr} - ldr r0, _08123AB8 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08123ABC @ =gPlayerParty - adds r0, r1 - movs r1, 0x40 - bl GetMonData - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08123AC0 @ =gSaveBlock1Ptr - lsls r2, r0, 3 - adds r2, r0 - lsls r2, 2 - ldr r0, _08123AC4 @ =0x00002cd0 - adds r2, r0 - ldr r1, [r1] - adds r1, r2 - ldr r2, _08123AC8 @ =sub_8123ACC - movs r0, 0x4 - bl sub_80FEBAC - pop {r0} - bx r0 - .align 2, 0 -_08123AB8: .4byte gUnknown_203B0A0 -_08123ABC: .4byte gPlayerParty -_08123AC0: .4byte gSaveBlock1Ptr -_08123AC4: .4byte 0x00002cd0 -_08123AC8: .4byte sub_8123ACC - thumb_func_end sub_8123A80 - - thumb_func_start sub_8123ACC -sub_8123ACC: @ 8123ACC - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - ldr r6, _08123B38 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r6, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08123B3C @ =gPlayerParty - adds r5, r1, r0 - adds r0, r5, 0 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - ldr r0, _08123B40 @ =gSpecialVar_Result - ldrh r7, [r0] - cmp r7, 0 - bne _08123B4C - adds r0, r5, 0 - bl TakeMailFromMon - ldr r4, _08123B44 @ =gUnknown_203B0D8 - adds r0, r5, 0 - movs r1, 0xC - adds r2, r4, 0 - bl SetMonData - ldrh r0, [r4] - movs r1, 0x1 - bl RemoveBagItem - mov r0, r8 - movs r1, 0x1 - bl AddBagItem - ldrb r0, [r6, 0x8] - lsls r0, 28 - lsrs r0, 28 - ldrb r2, [r6, 0xB] - str r7, [sp] - ldr r1, _08123B48 @ =sub_8122C30 - str r1, [sp, 0x4] - ldr r1, [r6] - str r1, [sp, 0x8] - movs r1, 0xFF - movs r3, 0x1 - bl PartyMenuInit - b _08123B68 - .align 2, 0 -_08123B38: .4byte gUnknown_203B0A0 -_08123B3C: .4byte gPlayerParty -_08123B40: .4byte gSpecialVar_Result -_08123B44: .4byte gUnknown_203B0D8 -_08123B48: .4byte sub_8122C30 -_08123B4C: - ldrb r0, [r6, 0x8] - lsls r0, 28 - lsrs r0, 28 - ldrb r2, [r6, 0xB] - movs r1, 0 - str r1, [sp] - ldr r1, _08123B74 @ =sub_8123B78 - str r1, [sp, 0x4] - ldr r1, [r6] - str r1, [sp, 0x8] - movs r1, 0xFF - movs r3, 0x1 - bl PartyMenuInit -_08123B68: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08123B74: .4byte sub_8123B78 - thumb_func_end sub_8123ACC - - thumb_func_start sub_8123B78 -sub_8123B78: @ 8123B78 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08123BB0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08123BDE - ldr r1, _08123BB4 @ =gUnknown_203B0D8 - ldrh r0, [r1] - cmp r0, 0 - bne _08123BC4 - ldr r0, _08123BB8 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08123BBC @ =gPlayerParty - adds r0, r1 - ldr r1, _08123BC0 @ =gSpecialVar_ItemId - ldrh r1, [r1] - movs r2, 0 - movs r3, 0 - bl sub_8120420 - b _08123BD0 - .align 2, 0 -_08123BB0: .4byte gPaletteFade -_08123BB4: .4byte gUnknown_203B0D8 -_08123BB8: .4byte gUnknown_203B0A0 -_08123BBC: .4byte gPlayerParty -_08123BC0: .4byte gSpecialVar_ItemId -_08123BC4: - ldr r0, _08123BE4 @ =gSpecialVar_ItemId - ldrh r0, [r0] - ldrh r1, [r1] - movs r2, 0 - bl sub_8120558 -_08123BD0: - ldr r0, _08123BE8 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08123BEC @ =sub_8123BF0 - str r0, [r1] -_08123BDE: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08123BE4: .4byte gSpecialVar_ItemId -_08123BE8: .4byte gTasks -_08123BEC: .4byte sub_8123BF0 - thumb_func_end sub_8123B78 - - thumb_func_start sub_8123BF0 -sub_8123BF0: @ 8123BF0 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _08123C2C @ =gUnknown_203B0A0 - ldrb r4, [r0, 0x9] - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08123C24 - lsls r2, r4, 24 - asrs r2, 24 - movs r0, 0x64 - muls r0, r2 - ldr r1, _08123C30 @ =gPlayerParty - adds r0, r1 - ldr r1, _08123C34 @ =gUnknown_203B0B4 - lsls r2, 4 - ldr r1, [r1] - adds r1, r2 - bl sub_81224B4 - adds r0, r5, 0 - bl sub_81203B8 -_08123C24: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08123C2C: .4byte gUnknown_203B0A0 -_08123C30: .4byte gPlayerParty -_08123C34: .4byte gUnknown_203B0B4 - thumb_func_end sub_8123BF0 - - thumb_func_start sub_8123C38 -sub_8123C38: @ 8123C38 - push {r4-r7,lr} - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, _08123C90 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08123C94 @ =gPlayerParty - adds r5, r1, r0 - adds r0, r5, 0 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r6, r0, 16 - movs r0, 0x5 - bl PlaySE - ldr r4, _08123C98 @ =gUnknown_203B09C - ldr r0, [r4] - adds r0, 0xC - bl sub_8121CE4 - ldr r0, [r4] - adds r0, 0xD - bl sub_8121CE4 - adds r0, r5, 0 - bl sub_8120610 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _08123C9C - cmp r0, 0x1 - beq _08123CC0 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0x1 - bl sub_81204AC - b _08123CCE - .align 2, 0 -_08123C90: .4byte gUnknown_203B0A0 -_08123C94: .4byte gPlayerParty -_08123C98: .4byte gUnknown_203B09C -_08123C9C: - ldr r1, _08123CB4 @ =gStringVar1 - adds r0, r5, 0 - bl GetMonNickname - ldr r4, _08123CB8 @ =gStringVar4 - ldr r1, _08123CBC @ =gUnknown_8416C8F - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - b _08123CC8 - .align 2, 0 -_08123CB4: .4byte gStringVar1 -_08123CB8: .4byte gStringVar4 -_08123CBC: .4byte gUnknown_8416C8F -_08123CC0: - adds r0, r6, 0 - bl sub_8120658 - ldr r0, _08123CE8 @ =gStringVar4 -_08123CC8: - movs r1, 0x1 - bl sub_81202F8 -_08123CCE: - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r0, _08123CEC @ =gTasks - lsls r1, r7, 2 - adds r1, r7 - lsls r1, 3 - adds r1, r0 - ldr r0, _08123CF0 @ =sub_8123BF0 - str r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08123CE8: .4byte gStringVar4 -_08123CEC: .4byte gTasks -_08123CF0: .4byte sub_8123BF0 - thumb_func_end sub_8123C38 - - thumb_func_start sub_8123CF4 -sub_8123CF4: @ 8123CF4 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - movs r0, 0x5 - bl PlaySE - ldr r4, _08123D44 @ =gUnknown_203B09C - ldr r0, [r4] - adds r0, 0xC - bl sub_8121CE4 - ldr r0, [r4] - adds r0, 0xD - bl sub_8121CE4 - ldr r0, _08123D48 @ =gPlayerParty - ldr r1, _08123D4C @ =gUnknown_203B0A0 - ldrb r1, [r1, 0x9] - movs r2, 0x9 - bl sub_812299C - movs r0, 0x2 - bl sub_8121E5C - movs r0, 0x1A - bl sub_8121D0C - ldr r1, _08123D50 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - movs r1, 0xFF - strh r1, [r0, 0x8] - ldr r1, _08123D54 @ =sub_8122C5C - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08123D44: .4byte gUnknown_203B09C -_08123D48: .4byte gPlayerParty -_08123D4C: .4byte gUnknown_203B0A0 -_08123D50: .4byte gTasks -_08123D54: .4byte sub_8122C5C - thumb_func_end sub_8123CF4 - - thumb_func_start sub_8123D58 -sub_8123D58: @ 8123D58 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x5 - bl PlaySE - ldr r0, _08123D7C @ =gUnknown_203B09C - ldr r1, [r0] - ldr r0, _08123D80 @ =sub_8123D84 - str r0, [r1, 0x4] - adds r0, r4, 0 - bl sub_811FA78 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08123D7C: .4byte gUnknown_203B09C -_08123D80: .4byte sub_8123D84 - thumb_func_end sub_8123D58 - - thumb_func_start sub_8123D84 -sub_8123D84: @ 8123D84 - push {lr} - ldr r0, _08123DB8 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08123DBC @ =gPlayerParty - adds r0, r1 - movs r1, 0x40 - bl GetMonData - ldr r2, _08123DC0 @ =gSaveBlock1Ptr - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r0, _08123DC4 @ =0x00002cd0 - adds r1, r0 - ldr r0, [r2] - adds r0, r1 - ldr r1, _08123DC8 @ =sub_8123DCC - movs r2, 0x1 - bl ReadMail - pop {r0} - bx r0 - .align 2, 0 -_08123DB8: .4byte gUnknown_203B0A0 -_08123DBC: .4byte gPlayerParty -_08123DC0: .4byte gSaveBlock1Ptr -_08123DC4: .4byte 0x00002cd0 -_08123DC8: .4byte sub_8123DCC - thumb_func_end sub_8123D84 - - thumb_func_start sub_8123DCC -sub_8123DCC: @ 8123DCC - push {lr} - sub sp, 0xC - ldr r2, _08123E00 @ =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x8] - ldr r3, _08123E04 @ =gUnknown_203B0A0 - ldrb r0, [r3, 0x8] - lsls r0, 28 - lsrs r0, 28 - ldrb r2, [r3, 0xB] - movs r1, 0x16 - str r1, [sp] - ldr r1, _08123E08 @ =sub_8122C30 - str r1, [sp, 0x4] - ldr r1, [r3] - str r1, [sp, 0x8] - movs r1, 0xFF - movs r3, 0x1 - bl PartyMenuInit - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_08123E00: .4byte gPaletteFade -_08123E04: .4byte gUnknown_203B0A0 -_08123E08: .4byte sub_8122C30 - thumb_func_end sub_8123DCC - - thumb_func_start brm_take_2 -brm_take_2: @ 8123E0C - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x5 - bl PlaySE - ldr r5, _08123E48 @ =gUnknown_203B09C - ldr r0, [r5] - adds r0, 0xD - bl sub_8121CE4 - ldr r0, [r5] - adds r0, 0xC - bl sub_8121CE4 - ldr r0, _08123E4C @ =gUnknown_8416B64 - movs r1, 0x1 - bl sub_81202F8 - ldr r1, _08123E50 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08123E54 @ =sub_8123E58 - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08123E48: .4byte gUnknown_203B09C -_08123E4C: .4byte gUnknown_8416B64 -_08123E50: .4byte gTasks -_08123E54: .4byte sub_8123E58 - thumb_func_end brm_take_2 - - thumb_func_start sub_8123E58 -sub_8123E58: @ 8123E58 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08123E7C - bl sub_812200C - ldr r0, _08123E84 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08123E88 @ =sub_8123E8C - str r0, [r1] -_08123E7C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08123E84: .4byte gTasks -_08123E88: .4byte sub_8123E8C - thumb_func_end sub_8123E58 - - thumb_func_start sub_8123E8C -sub_8123E8C: @ 8123E8C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl Menu_ProcessInputNoWrapClearOnChoose - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _08123EB2 - cmp r1, 0 - bgt _08123EAC - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08123F1C - b _08123F38 -_08123EAC: - cmp r1, 0x1 - beq _08123F22 - b _08123F38 -_08123EB2: - ldr r0, _08123EE4 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08123EE8 @ =gPlayerParty - adds r0, r1 - bl TakeMailFromMon2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - beq _08123EF8 - ldr r0, _08123EEC @ =gUnknown_8416B86 - movs r1, 0 - bl sub_81202F8 - ldr r1, _08123EF0 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08123EF4 @ =sub_8123BF0 - b _08123F36 - .align 2, 0 -_08123EE4: .4byte gUnknown_203B0A0 -_08123EE8: .4byte gPlayerParty -_08123EEC: .4byte gUnknown_8416B86 -_08123EF0: .4byte gTasks -_08123EF4: .4byte sub_8123BF0 -_08123EF8: - ldr r0, _08123F10 @ =gUnknown_8416BA6 - movs r1, 0 - bl sub_81202F8 - ldr r1, _08123F14 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08123F18 @ =sub_81203B8 - b _08123F36 - .align 2, 0 -_08123F10: .4byte gUnknown_8416BA6 -_08123F14: .4byte gTasks -_08123F18: .4byte sub_81203B8 -_08123F1C: - movs r0, 0x5 - bl PlaySE -_08123F22: - ldr r0, _08123F40 @ =gUnknown_8416BC3 - movs r1, 0x1 - bl sub_81202F8 - ldr r1, _08123F44 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08123F48 @ =sub_8123F4C -_08123F36: - str r1, [r0] -_08123F38: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08123F40: .4byte gUnknown_8416BC3 -_08123F44: .4byte gTasks -_08123F48: .4byte sub_8123F4C - thumb_func_end sub_8123E8C - - thumb_func_start sub_8123F4C -sub_8123F4C: @ 8123F4C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08123F70 - bl sub_812200C - ldr r0, _08123F78 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08123F7C @ =sub_8123F80 - str r0, [r1] -_08123F70: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08123F78: .4byte gTasks -_08123F7C: .4byte sub_8123F80 - thumb_func_end sub_8123F4C - - thumb_func_start sub_8123F80 -sub_8123F80: @ 8123F80 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r5, r0, 24 - bl Menu_ProcessInputNoWrapClearOnChoose - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _08123FAA - cmp r1, 0 - bgt _08123FA4 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0812403C - b _08124050 -_08123FA4: - cmp r1, 0x1 - beq _08124042 - b _08124050 -_08123FAA: - ldr r0, _08123FFC @ =gUnknown_203B0A0 - mov r8, r0 - ldrb r0, [r0, 0x9] - lsls r0, 24 - asrs r0, 24 - movs r7, 0x64 - muls r0, r7 - ldr r6, _08124000 @ =gPlayerParty - adds r0, r6 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r4, 0 - movs r1, 0x1 - bl AddBagItem - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124010 - mov r1, r8 - movs r0, 0x9 - ldrsb r0, [r1, r0] - muls r0, r7 - adds r0, r6 - bl TakeMailFromMon - ldr r0, _08124004 @ =gUnknown_8416CC7 - movs r1, 0 - bl sub_81202F8 - ldr r1, _08124008 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _0812400C @ =sub_8123BF0 - str r1, [r0] - b _08124050 - .align 2, 0 -_08123FFC: .4byte gUnknown_203B0A0 -_08124000: .4byte gPlayerParty -_08124004: .4byte gUnknown_8416CC7 -_08124008: .4byte gTasks -_0812400C: .4byte sub_8123BF0 -_08124010: - adds r0, r4, 0 - bl sub_8120658 - ldr r0, _08124030 @ =gStringVar4 - movs r1, 0 - bl sub_81202F8 - ldr r1, _08124034 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _08124038 @ =sub_81203B8 - str r1, [r0] - b _08124050 - .align 2, 0 -_08124030: .4byte gStringVar4 -_08124034: .4byte gTasks -_08124038: .4byte sub_81203B8 -_0812403C: - movs r0, 0x5 - bl PlaySE -_08124042: - ldr r0, _0812405C @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _08124060 @ =sub_81203B8 - str r0, [r1] -_08124050: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0812405C: .4byte gTasks -_08124060: .4byte sub_81203B8 - thumb_func_end sub_8123F80 - - thumb_func_start sub_8124064 -sub_8124064: @ 8124064 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - adds r6, r0, 0 - lsls r6, 24 - lsrs r6, 24 - ldr r0, _081240E0 @ =gUnknown_203B0A0 - mov r8, r0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - adds r5, r1, 0 - muls r5, r0 - ldr r0, _081240E4 @ =gPlayerParty - mov r9, r0 - add r5, r9 - movs r0, 0x5 - bl PlaySE - ldr r4, _081240E8 @ =gUnknown_203B09C - ldr r0, [r4] - adds r0, 0xC - bl sub_8121CE4 - ldr r0, [r4] - adds r0, 0xD - bl sub_8121CE4 - mov r0, r8 - ldrb r4, [r0, 0x9] - adds r0, r5, 0 - bl sub_8122B20 - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - mov r0, r9 - adds r1, r4, 0 - bl sub_812299C - movs r0, 0 - bl sub_8121E5C - movs r0, 0x16 - bl sub_8121D0C - ldr r1, _081240EC @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - movs r1, 0xFF - strh r1, [r0, 0x8] - ldr r1, _081240F0 @ =sub_8122C5C - str r1, [r0] - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081240E0: .4byte gUnknown_203B0A0 -_081240E4: .4byte gPlayerParty -_081240E8: .4byte gUnknown_203B09C -_081240EC: .4byte gTasks -_081240F0: .4byte sub_8122C5C - thumb_func_end sub_8124064 - - thumb_func_start sub_81240F4 -sub_81240F4: @ 81240F4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x5 - bl PlaySE - ldr r5, _08124120 @ =gUnknown_203B09C - ldr r0, [r5] - adds r0, 0xC - bl sub_8121CE4 - bl sub_8127AC0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124124 - adds r0, r4, 0 - bl sub_811FA78 - b _08124142 - .align 2, 0 -_08124120: .4byte gUnknown_203B09C -_08124124: - ldr r0, [r5] - adds r0, 0xD - bl sub_8121CE4 - ldr r0, _08124148 @ =gStringVar4 - movs r1, 0x1 - bl sub_81202F8 - ldr r1, _0812414C @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08124150 @ =sub_81203B8 - str r1, [r0] -_08124142: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08124148: .4byte gStringVar4 -_0812414C: .4byte gTasks -_08124150: .4byte sub_81203B8 - thumb_func_end sub_81240F4 - - thumb_func_start sub_8124154 -sub_8124154: @ 8124154 - 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, _0812417C @ =gUnknown_203B0A0 - ldrb r1, [r0, 0x8] - movs r0, 0xC0 - ands r0, r1 - cmp r0, 0x80 - bne _08124184 - movs r0, 0x2 - mov r8, r0 - ldr r1, _08124180 @ =gUnknown_8416B3E - str r1, [sp] - b _0812418C - .align 2, 0 -_0812417C: .4byte gUnknown_203B0A0 -_08124180: .4byte gUnknown_8416B3E -_08124184: - movs r2, 0x3 - mov r8, r2 - ldr r0, _081241FC @ =gUnknown_8416B16 - str r0, [sp] -_0812418C: - ldr r4, _08124200 @ =gUnknown_203B09C - ldr r0, [r4] - adds r0, 0xC - bl sub_8121CE4 - ldr r0, [r4] - adds r0, 0xD - bl sub_8121CE4 - movs r5, 0 - lsls r1, r7, 2 - mov r9, r1 - cmp r5, r8 - bcs _08124222 - ldr r6, _08124204 @ =gUnknown_203B0A0 - ldr r1, _08124208 @ =gTasks - mov r2, r9 - adds r0, r2, r7 - lsls r0, 3 - adds r0, r1 - mov r10, r0 -_081241B6: - ldr r0, _0812420C @ =gSelectedOrderFromParty - adds r4, r5, r0 - ldrb r0, [r4] - cmp r0, 0 - bne _08124218 - movs r0, 0x5 - bl PlaySE - ldrb r0, [r6, 0x9] - adds r0, 0x1 - strb r0, [r4] - adds r0, r5, 0x2 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08124210 @ =gUnknown_203B0B4 - movs r2, 0x9 - ldrsb r2, [r6, r2] - lsls r2, 4 - ldr r1, [r1] - adds r1, r2 - movs r2, 0x1 - bl sub_8121C70 - mov r0, r8 - subs r0, 0x1 - cmp r5, r0 - bne _081241F0 - bl sub_8124258 -_081241F0: - movs r0, 0 - bl sub_8121D0C - ldr r0, _08124214 @ =sub_811FB28 - mov r1, r10 - b _0812423C - .align 2, 0 -_081241FC: .4byte gUnknown_8416B16 -_08124200: .4byte gUnknown_203B09C -_08124204: .4byte gUnknown_203B0A0 -_08124208: .4byte gTasks -_0812420C: .4byte gSelectedOrderFromParty -_08124210: .4byte gUnknown_203B0B4 -_08124214: .4byte sub_811FB28 -_08124218: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, r8 - bcc _081241B6 -_08124222: - movs r0, 0x1A - bl PlaySE - ldr r0, [sp] - movs r1, 0x1 - bl sub_81202F8 - ldr r0, _08124250 @ =gTasks - mov r2, r9 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - ldr r0, _08124254 @ =sub_81203B8 -_0812423C: - 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 - .align 2, 0 -_08124250: .4byte gTasks -_08124254: .4byte sub_81203B8 - thumb_func_end sub_8124154 - - thumb_func_start sub_8124258 -sub_8124258: @ 8124258 - push {r4,lr} - ldr r4, _08124274 @ =gUnknown_203B0A0 - ldrb r0, [r4, 0x9] - movs r1, 0 - bl sub_811F818 - movs r0, 0x6 - strb r0, [r4, 0x9] - movs r1, 0x1 - bl sub_811F818 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08124274: .4byte gUnknown_203B0A0 - thumb_func_end sub_8124258 - - thumb_func_start sub_8124278 -sub_8124278: @ 8124278 - push {r4-r7,lr} - lsls r0, 24 - lsrs r7, r0, 24 - movs r0, 0x5 - bl PlaySE - ldr r4, _081242BC @ =gUnknown_203B09C - ldr r0, [r4] - adds r0, 0xC - bl sub_8121CE4 - ldr r0, [r4] - adds r0, 0xD - bl sub_8121CE4 - movs r4, 0 - ldr r3, _081242C0 @ =gSelectedOrderFromParty - ldr r6, _081242C4 @ =gUnknown_203B0A0 - adds r5, r6, 0 -_0812429E: - adds r2, r4, r3 - ldrb r1, [r2] - movs r0, 0x9 - ldrsb r0, [r5, r0] - adds r0, 0x1 - cmp r1, r0 - bne _081242DC - movs r1, 0 - strb r1, [r2] - cmp r4, 0 - beq _081242C8 - cmp r4, 0x1 - beq _081242D4 - b _081242E6 - .align 2, 0 -_081242BC: .4byte gUnknown_203B09C -_081242C0: .4byte gSelectedOrderFromParty -_081242C4: .4byte gUnknown_203B0A0 -_081242C8: - ldrb r0, [r3, 0x1] - strb r0, [r3] - ldrb r0, [r3, 0x2] - strb r0, [r3, 0x1] - strb r4, [r3, 0x2] - b _081242E6 -_081242D4: - ldrb r0, [r3, 0x2] - strb r0, [r3, 0x1] - strb r1, [r3, 0x2] - b _081242E6 -_081242DC: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x2 - bls _0812429E -_081242E6: - ldr r5, _08124344 @ =gUnknown_203B0B4 - movs r0, 0x9 - ldrsb r0, [r6, r0] - lsls r0, 4 - ldr r1, [r5] - adds r1, r0 - movs r0, 0x1 - movs r2, 0x1 - bl sub_8121C70 - ldr r4, _08124348 @ =gSelectedOrderFromParty - ldrb r0, [r4] - cmp r0, 0 - beq _08124312 - lsls r0, 4 - subs r0, 0x10 - ldr r1, [r5] - adds r1, r0 - movs r0, 0x2 - movs r2, 0x1 - bl sub_8121C70 -_08124312: - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _08124328 - lsls r0, 4 - subs r0, 0x10 - ldr r1, [r5] - adds r1, r0 - movs r0, 0x3 - movs r2, 0x1 - bl sub_8121C70 -_08124328: - movs r0, 0 - bl sub_8121D0C - ldr r0, _0812434C @ =gTasks - lsls r1, r7, 2 - adds r1, r7 - lsls r1, 3 - adds r1, r0 - ldr r0, _08124350 @ =sub_811FB28 - str r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08124344: .4byte gUnknown_203B0B4 -_08124348: .4byte gSelectedOrderFromParty -_0812434C: .4byte gTasks -_08124350: .4byte sub_811FB28 - thumb_func_end sub_8124278 - - thumb_func_start sub_8124354 -sub_8124354: @ 8124354 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x5 - bl PlaySE - ldr r1, _0812437C @ =gSpecialVar_0x8004 - ldr r0, _08124380 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0x9] - lsls r0, 24 - asrs r0, 24 - strh r0, [r1] - adds r0, r4, 0 - bl sub_811FA78 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0812437C: .4byte gSpecialVar_0x8004 -_08124380: .4byte gUnknown_203B0A0 - thumb_func_end sub_8124354 - - thumb_func_start sub_8124384 -sub_8124384: @ 8124384 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, _08124410 @ =gUnknown_203B0A0 - mov r9, r0 - ldrb r0, [r0, 0x9] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x64 - mov r8, r1 - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - ldr r4, _08124414 @ =gPlayerParty - adds r0, r4 - movs r1, 0x41 - bl GetMonData - adds r6, r0, 0 - lsls r6, 16 - lsrs r6, 16 - mov r1, r9 - movs r0, 0x9 - ldrsb r0, [r1, r0] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r4 - movs r1, 0xB - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - mov r1, r9 - movs r0, 0x9 - ldrsb r0, [r1, r0] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r4 - movs r1, 0x50 - bl GetMonData - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_80F9800 - ldr r0, [r0] - adds r1, r6, 0 - adds r2, r5, 0 - adds r3, r4, 0 - bl Trade_CanTradeSelectedMon - cmp r0, 0x1 - beq _08124418 - cmp r0, 0x2 - beq _0812442C - movs r0, 0x5 - bl PlaySE - adds r0, r7, 0 - bl sub_811FA78 - b _0812446C - .align 2, 0 -_08124410: .4byte gUnknown_203B0A0 -_08124414: .4byte gPlayerParty -_08124418: - ldr r0, _08124424 @ =gStringVar4 - ldr r1, _08124428 @ =gUnknown_84170BC - bl StringExpandPlaceholders - b _08124434 - .align 2, 0 -_08124424: .4byte gStringVar4 -_08124428: .4byte gUnknown_84170BC -_0812442C: - ldr r0, _08124478 @ =gStringVar4 - ldr r1, _0812447C @ =gUnknown_84170E0 - bl StringExpandPlaceholders -_08124434: - movs r0, 0x1A - bl PlaySE - ldr r4, _08124480 @ =gUnknown_203B09C - ldr r0, [r4] - adds r0, 0xC - bl sub_8121CE4 - ldr r0, [r4] - adds r0, 0xD - bl sub_8121CE4 - ldr r4, _08124478 @ =gStringVar4 - ldr r1, _08124484 @ =gUnknown_84169D9 - adds r0, r4, 0 - bl StringAppend - adds r0, r4, 0 - movs r1, 0x1 - bl sub_81202F8 - ldr r1, _08124488 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, _0812448C @ =sub_81203B8 - str r1, [r0] -_0812446C: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08124478: .4byte gStringVar4 -_0812447C: .4byte gUnknown_84170E0 -_08124480: .4byte gUnknown_203B09C -_08124484: .4byte gUnknown_84169D9 -_08124488: .4byte gTasks -_0812448C: .4byte sub_81203B8 - thumb_func_end sub_8124384 - - thumb_func_start brm_trade_1 -brm_trade_1: @ 8124490 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0xC - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, _08124558 @ =gUnknown_203B0A0 - mov r8, r0 - ldrb r0, [r0, 0x9] - lsls r0, 24 - asrs r0, 24 - movs r6, 0x64 - muls r0, r6 - ldr r4, _0812455C @ =gPlayerParty - adds r0, r4 - movs r1, 0x41 - bl GetMonData - mov r9, r0 - mov r1, r9 - lsls r1, 16 - lsrs r1, 16 - mov r9, r1 - mov r1, r8 - movs r0, 0x9 - ldrsb r0, [r1, r0] - muls r0, r6 - adds r0, r4 - movs r1, 0xB - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - mov r1, r8 - movs r0, 0x9 - ldrsb r0, [r1, r0] - muls r0, r6 - adds r0, r4 - movs r1, 0x50 - bl GetMonData - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_80F9800 - ldr r0, [r0] - ldr r1, _08124560 @ =gUnknown_203B064 - ldr r1, [r1] - ldr r2, _08124564 @ =gUnknown_203B068 - ldrh r3, [r2] - ldr r2, _08124568 @ =gUnknown_203B06A - ldrb r2, [r2] - str r2, [sp] - str r5, [sp, 0x4] - str r4, [sp, 0x8] - mov r2, r9 - bl sub_804FBEC - cmp r0, 0 - beq _08124584 - ldr r5, _0812456C @ =gStringVar4 - ldr r1, _08124570 @ =gUnknown_845A7E8 - subs r0, 0x1 - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - adds r0, r5, 0 - bl StringExpandPlaceholders - movs r0, 0x1A - bl PlaySE - ldr r4, _08124574 @ =gUnknown_203B09C - ldr r0, [r4] - adds r0, 0xC - bl sub_8121CE4 - ldr r0, [r4] - adds r0, 0xD - bl sub_8121CE4 - ldr r1, _08124578 @ =gUnknown_84169D9 - adds r0, r5, 0 - bl StringAppend - adds r0, r5, 0 - movs r1, 0x1 - bl sub_81202F8 - ldr r1, _0812457C @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, _08124580 @ =sub_81203B8 - str r1, [r0] - b _08124590 - .align 2, 0 -_08124558: .4byte gUnknown_203B0A0 -_0812455C: .4byte gPlayerParty -_08124560: .4byte gUnknown_203B064 -_08124564: .4byte gUnknown_203B068 -_08124568: .4byte gUnknown_203B06A -_0812456C: .4byte gStringVar4 -_08124570: .4byte gUnknown_845A7E8 -_08124574: .4byte gUnknown_203B09C -_08124578: .4byte gUnknown_84169D9 -_0812457C: .4byte gTasks -_08124580: .4byte sub_81203B8 -_08124584: - movs r0, 0x5 - bl PlaySE - adds r0, r7, 0 - bl sub_811FA78 -_08124590: - add sp, 0xC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end brm_trade_1 - - thumb_func_start nullsub_93 -nullsub_93: @ 81245A0 - bx lr - thumb_func_end nullsub_93 - - thumb_func_start sub_81245A4 -sub_81245A4: @ 81245A4 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - bl Menu_GetCursorPos - ldr r5, _08124610 @ =gUnknown_203B09C - ldr r1, [r5] - lsls r0, 24 - lsrs r0, 24 - adds r1, 0xF - adds r1, r0 - ldrb r0, [r1] - subs r0, 0x12 - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x5 - bl PlaySE - ldr r1, _08124614 @ =gUnknown_845A788 - lsls r0, r4, 3 - adds r7, r0, r1 - ldr r0, [r7] - cmp r0, 0 - bne _081245D6 - b _081247B4 -_081245D6: - ldr r0, [r5] - adds r0, 0xC - bl sub_8121CE4 - ldr r0, [r5] - adds r0, 0xD - bl sub_8121CE4 - bl MenuHelpers_LinkSomething - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081245FA - bl InUnionRoom - cmp r0, 0x1 - bne _0812461C -_081245FA: - adds r0, r4, 0 - subs r0, 0x9 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08124618 - movs r0, 0xD - bl sub_8121D0C - b _081247A6 - .align 2, 0 -_08124610: .4byte gUnknown_203B09C -_08124614: .4byte gUnknown_845A788 -_08124618: - ldrb r0, [r7, 0x4] - b _081247A2 -_0812461C: - cmp r4, 0x6 - bhi _08124658 - movs r1, 0x82 - lsls r1, 4 - adds r0, r4, r1 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08124658 - ldr r0, _0812464C @ =gUnknown_8416AE2 - movs r1, 0x1 - bl sub_81202F8 - ldr r1, _08124650 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08124654 @ =sub_81203B8 - str r1, [r0] - b _081247B4 - .align 2, 0 -_0812464C: .4byte gUnknown_8416AE2 -_08124650: .4byte gTasks -_08124654: .4byte sub_81203B8 -_08124658: - ldr r1, _08124680 @ =gUnknown_845A788 - lsls r0, r4, 3 - adds r5, r0, r1 - ldr r0, [r5] - bl _call_via_r0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0812466E - b _0812478C -_0812466E: - subs r0, r4, 0x2 - cmp r0, 0x8 - bhi _0812475C - lsls r0, 2 - ldr r1, _08124684 @ =_08124688 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08124680: .4byte gUnknown_845A788 -_08124684: .4byte _08124688 - .align 2, 0 -_08124688: - .4byte _0812474C - .4byte _0812475C - .4byte _0812475C - .4byte _0812475C - .4byte _0812475C - .4byte _081246B4 - .4byte _081246F0 - .4byte _081246AC - .4byte _081246AC -_081246AC: - adds r0, r6, 0 - bl sub_80E56DC - b _081247B4 -_081246B4: - ldr r0, _081246E0 @ =gSaveBlock1Ptr - ldr r1, [r0] - movs r0, 0x1C - ldrsb r0, [r1, r0] - lsls r0, 16 - lsrs r0, 16 - ldrb r1, [r1, 0x1D] - lsls r1, 24 - asrs r1, 24 - lsls r1, 16 - lsrs r1, 16 - bl get_mapheader_by_bank_and_number - adds r1, r0, 0 - ldr r0, _081246E4 @ =gStringVar1 - ldrb r1, [r1, 0x14] - bl sub_80C4DF8 - ldr r0, _081246E8 @ =gStringVar4 - ldr r1, _081246EC @ =gUnknown_8417640 - b _08124720 - .align 2, 0 -_081246E0: .4byte gSaveBlock1Ptr -_081246E4: .4byte gStringVar1 -_081246E8: .4byte gStringVar4 -_081246EC: .4byte gUnknown_8417640 -_081246F0: - ldr r0, _08124738 @ =gSaveBlock1Ptr - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x24 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - lsls r0, 16 - lsrs r0, 16 - adds r1, 0x25 - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - lsls r1, 16 - lsrs r1, 16 - bl get_mapheader_by_bank_and_number - adds r1, r0, 0 - ldr r0, _0812473C @ =gStringVar1 - ldrb r1, [r1, 0x14] - bl sub_80C4DF8 - ldr r0, _08124740 @ =gStringVar4 - ldr r1, _08124744 @ =gUnknown_8417615 -_08124720: - bl StringExpandPlaceholders - adds r0, r6, 0 - bl sub_81247C4 - ldr r0, _08124748 @ =gUnknown_203B09C - ldr r0, [r0] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - strh r4, [r0] - b _081247B4 - .align 2, 0 -_08124738: .4byte gSaveBlock1Ptr -_0812473C: .4byte gStringVar1 -_08124740: .4byte gStringVar4 -_08124744: .4byte gUnknown_8417615 -_08124748: .4byte gUnknown_203B09C -_0812474C: - ldr r1, _08124754 @ =gUnknown_203B0A0 - ldr r0, _08124758 @ =sub_80C4EF8 - str r0, [r1] - b _08124778 - .align 2, 0 -_08124754: .4byte gUnknown_203B0A0 -_08124758: .4byte sub_80C4EF8 -_0812475C: - ldr r1, _08124780 @ =gUnknown_203B0A0 - ldr r0, _08124784 @ =CB2_ReturnToField - str r0, [r1] - bl GetCursorSelectionMonId - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _08124788 @ =gPlayerParty - adds r0, r1 - adds r1, r4, 0 - bl sub_8124BB0 -_08124778: - adds r0, r6, 0 - bl sub_811FA78 - b _081247B4 - .align 2, 0 -_08124780: .4byte gUnknown_203B0A0 -_08124784: .4byte CB2_ReturnToField -_08124788: .4byte gPlayerParty -_0812478C: - cmp r4, 0 - beq _0812479A - cmp r4, 0x4 - bne _081247A0 - bl sub_8124A0C - b _081247A6 -_0812479A: - bl sub_8124954 - b _081247A6 -_081247A0: - ldrb r0, [r5, 0x4] -_081247A2: - bl sub_8121D0C -_081247A6: - ldr r0, _081247BC @ =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldr r0, _081247C0 @ =task_brm_cancel_1_on_keypad_a_or_b - str r0, [r1] -_081247B4: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081247BC: .4byte gTasks -_081247C0: .4byte task_brm_cancel_1_on_keypad_a_or_b - thumb_func_end sub_81245A4 - - thumb_func_start sub_81247C4 -sub_81247C4: @ 81247C4 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _081247E8 @ =gStringVar4 - movs r1, 0x1 - bl sub_81202F8 - ldr r1, _081247EC @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _081247F0 @ =sub_81247F4 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081247E8: .4byte gStringVar4 -_081247EC: .4byte gTasks -_081247F0: .4byte sub_81247F4 - thumb_func_end sub_81247C4 - - thumb_func_start sub_81247F4 -sub_81247F4: @ 81247F4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08124818 - bl sub_812200C - ldr r0, _08124820 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08124824 @ =sub_8124828 - str r0, [r1] -_08124818: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08124820: .4byte gTasks -_08124824: .4byte sub_8124828 - thumb_func_end sub_81247F4 - - thumb_func_start sub_8124828 -sub_8124828: @ 8124828 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl Menu_ProcessInputNoWrapClearOnChoose - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _0812484E - cmp r1, 0 - bgt _08124848 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0812488C - b _081248A2 -_08124848: - cmp r1, 0x1 - beq _08124892 - b _081248A2 -_0812484E: - ldr r1, _0812487C @ =gUnknown_203B0A0 - ldr r0, _08124880 @ =CB2_ReturnToField - str r0, [r1] - bl GetCursorSelectionMonId - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _08124884 @ =gPlayerParty - adds r0, r1 - ldr r1, _08124888 @ =gUnknown_203B09C - ldr r1, [r1] - movs r2, 0x86 - lsls r2, 2 - adds r1, r2 - ldrb r1, [r1] - bl sub_8124BB0 - adds r0, r4, 0 - bl sub_811FA78 - b _081248A2 - .align 2, 0 -_0812487C: .4byte gUnknown_203B0A0 -_08124880: .4byte CB2_ReturnToField -_08124884: .4byte gPlayerParty -_08124888: .4byte gUnknown_203B09C -_0812488C: - movs r0, 0x5 - bl PlaySE -_08124892: - ldr r0, _081248A8 @ =gFieldCallback2 - movs r1, 0 - str r1, [r0] - ldr r0, _081248AC @ =gPostMenuFieldCallback - str r1, [r0] - adds r0, r4, 0 - bl sub_81203B8 -_081248A2: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081248A8: .4byte gFieldCallback2 -_081248AC: .4byte gPostMenuFieldCallback - thumb_func_end sub_8124828 - - thumb_func_start FieldCallback_PrepareFadeInFromMenu -FieldCallback_PrepareFadeInFromMenu: @ 81248B0 - push {lr} - bl sub_807DC00 - ldr r0, _081248C4 @ =task_launch_hm_phase_2 - movs r1, 0x8 - bl CreateTask - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_081248C4: .4byte task_launch_hm_phase_2 - thumb_func_end FieldCallback_PrepareFadeInFromMenu - - thumb_func_start task_launch_hm_phase_2 -task_launch_hm_phase_2: @ 81248C8 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl field_weather_is_fade_finished - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081248F4 - bl brm_get_selected_species - ldr r1, _081248FC @ =gFieldEffectArguments - lsls r0, 16 - lsrs r0, 16 - str r0, [r1] - ldr r0, _08124900 @ =gPostMenuFieldCallback - ldr r0, [r0] - bl _call_via_r0 - adds r0, r4, 0 - bl DestroyTask -_081248F4: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081248FC: .4byte gFieldEffectArguments -_08124900: .4byte gPostMenuFieldCallback - thumb_func_end task_launch_hm_phase_2 - - thumb_func_start brm_get_selected_species -brm_get_selected_species: @ 8124904 - push {lr} - ldr r0, _08124924 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08124928 @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - pop {r1} - bx r1 - .align 2, 0 -_08124924: .4byte gUnknown_203B0A0 -_08124928: .4byte gPlayerParty - thumb_func_end brm_get_selected_species - - thumb_func_start task_brm_cancel_1_on_keypad_a_or_b -task_brm_cancel_1_on_keypad_a_or_b: @ 812492C - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, _08124950 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08124946 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0812494C -_08124946: - adds r0, r2, 0 - bl brm_cancel_1 -_0812494C: - pop {r0} - bx r0 - .align 2, 0 -_08124950: .4byte gMain - thumb_func_end task_brm_cancel_1_on_keypad_a_or_b - - thumb_func_start sub_8124954 -sub_8124954: @ 8124954 - push {lr} - ldr r0, _0812496C @ =0x00000806 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124970 - movs r0, 0xC - bl sub_8121D0C - b _08124976 - .align 2, 0 -_0812496C: .4byte 0x00000806 -_08124970: - movs r0, 0xD - bl sub_8121D0C -_08124976: - pop {r0} - bx r0 - thumb_func_end sub_8124954 - - thumb_func_start hm_surf_run_dp02scr -hm_surf_run_dp02scr: @ 812497C - push {lr} - bl GetCursorSelectionMonId - ldr r1, _08124994 @ =gFieldEffectArguments - lsls r0, 24 - lsrs r0, 24 - str r0, [r1] - movs r0, 0x9 - bl FieldEffectStart - pop {r0} - bx r0 - .align 2, 0 -_08124994: .4byte gFieldEffectArguments - thumb_func_end hm_surf_run_dp02scr - - thumb_func_start sub_8124998 -sub_8124998: @ 8124998 - push {r4,lr} - sub sp, 0x4 - mov r4, sp - adds r4, 0x2 - mov r0, sp - adds r1, r4, 0 - bl GetXYCoordsOneStepInFrontOfPlayer - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - movs r2, 0 - ldrsh r1, [r4, r2] - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl MetatileBehavior_IsSemiDeepWater - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08124A00 - bl PartyHasMonWithSurf - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124A00 - bl IsPlayerFacingSurfableFishableWater - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124A00 - ldr r1, _081249F0 @ =gFieldCallback2 - ldr r0, _081249F4 @ =FieldCallback_PrepareFadeInFromMenu - str r0, [r1] - ldr r1, _081249F8 @ =gPostMenuFieldCallback - ldr r0, _081249FC @ =hm_surf_run_dp02scr - str r0, [r1] - movs r0, 0x1 - b _08124A02 - .align 2, 0 -_081249F0: .4byte gFieldCallback2 -_081249F4: .4byte FieldCallback_PrepareFadeInFromMenu -_081249F8: .4byte gPostMenuFieldCallback -_081249FC: .4byte hm_surf_run_dp02scr -_08124A00: - movs r0, 0 -_08124A02: - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8124998 - - thumb_func_start sub_8124A0C -sub_8124A0C: @ 8124A0C - push {r4,lr} - sub sp, 0x4 - movs r0, 0x8 - bl TestPlayerAvatarFlags - lsls r0, 24 - cmp r0, 0 - beq _08124A24 - movs r0, 0x9 - bl sub_8121D0C - b _08124A82 -_08124A24: - mov r4, sp - adds r4, 0x2 - mov r0, sp - adds r1, r4, 0 - bl GetXYCoordsOneStepInFrontOfPlayer - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - movs r2, 0 - ldrsh r1, [r4, r2] - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl MetatileBehavior_IsSemiDeepWater - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124A56 - movs r0, 0xA - bl sub_8121D0C - b _08124A82 -_08124A56: - ldr r0, _08124A78 @ =gSaveBlock1Ptr - ldr r1, [r0] - movs r0, 0x4 - ldrsb r0, [r1, r0] - cmp r0, 0x3 - bne _08124A7C - ldrb r0, [r1, 0x5] - subs r0, 0x23 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08124A7C - movs r0, 0xB - bl sub_8121D0C - b _08124A82 - .align 2, 0 -_08124A78: .4byte gSaveBlock1Ptr -_08124A7C: - movs r0, 0x8 - bl sub_8121D0C -_08124A82: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8124A0C - - thumb_func_start sub_8124A8C -sub_8124A8C: @ 8124A8C - push {lr} - ldr r0, _08124AA4 @ =gMapHeader - ldrb r0, [r0, 0x17] - bl Overworld_MapTypeAllowsTeleportAndFly - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08124AA8 - movs r0, 0 - b _08124AAA - .align 2, 0 -_08124AA4: .4byte gMapHeader -_08124AA8: - movs r0, 0x1 -_08124AAA: - pop {r1} - bx r1 - thumb_func_end sub_8124A8C - - thumb_func_start sub_8124AB0 -sub_8124AB0: @ 8124AB0 - push {lr} - sub sp, 0xC - movs r0, 0 - str r0, [sp] - ldr r0, _08124AD4 @ =sub_811FB28 - str r0, [sp, 0x4] - ldr r0, _08124AD8 @ =CB2_ReturnToStartMenu - str r0, [sp, 0x8] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl PartyMenuInit - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_08124AD4: .4byte sub_811FB28 -_08124AD8: .4byte CB2_ReturnToStartMenu - thumb_func_end sub_8124AB0 - - thumb_func_start hm2_waterfall -hm2_waterfall: @ 8124ADC - push {lr} - bl GetCursorSelectionMonId - ldr r1, _08124AF4 @ =gFieldEffectArguments - lsls r0, 24 - lsrs r0, 24 - str r0, [r1] - movs r0, 0x2B - bl FieldEffectStart - pop {r0} - bx r0 - .align 2, 0 -_08124AF4: .4byte gFieldEffectArguments - thumb_func_end hm2_waterfall - - thumb_func_start hm_prepare_waterfall -hm_prepare_waterfall: @ 8124AF8 - push {r4,lr} - sub sp, 0x4 - mov r4, sp - adds r4, 0x2 - mov r0, sp - adds r1, r4, 0 - bl GetXYCoordsOneStepInFrontOfPlayer - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - movs r2, 0 - ldrsh r1, [r4, r2] - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl MetatileBehavior_IsWaterfall - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124B54 - bl IsPlayerSurfingNorth - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124B54 - ldr r1, _08124B44 @ =gFieldCallback2 - ldr r0, _08124B48 @ =FieldCallback_PrepareFadeInFromMenu - str r0, [r1] - ldr r1, _08124B4C @ =gPostMenuFieldCallback - ldr r0, _08124B50 @ =hm2_waterfall - str r0, [r1] - movs r0, 0x1 - b _08124B56 - .align 2, 0 -_08124B44: .4byte gFieldCallback2 -_08124B48: .4byte FieldCallback_PrepareFadeInFromMenu -_08124B4C: .4byte gPostMenuFieldCallback -_08124B50: .4byte hm2_waterfall -_08124B54: - movs r0, 0 -_08124B56: - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end hm_prepare_waterfall - - thumb_func_start sub_8124B60 -sub_8124B60: @ 8124B60 - push {r4-r7,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r5, 16 - lsrs r5, 16 - movs r0, 0x8 - bl Alloc - adds r7, r0, 0 - adds r0, r6, 0 - movs r1, 0x41 - bl GetMonData - strh r0, [r7, 0x4] - strh r4, [r7] - strh r5, [r7, 0x2] - ldr r0, _08124B98 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0xB] - cmp r0, 0x6 - bne _08124B9C - movs r0, 0xA - adds r1, r7, 0 - bl sub_8113550 - b _08124BA4 - .align 2, 0 -_08124B98: .4byte gUnknown_203B0A0 -_08124B9C: - movs r0, 0x9 - adds r1, r7, 0 - bl sub_8113550 -_08124BA4: - adds r0, r7, 0 - bl Free - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8124B60 - - thumb_func_start sub_8124BB0 -sub_8124BB0: @ 8124BB0 - push {r4-r6,lr} - adds r5, r0, 0 - lsls r4, r1, 24 - lsrs r4, 24 - movs r0, 0x4 - bl Alloc - adds r6, r0, 0 - adds r0, r5, 0 - movs r1, 0x41 - bl GetMonData - strh r0, [r6] - strb r4, [r6, 0x2] - ldrb r0, [r6, 0x2] - cmp r0, 0x7 - beq _08124BDA - cmp r0, 0x8 - beq _08124BFC - movs r0, 0xFF - b _08124C00 -_08124BDA: - ldr r0, _08124BF8 @ =gSaveBlock1Ptr - ldr r1, [r0] - movs r0, 0x1C - ldrsb r0, [r1, r0] - lsls r0, 16 - lsrs r0, 16 - ldrb r1, [r1, 0x1D] - lsls r1, 24 - asrs r1, 24 - lsls r1, 16 - lsrs r1, 16 - bl get_mapheader_by_bank_and_number - b _08124BFE - .align 2, 0 -_08124BF8: .4byte gSaveBlock1Ptr -_08124BFC: - ldr r0, _08124C18 @ =gMapHeader -_08124BFE: - ldrb r0, [r0, 0x14] -_08124C00: - strb r0, [r6, 0x3] - movs r0, 0x24 - adds r1, r6, 0 - bl sub_8113550 - adds r0, r6, 0 - bl Free - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08124C18: .4byte gMapHeader - thumb_func_end sub_8124BB0 - - thumb_func_start sub_8124C1C -sub_8124C1C: @ 8124C1C - push {r4,r5,lr} - adds r5, r0, 0 - movs r0, 0x8 - bl Alloc - adds r4, r0, 0 - ldrb r0, [r5] - strb r0, [r4] - ldrb r0, [r5, 0x1] - strb r0, [r4, 0x1] - movs r0, 0 - ldrsb r0, [r4, r0] - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - ldrsb r1, [r4, r1] - lsls r1, 16 - lsrs r1, 16 - bl get_mapheader_by_bank_and_number - adds r5, r0, 0 - adds r0, r4, 0 - bl Free - movs r0, 0x4 - bl Alloc - adds r4, r0, 0 - bl GetCursorSelectionMonId - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _08124C88 @ =gPlayerParty - adds r0, r1 - movs r1, 0x41 - bl GetMonData - strh r0, [r4] - movs r0, 0x2 - strb r0, [r4, 0x2] - ldrb r0, [r5, 0x14] - strb r0, [r4, 0x3] - movs r0, 0x24 - adds r1, r4, 0 - bl sub_8113550 - adds r0, r4, 0 - bl Free - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08124C88: .4byte gPlayerParty - thumb_func_end sub_8124C1C - - thumb_func_start sub_8124C8C -sub_8124C8C: @ 8124C8C - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - ldr r6, _08124CB4 @ =sub_8124D90 - ldr r0, _08124CB8 @ =gMain - ldr r1, _08124CBC @ =0x00000439 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08124CCC - movs r0, 0x1 - mov r8, r0 - bl sub_81278B4 - lsls r0, 24 - lsrs r7, r0, 24 - b _08124CD2 - .align 2, 0 -_08124CB4: .4byte sub_8124D90 -_08124CB8: .4byte gMain -_08124CBC: .4byte 0x00000439 -_08124CC0: - ldr r0, _08124CC8 @ =gUnknown_203B0A0 - strb r5, [r0, 0x9] - b _08124D16 - .align 2, 0 -_08124CC8: .4byte gUnknown_203B0A0 -_08124CCC: - movs r1, 0 - mov r8, r1 - movs r7, 0 -_08124CD2: - ldr r4, _08124D30 @ =gSpecialVar_ItemId - ldrh r0, [r4] - bl GetItemEffectType - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xA - bne _08124D44 - ldr r1, _08124D34 @ =gUnknown_203B0A0 - movs r0, 0 - strb r0, [r1, 0x9] - movs r5, 0 -_08124CEA: - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, _08124D38 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08124D0C - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _08124CC0 -_08124D0C: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x5 - bls _08124CEA -_08124D16: - ldr r0, _08124D30 @ =gSpecialVar_ItemId - ldrh r0, [r0] - bl GetPocketByItemId - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bne _08124D28 - ldr r6, _08124D3C @ =sub_8124DB0 -_08124D28: - ldr r1, _08124D40 @ =sub_8124FC8 - movs r0, 0x7F - b _08124D6A - .align 2, 0 -_08124D30: .4byte gSpecialVar_ItemId -_08124D34: .4byte gUnknown_203B0A0 -_08124D38: .4byte gPlayerParty -_08124D3C: .4byte sub_8124DB0 -_08124D40: .4byte sub_8124FC8 -_08124D44: - ldrh r0, [r4] - bl GetPocketByItemId - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - beq _08124D5A - cmp r0, 0x5 - beq _08124D64 - movs r0, 0x5 - b _08124D68 -_08124D5A: - movs r0, 0x4 - ldr r6, _08124D60 @ =sub_8124DA0 - b _08124D68 - .align 2, 0 -_08124D60: .4byte sub_8124DA0 -_08124D64: - movs r0, 0x5 - ldr r6, _08124D88 @ =sub_8124DB0 -_08124D68: - ldr r1, _08124D8C @ =sub_811FB28 -_08124D6A: - str r0, [sp] - str r1, [sp, 0x4] - str r6, [sp, 0x8] - mov r0, r8 - adds r1, r7, 0 - movs r2, 0x3 - movs r3, 0x1 - bl PartyMenuInit - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08124D88: .4byte sub_8124DB0 -_08124D8C: .4byte sub_811FB28 - thumb_func_end sub_8124C8C - - thumb_func_start sub_8124D90 -sub_8124D90: @ 8124D90 - push {lr} - movs r0, 0xB - movs r1, 0x3 - movs r2, 0 - bl sub_8107DB4 - pop {r0} - bx r0 - thumb_func_end sub_8124D90 - - thumb_func_start sub_8124DA0 -sub_8124DA0: @ 8124DA0 - push {lr} - movs r0, 0x5 - movs r1, 0 - movs r2, 0xFF - bl InitTMCase - pop {r0} - bx r0 - thumb_func_end sub_8124DA0 - - thumb_func_start sub_8124DB0 -sub_8124DB0: @ 8124DB0 - push {lr} - movs r0, 0x6 - movs r1, 0 - movs r2, 0xFF - bl InitBerryPouch - pop {r0} - bx r0 - thumb_func_end sub_8124DB0 - - thumb_func_start sub_8124DC0 -sub_8124DC0: @ 8124DC0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08124DD8 @ =gUnknown_203B09C - ldr r2, [r1] - ldr r1, _08124DDC @ =sub_8124DE0 - str r1, [r2, 0x4] - bl sub_811FA78 - pop {r0} - bx r0 - .align 2, 0 -_08124DD8: .4byte gUnknown_203B09C -_08124DDC: .4byte sub_8124DE0 - thumb_func_end sub_8124DC0 - - thumb_func_start sub_8124DE0 -sub_8124DE0: @ 8124DE0 - push {r4,lr} - ldr r4, _08124E0C @ =gSpecialVar_ItemId - ldrh r0, [r4] - bl GetItemCompatibilityRule - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08124E2C - bl sub_8126C24 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124E18 - ldr r0, _08124E10 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0x9] - ldrh r1, [r4] - ldr r2, _08124E14 @ =sub_8126BD4 - bl sub_811C540 - b _08124E38 - .align 2, 0 -_08124E0C: .4byte gSpecialVar_ItemId -_08124E10: .4byte gUnknown_203B0A0 -_08124E14: .4byte sub_8126BD4 -_08124E18: - ldr r2, _08124E28 @ =gUnknown_203B0A0 - ldrb r0, [r2, 0x9] - ldrh r1, [r4] - ldr r2, [r2] - bl sub_811C5AC - b _08124E38 - .align 2, 0 -_08124E28: .4byte gUnknown_203B0A0 -_08124E2C: - ldr r0, _08124E40 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0x9] - ldrh r1, [r4] - ldr r2, _08124E44 @ =sub_8124E48 - bl sub_811C540 -_08124E38: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08124E40: .4byte gUnknown_203B0A0 -_08124E44: .4byte sub_8124E48 - thumb_func_end sub_8124DE0 - - thumb_func_start sub_8124E48 -sub_8124E48: @ 8124E48 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - ldr r7, _08124EBC @ =gSpecialVar_ItemId - ldrh r0, [r7] - bl ItemId_GetPocket - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bne _08124EC8 - bl sub_811D178 - cmp r0, 0x1 - bne _08124EC8 - ldr r0, _08124EC0 @ =gUnknown_203B0A0 - mov r8, r0 - ldrb r0, [r0, 0x9] - lsls r0, 24 - asrs r0, 24 - movs r6, 0x64 - adds r4, r0, 0 - muls r4, r6 - ldr r5, _08124EC4 @ =gPlayerParty - adds r4, r5 - ldrh r0, [r7] - bl ItemIdToBattleMoveId - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl GiveMoveToMon - mov r1, r8 - movs r0, 0x9 - ldrsb r0, [r1, r0] - muls r0, r6 - adds r0, r5 - movs r1, 0x4 - bl AdjustFriendship - ldrh r1, [r7] - movs r0, 0xA9 - lsls r0, 1 - cmp r1, r0 - bhi _08124EB0 - adds r0, r1, 0 - movs r1, 0x1 - bl RemoveBagItem -_08124EB0: - mov r1, r8 - ldr r0, [r1] - bl SetMainCallback2 - b _08124EE6 - .align 2, 0 -_08124EBC: .4byte gSpecialVar_ItemId -_08124EC0: .4byte gUnknown_203B0A0 -_08124EC4: .4byte gPlayerParty -_08124EC8: - ldr r2, _08124EF4 @ =gUnknown_203B0A0 - ldrb r0, [r2, 0x8] - lsls r0, 28 - lsrs r0, 28 - ldrb r3, [r2, 0x9] - movs r1, 0x7F - str r1, [sp] - ldr r1, _08124EF8 @ =sub_8124FC8 - str r1, [sp, 0x4] - ldr r1, [r2] - str r1, [sp, 0x8] - movs r1, 0xFF - movs r2, 0 - bl PartyMenuInit -_08124EE6: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08124EF4: .4byte gUnknown_203B0A0 -_08124EF8: .4byte sub_8124FC8 - thumb_func_end sub_8124E48 - - thumb_func_start sub_8124EFC -sub_8124EFC: @ 8124EFC - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - bl sub_811D178 - cmp r0, 0x1 - bne _08124F94 - ldr r0, _08124F88 @ =gUnknown_203B0A0 - mov r8, r0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - adds r5, r1, 0 - muls r5, r0 - ldr r0, _08124F8C @ =gPlayerParty - adds r5, r0 - bl GetMoveSlotToReplace - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r1, r4, 0 - adds r1, 0xD - adds r0, r5, 0 - bl GetMonData - adds r6, r0, 0 - lsls r6, 16 - lsrs r6, 16 - adds r0, r5, 0 - adds r1, r4, 0 - bl RemoveMonPPBonus - ldr r7, _08124F90 @ =gSpecialVar_ItemId - ldrh r0, [r7] - bl ItemIdToBattleMoveId - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r5, 0 - adds r2, r4, 0 - bl SetMonMoveSlot - adds r0, r5, 0 - movs r1, 0x4 - bl AdjustFriendship - ldrh r2, [r7] - movs r0, 0x4 - adds r1, r5, 0 - adds r3, r6, 0 - bl ItemUse_SetQuestLogEvent - ldrh r1, [r7] - movs r0, 0xA9 - lsls r0, 1 - cmp r1, r0 - bhi _08124F7C - adds r0, r1, 0 - movs r1, 0x1 - bl RemoveBagItem -_08124F7C: - mov r1, r8 - ldr r0, [r1] - bl SetMainCallback2 - b _08124FB2 - .align 2, 0 -_08124F88: .4byte gUnknown_203B0A0 -_08124F8C: .4byte gPlayerParty -_08124F90: .4byte gSpecialVar_ItemId -_08124F94: - ldr r4, _08124FC0 @ =gUnknown_203B0A0 - ldrb r0, [r4, 0x8] - lsls r0, 28 - lsrs r0, 28 - ldrb r2, [r4, 0xB] - ldrb r3, [r4, 0x9] - movs r1, 0x7F - str r1, [sp] - ldr r1, _08124FC4 @ =sub_8124FC8 - str r1, [sp, 0x4] - ldr r1, [r4] - str r1, [sp, 0x8] - movs r1, 0xFF - bl PartyMenuInit -_08124FB2: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08124FC0: .4byte gUnknown_203B0A0 -_08124FC4: .4byte sub_8124FC8 - thumb_func_end sub_8124EFC - - thumb_func_start sub_8124FC8 -sub_8124FC8: @ 8124FC8 - push {lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r0, _08125000 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08124FFA - ldr r0, _08125004 @ =gUnknown_203B0A0 - ldrb r1, [r0, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x1 - bne _08124FEE - ldr r0, _08125008 @ =gUnknown_203B09C - ldr r1, [r0] - ldr r0, _0812500C @ =sub_8128184 - str r0, [r1, 0x4] -_08124FEE: - ldr r0, _08125010 @ =gUnknown_3005E98 - ldr r1, _08125014 @ =sub_81255BC - ldr r2, [r0] - adds r0, r3, 0 - bl _call_via_r2 -_08124FFA: - pop {r0} - bx r0 - .align 2, 0 -_08125000: .4byte gPaletteFade -_08125004: .4byte gUnknown_203B0A0 -_08125008: .4byte gUnknown_203B09C -_0812500C: .4byte sub_8128184 -_08125010: .4byte gUnknown_3005E98 -_08125014: .4byte sub_81255BC - thumb_func_end sub_8124FC8 - - thumb_func_start IsHPRecoveryItem -IsHPRecoveryItem: @ 8125018 - push {lr} - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xAF - bne _08125034 - ldr r0, _0812502C @ =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, _08125030 @ =0x00003108 - adds r0, r1 - b _0812503E - .align 2, 0 -_0812502C: .4byte gSaveBlock1Ptr -_08125030: .4byte 0x00003108 -_08125034: - ldr r1, _0812504C @ =gItemEffectTable - subs r0, 0xD - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] -_0812503E: - ldrb r1, [r0, 0x4] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _08125050 - movs r0, 0 - b _08125052 - .align 2, 0 -_0812504C: .4byte gItemEffectTable -_08125050: - movs r0, 0x1 -_08125052: - pop {r1} - bx r1 - thumb_func_end IsHPRecoveryItem - - thumb_func_start GetMedicineItemEffectMessage -GetMedicineItemEffectMessage: @ 8125058 - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl GetItemEffectType - lsls r0, 24 - lsrs r0, 24 - subs r0, 0x3 - cmp r0, 0x12 - bls _0812506E - b _08125204 -_0812506E: - lsls r0, 2 - ldr r1, _08125078 @ =_0812507C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08125078: .4byte _0812507C - .align 2, 0 -_0812507C: - .4byte _081250C8 - .4byte _081250DC - .4byte _081250F0 - .4byte _08125104 - .4byte _08125118 - .4byte _0812512C - .4byte _08125140 - .4byte _08125204 - .4byte _08125154 - .4byte _08125178 - .4byte _08125168 - .4byte _081251A8 - .4byte _081251B8 - .4byte _08125198 - .4byte _08125188 - .4byte _08125204 - .4byte _081251DC - .4byte _081251DC - .4byte _081251F0 -_081250C8: - ldr r0, _081250D4 @ =gStringVar4 - ldr r1, _081250D8 @ =gUnknown_8416F4E - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_081250D4: .4byte gStringVar4 -_081250D8: .4byte gUnknown_8416F4E -_081250DC: - ldr r0, _081250E8 @ =gStringVar4 - ldr r1, _081250EC @ =gUnknown_8416F8C - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_081250E8: .4byte gStringVar4 -_081250EC: .4byte gUnknown_8416F8C -_081250F0: - ldr r0, _081250FC @ =gStringVar4 - ldr r1, _08125100 @ =gUnknown_8416F9A - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_081250FC: .4byte gStringVar4 -_08125100: .4byte gUnknown_8416F9A -_08125104: - ldr r0, _08125110 @ =gStringVar4 - ldr r1, _08125114 @ =gUnknown_8416FB2 - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_08125110: .4byte gStringVar4 -_08125114: .4byte gUnknown_8416FB2 -_08125118: - ldr r0, _08125124 @ =gStringVar4 - ldr r1, _08125128 @ =gUnknown_8416F6F - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_08125124: .4byte gStringVar4 -_08125128: .4byte gUnknown_8416F6F -_0812512C: - ldr r0, _08125138 @ =gStringVar4 - ldr r1, _0812513C @ =gUnknown_8417052 - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_08125138: .4byte gStringVar4 -_0812513C: .4byte gUnknown_8417052 -_08125140: - ldr r0, _0812514C @ =gStringVar4 - ldr r1, _08125150 @ =gUnknown_8417075 - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_0812514C: .4byte gStringVar4 -_08125150: .4byte gUnknown_8417075 -_08125154: - ldr r0, _08125160 @ =gStringVar4 - ldr r1, _08125164 @ =gUnknown_8416FED - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_08125160: .4byte gStringVar4 -_08125164: .4byte gUnknown_8416FED -_08125168: - ldr r0, _08125170 @ =gStringVar2 - ldr r1, _08125174 @ =gUnknown_84169C2 - b _081251BC - .align 2, 0 -_08125170: .4byte gStringVar2 -_08125174: .4byte gUnknown_84169C2 -_08125178: - ldr r0, _08125180 @ =gStringVar2 - ldr r1, _08125184 @ =gUnknown_8417674 - b _081251BC - .align 2, 0 -_08125180: .4byte gStringVar2 -_08125184: .4byte gUnknown_8417674 -_08125188: - ldr r0, _08125190 @ =gStringVar2 - ldr r1, _08125194 @ =gUnknown_841767B - b _081251BC - .align 2, 0 -_08125190: .4byte gStringVar2 -_08125194: .4byte gUnknown_841767B -_08125198: - ldr r0, _081251A0 @ =gStringVar2 - ldr r1, _081251A4 @ =gUnknown_841768D - b _081251BC - .align 2, 0 -_081251A0: .4byte gStringVar2 -_081251A4: .4byte gUnknown_841768D -_081251A8: - ldr r0, _081251B0 @ =gStringVar2 - ldr r1, _081251B4 @ =gUnknown_84169C5 - b _081251BC - .align 2, 0 -_081251B0: .4byte gStringVar2 -_081251B4: .4byte gUnknown_84169C5 -_081251B8: - ldr r0, _081251CC @ =gStringVar2 - ldr r1, _081251D0 @ =gUnknown_84169CD -_081251BC: - bl StringCopy - ldr r0, _081251D4 @ =gStringVar4 - ldr r1, _081251D8 @ =gUnknown_8417032 - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_081251CC: .4byte gStringVar2 -_081251D0: .4byte gUnknown_84169CD -_081251D4: .4byte gStringVar4 -_081251D8: .4byte gUnknown_8417032 -_081251DC: - ldr r0, _081251E8 @ =gStringVar4 - ldr r1, _081251EC @ =gUnknown_8417002 - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_081251E8: .4byte gStringVar4 -_081251EC: .4byte gUnknown_8417002 -_081251F0: - ldr r0, _081251FC @ =gStringVar4 - ldr r1, _08125200 @ =gUnknown_8416FC7 - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_081251FC: .4byte gStringVar4 -_08125200: .4byte gUnknown_8416FC7 -_08125204: - ldr r0, _08125210 @ =gStringVar4 - ldr r1, _08125214 @ =gUnknown_84169DC - bl StringExpandPlaceholders -_0812520C: - pop {r0} - bx r0 - .align 2, 0 -_08125210: .4byte gStringVar4 -_08125214: .4byte gUnknown_84169DC - thumb_func_end GetMedicineItemEffectMessage - - thumb_func_start UsingHPEVItemOnShedinja -UsingHPEVItemOnShedinja: @ 8125218 - push {r4,lr} - adds r4, r0, 0 - lsls r0, r1, 16 - lsrs r0, 16 - bl GetItemEffectType - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xD - bne _08125244 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - ldr r1, _08125240 @ =0x0000012f - cmp r0, r1 - bne _08125244 - movs r0, 0 - b _08125246 - .align 2, 0 -_08125240: .4byte 0x0000012f -_08125244: - movs r0, 0x1 -_08125246: - pop {r4} - pop {r1} - bx r1 - thumb_func_end UsingHPEVItemOnShedinja - - thumb_func_start IsBlueYellowRedFlute -IsBlueYellowRedFlute: @ 812524C - push {lr} - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x27 - beq _0812525E - cmp r0, 0x29 - beq _0812525E - cmp r0, 0x28 - bne _08125262 -_0812525E: - movs r0, 0x1 - b _08125264 -_08125262: - movs r0, 0 -_08125264: - pop {r1} - bx r1 - thumb_func_end IsBlueYellowRedFlute - - thumb_func_start ExecuteTableBasedItemEffect__ -ExecuteTableBasedItemEffect__: @ 8125268 - push {r4-r6,lr} - lsls r0, 24 - lsrs r3, r0, 24 - lsls r1, 16 - lsrs r5, r1, 16 - lsls r2, 24 - lsrs r6, r2, 24 - ldr r0, _08125294 @ =gMain - ldr r1, _08125298 @ =0x00000439 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _081252A0 - movs r0, 0x64 - muls r0, r3 - ldr r1, _0812529C @ =gPlayerParty - adds r0, r1 - adds r1, r5, 0 - adds r2, r3, 0 - b _081252BA - .align 2, 0 -_08125294: .4byte gMain -_08125298: .4byte 0x00000439 -_0812529C: .4byte gPlayerParty -_081252A0: - movs r0, 0x64 - adds r4, r3, 0 - muls r4, r0 - ldr r0, _081252CC @ =gPlayerParty - adds r4, r0 - adds r0, r3, 0 - bl sub_8127F7C - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 -_081252BA: - adds r3, r6, 0 - bl ExecuteTableBasedItemEffect - lsls r0, 24 - lsrs r0, 24 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_081252CC: .4byte gPlayerParty - thumb_func_end ExecuteTableBasedItemEffect__ - - thumb_func_start sub_81252D0 -sub_81252D0: @ 81252D0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r1 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, _08125300 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08125304 @ =gPlayerParty - adds r5, r1, r0 - ldr r0, _08125308 @ =gSpecialVar_ItemId - ldrh r6, [r0] - adds r0, r5, 0 - adds r1, r6, 0 - bl UsingHPEVItemOnShedinja - lsls r0, 24 - cmp r0, 0 - bne _0812530C - movs r4, 0x1 - b _08125342 - .align 2, 0 -_08125300: .4byte gUnknown_203B0A0 -_08125304: .4byte gPlayerParty -_08125308: .4byte gSpecialVar_ItemId -_0812530C: - adds r0, r6, 0 - bl IsHPRecoveryItem - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08125330 - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - movs r1, 0x3A - bl GetMonData -_08125330: - ldr r0, _08125370 @ =gUnknown_203B0A0 - ldrb r2, [r0, 0x9] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0 - bl PokemonUseItemEffects2 - lsls r0, 24 - lsrs r4, r0, 24 -_08125342: - movs r0, 0x5 - bl PlaySE - cmp r4, 0 - beq _08125380 - ldr r1, _08125374 @ =gUnknown_203B0C0 - movs r0, 0 - strb r0, [r1] - ldr r0, _08125378 @ =gUnknown_84169DC - movs r1, 0x1 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _0812537C @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - mov r1, r8 - str r1, [r0] - b _08125398 - .align 2, 0 -_08125370: .4byte gUnknown_203B0A0 -_08125374: .4byte gUnknown_203B0C0 -_08125378: .4byte gUnknown_84169DC -_0812537C: .4byte gTasks -_08125380: - ldr r3, _081253A4 @ =0x0000ffff - movs r0, 0x4 - adds r1, r5, 0 - adds r2, r6, 0 - bl ItemUse_SetQuestLogEvent - adds r0, r7, 0 - bl sub_8124DC0 - ldr r1, _081253A8 @ =gUnknown_3005E98 - ldr r0, _081253AC @ =ItemUseCB_Medicine - str r0, [r1] -_08125398: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081253A4: .4byte 0x0000ffff -_081253A8: .4byte gUnknown_3005E98 -_081253AC: .4byte ItemUseCB_Medicine - thumb_func_end sub_81252D0 - - thumb_func_start ItemUseCB_Medicine -ItemUseCB_Medicine: @ 81253B0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - str r1, [sp, 0x4] - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - movs r0, 0 - mov r10, r0 - ldr r0, _08125438 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _0812543C @ =gPlayerParty - adds r5, r1, r0 - ldr r0, _08125440 @ =gSpecialVar_ItemId - ldrh r6, [r0] - adds r0, r5, 0 - adds r1, r6, 0 - bl UsingHPEVItemOnShedinja - lsls r0, 24 - cmp r0, 0 - beq _08125428 - adds r0, r6, 0 - bl IsHPRecoveryItem - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - cmp r0, 0x1 - bne _08125416 - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - mov r10, r0 - adds r0, r5, 0 - movs r1, 0x3A - bl GetMonData - cmp r10, r0 - bne _08125416 - movs r1, 0 - mov r8, r1 -_08125416: - ldr r4, _08125438 @ =gUnknown_203B0A0 - ldrb r0, [r4, 0x9] - adds r1, r6, 0 - movs r2, 0 - bl ExecuteTableBasedItemEffect__ - lsls r0, 24 - cmp r0, 0 - beq _0812544C -_08125428: - ldr r1, _08125444 @ =gUnknown_203B0C0 - movs r0, 0 - strb r0, [r1] - movs r0, 0x5 - bl PlaySE - ldr r0, _08125448 @ =gUnknown_84169DC - b _0812551C - .align 2, 0 -_08125438: .4byte gUnknown_203B0A0 -_0812543C: .4byte gPlayerParty -_08125440: .4byte gSpecialVar_ItemId -_08125444: .4byte gUnknown_203B0C0 -_08125448: .4byte gUnknown_84169DC -_0812544C: - ldr r1, _08125474 @ =gUnknown_203B0C0 - movs r0, 0x1 - strb r0, [r1] - adds r0, r6, 0 - bl IsBlueYellowRedFlute - lsls r0, 24 - cmp r0, 0 - bne _08125478 - movs r0, 0x1 - bl PlaySE - ldrb r0, [r4, 0xB] - cmp r0, 0xE - beq _0812547E - adds r0, r6, 0 - movs r1, 0x1 - bl RemoveBagItem - b _0812547E - .align 2, 0 -_08125474: .4byte gUnknown_203B0C0 -_08125478: - movs r0, 0x6E - bl PlaySE -_0812547E: - ldr r4, _081254FC @ =gUnknown_203B0B4 - ldr r7, _08125500 @ =gUnknown_203B0A0 - movs r0, 0x9 - ldrsb r0, [r7, r0] - lsls r0, 4 - ldr r1, [r4] - adds r1, r0 - adds r0, r5, 0 - bl party_menu_get_status_condition_and_update_object - ldr r2, _08125504 @ =gSprites - movs r0, 0x9 - ldrsb r0, [r7, r0] - ldr r1, [r4] - lsls r0, 4 - adds r3, r0, r1 - ldrb r1, [r3, 0xC] - 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 - bge _081254BC - adds r0, r5, 0 - adds r1, r3, 0 - movs r2, 0x1 - bl sub_8121790 -_081254BC: - mov r2, r8 - cmp r2, 0x1 - bne _0812550C - mov r0, r10 - cmp r0, 0 - bne _081254D0 - ldrb r0, [r7, 0x9] - movs r1, 0x1 - bl sub_811F818 -_081254D0: - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - adds r3, r0, 0 - mov r1, r10 - subs r3, r1 - lsls r3, 16 - asrs r3, 16 - ldrb r1, [r7, 0x9] - ldr r0, _08125508 @ =sub_8125554 - str r0, [sp] - mov r0, r9 - movs r2, 0x1 - bl sub_8120760 - mov r0, r9 - movs r1, 0 - mov r2, r10 - bl sub_81207F0 - b _08125538 - .align 2, 0 -_081254FC: .4byte gUnknown_203B0B4 -_08125500: .4byte gUnknown_203B0A0 -_08125504: .4byte gSprites -_08125508: .4byte sub_8125554 -_0812550C: - ldr r1, _08125548 @ =gStringVar1 - adds r0, r5, 0 - bl GetMonNickname - adds r0, r6, 0 - bl GetMedicineItemEffectMessage - ldr r0, _0812554C @ =gStringVar4 -_0812551C: - movs r1, 0x1 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08125550 @ =gTasks - mov r2, r9 - lsls r0, r2, 2 - add r0, r9 - lsls r0, 3 - adds r0, r1 - ldr r1, [sp, 0x4] - str r1, [r0] -_08125538: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08125548: .4byte gStringVar1 -_0812554C: .4byte gStringVar4 -_08125550: .4byte gTasks - thumb_func_end ItemUseCB_Medicine - - thumb_func_start sub_8125554 -sub_8125554: @ 8125554 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r0, _081255A0 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _081255A4 @ =gPlayerParty - adds r0, r1 - ldr r1, _081255A8 @ =gStringVar1 - bl GetMonNickname - ldr r4, _081255AC @ =gStringVar4 - ldr r1, _081255B0 @ =gUnknown_8416F27 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - bl HandleBattleLowHpMusicChange - ldr r1, _081255B4 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _081255B8 @ =sub_81255BC - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_081255A0: .4byte gUnknown_203B0A0 -_081255A4: .4byte gPlayerParty -_081255A8: .4byte gStringVar1 -_081255AC: .4byte gStringVar4 -_081255B0: .4byte gUnknown_8416F27 -_081255B4: .4byte gTasks -_081255B8: .4byte sub_81255BC - thumb_func_end sub_8125554 - - thumb_func_start sub_81255BC -sub_81255BC: @ 81255BC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081255E2 - ldr r0, _081255E8 @ =gUnknown_203B0C0 - ldrb r1, [r0] - cmp r1, 0 - bne _081255DC - ldr r0, _081255EC @ =gUnknown_203B09C - ldr r0, [r0] - str r1, [r0, 0x4] -_081255DC: - adds r0, r4, 0 - bl sub_811FA78 -_081255E2: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081255E8: .4byte gUnknown_203B0C0 -_081255EC: .4byte gUnknown_203B09C - thumb_func_end sub_81255BC - - thumb_func_start sub_81255F0 -sub_81255F0: @ 81255F0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - mov r10, r0 - movs r1, 0x2 - mov r8, r1 - movs r0, 0x3 - bl sub_8121E5C - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - movs r6, 0 - movs r0, 0x64 - adds r2, r4, 0 - muls r2, r0 - str r2, [sp, 0xC] -_08125620: - ldr r0, _081256B8 @ =gPlayerParty - adds r1, r6, 0 - adds r1, 0xD - ldr r2, [sp, 0xC] - adds r0, r2, r0 - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - mov r0, r8 - movs r1, 0 - bl GetFontAttribute - adds r4, r0, 0 - mov r0, r8 - movs r1, 0x2 - bl GetFontAttribute - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0xD - adds r2, r5, 0 - muls r2, r0 - ldr r0, _081256BC @ =gMoveNames - adds r2, r0 - lsls r0, r6, 4 - adds r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - movs r0, 0xFF - str r0, [sp, 0x4] - movs r7, 0 - str r7, [sp, 0x8] - mov r0, r9 - mov r1, r8 - adds r3, r4, 0 - bl AddTextPrinterParameterized - cmp r5, 0 - beq _08125680 - mov r0, r10 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 -_08125680: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x3 - bls _08125620 - movs r0, 0x10 - str r0, [sp] - mov r0, r10 - str r0, [sp, 0x4] - str r7, [sp, 0x8] - mov r0, r9 - mov r1, r8 - movs r2, 0 - movs r3, 0x2 - bl Menu_InitCursor - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081256B8: .4byte gPlayerParty -_081256BC: .4byte gMoveNames - thumb_func_end sub_81255F0 - - thumb_func_start sub_81256C0 -sub_81256C0: @ 81256C0 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - bl Menu_ProcessInput - lsls r0, 24 - asrs r1, r0, 24 - movs r0, 0x2 - negs r0, r0 - cmp r1, r0 - beq _081256F2 - adds r0, 0x1 - cmp r1, r0 - bne _081256EC - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_81257D4 - b _081256F2 -_081256EC: - adds r0, r5, 0 - bl sub_8125790 -_081256F2: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_81256C0 - - thumb_func_start ItemUseCB_PpRestore -ItemUseCB_PpRestore: @ 81256F8 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08125710 @ =gSpecialVar_ItemId - ldrh r0, [r0] - cmp r0, 0xAF - bne _0812571C - ldr r0, _08125714 @ =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, _08125718 @ =0x00003108 - adds r0, r1 - b _08125726 - .align 2, 0 -_08125710: .4byte gSpecialVar_ItemId -_08125714: .4byte gSaveBlock1Ptr -_08125718: .4byte 0x00003108 -_0812571C: - ldr r1, _0812574C @ =gItemEffectTable - subs r0, 0xD - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] -_08125726: - ldrb r1, [r0, 0x4] - movs r0, 0x10 - ands r0, r1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0812575C - ldr r0, _08125750 @ =gUnknown_203B0A0 - strh r1, [r0, 0xE] - ldrb r1, [r0, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x1 - bne _08125754 - adds r0, r4, 0 - bl sub_8125958 - b _0812577E - .align 2, 0 -_0812574C: .4byte gItemEffectTable -_08125750: .4byte gUnknown_203B0A0 -_08125754: - adds r0, r4, 0 - bl sub_812580C - b _0812577E -_0812575C: - movs r0, 0x5 - bl PlaySE - movs r0, 0x17 - bl sub_8121D0C - ldr r0, _08125784 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0x9] - bl sub_81255F0 - ldr r1, _08125788 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0812578C @ =sub_81256C0 - str r1, [r0] -_0812577E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08125784: .4byte gUnknown_203B0A0 -_08125788: .4byte gTasks -_0812578C: .4byte sub_81256C0 - thumb_func_end ItemUseCB_PpRestore - - thumb_func_start sub_8125790 -sub_8125790: @ 8125790 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _081257C0 @ =gUnknown_203B09C - ldr r0, [r0] - adds r0, 0xC - bl sub_8121CE4 - bl Menu_GetCursorPos - ldr r1, _081257C4 @ =gUnknown_203B0A0 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r1, 0xE] - ldrb r1, [r1, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x1 - bne _081257C8 - adds r0, r4, 0 - bl sub_8125958 - b _081257CE - .align 2, 0 -_081257C0: .4byte gUnknown_203B09C -_081257C4: .4byte gUnknown_203B0A0 -_081257C8: - adds r0, r4, 0 - bl sub_812580C -_081257CE: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8125790 - - thumb_func_start sub_81257D4 -sub_81257D4: @ 81257D4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08125800 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r0, _08125804 @ =sub_811FB28 - str r0, [r1] - ldr r0, _08125808 @ =gUnknown_203B09C - ldr r0, [r0] - movs r1, 0 - str r1, [r0, 0x4] - adds r0, 0xC - bl sub_8121CE4 - movs r0, 0x5 - bl sub_8121D0C - pop {r0} - bx r0 - .align 2, 0 -_08125800: .4byte gTasks -_08125804: .4byte sub_811FB28 -_08125808: .4byte gUnknown_203B09C - thumb_func_end sub_81257D4 - - thumb_func_start sub_812580C -sub_812580C: @ 812580C - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r3, _08125860 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r3, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08125864 @ =gPlayerParty - adds r0, r1 - ldr r1, _08125868 @ =gSpecialVar_ItemId - ldrh r1, [r1] - ldrb r2, [r3, 0x9] - ldrb r3, [r3, 0xE] - bl PokemonUseItemEffects2 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x5 - bl PlaySE - cmp r4, 0 - beq _0812587C - ldr r1, _0812586C @ =gUnknown_203B0C0 - movs r0, 0 - strb r0, [r1] - ldr r0, _08125870 @ =gUnknown_84169DC - movs r1, 0x1 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08125874 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125878 @ =sub_81255BC - str r1, [r0] - b _08125888 - .align 2, 0 -_08125860: .4byte gUnknown_203B0A0 -_08125864: .4byte gPlayerParty -_08125868: .4byte gSpecialVar_ItemId -_0812586C: .4byte gUnknown_203B0C0 -_08125870: .4byte gUnknown_84169DC -_08125874: .4byte gTasks -_08125878: .4byte sub_81255BC -_0812587C: - adds r0, r5, 0 - bl sub_8124DC0 - ldr r1, _08125890 @ =gUnknown_3005E98 - ldr r0, _08125894 @ =sub_8125898 - str r0, [r1] -_08125888: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08125890: .4byte gUnknown_3005E98 -_08125894: .4byte sub_8125898 - thumb_func_end sub_812580C - - thumb_func_start sub_8125898 -sub_8125898: @ 8125898 - push {r4-r6,lr} - mov r6, r8 - push {r6} - mov r8, r0 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r5, _08125930 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r5, r1] - movs r0, 0x64 - adds r4, r1, 0 - muls r4, r0 - ldr r0, _08125934 @ =gPlayerParty - adds r4, r0 - ldrb r0, [r5, 0x9] - ldr r6, _08125938 @ =gSpecialVar_ItemId - ldrh r1, [r6] - ldrb r2, [r5, 0xE] - bl ExecuteTableBasedItemEffect__ - ldr r1, _0812593C @ =gUnknown_203B0C0 - movs r0, 0x1 - strb r0, [r1] - ldrh r2, [r6] - ldr r3, _08125940 @ =0x0000ffff - movs r0, 0x4 - adds r1, r4, 0 - bl ItemUse_SetQuestLogEvent - movs r0, 0x1 - bl PlaySE - ldrh r0, [r6] - movs r1, 0x1 - bl RemoveBagItem - movs r2, 0xE - ldrsh r1, [r5, r2] - adds r1, 0xD - adds r0, r4, 0 - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - ldr r2, _08125944 @ =gStringVar1 - movs r1, 0xD - muls r1, r0 - ldr r0, _08125948 @ =gMoveNames - adds r1, r0 - adds r0, r2, 0 - bl StringCopy - ldrh r0, [r6] - bl GetMedicineItemEffectMessage - ldr r0, _0812594C @ =gStringVar4 - movs r1, 0x1 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08125950 @ =gTasks - mov r2, r8 - lsls r0, r2, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125954 @ =sub_81255BC - str r1, [r0] - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08125930: .4byte gUnknown_203B0A0 -_08125934: .4byte gPlayerParty -_08125938: .4byte gSpecialVar_ItemId -_0812593C: .4byte gUnknown_203B0C0 -_08125940: .4byte 0x0000ffff -_08125944: .4byte gStringVar1 -_08125948: .4byte gMoveNames -_0812594C: .4byte gStringVar4 -_08125950: .4byte gTasks -_08125954: .4byte sub_81255BC - thumb_func_end sub_8125898 - - thumb_func_start sub_8125958 -sub_8125958: @ 8125958 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r6, r0, 24 - movs r4, 0 - ldr r7, _08125990 @ =gUnknown_203B0AE - ldr r0, _08125994 @ =gSpecialVar_ItemId - ldrh r5, [r0] - movs r0, 0xE - negs r0, r0 - adds r0, r7 - mov r8, r0 - ldrb r0, [r0, 0x9] - ldrb r2, [r7] - adds r1, r5, 0 - bl ExecuteTableBasedItemEffect__ - lsls r0, 24 - cmp r0, 0 - beq _081259A0 - ldr r0, _08125998 @ =gUnknown_203B0C0 - strb r4, [r0] - movs r0, 0x5 - bl PlaySE - ldr r0, _0812599C @ =gUnknown_84169DC - b _081259F6 - .align 2, 0 -_08125990: .4byte gUnknown_203B0AE -_08125994: .4byte gSpecialVar_ItemId -_08125998: .4byte gUnknown_203B0C0 -_0812599C: .4byte gUnknown_84169DC -_081259A0: - ldr r1, _08125A1C @ =gUnknown_203B0C0 - movs r0, 0x1 - strb r0, [r1] - mov r0, r8 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - adds r4, r1, 0 - muls r4, r0 - ldr r0, _08125A20 @ =gPlayerParty - adds r4, r0 - ldr r3, _08125A24 @ =0x0000ffff - movs r0, 0x4 - adds r1, r4, 0 - adds r2, r5, 0 - bl ItemUse_SetQuestLogEvent - movs r0, 0x1 - bl PlaySE - adds r0, r5, 0 - movs r1, 0x1 - bl RemoveBagItem - movs r0, 0 - ldrsh r1, [r7, r0] - adds r1, 0xD - adds r0, r4, 0 - bl GetMonData - lsls r0, 16 - lsrs r4, r0, 16 - ldr r0, _08125A28 @ =gStringVar1 - movs r1, 0xD - muls r1, r4 - ldr r2, _08125A2C @ =gMoveNames - adds r1, r2 - bl StringCopy - adds r0, r5, 0 - bl GetMedicineItemEffectMessage - ldr r0, _08125A30 @ =gStringVar4 -_081259F6: - movs r1, 0x1 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08125A34 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125A38 @ =sub_81255BC - str r1, [r0] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08125A1C: .4byte gUnknown_203B0C0 -_08125A20: .4byte gPlayerParty -_08125A24: .4byte 0x0000ffff -_08125A28: .4byte gStringVar1 -_08125A2C: .4byte gMoveNames -_08125A30: .4byte gStringVar4 -_08125A34: .4byte gTasks -_08125A38: .4byte sub_81255BC - thumb_func_end sub_8125958 - - thumb_func_start dp05_pp_up -dp05_pp_up: @ 8125A3C - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x5 - bl PlaySE - movs r0, 0x18 - bl sub_8121D0C - ldr r0, _08125A6C @ =gUnknown_203B0A0 - ldrb r0, [r0, 0x9] - bl sub_81255F0 - ldr r1, _08125A70 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125A74 @ =sub_81256C0 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08125A6C: .4byte gUnknown_203B0A0 -_08125A70: .4byte gTasks -_08125A74: .4byte sub_81256C0 - thumb_func_end dp05_pp_up - - thumb_func_start ItemIdToBattleMoveId -ItemIdToBattleMoveId: @ 8125A78 - lsls r0, 16 - ldr r1, _08125A88 @ =0xfedf0000 - adds r0, r1 - ldr r1, _08125A8C @ =gUnknown_845A80C - lsrs r0, 15 - adds r0, r1 - ldrh r0, [r0] - bx lr - .align 2, 0 -_08125A88: .4byte 0xfedf0000 -_08125A8C: .4byte gUnknown_845A80C - thumb_func_end ItemIdToBattleMoveId - - thumb_func_start sub_8125A90 -sub_8125A90: @ 8125A90 - push {lr} - lsls r0, 16 - lsrs r2, r0, 16 - movs r1, 0 - ldr r3, _08125AAC @ =gUnknown_845A80C -_08125A9A: - adds r0, r1, 0 - adds r0, 0x32 - lsls r0, 1 - adds r0, r3 - ldrh r0, [r0] - cmp r0, r2 - bne _08125AB0 - movs r0, 0x1 - b _08125ABC - .align 2, 0 -_08125AAC: .4byte gUnknown_845A80C -_08125AB0: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x6 - bls _08125A9A - movs r0, 0 -_08125ABC: - pop {r1} - bx r1 - thumb_func_end sub_8125A90 - - thumb_func_start MonKnowsMove -MonKnowsMove: @ 8125AC0 - push {r4-r6,lr} - adds r6, r0, 0 - lsls r1, 16 - lsrs r5, r1, 16 - movs r4, 0 -_08125ACA: - adds r1, r4, 0 - adds r1, 0xD - adds r0, r6, 0 - bl GetMonData - cmp r0, r5 - bne _08125ADC - movs r0, 0x1 - b _08125AE8 -_08125ADC: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _08125ACA - movs r0, 0 -_08125AE8: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end MonKnowsMove - - thumb_func_start sub_8125AF0 -sub_8125AF0: @ 8125AF0 - push {r4,lr} - adds r1, r0, 0 - ldr r4, _08125B10 @ =gStringVar4 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08125B10: .4byte gStringVar4 - thumb_func_end sub_8125AF0 - - thumb_func_start sub_8125B14 -sub_8125B14: @ 8125B14 - push {r4,lr} - adds r4, r0, 0 - adds r0, r1, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_8125AF0 - ldr r1, _08125B38 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125B3C @ =sub_81255BC - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08125B38: .4byte gTasks -_08125B3C: .4byte sub_81255BC - thumb_func_end sub_8125B14 - - thumb_func_start sub_8125B40 -sub_8125B40: @ 8125B40 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r6, r0, 24 - movs r0, 0x5 - bl PlaySE - ldr r7, _08125BD0 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r7, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08125BD4 @ =gPlayerParty - adds r4, r1, r0 - movs r0, 0xE - adds r0, r7 - mov r8, r0 - ldr r0, _08125BD8 @ =gSpecialVar_ItemId - ldrh r5, [r0] - ldr r1, _08125BDC @ =gStringVar1 - adds r0, r4, 0 - bl GetMonNickname - adds r0, r5, 0 - bl ItemIdToBattleMoveId - strh r0, [r7, 0xE] - ldr r0, _08125BE0 @ =gStringVar2 - movs r1, 0xE - ldrsh r2, [r7, r1] - movs r1, 0xD - muls r1, r2 - ldr r2, _08125BE4 @ =gMoveNames - adds r1, r2 - bl StringCopy - movs r0, 0 - mov r1, r8 - strh r0, [r1, 0x2] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl sub_8120B20 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08125BF4 - cmp r0, 0x2 - beq _08125BFC - ldrh r1, [r7, 0xE] - adds r0, r4, 0 - bl GiveMoveToMon - lsls r0, 16 - lsrs r0, 16 - ldr r3, _08125BE8 @ =0x0000ffff - cmp r0, r3 - beq _08125C0C - movs r0, 0x4 - adds r1, r4, 0 - adds r2, r5, 0 - bl ItemUse_SetQuestLogEvent - adds r0, r6, 0 - bl sub_8124DC0 - ldr r1, _08125BEC @ =gUnknown_3005E98 - ldr r0, _08125BF0 @ =sub_8125C38 - str r0, [r1] - b _08125C20 - .align 2, 0 -_08125BD0: .4byte gUnknown_203B0A0 -_08125BD4: .4byte gPlayerParty -_08125BD8: .4byte gSpecialVar_ItemId -_08125BDC: .4byte gStringVar1 -_08125BE0: .4byte gStringVar2 -_08125BE4: .4byte gMoveNames -_08125BE8: .4byte 0x0000ffff -_08125BEC: .4byte gUnknown_3005E98 -_08125BF0: .4byte sub_8125C38 -_08125BF4: - ldr r1, _08125BF8 @ =gUnknown_8416DC2 - b _08125BFE - .align 2, 0 -_08125BF8: .4byte gUnknown_8416DC2 -_08125BFC: - ldr r1, _08125C08 @ =gUnknown_8416F10 -_08125BFE: - adds r0, r6, 0 - bl sub_8125B14 - b _08125C20 - .align 2, 0 -_08125C08: .4byte gUnknown_8416F10 -_08125C0C: - ldr r0, _08125C2C @ =gUnknown_8416DF7 - bl sub_8125AF0 - ldr r1, _08125C30 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125C34 @ =sub_8125D88 - str r1, [r0] -_08125C20: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08125C2C: .4byte gUnknown_8416DF7 -_08125C30: .4byte gTasks -_08125C34: .4byte sub_8125D88 - thumb_func_end sub_8125B40 - - thumb_func_start sub_8125C38 -sub_8125C38: @ 8125C38 - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl sub_8125C48 - pop {r0} - bx r0 - thumb_func_end sub_8125C38 - - thumb_func_start sub_8125C48 -sub_8125C48: @ 8125C48 - push {r4-r7,lr} - lsls r0, 24 - lsrs r7, r0, 24 - ldr r2, _08125CCC @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r2, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08125CD0 @ =gPlayerParty - adds r5, r1, r0 - adds r6, r2, 0 - adds r6, 0xE - ldr r0, _08125CD4 @ =gSpecialVar_ItemId - ldrh r4, [r0] - movs r1, 0x2 - ldrsh r0, [r6, r1] - cmp r0, 0 - bne _08125C84 - adds r0, r5, 0 - movs r1, 0x4 - bl AdjustFriendship - movs r0, 0xA9 - lsls r0, 1 - cmp r4, r0 - bhi _08125C84 - adds r0, r4, 0 - movs r1, 0x1 - bl RemoveBagItem -_08125C84: - ldr r1, _08125CD8 @ =gStringVar1 - adds r0, r5, 0 - bl GetMonNickname - ldr r0, _08125CDC @ =gStringVar2 - movs r1, 0 - ldrsh r2, [r6, r1] - movs r1, 0xD - muls r1, r2 - ldr r2, _08125CE0 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _08125CE4 @ =gStringVar4 - ldr r1, _08125CE8 @ =gUnknown_8416DB3 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08125CEC @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125CF0 @ =sub_8125CF4 - str r1, [r0] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08125CCC: .4byte gUnknown_203B0A0 -_08125CD0: .4byte gPlayerParty -_08125CD4: .4byte gSpecialVar_ItemId -_08125CD8: .4byte gStringVar1 -_08125CDC: .4byte gStringVar2 -_08125CE0: .4byte gMoveNames -_08125CE4: .4byte gStringVar4 -_08125CE8: .4byte gUnknown_8416DB3 -_08125CEC: .4byte gTasks -_08125CF0: .4byte sub_8125CF4 - thumb_func_end sub_8125C48 - - thumb_func_start sub_8125CF4 -sub_8125CF4: @ 8125CF4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08125D1A - ldr r0, _08125D20 @ =0x00000101 - bl PlayFanfare - ldr r1, _08125D24 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125D28 @ =sub_8125D2C - str r1, [r0] -_08125D1A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08125D20: .4byte 0x00000101 -_08125D24: .4byte gTasks -_08125D28: .4byte sub_8125D2C - thumb_func_end sub_8125CF4 - - thumb_func_start sub_8125D2C -sub_8125D2C: @ 8125D2C - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - bl IsFanfareTaskInactive - lsls r0, 24 - cmp r0, 0 - beq _08125D7E - ldr r0, _08125D68 @ =gMain - ldrh r1, [r0, 0x2E] - movs r2, 0x1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _08125D54 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08125D7E -_08125D54: - ldr r0, _08125D6C @ =gUnknown_203B0A0 - movs r1, 0x10 - ldrsh r0, [r0, r1] - cmp r0, 0x1 - bne _08125D70 - adds r0, r4, 0 - bl sub_81266A0 - b _08125D7E - .align 2, 0 -_08125D68: .4byte gMain -_08125D6C: .4byte gUnknown_203B0A0 -_08125D70: - cmp r0, 0x2 - bne _08125D78 - ldr r0, _08125D84 @ =gSpecialVar_Result - strh r2, [r0] -_08125D78: - adds r0, r5, 0 - bl sub_811FA78 -_08125D7E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08125D84: .4byte gSpecialVar_Result - thumb_func_end sub_8125D2C - - thumb_func_start sub_8125D88 -sub_8125D88: @ 8125D88 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08125DAC - bl sub_812200C - ldr r0, _08125DB4 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08125DB8 @ =sub_8125DBC - str r0, [r1] -_08125DAC: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08125DB4: .4byte gTasks -_08125DB8: .4byte sub_8125DBC - thumb_func_end sub_8125D88 - - thumb_func_start sub_8125DBC -sub_8125DBC: @ 8125DBC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl Menu_ProcessInputNoWrapClearOnChoose - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _08125DE2 - cmp r1, 0 - bgt _08125DDC - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08125E08 - b _08125E14 -_08125DDC: - cmp r1, 0x1 - beq _08125E0E - b _08125E14 -_08125DE2: - ldr r0, _08125DFC @ =gUnknown_8416EA4 - movs r1, 0x1 - bl sub_81202F8 - ldr r1, _08125E00 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125E04 @ =sub_8125E1C - str r1, [r0] - b _08125E14 - .align 2, 0 -_08125DFC: .4byte gUnknown_8416EA4 -_08125E00: .4byte gTasks -_08125E04: .4byte sub_8125E1C -_08125E08: - movs r0, 0x5 - bl PlaySE -_08125E0E: - adds r0, r4, 0 - bl sub_81260D8 -_08125E14: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8125DBC - - thumb_func_start sub_8125E1C -sub_8125E1C: @ 8125E1C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08125E3C - ldr r0, _08125E44 @ =gUnknown_203B09C - ldr r1, [r0] - ldr r0, _08125E48 @ =sub_8125E4C - str r0, [r1, 0x4] - adds r0, r4, 0 - bl sub_811FA78 -_08125E3C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08125E44: .4byte gUnknown_203B09C -_08125E48: .4byte sub_8125E4C - thumb_func_end sub_8125E1C - - thumb_func_start sub_8125E4C -sub_8125E4C: @ 8125E4C - push {r4,lr} - sub sp, 0x4 - ldr r0, _08125E74 @ =gPlayerParty - ldr r4, _08125E78 @ =gUnknown_203B0A0 - ldrb r1, [r4, 0x9] - ldr r2, _08125E7C @ =gPlayerPartyCount - ldrb r2, [r2] - subs r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - ldr r3, _08125E80 @ =sub_8125E84 - ldrh r4, [r4, 0xE] - str r4, [sp] - bl ShowSelectMovePokemonSummaryScreen - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08125E74: .4byte gPlayerParty -_08125E78: .4byte gUnknown_203B0A0 -_08125E7C: .4byte gPlayerPartyCount -_08125E80: .4byte sub_8125E84 - thumb_func_end sub_8125E4C - - thumb_func_start sub_8125E84 -sub_8125E84: @ 8125E84 - push {r4,r5,lr} - sub sp, 0xC - bl GetMoveSlotToReplace - lsls r0, 24 - lsrs r2, r0, 24 - ldr r4, _08125ED0 @ =gUnknown_203B0A0 - movs r0, 0x10 - ldrsh r5, [r4, r0] - cmp r5, 0 - bne _08125EE8 - cmp r2, 0x4 - beq _08125EE8 - movs r1, 0x9 - ldrsb r1, [r4, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08125ED4 @ =gPlayerParty - adds r0, r1 - adds r1, r2, 0 - adds r1, 0xD - bl GetMonData - adds r2, r0, 0 - lsls r2, 16 - lsrs r2, 16 - ldrb r0, [r4, 0x9] - ldr r1, _08125ED8 @ =gSpecialVar_ItemId - ldrh r1, [r1] - ldr r3, _08125EDC @ =sub_8124EFC - bl sub_811C568 - ldr r1, _08125EE0 @ =gUnknown_3005E98 - ldr r0, _08125EE4 @ =sub_8125F4C - str r0, [r1] - strb r5, [r4, 0xB] - b _08125F02 - .align 2, 0 -_08125ED0: .4byte gUnknown_203B0A0 -_08125ED4: .4byte gPlayerParty -_08125ED8: .4byte gSpecialVar_ItemId -_08125EDC: .4byte sub_8124EFC -_08125EE0: .4byte gUnknown_3005E98 -_08125EE4: .4byte sub_8125F4C -_08125EE8: - movs r0, 0x7F - str r0, [sp] - ldr r0, _08125F0C @ =sub_8125F14 - str r0, [sp, 0x4] - ldr r0, _08125F10 @ =gUnknown_203B0A0 - ldr r0, [r0] - str r0, [sp, 0x8] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl PartyMenuInit -_08125F02: - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08125F0C: .4byte sub_8125F14 -_08125F10: .4byte gUnknown_203B0A0 - thumb_func_end sub_8125E84 - - thumb_func_start sub_8125F14 -sub_8125F14: @ 8125F14 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - ldr r0, _08125F3C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08125F46 - bl GetMoveSlotToReplace - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - beq _08125F40 - adds r0, r4, 0 - bl sub_8125FFC - b _08125F46 - .align 2, 0 -_08125F3C: .4byte gPaletteFade -_08125F40: - adds r0, r5, 0 - bl sub_81260D8 -_08125F46: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8125F14 - - thumb_func_start sub_8125F4C -sub_8125F4C: @ 8125F4C - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl sub_8125F5C - pop {r0} - bx r0 - thumb_func_end sub_8125F4C - - thumb_func_start sub_8125F5C -sub_8125F5C: @ 8125F5C - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - mov r8, r0 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r0, _08125FE4 @ =gUnknown_203B0A0 - mov r9, r0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - adds r6, r1, 0 - muls r6, r0 - ldr r0, _08125FE8 @ =gPlayerParty - adds r6, r0 - bl GetMoveSlotToReplace - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - adds r1, r5, 0 - adds r1, 0xD - adds r0, r6, 0 - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldr r0, _08125FEC @ =gSpecialVar_ItemId - ldrh r2, [r0] - movs r0, 0x4 - adds r1, r6, 0 - adds r3, r4, 0 - bl ItemUse_SetQuestLogEvent - ldr r1, _08125FF0 @ =gStringVar1 - adds r0, r6, 0 - bl GetMonNickname - ldr r0, _08125FF4 @ =gStringVar2 - movs r1, 0xD - muls r1, r4 - ldr r2, _08125FF8 @ =gMoveNames - adds r1, r2 - bl StringCopy - adds r0, r6, 0 - adds r1, r5, 0 - bl RemoveMonPPBonus - mov r0, r9 - ldrh r1, [r0, 0xE] - adds r0, r6, 0 - adds r2, r5, 0 - bl SetMonMoveSlot - mov r0, r8 - bl sub_8125C48 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08125FE4: .4byte gUnknown_203B0A0 -_08125FE8: .4byte gPlayerParty -_08125FEC: .4byte gSpecialVar_ItemId -_08125FF0: .4byte gStringVar1 -_08125FF4: .4byte gStringVar2 -_08125FF8: .4byte gMoveNames - thumb_func_end sub_8125F5C - - thumb_func_start sub_8125FFC -sub_8125FFC: @ 8125FFC - push {r4-r6,lr} - adds r6, r0, 0 - lsls r6, 24 - lsrs r6, 24 - ldr r0, _0812605C @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - adds r5, r1, 0 - muls r5, r0 - ldr r0, _08126060 @ =gPlayerParty - adds r5, r0 - bl GetMoveSlotToReplace - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r1, 0xD - adds r0, r5, 0 - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldr r1, _08126064 @ =gStringVar1 - adds r0, r5, 0 - bl GetMonNickname - ldr r0, _08126068 @ =gStringVar2 - movs r1, 0xD - muls r1, r4 - ldr r2, _0812606C @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r0, _08126070 @ =gUnknown_8416EC6 - bl sub_8125AF0 - ldr r1, _08126074 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08126078 @ =sub_812607C - str r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0812605C: .4byte gUnknown_203B0A0 -_08126060: .4byte gPlayerParty -_08126064: .4byte gStringVar1 -_08126068: .4byte gStringVar2 -_0812606C: .4byte gMoveNames -_08126070: .4byte gUnknown_8416EC6 -_08126074: .4byte gTasks -_08126078: .4byte sub_812607C - thumb_func_end sub_8125FFC - - thumb_func_start sub_812607C -sub_812607C: @ 812607C - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081260C8 - ldr r5, _081260D0 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r5, r1] - movs r0, 0x64 - adds r4, r1, 0 - muls r4, r0 - ldr r0, _081260D4 @ =gPlayerParty - adds r4, r0 - bl GetMoveSlotToReplace - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl RemoveMonPPBonus - ldrh r5, [r5, 0xE] - bl GetMoveSlotToReplace - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl SetMonMoveSlot - adds r0, r6, 0 - bl sub_8125C48 -_081260C8: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081260D0: .4byte gUnknown_203B0A0 -_081260D4: .4byte gPlayerParty - thumb_func_end sub_812607C - - thumb_func_start sub_81260D8 -sub_81260D8: @ 81260D8 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r0, _08126120 @ =gStringVar2 - ldr r1, _08126124 @ =gUnknown_203B0A0 - movs r3, 0xE - ldrsh r2, [r1, r3] - movs r1, 0xD - muls r1, r2 - ldr r2, _08126128 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _0812612C @ =gStringVar4 - ldr r1, _08126130 @ =gUnknown_8416E6B - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08126134 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _08126138 @ =sub_812613C - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08126120: .4byte gStringVar2 -_08126124: .4byte gUnknown_203B0A0 -_08126128: .4byte gMoveNames -_0812612C: .4byte gStringVar4 -_08126130: .4byte gUnknown_8416E6B -_08126134: .4byte gTasks -_08126138: .4byte sub_812613C - thumb_func_end sub_81260D8 - - thumb_func_start sub_812613C -sub_812613C: @ 812613C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08126160 - bl sub_812200C - ldr r0, _08126168 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0812616C @ =sub_8126170 - str r0, [r1] -_08126160: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08126168: .4byte gTasks -_0812616C: .4byte sub_8126170 - thumb_func_end sub_812613C - - thumb_func_start sub_8126170 -sub_8126170: @ 8126170 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r7, _081261A0 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r7, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _081261A4 @ =gPlayerParty - adds r4, r1, r0 - bl Menu_ProcessInputNoWrapClearOnChoose - lsls r0, 24 - asrs r5, r0, 24 - cmp r5, 0 - beq _081261AE - cmp r5, 0 - bgt _081261A8 - movs r0, 0x1 - negs r0, r0 - cmp r5, r0 - beq _08126234 - b _0812626A - .align 2, 0 -_081261A0: .4byte gUnknown_203B0A0 -_081261A4: .4byte gPlayerParty -_081261A8: - cmp r5, 0x1 - beq _0812623A - b _0812626A -_081261AE: - ldr r1, _081261F4 @ =gStringVar1 - adds r0, r4, 0 - bl GetMonNickname - ldr r0, _081261F8 @ =gStringVar2 - movs r1, 0xE - ldrsh r2, [r7, r1] - movs r1, 0xD - muls r1, r2 - ldr r2, _081261FC @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _08126200 @ =gStringVar4 - ldr r1, _08126204 @ =gUnknown_8416E84 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_81202F8 - movs r3, 0x10 - ldrsh r0, [r7, r3] - cmp r0, 0x1 - bne _08126210 - ldr r0, _08126208 @ =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldr r0, _0812620C @ =sub_812628C - str r0, [r1] - b _0812626A - .align 2, 0 -_081261F4: .4byte gStringVar1 -_081261F8: .4byte gStringVar2 -_081261FC: .4byte gMoveNames -_08126200: .4byte gStringVar4 -_08126204: .4byte gUnknown_8416E84 -_08126208: .4byte gTasks -_0812620C: .4byte sub_812628C -_08126210: - cmp r0, 0x2 - bne _08126218 - ldr r0, _08126228 @ =gSpecialVar_Result - strh r5, [r0] -_08126218: - ldr r0, _0812622C @ =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldr r0, _08126230 @ =sub_81255BC - str r0, [r1] - b _0812626A - .align 2, 0 -_08126228: .4byte gSpecialVar_Result -_0812622C: .4byte gTasks -_08126230: .4byte sub_81255BC -_08126234: - movs r0, 0x5 - bl PlaySE -_0812623A: - ldr r1, _08126270 @ =gStringVar1 - adds r0, r4, 0 - bl GetMonNickname - ldr r0, _08126274 @ =gStringVar2 - ldr r1, _08126278 @ =gUnknown_203B0A0 - movs r3, 0xE - ldrsh r2, [r1, r3] - movs r1, 0xD - muls r1, r2 - ldr r2, _0812627C @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r0, _08126280 @ =gUnknown_8416DF7 - bl sub_8125AF0 - ldr r1, _08126284 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08126288 @ =sub_8125D88 - str r1, [r0] -_0812626A: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08126270: .4byte gStringVar1 -_08126274: .4byte gStringVar2 -_08126278: .4byte gUnknown_203B0A0 -_0812627C: .4byte gMoveNames -_08126280: .4byte gUnknown_8416DF7 -_08126284: .4byte gTasks -_08126288: .4byte sub_8125D88 - thumb_func_end sub_8126170 - - thumb_func_start sub_812628C -sub_812628C: @ 812628C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081262A4 - adds r0, r4, 0 - bl sub_81266A0 -_081262A4: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_812628C - - thumb_func_start dp05_rare_candy -dp05_rare_candy: @ 81262AC - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r1 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r7, _081262E8 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r7, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _081262EC @ =gPlayerParty - adds r4, r1, r0 - ldr r0, _081262F0 @ =gSpecialVar_ItemId - ldrh r5, [r0] - adds r0, r4, 0 - movs r1, 0x38 - bl GetMonData - cmp r0, 0x64 - beq _081262F4 - ldrb r2, [r7, 0x9] - adds r0, r4, 0 - adds r1, r5, 0 - movs r3, 0 - bl PokemonUseItemEffects2 - lsls r0, 24 - lsrs r4, r0, 24 - b _081262F6 - .align 2, 0 -_081262E8: .4byte gUnknown_203B0A0 -_081262EC: .4byte gPlayerParty -_081262F0: .4byte gSpecialVar_ItemId -_081262F4: - movs r4, 0x1 -_081262F6: - movs r0, 0x5 - bl PlaySE - cmp r4, 0 - beq _08126330 - ldr r1, _08126324 @ =gUnknown_203B0C0 - movs r0, 0 - strb r0, [r1] - ldr r0, _08126328 @ =gUnknown_84169DC - movs r1, 0x1 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _0812632C @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - mov r1, r8 - str r1, [r0] - b _0812633C - .align 2, 0 -_08126324: .4byte gUnknown_203B0C0 -_08126328: .4byte gUnknown_84169DC -_0812632C: .4byte gTasks -_08126330: - adds r0, r6, 0 - bl sub_8124DC0 - ldr r1, _08126348 @ =gUnknown_3005E98 - ldr r0, _0812634C @ =sub_8126350 - str r0, [r1] -_0812633C: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08126348: .4byte gUnknown_3005E98 -_0812634C: .4byte sub_8126350 - thumb_func_end dp05_rare_candy - - thumb_func_start sub_8126350 -sub_8126350: @ 8126350 - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r6, _08126410 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r6, r1] - movs r0, 0x64 - adds r4, r1, 0 - muls r4, r0 - ldr r0, _08126414 @ =gPlayerParty - adds r4, r0 - ldr r0, _08126418 @ =gUnknown_203B09C - ldr r7, [r0] - movs r2, 0x86 - lsls r2, 2 - adds r1, r7, r2 - adds r0, r4, 0 - bl GetMonLevelUpWindowStats - ldrb r0, [r6, 0x9] - ldr r5, _0812641C @ =gSpecialVar_ItemId - ldrh r1, [r5] - movs r2, 0 - bl ExecuteTableBasedItemEffect__ - movs r0, 0x89 - lsls r0, 2 - adds r1, r7, r0 - adds r0, r4, 0 - bl GetMonLevelUpWindowStats - ldr r1, _08126420 @ =gUnknown_203B0C0 - movs r0, 0x1 - strb r0, [r1] - ldrh r2, [r5] - ldr r3, _08126424 @ =0x0000ffff - movs r0, 0x4 - adds r1, r4, 0 - bl ItemUse_SetQuestLogEvent - movs r0, 0 - bl PlayFanfareByFanfareNum - ldrb r0, [r6, 0x9] - adds r1, r4, 0 - bl sub_8126440 - ldrh r0, [r5] - movs r1, 0x1 - bl RemoveBagItem - ldr r1, _08126428 @ =gStringVar1 - adds r0, r4, 0 - bl GetMonNickname - adds r0, r4, 0 - movs r1, 0x38 - bl GetMonData - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - ldr r0, _0812642C @ =gStringVar2 - movs r2, 0 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - ldr r4, _08126430 @ =gStringVar4 - ldr r1, _08126434 @ =gUnknown_8417017 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08126438 @ =gTasks - mov r2, r8 - lsls r0, r2, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - ldr r1, _0812643C @ =sub_81264C8 - str r1, [r0] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08126410: .4byte gUnknown_203B0A0 -_08126414: .4byte gPlayerParty -_08126418: .4byte gUnknown_203B09C -_0812641C: .4byte gSpecialVar_ItemId -_08126420: .4byte gUnknown_203B0C0 -_08126424: .4byte 0x0000ffff -_08126428: .4byte gStringVar1 -_0812642C: .4byte gStringVar2 -_08126430: .4byte gStringVar4 -_08126434: .4byte gUnknown_8417017 -_08126438: .4byte gTasks -_0812643C: .4byte sub_81264C8 - thumb_func_end sub_8126350 - - thumb_func_start sub_8126440 -sub_8126440: @ 8126440 - push {r4-r7,lr} - adds r5, r1, 0 - lsls r0, 24 - lsrs r0, 24 - adds r7, r0, 0 - ldr r6, _081264C0 @ =gUnknown_203B0B4 - lsls r4, r7, 4 - ldr r1, [r6] - adds r1, r4 - adds r0, r5, 0 - bl party_menu_get_status_condition_and_update_object - ldr r2, _081264C4 @ =gSprites - ldr r0, [r6] - adds r3, r4, r0 - ldrb r1, [r3, 0xC] - 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 - bge _0812647C - adds r0, r5, 0 - adds r1, r3, 0 - movs r2, 0x1 - bl sub_8121790 -_0812647C: - ldr r1, [r6] - adds r1, r4 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_812199C - ldr r1, [r6] - adds r1, r4 - adds r0, r5, 0 - movs r2, 0x1 - bl sub_8121A3C - ldr r1, [r6] - adds r1, r4 - adds r0, r5, 0 - bl sub_8121AF0 - ldr r0, [r6] - adds r0, r4, r0 - ldrb r0, [r0, 0x9] - adds r1, r5, 0 - bl sub_8122358 - adds r0, r7, 0 - movs r1, 0x1 - bl sub_811F818 - movs r0, 0 - bl ScheduleBgCopyTilemapToVram - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081264C0: .4byte gUnknown_203B0B4 -_081264C4: .4byte gSprites - thumb_func_end sub_8126440 - - thumb_func_start sub_81264C8 -sub_81264C8: @ 81264C8 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0 - bl WaitFanfare - lsls r0, 24 - cmp r0, 0 - beq _08126514 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08126514 - ldr r0, _0812651C @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _081264FA - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08126514 -_081264FA: - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_8126570 - ldr r0, _08126520 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08126524 @ =sub_8126528 - str r0, [r1] -_08126514: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0812651C: .4byte gMain -_08126520: .4byte gTasks -_08126524: .4byte sub_8126528 - thumb_func_end sub_81264C8 - - thumb_func_start sub_8126528 -sub_8126528: @ 8126528 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08126564 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08126542 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0812655C -_08126542: - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_81265BC - ldr r0, _08126568 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0812656C @ =sub_81265F8 - str r0, [r1] -_0812655C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08126564: .4byte gMain -_08126568: .4byte gTasks -_0812656C: .4byte sub_81265F8 - thumb_func_end sub_8126528 - - thumb_func_start sub_8126570 -sub_8126570: @ 8126570 - push {r4,r5,lr} - sub sp, 0x8 - ldr r0, _081265B8 @ =gUnknown_203B09C - ldr r5, [r0] - movs r0, 0x86 - lsls r0, 2 - adds r4, r5, r0 - bl sub_8122034 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x18] - ldrh r0, [r4, 0x18] - movs r1, 0x89 - lsls r1, 2 - adds r2, r5, r1 - movs r1, 0x2 - str r1, [sp] - movs r1, 0x3 - str r1, [sp, 0x4] - adds r1, r4, 0 - movs r3, 0x1 - bl DrawLevelUpWindowPg1 - ldrb r0, [r4, 0x18] - movs r1, 0x2 - bl CopyWindowToVram - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_081265B8: .4byte gUnknown_203B09C - thumb_func_end sub_8126570 - - thumb_func_start sub_81265BC -sub_81265BC: @ 81265BC - push {r4,lr} - sub sp, 0x4 - ldr r0, _081265F4 @ =gUnknown_203B09C - ldr r1, [r0] - movs r0, 0x86 - lsls r0, 2 - adds r4, r1, r0 - ldrh r0, [r4, 0x18] - movs r2, 0x89 - lsls r2, 2 - adds r1, r2 - movs r2, 0x3 - str r2, [sp] - movs r2, 0x1 - movs r3, 0x2 - bl DrawLevelUpWindowPg2 - ldrb r0, [r4, 0x18] - movs r1, 0x2 - bl CopyWindowToVram - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081265F4: .4byte gUnknown_203B09C - thumb_func_end sub_81265BC - - thumb_func_start sub_81265F8 -sub_81265F8: @ 81265F8 - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r0, 0 - bl WaitFanfare - lsls r0, 24 - cmp r0, 0 - beq _0812669A - ldr r0, _08126650 @ =gMain - ldrh r1, [r0, 0x2E] - movs r6, 0x1 - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - bne _08126620 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0812669A -_08126620: - bl sub_8122064 - ldr r4, _08126654 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r4, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08126658 @ =gPlayerParty - adds r0, r1 - movs r1, 0x1 - bl MonTryLearningNewMove - lsls r0, 16 - lsrs r1, r0, 16 - strh r6, [r4, 0x10] - ldr r0, _0812665C @ =0x0000fffe - cmp r1, r0 - beq _0812667C - cmp r1, r0 - bgt _08126660 - cmp r1, 0 - beq _0812666C - b _08126694 - .align 2, 0 -_08126650: .4byte gMain -_08126654: .4byte gUnknown_203B0A0 -_08126658: .4byte gPlayerParty -_0812665C: .4byte 0x0000fffe -_08126660: - ldr r0, _08126668 @ =0x0000ffff - cmp r1, r0 - beq _08126674 - b _08126694 - .align 2, 0 -_08126668: .4byte 0x0000ffff -_0812666C: - adds r0, r5, 0 - bl sub_8126704 - b _0812669A -_08126674: - adds r0, r5, 0 - bl sub_8126770 - b _0812669A -_0812667C: - ldr r0, _0812668C @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _08126690 @ =sub_81266A0 - str r0, [r1] - b _0812669A - .align 2, 0 -_0812668C: .4byte gTasks -_08126690: .4byte sub_81266A0 -_08126694: - adds r0, r5, 0 - bl sub_8126804 -_0812669A: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_81265F8 - - thumb_func_start sub_81266A0 -sub_81266A0: @ 81266A0 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _081266D0 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _081266D4 @ =gPlayerParty - adds r0, r1 - movs r1, 0 - bl MonTryLearningNewMove - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, _081266D8 @ =0x0000fffe - cmp r1, r0 - beq _081266FE - cmp r1, r0 - bgt _081266DC - cmp r1, 0 - beq _081266E8 - b _081266F8 - .align 2, 0 -_081266D0: .4byte gUnknown_203B0A0 -_081266D4: .4byte gPlayerParty -_081266D8: .4byte 0x0000fffe -_081266DC: - ldr r0, _081266E4 @ =0x0000ffff - cmp r1, r0 - beq _081266F0 - b _081266F8 - .align 2, 0 -_081266E4: .4byte 0x0000ffff -_081266E8: - adds r0, r4, 0 - bl sub_8126704 - b _081266FE -_081266F0: - adds r0, r4, 0 - bl sub_8126770 - b _081266FE -_081266F8: - adds r0, r4, 0 - bl sub_8126804 -_081266FE: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_81266A0 - - thumb_func_start sub_8126704 -sub_8126704: @ 8126704 - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r6, _08126748 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r6, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _0812674C @ =gPlayerParty - adds r7, r1, r0 - adds r0, r7, 0 - movs r1, 0 - movs r2, 0 - bl GetEvolutionTargetSpecies - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0 - beq _08126754 - bl sub_811F070 - ldr r0, _08126750 @ =gCB2_AfterEvolution - ldr r1, [r6] - str r1, [r0] - ldrb r3, [r6, 0x9] - adds r0, r7, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl BeginEvolutionScene - adds r0, r5, 0 - bl DestroyTask - b _08126762 - .align 2, 0 -_08126748: .4byte gUnknown_203B0A0 -_0812674C: .4byte gPlayerParty -_08126750: .4byte gCB2_AfterEvolution -_08126754: - ldr r0, _08126768 @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _0812676C @ =sub_81255BC - str r0, [r1] -_08126762: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08126768: .4byte gTasks -_0812676C: .4byte sub_81255BC - thumb_func_end sub_8126704 - - thumb_func_start sub_8126770 -sub_8126770: @ 8126770 - push {r4-r6,lr} - mov r6, r8 - push {r6} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r0, _081267DC @ =gUnknown_203B0A0 - mov r8, r0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _081267E0 @ =gPlayerParty - adds r0, r1 - ldr r1, _081267E4 @ =gStringVar1 - bl GetMonNickname - ldr r0, _081267E8 @ =gStringVar2 - ldr r6, _081267EC @ =gMoveToLearn - ldrh r2, [r6] - movs r1, 0xD - muls r1, r2 - ldr r2, _081267F0 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _081267F4 @ =gStringVar4 - ldr r1, _081267F8 @ =gUnknown_8416DF7 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldrh r0, [r6] - mov r1, r8 - strh r0, [r1, 0xE] - ldr r1, _081267FC @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _08126800 @ =sub_8125D88 - str r1, [r0] - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081267DC: .4byte gUnknown_203B0A0 -_081267E0: .4byte gPlayerParty -_081267E4: .4byte gStringVar1 -_081267E8: .4byte gStringVar2 -_081267EC: .4byte gMoveToLearn -_081267F0: .4byte gMoveNames -_081267F4: .4byte gStringVar4 -_081267F8: .4byte gUnknown_8416DF7 -_081267FC: .4byte gTasks -_08126800: .4byte sub_8125D88 - thumb_func_end sub_8126770 - - thumb_func_start sub_8126804 -sub_8126804: @ 8126804 - push {r4-r6,lr} - mov r6, r8 - push {r6} - adds r6, r0, 0 - adds r5, r1, 0 - lsls r6, 24 - lsrs r6, 24 - lsls r5, 16 - lsrs r5, 16 - ldr r0, _08126870 @ =gUnknown_203B0A0 - mov r8, r0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08126874 @ =gPlayerParty - adds r0, r1 - ldr r1, _08126878 @ =gStringVar1 - bl GetMonNickname - ldr r0, _0812687C @ =gStringVar2 - movs r1, 0xD - muls r1, r5 - ldr r2, _08126880 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _08126884 @ =gStringVar4 - ldr r1, _08126888 @ =gUnknown_8416DB3 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - mov r0, r8 - strh r5, [r0, 0xE] - ldr r1, _0812688C @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08126890 @ =sub_8125CF4 - str r1, [r0] - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08126870: .4byte gUnknown_203B0A0 -_08126874: .4byte gPlayerParty -_08126878: .4byte gStringVar1 -_0812687C: .4byte gStringVar2 -_08126880: .4byte gMoveNames -_08126884: .4byte gStringVar4 -_08126888: .4byte gUnknown_8416DB3 -_0812688C: .4byte gTasks -_08126890: .4byte sub_8125CF4 - thumb_func_end sub_8126804 - - thumb_func_start sub_8126894 -sub_8126894: @ 8126894 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _081268C8 @ =gUnknown_203B09C - ldr r2, [r1] - movs r3, 0x86 - lsls r3, 2 - adds r1, r2, r3 - movs r3, 0 - strh r3, [r1] - ldr r4, _081268CC @ =0x0000021a - adds r1, r2, r4 - strh r3, [r1] - ldr r1, _081268D0 @ =gUnknown_203B0A0 - ldrb r1, [r1, 0x9] - lsls r1, 24 - asrs r1, 24 - movs r3, 0x87 - lsls r3, 2 - adds r2, r3 - strh r1, [r2] - bl sub_81268D4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081268C8: .4byte gUnknown_203B09C -_081268CC: .4byte 0x0000021a -_081268D0: .4byte gUnknown_203B0A0 - thumb_func_end sub_8126894 - - thumb_func_start sub_81268D4 -sub_81268D4: @ 81268D4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 - mov r9, r4 - ldr r6, _08126930 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r6, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08126934 @ =gPlayerParty - adds r5, r1, r0 - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08126920 - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - ldrb r0, [r6, 0x9] - ldr r1, _08126938 @ =gSpecialVar_ItemId - ldrh r1, [r1] - movs r2, 0 - bl ExecuteTableBasedItemEffect__ - lsls r0, 24 - cmp r0, 0 - beq _08126944 -_08126920: - ldr r0, _0812693C @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08126940 @ =sub_8126A18 - str r0, [r1] - b _081269EE - .align 2, 0 -_08126930: .4byte gUnknown_203B0A0 -_08126934: .4byte gPlayerParty -_08126938: .4byte gSpecialVar_ItemId -_0812693C: .4byte gTasks -_08126940: .4byte sub_8126A18 -_08126944: - movs r0, 0x1 - bl PlaySE - ldr r7, _08126A00 @ =gUnknown_203B09C - ldr r0, [r7] - ldr r1, _08126A04 @ =0x0000021a - mov r10, r1 - add r0, r10 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - bne _08126960 - ldr r0, _08126A08 @ =gUnknown_203B0D0 - str r5, [r0] -_08126960: - ldr r4, _08126A0C @ =gUnknown_203B0B4 - movs r0, 0x9 - ldrsb r0, [r6, r0] - lsls r0, 4 - ldr r1, [r4] - adds r1, r0 - adds r0, r5, 0 - bl party_menu_get_status_condition_and_update_object - ldr r2, _08126A10 @ =gSprites - movs r0, 0x9 - ldrsb r0, [r6, r0] - ldr r1, [r4] - lsls r0, 4 - adds r3, r0, r1 - ldrb r1, [r3, 0xC] - 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 - bge _0812699C - adds r0, r5, 0 - adds r1, r3, 0 - movs r2, 0x1 - bl sub_8121790 -_0812699C: - ldr r0, [r7] - movs r1, 0x87 - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - movs r1, 0 - bl sub_811F818 - ldrb r0, [r6, 0x9] - movs r1, 0x1 - bl sub_811F818 - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - adds r3, r0, 0 - mov r2, r8 - subs r3, r2 - lsls r3, 16 - asrs r3, 16 - ldrb r1, [r6, 0x9] - ldr r0, _08126A14 @ =sub_8126AFC - str r0, [sp] - mov r0, r9 - movs r2, 0x1 - bl sub_8120760 - mov r0, r9 - movs r1, 0 - mov r2, r8 - bl sub_81207F0 - ldr r0, [r7] - movs r2, 0x86 - lsls r2, 2 - adds r1, r0, r2 - movs r2, 0x1 - strh r2, [r1] - add r0, r10 - strh r2, [r0] -_081269EE: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08126A00: .4byte gUnknown_203B09C -_08126A04: .4byte 0x0000021a -_08126A08: .4byte gUnknown_203B0D0 -_08126A0C: .4byte gUnknown_203B0B4 -_08126A10: .4byte gSprites -_08126A14: .4byte sub_8126AFC - thumb_func_end sub_81268D4 - - thumb_func_start sub_8126A18 -sub_8126A18: @ 8126A18 - push {r4-r6,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08126AF6 - ldr r5, _08126A80 @ =gUnknown_203B09C - ldr r2, [r5] - movs r0, 0x86 - lsls r0, 2 - adds r1, r2, r0 - movs r3, 0 - ldrsh r0, [r1, r3] - ldr r3, _08126A84 @ =gUnknown_203B0A0 - cmp r0, 0x1 - bne _08126A4E - movs r0, 0 - strh r0, [r1] - movs r1, 0x9 - ldrsb r1, [r3, r1] - movs r6, 0x87 - lsls r6, 2 - adds r0, r2, r6 - strh r1, [r0] -_08126A4E: - adds r1, r3, 0 - ldrb r0, [r1, 0x9] - adds r0, 0x1 - strb r0, [r1, 0x9] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x6 - bne _08126AF0 - ldr r0, [r5] - ldr r1, _08126A88 @ =0x0000021a - adds r0, r1 - movs r2, 0 - ldrsh r1, [r0, r2] - cmp r1, 0 - bne _08126A94 - ldr r0, _08126A8C @ =gUnknown_203B0C0 - strb r1, [r0] - ldr r0, _08126A90 @ =gUnknown_84169DC - movs r1, 0x1 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - b _08126ABE - .align 2, 0 -_08126A80: .4byte gUnknown_203B09C -_08126A84: .4byte gUnknown_203B0A0 -_08126A88: .4byte 0x0000021a -_08126A8C: .4byte gUnknown_203B0C0 -_08126A90: .4byte gUnknown_84169DC -_08126A94: - ldr r1, _08126AD4 @ =gUnknown_203B0C0 - movs r0, 0x1 - strb r0, [r1] - ldrb r1, [r3, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x1 - beq _08126AB4 - ldr r0, _08126AD8 @ =gUnknown_203B0D0 - ldr r1, [r0] - ldr r0, _08126ADC @ =gSpecialVar_ItemId - ldrh r2, [r0] - ldr r3, _08126AE0 @ =0x0000ffff - movs r0, 0x4 - bl ItemUse_SetQuestLogEvent -_08126AB4: - ldr r0, _08126ADC @ =gSpecialVar_ItemId - ldrh r0, [r0] - movs r1, 0x1 - bl RemoveBagItem -_08126ABE: - ldr r1, _08126AE4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08126AE8 @ =sub_81255BC - str r1, [r0] - ldr r1, _08126AEC @ =gUnknown_203B0A0 - movs r0, 0 - strb r0, [r1, 0x9] - b _08126AF6 - .align 2, 0 -_08126AD4: .4byte gUnknown_203B0C0 -_08126AD8: .4byte gUnknown_203B0D0 -_08126ADC: .4byte gSpecialVar_ItemId -_08126AE0: .4byte 0x0000ffff -_08126AE4: .4byte gTasks -_08126AE8: .4byte sub_81255BC -_08126AEC: .4byte gUnknown_203B0A0 -_08126AF0: - adds r0, r4, 0 - bl sub_81268D4 -_08126AF6: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8126A18 - - thumb_func_start sub_8126AFC -sub_8126AFC: @ 8126AFC - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r0, _08126B44 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08126B48 @ =gPlayerParty - adds r0, r1 - ldr r1, _08126B4C @ =gStringVar1 - bl GetMonNickname - ldr r4, _08126B50 @ =gStringVar4 - ldr r1, _08126B54 @ =gUnknown_8416F27 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08126B58 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _08126B5C @ =sub_8126A18 - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08126B44: .4byte gUnknown_203B0A0 -_08126B48: .4byte gPlayerParty -_08126B4C: .4byte gStringVar1 -_08126B50: .4byte gStringVar4 -_08126B54: .4byte gUnknown_8416F27 -_08126B58: .4byte gTasks -_08126B5C: .4byte sub_8126A18 - thumb_func_end sub_8126AFC - - thumb_func_start sub_8126B60 -sub_8126B60: @ 8126B60 - push {r4,r5,lr} - adds r5, r1, 0 - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x5 - bl PlaySE - ldr r2, _08126BB0 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r2, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08126BB4 @ =gPlayerParty - adds r0, r1 - ldr r1, _08126BB8 @ =gSpecialVar_ItemId - ldrh r1, [r1] - ldrb r2, [r2, 0x9] - movs r3, 0 - bl PokemonUseItemEffects2 - lsls r0, 24 - cmp r0, 0 - beq _08126BC8 - ldr r1, _08126BBC @ =gUnknown_203B0C0 - movs r0, 0 - strb r0, [r1] - ldr r0, _08126BC0 @ =gUnknown_84169DC - movs r1, 0x1 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08126BC4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - str r5, [r0] - b _08126BCE - .align 2, 0 -_08126BB0: .4byte gUnknown_203B0A0 -_08126BB4: .4byte gPlayerParty -_08126BB8: .4byte gSpecialVar_ItemId -_08126BBC: .4byte gUnknown_203B0C0 -_08126BC0: .4byte gUnknown_84169DC -_08126BC4: .4byte gTasks -_08126BC8: - adds r0, r4, 0 - bl sub_8124DC0 -_08126BCE: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8126B60 - - thumb_func_start sub_8126BD4 -sub_8126BD4: @ 8126BD4 - push {r4,r5,lr} - ldr r1, _08126C10 @ =gCB2_AfterEvolution - ldr r4, _08126C14 @ =gUnknown_203B0A0 - ldr r0, [r4] - str r0, [r1] - ldrb r0, [r4, 0x9] - ldr r5, _08126C18 @ =gSpecialVar_ItemId - ldrh r1, [r5] - movs r2, 0 - bl ExecuteTableBasedItemEffect__ - movs r1, 0x9 - ldrsb r1, [r4, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08126C1C @ =gPlayerParty - adds r1, r0 - ldrh r2, [r5] - ldr r3, _08126C20 @ =0x0000ffff - movs r0, 0x4 - bl ItemUse_SetQuestLogEvent - ldrh r0, [r5] - movs r1, 0x1 - bl RemoveBagItem - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08126C10: .4byte gCB2_AfterEvolution -_08126C14: .4byte gUnknown_203B0A0 -_08126C18: .4byte gSpecialVar_ItemId -_08126C1C: .4byte gPlayerParty -_08126C20: .4byte 0x0000ffff - thumb_func_end sub_8126BD4 - - thumb_func_start sub_8126C24 -sub_8126C24: @ 8126C24 - push {lr} - bl IsNationalPokedexEnabled - cmp r0, 0 - bne _08126C60 - ldr r0, _08126C54 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08126C58 @ =gPlayerParty - adds r0, r1 - ldr r1, _08126C5C @ =gSpecialVar_ItemId - ldrh r2, [r1] - movs r1, 0x2 - bl GetEvolutionTargetSpecies - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x97 - bls _08126C60 - movs r0, 0 - b _08126C62 - .align 2, 0 -_08126C54: .4byte gUnknown_203B0A0 -_08126C58: .4byte gPlayerParty -_08126C5C: .4byte gSpecialVar_ItemId -_08126C60: - movs r0, 0x1 -_08126C62: - pop {r1} - bx r1 - thumb_func_end sub_8126C24 - - thumb_func_start GetItemEffectType -GetItemEffectType: @ 8126C68 - push {r4,r5,lr} - lsls r0, 16 - lsrs r1, r0, 16 - adds r2, r1, 0 - subs r2, 0xD - lsls r0, r2, 16 - lsrs r0, 16 - cmp r0, 0xA5 - bls _08126C7C - b _08126DBC -_08126C7C: - cmp r1, 0xAF - bne _08126C94 - ldr r0, _08126C8C @ =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, _08126C90 @ =0x00003108 - adds r4, r0, r1 - b _08126C9C - .align 2, 0 -_08126C8C: .4byte gSaveBlock1Ptr -_08126C90: .4byte 0x00003108 -_08126C94: - ldr r1, _08126CC4 @ =gItemEffectTable - lsls r0, r2, 2 - adds r0, r1 - ldr r4, [r0] -_08126C9C: - ldrb r1, [r4] - movs r5, 0x3F - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _08126CBE - ldrb r0, [r4, 0x1] - cmp r0, 0 - bne _08126CBE - ldrb r0, [r4, 0x2] - cmp r0, 0 - bne _08126CBE - ldrb r3, [r4, 0x3] - movs r0, 0x80 - ands r0, r3 - cmp r0, 0 - beq _08126CC8 -_08126CBE: - movs r0, 0 - b _08126DC2 - .align 2, 0 -_08126CC4: .4byte gItemEffectTable -_08126CC8: - movs r2, 0x40 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - beq _08126CD6 - movs r0, 0xA - b _08126DC2 -_08126CD6: - adds r0, r2, 0 - ands r0, r3 - cmp r0, 0 - beq _08126CE2 - movs r0, 0x1 - b _08126DC2 -_08126CE2: - adds r2, r5, 0 - ands r2, r3 - cmp r2, 0 - bne _08126CF0 - lsrs r0, r1, 7 - cmp r0, 0 - beq _08126D32 -_08126CF0: - cmp r2, 0x20 - bne _08126CF8 - movs r0, 0x4 - b _08126DC2 -_08126CF8: - cmp r2, 0x10 - bne _08126D00 - movs r0, 0x3 - b _08126DC2 -_08126D00: - cmp r2, 0x8 - bne _08126D08 - movs r0, 0x5 - b _08126DC2 -_08126D08: - cmp r2, 0x4 - bne _08126D10 - movs r0, 0x6 - b _08126DC2 -_08126D10: - cmp r2, 0x2 - bne _08126D18 - movs r0, 0x7 - b _08126DC2 -_08126D18: - cmp r2, 0x1 - bne _08126D20 - movs r0, 0x8 - b _08126DC2 -_08126D20: - lsrs r0, r1, 7 - cmp r0, 0 - beq _08126D2E - cmp r2, 0 - bne _08126D2E - movs r0, 0x9 - b _08126DC2 -_08126D2E: - movs r0, 0xB - b _08126DC2 -_08126D32: - ldrb r1, [r4, 0x4] - movs r0, 0x44 - ands r0, r1 - adds r2, r1, 0 - cmp r0, 0 - beq _08126D42 - movs r0, 0x2 - b _08126DC2 -_08126D42: - movs r5, 0x2 - adds r0, r5, 0 - ands r0, r2 - cmp r0, 0 - beq _08126D50 - movs r0, 0xC - b _08126DC2 -_08126D50: - movs r3, 0x1 - adds r0, r3, 0 - ands r0, r2 - cmp r0, 0 - beq _08126D5E - movs r0, 0xD - b _08126DC2 -_08126D5E: - ldrb r1, [r4, 0x5] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _08126D6C - movs r0, 0xE - b _08126DC2 -_08126D6C: - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _08126D78 - movs r0, 0xF - b _08126DC2 -_08126D78: - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _08126D84 - movs r0, 0x10 - b _08126DC2 -_08126D84: - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _08126D90 - movs r0, 0x11 - b _08126DC2 -_08126D90: - movs r0, 0x80 - ands r0, r2 - cmp r0, 0 - beq _08126D9C - movs r0, 0x12 - b _08126DC2 -_08126D9C: - movs r0, 0x20 - ands r0, r2 - cmp r0, 0 - beq _08126DA8 - movs r0, 0x13 - b _08126DC2 -_08126DA8: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08126DB4 - movs r0, 0x14 - b _08126DC2 -_08126DB4: - movs r0, 0x18 - ands r0, r2 - cmp r0, 0 - bne _08126DC0 -_08126DBC: - movs r0, 0x16 - b _08126DC2 -_08126DC0: - movs r0, 0x15 -_08126DC2: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end GetItemEffectType - - thumb_func_start sub_8126DC8 -sub_8126DC8: @ 8126DC8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, _08126E4C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08126E98 - ldr r7, _08126E50 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r7, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08126E54 @ =gPlayerParty - adds r5, r1, r0 - movs r0, 0xE - adds r0, r7 - mov r8, r0 - ldr r1, _08126E58 @ =gStringVar1 - adds r0, r5, 0 - bl GetMonNickname - ldr r4, _08126E5C @ =gSpecialVar_0x8005 - ldrb r0, [r4] - bl GetMoveTutorMove - strh r0, [r7, 0xE] - ldr r0, _08126E60 @ =gStringVar2 - movs r1, 0xE - ldrsh r2, [r7, r1] - movs r1, 0xD - muls r1, r2 - ldr r2, _08126E64 @ =gMoveNames - adds r1, r2 - bl StringCopy - movs r0, 0x2 - mov r1, r8 - strh r0, [r1, 0x2] - ldrb r2, [r4] - adds r0, r5, 0 - movs r1, 0 - bl sub_8120B20 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08126E6C - cmp r0, 0x2 - beq _08126E74 - ldrh r1, [r7, 0xE] - adds r0, r5, 0 - bl GiveMoveToMon - lsls r0, 16 - ldr r1, _08126E68 @ =0xffff0000 - cmp r0, r1 - beq _08126E84 - adds r0, r6, 0 - bl sub_8125C48 - b _08126E98 - .align 2, 0 -_08126E4C: .4byte gPaletteFade -_08126E50: .4byte gUnknown_203B0A0 -_08126E54: .4byte gPlayerParty -_08126E58: .4byte gStringVar1 -_08126E5C: .4byte gSpecialVar_0x8005 -_08126E60: .4byte gStringVar2 -_08126E64: .4byte gMoveNames -_08126E68: .4byte 0xffff0000 -_08126E6C: - ldr r1, _08126E70 @ =gUnknown_8416DC2 - b _08126E76 - .align 2, 0 -_08126E70: .4byte gUnknown_8416DC2 -_08126E74: - ldr r1, _08126E80 @ =gUnknown_8416F10 -_08126E76: - adds r0, r6, 0 - bl sub_8125B14 - b _08126E98 - .align 2, 0 -_08126E80: .4byte gUnknown_8416F10 -_08126E84: - ldr r0, _08126EA4 @ =gUnknown_8416DF7 - bl sub_8125AF0 - ldr r1, _08126EA8 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08126EAC @ =sub_8125D88 - str r1, [r0] -_08126E98: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08126EA4: .4byte gUnknown_8416DF7 -_08126EA8: .4byte gTasks -_08126EAC: .4byte sub_8125D88 - thumb_func_end sub_8126DC8 - - thumb_func_start CB2_PartyMenuFromStartMenu -CB2_PartyMenuFromStartMenu: @ 8126EB0 - push {lr} - sub sp, 0xC - movs r0, 0 - str r0, [sp] - ldr r0, _08126ED4 @ =sub_811FB28 - str r0, [sp, 0x4] - ldr r0, _08126ED8 @ =CB2_ReturnToStartMenu - str r0, [sp, 0x8] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl PartyMenuInit - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_08126ED4: .4byte sub_811FB28 -_08126ED8: .4byte CB2_ReturnToStartMenu - thumb_func_end CB2_PartyMenuFromStartMenu - - thumb_func_start sub_8126EDC -sub_8126EDC: @ 8126EDC - push {lr} - sub sp, 0xC - ldr r0, _08126EF8 @ =gSpecialVar_ItemId - ldrh r0, [r0] - bl GetPocketByItemId - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - beq _08126F00 - cmp r0, 0x5 - beq _08126F08 - ldr r1, _08126EFC @ =sub_8124D90 - b _08126F0A - .align 2, 0 -_08126EF8: .4byte gSpecialVar_ItemId -_08126EFC: .4byte sub_8124D90 -_08126F00: - ldr r1, _08126F04 @ =sub_8124DA0 - b _08126F0A - .align 2, 0 -_08126F04: .4byte sub_8124DA0 -_08126F08: - ldr r1, _08126F30 @ =sub_8124DB0 -_08126F0A: - movs r0, 0x6 - str r0, [sp] - ldr r0, _08126F34 @ =sub_811FB28 - str r0, [sp, 0x4] - str r1, [sp, 0x8] - movs r0, 0 - movs r1, 0 - movs r2, 0x5 - movs r3, 0 - bl PartyMenuInit - ldr r1, _08126F38 @ =gUnknown_203B0A0 - ldr r0, _08126F3C @ =gSpecialVar_ItemId - ldrh r0, [r0] - strh r0, [r1, 0xC] - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_08126F30: .4byte sub_8124DB0 -_08126F34: .4byte sub_811FB28 -_08126F38: .4byte gUnknown_203B0A0 -_08126F3C: .4byte gSpecialVar_ItemId - thumb_func_end sub_8126EDC - - thumb_func_start sub_8126F40 -sub_8126F40: @ 8126F40 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 24 - lsrs r4, r0, 24 - adds r6, r4, 0 - ldr r5, _08126F80 @ =gUnknown_203B0D8 - ldr r0, _08126F84 @ =gUnknown_203B0A0 - mov r9, r0 - ldrb r0, [r0, 0x9] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x64 - mov r8, r1 - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - ldr r7, _08126F88 @ =gPlayerParty - adds r0, r7 - movs r1, 0xC - bl GetMonData - strh r0, [r5] - lsls r0, 16 - cmp r0, 0 - bne _08126F8C - adds r0, r4, 0 - bl sub_8126FD8 - b _08126FC4 - .align 2, 0 -_08126F80: .4byte gUnknown_203B0D8 -_08126F84: .4byte gUnknown_203B0A0 -_08126F88: .4byte gPlayerParty -_08126F8C: - ldrh r0, [r5] - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _08126FA0 - adds r0, r4, 0 - bl sub_812734C - b _08126FC4 -_08126FA0: - mov r1, r9 - movs r0, 0x9 - ldrsb r0, [r1, r0] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r7 - ldrh r1, [r5] - movs r2, 0x1 - bl sub_812050C - ldr r1, _08126FD0 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08126FD4 @ =sub_8127234 - str r1, [r0] -_08126FC4: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08126FD0: .4byte gTasks -_08126FD4: .4byte sub_8127234 - thumb_func_end sub_8126F40 - - thumb_func_start sub_8126FD8 -sub_8126FD8: @ 8126FD8 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r5, _08127004 @ =gUnknown_203B0A0 - ldrh r0, [r5, 0xC] - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _08127010 - ldrh r0, [r5, 0xC] - bl sub_8127384 - ldr r0, _08127008 @ =gUnknown_203B09C - ldr r1, [r0] - ldr r0, _0812700C @ =sub_81270E0 - str r0, [r1, 0x4] - adds r0, r4, 0 - bl sub_811FA78 - b _08127016 - .align 2, 0 -_08127004: .4byte gUnknown_203B0A0 -_08127008: .4byte gUnknown_203B09C -_0812700C: .4byte sub_81270E0 -_08127010: - adds r0, r4, 0 - bl sub_812701C -_08127016: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8126FD8 - - thumb_func_start sub_812701C -sub_812701C: @ 812701C - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, _08127084 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08127078 - ldr r4, _08127088 @ =gUnknown_203B0A0 - ldrh r5, [r4, 0xC] - movs r0, 0x9 - ldrsb r0, [r4, r0] - movs r1, 0x64 - mov r8, r1 - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - ldr r6, _0812708C @ =gPlayerParty - adds r0, r6 - adds r1, r5, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_8120420 - movs r0, 0x9 - ldrsb r0, [r4, r0] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - adds r1, r5, 0 - bl sub_81205C8 - adds r0, r5, 0 - bl sub_8127384 - ldr r1, _08127090 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, _08127094 @ =sub_8127098 - str r1, [r0] -_08127078: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08127084: .4byte gPaletteFade -_08127088: .4byte gUnknown_203B0A0 -_0812708C: .4byte gPlayerParty -_08127090: .4byte gTasks -_08127094: .4byte sub_8127098 - thumb_func_end sub_812701C - - thumb_func_start sub_8127098 -sub_8127098: @ 8127098 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _081270D4 @ =gUnknown_203B0A0 - ldrb r4, [r0, 0x9] - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081270CC - lsls r2, r4, 24 - asrs r2, 24 - movs r0, 0x64 - muls r0, r2 - ldr r1, _081270D8 @ =gPlayerParty - adds r0, r1 - ldr r1, _081270DC @ =gUnknown_203B0B4 - lsls r2, 4 - ldr r1, [r1] - adds r1, r2 - bl sub_81224B4 - adds r0, r5, 0 - bl sub_811FA78 -_081270CC: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_081270D4: .4byte gUnknown_203B0A0 -_081270D8: .4byte gPlayerParty -_081270DC: .4byte gUnknown_203B0B4 - thumb_func_end sub_8127098 - - thumb_func_start sub_81270E0 -sub_81270E0: @ 81270E0 - push {r4-r6,lr} - ldr r4, _08127128 @ =gUnknown_203B0A0 - movs r0, 0x9 - ldrsb r0, [r4, r0] - movs r6, 0x64 - muls r0, r6 - ldr r5, _0812712C @ =gPlayerParty - adds r0, r5 - ldrh r1, [r4, 0xC] - bl sub_81205C8 - movs r0, 0x9 - ldrsb r0, [r4, r0] - muls r0, r6 - adds r0, r5 - movs r1, 0x40 - bl GetMonData - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08127130 @ =gSaveBlock1Ptr - lsls r2, r0, 3 - adds r2, r0 - lsls r2, 2 - ldr r0, _08127134 @ =0x00002cd0 - adds r2, r0 - ldr r1, [r1] - adds r1, r2 - ldr r2, _08127138 @ =sub_812713C - movs r0, 0x4 - bl sub_80FEBAC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08127128: .4byte gUnknown_203B0A0 -_0812712C: .4byte gPlayerParty -_08127130: .4byte gSaveBlock1Ptr -_08127134: .4byte 0x00002cd0 -_08127138: .4byte sub_812713C - thumb_func_end sub_81270E0 - - thumb_func_start sub_812713C -sub_812713C: @ 812713C - push {r4-r7,lr} - sub sp, 0xC - ldr r6, _0812718C @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r6, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08127190 @ =gPlayerParty - adds r5, r1, r0 - adds r0, r5, 0 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r7, r0, 16 - ldr r0, _08127194 @ =gSpecialVar_Result - ldrh r0, [r0] - cmp r0, 0 - bne _0812719C - adds r0, r5, 0 - bl TakeMailFromMon - ldr r4, _08127198 @ =gUnknown_203B0D8 - adds r0, r5, 0 - movs r1, 0xC - adds r2, r4, 0 - bl SetMonData - ldrh r0, [r4] - movs r1, 0x1 - bl RemoveBagItem - adds r0, r7, 0 - bl sub_81273AC - ldr r0, [r6] - bl SetMainCallback2 - b _081271B8 - .align 2, 0 -_0812718C: .4byte gUnknown_203B0A0 -_08127190: .4byte gPlayerParty -_08127194: .4byte gSpecialVar_Result -_08127198: .4byte gUnknown_203B0D8 -_0812719C: - ldrb r0, [r6, 0x8] - lsls r0, 28 - lsrs r0, 28 - ldrb r2, [r6, 0xB] - movs r1, 0x7F - str r1, [sp] - ldr r1, _081271C0 @ =sub_81271C4 - str r1, [sp, 0x4] - ldr r1, [r6] - str r1, [sp, 0x8] - movs r1, 0xFF - movs r3, 0x1 - bl PartyMenuInit -_081271B8: - add sp, 0xC - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081271C0: .4byte sub_81271C4 - thumb_func_end sub_812713C - - thumb_func_start sub_81271C4 -sub_81271C4: @ 81271C4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _081271EC @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0812721E - ldr r1, _081271F0 @ =gUnknown_203B0D8 - ldrh r0, [r1] - cmp r0, 0 - beq _081271F8 - ldr r0, _081271F4 @ =gUnknown_203B0A0 - ldrh r0, [r0, 0xC] - ldrh r1, [r1] - movs r2, 0 - bl sub_8120558 - b _08127210 - .align 2, 0 -_081271EC: .4byte gPaletteFade -_081271F0: .4byte gUnknown_203B0D8 -_081271F4: .4byte gUnknown_203B0A0 -_081271F8: - ldr r2, _08127224 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r2, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08127228 @ =gPlayerParty - adds r0, r1 - ldrh r1, [r2, 0xC] - movs r2, 0 - movs r3, 0x1 - bl sub_8120420 -_08127210: - ldr r0, _0812722C @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08127230 @ =sub_8127098 - str r0, [r1] -_0812721E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08127224: .4byte gUnknown_203B0A0 -_08127228: .4byte gPlayerParty -_0812722C: .4byte gTasks -_08127230: .4byte sub_8127098 - thumb_func_end sub_81271C4 - - thumb_func_start sub_8127234 -sub_8127234: @ 8127234 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_8120370 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08127258 - bl sub_812200C - ldr r0, _08127260 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08127264 @ =sub_8127268 - str r0, [r1] -_08127258: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08127260: .4byte gTasks -_08127264: .4byte sub_8127268 - thumb_func_end sub_8127234 - - thumb_func_start sub_8127268 -sub_8127268: @ 8127268 - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - bl Menu_ProcessInputNoWrapClearOnChoose - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _0812728E - cmp r1, 0 - bgt _08127288 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08127328 - b _0812733C -_08127288: - cmp r1, 0x1 - beq _0812732E - b _0812733C -_0812728E: - ldr r7, _081272C0 @ =gUnknown_203B0A0 - ldrh r4, [r7, 0xC] - adds r0, r4, 0 - bl sub_8127384 - ldr r6, _081272C4 @ =gUnknown_203B0D8 - ldrh r0, [r6] - movs r1, 0x1 - bl AddBagItem - lsls r0, 24 - cmp r0, 0 - bne _081272CC - adds r0, r4, 0 - bl sub_81273AC - ldrh r0, [r6] - bl sub_8120658 - ldr r0, _081272C8 @ =gStringVar4 - movs r1, 0 - bl sub_81202F8 - b _0812730C - .align 2, 0 -_081272C0: .4byte gUnknown_203B0A0 -_081272C4: .4byte gUnknown_203B0D8 -_081272C8: .4byte gStringVar4 -_081272CC: - adds r0, r4, 0 - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _081272F0 - ldr r0, _081272E8 @ =gUnknown_203B09C - ldr r1, [r0] - ldr r0, _081272EC @ =sub_81270E0 - str r0, [r1, 0x4] - adds r0, r5, 0 - bl sub_811FA78 - b _0812733C - .align 2, 0 -_081272E8: .4byte gUnknown_203B09C -_081272EC: .4byte sub_81270E0 -_081272F0: - movs r1, 0x9 - ldrsb r1, [r7, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0812731C @ =gPlayerParty - adds r0, r1 - adds r1, r4, 0 - bl sub_81205C8 - ldrh r1, [r6] - adds r0, r4, 0 - movs r2, 0x1 - bl sub_8120558 -_0812730C: - ldr r1, _08127320 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _08127324 @ =sub_8127098 - str r1, [r0] - b _0812733C - .align 2, 0 -_0812731C: .4byte gPlayerParty -_08127320: .4byte gTasks -_08127324: .4byte sub_8127098 -_08127328: - movs r0, 0x5 - bl PlaySE -_0812732E: - ldr r0, _08127344 @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _08127348 @ =sub_8127098 - str r0, [r1] -_0812733C: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08127344: .4byte gTasks -_08127348: .4byte sub_8127098 - thumb_func_end sub_8127268 - - thumb_func_start sub_812734C -sub_812734C: @ 812734C - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _08127378 @ =gUnknown_8416BFB - movs r1, 0x1 - bl sub_81202F8 - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _0812737C @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08127380 @ =sub_8127098 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08127378: .4byte gUnknown_8416BFB -_0812737C: .4byte gTasks -_08127380: .4byte sub_8127098 - thumb_func_end sub_812734C - - thumb_func_start sub_8127384 -sub_8127384: @ 8127384 - push {lr} - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, _0812739C @ =gUnknown_203B0A0 - ldrb r0, [r0, 0xB] - cmp r0, 0x6 - bne _081273A0 - adds r0, r1, 0 - movs r1, 0x1 - bl RemoveItemFromPC - b _081273A8 - .align 2, 0 -_0812739C: .4byte gUnknown_203B0A0 -_081273A0: - adds r0, r1, 0 - movs r1, 0x1 - bl RemoveBagItem -_081273A8: - pop {r0} - bx r0 - thumb_func_end sub_8127384 - - thumb_func_start sub_81273AC -sub_81273AC: @ 81273AC - push {lr} - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, _081273C4 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0xB] - cmp r0, 0x5 - beq _081273C8 - adds r0, r1, 0 - movs r1, 0x1 - bl AddPCItem - b _081273D0 - .align 2, 0 -_081273C4: .4byte gUnknown_203B0A0 -_081273C8: - adds r0, r1, 0 - movs r1, 0x1 - bl AddBagItem -_081273D0: - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_81273AC - - thumb_func_start PartyMenuInit_FromPlayerPc -PartyMenuInit_FromPlayerPc: @ 81273D8 - push {lr} - sub sp, 0xC - movs r0, 0x6 - str r0, [sp] - ldr r0, _081273FC @ =sub_811FB28 - str r0, [sp, 0x4] - ldr r0, _08127400 @ =CB2_PlayerPC_ReturnFromPartyMenu - str r0, [sp, 0x8] - movs r0, 0 - movs r1, 0 - movs r2, 0x7 - movs r3, 0 - bl PartyMenuInit - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_081273FC: .4byte sub_811FB28 -_08127400: .4byte CB2_PlayerPC_ReturnFromPartyMenu - thumb_func_end PartyMenuInit_FromPlayerPc - - thumb_func_start sub_8127404 -sub_8127404: @ 8127404 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, _08127450 @ =gUnknown_203B0A0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08127454 @ =gPlayerParty - adds r5, r1, r0 - ldr r1, _08127458 @ =gUnknown_203B0C0 - movs r0, 0 - strb r0, [r1] - ldr r2, _0812745C @ =gSaveBlock1Ptr - ldr r0, _08127460 @ =gPlayerPcMenuManager - ldrh r1, [r0] - adds r1, 0x6 - ldrh r0, [r0, 0x2] - adds r1, r0 - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _08127464 @ =0x00002cd0 - adds r0, r1 - ldr r1, [r2] - adds r4, r1, r0 - adds r0, r5, 0 - movs r1, 0xC - bl GetMonData - cmp r0, 0 - beq _0812746C - ldr r0, _08127468 @ =gUnknown_8416D17 - movs r1, 0x1 - bl sub_81202F8 - b _08127482 - .align 2, 0 -_08127450: .4byte gUnknown_203B0A0 -_08127454: .4byte gPlayerParty -_08127458: .4byte gUnknown_203B0C0 -_0812745C: .4byte gSaveBlock1Ptr -_08127460: .4byte gPlayerPcMenuManager -_08127464: .4byte 0x00002cd0 -_08127468: .4byte gUnknown_8416D17 -_0812746C: - adds r0, r5, 0 - adds r1, r4, 0 - bl GiveMailToMon2 - adds r0, r4, 0 - bl ClearMailStruct - ldr r0, _0812749C @ =gUnknown_8416D4F - movs r1, 0x1 - bl sub_81202F8 -_08127482: - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r0, _081274A0 @ =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldr r0, _081274A4 @ =sub_8127098 - str r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0812749C: .4byte gUnknown_8416D4F -_081274A0: .4byte gTasks -_081274A4: .4byte sub_8127098 - thumb_func_end sub_8127404 - - thumb_func_start sub_81274A8 -sub_81274A8: @ 81274A8 - push {r4,lr} - sub sp, 0xC - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_81274FC - movs r0, 0 - str r0, [sp] - ldr r0, _081274EC @ =sub_811FB28 - str r0, [sp, 0x4] - ldr r0, _081274F0 @ =gMain - ldr r0, [r0, 0x8] - str r0, [sp, 0x8] - movs r0, 0x4 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl PartyMenuInit - ldr r1, _081274F4 @ =gUnknown_203B0A0 - lsls r4, 6 - ldrb r2, [r1, 0x8] - movs r0, 0x3F - ands r0, r2 - orrs r0, r4 - strb r0, [r1, 0x8] - ldr r0, _081274F8 @ =sub_812773C - str r0, [r1, 0x4] - add sp, 0xC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081274EC: .4byte sub_811FB28 -_081274F0: .4byte gMain -_081274F4: .4byte gUnknown_203B0A0 -_081274F8: .4byte sub_812773C - thumb_func_end sub_81274A8 - - thumb_func_start sub_81274FC -sub_81274FC: @ 81274FC - push {lr} - ldr r0, _0812750C @ =gSelectedOrderFromParty - movs r1, 0 - movs r2, 0x3 - bl memset - pop {r0} - bx r0 - .align 2, 0 -_0812750C: .4byte gSelectedOrderFromParty - thumb_func_end sub_81274FC - - thumb_func_start sub_8127510 -sub_8127510: @ 8127510 - push {r4,lr} - lsls r0, 24 - asrs r4, r0, 24 - movs r0, 0x64 - muls r0, r4 - ldr r1, _0812752C @ =gPlayerParty - adds r0, r1 - bl sub_8127550 - lsls r0, 24 - cmp r0, 0 - bne _08127530 - movs r0, 0x2 - b _08127548 - .align 2, 0 -_0812752C: .4byte gPlayerParty -_08127530: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r0, 24 - bl sub_8127710 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08127546 - movs r0, 0 - b _08127548 -_08127546: - movs r0, 0x1 -_08127548: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8127510 - - thumb_func_start sub_8127550 -sub_8127550: @ 8127550 - push {r4,r5,lr} - adds r4, r0, 0 - movs r5, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _0812757A - ldr r0, _08127580 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0x8] - lsrs r1, r0, 6 - cmp r1, 0 - beq _08127584 - cmp r1, 0x1 - beq _08127592 - adds r0, r4, 0 - movs r1, 0x38 - bl GetMonData - cmp r0, 0x1E - bls _081275E0 -_0812757A: - movs r0, 0 - b _081275E2 - .align 2, 0 -_08127580: .4byte gUnknown_203B0A0 -_08127584: - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - bne _081275E0 - b _0812757A -_08127592: - ldr r0, _081275E8 @ =gSaveBlock2Ptr - ldr r0, [r0] - ldr r2, _081275EC @ =0x0000055c - adds r0, r2 - ldrb r0, [r0] - ands r1, r0 - cmp r1, 0 - bne _081275AE - adds r0, r4, 0 - movs r1, 0x38 - bl GetMonData - cmp r0, 0x32 - bhi _0812757A -_081275AE: - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r4, r0, 16 - ldr r3, _081275F0 @ =gBattleTowerBannedSpecies - lsls r1, r5, 1 - adds r0, r1, r3 - ldrh r0, [r0] - ldr r2, _081275F4 @ =0x0000ffff - cmp r0, r2 - beq _081275E0 -_081275C8: - adds r0, r1, r3 - ldrh r0, [r0] - cmp r0, r4 - beq _0812757A - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - lsls r1, r5, 1 - adds r0, r1, r3 - ldrh r0, [r0] - cmp r0, r2 - bne _081275C8 -_081275E0: - movs r0, 0x1 -_081275E2: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_081275E8: .4byte gSaveBlock2Ptr -_081275EC: .4byte 0x0000055c -_081275F0: .4byte gBattleTowerBannedSpecies -_081275F4: .4byte 0x0000ffff - thumb_func_end sub_8127550 - - thumb_func_start sub_81275F8 -sub_81275F8: @ 81275F8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - ldr r0, _08127618 @ =gPlayerParty - mov r10, r0 - ldr r0, _0812761C @ =gUnknown_203B0A0 - ldrb r0, [r0, 0x8] - lsrs r0, 6 - cmp r0, 0x1 - beq _08127620 - cmp r0, 0x2 - beq _081276E8 - b _08127700 - .align 2, 0 -_08127618: .4byte gPlayerParty -_0812761C: .4byte gUnknown_203B0A0 -_08127620: - ldr r1, _0812762C @ =gSelectedOrderFromParty - ldrb r0, [r1, 0x2] - cmp r0, 0 - bne _08127630 - movs r0, 0x11 - b _08127702 - .align 2, 0 -_0812762C: .4byte gSelectedOrderFromParty -_08127630: - movs r5, 0 -_08127632: - ldr r2, _081276DC @ =gSelectedOrderFromParty - adds r4, r2, r5 - ldrb r0, [r4] - movs r1, 0x64 - muls r0, r1 - subs r0, 0x64 - add r0, r10 - movs r1, 0xB - bl GetMonData - ldr r2, _081276E0 @ =gUnknown_203B09C - ldr r1, [r2] - ldr r2, _081276E4 @ =0x00000236 - adds r1, r2 - strh r0, [r1] - ldrb r0, [r4] - movs r1, 0x64 - muls r0, r1 - subs r0, 0x64 - add r0, r10 - movs r1, 0xC - bl GetMonData - ldr r2, _081276E0 @ =gUnknown_203B09C - ldr r1, [r2] - movs r2, 0x8D - lsls r2, 2 - adds r1, r2 - strh r0, [r1] - adds r1, r5, 0x1 - lsls r0, r1, 24 - lsrs r5, r0, 24 - mov r9, r1 - cmp r5, 0x2 - bhi _081276D0 - ldr r0, _081276E0 @ =gUnknown_203B09C - mov r8, r0 - movs r7, 0x64 -_0812767E: - mov r1, r8 - ldr r0, [r1] - ldr r2, _081276E4 @ =0x00000236 - adds r0, r2 - movs r1, 0 - ldrsh r4, [r0, r1] - ldr r2, _081276DC @ =gSelectedOrderFromParty - adds r6, r2, r5 - ldrb r0, [r6] - muls r0, r7 - subs r0, 0x64 - add r0, r10 - movs r1, 0xB - bl GetMonData - cmp r4, r0 - beq _081276F8 - mov r1, r8 - ldr r0, [r1] - movs r2, 0x8D - lsls r2, 2 - adds r1, r0, r2 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _081276C6 - adds r4, r0, 0 - ldrb r0, [r6] - muls r0, r7 - subs r0, 0x64 - add r0, r10 - movs r1, 0xC - bl GetMonData - cmp r4, r0 - beq _081276FC -_081276C6: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x2 - bls _0812767E -_081276D0: - mov r1, r9 - lsls r0, r1, 24 - lsrs r5, r0, 24 - cmp r5, 0x1 - bls _08127632 - b _08127700 - .align 2, 0 -_081276DC: .4byte gSelectedOrderFromParty -_081276E0: .4byte gUnknown_203B09C -_081276E4: .4byte 0x00000236 -_081276E8: - ldr r2, _081276F4 @ =gSelectedOrderFromParty - ldrb r0, [r2, 0x1] - cmp r0, 0 - bne _08127700 - movs r0, 0x12 - b _08127702 - .align 2, 0 -_081276F4: .4byte gSelectedOrderFromParty -_081276F8: - movs r0, 0x13 - b _08127702 -_081276FC: - movs r0, 0x14 - b _08127702 -_08127700: - movs r0, 0xFF -_08127702: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_81275F8 - - thumb_func_start sub_8127710 -sub_8127710: @ 8127710 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - movs r1, 0 - ldr r3, _08127728 @ =gSelectedOrderFromParty -_0812771A: - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, r2 - bne _0812772C - movs r0, 0x1 - b _08127738 - .align 2, 0 -_08127728: .4byte gSelectedOrderFromParty -_0812772C: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x2 - bls _0812771A - movs r0, 0 -_08127738: - pop {r1} - bx r1 - thumb_func_end sub_8127710 - - thumb_func_start sub_812773C -sub_812773C: @ 812773C - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - bl sub_81275F8 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xFF - beq _08127768 - movs r0, 0x1A - bl PlaySE - adds r0, r4, 0 - bl sub_8121D0C - ldr r0, _08127764 @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - b _08127796 - .align 2, 0 -_08127764: .4byte gTasks -_08127768: - ldr r0, _08127780 @ =gSelectedOrderFromParty - ldrb r0, [r0] - cmp r0, 0 - beq _08127784 - movs r0, 0x5 - bl PlaySE - adds r0, r5, 0 - bl sub_811FA78 - b _0812779E - .align 2, 0 -_08127780: .4byte gSelectedOrderFromParty -_08127784: - movs r0, 0x1A - bl PlaySE - movs r0, 0xE - bl sub_8121D0C - ldr r0, _081277A4 @ =gTasks - lsls r1, r6, 2 - adds r1, r6 -_08127796: - lsls r1, 3 - adds r1, r0 - ldr r0, _081277A8 @ =sub_81277AC - str r0, [r1] -_0812779E: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081277A4: .4byte gTasks -_081277A8: .4byte sub_81277AC - thumb_func_end sub_812773C - - thumb_func_start sub_81277AC -sub_81277AC: @ 81277AC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _081277E8 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _081277C6 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _081277E0 -_081277C6: - movs r0, 0x5 - bl PlaySE - movs r0, 0 - bl sub_8121D0C - ldr r0, _081277EC @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _081277F0 @ =sub_811FB28 - str r0, [r1] -_081277E0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081277E8: .4byte gMain -_081277EC: .4byte gTasks -_081277F0: .4byte sub_811FB28 - thumb_func_end sub_81277AC - - thumb_func_start sub_81277F4 -sub_81277F4: @ 81277F4 - push {lr} - sub sp, 0xC - lsls r0, 24 - lsrs r0, 24 - movs r2, 0 - str r2, [sp] - ldr r2, _08127818 @ =sub_811FB28 - str r2, [sp, 0x4] - str r1, [sp, 0x8] - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl PartyMenuInit - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_08127818: .4byte sub_811FB28 - thumb_func_end sub_81277F4 - - thumb_func_start sub_812781C -sub_812781C: @ 812781C - push {lr} - sub sp, 0xC - ldr r0, _08127844 @ =gSpecialVar_0x8005 - ldrh r0, [r0] - cmp r0, 0xE - bhi _08127850 - movs r0, 0x4 - str r0, [sp] - ldr r0, _08127848 @ =sub_811FB28 - str r0, [sp, 0x4] - ldr r0, _0812784C @ =CB2_ReturnToFieldContinueScriptPlayMapMusic - str r0, [sp, 0x8] - movs r0, 0 - movs r1, 0 - movs r2, 0xC - movs r3, 0 - bl PartyMenuInit - b _08127870 - .align 2, 0 -_08127844: .4byte gSpecialVar_0x8005 -_08127848: .4byte sub_811FB28 -_0812784C: .4byte CB2_ReturnToFieldContinueScriptPlayMapMusic -_08127850: - movs r0, 0x7F - str r0, [sp] - ldr r0, _08127878 @ =sub_8126DC8 - str r0, [sp, 0x4] - ldr r0, _0812787C @ =CB2_ReturnToFieldContinueScriptPlayMapMusic - str r0, [sp, 0x8] - movs r0, 0 - movs r1, 0 - movs r2, 0xC - movs r3, 0 - bl PartyMenuInit - ldr r1, _08127880 @ =gUnknown_203B0A0 - ldr r0, _08127884 @ =gSpecialVar_0x8007 - ldrh r0, [r0] - strb r0, [r1, 0x9] -_08127870: - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_08127878: .4byte sub_8126DC8 -_0812787C: .4byte CB2_ReturnToFieldContinueScriptPlayMapMusic -_08127880: .4byte gUnknown_203B0A0 -_08127884: .4byte gSpecialVar_0x8007 - thumb_func_end sub_812781C - - thumb_func_start sub_8127888 -sub_8127888: @ 8127888 - push {lr} - sub sp, 0xC - movs r0, 0x1 - str r0, [sp] - ldr r0, _081278AC @ =sub_811FB28 - str r0, [sp, 0x4] - ldr r0, _081278B0 @ =CB2_ReturnToFieldContinueScriptPlayMapMusic - str r0, [sp, 0x8] - movs r0, 0xB - movs r1, 0 - movs r2, 0xD - movs r3, 0 - bl PartyMenuInit - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_081278AC: .4byte sub_811FB28 -_081278B0: .4byte CB2_ReturnToFieldContinueScriptPlayMapMusic - thumb_func_end sub_8127888 - - thumb_func_start sub_81278B4 -sub_81278B4: @ 81278B4 - push {lr} - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - bne _081278C4 - movs r0, 0 - b _081278D6 -_081278C4: - bl IsMultiBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081278D4 - movs r0, 0x1 - b _081278D6 -_081278D4: - movs r0, 0x2 -_081278D6: - pop {r1} - bx r1 - thumb_func_end sub_81278B4 - - thumb_func_start OpenPartyMenuInBattle -OpenPartyMenuInBattle: @ 81278DC - push {r4,lr} - sub sp, 0xC - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x8 - bl sub_80EB2E0 - lsls r0, 24 - cmp r0, 0 - bne _08127930 - ldr r0, _08127924 @ =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08127930 - bl sub_81278B4 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0x7F - str r0, [sp] - ldr r0, _08127928 @ =sub_8120C3C - str r0, [sp, 0x4] - ldr r0, _0812792C @ =SetCB2ToReshowScreenAfterMenu - str r0, [sp, 0x8] - movs r0, 0x1 - adds r2, r4, 0 - movs r3, 0 - bl PartyMenuInit - movs r0, 0x8 - bl sub_80EB2F4 - b _08127950 - .align 2, 0 -_08127924: .4byte gBattleTypeFlags -_08127928: .4byte sub_8120C3C -_0812792C: .4byte SetCB2ToReshowScreenAfterMenu -_08127930: - bl sub_81278B4 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0 - str r0, [sp] - ldr r0, _08127960 @ =sub_811FB28 - str r0, [sp, 0x4] - ldr r0, _08127964 @ =SetCB2ToReshowScreenAfterMenu - str r0, [sp, 0x8] - movs r0, 0x1 - adds r2, r4, 0 - movs r3, 0 - bl PartyMenuInit -_08127950: - bl nullsub_44 - bl pokemon_change_order - add sp, 0xC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08127960: .4byte sub_811FB28 -_08127964: .4byte SetCB2ToReshowScreenAfterMenu - thumb_func_end OpenPartyMenuInBattle - - thumb_func_start sub_8127968 -sub_8127968: @ 8127968 - push {lr} - sub sp, 0xC - bl sub_81278B4 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0 - str r0, [sp] - ldr r0, _0812799C @ =sub_8120EBC - str r0, [sp, 0x4] - ldr r0, _081279A0 @ =SetCB2ToReshowScreenAfterMenu - str r0, [sp, 0x8] - movs r0, 0x1 - movs r2, 0 - movs r3, 0 - bl PartyMenuInit - bl nullsub_44 - bl pokemon_change_order - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_0812799C: .4byte sub_8120EBC -_081279A0: .4byte SetCB2ToReshowScreenAfterMenu - thumb_func_end sub_8127968 - - thumb_func_start sub_81279A4 -sub_81279A4: @ 81279A4 - push {lr} - sub sp, 0xC - bl sub_81278B4 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0x5 - str r0, [sp] - ldr r0, _081279D8 @ =sub_8120FCC - str r0, [sp, 0x4] - ldr r0, _081279DC @ =sub_8107ECC - str r0, [sp, 0x8] - movs r0, 0x1 - movs r2, 0xE - movs r3, 0 - bl PartyMenuInit - bl nullsub_44 - bl pokemon_change_order - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_081279D8: .4byte sub_8120FCC -_081279DC: .4byte sub_8107ECC - thumb_func_end sub_81279A4 - - thumb_func_start sub_81279E0 -sub_81279E0: @ 81279E0 - push {r4,lr} - sub sp, 0xC - movs r0, 0x8 - bl sub_80EB2E0 - lsls r0, 24 - cmp r0, 0 - bne _08127A30 - ldr r0, _08127A24 @ =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08127A30 - bl sub_81278B4 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0x7F - str r0, [sp] - ldr r0, _08127A28 @ =sub_8120C3C - str r0, [sp, 0x4] - ldr r0, _08127A2C @ =sub_8107ECC - str r0, [sp, 0x8] - movs r0, 0x1 - movs r2, 0x3 - movs r3, 0 - bl PartyMenuInit - movs r0, 0x8 - bl sub_80EB2F4 - b _08127A62 - .align 2, 0 -_08127A24: .4byte gBattleTypeFlags -_08127A28: .4byte sub_8120C3C -_08127A2C: .4byte sub_8107ECC -_08127A30: - ldr r0, _08127A74 @ =gSpecialVar_ItemId - ldrh r0, [r0] - bl GetPocketByItemId - lsls r0, 24 - lsrs r0, 24 - ldr r4, _08127A78 @ =sub_8107ECC - cmp r0, 0x5 - bne _08127A44 - ldr r4, _08127A7C @ =sub_8124DB0 -_08127A44: - bl sub_81278B4 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0x5 - str r0, [sp] - ldr r0, _08127A80 @ =sub_811FB28 - str r0, [sp, 0x4] - str r4, [sp, 0x8] - movs r0, 0x1 - movs r2, 0x3 - movs r3, 0 - bl PartyMenuInit -_08127A62: - bl nullsub_44 - bl pokemon_change_order - add sp, 0xC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08127A74: .4byte gSpecialVar_ItemId -_08127A78: .4byte sub_8107ECC -_08127A7C: .4byte sub_8124DB0 -_08127A80: .4byte sub_811FB28 - thumb_func_end sub_81279E0 - - thumb_func_start sub_8127A84 -sub_8127A84: @ 8127A84 - push {r4,lr} - adds r4, r0, 0 - ldr r0, _08127AA4 @ =gPlayerParty + 100 @ &gPlayerParty[1] - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08127AA0 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - beq _08127AA8 -_08127AA0: - movs r0, 0x7 - b _08127ABA - .align 2, 0 -_08127AA4: .4byte gPlayerParty + 100 @ &gPlayerParty[1] -_08127AA8: - ldr r0, _08127AB4 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0xB] - cmp r0, 0x1 - beq _08127AB8 - movs r0, 0x2 - b _08127ABA - .align 2, 0 -_08127AB4: .4byte gUnknown_203B0A0 -_08127AB8: - movs r0, 0x3 -_08127ABA: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8127A84 - - thumb_func_start sub_8127AC0 -sub_8127AC0: @ 8127AC0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - bl GetCursorSelectionMonId - lsls r0, 24 - lsrs r5, r0, 24 - bl IsMultiBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08127B08 - cmp r5, 0x1 - beq _08127AE6 - cmp r5, 0x4 - beq _08127AE6 - cmp r5, 0x5 - bne _08127B08 -_08127AE6: - ldr r4, _08127AFC @ =gStringVar1 - bl GetTrainerPartnerName - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldr r0, _08127B00 @ =gStringVar4 - ldr r1, _08127B04 @ =gUnknown_8416A98 - b _08127C86 - .align 2, 0 -_08127AFC: .4byte gStringVar1 -_08127B00: .4byte gStringVar4 -_08127B04: .4byte gUnknown_8416A98 -_08127B08: - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, _08127B2C @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - bne _08127B3C - ldr r1, _08127B30 @ =gStringVar1 - adds r0, r4, 0 - bl GetMonNickname - ldr r0, _08127B34 @ =gStringVar4 - ldr r1, _08127B38 @ =gUnknown_8416A75 - b _08127C86 - .align 2, 0 -_08127B2C: .4byte gPlayerParty -_08127B30: .4byte gStringVar1 -_08127B34: .4byte gStringVar4 -_08127B38: .4byte gUnknown_8416A75 -_08127B3C: - movs r4, 0 - b _08127B68 -_08127B40: - adds r0, r4, 0 - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _08127B62 - adds r0, r5, 0 - bl sub_8127F7C - lsls r0, 24 - ldr r2, _08127B90 @ =gBattlerPartyIndexes - lsls r1, r4, 1 - adds r1, r2 - lsrs r0, 24 - ldrh r1, [r1] - cmp r0, r1 - beq _08127C40 -_08127B62: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 -_08127B68: - ldr r0, _08127B94 @ =gBattlersCount - ldrb r0, [r0] - cmp r4, r0 - bcc _08127B40 - movs r7, 0x64 - adds r0, r5, 0 - muls r0, r7 - ldr r1, _08127B98 @ =gPlayerParty - mov r8, r1 - adds r6, r0, r1 - adds r0, r6, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - beq _08127BA4 - ldr r0, _08127B9C @ =gStringVar4 - ldr r1, _08127BA0 @ =gUnknown_8416ACB - b _08127C86 - .align 2, 0 -_08127B90: .4byte gBattlerPartyIndexes -_08127B94: .4byte gBattlersCount -_08127B98: .4byte gPlayerParty -_08127B9C: .4byte gStringVar4 -_08127BA0: .4byte gUnknown_8416ACB -_08127BA4: - adds r0, r5, 0 - bl sub_8127F7C - ldr r1, _08127BC8 @ =gBattleStruct - ldr r1, [r1] - adds r1, 0x8B - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bne _08127BD8 - ldr r1, _08127BCC @ =gStringVar1 - adds r0, r6, 0 - bl GetMonNickname - ldr r0, _08127BD0 @ =gStringVar4 - ldr r1, _08127BD4 @ =gUnknown_8416A55 - b _08127C86 - .align 2, 0 -_08127BC8: .4byte gBattleStruct -_08127BCC: .4byte gStringVar1 -_08127BD0: .4byte gStringVar4 -_08127BD4: .4byte gUnknown_8416A55 -_08127BD8: - ldr r0, _08127BE8 @ =gUnknown_203B0A0 - ldrb r0, [r0, 0xB] - cmp r0, 0x4 - bne _08127BEC - bl SetMonPreventsSwitchingString - b _08127C8A - .align 2, 0 -_08127BE8: .4byte gUnknown_203B0A0 -_08127BEC: - cmp r0, 0x2 - beq _08127C64 - adds r0, r5, 0 - bl sub_8127F7C - ldr r1, _08127C30 @ =gUnknown_203B0C1 - strb r0, [r1] - ldr r1, _08127C34 @ =gUnknown_203B0C0 - movs r0, 0x1 - strb r0, [r1] - ldr r1, _08127C38 @ =gBattlerPartyIndexes - ldr r0, _08127C3C @ =gBattlerInMenuId - ldrb r0, [r0] - lsls r0, 1 - adds r0, r1 - ldrb r0, [r0] - bl pokemon_order_func - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8127FF4 - adds r0, r4, 0 - muls r0, r7 - add r0, r8 - adds r1, r6, 0 - bl sub_811FA40 - movs r0, 0x1 - b _08127C8C - .align 2, 0 -_08127C30: .4byte gUnknown_203B0C1 -_08127C34: .4byte gUnknown_203B0C0 -_08127C38: .4byte gBattlerPartyIndexes -_08127C3C: .4byte gBattlerInMenuId -_08127C40: - movs r0, 0x64 - muls r0, r5 - ldr r1, _08127C54 @ =gPlayerParty - adds r0, r1 - ldr r1, _08127C58 @ =gStringVar1 - bl GetMonNickname - ldr r0, _08127C5C @ =gStringVar4 - ldr r1, _08127C60 @ =gUnknown_8416A3A - b _08127C86 - .align 2, 0 -_08127C54: .4byte gPlayerParty -_08127C58: .4byte gStringVar1 -_08127C5C: .4byte gStringVar4 -_08127C60: .4byte gUnknown_8416A3A -_08127C64: - ldr r0, _08127C98 @ =gBattlerInMenuId - ldrb r0, [r0] - ldr r1, _08127C9C @ =gBattlerPartyIndexes - lsls r0, 1 - adds r0, r1 - ldrb r0, [r0] - bl pokemon_order_func - lsls r0, 24 - lsrs r0, 24 - muls r0, r7 - add r0, r8 - ldr r1, _08127CA0 @ =gStringVar1 - bl GetMonNickname - ldr r0, _08127CA4 @ =gStringVar4 - ldr r1, _08127CA8 @ =gUnknown_8416A1E -_08127C86: - bl StringExpandPlaceholders -_08127C8A: - movs r0, 0 -_08127C8C: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08127C98: .4byte gBattlerInMenuId -_08127C9C: .4byte gBattlerPartyIndexes -_08127CA0: .4byte gStringVar1 -_08127CA4: .4byte gStringVar4 -_08127CA8: .4byte gUnknown_8416A1E - thumb_func_end sub_8127AC0 - - thumb_func_start sub_8127CAC -sub_8127CAC: @ 8127CAC - push {r4,lr} - ldr r4, _08127CC8 @ =gUnknown_203B0DC - bl sub_80435E0 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_8127CCC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08127CC8: .4byte gUnknown_203B0DC - thumb_func_end sub_8127CAC - - thumb_func_start sub_8127CCC -sub_8127CCC: @ 8127CCC - push {r4-r6,lr} - sub sp, 0x8 - adds r6, r0, 0 - lsls r1, 24 - lsrs r4, r1, 24 - bl IsMultiBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08127D02 - cmp r4, 0 - beq _08127CF4 - movs r0, 0x30 - strb r0, [r6] - movs r0, 0x45 - strb r0, [r6, 0x1] - movs r0, 0x12 - strb r0, [r6, 0x2] - b _08127D9C -_08127CF4: - movs r0, 0x3 - strb r0, [r6] - movs r0, 0x12 - strb r0, [r6, 0x1] - movs r0, 0x45 - strb r0, [r6, 0x2] - b _08127D9C -_08127D02: - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - bne _08127D40 - movs r5, 0x1 - movs r0, 0 - bl GetBattlerAtPosition - mov r2, sp - ldr r1, _08127D3C @ =gBattlerPartyIndexes - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r0, [r0] - strb r0, [r2] - movs r4, 0 - mov r1, sp -_08127D26: - ldrb r0, [r1] - cmp r4, r0 - beq _08127D34 - mov r2, sp - adds r0, r2, r5 - strb r4, [r0] - adds r5, 0x1 -_08127D34: - adds r4, 0x1 - cmp r4, 0x5 - ble _08127D26 - b _08127D84 - .align 2, 0 -_08127D3C: .4byte gBattlerPartyIndexes -_08127D40: - movs r5, 0x2 - movs r0, 0 - bl GetBattlerAtPosition - mov r1, sp - ldr r4, _08127DA4 @ =gBattlerPartyIndexes - lsls r0, 24 - lsrs r0, 23 - adds r0, r4 - ldrh r0, [r0] - strb r0, [r1] - movs r0, 0x2 - bl GetBattlerAtPosition - mov r1, sp - lsls r0, 24 - lsrs r0, 23 - adds r0, r4 - ldrh r0, [r0] - strb r0, [r1, 0x1] - movs r4, 0 -_08127D6A: - ldrb r0, [r1] - cmp r4, r0 - beq _08127D7E - ldrb r0, [r1, 0x1] - cmp r4, r0 - beq _08127D7E - mov r2, sp - adds r0, r2, r5 - strb r4, [r0] - adds r5, 0x1 -_08127D7E: - adds r4, 0x1 - cmp r4, 0x5 - ble _08127D6A -_08127D84: - movs r4, 0 - mov r3, sp -_08127D88: - adds r0, r6, r4 - ldrb r1, [r3] - lsls r1, 4 - ldrb r2, [r3, 0x1] - orrs r1, r2 - strb r1, [r0] - adds r3, 0x2 - adds r4, 0x1 - cmp r4, 0x2 - ble _08127D88 -_08127D9C: - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08127DA4: .4byte gBattlerPartyIndexes - thumb_func_end sub_8127CCC - - thumb_func_start sub_8127DA8 -sub_8127DA8: @ 8127DA8 - push {lr} - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - lsls r1, 24 - lsrs r1, 24 - ldr r0, _08127DC8 @ =gBattleStruct - lsls r3, r2, 1 - adds r3, r2 - adds r3, 0x60 - ldr r0, [r0] - adds r0, r3 - bl sub_8127DCC - pop {r0} - bx r0 - .align 2, 0 -_08127DC8: .4byte gBattleStruct - thumb_func_end sub_8127DA8 - - thumb_func_start sub_8127DCC -sub_8127DCC: @ 8127DCC - push {r4-r7,lr} - sub sp, 0x8 - adds r5, r0, 0 - adds r0, r2, 0 - lsls r1, 24 - lsrs r7, r1, 24 - lsls r0, 24 - lsrs r0, 24 - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _08127DF4 - movs r0, 0 - bl GetBattlerAtPosition - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x2 - b _08127E00 -_08127DF4: - movs r0, 0x1 - bl GetBattlerAtPosition - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x3 -_08127E00: - bl GetBattlerAtPosition - lsls r0, 24 - lsrs r6, r0, 24 - bl IsMultiBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08127E34 - cmp r7, 0 - beq _08127E26 - movs r0, 0x30 - strb r0, [r5] - movs r0, 0x45 - strb r0, [r5, 0x1] - movs r0, 0x12 - strb r0, [r5, 0x2] - b _08127EB6 -_08127E26: - movs r0, 0x3 - strb r0, [r5] - movs r0, 0x12 - strb r0, [r5, 0x1] - movs r0, 0x45 - strb r0, [r5, 0x2] - b _08127EB6 -_08127E34: - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - bne _08127E6C - movs r3, 0x1 - mov r2, sp - ldr r1, _08127E68 @ =gBattlerPartyIndexes - lsls r0, r4, 1 - adds r0, r1 - ldrh r0, [r0] - strb r0, [r2] - movs r4, 0 - mov r1, sp -_08127E50: - ldrb r0, [r1] - cmp r4, r0 - beq _08127E5E - mov r2, sp - adds r0, r2, r3 - strb r4, [r0] - adds r3, 0x1 -_08127E5E: - adds r4, 0x1 - cmp r4, 0x5 - ble _08127E50 - b _08127E9E - .align 2, 0 -_08127E68: .4byte gBattlerPartyIndexes -_08127E6C: - movs r3, 0x2 - mov r1, sp - ldr r2, _08127EC0 @ =gBattlerPartyIndexes - lsls r0, r4, 1 - adds r0, r2 - ldrh r0, [r0] - strb r0, [r1] - lsls r0, r6, 1 - adds r0, r2 - ldrh r0, [r0] - strb r0, [r1, 0x1] - movs r4, 0 -_08127E84: - ldrb r0, [r1] - cmp r4, r0 - beq _08127E98 - ldrb r0, [r1, 0x1] - cmp r4, r0 - beq _08127E98 - mov r2, sp - adds r0, r2, r3 - strb r4, [r0] - adds r3, 0x1 -_08127E98: - adds r4, 0x1 - cmp r4, 0x5 - ble _08127E84 -_08127E9E: - movs r4, 0 - mov r3, sp -_08127EA2: - adds r0, r5, r4 - ldrb r1, [r3] - lsls r1, 4 - ldrb r2, [r3, 0x1] - orrs r1, r2 - strb r1, [r0] - adds r3, 0x2 - adds r4, 0x1 - cmp r4, 0x2 - ble _08127EA2 -_08127EB6: - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08127EC0: .4byte gBattlerPartyIndexes - thumb_func_end sub_8127DCC - - thumb_func_start sub_8127EC4 -sub_8127EC4: @ 8127EC4 - push {r4-r7,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - lsls r2, 24 - lsrs r6, r2, 24 - movs r7, 0 - bl IsMultiBattle - lsls r0, 24 - cmp r0, 0 - beq _08127F72 - ldr r0, _08127F28 @ =gBattleStruct - lsls r1, r4, 1 - adds r1, r4 - adds r1, 0x60 - ldr r0, [r0] - adds r4, r0, r1 - movs r2, 0 - add r6, sp - mov r12, r6 - movs r6, 0xF - mov r3, sp -_08127EF6: - adds r1, r4, r2 - ldrb r0, [r1] - lsrs r0, 4 - strb r0, [r3] - adds r3, 0x1 - ldrb r1, [r1] - adds r0, r6, 0 - ands r0, r1 - strb r0, [r3] - adds r3, 0x1 - adds r2, 0x1 - cmp r2, 0x2 - ble _08127EF6 - mov r0, r12 - ldrb r3, [r0] - movs r2, 0 - mov r0, sp - ldrb r0, [r0] - cmp r0, r5 - bne _08127F2C - mov r0, sp - ldrb r7, [r0] - strb r3, [r0] - b _08127F40 - .align 2, 0 -_08127F28: .4byte gBattleStruct -_08127F2C: - adds r2, 0x1 - cmp r2, 0x5 - bgt _08127F40 - mov r0, sp - adds r1, r0, r2 - ldrb r0, [r1] - cmp r0, r5 - bne _08127F2C - adds r7, r0, 0 - strb r3, [r1] -_08127F40: - cmp r2, 0x6 - beq _08127F72 - mov r0, r12 - strb r7, [r0] - mov r0, sp - ldrb r0, [r0] - lsls r0, 4 - mov r1, sp - ldrb r1, [r1, 0x1] - orrs r0, r1 - strb r0, [r4] - mov r0, sp - ldrb r0, [r0, 0x2] - lsls r0, 4 - mov r1, sp - ldrb r1, [r1, 0x3] - orrs r0, r1 - strb r0, [r4, 0x1] - mov r0, sp - ldrb r0, [r0, 0x4] - lsls r0, 4 - mov r1, sp - ldrb r1, [r1, 0x5] - orrs r0, r1 - strb r0, [r4, 0x2] -_08127F72: - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8127EC4 - - thumb_func_start sub_8127F7C -sub_8127F7C: @ 8127F7C - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - movs r1, 0x1 - ands r1, r2 - lsrs r2, r0, 25 - cmp r1, 0 - beq _08127F9C - ldr r0, _08127F98 @ =gUnknown_203B0DC - adds r0, r2, r0 - ldrb r0, [r0] - movs r1, 0xF - ands r1, r0 - b _08127FA4 - .align 2, 0 -_08127F98: .4byte gUnknown_203B0DC -_08127F9C: - ldr r0, _08127FAC @ =gUnknown_203B0DC - adds r0, r2, r0 - ldrb r0, [r0] - lsrs r1, r0, 4 -_08127FA4: - adds r0, r1, 0 - pop {r1} - bx r1 - .align 2, 0 -_08127FAC: .4byte gUnknown_203B0DC - thumb_func_end sub_8127F7C - - thumb_func_start sub_8127FB0 -sub_8127FB0: @ 8127FB0 - push {r4,lr} - lsls r0, 24 - lsrs r3, r0, 24 - lsls r1, 24 - lsrs r4, r1, 24 - movs r1, 0x1 - ands r1, r3 - lsrs r3, r0, 25 - cmp r1, 0 - beq _08127FD8 - ldr r0, _08127FD4 @ =gUnknown_203B0DC - adds r0, r3, r0 - ldrb r2, [r0] - movs r1, 0xF0 - ands r1, r2 - orrs r1, r4 - strb r1, [r0] - b _08127FE8 - .align 2, 0 -_08127FD4: .4byte gUnknown_203B0DC -_08127FD8: - ldr r2, _08127FF0 @ =gUnknown_203B0DC - adds r2, r3, r2 - ldrb r1, [r2] - movs r0, 0xF - ands r0, r1 - lsls r1, r4, 4 - orrs r0, r1 - strb r0, [r2] -_08127FE8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08127FF0: .4byte gUnknown_203B0DC - thumb_func_end sub_8127FB0 - - thumb_func_start sub_8127FF4 -sub_8127FF4: @ 8127FF4 - push {r4-r6,lr} - adds r5, r0, 0 - adds r6, r1, 0 - lsls r5, 24 - lsrs r5, 24 - lsls r6, 24 - lsrs r6, 24 - adds r0, r5, 0 - bl sub_8127F7C - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - bl sub_8127F7C - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl sub_8127FB0 - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_8127FB0 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8127FF4 - - thumb_func_start pokemon_order_func -pokemon_order_func: @ 8128030 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r3, 0 - movs r2, 0 - ldr r5, _08128058 @ =gUnknown_203B0DC -_0812803C: - adds r0, r3, r5 - ldrb r1, [r0] - lsrs r0, r1, 4 - cmp r0, r4 - beq _08128054 - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - movs r0, 0xF - ands r0, r1 - cmp r0, r4 - bne _0812805C -_08128054: - adds r0, r2, 0 - b _0812806E - .align 2, 0 -_08128058: .4byte gUnknown_203B0DC -_0812805C: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x2 - bls _0812803C - movs r0, 0 -_0812806E: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end pokemon_order_func - - thumb_func_start pokemon_change_order -pokemon_change_order: @ 8128074 - push {r4-r6,lr} - movs r4, 0x96 - lsls r4, 2 - adds r0, r4, 0 - bl Alloc - adds r5, r0, 0 - ldr r1, _081280C0 @ =gPlayerParty - adds r2, r4, 0 - bl memcpy - movs r4, 0 - movs r6, 0x64 -_0812808E: - adds r0, r4, 0 - bl pokemon_order_func - lsls r0, 24 - lsrs r0, 24 - muls r0, r6 - ldr r1, _081280C0 @ =gPlayerParty - adds r0, r1 - adds r1, r4, 0 - muls r1, r6 - adds r1, r5 - movs r2, 0x64 - bl memcpy - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x5 - bls _0812808E - adds r0, r5, 0 - bl Free - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081280C0: .4byte gPlayerParty - thumb_func_end pokemon_change_order - - thumb_func_start sub_81280C4 -sub_81280C4: @ 81280C4 - push {r4-r6,lr} - movs r4, 0x96 - lsls r4, 2 - adds r0, r4, 0 - bl Alloc - adds r5, r0, 0 - ldr r1, _08128110 @ =gPlayerParty - adds r2, r4, 0 - bl memcpy - movs r4, 0 - movs r6, 0x64 -_081280DE: - adds r0, r4, 0 - bl sub_8127F7C - lsls r0, 24 - lsrs r0, 24 - muls r0, r6 - ldr r1, _08128110 @ =gPlayerParty - adds r0, r1 - adds r1, r4, 0 - muls r1, r6 - adds r1, r5 - movs r2, 0x64 - bl memcpy - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x5 - bls _081280DE - adds r0, r5, 0 - bl Free - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08128110: .4byte gPlayerParty - thumb_func_end sub_81280C4 - - thumb_func_start sub_8128114 -sub_8128114: @ 8128114 - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r6, 0x1 - movs r7, 0x64 - ldr r0, _0812816C @ =gPlayerParty - mov r8, r0 -_08128122: - adds r0, r6, 0 - bl sub_8127F7C - lsls r0, 24 - lsrs r0, 24 - muls r0, r7 - mov r1, r8 - adds r5, r0, r1 - adds r0, r5, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08128170 - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _08128170 - movs r0, 0 - bl sub_8127F7C - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - adds r1, r6, 0 - bl sub_8127FF4 - adds r0, r4, 0 - muls r0, r7 - add r0, r8 - adds r1, r5, 0 - bl sub_811FA40 - b _0812817A - .align 2, 0 -_0812816C: .4byte gPlayerParty -_08128170: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x5 - bls _08128122 -_0812817A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8128114 - - thumb_func_start sub_8128184 -sub_8128184: @ 8128184 - push {lr} - bl sub_8108CF0 - ldr r0, _08128194 @ =SetCB2ToReshowScreenAfterMenu - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_08128194: .4byte SetCB2ToReshowScreenAfterMenu - thumb_func_end sub_8128184 - - thumb_func_start sub_8128198 -sub_8128198: @ 8128198 - push {lr} - sub sp, 0xC - movs r0, 0x7F - str r0, [sp] - ldr r0, _081281BC @ =sub_81281C4 - str r0, [sp, 0x4] - ldr r0, _081281C0 @ =gMain - ldr r0, [r0, 0x8] - str r0, [sp, 0x8] - movs r0, 0x5 - movs r1, 0x3 - movs r2, 0 - movs r3, 0 - bl PartyMenuInit - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_081281BC: .4byte sub_81281C4 -_081281C0: .4byte gMain - thumb_func_end sub_8128198 - - thumb_func_start sub_81281C4 -sub_81281C4: @ 81281C4 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _081281F4 @ =gTasks - lsls r4, r0, 2 - adds r4, r0 - lsls r4, 3 - adds r4, r1 - movs r1, 0x80 - lsls r1, 1 - strh r1, [r4, 0x8] - bl sub_81282DC - movs r1, 0x80 - lsls r1, 9 - movs r0, 0x2 - movs r2, 0 - bl ChangeBgX - ldr r0, _081281F8 @ =sub_81281FC - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081281F4: .4byte gTasks -_081281F8: .4byte sub_81281FC - thumb_func_end sub_81281C4 - - thumb_func_start sub_81281FC -sub_81281FC: @ 81281FC - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r6, r5, 2 - adds r0, r6, r5 - lsls r0, 3 - ldr r1, _08128270 @ =gTasks+0x8 - adds r4, r0, r1 - ldr r0, _08128274 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08128268 - ldrh r0, [r4] - subs r0, 0x8 - strh r0, [r4] - adds r0, r5, 0 - bl sub_81282DC - movs r1, 0 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _08128268 - movs r4, 0x3 - ldr r7, _08128278 @ =gUnknown_2022B58 -_08128230: - subs r0, r4, 0x3 - lsls r0, 5 - adds r0, r7 - ldrh r0, [r0] - cmp r0, 0 - beq _0812824C - ldr r0, _0812827C @ =gUnknown_203B0B4 - ldr r1, [r0] - lsls r0, r4, 4 - adds r0, r1 - ldrb r0, [r0, 0x9] - movs r1, 0 - bl sub_812238C -_0812824C: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x5 - bls _08128230 - movs r0, 0x71 - bl PlaySE - ldr r0, _08128280 @ =gTasks - adds r1, r6, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _08128284 @ =sub_8128288 - str r0, [r1] -_08128268: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08128270: .4byte gTasks+0x8 -_08128274: .4byte gPaletteFade -_08128278: .4byte gUnknown_2022B58 -_0812827C: .4byte gUnknown_203B0B4 -_08128280: .4byte gTasks -_08128284: .4byte sub_8128288 - thumb_func_end sub_81281FC - - thumb_func_start sub_8128288 -sub_8128288: @ 8128288 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, _081282B4 @ =gTasks+0x8 - adds r0, r1 - ldrh r1, [r0] - adds r1, 0x1 - strh r1, [r0] - lsls r1, 16 - movs r0, 0x80 - lsls r0, 17 - cmp r1, r0 - bne _081282AE - adds r0, r2, 0 - bl sub_811FA78 -_081282AE: - pop {r0} - bx r0 - .align 2, 0 -_081282B4: .4byte gTasks+0x8 - thumb_func_end sub_8128288 - - thumb_func_start sub_81282B8 -sub_81282B8: @ 81282B8 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 16 - lsrs r3, r1, 16 - cmp r1, 0 - blt _081282D2 - ldr r1, _081282D8 @ =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - strh r3, [r0, 0x24] -_081282D2: - pop {r0} - bx r0 - .align 2, 0 -_081282D8: .4byte gSprites - thumb_func_end sub_81282B8 - - thumb_func_start sub_81282DC -sub_81282DC: @ 81282DC - push {r4-r7,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _08128364 @ =gTasks+0x8 - adds r5, r1, r0 - movs r6, 0x3 - ldr r7, _08128368 @ =gUnknown_203B0B4 -_081282F0: - ldr r0, _0812836C @ =gUnknown_2022B58 - subs r1, r6, 0x3 - lsls r1, 5 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - beq _08128348 - ldr r0, [r7] - lsls r4, r6, 4 - adds r0, r4, r0 - ldrb r0, [r0, 0x9] - ldrh r1, [r5] - subs r1, 0x8 - lsls r1, 16 - asrs r1, 16 - bl sub_81282B8 - ldr r0, [r7] - adds r0, r4, r0 - ldrb r0, [r0, 0xA] - ldrh r1, [r5] - subs r1, 0x8 - lsls r1, 16 - asrs r1, 16 - bl sub_81282B8 - ldr r0, [r7] - adds r0, r4, r0 - ldrb r0, [r0, 0xB] - ldrh r1, [r5] - subs r1, 0x8 - lsls r1, 16 - asrs r1, 16 - bl sub_81282B8 - ldr r0, [r7] - adds r4, r0 - ldrb r0, [r4, 0xC] - ldrh r1, [r5] - subs r1, 0x8 - lsls r1, 16 - asrs r1, 16 - bl sub_81282B8 -_08128348: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x5 - bls _081282F0 - movs r1, 0x80 - lsls r1, 4 - movs r0, 0x2 - movs r2, 0x1 - bl ChangeBgX - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08128364: .4byte gTasks+0x8 -_08128368: .4byte gUnknown_203B0B4 -_0812836C: .4byte gUnknown_2022B58 - thumb_func_end sub_81282DC - - thumb_func_start sub_8128370 -sub_8128370: @ 8128370 - push {lr} - sub sp, 0xC - ldr r1, _08128398 @ =gFieldCallback2 - ldr r0, _0812839C @ =hm_add_c3_without_phase_2 - str r0, [r1] - movs r0, 0xF - str r0, [sp] - ldr r0, _081283A0 @ =sub_811FB28 - str r0, [sp, 0x4] - ldr r0, _081283A4 @ =CB2_ReturnToField - str r0, [sp, 0x8] - movs r0, 0x6 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl PartyMenuInit - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_08128398: .4byte gFieldCallback2 -_0812839C: .4byte hm_add_c3_without_phase_2 -_081283A0: .4byte sub_811FB28 -_081283A4: .4byte CB2_ReturnToField - thumb_func_end sub_8128370 - - thumb_func_start sub_81283A8 -sub_81283A8: @ 81283A8 - push {lr} - sub sp, 0xC - lsls r0, 24 - lsrs r0, 24 - ldr r2, _081283D4 @ =gFieldCallback2 - ldr r1, _081283D8 @ =hm_add_c3_without_phase_2 - str r1, [r2] - movs r1, 0 - str r1, [sp] - ldr r1, _081283DC @ =sub_811FB28 - str r1, [sp, 0x4] - ldr r1, _081283E0 @ =CB2_ReturnToField - str r1, [sp, 0x8] - movs r1, 0 - movs r2, 0xB - movs r3, 0 - bl PartyMenuInit - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_081283D4: .4byte gFieldCallback2 -_081283D8: .4byte hm_add_c3_without_phase_2 -_081283DC: .4byte sub_811FB28 -_081283E0: .4byte CB2_ReturnToField - thumb_func_end sub_81283A8 - - thumb_func_start hm_add_c3_without_phase_2 -hm_add_c3_without_phase_2: @ 81283E4 - push {lr} - bl sub_807DC00 - ldr r0, _081283F8 @ =task_hm_without_phase_2 - movs r1, 0xA - bl CreateTask - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_081283F8: .4byte task_hm_without_phase_2 - thumb_func_end hm_add_c3_without_phase_2 - - thumb_func_start task_hm_without_phase_2 -task_hm_without_phase_2: @ 81283FC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl field_weather_is_fade_finished - lsls r0, 24 - cmp r0, 0 - beq _0812841A - adds r0, r4, 0 - bl DestroyTask - bl ScriptContext2_Disable - bl EnableBothScriptContexts -_0812841A: - pop {r4} - pop {r0} - bx r0 - thumb_func_end task_hm_without_phase_2 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/pokedex_screen.s b/asm/pokedex_screen.s index 8320c5809..9c57cff88 100644 --- a/asm/pokedex_screen.s +++ b/asm/pokedex_screen.s @@ -428,13 +428,13 @@ sub_8102858: @ 8102858 lsls r1, 7 movs r0, 0 bl SetGpuRegBits - ldr r0, _08102878 @ =CB2_ReturnToStartMenu + ldr r0, _08102878 @ =CB2_ReturnToFieldWithOpenMenu bl SetMainCallback2 _08102874: pop {r0} bx r0 .align 2, 0 -_08102878: .4byte CB2_ReturnToStartMenu +_08102878: .4byte CB2_ReturnToFieldWithOpenMenu thumb_func_end sub_8102858 thumb_func_start sub_810287C diff --git a/asm/pokemon_jump_2.s b/asm/pokemon_jump_2.s index 44598a330..8ae94ce5e 100644 --- a/asm/pokemon_jump_2.s +++ b/asm/pokemon_jump_2.s @@ -4230,8 +4230,8 @@ sub_81499E0: @ 81499E0 _081499FC: .4byte gUnknown_203F3D4 thumb_func_end sub_81499E0 - thumb_func_start sub_8149A00 -sub_8149A00: @ 8149A00 + thumb_func_start IsSpeciesAllowedInPokemonJump +IsSpeciesAllowedInPokemonJump: @ 8149A00 push {lr} lsls r0, 16 lsrs r0, 16 @@ -4242,7 +4242,7 @@ sub_8149A00: @ 8149A00 lsrs r0, 31 pop {r1} bx r1 - thumb_func_end sub_8149A00 + thumb_func_end IsSpeciesAllowedInPokemonJump thumb_func_start sub_8149A18 sub_8149A18: @ 8149A18 @@ -4264,7 +4264,7 @@ _08149A1C: bl GetMonData lsls r0, 16 lsrs r0, 16 - bl sub_8149A00 + bl IsSpeciesAllowedInPokemonJump cmp r0, 0 beq _08149A54 ldr r1, _08149A50 @ =gSpecialVar_Result diff --git a/asm/pokemon_special_anim.s b/asm/pokemon_special_anim.s index 9092a38aa..b499f0999 100644 --- a/asm/pokemon_special_anim.s +++ b/asm/pokemon_special_anim.s @@ -558,7 +558,7 @@ _0811C9AA: adds r0, r4, 0 adds r0, 0x96 ldrh r0, [r0] - bl GetItemCompatibilityRule + bl CheckIfItemIsTMHMOrEvolutionStone lsls r0, 24 lsrs r0, 24 cmp r0, 0x2 @@ -1508,8 +1508,8 @@ sub_811D120: @ 811D120 bx r1 thumb_func_end sub_811D120 - thumb_func_start GetMonLevelUpWindowStats -GetMonLevelUpWindowStats: @ 811D130 + thumb_func_start BufferMonStatsToTaskData +BufferMonStatsToTaskData: @ 811D130 push {r4,r5,lr} adds r4, r0, 0 adds r5, r1, 0 @@ -1539,7 +1539,7 @@ GetMonLevelUpWindowStats: @ 811D130 pop {r4,r5} pop {r0} bx r0 - thumb_func_end GetMonLevelUpWindowStats + thumb_func_end BufferMonStatsToTaskData thumb_func_start sub_811D178 sub_811D178: @ 811D178 diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 5c95eb22a..460410f47 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -1455,7 +1455,7 @@ _0808C3E0: .align 2, 0 _0808C444: .4byte gUnknown_83CDA20 _0808C448: - bl field_weather_is_fade_finished + bl IsWeatherNotFadingIn lsls r0, 24 cmp r0, 0 bne _0808C454 @@ -6591,7 +6591,7 @@ _0808EEE8: ldr r2, _0808EF08 @ =sub_808CE60 movs r0, 0x4 movs r1, 0 - bl sub_8107DB4 + bl GoToBagMenu _0808EEF6: adds r0, r7, 0 bl DestroyTask @@ -15947,7 +15947,7 @@ sub_80937B4: @ 80937B4 _080937C4: .4byte gUnknown_2039822 _080937C8: ldr r4, _080937D8 @ =gUnknown_2039821 - bl sub_8138B20 + bl GetLastViewedMonIndex strb r0, [r4] _080937D0: pop {r4} diff --git a/asm/pokemon_summary_screen.s b/asm/pokemon_summary_screen.s index d1d6ed06f..b345231f3 100644 --- a/asm/pokemon_summary_screen.s +++ b/asm/pokemon_summary_screen.s @@ -42,7 +42,7 @@ _0813453C: .4byte gUnknown_203B140 _08134540: .4byte 0x00003308 _08134544: .4byte gUnknown_203B144 _08134548: - ldr r0, _08134574 @ =gUnknown_203B16C + ldr r0, _08134574 @ =gLastViewedMonIndex strb r6, [r0] ldr r0, _08134578 @ =gUnknown_203B16D movs r1, 0 @@ -64,7 +64,7 @@ _08134548: movs r0, 0x1 b _08134596 .align 2, 0 -_08134574: .4byte gUnknown_203B16C +_08134574: .4byte gLastViewedMonIndex _08134578: .4byte gUnknown_203B16D _0813457C: .4byte gUnknown_203B16E _08134580: .4byte 0x000032f8 @@ -3448,7 +3448,7 @@ _08136168: ldr r0, [r6] ldr r3, _08136208 @ =0x00003084 adds r0, r3 - ldr r1, _0813620C @ =gUnknown_8416221 + ldr r1, _0813620C @ =gText_FemaleSymbol bl StringCopy b _08136238 .align 2, 0 @@ -3459,19 +3459,19 @@ _081361FC: .4byte 0x00003220 _08136200: .4byte 0x00003221 _08136204: .4byte 0x00003034 _08136208: .4byte 0x00003084 -_0813620C: .4byte gUnknown_8416221 +_0813620C: .4byte gText_FemaleSymbol _08136210: cmp r7, 0 bne _0813622C ldr r0, [r6] ldr r1, _08136224 @ =0x00003084 adds r0, r1 - ldr r1, _08136228 @ =gUnknown_841621F + ldr r1, _08136228 @ =gText_MaleSymbol bl StringCopy b _08136238 .align 2, 0 _08136224: .4byte 0x00003084 -_08136228: .4byte gUnknown_841621F +_08136228: .4byte gText_MaleSymbol _0813622C: ldr r0, [r6] ldr r2, _08136308 @ =0x00003084 @@ -3622,7 +3622,7 @@ sub_8136350: @ 8136350 bl ConvertIntToDecimalStringN ldr r0, [r6] adds r0, r4 - ldr r1, _08136504 @ =gUnknown_841620C + ldr r1, _08136504 @ =gText_Slash bl StringAppend ldr r0, [r6] adds r0, r7 @@ -3794,7 +3794,7 @@ _081363E6: _081364F8: .4byte gUnknown_203B140 _081364FC: .4byte 0x00003290 _08136500: .4byte 0x00003090 -_08136504: .4byte gUnknown_841620C +_08136504: .4byte gText_Slash _08136508: .4byte gUnknown_203B144 _0813650C: .4byte 0x000032f8 _08136510: .4byte sub_804CF14 @@ -5618,7 +5618,7 @@ _081373EA: str r6, [sp] mov r7, r9 str r7, [sp, 0x4] - ldr r1, _081374E0 @ =gUnknown_841620C + ldr r1, _081374E0 @ =gText_Slash str r1, [sp, 0x8] movs r1, 0x2 movs r2, 0x3A @@ -5663,7 +5663,7 @@ _081374D0: .4byte gUnknown_8416238 _081374D4: .4byte gUnknown_203B144 _081374D8: .4byte 0x000030b8 _081374DC: .4byte 0x00003258 -_081374E0: .4byte gUnknown_841620C +_081374E0: .4byte gText_Slash _081374E4: .4byte 0x000030f0 thumb_func_end sub_81372E4 @@ -6839,8 +6839,8 @@ _08137E82: adds r0, r1 ldr r0, [r0] bl SetMainCallback2 - bl sub_8138B20 - ldr r1, _08137EE0 @ =gUnknown_203B16C + bl GetLastViewedMonIndex + ldr r1, _08137EE0 @ =gLastViewedMonIndex strb r0, [r1] ldr r0, [r4] cmp r0, 0 @@ -6864,7 +6864,7 @@ _08137ECC: _08137ED4: .4byte gUnknown_203B140 _08137ED8: .4byte 0x00003214 _08137EDC: .4byte 0x000032f8 -_08137EE0: .4byte gUnknown_203B16C +_08137EE0: .4byte gLastViewedMonIndex _08137EE4: .4byte gUnknown_203B144 thumb_func_end sub_8137E64 @@ -8397,14 +8397,14 @@ _08138B18: .4byte 0x00003220 _08138B1C: .4byte 0x00003221 thumb_func_end sub_8138A38 - thumb_func_start sub_8138B20 -sub_8138B20: @ 8138B20 - ldr r0, _08138B28 @ =gUnknown_203B16C + thumb_func_start GetLastViewedMonIndex +GetLastViewedMonIndex: @ 8138B20 + ldr r0, _08138B28 @ =gLastViewedMonIndex ldrb r0, [r0] bx lr .align 2, 0 -_08138B28: .4byte gUnknown_203B16C - thumb_func_end sub_8138B20 +_08138B28: .4byte gLastViewedMonIndex + thumb_func_end GetLastViewedMonIndex thumb_func_start GetMoveSlotToReplace GetMoveSlotToReplace: @ 8138B2C @@ -8443,7 +8443,7 @@ sub_8138B4C: @ 8138B4C ldrb r0, [r0] cmp r0, 0x1 bne _08138B84 - ldr r0, _08138B80 @ =gUnknown_203B16C + ldr r0, _08138B80 @ =gLastViewedMonIndex ldrb r0, [r0] cmp r0, 0x3 bhi _08138B76 @@ -8454,7 +8454,7 @@ _08138B76: b _08138B86 .align 2, 0 _08138B7C: .4byte gReceivedRemoteLinkPlayers -_08138B80: .4byte gUnknown_203B16C +_08138B80: .4byte gLastViewedMonIndex _08138B84: movs r0, 0 _08138B86: @@ -8476,7 +8476,7 @@ sub_8138B8C: @ 8138B8C adds r2, 0xD8 adds r0, r1, r2 ldr r4, [r0] - bl sub_8138B20 + bl GetLastViewedMonIndex lsls r0, 24 lsrs r0, 24 movs r1, 0x64 @@ -8493,7 +8493,7 @@ _08138BC4: ldr r2, _08138BE8 @ =0x000032f4 adds r0, r1, r2 ldr r4, [r0] - bl sub_8138B20 + bl GetLastViewedMonIndex lsls r0, 24 lsrs r0, 24 lsls r1, r0, 2 @@ -9148,7 +9148,7 @@ sub_81390B0: @ 81390B0 ldr r1, _081391DC @ =0x000032f4 adds r0, r1 ldr r6, [r0] - bl sub_8138B20 + bl GetLastViewedMonIndex lsls r0, 24 lsrs r0, 24 movs r1, 0x64 @@ -9294,7 +9294,7 @@ sub_81391EC: @ 81391EC ldr r1, _08139318 @ =0x000032f4 adds r0, r1 ldr r6, [r0] - bl sub_8138B20 + bl GetLastViewedMonIndex lsls r0, 24 lsrs r0, 24 lsls r1, r0, 2 @@ -9442,7 +9442,7 @@ sub_8139328: @ 8139328 adds r2, 0xD8 adds r0, r1, r2 ldr r4, [r0] - bl sub_8138B20 + bl GetLastViewedMonIndex lsls r0, 24 lsrs r0, 24 movs r1, 0x64 @@ -9459,7 +9459,7 @@ _08139360: ldr r2, _08139384 @ =0x000032f4 adds r0, r1, r2 ldr r4, [r0] - bl sub_8138B20 + bl GetLastViewedMonIndex lsls r0, 24 lsrs r0, 24 lsls r1, r0, 2 @@ -9489,7 +9489,7 @@ sub_8139388: @ 8139388 bl sub_8138BEC lsls r0, 16 lsrs r0, 16 - bl sub_8125A90 + bl IsMoveHm lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -10269,7 +10269,7 @@ _081399DC: .4byte sub_804CF14 _081399E0: .4byte 0x00003024 _081399E4: .4byte 0x0000ffff _081399E8: - ldr r0, _08139A1C @ =gUnknown_203B16C + ldr r0, _08139A1C @ =gLastViewedMonIndex ldrb r1, [r0] movs r0, 0x3 bl sub_804455C @@ -10293,7 +10293,7 @@ _081399E8: bl CreateMonPicSprite b _08139A40 .align 2, 0 -_08139A1C: .4byte gUnknown_203B16C +_08139A1C: .4byte gLastViewedMonIndex _08139A20: .4byte 0x0000ffff _08139A24: movs r0, 0x3C @@ -10787,7 +10787,7 @@ _08139E20: .align 2, 0 _08139E28: .4byte SpriteCallbackDummy _08139E2C: - ldr r0, _08139E48 @ =gUnknown_203B16C + ldr r0, _08139E48 @ =gLastViewedMonIndex ldrb r1, [r0] movs r0, 0x3 bl sub_804455C @@ -10801,7 +10801,7 @@ _08139E2C: str r4, [sp, 0x4] b _08139E58 .align 2, 0 -_08139E48: .4byte gUnknown_203B16C +_08139E48: .4byte gLastViewedMonIndex _08139E4C: .4byte SpriteCallbackDummy _08139E50: ldr r1, _08139E98 @ =SpriteCallbackDummy @@ -13221,7 +13221,7 @@ _0813B16C: ldr r2, _0813B190 @ =0x000032f4 adds r0, r2 ldr r4, [r0] - bl sub_8138B20 + bl GetLastViewedMonIndex adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 @@ -13268,7 +13268,7 @@ _0813B1CC: negs r1, r1 cmp r0, r1 beq _0813B1F4 - ldr r0, _0813B1FC @ =gUnknown_203B16C + ldr r0, _0813B1FC @ =gLastViewedMonIndex strb r2, [r0] ldr r0, _0813B200 @ =sub_813B3F0 movs r1, 0 @@ -13284,7 +13284,7 @@ _0813B1F4: pop {r0} bx r0 .align 2, 0 -_0813B1FC: .4byte gUnknown_203B16C +_0813B1FC: .4byte gLastViewedMonIndex _0813B200: .4byte sub_813B3F0 _0813B204: .4byte gUnknown_203B140 _0813B208: .4byte 0x0000328c @@ -13311,7 +13311,7 @@ sub_813B20C: @ 813B20C movs r1, 0x1 negs r1, r1 adds r5, r0, 0 - ldr r6, _0813B264 @ =gUnknown_203B16C + ldr r6, _0813B264 @ =gLastViewedMonIndex cmp r3, r1 bne _0813B23E ldrb r0, [r6] @@ -13336,7 +13336,7 @@ _0813B252: _0813B258: .4byte gUnknown_203B140 _0813B25C: .4byte 0x000032f4 _0813B260: .4byte 0x00003214 -_0813B264: .4byte gUnknown_203B16C +_0813B264: .4byte gLastViewedMonIndex _0813B268: .4byte 0x00003210 _0813B26C: lsls r5, r4, 24 @@ -13346,7 +13346,7 @@ _0813B26E: asrs r1, r5, 24 adds r0, r1 lsls r0, 24 - ldr r4, _0813B29C @ =gUnknown_203B16C + ldr r4, _0813B29C @ =gLastViewedMonIndex lsrs r6, r0, 24 asrs r0, 24 ldrb r3, [r4] @@ -13365,7 +13365,7 @@ _0813B294: negs r0, r0 b _0813B2C0 .align 2, 0 -_0813B29C: .4byte gUnknown_203B16C +_0813B29C: .4byte gLastViewedMonIndex _0813B2A0: .4byte gUnknown_203B140 _0813B2A4: .4byte 0x00003210 _0813B2A8: @@ -13514,7 +13514,7 @@ _0813B39E: bhi _0813B3B6 ldr r4, _0813B3D4 @ =gUnknown_8463FB8 adds r4, r5, r4 - bl sub_8138B20 + bl GetLastViewedMonIndex ldrb r1, [r4] lsls r0, 24 lsrs r0, 24 diff --git a/asm/region_map.s b/asm/region_map.s index 5d136385b..662c65fa7 100644 --- a/asm/region_map.s +++ b/asm/region_map.s @@ -7395,7 +7395,7 @@ sub_80C3B00: @ 80C3B00 asrs r1, 24 lsls r1, 16 lsrs r1, 16 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId ldrb r0, [r0, 0x14] pop {r1} bx r1 @@ -7477,7 +7477,7 @@ _080C3BAC: asrs r1, 24 lsls r1, 16 lsrs r1, 16 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId adds r2, r0, 0 ldr r0, _080C3BEC @ =gUnknown_20399E4 ldr r1, [r0] @@ -7506,7 +7506,7 @@ _080C3BF0: asrs r1, 24 lsls r1, 16 lsrs r1, 16 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId adds r2, r0, 0 ldr r0, _080C3C28 @ =gUnknown_20399E4 ldr r1, [r0] @@ -7543,7 +7543,7 @@ _080C3C2C: ldrsb r1, [r5, r1] lsls r1, 16 lsrs r1, 16 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId adds r2, r0, 0 b _080C3C8E .align 2, 0 @@ -7564,7 +7564,7 @@ _080C3C68: ldrsb r1, [r5, r1] lsls r1, 16 lsrs r1, 16 - bl get_mapheader_by_bank_and_number + bl Overworld_GetMapHeaderByGroupAndId adds r2, r0, 0 ldr r1, [r4] ldrb r0, [r2, 0x14] @@ -9761,8 +9761,8 @@ _080C4DF2: bx r1 thumb_func_end GetMapName - thumb_func_start sub_80C4DF8 -sub_80C4DF8: @ 80C4DF8 + thumb_func_start GetMapNameGeneric +GetMapNameGeneric: @ 80C4DF8 push {lr} lsls r1, 16 lsrs r1, 16 @@ -9770,14 +9770,14 @@ sub_80C4DF8: @ 80C4DF8 bl GetMapName pop {r1} bx r1 - thumb_func_end sub_80C4DF8 + thumb_func_end GetMapNameGeneric thumb_func_start sub_80C4E08 sub_80C4E08: @ 80C4E08 push {lr} lsls r1, 16 lsrs r1, 16 - bl sub_80C4DF8 + bl GetMapNameGeneric pop {r1} bx r1 thumb_func_end sub_80C4E08 @@ -9893,15 +9893,15 @@ _080C4EF2: bx r0 thumb_func_end sub_80C4ED0 - thumb_func_start sub_80C4EF8 -sub_80C4EF8: @ 80C4EF8 + thumb_func_start MCB2_FlyMap +MCB2_FlyMap: @ 80C4EF8 push {lr} bl sub_80C51E8 movs r0, 0x2 bl sub_80BFEDC pop {r0} bx r0 - thumb_func_end sub_80C4EF8 + thumb_func_end MCB2_FlyMap thumb_func_start sub_80C4F08 sub_80C4F08: @ 80C4F08 @@ -10283,7 +10283,7 @@ _080C5220: _080C5250: .4byte gUnknown_20399FC _080C5254: .4byte CB2_ReturnToField _080C5258: - ldr r0, _080C5274 @ =sub_8124AB0 + ldr r0, _080C5274 @ =CB2_ReturnToPartyMenuFromFlyMap bl SetMainCallback2 _080C525E: ldr r4, _080C5278 @ =gUnknown_20399FC @@ -10298,7 +10298,7 @@ _080C526E: pop {r0} bx r0 .align 2, 0 -_080C5274: .4byte sub_8124AB0 +_080C5274: .4byte CB2_ReturnToPartyMenuFromFlyMap _080C5278: .4byte gUnknown_20399FC thumb_func_end sub_80C5208 diff --git a/asm/script_pokemon_util_80A0058.s b/asm/script_pokemon_util_80A0058.s index 81b3b7efe..6f451b90a 100644 --- a/asm/script_pokemon_util_80A0058.s +++ b/asm/script_pokemon_util_80A0058.s @@ -385,7 +385,7 @@ sub_80A0334: @ 80A0334 ldr r0, _080A034C @ =sub_80A0350 str r0, [r1, 0x8] movs r0, 0 - bl sub_81274A8 + bl InitChooseHalfPartyForBattle pop {r0} bx r0 .align 2, 0 @@ -427,7 +427,7 @@ ChooseBattleTowerPlayerParty: @ 80A0380 ldr r0, _080A0398 @ =sub_80A039C str r0, [r1, 0x8] movs r0, 0x1 - bl sub_81274A8 + bl InitChooseHalfPartyForBattle pop {r0} bx r0 .align 2, 0 diff --git a/asm/script_pokemon_util_80BF8FC.s b/asm/script_pokemon_util_80BF8FC.s index 15d19e08b..a909758c2 100644 --- a/asm/script_pokemon_util_80BF8FC.s +++ b/asm/script_pokemon_util_80BF8FC.s @@ -88,7 +88,7 @@ sub_80BF97C: @ 80BF97C lsls r0, 3 adds r0, r1 ldrb r0, [r0, 0x8] - bl sub_81283A8 + bl ChoosePartyMonByMenuType adds r0, r4, 0 bl DestroyTask _080BF9AC: diff --git a/asm/shop.s b/asm/shop.s index bc5eccd64..ca92ff4b7 100644 --- a/asm/shop.s +++ b/asm/shop.s @@ -291,7 +291,7 @@ sub_809ACD4: @ 809ACD4 ldr r2, _0809ACEC @ =CB2_ReturnToField movs r0, 0x2 movs r1, 0x3 - bl sub_8107DB4 + bl GoToBagMenu ldr r1, _0809ACF0 @ =gFieldCallback ldr r0, _0809ACF4 @ =sub_809AD74 str r0, [r1] @@ -386,7 +386,7 @@ sub_809AD8C: @ 809AD8C push {r4,lr} lsls r0, 24 lsrs r4, r0, 24 - bl field_weather_is_fade_finished + bl IsWeatherNotFadingIn lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -793,7 +793,7 @@ _0809B118: movs r1, 0 movs r2, 0xE movs r3, 0x1E - bl SetBgRectPal + bl SetBgTilemapPalette b _0809B14E .align 2, 0 _0809B138: .4byte gUnknown_2039934 @@ -805,7 +805,7 @@ _0809B13C: movs r1, 0 movs r2, 0xC movs r3, 0x1E - bl SetBgRectPal + bl SetBgTilemapPalette _0809B14E: movs r0, 0x1 bl ScheduleBgCopyTilemapToVram |